mirror of
https://github.com/TheLartians/ModernCppStarter.git
synced 2025-09-01 06:30:52 +02:00
Update commit to exclude dependencies from code coverage reports.
TODO: * Modify GitHub Actions workflows
This commit is contained in:
parent
acab9a3b78
commit
ef5fb0388f
2 changed files with 16 additions and 5 deletions
|
@ -10,8 +10,10 @@ include(${CMAKE_CURRENT_LIST_DIR}/CPM.cmake)
|
||||||
|
|
||||||
# enables sanitizers support using the the `USE_SANITIZER` flag available values are: Address,
|
# enables sanitizers support using the the `USE_SANITIZER` flag available values are: Address,
|
||||||
# Memory, MemoryWithOrigins, Undefined, Thread, Leak, 'Address;Undefined'
|
# Memory, MemoryWithOrigins, Undefined, Thread, Leak, 'Address;Undefined'
|
||||||
if(USE_SANITIZER OR USE_STATIC_ANALYZER)
|
if(USE_SANITIZER OR USE_STATIC_ANALYZER OR CODE_COVERAGE)
|
||||||
CPMAddPackage("gh:StableCoder/cmake-scripts#1f822d1fc87c8d7720c074cde8a278b44963c354")
|
CPMAddPackage("gh:StableCoder/cmake-scripts#1d4bcb41000e7a6a0e6ee1350d91f84f03c14320")
|
||||||
|
|
||||||
|
include(${cmake-scripts_SOURCE_DIR}/code-coverage.cmake)
|
||||||
|
|
||||||
if(USE_SANITIZER)
|
if(USE_SANITIZER)
|
||||||
include(${cmake-scripts_SOURCE_DIR}/sanitizers.cmake)
|
include(${cmake-scripts_SOURCE_DIR}/sanitizers.cmake)
|
||||||
|
|
|
@ -7,6 +7,8 @@ project(GreeterTests LANGUAGES CXX)
|
||||||
option(ENABLE_TEST_COVERAGE "Enable test coverage" OFF)
|
option(ENABLE_TEST_COVERAGE "Enable test coverage" OFF)
|
||||||
option(TEST_INSTALLED_VERSION "Test the version found by find_package" OFF)
|
option(TEST_INSTALLED_VERSION "Test the version found by find_package" OFF)
|
||||||
|
|
||||||
|
set(CODE_COVERAGE ${ENABLE_TEST_COVERAGE})
|
||||||
|
|
||||||
# --- Import tools ----
|
# --- Import tools ----
|
||||||
|
|
||||||
include(../cmake/tools.cmake)
|
include(../cmake/tools.cmake)
|
||||||
|
@ -54,6 +56,13 @@ doctest_discover_tests(GreeterTests)
|
||||||
# ---- code coverage ----
|
# ---- code coverage ----
|
||||||
|
|
||||||
if(ENABLE_TEST_COVERAGE)
|
if(ENABLE_TEST_COVERAGE)
|
||||||
target_compile_options(Greeter PUBLIC -O0 -g -fprofile-arcs -ftest-coverage)
|
if(DEFINED ENV{CPM_SOURCE_CACHE})
|
||||||
target_link_options(Greeter PUBLIC -fprofile-arcs -ftest-coverage)
|
set(CCOV_EXCLUDES $ENV{CPM_SOURCE_CACHE}/.* $ENV{CPM_SOURCE_CACHE}/*)
|
||||||
|
endif()
|
||||||
|
set(CCOV_EXCLUDES ${CMAKE_BINARY_DIR}/.* ${CMAKE_BINARY_DIR}/*)
|
||||||
|
|
||||||
|
add_code_coverage_all_targets(EXCLUDE ${CCOV_EXCLUDES})
|
||||||
|
|
||||||
|
target_code_coverage(Greeter EXCLUDE ${CCOV_EXCLUDES})
|
||||||
|
target_code_coverage(GreeterTests AUTO EXCLUDE ${CCOV_EXCLUDES})
|
||||||
endif()
|
endif()
|
Loading…
Add table
Add a link
Reference in a new issue