forked from cucumber/cucumber-cpp
-
Notifications
You must be signed in to change notification settings - Fork 0
/
.travis.yml
78 lines (72 loc) · 2.29 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
group: deprecated-2017Q3
language: cpp
os: linux
sudo: required
dist: trusty
compiler:
- clang
- gcc
env:
global:
- DISPLAY=:99
matrix:
- GMOCK_VER=1.8.0
- GMOCK_VER=1.7.0
- GMOCK_PATH=/usr/src/gmock #1.6.0 from ubuntu trusty repo
matrix:
include:
- os: linux
compiler: gcc
env: GMOCK_VER=1.8.0 COVERALLS_SERVICE_NAME=travis-ci
- os: linux
compiler: gcc
env: GMOCK_VER=1.8.0 VALGRIND_TESTS=ON
- os: linux
env: FORMAT=1
- os: linux
env: GMOCK_VER=1.8.0 BUILD_SHARED_LIBS=OFF
- os: osx
compiler: clang
env: GMOCK_VER=1.8.0
- os: osx
compiler: clang
env: GMOCK_VER=1.7.0
addons:
apt:
packages:
- clang-format-3.8
- libboost-thread-dev
- libboost-system-dev
- libboost-regex-dev
- libboost-date-time-dev
- libboost-filesystem-dev
- libboost-program-options-dev
- libboost-test-dev
- google-mock
- ninja-build
- valgrind
- qtbase5-dev
- xvfb
install:
- if [[ "${TRAVIS_OS_NAME}" = "osx" ]]; then brew update && brew install ninja qt5; fi
- gem install bundler
- bundle install
- if [ -n "${COVERALLS_SERVICE_NAME}" ]; then gem install coveralls-lcov; fi
- if [ -n "${COVERALLS_SERVICE_NAME}" ]; then wget http://ftp.de.debian.org/debian/pool/main/l/lcov/lcov_1.13.orig.tar.gz && tar xf lcov_1.13.orig.tar.gz && make -C lcov-1.13 "PREFIX=${HOME}/.local" install && export PATH="${PATH}:${HOME}/.local/bin"; fi
# we have to build lcov on our own as version 1.10 in apt is incompatible with coveralls gem; It is not possible to install lcov from deb as it doesn't recognize installed perl package.
script: ./travis.sh
after_success:
- if [ -n "${COVERALLS_SERVICE_NAME}" ]; then
lcov --rc lcov_branch_coverage=1 --directory build --capture --output-file coverage.info &&
lcov --rc lcov_branch_coverage=1 --remove coverage.info
"${PWD}/3rdparty/*"
"${PWD}/build/*"
"${PWD}/examples/*"
"${PWD}/features/*"
"${PWD}/tests/*"
"/usr/*"
--output-file coverage.info &&
lcov --rc lcov_branch_coverage=1 --list coverage.info &&
coveralls-lcov coverage.info ;
fi
# default notifications: https://docs.travis-ci.com/user/notifications#Notifications