cache: cargo dist: trusty language: rust rust: nightly services: docker sudo: required matrix: include: - env: TARGET=aarch64-unknown-linux-gnu - env: TARGET=arm-unknown-linux-gnueabi - env: TARGET=arm-unknown-linux-gnueabihf - env: TARGET=armv7-unknown-linux-gnueabihf - env: TARGET=i586-unknown-linux-gnu - env: TARGET=i686-apple-darwin os: osx - env: TARGET=i686-unknown-linux-gnu - env: TARGET=mips-unknown-linux-gnu - env: TARGET=mips64-unknown-linux-gnuabi64 - env: TARGET=mips64el-unknown-linux-gnuabi64 - env: TARGET=mipsel-unknown-linux-gnu - env: TARGET=powerpc-unknown-linux-gnu - env: TARGET=powerpc64-unknown-linux-gnu - env: TARGET=powerpc64le-unknown-linux-gnu - env: TARGET=thumbv6m-linux-eabi - env: TARGET=thumbv7em-linux-eabi - env: TARGET=thumbv7em-linux-eabihf - env: TARGET=thumbv7m-linux-eabi - env: TARGET=x86_64-apple-darwin os: osx - env: TARGET=x86_64-unknown-linux-gnu before_install: - test "$TRAVIS_OS_NAME" = "osx" || docker run --rm --privileged multiarch/qemu-user-static:register install: - case $TARGET in x86_64-apple-darwin | x86_64-unknown-linux-gnu) ;; thumbv*eabi*) rustup component add rust-src ;; *) rustup target add $TARGET;; esac script: # work around rust-lang/cargo#3340 - test "$TRAVIS_OS_NAME" = "osx" || export SSL_CERT_FILE=/etc/ssl/certs/ca-certificates.crt - cargo generate-lockfile - if [[ $TRAVIS_OS_NAME = "linux" ]]; then sudo apt-get remove -y qemu-user-static && sudo apt-get install -y qemu-user-static && sh ci/run-docker.sh $TARGET; else sh ci/run.sh $TARGET; fi # Travis can't cache files that are not readable by "others" - chmod -R a+r $HOME/.cargo notifications: email: on_success: never webhooks: https://buildbot.rust-lang.org/homu/travis