Fossil SCM

fossil-scm / compat / zlib / zconf.h.in
Blame History Raw 552 lines
1
/* zconf.h -- configuration of the zlib compression library
2
* Copyright (C) 1995-2026 Jean-loup Gailly, Mark Adler
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
* Even better than compiling with -DZ_PREFIX would be to use configure to set
15
* this permanently in zconf.h using "./configure --zprefix".
16
*/
17
#ifdef Z_PREFIX /* may be set to #if 1 by ./configure */
18
# define Z_PREFIX_SET
19
20
/* all linked symbols and init macros */
21
# define _dist_code z__dist_code
22
# define _length_code z__length_code
23
# define _tr_align z__tr_align
24
# define _tr_flush_bits z__tr_flush_bits
25
# define _tr_flush_block z__tr_flush_block
26
# define _tr_init z__tr_init
27
# define _tr_stored_block z__tr_stored_block
28
# define _tr_tally z__tr_tally
29
# define adler32 z_adler32
30
# define adler32_combine z_adler32_combine
31
# define adler32_combine64 z_adler32_combine64
32
# define adler32_z z_adler32_z
33
# ifndef Z_SOLO
34
# define compress z_compress
35
# define compress2 z_compress2
36
# define compress_z z_compress_z
37
# define compress2_z z_compress2_z
38
# define compressBound z_compressBound
39
# define compressBound_z z_compressBound_z
40
# endif
41
# define crc32 z_crc32
42
# define crc32_combine z_crc32_combine
43
# define crc32_combine64 z_crc32_combine64
44
# define crc32_combine_gen z_crc32_combine_gen
45
# define crc32_combine_gen64 z_crc32_combine_gen64
46
# define crc32_combine_op z_crc32_combine_op
47
# define crc32_z z_crc32_z
48
# define deflate z_deflate
49
# define deflateBound z_deflateBound
50
# define deflateBound_z z_deflateBound_z
51
# define deflateCopy z_deflateCopy
52
# define deflateEnd z_deflateEnd
53
# define deflateGetDictionary z_deflateGetDictionary
54
# define deflateInit z_deflateInit
55
# define deflateInit2 z_deflateInit2
56
# define deflateInit2_ z_deflateInit2_
57
# define deflateInit_ z_deflateInit_
58
# define deflateParams z_deflateParams
59
# define deflatePending z_deflatePending
60
# define deflatePrime z_deflatePrime
61
# define deflateReset z_deflateReset
62
# define deflateResetKeep z_deflateResetKeep
63
# define deflateSetDictionary z_deflateSetDictionary
64
# define deflateSetHeader z_deflateSetHeader
65
# define deflateTune z_deflateTune
66
# define deflateUsed z_deflateUsed
67
# define deflate_copyright z_deflate_copyright
68
# define get_crc_table z_get_crc_table
69
# ifndef Z_SOLO
70
# define gz_error z_gz_error
71
# define gz_intmax z_gz_intmax
72
# define gz_strwinerror z_gz_strwinerror
73
# define gzbuffer z_gzbuffer
74
# define gzclearerr z_gzclearerr
75
# define gzclose z_gzclose
76
# define gzclose_r z_gzclose_r
77
# define gzclose_w z_gzclose_w
78
# define gzdirect z_gzdirect
79
# define gzdopen z_gzdopen
80
# define gzeof z_gzeof
81
# define gzerror z_gzerror
82
# define gzflush z_gzflush
83
# define gzfread z_gzfread
84
# define gzfwrite z_gzfwrite
85
# define gzgetc z_gzgetc
86
# define gzgetc_ z_gzgetc_
87
# define gzgets z_gzgets
88
# define gzoffset z_gzoffset
89
# define gzoffset64 z_gzoffset64
90
# define gzopen z_gzopen
91
# define gzopen64 z_gzopen64
92
# ifdef _WIN32
93
# define gzopen_w z_gzopen_w
94
# endif
95
# define gzprintf z_gzprintf
96
# define gzputc z_gzputc
97
# define gzputs z_gzputs
98
# define gzread z_gzread
99
# define gzrewind z_gzrewind
100
# define gzseek z_gzseek
101
# define gzseek64 z_gzseek64
102
# define gzsetparams z_gzsetparams
103
# define gztell z_gztell
104
# define gztell64 z_gztell64
105
# define gzungetc z_gzungetc
106
# define gzvprintf z_gzvprintf
107
# define gzwrite z_gzwrite
108
# endif
109
# define inflate z_inflate
110
# define inflateBack z_inflateBack
111
# define inflateBackEnd z_inflateBackEnd
112
# define inflateBackInit z_inflateBackInit
113
# define inflateBackInit_ z_inflateBackInit_
114
# define inflateCodesUsed z_inflateCodesUsed
115
# define inflateCopy z_inflateCopy
116
# define inflateEnd z_inflateEnd
117
# define inflateGetDictionary z_inflateGetDictionary
118
# define inflateGetHeader z_inflateGetHeader
119
# define inflateInit z_inflateInit
120
# define inflateInit2 z_inflateInit2
121
# define inflateInit2_ z_inflateInit2_
122
# define inflateInit_ z_inflateInit_
123
# define inflateMark z_inflateMark
124
# define inflatePrime z_inflatePrime
125
# define inflateReset z_inflateReset
126
# define inflateReset2 z_inflateReset2
127
# define inflateResetKeep z_inflateResetKeep
128
# define inflateSetDictionary z_inflateSetDictionary
129
# define inflateSync z_inflateSync
130
# define inflateSyncPoint z_inflateSyncPoint
131
# define inflateUndermine z_inflateUndermine
132
# define inflateValidate z_inflateValidate
133
# define inflate_copyright z_inflate_copyright
134
# define inflate_fast z_inflate_fast
135
# define inflate_table z_inflate_table
136
# define inflate_fixed z_inflate_fixed
137
# ifndef Z_SOLO
138
# define uncompress z_uncompress
139
# define uncompress2 z_uncompress2
140
# define uncompress_z z_uncompress_z
141
# define uncompress2_z z_uncompress2_z
142
# endif
143
# define zError z_zError
144
# ifndef Z_SOLO
145
# define zcalloc z_zcalloc
146
# define zcfree z_zcfree
147
# endif
148
# define zlibCompileFlags z_zlibCompileFlags
149
# define zlibVersion z_zlibVersion
150
151
/* all zlib typedefs in zlib.h and zconf.h */
152
# define Byte z_Byte
153
# define Bytef z_Bytef
154
# define alloc_func z_alloc_func
155
# define charf z_charf
156
# define free_func z_free_func
157
# ifndef Z_SOLO
158
# define gzFile z_gzFile
159
# endif
160
# define gz_header z_gz_header
161
# define gz_headerp z_gz_headerp
162
# define in_func z_in_func
163
# define intf z_intf
164
# define out_func z_out_func
165
# define uInt z_uInt
166
# define uIntf z_uIntf
167
# define uLong z_uLong
168
# define uLongf z_uLongf
169
# define voidp z_voidp
170
# define voidpc z_voidpc
171
# define voidpf z_voidpf
172
173
/* all zlib structs in zlib.h and zconf.h */
174
# define gz_header_s z_gz_header_s
175
# define internal_state z_internal_state
176
177
#endif
178
179
#if defined(__MSDOS__) && !defined(MSDOS)
180
# define MSDOS
181
#endif
182
#if (defined(OS_2) || defined(__OS2__)) && !defined(OS2)
183
# define OS2
184
#endif
185
#if defined(_WINDOWS) && !defined(WINDOWS)
186
# define WINDOWS
187
#endif
188
#if defined(_WIN32) || defined(_WIN32_WCE) || defined(__WIN32__)
189
# ifndef WIN32
190
# define WIN32
191
# endif
192
#endif
193
#if (defined(MSDOS) || defined(OS2) || defined(WINDOWS)) && !defined(WIN32)
194
# if !defined(__GNUC__) && !defined(__FLAT__) && !defined(__386__)
195
# ifndef SYS16BIT
196
# define SYS16BIT
197
# endif
198
# endif
199
#endif
200
201
/*
202
* Compile with -DMAXSEG_64K if the alloc function cannot allocate more
203
* than 64k bytes at a time (needed on systems with 16-bit int).
204
*/
205
#ifdef SYS16BIT
206
# define MAXSEG_64K
207
#endif
208
#ifdef MSDOS
209
# define UNALIGNED_OK
210
#endif
211
212
#ifdef __STDC_VERSION__
213
# ifndef STDC
214
# define STDC
215
# endif
216
# if __STDC_VERSION__ >= 199901L
217
# ifndef STDC99
218
# define STDC99
219
# endif
220
# endif
221
#endif
222
#if !defined(STDC) && (defined(__STDC__) || defined(__cplusplus))
223
# define STDC
224
#endif
225
#if !defined(STDC) && (defined(__GNUC__) || defined(__BORLANDC__))
226
# define STDC
227
#endif
228
#if !defined(STDC) && (defined(MSDOS) || defined(WINDOWS) || defined(WIN32))
229
# define STDC
230
#endif
231
#if !defined(STDC) && (defined(OS2) || defined(__HOS_AIX__))
232
# define STDC
233
#endif
234
235
#if defined(__OS400__) && !defined(STDC) /* iSeries (formerly AS/400). */
236
# define STDC
237
#endif
238
239
#ifndef STDC
240
# ifndef const /* cannot use !defined(STDC) && !defined(const) on Mac */
241
# define const /* note: need a more gentle solution here */
242
# endif
243
#endif
244
245
#ifndef z_const
246
# ifdef ZLIB_CONST
247
# define z_const const
248
# else
249
# define z_const
250
# endif
251
#endif
252
253
#ifdef Z_SOLO
254
# ifdef _WIN64
255
typedef unsigned long long z_size_t;
256
# else
257
typedef unsigned long z_size_t;
258
# endif
259
#else
260
# define z_longlong long long
261
# if defined(NO_SIZE_T)
262
typedef unsigned NO_SIZE_T z_size_t;
263
# elif defined(STDC)
264
# include <stddef.h>
265
typedef size_t z_size_t;
266
# else
267
typedef unsigned long z_size_t;
268
# endif
269
# undef z_longlong
270
#endif
271
272
/* Maximum value for memLevel in deflateInit2 */
273
#ifndef MAX_MEM_LEVEL
274
# ifdef MAXSEG_64K
275
# define MAX_MEM_LEVEL 8
276
# else
277
# define MAX_MEM_LEVEL 9
278
# endif
279
#endif
280
281
/* Maximum value for windowBits in deflateInit2 and inflateInit2.
282
* WARNING: reducing MAX_WBITS makes minigzip unable to extract .gz files
283
* created by gzip. (Files created by minigzip can still be extracted by
284
* gzip.)
285
*/
286
#ifndef MAX_WBITS
287
# define MAX_WBITS 15 /* 32K LZ77 window */
288
#endif
289
290
/* The memory requirements for deflate are (in bytes):
291
(1 << (windowBits+2)) + (1 << (memLevel+9))
292
that is: 128K for windowBits=15 + 128K for memLevel = 8 (default values)
293
plus a few kilobytes for small objects. For example, if you want to reduce
294
the default memory requirements from 256K to 128K, compile with
295
make CFLAGS="-O -DMAX_WBITS=14 -DMAX_MEM_LEVEL=7"
296
Of course this will generally degrade compression (there's no free lunch).
297
298
The memory requirements for inflate are (in bytes) 1 << windowBits
299
that is, 32K for windowBits=15 (default value) plus about 7 kilobytes
300
for small objects.
301
*/
302
303
/* Type declarations */
304
305
#ifndef OF /* function prototypes */
306
# ifdef STDC
307
# define OF(args) args
308
# else
309
# define OF(args) ()
310
# endif
311
#endif
312
313
/* The following definitions for FAR are needed only for MSDOS mixed
314
* model programming (small or medium model with some far allocations).
315
* This was tested only with MSC; for other MSDOS compilers you may have
316
* to define NO_MEMCPY in zutil.h. If you don't need the mixed model,
317
* just define FAR to be empty.
318
*/
319
#ifdef SYS16BIT
320
# if defined(M_I86SM) || defined(M_I86MM)
321
/* MSC small or medium model */
322
# define SMALL_MEDIUM
323
# ifdef _MSC_VER
324
# define FAR _far
325
# else
326
# define FAR far
327
# endif
328
# endif
329
# if (defined(__SMALL__) || defined(__MEDIUM__))
330
/* Turbo C small or medium model */
331
# define SMALL_MEDIUM
332
# ifdef __BORLANDC__
333
# define FAR _far
334
# else
335
# define FAR far
336
# endif
337
# endif
338
#endif
339
340
#if defined(WINDOWS) || defined(WIN32)
341
/* If building or using zlib as a DLL, define ZLIB_DLL.
342
* This is not mandatory, but it offers a little performance increase.
343
*/
344
# ifdef ZLIB_DLL
345
# if defined(WIN32) && (!defined(__BORLANDC__) || (__BORLANDC__ >= 0x500))
346
# ifdef ZLIB_INTERNAL
347
# define ZEXTERN extern __declspec(dllexport)
348
# else
349
# define ZEXTERN extern __declspec(dllimport)
350
# endif
351
# endif
352
# endif /* ZLIB_DLL */
353
/* If building or using zlib with the WINAPI/WINAPIV calling convention,
354
* define ZLIB_WINAPI.
355
* Caution: the standard ZLIB1.DLL is NOT compiled using ZLIB_WINAPI.
356
*/
357
# ifdef ZLIB_WINAPI
358
# ifdef FAR
359
# undef FAR
360
# endif
361
# ifndef WIN32_LEAN_AND_MEAN
362
# define WIN32_LEAN_AND_MEAN
363
# endif
364
# include <windows.h>
365
/* No need for _export, use ZLIB.DEF instead. */
366
/* For complete Windows compatibility, use WINAPI, not __stdcall. */
367
# define ZEXPORT WINAPI
368
# ifdef WIN32
369
# define ZEXPORTVA WINAPIV
370
# else
371
# define ZEXPORTVA FAR CDECL
372
# endif
373
# endif
374
#endif
375
376
#if defined (__BEOS__)
377
# ifdef ZLIB_DLL
378
# ifdef ZLIB_INTERNAL
379
# define ZEXPORT __declspec(dllexport)
380
# define ZEXPORTVA __declspec(dllexport)
381
# else
382
# define ZEXPORT __declspec(dllimport)
383
# define ZEXPORTVA __declspec(dllimport)
384
# endif
385
# endif
386
#endif
387
388
#ifndef ZEXTERN
389
# define ZEXTERN extern
390
#endif
391
#ifndef ZEXPORT
392
# define ZEXPORT
393
#endif
394
#ifndef ZEXPORTVA
395
# define ZEXPORTVA
396
#endif
397
398
#ifndef FAR
399
# define FAR
400
#endif
401
402
#if !defined(__MACTYPES__)
403
typedef unsigned char Byte; /* 8 bits */
404
#endif
405
typedef unsigned int uInt; /* 16 bits or more */
406
typedef unsigned long uLong; /* 32 bits or more */
407
408
#ifdef SMALL_MEDIUM
409
/* Borland C/C++ and some old MSC versions ignore FAR inside typedef */
410
# define Bytef Byte FAR
411
#else
412
typedef Byte FAR Bytef;
413
#endif
414
typedef char FAR charf;
415
typedef int FAR intf;
416
typedef uInt FAR uIntf;
417
typedef uLong FAR uLongf;
418
419
#ifdef STDC
420
typedef void const *voidpc;
421
typedef void FAR *voidpf;
422
typedef void *voidp;
423
#else
424
typedef Byte const *voidpc;
425
typedef Byte FAR *voidpf;
426
typedef Byte *voidp;
427
#endif
428
429
#if !defined(Z_U4) && !defined(Z_SOLO) && defined(STDC)
430
# include <limits.h>
431
# if (UINT_MAX == 0xffffffffUL)
432
# define Z_U4 unsigned
433
# elif (ULONG_MAX == 0xffffffffUL)
434
# define Z_U4 unsigned long
435
# elif (USHRT_MAX == 0xffffffffUL)
436
# define Z_U4 unsigned short
437
# endif
438
#endif
439
440
#ifdef Z_U4
441
typedef Z_U4 z_crc_t;
442
#else
443
typedef unsigned long z_crc_t;
444
#endif
445
446
#if HAVE_UNISTD_H-0 /* may be set to #if 1 by ./configure */
447
# define Z_HAVE_UNISTD_H
448
#endif
449
450
#if HAVE_STDARG_H-0 /* may be set to #if 1 by ./configure */
451
# define Z_HAVE_STDARG_H
452
#endif
453
454
#ifdef STDC
455
# ifndef Z_SOLO
456
# include <sys/types.h> /* for off_t */
457
# endif
458
#endif
459
460
#if defined(STDC) || defined(Z_HAVE_STDARG_H)
461
# ifndef Z_SOLO
462
# include <stdarg.h> /* for va_list */
463
# endif
464
#endif
465
466
#ifdef _WIN32
467
# ifndef Z_SOLO
468
# include <stddef.h> /* for wchar_t */
469
# endif
470
#endif
471
472
/* a little trick to accommodate both "#define _LARGEFILE64_SOURCE" and
473
* "#define _LARGEFILE64_SOURCE 1" as requesting 64-bit operations, (even
474
* though the former does not conform to the LFS document), but considering
475
* both "#undef _LARGEFILE64_SOURCE" and "#define _LARGEFILE64_SOURCE 0" as
476
* equivalently requesting no 64-bit operations
477
*/
478
#if defined(_LARGEFILE64_SOURCE) && -_LARGEFILE64_SOURCE - -1 == 1
479
# undef _LARGEFILE64_SOURCE
480
#endif
481
482
#ifndef Z_HAVE_UNISTD_H
483
# if defined(__WATCOMC__) || defined(__GO32__) || \
484
(defined(_LARGEFILE64_SOURCE) && !defined(_WIN32))
485
# define Z_HAVE_UNISTD_H
486
# endif
487
#endif
488
#ifndef Z_SOLO
489
# if defined(Z_HAVE_UNISTD_H)
490
# include <unistd.h> /* for SEEK_*, off_t, and _LFS64_LARGEFILE */
491
# ifdef VMS
492
# include <unixio.h> /* for off_t */
493
# endif
494
# ifndef z_off_t
495
# define z_off_t off_t
496
# endif
497
# endif
498
#endif
499
500
#if defined(_LFS64_LARGEFILE) && _LFS64_LARGEFILE-0
501
# define Z_LFS64
502
#endif
503
504
#if defined(_LARGEFILE64_SOURCE) && defined(Z_LFS64)
505
# define Z_LARGE64
506
#endif
507
508
#if defined(_FILE_OFFSET_BITS) && _FILE_OFFSET_BITS-0 == 64 && defined(Z_LFS64)
509
# define Z_WANT64
510
#endif
511
512
#if !defined(SEEK_SET) && !defined(Z_SOLO)
513
# define SEEK_SET 0 /* Seek from beginning of file. */
514
# define SEEK_CUR 1 /* Seek from current position. */
515
# define SEEK_END 2 /* Set file pointer to EOF plus "offset" */
516
#endif
517
518
#ifndef z_off_t
519
# define z_off_t long long
520
#endif
521
522
#if !defined(_WIN32) && defined(Z_LARGE64)
523
# define z_off64_t off64_t
524
#elif defined(__MINGW32__)
525
# define z_off64_t long long
526
#elif defined(_WIN32) && !defined(__GNUC__)
527
# define z_off64_t __int64
528
#elif defined(__GO32__)
529
# define z_off64_t offset_t
530
#else
531
# define z_off64_t z_off_t
532
#endif
533
534
/* MVS linker does not support external names larger than 8 bytes */
535
#if defined(__MVS__)
536
#pragma map(deflateInit_,"DEIN")
537
#pragma map(deflateInit2_,"DEIN2")
538
#pragma map(deflateEnd,"DEEND")
539
#pragma map(deflateBound,"DEBND")
540
#pragma map(inflateInit_,"ININ")
541
#pragma map(inflateInit2_,"ININ2")
542
#pragma map(inflateEnd,"INEND")
543
#pragma map(inflateSync,"INSY")
544
#pragma map(inflateSetDictionary,"INSEDI")
545
#pragma map(compressBound,"CMBND")
546
#pragma map(inflate_table,"INTABL")
547
#pragma map(inflate_fast,"INFA")
548
#pragma map(inflate_copyright,"INCOPY")
549
#endif
550
551
#endif /* ZCONF_H */
552

Keyboard Shortcuts

Open search /
Next entry (timeline) j
Previous entry (timeline) k
Open focused entry Enter
Show this help ?
Toggle theme Top nav button