1# Copyright 2016, 2017 Peter Dimov
2# Distributed under the Boost Software License, Version 1.0.
3# (See accompanying file LICENSE_1_0.txt or copy at http://boost.org/LICENSE_1_0.txt)
4
5language: cpp
6
7sudo: false
8
9python: "2.7"
10
11branches:
12  only:
13    - master
14    - develop
15    - /feature\/.*/
16
17env:
18  matrix:
19    - BOGUS_JOB=true
20
21matrix:
22
23  exclude:
24    - env: BOGUS_JOB=true
25
26  include:
27    - os: linux
28      compiler: g++
29      env: TOOLSET=gcc COMPILER=g++ CXXSTD=03,11
30
31    - os: linux
32      compiler: g++-5
33      env: TOOLSET=gcc COMPILER=g++-5 CXXSTD=03,11,14,1z
34      addons:
35        apt:
36          packages:
37            - g++-5
38          sources:
39            - ubuntu-toolchain-r-test
40
41    - os: linux
42      compiler: g++-6
43      env: TOOLSET=gcc COMPILER=g++-6 CXXSTD=03,11,14,1z
44      addons:
45        apt:
46          packages:
47            - g++-6
48          sources:
49            - ubuntu-toolchain-r-test
50
51    - os: linux
52      compiler: g++-7
53      env: TOOLSET=gcc COMPILER=g++-7 CXXSTD=03,11,14,17
54      addons:
55        apt:
56          packages:
57            - g++-7
58          sources:
59            - ubuntu-toolchain-r-test
60
61    - os: linux
62      compiler: clang++
63      env: TOOLSET=clang COMPILER=clang++ CXXSTD=03,11
64
65    - os: linux
66      compiler: clang++-4.0
67      env: TOOLSET=clang COMPILER=clang++-4.0 CXXSTD=03,11,14,1z
68      addons:
69        apt:
70          packages:
71            - clang-4.0
72          sources:
73            - ubuntu-toolchain-r-test
74            - llvm-toolchain-trusty-4.0
75
76    - os: linux
77      compiler: clang++-5.0
78      env: TOOLSET=clang COMPILER=clang++-5.0 CXXSTD=03,11,14,1z
79      addons:
80        apt:
81          packages:
82            - clang-5.0
83          sources:
84            - ubuntu-toolchain-r-test
85            - llvm-toolchain-trusty-5.0
86
87    - os: osx
88      compiler: clang++
89      env: TOOLSET=clang COMPILER=clang++ CXXSTD=03,11,14,1z
90
91install:
92  - BOOST_BRANCH=develop && [ "$TRAVIS_BRANCH" == "master" ] && BOOST_BRANCH=master || true
93  - cd ..
94  - git clone -b $BOOST_BRANCH https://github.com/boostorg/boost.git boost-root
95  - cd boost-root
96  - git submodule update --init tools/build
97  - git submodule update --init libs/config
98  - git submodule update --init tools/boostdep
99  - cp -r $TRAVIS_BUILD_DIR/* libs/tuple
100  - python tools/boostdep/depinst/depinst.py tuple
101  - ./bootstrap.sh
102  - ./b2 headers
103
104script:
105  - |-
106    echo "using $TOOLSET : : $COMPILER ;" > ~/user-config.jam
107  - ./b2 -j 3 libs/tuple/test toolset=$TOOLSET cxxstd=$CXXSTD
108
109notifications:
110  email:
111    on_success: always
112