PR optimization/2903
[official-gcc.git] / zlib / README
blob29d67146a9bde941f927d4925bdfeb34ae731132
1 zlib 1.1.4 is a general purpose data compression library.  All the code
2 is thread safe.  The data format used by the zlib library
3 is described by RFCs (Request for Comments) 1950 to 1952 in the files 
4 http://www.ietf.org/rfc/rfc1950.txt (zlib format), rfc1951.txt (deflate
5 format) and rfc1952.txt (gzip format). These documents are also available in
6 other formats from ftp://ftp.uu.net/graphics/png/documents/zlib/zdoc-index.html
8 All functions of the compression library are documented in the file zlib.h
9 (volunteer to write man pages welcome, contact jloup@gzip.org). A usage
10 example of the library is given in the file example.c which also tests that
11 the library is working correctly. Another example is given in the file
12 minigzip.c. The compression library itself is composed of all source files
13 except example.c and minigzip.c.
15 To compile all files and run the test program, follow the instructions
16 given at the top of Makefile. In short "make test; make install"
17 should work for most machines. For Unix: "./configure; make test; make install"
18 For MSDOS, use one of the special makefiles such as Makefile.msc.
19 For VMS, use Make_vms.com or descrip.mms.
21 Questions about zlib should be sent to <zlib@gzip.org>, or to
22 Gilles Vollant <info@winimage.com> for the Windows DLL version.
23 The zlib home page is http://www.zlib.org or http://www.gzip.org/zlib/
24 Before reporting a problem, please check this site to verify that
25 you have the latest version of zlib; otherwise get the latest version and
26 check whether the problem still exists or not.
28 PLEASE read the zlib FAQ http://www.gzip.org/zlib/zlib_faq.html
29 before asking for help.
31 Mark Nelson <markn@ieee.org> wrote an article about zlib for the Jan. 1997
32 issue of  Dr. Dobb's Journal; a copy of the article is available in
33 http://dogma.net/markn/articles/zlibtool/zlibtool.htm
35 The changes made in version 1.1.4 are documented in the file ChangeLog.
36 The only changes made since 1.1.3 are bug corrections:
38 - ZFREE was repeated on same allocation on some error conditions.
39   This creates a security problem described in
40   http://www.zlib.org/advisory-2002-03-11.txt
41 - Returned incorrect error (Z_MEM_ERROR) on some invalid data
42 - Avoid accesses before window for invalid distances with inflate window
43   less than 32K.
44 - force windowBits > 8 to avoid a bug in the encoder for a window size
45   of 256 bytes. (A complete fix will be available in 1.1.5).
47 The beta version 1.1.5beta includes many more changes. A new official
48 version 1.1.5 will be released as soon as extensive testing has been
49 completed on it.
52 Unsupported third party contributions are provided in directory "contrib".
54 A Java implementation of zlib is available in the Java Development Kit
55 http://www.javasoft.com/products/JDK/1.1/docs/api/Package-java.util.zip.html
56 See the zlib home page http://www.zlib.org for details.
58 A Perl interface to zlib written by Paul Marquess <pmarquess@bfsec.bt.co.uk>
59 is in the CPAN (Comprehensive Perl Archive Network) sites
60 http://www.cpan.org/modules/by-module/Compress/
62 A Python interface to zlib written by A.M. Kuchling <amk@magnet.com>
63 is available in Python 1.5 and later versions, see
64 http://www.python.org/doc/lib/module-zlib.html
66 A zlib binding for TCL written by Andreas Kupries <a.kupries@westend.com>
67 is availlable at http://www.westend.com/~kupries/doc/trf/man/man.html
69 An experimental package to read and write files in .zip format,
70 written on top of zlib by Gilles Vollant <info@winimage.com>, is
71 available at http://www.winimage.com/zLibDll/unzip.html
72 and also in the contrib/minizip directory of zlib.
75 Notes for some targets:
77 - To build a Windows DLL version, include in a DLL project zlib.def, zlib.rc
78   and all .c files except example.c and minigzip.c; compile with -DZLIB_DLL
79   The zlib DLL support was initially done by Alessandro Iacopetti and is
80   now maintained by Gilles Vollant <info@winimage.com>. Check the zlib DLL
81   home page at http://www.winimage.com/zLibDll
83   From Visual Basic, you can call the DLL functions which do not take
84   a structure as argument: compress, uncompress and all gz* functions.
85   See contrib/visual-basic.txt for more information, or get
86   http://www.tcfb.com/dowseware/cmp-z-it.zip
88 - For 64-bit Irix, deflate.c must be compiled without any optimization.
89   With -O, one libpng test fails. The test works in 32 bit mode (with
90   the -n32 compiler flag). The compiler bug has been reported to SGI.
92 - zlib doesn't work with gcc 2.6.3 on a DEC 3000/300LX under OSF/1 2.1   
93   it works when compiled with cc.
95 - on Digital Unix 4.0D (formely OSF/1) on AlphaServer, the cc option -std1
96   is necessary to get gzprintf working correctly. This is done by configure.
98 - zlib doesn't work on HP-UX 9.05 with some versions of /bin/cc. It works
99   with other compilers. Use "make test" to check your compiler.
101 - gzdopen is not supported on RISCOS, BEOS and by some Mac compilers.
103 - For Turbo C the small model is supported only with reduced performance to
104   avoid any far allocation; it was tested with -DMAX_WBITS=11 -DMAX_MEM_LEVEL=3
106 - For PalmOs, see http://www.cs.uit.no/~perm/PASTA/pilot/software.html
107   Per Harald Myrvang <perm@stud.cs.uit.no>
110 Acknowledgments:
112   The deflate format used by zlib was defined by Phil Katz. The deflate
113   and zlib specifications were written by L. Peter Deutsch. Thanks to all the
114   people who reported problems and suggested various improvements in zlib;
115   they are too numerous to cite here.
117 Copyright notice:
119  (C) 1995-2002 Jean-loup Gailly and Mark Adler
121   This software is provided 'as-is', without any express or implied
122   warranty.  In no event will the authors be held liable for any damages
123   arising from the use of this software.
125   Permission is granted to anyone to use this software for any purpose,
126   including commercial applications, and to alter it and redistribute it
127   freely, subject to the following restrictions:
129   1. The origin of this software must not be misrepresented; you must not
130      claim that you wrote the original software. If you use this software
131      in a product, an acknowledgment in the product documentation would be
132      appreciated but is not required.
133   2. Altered source versions must be plainly marked as such, and must not be
134      misrepresented as being the original software.
135   3. This notice may not be removed or altered from any source distribution.
137   Jean-loup Gailly        Mark Adler
138   jloup@gzip.org          madler@alumni.caltech.edu
140 If you use the zlib library in a product, we would appreciate *not*
141 receiving lengthy legal documents to sign. The sources are provided
142 for free but without warranty of any kind.  The library has been
143 entirely written by Jean-loup Gailly and Mark Adler; it does not
144 include third-party code.
146 If you redistribute modified sources, we would appreciate that you include
147 in the file ChangeLog history information documenting your changes.