blob: fb2ec6fe4c933c3f4e443cb7373a7360cbc1fdef [file] [log] [blame]
Davide Pesavento9412d122018-01-02 21:52:09 -05001language: cpp
Davide Pesavento844b0932018-05-07 01:00:16 -04002dist: xenial
Alexander Afanasyevce306ca2015-12-09 12:59:05 -08003sudo: required
Davide Pesavento09348882016-09-17 02:39:44 +02004env:
5 global:
6 - JOB_NAME=limited-build
Davide Pesavento3cf90782017-08-10 01:21:20 -04007 - WAF_JOBS=2
Davide Pesavento71430482017-06-08 20:06:40 -04008
Alexander Afanasyevce306ca2015-12-09 12:59:05 -08009matrix:
10 include:
Davide Pesavento71430482017-06-08 20:06:40 -040011 # Linux/gcc
Davide Pesavento9412d122018-01-02 21:52:09 -050012 # https://launchpad.net/~ubuntu-toolchain-r/+archive/ubuntu/test/+packages
Alexander Afanasyevce306ca2015-12-09 12:59:05 -080013 - os: linux
Davide Pesavento9412d122018-01-02 21:52:09 -050014 env: COMPILER=g++-5
Davide Pesavento71430482017-06-08 20:06:40 -040015 - os: linux
Davide Pesavento9412d122018-01-02 21:52:09 -050016 env: COMPILER=g++-6
Davide Pesavento71430482017-06-08 20:06:40 -040017 - os: linux
Davide Pesavento9412d122018-01-02 21:52:09 -050018 env: COMPILER=g++-7
Davide Pesaventod89f0022018-04-28 14:48:25 -040019 - os: linux
20 env: COMPILER=g++-8
Davide Pesavento71430482017-06-08 20:06:40 -040021
22 # Linux/clang
Davide Pesavento9412d122018-01-02 21:52:09 -050023 # https://apt.llvm.org/
Davide Pesavento71430482017-06-08 20:06:40 -040024 - os: linux
Davide Pesavento9412d122018-01-02 21:52:09 -050025 env: COMPILER=clang++-3.5
Davide Pesavento71430482017-06-08 20:06:40 -040026 - os: linux
Davide Pesavento9412d122018-01-02 21:52:09 -050027 env: COMPILER=clang++-3.6
Davide Pesavento71430482017-06-08 20:06:40 -040028 - os: linux
Davide Pesavento9412d122018-01-02 21:52:09 -050029 env: COMPILER=clang++-3.7 DISABLE_ASAN=yes
Alexander Afanasyevce306ca2015-12-09 12:59:05 -080030 - os: linux
Davide Pesavento9412d122018-01-02 21:52:09 -050031 env: COMPILER=clang++-3.8
Davide Pesavento71430482017-06-08 20:06:40 -040032 - os: linux
Davide Pesavento844b0932018-05-07 01:00:16 -040033 env: COMPILER=clang++-3.9
Davide Pesavento71430482017-06-08 20:06:40 -040034 - os: linux
Davide Pesavento9412d122018-01-02 21:52:09 -050035 env: COMPILER=clang++-4.0
Davide Pesaventobcf23a32017-09-12 16:45:59 -040036 - os: linux
Davide Pesavento9412d122018-01-02 21:52:09 -050037 env: COMPILER=clang++-5.0
Davide Pesavento9412d122018-01-02 21:52:09 -050038 - os: linux
39 env: COMPILER=clang++-6.0
Davide Pesavento8a8c01b2018-03-11 00:07:52 -050040 - os: linux
Davide Pesavento92e4d5c2018-03-11 20:05:48 -040041 env: COMPILER=clang++-7
Davide Pesavento71430482017-06-08 20:06:40 -040042
43 # macOS/clang
Davide Pesavento8a8c01b2018-03-11 00:07:52 -050044 # https://docs.travis-ci.com/user/reference/osx/#OS-X-Version
Alexander Afanasyevce306ca2015-12-09 12:59:05 -080045 - os: osx
Davide Pesavento71430482017-06-08 20:06:40 -040046 osx_image: xcode7.3
Davide Pesavento9412d122018-01-02 21:52:09 -050047 env: OSX_VERSION=10.11
Davide Pesavento71430482017-06-08 20:06:40 -040048 - os: osx
49 osx_image: xcode8.3
Davide Pesavento9412d122018-01-02 21:52:09 -050050 env: OSX_VERSION=10.12
Davide Pesavento49650be2017-10-15 22:03:57 -040051 - os: osx
Davide Pesaventod89f0022018-04-28 14:48:25 -040052 osx_image: xcode9.3
Davide Pesavento8a8c01b2018-03-11 00:07:52 -050053 env: OSX_VERSION=10.13
Davide Pesaventod89f0022018-04-28 14:48:25 -040054 - os: osx
55 osx_image: xcode9.3
56 env: OSX_VERSION=10.13 USE_OPENSSL_1_1=yes
Davide Pesavento9412d122018-01-02 21:52:09 -050057
58 allow_failures:
Davide Pesavento844b0932018-05-07 01:00:16 -040059 - env: COMPILER=g++-6
60 - env: COMPILER=g++-7
61 - env: COMPILER=g++-8
62 - env: COMPILER=clang++-3.5
63 - env: COMPILER=clang++-3.6
64 - env: COMPILER=clang++-3.7 DISABLE_ASAN=yes
65 - env: COMPILER=clang++-4.0
66 - env: COMPILER=clang++-5.0
67 - env: COMPILER=clang++-6.0
Davide Pesavento92e4d5c2018-03-11 20:05:48 -040068 - env: COMPILER=clang++-7
Davide Pesaventod89f0022018-04-28 14:48:25 -040069 - env: OSX_VERSION=10.13 USE_OPENSSL_1_1=yes
Davide Pesavento9412d122018-01-02 21:52:09 -050070
71 fast_finish: true
Davide Pesavento71430482017-06-08 20:06:40 -040072
Davide Pesavento844b0932018-05-07 01:00:16 -040073install: |
74 case ${COMPILER} in
75 g++-[6789])
76 travis_retry sudo add-apt-repository -y ppa:ubuntu-toolchain-r/test
77 travis_retry sudo apt-get -qq update
78 travis_retry sudo apt-get -qy install "${COMPILER}"
79 ;;
80 clang++-*)
81 CLANG_VERSION=${COMPILER/clang++}
82 if [[ ${CLANG_VERSION} != "-3."* ]]; then
83 wget -O - "https://apt.llvm.org/llvm-snapshot.gpg.key" | sudo apt-key add -
84 travis_retry sudo add-apt-repository -y "deb http://apt.llvm.org/xenial/ llvm-toolchain-xenial${CLANG_VERSION/-7} main"
85 fi
86 travis_retry sudo apt-get -qq update
87 travis_retry sudo apt-get -qy install "clang${CLANG_VERSION}"
88 ;;
89 esac
90
Davide Pesavento71430482017-06-08 20:06:40 -040091before_script:
Davide Pesavento844b0932018-05-07 01:00:16 -040092 - if [[ ${TRAVIS_OS_NAME} == linux ]]; then export NODE_LABELS="Linux Ubuntu Ubuntu-16.04"; fi
Davide Pesavento9412d122018-01-02 21:52:09 -050093 - if [[ ${TRAVIS_OS_NAME} == osx ]]; then export NODE_LABELS="OSX OSX-${OSX_VERSION}"; fi
94 - if [[ -n ${COMPILER} ]]; then export CXX=${COMPILER}; fi
Davide Pesavento71430482017-06-08 20:06:40 -040095 - ${CXX:-c++} --version
Davide Pesavento364eeee2017-08-10 00:46:08 -040096 - python --version
Davide Pesavento71430482017-06-08 20:06:40 -040097
Alexander Afanasyevb4500d92014-01-17 20:43:24 -080098script:
Alexander Afanasyeva87e0a82014-10-21 14:09:19 -040099 - ./.jenkins