2022-04-14 07:18:13 -05:00
|
|
|
#!/usr/bin/env bash
|
2021-03-15 08:21:15 -05:00
|
|
|
set -e
|
|
|
|
|
2023-02-15 12:23:11 -06:00
|
|
|
./y.sh build --no-unstable-features
|
2021-03-15 08:21:15 -05:00
|
|
|
|
|
|
|
echo "[SETUP] Rust fork"
|
|
|
|
git clone https://github.com/rust-lang/rust.git || true
|
|
|
|
pushd rust
|
|
|
|
git fetch
|
|
|
|
git checkout -- .
|
|
|
|
git checkout "$(rustc -V | cut -d' ' -f3 | tr -d '(')"
|
|
|
|
|
2023-02-26 06:15:25 -06:00
|
|
|
git -c user.name=Dummy -c user.email=dummy@example.com am ../patches/*-stdlib-*.patch
|
2022-09-01 11:41:01 -05:00
|
|
|
|
2021-03-15 08:21:15 -05:00
|
|
|
git apply - <<EOF
|
|
|
|
diff --git a/library/alloc/Cargo.toml b/library/alloc/Cargo.toml
|
|
|
|
index d95b5b7f17f..00b6f0e3635 100644
|
|
|
|
--- a/library/alloc/Cargo.toml
|
|
|
|
+++ b/library/alloc/Cargo.toml
|
|
|
|
@@ -8,7 +8,7 @@ edition = "2018"
|
|
|
|
|
|
|
|
[dependencies]
|
|
|
|
core = { path = "../core" }
|
2021-05-24 10:16:45 -05:00
|
|
|
-compiler_builtins = { version = "0.1.40", features = ['rustc-dep-of-std'] }
|
2021-12-16 07:10:51 -06:00
|
|
|
+compiler_builtins = { version = "0.1.66", features = ['rustc-dep-of-std', 'no-asm'] }
|
2021-03-15 08:21:15 -05:00
|
|
|
|
|
|
|
[dev-dependencies]
|
2023-01-20 05:49:27 -06:00
|
|
|
rand = { version = "0.8.5", default-features = false, features = ["alloc"] }
|
|
|
|
rand_xorshift = "0.3.0"
|
2021-03-15 08:21:15 -05:00
|
|
|
EOF
|
|
|
|
|
|
|
|
cat > config.toml <<EOF
|
2022-03-17 14:59:39 -05:00
|
|
|
changelog-seen = 2
|
|
|
|
|
2021-03-15 08:21:15 -05:00
|
|
|
[llvm]
|
|
|
|
ninja = false
|
|
|
|
|
|
|
|
[build]
|
2023-02-19 09:28:01 -06:00
|
|
|
rustc = "$(pwd)/../dist/bin/rustc-clif"
|
2021-03-15 08:21:15 -05:00
|
|
|
cargo = "$(rustup which cargo)"
|
|
|
|
full-bootstrap = true
|
|
|
|
local-rebuild = true
|
|
|
|
|
|
|
|
[rust]
|
|
|
|
codegen-backends = ["cranelift"]
|
|
|
|
deny-warnings = false
|
2021-11-26 10:05:25 -06:00
|
|
|
verbose-tests = false
|
2021-03-15 08:21:15 -05:00
|
|
|
EOF
|
|
|
|
popd
|
2022-07-18 06:57:22 -05:00
|
|
|
|
|
|
|
# FIXME remove once inline asm is fully supported
|
|
|
|
export RUSTFLAGS="$RUSTFLAGS --cfg=rustix_use_libc"
|
2022-09-15 11:14:29 -05:00
|
|
|
|
2023-01-05 11:26:54 -06:00
|
|
|
export CFG_VIRTUAL_RUST_SOURCE_BASE_DIR="$(cd download/sysroot/sysroot_src; pwd)"
|
2022-11-20 13:32:44 -06:00
|
|
|
|
2022-09-15 11:14:29 -05:00
|
|
|
# Allow the testsuite to use llvm tools
|
|
|
|
host_triple=$(rustc -vV | grep host | cut -d: -f2 | tr -d " ")
|
|
|
|
export LLVM_BIN_DIR="$(rustc --print sysroot)/lib/rustlib/$host_triple/bin"
|