Drop unnecessary gcovr workarounds
Many problems of the Debian 11 gcovr version were fixed in the Debian 12
one. Replace workarounds we accumulated over the years with two new,
simple ones.
(cherry picked from commit 55f5aa08f0)
This commit is contained in:
@@ -1709,31 +1709,24 @@ gcov:
|
||||
- job: system:gcc:bookworm:amd64
|
||||
artifacts: true
|
||||
script:
|
||||
# *.gcno and *.gcda files generated for shared library objects are created
|
||||
# in directories in which gcovr is unable to process them properly
|
||||
# (.../.libs/...). Move such *.gcno and *.gcda files one level higher.
|
||||
- find . -regex ".*/\.libs/.*\.\(gcda\|gcno\)" -execdir mv "{}" .. \;
|
||||
# Help gcovr process the nasty tricks in lib/dns/code.h, where we include C
|
||||
# source files from lib/dns/rdata/*/, using an even nastier trick.
|
||||
- find lib/dns/rdata/* -name "*.c" -execdir cp -f "{}" ../../ \;
|
||||
# Help gcovr process inline functions in headers by copying all libdns and
|
||||
# libisc headers to lib/{dns,isc,ns}/.
|
||||
- for SRC in dns isc; do for DST in dns isc ns; do cp -f "lib/${SRC}/include/${SRC}"/*.h "lib/${DST}/"; done; done
|
||||
- find bin lib -maxdepth 1 -mindepth 1 -type d -exec cp -f lib/isc/include/isc/buffer.h "{}" \;
|
||||
- cp -f lib/isc/include/isc/buffer.h lib/isc/netmgr/buffer.h
|
||||
# Help gcovr find dlz_dbi.c file
|
||||
- for DST in ldap mysql mysqldyn sqlite3 wildcard; do cp contrib/dlz/modules/common/dlz_dbi.c "contrib/dlz/modules/${DST}"; done
|
||||
# Ensure gcov files for unit tests are found via tests/ rather than
|
||||
# lib/*/tests/ to prevent confusing gcovr.
|
||||
- find lib/ -name tests -type l -delete
|
||||
# The "a-conftest.gcno" file is result of the ./configure step and
|
||||
# should be removed as it does not belong to the BIND 9 code base.
|
||||
- rm a-conftest.gcno
|
||||
# Generate XML file in the Cobertura XML format suitable for use by GitLab
|
||||
# for the purpose of displaying code coverage information in the diff view
|
||||
# of a given merge request.
|
||||
- gcovr --root . --exclude-directories bin/tests --exclude-directories doc --exclude-directories fuzz --exclude-directories lib/samples --exclude tests --xml -o coverage.xml
|
||||
- gcovr --root . --exclude-directories bin/tests --exclude-directories doc --exclude-directories fuzz --exclude-directories lib/samples --exclude tests --html-details -o coverage.html
|
||||
- gcovr --root . --exclude-directories bin/tests --exclude-directories doc --exclude-directories fuzz --exclude-directories lib/samples --exclude tests -o coverage.txt
|
||||
- gcovr --exclude-directories bin/tests --exclude-directories doc --exclude-directories fuzz --exclude tests --cobertura-pretty -o coverage.xml
|
||||
- gcovr --exclude-directories bin/tests --exclude-directories doc --exclude-directories fuzz --exclude tests --html-details -o coverage.html
|
||||
- gcovr --exclude-directories bin/tests --exclude-directories doc --exclude-directories fuzz --exclude tests --txt -o coverage.txt
|
||||
- tail -n 3 coverage.txt
|
||||
coverage: /^TOTAL.*\s+(\d+\%)$/
|
||||
artifacts:
|
||||
paths:
|
||||
- coverage*.html
|
||||
- coverage.css
|
||||
- coverage.txt
|
||||
- coverage.xml
|
||||
reports:
|
||||
|
||||
Reference in New Issue
Block a user