89 lines
2.2 KiB
CMake
89 lines
2.2 KiB
CMake
project(minizip C)
|
|
|
|
add_library(minizip STATIC
|
|
minizip-ng/mz.h
|
|
minizip-ng/mz_compat.c
|
|
minizip-ng/mz_compat.h
|
|
minizip-ng/mz_crypt.c
|
|
minizip-ng/mz_crypt.h
|
|
minizip-ng/mz_os.c
|
|
minizip-ng/mz_os.h
|
|
minizip-ng/mz_strm.c
|
|
minizip-ng/mz_strm.h
|
|
minizip-ng/mz_strm_buf.c
|
|
minizip-ng/mz_strm_buf.h
|
|
# minizip-ng/mz_strm_bzip.c
|
|
# minizip-ng/mz_strm_bzip.h
|
|
# minizip-ng/mz_strm_libcomp.c
|
|
# minizip-ng/mz_strm_libcomp.h
|
|
# minizip-ng/mz_strm_lzma.c
|
|
# minizip-ng/mz_strm_lzma.h
|
|
minizip-ng/mz_strm_mem.c
|
|
minizip-ng/mz_strm_mem.h
|
|
minizip-ng/mz_strm_os.h
|
|
# minizip-ng/mz_strm_pkcrypt.c
|
|
# minizip-ng/mz_strm_pkcrypt.h
|
|
minizip-ng/mz_strm_split.c
|
|
minizip-ng/mz_strm_split.h
|
|
# minizip-ng/mz_strm_wzaes.c
|
|
# minizip-ng/mz_strm_wzaes.h
|
|
minizip-ng/mz_strm_zlib.c
|
|
minizip-ng/mz_strm_zlib.h
|
|
# minizip-ng/mz_strm_zstd.c
|
|
# minizip-ng/mz_strm_zstd.h
|
|
minizip-ng/mz_zip.c
|
|
minizip-ng/mz_zip.h
|
|
minizip-ng/mz_zip_rw.c
|
|
minizip-ng/mz_zip_rw.h
|
|
)
|
|
dolphin_disable_warnings(minizip)
|
|
|
|
if (UNIX)
|
|
target_sources(minizip PRIVATE
|
|
minizip-ng/mz_os_posix.c
|
|
minizip-ng/mz_strm_os_posix.c
|
|
)
|
|
endif()
|
|
|
|
if (WIN32)
|
|
target_sources(minizip PRIVATE
|
|
minizip-ng/mz_os_win32.c
|
|
minizip-ng/mz_strm_os_win32.c
|
|
)
|
|
endif()
|
|
|
|
# Unused files
|
|
# minizip-ng/minigzip.c
|
|
# minizip-ng/minizip.c
|
|
# minizip-ng/mz_crypt_apple.c
|
|
# minizip-ng/mz_crypt_openssl.c
|
|
# minizip-ng/mz_crypt_winvista.c
|
|
# minizip-ng/mz_crypt_winxp.c
|
|
|
|
target_include_directories(minizip PUBLIC minizip-ng)
|
|
|
|
target_compile_definitions(minizip PRIVATE HAVE_ZLIB ZLIB_COMPAT MZ_ZIP_NO_CRYPTO MZ_ZIP_NO_ENCRYPTION)
|
|
if (UNIX)
|
|
target_compile_definitions(minizip PRIVATE _POSIX_C_SOURCE=200112L)
|
|
target_compile_definitions(minizip PRIVATE __USE_LARGEFILE64 _LARGEFILE64_SOURCE)
|
|
endif()
|
|
|
|
check_include_file(stdint.h HAVE_STDINT_H)
|
|
if (HAVE_STDINT_H)
|
|
target_compile_definitions(minizip PRIVATE HAVE_STDINT_H)
|
|
endif()
|
|
|
|
check_include_file(inttypes.h HAVE_INTTYPES_H)
|
|
if (HAVE_INTTYPES_H)
|
|
target_compile_definitions(minizip PRIVATE HAVE_INTTYPES_H)
|
|
endif()
|
|
|
|
check_function_exists(fseeko HAVE_FSEEKO)
|
|
if (NOT HAVE_FSEEKO)
|
|
target_compile_definitions(minizip PRIVATE NO_FSEEKO)
|
|
endif()
|
|
|
|
target_link_libraries(minizip PUBLIC ZLIB::ZLIB)
|
|
|
|
add_library(minizip::minizip ALIAS minizip)
|