Compile with opt-level 3, lto

This commit is contained in:
Jeremy Soller 2017-01-09 21:39:01 -07:00
parent 15fa0ae7a6
commit 68b3315673
4 changed files with 16 additions and 4 deletions

View file

@ -34,3 +34,15 @@ members = [
"schemes/udpd", "schemes/udpd",
"syscall" "syscall"
] ]
[profile.dev]
debug = true
debug-assertions = true
lto = false
opt-level = 0
[profile.release]
debug = false
debug-assertions = false
lto = true
opt-level = 3

View file

@ -21,7 +21,7 @@ BUILD=build/userspace
RUSTC=./rustc.sh RUSTC=./rustc.sh
RUSTDOC=./rustdoc.sh RUSTDOC=./rustdoc.sh
CARGO=RUSTC="$(RUSTC)" RUSTDOC="$(RUSTDOC)" cargo CARGO=RUSTC="$(RUSTC)" RUSTDOC="$(RUSTDOC)" cargo
CARGOFLAGS=--target $(TARGET) --release -- -C codegen-units=`nproc` CARGOFLAGS=--target $(TARGET) --release --
# Per host variables # Per host variables
UNAME := $(shell uname) UNAME := $(shell uname)

View file

@ -1,6 +1,6 @@
$(KBUILD)/libcollections.rlib: rust/src/libcollections/Cargo.toml rust/src/libcollections/** $(KBUILD)/libcollections.rlib: rust/src/libcollections/Cargo.toml rust/src/libcollections/**
mkdir -p $(KBUILD) mkdir -p $(KBUILD)
$(KCARGO) rustc --verbose --manifest-path $< $(KCARGOFLAGS) -o $@ $(KCARGO) rustc --manifest-path $< $(KCARGOFLAGS) -o $@
cp rust/src/target/$(KTARGET)/release/deps/*.rlib $(KBUILD) 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 $(KBUILD)/libkernel.a: kernel/Cargo.toml kernel/arch/** kernel/src/** $(KBUILD)/libcollections.rlib $(BUILD)/initfs.rs

View file

@ -28,12 +28,12 @@ include mk/userspace/userutils.mk
$(BUILD)/libstd.rlib: rust/src/libstd/Cargo.toml rust/src/libstd/** $(BUILD)/libstd.rlib: rust/src/libstd/Cargo.toml rust/src/libstd/**
mkdir -p $(BUILD) mkdir -p $(BUILD)
$(CARGO) rustc --verbose --manifest-path $< --features "panic-unwind" $(CARGOFLAGS) -L native=libc-artifacts/usr/lib -o $@ $(CARGO) rustc --manifest-path $< --features "panic-unwind" $(CARGOFLAGS) -L native=libc-artifacts/usr/lib -o $@
cp rust/src/target/$(TARGET)/release/deps/*.rlib $(BUILD) cp rust/src/target/$(TARGET)/release/deps/*.rlib $(BUILD)
$(BUILD)/libtest.rlib: rust/src/libtest/Cargo.toml rust/src/libtest/** $(BUILD)/libstd.rlib $(BUILD)/libtest.rlib: rust/src/libtest/Cargo.toml rust/src/libtest/** $(BUILD)/libstd.rlib
mkdir -p $(BUILD) mkdir -p $(BUILD)
$(CARGO) rustc --verbose --manifest-path $< $(CARGOFLAGS) -L native=libc-artifacts/usr/lib -o $@ $(CARGO) rustc --manifest-path $< $(CARGOFLAGS) -L native=libc-artifacts/usr/lib -o $@
cp rust/src/target/$(TARGET)/release/deps/*.rlib $(BUILD) cp rust/src/target/$(TARGET)/release/deps/*.rlib $(BUILD)
filesystem/bin/%: programs/%/Cargo.toml programs/%/src/** $(BUILD)/libstd.rlib filesystem/bin/%: programs/%/Cargo.toml programs/%/src/** $(BUILD)/libstd.rlib