-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path.travis.yml
142 lines (120 loc) · 4.18 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
135
136
137
138
139
140
141
142
sudo: false
branches:
except:
- gh-pages
language: cpp
compiler:
- gcc
- clang
install:
- if [ "$TRAVIS_OS_NAME" = "osx" ]; then brew update; fi
- if [ "$TRAVIS_OS_NAME" = "osx" ]; then brew install lcov; fi
# - if [ "$TRAVIS_OS_NAME" = "osx" ]; then brew cask uninstall oclint; fi
- if [ "$TRAVIS_OS_NAME" = "osx" ]; then brew install gcc6; fi
- if [ "$TRAVIS_OS_NAME" = "osx" ]; then xcode-select --install; fi
# - if [ "$TRAVIS_OS_NAME" = "osx" ]; then brew install --HEAD valgrind; fi
# Workaround for some faulty travis image
# https://github.com/travis-ci/travis-ci/issues/9640
# - if [ "$TRAVIS_OS_NAME" = "osx" ]; then softwareupdate -i "Command Line Tools (macOS High Sierra version 10.13) for Xcode-9.4.1" ; fi
before_script:
- if [ "$CXX" = "g++" ]; then
export CXXCOMP=g++-6 ; fi
- if [ "$CXX" = "clang++" ]; then
export CXXCOMP=clang++ ; fi
script:
- if [ "$TRAVIS_OS_NAME" = "osx" ] && [ "$CXX" = "clang++" ]; then
echo "Unsupported!" ; exit 1 ;
else
CXX=$CXXCOMP make debug ;
fi
- make test
- make clean
- if [ "$TRAVIS_OS_NAME" = "osx" ] && [ "$CXX" = "clang++" ]; then
echo "Unsupported!" ; exit 1 ;
else
CXX=$CXXCOMP make release ;
fi
- make test
- make clean
- if [ "$TRAVIS_OS_NAME" = "linux" ] && [ "$CXX" = "g++" ]; then
CXX=$CXXCOMP make coverage ; make test ;
fi
- if [ "$TRAVIS_OS_NAME" = "linux" ] && [ "$CXX" = "g++" ]; then
make doc ;
fi
after_success:
# Creating coverage report
- if [ "$TRAVIS_OS_NAME" = "linux" ] && [ "$CXX" = "g++" ]; then
lcov --directory build --capture --output-file coverage.info ; \
lcov --remove coverage.info '/usr/*' --output-file coverage.info ; \
lcov --list coverage.info ; \
bash <(curl -s https://codecov.io/bash) || echo "Codecov did not collect coverage reports" ; \
fi
addons:
# Missing packages {{{
apt:
sources:
- ubuntu-toolchain-r-test
packages:
- g++-6
- clang
- libstdc++-7-dev
- lcov
- valgrind
- doxygen
- graphviz
# }}}
# Coverity {{{
# # COVERITY TURNED OFF FOR NOW
# coverity_scan:
# # GitHub project metadata
# project:
# name: ondrik/libvata2
# version: 0.1
# description: "libvata2: an automata library"
#
# # Where email notification of build analysis results will be sent
# notification_email: [email protected]
#
# # Commands to prepare for build_command
# build_command_prepend: "cov-configure --comptype gcc --compiler g++-6 --template ; export CXX=$CXXCOMP"
#
# # The command that will be added as an argument to "cov-build" to compile your project for analysis,
# build_command: "make debug"
#
# # Pattern to match selecting branches that will run analysis.
# # branch_pattern: coverity_scan
# branch_pattern: "master"
# }}}
matrix:
exclude:
# clang on OSX not working ATM due to issues with brew downloading LLVM 5
- os: osx
compiler: clang
# Ubuntu distribution
dist: bionic
# Deployment of GitHub pages {{{
deploy:
provider: pages
skip-cleanup: true
github-token: $GITHUB_TOKEN
local_dir: doc
keep-history: true
target-branch: gh-pages
on:
branch: master
condition: $TRAVIS_OS_NAME = "linux" && $CXX = "g++"
# }}}
cache: ccache
os:
- linux
# - osx
osx_image: xcode11.2
# Environment {{{
env:
global:
# - GH_REPO_REF: github.com/ondrik/libvata2.git
# - MATRIX_EVAL="CC=gcc-6 && CXX=g++-6"
# COVERITY_SCAN_TOKEN
secure: "cxTPPBztxd/ItNqdp6vwDJgt7Qd1qbZMGlraLu9xi3A+CeQ5mga9C0HYwhDS/3AKUNepZ1Kn608f6Li5EtgSwaonUBgUhNGipuy4iqhKNuZnkhfpoVXgeGxXmzin4RStJ0ecNvREVAnvpDIYLIpG42bh7RT12b7jQO/q5YY0xxjcxov9Psdk4iED9t/GnyhuvfuAGMdPx++EV0OX2NJGF9p+nr74wyvE3QTGMMdeD5OyB1MKIvnTyM1HF0WHajIeGEUaJqxv5WCVKA2wBHXbIMwhYltRNPi1ZSWcwm2ggmkYnBxO8i4Cb9WEkNapOCH1iX+iWtcZxPFYljuBicJTL7/aidglCCLt6l8onfRvz5CQKaOzRCFwzHeeu6bLvUcx41EJpL1fju3tXOqSIg7uKSHb50zZp1Tp6CSoICR6/U+sg6732QR9HXqCMnOheosr2m+buC4X4lYxcAgK8C8i6A+rUan2qc40Nwh1hbvjByXGUGE2GHPyPjQwK1cgeWbCYKModKh147Yt7A4V4DCwkXA4SbrWOkSykhPDU6ACf85xSyHWG0b6/R8ElbBU0sHfVqwaneeAfMdZ1eUlKaNQbFyehsLKhJ/+auw1yrINsvBq/5vnN8IIj2hjVdT8qwotPJhT2HtOym65G2mvNXLbsYopV8ngMa2G/FvhudQSp3Q="
# }}}