.travis.yml 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. cache: cargo
  2. dist: trusty
  3. language: rust
  4. rust: nightly
  5. services: docker
  6. sudo: required
  7. matrix:
  8. include:
  9. - env: TARGET=aarch64-unknown-linux-gnu
  10. - env: TARGET=arm-unknown-linux-gnueabi
  11. - env: TARGET=arm-unknown-linux-gnueabihf
  12. - env: TARGET=armv7-unknown-linux-gnueabihf
  13. - env: TARGET=i586-unknown-linux-gnu
  14. - env: TARGET=i686-apple-darwin
  15. os: osx
  16. - env: TARGET=i686-unknown-linux-gnu
  17. - env: TARGET=mips-unknown-linux-gnu
  18. - env: TARGET=mips64-unknown-linux-gnuabi64
  19. - env: TARGET=mips64el-unknown-linux-gnuabi64
  20. - env: TARGET=mipsel-unknown-linux-gnu
  21. - env: TARGET=powerpc-unknown-linux-gnu
  22. - env: TARGET=powerpc64-unknown-linux-gnu
  23. - env: TARGET=powerpc64le-unknown-linux-gnu
  24. - env: TARGET=thumbv6m-none-eabi
  25. - env: TARGET=thumbv7em-none-eabi
  26. - env: TARGET=thumbv7em-none-eabihf
  27. - env: TARGET=thumbv7m-none-eabi
  28. - env: TARGET=x86_64-apple-darwin
  29. os: osx
  30. env: TARGET=x86_64-unknown-linux-gnu
  31. before_install:
  32. - test "$TRAVIS_OS_NAME" = "osx" || docker run --rm --privileged multiarch/qemu-user-static:register
  33. install:
  34. - curl https://sh.rustup.rs -sSf | sh -s -- -y --default-toolchain $TRAVIS_RUST_VERSION
  35. - source ~/.cargo/env
  36. - case $TARGET in
  37. x86_64-apple-darwin | x86_64-unknown-linux-gnu) ;;
  38. thumbv*-none-eabi*) rustup component add rust-src ;;
  39. *) rustup target add $TARGET;;
  40. esac
  41. script:
  42. # work around rust-lang/cargo#3340
  43. - test "$TRAVIS_OS_NAME" = "osx" ||
  44. export SSL_CERT_FILE=/etc/ssl/certs/ca-certificates.crt
  45. - cargo generate-lockfile
  46. - if [[ $TRAVIS_OS_NAME = "linux" ]]; then
  47. sudo apt-get remove -y qemu-user-static &&
  48. sudo apt-get install -y qemu-user-static &&
  49. sh ci/run-docker.sh $TARGET;
  50. else
  51. sh ci/run.sh $TARGET;
  52. fi
  53. # Travis can't cache files that are not readable by "others"
  54. - chmod -R a+r $HOME/.cargo
  55. notifications:
  56. email:
  57. on_success: never
  58. webhooks: https://buildbot.rust-lang.org/homu/travis