blob: 2cb764c9a16886e0ac46b9fc2a1aecb7ea3ab12f [file] [log] [blame]
# Copyright © 2010 Guillem Jover <guillem@debian.org>
# DPKG_CODE_COVERAGE
# ------------------
# Add configuration option to enable code coverage support.
AC_DEFUN([DPKG_CODE_COVERAGE],
[
AC_ARG_ENABLE(coverage,
AS_HELP_STRING([--enable-coverage],
[whether to enable code coverage]),
[],
[enable_coverage=no])
AM_CONDITIONAL(COVERAGE_ENABLED, [test x$enable_coverage = xyes])
if test "x$enable_coverage" = "xyes"; then
if test "x$GCC" = "xno"; then
AC_MSG_ERROR([not compiling with gcc, which is required for C coverage support])
fi
AC_CHECK_PROGS([GCOV], [gcov])
if test -z "$GCOV"; then
AC_MSG_ERROR([missing gcov, which is required for C coverage support])
fi
AC_CHECK_PROGS([LCOV], [lcov])
if test -z "$LCOV"; then
AC_MSG_ERROR([missing lcov, which is required for C coverage support])
fi
AC_CHECK_PROGS([LCOV_GENHTML], [genhtml])
if test -z "$LCOV_GENHTML"; then
AC_MSG_ERROR([missing genhtml, which is required for C coverage support])
fi
CFLAGS="$CFLAGS -fprofile-arcs -ftest-coverage"
LDFLAGS="$LDFLAGS -fprofile-arcs -ftest-coverage"
AC_MSG_CHECKING([for Devel::Cover perl module])
if $($PERL -e "require Devel::Cover;" 2>/dev/null); then
PERL_COVERAGE="-MDevel::Cover"
AC_SUBST(PERL_COVERAGE)
AC_MSG_RESULT([ok])
else
AC_MSG_ERROR([Devel::Cover perl module is required for coverage support])
fi
AC_CHECK_PROGS([PERL_COVER], [cover])
if test -z "$PERL_COVER"; then
AC_MSG_ERROR([missing cover, which is required for perl coverage support])
fi
fi
])