Skip to content

Commit 53e588f

Browse files
committed
More tweaks
1 parent 252630e commit 53e588f

File tree

2 files changed

+28
-11
lines changed

2 files changed

+28
-11
lines changed

cmake/yup_utilities.cmake

Lines changed: 27 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -291,7 +291,7 @@ endfunction()
291291

292292
#==============================================================================
293293

294-
function (_yup_setup_coverage_targets modules_list)
294+
function (_yup_setup_coverage_targets test_target_name modules_list)
295295
if (YUP_ENABLE_COVERAGE AND (CMAKE_CXX_COMPILER_ID MATCHES "GNU|Clang"))
296296
find_program (LCOV_PATH lcov)
297297
find_program (GENHTML_PATH genhtml)
@@ -316,16 +316,26 @@ function (_yup_setup_coverage_targets modules_list)
316316

317317
add_custom_target (coverage_${module_name}
318318
COMMAND ${CMAKE_COMMAND} -E echo "Generating coverage for ${module_name}"
319-
COMMAND ${LCOV_PATH} --directory ${CMAKE_BINARY_DIR} --capture --output-file ${module_coverage_dir}/coverage.info --ignore-errors mismatch,gcov,source,negative
320-
COMMAND ${LCOV_PATH} --extract ${module_coverage_dir}/coverage.info "*/modules/${module_name}/*" --output-file ${module_coverage_dir}/coverage_filtered.info --ignore-errors mismatch,gcov,source,negative
321-
COMMAND ${LCOV_PATH} --remove ${module_coverage_dir}/coverage_filtered.info "*/thirdparty/*" "*/build/*" "*/tests/*" --output-file ${module_coverage_dir}/coverage_final.info --ignore-errors mismatch,gcov,source,negative
319+
COMMAND ${LCOV_PATH}
320+
--directory ${CMAKE_BINARY_DIR} --capture
321+
--output-file ${module_coverage_dir}/coverage.info
322+
--ignore-errors mismatch,gcov,source,negative
323+
COMMAND ${LCOV_PATH}
324+
--extract ${module_coverage_dir}/coverage.info "*/modules/${module_name}/*"
325+
--output-file ${module_coverage_dir}/coverage_filtered.info
326+
--ignore-errors mismatch,gcov,source,negative
327+
COMMAND ${LCOV_PATH}
328+
--remove ${module_coverage_dir}/coverage_filtered.info "*/thirdparty/*" "*/build/*" "*/tests/*" "*/examples/*"
329+
--output-file ${module_coverage_dir}/coverage_final.info
330+
--ignore-errors mismatch,gcov,source,negative
322331
WORKING_DIRECTORY ${CMAKE_BINARY_DIR}
323-
DEPENDS yup_tests
332+
DEPENDS ${test_target_name}
324333
COMMENT "Processing coverage data for ${module_name}")
325334

326335
if (GENHTML_PATH)
327336
add_custom_target (coverage_html_${module_name}
328-
COMMAND ${GENHTML_PATH} ${module_coverage_dir}/coverage_final.info --output-directory ${module_coverage_dir}/html
337+
COMMAND ${GENHTML_PATH}
338+
${module_coverage_dir}/coverage_final.info --output-directory ${module_coverage_dir}/html
329339
DEPENDS coverage_${module_name}
330340
COMMENT "Generating HTML coverage report for ${module_name}")
331341
endif()
@@ -334,15 +344,22 @@ function (_yup_setup_coverage_targets modules_list)
334344
# Combined coverage target
335345
add_custom_target (coverage_all
336346
COMMAND ${CMAKE_COMMAND} -E echo "Generating combined coverage report"
337-
COMMAND ${LCOV_PATH} --directory ${CMAKE_BINARY_DIR} --capture --output-file ${CMAKE_BINARY_DIR}/coverage/coverage.info --ignore-errors mismatch,gcov,source,negative
338-
COMMAND ${LCOV_PATH} --remove ${CMAKE_BINARY_DIR}/coverage/coverage.info "*/thirdparty/*" "*/build/*" "*/tests/*" "*/examples/*" --output-file ${CMAKE_BINARY_DIR}/coverage/coverage_final.info --ignore-errors mismatch,gcov,source,negative
347+
COMMAND ${LCOV_PATH}
348+
--directory ${CMAKE_BINARY_DIR} --capture
349+
--output-file ${CMAKE_BINARY_DIR}/coverage/coverage.info
350+
--ignore-errors mismatch,gcov,source,negative
351+
COMMAND ${LCOV_PATH}
352+
--remove ${CMAKE_BINARY_DIR}/coverage/coverage.info "*/thirdparty/*" "*/build/*" "*/tests/*" "*/examples/*"
353+
--output-file ${CMAKE_BINARY_DIR}/coverage/coverage_final.info
354+
--ignore-errors mismatch,gcov,source,negative
339355
WORKING_DIRECTORY ${CMAKE_BINARY_DIR}
340-
DEPENDS yup_tests
356+
DEPENDS ${test_target_name}
341357
COMMENT "Processing combined coverage data")
342358

343359
if (GENHTML_PATH)
344360
add_custom_target (coverage_html_all
345-
COMMAND ${GENHTML_PATH} ${CMAKE_BINARY_DIR}/coverage/coverage_final.info --output-directory ${CMAKE_BINARY_DIR}/coverage/html
361+
COMMAND ${GENHTML_PATH}
362+
${CMAKE_BINARY_DIR}/coverage/coverage_final.info --output-directory ${CMAKE_BINARY_DIR}/coverage/html
346363
DEPENDS coverage_all
347364
COMMENT "Generating combined HTML coverage report")
348365
endif()

tests/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -93,5 +93,5 @@ if (YUP_ENABLE_COVERAGE)
9393
_yup_setup_coverage_flags (${module})
9494
endforeach()
9595

96-
_yup_setup_coverage_targets ("${target_modules}")
96+
_yup_setup_coverage_targets (${target_name} "${target_modules}")
9797
endif()

0 commit comments

Comments
 (0)