10f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)/* zconf.h -- configuration of the zlib compression library 20f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles) * Copyright (C) 1995-2013 Jean-loup Gailly. 30f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles) * For conditions of distribution and use, see copyright notice in zlib.h 40f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles) */ 50f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles) 60f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)/* @(#) $Id$ */ 70f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles) 80f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)#ifndef ZCONF_H 90f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)#define ZCONF_H 100f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)#cmakedefine Z_PREFIX 110f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)#cmakedefine Z_HAVE_UNISTD_H 120f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles) 130f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)/* 140f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles) * If you *really* need a unique prefix for all types and library functions, 150f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles) * compile with -DZ_PREFIX. The "standard" zlib should be compiled without it. 160f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles) * Even better than compiling with -DZ_PREFIX would be to use configure to set 170f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles) * this permanently in zconf.h using "./configure --zprefix". 180f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles) */ 190f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)#ifdef Z_PREFIX /* may be set to #if 1 by ./configure */ 200f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define Z_PREFIX_SET 210f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles) 225d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)/* all linked symbols */ 235d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# define _dist_code z__dist_code 245d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# define _length_code z__length_code 255d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# define _tr_align z__tr_align 260f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define _tr_flush_bits z__tr_flush_bits 270f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define _tr_flush_block z__tr_flush_block 285d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# define _tr_init z__tr_init 290f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define _tr_stored_block z__tr_stored_block 300f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define _tr_tally z__tr_tally 315d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# define adler32 z_adler32 320f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define adler32_combine z_adler32_combine 330f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define adler32_combine64 z_adler32_combine64 340f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# ifndef Z_SOLO 350f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define compress z_compress 360f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define compress2 z_compress2 370f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define compressBound z_compressBound 380f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# endif 390f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define crc32 z_crc32 400f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define crc32_combine z_crc32_combine 410f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define crc32_combine64 z_crc32_combine64 420f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define deflate z_deflate 435d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# define deflateBound z_deflateBound 445d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# define deflateCopy z_deflateCopy 455d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# define deflateEnd z_deflateEnd 465d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# define deflateInit2_ z_deflateInit2_ 475d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# define deflateInit_ z_deflateInit_ 485d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# define deflateParams z_deflateParams 490f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define deflatePending z_deflatePending 500f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define deflatePrime z_deflatePrime 510f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define deflateReset z_deflateReset 525d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# define deflateResetKeep z_deflateResetKeep 530f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define deflateSetDictionary z_deflateSetDictionary 545d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# define deflateSetHeader z_deflateSetHeader 550f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define deflateTune z_deflateTune 560f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define deflate_copyright z_deflate_copyright 570f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define get_crc_table z_get_crc_table 580f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# ifndef Z_SOLO 590f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define gz_error z_gz_error 600f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define gz_intmax z_gz_intmax 610f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define gz_strwinerror z_gz_strwinerror 620f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define gzbuffer z_gzbuffer 630f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define gzclearerr z_gzclearerr 640f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define gzclose z_gzclose 655d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# define gzclose_r z_gzclose_r 660f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define gzclose_w z_gzclose_w 670f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define gzdirect z_gzdirect 680f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define gzdopen z_gzdopen 690f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define gzeof z_gzeof 700f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define gzerror z_gzerror 710f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define gzflush z_gzflush 720f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define gzgetc z_gzgetc 735d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# define gzgetc_ z_gzgetc_ 740f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define gzgets z_gzgets 750f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define gzoffset z_gzoffset 760f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define gzoffset64 z_gzoffset64 770f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define gzopen z_gzopen 785d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# define gzopen64 z_gzopen64 795d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# ifdef _WIN32 800f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define gzopen_w z_gzopen_w 810f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# endif 820f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define gzprintf z_gzprintf 830f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define gzvprintf z_gzvprintf 840f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define gzputc z_gzputc 850f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define gzputs z_gzputs 860f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define gzread z_gzread 870f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define gzrewind z_gzrewind 880f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define gzseek z_gzseek 890f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define gzseek64 z_gzseek64 900f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define gzsetparams z_gzsetparams 910f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define gztell z_gztell 920f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define gztell64 z_gztell64 935d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# define gzungetc z_gzungetc 940f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define gzwrite z_gzwrite 955d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# endif 960f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define inflate z_inflate 970f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define inflateBack z_inflateBack 980f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define inflateBackEnd z_inflateBackEnd 990f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define inflateBackInit_ z_inflateBackInit_ 1000f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define inflateCopy z_inflateCopy 1010f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define inflateEnd z_inflateEnd 1020f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define inflateGetHeader z_inflateGetHeader 1030f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define inflateInit2_ z_inflateInit2_ 1040f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define inflateInit_ z_inflateInit_ 1050f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define inflateMark z_inflateMark 1060f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define inflatePrime z_inflatePrime 1070f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define inflateReset z_inflateReset 1080f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define inflateReset2 z_inflateReset2 1090f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define inflateSetDictionary z_inflateSetDictionary 1100f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define inflateGetDictionary z_inflateGetDictionary 1110f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define inflateSync z_inflateSync 1120f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define inflateSyncPoint z_inflateSyncPoint 1130f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define inflateUndermine z_inflateUndermine 1140f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define inflateResetKeep z_inflateResetKeep 1150f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define inflate_copyright z_inflate_copyright 1160f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define inflate_fast z_inflate_fast 1170f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define inflate_table z_inflate_table 1180f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# ifndef Z_SOLO 1190f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define uncompress z_uncompress 1200f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# endif 1210f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define zError z_zError 1220f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# ifndef Z_SOLO 1230f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define zcalloc z_zcalloc 1245d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# define zcfree z_zcfree 1255d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# endif 1265d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# define zlibCompileFlags z_zlibCompileFlags 1275d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# define zlibVersion z_zlibVersion 1285d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) 1295d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)/* all zlib typedefs in zlib.h and zconf.h */ 1305d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# define Byte z_Byte 1315d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# define Bytef z_Bytef 1325d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# define alloc_func z_alloc_func 1335d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# define charf z_charf 1345d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# define free_func z_free_func 1355d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# ifndef Z_SOLO 1365d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# define gzFile z_gzFile 1375d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# endif 1385d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# define gz_header z_gz_header 1390f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define gz_headerp z_gz_headerp 1400f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define in_func z_in_func 1410f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define intf z_intf 1420f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define out_func z_out_func 1430f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define uInt z_uInt 1440f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define uIntf z_uIntf 1450f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define uLong z_uLong 1460f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define uLongf z_uLongf 1470f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define voidp z_voidp 1480f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define voidpc z_voidpc 1490f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define voidpf z_voidpf 1500f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles) 1510f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)/* all zlib structs in zlib.h and zconf.h */ 1520f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define gz_header_s z_gz_header_s 1530f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define internal_state z_internal_state 1540f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles) 1550f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)#endif 1560f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles) 1570f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)#if defined(__MSDOS__) && !defined(MSDOS) 1580f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define MSDOS 1590f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)#endif 1600f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)#if (defined(OS_2) || defined(__OS2__)) && !defined(OS2) 1610f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define OS2 1620f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)#endif 1630f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)#if defined(_WINDOWS) && !defined(WINDOWS) 1640f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define WINDOWS 1650f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)#endif 1660f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)#if defined(_WIN32) || defined(_WIN32_WCE) || defined(__WIN32__) 1670f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# ifndef WIN32 1680f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define WIN32 1690f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# endif 1700f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)#endif 1710f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)#if (defined(MSDOS) || defined(OS2) || defined(WINDOWS)) && !defined(WIN32) 1720f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# if !defined(__GNUC__) && !defined(__FLAT__) && !defined(__386__) 1730f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# ifndef SYS16BIT 1740f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define SYS16BIT 1750f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# endif 1760f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# endif 1770f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)#endif 1780f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles) 1790f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)/* 1800f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles) * Compile with -DMAXSEG_64K if the alloc function cannot allocate more 1810f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles) * than 64k bytes at a time (needed on systems with 16-bit int). 1820f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles) */ 1830f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)#ifdef SYS16BIT 1840f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define MAXSEG_64K 1850f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)#endif 1860f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)#ifdef MSDOS 1870f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define UNALIGNED_OK 1880f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)#endif 1890f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles) 1900f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)#ifdef __STDC_VERSION__ 1910f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# ifndef STDC 1920f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define STDC 1930f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# endif 1940f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# if __STDC_VERSION__ >= 199901L 1950f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# ifndef STDC99 1960f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define STDC99 1970f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# endif 1980f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# endif 1990f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)#endif 2000f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)#if !defined(STDC) && (defined(__STDC__) || defined(__cplusplus)) 2010f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define STDC 2020f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)#endif 2030f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)#if !defined(STDC) && (defined(__GNUC__) || defined(__BORLANDC__)) 2040f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define STDC 2050f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)#endif 2060f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)#if !defined(STDC) && (defined(MSDOS) || defined(WINDOWS) || defined(WIN32)) 2070f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define STDC 2080f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)#endif 2090f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)#if !defined(STDC) && (defined(OS2) || defined(__HOS_AIX__)) 2100f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define STDC 2110f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)#endif 2120f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles) 2130f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)#if defined(__OS400__) && !defined(STDC) /* iSeries (formerly AS/400). */ 2140f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define STDC 2150f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)#endif 2160f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles) 2170f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)#ifndef STDC 2180f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# ifndef const /* cannot use !defined(STDC) && !defined(const) on Mac */ 2190f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define const /* note: need a more gentle solution here */ 2200f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# endif 2210f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)#endif 2220f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles) 2230f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)#if defined(ZLIB_CONST) && !defined(z_const) 2240f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define z_const const 2250f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)#else 2260f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define z_const 2270f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)#endif 2280f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles) 2290f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)/* Some Mac compilers merge all .h files incorrectly: */ 2300f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)#if defined(__MWERKS__)||defined(applec)||defined(THINK_C)||defined(__SC__) 2310f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define NO_DUMMY_DECL 2320f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)#endif 2330f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles) 2340f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)/* Maximum value for memLevel in deflateInit2 */ 2350f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)#ifndef MAX_MEM_LEVEL 2365d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# ifdef MAXSEG_64K 2375d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# define MAX_MEM_LEVEL 8 2385d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# else 2395d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# define MAX_MEM_LEVEL 9 2405d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# endif 2415d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)#endif 2425d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) 2435d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)/* Maximum value for windowBits in deflateInit2 and inflateInit2. 2445d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) * WARNING: reducing MAX_WBITS makes minigzip unable to extract .gz files 2455d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) * created by gzip. (Files created by minigzip can still be extracted by 2465d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) * gzip.) 2475d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) */ 2485d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)#ifndef MAX_WBITS 2495d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# define MAX_WBITS 15 /* 32K LZ77 window */ 2505d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)#endif 2515d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) 2525d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)/* The memory requirements for deflate are (in bytes): 2535d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) (1 << (windowBits+2)) + (1 << (memLevel+9)) 2545d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) that is: 128K for windowBits=15 + 128K for memLevel = 8 (default values) 2555d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) plus a few kilobytes for small objects. For example, if you want to reduce 2565d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) the default memory requirements from 256K to 128K, compile with 2575d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) make CFLAGS="-O -DMAX_WBITS=14 -DMAX_MEM_LEVEL=7" 2585d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) Of course this will generally degrade compression (there's no free lunch). 2595d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) 2605d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) The memory requirements for inflate are (in bytes) 1 << windowBits 2615d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) that is, 32K for windowBits=15 (default value) plus a few kilobytes 2625d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) for small objects. 2635d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)*/ 2645d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) 2655d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) /* Type declarations */ 2665d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) 2675d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)#ifndef OF /* function prototypes */ 2685d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# ifdef STDC 2695d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# define OF(args) args 2705d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# else 2715d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# define OF(args) () 2725d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# endif 2735d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)#endif 2745d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) 2755d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)#ifndef Z_ARG /* function prototypes for stdarg */ 2765d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# if defined(STDC) || defined(Z_HAVE_STDARG_H) 2770f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define Z_ARG(args) args 2780f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# else 2790f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define Z_ARG(args) () 2805d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# endif 2815d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)#endif 2825d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) 2835d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)/* The following definitions for FAR are needed only for MSDOS mixed 2845d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) * model programming (small or medium model with some far allocations). 2855d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) * This was tested only with MSC; for other MSDOS compilers you may have 2865d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) * to define NO_MEMCPY in zutil.h. If you don't need the mixed model, 2875d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) * just define FAR to be empty. 2880f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles) */ 2890f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)#ifdef SYS16BIT 2900f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# if defined(M_I86SM) || defined(M_I86MM) 2910f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles) /* MSC small or medium model */ 2920f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define SMALL_MEDIUM 2930f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# ifdef _MSC_VER 2940f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define FAR _far 2950f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# else 2960f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define FAR far 2970f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# endif 2980f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# endif 2990f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# if (defined(__SMALL__) || defined(__MEDIUM__)) 3000f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles) /* Turbo C small or medium model */ 3010f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define SMALL_MEDIUM 3020f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# ifdef __BORLANDC__ 3030f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define FAR _far 3040f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# else 3055d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# define FAR far 3060f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# endif 3070f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# endif 3080f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)#endif 3090f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles) 3100f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)#if defined(WINDOWS) || defined(WIN32) 3110f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles) /* If building or using zlib as a DLL, define ZLIB_DLL. 3120f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles) * This is not mandatory, but it offers a little performance increase. 3135d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) */ 3145d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# ifdef ZLIB_DLL 3155d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# if defined(WIN32) && (!defined(__BORLANDC__) || (__BORLANDC__ >= 0x500)) 3160f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# ifdef ZLIB_INTERNAL 3170f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define ZEXTERN extern __declspec(dllexport) 3180f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# else 3190f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define ZEXTERN extern __declspec(dllimport) 3200f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# endif 3210f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# endif 3220f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# endif /* ZLIB_DLL */ 3230f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles) /* If building or using zlib with the WINAPI/WINAPIV calling convention, 3240f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles) * define ZLIB_WINAPI. 3250f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles) * Caution: the standard ZLIB1.DLL is NOT compiled using ZLIB_WINAPI. 3260f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles) */ 3270f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# ifdef ZLIB_WINAPI 3280f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# ifdef FAR 3290f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# undef FAR 3300f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# endif 3310f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# include <windows.h> 3320f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles) /* No need for _export, use ZLIB.DEF instead. */ 3330f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles) /* For complete Windows compatibility, use WINAPI, not __stdcall. */ 3340f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define ZEXPORT WINAPI 3350f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# ifdef WIN32 3360f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define ZEXPORTVA WINAPIV 3370f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# else 3380f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define ZEXPORTVA FAR CDECL 3390f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# endif 3400f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# endif 3410f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)#endif 3420f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles) 3430f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)#if defined (__BEOS__) 3440f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# ifdef ZLIB_DLL 3450f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# ifdef ZLIB_INTERNAL 3460f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define ZEXPORT __declspec(dllexport) 3470f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define ZEXPORTVA __declspec(dllexport) 3480f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# else 3490f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define ZEXPORT __declspec(dllimport) 3500f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define ZEXPORTVA __declspec(dllimport) 3510f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# endif 3520f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# endif 3530f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)#endif 3540f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles) 3555d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)#ifndef ZEXTERN 3565d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# define ZEXTERN extern 3575d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)#endif 3585d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)#ifndef ZEXPORT 3595d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# define ZEXPORT 3605d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)#endif 3615d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)#ifndef ZEXPORTVA 3625d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# define ZEXPORTVA 3635d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)#endif 3645d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) 3655d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)#ifndef FAR 3665d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# define FAR 3675d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)#endif 3685d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) 3695d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)#if !defined(__MACTYPES__) 3705d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)typedef unsigned char Byte; /* 8 bits */ 3715d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)#endif 3725d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)typedef unsigned int uInt; /* 16 bits or more */ 3735d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)typedef unsigned long uLong; /* 32 bits or more */ 3745d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) 3755d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)#ifdef SMALL_MEDIUM 3765d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) /* Borland C/C++ and some old MSC versions ignore FAR inside typedef */ 3775d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# define Bytef Byte FAR 3785d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)#else 3795d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) typedef Byte FAR Bytef; 3805d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)#endif 3815d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)typedef char FAR charf; 3825d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)typedef int FAR intf; 3835d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)typedef uInt FAR uIntf; 3845d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)typedef uLong FAR uLongf; 3855d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) 3865d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)#ifdef STDC 3875d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) typedef void const *voidpc; 3885d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) typedef void FAR *voidpf; 3895d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) typedef void *voidp; 3905d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)#else 3915d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) typedef Byte const *voidpc; 3925d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) typedef Byte FAR *voidpf; 3935d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) typedef Byte *voidp; 3945d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)#endif 3955d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) 3965d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)#if !defined(Z_U4) && !defined(Z_SOLO) && defined(STDC) 3975d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# include <limits.h> 3985d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# if (UINT_MAX == 0xffffffffUL) 3995d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# define Z_U4 unsigned 4005d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# elif (ULONG_MAX == 0xffffffffUL) 4015d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# define Z_U4 unsigned long 4025d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# elif (USHRT_MAX == 0xffffffffUL) 4035d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# define Z_U4 unsigned short 4045d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# endif 4055d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)#endif 4065d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) 4075d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)#ifdef Z_U4 4085d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) typedef Z_U4 z_crc_t; 4095d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)#else 4105d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) typedef unsigned long z_crc_t; 4115d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)#endif 4125d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) 4135d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)#ifdef HAVE_UNISTD_H /* may be set to #if 1 by ./configure */ 4145d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# define Z_HAVE_UNISTD_H 4155d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)#endif 4165d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) 4175d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)#ifdef HAVE_STDARG_H /* may be set to #if 1 by ./configure */ 4185d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# define Z_HAVE_STDARG_H 4195d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)#endif 4205d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) 4215d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)#ifdef STDC 4225d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# ifndef Z_SOLO 4235d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# include <sys/types.h> /* for off_t */ 4245d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# endif 4255d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)#endif 4265d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) 4275d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)#if defined(STDC) || defined(Z_HAVE_STDARG_H) 4285d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# ifndef Z_SOLO 4295d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# include <stdarg.h> /* for va_list */ 4305d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# endif 4315d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)#endif 4325d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) 4335d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)#ifdef _WIN32 4345d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# ifndef Z_SOLO 4355d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# include <stddef.h> /* for wchar_t */ 4365d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# endif 4375d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)#endif 4385d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) 4395d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)/* a little trick to accommodate both "#define _LARGEFILE64_SOURCE" and 4405d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) * "#define _LARGEFILE64_SOURCE 1" as requesting 64-bit operations, (even 4415d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) * though the former does not conform to the LFS document), but considering 4425d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) * both "#undef _LARGEFILE64_SOURCE" and "#define _LARGEFILE64_SOURCE 0" as 4435d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) * equivalently requesting no 64-bit operations 4445d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) */ 4455d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)#if defined(_LARGEFILE64_SOURCE) && -_LARGEFILE64_SOURCE - -1 == 1 4465d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# undef _LARGEFILE64_SOURCE 4475d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)#endif 4485d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) 4495d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)#if defined(__WATCOMC__) && !defined(Z_HAVE_UNISTD_H) 4505d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# define Z_HAVE_UNISTD_H 4515d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)#endif 4525d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)#ifndef Z_SOLO 4535d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# if defined(Z_HAVE_UNISTD_H) || defined(_LARGEFILE64_SOURCE) 4545d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# include <unistd.h> /* for SEEK_*, off_t, and _LFS64_LARGEFILE */ 4555d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# ifdef VMS 4565d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# include <unixio.h> /* for off_t */ 4575d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# endif 4585d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# ifndef z_off_t 4595d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# define z_off_t off_t 4605d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# endif 4615d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# endif 4625d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)#endif 4635d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) 4645d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)#if defined(_LFS64_LARGEFILE) && _LFS64_LARGEFILE-0 4655d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# define Z_LFS64 4665d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)#endif 4675d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) 4685d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)#if defined(_LARGEFILE64_SOURCE) && defined(Z_LFS64) 4695d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# define Z_LARGE64 4705d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)#endif 4715d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) 4725d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)#if defined(_FILE_OFFSET_BITS) && _FILE_OFFSET_BITS-0 == 64 && defined(Z_LFS64) 4730f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define Z_WANT64 4745d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)#endif 4750f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles) 4760f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)#if !defined(SEEK_SET) && !defined(Z_SOLO) 4770f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define SEEK_SET 0 /* Seek from beginning of file. */ 4780f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define SEEK_CUR 1 /* Seek from current position. */ 4790f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)# define SEEK_END 2 /* Set file pointer to EOF plus "offset" */ 4800f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)#endif 4815d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) 4825d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)#ifndef z_off_t 4835d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# define z_off_t long 4845d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)#endif 4855d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) 4865d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)#if !defined(_WIN32) && defined(Z_LARGE64) 4875d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# define z_off64_t off64_t 4885d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)#else 4895d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# if defined(_WIN32) && !defined(__GNUC__) && !defined(Z_SOLO) 4905d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# define z_off64_t __int64 4915d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# else 4925d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# define z_off64_t z_off_t 4935d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# endif 4945d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)#endif 4955d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) 4965d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)/* MVS linker does not support external names larger than 8 bytes */ 4975d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)#if defined(__MVS__) 4985d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) #pragma map(deflateInit_,"DEIN") 4995d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) #pragma map(deflateInit2_,"DEIN2") 5005d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) #pragma map(deflateEnd,"DEEND") 5015d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) #pragma map(deflateBound,"DEBND") 5025d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) #pragma map(inflateInit_,"ININ") 5035d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) #pragma map(inflateInit2_,"ININ2") 5045d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) #pragma map(inflateEnd,"INEND") 5055d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) #pragma map(inflateSync,"INSY") 5065d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) #pragma map(inflateSetDictionary,"INSEDI") 5075d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) #pragma map(compressBound,"CMBND") 5085d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) #pragma map(inflate_table,"INTABL") 5095d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) #pragma map(inflate_fast,"INFA") 5105d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) #pragma map(inflate_copyright,"INCOPY") 5115d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)#endif 5125d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) 5135d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)#endif /* ZCONF_H */ 5145d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)