From: Hans Kristian Rosbach Date: Sat, 24 Apr 2021 21:58:35 +0000 (+0200) Subject: Fix cmake coverage detection requiring cmake 3.14 or newer. X-Git-Tag: 2.0.3~16 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=29fd4672a2279a0368be936d7cd44d013d009fae;p=thirdparty%2Fzlib-ng.git Fix cmake coverage detection requiring cmake 3.14 or newer. --- diff --git a/cmake/detect-coverage.cmake b/cmake/detect-coverage.cmake index dc5140447..96478f677 100644 --- a/cmake/detect-coverage.cmake +++ b/cmake/detect-coverage.cmake @@ -3,8 +3,13 @@ macro(add_code_coverage) # Check for -coverage flag support for Clang/GCC - set(CMAKE_REQUIRED_LINK_OPTIONS -coverage) + if(CMAKE_VERSION VERSION_LESS 3.14) + set(CMAKE_REQUIRED_LIBRARIES -lgcov) + else() + set(CMAKE_REQUIRED_LINK_OPTIONS -coverage) + endif() check_c_compiler_flag(-coverage HAVE_COVERAGE) + set(CMAKE_REQUIRED_LIBRARIES) set(CMAKE_REQUIRED_LINK_OPTIONS) if(HAVE_COVERAGE) @@ -13,8 +18,13 @@ macro(add_code_coverage) set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -coverage") else() # Some versions of GCC don't support -coverage shorthand - set(CMAKE_REQUIRED_LINK_OPTIONS -lgcov -fprofile-arcs) + if(CMAKE_VERSION VERSION_LESS 3.14) + set(CMAKE_REQUIRED_LIBRARIES -lgcov) + else() + set(CMAKE_REQUIRED_LINK_OPTIONS -lgcov -fprofile-arcs) + endif() check_c_compiler_flag("-ftest-coverage -fprofile-arcs -fprofile-values" HAVE_TEST_COVERAGE) + set(CMAKE_REQUIRED_LIBRARIES) set(CMAKE_REQUIRED_LINK_OPTIONS) if(HAVE_TEST_COVERAGE)