forked from crawl/crawl
-
Notifications
You must be signed in to change notification settings - Fork 20
/
.travis.yml
124 lines (120 loc) · 3.92 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
language: cpp
dist: xenial
compiler:
- gcc
- clang
cache: ccache
sudo: required
addons:
apt:
update: true
retries: true
packages: &basic_deps
- xorg-dev
- python3-yaml
- liblua5.1-0-dev # strictly speaking, only BUILD_ALL builds
- liblua5.1-0-dbg
- gdb
env:
global:
- CCACHE_CPP2=yes
matrix: # anything here is fully crossed with compilers, uses *basic_deps
- NOTHING=1
- FULLDEBUG=1
- WEBTILES=1 FULLDEBUG=1
git:
submodules: false
# the rest of the build matrix, specifying each combo directly. Anything
# without explicit addons here will uses *basic_deps above, and any addons list
# overrides the global one.
matrix:
include:
# lint-type checks
- env: CHECKWHITE=1
addons: {apt: {packages: [] }}
- env: UNBRACE=1
addons: {apt: {packages: [] }}
# the rest of the actual builds.
- compiler: gcc
env: WEBTILES=1
- compiler: gcc
env: WEBTILES=1 BUILD_ALL=1
- compiler: gcc
env: TILES=1
addons:
apt:
packages:
- *basic_deps
- &sdl_deps [libegl1-mesa-dev, libgles2-mesa-dev, libsdl2-dev, libsdl2-image-dev, libsdl2-mixer-dev]
- compiler: clang
env: TILES=1
addons:
apt:
packages:
- *basic_deps
- *sdl_deps
- compiler: gcc
env: TILES=1 FULLDEBUG=1
addons:
apt:
packages:
- *basic_deps
- *sdl_deps
- compiler: clang
env: TILES=1 FULLDEBUG=1
addons:
apt:
packages:
- *basic_deps
- *sdl_deps
- compiler: gcc
env: TILES=1 BUILD_ALL=1
addons:
apt:
packages:
- *basic_deps
- &sdl_buildall_deps [libegl1-mesa-dev, mesa-common-dev, libglu1-mesa-dev, libasound2-dev, libxss-dev]
- compiler: clang
env: TILES=1 BUILD_ALL=1
addons:
apt:
packages:
- *basic_deps
- *sdl_buildall_deps
- env: CROSSCOMPILE=1
addons:
apt:
packages:
- mingw-w64
- binutils-mingw-w64
- g++-mingw-w64-i686
- gcc-mingw-w64-i686
- nsis
- *sdl_buildall_deps
- compiler: gcc
env: USE_DGAMELAUNCH=1 EXTERNAL_DEFINES=-UTOURNEY
- compiler: gcc
env: USE_DGAMELAUNCH=1 WEBTILES=1 EXTERNAL_DEFINES=-UTOURNEY
before_install:
- if [ "$TRAVIS_OS_NAME" == "linux" ]; then if [ "$CC" == "clang" ]; then sudo ln -s `which ccache` /usr/lib/ccache/clang; fi; fi
- if [ "$TRAVIS_OS_NAME" == "linux" ]; then if [ "$CXX" == "clang++" ]; then sudo ln -s `which ccache` /usr/lib/ccache/clang++; fi; fi
install: perl .travis/deps.pl
script: perl .travis/build.pl
notifications:
email:
on_success: change
on_failure: always
# recipients:
# - crawl-ref-commits@lists.sourceforge.net
# the IRC channel name (chat.freenode.net##crawl-dev) is encrypted so that
# forks won't spam ##crawl-dev.
# See: https://github.com/travis-ci/travis-ci/issues/1094
# and https://docs.travis-ci.com/user/encryption-keys/
irc:
channels:
- secure: "bZx+ynE2xu+XAuMDSxMfk9WrWpGuetYmJ7bYZfyEePCo2RZNMla1ehFof/srnFuC+KyK6E2gNpUsU4HAyySb7n20AdZxcXFaHQmQvnSU6pUEyLRifgBy7Rsn6DbI3mrsEDhiOECFIxYj2f63nsO5dkRJBQLYQwf/czAQH/0aylw="
on_success: change
on_failure: always
use_notice: true
template:
- "%{message} (%{branch} - %{commit} #%{build_number} : %{author}): %{build_url}"