X-Git-Url: https://git.lizzy.rs/?a=blobdiff_plain;f=setup-toolchain.sh;h=191ea4315a6b5a8a29e56f6440f88115c466e8b9;hb=f633ef6bba70b91f0415316fe10bb1f9c016ba33;hp=9110d7dbffc0b66f2d118192f9e74edac99af104;hpb=29777b5cc5d19a25518058d87d729bd2b538fee6;p=rust.git diff --git a/setup-toolchain.sh b/setup-toolchain.sh index 9110d7dbffc..191ea4315a6 100755 --- a/setup-toolchain.sh +++ b/setup-toolchain.sh @@ -1,20 +1,19 @@ -#!/bin/bash +#!/usr/bin/env bash # Set up the appropriate rustc toolchain set -e cd "$(dirname "$0")" -RTIM_PATH=$(command -v rustup-toolchain-install-master) +RTIM_PATH=$(command -v rustup-toolchain-install-master) || INSTALLED=false CARGO_HOME=${CARGO_HOME:-$HOME/.cargo} -# Check if people also install RTIM in other locations beside -# ~/.cargo/bin -if [[ "$RTIM_PATH" == $CARGO_HOME/bin/rustup-toolchain-install-master ]]; then +# Check if RTIM is not installed or installed in other locations not in ~/.cargo/bin +if [[ "$INSTALLED" == false || "$RTIM_PATH" == $CARGO_HOME/bin/rustup-toolchain-install-master ]]; then cargo +nightly install rustup-toolchain-install-master else VERSION=$(rustup-toolchain-install-master -V | grep -o "[0-9.]*") - REMOTE=$(cargo search rustup-toolchain-install-master | grep -o "[0-9.]*") + REMOTE=$(cargo +nightly search rustup-toolchain-install-master | grep -o "[0-9.]*") echo "info: skipping updating rustup-toolchain-install-master at $RTIM_PATH" echo " current version : $VERSION" echo " remote version : $REMOTE" @@ -27,5 +26,11 @@ if rustc +master -Vv 2>/dev/null | grep -q "$RUST_COMMIT"; then exit 0 fi -rustup-toolchain-install-master -f -n master -c rustc-dev -- "$RUST_COMMIT" +if [[ -n "$HOST_TOOLCHAIN" ]]; then + TOOLCHAIN=('--host' "$HOST_TOOLCHAIN") +else + TOOLCHAIN=() +fi + +rustup-toolchain-install-master -f -n master "${TOOLCHAIN[@]}" -c rustc-dev -c llvm-tools -- "$RUST_COMMIT" rustup override set master