depth: 2
submodules: false
+env:
+ global:
+ - CI_JOB_NAME=$TRAVIS_JOB_NAME
+
matrix:
fast_finish: true
include:
# Images used in testing PR and try-build should be run first.
- env: IMAGE=x86_64-gnu-llvm-6.0 RUST_BACKTRACE=1
+ name: x86_64-gnu-llvm-6.0
if: type = pull_request OR branch = auto
- env: IMAGE=dist-x86_64-linux DEPLOY=1
+ name: dist-x86_64-linux
if: branch = try OR branch = auto
# "alternate" deployments, these are "nightlies" but have LLVM assertions
# turned on, they're deployed to a different location primarily for
# additional testing.
- - env: IMAGE=dist-x86_64-linux DEPLOY_ALT=1 CI_JOB_NAME=dist-x86_64-linux-alt
+ - env: IMAGE=dist-x86_64-linux DEPLOY_ALT=1
+ name: dist-x86_64-linux-alt
if: branch = try OR branch = auto
- env: >
- RUST_CHECK_TARGET=dist
+ SCRIPT="./x.py dist"
RUST_CONFIGURE_ARGS="--enable-extended --enable-profiler --enable-lldb --set rust.jemalloc"
SRC=.
DEPLOY_ALT=1
MACOSX_DEPLOYMENT_TARGET=10.7
NO_LLVM_ASSERTIONS=1
NO_DEBUG_ASSERTIONS=1
- CI_JOB_NAME=dist-x86_64-apple-alt
os: osx
osx_image: xcode9.3-moar
+ name: dist-x86_64-apple-alt
if: branch = auto
# macOS builders. These are placed near the beginning because they are very
# Note that the compiler is compiled to target 10.8 here because the Xcode
# version that we're using, 8.2, cannot compile LLVM for OSX 10.7.
- env: >
- RUST_CHECK_TARGET=check
+ SCRIPT="./x.py test"
RUST_CONFIGURE_ARGS="--build=x86_64-apple-darwin --enable-sanitizers --enable-profiler --set rust.jemalloc"
SRC=.
RUSTC_RETRY_LINKER_ON_SEGFAULT=1
MACOSX_STD_DEPLOYMENT_TARGET=10.7
NO_LLVM_ASSERTIONS=1
NO_DEBUG_ASSERTIONS=1
- CI_JOB_NAME=x86_64-apple
os: osx
osx_image: xcode9.3-moar
+ name: x86_64-apple
if: branch = auto
- env: >
- RUST_CHECK_TARGET=check
+ SCRIPT="./x.py test"
RUST_CONFIGURE_ARGS="--build=i686-apple-darwin --set rust.jemalloc"
SRC=.
RUSTC_RETRY_LINKER_ON_SEGFAULT=1
MACOSX_STD_DEPLOYMENT_TARGET=10.7
NO_LLVM_ASSERTIONS=1
NO_DEBUG_ASSERTIONS=1
- CI_JOB_NAME=i686-apple
os: osx
osx_image: xcode9.3-moar
+ name: i686-apple
if: branch = auto
# OSX builders producing releases. These do not run the full test suite and
# `xcode8.2` image as above. That's because we want to build releases for
# OSX 10.7 and `xcode7` is the latest Xcode able to compile LLVM for 10.7.
- env: >
- RUST_CHECK_TARGET=dist
+ SCRIPT="./x.py dist"
RUST_CONFIGURE_ARGS="--build=i686-apple-darwin --enable-full-tools --enable-profiler --enable-lldb --set rust.jemalloc"
SRC=.
DEPLOY=1
NO_LLVM_ASSERTIONS=1
NO_DEBUG_ASSERTIONS=1
DIST_REQUIRE_ALL_TOOLS=1
- CI_JOB_NAME=dist-i686-apple
os: osx
osx_image: xcode9.3-moar
+ name: dist-i686-apple
if: branch = auto
- env: >
- RUST_CHECK_TARGET=dist
+ SCRIPT="./x.py dist"
RUST_CONFIGURE_ARGS="--target=aarch64-apple-ios,armv7-apple-ios,armv7s-apple-ios,i386-apple-ios,x86_64-apple-ios --enable-full-tools --enable-sanitizers --enable-profiler --enable-lldb --set rust.jemalloc"
SRC=.
DEPLOY=1
NO_LLVM_ASSERTIONS=1
NO_DEBUG_ASSERTIONS=1
DIST_REQUIRE_ALL_TOOLS=1
- CI_JOB_NAME=dist-x86_64-apple
os: osx
osx_image: xcode9.3-moar
+ name: dist-x86_64-apple
if: branch = auto
# Linux builders, remaining docker images
- env: IMAGE=arm-android
+ name: arm-android
if: branch = auto
- env: IMAGE=armhf-gnu
+ name: armhf-gnu
if: branch = auto
- env: IMAGE=dist-various-1 DEPLOY=1
+ name: dist-various-1
if: branch = auto
- env: IMAGE=dist-various-2 DEPLOY=1
+ name: dist-various-2
if: branch = auto
- env: IMAGE=dist-aarch64-linux DEPLOY=1
+ name: dist-aarch64-linux
if: branch = auto
- env: IMAGE=dist-android DEPLOY=1
+ name: dist-android
if: branch = auto
- env: IMAGE=dist-arm-linux DEPLOY=1
+ name: dist-arm-linux
if: branch = auto
- env: IMAGE=dist-armhf-linux DEPLOY=1
+ name: dist-armhf-linux
if: branch = auto
- env: IMAGE=dist-armv7-linux DEPLOY=1
+ name: dist-armv7-linux
if: branch = auto
- env: IMAGE=dist-i586-gnu-i586-i686-musl DEPLOY=1
+ name: dist-i586-gnu-i586-i686-musl
if: branch = auto
- env: IMAGE=dist-i686-freebsd DEPLOY=1
+ name: dist-i686-freebsd
if: branch = auto
- env: IMAGE=dist-i686-linux DEPLOY=1
+ name: dist-i686-linux
if: branch = auto
- env: IMAGE=dist-mips-linux DEPLOY=1
+ name: dist-mips-linux
if: branch = auto
- env: IMAGE=dist-mips64-linux DEPLOY=1
+ name: dist-mips64-linux
if: branch = auto
- env: IMAGE=dist-mips64el-linux DEPLOY=1
+ name: dist-mips64el-linux
if: branch = auto
- env: IMAGE=dist-mipsel-linux DEPLOY=1
+ name: dist-mipsel-linux
if: branch = auto
- env: IMAGE=dist-powerpc-linux DEPLOY=1
+ name: dist-powerpc-linux
if: branch = auto
- env: IMAGE=dist-powerpc64-linux DEPLOY=1
+ name: dist-powerpc64-linux
if: branch = auto
- env: IMAGE=dist-powerpc64le-linux DEPLOY=1
+ name: dist-powerpc64le-linux
if: branch = auto
- env: IMAGE=dist-s390x-linux DEPLOY=1
+ name: dist-s390x-linux
if: branch = auto
- env: IMAGE=dist-x86_64-freebsd DEPLOY=1
+ name: dist-x86_64-freebsd
if: branch = auto
- env: IMAGE=dist-x86_64-musl DEPLOY=1
+ name: dist-x86_64-musl
if: branch = auto
- env: IMAGE=dist-x86_64-netbsd DEPLOY=1
+ name: dist-x86_64-netbsd
if: branch = auto
- env: IMAGE=asmjs
+ name: asmjs
if: branch = auto
- env: IMAGE=i686-gnu
+ name: i686-gnu
if: branch = auto
- env: IMAGE=i686-gnu-nopt
+ name: i686-gnu-nopt
if: branch = auto
- env: IMAGE=test-various
+ name: test-various
if: branch = auto
- env: IMAGE=x86_64-gnu
+ name: x86_64-gnu
if: branch = auto
- env: IMAGE=x86_64-gnu-full-bootstrap
+ name: x86_64-gnu-full-bootstrap
if: branch = auto
- env: IMAGE=x86_64-gnu-aux
+ name: x86_64-gnu-aux
if: branch = auto
- env: IMAGE=x86_64-gnu-tools
+ name: x86_64-gnu-tools
if: branch = auto OR (type = pull_request AND commit_message =~ /(?i:^update.*\b(rls|rustfmt|clippy|miri|cargo)\b)/)
- env: IMAGE=x86_64-gnu-debug
+ name: x86_64-gnu-debug
if: branch = auto
- env: IMAGE=x86_64-gnu-nopt
+ name: x86_64-gnu-nopt
if: branch = auto
- env: IMAGE=x86_64-gnu-distcheck
+ name: x86_64-gnu-distcheck
if: branch = auto
- env: IMAGE=mingw-check
+ name: mingw-check
if: type = pull_request OR branch = auto
- stage: publish toolstate
export PATH=$PATH:$HOME
;;
osx)
- if [[ "$RUST_CHECK_TARGET" == dist ]]; then
+ if [[ "$SCRIPT" == "./x.py dist" ]]; then
travis_retry brew update &&
travis_retry brew install xz &&
travis_retry brew install swig;