blob: efaf07268940084a9839cb1a62dad4aeaa632229 [file] [log] [blame]
Davide Pesavento759214f2018-03-11 21:03:32 -04001language: cpp
Davide Pesavento98ff2bc2018-05-24 00:10:31 -04002dist: xenial
Alexander Afanasyevf34a3552017-08-13 21:17:05 -04003env:
4 global:
5 - JOB_NAME=limited-build
6 - WAF_JOBS=2
7
8matrix:
9 include:
10 # Linux/gcc
Davide Pesavento759214f2018-03-11 21:03:32 -040011 # https://launchpad.net/~ubuntu-toolchain-r/+archive/ubuntu/test/+packages
Alexander Afanasyevf34a3552017-08-13 21:17:05 -040012 - os: linux
Davide Pesavento759214f2018-03-11 21:03:32 -040013 env: COMPILER=g++-5
Alexander Afanasyevf34a3552017-08-13 21:17:05 -040014 - os: linux
Davide Pesavento759214f2018-03-11 21:03:32 -040015 env: COMPILER=g++-6
Alexander Afanasyevf34a3552017-08-13 21:17:05 -040016 - os: linux
Davide Pesavento759214f2018-03-11 21:03:32 -040017 env: COMPILER=g++-7
Davide Pesavento98ff2bc2018-05-24 00:10:31 -040018 - os: linux
19 env: COMPILER=g++-8
Alexander Afanasyevf34a3552017-08-13 21:17:05 -040020
21 # Linux/clang
Davide Pesavento759214f2018-03-11 21:03:32 -040022 # https://apt.llvm.org/
Alexander Afanasyevf34a3552017-08-13 21:17:05 -040023 - os: linux
Davide Pesavento759214f2018-03-11 21:03:32 -040024 env: COMPILER=clang++-3.6
Alexander Afanasyevf34a3552017-08-13 21:17:05 -040025 - os: linux
Davide Pesavento759214f2018-03-11 21:03:32 -040026 env: COMPILER=clang++-3.7 DISABLE_ASAN=yes
Alexander Afanasyevf34a3552017-08-13 21:17:05 -040027 - os: linux
Davide Pesavento759214f2018-03-11 21:03:32 -040028 env: COMPILER=clang++-3.8
Alexander Afanasyevf34a3552017-08-13 21:17:05 -040029 - os: linux
Davide Pesavento98ff2bc2018-05-24 00:10:31 -040030 env: COMPILER=clang++-3.9
Alexander Afanasyevf34a3552017-08-13 21:17:05 -040031 - os: linux
Davide Pesavento759214f2018-03-11 21:03:32 -040032 env: COMPILER=clang++-4.0
Davide Pesavento3c29d632017-09-23 01:52:19 -040033 - os: linux
Davide Pesavento759214f2018-03-11 21:03:32 -040034 env: COMPILER=clang++-5.0
Davide Pesavento759214f2018-03-11 21:03:32 -040035 - os: linux
36 env: COMPILER=clang++-6.0
Davide Pesavento98ff2bc2018-05-24 00:10:31 -040037 - os: linux
38 env: COMPILER=clang++-7
Alexander Afanasyevf34a3552017-08-13 21:17:05 -040039
40 # macOS/clang
Davide Pesavento759214f2018-03-11 21:03:32 -040041 # https://docs.travis-ci.com/user/reference/osx/#OS-X-Version
Alexander Afanasyevf34a3552017-08-13 21:17:05 -040042 - os: osx
Alexander Afanasyevf34a3552017-08-13 21:17:05 -040043 osx_image: xcode8.3
Davide Pesavento759214f2018-03-11 21:03:32 -040044 env: OSX_VERSION=10.12
Davide Pesavento30ab3ff2017-10-19 01:48:29 -040045 - os: osx
Davide Pesavento98ff2bc2018-05-24 00:10:31 -040046 osx_image: xcode9.3
Davide Pesavento759214f2018-03-11 21:03:32 -040047 env: OSX_VERSION=10.13
Alexander Afanasyevf34a3552017-08-13 21:17:05 -040048
Davide Pesavento98ff2bc2018-05-24 00:10:31 -040049 allow_failures:
Davide Pesavento98ff2bc2018-05-24 00:10:31 -040050 - env: COMPILER=clang++-3.6
51 - env: COMPILER=clang++-3.7 DISABLE_ASAN=yes
52 - env: COMPILER=clang++-3.8
53 - env: COMPILER=clang++-3.9
54 - env: COMPILER=clang++-4.0
55 - env: COMPILER=clang++-5.0
56 - env: COMPILER=clang++-6.0
57 - env: COMPILER=clang++-7
58
59 fast_finish: true
60
61install: |
62 case ${COMPILER} in
63 g++-[6789])
64 travis_retry sudo add-apt-repository -y ppa:ubuntu-toolchain-r/test
65 travis_retry sudo apt-get -qq update
66 travis_retry sudo apt-get -qy install "${COMPILER}"
67 ;;
68 clang++-*)
69 CLANG_VERSION=${COMPILER/clang++}
70 if [[ ${CLANG_VERSION} != "-3."* ]]; then
71 wget -O - "https://apt.llvm.org/llvm-snapshot.gpg.key" | sudo apt-key add -
72 travis_retry sudo add-apt-repository -y "deb http://apt.llvm.org/xenial/ llvm-toolchain-xenial${CLANG_VERSION/-7} main"
73 fi
74 travis_retry sudo apt-get -qq update
75 travis_retry sudo apt-get -qy install "clang${CLANG_VERSION}"
76 ;;
77 esac
78
Alexander Afanasyevf34a3552017-08-13 21:17:05 -040079before_script:
Davide Pesavento98ff2bc2018-05-24 00:10:31 -040080 - if [[ ${TRAVIS_OS_NAME} == linux ]]; then export NODE_LABELS="Linux Ubuntu Ubuntu-16.04"; fi
Davide Pesavento759214f2018-03-11 21:03:32 -040081 - if [[ ${TRAVIS_OS_NAME} == osx ]]; then export NODE_LABELS="OSX OSX-${OSX_VERSION}"; fi
82 - if [[ -n ${COMPILER} ]]; then export CXX=${COMPILER}; fi
Alexander Afanasyevf34a3552017-08-13 21:17:05 -040083 - ${CXX:-c++} --version
84 - python --version
85
86script:
87 - ./.jenkins