-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy path.travis.yml
103 lines (90 loc) · 3.1 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
language: c++
addons:
apt:
sources:
- ubuntu-toolchain-r-test
packages:
- ccache
- ninja-build
- g++-5
- gcc-5
- g++-6
- gcc-6
- curl
env:
# Workaround for https://github.com/travis-ci/travis-ci/issues/4681
matrix:
- TRAVIS_EMPTY_JOB_WORKAROUND=true
matrix:
exclude:
- env: TRAVIS_EMPTY_JOB_WORKAROUND=true
include:
# LINUX
# GCC 5
- os: linux
env: COMPILER=g++-5 CCOMPILER=gcc-5 GCOV="" MAKE_DOC=false
compiler: gcc
# GCC 6
- os: linux
env: COMPILER=g++-6 CCOMPILER=gcc-6 GCOV=gcov-6 MAKE_DOC=true
compiler: gcc
# OSX
# Xcode 9.4
- os: osx
env: COMPUTE_COVERAGE=false
osx_image: xcode9.4
# Xcode 10.1
- os: osx
env: COMPUTE_COVERAGE=false
osx_image: xcode10.1
install:
############################################################################
# All the dependencies are installed in ${TRAVIS_BUILD_DIR}/deps/
############################################################################
- DEPS_DIR="${TRAVIS_BUILD_DIR}/deps"
- mkdir -p ${DEPS_DIR} && cd ${DEPS_DIR}
############################################################################
# Override compiler if needed
############################################################################
- if [[ "${COMPILER}" != "" ]]; then export CXX=${COMPILER}; export CC=${CCOMPILER}; fi
############################################################################
# For linux get docker image
############################################################################
- |
if [[ "${TRAVIS_OS_NAME}" == "linux" ]]; then
sudo apt install docker.io
docker pull lubkoll/spacy-ci:base
fi
############################################################################
# Install Eigen
############################################################################
- cd $DEPS
- git clone https://github.com/eigenteam/eigen-git-mirror.git
- cd eigen-git-mirror && mkdir build && cd build && cmake .. && sudo make install
############################################################################
# For osx do the setup in travis
############################################################################
- |
if [[ "${TRAVIS_OS_NAME}" == "osx" ]]; then
############################################################################
# Install gtest
############################################################################
cd ${DEPS_DIR}
git clone https://github.com/google/googletest.git && cd googletest
mkdir -p build && cd build
cmake -DCMAKE_CXX_FLAGS="${CXXFLAGS} -std=c++11" ..
cmake --build .
sudo make install
fi
script:
- cd $TRAVIS_BUILD_DIR
- |
if [[ "${TRAVIS_OS_NAME}" == "linux" ]]; then
SHARED=/home/shared
docker run --rm -ti -v ${TRAVIS_BUILD_DIR}:${SHARED} lubkoll/spacy-ci:base ${SHARED}/run_in_docker.sh ${CCOMPILER} ${COMPILER} ${GCOV} ${COVERALLS_TOKEN} ${MAKE_DOC}
else
mkdir build && cd build
cmake -DBuildTest=ON ..
cmake --build .
cd Test && ctest
fi