summaryrefslogtreecommitdiffstats
path: root/boot/syslinux/syslinux.mk
diff options
context:
space:
mode:
Diffstat (limited to 'boot/syslinux/syslinux.mk')
-rw-r--r--boot/syslinux/syslinux.mk18
1 files changed, 13 insertions, 5 deletions
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
OpenPOWER on IntegriCloud