117b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner/* zconf.h -- configuration of the zlib compression library 217b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner * Copyright (C) 1995-2013 Jean-loup Gailly. 317b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner * For conditions of distribution and use, see copyright notice in zlib.h 417b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner */ 517b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner 617b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner/* @(#) $Id$ */ 717b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner 817b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#ifndef ZCONF_H 917b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#define ZCONF_H 1017b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner 1117b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner/* 1217b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner * If you *really* need a unique prefix for all types and library functions, 1317b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner * compile with -DZ_PREFIX. The "standard" zlib should be compiled without it. 1417b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner * Even better than compiling with -DZ_PREFIX would be to use configure to set 1517b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner * this permanently in zconf.h using "./configure --zprefix". 1617b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner */ 1717b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#ifdef Z_PREFIX /* may be set to #if 1 by ./configure */ 1817b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define Z_PREFIX_SET 1917b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner 2017b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner/* all linked symbols */ 2117b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define _dist_code z__dist_code 2217b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define _length_code z__length_code 2317b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define _tr_align z__tr_align 2417b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define _tr_flush_bits z__tr_flush_bits 2517b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define _tr_flush_block z__tr_flush_block 2617b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define _tr_init z__tr_init 2717b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define _tr_stored_block z__tr_stored_block 2817b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define _tr_tally z__tr_tally 2917b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define adler32 z_adler32 3017b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define adler32_combine z_adler32_combine 3117b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define adler32_combine64 z_adler32_combine64 3217b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# ifndef Z_SOLO 3317b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define compress z_compress 3417b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define compress2 z_compress2 3517b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define compressBound z_compressBound 3617b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# endif 3717b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define crc32 z_crc32 3817b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define crc32_combine z_crc32_combine 3917b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define crc32_combine64 z_crc32_combine64 4017b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define deflate z_deflate 4117b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define deflateBound z_deflateBound 4217b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define deflateCopy z_deflateCopy 4317b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define deflateEnd z_deflateEnd 4417b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define deflateInit2_ z_deflateInit2_ 4517b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define deflateInit_ z_deflateInit_ 4617b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define deflateParams z_deflateParams 4717b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define deflatePending z_deflatePending 4817b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define deflatePrime z_deflatePrime 4917b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define deflateReset z_deflateReset 5017b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define deflateResetKeep z_deflateResetKeep 5117b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define deflateSetDictionary z_deflateSetDictionary 5217b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define deflateSetHeader z_deflateSetHeader 5317b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define deflateTune z_deflateTune 5417b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define deflate_copyright z_deflate_copyright 5517b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define get_crc_table z_get_crc_table 5617b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# ifndef Z_SOLO 5717b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define gz_error z_gz_error 5817b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define gz_intmax z_gz_intmax 5917b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define gz_strwinerror z_gz_strwinerror 6017b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define gzbuffer z_gzbuffer 6117b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define gzclearerr z_gzclearerr 6217b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define gzclose z_gzclose 6317b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define gzclose_r z_gzclose_r 6417b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define gzclose_w z_gzclose_w 6517b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define gzdirect z_gzdirect 6617b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define gzdopen z_gzdopen 6717b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define gzeof z_gzeof 6817b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define gzerror z_gzerror 6917b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define gzflush z_gzflush 7017b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define gzgetc z_gzgetc 7117b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define gzgetc_ z_gzgetc_ 7217b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define gzgets z_gzgets 7317b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define gzoffset z_gzoffset 7417b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define gzoffset64 z_gzoffset64 7517b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define gzopen z_gzopen 7617b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define gzopen64 z_gzopen64 7717b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# ifdef _WIN32 7817b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define gzopen_w z_gzopen_w 7917b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# endif 8017b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define gzprintf z_gzprintf 8117b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define gzvprintf z_gzvprintf 8217b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define gzputc z_gzputc 8317b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define gzputs z_gzputs 8417b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define gzread z_gzread 8517b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define gzrewind z_gzrewind 8617b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define gzseek z_gzseek 8717b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define gzseek64 z_gzseek64 8817b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define gzsetparams z_gzsetparams 8917b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define gztell z_gztell 9017b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define gztell64 z_gztell64 9117b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define gzungetc z_gzungetc 9217b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define gzwrite z_gzwrite 9317b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# endif 9417b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define inflate z_inflate 9517b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define inflateBack z_inflateBack 9617b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define inflateBackEnd z_inflateBackEnd 9717b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define inflateBackInit_ z_inflateBackInit_ 9817b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define inflateCopy z_inflateCopy 9917b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define inflateEnd z_inflateEnd 10017b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define inflateGetHeader z_inflateGetHeader 10117b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define inflateInit2_ z_inflateInit2_ 10217b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define inflateInit_ z_inflateInit_ 10317b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define inflateMark z_inflateMark 10417b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define inflatePrime z_inflatePrime 10517b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define inflateReset z_inflateReset 10617b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define inflateReset2 z_inflateReset2 10717b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define inflateSetDictionary z_inflateSetDictionary 10817b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define inflateGetDictionary z_inflateGetDictionary 10917b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define inflateSync z_inflateSync 11017b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define inflateSyncPoint z_inflateSyncPoint 11117b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define inflateUndermine z_inflateUndermine 11217b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define inflateResetKeep z_inflateResetKeep 11317b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define inflate_copyright z_inflate_copyright 11417b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define inflate_fast z_inflate_fast 11517b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define inflate_table z_inflate_table 11617b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# ifndef Z_SOLO 11717b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define uncompress z_uncompress 11817b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# endif 11917b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define zError z_zError 12017b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# ifndef Z_SOLO 12117b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define zcalloc z_zcalloc 12217b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define zcfree z_zcfree 12317b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# endif 12417b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define zlibCompileFlags z_zlibCompileFlags 12517b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define zlibVersion z_zlibVersion 12617b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner 12717b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner/* all zlib typedefs in zlib.h and zconf.h */ 12817b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define Byte z_Byte 12917b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define Bytef z_Bytef 13017b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define alloc_func z_alloc_func 13117b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define charf z_charf 13217b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define free_func z_free_func 13317b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# ifndef Z_SOLO 13417b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define gzFile z_gzFile 13517b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# endif 13617b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define gz_header z_gz_header 13717b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define gz_headerp z_gz_headerp 13817b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define in_func z_in_func 13917b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define intf z_intf 14017b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define out_func z_out_func 14117b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define uInt z_uInt 14217b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define uIntf z_uIntf 14317b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define uLong z_uLong 14417b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define uLongf z_uLongf 14517b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define voidp z_voidp 14617b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define voidpc z_voidpc 14717b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define voidpf z_voidpf 14817b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner 14917b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner/* all zlib structs in zlib.h and zconf.h */ 15017b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define gz_header_s z_gz_header_s 15117b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define internal_state z_internal_state 15217b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner 15317b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#endif 15417b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner 15517b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#if defined(__MSDOS__) && !defined(MSDOS) 15617b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define MSDOS 15717b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#endif 15817b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#if (defined(OS_2) || defined(__OS2__)) && !defined(OS2) 15917b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define OS2 16017b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#endif 16117b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#if defined(_WINDOWS) && !defined(WINDOWS) 16217b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define WINDOWS 16317b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#endif 16417b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#if defined(_WIN32) || defined(_WIN32_WCE) || defined(__WIN32__) 16517b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# ifndef WIN32 16617b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define WIN32 16717b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# endif 16817b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#endif 16917b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#if (defined(MSDOS) || defined(OS2) || defined(WINDOWS)) && !defined(WIN32) 17017b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# if !defined(__GNUC__) && !defined(__FLAT__) && !defined(__386__) 17117b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# ifndef SYS16BIT 17217b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define SYS16BIT 17317b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# endif 17417b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# endif 17517b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#endif 17617b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner 17717b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner/* 17817b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner * Compile with -DMAXSEG_64K if the alloc function cannot allocate more 17917b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner * than 64k bytes at a time (needed on systems with 16-bit int). 18017b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner */ 18117b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#ifdef SYS16BIT 18217b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define MAXSEG_64K 18317b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#endif 18417b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#ifdef MSDOS 18517b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define UNALIGNED_OK 18617b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#endif 18717b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner 18817b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#ifdef __STDC_VERSION__ 18917b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# ifndef STDC 19017b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define STDC 19117b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# endif 19217b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# if __STDC_VERSION__ >= 199901L 19317b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# ifndef STDC99 19417b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define STDC99 19517b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# endif 19617b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# endif 19717b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#endif 19817b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#if !defined(STDC) && (defined(__STDC__) || defined(__cplusplus)) 19917b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define STDC 20017b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#endif 20117b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#if !defined(STDC) && (defined(__GNUC__) || defined(__BORLANDC__)) 20217b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define STDC 20317b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#endif 20417b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#if !defined(STDC) && (defined(MSDOS) || defined(WINDOWS) || defined(WIN32)) 20517b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define STDC 20617b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#endif 20717b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#if !defined(STDC) && (defined(OS2) || defined(__HOS_AIX__)) 20817b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define STDC 20917b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#endif 21017b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner 21117b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#if defined(__OS400__) && !defined(STDC) /* iSeries (formerly AS/400). */ 21217b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define STDC 21317b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#endif 21417b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner 21517b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#ifndef STDC 21617b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# ifndef const /* cannot use !defined(STDC) && !defined(const) on Mac */ 21717b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define const /* note: need a more gentle solution here */ 21817b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# endif 21917b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#endif 22017b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner 22117b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#if defined(ZLIB_CONST) && !defined(z_const) 22217b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define z_const const 22317b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#else 22417b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define z_const 22517b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#endif 22617b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner 22717b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner/* Some Mac compilers merge all .h files incorrectly: */ 22817b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#if defined(__MWERKS__)||defined(applec)||defined(THINK_C)||defined(__SC__) 22917b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define NO_DUMMY_DECL 23017b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#endif 23117b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner 23217b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner/* Maximum value for memLevel in deflateInit2 */ 23317b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#ifndef MAX_MEM_LEVEL 23417b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# ifdef MAXSEG_64K 23517b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define MAX_MEM_LEVEL 8 23617b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# else 23717b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define MAX_MEM_LEVEL 9 23817b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# endif 23917b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#endif 24017b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner 24117b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner/* Maximum value for windowBits in deflateInit2 and inflateInit2. 24217b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner * WARNING: reducing MAX_WBITS makes minigzip unable to extract .gz files 24317b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner * created by gzip. (Files created by minigzip can still be extracted by 24417b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner * gzip.) 24517b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner */ 24617b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#ifndef MAX_WBITS 24717b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define MAX_WBITS 15 /* 32K LZ77 window */ 24817b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#endif 24917b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner 25017b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner/* The memory requirements for deflate are (in bytes): 25117b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner (1 << (windowBits+2)) + (1 << (memLevel+9)) 25217b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner that is: 128K for windowBits=15 + 128K for memLevel = 8 (default values) 25317b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner plus a few kilobytes for small objects. For example, if you want to reduce 25417b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner the default memory requirements from 256K to 128K, compile with 25517b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner make CFLAGS="-O -DMAX_WBITS=14 -DMAX_MEM_LEVEL=7" 25617b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner Of course this will generally degrade compression (there's no free lunch). 25717b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner 25817b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner The memory requirements for inflate are (in bytes) 1 << windowBits 25917b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner that is, 32K for windowBits=15 (default value) plus a few kilobytes 26017b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner for small objects. 26117b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner*/ 26217b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner 26317b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner /* Type declarations */ 26417b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner 26517b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#ifndef OF /* function prototypes */ 26617b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# ifdef STDC 26717b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define OF(args) args 26817b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# else 26917b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define OF(args) () 27017b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# endif 27117b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#endif 27217b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner 27317b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#ifndef Z_ARG /* function prototypes for stdarg */ 27417b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# if defined(STDC) || defined(Z_HAVE_STDARG_H) 27517b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define Z_ARG(args) args 27617b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# else 27717b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define Z_ARG(args) () 27817b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# endif 27917b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#endif 28017b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner 28117b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner/* The following definitions for FAR are needed only for MSDOS mixed 28217b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner * model programming (small or medium model with some far allocations). 28317b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner * This was tested only with MSC; for other MSDOS compilers you may have 28417b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner * to define NO_MEMCPY in zutil.h. If you don't need the mixed model, 28517b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner * just define FAR to be empty. 28617b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner */ 28717b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#ifdef SYS16BIT 28817b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# if defined(M_I86SM) || defined(M_I86MM) 28917b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner /* MSC small or medium model */ 29017b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define SMALL_MEDIUM 29117b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# ifdef _MSC_VER 29217b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define FAR _far 29317b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# else 29417b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define FAR far 29517b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# endif 29617b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# endif 29717b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# if (defined(__SMALL__) || defined(__MEDIUM__)) 29817b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner /* Turbo C small or medium model */ 29917b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define SMALL_MEDIUM 30017b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# ifdef __BORLANDC__ 30117b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define FAR _far 30217b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# else 30317b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define FAR far 30417b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# endif 30517b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# endif 30617b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#endif 30717b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner 30817b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#if defined(WINDOWS) || defined(WIN32) 30917b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner /* If building or using zlib as a DLL, define ZLIB_DLL. 31017b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner * This is not mandatory, but it offers a little performance increase. 31117b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner */ 31217b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# ifdef ZLIB_DLL 31317b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# if defined(WIN32) && (!defined(__BORLANDC__) || (__BORLANDC__ >= 0x500)) 31417b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# ifdef ZLIB_INTERNAL 31517b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define ZEXTERN extern __declspec(dllexport) 31617b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# else 31717b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define ZEXTERN extern __declspec(dllimport) 31817b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# endif 31917b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# endif 32017b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# endif /* ZLIB_DLL */ 32117b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner /* If building or using zlib with the WINAPI/WINAPIV calling convention, 32217b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner * define ZLIB_WINAPI. 32317b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner * Caution: the standard ZLIB1.DLL is NOT compiled using ZLIB_WINAPI. 32417b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner */ 32517b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# ifdef ZLIB_WINAPI 32617b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# ifdef FAR 32717b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# undef FAR 32817b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# endif 32917b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# include <windows.h> 33017b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner /* No need for _export, use ZLIB.DEF instead. */ 33117b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner /* For complete Windows compatibility, use WINAPI, not __stdcall. */ 33217b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define ZEXPORT WINAPI 33317b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# ifdef WIN32 33417b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define ZEXPORTVA WINAPIV 33517b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# else 33617b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define ZEXPORTVA FAR CDECL 33717b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# endif 33817b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# endif 33917b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#endif 34017b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner 34117b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#if defined (__BEOS__) 34217b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# ifdef ZLIB_DLL 34317b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# ifdef ZLIB_INTERNAL 34417b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define ZEXPORT __declspec(dllexport) 34517b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define ZEXPORTVA __declspec(dllexport) 34617b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# else 34717b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define ZEXPORT __declspec(dllimport) 34817b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define ZEXPORTVA __declspec(dllimport) 34917b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# endif 35017b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# endif 35117b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#endif 35217b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner 35317b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#ifndef ZEXTERN 35417b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define ZEXTERN extern 35517b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#endif 35617b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#ifndef ZEXPORT 35717b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define ZEXPORT 35817b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#endif 35917b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#ifndef ZEXPORTVA 36017b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define ZEXPORTVA 36117b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#endif 36217b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner 36317b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#ifndef FAR 36417b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define FAR 36517b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#endif 36617b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner 36717b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#if !defined(__MACTYPES__) 36817b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turnertypedef unsigned char Byte; /* 8 bits */ 36917b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#endif 37017b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turnertypedef unsigned int uInt; /* 16 bits or more */ 37117b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turnertypedef unsigned long uLong; /* 32 bits or more */ 37217b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner 37317b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#ifdef SMALL_MEDIUM 37417b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner /* Borland C/C++ and some old MSC versions ignore FAR inside typedef */ 37517b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define Bytef Byte FAR 37617b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#else 37717b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner typedef Byte FAR Bytef; 37817b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#endif 37917b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turnertypedef char FAR charf; 38017b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turnertypedef int FAR intf; 38117b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turnertypedef uInt FAR uIntf; 38217b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turnertypedef uLong FAR uLongf; 38317b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner 38417b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#ifdef STDC 38517b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner typedef void const *voidpc; 38617b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner typedef void FAR *voidpf; 38717b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner typedef void *voidp; 38817b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#else 38917b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner typedef Byte const *voidpc; 39017b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner typedef Byte FAR *voidpf; 39117b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner typedef Byte *voidp; 39217b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#endif 39317b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner 39417b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#if !defined(Z_U4) && !defined(Z_SOLO) && defined(STDC) 39517b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# include <limits.h> 39617b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# if (UINT_MAX == 0xffffffffUL) 39717b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define Z_U4 unsigned 39817b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# elif (ULONG_MAX == 0xffffffffUL) 39917b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define Z_U4 unsigned long 40017b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# elif (USHRT_MAX == 0xffffffffUL) 40117b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define Z_U4 unsigned short 40217b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# endif 40317b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#endif 40417b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner 40517b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#ifdef Z_U4 40617b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner typedef Z_U4 z_crc_t; 40717b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#else 40817b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner typedef unsigned long z_crc_t; 40917b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#endif 41017b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner 41117b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#if 1 /* was set to #if 1 by ./configure */ 41217b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define Z_HAVE_UNISTD_H 41317b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#endif 41417b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner 41517b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#if 1 /* was set to #if 1 by ./configure */ 41617b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define Z_HAVE_STDARG_H 41717b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#endif 41817b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner 41917b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#ifdef STDC 42017b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# ifndef Z_SOLO 42117b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# include <sys/types.h> /* for off_t */ 42217b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# endif 42317b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#endif 42417b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner 42517b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#if defined(STDC) || defined(Z_HAVE_STDARG_H) 42617b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# ifndef Z_SOLO 42717b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# include <stdarg.h> /* for va_list */ 42817b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# endif 42917b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#endif 43017b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner 43117b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#ifdef _WIN32 43217b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# ifndef Z_SOLO 43317b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# include <stddef.h> /* for wchar_t */ 43417b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# endif 43517b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#endif 43617b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner 43717b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner/* a little trick to accommodate both "#define _LARGEFILE64_SOURCE" and 43817b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner * "#define _LARGEFILE64_SOURCE 1" as requesting 64-bit operations, (even 43917b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner * though the former does not conform to the LFS document), but considering 44017b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner * both "#undef _LARGEFILE64_SOURCE" and "#define _LARGEFILE64_SOURCE 0" as 44117b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner * equivalently requesting no 64-bit operations 44217b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner */ 44317b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#if defined(_LARGEFILE64_SOURCE) && -_LARGEFILE64_SOURCE - -1 == 1 44417b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# undef _LARGEFILE64_SOURCE 44517b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#endif 44617b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner 44717b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#if defined(__WATCOMC__) && !defined(Z_HAVE_UNISTD_H) 44817b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define Z_HAVE_UNISTD_H 44917b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#endif 45017b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#ifndef Z_SOLO 45117b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# if defined(Z_HAVE_UNISTD_H) || defined(_LARGEFILE64_SOURCE) 45217b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# include <unistd.h> /* for SEEK_*, off_t, and _LFS64_LARGEFILE */ 45317b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# ifdef VMS 45417b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# include <unixio.h> /* for off_t */ 45517b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# endif 45617b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# ifndef z_off_t 45717b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define z_off_t off_t 45817b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# endif 45917b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# endif 46017b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#endif 46117b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner 46217b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#if defined(_LFS64_LARGEFILE) && _LFS64_LARGEFILE-0 46317b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define Z_LFS64 46417b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#endif 46517b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner 46617b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#if defined(_LARGEFILE64_SOURCE) && defined(Z_LFS64) 46717b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define Z_LARGE64 46817b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#endif 46917b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner 47017b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#if defined(_FILE_OFFSET_BITS) && _FILE_OFFSET_BITS-0 == 64 && defined(Z_LFS64) 47117b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define Z_WANT64 47217b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#endif 47317b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner 47417b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#if !defined(SEEK_SET) && !defined(Z_SOLO) 47517b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define SEEK_SET 0 /* Seek from beginning of file. */ 47617b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define SEEK_CUR 1 /* Seek from current position. */ 47717b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define SEEK_END 2 /* Set file pointer to EOF plus "offset" */ 47817b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#endif 47917b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner 48017b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#ifndef z_off_t 48117b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define z_off_t long 48217b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#endif 48317b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner 48417b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#if !defined(_WIN32) && defined(Z_LARGE64) 48517b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define z_off64_t off64_t 48617b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#else 48717b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# if defined(_WIN32) && !defined(__GNUC__) && !defined(Z_SOLO) 48817b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define z_off64_t __int64 48917b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# else 49017b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# define z_off64_t z_off_t 49117b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner# endif 49217b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#endif 49317b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner 49417b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner/* MVS linker does not support external names larger than 8 bytes */ 49517b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#if defined(__MVS__) 49617b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner #pragma map(deflateInit_,"DEIN") 49717b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner #pragma map(deflateInit2_,"DEIN2") 49817b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner #pragma map(deflateEnd,"DEEND") 49917b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner #pragma map(deflateBound,"DEBND") 50017b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner #pragma map(inflateInit_,"ININ") 50117b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner #pragma map(inflateInit2_,"ININ2") 50217b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner #pragma map(inflateEnd,"INEND") 50317b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner #pragma map(inflateSync,"INSY") 50417b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner #pragma map(inflateSetDictionary,"INSEDI") 50517b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner #pragma map(compressBound,"CMBND") 50617b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner #pragma map(inflate_table,"INTABL") 50717b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner #pragma map(inflate_fast,"INFA") 50817b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner #pragma map(inflate_copyright,"INCOPY") 50917b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#endif 51017b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner 51117b20e6f38ad2263e47a6884c4f68ce9773d8b29David 'Digit' Turner#endif /* ZCONF_H */ 512