]> git.saurik.com Git - wxWidgets.git/blame - src/zlib/zconf.h
The alignment controls are now left-aligned if the floating controls are not shown.
[wxWidgets.git] / src / zlib / zconf.h
CommitLineData
c801d85f 1/* zconf.h -- configuration of the zlib compression library
41faf807 2 * Copyright (C) 1995-2005 Jean-loup Gailly.
e6ebb514 3 * For conditions of distribution and use, see copyright notice in zlib.h
c801d85f
KB
4 */
5
c801d85f 6
51dbdf87
VS
7#ifndef ZCONF_H
8#define ZCONF_H
c801d85f
KB
9
10/*
11 * If you *really* need a unique prefix for all types and library functions,
12 * compile with -DZ_PREFIX. The "standard" zlib should be compiled without it.
13 */
14#ifdef Z_PREFIX
ba0052f3
VS
15# define deflateInit_ z_deflateInit_
16# define deflate z_deflate
17# define deflateEnd z_deflateEnd
18# define inflateInit_ z_inflateInit_
19# define inflate z_inflate
20# define inflateEnd z_inflateEnd
21# define deflateInit2_ z_deflateInit2_
22# define deflateSetDictionary z_deflateSetDictionary
23# define deflateCopy z_deflateCopy
24# define deflateReset z_deflateReset
25# define deflateParams z_deflateParams
26# define deflateBound z_deflateBound
27# define deflatePrime z_deflatePrime
28# define inflateInit2_ z_inflateInit2_
29# define inflateSetDictionary z_inflateSetDictionary
30# define inflateSync z_inflateSync
31# define inflateSyncPoint z_inflateSyncPoint
32# define inflateCopy z_inflateCopy
33# define inflateReset z_inflateReset
34# define inflateBack z_inflateBack
35# define inflateBackEnd z_inflateBackEnd
36# define compress z_compress
37# define compress2 z_compress2
38# define compressBound z_compressBound
39# define uncompress z_uncompress
40# define adler32 z_adler32
41# define crc32 z_crc32
42# define get_crc_table z_get_crc_table
43# define zError z_zError
c801d85f 44
41faf807
MW
45# define alloc_func z_alloc_func
46# define free_func z_free_func
47# define in_func z_in_func
48# define out_func z_out_func
ba0052f3
VS
49# define Byte z_Byte
50# define uInt z_uInt
51# define uLong z_uLong
52# define Bytef z_Bytef
53# define charf z_charf
54# define intf z_intf
55# define uIntf z_uIntf
56# define uLongf z_uLongf
57# define voidpf z_voidpf
58# define voidp z_voidp
c801d85f
KB
59#endif
60
51dbdf87
VS
61#if defined(__MSDOS__) && !defined(MSDOS)
62# define MSDOS
63#endif
64#if (defined(OS_2) || defined(__OS2__)) && !defined(OS2)
65# define OS2
66#endif
67#if defined(_WINDOWS) && !defined(WINDOWS)
68# define WINDOWS
69#endif
41faf807
MW
70#if defined(_WIN32) || defined(_WIN32_WCE) || defined(__WIN32__)
71# ifndef WIN32
72# define WIN32
73# endif
c801d85f 74#endif
51dbdf87
VS
75#if (defined(MSDOS) || defined(OS2) || defined(WINDOWS)) && !defined(WIN32)
76# if !defined(__GNUC__) && !defined(__FLAT__) && !defined(__386__)
77# ifndef SYS16BIT
78# define SYS16BIT
79# endif
c801d85f
KB
80# endif
81#endif
c801d85f
KB
82
83/*
84 * Compile with -DMAXSEG_64K if the alloc function cannot allocate more
85 * than 64k bytes at a time (needed on systems with 16-bit int).
86 */
51dbdf87 87#ifdef SYS16BIT
c801d85f
KB
88# define MAXSEG_64K
89#endif
90#ifdef MSDOS
91# define UNALIGNED_OK
92#endif
93
51dbdf87 94#ifdef __STDC_VERSION__
c801d85f
KB
95# ifndef STDC
96# define STDC
97# endif
51dbdf87
VS
98# if __STDC_VERSION__ >= 199901L
99# ifndef STDC99
100# define STDC99
101# endif
102# endif
103#endif
104#if !defined(STDC) && (defined(__STDC__) || defined(__cplusplus))
105# define STDC
106#endif
107#if !defined(STDC) && (defined(__GNUC__) || defined(__BORLANDC__))
108# define STDC
109#endif
110#if !defined(STDC) && (defined(MSDOS) || defined(WINDOWS) || defined(WIN32))
111# define STDC
112#endif
113#if !defined(STDC) && (defined(OS2) || defined(__HOS_AIX__))
114# define STDC
115#endif
116
117#if defined(__OS400__) && !defined(STDC) /* iSeries (formerly AS/400). */
118# define STDC
c801d85f
KB
119#endif
120
121#ifndef STDC
122# ifndef const /* cannot use !defined(STDC) && !defined(const) on Mac */
51dbdf87 123# define const /* note: need a more gentle solution here */
c801d85f
KB
124# endif
125#endif
126
127/* Some Mac compilers merge all .h files incorrectly: */
51dbdf87 128#if defined(__MWERKS__)||defined(applec)||defined(THINK_C)||defined(__SC__)
c801d85f
KB
129# define NO_DUMMY_DECL
130#endif
131
c801d85f
KB
132/* Maximum value for memLevel in deflateInit2 */
133#ifndef MAX_MEM_LEVEL
134# ifdef MAXSEG_64K
135# define MAX_MEM_LEVEL 8
136# else
137# define MAX_MEM_LEVEL 9
138# endif
139#endif
140
141/* Maximum value for windowBits in deflateInit2 and inflateInit2.
142 * WARNING: reducing MAX_WBITS makes minigzip unable to extract .gz files
143 * created by gzip. (Files created by minigzip can still be extracted by
144 * gzip.)
145 */
146#ifndef MAX_WBITS
147# define MAX_WBITS 15 /* 32K LZ77 window */
148#endif
149
150/* The memory requirements for deflate are (in bytes):
151 (1 << (windowBits+2)) + (1 << (memLevel+9))
152 that is: 128K for windowBits=15 + 128K for memLevel = 8 (default values)
153 plus a few kilobytes for small objects. For example, if you want to reduce
154 the default memory requirements from 256K to 128K, compile with
155 make CFLAGS="-O -DMAX_WBITS=14 -DMAX_MEM_LEVEL=7"
156 Of course this will generally degrade compression (there's no free lunch).
157
158 The memory requirements for inflate are (in bytes) 1 << windowBits
159 that is, 32K for windowBits=15 (default value) plus a few kilobytes
160 for small objects.
161*/
162
163 /* Type declarations */
164
165#ifndef OF /* function prototypes */
166# ifdef STDC
167# define OF(args) args
168# else
169# define OF(args) ()
170# endif
171#endif
172
173/* The following definitions for FAR are needed only for MSDOS mixed
174 * model programming (small or medium model with some far allocations).
175 * This was tested only with MSC; for other MSDOS compilers you may have
176 * to define NO_MEMCPY in zutil.h. If you don't need the mixed model,
177 * just define FAR to be empty.
178 */
51dbdf87
VS
179#ifdef SYS16BIT
180# if defined(M_I86SM) || defined(M_I86MM)
181 /* MSC small or medium model */
182# define SMALL_MEDIUM
183# ifdef _MSC_VER
184# define FAR _far
185# else
186# define FAR far
187# endif
c801d85f 188# endif
51dbdf87
VS
189# if (defined(__SMALL__) || defined(__MEDIUM__))
190 /* Turbo C small or medium model */
c801d85f 191# define SMALL_MEDIUM
51dbdf87
VS
192# ifdef __BORLANDC__
193# define FAR _far
194# else
195# define FAR far
196# endif
c801d85f
KB
197# endif
198#endif
199
51dbdf87
VS
200#if defined(WINDOWS) || defined(WIN32)
201 /* If building or using zlib as a DLL, define ZLIB_DLL.
202 * This is not mandatory, but it offers a little performance increase.
203 */
204# ifdef ZLIB_DLL
205# if defined(WIN32) && (!defined(__BORLANDC__) || (__BORLANDC__ >= 0x500))
206# ifdef ZLIB_INTERNAL
207# define ZEXTERN extern __declspec(dllexport)
208# else
209# define ZEXTERN extern __declspec(dllimport)
a4019ec2
SC
210# endif
211# endif
51dbdf87
VS
212# endif /* ZLIB_DLL */
213 /* If building or using zlib with the WINAPI/WINAPIV calling convention,
214 * define ZLIB_WINAPI.
215 * Caution: the standard ZLIB1.DLL is NOT compiled using ZLIB_WINAPI.
216 */
217# ifdef ZLIB_WINAPI
218# ifdef FAR
219# undef FAR
220# endif
221# include <windows.h>
222 /* No need for _export, use ZLIB.DEF instead. */
223 /* For complete Windows compatibility, use WINAPI, not __stdcall. */
224# define ZEXPORT WINAPI
225# ifdef WIN32
226# define ZEXPORTVA WINAPIV
227# else
228# define ZEXPORTVA FAR CDECL
229# endif
a4019ec2
SC
230# endif
231#endif
232
233#if defined (__BEOS__)
51dbdf87
VS
234# ifdef ZLIB_DLL
235# ifdef ZLIB_INTERNAL
236# define ZEXPORT __declspec(dllexport)
237# define ZEXPORTVA __declspec(dllexport)
238# else
239# define ZEXPORT __declspec(dllimport)
240# define ZEXPORTVA __declspec(dllimport)
241# endif
a4019ec2
SC
242# endif
243#endif
244
51dbdf87
VS
245#ifndef ZEXTERN
246# define ZEXTERN extern
247#endif
a4019ec2 248#ifndef ZEXPORT
51dbdf87 249# define ZEXPORT
a4019ec2
SC
250#endif
251#ifndef ZEXPORTVA
51dbdf87 252# define ZEXPORTVA
c801d85f
KB
253#endif
254
255#ifndef FAR
51dbdf87 256# define FAR
c801d85f
KB
257#endif
258
51dbdf87 259#if !defined(__MACTYPES__)
c801d85f 260typedef unsigned char Byte; /* 8 bits */
a4019ec2 261#endif
c801d85f
KB
262typedef unsigned int uInt; /* 16 bits or more */
263typedef unsigned long uLong; /* 32 bits or more */
264
a4019ec2
SC
265#ifdef SMALL_MEDIUM
266 /* Borland C/C++ and some old MSC versions ignore FAR inside typedef */
c801d85f
KB
267# define Bytef Byte FAR
268#else
269 typedef Byte FAR Bytef;
270#endif
271typedef char FAR charf;
272typedef int FAR intf;
273typedef uInt FAR uIntf;
274typedef uLong FAR uLongf;
275
276#ifdef STDC
51dbdf87
VS
277 typedef void const *voidpc;
278 typedef void FAR *voidpf;
279 typedef void *voidp;
c801d85f 280#else
51dbdf87
VS
281 typedef Byte const *voidpc;
282 typedef Byte FAR *voidpf;
283 typedef Byte *voidp;
c801d85f
KB
284#endif
285
51dbdf87 286#if 0 /* HAVE_UNISTD_H -- this line is updated by ./configure */
c801d85f
KB
287# include <sys/types.h> /* for off_t */
288# include <unistd.h> /* for SEEK_* and off_t */
51dbdf87
VS
289# ifdef VMS
290# include <unixio.h> /* for off_t */
291# endif
ba0052f3 292# define z_off_t off_t
c801d85f
KB
293#endif
294#ifndef SEEK_SET
295# define SEEK_SET 0 /* Seek from beginning of file. */
296# define SEEK_CUR 1 /* Seek from current position. */
a4019ec2 297# define SEEK_END 2 /* Set file pointer to EOF plus "offset" */
c801d85f
KB
298#endif
299#ifndef z_off_t
ba0052f3 300# define z_off_t long
c801d85f
KB
301#endif
302
51dbdf87 303#if defined(__OS400__)
ba0052f3 304# define NO_vsnprintf
51dbdf87
VS
305#endif
306
307#if defined(__MVS__)
308# define NO_vsnprintf
309# ifdef FAR
310# undef FAR
311# endif
312#endif
313
c801d85f
KB
314/* MVS linker does not support external names larger than 8 bytes */
315#if defined(__MVS__)
316# pragma map(deflateInit_,"DEIN")
317# pragma map(deflateInit2_,"DEIN2")
318# pragma map(deflateEnd,"DEEND")
51dbdf87 319# pragma map(deflateBound,"DEBND")
c801d85f
KB
320# pragma map(inflateInit_,"ININ")
321# pragma map(inflateInit2_,"ININ2")
322# pragma map(inflateEnd,"INEND")
323# pragma map(inflateSync,"INSY")
324# pragma map(inflateSetDictionary,"INSEDI")
51dbdf87
VS
325# pragma map(compressBound,"CMBND")
326# pragma map(inflate_table,"INTABL")
c801d85f 327# pragma map(inflate_fast,"INFA")
c801d85f 328# pragma map(inflate_copyright,"INCOPY")
c801d85f
KB
329#endif
330
51dbdf87 331#endif /* ZCONF_H */