-
Notifications
You must be signed in to change notification settings - Fork 85
/
.travis.yml
71 lines (63 loc) · 2.07 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
language: cpp
env:
global:
# Ubuntu version
- LINUX_DIST=trusty
- DEPS_DIR=${TRAVIS_BUILD_DIR}/deps
# Global build options and C++ flags
- CXX_FLAGS="-Wall -pedantic -Werror -Wno-variadic-macros -Wno-long-long -Wno-shadow"
# Misc
- RUN_TESTS=true
- COVERAGE=false
matrix:
include:
- os: linux
dist: trusty
sudo: true
compiler: gcc
addons:
apt:
packages: &precise_latest_boost_packages
- gcc-4.8
- g++-4.8
#- gcov-4.9
- clang-3.7
- valgrind
# Misc
- python-yaml
- lcov
- libopencv-dev
sources: &precise_latest_boost_sources
- ubuntu-toolchain-r-test
- llvm-toolchain-precise-3.7
before_install:
# Combine global build options with OS/compiler-dependent options
- export CMAKE_OPTIONS=${CMAKE_OPTIONS}" "${ENV_CMAKE_OPTIONS}
- export CXX_FLAGS=${CXX_FLAGS}" "${ENV_CXX_FLAGS}
install:
- if [ "$CXX" = "clang++" ] && [ "$TRAVIS_OS_NAME" = "linux" ]; then export CXX="clang++-3.7" CC="clang-3.7"; fi
- echo ${PATH}
- echo ${CXX}
- ${CXX} --version
- ${CXX} -v
- sudo pip install codecov
# Download and install recent cmake
- |
if [[ ${TRAVIS_OS_NAME} == "linux" ]]; then
CMAKE_URL="http://www.cmake.org/files/v3.5/cmake-3.5.1-Linux-x86_64.tar.gz"
mkdir -p ${DEPS_DIR}/cmake
travis_retry wget --no-check-certificate --quiet -O - ${CMAKE_URL} | tar --strip-components=1 -xz -C ${DEPS_DIR}/cmake
export PATH=${DEPS_DIR}/cmake/bin:${PATH}
fi
script:
############################################################################
# Build main and tests
############################################################################
- mkdir -p build
- cd build
- cmake ${CMAKE_OPTIONS} -DCMAKE_CXX_FLAGS=${CXX_FLAGS} -DCMAKE_BUILD_TYPE=Coverage -DBUILD_TESTS=ON ..
- make
- make task1_coverage
- ctest
after_success:
- codecov -t c376990f-2ad6-4f7b-bbdb-5378a52e295c -X gcov