# `install` phase: install stuff needed for the `script` phase set -ex . $(dirname $0)/utils.sh install_c_toolchain() { case $TARGET in aarch64-unknown-linux-gnu) sudo apt-get install -y --no-install-recommends \ gcc-aarch64-linux-gnu libc6-arm64-cross libc6-dev-arm64-cross ;; *) # For other targets, this is handled by addons.apt.packages in .travis.yml ;; esac } install_rustup() { curl https://sh.rustup.rs -sSf | sh -s -- -y --default-toolchain=$TRAVIS_RUST_VERSION rustc -V cargo -V } install_standard_crates() { if [ $(host) != "$TARGET" ]; then rustup target add $TARGET fi } configure_cargo() { local prefix=$(gcc_prefix) if [ ! -z $prefix ]; then # information about the cross compiler ${prefix}gcc -v # tell cargo which linker to use for cross compilation mkdir -p .cargo cat >>.cargo/config <