-
Notifications
You must be signed in to change notification settings - Fork 1
/
.travis.yml
61 lines (48 loc) · 1.68 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
dist: bionic
sudo: required # используем Virtual Machine (а не Docker container)
language: cpp # на практике разницы между специфичным для C++ окружением
# и, скажем, python -- никакой. Но пусть будет cpp.
os:
# будем прогонять CI и на Linux, и на Mac OS X...
- linux
- osx
arch:
- amd64
- arm64
compiler:
# ... и с помощью GCC, и Clang
- gcc
- clang
env:
# список переменных окружения, влияющих на матрицу сборки:
- TARGET_CPU=x86_64 BUILD_CONFIGURATION=Debug
- TARGET_CPU=x86_64 BUILD_CONFIGURATION=Release
- TARGET_CPU=x86 BUILD_CONFIGURATION=Debug
- TARGET_CPU=x86 BUILD_CONFIGURATION=Release
matrix:
exclude:
# вручную исключим ненужные элементы из матрицы сборки:
- os: osx
compiler: gcc
- os: osx
env: TARGET_CPU=x86 BUILD_CONFIGURATION=Debug
- os: osx
env: TARGET_CPU=x86 BUILD_CONFIGURATION=Release
- os: osx
arch: arm64
- os: linux
arch: arm64
env: TARGET_CPU=x86 BUILD_CONFIGURATION=Release
- os: linux
arch: arm64
env: TARGET_CPU=x86 BUILD_CONFIGURATION=Debug
install:
# скрипт настройки среды и установки зависимостей:
- source ci/travis/install-$TRAVIS_OS_NAME.sh
script:
# скрипт сборки и тестирования проекта:
- mkdir build
- cd build
- cmake .. -DCMAKE_BUILD_TYPE=$BUILD_CONFIGURATION -DTARGET_CPU=$TARGET_CPU
- cmake --build .
- cmake --build . --target examples