source: trunk/third/zlib/zconf.h @ 17315

Revision 17315, 7.7 KB checked in by zacheiss, 23 years ago (diff)
This commit was generated by cvs2svn to compensate for changes in r17314, which included commits to RCS files with non-trunk default branches.
Line 
1/* zconf.h -- configuration of the zlib compression library
2 * Copyright (C) 1995-2002 Jean-loup Gailly.
3 * For conditions of distribution and use, see copyright notice in zlib.h
4 */
5
6/* @(#) $Id: zconf.h,v 1.1.1.2 2002-03-12 17:19:03 zacheiss Exp $ */
7
8#ifndef _ZCONF_H
9#define _ZCONF_H
10
11/*
12 * If you *really* need a unique prefix for all types and library functions,
13 * compile with -DZ_PREFIX. The "standard" zlib should be compiled without it.
14 */
15#ifdef Z_PREFIX
16#  define deflateInit_  z_deflateInit_
17#  define deflate       z_deflate
18#  define deflateEnd    z_deflateEnd
19#  define inflateInit_  z_inflateInit_
20#  define inflate       z_inflate
21#  define inflateEnd    z_inflateEnd
22#  define deflateInit2_ z_deflateInit2_
23#  define deflateSetDictionary z_deflateSetDictionary
24#  define deflateCopy   z_deflateCopy
25#  define deflateReset  z_deflateReset
26#  define deflateParams z_deflateParams
27#  define inflateInit2_ z_inflateInit2_
28#  define inflateSetDictionary z_inflateSetDictionary
29#  define inflateSync   z_inflateSync
30#  define inflateSyncPoint z_inflateSyncPoint
31#  define inflateReset  z_inflateReset
32#  define compress      z_compress
33#  define compress2     z_compress2
34#  define uncompress    z_uncompress
35#  define adler32       z_adler32
36#  define crc32         z_crc32
37#  define get_crc_table z_get_crc_table
38
39#  define Byte          z_Byte
40#  define uInt          z_uInt
41#  define uLong         z_uLong
42#  define Bytef         z_Bytef
43#  define charf         z_charf
44#  define intf          z_intf
45#  define uIntf         z_uIntf
46#  define uLongf        z_uLongf
47#  define voidpf        z_voidpf
48#  define voidp         z_voidp
49#endif
50
51#if (defined(_WIN32) || defined(__WIN32__)) && !defined(WIN32)
52#  define WIN32
53#endif
54#if defined(__GNUC__) || defined(WIN32) || defined(__386__) || defined(i386)
55#  ifndef __32BIT__
56#    define __32BIT__
57#  endif
58#endif
59#if defined(__MSDOS__) && !defined(MSDOS)
60#  define MSDOS
61#endif
62
63/*
64 * Compile with -DMAXSEG_64K if the alloc function cannot allocate more
65 * than 64k bytes at a time (needed on systems with 16-bit int).
66 */
67#if defined(MSDOS) && !defined(__32BIT__)
68#  define MAXSEG_64K
69#endif
70#ifdef MSDOS
71#  define UNALIGNED_OK
72#endif
73
74#if (defined(MSDOS) || defined(_WINDOWS) || defined(WIN32))  && !defined(STDC)
75#  define STDC
76#endif
77#if defined(__STDC__) || defined(__cplusplus) || defined(__OS2__)
78#  ifndef STDC
79#    define STDC
80#  endif
81#endif
82
83#ifndef STDC
84#  ifndef const /* cannot use !defined(STDC) && !defined(const) on Mac */
85#    define const
86#  endif
87#endif
88
89/* Some Mac compilers merge all .h files incorrectly: */
90#if defined(__MWERKS__) || defined(applec) ||defined(THINK_C) ||defined(__SC__)
91#  define NO_DUMMY_DECL
92#endif
93
94/* Old Borland C incorrectly complains about missing returns: */
95#if defined(__BORLANDC__) && (__BORLANDC__ < 0x500)
96#  define NEED_DUMMY_RETURN
97#endif
98
99
100/* Maximum value for memLevel in deflateInit2 */
101#ifndef MAX_MEM_LEVEL
102#  ifdef MAXSEG_64K
103#    define MAX_MEM_LEVEL 8
104#  else
105#    define MAX_MEM_LEVEL 9
106#  endif
107#endif
108
109/* Maximum value for windowBits in deflateInit2 and inflateInit2.
110 * WARNING: reducing MAX_WBITS makes minigzip unable to extract .gz files
111 * created by gzip. (Files created by minigzip can still be extracted by
112 * gzip.)
113 */
114#ifndef MAX_WBITS
115#  define MAX_WBITS   15 /* 32K LZ77 window */
116#endif
117
118/* The memory requirements for deflate are (in bytes):
119            (1 << (windowBits+2)) +  (1 << (memLevel+9))
120 that is: 128K for windowBits=15  +  128K for memLevel = 8  (default values)
121 plus a few kilobytes for small objects. For example, if you want to reduce
122 the default memory requirements from 256K to 128K, compile with
123     make CFLAGS="-O -DMAX_WBITS=14 -DMAX_MEM_LEVEL=7"
124 Of course this will generally degrade compression (there's no free lunch).
125
126   The memory requirements for inflate are (in bytes) 1 << windowBits
127 that is, 32K for windowBits=15 (default value) plus a few kilobytes
128 for small objects.
129*/
130
131                        /* Type declarations */
132
133#ifndef OF /* function prototypes */
134#  ifdef STDC
135#    define OF(args)  args
136#  else
137#    define OF(args)  ()
138#  endif
139#endif
140
141/* The following definitions for FAR are needed only for MSDOS mixed
142 * model programming (small or medium model with some far allocations).
143 * This was tested only with MSC; for other MSDOS compilers you may have
144 * to define NO_MEMCPY in zutil.h.  If you don't need the mixed model,
145 * just define FAR to be empty.
146 */
147#if (defined(M_I86SM) || defined(M_I86MM)) && !defined(__32BIT__)
148   /* MSC small or medium model */
149#  define SMALL_MEDIUM
150#  ifdef _MSC_VER
151#    define FAR _far
152#  else
153#    define FAR far
154#  endif
155#endif
156#if defined(__BORLANDC__) && (defined(__SMALL__) || defined(__MEDIUM__))
157#  ifndef __32BIT__
158#    define SMALL_MEDIUM
159#    define FAR _far
160#  endif
161#endif
162
163/* Compile with -DZLIB_DLL for Windows DLL support */
164#if defined(ZLIB_DLL)
165#  if defined(_WINDOWS) || defined(WINDOWS)
166#    ifdef FAR
167#      undef FAR
168#    endif
169#    include <windows.h>
170#    define ZEXPORT  WINAPI
171#    ifdef WIN32
172#      define ZEXPORTVA  WINAPIV
173#    else
174#      define ZEXPORTVA  FAR _cdecl _export
175#    endif
176#  endif
177#  if defined (__BORLANDC__)
178#    if (__BORLANDC__ >= 0x0500) && defined (WIN32)
179#      include <windows.h>
180#      define ZEXPORT __declspec(dllexport) WINAPI
181#      define ZEXPORTRVA __declspec(dllexport) WINAPIV
182#    else
183#      if defined (_Windows) && defined (__DLL__)
184#        define ZEXPORT _export
185#        define ZEXPORTVA _export
186#      endif
187#    endif
188#  endif
189#endif
190
191#if defined (__BEOS__)
192#  if defined (ZLIB_DLL)
193#    define ZEXTERN extern __declspec(dllexport)
194#  else
195#    define ZEXTERN extern __declspec(dllimport)
196#  endif
197#endif
198
199#ifndef ZEXPORT
200#  define ZEXPORT
201#endif
202#ifndef ZEXPORTVA
203#  define ZEXPORTVA
204#endif
205#ifndef ZEXTERN
206#  define ZEXTERN extern
207#endif
208
209#ifndef FAR
210#   define FAR
211#endif
212
213#if !defined(MACOS) && !defined(TARGET_OS_MAC)
214typedef unsigned char  Byte;  /* 8 bits */
215#endif
216typedef unsigned int   uInt;  /* 16 bits or more */
217typedef unsigned long  uLong; /* 32 bits or more */
218
219#ifdef SMALL_MEDIUM
220   /* Borland C/C++ and some old MSC versions ignore FAR inside typedef */
221#  define Bytef Byte FAR
222#else
223   typedef Byte  FAR Bytef;
224#endif
225typedef char  FAR charf;
226typedef int   FAR intf;
227typedef uInt  FAR uIntf;
228typedef uLong FAR uLongf;
229
230#ifdef STDC
231   typedef void FAR *voidpf;
232   typedef void     *voidp;
233#else
234   typedef Byte FAR *voidpf;
235   typedef Byte     *voidp;
236#endif
237
238#ifdef HAVE_UNISTD_H
239#  include <sys/types.h> /* for off_t */
240#  include <unistd.h>    /* for SEEK_* and off_t */
241#  define z_off_t  off_t
242#endif
243#ifndef SEEK_SET
244#  define SEEK_SET        0       /* Seek from beginning of file.  */
245#  define SEEK_CUR        1       /* Seek from current position.  */
246#  define SEEK_END        2       /* Set file pointer to EOF plus "offset" */
247#endif
248#ifndef z_off_t
249#  define  z_off_t long
250#endif
251
252/* MVS linker does not support external names larger than 8 bytes */
253#if defined(__MVS__)
254#   pragma map(deflateInit_,"DEIN")
255#   pragma map(deflateInit2_,"DEIN2")
256#   pragma map(deflateEnd,"DEEND")
257#   pragma map(inflateInit_,"ININ")
258#   pragma map(inflateInit2_,"ININ2")
259#   pragma map(inflateEnd,"INEND")
260#   pragma map(inflateSync,"INSY")
261#   pragma map(inflateSetDictionary,"INSEDI")
262#   pragma map(inflate_blocks,"INBL")
263#   pragma map(inflate_blocks_new,"INBLNE")
264#   pragma map(inflate_blocks_free,"INBLFR")
265#   pragma map(inflate_blocks_reset,"INBLRE")
266#   pragma map(inflate_codes_free,"INCOFR")
267#   pragma map(inflate_codes,"INCO")
268#   pragma map(inflate_fast,"INFA")
269#   pragma map(inflate_flush,"INFLU")
270#   pragma map(inflate_mask,"INMA")
271#   pragma map(inflate_set_dictionary,"INSEDI2")
272#   pragma map(inflate_copyright,"INCOPY")
273#   pragma map(inflate_trees_bits,"INTRBI")
274#   pragma map(inflate_trees_dynamic,"INTRDY")
275#   pragma map(inflate_trees_fixed,"INTRFI")
276#   pragma map(inflate_trees_free,"INTRFR")
277#endif
278
279#endif /* _ZCONF_H */
Note: See TracBrowser for help on using the repository browser.