123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104 |
- # ----------------------------------------------------------------------------
- # CMake file for zlib. See root CMakeLists.txt
- #
- # ----------------------------------------------------------------------------
- project(${ZLIB_LIBRARY} C)
- include(CheckFunctionExists)
- include(CheckIncludeFile)
- include(CheckCSourceCompiles)
- include(CheckTypeSize)
- #
- # Check for fseeko
- #
- check_function_exists(fseeko HAVE_FSEEKO)
- if(NOT HAVE_FSEEKO)
- add_definitions(-DNO_FSEEKO)
- endif()
- #
- # Check for unistd.h
- #
- if(NOT MSVC)
- check_include_file(unistd.h Z_HAVE_UNISTD_H)
- if(Z_HAVE_UNISTD_H)
- add_definitions(-DZ_HAVE_UNISTD_H)
- endif()
- endif()
- if(MSVC)
- add_definitions(-D_CRT_SECURE_NO_DEPRECATE)
- add_definitions(-D_CRT_NONSTDC_NO_DEPRECATE)
- endif()
- #
- # Check to see if we have large file support
- #
- check_type_size(off64_t OFF64_T)
- if(HAVE_OFF64_T)
- add_definitions(-D_LARGEFILE64_SOURCE=1)
- endif()
- ocv_include_directories("${CMAKE_CURRENT_SOURCE_DIR}")
- set(ZLIB_PUBLIC_HDRS
- zconf.h
- zlib.h
- )
- set(ZLIB_PRIVATE_HDRS
- crc32.h
- deflate.h
- gzguts.h
- inffast.h
- inffixed.h
- inflate.h
- inftrees.h
- trees.h
- zutil.h
- )
- set(ZLIB_SRCS
- adler32.c
- compress.c
- crc32.c
- deflate.c
- gzclose.c
- gzlib.c
- gzread.c
- gzwrite.c
- inflate.c
- infback.c
- inftrees.c
- inffast.c
- trees.c
- uncompr.c
- zutil.c
- )
- add_library(${ZLIB_LIBRARY} STATIC ${OPENCV_3RDPARTY_EXCLUDE_FROM_ALL} ${ZLIB_SRCS} ${ZLIB_PUBLIC_HDRS} ${ZLIB_PRIVATE_HDRS})
- set_target_properties(${ZLIB_LIBRARY} PROPERTIES DEFINE_SYMBOL ZLIB_DLL)
- ocv_warnings_disable(CMAKE_C_FLAGS -Wshorten-64-to-32 -Wattributes -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wshift-negative-value
- -Wundef # _LFS64_LARGEFILE is not defined
- /wd4267 # MSVS 2015 (x64) + zlib 1.2.11
- -Wimplicit-fallthrough
- )
- set_target_properties(${ZLIB_LIBRARY} PROPERTIES
- OUTPUT_NAME ${ZLIB_LIBRARY}
- DEBUG_POSTFIX "${OPENCV_DEBUG_POSTFIX}"
- COMPILE_PDB_NAME ${ZLIB_LIBRARY}
- COMPILE_PDB_NAME_DEBUG "${ZLIB_LIBRARY}${OPENCV_DEBUG_POSTFIX}"
- ARCHIVE_OUTPUT_DIRECTORY ${3P_LIBRARY_OUTPUT_PATH}
- )
- if(ENABLE_SOLUTION_FOLDERS)
- set_target_properties(${ZLIB_LIBRARY} PROPERTIES FOLDER "3rdparty")
- endif()
- if(NOT BUILD_SHARED_LIBS)
- ocv_install_target(${ZLIB_LIBRARY} EXPORT OpenCVModules ARCHIVE DESTINATION ${OPENCV_3P_LIB_INSTALL_PATH} COMPONENT dev)
- endif()
- ocv_install_3rdparty_licenses(zlib README)
|