This repository has been archived by the owner on Apr 28, 2022. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 5
/
Copy path.travis.yml
180 lines (150 loc) · 5.14 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
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
# OSX/Linux (https://github.com/travis-ci-tester/toolchain-table)
# Workaround for https://github.com/travis-ci/travis-ci/issues/8363
language:
- cpp
# Container-based infrastructure (Linux)
# * https://docs.travis-ci.com/user/migrating-from-legacy/#How-can-I-use-container-based-infrastructure%3F
sudo:
- false
# Install packages differs for container-based infrastructure
# * https://docs.travis-ci.com/user/migrating-from-legacy/#How-do-I-install-APT-sources-and-packages%3F
# List of available packages:
# * https://github.com/travis-ci/apt-package-whitelist/blob/master/ubuntu-trusty
# List of available sources:
# * https://github.com/travis-ci/apt-source-whitelist/blob/master/ubuntu.json
addons:
apt:
sources:
- ubuntu-toolchain-r-test
packages:
- enchant # for documentation
- python3-pip
- g++-7
dist:
- trusty
env:
global:
- secure: "g1g9MV4I7wS2YfUeOPi5Vhdh+ZA194rwTwFZCxyV5TgCRY+5UTNfqza5eFBc03+alXmGc5YHmvhCMgjlaIktR/ucVg1dJeLvxgJ1y3CxWctU5rE4jruF6pSO2HfFyggN/Z8cwWHAZ2Zj7yBjoXi/snKJrlVr5Moh4mlXyb7nEm3yAeQqtIFMnnHvWzJ7byCb6Kh0RN9e4w4LkV3VS3t71RrTRKQnGg8CPTs3WjN+MZM8ofXLZsYKWk6dUaVmckkha5MV9YLmwWD7pglWh6n/Um85Bn/kcZhmqSdFCPMG82y+Jrqe7Rj2XcDvllB1d4SFxsLaIyI1Rjk5siH6PmAxNDfmEZ5HuTxLpr9u5AGRPDjXebB1b5lAOQzU866a9Dbq4HvZMAP08L8y0AUOSX0Fdw2nx0QOSi0LQ6qqQvGXAAlG/HEf2m8LBAWINXV+pwXgYcYl87o9YTh2UpuDal5r+TtQ/QvJMAkHgx6RBggMhuLrwYbZK2VGMxAOlUldFTA8DrSFkJIz9MKo0Y4MiA2C4pToMUSu3yr6nO4gMFIQb09cENvgnnYOSS5LpxEF9eHBE5xAn9UdNQDK0KQyt99Ht834eaWUNDNHofa440CovZ6Q3alkHqPd+732ZByggvo54+nZGNMa8ugVLjFE2QA0XaiF2Bgd9w+Djd57Q8gH3y4="
matrix:
include:
# Linux {
- os: linux
env: >
TOOLCHAIN=clang-cxx17
CONFIG=Release
SHARED=ON
TEST="--test"
- os: linux
env: >
TOOLCHAIN=gcc-7-cxx17
CONFIG=Debug
SHARED=OFF
TEST="--test"
# Note: Do not use emulator - error "No space left on device"
- os: linux
env: >
TOOLCHAIN=android-ndk-r16b-api-24-arm64-v8a-clang-libcxx14
CONFIG=Release
SHARED=ON
TEST=""
USE_EMULATOR=OFF
# Note: Do not use emulator - error "No space left on device"
- os: linux
env: >
TOOLCHAIN=android-ndk-r16b-api-24-arm64-v8a-clang-libcxx14
CONFIG=Release
SHARED=OFF
TEST=""
USE_EMULATOR=OFF
- os: linux
env: >
TOOLCHAIN=android-ndk-r16b-api-16-armeabi-v7a-clang-libcxx14
CONFIG=Debug
SHARED=OFF
TEST="--test"
USE_EMULATOR=ON
# It's not possible to run x86 emulator on Travis:
# * https://stackoverflow.com/a/35107707
# => TEST="" and USE_EMULATOR=OFF
- os: linux
env: >
TOOLCHAIN=android-ndk-r16b-api-16-x86-clang-libcxx14
CONFIG=Debug
SHARED=OFF
TEST=""
USE_EMULATOR=OFF
- os: linux
env: >
TOOLCHAIN=android-ndk-r15c-api-16-mips-clang-libcxx
CONFIG=Debug
SHARED=OFF
TEST="--test"
USE_EMULATOR=ON
- os: linux
env: >
TOOLCHAIN=generate-documentation-test
CONFIG=Release
# }
# OSX {
- os: osx
osx_image: xcode9.3
env: >
TOOLCHAIN=osx-10-13-make-cxx14
CONFIG=Release
SHARED=ON
TEST="--test"
- os: osx
osx_image: xcode9.3
env: >
TOOLCHAIN=osx-10-13-cxx14
CONFIG=Debug
SHARED=OFF
TEST="--test"
- os: osx
osx_image: xcode9.3
env: >
TOOLCHAIN=ios-nocodesign-11-3-dep-9-3
CONFIG=Release
SHARED=OFF
TEST=""
# }
install:
# Info about OS
- uname -a
# Disable autoupdate
# * https://github.com/Homebrew/brew/blob/7d31a70373edae4d8e78d91a4cbc05324bebc3ba/Library/Homebrew/manpages/brew.1.md.erb#L202
- export HOMEBREW_NO_AUTO_UPDATE=1
# Install Python 3
- if [[ "`uname`" == "Darwin" ]]; then travis_retry brew upgrade python; fi
- if [[ "`uname`" == "Darwin" ]]; then travis_retry brew install python3; fi
# Install Python package 'requests'
# 'easy_install3' is not installed by 'brew install python3' on OS X 10.9 Maverick
- if [[ "`uname`" == "Darwin" ]]; then pip3 install requests; fi
- if [[ "`uname`" == "Linux" ]]; then travis_retry pip3 install --user requests; fi
# Install latest Polly toolchains and scripts
- wget https://github.com/ruslo/polly/archive/master.zip
- unzip master.zip
- POLLY_ROOT="`pwd`/polly-master"
- export PATH="${POLLY_ROOT}/bin:${PATH}"
# Install dependencies (CMake, Android NDK)
- install-ci-dependencies.py --prune-archives
# Tune locations
- export PATH="`pwd`/_ci/cmake/bin:${PATH}"
# Installed if toolchain is Android (otherwise directory doesn't exist)
- export ANDROID_NDK_r10e="`pwd`/_ci/android-ndk-r10e"
- export ANDROID_NDK_r11c="`pwd`/_ci/android-ndk-r11c"
- export ANDROID_NDK_r15c="`pwd`/_ci/android-ndk-r15c"
- export ANDROID_NDK_r16b="`pwd`/_ci/android-ndk-r16b"
script:
- >
if [[ "${TOOLCHAIN}" == "generate-documentation-test" ]];
then
cd docs
./jenkins.sh
else
./jenkins.sh
fi
# https://docs.travis-ci.com/user/customizing-the-build/#Whitelisting-or-blacklisting-branches
branches:
except:
- /^pr\..*/