+2009-10-31 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
+
+ Perl coverage convenience targets.
+ * Makefile.am (PERL_COVERAGE_DB, PERL_COVERAGE_FLAGS)
+ (PERL_COVER): New variables.
+ (check-coverage, check-coverage-run, check-coverage-report)
+ (clean-coverage): New phony targets.
+ (clean-local): Depend on clean-coverage.
+
2009-10-28 Eric Blake <ebb9@byu.net>
Fix corner cases in AS_LITERAL_IF and AS_TR_SH.
# TODO remove this once automake vs. AC_CONFIG_LINKS issue is fixed.
distclean-local:
if test x"$(VPATH)" != x ; then rm -f GNUmakefile ; fi
+
+# Perl coverage statistics.
+PERL_COVERAGE_DB = `pwd`/cover_db
+PERL_COVERAGE_FLAGS = -MDevel::Cover=-db,$(PERL_COVERAGE_DB),-silent,on,-summary,off
+PERL_COVER = cover
+
+check-coverage-run: all
+ $(mkinstalldirs) $(PERL_COVERAGE_DB)
+ PERL5OPT="$(PERL_COVERAGE_FLAGS)"; export PERL5OPT; \
+ $(MAKE) $(AM_MAKEFLAGS) check
+
+check-coverage-report:
+ @if test ! -d $(PERL_COVERAGE_DB); then \
+ echo "No coverage database found in \`$(PERL_COVERAGE_DB)'." >&2; \
+ echo "Please run \`make check-coverage' first" >&2; \
+ exit 1; \
+ fi
+ $(PERL_COVER) $(PERL_COVERAGE_DB) $(PERL_COVER_FLAGS)
+
+# We don't use direct dependencies here because we'd like to be able
+# to invoke the report even after interrupted check-coverage.
+check-coverage: check-coverage-run
+ $(MAKE) $(AM_MAKEFLAGS) check-coverage-report
+
+clean-local: clean-coverage
+clean-coverage:
+ rm -rf $(PERL_COVERAGE_DB)
+
+.PHONY: check-coverage check-coverage-run check-coverage-report clean-coverage