7 TOOLCHAIN=$(date +%Y-%m-%d)
9 echo "=> Installing new nightly"
10 rustup toolchain install --profile minimal "nightly-${TOOLCHAIN}" # Sanity check to see if the nightly exists
11 sed -i "s/\"nightly-.*\"/\"nightly-${TOOLCHAIN}\"/" rust-toolchain
12 rustup component add rustfmt || true
14 echo "=> Uninstalling all old nighlies"
15 for nightly in $(rustup toolchain list | grep nightly | grep -v "$TOOLCHAIN" | grep -v nightly-x86_64); do
16 rustup toolchain uninstall "$nightly"
22 (cd build_sysroot && cargo update)
26 git add rust-toolchain build_sysroot/Cargo.lock
27 git commit -m "Rustup to $(rustc -V)"
32 git pull origin master
33 branch=sync_cg_clif-$(date +%Y-%m-%d)
34 git checkout -b "$branch"
35 git subtree pull --prefix=compiler/rustc_codegen_cranelift/ https://github.com/bjorn3/rustc_codegen_cranelift.git master
36 git push -u my "$branch"
38 # immediately merge the merge commit into cg_clif to prevent merge conflicts when syncing
39 # from rust-lang/rust later
40 git subtree push --prefix=compiler/rustc_codegen_cranelift/ "$cg_clif" sync_from_rust
42 git merge sync_from_rust
47 git pull origin master
48 rust_vers="$(git rev-parse HEAD)"
49 git subtree push --prefix=compiler/rustc_codegen_cranelift/ "$cg_clif" sync_from_rust
51 git merge sync_from_rust -m "Sync from rust $rust_vers"
52 git branch -d sync_from_rust
55 echo "Unknown command '$1'"
56 echo "Usage: ./rustup.sh prepare|commit"