-
Notifications
You must be signed in to change notification settings - Fork 17
/
.travis.yml
59 lines (51 loc) · 1.44 KB
/
.travis.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
language: c
cache: ccache
os: linux
dist: xenial
env:
global:
- CMAKE_BUILD_TYPE=Release # use release build
- CMAKE_GENERATOR=Ninja # build with ninja instead of make
- CTEST_PARALLEL_LEVEL=2 # run tests in parallel
- PATH="/snap/bin:$PATH" # needed in order to run the cmake installed with snap
addons:
apt:
packages:
- ninja-build
- git
- colordiff
snaps:
- name: cmake
confinement: classic
# configuration (running cmake) is in before_script
# if this phase fails, the build stops immediately
before_script:
- mkdir build && cd build
- cmake .. -DBUILD_SHARED_LIBS=ON -DUSE_SANITIZER=Address\;Undefined
# building and testing is in script
# use && to ensure that ctest is not run if the build failed
script:
- cmake --build . && ctest --output-on-failure
jobs:
include:
- name: "Linux arm64"
os: linux
arch: arm64-graviton2 # faster than arm64
- name: "Linux ppc64"
os: linux
arch: ppc64le
# Do not enable ASAN; segfaults on this platform with an empty stack.
before_script:
- mkdir build && cd build
- cmake .. -DBUILD_SHARED_LIBS=ON
- name: "Linux s390x"
os: linux
arch: s390x
# Do not enable ASAN; not supported on this platform.
before_script:
- mkdir build && cd build
- cmake .. -DBUILD_SHARED_LIBS=ON
notifications:
email:
on_success: change
on_failure: always