blob: 984e8aceee6b03a10ec4b85422f7d018e5ed4e99 [file] [log] [blame]
Davide Pesavento167040a2018-01-10 02:41:50 -05001language: cpp
Davide Pesavento5f35f642018-05-10 19:36:03 -04002dist: xenial
Alexander Afanasyev6602b3b2016-03-15 14:14:11 -07003sudo: required
Alexander Afanasyev6602b3b2016-03-15 14:14:11 -07004env:
5 global:
6 - JOB_NAME=limited-build
Davide Pesavento9ac95d32017-07-01 01:51:37 -04007 - WAF_JOBS=2
8
Alexander Afanasyev6602b3b2016-03-15 14:14:11 -07009matrix:
10 include:
Davide Pesavento9ac95d32017-07-01 01:51:37 -040011 # Linux/gcc
Davide Pesavento167040a2018-01-10 02:41:50 -050012 # https://launchpad.net/~ubuntu-toolchain-r/+archive/ubuntu/test/+packages
Alexander Afanasyev6602b3b2016-03-15 14:14:11 -070013 - os: linux
Davide Pesavento167040a2018-01-10 02:41:50 -050014 env: COMPILER=g++-5
Davide Pesavento9ac95d32017-07-01 01:51:37 -040015 - os: linux
Davide Pesavento167040a2018-01-10 02:41:50 -050016 env: COMPILER=g++-6
Davide Pesavento9ac95d32017-07-01 01:51:37 -040017 - os: linux
Davide Pesavento167040a2018-01-10 02:41:50 -050018 env: COMPILER=g++-7
Davide Pesavento67f797f2018-04-28 14:51:27 -040019 - os: linux
20 env: COMPILER=g++-8
Davide Pesavento9ac95d32017-07-01 01:51:37 -040021
22 # Linux/clang
Davide Pesavento167040a2018-01-10 02:41:50 -050023 # https://apt.llvm.org/
Davide Pesavento9ac95d32017-07-01 01:51:37 -040024 - os: linux
Davide Pesavento167040a2018-01-10 02:41:50 -050025 env: COMPILER=clang++-3.5
Davide Pesavento9ac95d32017-07-01 01:51:37 -040026 - os: linux
Davide Pesavento167040a2018-01-10 02:41:50 -050027 env: COMPILER=clang++-3.6
Davide Pesavento9ac95d32017-07-01 01:51:37 -040028 - os: linux
Davide Pesavento167040a2018-01-10 02:41:50 -050029 env: COMPILER=clang++-3.7 DISABLE_ASAN=yes
Alexander Afanasyev6602b3b2016-03-15 14:14:11 -070030 - os: linux
Davide Pesavento167040a2018-01-10 02:41:50 -050031 env: COMPILER=clang++-3.8
Davide Pesavento9ac95d32017-07-01 01:51:37 -040032 - os: linux
Davide Pesavento5f35f642018-05-10 19:36:03 -040033 env: COMPILER=clang++-3.9
Davide Pesavento9ac95d32017-07-01 01:51:37 -040034 - os: linux
Davide Pesavento167040a2018-01-10 02:41:50 -050035 env: COMPILER=clang++-4.0
Davide Pesavento085b9e32017-09-14 23:56:18 -040036 - os: linux
Davide Pesavento167040a2018-01-10 02:41:50 -050037 env: COMPILER=clang++-5.0
Davide Pesavento167040a2018-01-10 02:41:50 -050038 - os: linux
39 env: COMPILER=clang++-6.0
Davide Pesavento068a71d2018-03-15 00:52:34 -040040 - os: linux
41 env: COMPILER=clang++-7
Davide Pesavento9ac95d32017-07-01 01:51:37 -040042
43 # macOS/clang
Davide Pesavento068a71d2018-03-15 00:52:34 -040044 # https://docs.travis-ci.com/user/reference/osx/#OS-X-Version
Alexander Afanasyev6602b3b2016-03-15 14:14:11 -070045 - os: osx
Davide Pesavento9ac95d32017-07-01 01:51:37 -040046 osx_image: xcode7.3
Davide Pesavento167040a2018-01-10 02:41:50 -050047 env: OSX_VERSION=10.11
Davide Pesavento9ac95d32017-07-01 01:51:37 -040048 - os: osx
49 osx_image: xcode8.3
Davide Pesavento167040a2018-01-10 02:41:50 -050050 env: OSX_VERSION=10.12
Davide Pesavento6daf2a32017-10-17 16:28:18 -040051 - os: osx
Davide Pesavento67f797f2018-04-28 14:51:27 -040052 osx_image: xcode9.3
Davide Pesavento068a71d2018-03-15 00:52:34 -040053 env: OSX_VERSION=10.13
Davide Pesavento167040a2018-01-10 02:41:50 -050054
55 allow_failures:
Davide Pesavento5f35f642018-05-10 19:36:03 -040056 - env: COMPILER=g++-6
57 - env: COMPILER=g++-7
58 - env: COMPILER=g++-8
59 - env: COMPILER=clang++-3.5
60 - env: COMPILER=clang++-3.6
61 - env: COMPILER=clang++-3.7 DISABLE_ASAN=yes
62 - env: COMPILER=clang++-3.8
63 - env: COMPILER=clang++-3.9
64 - env: COMPILER=clang++-4.0
65 - env: COMPILER=clang++-5.0
66 - env: COMPILER=clang++-6.0
Davide Pesavento068a71d2018-03-15 00:52:34 -040067 - env: COMPILER=clang++-7
Davide Pesavento167040a2018-01-10 02:41:50 -050068
69 fast_finish: true
Davide Pesavento9ac95d32017-07-01 01:51:37 -040070
Davide Pesavento5f35f642018-05-10 19:36:03 -040071install: |
72 case ${COMPILER} in
73 g++-[6789])
74 travis_retry sudo add-apt-repository -y ppa:ubuntu-toolchain-r/test
75 travis_retry sudo apt-get -qq update
76 travis_retry sudo apt-get -qy install "${COMPILER}"
77 ;;
78 clang++-*)
79 CLANG_VERSION=${COMPILER/clang++}
80 if [[ ${CLANG_VERSION} != "-3."* ]]; then
81 wget -O - "https://apt.llvm.org/llvm-snapshot.gpg.key" | sudo apt-key add -
82 travis_retry sudo add-apt-repository -y "deb http://apt.llvm.org/xenial/ llvm-toolchain-xenial${CLANG_VERSION/-7} main"
83 fi
84 travis_retry sudo apt-get -qq update
85 travis_retry sudo apt-get -qy install "clang${CLANG_VERSION}"
86 ;;
87 esac
88
Davide Pesavento9ac95d32017-07-01 01:51:37 -040089before_script:
Davide Pesavento5f35f642018-05-10 19:36:03 -040090 - if [[ ${TRAVIS_OS_NAME} == linux ]]; then export NODE_LABELS="Linux Ubuntu Ubuntu-16.04"; fi
Davide Pesavento167040a2018-01-10 02:41:50 -050091 - if [[ ${TRAVIS_OS_NAME} == osx ]]; then export NODE_LABELS="OSX OSX-${OSX_VERSION}"; fi
92 - if [[ -n ${COMPILER} ]]; then export CXX=${COMPILER}; fi
Davide Pesavento9ac95d32017-07-01 01:51:37 -040093 - ${CXX:-c++} --version
Davide Pesavento8ca138d2017-08-10 21:36:30 -040094 - python --version
Davide Pesavento9ac95d32017-07-01 01:51:37 -040095
Yi Huang71929b32014-01-29 21:47:09 -070096script:
Alexander Afanasyev4d4e7252014-10-25 12:21:53 -070097 - ./.jenkins