Commit | Line | Data |
---|---|---|
1479465f GJ |
1 | # Copyright © 2010 Guillem Jover <guillem@debian.org> |
2 | ||
3 | # DPKG_CODE_COVERAGE | |
4 | # ------------------ | |
5 | # Add configuration option to enable code coverage support. | |
6 | AC_DEFUN([DPKG_CODE_COVERAGE], [ | |
7 | AC_ARG_ENABLE([coverage], | |
8 | [AS_HELP_STRING([--enable-coverage], [whether to enable code coverage])], | |
9 | [], [enable_coverage=no]) | |
10 | AM_CONDITIONAL([COVERAGE_ENABLED], [test x$enable_coverage = xyes]) | |
11 | ||
12 | AS_IF([test "x$enable_coverage" = "xyes"], [ | |
13 | AS_IF([test "x$GCC" = "xno"], [ | |
14 | AC_MSG_ERROR([not compiling with gcc, which is required for C coverage support]) | |
15 | ]) | |
16 | ||
17 | AC_CHECK_PROGS([GCOV], [gcov]) | |
18 | AS_IF([test -z "$GCOV"], [ | |
19 | AC_MSG_ERROR([missing gcov, which is required for C coverage support]) | |
20 | ]) | |
21 | ||
22 | AC_CHECK_PROGS([LCOV], [lcov]) | |
23 | AS_IF([test -z "$LCOV"], [ | |
24 | AC_MSG_ERROR([missing lcov, which is required for C coverage support]) | |
25 | ]) | |
26 | ||
27 | AC_CHECK_PROGS([LCOV_GENHTML], [genhtml]) | |
28 | AS_IF([test -z "$LCOV_GENHTML"], [ | |
29 | AC_MSG_ERROR([missing genhtml, which is required for C coverage support]) | |
30 | ]) | |
31 | ||
32 | CFLAGS="$CFLAGS --coverage" | |
33 | LDFLAGS="$LDFLAGS --coverage" | |
34 | ||
35 | AC_MSG_CHECKING([for Devel::Cover perl module]) | |
36 | AS_IF([$($PERL -e "require Devel::Cover;" 2>/dev/null)], [ | |
37 | PERL_COVERAGE="-MDevel::Cover" | |
38 | AC_SUBST(PERL_COVERAGE) | |
39 | AC_MSG_RESULT([ok]) | |
40 | ], [ | |
41 | AC_MSG_ERROR([Devel::Cover perl module is required for coverage support]) | |
42 | ]) | |
43 | AC_CHECK_PROGS([PERL_COVER], [cover]) | |
44 | AS_IF([test -z "$PERL_COVER"], [ | |
45 | AC_MSG_ERROR([missing cover, which is required for perl coverage support]) | |
46 | ]) | |
47 | ]) | |
48 | AC_MSG_CHECKING([whether to build with code coverage]) | |
49 | AC_MSG_RESULT([$enable_coverage]) | |
50 | ]) |