mirror of
ssh://git.janware.com/srv/git/janware/proj/jw-pkg
synced 2026-01-15 12:03:31 +01:00
81 lines
1.7 KiB
Makefile
81 lines
1.7 KiB
Makefile
# == 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 = $(UNPACK_DIR)/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 -l -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 $(notdir $(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 \
|
|
) > $@
|
|
|