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