/* * $Logfile: /DescentIII/Main/unzip/zconf.h $ * $Revision: 2 $ * $Date: 8/13/99 8:02p $ * $Author: Jeff $ * * * * $Log: /DescentIII/Main/unzip/zconf.h $ * * 2 8/13/99 8:02p Jeff * initial creation of zip class * * $NoKeywords: $ */ /* zconf.h -- configuration of the zlib compression library * Copyright (C) 1995-1998 Jean-loup Gailly. * For conditions of distribution and use, see copyright notice in zlib.h */ /* @(#) $Id$ */ #ifndef _ZCONF_H #define _ZCONF_H /* * If you *really* need a unique prefix for all types and library functions, * compile with -DZ_PREFIX. The "standard" zlib should be compiled without it. */ #ifdef Z_PREFIX #define deflateInit_ z_deflateInit_ #define deflate z_deflate #define deflateEnd z_deflateEnd #define inflateInit_ z_inflateInit_ #define inflate z_inflate #define inflateEnd z_inflateEnd #define deflateInit2_ z_deflateInit2_ #define deflateSetDictionary z_deflateSetDictionary #define deflateCopy z_deflateCopy #define deflateReset z_deflateReset #define deflateParams z_deflateParams #define inflateInit2_ z_inflateInit2_ #define inflateSetDictionary z_inflateSetDictionary #define inflateSync z_inflateSync #define inflateSyncPoint z_inflateSyncPoint #define inflateReset z_inflateReset #define compress z_compress #define compress2 z_compress2 #define uncompress z_uncompress #define adler32 z_adler32 #define crc32 z_crc32 #define get_crc_table z_get_crc_table #define Byte z_Byte #define uInt z_uInt #define uLong z_uLong #define Bytef z_Bytef #define charf z_charf #define intf z_intf #define uIntf z_uIntf #define uLongf z_uLongf #define voidpf z_voidpf #define voidp z_voidp #endif #if (defined(_WIN32) || defined(__WIN32__)) && !defined(WIN32) #define WIN32 #endif #if defined(__GNUC__) || defined(WIN32) || defined(__386__) || defined(i386) #ifndef __32BIT__ #define __32BIT__ #endif #endif #if defined(__MSDOS__) && !defined(MSDOS) #define MSDOS #endif /* * Compile with -DMAXSEG_64K if the alloc function cannot allocate more * than 64k bytes at a time (needed on systems with 16-bit int). */ #if defined(MSDOS) && !defined(__32BIT__) #define MAXSEG_64K #endif #ifdef MSDOS #define UNALIGNED_OK #endif #if (defined(MSDOS) || defined(_WINDOWS) || defined(WIN32)) && !defined(STDC) #define STDC #endif #if defined(__STDC__) || defined(__cplusplus) || defined(__OS2__) #ifndef STDC #define STDC #endif #endif #ifndef STDC #ifndef const /* cannot use !defined(STDC) && !defined(const) on Mac */ #define const #endif #endif /* Some Mac compilers merge all .h files incorrectly: */ #if defined(__MWERKS__) || defined(applec) || defined(THINK_C) || defined(__SC__) #define NO_DUMMY_DECL #endif /* Old Borland C incorrectly complains about missing returns: */ #if defined(__BORLANDC__) && (__BORLANDC__ < 0x500) #define NEED_DUMMY_RETURN #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. * WARNING: reducing MAX_WBITS makes minigzip unable to extract .gz files * created by gzip. (Files created by minigzip can still be extracted by * gzip.) */ #ifndef MAX_WBITS #define MAX_WBITS 15 /* 32K LZ77 window */ #endif /* The memory requirements for deflate are (in bytes): (1 << (windowBits+2)) + (1 << (memLevel+9)) that is: 128K for windowBits=15 + 128K for memLevel = 8 (default values) plus a few kilobytes for small objects. For example, if you want to reduce the default memory requirements from 256K to 128K, compile with make CFLAGS="-O -DMAX_WBITS=14 -DMAX_MEM_LEVEL=7" Of course this will generally degrade compression (there's no free lunch). The memory requirements for inflate are (in bytes) 1 << windowBits that is, 32K for windowBits=15 (default value) plus a few kilobytes for small objects. */ /* Type declarations */ #ifndef OF /* function prototypes */ #ifdef STDC #define OF(args) args #else #define OF(args) () #endif #endif /* The following definitions for FAR are needed only for MSDOS mixed * model programming (small or medium model with some far allocations). * This was tested only with MSC; for other MSDOS compilers you may have * to define NO_MEMCPY in zutil.h. If you don't need the mixed model, * just define FAR to be empty. */ #if (defined(M_I86SM) || defined(M_I86MM)) && !defined(__32BIT__) /* MSC small or medium model */ #define SMALL_MEDIUM #ifdef _MSC_VER #define FAR _far #else #define FAR far #endif #endif #if defined(__BORLANDC__) && (defined(__SMALL__) || defined(__MEDIUM__)) #ifndef __32BIT__ #define SMALL_MEDIUM #define FAR _far #endif #endif /* Compile with -DZLIB_DLL for Windows DLL support */ #if defined(ZLIB_DLL) #if defined(_WINDOWS) || defined(WINDOWS) #ifdef FAR #undef FAR #endif #include #define ZEXPORT WINAPI #ifdef WIN32 #define ZEXPORTVA WINAPIV #else #define ZEXPORTVA FAR _cdecl _export #endif #endif #if defined(__BORLANDC__) #if (__BORLANDC__ >= 0x0500) && defined(WIN32) #include #define ZEXPORT __declspec(dllexport) WINAPI #define ZEXPORTRVA __declspec(dllexport) WINAPIV #else #if defined(_Windows) && defined(__DLL__) #define ZEXPORT _export #define ZEXPORTVA _export #endif #endif #endif #endif #if defined(__BEOS__) #if defined(ZLIB_DLL) #define ZEXTERN extern __declspec(dllexport) #else #define ZEXTERN extern __declspec(dllimport) #endif #endif #ifndef ZEXPORT #define ZEXPORT #endif #ifndef ZEXPORTVA #define ZEXPORTVA #endif #ifndef ZEXTERN #define ZEXTERN extern #endif #ifndef FAR #define FAR #endif #if !defined(MACOS) && !defined(TARGET_OS_MAC) 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 /* Borland C/C++ and some old MSC versions ignore FAR inside typedef */ #define Bytef Byte FAR #else typedef Byte FAR Bytef; #endif typedef char FAR charf; typedef int FAR intf; typedef uInt FAR uIntf; typedef uLong FAR uLongf; #ifdef STDC typedef void FAR *voidpf; typedef void *voidp; #else typedef Byte FAR *voidpf; typedef Byte *voidp; #endif #ifdef HAVE_UNISTD_H #include /* for off_t */ #include /* for SEEK_* and off_t */ #define z_off_t off_t #endif #ifndef SEEK_SET #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 /* MVS linker does not support external names larger than 8 bytes */ #if defined(__MVS__) #pragma map(deflateInit_, "DEIN") #pragma map(deflateInit2_, "DEIN2") #pragma map(deflateEnd, "DEEND") #pragma map(inflateInit_, "ININ") #pragma map(inflateInit2_, "ININ2") #pragma map(inflateEnd, "INEND") #pragma map(inflateSync, "INSY") #pragma map(inflateSetDictionary, "INSEDI") #pragma map(inflate_blocks, "INBL") #pragma map(inflate_blocks_new, "INBLNE") #pragma map(inflate_blocks_free, "INBLFR") #pragma map(inflate_blocks_reset, "INBLRE") #pragma map(inflate_codes_free, "INCOFR") #pragma map(inflate_codes, "INCO") #pragma map(inflate_fast, "INFA") #pragma map(inflate_flush, "INFLU") #pragma map(inflate_mask, "INMA") #pragma map(inflate_set_dictionary, "INSEDI2") #pragma map(inflate_copyright, "INCOPY") #pragma map(inflate_trees_bits, "INTRBI") #pragma map(inflate_trees_dynamic, "INTRDY") #pragma map(inflate_trees_fixed, "INTRFI") #pragma map(inflate_trees_free, "INTRFR") #endif #endif /* _ZCONF_H */