mirror of
ssh://git.janware.com/srv/git/janware/proj/jw-pkg
synced 2026-01-15 12:03:31 +01:00
isolinux.mk: Add file
This commit is contained in:
parent
d4ef0468c9
commit
3f5ba607ce
1 changed files with 81 additions and 0 deletions
81
make/isolinux.mk
Normal file
81
make/isolinux.mk
Normal file
|
|
@ -0,0 +1,81 @@
|
||||||
|
# == defs
|
||||||
|
|
||||||
|
# -- overwrite these >>
|
||||||
|
ifeq ($(ROOT_FS_DEVICE),)
|
||||||
|
ROOT_FS_DEVICE = /dev/hda1
|
||||||
|
endif
|
||||||
|
|
||||||
|
BOOT_FILES = $(wildcard /boot/*$(shell uname -r)*)
|
||||||
|
# -- overwrite these <<
|
||||||
|
|
||||||
|
URL = http://www.kernel.org/pub/linux/utils/boot/syslinux/syslinux-3.11.tar.bz2
|
||||||
|
DLOAD_DIR = /home/samba/dat/share/exe/linux/syslinux
|
||||||
|
DLOAD_PKG = $(DLOAD_DIR)/$(notdir $(URL))
|
||||||
|
BUILD_DIR = cd_root
|
||||||
|
DIRS = $(DLOAD_DIR) $(BUILD_DIR)
|
||||||
|
UNPACK_DIR = $(notdir $(shell echo $(DLOAD_PKG) | sed 's/.tar.bz2$$//'))
|
||||||
|
ISO_IMAGE = image.iso
|
||||||
|
ISOLINUX_BIN = /usr/share/syslinux/isolinux.bin
|
||||||
|
ISOLINUX_CFG = isolinux.cfg
|
||||||
|
INITRD = /boot/initrd
|
||||||
|
|
||||||
|
CD_FILES = \
|
||||||
|
$(BOOT_FILES) \
|
||||||
|
$(UNPACK_DIR)/com32/modules/menu.c32 \
|
||||||
|
$(INITRD) \
|
||||||
|
$(ISOLINUX_BIN) \
|
||||||
|
$(ISOLINUX_CFG)
|
||||||
|
|
||||||
|
KERNELS = $(shell file $(BOOT_FILES) | grep -ie 'linux.*kernel' | sed 's/:.*//')
|
||||||
|
|
||||||
|
export ROOT_FS_DEVICE
|
||||||
|
|
||||||
|
# == targets
|
||||||
|
|
||||||
|
all: $(ISO_IMAGE)
|
||||||
|
install:
|
||||||
|
clean:
|
||||||
|
rm -rf *.done
|
||||||
|
rm -rf $(BUILD_DIR) $(UNPACK_DIR)
|
||||||
|
rm -f $(ISO_IMAGE)
|
||||||
|
rm -f $(ISOLINUX_CFG)
|
||||||
|
|
||||||
|
distclean: clean
|
||||||
|
|
||||||
|
# == rules
|
||||||
|
|
||||||
|
dirs.done:
|
||||||
|
mkdir -p $(DIRS)
|
||||||
|
touch $@
|
||||||
|
|
||||||
|
$(DLOAD_PKG):
|
||||||
|
wget -c $(URL) -P $(DLOAD_DIR)
|
||||||
|
|
||||||
|
dload.done: $(DLOAD_PKG)
|
||||||
|
touch $@
|
||||||
|
|
||||||
|
unpack.done: dload.done
|
||||||
|
tar -xjf $(DLOAD_PKG)
|
||||||
|
touch $@
|
||||||
|
|
||||||
|
copy.done: unpack.done dirs.done $(CD_FILES)
|
||||||
|
mkdir -p $(BUILD_DIR)
|
||||||
|
cp $(CD_FILES) $(BUILD_DIR)/
|
||||||
|
touch $@
|
||||||
|
|
||||||
|
$(ISO_IMAGE): copy.done
|
||||||
|
mkisofs -o $(ISO_IMAGE) \
|
||||||
|
-b isolinux.bin -c boot.cat \
|
||||||
|
-no-emul-boot -boot-load-size 4 -boot-info-table \
|
||||||
|
$(BUILD_DIR)
|
||||||
|
|
||||||
|
isolinux.cfg:
|
||||||
|
( \
|
||||||
|
echo DEFAULT menu.c32 ;\
|
||||||
|
echo PROMPT 0 ;\
|
||||||
|
for k in $(KERNELS); do \
|
||||||
|
l=`echo $$k | sed 's/vmlinuz-//g'` ;\
|
||||||
|
echo -e "LABEL $$l\n KERNEL $$k\n APPEND initrd=initrd root=$(ROOT_FS_DEVICE)" ;\
|
||||||
|
done \
|
||||||
|
) > $@
|
||||||
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue