diff --git a/mk/disk.mk b/mk/disk.mk index d0a8972..ed926ba 100644 --- a/mk/disk.mk +++ b/mk/disk.mk @@ -1,8 +1,8 @@ -build/harddrive.bin: build/kernel bootloader/$(ARCH)/** build/filesystem.bin - nasm -f bin -o $@ -D ARCH_$(ARCH) -ibootloader/$(ARCH)/ bootloader/$(ARCH)/harddrive.asm +build/harddrive.bin: build/kernel build/filesystem.bin bootloader/$(ARCH)/** + nasm -f bin -o $@ -D ARCH_$(ARCH) -D KERNEL=$< -D FILESYSTEM=build/filesystem.bin -ibootloader/$(ARCH)/ bootloader/$(ARCH)/disk.asm build/livedisk.bin: build/kernel_live bootloader/$(ARCH)/** - nasm -f bin -o $@ -D ARCH_$(ARCH) -ibootloader/$(ARCH)/ bootloader/$(ARCH)/livedisk.asm + nasm -f bin -o $@ -D ARCH_$(ARCH) -D KERNEL=$< -ibootloader/$(ARCH)/ bootloader/$(ARCH)/disk.asm build/%.bin.gz: build/%.bin gzip -k -f $< diff --git a/mk/kernel.mk b/mk/kernel.mk index 6b9cc48..5293900 100644 --- a/mk/kernel.mk +++ b/mk/kernel.mk @@ -1,8 +1,8 @@ -build/libkernel.a: kernel/Cargo.toml kernel/src/** build/initfs.tag +build/libkernel.a: kernel/Cargo.toml kernel/src/* kernel/src/*/* kernel/src/*/*/* build/initfs.tag cd kernel && xargo rustc --lib --target $(KTARGET) --release -- -C soft-float --emit link=../$@ -build/libkernel_live.a: kernel/Cargo.toml kernel/src/** build/initfs.tag build/filesystem.bin - cd kernel && xargo rustc --lib --features live --target $(KTARGET) --release -- -C soft-float --emit link=../$@ +build/libkernel_live.a: kernel/Cargo.toml kernel/src/* kernel/src/*/* kernel/src/*/*/* build/initfs.tag build/filesystem.bin + cd kernel && FILESYSTEM="$(PWD)/build/filesystem.bin" xargo rustc --lib --features live --target $(KTARGET) --release -- -C soft-float --emit link=../$@ build/kernel: build/libkernel.a $(LD) --gc-sections -z max-page-size=0x1000 -T kernel/linkers/$(ARCH).ld -o $@ $<