diff options
author | Michael Brown | 2015-09-01 21:58:28 +0200 |
---|---|---|
committer | Michael Brown | 2015-09-01 22:04:44 +0200 |
commit | f6e1da5cbf70a372f2b622c8021c98503cab8323 (patch) | |
tree | 310d4800cd9d248a81f976a8ce21b1fb4416cb3c /src/arch/i386 | |
parent | [efi] Populate debug directory entry FileOffset field (diff) | |
download | ipxe-f6e1da5cbf70a372f2b622c8021c98503cab8323.tar.gz ipxe-f6e1da5cbf70a372f2b622c8021c98503cab8323.tar.xz ipxe-f6e1da5cbf70a372f2b622c8021c98503cab8323.zip |
[build] Search for ldlinux.c32 separately from isolinux.bin
Some distributions (observed with Ubuntu 15.04) place ldlinux.c32 in a
separate directory from isolinux.bin. Search for these files
separately, and allow an alternative location of ldlinux.c32 to be
provided via LDLINUX_C32=... on the make command line.
Reported-by: Adrian Koshka <adriankoshcha@teknik.io>
Tested-by: Adrian Koshka <adriankoshcha@teknik.io>
Signed-off-by: Michael Brown <mcb30@ipxe.org>
Diffstat (limited to 'src/arch/i386')
-rw-r--r-- | src/arch/i386/Makefile | 27 | ||||
-rw-r--r-- | src/arch/i386/Makefile.pcbios | 3 |
2 files changed, 20 insertions, 10 deletions
diff --git a/src/arch/i386/Makefile b/src/arch/i386/Makefile index 99f87531..7f706a5a 100644 --- a/src/arch/i386/Makefile +++ b/src/arch/i386/Makefile @@ -84,18 +84,27 @@ endif # CFLAGS_lkrnprefix += -DVERSION="\"$(VERSION)\"" -# Locations of utilities -# +# Locations of isolinux files +# +SYSLINUX_DIR_LIST := \ + /usr/lib/syslinux \ + /usr/lib/syslinux/bios \ + /usr/lib/syslinux/modules/bios \ + /usr/share/syslinux \ + /usr/share/syslinux/bios \ + /usr/share/syslinux/modules/bios \ + /usr/local/share/syslinux \ + /usr/local/share/syslinux/bios \ + /usr/local/share/syslinux/modules/bios \ + /usr/lib/ISOLINUX ISOLINUX_BIN_LIST := \ $(ISOLINUX_BIN) \ - /usr/lib/syslinux/isolinux.bin \ - /usr/lib/syslinux/bios/isolinux.bin \ - /usr/share/syslinux/isolinux.bin \ - /usr/share/syslinux/bios/isolinux.bin \ - /usr/local/share/syslinux/isolinux.bin \ - /usr/local/share/syslinux/bios/isolinux.bin \ - /usr/lib/ISOLINUX/isolinux.bin + $(patsubst %,%/isolinux.bin,$(SYSLINUX_DIR_LIST)) +LDLINUX_C32_LIST := \ + $(LDLINUX_C32) \ + $(patsubst %,%/ldlinux.c32,$(SYSLINUX_DIR_LIST)) ISOLINUX_BIN = $(firstword $(wildcard $(ISOLINUX_BIN_LIST))) +LDLINUX_C32 = $(firstword $(wildcard $(LDLINUX_C32_LIST))) # i386-specific directories containing source files # diff --git a/src/arch/i386/Makefile.pcbios b/src/arch/i386/Makefile.pcbios index ff823737..02952f81 100644 --- a/src/arch/i386/Makefile.pcbios +++ b/src/arch/i386/Makefile.pcbios @@ -57,7 +57,8 @@ LIST_NAME_isarom := ROMS NON_AUTO_MEDIA += iso %iso: %lkrn util/geniso $(QM)$(ECHO) " [GENISO] $@" - $(Q)ISOLINUX_BIN=$(ISOLINUX_BIN) VERSION="$(VERSION)" bash util/geniso -o $@ $< + $(Q)ISOLINUX_BIN=$(ISOLINUX_BIN) LDLINUX_C32=$(LDLINUX_C32) \ + VERSION="$(VERSION)" bash util/geniso -o $@ $< # rule to make a floppy emulation ISO boot image NON_AUTO_MEDIA += liso |