.travis.yml 2.74 KB
Newer Older
Billy Donahue's avatar
Billy Donahue committed
1
# Build matrix / environment variable are explained on:
2
# https://docs.travis-ci.com/user/customizing-the-build/
Billy Donahue's avatar
Billy Donahue committed
3
4
5
# This file can be validated on:
# http://lint.travis-ci.org/

6
7
8
9
10
11
12
13
14
sudo: false
language: cpp

# Define the matrix explicitly, manually expanding the combinations of (os, compiler, env).
# It is more tedious, but grants us far more flexibility.
matrix:
  include:
    - os: linux
      compiler: gcc
Gennadiy Civil's avatar
Gennadiy Civil committed
15
      sudo : true
16
17
18
19
      install: ./ci/install-linux.sh && ./ci/log-config.sh
      script: ./ci/build-linux-bazel.sh
    - os: linux
      compiler: clang
Gennadiy Civil's avatar
Gennadiy Civil committed
20
      sudo : true
21
      install: ./ci/install-linux.sh && ./ci/log-config.sh
22
      script: ./ci/build-linux-bazel.sh
23
    - os: linux
Gennadiy Civil's avatar
Gennadiy Civil committed
24
      group: deprecated-2017Q4
25
      compiler: gcc
26
27
      install: ./ci/install-linux.sh && ./ci/log-config.sh
      script: ./ci/build-linux-autotools.sh
Gennadiy Civil's avatar
Gennadiy Civil committed
28
      env: VERBOSE=1 CXXFLAGS=-std=c++11
29
    - os: linux
Gennadiy Civil's avatar
Gennadiy Civil committed
30
      group: deprecated-2017Q4
31
      compiler: gcc
32
      env: BUILD_TYPE=Debug VERBOSE=1 CXX_FLAGS=-std=c++11
33
    - os: linux
Gennadiy Civil's avatar
Gennadiy Civil committed
34
      group: deprecated-2017Q4
35
36
      compiler: clang
      env: BUILD_TYPE=Release VERBOSE=1 CXX_FLAGS=-std=c++11
37
38
    - os: linux
      compiler: clang
Gennadiy Civil's avatar
Gennadiy Civil committed
39
      env: BUILD_TYPE=Release VERBOSE=1 CXX_FLAGS=-std=c++11 NO_EXCEPTION=ON NO_RTTI=ON COMPILER_IS_GNUCXX=ON
Gennadiy Civil's avatar
Gennadiy Civil committed
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
    
    - os: linux
      sudo: true
      compiler: gcc-6
      env: BUILD_TYPE=Debug VERBOSE=1 CXX_FLAGS=-std=c++11
      addons:
      apt:
        sources:
        - ubuntu-toolchain-r-test
        packages:
        - g++-6

    
    - os: linux
      sudo: true
      compiler: gcc-7
      env: BUILD_TYPE=Debug VERBOSE=1 CXX_FLAGS=-std=c++11
      addons:
      apt:
        sources:
        - ubuntu-toolchain-r-test
        packages:
        - g++-7


65
66
67
68
69
    - os: osx
      compiler: gcc
      env: BUILD_TYPE=Release VERBOSE=1 CXX_FLAGS=-std=c++11
    - os: osx
      env: BUILD_TYPE=Release VERBOSE=1 CXX_FLAGS=-std=c++11
70
      if: type != pull_request
71
72
73

# These are the install and build (script) phases for the most common entries in the matrix.  They could be included
# in each entry in the matrix, but that is just repetitive.
Billy Donahue's avatar
Billy Donahue committed
74
install:
75
76
77
78
79
80
81
  - ./ci/install-${TRAVIS_OS_NAME}.sh
  - . ./ci/env-${TRAVIS_OS_NAME}.sh
  - ./ci/log-config.sh

script: ./ci/travis.sh

# For sudo=false builds this section installs the necessary dependencies.
Billy Donahue's avatar
Billy Donahue committed
82
83
addons:
  apt:
Anton Klautsan's avatar
Anton Klautsan committed
84
85
86
87
    # List of whitelisted in travis packages for ubuntu-precise can be found here:
    #   https://github.com/travis-ci/apt-package-whitelist/blob/master/ubuntu-precise
    # List of whitelisted in travis apt-sources:
    #   https://github.com/travis-ci/apt-source-whitelist/blob/master/ubuntu.json
Billy Donahue's avatar
Billy Donahue committed
88
89
    sources:
    - ubuntu-toolchain-r-test
90
    - llvm-toolchain-precise-3.9
Billy Donahue's avatar
Billy Donahue committed
91
92
    packages:
    - g++-4.9
93
    - clang-3.9
94

Gennadiy Civil's avatar
Gennadiy Civil committed
95

Billy Donahue's avatar
Billy Donahue committed
96
97
notifications:
  email: false