blob: 984e8aceee6b03a10ec4b85422f7d018e5ed4e99 [file] [log] [blame]
Davide Pesavento437adfe2018-01-11 02:20:42 -05001language: cpp
Davide Pesaventoa08dc3f2018-05-24 00:40:28 -04002dist: xenial
Alexander Afanasyev5ec9ae42016-07-28 14:30:21 -07003sudo: required
Davide Pesavento813df802017-08-20 20:53:54 -04004env:
5 global:
6 - JOB_NAME=limited-build
7 - WAF_JOBS=2
Davide Pesavento6a81b772017-08-20 18:43:46 -04008
Alexander Afanasyev5ec9ae42016-07-28 14:30:21 -07009matrix:
10 include:
Davide Pesavento6a81b772017-08-20 18:43:46 -040011 # Linux/gcc
Davide Pesavento437adfe2018-01-11 02:20:42 -050012 # https://launchpad.net/~ubuntu-toolchain-r/+archive/ubuntu/test/+packages
Alexander Afanasyev5ec9ae42016-07-28 14:30:21 -070013 - os: linux
Davide Pesavento437adfe2018-01-11 02:20:42 -050014 env: COMPILER=g++-5
Davide Pesavento437adfe2018-01-11 02:20:42 -050015 - os: linux
16 env: COMPILER=g++-6
Davide Pesavento437adfe2018-01-11 02:20:42 -050017 - os: linux
18 env: COMPILER=g++-7
Davide Pesaventoa08dc3f2018-05-24 00:40:28 -040019 - os: linux
20 env: COMPILER=g++-8
Davide Pesavento6a81b772017-08-20 18:43:46 -040021
22 # Linux/clang
Davide Pesavento437adfe2018-01-11 02:20:42 -050023 # https://apt.llvm.org/
Alexander Afanasyev5ec9ae42016-07-28 14:30:21 -070024 - os: linux
Davide Pesavento437adfe2018-01-11 02:20:42 -050025 env: COMPILER=clang++-3.5
Davide Pesavento437adfe2018-01-11 02:20:42 -050026 - os: linux
27 env: COMPILER=clang++-3.6
Davide Pesavento437adfe2018-01-11 02:20:42 -050028 - os: linux
29 env: COMPILER=clang++-3.7 DISABLE_ASAN=yes
Davide Pesavento437adfe2018-01-11 02:20:42 -050030 - os: linux
31 env: COMPILER=clang++-3.8
Davide Pesavento437adfe2018-01-11 02:20:42 -050032 - os: linux
Davide Pesaventoa08dc3f2018-05-24 00:40:28 -040033 env: COMPILER=clang++-3.9
Davide Pesavento437adfe2018-01-11 02:20:42 -050034 - os: linux
35 env: COMPILER=clang++-4.0
Davide Pesavento437adfe2018-01-11 02:20:42 -050036 - os: linux
37 env: COMPILER=clang++-5.0
Davide Pesaventoa08dc3f2018-05-24 00:40:28 -040038 - os: linux
39 env: COMPILER=clang++-6.0
40 - os: linux
41 env: COMPILER=clang++-7
Davide Pesavento6a81b772017-08-20 18:43:46 -040042
43 # macOS/clang
Davide Pesaventoa08dc3f2018-05-24 00:40:28 -040044 # https://docs.travis-ci.com/user/reference/osx/#OS-X-Version
Alexander Afanasyev5ec9ae42016-07-28 14:30:21 -070045 - os: osx
Davide Pesavento437adfe2018-01-11 02:20:42 -050046 osx_image: xcode7.3
47 env: OSX_VERSION=10.11
48 - os: osx
Davide Pesavento813df802017-08-20 20:53:54 -040049 osx_image: xcode8.3
Davide Pesavento437adfe2018-01-11 02:20:42 -050050 env: OSX_VERSION=10.12
51 - os: osx
Davide Pesaventoa08dc3f2018-05-24 00:40:28 -040052 osx_image: xcode9.3
53 env: OSX_VERSION=10.13
54
55 allow_failures:
56 - 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
67 - env: COMPILER=clang++-7
68
69 fast_finish: true
70
71install: |
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
Davide Pesavento6a81b772017-08-20 18:43:46 -040088
89before_script:
Davide Pesaventoa08dc3f2018-05-24 00:40:28 -040090 - if [[ ${TRAVIS_OS_NAME} == linux ]]; then export NODE_LABELS="Linux Ubuntu Ubuntu-16.04"; fi
Davide Pesavento437adfe2018-01-11 02:20:42 -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 Pesavento6a81b772017-08-20 18:43:46 -040093 - ${CXX:-c++} --version
94 - python --version
95
Alexander Afanasyev24ed83a2015-03-30 11:06:50 -070096script:
97 - ./.jenkins