jw-pkg/make/isolinux.mk
Jan Lindemann bdd66dbc26 Everywhere: Rename MOD_SCRIPT_DIR -> JWB_SCRIPT_DIR
Follow name change of MODDIR -> JWBDIR.

Signed-off-by: Jan Lindemann <jan@janware.com>
2019-06-29 21:45:24 +00:00

62 lines
1.6 KiB
Makefile

# == defs
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
ISO_IMAGE ?= image.iso
ISOLINUX_BIN = $(UNPACK_DIR)/isolinux.bin
MENU_32 = $(UNPACK_DIR)/com32/menu/menu.c32
INITRD = /boot/initrd
CD_FILES = \
$(MENU_32) \
$(ISOLINUX_BIN)
define SYSLINUX_BASE
$(notdir $(shell $(SED) 's/.tar.bz2$$//' $(URL_FILE)))
endef
# == targets
all: $(ISO_IMAGE)
install:
clean: syslinux.clean
distclean: clean
# == rules
syslinux.clean:
$(RM) -rf *.done
$(RM) -rf $(BUILD_DIR) $(UNPACK_DIR)
$(RM) -f $(ISO_IMAGE) $(URL_FILE) $(URL_FILE).tmp
dirs.done:
mkdir -p $(DIRS)
touch $@
$(URL_FILE):
lynx -dump $(URL_BASE) | \
$(SED) '/syslinux-.*\.tar\.bz2$$/ !d; s/ .*http:/http:/' |\
tail -1 > $@.tmp
mv $@.tmp $@
dload.done: $(URL_FILE)
wget -c $(shell $(CAT) $<) -P $(DLOAD_DIR)
touch $@
$(MENU_32): unpack.done
unpack.done: $(URL_FILE) dload.done
tar -xjf $(shell echo $(DLOAD_DIR)/$(SYSLINUX_BASE).tar.bz2 | $(SED) 's/ //g')
mv $(SYSLINUX_BASE) $(UNPACK_DIR)
touch $@
GENERATE = /bin/bash $(JWB_SCRIPT_DIR)/generate-boot-medium.sh
BOOT_CONF = boot.conf
$(ISO_IMAGE): $(BOOT_CONF) dirs.done $(CD_FILES)
$(GENERATE) -o $@ -d $(BUILD_DIR) -f $< $(CD_FILES)