diff options
| author | Vollstrecker <werner@vollstreckernet.de> | 2024-12-24 21:44:05 +0100 |
|---|---|---|
| committer | Mark Adler <madler@alumni.caltech.edu> | 2025-01-31 19:59:10 -0800 |
| commit | 93457606bf297c3febcfa5a475ad16007542cd3f (patch) | |
| tree | 0102cf9529305478957996e6f09fef9d07ee91bf | |
| parent | 27198174ca18157eba7b4e7f2625116506284b37 (diff) | |
| download | zlib-93457606bf297c3febcfa5a475ad16007542cd3f.tar.gz zlib-93457606bf297c3febcfa5a475ad16007542cd3f.tar.bz2 zlib-93457606bf297c3febcfa5a475ad16007542cd3f.zip | |
CMake: Add inflate coverage test.
| -rw-r--r-- | test/CMakeLists.txt | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt index c820ed5..3fffe9e 100644 --- a/test/CMakeLists.txt +++ b/test/CMakeLists.txt | |||
| @@ -59,6 +59,41 @@ if(ZLIB_BUILD_STATIC) | |||
| 59 | add_executable(static_minigzip minigzip.c) | 59 | add_executable(static_minigzip minigzip.c) |
| 60 | target_link_libraries(static_minigzip ZLIB::ZLIBSTATIC) | 60 | target_link_libraries(static_minigzip ZLIB::ZLIBSTATIC) |
| 61 | 61 | ||
| 62 | if(${CMAKE_C_COMPILER_ID} STREQUAL "GNU" OR | ||
| 63 | ${CMAKE_C_COMPILER_ID} STREQUAL "Clang") | ||
| 64 | if(${CMAKE_C_COMPILER_ID} STREQUAL "GNU") | ||
| 65 | find_program(GCOV_EXECUTABLE gcov) | ||
| 66 | endif(${CMAKE_C_COMPILER_ID} STREQUAL "GNU") | ||
| 67 | |||
| 68 | if(${CMAKE_C_COMPILER_ID} STREQUAL "Clang") | ||
| 69 | set(llvm_names llvm_cov) | ||
| 70 | |||
| 71 | foreach(ver RANGE 11 99) | ||
| 72 | list(APPEND llvm_names llvm-cov-${ver}) | ||
| 73 | endforeach(ver RANGE 11 99) | ||
| 74 | |||
| 75 | find_program(GCOV_EXECUTABLE NAMES ${llvm_names}) | ||
| 76 | set(llvm_option "gcov") | ||
| 77 | endif(${CMAKE_C_COMPILER_ID} STREQUAL "Clang") | ||
| 78 | |||
| 79 | add_executable(infcover infcover.c) | ||
| 80 | target_link_libraries(infcover ZLIB::ZLIBSTATIC) | ||
| 81 | target_compile_options(infcover PRIVATE -coverage) | ||
| 82 | target_link_options(infcover PRIVATE -coverage) | ||
| 83 | target_compile_definitions(infcover | ||
| 84 | PRIVATE | ||
| 85 | $<$<BOOL:${HAVE___ATTR__VIS_HIDDEN}>:HAVE_HIDDEN>) | ||
| 86 | add_test (NAME coverage COMMAND infcover) | ||
| 87 | set (INFCOVER_DIR | ||
| 88 | ${CMAKE_CURRENT_BINARY_DIR}/CMakeFiles/infcover.dir) | ||
| 89 | add_test (NAME coverage-summary | ||
| 90 | COMMAND ${GCOV_EXECUTABLE} ${llvm_option} | ||
| 91 | ${CMAKE_CURRENT_SOURCE_DIR}/infcover.c | ||
| 92 | -o ${INFCOVER_DIR}/infcover.c.gcda) | ||
| 93 | set_tests_properties(coverage-summary PROPERTIES DEPENDS incover) | ||
| 94 | endif(${CMAKE_C_COMPILER_ID} STREQUAL "GNU" OR | ||
| 95 | ${CMAKE_C_COMPILER_ID} STREQUAL "Clang") | ||
| 96 | |||
| 62 | if(HAVE_OFF64_T) | 97 | if(HAVE_OFF64_T) |
| 63 | add_executable(zlib_static_example64 example.c) | 98 | add_executable(zlib_static_example64 example.c) |
| 64 | target_compile_definitions(zlib_static_example64 | 99 | target_compile_definitions(zlib_static_example64 |
