tizen 2.3.1 release
[external/libwebsockets.git] / win32port / zlib / zconf.h
1 /* zconf.h -- configuration of the zlib compression library\r
2  * Copyright (C) 1995-2010 Jean-loup Gailly.\r
3  * For conditions of distribution and use, see copyright notice in zlib.h\r
4  */\r
5 \r
6 /* @(#) $Id$ */\r
7 \r
8 #ifndef ZCONF_H\r
9 #define ZCONF_H\r
10 \r
11 /*\r
12  * If you *really* need a unique prefix for all types and library functions,\r
13  * compile with -DZ_PREFIX. The "standard" zlib should be compiled without it.\r
14  * Even better than compiling with -DZ_PREFIX would be to use configure to set\r
15  * this permanently in zconf.h using "./configure --zprefix".\r
16  */\r
17 #ifdef Z_PREFIX     /* may be set to #if 1 by ./configure */\r
18 \r
19 /* all linked symbols */\r
20 #  define _dist_code            z__dist_code\r
21 #  define _length_code          z__length_code\r
22 #  define _tr_align             z__tr_align\r
23 #  define _tr_flush_block       z__tr_flush_block\r
24 #  define _tr_init              z__tr_init\r
25 #  define _tr_stored_block      z__tr_stored_block\r
26 #  define _tr_tally             z__tr_tally\r
27 #  define adler32               z_adler32\r
28 #  define adler32_combine       z_adler32_combine\r
29 #  define adler32_combine64     z_adler32_combine64\r
30 #  define compress              z_compress\r
31 #  define compress2             z_compress2\r
32 #  define compressBound         z_compressBound\r
33 #  define crc32                 z_crc32\r
34 #  define crc32_combine         z_crc32_combine\r
35 #  define crc32_combine64       z_crc32_combine64\r
36 #  define deflate               z_deflate\r
37 #  define deflateBound          z_deflateBound\r
38 #  define deflateCopy           z_deflateCopy\r
39 #  define deflateEnd            z_deflateEnd\r
40 #  define deflateInit2_         z_deflateInit2_\r
41 #  define deflateInit_          z_deflateInit_\r
42 #  define deflateParams         z_deflateParams\r
43 #  define deflatePrime          z_deflatePrime\r
44 #  define deflateReset          z_deflateReset\r
45 #  define deflateSetDictionary  z_deflateSetDictionary\r
46 #  define deflateSetHeader      z_deflateSetHeader\r
47 #  define deflateTune           z_deflateTune\r
48 #  define deflate_copyright     z_deflate_copyright\r
49 #  define get_crc_table         z_get_crc_table\r
50 #  define gz_error              z_gz_error\r
51 #  define gz_intmax             z_gz_intmax\r
52 #  define gz_strwinerror        z_gz_strwinerror\r
53 #  define gzbuffer              z_gzbuffer\r
54 #  define gzclearerr            z_gzclearerr\r
55 #  define gzclose               z_gzclose\r
56 #  define gzclose_r             z_gzclose_r\r
57 #  define gzclose_w             z_gzclose_w\r
58 #  define gzdirect              z_gzdirect\r
59 #  define gzdopen               z_gzdopen\r
60 #  define gzeof                 z_gzeof\r
61 #  define gzerror               z_gzerror\r
62 #  define gzflush               z_gzflush\r
63 #  define gzgetc                z_gzgetc\r
64 #  define gzgets                z_gzgets\r
65 #  define gzoffset              z_gzoffset\r
66 #  define gzoffset64            z_gzoffset64\r
67 #  define gzopen                z_gzopen\r
68 #  define gzopen64              z_gzopen64\r
69 #  define gzprintf              z_gzprintf\r
70 #  define gzputc                z_gzputc\r
71 #  define gzputs                z_gzputs\r
72 #  define gzread                z_gzread\r
73 #  define gzrewind              z_gzrewind\r
74 #  define gzseek                z_gzseek\r
75 #  define gzseek64              z_gzseek64\r
76 #  define gzsetparams           z_gzsetparams\r
77 #  define gztell                z_gztell\r
78 #  define gztell64              z_gztell64\r
79 #  define gzungetc              z_gzungetc\r
80 #  define gzwrite               z_gzwrite\r
81 #  define inflate               z_inflate\r
82 #  define inflateBack           z_inflateBack\r
83 #  define inflateBackEnd        z_inflateBackEnd\r
84 #  define inflateBackInit_      z_inflateBackInit_\r
85 #  define inflateCopy           z_inflateCopy\r
86 #  define inflateEnd            z_inflateEnd\r
87 #  define inflateGetHeader      z_inflateGetHeader\r
88 #  define inflateInit2_         z_inflateInit2_\r
89 #  define inflateInit_          z_inflateInit_\r
90 #  define inflateMark           z_inflateMark\r
91 #  define inflatePrime          z_inflatePrime\r
92 #  define inflateReset          z_inflateReset\r
93 #  define inflateReset2         z_inflateReset2\r
94 #  define inflateSetDictionary  z_inflateSetDictionary\r
95 #  define inflateSync           z_inflateSync\r
96 #  define inflateSyncPoint      z_inflateSyncPoint\r
97 #  define inflateUndermine      z_inflateUndermine\r
98 #  define inflate_copyright     z_inflate_copyright\r
99 #  define inflate_fast          z_inflate_fast\r
100 #  define inflate_table         z_inflate_table\r
101 #  define uncompress            z_uncompress\r
102 #  define zError                z_zError\r
103 #  define zcalloc               z_zcalloc\r
104 #  define zcfree                z_zcfree\r
105 #  define zlibCompileFlags      z_zlibCompileFlags\r
106 #  define zlibVersion           z_zlibVersion\r
107 \r
108 /* all zlib typedefs in zlib.h and zconf.h */\r
109 #  define Byte                  z_Byte\r
110 #  define Bytef                 z_Bytef\r
111 #  define alloc_func            z_alloc_func\r
112 #  define charf                 z_charf\r
113 #  define free_func             z_free_func\r
114 #  define gzFile                z_gzFile\r
115 #  define gz_header             z_gz_header\r
116 #  define gz_headerp            z_gz_headerp\r
117 #  define in_func               z_in_func\r
118 #  define intf                  z_intf\r
119 #  define out_func              z_out_func\r
120 #  define uInt                  z_uInt\r
121 #  define uIntf                 z_uIntf\r
122 #  define uLong                 z_uLong\r
123 #  define uLongf                z_uLongf\r
124 #  define voidp                 z_voidp\r
125 #  define voidpc                z_voidpc\r
126 #  define voidpf                z_voidpf\r
127 \r
128 /* all zlib structs in zlib.h and zconf.h */\r
129 #  define gz_header_s           z_gz_header_s\r
130 #  define internal_state        z_internal_state\r
131 \r
132 #endif\r
133 \r
134 #if defined(__MSDOS__) && !defined(MSDOS)\r
135 #  define MSDOS\r
136 #endif\r
137 #if (defined(OS_2) || defined(__OS2__)) && !defined(OS2)\r
138 #  define OS2\r
139 #endif\r
140 #if defined(_WINDOWS) && !defined(WINDOWS)\r
141 #  define WINDOWS\r
142 #endif\r
143 #if defined(_WIN32) || defined(_WIN32_WCE) || defined(__WIN32__)\r
144 #  ifndef WIN32\r
145 #    define WIN32\r
146 #  endif\r
147 #endif\r
148 #if (defined(MSDOS) || defined(OS2) || defined(WINDOWS)) && !defined(WIN32)\r
149 #  if !defined(__GNUC__) && !defined(__FLAT__) && !defined(__386__)\r
150 #    ifndef SYS16BIT\r
151 #      define SYS16BIT\r
152 #    endif\r
153 #  endif\r
154 #endif\r
155 \r
156 /*\r
157  * Compile with -DMAXSEG_64K if the alloc function cannot allocate more\r
158  * than 64k bytes at a time (needed on systems with 16-bit int).\r
159  */\r
160 #ifdef SYS16BIT\r
161 #  define MAXSEG_64K\r
162 #endif\r
163 #ifdef MSDOS\r
164 #  define UNALIGNED_OK\r
165 #endif\r
166 \r
167 #ifdef __STDC_VERSION__\r
168 #  ifndef STDC\r
169 #    define STDC\r
170 #  endif\r
171 #  if __STDC_VERSION__ >= 199901L\r
172 #    ifndef STDC99\r
173 #      define STDC99\r
174 #    endif\r
175 #  endif\r
176 #endif\r
177 #if !defined(STDC) && (defined(__STDC__) || defined(__cplusplus))\r
178 #  define STDC\r
179 #endif\r
180 #if !defined(STDC) && (defined(__GNUC__) || defined(__BORLANDC__))\r
181 #  define STDC\r
182 #endif\r
183 #if !defined(STDC) && (defined(MSDOS) || defined(WINDOWS) || defined(WIN32))\r
184 #  define STDC\r
185 #endif\r
186 #if !defined(STDC) && (defined(OS2) || defined(__HOS_AIX__))\r
187 #  define STDC\r
188 #endif\r
189 \r
190 #if defined(__OS400__) && !defined(STDC)    /* iSeries (formerly AS/400). */\r
191 #  define STDC\r
192 #endif\r
193 \r
194 #ifndef STDC\r
195 #  ifndef const /* cannot use !defined(STDC) && !defined(const) on Mac */\r
196 #    define const       /* note: need a more gentle solution here */\r
197 #  endif\r
198 #endif\r
199 \r
200 /* Some Mac compilers merge all .h files incorrectly: */\r
201 #if defined(__MWERKS__)||defined(applec)||defined(THINK_C)||defined(__SC__)\r
202 #  define NO_DUMMY_DECL\r
203 #endif\r
204 \r
205 /* Maximum value for memLevel in deflateInit2 */\r
206 #ifndef MAX_MEM_LEVEL\r
207 #  ifdef MAXSEG_64K\r
208 #    define MAX_MEM_LEVEL 8\r
209 #  else\r
210 #    define MAX_MEM_LEVEL 9\r
211 #  endif\r
212 #endif\r
213 \r
214 /* Maximum value for windowBits in deflateInit2 and inflateInit2.\r
215  * WARNING: reducing MAX_WBITS makes minigzip unable to extract .gz files\r
216  * created by gzip. (Files created by minigzip can still be extracted by\r
217  * gzip.)\r
218  */\r
219 #ifndef MAX_WBITS\r
220 #  define MAX_WBITS   15 /* 32K LZ77 window */\r
221 #endif\r
222 \r
223 /* The memory requirements for deflate are (in bytes):\r
224             (1 << (windowBits+2)) +  (1 << (memLevel+9))\r
225  that is: 128K for windowBits=15  +  128K for memLevel = 8  (default values)\r
226  plus a few kilobytes for small objects. For example, if you want to reduce\r
227  the default memory requirements from 256K to 128K, compile with\r
228      make CFLAGS="-O -DMAX_WBITS=14 -DMAX_MEM_LEVEL=7"\r
229  Of course this will generally degrade compression (there's no free lunch).\r
230 \r
231    The memory requirements for inflate are (in bytes) 1 << windowBits\r
232  that is, 32K for windowBits=15 (default value) plus a few kilobytes\r
233  for small objects.\r
234 */\r
235 \r
236                         /* Type declarations */\r
237 \r
238 #ifndef OF /* function prototypes */\r
239 #  ifdef STDC\r
240 #    define OF(args)  args\r
241 #  else\r
242 #    define OF(args)  ()\r
243 #  endif\r
244 #endif\r
245 \r
246 /* The following definitions for FAR are needed only for MSDOS mixed\r
247  * model programming (small or medium model with some far allocations).\r
248  * This was tested only with MSC; for other MSDOS compilers you may have\r
249  * to define NO_MEMCPY in zutil.h.  If you don't need the mixed model,\r
250  * just define FAR to be empty.\r
251  */\r
252 #ifdef SYS16BIT\r
253 #  if defined(M_I86SM) || defined(M_I86MM)\r
254      /* MSC small or medium model */\r
255 #    define SMALL_MEDIUM\r
256 #    ifdef _MSC_VER\r
257 #      define FAR _far\r
258 #    else\r
259 #      define FAR far\r
260 #    endif\r
261 #  endif\r
262 #  if (defined(__SMALL__) || defined(__MEDIUM__))\r
263      /* Turbo C small or medium model */\r
264 #    define SMALL_MEDIUM\r
265 #    ifdef __BORLANDC__\r
266 #      define FAR _far\r
267 #    else\r
268 #      define FAR far\r
269 #    endif\r
270 #  endif\r
271 #endif\r
272 \r
273 #if defined(WINDOWS) || defined(WIN32)\r
274    /* If building or using zlib as a DLL, define ZLIB_DLL.\r
275     * This is not mandatory, but it offers a little performance increase.\r
276     */\r
277 #  ifdef ZLIB_DLL\r
278 #    if defined(WIN32) && (!defined(__BORLANDC__) || (__BORLANDC__ >= 0x500))\r
279 #      ifdef ZLIB_INTERNAL\r
280 #        define ZEXTERN extern __declspec(dllexport)\r
281 #      else\r
282 #        define ZEXTERN extern __declspec(dllimport)\r
283 #      endif\r
284 #    endif\r
285 #  endif  /* ZLIB_DLL */\r
286    /* If building or using zlib with the WINAPI/WINAPIV calling convention,\r
287     * define ZLIB_WINAPI.\r
288     * Caution: the standard ZLIB1.DLL is NOT compiled using ZLIB_WINAPI.\r
289     */\r
290 #  ifdef ZLIB_WINAPI\r
291 #    ifdef FAR\r
292 #      undef FAR\r
293 #    endif\r
294 #    include <windows.h>\r
295      /* No need for _export, use ZLIB.DEF instead. */\r
296      /* For complete Windows compatibility, use WINAPI, not __stdcall. */\r
297 #    define ZEXPORT WINAPI\r
298 #    ifdef WIN32\r
299 #      define ZEXPORTVA WINAPIV\r
300 #    else\r
301 #      define ZEXPORTVA FAR CDECL\r
302 #    endif\r
303 #  endif\r
304 #endif\r
305 \r
306 #if defined (__BEOS__)\r
307 #  ifdef ZLIB_DLL\r
308 #    ifdef ZLIB_INTERNAL\r
309 #      define ZEXPORT   __declspec(dllexport)\r
310 #      define ZEXPORTVA __declspec(dllexport)\r
311 #    else\r
312 #      define ZEXPORT   __declspec(dllimport)\r
313 #      define ZEXPORTVA __declspec(dllimport)\r
314 #    endif\r
315 #  endif\r
316 #endif\r
317 \r
318 #ifndef ZEXTERN\r
319 #  define ZEXTERN extern\r
320 #endif\r
321 #ifndef ZEXPORT\r
322 #  define ZEXPORT\r
323 #endif\r
324 #ifndef ZEXPORTVA\r
325 #  define ZEXPORTVA\r
326 #endif\r
327 \r
328 #ifndef FAR\r
329 #  define FAR\r
330 #endif\r
331 \r
332 #if !defined(__MACTYPES__)\r
333 typedef unsigned char  Byte;  /* 8 bits */\r
334 #endif\r
335 typedef unsigned int   uInt;  /* 16 bits or more */\r
336 typedef unsigned long  uLong; /* 32 bits or more */\r
337 \r
338 #ifdef SMALL_MEDIUM\r
339    /* Borland C/C++ and some old MSC versions ignore FAR inside typedef */\r
340 #  define Bytef Byte FAR\r
341 #else\r
342    typedef Byte  FAR Bytef;\r
343 #endif\r
344 typedef char  FAR charf;\r
345 typedef int   FAR intf;\r
346 typedef uInt  FAR uIntf;\r
347 typedef uLong FAR uLongf;\r
348 \r
349 #ifdef STDC\r
350    typedef void const *voidpc;\r
351    typedef void FAR   *voidpf;\r
352    typedef void       *voidp;\r
353 #else\r
354    typedef Byte const *voidpc;\r
355    typedef Byte FAR   *voidpf;\r
356    typedef Byte       *voidp;\r
357 #endif\r
358 \r
359 #ifdef HAVE_UNISTD_H    /* may be set to #if 1 by ./configure */\r
360 #  define Z_HAVE_UNISTD_H\r
361 #endif\r
362 \r
363 #ifdef STDC\r
364 #  include <sys/types.h>    /* for off_t */\r
365 #endif\r
366 \r
367 /* a little trick to accommodate both "#define _LARGEFILE64_SOURCE" and\r
368  * "#define _LARGEFILE64_SOURCE 1" as requesting 64-bit operations, (even\r
369  * though the former does not conform to the LFS document), but considering\r
370  * both "#undef _LARGEFILE64_SOURCE" and "#define _LARGEFILE64_SOURCE 0" as\r
371  * equivalently requesting no 64-bit operations\r
372  */\r
373 #if -_LARGEFILE64_SOURCE - -1 == 1\r
374 #  undef _LARGEFILE64_SOURCE\r
375 #endif\r
376 \r
377 #if defined(Z_HAVE_UNISTD_H) || defined(_LARGEFILE64_SOURCE)\r
378 #  include <unistd.h>       /* for SEEK_* and off_t */\r
379 #  ifdef VMS\r
380 #    include <unixio.h>     /* for off_t */\r
381 #  endif\r
382 #  ifndef z_off_t\r
383 #    define z_off_t off_t\r
384 #  endif\r
385 #endif\r
386 \r
387 #ifndef SEEK_SET\r
388 #  define SEEK_SET        0       /* Seek from beginning of file.  */\r
389 #  define SEEK_CUR        1       /* Seek from current position.  */\r
390 #  define SEEK_END        2       /* Set file pointer to EOF plus "offset" */\r
391 #endif\r
392 \r
393 #ifndef z_off_t\r
394 #  define z_off_t long\r
395 #endif\r
396 \r
397 #if defined(_LARGEFILE64_SOURCE) && _LFS64_LARGEFILE-0\r
398 #  define z_off64_t off64_t\r
399 #else\r
400 #  define z_off64_t z_off_t\r
401 #endif\r
402 \r
403 #if defined(__OS400__)\r
404 #  define NO_vsnprintf\r
405 #endif\r
406 \r
407 #if defined(__MVS__)\r
408 #  define NO_vsnprintf\r
409 #endif\r
410 \r
411 /* MVS linker does not support external names larger than 8 bytes */\r
412 #if defined(__MVS__)\r
413   #pragma map(deflateInit_,"DEIN")\r
414   #pragma map(deflateInit2_,"DEIN2")\r
415   #pragma map(deflateEnd,"DEEND")\r
416   #pragma map(deflateBound,"DEBND")\r
417   #pragma map(inflateInit_,"ININ")\r
418   #pragma map(inflateInit2_,"ININ2")\r
419   #pragma map(inflateEnd,"INEND")\r
420   #pragma map(inflateSync,"INSY")\r
421   #pragma map(inflateSetDictionary,"INSEDI")\r
422   #pragma map(compressBound,"CMBND")\r
423   #pragma map(inflate_table,"INTABL")\r
424   #pragma map(inflate_fast,"INFA")\r
425   #pragma map(inflate_copyright,"INCOPY")\r
426 #endif\r
427 \r
428 #endif /* ZCONF_H */\r