blob: b4ad14e08cb17493762126621064ff41d37432b3 [file] [log] [blame]
zlib 1.0 is a general purpose data compression library.
All the code is reentrant (thread safe).
The data format used by the zlib library is described in the
files zlib-3.2.doc, deflate-1.2.doc and gzip-4.2.doc, available
in ftp://ftp.uu.net/pub/archiving/zip/doc
All functions of the compression library are documented in the file
zlib.h. A usage example of the library is given in the file example.c
which also tests that the library is working correctly. Another
example is given in the file minigzip.c.
To compile all files and run the test program, just type: make test
(For MSDOS, use one of the special makefiles such as Makefile.msc;
for VMS, use Make_vms.com or descrip.mms.)
To install the zlib library (libz.a) in /usr/local/lib, type: make install
To install in a different directory, use for example:
make install prefix=$HOME
This will install in $HOME/lib instead of /usr/local/lib.
Questions about zlib should be sent to <zlib@quest.jpl.nasa.gov>.
The changes made in version 1.0 are documented in the file ChangeLog.
The main changes since 0.95 are:
- allow compression level 0 (no compression)
- add deflateParams in zlib.h: allow dynamic change of compression level
and compression strategy.
- test large buffers and deflateParams in example.c
- declare Z_DEFLATED in zlib.h (possible parameter for deflateInit2)
- fixes for 64-bit systems (needed for Alpha and Cray)
- always return Z_BUF_ERROR when deflate() has nothing to do
- fix some very unlikely race conditions.
- several minor fixes for better portability
- free in reverse order of allocation to help memory manager
Notes for some targets:
- For MSDOS, the small and medium models have been tested only with
Microsoft C. (This should work for Borland C also, but I don't have
a Borland compiler to test with.) The small model was tested with
Turbo C but only with reduced performance to avoid any far
allocation; it was tested with -DMAX_WBITS=11 -DMAX_MEM_LEVEL=3
MS Visual C++1.5 in far model gives:
warning C4746: 'z_errmsg' : unsized array treated as '__far'
warning C4746: 'inflate_mask' : unsized array treated as '__far'
Ignore those warnings.
- For 64-bit Iris, deflate.c must be compiled without any optimization.
With -O, one libpng test fails. The test works in 32 bit mode (with the
-32 compiler flag).
Copyright notice:
(C) 1995-1996 Jean-loup Gailly and Mark Adler
This software is provided 'as-is', without any express or implied
warranty. In no event will the authors be held liable for any damages
arising from the use of this software.
Permission is granted to anyone to use this software for any purpose,
including commercial applications, and to alter it and redistribute it
freely, subject to the following restrictions:
1. The origin of this software must not be misrepresented; you must not
claim that you wrote the original software. If you use this software
in a product, an acknowledgment in the product documentation would be
appreciated but is not required.
2. Altered source versions must be plainly marked as such, and must not be
misrepresented as being the original software.
3. This notice may not be removed or altered from any source distribution.
Jean-loup Gailly Mark Adler
gzip@prep.ai.mit.edu madler@alumni.caltech.edu
If you use the zlib library in a product, we would appreciate *not*
receiving lengthy legal documents to sign. The sources are provided
for free but without warranty of any kind. The library has been
entirely written by Jean-loup Gailly and Mark Adler; it does not
include third-party code.
If you redistribute modified sources, we would appreciate that you include
in the file ChangeLog history information documenting your changes.