From 52ceb700ff8ca41fbf2f6db7ec5fafb34888f64d Mon Sep 17 00:00:00 2001 From: Romain Naour Date: Tue, 3 Mar 2015 22:33:07 +0100 Subject: boot/syslinux: bump version to 6.03 Since 6.03 syslinux release, the gnu-efi sources are bundled whith syslinux. We need to force the build system to use the Buildroot's gnu-efi package. Remove the patch for find-gnu-efi.sh script which was removed, as well as the SYSROOT variable from the BUILD_CMDS, which is no longer needed. There are still some parallel build issues, so MAKE1 can't be removed for now. Add a hash file. Fix indentation. [Thomas: fix minor typos in a new comment in the .mk file.] Signed-off-by: Romain Naour Signed-off-by: Thomas Petazzoni --- boot/syslinux/syslinux.mk | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) (limited to 'boot/syslinux/syslinux.mk') diff --git a/boot/syslinux/syslinux.mk b/boot/syslinux/syslinux.mk index 8ef53f9229..0868896e72 100644 --- a/boot/syslinux/syslinux.mk +++ b/boot/syslinux/syslinux.mk @@ -4,7 +4,7 @@ # ################################################################################ -SYSLINUX_VERSION = 6.02 +SYSLINUX_VERSION = 6.03 SYSLINUX_SOURCE = syslinux-$(SYSLINUX_VERSION).tar.xz SYSLINUX_SITE = $(BR2_KERNEL_MIRROR)/linux/utils/boot/syslinux @@ -19,6 +19,10 @@ ifeq ($(BR2_TARGET_SYSLINUX_LEGACY_BIOS),y) SYSLINUX_TARGET = bios endif +# The syslinux build system must be forced to use Buildroot's gnu-efi +# package by setting EFIINC, LIBDIR and LIBEFI. Otherwise, it uses its +# own copy of gnu-efi included in syslinux's sources since 6.03 +# release. ifeq ($(BR2_TARGET_SYSLINUX_EFI),y) ifeq ($(BR2_ARCH_IS_64),y) SYSLINUX_EFI_BITS = efi64 @@ -27,6 +31,10 @@ SYSLINUX_EFI_BITS = efi32 endif # 64-bit SYSLINUX_DEPENDENCIES += gnu-efi SYSLINUX_TARGET = $(SYSLINUX_EFI_BITS) +SYSLINUX_EFI_ARGS = \ + EFIINC=$(STAGING_DIR)/usr/include/efi \ + LIBDIR=$(STAGING_DIR)/usr/lib \ + LIBEFI=$(STAGING_DIR)/usr/lib/libefi.a endif # EFI # The syslinux tarball comes with pre-compiled binaries. @@ -44,7 +52,7 @@ SYSLINUX_POST_PATCH_HOOKS += SYSLINUX_CLEANUP # be used. define SYSLINUX_BUILD_CMDS $(TARGET_MAKE_ENV) $(MAKE1) CC="$(HOSTCC) -idirafter $(HOST_DIR)/usr/include $(HOST_LDFLAGS)" \ - AR="$(HOSTAR)" SYSROOT=$(STAGING_DIR) -C $(@D) $(SYSLINUX_TARGET) + AR="$(HOSTAR)" $(SYSLINUX_EFI_ARGS) -C $(@D) $(SYSLINUX_TARGET) endef # While the actual bootloader is compiled for the target, several @@ -54,8 +62,8 @@ endef # install time define SYSLINUX_INSTALL_TARGET_CMDS $(TARGET_MAKE_ENV) $(MAKE1) CC="$(HOSTCC) -idirafter $(HOST_DIR)/usr/include $(HOST_LDFLAGS)" \ - AR="$(HOSTAR)" SYSROOT=$(STAGING_DIR) INSTALLROOT=$(HOST_DIR) \ - -C $(@D) $(SYSLINUX_TARGET) install + AR="$(HOSTAR)" $(SYSLINUX_EFI_ARGS) INSTALLROOT=$(HOST_DIR) \ + -C $(@D) $(SYSLINUX_TARGET) install endef SYSLINUX_IMAGES-$(BR2_TARGET_SYSLINUX_ISOLINUX) += bios/core/isolinux.bin @@ -74,7 +82,7 @@ define SYSLINUX_INSTALL_IMAGES_CMDS done for i in $(SYSLINUX_C32); do \ $(INSTALL) -D -m 0755 $(HOST_DIR)/usr/share/syslinux/$${i} \ - $(BINARIES_DIR)/syslinux/$${i}; \ + $(BINARIES_DIR)/syslinux/$${i}; \ done endef -- cgit v1.2.3