set -ex
CHANNEL=${CHANNEL:-stable}
case "$TRAVIS_OS_NAME" in
linux)
HOST=x86_64-unknown-linux-gnu
;;
osx)
HOST=x86_64-apple-darwin
;;
esac
curl https://sh.rustup.rs -sSf | sh -s -- -y --default-toolchain=$CHANNEL
rustc -V
cargo -V
if [ -n "$TARGET" -a "$HOST" != "$TARGET" ]; then
rustup target add $TARGET
fi
case "$TARGET" in
arm*-gnueabihf)
GCC_PREFIX=arm-linux-gnueabihf-
;;
*-unknown-linux-musl)
./ci/travis/install_musl.sh
GCC_PREFIX=musl-
;;
esac
if [ -n "$GCC_PREFIX" ]; then
${GCC_PREFIX}gcc -v
mkdir -p .cargo
echo "[target.$TARGET]" >> .cargo/config
echo "linker = \"${GCC_PREFIX}gcc\"" >> .cargo/config
fi