1*10465441SEvalZero /* zconf.h -- configuration of the zlib compression library 2*10465441SEvalZero * Copyright (C) 1995-2005 Jean-loup Gailly. 3*10465441SEvalZero * For conditions of distribution and use, see copyright notice in zlib.h 4*10465441SEvalZero */ 5*10465441SEvalZero 6*10465441SEvalZero /* @(#) $Id$ */ 7*10465441SEvalZero 8*10465441SEvalZero #ifndef ZCONF_H 9*10465441SEvalZero #define ZCONF_H 10*10465441SEvalZero 11*10465441SEvalZero // #ifdef __ECOS__ 12*10465441SEvalZero #undef __ECOS__ 13*10465441SEvalZero #define __ECOS__ 14*10465441SEvalZero #include <rtthread.h> 15*10465441SEvalZero 16*10465441SEvalZero #ifndef RT_USING_LIBC 17*10465441SEvalZero #define malloc rt_malloc 18*10465441SEvalZero #define free rt_free 19*10465441SEvalZero #define printf rt_kprintf 20*10465441SEvalZero #endif 21*10465441SEvalZero 22*10465441SEvalZero //#define Z_PREFIX //by prife 23*10465441SEvalZero //#include <pkgconf/compress_zlib.h> //prife no such file. 24*10465441SEvalZero 25*10465441SEvalZero #if CYGINT_COMPRESS_ZLIB_LOCAL_ALLOC != 0 26*10465441SEvalZero #define MY_ZCALLOC 27*10465441SEvalZero #endif 28*10465441SEvalZero #ifdef CYGSEM_COMPRESS_ZLIB_DEFLATE_MAKES_GZIP 29*10465441SEvalZero #undef MAX_WBITS 30*10465441SEvalZero #define MAX_WBITS 15+16 /* 32K LZ77 window */ 31*10465441SEvalZero #else 32*10465441SEvalZero #define NO_GZIP 33*10465441SEvalZero #define NO_GZCOMPRESS 34*10465441SEvalZero #endif 35*10465441SEvalZero // #endif 36*10465441SEvalZero 37*10465441SEvalZero /* 38*10465441SEvalZero * If you *really* need a unique prefix for all types and library functions, 39*10465441SEvalZero * compile with -DZ_PREFIX. The "standard" zlib should be compiled without it. 40*10465441SEvalZero */ 41*10465441SEvalZero #ifdef Z_PREFIX 42*10465441SEvalZero # define deflateInit_ z_deflateInit_ 43*10465441SEvalZero # define deflate z_deflate 44*10465441SEvalZero # define deflateEnd z_deflateEnd 45*10465441SEvalZero # define inflateInit_ z_inflateInit_ 46*10465441SEvalZero # define inflate z_inflate 47*10465441SEvalZero # define inflateEnd z_inflateEnd 48*10465441SEvalZero # define deflateInit2_ z_deflateInit2_ 49*10465441SEvalZero # define deflateSetDictionary z_deflateSetDictionary 50*10465441SEvalZero # define deflateCopy z_deflateCopy 51*10465441SEvalZero # define deflateReset z_deflateReset 52*10465441SEvalZero # define deflateParams z_deflateParams 53*10465441SEvalZero # define deflateBound z_deflateBound 54*10465441SEvalZero # define deflatePrime z_deflatePrime 55*10465441SEvalZero # define inflateInit2_ z_inflateInit2_ 56*10465441SEvalZero # define inflateSetDictionary z_inflateSetDictionary 57*10465441SEvalZero # define inflateSync z_inflateSync 58*10465441SEvalZero # define inflateSyncPoint z_inflateSyncPoint 59*10465441SEvalZero # define inflateCopy z_inflateCopy 60*10465441SEvalZero # define inflateReset z_inflateReset 61*10465441SEvalZero # define inflateBack z_inflateBack 62*10465441SEvalZero # define inflateBackEnd z_inflateBackEnd 63*10465441SEvalZero # define compress z_compress 64*10465441SEvalZero # define compress2 z_compress2 65*10465441SEvalZero # define compressBound z_compressBound 66*10465441SEvalZero # define uncompress z_uncompress 67*10465441SEvalZero # define adler32 z_adler32 68*10465441SEvalZero # define crc32 z_crc32 69*10465441SEvalZero # define get_crc_table z_get_crc_table 70*10465441SEvalZero # define zError z_zError 71*10465441SEvalZero 72*10465441SEvalZero # define alloc_func z_alloc_func 73*10465441SEvalZero # define free_func z_free_func 74*10465441SEvalZero # define in_func z_in_func 75*10465441SEvalZero # define out_func z_out_func 76*10465441SEvalZero # define Byte z_Byte 77*10465441SEvalZero # define uInt z_uInt 78*10465441SEvalZero # define uLong z_uLong 79*10465441SEvalZero # define Bytef z_Bytef 80*10465441SEvalZero # define charf z_charf 81*10465441SEvalZero # define intf z_intf 82*10465441SEvalZero # define uIntf z_uIntf 83*10465441SEvalZero # define uLongf z_uLongf 84*10465441SEvalZero # define voidpf z_voidpf 85*10465441SEvalZero # define voidp z_voidp 86*10465441SEvalZero #endif 87*10465441SEvalZero 88*10465441SEvalZero #if defined(__MSDOS__) && !defined(MSDOS) 89*10465441SEvalZero # define MSDOS 90*10465441SEvalZero #endif 91*10465441SEvalZero #if (defined(OS_2) || defined(__OS2__)) && !defined(OS2) 92*10465441SEvalZero # define OS2 93*10465441SEvalZero #endif 94*10465441SEvalZero #if defined(_WINDOWS) && !defined(WINDOWS) 95*10465441SEvalZero # define WINDOWS 96*10465441SEvalZero #endif 97*10465441SEvalZero #if defined(_WIN32) || defined(_WIN32_WCE) || defined(__WIN32__) 98*10465441SEvalZero # ifndef WIN32 99*10465441SEvalZero # define WIN32 100*10465441SEvalZero # endif 101*10465441SEvalZero #endif 102*10465441SEvalZero #if (defined(MSDOS) || defined(OS2) || defined(WINDOWS)) && !defined(WIN32) 103*10465441SEvalZero # if !defined(__GNUC__) && !defined(__FLAT__) && !defined(__386__) 104*10465441SEvalZero # ifndef SYS16BIT 105*10465441SEvalZero # define SYS16BIT 106*10465441SEvalZero # endif 107*10465441SEvalZero # endif 108*10465441SEvalZero #endif 109*10465441SEvalZero 110*10465441SEvalZero /* 111*10465441SEvalZero * Compile with -DMAXSEG_64K if the alloc function cannot allocate more 112*10465441SEvalZero * than 64k bytes at a time (needed on systems with 16-bit int). 113*10465441SEvalZero */ 114*10465441SEvalZero #ifdef SYS16BIT 115*10465441SEvalZero # define MAXSEG_64K 116*10465441SEvalZero #endif 117*10465441SEvalZero #ifdef MSDOS 118*10465441SEvalZero # define UNALIGNED_OK 119*10465441SEvalZero #endif 120*10465441SEvalZero 121*10465441SEvalZero #ifdef __STDC_VERSION__ 122*10465441SEvalZero # ifndef STDC 123*10465441SEvalZero # define STDC 124*10465441SEvalZero # endif 125*10465441SEvalZero # if __STDC_VERSION__ >= 199901L 126*10465441SEvalZero # ifndef STDC99 127*10465441SEvalZero # define STDC99 128*10465441SEvalZero # endif 129*10465441SEvalZero # endif 130*10465441SEvalZero #endif 131*10465441SEvalZero #if !defined(STDC) && (defined(__STDC__) || defined(__cplusplus)) 132*10465441SEvalZero # define STDC 133*10465441SEvalZero #endif 134*10465441SEvalZero #if !defined(STDC) && (defined(__GNUC__) || defined(__BORLANDC__)) 135*10465441SEvalZero # define STDC 136*10465441SEvalZero #endif 137*10465441SEvalZero #if !defined(STDC) && (defined(MSDOS) || defined(WINDOWS) || defined(WIN32)) 138*10465441SEvalZero # define STDC 139*10465441SEvalZero #endif 140*10465441SEvalZero #if !defined(STDC) && (defined(OS2) || defined(__HOS_AIX__)) 141*10465441SEvalZero # define STDC 142*10465441SEvalZero #endif 143*10465441SEvalZero 144*10465441SEvalZero #if defined(__OS400__) && !defined(STDC) /* iSeries (formerly AS/400). */ 145*10465441SEvalZero # define STDC 146*10465441SEvalZero #endif 147*10465441SEvalZero 148*10465441SEvalZero #ifndef STDC 149*10465441SEvalZero # ifndef const /* cannot use !defined(STDC) && !defined(const) on Mac */ 150*10465441SEvalZero # define const /* note: need a more gentle solution here */ 151*10465441SEvalZero # endif 152*10465441SEvalZero #endif 153*10465441SEvalZero 154*10465441SEvalZero /* Some Mac compilers merge all .h files incorrectly: */ 155*10465441SEvalZero #if defined(__MWERKS__)||defined(applec)||defined(THINK_C)||defined(__SC__) 156*10465441SEvalZero # define NO_DUMMY_DECL 157*10465441SEvalZero #endif 158*10465441SEvalZero 159*10465441SEvalZero /* Maximum value for memLevel in deflateInit2 */ 160*10465441SEvalZero #ifndef MAX_MEM_LEVEL 161*10465441SEvalZero # ifdef MAXSEG_64K 162*10465441SEvalZero # define MAX_MEM_LEVEL 8 163*10465441SEvalZero # else 164*10465441SEvalZero # define MAX_MEM_LEVEL 9 165*10465441SEvalZero # endif 166*10465441SEvalZero #endif 167*10465441SEvalZero 168*10465441SEvalZero /* Maximum value for windowBits in deflateInit2 and inflateInit2. 169*10465441SEvalZero * WARNING: reducing MAX_WBITS makes minigzip unable to extract .gz files 170*10465441SEvalZero * created by gzip. (Files created by minigzip can still be extracted by 171*10465441SEvalZero * gzip.) 172*10465441SEvalZero */ 173*10465441SEvalZero #ifndef MAX_WBITS 174*10465441SEvalZero # define MAX_WBITS 15 /* 32K LZ77 window */ 175*10465441SEvalZero #endif 176*10465441SEvalZero 177*10465441SEvalZero /* The memory requirements for deflate are (in bytes): 178*10465441SEvalZero (1 << (windowBits+2)) + (1 << (memLevel+9)) 179*10465441SEvalZero that is: 128K for windowBits=15 + 128K for memLevel = 8 (default values) 180*10465441SEvalZero plus a few kilobytes for small objects. For example, if you want to reduce 181*10465441SEvalZero the default memory requirements from 256K to 128K, compile with 182*10465441SEvalZero make CFLAGS="-O -DMAX_WBITS=14 -DMAX_MEM_LEVEL=7" 183*10465441SEvalZero Of course this will generally degrade compression (there's no free lunch). 184*10465441SEvalZero 185*10465441SEvalZero The memory requirements for inflate are (in bytes) 1 << windowBits 186*10465441SEvalZero that is, 32K for windowBits=15 (default value) plus a few kilobytes 187*10465441SEvalZero for small objects. 188*10465441SEvalZero */ 189*10465441SEvalZero 190*10465441SEvalZero /* Type declarations */ 191*10465441SEvalZero 192*10465441SEvalZero #ifndef OF /* function prototypes */ 193*10465441SEvalZero # ifdef STDC 194*10465441SEvalZero # define OF(args) args 195*10465441SEvalZero # else 196*10465441SEvalZero # define OF(args) () 197*10465441SEvalZero # endif 198*10465441SEvalZero #endif 199*10465441SEvalZero 200*10465441SEvalZero /* The following definitions for FAR are needed only for MSDOS mixed 201*10465441SEvalZero * model programming (small or medium model with some far allocations). 202*10465441SEvalZero * This was tested only with MSC; for other MSDOS compilers you may have 203*10465441SEvalZero * to define NO_MEMCPY in zutil.h. If you don't need the mixed model, 204*10465441SEvalZero * just define FAR to be empty. 205*10465441SEvalZero */ 206*10465441SEvalZero #ifdef SYS16BIT 207*10465441SEvalZero # if defined(M_I86SM) || defined(M_I86MM) 208*10465441SEvalZero /* MSC small or medium model */ 209*10465441SEvalZero # define SMALL_MEDIUM 210*10465441SEvalZero # ifdef _MSC_VER 211*10465441SEvalZero # define FAR _far 212*10465441SEvalZero # else 213*10465441SEvalZero # define FAR far 214*10465441SEvalZero # endif 215*10465441SEvalZero # endif 216*10465441SEvalZero # if (defined(__SMALL__) || defined(__MEDIUM__)) 217*10465441SEvalZero /* Turbo C small or medium model */ 218*10465441SEvalZero # define SMALL_MEDIUM 219*10465441SEvalZero # ifdef __BORLANDC__ 220*10465441SEvalZero # define FAR _far 221*10465441SEvalZero # else 222*10465441SEvalZero # define FAR far 223*10465441SEvalZero # endif 224*10465441SEvalZero # endif 225*10465441SEvalZero #endif 226*10465441SEvalZero 227*10465441SEvalZero #if defined(WINDOWS) || defined(WIN32) 228*10465441SEvalZero /* If building or using zlib as a DLL, define ZLIB_DLL. 229*10465441SEvalZero * This is not mandatory, but it offers a little performance increase. 230*10465441SEvalZero */ 231*10465441SEvalZero # ifdef ZLIB_DLL 232*10465441SEvalZero # if defined(WIN32) && (!defined(__BORLANDC__) || (__BORLANDC__ >= 0x500)) 233*10465441SEvalZero # ifdef ZLIB_INTERNAL 234*10465441SEvalZero # define ZEXTERN extern __declspec(dllexport) 235*10465441SEvalZero # else 236*10465441SEvalZero # define ZEXTERN extern __declspec(dllimport) 237*10465441SEvalZero # endif 238*10465441SEvalZero # endif 239*10465441SEvalZero # endif /* ZLIB_DLL */ 240*10465441SEvalZero /* If building or using zlib with the WINAPI/WINAPIV calling convention, 241*10465441SEvalZero * define ZLIB_WINAPI. 242*10465441SEvalZero * Caution: the standard ZLIB1.DLL is NOT compiled using ZLIB_WINAPI. 243*10465441SEvalZero */ 244*10465441SEvalZero # ifdef ZLIB_WINAPI 245*10465441SEvalZero # ifdef FAR 246*10465441SEvalZero # undef FAR 247*10465441SEvalZero # endif 248*10465441SEvalZero # include <windows.h> 249*10465441SEvalZero /* No need for _export, use ZLIB.DEF instead. */ 250*10465441SEvalZero /* For complete Windows compatibility, use WINAPI, not __stdcall. */ 251*10465441SEvalZero # define ZEXPORT WINAPI 252*10465441SEvalZero # ifdef WIN32 253*10465441SEvalZero # define ZEXPORTVA WINAPIV 254*10465441SEvalZero # else 255*10465441SEvalZero # define ZEXPORTVA FAR CDECL 256*10465441SEvalZero # endif 257*10465441SEvalZero # endif 258*10465441SEvalZero #endif 259*10465441SEvalZero 260*10465441SEvalZero #if defined (__BEOS__) 261*10465441SEvalZero # ifdef ZLIB_DLL 262*10465441SEvalZero # ifdef ZLIB_INTERNAL 263*10465441SEvalZero # define ZEXPORT __declspec(dllexport) 264*10465441SEvalZero # define ZEXPORTVA __declspec(dllexport) 265*10465441SEvalZero # else 266*10465441SEvalZero # define ZEXPORT __declspec(dllimport) 267*10465441SEvalZero # define ZEXPORTVA __declspec(dllimport) 268*10465441SEvalZero # endif 269*10465441SEvalZero # endif 270*10465441SEvalZero #endif 271*10465441SEvalZero 272*10465441SEvalZero #ifndef ZEXTERN 273*10465441SEvalZero # define ZEXTERN extern 274*10465441SEvalZero #endif 275*10465441SEvalZero #ifndef ZEXPORT 276*10465441SEvalZero # define ZEXPORT 277*10465441SEvalZero #endif 278*10465441SEvalZero #ifndef ZEXPORTVA 279*10465441SEvalZero # define ZEXPORTVA 280*10465441SEvalZero #endif 281*10465441SEvalZero 282*10465441SEvalZero #ifndef FAR 283*10465441SEvalZero # define FAR 284*10465441SEvalZero #endif 285*10465441SEvalZero 286*10465441SEvalZero #if !defined(__MACTYPES__) 287*10465441SEvalZero typedef unsigned char Byte; /* 8 bits */ 288*10465441SEvalZero #endif 289*10465441SEvalZero typedef unsigned int uInt; /* 16 bits or more */ 290*10465441SEvalZero typedef unsigned long uLong; /* 32 bits or more */ 291*10465441SEvalZero 292*10465441SEvalZero #ifdef SMALL_MEDIUM 293*10465441SEvalZero /* Borland C/C++ and some old MSC versions ignore FAR inside typedef */ 294*10465441SEvalZero # define Bytef Byte FAR 295*10465441SEvalZero #else 296*10465441SEvalZero typedef Byte FAR Bytef; 297*10465441SEvalZero #endif 298*10465441SEvalZero typedef char FAR charf; 299*10465441SEvalZero typedef int FAR intf; 300*10465441SEvalZero typedef uInt FAR uIntf; 301*10465441SEvalZero typedef uLong FAR uLongf; 302*10465441SEvalZero 303*10465441SEvalZero #ifdef STDC 304*10465441SEvalZero typedef void const *voidpc; 305*10465441SEvalZero typedef void FAR *voidpf; 306*10465441SEvalZero typedef void *voidp; 307*10465441SEvalZero #else 308*10465441SEvalZero typedef Byte const *voidpc; 309*10465441SEvalZero typedef Byte FAR *voidpf; 310*10465441SEvalZero typedef Byte *voidp; 311*10465441SEvalZero #endif 312*10465441SEvalZero 313*10465441SEvalZero #if 0 /* HAVE_UNISTD_H -- this line is updated by ./configure */ 314*10465441SEvalZero # include <sys/types.h> /* for off_t */ 315*10465441SEvalZero # include <unistd.h> /* for SEEK_* and off_t */ 316*10465441SEvalZero # ifdef VMS 317*10465441SEvalZero # include <unixio.h> /* for off_t */ 318*10465441SEvalZero # endif 319*10465441SEvalZero # define z_off_t off_t 320*10465441SEvalZero #endif 321*10465441SEvalZero #ifndef SEEK_SET 322*10465441SEvalZero # define SEEK_SET 0 /* Seek from beginning of file. */ 323*10465441SEvalZero # define SEEK_CUR 1 /* Seek from current position. */ 324*10465441SEvalZero # define SEEK_END 2 /* Set file pointer to EOF plus "offset" */ 325*10465441SEvalZero #endif 326*10465441SEvalZero #ifndef z_off_t 327*10465441SEvalZero # define z_off_t long 328*10465441SEvalZero #endif 329*10465441SEvalZero 330*10465441SEvalZero #if defined(__OS400__) 331*10465441SEvalZero # define NO_vsnprintf 332*10465441SEvalZero #endif 333*10465441SEvalZero 334*10465441SEvalZero #if defined(__MVS__) 335*10465441SEvalZero # define NO_vsnprintf 336*10465441SEvalZero # ifdef FAR 337*10465441SEvalZero # undef FAR 338*10465441SEvalZero # endif 339*10465441SEvalZero #endif 340*10465441SEvalZero 341*10465441SEvalZero /* MVS linker does not support external names larger than 8 bytes */ 342*10465441SEvalZero #if defined(__MVS__) 343*10465441SEvalZero # pragma map(deflateInit_,"DEIN") 344*10465441SEvalZero # pragma map(deflateInit2_,"DEIN2") 345*10465441SEvalZero # pragma map(deflateEnd,"DEEND") 346*10465441SEvalZero # pragma map(deflateBound,"DEBND") 347*10465441SEvalZero # pragma map(inflateInit_,"ININ") 348*10465441SEvalZero # pragma map(inflateInit2_,"ININ2") 349*10465441SEvalZero # pragma map(inflateEnd,"INEND") 350*10465441SEvalZero # pragma map(inflateSync,"INSY") 351*10465441SEvalZero # pragma map(inflateSetDictionary,"INSEDI") 352*10465441SEvalZero # pragma map(compressBound,"CMBND") 353*10465441SEvalZero # pragma map(inflate_table,"INTABL") 354*10465441SEvalZero # pragma map(inflate_fast,"INFA") 355*10465441SEvalZero # pragma map(inflate_copyright,"INCOPY") 356*10465441SEvalZero #endif 357*10465441SEvalZero 358*10465441SEvalZero #endif /* ZCONF_H */ 359