mrustc: init at 0.9
mrustc is mostly patched to use shared LLVM sources but still uses in-tree source for compiler-rt from LLVM 7. This needs to be patched to compile under glibc 2.31 or later. It's easy enough to reapply all our compiler-rt patches here.
This commit is contained in:
committed by
Alyssa Ross
parent
9bb6bf650e
commit
92c77733ac
@@ -0,0 +1,28 @@
|
||||
--- a/run_rustc/Makefile
|
||||
+++ b/run_rustc/Makefile
|
||||
@@ -79,14 +79,14 @@
|
||||
@mkdir -p $(OUTDIR)build-std
|
||||
@mkdir -p $(LIBDIR)
|
||||
@echo [CARGO] $(RUST_SRC)libstd/Cargo.toml
|
||||
- $VCARGO_TARGET_DIR=$(OUTDIR)build-std RUSTC=$(BINDIR_S)rustc $(CARGO_ENV) $(BINDIR)cargo build --manifest-path $(RUST_SRC)libstd/Cargo.toml -j 1 --release --features panic-unwind
|
||||
+ $VCARGO_TARGET_DIR=$(OUTDIR)build-std RUSTC=$(BINDIR_S)rustc $(CARGO_ENV) $(BINDIR)cargo build --manifest-path $(RUST_SRC)libstd/Cargo.toml -j $(NIX_BUILD_CORES) --release --features panic-unwind
|
||||
$Vcp --remove-destination $(OUTDIR)build-std/release/deps/*.rlib $(LIBDIR)
|
||||
$Vcp --remove-destination $(OUTDIR)build-std/release/deps/*.so $(LIBDIR)
|
||||
# libtest
|
||||
$(LIBDIR)libtest.rlib: $(BINDIR)rustc_m $(LIBDIR)libstd.rlib $(CARGO_HOME)config
|
||||
@mkdir -p $(OUTDIR)build-test
|
||||
@echo [CARGO] $(RUST_SRC)libtest/Cargo.toml
|
||||
- $VCARGO_TARGET_DIR=$(OUTDIR)build-test RUSTC=$(BINDIR)rustc_m $(CARGO_ENV) $(BINDIR)cargo build --manifest-path $(RUST_SRC)libtest/Cargo.toml -j 1 --release
|
||||
+ $VCARGO_TARGET_DIR=$(OUTDIR)build-test RUSTC=$(BINDIR)rustc_m $(CARGO_ENV) $(BINDIR)cargo build --manifest-path $(RUST_SRC)libtest/Cargo.toml -j $(NIX_BUILD_CORES) --release
|
||||
@mkdir -p $(LIBDIR)
|
||||
$Vcp --remove-destination $(OUTDIR)build-test/release/deps/*.rlib $(LIBDIR)
|
||||
$Vcp --remove-destination $(OUTDIR)build-test/release/deps/*.so $(LIBDIR)
|
||||
@@ -95,7 +95,7 @@
|
||||
$(BINDIR)rustc: $(BINDIR)rustc_m $(BINDIR)cargo $(CARGO_HOME)config $(LIBDIR)libtest.rlib
|
||||
@mkdir -p $(PREFIX)tmp
|
||||
@echo [CARGO] $(RUST_SRC)rustc/Cargo.toml
|
||||
- $V$(RUSTC_ENV_VARS) TMPDIR=$(abspath $(PREFIX)tmp) CARGO_TARGET_DIR=$(OUTDIR)build-rustc RUSTC=$(BINDIR)rustc_m RUSTC_ERROR_METADATA_DST=$(abspath $(PREFIX)) $(CARGO_ENV) $(BINDIR)cargo build --manifest-path $(RUST_SRC)rustc/Cargo.toml --release -j 1
|
||||
+ $V$(RUSTC_ENV_VARS) TMPDIR=$(abspath $(PREFIX)tmp) CARGO_TARGET_DIR=$(OUTDIR)build-rustc RUSTC=$(BINDIR)rustc_m RUSTC_ERROR_METADATA_DST=$(abspath $(PREFIX)) $(CARGO_ENV) $(BINDIR)cargo build --manifest-path $(RUST_SRC)rustc/Cargo.toml --release -j $(NIX_BUILD_CORES)
|
||||
cp $(OUTDIR)build-rustc/release/deps/*.so $(LIBDIR)
|
||||
cp $(OUTDIR)build-rustc/release/deps/*.rlib $(LIBDIR)
|
||||
ifeq ($(RUSTC_VERSION),1.19.0)
|
||||
Reference in New Issue
Block a user