19e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project/* zconf.h -- configuration of the zlib compression library 29e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project * Copyright (C) 1995-2005 Jean-loup Gailly. 39e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project * For conditions of distribution and use, see copyright notice in zlib.h 49e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project */ 59e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project 69e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project/* @(#) $Id$ */ 79e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project 89e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project#ifndef ZCONF_H 99e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project#define ZCONF_H 109e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project 119e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project/* 129e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project * If you *really* need a unique prefix for all types and library functions, 139e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project * compile with -DZ_PREFIX. The "standard" zlib should be compiled without it. 149e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project */ 159e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project#ifdef Z_PREFIX 169e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# define deflateInit_ z_deflateInit_ 179e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# define deflate z_deflate 189e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# define deflateEnd z_deflateEnd 199e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# define inflateInit_ z_inflateInit_ 209e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# define inflate z_inflate 219e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# define inflateEnd z_inflateEnd 229e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# define deflateInit2_ z_deflateInit2_ 239e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# define deflateSetDictionary z_deflateSetDictionary 249e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# define deflateCopy z_deflateCopy 259e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# define deflateReset z_deflateReset 269e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# define deflateParams z_deflateParams 279e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# define deflateBound z_deflateBound 289e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# define deflatePrime z_deflatePrime 299e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# define inflateInit2_ z_inflateInit2_ 309e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# define inflateSetDictionary z_inflateSetDictionary 319e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# define inflateSync z_inflateSync 329e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# define inflateSyncPoint z_inflateSyncPoint 339e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# define inflateCopy z_inflateCopy 349e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# define inflateReset z_inflateReset 359e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# define inflateBack z_inflateBack 369e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# define inflateBackEnd z_inflateBackEnd 379e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# define compress z_compress 389e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# define compress2 z_compress2 399e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# define compressBound z_compressBound 409e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# define uncompress z_uncompress 419e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# define adler32 z_adler32 429e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# define crc32 z_crc32 439e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# define get_crc_table z_get_crc_table 449e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# define zError z_zError 459e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project 469e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# define alloc_func z_alloc_func 479e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# define free_func z_free_func 489e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# define in_func z_in_func 499e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# define out_func z_out_func 509e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# define Byte z_Byte 519e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# define uInt z_uInt 529e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# define uLong z_uLong 539e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# define Bytef z_Bytef 549e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# define charf z_charf 559e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# define intf z_intf 569e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# define uIntf z_uIntf 579e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# define uLongf z_uLongf 589e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# define voidpf z_voidpf 599e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# define voidp z_voidp 609e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project#endif 619e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project 629e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project#if defined(__MSDOS__) && !defined(MSDOS) 639e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# define MSDOS 649e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project#endif 659e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project#if (defined(OS_2) || defined(__OS2__)) && !defined(OS2) 669e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# define OS2 679e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project#endif 689e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project#if defined(_WINDOWS) && !defined(WINDOWS) 699e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# define WINDOWS 709e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project#endif 719e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project#if defined(_WIN32) || defined(_WIN32_WCE) || defined(__WIN32__) 729e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# ifndef WIN32 739e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# define WIN32 749e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# endif 759e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project#endif 769e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project#if (defined(MSDOS) || defined(OS2) || defined(WINDOWS)) && !defined(WIN32) 779e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# if !defined(__GNUC__) && !defined(__FLAT__) && !defined(__386__) 789e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# ifndef SYS16BIT 799e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# define SYS16BIT 809e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# endif 819e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# endif 829e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project#endif 839e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project 849e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project/* 859e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project * Compile with -DMAXSEG_64K if the alloc function cannot allocate more 869e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project * than 64k bytes at a time (needed on systems with 16-bit int). 879e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project */ 889e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project#ifdef SYS16BIT 899e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# define MAXSEG_64K 909e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project#endif 919e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project#ifdef MSDOS 929e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# define UNALIGNED_OK 939e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project#endif 949e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project 959e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project#ifdef __STDC_VERSION__ 969e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# ifndef STDC 979e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# define STDC 989e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# endif 999e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# if __STDC_VERSION__ >= 199901L 1009e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# ifndef STDC99 1019e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# define STDC99 1029e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# endif 1039e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# endif 1049e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project#endif 1059e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project#if !defined(STDC) && (defined(__STDC__) || defined(__cplusplus)) 1069e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# define STDC 1079e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project#endif 1089e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project#if !defined(STDC) && (defined(__GNUC__) || defined(__BORLANDC__)) 1099e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# define STDC 1109e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project#endif 1119e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project#if !defined(STDC) && (defined(MSDOS) || defined(WINDOWS) || defined(WIN32)) 1129e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# define STDC 1139e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project#endif 1149e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project#if !defined(STDC) && (defined(OS2) || defined(__HOS_AIX__)) 1159e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# define STDC 1169e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project#endif 1179e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project 1189e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project#if defined(__OS400__) && !defined(STDC) /* iSeries (formerly AS/400). */ 1199e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# define STDC 1209e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project#endif 1219e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project 1229e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project#ifndef STDC 1239e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# ifndef const /* cannot use !defined(STDC) && !defined(const) on Mac */ 1249e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# define const /* note: need a more gentle solution here */ 1259e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# endif 1269e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project#endif 1279e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project 1289e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project/* Some Mac compilers merge all .h files incorrectly: */ 1299e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project#if defined(__MWERKS__)||defined(applec)||defined(THINK_C)||defined(__SC__) 1309e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# define NO_DUMMY_DECL 1319e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project#endif 1329e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project 1339e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project/* Maximum value for memLevel in deflateInit2 */ 1349e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project#ifndef MAX_MEM_LEVEL 1359e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# ifdef MAXSEG_64K 1369e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# define MAX_MEM_LEVEL 8 1379e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# else 1389e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# define MAX_MEM_LEVEL 9 1399e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# endif 1409e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project#endif 1419e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project 1429e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project/* Maximum value for windowBits in deflateInit2 and inflateInit2. 1439e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project * WARNING: reducing MAX_WBITS makes minigzip unable to extract .gz files 1449e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project * created by gzip. (Files created by minigzip can still be extracted by 1459e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project * gzip.) 1469e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project */ 1479e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project#ifndef MAX_WBITS 1489e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# define MAX_WBITS 15 /* 32K LZ77 window */ 1499e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project#endif 1509e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project 1519e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project/* The memory requirements for deflate are (in bytes): 1529e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project (1 << (windowBits+2)) + (1 << (memLevel+9)) 1539e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project that is: 128K for windowBits=15 + 128K for memLevel = 8 (default values) 1549e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project plus a few kilobytes for small objects. For example, if you want to reduce 1559e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project the default memory requirements from 256K to 128K, compile with 1569e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project make CFLAGS="-O -DMAX_WBITS=14 -DMAX_MEM_LEVEL=7" 1579e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project Of course this will generally degrade compression (there's no free lunch). 1589e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project 1599e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project The memory requirements for inflate are (in bytes) 1 << windowBits 1609e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project that is, 32K for windowBits=15 (default value) plus a few kilobytes 1619e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project for small objects. 1629e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project*/ 1639e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project 1649e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project /* Type declarations */ 1659e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project 1669e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project#ifndef OF /* function prototypes */ 1679e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# ifdef STDC 1689e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# define OF(args) args 1699e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# else 1709e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# define OF(args) () 1719e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# endif 1729e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project#endif 1739e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project 1749e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project/* The following definitions for FAR are needed only for MSDOS mixed 1759e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project * model programming (small or medium model with some far allocations). 1769e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project * This was tested only with MSC; for other MSDOS compilers you may have 1779e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project * to define NO_MEMCPY in zutil.h. If you don't need the mixed model, 1789e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project * just define FAR to be empty. 1799e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project */ 1809e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project#ifdef SYS16BIT 1819e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# if defined(M_I86SM) || defined(M_I86MM) 1829e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project /* MSC small or medium model */ 1839e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# define SMALL_MEDIUM 1849e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# ifdef _MSC_VER 1859e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# define FAR _far 1869e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# else 1879e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# define FAR far 1889e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# endif 1899e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# endif 1909e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# if (defined(__SMALL__) || defined(__MEDIUM__)) 1919e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project /* Turbo C small or medium model */ 1929e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# define SMALL_MEDIUM 1939e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# ifdef __BORLANDC__ 1949e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# define FAR _far 1959e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# else 1969e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# define FAR far 1979e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# endif 1989e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# endif 1999e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project#endif 2009e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project 2019e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project#if defined(WINDOWS) || defined(WIN32) 2029e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project /* If building or using zlib as a DLL, define ZLIB_DLL. 2039e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project * This is not mandatory, but it offers a little performance increase. 2049e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project */ 2059e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# ifdef ZLIB_DLL 2069e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# if defined(WIN32) && (!defined(__BORLANDC__) || (__BORLANDC__ >= 0x500)) 2079e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# ifdef ZLIB_INTERNAL 2089e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# define ZEXTERN extern __declspec(dllexport) 2099e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# else 2109e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# define ZEXTERN extern __declspec(dllimport) 2119e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# endif 2129e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# endif 2139e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# endif /* ZLIB_DLL */ 2149e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project /* If building or using zlib with the WINAPI/WINAPIV calling convention, 2159e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project * define ZLIB_WINAPI. 2169e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project * Caution: the standard ZLIB1.DLL is NOT compiled using ZLIB_WINAPI. 2179e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project */ 2189e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# ifdef ZLIB_WINAPI 2199e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# ifdef FAR 2209e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# undef FAR 2219e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# endif 2229e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# include <windows.h> 2239e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project /* No need for _export, use ZLIB.DEF instead. */ 2249e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project /* For complete Windows compatibility, use WINAPI, not __stdcall. */ 2259e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# define ZEXPORT WINAPI 2269e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# ifdef WIN32 2279e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# define ZEXPORTVA WINAPIV 2289e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# else 2299e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# define ZEXPORTVA FAR CDECL 2309e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# endif 2319e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# endif 2329e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project#endif 2339e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project 2349e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project#if defined (__BEOS__) 2359e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# ifdef ZLIB_DLL 2369e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# ifdef ZLIB_INTERNAL 2379e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# define ZEXPORT __declspec(dllexport) 2389e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# define ZEXPORTVA __declspec(dllexport) 2399e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# else 2409e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# define ZEXPORT __declspec(dllimport) 2419e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# define ZEXPORTVA __declspec(dllimport) 2429e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# endif 2439e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# endif 2449e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project#endif 2459e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project 2469e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project#ifndef ZEXTERN 2479e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# define ZEXTERN extern 2489e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project#endif 2499e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project#ifndef ZEXPORT 2509e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# define ZEXPORT 2519e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project#endif 2529e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project#ifndef ZEXPORTVA 2539e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# define ZEXPORTVA 2549e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project#endif 2559e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project 2569e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project#ifndef FAR 2579e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# define FAR 2589e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project#endif 2599e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project 2609e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project#if !defined(__MACTYPES__) 2619e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Projecttypedef unsigned char Byte; /* 8 bits */ 2629e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project#endif 2639e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Projecttypedef unsigned int uInt; /* 16 bits or more */ 2649e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Projecttypedef unsigned long uLong; /* 32 bits or more */ 2659e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project 2669e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project#ifdef SMALL_MEDIUM 2679e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project /* Borland C/C++ and some old MSC versions ignore FAR inside typedef */ 2689e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# define Bytef Byte FAR 2699e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project#else 2709e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project typedef Byte FAR Bytef; 2719e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project#endif 2729e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Projecttypedef char FAR charf; 2739e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Projecttypedef int FAR intf; 2749e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Projecttypedef uInt FAR uIntf; 2759e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Projecttypedef uLong FAR uLongf; 2769e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project 2779e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project#ifdef STDC 2789e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project typedef void const *voidpc; 2799e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project typedef void FAR *voidpf; 2809e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project typedef void *voidp; 2819e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project#else 2829e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project typedef Byte const *voidpc; 2839e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project typedef Byte FAR *voidpf; 2849e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project typedef Byte *voidp; 2859e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project#endif 2869e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project 2879e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project#if 0 /* HAVE_UNISTD_H -- this line is updated by ./configure */ 2889e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# include <sys/types.h> /* for off_t */ 2899e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# include <unistd.h> /* for SEEK_* and off_t */ 2909e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# ifdef VMS 2919e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# include <unixio.h> /* for off_t */ 2929e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# endif 2939e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# define z_off_t off_t 2949e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project#endif 2959e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project#ifndef SEEK_SET 2969e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# define SEEK_SET 0 /* Seek from beginning of file. */ 2979e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# define SEEK_CUR 1 /* Seek from current position. */ 2989e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# define SEEK_END 2 /* Set file pointer to EOF plus "offset" */ 2999e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project#endif 3009e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project#ifndef z_off_t 3019e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# define z_off_t long 3029e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project#endif 3039e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project 3049e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project#if defined(__OS400__) 3059e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# define NO_vsnprintf 3069e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project#endif 3079e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project 3089e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project#if defined(__MVS__) 3099e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# define NO_vsnprintf 3109e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# ifdef FAR 3119e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# undef FAR 3129e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# endif 3139e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project#endif 3149e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project 3159e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project/* MVS linker does not support external names larger than 8 bytes */ 3169e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project#if defined(__MVS__) 3179e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# pragma map(deflateInit_,"DEIN") 3189e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# pragma map(deflateInit2_,"DEIN2") 3199e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# pragma map(deflateEnd,"DEEND") 3209e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# pragma map(deflateBound,"DEBND") 3219e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# pragma map(inflateInit_,"ININ") 3229e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# pragma map(inflateInit2_,"ININ2") 3239e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# pragma map(inflateEnd,"INEND") 3249e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# pragma map(inflateSync,"INSY") 3259e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# pragma map(inflateSetDictionary,"INSEDI") 3269e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# pragma map(compressBound,"CMBND") 3279e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# pragma map(inflate_table,"INTABL") 3289e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# pragma map(inflate_fast,"INFA") 3299e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project# pragma map(inflate_copyright,"INCOPY") 3309e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project#endif 3319e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project 3329e38dfa2f95fce609707a0941f10af9a785288deThe Android Open Source Project#endif /* ZCONF_H */ 333