mirror of
ssh://git.janware.com/srv/git/janware/proj/jw-pkg
synced 2026-01-15 03:53:32 +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