-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy path.travis.yml
92 lines (84 loc) · 3.38 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
language: cpp
branches:
only:
- master
sudo: false
install: &installCMake
- DEPS_DIR="${TRAVIS_BUILD_DIR}/deps"
- mkdir ${DEPS_DIR} && cd ${DEPS_DIR}
- |
CMAKE_URL="https://github.com/Kitware/CMake/releases/download/v3.17.0/cmake-3.17.0-Linux-x86_64.tar.gz"
mkdir cmake && travis_retry wget --no-check-certificate --quiet -O - ${CMAKE_URL} | tar --strip-components=1 -xz -C cmake
export PATH=${DEPS_DIR}/cmake/bin:${PATH}
- cd ..
matrix:
include:
- dist: xenial
compiler: clang
env: INSTALL_CXX=clang++-3.5
addons:
apt:
sources: ['ubuntu-toolchain-r-test', 'llvm-toolchain-precise-3.5', 'george-edison55-precise-backports']
packages: ['clang-3.5', 'lcov', 'cmake', 'cmake-data', 'doxygen']
<<: *installCMake
- dist: xenial
compiler: clang
env: INSTALL_CXX=clang++-3.6
addons:
apt:
sources: ['ubuntu-toolchain-r-test', 'llvm-toolchain-precise-3.6', 'george-edison55-precise-backports']
packages: ['clang-3.6', 'lcov', 'cmake', 'cmake-data', 'doxygen']
<<: *installCMake
- dist: xenial
compiler: gcc-5
env: INSTALL_CXX=g++-5 INSTALL_CC=gcc-5
addons:
apt:
sources: ['ubuntu-toolchain-r-test', 'george-edison55-precise-backports']
packages: ['g++-5', 'lcov', 'cmake', 'cmake-data', 'doxygen']
<<: *installCMake
- dist: xenial
compiler: gcc-9
env: INSTALL_CXX=g++-9 INSTALL_CC=gcc-9
addons:
apt:
sources: ['ubuntu-toolchain-r-test', 'george-edison55-precise-backports']
packages: ['g++-9', 'lcov', 'cmake', 'cmake-data', 'doxygen']
<<: *installCMake
- os: osx
osx_image: xcode10.1
compiler: clang
env: INSTALL_CXX=clang++ INSTALL_CC=clang
install:
- brew install doxygen
- DEPS_DIR="${TRAVIS_BUILD_DIR}/deps"
- mkdir ${DEPS_DIR} && cd ${DEPS_DIR}
- CMAKE_URL="https://github.com/Kitware/CMake/releases/download/v3.17.0/cmake-3.17.0-Darwin-x86_64.tar.gz"
- mkdir cmake && wget --no-check-certificate --quiet -O - ${CMAKE_URL} | tar --strip-components=1 -xz -C cmake
- export PATH=${DEPS_DIR}/cmake/CMake.app/Contents/bin:${PATH}
- cd ..
before_install:
- gem install coveralls-lcov
script:
- mkdir -p build
- cd build
- CC=$INSTALL_CC CXX=$INSTALL_CXX cmake ../ -DMeshIO_BUILD_COVERAGE:BOOL=ON -DMeshIO_BUILD_DOCS:BOOL=ON
- make -j4
- ctest --output-on-failure
after_success:
- if [ "$TRAVIS_OS_NAME" = "osx" ]; then
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" < /dev/null 2> /dev/null;
brew install lcov;
fi
- lcov --directory test --base-directory ../include/meshio/ --capture --no-external --output-file coverage.info
- genhtml coverage.info --output-directory ./docs/html/coverage
- lcov --remove coverage.info '/usr*' -o coverage.info
- coveralls-lcov coverage.info
deploy:
provider: pages
skip_cleanup: true
local_dir: ./build/docs/html
github_token: $GH_REPO_TOKEN
on:
branch: master
condition: $TRAVIS_OS_NAME = osx