2022-12-06 21:29:56 +00:00
|
|
|
CHOWN = sudo chown
|
|
|
|
CHROOT = sudo chroot
|
2022-12-06 16:17:10 +00:00
|
|
|
CP = cp
|
2022-12-06 16:32:14 +00:00
|
|
|
GMAKE = make
|
2022-12-06 16:17:10 +00:00
|
|
|
INSTALL = install
|
|
|
|
MKDIR = mkdir
|
|
|
|
RM = rm
|
|
|
|
SED = sed
|
|
|
|
|
2022-12-06 16:19:13 +00:00
|
|
|
ARCH = x86_64
|
|
|
|
|
2022-12-06 16:24:45 +00:00
|
|
|
SRC != pwd
|
2023-01-03 19:14:28 +00:00
|
|
|
BUILDDIR = $(SRC)/build
|
2024-05-13 20:23:50 +00:00
|
|
|
SCRIPTS = $(SRC)/scripts
|
2023-01-03 19:14:28 +00:00
|
|
|
SYSROOT = $(SRC)/sysroot
|
2022-12-06 02:41:18 +00:00
|
|
|
|
2022-12-06 16:08:59 +00:00
|
|
|
SYSROOT_TARGETS = \
|
2023-01-03 18:58:19 +00:00
|
|
|
$(SYSROOT)/bin/busybox \
|
2023-09-07 18:26:25 +00:00
|
|
|
$(SYSROOT)/etc/group \
|
2023-09-07 18:53:38 +00:00
|
|
|
$(SYSROOT)/etc/hostname \
|
2023-01-03 18:58:19 +00:00
|
|
|
$(SYSROOT)/etc/hosts \
|
2023-09-07 18:26:25 +00:00
|
|
|
$(SYSROOT)/etc/inittab \
|
2024-05-13 16:32:14 +00:00
|
|
|
$(SYSROOT)/etc/issue \
|
2023-09-07 18:26:25 +00:00
|
|
|
$(SYSROOT)/etc/passwd \
|
2023-01-03 18:58:19 +00:00
|
|
|
$(SYSROOT)/etc/shells \
|
|
|
|
$(SYSROOT)/usr/lib/libc.a
|
2022-12-06 03:55:09 +00:00
|
|
|
|
2022-12-06 16:08:59 +00:00
|
|
|
all: fhs $(SYSROOT_TARGETS)
|
2023-09-07 17:35:30 +00:00
|
|
|
$(CHOWN) -R user:user $(SYSROOT)
|
2022-12-06 05:37:47 +00:00
|
|
|
|
2022-12-06 15:43:07 +00:00
|
|
|
clean:
|
2024-05-13 13:22:59 +00:00
|
|
|
$(RM) -rf $(BUILDDIR) $(SYSROOT) musl-gcc.specs image.iso
|
2022-12-06 15:43:07 +00:00
|
|
|
|
2022-12-06 07:37:02 +00:00
|
|
|
include make/busybox.mk
|
2022-12-06 21:29:56 +00:00
|
|
|
include make/etc.mk
|
2022-12-06 07:37:02 +00:00
|
|
|
include make/fhs.mk
|
2022-12-06 08:15:33 +00:00
|
|
|
include make/musl.mk
|
2022-12-06 03:33:53 +00:00
|
|
|
|
2022-12-06 21:29:56 +00:00
|
|
|
chroot: all
|
|
|
|
$(CHROOT) $(SYSROOT) /bin/sh
|
|
|
|
|
2022-12-06 19:01:18 +00:00
|
|
|
run: image.iso
|
|
|
|
qemu-system-x86_64 -m 2G -cdrom image.iso
|
|
|
|
|
|
|
|
image.iso: $(SYSROOT)/boot/grub/grub.cfg $(SYSROOT)/boot/bzImage all
|
|
|
|
grub-mkrescue $(SYSROOT) -o image.iso
|
|
|
|
|
|
|
|
$(SYSROOT)/boot/grub/grub.cfg: boot/grub/grub.cfg fhs
|
|
|
|
$(INSTALL) -d $(SYSROOT)/boot/grub
|
|
|
|
cp boot/grub/grub.cfg $(SYSROOT)/boot/grub/grub.cfg
|
|
|
|
|
|
|
|
$(SYSROOT)/boot/bzImage: boot/bzImage fhs
|
|
|
|
cp boot/bzImage $(SYSROOT)/boot/bzImage
|