Skip to content

Commit 6eb6112

Browse files
committed
Merge pull request #1867 from nyalldawson/travis_coverage_v2
Enable coverage reports for Travis builds
2 parents 7246b83 + 34d5394 commit 6eb6112

File tree

3 files changed

+16
-9
lines changed

3 files changed

+16
-9
lines changed

.travis.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
language: cpp
22

33
compiler:
4-
- clang
4+
- gcc
55

66
cache: apt
77

@@ -18,7 +18,7 @@ before_install:
1818
install:
1919
- mkdir build
2020
- cd build
21-
- cmake -DWITH_SERVER=ON -DWITH_STAGED_PLUGINS=OFF -DWITH_GRASS=OFF \
21+
- cmake -DWITH_SERVER=ON -DWITH_STAGED_PLUGINS=OFF -DWITH_GRASS=OFF -DENABLE_COVERAGE=ON.. \
2222
-DSUPPRESS_QT_WARNINGS=ON -DENABLE_MODELTEST=ON -DWITH_QWTPOLAR=OFF ..
2323

2424
script: xvfb-run ctest -V -E 'Atlas|atlas|PyQgsPalLabelingCanvas|PyQgsPalLabelingServer|qgis_wcsprovidertest' -S ../qgis-test-travis.ctest --output-on-failure

CMakeLists.txt

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -414,11 +414,11 @@ ENDIF(MSVC)
414414

415415
IF(ENABLE_COVERAGE)
416416
INCLUDE("cmake/modules/coverage/CodeCoverage.cmake")
417-
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -g -O0 -fprofile-arcs -ftest-coverage")
418-
SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -g -O0 -fprofile-arcs -ftest-coverage")
419-
SET(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -g -O0 -fprofile-arcs -ftest-coverage")
420-
SET(CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} -g -O0 -fprofile-arcs -ftest-coverage")
421-
SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -g -O0 -fprofile-arcs -ftest-coverage")
417+
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -g -O0 -fprofile-arcs -ftest-coverage --coverage")
418+
SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -g -O0 -fprofile-arcs -ftest-coverage --coverage")
419+
SET(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -g -O0 -fprofile-arcs -ftest-coverage --coverage")
420+
SET(CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} -g -O0 -fprofile-arcs -ftest-coverage --coverage")
421+
SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -g -O0 -fprofile-arcs -ftest-coverage --coverage")
422422
SETUP_TARGET_FOR_COVERAGE(qgis_coverage ctest coverage)
423423
ENDIF(ENABLE_COVERAGE)
424424

qgis-test-travis.ctest

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,15 +7,21 @@ SET( CTEST_CMAKE_GENERATOR "Unix Makefiles" )
77
SET (CTEST_CMAKE_COMMAND "cmake" )
88
SET (CTEST_BUILD_COMMAND "/usr/bin/make -j2 -i -k" )
99
SET (CTEST_SITE "travis-ci.org" )
10+
SET (CTEST_COVERAGE_COMMAND "/usr/bin/gcov" )
11+
SET (CTEST_CUSTOM_COVERAGE_EXCLUDE "\(.*/tests/.*|.*\\.cxx|.*\\.sip|.*/sip_.*|.*/ui_.*|.*/qwtpolar.*\)\$" )
1012
IF ($ENV{TRAVIS_PULL_REQUEST} STREQUAL "false")
1113
# No pull request
1214
SET (CTEST_BUILD_NAME "$ENV{TRAVIS_BRANCH} ($ENV{TRAVIS_COMMIT})")
1315
ELSE()
1416
SET (CTEST_BUILD_NAME "PR: $ENV{TRAVIS_PULL_REQUEST} / $ENV{TRAVIS_BRANCH} ($ENV{TRAVIS_COMMIT})")
1517
ENDIF()
16-
SET (CTEST_BUILD_CONFIGURATION "Release")
17-
18+
SET (CTEST_BUILD_CONFIGURATION "Debug")
1819

20+
SET(CMAKE_CXX_FLAGS_COVERAGE "-g -O0 --coverage -fprofile-arcs -ftest-coverage" )
21+
SET(CMAKE_C_FLAGS_COVERAGE "-g -O0 --coverage -fprofile-arcs -ftest-coverage")
22+
SET(CMAKE_EXE_LINKER_FLAGS_COVERAGE "--coverage -fprofile-arcs -ftest-coverage")
23+
SET(CMAKE_SHARED_LINKER_FLAGS_COVERAGE "--coverage -fprofile-arcs -ftest-coverage" )
24+
1925
SET (INITIAL_CACHE "
2026
BUILDNAME:STRING=${CTEST_BUILD_NAME}
2127
SITE:STRING=${CTEST_SITE}
@@ -36,6 +42,7 @@ IF(NOT ${BUILDRES} EQUAL 0)
3642
MESSAGE( FATAL_ERROR "Build failed." )
3743
ENDIF(NOT ${BUILDRES} EQUAL 0)
3844
ctest_test (BUILD "${CTEST_BINARY_DIRECTORY}" PARALLEL_LEVEL 2 RETURN_VALUE TESTRES)
45+
ctest_coverage( BUILD "${CMAKE_BINARY_DIR}")
3946
IF(NOT ${TESTRES} EQUAL 0)
4047
ctest_submit ()
4148
MESSAGE( FATAL_ERROR "Test failed." )

0 commit comments

Comments
 (0)