[tracker] Add support for coverage analysis using lcov
- From: Jürg Billeter <juergbi src gnome org>
- To: svn-commits-list gnome org
- Cc:
- Subject: [tracker] Add support for coverage analysis using lcov
- Date: Tue, 15 Dec 2009 16:27:10 +0000 (UTC)
commit 5804c23c948f21b975c00d7e326c5ff6913970f1
Author: Jürg Billeter <j bitron ch>
Date: Tue Dec 15 17:21:37 2009 +0100
Add support for coverage analysis using lcov
Makefile.am | 20 ++++++++++++++++++++
configure.ac | 4 ++++
src/libtracker-common/Makefile.am | 2 +-
src/libtracker-data/Makefile.am | 2 +-
src/tracker-preferences/Makefile.am | 2 +-
5 files changed, 27 insertions(+), 3 deletions(-)
---
diff --git a/Makefile.am b/Makefile.am
index ba12222..7ad2d5b 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -6,6 +6,26 @@ if HAVE_UNIT_TESTS
SUBDIRS += tests
endif
+#if ENABLE_GCOV
+.PHONY: coverage coverage-report
+coverage:
+ find $(top_srcdir) -name "*.gcda" | xargs rm -f
+ $(MAKE) $(AM_MAKEFLAGS) test
+
+coverage-report: coverage
+ lcov --directory $(top_srcdir)/src --capture --output-file $(top_builddir)/lcov.info
+ lcov --directory $(top_srcdir)/src --output-file $(top_builddir)/lcov.info --remove $(top_builddir)/lcov.info \
+ tracker-sparql-builder.c \
+ tracker-sparql-query.c \
+ tracker-sparql-scanner.c \
+ tracker-turtle-reader.c \
+ tracker-turtle-writer.c \
+ "*.vapi"
+ rm -rf $(top_builddir)/coverage
+ $(mkdir_p) $(top_builddir)/coverage
+ genhtml --title "@PACKAGE_STRING@" --output-directory $(top_builddir)/coverage $(top_builddir)/lcov.info
+#endif
+
dist-hook: gen-ChangeLog
gen_start_date = 2009-04-10
diff --git a/configure.ac b/configure.ac
index de44de9..93a1015 100644
--- a/configure.ac
+++ b/configure.ac
@@ -344,15 +344,19 @@ AC_ARG_ENABLE(gcov,
AS_HELP_STRING([--enable-gcov],
[enable coverage reporting support [[default=no]]]), ,
[enable_gcov=no])
+AM_CONDITIONAL(ENABLE_GCOV, test "x$enable_gcov" != "xno")
if test "x$enable_gcov" != "xno" ; then
+ GCOV_VALAFLAGS="-g"
GCOV_CFLAGS="-ftest-coverage -fprofile-arcs"
GCOV_LIBS="-lgcov"
else
+ GCOV_VALAFLAGS=
GCOV_CFLAGS=
GCOV_LIBS=
fi
+AC_SUBST(GCOV_VALAFLAGS)
AC_SUBST(GCOV_CFLAGS)
AC_SUBST(GCOV_LIBS)
diff --git a/src/libtracker-common/Makefile.am b/src/libtracker-common/Makefile.am
index c1a2966..1bc3019 100644
--- a/src/libtracker-common/Makefile.am
+++ b/src/libtracker-common/Makefile.am
@@ -100,7 +100,7 @@ libtracker_commoninclude_HEADERS = \
tracker-utils.h
libtracker-common.vala.stamp: $(libtracker_common_la_VALASOURCES) posix.vapi
- $(AM_V_GEN)$(VALAC) -C $(VALAFLAGS) --pkg gio-2.0 -H tracker-sparql-builder.h $^
+ $(AM_V_GEN)$(VALAC) $(GCOV_VALAFLAGS) -C $(VALAFLAGS) --pkg gio-2.0 -H tracker-sparql-builder.h $^
$(AM_V_GEN)touch $@
libtracker_common_la_LDFLAGS = \
diff --git a/src/libtracker-data/Makefile.am b/src/libtracker-data/Makefile.am
index df544a6..37f8226 100644
--- a/src/libtracker-data/Makefile.am
+++ b/src/libtracker-data/Makefile.am
@@ -38,7 +38,7 @@ noinst_HEADERS = \
tracker-sparql-query.h
libtracker-data.vala.stamp: $(libtracker_data_la_VALASOURCES) ../libtracker-common/posix.vapi ../libtracker-common/libtracker-common.vapi libtracker-data.vapi ../libtracker-db/libtracker-db.vapi
- $(AM_V_GEN)$(VALAC) -C $(VALAFLAGS) -H tracker-sparql-query.h $^
+ $(AM_V_GEN)$(VALAC) $(GCOV_VALAFLAGS) -C $(VALAFLAGS) -H tracker-sparql-query.h $^
touch $@
libtracker_data_la_LDFLAGS = \
diff --git a/src/tracker-preferences/Makefile.am b/src/tracker-preferences/Makefile.am
index c734724..c5b1e08 100644
--- a/src/tracker-preferences/Makefile.am
+++ b/src/tracker-preferences/Makefile.am
@@ -56,7 +56,7 @@ EXTRA_DIST = \
$(tracker_preferences_VALASOURCES)
tracker-preferences.vala.stamp: $(tracker_preferences_VALASOURCES) tracker-config.vapi tracker-status-icon-config.vapi config.vapi
- $(AM_V_GEN)$(VALAC) --pkg gtk+-2.0 --pkg gmodule-2.0 -C $(VALAFLAGS) $^
+ $(AM_V_GEN)$(VALAC) $(GCOV_VALAFLAGS) --pkg gtk+-2.0 --pkg gmodule-2.0 -C $(VALAFLAGS) $^
$(AM_V_GEN)touch $@
CLEANFILES = $(desktop_DATA)
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]