Compare commits

...

8 Commits

Author SHA1 Message Date
Jeremy Soller
faaed356a3
Merge branch '4lDO2/redox-external-initfs' 2022-04-11 15:16:30 -06:00
4lDO2
10c92cef61
Update submodules 2022-04-11 23:14:54 +02:00
Jeremy Soller
78801dabdd
Update kernel 2022-04-11 14:58:09 -06:00
Jeremy Soller
0ebdbae622
Create kernel.all file that has both code and debugging symbols 2022-04-11 14:55:31 -06:00
4lDO2
34d9d49ae6
Make prefix before other dependencies. 2022-04-11 22:54:05 +02:00
4lDO2
3fd86aad4f
Add redox-initfs submodule 2022-04-08 14:13:45 +02:00
4lDO2
78551a15cd
Update bootloader and kernel. 2022-04-08 14:13:44 +02:00
4lDO2
6df94dde59
Do not rebuild kernel when initfs changes 2022-04-08 14:12:30 +02:00
7 changed files with 16 additions and 13 deletions

3
.gitmodules vendored
View File

@ -34,3 +34,6 @@
path = bootloader-coreboot
url = https://gitlab.redox-os.org/redox-os/bootloader-coreboot.git
branch = master
[submodule "redox-initfs"]
path = redox-initfs
url = https://gitlab.redox-os.org/redox-os/redox-initfs.git

@ -1 +1 @@
Subproject commit 2f86d3a70e406a5b19fb2686da82b0bc2c81db35
Subproject commit ec14ff801c89954196a9d86e4d13176eeb84ab9e

2
kernel

@ -1 +1 @@
Subproject commit 87b3bef06c13847a971aefd811a46dffa89adf46
Subproject commit 8f06672153c17fc6b7f9ed5d57a220164360b7e2

View File

@ -1,4 +1,4 @@
build/filesystem.bin: filesystem.toml build/bootloader.bin build/kernel prefix
build/filesystem.bin: prefix filesystem.toml build/bootloader.bin build/kernel build/initfs.img
cargo build --manifest-path cookbook/Cargo.toml --release
cargo build --manifest-path installer/Cargo.toml --release
cargo build --manifest-path redoxfs/Cargo.toml --release
@ -13,14 +13,15 @@ build/filesystem.bin: filesystem.toml build/bootloader.bin build/kernel prefix
redoxfs/target/release/redoxfs $@.partial build/filesystem/
sleep 2
pgrep redoxfs
cp -v $< build/filesystem/filesystem.toml
cp -v filesystem.toml build/filesystem/filesystem.toml
cp -v build/bootloader.bin build/filesystem/bootloader
cp -v build/kernel build/filesystem/kernel
mkdir -v build/filesystem/pkg
cp -v cookbook/build/id_ed25519.pub.toml build/filesystem/pkg/id_ed25519.pub.toml
#TODO cp -r $(ROOT)/$(PREFIX_INSTALL)/$(TARGET)/include build/filesystem/include
#TODO cp -r $(ROOT)/$(PREFIX_INSTALL)/$(TARGET)/lib build/filesystem/lib
$(INSTALLER) -c $< build/filesystem/
$(INSTALLER) -c filesystem.toml build/filesystem/
cp build/initfs.img build/filesystem/initfs
sync
-$(FUMOUNT) build/filesystem/ || true
rm -rf build/filesystem/

View File

@ -14,10 +14,9 @@ INITFS_RM_BINS=\
vboxd \
xhcid
build/initfs.tag: initfs.toml prefix
build/initfs.img: initfs.toml prefix
cargo build --manifest-path cookbook/Cargo.toml --release
cargo build --manifest-path installer/Cargo.toml --release
rm -f build/libkernel.a
rm -rf build/initfs
mkdir -p build/initfs
$(INSTALLER) -c $< build/initfs/
@ -26,4 +25,4 @@ build/initfs.tag: initfs.toml prefix
for bin in $(INITFS_RM_BINS); do \
rm -f build/initfs/bin/$$bin; \
done
touch $@
cargo run --manifest-path redox-initfs/tools/Cargo.toml --bin redox-initfs-ar -- build/initfs -o $@

View File

@ -1,11 +1,10 @@
build/libkernel.a: kernel/Cargo.lock kernel/Cargo.toml kernel/src/* kernel/src/*/* kernel/src/*/*/* kernel/src/*/*/*/* build/initfs.tag
build/libkernel.a: kernel/Cargo.lock kernel/Cargo.toml kernel/src/* kernel/src/*/* kernel/src/*/*/* kernel/src/*/*/*/*
export PATH="$(PREFIX_PATH):$$PATH" && \
export INITFS_FOLDER=$(ROOT)/build/initfs && \
cd kernel && \
cargo rustc --lib --target=$(ROOT)/kernel/targets/$(KTARGET).json --release -- -C soft-float -C debuginfo=2 -C lto --emit link=../$@
build/kernel: kernel/linkers/$(ARCH).ld mk/kernel_ld.sh build/libkernel.a
export PATH="$(PREFIX_PATH):$$PATH" && \
$(ROOT)/mk/kernel_ld.sh $(LD) --gc-sections -z max-page-size=0x1000 -T $< -o $@ build/libkernel.a && \
$(OBJCOPY) --only-keep-debug $@ $@.sym && \
$(OBJCOPY) --strip-debug $@
$(ROOT)/mk/kernel_ld.sh $(LD) --gc-sections -z max-page-size=0x1000 -T $< -o $@.all build/libkernel.a && \
$(OBJCOPY) --only-keep-debug $@.all $@.sym && \
$(OBJCOPY) --strip-debug $@.all $@

1
redox-initfs Submodule

@ -0,0 +1 @@
Subproject commit 89b8fb8984cf96c418880b7dcd9ce3d6afc3f71c