diff --git a/CMakeLists.txt b/CMakeLists.txt index c36532b53a..66f1962921 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -325,7 +325,7 @@ if(CURL_CODE_COVERAGE) list(APPEND CURL_COVERAGE_CFLAGS "-ftest-coverage") endif() list(APPEND CURL_COVERAGE_LIBS "gcov") - elseif(CMAKE_C_COMPILER_ID STREQUAL "Clang") + elseif(CMAKE_C_COMPILER_ID MATCHES "Clang") list(APPEND CURL_COVERAGE_MACROS "NDEBUG") list(APPEND CURL_COVERAGE_CFLAGS "-O0" "-g" "--coverage") list(APPEND CURL_COVERAGE_LDFLAGS "--coverage") diff --git a/lib/CMakeLists.txt b/lib/CMakeLists.txt index da6ddbe447..77dc08c6d9 100644 --- a/lib/CMakeLists.txt +++ b/lib/CMakeLists.txt @@ -200,6 +200,14 @@ if(BUILD_SHARED_LIBS) endif() endif() + if(CURL_COVERAGE_LDFLAGS) + if(CMAKE_VERSION VERSION_GREATER_EQUAL 3.13) + target_link_options(${LIB_SHARED} PRIVATE ${CURL_COVERAGE_LDFLAGS}) + else() + target_link_libraries(${LIB_SHARED} PRIVATE ${CURL_COVERAGE_LDFLAGS}) + endif() + endif() + target_include_directories(${LIB_SHARED} INTERFACE "$" "$") diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index e6d6286fa7..131b9f402b 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -130,7 +130,7 @@ if(ENABLE_UNICODE AND MINGW AND NOT MINGW32CE) endif() endif() -if(CURL_CODE_COVERAGE) +if(CURL_COVERAGE_LDFLAGS) if(CMAKE_VERSION VERSION_GREATER_EQUAL 3.13) target_link_options(${EXE_NAME} PRIVATE ${CURL_COVERAGE_LDFLAGS}) else()