cmake: Add target for obtaining local covarage reports
This commit is contained in:
parent
d2083b3190
commit
8035b7f320
@ -52,6 +52,7 @@ mark_as_advanced(
|
||||
|
||||
option( BUILD_WITH_CCACHE "Use ccache to speed up compilations" OFF )
|
||||
option( BUILD_WITH_COVERAGE "Add compiler flags to generate coverage stats" OFF )
|
||||
include(cmake/gcovr.cmake REQUIRED)
|
||||
|
||||
set( PACKAGE_BUGREPORT "http://github.com/exiv2/exiv2" )
|
||||
set( PACKAGE_URL "https://exiv2.org")
|
||||
|
||||
20
cmake/gcovr.cmake
Normal file
20
cmake/gcovr.cmake
Normal file
@ -0,0 +1,20 @@
|
||||
# Intentd usage
|
||||
# cmake -DBUILD_WITH_COVERAGE=yes ../
|
||||
# make -j
|
||||
# make tests
|
||||
# make coverage
|
||||
|
||||
if(BUILD_WITH_COVERAGE)
|
||||
find_program (GCOVR gcovr)
|
||||
|
||||
if(GCOVR)
|
||||
file(MAKE_DIRECTORY ${CMAKE_BINARY_DIR}/coverage_output )
|
||||
add_custom_command(OUTPUT _run_gcovr_parser
|
||||
POST_BUILD
|
||||
COMMAND ${GCOVR} --root ${CMAKE_SOURCE_DIR} --object-dir=${CMAKE_BINARY_DIR} --html --html-details -o coverage_output/coverage.html
|
||||
WORKING_DIRECTORY ${CMAKE_BINARY_DIR}
|
||||
)
|
||||
add_custom_target (coverage DEPENDS _run_gcovr_parser)
|
||||
endif()
|
||||
|
||||
endif(BUILD_WITH_COVERAGE)
|
||||
Loading…
Reference in New Issue
Block a user