@@ -15,7 +15,10 @@ set(LCOV_DATA_PATH_INIT "${LCOV_DATA_PATH}/init")
1515set (LCOV_DATA_PATH_CAPTURE "${LCOV_DATA_PATH} /capture" )
1616set (LCOV_HTML_PATH "${CMAKE_BINARY_DIR} /lcov/html" )
1717
18-
18+ set (GENINFO_EXTRA_FLAGS "" CACHE STRING "Additional flags to pass to geninfo." )
19+ string (REPLACE " " ";" GENINFO_EXTRA_FLAGS "${GENINFO_EXTRA_FLAGS} " )
20+ set (LCOV_EXTRA_FLAGS "" CACHE STRING "Additional flags to pass to lcov." )
21+ string (REPLACE " " ";" LCOV_EXTRA_FLAGS "${LCOV_EXTRA_FLAGS} " )
1922
2023
2124# Search for Gcov which is used by Lcov.
@@ -172,14 +175,15 @@ function (lcov_capture_initial_tgt TNAME)
172175 --quiet --base-directory ${PROJECT_SOURCE_DIR} --initial
173176 --gcov-tool ${GCOV_BIN} --output -filename ${OUTFILE}
174177 ${GENINFO_EXTERN_FLAG} ${TDIR} /${FILE} .gcno
178+ ${GENINFO_EXTRA_FLAGS}
175179 DEPENDS ${TNAME}
176180 COMMENT "Capturing initial coverage data for ${FILE} "
177181 )
178182 endforeach ()
179183
180184 # Concatenate all files generated by geninfo to a single file per target.
181185 set (OUTFILE "${LCOV_DATA_PATH_INIT} /${TNAME} .info" )
182- set ( LCOV_EXTRA_FLAGS "--initial" )
186+ list ( APPEND LCOV_EXTRA_FLAGS "--initial" )
183187 lcov_merge_files("${OUTFILE} " ${GENINFO_FILES} )
184188 add_custom_target (${TNAME} -capture-init ALL DEPENDS ${OUTFILE} )
185189
@@ -272,7 +276,7 @@ function (lcov_capture_tgt TNAME)
272276 && ${GCOV_ENV} ${GENINFO_BIN} --quiet --base-directory
273277 ${PROJECT_SOURCE_DIR} --gcov-tool ${GCOV_BIN}
274278 --output -filename ${OUTFILE} ${GENINFO_EXTERN_FLAG}
275- ${TDIR} /${FILE} .gcda
279+ ${TDIR} /${FILE} .gcda ${GENINFO_EXTRA_FLAGS}
276280 || cp ${OUTFILE} .init ${OUTFILE}
277281 DEPENDS ${TNAME} ${TNAME} -capture-init "${TDIR} /${FILE} .gcda"
278282 COMMENT "Capturing coverage data for ${FILE} "
0 commit comments