• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# Copyright 2017 Edward Diener
2# Copyright 2019 Glen Fernandes
3# Distributed under the Boost Software License, Version 1.0.
4
5language: cpp
6
7sudo: false
8
9dist: trusty
10
11python: "2.7"
12
13branches:
14  only:
15    - master
16    - develop
17
18env:
19  matrix:
20    - BOGUS_JOB=true
21
22matrix:
23
24  exclude:
25    - env: BOGUS_JOB=true
26
27  include:
28    - os: linux
29      compiler: g++
30      env: TOOLSET=gcc COMPILER=g++ CXXSTD=03,11
31
32    - os: linux
33      compiler: g++-4.4
34      env: TOOLSET=gcc COMPILER=g++-4.4 CXXSTD=98,0x
35      addons:
36        apt:
37          packages:
38            - g++-4.4
39          sources:
40            - ubuntu-toolchain-r-test
41
42    - os: linux
43      compiler: g++-4.6
44      env: TOOLSET=gcc COMPILER=g++-4.6 CXXSTD=03,0x
45      addons:
46        apt:
47          packages:
48            - g++-4.6
49          sources:
50            - ubuntu-toolchain-r-test
51
52    - os: linux
53      compiler: g++-4.7
54      env: TOOLSET=gcc COMPILER=g++-4.7 CXXSTD=03,11
55      addons:
56        apt:
57          packages:
58            - g++-4.7
59          sources:
60            - ubuntu-toolchain-r-test
61
62    - os: linux
63      compiler: g++-4.8
64      env: TOOLSET=gcc COMPILER=g++-4.8 CXXSTD=03,11
65      addons:
66        apt:
67          packages:
68            - g++-4.8
69          sources:
70            - ubuntu-toolchain-r-test
71
72    - os: linux
73      compiler: g++-4.9
74      env: TOOLSET=gcc COMPILER=g++-4.9 CXXSTD=03,11
75      addons:
76        apt:
77          packages:
78            - g++-4.9
79          sources:
80            - ubuntu-toolchain-r-test
81
82    - os: linux
83      compiler: g++-5
84      env: TOOLSET=gcc COMPILER=g++-5 CXXSTD=03,11,14,1z
85      addons:
86        apt:
87          packages:
88            - g++-5
89          sources:
90            - ubuntu-toolchain-r-test
91
92    - os: linux
93      compiler: g++-6
94      env: TOOLSET=gcc COMPILER=g++-6 CXXSTD=03,11,14,1z
95      addons:
96        apt:
97          packages:
98            - g++-6
99          sources:
100            - ubuntu-toolchain-r-test
101
102    - os: linux
103      compiler: g++-7
104      env: TOOLSET=gcc COMPILER=g++-7 CXXSTD=03,11,14,17
105      addons:
106        apt:
107          packages:
108            - g++-7
109          sources:
110            - ubuntu-toolchain-r-test
111
112    - os: linux
113      compiler: g++-8
114      env: TOOLSET=gcc COMPILER=g++-8 CXXSTD=03,11,14,17,2a
115      addons:
116        apt:
117          packages:
118            - g++-8
119          sources:
120            - ubuntu-toolchain-r-test
121
122    - os: linux
123      compiler: g++-9
124      env: TOOLSET=gcc COMPILER=g++-9 CXXSTD=03,11,14,17,2a
125      addons:
126        apt:
127          packages:
128            - g++-9
129          sources:
130            - ubuntu-toolchain-r-test
131
132    - os: linux
133      compiler: clang++
134      env: TOOLSET=clang COMPILER=clang++ CXXSTD=03,11
135
136    - os: linux
137      compiler: /usr/bin/clang++
138      env: TOOLSET=clang COMPILER=/usr/bin/clang++ CXXSTD=03,11
139      addons:
140        apt:
141          packages:
142            - clang-3.3
143
144    - os: linux
145      compiler: /usr/bin/clang++
146      env: TOOLSET=clang COMPILER=/usr/bin/clang++ CXXSTD=03,11
147      addons:
148        apt:
149          packages:
150            - clang-3.4
151
152    - os: linux
153      compiler: clang++-3.5
154      env: TOOLSET=clang COMPILER=clang++-3.5 CXXSTD=03,11,14,1z
155      addons:
156        apt:
157          packages:
158            - clang-3.5
159            - libstdc++-4.9-dev
160          sources:
161            - ubuntu-toolchain-r-test
162            - llvm-toolchain-precise-3.5
163
164    - os: linux
165      compiler: clang++-3.6
166      env: TOOLSET=clang COMPILER=clang++-3.6 CXXSTD=03,11,14,1z
167      addons:
168        apt:
169          packages:
170            - clang-3.6
171          sources:
172            - ubuntu-toolchain-r-test
173            - llvm-toolchain-precise-3.6
174
175    - os: linux
176      compiler: clang++-3.7
177      env: TOOLSET=clang COMPILER=clang++-3.7 CXXSTD=03,11,14,1z
178      addons:
179        apt:
180          packages:
181            - clang-3.7
182          sources:
183            - ubuntu-toolchain-r-test
184            - llvm-toolchain-precise-3.7
185
186    - os: linux
187      compiler: clang++-3.8
188      env: TOOLSET=clang COMPILER=clang++-3.8 CXXSTD=03,11,14,1z
189      addons:
190        apt:
191          packages:
192            - clang-3.8
193            - libstdc++-4.9-dev
194          sources:
195            - ubuntu-toolchain-r-test
196            - llvm-toolchain-precise-3.8
197
198    - os: linux
199      compiler: clang++-3.9
200      env: TOOLSET=clang COMPILER=clang++-3.9 CXXSTD=03,11,14,1z
201      addons:
202        apt:
203          packages:
204            - clang-3.9
205            - libstdc++-4.9-dev
206          sources:
207            - ubuntu-toolchain-r-test
208            - llvm-toolchain-precise-3.9
209
210    - os: linux
211      compiler: clang++-4.0
212      env: TOOLSET=clang COMPILER=clang++-4.0 CXXSTD=03,11,14,1z
213      addons:
214        apt:
215          packages:
216            - clang-4.0
217          sources:
218            - ubuntu-toolchain-r-test
219            - llvm-toolchain-trusty-4.0
220
221    - os: linux
222      compiler: clang++-5.0
223      env: TOOLSET=clang COMPILER=clang++-5.0 CXXSTD=03,11,14,1z
224      addons:
225        apt:
226          packages:
227            - clang-5.0
228          sources:
229            - ubuntu-toolchain-r-test
230            - llvm-toolchain-trusty-5.0
231
232    - os: linux
233      compiler: clang++-6.0
234      env: TOOLSET=clang COMPILER=clang++-6.0 CXXSTD=03,11,14,17,2a
235      addons:
236        apt:
237          packages:
238            - clang-6.0
239          sources:
240            - ubuntu-toolchain-r-test
241            - llvm-toolchain-trusty-6.0
242
243    - os: linux
244      compiler: clang++-7
245      env: TOOLSET=clang COMPILER=clang++-7 CXXSTD=03,11,14,17,2a
246      addons:
247        apt:
248          packages:
249            - clang-7
250          sources:
251            - ubuntu-toolchain-r-test
252            - llvm-toolchain-trusty-7
253
254    - os: linux
255      compiler: clang++-8
256      env: TOOLSET=clang COMPILER=clang++-8 CXXSTD=03,11,14,17,2a
257      addons:
258        apt:
259          packages:
260            - clang-8
261          sources:
262            - ubuntu-toolchain-r-test
263            - llvm-toolchain-trusty-8
264
265    - os: linux
266      compiler: clang++-libc++
267      env: TOOLSET=clang COMPILER=clang++-libc++ CXXSTD=03,11,14,1z
268      addons:
269        apt:
270          packages:
271            - libc++-dev
272
273    - os: osx
274      compiler: clang++
275      env: TOOLSET=clang COMPILER=clang++ CXXSTD=03,11,14,1z
276
277install:
278  - BOOST_BRANCH=develop && [ "$TRAVIS_BRANCH" == "master" ] && BOOST_BRANCH=master || true
279  - cd ..
280  - git clone -b $BOOST_BRANCH https://github.com/boostorg/boost.git boost
281  - cd boost
282  - git submodule init libs/assert
283  - git submodule init libs/config
284  - git submodule init libs/core
285  - git submodule init libs/headers
286  - git submodule init tools/build
287  - git submodule init tools/boost_install
288  - git submodule update
289  - mkdir -p libs/io
290  - cp -r $TRAVIS_BUILD_DIR/* libs/io
291  - ./bootstrap.sh
292  - ./b2 headers
293
294script:
295  - |-
296    echo "using $TOOLSET : : $COMPILER ;" > ~/user-config.jam
297  - ./b2 libs/io/test toolset=$TOOLSET cxxstd=$CXXSTD
298
299notifications:
300  email:
301    on_success: always
302