Fix live filesystem by using a different initfs
This commit is contained in:
parent
79572c168f
commit
49cd5866ac
27
initfs_live.toml
Normal file
27
initfs_live.toml
Normal file
|
@ -0,0 +1,27 @@
|
|||
# This is the default configuration file
|
||||
|
||||
# General settings
|
||||
[general]
|
||||
# Do not prompt if settings are not defined
|
||||
prompt = false
|
||||
|
||||
# Package settings
|
||||
[packages]
|
||||
drivers = {}
|
||||
init = {}
|
||||
redoxfs = {}
|
||||
|
||||
[[files]]
|
||||
path="/etc/init.rc"
|
||||
data="""
|
||||
export PATH /bin
|
||||
export TMPDIR /tmp
|
||||
vesad T T G
|
||||
stdio display:1
|
||||
ps2d
|
||||
pcid /etc/pcid/initfs.toml
|
||||
redoxfs disk/live: file
|
||||
cd file:
|
||||
export PATH file:/bin
|
||||
run.d /etc/init.d
|
||||
"""
|
2
kernel
2
kernel
|
@ -1 +1 @@
|
|||
Subproject commit 0794926493a26a1384063e792e7df3de88faa373
|
||||
Subproject commit 808447cbfbd8d52d5383d22d25f806cefe3bed2a
|
|
@ -24,7 +24,6 @@ endif
|
|||
|
||||
# Automatic variables
|
||||
ROOT=$(PWD)
|
||||
export INITFS_FOLDER=$(ROOT)/build/initfs
|
||||
export RUST_TARGET_PATH=$(ROOT)/kernel/targets
|
||||
export XARGO_HOME=$(ROOT)/build/xargo
|
||||
export XARGO_RUST_SRC=$(ROOT)/rust/src
|
||||
|
|
|
@ -4,3 +4,10 @@ build/initfs.tag: initfs.toml
|
|||
mkdir -p build/initfs
|
||||
cargo run --manifest-path installer/Cargo.toml -- $(INSTALLER_FLAGS) -c $< build/initfs/
|
||||
touch $@
|
||||
|
||||
build/initfs_live.tag: initfs_live.toml
|
||||
cd kernel && xargo clean
|
||||
rm -rf build/initfs_live
|
||||
mkdir -p build/initfs_live
|
||||
cargo run --manifest-path installer/Cargo.toml -- $(INSTALLER_FLAGS) -c $< build/initfs_live/
|
||||
touch $@
|
||||
|
|
|
@ -1,13 +1,13 @@
|
|||
build/libkernel.a: kernel/Cargo.toml kernel/src/* kernel/src/*/* kernel/src/*/*/* build/initfs.tag
|
||||
# Temporary fix for https://github.com/redox-os/redox/issues/963 allowing to build on macOS
|
||||
ifeq ($(UNAME),Darwin)
|
||||
cd kernel && CC=$(ARCH)-elf-gcc AR=$(ARCH)-elf-ar CFLAGS=-ffreestanding xargo rustc --lib --target $(KTARGET) --release -- -C soft-float --emit link=../$@
|
||||
cd kernel && CC=$(ARCH)-elf-gcc AR=$(ARCH)-elf-ar CFLAGS=-ffreestanding xargo INITFS_FOLDER=$(ROOT)/build/initfs rustc --lib --target $(KTARGET) --release -- -C soft-float --emit link=../$@
|
||||
else
|
||||
cd kernel && xargo rustc --lib --target $(KTARGET) --release -- -C soft-float --emit link=../$@
|
||||
cd kernel && INITFS_FOLDER=$(ROOT)/build/initfs xargo rustc --lib --target $(KTARGET) --release -- -C soft-float --emit link=../$@
|
||||
endif
|
||||
|
||||
build/libkernel_live.a: kernel/Cargo.toml kernel/src/* kernel/src/*/* kernel/src/*/*/* build/initfs.tag
|
||||
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_live.tag
|
||||
cd kernel && INITFS_FOLDER=$(ROOT)/build/initfs_live xargo rustc --lib --features live --target $(KTARGET) --release -- -C soft-float --emit link=../$@
|
||||
|
||||
build/kernel: kernel/linkers/$(ARCH).ld build/libkernel.a
|
||||
$(LD) --gc-sections -z max-page-size=0x1000 -T $< -o $@ build/libkernel.a
|
||||
|
|
Loading…
Reference in a new issue