2021-03-05 12:12:59 -06:00
|
|
|
#!/usr/bin/env bash
|
2020-01-15 12:42:10 -06:00
|
|
|
|
|
|
|
set -e
|
|
|
|
|
|
|
|
case $1 in
|
|
|
|
"prepare")
|
2020-03-07 03:39:57 -06:00
|
|
|
TOOLCHAIN=$(date +%Y-%m-%d)
|
2020-01-15 12:42:10 -06:00
|
|
|
|
|
|
|
echo "=> Installing new nightly"
|
2020-11-27 13:48:53 -06:00
|
|
|
rustup toolchain install --profile minimal "nightly-${TOOLCHAIN}" # Sanity check to see if the nightly exists
|
2021-03-29 03:45:09 -05:00
|
|
|
sed -i "s/\"nightly-.*\"/\"nightly-${TOOLCHAIN}\"/" rust-toolchain
|
2020-10-05 04:13:11 -05:00
|
|
|
rustup component add rustfmt || true
|
2020-01-15 12:42:10 -06:00
|
|
|
|
|
|
|
echo "=> Uninstalling all old nighlies"
|
2020-11-27 13:48:53 -06:00
|
|
|
for nightly in $(rustup toolchain list | grep nightly | grep -v "$TOOLCHAIN" | grep -v nightly-x86_64); do
|
|
|
|
rustup toolchain uninstall "$nightly"
|
2020-01-15 12:42:10 -06:00
|
|
|
done
|
|
|
|
|
|
|
|
./clean_all.sh
|
|
|
|
./prepare.sh
|
2020-05-18 04:35:23 -05:00
|
|
|
|
|
|
|
(cd build_sysroot && cargo update)
|
|
|
|
|
2020-01-15 12:42:10 -06:00
|
|
|
;;
|
|
|
|
"commit")
|
2020-05-18 04:35:23 -05:00
|
|
|
git add rust-toolchain build_sysroot/Cargo.lock
|
2020-01-15 13:20:30 -06:00
|
|
|
git commit -m "Rustup to $(rustc -V)"
|
2020-01-15 12:42:10 -06:00
|
|
|
;;
|
2020-11-03 04:00:04 -06:00
|
|
|
"push")
|
2020-11-27 13:48:53 -06:00
|
|
|
cg_clif=$(pwd)
|
|
|
|
pushd ../rust
|
|
|
|
git pull origin master
|
|
|
|
branch=sync_cg_clif-$(date +%Y-%m-%d)
|
|
|
|
git checkout -b "$branch"
|
|
|
|
git subtree pull --prefix=compiler/rustc_codegen_cranelift/ https://github.com/bjorn3/rustc_codegen_cranelift.git master
|
|
|
|
git push -u my "$branch"
|
|
|
|
|
|
|
|
# immediately merge the merge commit into cg_clif to prevent merge conflicts when syncing
|
|
|
|
# from rust-lang/rust later
|
|
|
|
git subtree push --prefix=compiler/rustc_codegen_cranelift/ "$cg_clif" sync_from_rust
|
|
|
|
popd
|
|
|
|
git merge sync_from_rust
|
2020-11-03 04:00:04 -06:00
|
|
|
;;
|
2020-11-27 13:48:53 -06:00
|
|
|
"pull")
|
|
|
|
cg_clif=$(pwd)
|
|
|
|
pushd ../rust
|
|
|
|
git pull origin master
|
|
|
|
rust_vers="$(git rev-parse HEAD)"
|
|
|
|
git subtree push --prefix=compiler/rustc_codegen_cranelift/ "$cg_clif" sync_from_rust
|
|
|
|
popd
|
|
|
|
git merge sync_from_rust -m "Sync from rust $rust_vers"
|
|
|
|
git branch -d sync_from_rust
|
|
|
|
;;
|
2020-01-15 12:42:10 -06:00
|
|
|
*)
|
|
|
|
echo "Unknown command '$1'"
|
|
|
|
echo "Usage: ./rustup.sh prepare|commit"
|
|
|
|
;;
|
|
|
|
esac
|