cache: cargo dist: trusty language: rust services: docker sudo: required rust: nightly matrix: include: - env: TARGET=aarch64-unknown-linux-gnu - env: TARGET=arm-unknown-linux-gnueabi # FIXME(rust-lang/rust#36518) rust: nightly-2016-09-21 - env: TARGET=arm-unknown-linux-gnueabihf - env: TARGET=armv7-unknown-linux-gnueabihf - env: TARGET=i586-unknown-linux-gnu - env: TARGET=i686-apple-darwin # FIXME(rust-lang/rust#36793) rust: nightly-2016-09-10 os: osx - env: TARGET=i686-unknown-linux-gnu # FIXME(rust-lang/rust#36793) rust: nightly-2016-09-10 - env: TARGET=mips-unknown-linux-gnu - 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-none-eabi - env: TARGET=thumbv7em-none-eabi - env: TARGET=thumbv7em-none-eabihf - env: TARGET=thumbv7m-none-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: - if case $TARGET in thumb*) false;; *) true;; esac; then curl https://static.rust-lang.org/rustup.sh | sh -s -- --add-target=$TARGET --disable-sudo -y --prefix=`rustc --print sysroot`; fi script: - 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 cargo test --target $TARGET && cargo test --target $TARGET --release; fi # Travis can't cache files that are not readable by "others" - chmod -R a+r $HOME/.cargo branches: only: - auto - try notifications: email: on_success: never webhooks: https://homu.herokuapp.com/travis