aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichał Łyszczek <michal.lyszczek@bofc.pl>2019-02-13 19:37:56 +0100
committerMichał Łyszczek <michal.lyszczek@bofc.pl>2019-02-13 19:37:56 +0100
commitb62d3ce8f735f26880478bf4c1ae6fb9e45347ef (patch)
treeb240605fbe24d07654cf5036530655fcd7ae3e8f
parentc70ec7fb678d3c0d3c9ae5db7b589b7c05103338 (diff)
downloadembedlog-b62d3ce8f735f26880478bf4c1ae6fb9e45347ef.tar.gz
embedlog-b62d3ce8f735f26880478bf4c1ae6fb9e45347ef.tar.bz2
embedlog-b62d3ce8f735f26880478bf4c1ae6fb9e45347ef.zip
add: make coverage instructions
-rw-r--r--.gitignore2
-rw-r--r--Makefile.am1
-rw-r--r--Makefile.am.coverage28
3 files changed, 31 insertions, 0 deletions
diff --git a/.gitignore b/.gitignore
index 529ad32..0b7bd66 100644
--- a/.gitignore
+++ b/.gitignore
@@ -44,3 +44,5 @@ tst/coveragereport/
www/downloads.html
www/manuals
www/out
+coverage.info
+coveragereport/
diff --git a/Makefile.am b/Makefile.am
index abd7bce..a61cf25 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -1,3 +1,4 @@
+include Makefile.am.coverage
ACLOCAL_AMFLAGS=-I m4
SUBDIRS = include src tst man examples www
diff --git a/Makefile.am.coverage b/Makefile.am.coverage
new file mode 100644
index 0000000..6d9b891
--- /dev/null
+++ b/Makefile.am.coverage
@@ -0,0 +1,28 @@
+# Coverage targets
+
+.PHONY: clean-gcda coverage generate-coverage-html clean-coverage-html
+
+if HAVE_GCOV
+
+clean-gcda:
+ @echo Removing old coverage results
+ -find -name '*.gcda' -print | xargs -r rm
+ -find -name '*.gcno' -print | xargs -r rm
+
+coverage: 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
+
+clean-gcov: clean-coverage-html
+
+endif # HAVE_GCOV
+