Skip to content

Commit 8d37bc4

Browse files
committed
Travis: Move the clang (incl OSX) build to the first stage as well
We can run up to 10 jobs in parallel - make use of that!
1 parent 2caa469 commit 8d37bc4

File tree

1 file changed

+65
-7
lines changed

1 file changed

+65
-7
lines changed

.travis.yml

Lines changed: 65 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ jobs:
44
include:
55

66
- &formatting-stage
7-
stage: Linter + Doxygen + non-debug Ubuntu/gcc-5 build
7+
stage: Linter + Doxygen + non-debug builds
88
env: NAME="clang-format"
99
addons:
1010
apt:
@@ -32,20 +32,20 @@ jobs:
3232
before_cache:
3333

3434
- &linter-stage
35-
stage: Linter + Doxygen + non-debug Ubuntu/gcc-5 build
35+
stage: Linter + Doxygen + non-debug builds
3636
env: NAME="CPP-LINT"
3737
install:
3838
script: scripts/travis_lint.sh
3939
before_cache:
4040

4141
- &string-table-check
42-
stage: Linter + Doxygen + non-debug Ubuntu/gcc-5 build
42+
stage: Linter + Doxygen + non-debug builds
4343
env: NAME="string-table"
4444
install:
4545
script: scripts/string_table_check.sh
4646
before_cache:
4747

48-
- stage: Linter + Doxygen + non-debug Ubuntu/gcc-5 build
48+
- stage: Linter + Doxygen + non-debug builds
4949
env:
5050
NAME: "DOXYGEN-CHECK"
5151
DOXYGEN_VERSION: "1.8.14"
@@ -87,7 +87,7 @@ jobs:
8787
- scripts/publish_doc.sh
8888

8989
# Ubuntu Linux with glibc using g++-5
90-
- stage: Linter + Doxygen + non-debug Ubuntu/gcc-5 build
90+
- stage: Linter + Doxygen + non-debug builds
9191
os: linux
9292
sudo: false
9393
compiler: gcc
@@ -110,7 +110,7 @@ jobs:
110110
script: echo "Tests are run in the next stage."
111111

112112
# cmake build using g++-5
113-
- stage: Linter + Doxygen + non-debug Ubuntu/gcc-5 build
113+
- stage: Linter + Doxygen + non-debug builds
114114
os: linux
115115
compiler: gcc
116116
cache: ccache
@@ -131,8 +131,48 @@ jobs:
131131
- cmake --build build -- -j4
132132
script: echo "Tests are run in the next stage."
133133

134+
# OS X using clang++
135+
- stage: Linter + Doxygen + non-debug builds
136+
os: osx
137+
sudo: false
138+
compiler: clang
139+
cache: ccache
140+
before_install:
141+
- HOMEBREW_NO_AUTO_UPDATE=1 brew install ccache parallel
142+
- export PATH=$PATH:/usr/local/opt/ccache/libexec
143+
env: COMPILER="ccache clang++"
144+
script: echo "Tests are run in the next stage."
145+
146+
# Ubuntu Linux with glibc using clang++-3.7, no-debug mode
147+
- stage: Linter + Doxygen + non-debug builds
148+
os: linux
149+
sudo: false
150+
compiler: clang
151+
cache: ccache
152+
addons:
153+
apt:
154+
sources:
155+
- ubuntu-toolchain-r-test
156+
- llvm-toolchain-precise-3.7
157+
packages:
158+
- libwww-perl
159+
- clang-3.7
160+
- libstdc++-5-dev
161+
- libubsan0
162+
- parallel
163+
- libc6-dev-i386
164+
before_install:
165+
- mkdir bin ; ln -s /usr/bin/gcc-5 bin/gcc
166+
- export CCACHE_CPP2=yes
167+
# env: COMPILER=clang++-3.7 SAN_FLAGS="-fsanitize=undefined -fno-sanitize-recover=undefined,integer -fno-omit-frame-pointer"
168+
env:
169+
- COMPILER="ccache /usr/bin/clang++-3.7"
170+
- EXTRA_CXXFLAGS="-Qunused-arguments -fcolor-diagnostics -DNDEBUG"
171+
- CCACHE_CPP2=yes
172+
script: echo "Tests are run in the next stage."
173+
134174
# Ubuntu Linux with glibc using g++-5
135-
- stage: Test different OS/CXX/Flags
175+
- stage: Linter + Doxygen + non-debug builds
136176
os: linux
137177
sudo: false
138178
compiler: gcc
@@ -153,6 +193,24 @@ jobs:
153193
env:
154194
- COMPILER="ccache /usr/bin/g++-5"
155195
- EXTRA_CXXFLAGS="-D_GLIBCXX_DEBUG"
196+
script: echo "Tests are run in the next stage."
197+
198+
- stage: Linter + Doxygen + non-debug builds
199+
os: osx
200+
compiler: clang
201+
cache: ccache
202+
before_install:
203+
- HOMEBREW_NO_AUTO_UPDATE=1 brew install ccache
204+
- export PATH=$PATH:/usr/local/opt/ccache/libexec
205+
env:
206+
- BUILD_SYSTEM=cmake
207+
- CCACHE_CPP2=yes
208+
install:
209+
- ccache -z
210+
- ccache --max-size=1G
211+
- cmake -H. -Bbuild '-DCMAKE_BUILD_TYPE=Release' '-DCMAKE_OSX_ARCHITECTURES=x86_64'
212+
- cmake --build build -- -j4
213+
script: echo "Tests are run in the next stage."
156214

157215
# OS X using clang++
158216
- stage: Test different OS/CXX/Flags

0 commit comments

Comments
 (0)