forked from stepmania/stepmania
-
Notifications
You must be signed in to change notification settings - Fork 0
/
.travis.yml
135 lines (126 loc) · 5.97 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
language: cpp
sudo: false
git:
submodules: false
notifications:
email: false
irc: "chat.freenode.net#stepmania"
matrix:
include:
#-
# env: CXX_COMPILER=clang++-3.6 CC_COMPILER=clang-3.6 BUILD_TYPE=Release WITH_FFMPEG=OFF WITH_FFMPEG_JOBS=1
# compiler: clang
# addons: &clang36
# apt:
# sources:
# - ubuntu-toolchain-r-test
# - llvm-toolchain-precise-3.6
# packages:
# - nasm
# - libudev-dev
# - clang-3.6
# - libmad0-dev
# - libgtk2.0-dev
# - binutils-dev
# - libasound-dev
# - libpulse-dev
# - libjack-dev
# - libc6-dev
# - libogg-dev
# - libvorbis-dev
# - libxtst-dev
# - libxrandr-dev
# - libglew-dev
#-
# env: CXX_COMPILER=clang++-3.6 CC_COMPILER=clang-3.6 BUILD_TYPE=Release WITH_FFMPEG=ON WITH_FFMPEG_JOBS=1
# compiler: clang
# addons: *clang36
-
env: CXX_COMPILER=g++-5 CC_COMPILER=gcc-5 BUILD_TYPE=Release WITH_FFMPEG=OFF WITH_FFMPEG_JOBS=1
compiler: gcc
addons: &gcc5
apt:
sources:
- ubuntu-toolchain-r-test
packages:
- nasm
- libudev-dev
- gcc-5
- g++-5
- libmad0-dev
- libgtk2.0-dev
- binutils-dev
- libasound-dev
- libpulse-dev
- libjack-dev
- libc6-dev
- libogg-dev
- libvorbis-dev
- libxtst-dev
- libxrandr-dev
- libglew-dev
-
env: CXX_COMPILER=g++-4.9 CC_COMPILER=gcc-4.9 BUILD_TYPE=Release WITH_FFMPEG=OFF
compiler: gcc
addons: &gcc49
apt:
sources:
- ubuntu-toolchain-r-test
packages:
- nasm
- libudev-dev
- gcc-4.9
- g++-4.9
- libmad0-dev
- libgtk2.0-dev
- binutils-dev
- libasound-dev
- libpulse-dev
- libjack-dev
- libc6-dev
- libogg-dev
- libvorbis-dev
- libxtst-dev
- libxrandr-dev
- libglew-dev
before_install:
# Set up valid submodules.
- git submodule init
- git submodule update extern/cppformat
- git submodule update extern/tommath
- git submodule update extern/tomcrypt
- if [[ "${CXX_COMPILER}" != "g++-4.9" ]]; then git submodule update extern/googletest; fi
- if [[ "${WITH_FFMPEG}" == "ON" ]]; then git submodule update extern/ffmpeg-git; fi
install:
# Setup a directory for necessary dependencies.
- cd ~
- export DEPS_DIR="${PWD}/deps"
- mkdir ${DEPS_DIR}
- cd ${DEPS_DIR}
# Use the binary for cmake instead of building it now.
- export CMAKE_URL=https://cmake.org/files/v3.3/cmake-3.3.2-Linux-x86_64.tar.gz
- mkdir cmake
- wget --no-check-certificate --quiet -O - ${CMAKE_URL} | tar --strip-components=1 -xz -C cmake
- export PATH=${PWD}/cmake/bin:${PATH}
# If using clang, set up libc++ and libc++abi.
- if [[ "${CXX_COMPILER}" == "clang++-3.6" ]]; then export LLVM_URL="http://llvm.org/releases/3.6.1/llvm-3.6.1.src.tar.xz"; fi
- if [[ "${CXX_COMPILER}" == "clang++-3.6" ]]; then export LIBCXX_URL="http://llvm.org/releases/3.6.1/libcxx-3.6.1.src.tar.xz"; fi
- if [[ "${CXX_COMPILER}" == "clang++-3.6" ]]; then export LIBCXXABI_URL="http://llvm.org/releases/3.6.1/libcxxabi-3.6.1.src.tar.xz"; fi
- if [[ "${CXX_COMPILER}" == "clang++-3.6" ]]; then export TAR_FMT="-xJ"; fi
- if [[ "${CXX_COMPILER}" == "clang++-3.6" ]]; then mkdir -p llvm llvm/build llvm/projects/libcxx llvm/projects/libcxxabi; fi
- if [[ "${CXX_COMPILER}" == "clang++-3.6" ]]; then wget --quiet -O - ${LLVM_URL} | tar --strip-components=1 ${TAR_FMT} -C llvm; fi
- if [[ "${CXX_COMPILER}" == "clang++-3.6" ]]; then wget --quiet -O - ${LIBCXX_URL} | tar --strip-components=1 ${TAR_FMT} -C llvm/projects/libcxx; fi
- if [[ "${CXX_COMPILER}" == "clang++-3.6" ]]; then wget --quiet -O - ${LIBCXXABI_URL} | tar --strip-components=1 ${TAR_FMT} -C llvm/projects/libcxxabi; fi
- if [[ "${CXX_COMPILER}" == "clang++-3.6" ]]; then cd llvm/build; fi
- if [[ "${CXX_COMPILER}" == "clang++-3.6" ]]; then cmake .. -DCMAKE_CXX_COMPILER=clang++ -DCMAKE_C_COMPILER=clang; fi
- if [[ "${CXX_COMPILER}" == "clang++-3.6" ]]; then make cxx -j2; fi
- if [[ "${CXX_COMPILER}" == "clang++-3.6" ]]; then cd ../..; fi
before_script:
- cd ${TRAVIS_BUILD_DIR}
- if [[ "${CXX_COMPILER}" == "clang++-3.6" ]]; then export CXXFLAGS="-I${DEPS_DIR}/llvm/build/include/c++/v1 -I${DEPS_DIR}/llvm/projects/libcxx/include -I${DEPS_DIR}/llvm/projects/libcxxabi/include"; fi
- if [[ "${CXX_COMPILER}" == "clang++-3.6" ]]; then export LDFLAGS="-L ${DEPS_DIR}/llvm/build/lib -l c++ -l c++abi"; fi
- if [[ "${CXX_COMPILER}" == "clang++-3.6" ]]; then export LD_LIBRARY_PATH="${LD_LIBRARY_PATH}:${DEPS_DIR}/llvm/build/lib"; fi
- cd Build
- cmake .. -DCMAKE_CXX_COMPILER=${CXX_COMPILER} -DCMAKE_C_COMPILER=${CC_COMPILER} -DCMAKE_BUILD_TYPE=${BUILD_TYPE} -DWITH_FFMPEG=${WITH_FFMPEG} -DWITH_FFMPEG_JOBS=${WITH_FFMPEG_JOBS}
script:
- make -j2