mirror of
https://github.com/curl/curl.git
synced 2026-04-11 12:01:42 +08:00
autotools: make --enable-code-coverage support llvm/clang
Cherry-picked from #18468 Closes #18473
This commit is contained in:
parent
1c49f2f26d
commit
dc3f4fd89b
@ -128,9 +128,6 @@ CURLVERSION=`$SED -ne 's/^#define LIBCURL_VERSION "\(.*\)".*/\1/p' ${srcdir}/inc
|
||||
XC_CHECK_PROG_CC
|
||||
CURL_ATOMIC
|
||||
|
||||
dnl for --enable-code-coverage
|
||||
CURL_COVERAGE
|
||||
|
||||
XC_AUTOMAKE
|
||||
AC_MSG_CHECKING([curl version])
|
||||
AC_MSG_RESULT($CURLVERSION)
|
||||
@ -523,6 +520,8 @@ dnl platform/compiler/architecture specific checks/flags
|
||||
dnl **********************************************************************
|
||||
|
||||
CURL_CHECK_COMPILER
|
||||
dnl for --enable-code-coverage
|
||||
CURL_COVERAGE
|
||||
CURL_CHECK_NATIVE_WINDOWS
|
||||
|
||||
curl_cv_wince='no'
|
||||
|
||||
@ -4290,25 +4290,31 @@ AC_DEFUN([CURL_COVERAGE],[
|
||||
AS_HELP_STRING([--enable-code-coverage], [Provide code coverage]),
|
||||
coverage="$enableval")
|
||||
|
||||
dnl if not gcc switch off again
|
||||
AS_IF([ test "$GCC" != "yes" ], coverage="no" )
|
||||
dnl if not gcc or clang switch off again
|
||||
AS_IF([test "$compiler_id" != "GNU_C" -a "$compiler_id" != "CLANG" -a "$compiler_id" != "APPLECLANG"], coverage="no" )
|
||||
AC_MSG_RESULT($coverage)
|
||||
|
||||
if test "x$coverage" = "xyes"; then
|
||||
curl_coverage_msg="enabled"
|
||||
|
||||
AC_CHECK_TOOL([GCOV], [gcov], [gcov])
|
||||
if test -z "$GCOV"; then
|
||||
AC_MSG_ERROR([needs gcov for code coverage])
|
||||
fi
|
||||
AC_CHECK_PROG([LCOV], [lcov], [lcov])
|
||||
if test -z "$LCOV"; then
|
||||
AC_MSG_ERROR([needs lcov for code coverage])
|
||||
fi
|
||||
|
||||
CPPFLAGS="$CPPFLAGS -DNDEBUG"
|
||||
CFLAGS="$CFLAGS -O0 -g -fprofile-arcs -ftest-coverage"
|
||||
LIBS="$LIBS -lgcov"
|
||||
CFLAGS="$CFLAGS -O0 -g"
|
||||
|
||||
if test "$compiler_id" = "GNU_C"; then
|
||||
AC_CHECK_TOOL([GCOV], [gcov], [gcov])
|
||||
if test -z "$GCOV"; then
|
||||
AC_MSG_ERROR([needs gcov for code coverage])
|
||||
fi
|
||||
AC_CHECK_PROG([LCOV], [lcov], [lcov])
|
||||
if test -z "$LCOV"; then
|
||||
AC_MSG_ERROR([needs lcov for code coverage])
|
||||
fi
|
||||
CFLAGS="$CFLAGS -ftest-coverage -fprofile-arcs"
|
||||
LIBS="$LIBS -lgcov"
|
||||
else
|
||||
CFLAGS="$CFLAGS -fprofile-instr-generate -fcoverage-mapping"
|
||||
LDFLAGS="$LDFLAGS -fprofile-instr-generate -fcoverage-mapping"
|
||||
fi
|
||||
fi
|
||||
])
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user