blob: 2ac52ac02cc527cdacdba0230c99e55b8325a17a [file] [log] [blame]
Davide Pesavento9a659d02018-01-10 02:55:43 -05001language: cpp
Davide Pesavento26ea1ac2018-05-10 20:20:03 -04002dist: xenial
Davide Pesavento4a1edc62016-05-03 18:03:19 +02003sudo: required
Eric Newberry9737aa82016-12-27 23:03:49 -07004env:
5 global:
6 - JOB_NAME=limited-build
Davide Pesavento44660cf2017-08-16 00:44:23 -04007 - WAF_JOBS=2
Davide Pesaventof085ed12017-06-30 14:59:52 -04008
Alexander Afanasyev8a3081f2015-08-31 13:27:15 -07009matrix:
Davide Pesavento4a1edc62016-05-03 18:03:19 +020010 include:
Davide Pesaventof085ed12017-06-30 14:59:52 -040011 # Linux/gcc
Davide Pesavento9a659d02018-01-10 02:55:43 -050012 # https://launchpad.net/~ubuntu-toolchain-r/+archive/ubuntu/test/+packages
Alexander Afanasyev8a3081f2015-08-31 13:27:15 -070013 - os: linux
Davide Pesavento9a659d02018-01-10 02:55:43 -050014 env: COMPILER=g++-5
Davide Pesaventof085ed12017-06-30 14:59:52 -040015 - os: linux
Davide Pesavento9a659d02018-01-10 02:55:43 -050016 env: COMPILER=g++-6
Davide Pesaventof085ed12017-06-30 14:59:52 -040017 - os: linux
Davide Pesavento9a659d02018-01-10 02:55:43 -050018 env: COMPILER=g++-7
Davide Pesavento79d12c62018-04-30 19:28:46 -040019 - os: linux
20 env: COMPILER=g++-8
Davide Pesaventof085ed12017-06-30 14:59:52 -040021
22 # Linux/clang
Davide Pesavento9a659d02018-01-10 02:55:43 -050023 # https://apt.llvm.org/
Davide Pesaventof085ed12017-06-30 14:59:52 -040024 - os: linux
Davide Pesavento9a659d02018-01-10 02:55:43 -050025 env: COMPILER=clang++-3.6
Davide Pesaventof085ed12017-06-30 14:59:52 -040026 - os: linux
Davide Pesavento9a659d02018-01-10 02:55:43 -050027 env: COMPILER=clang++-3.7 DISABLE_ASAN=yes
Davide Pesavento4a1edc62016-05-03 18:03:19 +020028 - os: linux
Davide Pesavento9a659d02018-01-10 02:55:43 -050029 env: COMPILER=clang++-3.8
Davide Pesaventof085ed12017-06-30 14:59:52 -040030 - os: linux
Davide Pesavento26ea1ac2018-05-10 20:20:03 -040031 env: COMPILER=clang++-3.9
Davide Pesaventof085ed12017-06-30 14:59:52 -040032 - os: linux
Davide Pesavento9a659d02018-01-10 02:55:43 -050033 env: COMPILER=clang++-4.0
Davide Pesaventob5e06e62017-09-15 22:30:01 -040034 - os: linux
Davide Pesavento9a659d02018-01-10 02:55:43 -050035 env: COMPILER=clang++-5.0
Davide Pesavento9a659d02018-01-10 02:55:43 -050036 - os: linux
37 env: COMPILER=clang++-6.0
Davide Pesaventoe7d95a72018-03-11 20:54:08 -040038 - os: linux
39 env: COMPILER=clang++-7
Davide Pesaventof085ed12017-06-30 14:59:52 -040040
41 # macOS/clang
Davide Pesaventoe7d95a72018-03-11 20:54:08 -040042 # https://docs.travis-ci.com/user/reference/osx/#OS-X-Version
Alexander Afanasyev8a3081f2015-08-31 13:27:15 -070043 - os: osx
Davide Pesaventof085ed12017-06-30 14:59:52 -040044 osx_image: xcode7.3
Davide Pesavento9a659d02018-01-10 02:55:43 -050045 env: OSX_VERSION=10.11
Davide Pesaventof085ed12017-06-30 14:59:52 -040046 - os: osx
Davide Pesavento302941e2018-07-21 18:55:56 -040047 osx_image: xcode8
48 env: OSX_VERSION=10.11
49 - os: osx
Davide Pesaventof085ed12017-06-30 14:59:52 -040050 osx_image: xcode8.3
Davide Pesavento9a659d02018-01-10 02:55:43 -050051 env: OSX_VERSION=10.12
Davide Pesavento19280242017-10-19 01:30:33 -040052 - os: osx
Davide Pesavento302941e2018-07-21 18:55:56 -040053 osx_image: xcode9.2
54 env: OSX_VERSION=10.12
55 - os: osx
56 osx_image: xcode9.4
Davide Pesaventoe7d95a72018-03-11 20:54:08 -040057 env: OSX_VERSION=10.13
Davide Pesavento9a659d02018-01-10 02:55:43 -050058
59 allow_failures:
Davide Pesavento26ea1ac2018-05-10 20:20:03 -040060 - env: COMPILER=clang++-3.6
61 - env: COMPILER=clang++-3.7 DISABLE_ASAN=yes
Davide Pesavento9a659d02018-01-10 02:55:43 -050062
63 fast_finish: true
Davide Pesaventof085ed12017-06-30 14:59:52 -040064
Davide Pesavento26ea1ac2018-05-10 20:20:03 -040065install: |
66 case ${COMPILER} in
67 g++-[6789])
68 travis_retry sudo add-apt-repository -y ppa:ubuntu-toolchain-r/test
69 travis_retry sudo apt-get -qq update
70 travis_retry sudo apt-get -qy install "${COMPILER}"
71 ;;
72 clang++-*)
73 CLANG_VERSION=${COMPILER/clang++}
74 if [[ ${CLANG_VERSION} != "-3."* ]]; then
75 wget -O - "https://apt.llvm.org/llvm-snapshot.gpg.key" | sudo apt-key add -
76 travis_retry sudo add-apt-repository -y "deb http://apt.llvm.org/xenial/ llvm-toolchain-xenial${CLANG_VERSION/-7} main"
77 fi
78 travis_retry sudo apt-get -qq update
79 travis_retry sudo apt-get -qy install "clang${CLANG_VERSION}"
80 ;;
81 esac
82
Davide Pesaventof085ed12017-06-30 14:59:52 -040083before_script:
Davide Pesavento26ea1ac2018-05-10 20:20:03 -040084 - if [[ ${TRAVIS_OS_NAME} == linux ]]; then export NODE_LABELS="Linux Ubuntu Ubuntu-16.04"; fi
Davide Pesavento9a659d02018-01-10 02:55:43 -050085 - if [[ ${TRAVIS_OS_NAME} == osx ]]; then export NODE_LABELS="OSX OSX-${OSX_VERSION}"; fi
86 - if [[ -n ${COMPILER} ]]; then export CXX=${COMPILER}; fi
Davide Pesaventof085ed12017-06-30 14:59:52 -040087 - ${CXX:-c++} --version
Davide Pesavento5485ca92017-08-10 21:47:42 -040088 - python --version
Davide Pesaventof085ed12017-06-30 14:59:52 -040089
Joao Pereiraef326da2015-05-27 18:27:40 -040090script:
Joao Pereiraef326da2015-05-27 18:27:40 -040091 - ./.jenkins