language: cpp
dist: xenial
sudo: required
env:
  global:
    - JOB_NAME=limited-build
    - WAF_JOBS=2

matrix:
  include:
    # Linux/gcc
    # https://launchpad.net/~ubuntu-toolchain-r/+archive/ubuntu/test/+packages
    - os: linux
      env: COMPILER=g++-5
    - os: linux
      env: COMPILER=g++-6
    - os: linux
      env: COMPILER=g++-7
    - os: linux
      env: COMPILER=g++-8

    # Linux/clang
    # https://apt.llvm.org/
    - os: linux
      env: COMPILER=clang++-3.5
    - os: linux
      env: COMPILER=clang++-3.6
    - os: linux
      env: COMPILER=clang++-3.7 DISABLE_ASAN=yes
    - os: linux
      env: COMPILER=clang++-3.8
    - os: linux
      env: COMPILER=clang++-3.9
    - os: linux
      env: COMPILER=clang++-4.0
    - os: linux
      env: COMPILER=clang++-5.0
    - os: linux
      env: COMPILER=clang++-6.0
    - os: linux
      env: COMPILER=clang++-7

    # macOS/clang
    # https://docs.travis-ci.com/user/reference/osx/#OS-X-Version
    - os: osx
      osx_image: xcode7.3
      env: OSX_VERSION=10.11
    - os: osx
      osx_image: xcode8.3
      env: OSX_VERSION=10.12
    - os: osx
      osx_image: xcode9.3
      env: OSX_VERSION=10.13
    - os: osx
      osx_image: xcode9.3
      env: OSX_VERSION=10.13 USE_OPENSSL_1_1=yes

  allow_failures:
    - env: COMPILER=g++-6
    - env: COMPILER=g++-7
    - env: COMPILER=g++-8
    - env: COMPILER=clang++-3.5
    - env: COMPILER=clang++-3.6
    - env: COMPILER=clang++-3.7 DISABLE_ASAN=yes
    - env: COMPILER=clang++-4.0
    - env: COMPILER=clang++-5.0
    - env: COMPILER=clang++-6.0
    - env: COMPILER=clang++-7
    - env: OSX_VERSION=10.13 USE_OPENSSL_1_1=yes

  fast_finish: true

install: |
    case ${COMPILER} in
      g++-[6789])
        travis_retry sudo add-apt-repository -y ppa:ubuntu-toolchain-r/test
        travis_retry sudo apt-get -qq update
        travis_retry sudo apt-get -qy install "${COMPILER}"
        ;;
      clang++-*)
        CLANG_VERSION=${COMPILER/clang++}
        if [[ ${CLANG_VERSION} != "-3."* ]]; then
          wget -O - "https://apt.llvm.org/llvm-snapshot.gpg.key" | sudo apt-key add -
          travis_retry sudo add-apt-repository -y "deb http://apt.llvm.org/xenial/ llvm-toolchain-xenial${CLANG_VERSION/-7} main"
        fi
        travis_retry sudo apt-get -qq update
        travis_retry sudo apt-get -qy install "clang${CLANG_VERSION}"
        ;;
    esac

before_script:
  - if [[ ${TRAVIS_OS_NAME} == linux ]]; then export NODE_LABELS="Linux Ubuntu Ubuntu-16.04"; fi
  - if [[ ${TRAVIS_OS_NAME} == osx ]]; then export NODE_LABELS="OSX OSX-${OSX_VERSION}"; fi
  - if [[ -n ${COMPILER} ]]; then export CXX=${COMPILER}; fi
  - ${CXX:-c++} --version
  - python --version

script:
  - ./.jenkins
