Skip to contentSkip to conversation

syslinux: bump to 4.05

PATCH Superseded Aras Vaichas 3 participants 5 messages Jul 4, 2012 – Jul 17, 2012

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 syslinux: bump to 4.05

* bump syslinux from 4.04 to 4.05
* add patch to fix build problem with 4.05, see
http://old.nabble.com/syslinux-fails-to-build-td34112447.html

---
 syslinux-build-fix-for-uuid.patch |   15 +++++++++++++++
 syslinux.mk                         |    2 +-
 2 files changed, 16 insertions(+), 1 deletion(-)

diff -Naur a/boot/syslinux/syslinux-build-fix-for-uuid.patch b/boot/syslinux/syslinux-build-fix-for-uuid.patch
--- a/boot/syslinux/syslinux-build-fix-for-uuid.patch 1970-01-01
01:00:00.000000000 +0100
+++ b/boot/syslinux/syslinux-build-fix-for-uuid.patch 2012-07-04
13:19:05.263191733 +0100
@@ -0,0 +1,15 @@
+Author: Micah Gersten <[email protected]>
+Description: Fix build failure with --as-needed (Closes: #654838). +
+diff -Naurp syslinux.orig/utils/Makefile syslinux/utils/Makefile

+--- syslinux.orig/utils/Makefile       2011-12-23 14:53:26.653571511 +0100
++++ syslinux/utils/Makefile    2012-01-22 18:55:03.849466924 +0100

+@@ -51,7 +51,7 @@ isohdpfx.c: $(ISOHDPFX) isohdpfxarray.pl
+ $(PERL) isohdpfxarray.pl $(ISOHDPFX) > $@
+
+ isohybrid: isohybrid.o isohdpfx.o

+-      $(CC) $(LDFLAGS) -luuid -o $@ $^
++      $(CC) $(LDFLAGS) -o $@ $^ -luuid

+
+ gethostip: gethostip.o
+ $(CC) $(LDFLAGS) -o $@ $^

boot/syslinux/syslinux.mk 2012-07-04 11:25:35.169427290 +0100 renamed from boot/syslinux/syslinux.mk 2012-07-04 13:01:21.650250091 +0100 +1 -1
diff -Naur a/boot/syslinux/syslinux.mk b/boot/syslinux/syslinux.mk
@@ -4,7 +4,7 @@
 #
 #############################################################
 
-SYSLINUX_VERSION = 4.04
+SYSLINUX_VERSION = 4.05
 SYSLINUX_SOURCE  = syslinux-$(SYSLINUX_VERSION).tar.bz2
 SYSLINUX_SITE    = $(BR2_KERNEL_MIRROR)/linux/utils/boot/syslinux/4.xx/
#1 lore raw

PATCH 1/1 syslinux: bump to 4.05

Quoted 9 lines · Aras Vaichas

* bump syslinux from 4.04 to 4.05
* add patch to fix build problem with 4.05, see
http://old.nabble.com/syslinux-fails-to-build-td34112447.html

---
  syslinux-build-fix-for-uuid.patch |   15 +++++++++++++++
  syslinux.mk                         |    2 +-
  2 files changed, 16 insertions(+), 1 deletion(-)
Quoted 6 lines

diff -Naur a/boot/syslinux/syslinux-build-fix-for-uuid.patch b/boot/syslinux/syslinux-build-fix-for-uuid.patch
--- a/boot/syslinux/syslinux-build-fix-for-uuid.patch 1970-01-01
01:00:00.000000000 +0100
+++ b/boot/syslinux/syslinux-build-fix-for-uuid.patch 2012-07-04
13:19:05.263191733 +0100

Looks like your patch is wordwrapped. You can't send patches through the
GMail web interface. The best option is to use git send-email - its help page explains how to set it up for use with GMail.

Review line 12

Quoted 13 lines
(quoted diff) +12 -0
@@ -0,0 +1,15 @@
+Author: Micah Gersten<[email protected]>
+Description: Fix build failure with --as-needed (Closes: #654838).
+
+diff -Naurp syslinux.orig/utils/Makefile syslinux/utils/Makefile
+--- syslinux.orig/utils/Makefile       2011-12-23 14:53:26.653571511 +0100
++++ syslinux/utils/Makefile    2012-01-22 18:55:03.849466924 +0100
+@@ -51,7 +51,7 @@ isohdpfx.c: $(ISOHDPFX) isohdpfxarray.pl
+       $(PERL) isohdpfxarray.pl $(ISOHDPFX)>  $@
+
+ isohybrid: isohybrid.o isohdpfx.o
+-      $(CC) $(LDFLAGS) -luuid -o $@ $^
++      $(CC) $(LDFLAGS) -o $@ $^ -luuid

Unfortunately, this isn't enough. You need host-util-linux as well, and
some additional arguments have to be passed to the build command to make sure uuid/uuid.h and libuuid.so are found.

It looks like the syslinux build system is as broken as the one of grub;
we currently don't actually cross-compile, but use the host compiler in the assumption that it's an x86 multilib compiler...

I'll fix it (still using the host compiler for the time being) and
resend your patch.

Regards,
Arnout

[snip]

Signature · 6 lines
Arnout Vandecappelle                               arnout at mind be
Senior Embedded Software Architect                 +32-16-286540
Essensium/Mind                                     http://www.mind.be
G.Geenslaan 9, 3001 Leuven, Belgium                BE 872 984 063 RPR Leuven
LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle
GPG fingerprint:  7CB5 E4CC 6C2E EFD4 6E3D A754 F963 ECAB 2450 2F1F
#2 lore raw

PATCH v2 1/1 syslinux: bump to 4.05

* bump syslinux from 4.04 to 4.05
* add patch to fix build problem with 4.05, see
http://old.nabble.com/syslinux-fails-to-build-td34112447.html
* add util-linux dependency and make sure the build finds it

---
v2 [Arnout]:
- Fix whitespace problems
- util-linux dependency for libuuid

 boot/syslinux/syslinux-build-fix-for-uuid.patch |   15 +++++++++++++++
 boot/syslinux/syslinux.mk                       |    9 ++++++---
 2 files changed, 21 insertions(+), 3 deletions(-)
boot/syslinux/syslinux-build-fix-for-uuid.patch new file +15 -0
new file mode 100644
index 0000000..04ff562
@@ -0,0 +1,15 @@
+Author: Micah Gersten <[email protected]>
+Description: Fix build failure with --as-needed (Closes: #654838).
+
+diff -Naurp syslinux.orig/utils/Makefile syslinux/utils/Makefile
+--- syslinux.orig/utils/Makefile       2011-12-23 14:53:26.653571511 +0100
++++ syslinux/utils/Makefile    2012-01-22 18:55:03.849466924 +0100
+@@ -51,7 +51,7 @@ isohdpfx.c: $(ISOHDPFX) isohdpfxarray.pl
+ 	$(PERL) isohdpfxarray.pl $(ISOHDPFX) > $@
+
+ isohybrid: isohybrid.o isohdpfx.o
+-	$(CC) $(LDFLAGS) -luuid -o $@ $^
++	$(CC) $(LDFLAGS) -o $@ $^ -luuid
+
+ gethostip: gethostip.o
+ 	$(CC) $(LDFLAGS) -o $@ $^
boot/syslinux/syslinux.mk +6 -3
index 3e89bdf..185baab 100644
@@ -4,17 +4,20 @@
 #
 #############################################################
 
-SYSLINUX_VERSION = 4.04
+SYSLINUX_VERSION = 4.05
 SYSLINUX_SOURCE  = syslinux-$(SYSLINUX_VERSION).tar.bz2
 SYSLINUX_SITE    = $(BR2_KERNEL_MIRROR)/linux/utils/boot/syslinux/4.xx/
 
 SYSLINUX_INSTALL_TARGET = NO
 SYSLINUX_INSTALL_IMAGES = YES
 
-SYSLINUX_DEPENDENCIES = host-nasm
+SYSLINUX_DEPENDENCIES = host-nasm host-util-linux
 
+# syslinux build system has no convenient way to pass CFLAGS,
+# and the internal zlib should take precedence so -I shouldn't
+# be used.
 define SYSLINUX_BUILD_CMDS
-	$(TARGET_MAKE_ENV) $(MAKE) CC="$(HOSTCC)" AR="$(HOSTAR)" -C $(@D)
+	$(TARGET_MAKE_ENV) $(MAKE) CC="$(HOSTCC) -idirafter $(HOST_DIR)/usr/include $(HOST_LDFLAGS)" AR="$(HOSTAR)" -C $(@D)
 endef
 
 SYSLINUX_IMAGES-$(BR2_TARGET_SYSLINUX_ISOLINUX) += isolinux.bin
Signature · 1 line
tg: (8f6fc94..) t/syslinux-4.05 (depends on: master)
#3 lore raw

PATCH v2 1/1 syslinux: bump to 4.05

Le Thu, 5 Jul 2012 22:01:31 +0200,
Aras Vaichas <[email protected]> a ?crit :

Quoted 7 lines

* bump syslinux from 4.04 to 4.05
* add patch to fix build problem with 4.05, see
http://old.nabble.com/syslinux-fails-to-build-td34112447.html
* add util-linux dependency and make sure the build finds it

Applied, thanks.

Thomas

Signature · 4 lines
Thomas Petazzoni, Free Electrons
Kernel, drivers, real-time and embedded Linux
development, consulting, training and support.
http://free-electrons.com
#4 lore raw

PATCH 1/1 syslinux: bump to 4.05

In reply to Arnout Vandecappelle

Le Thu, 05 Jul 2012 21:57:05 +0200,
Arnout Vandecappelle <[email protected]> a ?crit :

Quoted 6 lines

It looks like the syslinux build system is as broken as the one of
grub; we currently don't actually cross-compile, but use the host compiler in the assumption that it's an x86 multilib compiler...

I'll fix it (still using the host compiler for the time being) and
resend your patch.

Yes, just like Grub, I think we should use the host compiler, otherwise if the targeted system is x86-64, our cross-compiling toolchain will be 64 bits only, and we won't be able to build syslinux or grub.

At some point, Jean-Christophe Plagnol-Villard made a patch that allowed some packages to depend on the host architecture (so that things like SAM-BA wouldn't be shown). Maybe we need to use something like this to hide syslinux/grub when the host architecture is not x86/x86-64.

Best regards,

Thomas

Signature · 4 lines
Thomas Petazzoni, Free Electrons
Kernel, drivers, real-time and embedded Linux
development, consulting, training and support.
http://free-electrons.com