This repository has been archived by the owner on Jan 24, 2023. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 5
/
Copy path.travis.yml
56 lines (52 loc) · 1.84 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
language: cpp
dist: bionic
sudo: require
notifications:
email: false
matrix:
include:
- name: x86_64-linux-gcc-coverage
os: linux
compiler: gcc
addons:
apt:
sources: ['ubuntu-toolchain-r-test']
packages: ['g++-10']
env:
- MATRIX_EVAL="CC=gcc-10 && CXX=g++-10 LDFLAGS=-lstdc++fs"
- GCOV_BINARY=/usr/bin/gcov-10
- COVERAGE=yes
- CMAKE="cmake"
- CMAKE_BUILD_TYPE=Debug
- CMAKE_PREFIX_PATH="$HOME/.local/usr/local" # gcov location
install:
- sudo apt-get -y install libperlio-gzip-perl libconfig-json-perl
- wget https://github.com/linux-test-project/lcov/archive/master.zip -O lcov.zip
- unzip lcov.zip
- make -C lcov-master install DESTDIR=$HOME/.local
- cp $GCOV_BINARY $HOME/.local/usr/local/bin/gcov
after_success:
- bash <(curl -s https://codecov.io/bash)
before_install:
- eval "${MATRIX_EVAL}"
# Install GoogleTest.
- GTEST_VERSION=1.10.0
- GTEST_ARCHIVE_PATH=$HOME/gtest.tar.gz
- GTEST_BIN_PATH=$HOME/gtest
- wget https://github.com/google/googletest/archive/release-$GTEST_VERSION.tar.gz -O $GTEST_ARCHIVE_PATH
- mkdir $GTEST_BIN_PATH
- tar xf $GTEST_ARCHIVE_PATH --strip-components=1 -C $GTEST_BIN_PATH
- (cd $GTEST_BIN_PATH/googletest && cmake -DBUILD_SHARED_LIBS=ON . && cmake --build .)
- sudo cp -a $GTEST_BIN_PATH/googletest/include/gtest /usr/include
- sudo cp -a $GTEST_BIN_PATH/googletest/lib/libgtest_main.so /usr/lib/
- sudo cp -a $GTEST_BIN_PATH/googletest/lib/libgtest.so /usr/lib/
script:
- $CXX --version
- cmake --version
- export VERBOSE=yes
- |
$CMAKE . -DBUILD_TESTING=yes \
-DCCI_COVERAGE=$COVERAGE \
-DCMAKE_BUILD_TYPE=$CMAKE_BUILD_TYPE \
-DCMAKE_EXPORT_COMPILE_COMMANDS=yes
- $CMAKE --build . --target coverage