]> git.ipfire.org Git - thirdparty/zlib-ng.git/commitdiff
Fix cmake coverage detection requiring cmake 3.14 or newer.
authorHans Kristian Rosbach <hk-git@circlestorm.org>
Sat, 24 Apr 2021 21:58:35 +0000 (23:58 +0200)
committerHans Kristian Rosbach <hk-github@circlestorm.org>
Tue, 27 Apr 2021 10:24:51 +0000 (12:24 +0200)
cmake/detect-coverage.cmake

index dc51404475f9537cef306cd03110ca3ba5ceb806..96478f6771c8f349e22fa8d4e3c9ba8eb3806bb6 100644 (file)
@@ -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)