ReactOS 0.4.15-dev-7918-g2a2556c
ftzconf.h
Go to the documentation of this file.
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$ */
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/* WinCE doesn't have errno.h */
64#ifdef _WIN32_WCE
65# define NO_ERRNO_H
66#endif
67
68
69/*
70 * Compile with -DMAXSEG_64K if the alloc function cannot allocate more
71 * than 64k bytes at a time (needed on systems with 16-bit int).
72 */
73#if defined(MSDOS) && !defined(__32BIT__)
74# define MAXSEG_64K
75#endif
76#ifdef MSDOS
77# define UNALIGNED_OK
78#endif
79
80#if (defined(MSDOS) || defined(_WINDOWS) || defined(WIN32)) && !defined(STDC)
81# define STDC
82#endif
83#if defined(__STDC__) || defined(__cplusplus) || defined(__OS2__)
84# ifndef STDC
85# define STDC
86# endif
87#endif
88
89#ifndef STDC
90# ifndef const /* cannot use !defined(STDC) && !defined(const) on Mac */
91# define const
92# endif
93#endif
94
95/* Some Mac compilers merge all .h files incorrectly: */
96#if defined(__MWERKS__) || defined(applec) ||defined(THINK_C) ||defined(__SC__)
97# define NO_DUMMY_DECL
98#endif
99
100/* Old Borland C and LCC incorrectly complains about missing returns: */
101#if defined(__BORLANDC__) && (__BORLANDC__ < 0x500)
102# define NEED_DUMMY_RETURN
103#endif
104
105#if defined(__LCC__)
106# define NEED_DUMMY_RETURN
107#endif
108
109/* Maximum value for memLevel in deflateInit2 */
110#ifndef MAX_MEM_LEVEL
111# ifdef MAXSEG_64K
112# define MAX_MEM_LEVEL 8
113# else
114# define MAX_MEM_LEVEL 9
115# endif
116#endif
117
118/* Maximum value for windowBits in deflateInit2 and inflateInit2.
119 * WARNING: reducing MAX_WBITS makes minigzip unable to extract .gz files
120 * created by gzip. (Files created by minigzip can still be extracted by
121 * gzip.)
122 */
123#ifndef MAX_WBITS
124# define MAX_WBITS 15 /* 32K LZ77 window */
125#endif
126
127/* The memory requirements for deflate are (in bytes):
128 (1 << (windowBits+2)) + (1 << (memLevel+9))
129 that is: 128K for windowBits=15 + 128K for memLevel = 8 (default values)
130 plus a few kilobytes for small objects. For example, if you want to reduce
131 the default memory requirements from 256K to 128K, compile with
132 make CFLAGS="-O -DMAX_WBITS=14 -DMAX_MEM_LEVEL=7"
133 Of course this will generally degrade compression (there's no free lunch).
134
135 The memory requirements for inflate are (in bytes) 1 << windowBits
136 that is, 32K for windowBits=15 (default value) plus a few kilobytes
137 for small objects.
138*/
139
140 /* Type declarations */
141
142#ifndef OF /* function prototypes */
143# ifdef STDC
144# define OF(args) args
145# else
146# define OF(args) ()
147# endif
148#endif
149
150/* The following definitions for FAR are needed only for MSDOS mixed
151 * model programming (small or medium model with some far allocations).
152 * This was tested only with MSC; for other MSDOS compilers you may have
153 * to define NO_MEMCPY in zutil.h. If you don't need the mixed model,
154 * just define FAR to be empty.
155 */
156#if (defined(M_I86SM) || defined(M_I86MM)) && !defined(__32BIT__)
157 /* MSC small or medium model */
158# define SMALL_MEDIUM
159# ifdef _MSC_VER
160# define FAR _far
161# else
162# define FAR far
163# endif
164#endif
165#if defined(__BORLANDC__) && (defined(__SMALL__) || defined(__MEDIUM__))
166# ifndef __32BIT__
167# define SMALL_MEDIUM
168# define FAR _far
169# endif
170#endif
171
172/* Compile with -DZLIB_DLL for Windows DLL support */
173#if defined(ZLIB_DLL)
174# if defined(_WINDOWS) || defined(WINDOWS)
175# ifdef FAR
176# undef FAR
177# endif
178# include <windows.h>
179# define ZEXPORT(x) x WINAPI
180# ifdef WIN32
181# define ZEXPORTVA(x) x WINAPIV
182# else
183# define ZEXPORTVA(x) x FAR _cdecl _export
184# endif
185# endif
186# if defined (__BORLANDC__)
187# if (__BORLANDC__ >= 0x0500) && defined (WIN32)
188# include <windows.h>
189# define ZEXPORT(x) x __declspec(dllexport) WINAPI
190# define ZEXPORTRVA(x) x __declspec(dllexport) WINAPIV
191# else
192# if defined (_Windows) && defined (__DLL__)
193# define ZEXPORT(x) x _export
194# define ZEXPORTVA(x) x _export
195# endif
196# endif
197# endif
198#endif
199
200
201#ifndef ZEXPORT
202# define ZEXPORT(x) static x
203#endif
204#ifndef ZEXPORTVA
205# define ZEXPORTVA(x) static x
206#endif
207#ifndef ZEXTERN
208# define ZEXTERN(x) static x
209#endif
210#ifndef ZEXTERNDEF
211# define ZEXTERNDEF(x) static x
212#endif
213
214#ifndef FAR
215# define FAR
216#endif
217
218#if !defined(MACOS) && !defined(TARGET_OS_MAC)
219typedef unsigned char Byte; /* 8 bits */
220#endif
221typedef unsigned int uInt; /* 16 bits or more */
222typedef unsigned long uLong; /* 32 bits or more */
223
224#ifdef SMALL_MEDIUM
225 /* Borland C/C++ and some old MSC versions ignore FAR inside typedef */
226# define Bytef Byte FAR
227#else
228 typedef Byte FAR Bytef;
229#endif
230typedef char FAR charf;
231typedef int FAR intf;
232typedef uInt FAR uIntf;
234
235#ifdef STDC
236 typedef void FAR *voidpf;
237 typedef void *voidp;
238#else
239 typedef Byte FAR *voidpf;
240 typedef Byte *voidp;
241#endif
242
243#ifdef HAVE_UNISTD_H
244# include <sys/types.h> /* for off_t */
245# include <unistd.h> /* for SEEK_* and off_t */
246# define z_off_t off_t
247#endif
248#ifndef SEEK_SET
249# define SEEK_SET 0 /* Seek from beginning of file. */
250# define SEEK_CUR 1 /* Seek from current position. */
251# define SEEK_END 2 /* Set file pointer to EOF plus "offset" */
252#endif
253#ifndef z_off_t
254# define z_off_t long
255#endif
256
257/* MVS linker does not support external names larger than 8 bytes */
258#if defined(__MVS__)
259# pragma map(deflateInit_,"DEIN")
260# pragma map(deflateInit2_,"DEIN2")
261# pragma map(deflateEnd,"DEEND")
262# pragma map(inflateInit_,"ININ")
263# pragma map(inflateInit2_,"ININ2")
264# pragma map(inflateEnd,"INEND")
265# pragma map(inflateSync,"INSY")
266# pragma map(inflateSetDictionary,"INSEDI")
267# pragma map(inflate_blocks,"INBL")
268# pragma map(inflate_blocks_new,"INBLNE")
269# pragma map(inflate_blocks_free,"INBLFR")
270# pragma map(inflate_blocks_reset,"INBLRE")
271# pragma map(inflate_codes_free,"INCOFR")
272# pragma map(inflate_codes,"INCO")
273# pragma map(inflate_fast,"INFA")
274# pragma map(inflate_flush,"INFLU")
275# pragma map(inflate_mask,"INMA")
276# pragma map(inflate_set_dictionary,"INSEDI2")
277# pragma map(inflate_copyright,"INCOPY")
278# pragma map(inflate_trees_bits,"INTRBI")
279# pragma map(inflate_trees_dynamic,"INTRDY")
280# pragma map(inflate_trees_fixed,"INTRFI")
281# pragma map(inflate_trees_free,"INTRFR")
282#endif
283
284#endif /* _ZCONF_H */
unsigned long uLong
Definition: zlib.h:39
unsigned int uInt
Definition: zlib.h:38
unsigned char Byte
Definition: zlib.h:37
uLong FAR uLongf
Definition: ftzconf.h:233
Byte FAR * voidpf
Definition: ftzconf.h:239
char FAR charf
Definition: ftzconf.h:230
unsigned int uInt
Definition: ftzconf.h:221
Byte * voidp
Definition: ftzconf.h:240
int FAR intf
Definition: ftzconf.h:231
unsigned long uLong
Definition: ftzconf.h:222
uInt FAR uIntf
Definition: ftzconf.h:232
unsigned char Byte
Definition: ftzconf.h:219
Byte FAR Bytef
Definition: ftzconf.h:228
#define FAR
Definition: ftzconf.h:215