language: cpp
dist: xenial
sudo: required
env:
  global:
    - 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.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
    - os: linux
      env: COMPILER=clang++-8

    # macOS/clang
    # https://docs.travis-ci.com/user/reference/osx/#OS-X-Version
    - os: osx
      osx_image: xcode8.3
      env: OSX_VERSION=10.12
    - os: osx
      osx_image: xcode9.2
      env: OSX_VERSION=10.12
    - os: osx
      osx_image: xcode9.4
      env: OSX_VERSION=10.13
    - os: osx
      osx_image: xcode10.1
      env: OSX_VERSION=10.13

  allow_failures:
    - env: COMPILER=clang++-3.6
    - env: COMPILER=clang++-3.7 DISABLE_ASAN=yes
    - env: COMPILER=clang++-8

  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
          travis_retry wget -nv -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/-8} 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 [[ ${OSX_VERSION} == 10.12 ]]; then brew update; fi
  # workaround for https://github.com/Homebrew/homebrew-core/issues/26358
  - if [[ ${OSX_VERSION} == 10.12 ]]; then brew outdated python || brew upgrade python; fi
  # workaround for https://github.com/travis-ci/travis-ci/issues/6688
  - if [[ ${OSX_VERSION} == 10.12 ]]; then /usr/bin/yes | pip2 uninstall numpy || true; fi
  - if [[ -n ${COMPILER} ]]; then export CXX=${COMPILER}; fi
  - ${CXX:-c++} --version
  - python --version

script:
  - ./.jenkins
