Modularise makefiles
This commit is contained in:
parent
b7a19200a8
commit
e3f3f27fbc
23 changed files with 525 additions and 526 deletions
16
mk/kernel.mk
Normal file
16
mk/kernel.mk
Normal file
|
@ -0,0 +1,16 @@
|
|||
$(KBUILD)/libcollections.rlib: rust/src/libcollections/Cargo.toml rust/src/libcollections/**
|
||||
mkdir -p $(KBUILD)
|
||||
$(KCARGO) rustc --verbose --manifest-path $< $(KCARGOFLAGS) -o $@
|
||||
cp rust/src/target/$(KTARGET)/release/deps/*.rlib $(KBUILD)
|
||||
|
||||
$(KBUILD)/libkernel.a: kernel/Cargo.toml kernel/arch/** kernel/src/** $(KBUILD)/libcollections.rlib $(BUILD)/initfs.rs
|
||||
$(KCARGO) rustc --manifest-path $< --lib $(KCARGOFLAGS) -C lto --emit obj=$@
|
||||
|
||||
$(KBUILD)/libkernel_live.a: kernel/Cargo.toml kernel/arch/** kernel/src/** $(KBUILD)/libcollections.rlib $(BUILD)/initfs.rs build/filesystem.bin
|
||||
$(KCARGO) rustc --manifest-path $< --lib --features live $(KCARGOFLAGS) -C lto --emit obj=$@
|
||||
|
||||
$(KBUILD)/kernel: $(KBUILD)/libkernel.a
|
||||
$(LD) $(LDFLAGS) -z max-page-size=0x1000 -T kernel/arch/$(ARCH)/src/linker.ld -o $@ $<
|
||||
|
||||
$(KBUILD)/kernel_live: $(KBUILD)/libkernel_live.a
|
||||
$(LD) $(LDFLAGS) -z max-page-size=0x1000 -T kernel/arch/$(ARCH)/src/linker.ld -o $@ $<
|
Loading…
Add table
Add a link
Reference in a new issue