• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# Build matrix / environment variable are explained on:
2# https://docs.travis-ci.com/user/customizing-the-build/
3# This file can be validated on:
4# http://lint.travis-ci.org/
5
6language: cpp
7
8# Define the matrix explicitly, manually expanding the combinations of (os, compiler, env).
9# It is more tedious, but grants us far more flexibility.
10matrix:
11  include:
12    - os: linux
13      dist: bionic
14      compiler: gcc
15      install: ./ci/install-linux.sh && ./ci/log-config.sh
16      script: ./ci/build-linux-bazel.sh
17    - os: linux
18      dist: bionic
19      compiler: clang
20      install: ./ci/install-linux.sh && ./ci/log-config.sh
21      script: ./ci/build-linux-bazel.sh
22    - os: linux
23      dist: bionic
24      compiler: gcc
25      env: BUILD_TYPE=Debug CXX_FLAGS="-std=c++11 -Wdeprecated"
26    - os: linux
27      dist: bionic
28      compiler: clang
29      env: BUILD_TYPE=Release CXX_FLAGS="-std=c++11 -Wdeprecated" NO_EXCEPTION=ON NO_RTTI=ON COMPILER_IS_GNUCXX=ON
30    - os: osx
31      osx_image: xcode12.2
32      compiler: gcc
33      env: BUILD_TYPE=Release CC=gcc-10 CXX=g++-10 CXX_FLAGS="-std=c++11 -Wdeprecated" HOMEBREW_LOGS=~/homebrew-logs HOMEBREW_TEMP=~/homebrew-temp
34    - os: osx
35      osx_image: xcode12.2
36      compiler: clang
37      env: BUILD_TYPE=Release CXX_FLAGS="-std=c++11 -Wdeprecated" HOMEBREW_LOGS=~/homebrew-logs HOMEBREW_TEMP=~/homebrew-temp
38
39# These are the install and build (script) phases for the most common entries in the matrix.  They could be included
40# in each entry in the matrix, but that is just repetitive.
41install:
42  - ./ci/install-${TRAVIS_OS_NAME}.sh
43  - . ./ci/env-${TRAVIS_OS_NAME}.sh
44  - ./ci/log-config.sh
45
46script: ./ci/travis.sh
47
48# This section installs the necessary dependencies.
49addons:
50  apt:
51    packages:
52    - g++
53    - clang
54    update: true
55  homebrew:
56    packages:
57    - gcc@10
58    update: true
59
60notifications:
61  email: false
62