compile
stamp-h1
*.pc
+
+*.gcda
+*.gcno
+coverage
+lcov.info
pkgconfigdir = $(libdir)/pkgconfig
pkgconfig_DATA = vala-1.0.pc
+.PHONY: bootstrap
+bootstrap: all
+ find $(top_srcdir) -name "*.vala.stamp" | xargs rm -f
+ $(MAKE) $(AM_MAKEFLAGS) all VALAC=$(abs_top_builddir)/compiler/valac
+
.PHONY: test
test:
cd tests && $(MAKE) $(AM_MAKEFLAGS) check
+#if ENABLE_COVERAGE
+.PHONY: coverage coverage-report
+coverage:
+ find $(top_srcdir) -name "*.gcda" | xargs rm -f
+ $(MAKE) $(AM_MAKEFLAGS) bootstrap
+ $(MAKE) $(AM_MAKEFLAGS) test
+
+coverage-report: coverage
+ lcov --directory $(top_srcdir) --capture --output-file $(top_builddir)/lcov.info
+ lcov --directory $(top_srcdir) --output-file $(top_builddir)/lcov.info --remove $(top_builddir)/lcov.info "*.c" "*.h" "*.vapi"
+ rm -r $(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-02-25
NULL =
AM_CPPFLAGS = \
+ $(COVERAGE_CFLAGS) \
-I$(top_srcdir)/gee \
$(GLIB_CFLAGS) \
$(NULL)
$(NULL)
ccode.vapi ccode.vala.stamp: $(libvalaccode_la_VALASOURCES)
- $(VALAC) $(VALAFLAGS) -C --vapidir $(srcdir)/../vapi --pkg gobject-2.0 --vapidir ../gee --pkg gee -H valaccode.h --library ccode $^
+ $(VALAC) $(COVERAGE_VALAFLAGS) $(VALAFLAGS) -C --vapidir $(srcdir)/../vapi --pkg gobject-2.0 --vapidir ../gee --pkg gee -H valaccode.h --library ccode $^
touch $@
libvalaccode_la_LIBADD = \
+ $(COVERAGE_LIBS) \
$(GLIB_LIBS) \
$(NULL)
NULL =
AM_CPPFLAGS = \
+ $(COVERAGE_CFLAGS) \
-I$(top_srcdir)/gee \
-I$(top_srcdir)/ccode \
-I$(top_srcdir)/vala \
$(NULL)
codegen.vapi codegen.vala.stamp: $(libvala_la_VALASOURCES)
- $(VALAC) $(VALAFLAGS) -C --vapidir $(srcdir)/../vapi --pkg gobject-2.0 --vapidir ../gee --pkg gee --vapidir ../ccode --pkg ccode --vapidir ../vala --pkg vala -H valacodegen.h --library codegen $^
+ $(VALAC) $(COVERAGE_VALAFLAGS) $(VALAFLAGS) -C --vapidir $(srcdir)/../vapi --pkg gobject-2.0 --vapidir ../gee --pkg gee --vapidir ../ccode --pkg ccode --vapidir ../vala --pkg vala -H valacodegen.h --library codegen $^
touch $@
libvala_la_LDFLAGS = -no-undefined
libvala_la_LIBADD = \
+ $(COVERAGE_LIBS) \
$(GLIB_LIBS) \
../vala/libvalacore.la \
$(NULL)
NULL =
AM_CPPFLAGS = \
+ $(COVERAGE_CFLAGS) \
-I$(top_srcdir)/gee \
-I$(top_srcdir)/ccode \
-I$(top_srcdir)/vala \
$(NULL)
valac.vala.stamp: $(valac_VALASOURCES)
- $(VALAC) $(VALAFLAGS) -C --vapidir $(srcdir)/../vapi --pkg gobject-2.0 --vapidir ../gee --pkg gee --vapidir ../ccode --pkg ccode --vapidir ../vala --pkg vala --vapidir ../codegen --pkg codegen --pkg config $^
+ $(VALAC) $(COVERAGE_VALAFLAGS) $(VALAFLAGS) -C --vapidir $(srcdir)/../vapi --pkg gobject-2.0 --vapidir ../gee --pkg gee --vapidir ../ccode --pkg ccode --vapidir ../vala --pkg vala --vapidir ../codegen --pkg codegen --pkg config $^
touch $@
valac_LDADD = \
+ $(COVERAGE_LIBS) \
$(GLIB_LIBS) \
../codegen/libvala.la \
$(NULL)
AC_SUBST(CPPFLAGS)
AC_SUBST(LDFLAGS)
+AC_ARG_ENABLE(coverage, AS_HELP_STRING([--enable-coverage], [Enable coverage analysis]), enable_coverage=$enableval, enable_coverage=no)
+AM_CONDITIONAL(ENABLE_COVERAGE, test x$enable_coverage = xyes)
+
+if test "$enable_coverage" = "yes"; then
+ COVERAGE_VALAFLAGS="-g"
+ COVERAGE_CFLAGS="-fprofile-arcs -ftest-coverage"
+ COVERAGE_LIBS="-lgcov"
+else
+ COVERAGE_VALAFLAGS=
+ COVERAGE_CFLAGS=
+ COVERAGE_LIBS=
+fi
+AC_SUBST(COVERAGE_VALAFLAGS)
+AC_SUBST(COVERAGE_CFLAGS)
+AC_SUBST(COVERAGE_LIBS)
+
AC_ARG_ENABLE(vapigen, AS_HELP_STRING([--enable-vapigen], [Enable VAPI generator]), enable_vapigen=$enableval, enable_vapigen=no)
AM_CONDITIONAL(ENABLE_VAPIGEN, test x$enable_vapigen = xyes)
NULL =
AM_CPPFLAGS = \
+ $(COVERAGE_CFLAGS) \
$(GLIB_CFLAGS) \
$(NULL)
$(NULL)
gee.vapi gee.vala.stamp: $(libgee_la_VALASOURCES)
- $(VALAC) $(VALAFLAGS) -C --vapidir $(srcdir)/../vapi --pkg gobject-2.0 -H gee.h --library gee $^
+ $(VALAC) $(COVERAGE_VALAFLAGS) $(VALAFLAGS) -C --vapidir $(srcdir)/../vapi --pkg gobject-2.0 -H gee.h --library gee $^
touch $@
libgee_la_LIBADD = \
+ $(COVERAGE_LIBS) \
$(GLIB_LIBS) \
$(NULL)
NULL =
AM_CPPFLAGS = \
+ $(COVERAGE_CFLAGS) \
-I$(top_srcdir)/gee \
-I$(top_srcdir)/ccode \
$(GLIB_CFLAGS) \
$(NULL)
vala.vapi vala.vala.stamp: $(libvalacore_la_VALASOURCES)
- $(VALAC) $(VALAFLAGS) -C --vapidir $(srcdir)/../vapi --pkg gobject-2.0 --vapidir ../gee --pkg gee --vapidir ../ccode --pkg ccode --pkg config -H vala.h --library vala $^
+ $(VALAC) $(COVERAGE_VALAFLAGS) $(VALAFLAGS) -C --vapidir $(srcdir)/../vapi --pkg gobject-2.0 --vapidir ../gee --pkg gee --vapidir ../ccode --pkg ccode --pkg config -H vala.h --library vala $^
touch $@
libvalacore_la_LIBADD = \
+ $(COVERAGE_LIBS) \
$(GLIB_LIBS) \
../gee/libgee.la \
../ccode/libvalaccode.la \