11da177e4SLinus Torvalds /* zconf.h -- configuration of the zlib compression library 21da177e4SLinus Torvalds * Copyright (C) 1995-1998 Jean-loup Gailly. 31da177e4SLinus Torvalds * For conditions of distribution and use, see copyright notice in zlib.h 41da177e4SLinus Torvalds */ 51da177e4SLinus Torvalds 61da177e4SLinus Torvalds /* @(#) $Id$ */ 71da177e4SLinus Torvalds 81da177e4SLinus Torvalds #ifndef _ZCONF_H 91da177e4SLinus Torvalds #define _ZCONF_H 101da177e4SLinus Torvalds 111da177e4SLinus Torvalds /* The memory requirements for deflate are (in bytes): 121da177e4SLinus Torvalds (1 << (windowBits+2)) + (1 << (memLevel+9)) 131da177e4SLinus Torvalds that is: 128K for windowBits=15 + 128K for memLevel = 8 (default values) 141da177e4SLinus Torvalds plus a few kilobytes for small objects. For example, if you want to reduce 151da177e4SLinus Torvalds the default memory requirements from 256K to 128K, compile with 161da177e4SLinus Torvalds make CFLAGS="-O -DMAX_WBITS=14 -DMAX_MEM_LEVEL=7" 171da177e4SLinus Torvalds Of course this will generally degrade compression (there's no free lunch). 181da177e4SLinus Torvalds 191da177e4SLinus Torvalds The memory requirements for inflate are (in bytes) 1 << windowBits 201da177e4SLinus Torvalds that is, 32K for windowBits=15 (default value) plus a few kilobytes 211da177e4SLinus Torvalds for small objects. 221da177e4SLinus Torvalds */ 231da177e4SLinus Torvalds 241da177e4SLinus Torvalds /* Maximum value for memLevel in deflateInit2 */ 251da177e4SLinus Torvalds #ifndef MAX_MEM_LEVEL 261da177e4SLinus Torvalds # define MAX_MEM_LEVEL 8 271da177e4SLinus Torvalds #endif 281da177e4SLinus Torvalds 291da177e4SLinus Torvalds /* Maximum value for windowBits in deflateInit2 and inflateInit2. 301da177e4SLinus Torvalds * WARNING: reducing MAX_WBITS makes minigzip unable to extract .gz files 311da177e4SLinus Torvalds * created by gzip. (Files created by minigzip can still be extracted by 321da177e4SLinus Torvalds * gzip.) 331da177e4SLinus Torvalds */ 341da177e4SLinus Torvalds #ifndef MAX_WBITS 351da177e4SLinus Torvalds # define MAX_WBITS 15 /* 32K LZ77 window */ 361da177e4SLinus Torvalds #endif 371da177e4SLinus Torvalds 38*4f3865fbSRichard Purdie /* default windowBits for decompression. MAX_WBITS is for compression only */ 39*4f3865fbSRichard Purdie #ifndef DEF_WBITS 40*4f3865fbSRichard Purdie # define DEF_WBITS MAX_WBITS 41*4f3865fbSRichard Purdie #endif 42*4f3865fbSRichard Purdie 43*4f3865fbSRichard Purdie /* default memLevel */ 44*4f3865fbSRichard Purdie #if MAX_MEM_LEVEL >= 8 45*4f3865fbSRichard Purdie # define DEF_MEM_LEVEL 8 46*4f3865fbSRichard Purdie #else 47*4f3865fbSRichard Purdie # define DEF_MEM_LEVEL MAX_MEM_LEVEL 48*4f3865fbSRichard Purdie #endif 49*4f3865fbSRichard Purdie 501da177e4SLinus Torvalds /* Type declarations */ 511da177e4SLinus Torvalds 521da177e4SLinus Torvalds typedef unsigned char Byte; /* 8 bits */ 531da177e4SLinus Torvalds typedef unsigned int uInt; /* 16 bits or more */ 541da177e4SLinus Torvalds typedef unsigned long uLong; /* 32 bits or more */ 551da177e4SLinus Torvalds typedef void *voidp; 561da177e4SLinus Torvalds 571da177e4SLinus Torvalds #endif /* _ZCONF_H */ 58