zlib123/README
author Ryan C. Gordon <icculus@icculus.org>
Mon, 23 Mar 2009 01:43:05 -0400
branchstable-1.0
changeset 966 816a83f04a27
parent 920 f8fe5a42c5e6
permissions -rw-r--r--
Updated version to 1.0.2 in configure.in ...
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
920
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
     1
ZLIB DATA COMPRESSION LIBRARY
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
     2
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
     3
zlib 1.2.3 is a general purpose data compression library.  All the code is
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
     4
thread safe.  The data format used by the zlib library is described by RFCs
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
     5
(Request for Comments) 1950 to 1952 in the files
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
     6
http://www.ietf.org/rfc/rfc1950.txt (zlib format), rfc1951.txt (deflate format)
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
     7
and rfc1952.txt (gzip format). These documents are also available in other
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
     8
formats from ftp://ftp.uu.net/graphics/png/documents/zlib/zdoc-index.html
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
     9
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    10
All functions of the compression library are documented in the file zlib.h
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    11
(volunteer to write man pages welcome, contact zlib@gzip.org). A usage example
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    12
of the library is given in the file example.c which also tests that the library
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    13
is working correctly. Another example is given in the file minigzip.c. The
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    14
compression library itself is composed of all source files except example.c and
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    15
minigzip.c.
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    16
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    17
To compile all files and run the test program, follow the instructions given at
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    18
the top of Makefile. In short "make test; make install" should work for most
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    19
machines. For Unix: "./configure; make test; make install". For MSDOS, use one
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    20
of the special makefiles such as Makefile.msc. For VMS, use make_vms.com.
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    21
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    22
Questions about zlib should be sent to <zlib@gzip.org>, or to Gilles Vollant
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    23
<info@winimage.com> for the Windows DLL version. The zlib home page is
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    24
http://www.zlib.org or http://www.gzip.org/zlib/ Before reporting a problem,
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    25
please check this site to verify that you have the latest version of zlib;
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    26
otherwise get the latest version and check whether the problem still exists or
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    27
not.
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    28
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    29
PLEASE read the zlib FAQ http://www.gzip.org/zlib/zlib_faq.html before asking
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    30
for help.
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    31
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    32
Mark Nelson <markn@ieee.org> wrote an article about zlib for the Jan. 1997
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    33
issue of  Dr. Dobb's Journal; a copy of the article is available in
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    34
http://dogma.net/markn/articles/zlibtool/zlibtool.htm
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    35
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    36
The changes made in version 1.2.3 are documented in the file ChangeLog.
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    37
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    38
Unsupported third party contributions are provided in directory "contrib".
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    39
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    40
A Java implementation of zlib is available in the Java Development Kit
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    41
http://java.sun.com/j2se/1.4.2/docs/api/java/util/zip/package-summary.html
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    42
See the zlib home page http://www.zlib.org for details.
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    43
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    44
A Perl interface to zlib written by Paul Marquess <pmqs@cpan.org> is in the
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    45
CPAN (Comprehensive Perl Archive Network) sites
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    46
http://www.cpan.org/modules/by-module/Compress/
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    47
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    48
A Python interface to zlib written by A.M. Kuchling <amk@amk.ca> is
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    49
available in Python 1.5 and later versions, see
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    50
http://www.python.org/doc/lib/module-zlib.html
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    51
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    52
A zlib binding for TCL written by Andreas Kupries <a.kupries@westend.com> is
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    53
availlable at http://www.oche.de/~akupries/soft/trf/trf_zip.html
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    54
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    55
An experimental package to read and write files in .zip format, written on top
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    56
of zlib by Gilles Vollant <info@winimage.com>, is available in the
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    57
contrib/minizip directory of zlib.
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    58
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    59
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    60
Notes for some targets:
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    61
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    62
- For Windows DLL versions, please see win32/DLL_FAQ.txt
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    63
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    64
- For 64-bit Irix, deflate.c must be compiled without any optimization. With
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    65
  -O, one libpng test fails. The test works in 32 bit mode (with the -n32
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    66
  compiler flag). The compiler bug has been reported to SGI.
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    67
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    68
- zlib doesn't work with gcc 2.6.3 on a DEC 3000/300LX under OSF/1 2.1 it works
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    69
  when compiled with cc.
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    70
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    71
- On Digital Unix 4.0D (formely OSF/1) on AlphaServer, the cc option -std1 is
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    72
  necessary to get gzprintf working correctly. This is done by configure.
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    73
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    74
- zlib doesn't work on HP-UX 9.05 with some versions of /bin/cc. It works with
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    75
  other compilers. Use "make test" to check your compiler.
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    76
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    77
- gzdopen is not supported on RISCOS, BEOS and by some Mac compilers.
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    78
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    79
- For PalmOs, see http://palmzlib.sourceforge.net/
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    80
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    81
- When building a shared, i.e. dynamic library on Mac OS X, the library must be
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    82
  installed before testing (do "make install" before "make test"), since the
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    83
  library location is specified in the library.
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    84
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    85
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    86
Acknowledgments:
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    87
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    88
  The deflate format used by zlib was defined by Phil Katz. The deflate
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    89
  and zlib specifications were written by L. Peter Deutsch. Thanks to all the
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    90
  people who reported problems and suggested various improvements in zlib;
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    91
  they are too numerous to cite here.
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    92
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    93
Copyright notice:
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    94
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    95
 (C) 1995-2004 Jean-loup Gailly and Mark Adler
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    96
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    97
  This software is provided 'as-is', without any express or implied
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    98
  warranty.  In no event will the authors be held liable for any damages
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    99
  arising from the use of this software.
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
   100
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
   101
  Permission is granted to anyone to use this software for any purpose,
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
   102
  including commercial applications, and to alter it and redistribute it
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
   103
  freely, subject to the following restrictions:
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
   104
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
   105
  1. The origin of this software must not be misrepresented; you must not
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
   106
     claim that you wrote the original software. If you use this software
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
   107
     in a product, an acknowledgment in the product documentation would be
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
   108
     appreciated but is not required.
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
   109
  2. Altered source versions must be plainly marked as such, and must not be
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
   110
     misrepresented as being the original software.
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
   111
  3. This notice may not be removed or altered from any source distribution.
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
   112
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
   113
  Jean-loup Gailly        Mark Adler
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
   114
  jloup@gzip.org          madler@alumni.caltech.edu
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
   115
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
   116
If you use the zlib library in a product, we would appreciate *not*
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
   117
receiving lengthy legal documents to sign. The sources are provided
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
   118
for free but without warranty of any kind.  The library has been
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
   119
entirely written by Jean-loup Gailly and Mark Adler; it does not
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
   120
include third-party code.
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
   121
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
   122
If you redistribute modified sources, we would appreciate that you include
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
   123
in the file ChangeLog history information documenting your changes. Please
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
   124
read the FAQ for more information on the distribution of modified source
f8fe5a42c5e6 Added zlib README and updated license notes.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
   125
versions.