language: rust
dist: bionic

matrix:
  include:
  - os: linux
    rust: stable
    env: TARGET=x86_64-unknown-linux-gnu BUILD_MODE=release
  - os: linux
    rust: stable
    env: TARGET=x86_64-unknown-linux-gnu BUILD_MODE=boxxy
  - os: linux
    rust: stable
    env: TARGET=x86_64-unknown-linux-gnu BUILD_MODE=reprotest
  ## broken on 1.26.0
  #- os: linux
  #  rust: stable
  #  env: TARGET=aarch64-unknown-linux-gnu BUILD_MODE=cross
  - os: linux
    rust: stable
    env: TARGET=i686-unknown-linux-gnu BUILD_MODE=cross

before_install:
- sudo ci/setup.sh "$TRAVIS_OS_NAME"
install:
- rustup install "$TRAVIS_RUST_VERSION-$TARGET"
- rustup target add "$TARGET" || true
script:
- ci/build.sh
- ci/test.sh
