clang link fix

This commit is contained in:
Viktor Szakats 2025-09-03 16:22:32 +02:00
parent 84613d8a6c
commit 0ccfffc22b
No known key found for this signature in database
GPG key ID: B5ABD165E2AEF201
2 changed files with 18 additions and 15 deletions

View file

@ -317,22 +317,18 @@ if(CURL_CODE_COVERAGE)
set(CURL_COVERAGE_CFLAGS "")
set(CURL_COVERAGE_LIBS "")
if(CMAKE_C_COMPILER_ID STREQUAL "GNU")
find_program(COVERAGE_EXECUTABLE "gcov")
if(COVERAGE_EXECUTABLE)
list(APPEND CURL_COVERAGE_MACROS "NDEBUG")
list(APPEND CURL_COVERAGE_CFLAGS "-O0" "-g" "-fprofile-arcs")
if(CMAKE_C_COMPILER_VERSION VERSION_GREATER_EQUAL 4.1)
list(APPEND CURL_COVERAGE_CFLAGS "--coverage")
else()
list(APPEND CURL_COVERAGE_CFLAGS "-ftest-coverage")
endif()
list(APPEND CURL_COVERAGE_LIBS "gcov")
list(APPEND CURL_COVERAGE_MACROS "NDEBUG")
list(APPEND CURL_COVERAGE_CFLAGS "-O0" "-g" "-fprofile-arcs")
if(CMAKE_C_COMPILER_VERSION VERSION_GREATER_EQUAL 4.1)
list(APPEND CURL_COVERAGE_CFLAGS "--coverage")
else()
list(APPEND CURL_COVERAGE_CFLAGS "-ftest-coverage")
endif()
list(APPEND CURL_COVERAGE_LIBS "gcov")
elseif(CMAKE_C_COMPILER_ID STREQUAL "Clang")
find_program(COVERAGE_EXECUTABLE "llvm-cov")
list(APPEND CURL_COVERAGE_MACROS "NDEBUG")
list(APPEND CURL_COVERAGE_CFLAGS "-O0" "-g" "--coverage")
endif()
list(APPEND CURL_COVERAGE_MACROS "NDEBUG")
list(APPEND CURL_COVERAGE_CFLAGS "-O0" "-g" "--coverage")
list(APPEND CURL_COVERAGE_LDFLAGS "--coverage")
endif()
endif()

View file

@ -24,7 +24,6 @@
set_property(DIRECTORY APPEND PROPERTY COMPILE_DEFINITIONS ${CURL_DEBUG_MACROS} ${CURL_COVERAGE_MACROS})
set_property(DIRECTORY APPEND PROPERTY COMPILE_OPTIONS ${CURL_COVERAGE_CFLAGS})
message(STATUS "|${CURL_COVERAGE_CFLAGS}|")
set(_curl_cfiles_gen "")
set(_curl_hfiles_gen "")
@ -131,6 +130,14 @@ if(ENABLE_UNICODE AND MINGW AND NOT MINGW32CE)
endif()
endif()
if(CURL_CODE_COVERAGE)
if(CMAKE_VERSION VERSION_GREATER_EQUAL 3.13)
target_link_options(${EXE_NAME} PRIVATE ${CURL_COVERAGE_LDFLAGS})
else()
target_link_libraries(${EXE_NAME} PRIVATE ${CURL_COVERAGE_LDFLAGS})
endif()
endif()
################################################################################
install(TARGETS ${EXE_NAME} EXPORT ${TARGETS_EXPORT_NAME} DESTINATION ${CMAKE_INSTALL_BINDIR})