mirror of
https://github.com/Mathewnd/Astral.git
synced 2026-10-31 22:48:21 +00:00
Makefile: add a minimal distro target
This commit is contained in:
@@ -1,8 +1,7 @@
|
|||||||
.phony: all kernel initrd rebuildkernel
|
.phony: all kernel initrd rebuildkernel minimaliso minimalinitrd
|
||||||
all: jinx
|
all: jinx
|
||||||
LDFLAGS="" CFLAGS="" ./jinx build-all
|
LDFLAGS="" CFLAGS="" ./jinx build-all
|
||||||
./jinx sysroot
|
make fullinitrd
|
||||||
make initrd
|
|
||||||
make sysdisk.iso
|
make sysdisk.iso
|
||||||
|
|
||||||
rebuildkernel:
|
rebuildkernel:
|
||||||
@@ -12,6 +11,9 @@ jinx:
|
|||||||
curl https://raw.githubusercontent.com/mintsuki/jinx/trunk/jinx > jinx
|
curl https://raw.githubusercontent.com/mintsuki/jinx/trunk/jinx > jinx
|
||||||
chmod +x jinx
|
chmod +x jinx
|
||||||
|
|
||||||
|
minimaliso:
|
||||||
|
make minimalinitrd
|
||||||
|
make sysdisk.iso
|
||||||
|
|
||||||
|
|
||||||
XCC=x86_64-elf-gcc
|
XCC=x86_64-elf-gcc
|
||||||
@@ -29,10 +31,16 @@ ISO=$(PWD)/boot/$(TARGET)/iso
|
|||||||
SRCDIR=$(PWD)/src/
|
SRCDIR=$(PWD)/src/
|
||||||
OBJDIR=$(PWD)/bin/
|
OBJDIR=$(PWD)/bin/
|
||||||
|
|
||||||
initrd:
|
fullinitrd:
|
||||||
|
./jinx sysroot
|
||||||
rm -f $(INITRD)
|
rm -f $(INITRD)
|
||||||
cd sysroot; tar -cf $(INITRD) *
|
cd sysroot; tar -cf $(INITRD) *
|
||||||
|
|
||||||
|
minimalinitrd:
|
||||||
|
./jinx install minsysroot bash mlibc coreutils distro-files init mlibc-headers
|
||||||
|
rm -f $(INITRD)
|
||||||
|
cd minsysroot; tar -cf $(INITRD) *
|
||||||
|
|
||||||
#TODO make it so we don't need to rebuild everything when a header is changed
|
#TODO make it so we don't need to rebuild everything when a header is changed
|
||||||
|
|
||||||
export OBJDIR SRCDIR LDFLAGS CFLAGS INCLUDEDIR TARGET XCC
|
export OBJDIR SRCDIR LDFLAGS CFLAGS INCLUDEDIR TARGET XCC
|
||||||
@@ -50,7 +58,7 @@ sysdisk.iso: $(ISO)
|
|||||||
mkdir -p $(ISO)
|
mkdir -p $(ISO)
|
||||||
cp liminebg.bmp limine.cfg limine/limine.sys limine/limine-cd.bin limine/limine-cd-efi.bin $(ISO)
|
cp liminebg.bmp limine.cfg limine/limine.sys limine/limine-cd.bin limine/limine-cd-efi.bin $(ISO)
|
||||||
xorriso -as mkisofs -b limine-cd.bin -no-emul-boot -boot-load-size 4 -boot-info-table --efi-boot limine-cd-efi.bin -efi-boot-part --efi-boot-image --protective-msdos-label $(ISO) -o sysdisk.iso
|
xorriso -as mkisofs -b limine-cd.bin -no-emul-boot -boot-load-size 4 -boot-info-table --efi-boot limine-cd-efi.bin -efi-boot-part --efi-boot-image --protective-msdos-label $(ISO) -o sysdisk.iso
|
||||||
|
|
||||||
run:
|
run:
|
||||||
qemu-system-x86_64 -cdrom sysdisk.iso -m 8G -smp cpus=6
|
qemu-system-x86_64 -cdrom sysdisk.iso -m 8G -smp cpus=6
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user