| CHECK_FUNCTION_EXISTS(getopt HAVE_GETOPT) |
| IF(NOT HAVE_GETOPT) |
| SET(SRC_EXTRA_FILES ../src/getopt.c) |
| ENDIF() |
| |
| SET(TEST_PROGRAMS |
| add_from_filep |
| fopen_unchanged |
| fseek |
| nonrandomopentest |
| ) |
| |
| SET(GETOPT_USERS |
| fread |
| tryopen |
| ) |
| |
| ADD_EXECUTABLE(can_clone_file can_clone_file.c) |
| |
| SET(ENV{srcdir} ${CMAKE_CURRENT_SOURCE_DIR}) |
| FOREACH(PROGRAM ${TEST_PROGRAMS}) |
| ADD_EXECUTABLE(${PROGRAM} ${PROGRAM}.c) |
| TARGET_LINK_LIBRARIES(${PROGRAM} zip) |
| ENDFOREACH() |
| |
| ADD_EXECUTABLE(hole hole.c ${SRC_EXTRA_FILES} source_hole.c) |
| TARGET_LINK_LIBRARIES(hole zip) |
| |
| ADD_EXECUTABLE(ziptool_regress ziptool_regress.c ${SRC_EXTRA_FILES} source_hole.c) |
| TARGET_LINK_LIBRARIES(ziptool_regress zip) |
| |
| #ADD_LIBRARY(malloc MODULE malloc.c) |
| #TARGET_LINK_LIBRARIES(malloc ${CMAKE_DL_LIBS}) |
| ADD_LIBRARY(nonrandomopen MODULE nonrandomopen.c) |
| TARGET_LINK_LIBRARIES(nonrandomopen ${CMAKE_DL_LIBS}) |
| |
| FOREACH(PROGRAM ${GETOPT_USERS}) |
| ADD_EXECUTABLE(${PROGRAM} ${PROGRAM}.c ${SRC_EXTRA_FILES}) |
| TARGET_LINK_LIBRARIES(${PROGRAM} zip) |
| ENDFOREACH() |
| |
| # for appveyor builds |
| #SET(CMAKE_MSVCIDE_RUN_PATH C:/projects/libzip/vstudio/zlib/installed/bin;C:/projects/libzip/vstudio/zlib/installed/lib;C:/projects/libzip/build/lib/Release) |
| |
| ADD_CUSTOM_TARGET(cleanup |
| COMMAND ${CMAKE_COMMAND} -DDIR=${CMAKE_CURRENT_BINARY_DIR} -P ${CMAKE_CURRENT_SOURCE_DIR}/cleanup.cmake |
| ) |
| |
| ADD_CUSTOM_TARGET(testinput |
| ALL |
| VERBATIM |
| COMMAND cmake -E tar x ${CMAKE_CURRENT_SOURCE_DIR}/manyfiles-zip.zip |
| COMMAND cmake -E tar x ${CMAKE_CURRENT_SOURCE_DIR}/bigzero-zip.zip |
| DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/manyfiles-zip.zip ${CMAKE_CURRENT_SOURCE_DIR}/bigzero-zip.zip |
| ) |
| |
| SET_PROPERTY(DIRECTORY PROPERTY ADDITIONAL_MAKE_CLEAN_FILES |
| bigzero.zip |
| manyfiles-133000.zip |
| manyfiles-65536.zip |
| manyfiles-fewer.zip |
| manyfiles-more.zip |
| manyfiles-zip64-modulo.zip |
| manyfiles-zip64.zip |
| manyfiles.zip |
| ) |
| |
| SET(EXTRA_TESTS |
| add_dir.test |
| add_from_buffer.test |
| add_from_file.test |
| add_from_file_duplicate.test |
| add_from_file_twice_duplicate.test |
| add_from_filep.test |
| add_from_stdin.test |
| add_from_zip_closed.test |
| add_from_zip_deflated.test |
| add_from_zip_deflated2.test |
| add_from_zip_partial_deflated.test |
| add_from_zip_partial_stored.test |
| add_from_zip_stored.test |
| add_stored.test |
| add_stored_in_memory.test |
| buffer-fragment-read.test |
| buffer-fragment-write.test |
| clone-buffer-add.test |
| clone-buffer-delete.test |
| clone-buffer-replace.test |
| clone-fs-add.test |
| clone-fs-delete.test |
| clone-fs-replace.test |
| cm-default.test |
| count_entries.test |
| decrypt-correct-password-aes128.test |
| decrypt-correct-password-aes192.test |
| decrypt-correct-password-aes256.test |
| decrypt-correct-password-pkware.test |
| decrypt-no-password-aes256.test |
| decrypt-wrong-password-aes128.test |
| decrypt-wrong-password-aes192.test |
| decrypt-wrong-password-aes256.test |
| decrypt-wrong-password-pkware.test |
| delete_add_same.test |
| delete_invalid.test |
| delete_last.test |
| delete_multiple_last.test |
| delete_multiple_partial.test |
| delete_renamed_rename.test |
| encrypt.test |
| encryption-nonrandom-aes128.test |
| encryption-nonrandom-aes192.test |
| encryption-nonrandom-aes256.test |
| encryption-remove.test |
| extra_add.test |
| extra_add_multiple.test |
| extra_count.test |
| extra_count_by_id.test |
| extra_count_ignore_zip64.test |
| extra_delete.test |
| extra_delete_by_id.test |
| extra_field_align.test |
| extra_get.test |
| extra_get_by_id.test |
| extra_set.test |
| extra_set_modify_c.test |
| extra_set_modify_l.test |
| fdopen_ok.test |
| file_comment_encmismatch.test |
| fopen_unchanged.test |
| fread.test |
| fseek_deflated.test |
| fseek_fail.test |
| fseek_ok.test |
| get_comment.test |
| junk_at_end.test |
| junk_at_start.test |
| name_locate.test |
| open_cons_extrabytes.test |
| open_empty.test |
| open_empty_2.test |
| open_extrabytes.test |
| open_file_count.test |
| open_filename_duplicate.test |
| open_filename_duplicate_consistency.test |
| open_filename_duplicate_empty.test |
| open_filename_duplicate_empty_consistency.test |
| open_filename_empty.test |
| open_incons.test |
| open_many_fail.test |
| open_many_ok.test |
| open_multidisk.test |
| open_new_but_exists.test |
| open_new_ok.test |
| open_nonarchive.test |
| open_nosuchfile.test |
| open_ok.test |
| open_too_short.test |
| open_truncate.test |
| open_zip64_3mf.test |
| open_zip64_ok.test |
| preload.test |
| progress.test |
| rename_ascii.test |
| rename_cp437.test |
| rename_deleted.test |
| rename_fail.test |
| rename_ok.test |
| rename_utf8.test |
| rename_utf8_encmismatch.test |
| set_comment_all.test |
| set_comment_localonly.test |
| set_comment_removeglobal.test |
| set_comment_revert.test |
| set_compression_bzip2_to_deflate.test |
| set_compression_deflate_to_bzip2.test |
| set_compression_deflate_to_deflate.test |
| set_compression_deflate_to_store.test |
| set_compression_store_to_bzip2.test |
| set_compression_store_to_deflate.test |
| set_compression_store_to_store.test |
| set_compression_store_to_xz.test |
| set_compression_unknown.test |
| set_compression_xz_to_store.test |
| stat_index_cp437_guess.test |
| stat_index_cp437_raw.test |
| stat_index_cp437_strict.test |
| stat_index_fileorder.test |
| stat_index_streamed.test |
| stat_index_streamed_zip64.test |
| stat_index_utf8_guess.test |
| stat_index_utf8_raw.test |
| stat_index_utf8_strict.test |
| stat_index_utf8_unmarked_strict.test |
| stat_index_zip64.test |
| utf-8-standardization.test |
| zip-in-archive-comment.test |
| zip64_creation.test |
| zip64_stored_creation.test |
| ) |
| |
| FOREACH(CASE ${EXTRA_TESTS}) |
| ADD_TEST(${CASE} perl ${CMAKE_BINARY_DIR}/regress/runtest ${CMAKE_CURRENT_SOURCE_DIR}/${CASE}) |
| SET_TESTS_PROPERTIES(${CASE} PROPERTIES SKIP_RETURN_CODE 77) |
| ENDFOREACH() |
| |
| INCLUDE_DIRECTORIES(BEFORE ${CMAKE_CURRENT_SOURCE_DIR}/../lib ${CMAKE_CURRENT_SOURCE_DIR}/../src ${CMAKE_CURRENT_BINARY_DIR}/..) |
| |
| ADD_CUSTOM_TARGET(check COMMAND ${CMAKE_CTEST_COMMAND}) |
| |
| ADD_EXECUTABLE(fuzz_main fuzz_main.c) |
| TARGET_LINK_LIBRARIES(fuzz_main zip) |