diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-13 21:14:48 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-13 21:14:48 +0000 |
commit | e10ff189aca57bba91933088195d4edda199cb20 (patch) | |
tree | 056237559582eba27e68fa864434436ac5b7f535 /m4/pdns_enable_coverage.m4 | |
parent | Adding upstream version 1.8.3. (diff) | |
download | dnsdist-e10ff189aca57bba91933088195d4edda199cb20.tar.xz dnsdist-e10ff189aca57bba91933088195d4edda199cb20.zip |
Adding upstream version 1.9.3.upstream/1.9.3
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to '')
-rw-r--r-- | m4/pdns_enable_coverage.m4 | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/m4/pdns_enable_coverage.m4 b/m4/pdns_enable_coverage.m4 new file mode 100644 index 0000000..9e06468 --- /dev/null +++ b/m4/pdns_enable_coverage.m4 @@ -0,0 +1,32 @@ +AC_DEFUN([PDNS_ENABLE_COVERAGE], [ + AC_MSG_CHECKING([whether to enable code coverage]) + AC_ARG_ENABLE([coverage], + AS_HELP_STRING([--enable-coverage], + [enable code coverage @<:@default=no@:>@]), + [enable_coverage=$enableval], + [enable_coverage=no] + ) + AC_MSG_RESULT([$enable_coverage]) + + AS_IF([test "x$enable_coverage" = "xclang"], [ + dnl let's see if the clang++ specific format is supported, + dnl as it has a much lower overhead and is more accurate, + dnl see https://clang.llvm.org/docs/SourceBasedCodeCoverage.html + gl_COMPILER_OPTION_IF([-fprofile-instr-generate -fcoverage-mapping], [ + CFLAGS="$CFLAGS -DCOVERAGE -DCLANG_COVERAGE -fprofile-instr-generate -fcoverage-mapping" + CXXFLAGS="$CXXFLAGS -DCOVERAGE -DCLANG_COVERAGE -fprofile-instr-generate -fcoverage-mapping" + ], [ + AC_MSG_ERROR([$CXX does not support gathering coverage data in the clang format]) + ]) + ]) + + AS_IF([test "x$enable_coverage" = "xyes"], [ + gl_COMPILER_OPTION_IF([-fprofile-arcs -ftest-coverage], [ + CFLAGS="$CFLAGS -DCOVERAGE --coverage" + CXXFLAGS="$CXXFLAGS -DCOVERAGE --coverage" + LDFLAGS="$LDFLAGS --coverage" + ], [ + AC_MSG_ERROR([$CXX does not support gathering coverage data]) + ]) + ]) +]) |