X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=ext%2FCompress%2FZlib%2FREADME;h=ec1aee4e6084c51f027067e074d0a3fd17162447;hb=1a6a845317ff5e6bc844195898061e5a9910928d;hp=fcfae014b2b8f2c9d2d0bb4e1f9344cbe99ae895;hpb=5e28203395c1b932bb9d2ffdf217833f7d624e58;p=p5sagit%2Fp5-mst-13.2.git diff --git a/ext/Compress/Zlib/README b/ext/Compress/Zlib/README index fcfae01..ec1aee4 100644 --- a/ext/Compress/Zlib/README +++ b/ext/Compress/Zlib/README @@ -1,26 +1,35 @@ + Compress::Zlib - Version 1.39 + Version 2.000_07 + + 9 Jan 2006 - 15 September 2005 + Copyright (c) 1995-2006 Paul Marquess. All rights reserved. + This program is free software; you can redistribute it + and/or modify it under the same terms as Perl itself. - Copyright (c) 1995-2005 Paul Marquess. All rights reserved. - This program is free software; you can redistribute it and/or - modify it under the same terms as Perl itself. - The directory zlib-src contains a subset of the source files copied - directly from zlib version 1.2.3. These files are Copyright(C) - 1995-2005 Jean-loup Gailly and Mark Adler. - Full source for the zlib library is available at + The directory zlib-src contains a subset of the + source files copied directly from zlib version 1.2.3. + These files are Copyright(C) 1995-2005 + Jean-loup Gailly and Mark Adler. + Full source for the zlib library is available at http://www.zlib.org + WARNING + THIS IS BETA CODE. + + DO NOT use in production code. + Please report any problems. + DESCRIPTION ----------- This module provides a Perl interface to most of the zlib compression -library. For more details see the pod documentation embedded in the -file Zlib.pm. +library. For more details see the pod documentation embedded in the file +Zlib.pm. If you have downloaded this module in the expectation of manipulating the contents of .zip files, you will need to fetch and build the Archive::Zip @@ -29,6 +38,8 @@ module below once you have installed this one. http://www.cpan.org/modules/by-module/Archive/Archive-Zip-*.tar.gz + + PREREQUISITES ------------- @@ -90,13 +101,11 @@ library is used: 3. Use a pre-built zlib library. Note that if you intend to use either Option 2 or 3, you need to have -zlib version 1.0.6 or better. Although this module can build with old -versions of zlib, it is strongly recommended that you use the most recent -version of zlib available. +zlib version 1.0.5 or better. The contents of the file config.in are used to control which of the -three options is actually used. This file is used during the +three options is actually used. This file is read during the perl Makefile.PL @@ -111,28 +120,30 @@ before building this module. For option 1, edit the file config.in and set the variables in it as follows: - BUILD_ZLIB = True - INCLUDE = ./zlib-src - LIB = ./zlib-src - OLD_ZLIB = False + BUILD_ZLIB = True + INCLUDE = ./zlib-src + LIB = ./zlib-src + OLD_ZLIB = False + GZIP_OS_CODE = AUTO_DETECT Option 2 -------- For option 2, fetch a copy of the zlib source distribution from - http://www.zlib.org and unpack it into the Compress::Zlib source - directory. Assuming you have fetched zlib 1.1.4, it will create a - directory called zlib-1.1.4. + http://www.zlib.org and unpack it into the Compress::Zlib source directory. + Assuming you have fetched zlib 1.2.3, it will create a + directory called zlib-1.2.3. Now set the variables in the file config.in as follows (if the version - you have fetched isn't 1.1.4, change the INCLUDE and LIB variables - appropriately): + you have fetched isn't 1.2.3, change the INCLUDE and LIB + variables appropriately): - BUILD_ZLIB = True - INCLUDE = ./zlib-1.1.4 - LIB = ./zlib-1.1.4 - OLD_ZLIB = False + BUILD_ZLIB = True + INCLUDE = ./zlib-1.2.3 + LIB = ./zlib-1.2.3 + OLD_ZLIB = False + GZIP_OS_CODE = AUTO_DETECT Option 3 @@ -148,21 +159,53 @@ before building this module. Secondly, find the directory where the file zlib.h is stored. Now set the INCLUDE variable in the config.in file to that directory. - Next set BUILD_ZLIB to False + Next set BUILD_ZLIB to False. Finally, if you are running zlib 1.0.5 or older, set the OLD_ZLIB variable to True. Otherwise set it to False. As an example, if the zlib library on your system is in /usr/local/lib, - zlib.h is in /usr/local/include and zlib is more older than version + zlib.h is in /usr/local/include and zlib is more recent than version 1.0.5, the variables in config.in should be set as follows: - BUILD_ZLIB = False - INCLUDE = /usr/local/include - LIB = /usr/local/lib - OLD_ZLIB = True + BUILD_ZLIB = False + INCLUDE = /usr/local/include + LIB = /usr/local/lib + OLD_ZLIB = False + GZIP_OS_CODE = AUTO_DETECT +Setting the Gzip OS Code +------------------------ + +Every gzip stream stores a byte in its header to identify the Operating +System that was used to create the gzip stream. When you build +Compress::Zlib it will attempt to determine the value that is correct for +your Operating System. This will then be used by IO::Gzip as the default +value for the OS byte in all gzip headers it creates. + +The variable GZIP_OS_CODE in the config.in file controls the setting of +this value when building Compress::Zlib. If GZIP_OS_CODE is set to +AUTO_DETECT, Compress::Zlib will attempt to determine the correct value for +your Operating System. + +Alternatively, you can override auto-detection of the default OS code and +explicitly set it yourself. Set the GZIP_OS_CODE variable in the config.in +file to be a number between 0 and 255. For example + + GZIP_OS_CODE = 3 + +See RFC 1952 for valid OS codes that can be used. + +If you are running one of the less popular Operating Systems, it could be +that the default value picked by this module is incorrect or the default +value (3) is used when there is a better value available. When +Compress::Zlib cannot determine what operating system you are running, it +will use the default value 3 for the OS code. + +If you find you have to change this value, because you think the value auto +detected is incorrect, please take a few moments to contact the author of +this module. TROUBLESHOOTING @@ -201,7 +244,6 @@ Try removing the one you don't want to use and rebuild. - Solaris build fails with "language optional software package not installed" --------------------------------------------------------------------------- @@ -222,7 +264,7 @@ lived in /usr/ucb. To continue with building this module, you need to get a C compiler, or tell Perl where your C compiler is, if you already have one. -Assuming you have now got a C compiler, what you do next will be dependant +Assuming you have now got a C compiler, what you do next will be dependent on what C compiler you have installed. If you have just installed Sun's C compiler, you shouldn't have to do anything. Just try rebuilding this module. @@ -273,6 +315,22 @@ The solution is either: mileage may vary. +The t/17isize Test Suite +------------------------ + +This test suite checks that Compress::Zlib can cope with gzip files +that are larger than 2^32 bytes. + +By default these test are NOT run when you do a "make test". If you +really want to run them, you need to execute "make longtest". + +Be warned though -- this test suite can take hours to run on a slow box. + +Also, due to the way the tests are constructed, some architectures will +run out of memory during this test. This should not be considered a bug +in the Compress::Zlib module. + + HP-UX Notes ----------- @@ -333,25 +391,6 @@ instructions given at the start of this file. -Mac OX X Notes --------------- - -Some versions of Mac OS X are failing a number of the tests in the -06gzdopen.t test harness. - -The functionality being exercised in these tests is checking that it is -possible to call gzopen with an existing Perl filehandle instead of a -filename. For some reason it does not seem possible to extract a -numeric file descriptor (using fileno) from a FILE* and then make use -of it. - -If you happen to now how to fix for this, I would like to hear from you. - -In the meantime, a workaround that has been reported to me is to use fink, -available at http://fink.sourceforge.net - - - FEEDBACK --------