123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960 |
- set -ex
- . $(dirname $0)/env.sh
- install_qemu() {
- case ${QEMU_ARCH:-$TRAVIS_OS_NAME} in
- i386)
- dpkg --add-architecture $QEMU_ARCH
- apt-get install -y --no-install-recommends \
- binfmt-support qemu-user-static:$QEMU_ARCH
- ;;
- linux)
- apt-get update
- apt-get install -y --no-install-recommends \
- binfmt-support qemu-user-static
- ;;
- esac
- }
- install_binutils() {
- if [[ $TRAVIS_OS_NAME == "osx" ]]; then
- brew install binutils
- fi
- }
- install_rust() {
- if [[ $TRAVIS_OS_NAME == "osx" ]]; then
- curl https://sh.rustup.rs -sSf | sh -s -- -y --default-toolchain=nightly
- else
- rustup default nightly
- fi
- rustc -V
- cargo -V
- }
- add_rustup_target() {
- if [[ $TARGET != $HOST && ${CARGO:-cargo} == "cargo" ]]; then
- rustup target add $TARGET
- fi
- }
- install_xargo() {
- if [[ $CARGO == "xargo" ]]; then
- curl -sf "https://raw.githubusercontent.com/japaric/rust-everywhere/master/install.sh" | \
- bash -s -- --from japaric/xargo --at /root/.cargo/bin
- fi
- }
- main() {
- if [[ $TRAVIS_OS_NAME == "osx" || ${IN_DOCKER_CONTAINER:-n} == "y" ]]; then
- install_qemu
- install_binutils
- install_rust
- add_rustup_target
- install_xargo
- fi
- }
- main
|