2006-06-26 15:26:59 +00:00
|
|
|
# == defs
|
|
|
|
|
|
2006-12-03 19:28:00 +00:00
|
|
|
URL_BASE = http://www.kernel.org/pub/linux/utils/boot/syslinux
|
|
|
|
|
URL_FILE = SYSLINUX_URL
|
|
|
|
|
URL = $(shell cat $(URL_FILE))
|
|
|
|
|
DLOAD_DIR = /home/samba/dat/share/exe/linux/syslinux
|
|
|
|
|
BUILD_DIR = cd_root
|
|
|
|
|
DIRS = $(DLOAD_DIR) $(BUILD_DIR)
|
|
|
|
|
UNPACK_DIR = isolinux
|
2006-12-31 11:42:58 +00:00
|
|
|
ISO_IMAGE ?= image.iso
|
2006-06-26 16:16:07 +00:00
|
|
|
ISOLINUX_BIN = $(UNPACK_DIR)/isolinux.bin
|
2008-03-19 19:22:41 +00:00
|
|
|
MENU_32 = $(UNPACK_DIR)/com32/menu/menu.c32
|
2006-12-03 19:28:00 +00:00
|
|
|
INITRD = /boot/initrd
|
2006-06-26 15:26:59 +00:00
|
|
|
|
|
|
|
|
CD_FILES = \
|
2006-12-31 11:42:58 +00:00
|
|
|
$(MENU_32) \
|
2006-06-29 17:43:13 +00:00
|
|
|
$(ISOLINUX_BIN)
|
2008-03-19 19:22:41 +00:00
|
|
|
|
2006-12-03 19:28:00 +00:00
|
|
|
define SYSLINUX_BASE
|
|
|
|
|
$(notdir $(shell sed 's/.tar.bz2$$//' $(URL_FILE)))
|
|
|
|
|
endef
|
|
|
|
|
|
2006-06-26 15:26:59 +00:00
|
|
|
# == targets
|
|
|
|
|
|
|
|
|
|
all: $(ISO_IMAGE)
|
|
|
|
|
install:
|
2006-12-31 11:42:58 +00:00
|
|
|
clean: syslinux.clean
|
2006-06-26 15:26:59 +00:00
|
|
|
distclean: clean
|
|
|
|
|
|
|
|
|
|
# == rules
|
|
|
|
|
|
2006-12-31 11:42:58 +00:00
|
|
|
syslinux.clean:
|
|
|
|
|
rm -rf *.done
|
|
|
|
|
rm -rf $(BUILD_DIR) $(UNPACK_DIR)
|
|
|
|
|
rm -f $(ISO_IMAGE) $(URL_FILE) $(URL_FILE).tmp
|
|
|
|
|
|
2006-06-26 15:26:59 +00:00
|
|
|
dirs.done:
|
|
|
|
|
mkdir -p $(DIRS)
|
|
|
|
|
touch $@
|
|
|
|
|
|
2006-12-03 19:28:00 +00:00
|
|
|
$(URL_FILE):
|
|
|
|
|
lynx -dump $(URL_BASE) | \
|
|
|
|
|
sed '/syslinux-.*\.tar\.bz2$$/ !d; s/ .*http:/http:/' |\
|
|
|
|
|
tail -1 > $@.tmp
|
|
|
|
|
mv $@.tmp $@
|
2006-06-29 17:43:13 +00:00
|
|
|
|
2006-12-03 19:28:00 +00:00
|
|
|
dload.done: $(URL_FILE)
|
|
|
|
|
wget -c $(shell cat $<) -P $(DLOAD_DIR)
|
2006-06-26 15:26:59 +00:00
|
|
|
touch $@
|
|
|
|
|
|
2006-12-31 11:42:58 +00:00
|
|
|
$(MENU_32): unpack.done
|
2006-12-03 19:28:00 +00:00
|
|
|
|
|
|
|
|
unpack.done: $(URL_FILE) dload.done
|
|
|
|
|
tar -xjf $(shell echo $(DLOAD_DIR)/$(SYSLINUX_BASE).tar.bz2 | sed 's/ //g')
|
|
|
|
|
mv $(SYSLINUX_BASE) $(UNPACK_DIR)
|
2006-06-26 15:26:59 +00:00
|
|
|
touch $@
|
|
|
|
|
|
2007-08-15 14:15:37 +00:00
|
|
|
GENERATE = sh $(MOD_SCRIPT_DIR)/generate_boot_medium.sh
|
2006-06-29 17:43:13 +00:00
|
|
|
BOOT_CONF = boot.conf
|
2006-06-27 17:46:56 +00:00
|
|
|
|
2006-06-29 17:43:13 +00:00
|
|
|
$(ISO_IMAGE): $(BOOT_CONF) dirs.done $(CD_FILES)
|
|
|
|
|
$(GENERATE) -o $@ -d $(BUILD_DIR) -f $< $(CD_FILES)
|
2006-06-26 15:26:59 +00:00
|
|
|
|