Update libc artifacts, pass linker arguments to fix linking
This commit is contained in:
parent
4b780927d2
commit
a769dcb917
14
Makefile
14
Makefile
|
@ -4,7 +4,7 @@ ROOT=$(PWD)
|
|||
export RUST_TARGET_PATH=$(ROOT)/targets
|
||||
|
||||
#TODO: Use libssp
|
||||
export CFLAGS=-fno-stack-protector -U_FORTIFY_SOURCE
|
||||
export CFLAGS=-fno-stack-protector -U_FORTIFY_SOURCE -I $(ROOT)/libc-artifacts/usr/include
|
||||
|
||||
# Kernel variables
|
||||
KTARGET=$(ARCH)-unknown-none
|
||||
|
@ -234,10 +234,10 @@ else
|
|||
VBM=VBoxManage
|
||||
endif
|
||||
|
||||
KRUSTCFLAGS+=-C linker=$(CC)
|
||||
KCARGOFLAGS+=-C linker=$(CC)
|
||||
RUSTCFLAGS+=-C linker=$(CC)
|
||||
CARGOFLAGS+=-C linker=$(CC)
|
||||
KRUSTCFLAGS+=-C linker=$(CC) -C link-args="$(CFLAGS)"
|
||||
KCARGOFLAGS+=-C linker=$(CC) -C link-args="$(CFLAGS)"
|
||||
RUSTCFLAGS+=-C linker=$(CC) -C link-args="$(CFLAGS)"
|
||||
CARGOFLAGS+=-C linker=$(CC) -C link-args="$(CFLAGS)"
|
||||
|
||||
%.list: %
|
||||
objdump -C -M intel -D $< > $@
|
||||
|
@ -362,7 +362,7 @@ $(KBUILD)/kernel_live: $(KBUILD)/libkernel_live.a
|
|||
# Userspace recipes
|
||||
$(BUILD)/libstd.rlib: rust/src/libstd/Cargo.toml rust/src/libstd/**
|
||||
mkdir -p $(BUILD)
|
||||
$(CARGO) rustc --verbose --manifest-path $< $(CARGOFLAGS) -L native=libc-artifacts/lib -o $@
|
||||
$(CARGO) rustc --verbose --manifest-path $< $(CARGOFLAGS) -L native=libc-artifacts/usr/lib -o $@
|
||||
cp rust/src/target/$(TARGET)/release/deps/*.rlib $(BUILD)
|
||||
|
||||
initfs/bin/%: drivers/%/Cargo.toml drivers/%/src/** $(BUILD)/libstd.rlib
|
||||
|
@ -373,7 +373,7 @@ initfs/bin/%: drivers/%/Cargo.toml drivers/%/src/** $(BUILD)/libstd.rlib
|
|||
initfs/bin/%: programs/%/Cargo.toml programs/%/src/** $(BUILD)/libstd.rlib
|
||||
mkdir -p initfs/bin
|
||||
$(CARGO) rustc --manifest-path $< $(CARGOFLAGS) -o $@
|
||||
#strip $@
|
||||
strip $@
|
||||
|
||||
initfs/bin/%: schemes/%/Cargo.toml schemes/%/src/** $(BUILD)/libstd.rlib
|
||||
mkdir -p initfs/bin
|
||||
|
|
|
@ -1 +1 @@
|
|||
Subproject commit b0e2a74a505d0bc6ffea05d81fe239b1beb5c246
|
||||
Subproject commit e1201a13a85c35e053dcf583aadfee27cdd12f7c
|
1
libstd/openlibm
Submodule
1
libstd/openlibm
Submodule
|
@ -0,0 +1 @@
|
|||
Subproject commit 3c837e79655c4be724efb945a6345ec97c07635c
|
|
@ -9,7 +9,7 @@
|
|||
"vendor": "unknown",
|
||||
"target-family": "redox",
|
||||
"pre-link-args": ["-m64", "-Wl,--as-needed", "-Wl,-z,noexecstack", "-nostartfiles", "-nostdlib", "-static"],
|
||||
"late-link-args": ["libc-artifacts/lib/crt0.o", "libc-artifacts/lib/libm.a", "libc-artifacts/lib/libc.a", "libc-artifacts/lib/libgcc.a"],
|
||||
"late-link-args": ["libc-artifacts/usr/lib/crt0.o", "libc-artifacts/usr/lib/libm.a", "libc-artifacts/usr/lib/libc.a", "libc-artifacts/usr/lib/libgcc.a"],
|
||||
"features": "",
|
||||
"dynamic-linking": false,
|
||||
"executables": true,
|
||||
|
|
Loading…
Reference in a new issue