-
Notifications
You must be signed in to change notification settings - Fork 0
/
.travis.yml
72 lines (68 loc) · 1.83 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
60
61
62
63
64
65
66
67
68
69
70
71
72
language: python
python: "3.7"
matrix:
include:
# clang-format/tidy specific job
- os: linux
sudo: false
env: CXX=clang++ CLANG_FORMAT CLANG_TIDY
addons:
apt:
sources: [ 'ubuntu-toolchain-r-test' ]
packages: [ 'clang', 'clang-format', 'clang-tidy', 'libstdc++-8-dev' ]
script:
- make tidy
# FIXME: Re-enable this when we are using a pinned clang-format instead
# of the system version
# - make format
# build with gcc
- os: linux
sudo: false
env: CXX=g++-9
addons:
apt:
sources: [ 'ubuntu-toolchain-r-test' ]
packages: [ 'g++-9' ]
# build with clang
- os: linux
sudo: false
env: CXX=clang++
addons:
apt:
sources: [ 'ubuntu-toolchain-r-test' ]
packages: [ 'clang', 'libstdc++-8-dev' ]
# build with sanitizer checks under clang
- os: linux
sudo: required # workaround https://github.com/mapbox/node-cpp-skel/issues/93
env: CXX=clang++ CXXFLAGS="-fsanitize=address,undefined -fno-sanitize-recover=all"
addons:
apt:
sources: [ 'ubuntu-toolchain-r-test' ]
packages: [ 'clang', 'libstdc++-8-dev' ]
# coverage build
- os: linux
sudo: false
env: CXX=clang++ CXXFLAGS="--coverage" LDFLAGS="--coverage"
addons:
apt:
sources: [ 'ubuntu-toolchain-r-test' ]
packages: [ 'clang', 'llvm', 'libstdc++-8-dev' ]
script:
- make debug
- make test
- curl -S -f https://codecov.io/bash -o codecov
- chmod +x codecov
- ./codecov -x "llvm-cov gcov -l" -Z
env:
global:
- CMAKE_VERSION="3.15.2"
install:
- pip install conan
- which cmake
script:
- make release
- make test
- make clean
- make debug
- make test
- make clean