dpkg-coverage.m4 1.6 KB

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