From 8f4927587227456d715007e9e7d87f16180986be Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Szymon=20Karpi=C5=84ski?= Date: Sun, 9 Feb 2020 21:36:55 +0100 Subject: [PATCH] makefiles tested on fresh system --- Makefile | 17 ++++++++++------- linux/Makefile | 21 +++++++++++---------- 2 files changed, 21 insertions(+), 17 deletions(-) diff --git a/Makefile b/Makefile index 552f39f..b831732 100644 --- a/Makefile +++ b/Makefile @@ -1,27 +1,30 @@ .PHONY: .FORCE -files: files/pxelinux.0 files/initrd.img files/vmlinuz files/pxelinux.cfg/default files/ldlinux.c32 files/root.squashfs +all: files/pxelinux.0 files/initrd.img files/vmlinuz files/pxelinux.cfg/default files/ldlinux.c32 files/root.squashfs -files/pxelinux.0: syslinux +files/pxelinux.0: syslinux | files cp syslinux/bios/core/pxelinux.0 files/pxelinux.0 -files/initrd.img: linux/build/rootfs/initrd.img +files/initrd.img: linux/build/rootfs/initrd.img | files cp linux/build/rootfs/initrd.img files/initrd.img -files/vmlinuz: linux/build/rootfs/vmlinuz +files/vmlinuz: linux/build/rootfs/vmlinuz | files cp linux/build/rootfs/vmlinuz files/vmlinuz -files/pxelinux.cfg/default: pxelinux.cfg +files/pxelinux.cfg/default: pxelinux.cfg | files mkdir -p files/pxelinux.cfg cp pxelinux.cfg files/pxelinux.cfg/default -files/ldlinux.c32: syslinux +files/ldlinux.c32: syslinux | files cp syslinux/bios/com32/elflink/ldlinux/ldlinux.c32 files/ldlinux.c32 -files/root.squashfs: .FORCE +files/root.squashfs: .FORCE | files rm files/root.squashfs || true mksquashfs linux/build/rootfs files/root.squashfs +files: + mkdir -p files + syslinux: rm -r syslinux || true rm syslinux-6.03.tar.gz|| true diff --git a/linux/Makefile b/linux/Makefile index fffe25d..c6f6dfc 100644 --- a/linux/Makefile +++ b/linux/Makefile @@ -3,38 +3,39 @@ CHROOT_CMD := chroot build/rootfs /bin/bash -c FILES = $(shell find src/ -type f -print | sed -e 's|^src/|build/rootfs/|') FILES_SRC = $(shell find src/ -type f -print) -.PHONY: .FORCE - -all: build/rootfs $(FILES) menu images build/rootfs/initrd.img +all: $(FILES) menu images build/rootfs/initrd.img clean: rm -rf build/rootfs -menu: +menu: build/rootfs | build $(CHROOT_CMD) "apt install dialog" $(CHROOT_CMD) "chmod +x /scripts/menu.sh" $(CHROOT_CMD) "usermod -s /scripts/menu.sh root" -images: +images: build/rootfs | build $(CHROOT_CMD) "apt install -y udpcast" $(CHROOT_CMD) "apt install -y partclone" $(CHROOT_CMD) "apt install -y lzop strace" $(CHROOT_CMD) "touch /etc/mtab" -build/rootfs/initrd.img: $(FILES) +build/rootfs/initrd.img: build/rootfs $(FILES) | build chmod +x build/rootfs/etc/initramfs-tools/scripts/local-top/download.sh - $(CHROOT_CMD) "apt update && apt install -y linux-image-4.19.0-6-amd64" + $(CHROOT_CMD) "apt update && apt install -y linux-image-4.19.0-*-amd64" $(CHROOT_CMD) "update-initramfs -c -kall" -$(FILES): .FORCE +$(FILES): build/rootfs | build mkdir -p $(@D) cp $(shell echo $@ | sed -e 's|^build/rootfs/|src/|') $@ -build/rootfs: build/cache +build/rootfs: build/cache | build rm -rf build/rootfs cp -r build/cache build/rootfs rm -rf $(FILES) -build/cache: +build/cache: | build rm -rf build/cache || true debootstrap buster build/cache + +build: + mkdir -p build