summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/arch/i386/Makefile27
-rw-r--r--src/arch/i386/Makefile.pcbios3
-rwxr-xr-xsrc/util/geniso3
3 files changed, 21 insertions, 12 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
diff --git a/src/util/geniso b/src/util/geniso
index 521c929e..ff090d4a 100755
--- a/src/util/geniso
+++ b/src/util/geniso
@@ -123,8 +123,7 @@ case "${LEGACY}" in
cp ${ISOLINUX_BIN} ${dir}
# syslinux 6.x needs a file called ldlinux.c32
- LDLINUX_C32=$(dirname ${ISOLINUX_BIN})/ldlinux.c32
- if [ -s ${LDLINUX_C32} ]; then
+ if [ -n "${LDLINUX_C32}" -a -s "${LDLINUX_C32}" ]; then
cp ${LDLINUX_C32} ${dir}
fi