From 9d18629ef94f45d0561184e98364ff7fbdb27072 Mon Sep 17 00:00:00 2001 From: Olivier Dion <olivier.dion@savoirfairelinux.com> Date: Thu, 13 May 2021 10:05:48 -0400 Subject: [PATCH] Makefile.am: Add XML/JSON coverage outputs GitLab: https://git.jami.net/savoirfairelinux/ring-project/-/issues/1187 Signed-off-by: Olivier Dion <olivier.dion@savoirfairelinux.com> Change-Id: Ia75aa07a4adfb4ef434db6191d9b73190e47e7e6 --- Makefile.am | 26 +++++++++++++++----------- 1 file changed, 15 insertions(+), 11 deletions(-) diff --git a/Makefile.am b/Makefile.am index 7798cd3711..1719af5a8d 100644 --- a/Makefile.am +++ b/Makefile.am @@ -16,21 +16,25 @@ EXTRA_DIST = m4/libtool.m4 \ contrib/bootstrap \ contrib/src -precoverage: +coverage-html: $(AM_V_at)lcov --no-external --capture --initial --directory $(top_builddir) --output-file dring-coverage-base.info - -coverage: precoverage check $(AM_V_at)lcov --no-external --capture --directory $(top_builddir) --output-file dring-coverage-tests.info $(AM_V_at)lcov --add-tracefile dring-coverage-base.info --add-tracefile dring-coverage-tests.info --output-file dring-coverage.info - $(AM_V_at)lcov --remove dring-coverage.info '/contrib/*' '/usr/include/*' '/bin/*' '/foo/bin/*' '/foo/contrib/*' --output-file dring-coverage-filtered.info - $(MKDIR_P) html-output - genhtml -o html-output dring-coverage-filtered.info + $(AM_V_at)lcov --remove dring-coverage.info "$(abs_top_builddir)/contrib/*" --output-file dring-coverage-filtered.info + $(MKDIR_P) html-coverage-output + genhtml -o html-coverage-output dring-coverage-filtered.info + +coverage-%: + gcovr --filter src --filter test --$*-pretty --$* --output $*-coverage-output.$* coverage-clean: $(AM_V_at)lcov --directory $(top_builddir) --zerocounters - $(AM_V_at)rm -rf dring-coverage-filtered.info - $(AM_V_at)rm -rf html-output - $(AM_V_at)find -name '*.gcda' -exec rm -f {} + - $(AM_V_at)find -name '*.gcno' -exec rm -f {} + + $(AM_V_at)rm -f *.info + $(AM_V_at)rm -rf *-coverage-output + +coverage-cleaner: coverage-clean + $(AM_V_at)find -name '*.gcda' -delete -or -name "*.gcno" -delete + +all-coverage: coverage-clean coverage-html coverage-xml coverage-json -.PHONY: precoverage coverage coverage-clean +.PHONY: all-coverage coverage-html coverage-json coverage-xml coverage-clean coverage-cleaner -- GitLab