aboutsummaryrefslogtreecommitdiff
path: root/Makefile.am.coverage
diff options
context:
space:
mode:
authorCharles Kerr <charles.kerr@canonical.com>2012-04-03 21:36:26 -0500
committerCharles Kerr <charles.kerr@canonical.com>2012-04-03 21:36:26 -0500
commit425513bc3b7322c7f814d2304e8d7605585ca1e9 (patch)
treec352e61d5faf4d531512a8f4eab039ee8b75f1cd /Makefile.am.coverage
parent6e1ebe98d9796d2f83e650a0c4f84654ae1b163a (diff)
parenta7f9455d86f13e90558e37adb0cf3553b1c3e933 (diff)
downloadayatana-indicator-datetime-425513bc3b7322c7f814d2304e8d7605585ca1e9.tar.gz
ayatana-indicator-datetime-425513bc3b7322c7f814d2304e8d7605585ca1e9.tar.bz2
ayatana-indicator-datetime-425513bc3b7322c7f814d2304e8d7605585ca1e9.zip
merge lp:~allanlesage/indicator-datetime/TDD to remove a dependency on gcovr, move gcov targets to their own makefile, and clean up .gcno files.
Diffstat (limited to 'Makefile.am.coverage')
-rw-r--r--Makefile.am.coverage48
1 files changed, 48 insertions, 0 deletions
diff --git a/Makefile.am.coverage b/Makefile.am.coverage
new file mode 100644
index 0000000..fb97747
--- /dev/null
+++ b/Makefile.am.coverage
@@ -0,0 +1,48 @@
+
+# Coverage targets
+
+.PHONY: clean-gcno clean-gcda \
+ coverage-html generate-coverage-html clean-coverage-html \
+ coverage-gcovr generate-coverage-gcovr clean-coverage-gcovr
+
+clean-local: clean-gcno clean-coverage-html clean-coverage-gcovr
+
+if HAVE_GCOV
+
+clean-gcno:
+ @echo Removing old coverage instrumentation
+ -find -name '*.gcno' -print | xargs -r rm
+
+clean-gcda:
+ @echo Removing old coverage results
+ -find -name '*.gcda' -print | xargs -r rm
+
+coverage-html: clean-gcda
+ -$(MAKE) $(AM_MAKEFLAGS) -k check
+ $(MAKE) $(AM_MAKEFLAGS) generate-coverage-html
+
+generate-coverage-html:
+ @echo Collecting coverage data
+ $(LCOV) --directory $(top_builddir) --capture --output-file coverage.info --no-checksum --compat-libtool
+ LANG=C $(GENHTML) --prefix $(top_builddir) --output-directory coveragereport --title "Code Coverage" --legend --show-details coverage.info
+
+clean-coverage-html: clean-gcda
+ -$(LCOV) --directory $(top_builddir) -z
+ -rm -rf coverage.info coveragereport
+
+if HAVE_GCOVR
+
+coverage-gcovr: clean-gcda
+ -$(MAKE) $(AM_MAKEFLAGS) -k check
+ $(MAKE) $(AM_MAKEFLAGS) generate-coverage-gcovr
+
+generate-coverage-gcovr:
+ @echo Generating coverage GCOVR report
+ $(GCOVR) -x -r $(top_builddir) -o $(top_builddir)/coverage.xml
+
+clean-coverage-gcovr: clean-gcda
+ -rm -rf $(top_builddir)/coverage.xml
+
+endif # HAVE_GCOVR
+
+endif # HAVE_GCOV