2022-04-22 14:11:38 -05:00
|
|
|
#!/usr/bin/env bash
|
2021-03-29 03:45:09 -05:00
|
|
|
set -e
|
|
|
|
|
2023-06-15 12:56:01 -05:00
|
|
|
./y.sh build --no-unstable-features
|
2021-03-29 03:45:09 -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-07-22 08:32:34 -05:00
|
|
|
git -c user.name=Dummy -c user.email=dummy@example.com -c commit.gpgSign=false \
|
|
|
|
am ../patches/*-stdlib-*.patch
|
2022-10-23 09:22:55 -05:00
|
|
|
|
2021-03-29 03:45:09 -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-27 06:08:14 -05:00
|
|
|
-compiler_builtins = { version = "0.1.40", features = ['rustc-dep-of-std'] }
|
2021-12-20 11:56:35 -06:00
|
|
|
+compiler_builtins = { version = "0.1.66", features = ['rustc-dep-of-std', 'no-asm'] }
|
2021-03-29 03:45:09 -05:00
|
|
|
|
|
|
|
[dev-dependencies]
|
2023-01-24 11:56:42 -06:00
|
|
|
rand = { version = "0.8.5", default-features = false, features = ["alloc"] }
|
|
|
|
rand_xorshift = "0.3.0"
|
2021-03-29 03:45:09 -05:00
|
|
|
EOF
|
|
|
|
|
|
|
|
cat > config.toml <<EOF
|
2023-10-01 08:54:52 -05:00
|
|
|
change-id = 115898
|
2022-03-20 10:55:21 -05:00
|
|
|
|
2021-03-29 03:45:09 -05:00
|
|
|
[llvm]
|
|
|
|
ninja = false
|
|
|
|
|
|
|
|
[build]
|
2023-03-15 09:41:48 -05:00
|
|
|
rustc = "$(pwd)/../dist/bin/rustc-clif"
|
2021-03-29 03:45:09 -05:00
|
|
|
cargo = "$(rustup which cargo)"
|
|
|
|
full-bootstrap = true
|
|
|
|
local-rebuild = true
|
|
|
|
|
|
|
|
[rust]
|
|
|
|
codegen-backends = ["cranelift"]
|
|
|
|
deny-warnings = false
|
2021-12-20 11:56:35 -06:00
|
|
|
verbose-tests = false
|
2021-03-29 03:45:09 -05:00
|
|
|
EOF
|
|
|
|
popd
|
2022-07-25 09:07:57 -05:00
|
|
|
|
|
|
|
# FIXME remove once inline asm is fully supported
|
|
|
|
export RUSTFLAGS="$RUSTFLAGS --cfg=rustix_use_libc"
|
2022-10-23 09:22:55 -05:00
|
|
|
|
2023-07-22 08:32:34 -05:00
|
|
|
export CFG_VIRTUAL_RUST_SOURCE_BASE_DIR="$(cd build/stdlib; pwd)"
|
2022-12-14 12:30:46 -06:00
|
|
|
|
2022-10-23 09:22:55 -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"
|