diff --git a/CMakeLists.txt b/CMakeLists.txt index 5ee1a556275eb967ac6badfa552299fa162c0699..8cea01697194a8e95358f51f75734f2695f77e58 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -252,7 +252,9 @@ if("${CMAKE_BUILD_TYPE}" STREQUAL "Coverage") add_custom_target(coverage-clean-up ALL - COMMAND find "${PUGS_BINARY_DIR}" -name \*.gcda -exec rm -f {} +; + COMMAND ${CMAKE_COMMAND} + -DPUGS_BINARY_DIR="${PUGS_BINARY_DIR}" + -P ${PUGS_SOURCE_DIR}/cmake/CoverageRemoveObsoleteFiles.cmake COMMENT "Removing obsolete gcda to perform a net coverage." ) diff --git a/cmake/CoverageRemoveObsoleteFiles.cmake b/cmake/CoverageRemoveObsoleteFiles.cmake new file mode 100644 index 0000000000000000000000000000000000000000..d388916a71d81ba1e4a5651bbfd736d997bd2fbe --- /dev/null +++ b/cmake/CoverageRemoveObsoleteFiles.cmake @@ -0,0 +1,9 @@ +# ------------------------------------------------------------------------------ +# Remove obsolete generated files that could last after a failing test-suite run +# These are generally trailing .gcda files +# ------------------------------------------------------------------------------ + +file(GLOB_RECURSE GCDA_FILE_LIST "${PUGS_BINARY_DIR}/*.gcda") +if(GCDA_FILE_LIST) + file(REMOVE ${GCDA_FILE_LIST}) +endif()