]> git.ipfire.org Git - thirdparty/ipxe.git/commitdiff
[build] Update build system for Syslinux 6.x
authorChristian Hesse <mail@eworm.de>
Wed, 13 Nov 2013 10:46:02 +0000 (11:46 +0100)
committerMichael Brown <mcb30@ipxe.org>
Fri, 15 Nov 2013 11:59:44 +0000 (11:59 +0000)
Syslinux 6.x places its files into a bios subdirectory, and requires
that a ldlinux.c32 module be included within the ISO image.  Add the
relevant search paths for isolinux.bin, and include the file
ldlinux.c32 within the ISO image if it exists.

Signed-off-by: Michael Brown <mcb30@ipxe.org>
src/arch/i386/Makefile
src/util/geniso

index 8314f26da1ec7b6f6c09eaeefc11928de945855b..3ee40014e4bfc8c7d555ac58bc49b07d890d3b63 100644 (file)
@@ -74,8 +74,11 @@ CFLAGS                       += -Ui386
 ISOLINUX_BIN_LIST      := \
        $(ISOLINUX_BIN) \
        /usr/lib/syslinux/isolinux.bin \
+       /usr/lib/syslinux/bios/isolinux.bin \
        /usr/share/syslinux/isolinux.bin \
-       /usr/local/share/syslinux/isolinux.bin
+       /usr/share/syslinux/bios/isolinux.bin \
+       /usr/local/share/syslinux/isolinux.bin \
+       /usr/local/share/syslinux/bios/isolinux.bin
 ISOLINUX_BIN   = $(firstword $(wildcard $(ISOLINUX_BIN_LIST)))
 
 # i386-specific directories containing source files
index 48ea2f2aae08f9732a1ca3a33600b6a632bf7b3a..4dc721927bedd9f2c6489fd5b6f9cd347fc191fd 100755 (executable)
@@ -38,6 +38,14 @@ shift
 dir=`mktemp -d bin/iso.dir.XXXXXX`
 cfg=$dir/isolinux.cfg
 cp -p $isolinux_bin $dir
+
+# syslinux 6.x needs a file called ldlinux.c32
+ldlinux_c32=$(dirname ${isolinux_bin})/ldlinux.c32
+if [ -s ${ldlinux_c32} ]
+then
+       cp -p ${ldlinux_c32} ${dir}
+fi
+
 cat > $cfg <<EOF
 # These default options can be changed in the geniso script
 SAY iPXE ISO boot image