Skip to content

Commit 560f82b

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 91a9c64 commit 560f82b

File tree

1 file changed

+76
-5
lines changed

1 file changed

+76
-5
lines changed

.travis.yml

+76-5
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"
@@ -157,12 +161,15 @@ jobs:
157161
packages:
158162
- libwww-perl
159163
- clang-3.7
164+
- g++-5
160165
- libstdc++-5-dev
161166
- libubsan0
162167
- parallel
163168
- libc6-dev-i386
164169
before_install:
165-
- mkdir bin ; ln -s /usr/bin/gcc-5 bin/gcc
170+
- mkdir bin
171+
- ln -s /usr/bin/gcc-5 bin/gcc
172+
- ln -s /usr/bin/c++-5 bin/g++
166173
- export CCACHE_CPP2=yes
167174
# env: COMPILER=clang++-3.7 SAN_FLAGS="-fsanitize=undefined -fno-sanitize-recover=undefined,integer -fno-omit-frame-pointer"
168175
env:
@@ -184,11 +191,14 @@ jobs:
184191
packages:
185192
- libwww-perl
186193
- clang-3.7
194+
- g++-5
187195
- libstdc++-5-dev
188196
- libubsan0
189197
- libc6-dev-i386
190198
before_install:
191-
- mkdir bin ; ln -s /usr/bin/gcc-5 bin/gcc
199+
- mkdir bin
200+
- ln -s /usr/bin/gcc-5 bin/gcc
201+
- ln -s /usr/bin/g++-5 bin/g++
192202
- export CCACHE_CPP2=yes
193203
# env: COMPILER=clang++-3.7 SAN_FLAGS="-fsanitize=undefined -fno-sanitize-recover=undefined,integer -fno-omit-frame-pointer"
194204
env:
@@ -212,14 +222,75 @@ jobs:
212222
- g++-5
213223
- libc6-dev-i386
214224
before_install:
215-
- mkdir bin ; ln -s /usr/bin/gcc-5 bin/gcc
225+
- mkdir bin
226+
- ln -s /usr/bin/gcc-5 bin/gcc
227+
- ln -s /usr/bin/g++-5 bin/g++
216228
install:
217229
- ccache -z
218230
- ccache --max-size=1G
219231
- cmake -H. -Bbuild '-DCMAKE_BUILD_TYPE=Release' '-DCMAKE_CXX_COMPILER=/usr/bin/g++-5'
220232
- cmake --build build -- -j4
221233
script: (cd build; ctest -V -L CORE -j2)
222234

235+
# cmake build using g++-7
236+
- stage: Test different OS/CXX/Flags
237+
os: linux
238+
compiler: gcc
239+
cache: ccache
240+
env:
241+
- BUILD_SYSTEM=cmake
242+
addons:
243+
apt:
244+
sources:
245+
- ubuntu-toolchain-r-test
246+
packages:
247+
- g++-7
248+
- libc6-dev-i386
249+
before_install:
250+
- mkdir bin
251+
- ln -s /usr/bin/gcc-7 bin/gcc
252+
- ln -s /usr/bin/g++-7 bin/g++
253+
install:
254+
- ccache -z
255+
- ccache --max-size=1G
256+
- cmake -H. -Bbuild '-DCMAKE_BUILD_TYPE=Release' '-DCMAKE_CXX_COMPILER=/usr/bin/g++-7'
257+
- cmake --build build -- -j4
258+
script: (cd build; ctest -V -L CORE -j2)
259+
260+
# cmake build using clang++-6
261+
- stage: Test different OS/CXX/Flags
262+
os: linux
263+
compiler: clang
264+
cache: ccache
265+
env:
266+
- BUILD_SYSTEM=cmake
267+
addons:
268+
apt:
269+
sources:
270+
- ubuntu-toolchain-r-test
271+
- llvm-toolchain-trusty-6.0
272+
packages:
273+
- libwww-perl
274+
- g++-5
275+
- clang-6.0
276+
- libstdc++-5-dev
277+
- libubsan0
278+
- parallel
279+
- libc6-dev-i386
280+
before_install:
281+
- mkdir bin
282+
# Use gcc/g++ 5 for tests, as Clang doesn't work yet
283+
# See https://github.com/diffblue/cbmc/issues/2370 for details.
284+
- ln -s /usr/bin/gcc-5 bin/gcc-5
285+
- ln -s /usr/bin/g++-5 bin/g++-5
286+
install:
287+
- ccache -z
288+
- ccache --max-size=1G
289+
- cmake -H. -Bbuild '-DCMAKE_BUILD_TYPE=Release' '-DCMAKE_CXX_COMPILER=/usr/bin/clang++-6.0' '-DCMAKE_CXX_FLAGS=-Qunused-arguments'
290+
- cmake --build build -- -j4
291+
script: (cd build; ctest -V -L CORE -j2)
292+
293+
# cmake build on OSX, using default clang
223294
- stage: Test different OS/CXX/Flags
224295
os: osx
225296
compiler: clang

0 commit comments

Comments
 (0)