forked from hunter-packages/gate
-
Notifications
You must be signed in to change notification settings - Fork 9
/
.travis.yml
123 lines (101 loc) · 3.54 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
# OSX/Linux (https://github.com/travis-ci-tester/toolchain-table)
# Workaround for https://github.com/travis-ci/travis-ci/issues/8363
language:
- minimal
# 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
addons:
apt:
packages:
- python3-pip
dist:
- trusty
matrix:
include:
# Linux {
- os: linux
env: CONFIG=Release TOOLCHAIN=default
- os: linux
env: CONFIG=Debug TOOLCHAIN=default
- os: linux
env: CONFIG=Release TOOLCHAIN=clang-libstdcxx
- os: linux
env: CONFIG=Debug TOOLCHAIN=clang-libstdcxx
- os: linux
env: CONFIG=Release TOOLCHAIN=gcc
- os: linux
env: CONFIG=Debug TOOLCHAIN=gcc
- os: linux
env: CONFIG=Release TOOLCHAIN=android-ndk-r10e-api-19-armeabi-v7a-neon
- os: linux
env: CONFIG=Debug TOOLCHAIN=android-ndk-r10e-api-19-armeabi-v7a-neon
- os: linux
env: CONFIG=Release TOOLCHAIN=analyze
- os: linux
env: CONFIG=Debug TOOLCHAIN=analyze
- os: linux
env: CONFIG=Release TOOLCHAIN=sanitize-address
- os: linux
env: CONFIG=Debug TOOLCHAIN=sanitize-address
- os: linux
env: CONFIG=Release TOOLCHAIN=sanitize-leak
- os: linux
env: CONFIG=Debug TOOLCHAIN=sanitize-leak
# FIXME: https://github.com/ruslo/hunter/issues/718#issuecomment-290610583
# - os: linux
# env: CONFIG=Release TOOLCHAIN=sanitize-thread
# - os: linux
# env: CONFIG=Debug TOOLCHAIN=sanitize-thread
# }
# OSX {
- os: osx
osx_image: xcode9.4
env: CONFIG=Release TOOLCHAIN=libcxx
- os: osx
osx_image: xcode9.4
env: CONFIG=Debug TOOLCHAIN=libcxx
- os: osx
osx_image: xcode9.4
env: CONFIG=Release TOOLCHAIN=osx-10-13-cxx14
- os: osx
osx_image: xcode9.4
env: CONFIG=Debug TOOLCHAIN=osx-10-13-cxx14
- os: osx
osx_image: xcode9.4
env: CONFIG=Release TOOLCHAIN=ios-nocodesign-11-4-dep-9-3
- os: osx
osx_image: xcode9.4
env: CONFIG=Debug TOOLCHAIN=ios-nocodesign-11-4-dep-9-3
# }
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 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
# 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"
script:
# download all
- polly.py --toolchain ${TOOLCHAIN} --config ${CONFIG} --verbose
# if run generate again, no download needed
- polly.py --toolchain ${TOOLCHAIN} --config ${CONFIG} --verbose