Last active
September 25, 2017 22:36
-
-
Save ksophocleous/0d48934c4da937301f9fa309b535032c to your computer and use it in GitHub Desktop.
zlib-diffs
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
diff --git a/CMakeLists.txt b/CMakeLists.txt | |
index 0fe939d..26e3b7e 100644 | |
--- a/CMakeLists.txt | |
+++ b/CMakeLists.txt | |
@@ -7,12 +7,35 @@ set(VERSION "1.2.11") | |
option(ASM686 "Enable building i686 assembly implementation") | |
option(AMD64 "Enable building amd64 assembly implementation") | |
+option(BUILD_EXAMPLES "Enable building example binaries" ON) | |
+ | |
+set(INSTALL_BIN_DIR "bin" CACHE PATH "Installation directory for executables") | |
+set(INSTALL_LIB_DIR "lib" CACHE PATH "Installation directory for libraries") | |
+set(INSTALL_INC_DIR "include" CACHE PATH "Installation directory for headers") | |
+set(INSTALL_MAN_DIR "share/man" CACHE PATH "Installation directory for manual pages") | |
+set(INSTALL_PKGCONFIG_DIR "share/pkgconfig" CACHE PATH "Installation directory for pkgconfig (.pc) files") | |
+ | |
+if(MSVC) | |
+ option(BUILD_WITH_STATIC_MSVC_RUNTIME "Link with the static vc runtime" OFF) | |
+ if(BUILD_WITH_STATIC_MSVC_RUNTIME) | |
+ # CMAKE_CONFIGURATION_TYPES is empty on non-IDE generators (Ninja, NMake) | |
+ # and that's why we also use CMAKE_BUILD_TYPE to cover for those generators. | |
+ # For IDE generators, CMAKE_BUILD_TYPE is usually empty | |
+ foreach(_config_type ${CMAKE_CONFIGURATION_TYPES} ${CMAKE_BUILD_TYPE}) | |
+ string(TOUPPER ${_config_type} _upper_config_type) | |
+ set(_flag_var "CMAKE_C_FLAGS_${_upper_config_type}") | |
+ if(${_flag_var} MATCHES "/MD") | |
+ string(REGEX REPLACE "/MD" "/MT" ${_flag_var} "${${_flag_var}}") | |
+ endif() | |
+ endforeach() | |
+ | |
+ # clean up | |
+ set(_upper_config_type) | |
+ set(_config_type) | |
+ set(_flag_var) | |
+ endif() | |
+endif() | |
-set(INSTALL_BIN_DIR "${CMAKE_INSTALL_PREFIX}/bin" CACHE PATH "Installation directory for executables") | |
-set(INSTALL_LIB_DIR "${CMAKE_INSTALL_PREFIX}/lib" CACHE PATH "Installation directory for libraries") | |
-set(INSTALL_INC_DIR "${CMAKE_INSTALL_PREFIX}/include" CACHE PATH "Installation directory for headers") | |
-set(INSTALL_MAN_DIR "${CMAKE_INSTALL_PREFIX}/share/man" CACHE PATH "Installation directory for manual pages") | |
-set(INSTALL_PKGCONFIG_DIR "${CMAKE_INSTALL_PREFIX}/share/pkgconfig" CACHE PATH "Installation directory for pkgconfig (.pc) files") | |
include(CheckTypeSize) | |
include(CheckFunctionExists) | |
@@ -80,9 +103,9 @@ endif() | |
set(ZLIB_PC ${CMAKE_CURRENT_BINARY_DIR}/zlib.pc) | |
configure_file( ${CMAKE_CURRENT_SOURCE_DIR}/zlib.pc.cmakein | |
- ${ZLIB_PC} @ONLY) | |
-configure_file( ${CMAKE_CURRENT_SOURCE_DIR}/zconf.h.cmakein | |
- ${CMAKE_CURRENT_BINARY_DIR}/zconf.h @ONLY) | |
+ ${ZLIB_PC} @ONLY) | |
+configure_file( ${CMAKE_CURRENT_SOURCE_DIR}/zconf.h.cmakein | |
+ ${CMAKE_CURRENT_BINARY_DIR}/zconf.h @ONLY) | |
include_directories(${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_SOURCE_DIR}) | |
@@ -135,31 +158,31 @@ if(CMAKE_COMPILER_IS_GNUCC) | |
elseif (AMD64) | |
set(ZLIB_ASMS contrib/amd64/amd64-match.S) | |
endif () | |
- | |
- if(ZLIB_ASMS) | |
- add_definitions(-DASMV) | |
- set_source_files_properties(${ZLIB_ASMS} PROPERTIES LANGUAGE C COMPILE_FLAGS -DNO_UNDERLINE) | |
- endif() | |
+ | |
+ if(ZLIB_ASMS) | |
+ add_definitions(-DASMV) | |
+ set_source_files_properties(${ZLIB_ASMS} PROPERTIES LANGUAGE C COMPILE_FLAGS -DNO_UNDERLINE) | |
+ endif() | |
endif() | |
if(MSVC) | |
if(ASM686) | |
- ENABLE_LANGUAGE(ASM_MASM) | |
+ ENABLE_LANGUAGE(ASM_MASM) | |
set(ZLIB_ASMS | |
- contrib/masmx86/inffas32.asm | |
- contrib/masmx86/match686.asm | |
- ) | |
+ contrib/masmx86/inffas32.asm | |
+ contrib/masmx86/match686.asm | |
+ ) | |
elseif (AMD64) | |
- ENABLE_LANGUAGE(ASM_MASM) | |
+ ENABLE_LANGUAGE(ASM_MASM) | |
set(ZLIB_ASMS | |
- contrib/masmx64/gvmat64.asm | |
- contrib/masmx64/inffasx64.asm | |
- ) | |
+ contrib/masmx64/gvmat64.asm | |
+ contrib/masmx64/inffasx64.asm | |
+ ) | |
endif() | |
- if(ZLIB_ASMS) | |
- add_definitions(-DASMV -DASMINF) | |
- endif() | |
+ if(ZLIB_ASMS) | |
+ add_definitions(-DASMV -DASMINF) | |
+ endif() | |
endif() | |
# parse the full version number from zlib.h and include in ZLIB_FULL_VERSION | |
@@ -183,12 +206,17 @@ if(MINGW) | |
set(ZLIB_DLL_SRCS ${CMAKE_CURRENT_BINARY_DIR}/zlib1rc.obj) | |
endif(MINGW) | |
-add_library(zlib SHARED ${ZLIB_SRCS} ${ZLIB_ASMS} ${ZLIB_DLL_SRCS} ${ZLIB_PUBLIC_HDRS} ${ZLIB_PRIVATE_HDRS}) | |
+if(BUILD_SHARED_LIBS) | |
+ add_library(zlib SHARED ${ZLIB_SRCS} ${ZLIB_ASMS} ${ZLIB_DLL_SRCS} ${ZLIB_PUBLIC_HDRS} ${ZLIB_PRIVATE_HDRS}) | |
+endif() | |
add_library(zlibstatic STATIC ${ZLIB_SRCS} ${ZLIB_ASMS} ${ZLIB_PUBLIC_HDRS} ${ZLIB_PRIVATE_HDRS}) | |
-set_target_properties(zlib PROPERTIES DEFINE_SYMBOL ZLIB_DLL) | |
-set_target_properties(zlib PROPERTIES SOVERSION 1) | |
-if(NOT CYGWIN) | |
+if(BUILD_SHARED_LIBS) | |
+ set_target_properties(zlib PROPERTIES DEFINE_SYMBOL ZLIB_DLL) | |
+ set_target_properties(zlib PROPERTIES SOVERSION 1) | |
+endif() | |
+ | |
+if(NOT CYGWIN AND BUILD_SHARED_LIBS) | |
# This property causes shared libraries on Linux to have the full version | |
# encoded into their final filename. We disable this on Cygwin because | |
# it causes cygz-${ZLIB_FULL_VERSION}.dll to be created when cygz.dll | |
@@ -201,49 +229,67 @@ endif() | |
if(UNIX) | |
# On unix-like platforms the library is almost always called libz | |
- set_target_properties(zlib zlibstatic PROPERTIES OUTPUT_NAME z) | |
- if(NOT APPLE) | |
- set_target_properties(zlib PROPERTIES LINK_FLAGS "-Wl,--version-script,\"${CMAKE_CURRENT_SOURCE_DIR}/zlib.map\"") | |
- endif() | |
+ if(BUILD_SHARED_LIBS) | |
+ set_target_properties(zlib PROPERTIES OUTPUT_NAME z) | |
+ endif() | |
+ set_target_properties(zlibstatic PROPERTIES OUTPUT_NAME z) | |
+ if(NOT APPLE AND BUILD_SHARED_LIBS) | |
+ set_target_properties(zlib PROPERTIES LINK_FLAGS "-Wl,--version-script,\"${CMAKE_CURRENT_SOURCE_DIR}/zlib.map\"") | |
+ endif() | |
elseif(BUILD_SHARED_LIBS AND WIN32) | |
# Creates zlib1.dll when building shared library version | |
set_target_properties(zlib PROPERTIES SUFFIX "1.dll") | |
endif() | |
-if(NOT SKIP_INSTALL_LIBRARIES AND NOT SKIP_INSTALL_ALL ) | |
- install(TARGETS zlib zlibstatic | |
- RUNTIME DESTINATION "${INSTALL_BIN_DIR}" | |
- ARCHIVE DESTINATION "${INSTALL_LIB_DIR}" | |
- LIBRARY DESTINATION "${INSTALL_LIB_DIR}" ) | |
-endif() | |
-if(NOT SKIP_INSTALL_HEADERS AND NOT SKIP_INSTALL_ALL ) | |
- install(FILES ${ZLIB_PUBLIC_HDRS} DESTINATION "${INSTALL_INC_DIR}") | |
-endif() | |
-if(NOT SKIP_INSTALL_FILES AND NOT SKIP_INSTALL_ALL ) | |
- install(FILES zlib.3 DESTINATION "${INSTALL_MAN_DIR}/man3") | |
-endif() | |
-if(NOT SKIP_INSTALL_FILES AND NOT SKIP_INSTALL_ALL ) | |
- install(FILES ${ZLIB_PC} DESTINATION "${INSTALL_PKGCONFIG_DIR}") | |
+if(NOT SKIP_INSTALL_ALL) | |
+ if(NOT SKIP_INSTALL_LIBRARIES) | |
+ list(APPEND targets zlibstatic) | |
+ if(BUILD_SHARED_LIBS) | |
+ list(APPEND targets zlib) | |
+ endif() | |
+ install(TARGETS ${targets} | |
+ EXPORT ${PROJECT_NAME}Config | |
+ RUNTIME DESTINATION "${INSTALL_BIN_DIR}" | |
+ ARCHIVE DESTINATION "${INSTALL_LIB_DIR}" | |
+ LIBRARY DESTINATION "${INSTALL_LIB_DIR}") | |
+ install(EXPORT ${PROJECT_NAME}Config | |
+ NAMESPACE zlib:: | |
+ DESTINATION cmake) | |
+ if(CMAKE_VERSION VERSION_GREATER 2.8.11) | |
+ if(BUILD_SHARED_LIBS) | |
+ target_include_directories(zlib PUBLIC $<INSTALL_INTERFACE:${INSTALL_INC_DIR}>) | |
+ endif() | |
+ target_include_directories(zlibstatic PUBLIC $<INSTALL_INTERFACE:${INSTALL_INC_DIR}>) | |
+ endif() | |
+ endif() | |
+ if(NOT SKIP_INSTALL_HEADERS) | |
+ install(FILES ${ZLIB_PUBLIC_HDRS} DESTINATION "${INSTALL_INC_DIR}") | |
+ endif() | |
+ if(NOT SKIP_INSTALL_FILES) | |
+ install(FILES zlib.3 DESTINATION "${INSTALL_MAN_DIR}/man3") | |
+ install(FILES ${ZLIB_PC} DESTINATION "${INSTALL_PKGCONFIG_DIR}") | |
+ endif() | |
endif() | |
#============================================================================ | |
# Example binaries | |
#============================================================================ | |
- | |
-add_executable(example test/example.c) | |
-target_link_libraries(example zlib) | |
-add_test(example example) | |
- | |
-add_executable(minigzip test/minigzip.c) | |
-target_link_libraries(minigzip zlib) | |
- | |
-if(HAVE_OFF64_T) | |
- add_executable(example64 test/example.c) | |
- target_link_libraries(example64 zlib) | |
- set_target_properties(example64 PROPERTIES COMPILE_FLAGS "-D_FILE_OFFSET_BITS=64") | |
- add_test(example64 example64) | |
- | |
- add_executable(minigzip64 test/minigzip.c) | |
- target_link_libraries(minigzip64 zlib) | |
- set_target_properties(minigzip64 PROPERTIES COMPILE_FLAGS "-D_FILE_OFFSET_BITS=64") | |
+if(BUILD_EXAMPLES) | |
+ add_executable(example test/example.c) | |
+ target_link_libraries(example zlibstatic) | |
+ add_test(example example) | |
+ | |
+ add_executable(minigzip test/minigzip.c) | |
+ target_link_libraries(minigzip zlibstatic) | |
+ | |
+ if(HAVE_OFF64_T) | |
+ add_executable(example64 test/example.c) | |
+ target_link_libraries(example64 zlibstatic) | |
+ set_target_properties(example64 PROPERTIES COMPILE_FLAGS "-D_FILE_OFFSET_BITS=64") | |
+ add_test(example64 example64) | |
+ | |
+ add_executable(minigzip64 test/minigzip.c) | |
+ target_link_libraries(minigzip64 zlibstatic) | |
+ set_target_properties(minigzip64 PROPERTIES COMPILE_FLAGS "-D_FILE_OFFSET_BITS=64") | |
+ endif() | |
endif() |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 0fe939d..26e3b7e 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -7,12 +7,35 @@ set(VERSION "1.2.11")
option(ASM686 "Enable building i686 assembly implementation")
option(AMD64 "Enable building amd64 assembly implementation")
+option(BUILD_EXAMPLES "Enable building example binaries" ON)
+
+set(INSTALL_BIN_DIR "bin" CACHE PATH "Installation directory for executables")
+set(INSTALL_LIB_DIR "lib" CACHE PATH "Installation directory for libraries")
+set(INSTALL_INC_DIR "include" CACHE PATH "Installation directory for headers")
+set(INSTALL_MAN_DIR "share/man" CACHE PATH "Installation directory for manual pages")
+set(INSTALL_PKGCONFIG_DIR "share/pkgconfig" CACHE PATH "Installation directory for pkgconfig (.pc) files")
+
+if(MSVC)
+endif()
-set(INSTALL_BIN_DIR "${CMAKE_INSTALL_PREFIX}/bin" CACHE PATH "Installation directory for executables")
-set(INSTALL_LIB_DIR "${CMAKE_INSTALL_PREFIX}/lib" CACHE PATH "Installation directory for libraries")
-set(INSTALL_INC_DIR "${CMAKE_INSTALL_PREFIX}/include" CACHE PATH "Installation directory for headers")
-set(INSTALL_MAN_DIR "${CMAKE_INSTALL_PREFIX}/share/man" CACHE PATH "Installation directory for manual pages")
-set(INSTALL_PKGCONFIG_DIR "${CMAKE_INSTALL_PREFIX}/share/pkgconfig" CACHE PATH "Installation directory for pkgconfig (.pc) files")
include(CheckTypeSize)
include(CheckFunctionExists)
@@ -80,9 +103,9 @@ endif()
set(ZLIB_PC ${CMAKE_CURRENT_BINARY_DIR}/zlib.pc)
configure_file( ${CMAKE_CURRENT_SOURCE_DIR}/zlib.pc.cmakein
-configure_file( ${CMAKE_CURRENT_SOURCE_DIR}/zconf.h.cmakein
+configure_file( ${CMAKE_CURRENT_SOURCE_DIR}/zconf.h.cmakein
include_directories(${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_SOURCE_DIR})
@@ -135,31 +158,31 @@ if(CMAKE_COMPILER_IS_GNUCC)
elseif (AMD64)
set(ZLIB_ASMS contrib/amd64/amd64-match.S)
endif ()
endif()
if(MSVC)
if(ASM686)
endif()
parse the full version number from zlib.h and include in ZLIB_FULL_VERSION
@@ -183,12 +206,17 @@ if(MINGW)
set(ZLIB_DLL_SRCS ${CMAKE_CURRENT_BINARY_DIR}/zlib1rc.obj)
endif(MINGW)
-add_library(zlib SHARED ${ZLIB_SRCS} ${ZLIB_ASMS} ${ZLIB_DLL_SRCS} ${ZLIB_PUBLIC_HDRS} ${ZLIB_PRIVATE_HDRS})
+if(BUILD_SHARED_LIBS)
+endif()
add_library(zlibstatic STATIC ${ZLIB_SRCS} ${ZLIB_ASMS} ${ZLIB_PUBLIC_HDRS} ${ZLIB_PRIVATE_HDRS})
-set_target_properties(zlib PROPERTIES DEFINE_SYMBOL ZLIB_DLL)
-set_target_properties(zlib PROPERTIES SOVERSION 1)
-if(NOT CYGWIN)
+if(BUILD_SHARED_LIBS)
+endif()
+if(NOT CYGWIN AND BUILD_SHARED_LIBS)
# This property causes shared libraries on Linux to have the full version
# encoded into their final filename. We disable this on Cygwin because
# it causes cygz-${ZLIB_FULL_VERSION}.dll to be created when cygz.dll
@@ -201,49 +229,67 @@ endif()
if(UNIX)
# On unix-like platforms the library is almost always called libz
elseif(BUILD_SHARED_LIBS AND WIN32)
Creates zlib1.dll when building shared library version
set_target_properties(zlib PROPERTIES SUFFIX "1.dll")endif()
-if(NOT SKIP_INSTALL_LIBRARIES AND NOT SKIP_INSTALL_ALL )
-endif()
-if(NOT SKIP_INSTALL_HEADERS AND NOT SKIP_INSTALL_ALL )
-endif()
-if(NOT SKIP_INSTALL_FILES AND NOT SKIP_INSTALL_ALL )
-endif()
-if(NOT SKIP_INSTALL_FILES AND NOT SKIP_INSTALL_ALL )
+if(NOT SKIP_INSTALL_ALL)
endif()
#============================================================================
Example binaries
#============================================================================
-add_executable(example test/example.c)
-target_link_libraries(example zlib)
-add_test(example example)
-add_executable(minigzip test/minigzip.c)
-target_link_libraries(minigzip zlib)
-if(HAVE_OFF64_T)
+if(BUILD_EXAMPLES)
endif()
diff --git a/zconf.h b/zconf.h
deleted file mode 100644
index 5e1d68a..0000000
--- a/zconf.h
+++ /dev/null
@@ -1,534 +0,0 @@
-/* zconf.h -- configuration of the zlib compression library
-/* @(#)$Id$ */
-#ifndef ZCONF_H
-#define ZCONF_H
-/*
-#ifdef Z_PREFIX / may be set to #if 1 by ./configure */
-# define Z_PREFIX_SET
-/* all linked symbols and init macros */
-# define dist_code z__dist_code
-# define length_code z__length_code
-# define tr_align z__tr_align
-# define tr_flush_bits z__tr_flush_bits
-# define tr_flush_block z__tr_flush_block
-# define tr_init z__tr_init
-# define tr_stored_block z__tr_stored_block
-# define tr_tally z__tr_tally
-# define adler32 z_adler32
-# define adler32_combine z_adler32_combine
-# define adler32_combine64 z_adler32_combine64
-# define adler32_z z_adler32_z
-# ifndef Z_SOLO
-# define compress z_compress
-# define compress2 z_compress2
-# define compressBound z_compressBound
-# endif
-# define crc32 z_crc32
-# define crc32_combine z_crc32_combine
-# define crc32_combine64 z_crc32_combine64
-# define crc32_z z_crc32_z
-# define deflate z_deflate
-# define deflateBound z_deflateBound
-# define deflateCopy z_deflateCopy
-# define deflateEnd z_deflateEnd
-# define deflateGetDictionary z_deflateGetDictionary
-# define deflateInit z_deflateInit
-# define deflateInit2 z_deflateInit2
-# define deflateInit2 z_deflateInit2
-# define deflateInit z_deflateInit
-# define deflateParams z_deflateParams
-# define deflatePending z_deflatePending
-# define deflatePrime z_deflatePrime
-# define deflateReset z_deflateReset
-# define deflateResetKeep z_deflateResetKeep
-# define deflateSetDictionary z_deflateSetDictionary
-# define deflateSetHeader z_deflateSetHeader
-# define deflateTune z_deflateTune
-# define deflate_copyright z_deflate_copyright
-# define get_crc_table z_get_crc_table
-# ifndef Z_SOLO
-# define gz_error z_gz_error
-# define gz_intmax z_gz_intmax
-# define gz_strwinerror z_gz_strwinerror
-# define gzbuffer z_gzbuffer
-# define gzclearerr z_gzclearerr
-# define gzclose z_gzclose
-# define gzclose_r z_gzclose_r
-# define gzclose_w z_gzclose_w
-# define gzdirect z_gzdirect
-# define gzdopen z_gzdopen
-# define gzeof z_gzeof
-# define gzerror z_gzerror
-# define gzflush z_gzflush
-# define gzfread z_gzfread
-# define gzfwrite z_gzfwrite
-# define gzgetc z_gzgetc
-# define gzgetc z_gzgetc
-# define gzgets z_gzgets
-# define gzoffset z_gzoffset
-# define gzoffset64 z_gzoffset64
-# define gzopen z_gzopen
-# define gzopen64 z_gzopen64
-# ifdef WIN32
-# define gzopen_w z_gzopen_w
-# endif
-# define gzprintf z_gzprintf
-# define gzputc z_gzputc
-# define gzputs z_gzputs
-# define gzread z_gzread
-# define gzrewind z_gzrewind
-# define gzseek z_gzseek
-# define gzseek64 z_gzseek64
-# define gzsetparams z_gzsetparams
-# define gztell z_gztell
-# define gztell64 z_gztell64
-# define gzungetc z_gzungetc
-# define gzvprintf z_gzvprintf
-# define gzwrite z_gzwrite
-# endif
-# define inflate z_inflate
-# define inflateBack z_inflateBack
-# define inflateBackEnd z_inflateBackEnd
-# define inflateBackInit z_inflateBackInit
-# define inflateBackInit z_inflateBackInit
-# define inflateCodesUsed z_inflateCodesUsed
-# define inflateCopy z_inflateCopy
-# define inflateEnd z_inflateEnd
-# define inflateGetDictionary z_inflateGetDictionary
-# define inflateGetHeader z_inflateGetHeader
-# define inflateInit z_inflateInit
-# define inflateInit2 z_inflateInit2
-# define inflateInit2 z_inflateInit2_
-# define inflateInit_ z_inflateInit_
-# define inflateMark z_inflateMark
-# define inflatePrime z_inflatePrime
-# define inflateReset z_inflateReset
-# define inflateReset2 z_inflateReset2
-# define inflateResetKeep z_inflateResetKeep
-# define inflateSetDictionary z_inflateSetDictionary
-# define inflateSync z_inflateSync
-# define inflateSyncPoint z_inflateSyncPoint
-# define inflateUndermine z_inflateUndermine
-# define inflateValidate z_inflateValidate
-# define inflate_copyright z_inflate_copyright
-# define inflate_fast z_inflate_fast
-# define inflate_table z_inflate_table
-# ifndef Z_SOLO
-# define uncompress z_uncompress
-# define uncompress2 z_uncompress2
-# endif
-# define zError z_zError
-# ifndef Z_SOLO
-# define zcalloc z_zcalloc
-# define zcfree z_zcfree
-# endif
-# define zlibCompileFlags z_zlibCompileFlags
-# define zlibVersion z_zlibVersion
-/* all zlib typedefs in zlib.h and zconf.h */
-# define Byte z_Byte
-# define Bytef z_Bytef
-# define alloc_func z_alloc_func
-# define charf z_charf
-# define free_func z_free_func
-# ifndef Z_SOLO
-# define gzFile z_gzFile
-# endif
-# define gz_header z_gz_header
-# define gz_headerp z_gz_headerp
-# define in_func z_in_func
-# define intf z_intf
-# define out_func z_out_func
-# define uInt z_uInt
-# define uIntf z_uIntf
-# define uLong z_uLong
-# define uLongf z_uLongf
-# define voidp z_voidp
-# define voidpc z_voidpc
-# define voidpf z_voidpf
-/* all zlib structs in zlib.h and zconf.h */
-# define gz_header_s z_gz_header_s
-# define internal_state z_internal_state
-#endif
-#if defined(MSDOS) && !defined(MSDOS)
-# define MSDOS
-#endif
-#if (defined(OS_2) || defined(OS2)) && !defined(OS2)
-# define OS2
-#endif
-#if defined(_WINDOWS) && !defined(WINDOWS)
-# define WINDOWS
-#endif
-#if defined(_WIN32) || defined(_WIN32_WCE) || defined(WIN32)
-# ifndef WIN32
-# define WIN32
-# endif
-#endif
-#if (defined(MSDOS) || defined(OS2) || defined(WINDOWS)) && !defined(WIN32)
-# if !defined(GNUC) && !defined(FLAT) && !defined(386)
-# ifndef SYS16BIT
-# define SYS16BIT
-# endif
-# endif
-#endif
-/*
-#ifdef SYS16BIT
-# define MAXSEG_64K
-#endif
-#ifdef MSDOS
-# define UNALIGNED_OK
-#endif
-#ifdef STDC_VERSION
-# ifndef STDC
-# define STDC
-# endif
-# if STDC_VERSION >= 199901L
-# ifndef STDC99
-# define STDC99
-# endif
-# endif
-#endif
-#if !defined(STDC) && (defined(STDC) || defined(__cplusplus))
-# define STDC
-#endif
-#if !defined(STDC) && (defined(GNUC) || defined(BORLANDC))
-# define STDC
-#endif
-#if !defined(STDC) && (defined(MSDOS) || defined(WINDOWS) || defined(WIN32))
-# define STDC
-#endif
-#if !defined(STDC) && (defined(OS2) || defined(HOS_AIX))
-# define STDC
-#endif
-#if defined(OS400) && !defined(STDC) /* iSeries (formerly AS/400). */
-# define STDC
-#endif
-#ifndef STDC
-# ifndef const /* cannot use !defined(STDC) && !defined(const) on Mac /
-# define const / note: need a more gentle solution here */
-# endif
-#endif
-#if defined(ZLIB_CONST) && !defined(z_const)
-# define z_const const
-#else
-# define z_const
-#endif
-#ifdef Z_SOLO
-#else
-# define z_longlong long long
-# if defined(NO_SIZE_T)
-# elif defined(STDC)
-# include <stddef.h>
-# else
-# endif
-# undef z_longlong
-#endif
-/* Maximum value for memLevel in deflateInit2 */
-#ifndef MAX_MEM_LEVEL
-# ifdef MAXSEG_64K
-# define MAX_MEM_LEVEL 8
-# else
-# define MAX_MEM_LEVEL 9
-# endif
-#endif
-/* Maximum value for windowBits in deflateInit2 and inflateInit2.
-#ifndef MAX_WBITS
-# define MAX_WBITS 15 / 32K LZ77 window */
-#endif
-/* The memory requirements for deflate are (in bytes):
-*/
-#ifndef OF /* function prototypes */
-# ifdef STDC
-# define OF(args) args
-# else
-# define OF(args) ()
-# endif
-#endif
-#ifndef Z_ARG /* function prototypes for stdarg */
-# if defined(STDC) || defined(Z_HAVE_STDARG_H)
-# define Z_ARG(args) args
-# else
-# define Z_ARG(args) ()
-# endif
-#endif
-/* The following definitions for FAR are needed only for MSDOS mixed
-#ifdef SYS16BIT
-# if defined(M_I86SM) || defined(M_I86MM)
-# define SMALL_MEDIUM
-# ifdef _MSC_VER
-# define FAR _far
-# else
-# define FAR far
-# endif
-# endif
-# if (defined(SMALL) || defined(MEDIUM))
-# define SMALL_MEDIUM
-# ifdef BORLANDC
-# define FAR _far
-# else
-# define FAR far
-# endif
-# endif
-#endif
-#if defined(WINDOWS) || defined(WIN32)
-# ifdef ZLIB_DLL
-# if defined(WIN32) && (!defined(BORLANDC) || (BORLANDC >= 0x500))
-# ifdef ZLIB_INTERNAL
-# define ZEXTERN extern __declspec(dllexport)
-# else
-# define ZEXTERN extern __declspec(dllimport)
-# endif
-# endif
-# endif / ZLIB_DLL */
-# ifdef ZLIB_WINAPI
-# ifdef FAR
-# undef FAR
-# endif
-# include <windows.h>
-# define ZEXPORT WINAPI
-# ifdef WIN32
-# define ZEXPORTVA WINAPIV
-# else
-# define ZEXPORTVA FAR CDECL
-# endif
-# endif
-#endif
-#if defined (BEOS)
-# ifdef ZLIB_DLL
-# ifdef ZLIB_INTERNAL
-# define ZEXPORT __declspec(dllexport)
-# define ZEXPORTVA __declspec(dllexport)
-# else
-# define ZEXPORT __declspec(dllimport)
-# define ZEXPORTVA __declspec(dllimport)
-# endif
-# endif
-#endif
-#ifndef ZEXTERN
-# define ZEXTERN extern
-#endif
-#ifndef ZEXPORT
-# define ZEXPORT
-#endif
-#ifndef ZEXPORTVA
-# define ZEXPORTVA
-#endif
-#ifndef FAR
-# define FAR
-#endif
-#if !defined(MACTYPES)
-typedef unsigned char Byte; /* 8 bits /
-#endif
-typedef unsigned int uInt; / 16 bits or more /
-typedef unsigned long uLong; / 32 bits or more */
-#ifdef SMALL_MEDIUM
-# define Bytef Byte FAR
-#else
-#endif
-typedef char FAR charf;
-typedef int FAR intf;
-typedef uInt FAR uIntf;
-typedef uLong FAR uLongf;
-#ifdef STDC
-#else
-#endif
-#if !defined(Z_U4) && !defined(Z_SOLO) && defined(STDC)
-# include <limits.h>
-# if (UINT_MAX == 0xffffffffUL)
-# define Z_U4 unsigned
-# elif (ULONG_MAX == 0xffffffffUL)
-# define Z_U4 unsigned long
-# elif (USHRT_MAX == 0xffffffffUL)
-# define Z_U4 unsigned short
-# endif
-#endif
-#ifdef Z_U4
-#else
-#endif
-#ifdef HAVE_UNISTD_H /* may be set to #if 1 by ./configure */
-# define Z_HAVE_UNISTD_H
-#endif
-#ifdef HAVE_STDARG_H /* may be set to #if 1 by ./configure */
-# define Z_HAVE_STDARG_H
-#endif
-#ifdef STDC
-# ifndef Z_SOLO
-# include <sys/types.h> /* for off_t */
-# endif
-#endif
-#if defined(STDC) || defined(Z_HAVE_STDARG_H)
-# ifndef Z_SOLO
-# include <stdarg.h> /* for va_list */
-# endif
-#endif
-#ifdef _WIN32
-# ifndef Z_SOLO
-# include <stddef.h> /* for wchar_t */
-# endif
-#endif
-/* a little trick to accommodate both "#define _LARGEFILE64_SOURCE" and
-#if defined(_LARGEFILE64_SOURCE) && -_LARGEFILE64_SOURCE - -1 == 1
-# undef _LARGEFILE64_SOURCE
-#endif
-#if defined(WATCOMC) && !defined(Z_HAVE_UNISTD_H)
-# define Z_HAVE_UNISTD_H
-#endif
-#ifndef Z_SOLO
-# if defined(Z_HAVE_UNISTD_H) || defined(LARGEFILE64_SOURCE)
-# include <unistd.h> /* for SEEK*, off_t, and _LFS64_LARGEFILE /
-# ifdef VMS
-# include <unixio.h> / for off_t */
-# endif
-# ifndef z_off_t
-# define z_off_t off_t
-# endif
-# endif
-#endif
-#if defined(_LFS64_LARGEFILE) && _LFS64_LARGEFILE-0
-# define Z_LFS64
-#endif
-#if defined(_LARGEFILE64_SOURCE) && defined(Z_LFS64)
-# define Z_LARGE64
-#endif
-#if defined(_FILE_OFFSET_BITS) && _FILE_OFFSET_BITS-0 == 64 && defined(Z_LFS64)
-# define Z_WANT64
-#endif
-#if !defined(SEEK_SET) && !defined(Z_SOLO)
-# define SEEK_SET 0 /* Seek from beginning of file. /
-# define SEEK_CUR 1 / Seek from current position. /
-# define SEEK_END 2 / Set file pointer to EOF plus "offset" */
-#endif
-#ifndef z_off_t
-# define z_off_t long
-#endif
-#if !defined(_WIN32) && defined(Z_LARGE64)
-# define z_off64_t off64_t
-#else
-# if defined(_WIN32) && !defined(GNUC) && !defined(Z_SOLO)
-# define z_off64_t __int64
-# else
-# define z_off64_t z_off_t
-# endif
-#endif
-/* MVS linker does not support external names larger than 8 bytes */
-#if defined(MVS)
-#endif
-#endif /* ZCONF_H */