1ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease/* zconf.h -- configuration of the zlib compression library
2ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease * Copyright (C) 1995-2002 Jean-loup Gailly.
3ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease * For conditions of distribution and use, see copyright notice in zlib.h
4ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease */
5ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease
6ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease/* @(#) $Id$ */
7ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease
8ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#ifndef _ZCONF_H
9ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#define _ZCONF_H
10ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease
11ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease/*
12ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease * If you *really* need a unique prefix for all types and library functions,
13ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease * compile with -DZ_PREFIX. The "standard" zlib should be compiled without it.
14ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease */
15ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#ifdef Z_PREFIX
16ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#  define deflateInit_         z_deflateInit_
17ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#  define deflate              z_deflate
18ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#  define deflateEnd           z_deflateEnd
19ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#  define inflateInit_         z_inflateInit_
20ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#  define inflate              z_inflate
21ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#  define inflateEnd           z_inflateEnd
22ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#  define deflateInit2_        z_deflateInit2_
23ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#  define deflateSetDictionary z_deflateSetDictionary
24ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#  define deflateCopy          z_deflateCopy
25ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#  define deflateReset         z_deflateReset
26ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#  define deflateParams        z_deflateParams
27ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#  define inflateInit2_        z_inflateInit2_
28ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#  define inflateSetDictionary z_inflateSetDictionary
29ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#  define inflateSync          z_inflateSync
30ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#  define inflateSyncPoint     z_inflateSyncPoint
31ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#  define inflateReset         z_inflateReset
32ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#  define compress             z_compress
33ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#  define compress2            z_compress2
34ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#  define uncompress           z_uncompress
35ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#  define adler32              z_adler32
36ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#  define crc32                z_crc32
37ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#  define get_crc_table        z_get_crc_table
38ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease
39ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#  define Byte   z_Byte
40ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#  define uInt   z_uInt
41ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#  define uLong  z_uLong
42ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#  define Bytef  z_Bytef
43ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#  define charf  z_charf
44ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#  define intf   z_intf
45ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#  define uIntf  z_uIntf
46ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#  define uLongf z_uLongf
47ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#  define voidpf z_voidpf
48ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#  define voidp  z_voidp
49ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#endif
50ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease
51ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#if (defined(_WIN32) || defined(__WIN32__)) && !defined(WIN32)
52ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#  define WIN32
53ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#endif
54ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#if defined(__GNUC__) || defined(WIN32) || defined(__386__) || defined(i386)
55ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#  ifndef __32BIT__
56ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#    define __32BIT__
57ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#  endif
58ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#endif
59ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#if defined(__MSDOS__) && !defined(MSDOS)
60ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#  define MSDOS
61ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#endif
62ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease
63ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease/* WinCE doesn't have errno.h */
64ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#ifdef _WIN32_WCE
65ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#  define NO_ERRNO_H
66ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#endif
67ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease
68ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease
69ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease/*
70ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease * Compile with -DMAXSEG_64K if the alloc function cannot allocate more
71ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease * than 64k bytes at a time (needed on systems with 16-bit int).
72ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease */
73ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#if defined(MSDOS) && !defined(__32BIT__)
74ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#  define MAXSEG_64K
75ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#endif
76ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#ifdef MSDOS
77ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#  define UNALIGNED_OK
78ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#endif
79ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease
80ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#if (defined(MSDOS) || defined(_WINDOWS) || defined(WIN32))  && !defined(STDC)
81ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#  define STDC
82ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#endif
83ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#if defined(__STDC__) || defined(__cplusplus) || defined(__OS2__)
84ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#  ifndef STDC
85ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#    define STDC
86ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#  endif
87ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#endif
88ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease
89ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#ifndef STDC
90ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#  ifndef const /* cannot use !defined(STDC) && !defined(const) on Mac */
91ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#    define const
92ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#  endif
93ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#endif
94ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease
95ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease/* Some Mac compilers merge all .h files incorrectly: */
96ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#if defined(__MWERKS__) || defined(applec) ||defined(THINK_C) ||defined(__SC__)
97ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#  define NO_DUMMY_DECL
98ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#endif
99ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease
100ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease/* Old Borland C and LCC incorrectly complains about missing returns: */
101ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#if defined(__BORLANDC__) && (__BORLANDC__ < 0x500)
102ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#  define NEED_DUMMY_RETURN
103ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#endif
104ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease
105ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#if defined(__LCC__)
106ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#  define  NEED_DUMMY_RETURN
107ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#endif
108ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease
109ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease/* Maximum value for memLevel in deflateInit2 */
110ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#ifndef MAX_MEM_LEVEL
111ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#  ifdef MAXSEG_64K
112ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#    define MAX_MEM_LEVEL 8
113ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#  else
114ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#    define MAX_MEM_LEVEL 9
115ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#  endif
116ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#endif
117ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease
118ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease/* Maximum value for windowBits in deflateInit2 and inflateInit2.
119ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease * WARNING: reducing MAX_WBITS makes minigzip unable to extract .gz files
120ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease * created by gzip. (Files created by minigzip can still be extracted by
121ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease * gzip.)
122ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease */
123ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#ifndef MAX_WBITS
124ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#  define MAX_WBITS   15 /* 32K LZ77 window */
125ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#endif
126ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease
127ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease/* The memory requirements for deflate are (in bytes):
128ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease            (1 << (windowBits+2)) +  (1 << (memLevel+9))
129ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease that is: 128K for windowBits=15  +  128K for memLevel = 8  (default values)
130ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease plus a few kilobytes for small objects. For example, if you want to reduce
131ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease the default memory requirements from 256K to 128K, compile with
132ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease     make CFLAGS="-O -DMAX_WBITS=14 -DMAX_MEM_LEVEL=7"
133ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease Of course this will generally degrade compression (there's no free lunch).
134ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease
135ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease   The memory requirements for inflate are (in bytes) 1 << windowBits
136ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease that is, 32K for windowBits=15 (default value) plus a few kilobytes
137ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease for small objects.
138ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease*/
139ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease
140ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease                        /* Type declarations */
141ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease
142ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#ifndef OF /* function prototypes */
143ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#  ifdef STDC
144ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#    define OF(args)  args
145ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#  else
146ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#    define OF(args)  ()
147ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#  endif
148ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#endif
149ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease
150ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease/* The following definitions for FAR are needed only for MSDOS mixed
151ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease * model programming (small or medium model with some far allocations).
152ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease * This was tested only with MSC; for other MSDOS compilers you may have
153ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease * to define NO_MEMCPY in zutil.h.  If you don't need the mixed model,
154ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease * just define FAR to be empty.
155ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease */
156ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#if (defined(M_I86SM) || defined(M_I86MM)) && !defined(__32BIT__)
157ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease   /* MSC small or medium model */
158ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#  define SMALL_MEDIUM
159ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#  ifdef _MSC_VER
160ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#    define FAR _far
161ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#  else
162ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#    define FAR far
163ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#  endif
164ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#endif
165ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#if defined(__BORLANDC__) && (defined(__SMALL__) || defined(__MEDIUM__))
166ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#  ifndef __32BIT__
167ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#    define SMALL_MEDIUM
168ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#    define FAR _far
169ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#  endif
170ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#endif
171ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease
172ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease/* Compile with -DZLIB_DLL for Windows DLL support */
173ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#if defined(ZLIB_DLL)
174ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#  if defined(_WINDOWS) || defined(WINDOWS)
175ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#    ifdef FAR
176ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#      undef FAR
177ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#    endif
178ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#    include <windows.h>
179ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#    define ZEXPORT(x)  x WINAPI
180ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#    ifdef WIN32
181ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#      define ZEXPORTVA(x)  x WINAPIV
182ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#    else
183ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#      define ZEXPORTVA(x)  x FAR _cdecl _export
184ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#    endif
185ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#  endif
186ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#  if defined (__BORLANDC__)
187ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#    if (__BORLANDC__ >= 0x0500) && defined (WIN32)
188ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#      include <windows.h>
189ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#      define ZEXPORT(x) x __declspec(dllexport) WINAPI
190ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#      define ZEXPORTRVA(x)  x __declspec(dllexport) WINAPIV
191ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#    else
192ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#      if defined (_Windows) && defined (__DLL__)
193ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#        define ZEXPORT(x) x _export
194ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#        define ZEXPORTVA(x) x _export
195ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#      endif
196ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#    endif
197ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#  endif
198ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#endif
199ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease
200ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease
201ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#ifndef ZEXPORT
202ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#  define ZEXPORT(x)   static x
203ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#endif
204ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#ifndef ZEXPORTVA
205ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#  define ZEXPORTVA(x)   static x
206ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#endif
207ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#ifndef ZEXTERN
208ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#  define ZEXTERN(x) static x
209ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#endif
210ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#ifndef ZEXTERNDEF
211ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#  define ZEXTERNDEF(x)  static x
212ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#endif
213ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease
214ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#ifndef FAR
215ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#   define FAR
216ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#endif
217ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease
218ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#if !defined(MACOS) && !defined(TARGET_OS_MAC)
219ec0bab5697bb31ba980810145f62e3799946ec60Victoria Leasetypedef unsigned char  Byte;  /* 8 bits */
220ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#endif
221ec0bab5697bb31ba980810145f62e3799946ec60Victoria Leasetypedef unsigned int   uInt;  /* 16 bits or more */
222ec0bab5697bb31ba980810145f62e3799946ec60Victoria Leasetypedef unsigned long  uLong; /* 32 bits or more */
223ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease
224ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#ifdef SMALL_MEDIUM
225ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease   /* Borland C/C++ and some old MSC versions ignore FAR inside typedef */
226ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#  define Bytef Byte FAR
227ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#else
228ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease   typedef Byte  FAR Bytef;
229ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#endif
230ec0bab5697bb31ba980810145f62e3799946ec60Victoria Leasetypedef char  FAR charf;
231ec0bab5697bb31ba980810145f62e3799946ec60Victoria Leasetypedef int   FAR intf;
232ec0bab5697bb31ba980810145f62e3799946ec60Victoria Leasetypedef uInt  FAR uIntf;
233ec0bab5697bb31ba980810145f62e3799946ec60Victoria Leasetypedef uLong FAR uLongf;
234ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease
235ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#ifdef STDC
236ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease   typedef void FAR *voidpf;
237ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease   typedef void     *voidp;
238ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#else
239ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease   typedef Byte FAR *voidpf;
240ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease   typedef Byte     *voidp;
241ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#endif
242ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease
243ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#ifdef HAVE_UNISTD_H
244ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#  include <sys/types.h> /* for off_t */
245ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#  include <unistd.h>    /* for SEEK_* and off_t */
246ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#  define z_off_t  off_t
247ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#endif
248ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#ifndef SEEK_SET
249ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#  define SEEK_SET        0       /* Seek from beginning of file.  */
250ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#  define SEEK_CUR        1       /* Seek from current position.  */
251ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#  define SEEK_END        2       /* Set file pointer to EOF plus "offset" */
252ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#endif
253ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#ifndef z_off_t
254ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#  define  z_off_t long
255ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#endif
256ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease
257ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease/* MVS linker does not support external names larger than 8 bytes */
258ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#if defined(__MVS__)
259ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#   pragma map(deflateInit_,"DEIN")
260ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#   pragma map(deflateInit2_,"DEIN2")
261ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#   pragma map(deflateEnd,"DEEND")
262ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#   pragma map(inflateInit_,"ININ")
263ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#   pragma map(inflateInit2_,"ININ2")
264ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#   pragma map(inflateEnd,"INEND")
265ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#   pragma map(inflateSync,"INSY")
266ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#   pragma map(inflateSetDictionary,"INSEDI")
267ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#   pragma map(inflate_blocks,"INBL")
268ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#   pragma map(inflate_blocks_new,"INBLNE")
269ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#   pragma map(inflate_blocks_free,"INBLFR")
270ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#   pragma map(inflate_blocks_reset,"INBLRE")
271ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#   pragma map(inflate_codes_free,"INCOFR")
272ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#   pragma map(inflate_codes,"INCO")
273ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#   pragma map(inflate_fast,"INFA")
274ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#   pragma map(inflate_flush,"INFLU")
275ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#   pragma map(inflate_mask,"INMA")
276ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#   pragma map(inflate_set_dictionary,"INSEDI2")
277ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#   pragma map(inflate_copyright,"INCOPY")
278ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#   pragma map(inflate_trees_bits,"INTRBI")
279ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#   pragma map(inflate_trees_dynamic,"INTRDY")
280ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#   pragma map(inflate_trees_fixed,"INTRFI")
281ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#   pragma map(inflate_trees_free,"INTRFR")
282ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#endif
283ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease
284ec0bab5697bb31ba980810145f62e3799946ec60Victoria Lease#endif /* _ZCONF_H */
285