Project

General

Profile

Statistics
| Revision:

root / lab4 / .minix-src / include / zconf.h @ 14

History | View | Annotate | Download (9.51 KB)

1
/*        $NetBSD: zconf.h,v 1.2 2006/01/14 20:27:34 christos Exp $        */
2

    
3
/* zconf.h -- configuration of the zlib compression library
4
 * Copyright (C) 1995-2005 Jean-loup Gailly.
5
 * For conditions of distribution and use, see copyright notice in zlib.h
6
 */
7

    
8
/* @(#) Id */
9

    
10
#ifndef ZCONF_H
11
#define ZCONF_H
12

    
13
#include <sys/types.h>
14

    
15
/*
16
 * If you *really* need a unique prefix for all types and library functions,
17
 * compile with -DZ_PREFIX. The "standard" zlib should be compiled without it.
18
 */
19
#ifdef Z_PREFIX
20
#  define deflateInit_          z_deflateInit_
21
#  define deflate               z_deflate
22
#  define deflateEnd            z_deflateEnd
23
#  define inflateInit_          z_inflateInit_
24
#  define inflate               z_inflate
25
#  define inflateEnd            z_inflateEnd
26
#  define deflateInit2_         z_deflateInit2_
27
#  define deflateSetDictionary  z_deflateSetDictionary
28
#  define deflateCopy           z_deflateCopy
29
#  define deflateReset          z_deflateReset
30
#  define deflateParams         z_deflateParams
31
#  define deflateBound          z_deflateBound
32
#  define deflatePrime          z_deflatePrime
33
#  define inflateInit2_         z_inflateInit2_
34
#  define inflateSetDictionary  z_inflateSetDictionary
35
#  define inflateSync           z_inflateSync
36
#  define inflateSyncPoint      z_inflateSyncPoint
37
#  define inflateCopy           z_inflateCopy
38
#  define inflateReset          z_inflateReset
39
#  define inflateBack           z_inflateBack
40
#  define inflateBackEnd        z_inflateBackEnd
41
#  define compress              z_compress
42
#  define compress2             z_compress2
43
#  define compressBound         z_compressBound
44
#  define uncompress            z_uncompress
45
#  define adler32               z_adler32
46
#  define crc32                 z_crc32
47
#  define get_crc_table         z_get_crc_table
48
#  define zError                z_zError
49

    
50
#  define alloc_func            z_alloc_func
51
#  define free_func             z_free_func
52
#  define in_func               z_in_func
53
#  define out_func              z_out_func
54
#  define Byte                  z_Byte
55
#  define uInt                  z_uInt
56
#  define uLong                 z_uLong
57
#  define Bytef                 z_Bytef
58
#  define charf                 z_charf
59
#  define intf                  z_intf
60
#  define uIntf                 z_uIntf
61
#  define uLongf                z_uLongf
62
#  define voidpf                z_voidpf
63
#  define voidp                 z_voidp
64
#endif
65

    
66
#if defined(__MSDOS__) && !defined(MSDOS)
67
#  define MSDOS
68
#endif
69
#if (defined(OS_2) || defined(__OS2__)) && !defined(OS2)
70
#  define OS2
71
#endif
72
#if defined(_WINDOWS) && !defined(WINDOWS)
73
#  define WINDOWS
74
#endif
75
#if defined(_WIN32) || defined(_WIN32_WCE) || defined(__WIN32__)
76
#  ifndef WIN32
77
#    define WIN32
78
#  endif
79
#endif
80
#if (defined(MSDOS) || defined(OS2) || defined(WINDOWS)) && !defined(WIN32)
81
#  if !defined(__GNUC__) && !defined(__FLAT__) && !defined(__386__)
82
#    ifndef SYS16BIT
83
#      define SYS16BIT
84
#    endif
85
#  endif
86
#endif
87

    
88
/*
89
 * Compile with -DMAXSEG_64K if the alloc function cannot allocate more
90
 * than 64k bytes at a time (needed on systems with 16-bit int).
91
 */
92
#ifdef SYS16BIT
93
#  define MAXSEG_64K
94
#endif
95
#ifdef MSDOS
96
#  define UNALIGNED_OK
97
#endif
98

    
99
#ifdef __STDC_VERSION__
100
#  ifndef STDC
101
#    define STDC
102
#  endif
103
#  if __STDC_VERSION__ >= 199901L
104
#    ifndef STDC99
105
#      define STDC99
106
#    endif
107
#  endif
108
#endif
109
#if !defined(STDC) && (defined(__STDC__) || defined(__cplusplus))
110
#  define STDC
111
#endif
112
#if !defined(STDC) && (defined(__GNUC__) || defined(__BORLANDC__))
113
#  define STDC
114
#endif
115
#if !defined(STDC) && (defined(MSDOS) || defined(WINDOWS) || defined(WIN32))
116
#  define STDC
117
#endif
118
#if !defined(STDC) && (defined(OS2) || defined(__HOS_AIX__))
119
#  define STDC
120
#endif
121

    
122
#if defined(__OS400__) && !defined(STDC)    /* iSeries (formerly AS/400). */
123
#  define STDC
124
#endif
125

    
126
#ifndef STDC
127
#  ifndef const /* cannot use !defined(STDC) && !defined(const) on Mac */
128
#    define const       /* note: need a more gentle solution here */
129
#  endif
130
#endif
131

    
132
/* Some Mac compilers merge all .h files incorrectly: */
133
#if defined(__MWERKS__)||defined(applec)||defined(THINK_C)||defined(__SC__)
134
#  define NO_DUMMY_DECL
135
#endif
136

    
137
/* Maximum value for memLevel in deflateInit2 */
138
#ifndef MAX_MEM_LEVEL
139
#  ifdef MAXSEG_64K
140
#    define MAX_MEM_LEVEL 8
141
#  else
142
#    define MAX_MEM_LEVEL 9
143
#  endif
144
#endif
145

    
146
/* Maximum value for windowBits in deflateInit2 and inflateInit2.
147
 * WARNING: reducing MAX_WBITS makes minigzip unable to extract .gz files
148
 * created by gzip. (Files created by minigzip can still be extracted by
149
 * gzip.)
150
 */
151
#ifndef MAX_WBITS
152
#  define MAX_WBITS   15 /* 32K LZ77 window */
153
#endif
154

    
155
/* The memory requirements for deflate are (in bytes):
156
            (1 << (windowBits+2)) +  (1 << (memLevel+9))
157
 that is: 128K for windowBits=15  +  128K for memLevel = 8  (default values)
158
 plus a few kilobytes for small objects. For example, if you want to reduce
159
 the default memory requirements from 256K to 128K, compile with
160
     make CFLAGS="-O -DMAX_WBITS=14 -DMAX_MEM_LEVEL=7"
161
 Of course this will generally degrade compression (there's no free lunch).
162

163
   The memory requirements for inflate are (in bytes) 1 << windowBits
164
 that is, 32K for windowBits=15 (default value) plus a few kilobytes
165
 for small objects.
166
*/
167

    
168
                        /* Type declarations */
169

    
170
#ifndef OF /* function prototypes */
171
#  ifdef STDC
172
#    define OF(args)  args
173
#  else
174
#    define OF(args)  ()
175
#  endif
176
#endif
177

    
178
/* The following definitions for FAR are needed only for MSDOS mixed
179
 * model programming (small or medium model with some far allocations).
180
 * This was tested only with MSC; for other MSDOS compilers you may have
181
 * to define NO_MEMCPY in zutil.h.  If you don't need the mixed model,
182
 * just define FAR to be empty.
183
 */
184
#ifdef SYS16BIT
185
#  if defined(M_I86SM) || defined(M_I86MM)
186
     /* MSC small or medium model */
187
#    define SMALL_MEDIUM
188
#    ifdef _MSC_VER
189
#      define FAR _far
190
#    else
191
#      define FAR far
192
#    endif
193
#  endif
194
#  if (defined(__SMALL__) || defined(__MEDIUM__))
195
     /* Turbo C small or medium model */
196
#    define SMALL_MEDIUM
197
#    ifdef __BORLANDC__
198
#      define FAR _far
199
#    else
200
#      define FAR far
201
#    endif
202
#  endif
203
#endif
204

    
205
#if defined(WINDOWS) || defined(WIN32)
206
   /* If building or using zlib as a DLL, define ZLIB_DLL.
207
    * This is not mandatory, but it offers a little performance increase.
208
    */
209
#  ifdef ZLIB_DLL
210
#    if defined(WIN32) && (!defined(__BORLANDC__) || (__BORLANDC__ >= 0x500))
211
#      ifdef ZLIB_INTERNAL
212
#        define ZEXTERN extern __declspec(dllexport)
213
#      else
214
#        define ZEXTERN extern __declspec(dllimport)
215
#      endif
216
#    endif
217
#  endif  /* ZLIB_DLL */
218
   /* If building or using zlib with the WINAPI/WINAPIV calling convention,
219
    * define ZLIB_WINAPI.
220
    * Caution: the standard ZLIB1.DLL is NOT compiled using ZLIB_WINAPI.
221
    */
222
#  ifdef ZLIB_WINAPI
223
#    ifdef FAR
224
#      undef FAR
225
#    endif
226
#    include <windows.h>
227
     /* No need for _export, use ZLIB.DEF instead. */
228
     /* For complete Windows compatibility, use WINAPI, not __stdcall. */
229
#    define ZEXPORT WINAPI
230
#    ifdef WIN32
231
#      define ZEXPORTVA WINAPIV
232
#    else
233
#      define ZEXPORTVA FAR CDECL
234
#    endif
235
#  endif
236
#endif
237

    
238
#if defined (__BEOS__)
239
#  ifdef ZLIB_DLL
240
#    ifdef ZLIB_INTERNAL
241
#      define ZEXPORT   __declspec(dllexport)
242
#      define ZEXPORTVA __declspec(dllexport)
243
#    else
244
#      define ZEXPORT   __declspec(dllimport)
245
#      define ZEXPORTVA __declspec(dllimport)
246
#    endif
247
#  endif
248
#endif
249

    
250
#ifndef ZEXTERN
251
#  define ZEXTERN extern
252
#endif
253
#ifndef ZEXPORT
254
#  define ZEXPORT
255
#endif
256
#ifndef ZEXPORTVA
257
#  define ZEXPORTVA
258
#endif
259

    
260
#ifndef FAR
261
#  define FAR
262
#endif
263

    
264
#if !defined(__MACTYPES__)
265
typedef unsigned char  Byte;  /* 8 bits */
266
#endif
267
typedef unsigned int   uInt;  /* 16 bits or more */
268
typedef unsigned long  uLong; /* 32 bits or more */
269

    
270
#ifdef SMALL_MEDIUM
271
   /* Borland C/C++ and some old MSC versions ignore FAR inside typedef */
272
#  define Bytef Byte FAR
273
#else
274
   typedef Byte  FAR Bytef;
275
#endif
276
typedef char  FAR charf;
277
typedef int   FAR intf;
278
typedef uInt  FAR uIntf;
279
typedef uLong FAR uLongf;
280

    
281
#ifdef STDC
282
   typedef void const *voidpc;
283
   typedef void FAR   *voidpf;
284
   typedef void       *voidp;
285
#else
286
   typedef Byte const *voidpc;
287
   typedef Byte FAR   *voidpf;
288
   typedef Byte       *voidp;
289
#endif
290

    
291
#if defined(HAVE_UNISTD_H) || (defined(__NetBSD__) && (!defined(_KERNEL) && !defined(_STANDALONE)))
292
#  include <sys/types.h> /* for off_t */
293
#  include <unistd.h>    /* for SEEK_* and off_t */
294
#  ifdef VMS
295
#    include <unixio.h>   /* for off_t */
296
#  endif
297
#  define z_off_t off_t
298
#  define z_ptrdiff_t ptrdiff_t
299
#endif
300
#ifndef SEEK_SET
301
#  define SEEK_SET        0       /* Seek from beginning of file.  */
302
#  define SEEK_CUR        1       /* Seek from current position.  */
303
#  define SEEK_END        2       /* Set file pointer to EOF plus "offset" */
304
#endif
305
#ifndef z_off_t
306
#  define z_off_t long
307
#endif
308
#ifndef z_ptrdiff_t
309
#  define z_ptrdiff_t long
310
#endif
311

    
312
#if defined(__OS400__)
313
#  define NO_vsnprintf
314
#endif
315

    
316
#if defined(__MVS__)
317
#  define NO_vsnprintf
318
#  ifdef FAR
319
#    undef FAR
320
#  endif
321
#endif
322

    
323
/* MVS linker does not support external names larger than 8 bytes */
324
#if defined(__MVS__)
325
#   pragma map(deflateInit_,"DEIN")
326
#   pragma map(deflateInit2_,"DEIN2")
327
#   pragma map(deflateEnd,"DEEND")
328
#   pragma map(deflateBound,"DEBND")
329
#   pragma map(inflateInit_,"ININ")
330
#   pragma map(inflateInit2_,"ININ2")
331
#   pragma map(inflateEnd,"INEND")
332
#   pragma map(inflateSync,"INSY")
333
#   pragma map(inflateSetDictionary,"INSEDI")
334
#   pragma map(compressBound,"CMBND")
335
#   pragma map(inflate_table,"INTABL")
336
#   pragma map(inflate_fast,"INFA")
337
#   pragma map(inflate_copyright,"INCOPY")
338
#endif
339

    
340
#endif /* ZCONF_H */