summaryrefslogtreecommitdiffstats
path: root/Tests
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2019-05-07 15:15:08 (GMT)
committerKitware Robot <kwrobot@kitware.com>2019-05-07 15:15:18 (GMT)
commit707c180ff0e16753a4053c86fb9ba49e58596c63 (patch)
tree8507442a7c4028c9f6975a0de916416ea4b21fdd /Tests
parent50c6204d26136176d95b69d0d399d4d8dd36b373 (diff)
parent41d262bd3ddf752a28f8e926b19bcc24224f8303 (diff)
downloadCMake-707c180ff0e16753a4053c86fb9ba49e58596c63.zip
CMake-707c180ff0e16753a4053c86fb9ba49e58596c63.tar.gz
CMake-707c180ff0e16753a4053c86fb9ba49e58596c63.tar.bz2
Merge topic 'CTestCoverageCollectGCOV-updates'
41d262bd3d CTestCoverageCollectGCOV: run gcov with -x 911b97867b CTestCoverageCollectGCOV: run gcov only once Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3258
Diffstat (limited to 'Tests')
-rw-r--r--Tests/CTestCoverageCollectGCOV/fakegcov.cmake21
1 files changed, 12 insertions, 9 deletions
diff --git a/Tests/CTestCoverageCollectGCOV/fakegcov.cmake b/Tests/CTestCoverageCollectGCOV/fakegcov.cmake
index b0c3a9b..6df4292 100644
--- a/Tests/CTestCoverageCollectGCOV/fakegcov.cmake
+++ b/Tests/CTestCoverageCollectGCOV/fakegcov.cmake
@@ -1,14 +1,17 @@
+function(create_gcov_file gcda_full_path)
+ get_filename_component(gcda_name ${gcda_full_path} NAME)
+ string(REPLACE ".gcda" ".gcov" gcov_name "${gcda_name}")
+
+ file(STRINGS "${gcda_full_path}" source_file LIMIT_COUNT 1 ENCODING UTF-8)
+
+ file(WRITE "${CMAKE_SOURCE_DIR}/${gcov_name}"
+ " -: 0:Source:${source_file}"
+ )
+endfunction()
+
foreach(I RANGE 0 ${CMAKE_ARGC})
if("${CMAKE_ARGV${I}}" MATCHES ".*\\.gcda")
set(gcda_file "${CMAKE_ARGV${I}}")
+ create_gcov_file(${gcda_file})
endif()
endforeach()
-
-get_filename_component(gcda_name ${gcda_file} NAME)
-string(REPLACE ".gcda" ".gcov" gcov_name "${gcda_name}")
-
-file(STRINGS "${gcda_file}" source_file LIMIT_COUNT 1 ENCODING UTF-8)
-
-file(WRITE "${CMAKE_SOURCE_DIR}/${gcov_name}"
- " -: 0:Source:${source_file}"
-)