-
Notifications
You must be signed in to change notification settings - Fork 4
/
.travis.yml
130 lines (124 loc) · 3.78 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
language: cpp
sudo: required
git:
submodules: true
os:
- linux
- osx
compiler:
- gcc
- clang
addons:
apt:
sources:
- ubuntu-toolchain-r-test
- llvm-toolchain-trusty
- mono-nightly
packages:
- mesa-utils-extra
- libgles1-mesa
- libgles2-mesa-dev
- g++-5
- clang-3.9
- libc++-dev
- libc6-dev-i386
- mono-devel
- doxygen
before_install:
# Update the CMake version to 3.9 (no sudo)
- cd $HOME
- CMAKE_DOWNLOAD_TARGET="cmake-3.9.0-Linux-x86_64"
- if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then CMAKE_DOWNLOAD_TARGET="cmake-3.9.0-Darwin-x86_64"; fi
- wget -O cmake-3.9.0.tar.gz https://cmake.org/files/v3.9/${CMAKE_DOWNLOAD_TARGET}.tar.gz
- tar xf cmake-3.9.0.tar.gz
- cd ${CMAKE_DOWNLOAD_TARGET}/
- export CMAKE_ROOT=${PWD}/share/cmake-3.9
- export PATH=${PWD}/bin:$PATH
# Upgrade g++ if we are on Linux
- if [[ "$TRAVIS_OS_NAME" == "linux" ]] && [[ "$CXX" == "g++" ]]; then CC=gcc-5 && CXX=g++-5; fi
before_script:
- cd $TRAVIS_BUILD_DIR
- mkdir build
- cd build
- cmake --version
script:
- cmake ..
- make
matrix:
allow_failures:
- os: osx
# I can't get Android to work
- env: CONFIG=Android
# Emscripten with Mono its a lot of work ahead :/
- env: CONFIG=Emscripten
include:
- env: CONFIG=Android
language: generic
compiler: clang
install:
# Download the NDK Tools
- wget -O android-ndk-tools.zip https://dl.google.com/android/repository/android-ndk-r15b-linux-x86_64.zip
- unzip -q android-ndk-tools.zip -d $HOME
- export ANDROID_NDK_HOME=$HOME/android-ndk-r15b
script:
- cmake -DCMAKE_TOOLCHAIN_FILE=$HOME/android-ndk-r15b/build/cmake/android.toolchain.cmake -DANDROID_ABI=armeabi-v7a -DANDROID_PLATFORM=android-21 ..
- make
- env: CONFIG=Emscripten
language: generic
compiler: clang
install:
- cd $HOME
# Download the Emscripten SDK
- wget https://s3.amazonaws.com/mozilla-games/emscripten/releases/emsdk-portable.tar.gz
- tar xf emsdk-portable.tar.gz
- cd emsdk-portable
- ./emsdk update
- ./emsdk install latest
- ./emsdk activate latest
- source ./emsdk_env.sh
# Download libstdc++
- mkdir libstdc++
- cd libstdc++/
- wget http://ppa.launchpad.net/ubuntu-toolchain-r/test/ubuntu/pool/main/g/gcc-5/libstdc++6_5.1.0-0ubuntu11~10.04.2_amd64.deb
- ar xv libstdc++6_5.1.0-0ubuntu11~10.04.2_amd64.deb
- tar xf data.tar.gz
- cd usr/lib/
- export LD_LIBRARY_PATH=${PWD}
script:
- cmake -DCMAKE_TOOLCHAIN_FILE=$EMSCRIPTEN/cmake/Modules/Platform/Emscripten.cmake ..
- make
- env: CONFIG=Docs
branches:
only:
- master
language: python
python: 3.6
addons:
apt:
sources:
- ubuntu-toolchain-r-test
- llvm-toolchain-trusty
- mono-nightly
packages:
- doxygen
- texlive-base
- texlive-latex-extra
- texlive-fonts-extra
- texlive-fonts-recommended
before_install:
install:
- pip3 install jinja2 Pygments
- cd $HOME
- git clone git://github.com/mosra/m.css
before_script:
script:
- cd $HOME/m.css/documentation
- ./doxygen.py $TRAVIS_BUILD_DIR/Docs/Doxyfile
# copy images directly to the output
- cp -a $TRAVIS_BUILD_DIR/Docs/img/. $TRAVIS_BUILD_DIR/Docs/output/html/
before_deploy:
- npm install netlify-cli -g
deploy:
provider: script
script: netlify deploy --site $NETLIFY_SITE_ID --auth $NETLIFY_ACCESS_TOKEN --dir $TRAVIS_BUILD_DIR/Docs/output/html/ --prod
skip_cleanup: true