Skip to content

Commit 0bbf879

Browse files
committed
Travis: test more g++ and clang versions
Also use the build compiler, not the system default, for tests. This was already done with gcc (by placing a symlink named 'gcc' pointing to gcc-5 in a directory ahead of /usr/bin in the path), but g++ tests were using the image default compiler -- g++-4.8 for Ubuntu Trusty.
1 parent a0744c4 commit 0bbf879

File tree

1 file changed

+71
-5
lines changed

1 file changed

+71
-5
lines changed

.travis.yml

Lines changed: 71 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -103,7 +103,9 @@ jobs:
103103
- parallel
104104
- libc6-dev-i386
105105
before_install:
106-
- mkdir bin ; ln -s /usr/bin/gcc-5 bin/gcc
106+
- mkdir bin
107+
- ln -s /usr/bin/gcc-5 bin/gcc
108+
- ln -s /usr/bin/g++-5 bin/g++
107109
# env: COMPILER=g++-5 SAN_FLAGS="-fsanitize=undefined -fno-sanitize-recover -fno-omit-frame-pointer"
108110
env:
109111
- COMPILER="ccache /usr/bin/g++-5"
@@ -136,7 +138,9 @@ jobs:
136138
- libubsan0
137139
- libc6-dev-i386
138140
before_install:
139-
- mkdir bin ; ln -s /usr/bin/gcc-5 bin/gcc
141+
- mkdir bin
142+
- ln -s /usr/bin/gcc-5 bin/gcc
143+
- ln -s /usr/bin/g++-5 bin/g++
140144
# env: COMPILER=g++-5 SAN_FLAGS="-fsanitize=undefined -fno-sanitize-recover -fno-omit-frame-pointer"
141145
env:
142146
- COMPILER="ccache /usr/bin/g++-5"
@@ -162,7 +166,9 @@ jobs:
162166
- parallel
163167
- libc6-dev-i386
164168
before_install:
165-
- mkdir bin ; ln -s /usr/bin/gcc-5 bin/gcc
169+
- mkdir bin
170+
- ln -s /usr/bin/clang-3.7 bin/gcc
171+
- ln -s /usr/bin/clang++-3.7 bin/g++
166172
- export CCACHE_CPP2=yes
167173
# env: COMPILER=clang++-3.7 SAN_FLAGS="-fsanitize=undefined -fno-sanitize-recover=undefined,integer -fno-omit-frame-pointer"
168174
env:
@@ -188,7 +194,9 @@ jobs:
188194
- libubsan0
189195
- libc6-dev-i386
190196
before_install:
191-
- mkdir bin ; ln -s /usr/bin/gcc-5 bin/gcc
197+
- mkdir bin
198+
- ln -s /usr/bin/clang-3.7 bin/gcc
199+
- ln -s /usr/bin/clang++-3.7 bin/g++
192200
- export CCACHE_CPP2=yes
193201
# env: COMPILER=clang++-3.7 SAN_FLAGS="-fsanitize=undefined -fno-sanitize-recover=undefined,integer -fno-omit-frame-pointer"
194202
env:
@@ -212,14 +220,72 @@ jobs:
212220
- g++-5
213221
- libc6-dev-i386
214222
before_install:
215-
- mkdir bin ; ln -s /usr/bin/gcc-5 bin/gcc
223+
- mkdir bin
224+
- ln -s /usr/bin/gcc-5 bin/gcc
225+
- ln -s /usr/bin/g++-5 bin/g++
216226
install:
217227
- ccache -z
218228
- ccache --max-size=1G
219229
- cmake -H. -Bbuild '-DCMAKE_BUILD_TYPE=Release' '-DCMAKE_CXX_COMPILER=/usr/bin/g++-5'
220230
- cmake --build build -- -j4
221231
script: (cd build; ctest -V -L CORE -j2)
222232

233+
# cmake build using g++-8
234+
- stage: Test different OS/CXX/Flags
235+
os: linux
236+
compiler: gcc
237+
cache: ccache
238+
env:
239+
- BUILD_SYSTEM=cmake
240+
addons:
241+
apt:
242+
sources:
243+
- ubuntu-toolchain-r-test
244+
packages:
245+
- g++-8
246+
- libc6-dev-i386
247+
before_install:
248+
- mkdir bin
249+
- ln -s /usr/bin/gcc-8 bin/gcc
250+
- ln -s /usr/bin/g++-8 bin/g++
251+
install:
252+
- ccache -z
253+
- ccache --max-size=1G
254+
- cmake -H. -Bbuild '-DCMAKE_BUILD_TYPE=Release' '-DCMAKE_CXX_COMPILER=/usr/bin/g++-8'
255+
- cmake --build build -- -j4
256+
script: (cd build; ctest -V -L CORE -j2)
257+
258+
# cmake build using clang++-6
259+
- stage: Test different OS/CXX/Flags
260+
os: linux
261+
compiler: clang
262+
cache: ccache
263+
env:
264+
- BUILD_SYSTEM=cmake
265+
addons:
266+
apt:
267+
sources:
268+
- ubuntu-toolchain-r-test
269+
- llvm-toolchain-trusty-6.0
270+
packages:
271+
- libwww-perl
272+
- clang-6.0
273+
- libstdc++-5-dev
274+
- libubsan0
275+
- parallel
276+
- libc6-dev-i386
277+
before_install:
278+
- mkdir bin
279+
- ln -s /usr/bin/clang-8 bin/gcc # For goto-cc to find
280+
- ln -s /usr/bin/clang++-8 bin/g++ # For goto-cc to find
281+
install:
282+
- ccache -z
283+
- ccache --max-size=1G
284+
- cmake -H. -Bbuild '-DCMAKE_BUILD_TYPE=Release' '-DCMAKE_CXX_COMPILER=/usr/bin/clang++-8'
285+
- cmake --build build -- -j4
286+
script: (cd build; ctest -V -L CORE -j2)
287+
288+
# cmake build on OSX, using default clang
223289
- stage: Test different OS/CXX/Flags
224290
os: osx
225291
compiler: clang

0 commit comments

Comments
 (0)