diff options
Diffstat (limited to 'libs/zip/test/CMakeLists.txt')
| -rw-r--r-- | libs/zip/test/CMakeLists.txt | 81 |
1 files changed, 81 insertions, 0 deletions
diff --git a/libs/zip/test/CMakeLists.txt b/libs/zip/test/CMakeLists.txt new file mode 100644 index 0000000..255f87a --- /dev/null +++ b/libs/zip/test/CMakeLists.txt @@ -0,0 +1,81 @@ +cmake_minimum_required(VERSION 3.14) +include(ExternalData) + +find_package(Sanitizers) + +# tests +set(test_static_out test_static.out) +add_executable(${test_static_out} test_static.c) +add_test(NAME ${test_static_out} COMMAND ${test_static_out}) +add_sanitizers(${test_static_out}) + +set(test_write_out test_write.out) +add_executable(${test_write_out} test_write.c) +target_link_libraries(${test_write_out} zip) +add_test(NAME ${test_write_out} COMMAND ${test_write_out}) +add_sanitizers(${test_write_out}) + +set(test_append_out test_append.out) +add_executable(${test_append_out} test_append.c) +target_link_libraries(${test_append_out} zip) +add_test(NAME ${test_append_out} COMMAND ${test_append_out}) +add_sanitizers(${test_append_out}) + +set(test_read_out test_read.out) +add_executable(${test_read_out} test_read.c) +target_link_libraries(${test_read_out} zip) +add_test(NAME ${test_read_out} COMMAND ${test_read_out}) +add_sanitizers(${test_read_out}) + +set(test_extract_out test_extract.out) +add_executable(${test_extract_out} test_extract.c) +target_link_libraries(${test_extract_out} zip) +add_test(NAME ${test_extract_out} COMMAND ${test_extract_out}) +add_sanitizers(${test_extract_out}) + +set(test_entry_out test_entry.out) +add_executable(${test_entry_out} test_entry.c) +target_link_libraries(${test_entry_out} zip) +add_test(NAME ${test_entry_out} COMMAND ${test_entry_out}) +add_sanitizers(${test_entry_out}) + +set(test_permissions_out test_permissions.out) +add_executable(${test_permissions_out} test_permissions.c) +target_link_libraries(${test_permissions_out} zip) +if(LINUX OR UNIX) + find_program(UNZIP_PROGRAM unzip) + if(UNZIP_PROGRAM) + message(STATUS "Found unzip: ${UNZIP_PROGRAM}") + if("${CMAKE_C_COMPILER_ID}" STREQUAL "GNU" OR + "${CMAKE_C_COMPILER_ID}" STREQUAL "Clang" OR + "${CMAKE_C_COMPILER_ID}" STREQUAL "AppleClang") + target_compile_definitions(${test_permissions_out} + PRIVATE UNZIP_PROGRAM="${UNZIP_PROGRAM}" + ) + endif() + endif() +endif() +add_test(NAME ${test_permissions_out} COMMAND ${test_permissions_out}) +add_sanitizers(${test_permissions_out}) + +set(test_open_out test_open.out) +add_executable(${test_open_out} test_open.c) +target_link_libraries(${test_open_out} zip) +add_test(NAME ${test_open_out} COMMAND ${test_open_out}) +add_sanitizers(${test_open_out}) + +set(test_offset_out test_offset.out) +add_executable(${test_offset_out} test_offset.c) +target_link_libraries(${test_offset_out} zip) +add_test(NAME ${test_offset_out} COMMAND ${test_offset_out}) +add_sanitizers(${test_offset_out}) + +set(test_data test_data.out) +add_executable(${test_data} test_data.c) +target_link_libraries(${test_data} zip) +ExternalData_Add_Test(test_data + NAME test_data + COMMAND ${test_data} DATA{data/data.bin} +) + + |
