forked from nfrechette/acl
-
Notifications
You must be signed in to change notification settings - Fork 0
/
.travis.yml
96 lines (78 loc) · 4.36 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
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
os: linux
dist: xenial
language: cpp
jobs:
include:
# Linux gcc5
- env: COMPILER=gcc5 TOOLCHAIN=gcc PACKAGES="g++-5 g++-5-multilib g++-multilib"
# Linux gcc6
- env: COMPILER=gcc6 TOOLCHAIN=gcc PACKAGES="g++-6 g++-6-multilib g++-multilib"
# Linux gcc7
- env: COMPILER=gcc7 TOOLCHAIN=gcc PACKAGES="g++-7 g++-7-multilib g++-multilib"
# Linux gcc8
- env: COMPILER=gcc8 TOOLCHAIN=gcc PACKAGES="g++-8 g++-8-multilib g++-multilib"
# Linux gcc9
- env: COMPILER=gcc9 TOOLCHAIN=gcc PACKAGES="g++-9 g++-9-multilib g++-multilib"
# Linux clang4
- env: COMPILER=clang4 TOOLCHAIN=clang PACKAGES="clang-4.0 libstdc++-5-dev libc6-dev-i386 g++-5-multilib g++-multilib"
# Linux clang5
- env: COMPILER=clang5 TOOLCHAIN=clang SONARCLOUD=1 PACKAGES="clang-5.0 libstdc++-5-dev libc6-dev-i386 g++-5-multilib g++-multilib"
addons:
sonarcloud:
organization: "nfrechette-github"
# Linux clang6
- env: COMPILER=clang6 TOOLCHAIN=clang PACKAGES="clang-6.0 libstdc++-5-dev libc6-dev-i386 g++-5-multilib g++-multilib"
# Linux clang7
- env: COMPILER=clang7 TOOLCHAIN=clang PACKAGES="clang-7 libstdc++-5-dev libc6-dev-i386 g++-5-multilib g++-multilib"
# Linux clang8
- env: COMPILER=clang8 TOOLCHAIN=clang PACKAGES="clang-8 libstdc++-5-dev libc6-dev-i386 g++-5-multilib g++-multilib"
# Linux clang9
- env: COMPILER=clang9 TOOLCHAIN=clang PACKAGES="clang-9 libstdc++-5-dev libc6-dev-i386 g++-5-multilib g++-multilib"
# OS X xcode8
- os: osx
osx_image: xcode8.3
env: COMPILER=osx TOOLCHAIN=xcode
# OS X xcode9
- os: osx
osx_image: xcode9.4
env: COMPILER=osx TOOLCHAIN=xcode
# OS X xcode10
- os: osx
osx_image: xcode10.3
env: COMPILER=osx TOOLCHAIN=xcode
# OS X xcode11
- os: osx
osx_image: xcode11.2
env: COMPILER=osx TOOLCHAIN=xcode NOX86=1
before_install:
- if [[ "$TOOLCHAIN" == "clang" ]]; then curl -sSL "http://apt.llvm.org/llvm-snapshot.gpg.key" | sudo -E apt-key add - ; fi
- if [[ "$COMPILER" == "clang4" ]]; then echo "deb http://apt.llvm.org/xenial/ llvm-toolchain-xenial-4.0 main" | sudo tee -a /etc/apt/sources.list > /dev/null ; fi
- if [[ "$COMPILER" == "clang5" ]]; then echo "deb http://apt.llvm.org/xenial/ llvm-toolchain-xenial-5.0 main" | sudo tee -a /etc/apt/sources.list > /dev/null ; fi
- if [[ "$COMPILER" == "clang6" ]]; then echo "deb http://apt.llvm.org/xenial/ llvm-toolchain-xenial-6.0 main" | sudo tee -a /etc/apt/sources.list > /dev/null ; fi
- if [[ "$COMPILER" == "clang7" ]]; then echo "deb http://apt.llvm.org/xenial/ llvm-toolchain-xenial-7 main" | sudo tee -a /etc/apt/sources.list > /dev/null ; fi
- if [[ "$COMPILER" == "clang8" ]]; then echo "deb http://apt.llvm.org/xenial/ llvm-toolchain-xenial-8 main" | sudo tee -a /etc/apt/sources.list > /dev/null ; fi
- if [[ "$COMPILER" == "clang9" ]]; then echo "deb http://apt.llvm.org/xenial/ llvm-toolchain-xenial-9 main" | sudo tee -a /etc/apt/sources.list > /dev/null ; fi
- 'if [[ "$TRAVIS_OS_NAME" == "linux" ]]; then
sudo -E apt-add-repository -y "ppa:ubuntu-toolchain-r/test";
sudo -E apt-get -yq update;
sudo -E apt-get -yq --no-install-suggests --no-install-recommends --force-yes install ${PACKAGES};
fi'
script:
- 'if [[ "$NOX86" != "1" ]]; then
python make.py -clean -build -unit_test -compiler ${COMPILER} -config Debug -cpu x86;
python make.py -clean -build -unit_test -compiler ${COMPILER} -config Release -cpu x86;
fi'
- python make.py -clean -build -unit_test -compiler ${COMPILER} -config Debug -cpu x64
- python make.py -clean -build -unit_test -compiler ${COMPILER} -config Release -cpu x64
- python make.py -clean -build -unit_test -compiler ${COMPILER} -config Release -cpu x64 -nosimd
- 'if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then
python make.py -clean -build -compiler ios -config Debug;
python make.py -clean -build -compiler ios -config Release;
python make.py -clean -build -compiler ios -config Release -nosimd;
fi'
# Only run sonarcloud on non-PRs
- 'if [[ "$SONARCLOUD" == "1" && "$TRAVIS_PULL_REQUEST" == "false" ]]; then
python make.py -clean -compiler ${COMPILER} -config Release -cpu x64;
build-wrapper-linux-x86-64 --out-dir bw_output python make.py -build -compiler ${COMPILER} -config Release -cpu x64;
sonar-scanner;
fi'