Skip to content

Commit 93bfbe1

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 beb960e commit 93bfbe1

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: NAME="DOXYGEN-CHECK"
5050
addons:
5151
apt:
@@ -69,7 +69,7 @@ jobs:
6969
- scripts/publish_doc.sh
7070

7171
# Ubuntu Linux with glibc using g++-5
72-
- stage: Linter + Doxygen + non-debug Ubuntu/gcc-5 build
72+
- stage: Linter + Doxygen + non-debug builds
7373
os: linux
7474
sudo: false
7575
compiler: gcc
@@ -92,7 +92,7 @@ jobs:
9292
script: echo "Tests are run in the next stage."
9393

9494
# cmake build using g++-5
95-
- stage: Linter + Doxygen + non-debug Ubuntu/gcc-5 build
95+
- stage: Linter + Doxygen + non-debug builds
9696
os: linux
9797
compiler: gcc
9898
cache: ccache
@@ -113,8 +113,48 @@ jobs:
113113
- cmake --build build -- -j4
114114
script: echo "Tests are run in the next stage."
115115

116+
# OS X using clang++
117+
- stage: Linter + Doxygen + non-debug builds
118+
os: osx
119+
sudo: false
120+
compiler: clang
121+
cache: ccache
122+
before_install:
123+
- HOMEBREW_NO_AUTO_UPDATE=1 brew install ccache parallel
124+
- export PATH=$PATH:/usr/local/opt/ccache/libexec
125+
env: COMPILER="ccache clang++"
126+
script: echo "Tests are run in the next stage."
127+
128+
# Ubuntu Linux with glibc using clang++-3.7, no-debug mode
129+
- stage: Linter + Doxygen + non-debug builds
130+
os: linux
131+
sudo: false
132+
compiler: clang
133+
cache: ccache
134+
addons:
135+
apt:
136+
sources:
137+
- ubuntu-toolchain-r-test
138+
- llvm-toolchain-precise-3.7
139+
packages:
140+
- libwww-perl
141+
- clang-3.7
142+
- libstdc++-5-dev
143+
- libubsan0
144+
- parallel
145+
- libc6-dev-i386
146+
before_install:
147+
- mkdir bin ; ln -s /usr/bin/gcc-5 bin/gcc
148+
- export CCACHE_CPP2=yes
149+
# env: COMPILER=clang++-3.7 SAN_FLAGS="-fsanitize=undefined -fno-sanitize-recover=undefined,integer -fno-omit-frame-pointer"
150+
env:
151+
- COMPILER="ccache /usr/bin/clang++-3.7"
152+
- EXTRA_CXXFLAGS="-Qunused-arguments -fcolor-diagnostics -DNDEBUG"
153+
- CCACHE_CPP2=yes
154+
script: echo "Tests are run in the next stage."
155+
116156
# Ubuntu Linux with glibc using g++-5
117-
- stage: Test different OS/CXX/Flags
157+
- stage: Linter + Doxygen + non-debug builds
118158
os: linux
119159
sudo: false
120160
compiler: gcc
@@ -135,6 +175,24 @@ jobs:
135175
env:
136176
- COMPILER="ccache /usr/bin/g++-5"
137177
- EXTRA_CXXFLAGS="-D_GLIBCXX_DEBUG"
178+
script: echo "Tests are run in the next stage."
179+
180+
- stage: Linter + Doxygen + non-debug builds
181+
os: osx
182+
compiler: clang
183+
cache: ccache
184+
before_install:
185+
- HOMEBREW_NO_AUTO_UPDATE=1 brew install ccache
186+
- export PATH=$PATH:/usr/local/opt/ccache/libexec
187+
env:
188+
- BUILD_SYSTEM=cmake
189+
- CCACHE_CPP2=yes
190+
install:
191+
- ccache -z
192+
- ccache --max-size=1G
193+
- cmake -H. -Bbuild '-DCMAKE_BUILD_TYPE=Release' '-DCMAKE_OSX_ARCHITECTURES=x86_64'
194+
- cmake --build build -- -j4
195+
script: echo "Tests are run in the next stage."
138196

139197
# OS X using clang++
140198
- stage: Test different OS/CXX/Flags

0 commit comments

Comments
 (0)