diff options
Diffstat (limited to 'README')
| -rw-r--r-- | README | 89 |
1 files changed, 52 insertions, 37 deletions
| @@ -1,15 +1,15 @@ | |||
| 1 | 1 | ||
| 2 | This is the README for bzip2, a block-sorting file compressor, version | 2 | This is the README for bzip2, a block-sorting file compressor, version |
| 3 | 1.0. This version is fully compatible with the previous public | 3 | 1.0.2. This version is fully compatible with the previous public |
| 4 | releases, bzip2-0.1pl2, bzip2-0.9.0 and bzip2-0.9.5. | 4 | releases, versions 0.1pl2, 0.9.0, 0.9.5, 1.0.0 and 1.0.1. |
| 5 | 5 | ||
| 6 | bzip2-1.0 is distributed under a BSD-style license. For details, | 6 | bzip2-1.0.2 is distributed under a BSD-style license. For details, |
| 7 | see the file LICENSE. | 7 | see the file LICENSE. |
| 8 | 8 | ||
| 9 | Complete documentation is available in Postscript form (manual.ps) or | 9 | Complete documentation is available in Postscript form (manual.ps), |
| 10 | html (manual_toc.html). A plain-text version of the manual page is | 10 | PDF (manual.pdf, amazingly enough) or html (manual_toc.html). A |
| 11 | available as bzip2.txt. A statement about Y2K issues is now included | 11 | plain-text version of the manual page is available as bzip2.txt. |
| 12 | in the file Y2K_INFO. | 12 | A statement about Y2K issues is now included in the file Y2K_INFO. |
| 13 | 13 | ||
| 14 | 14 | ||
| 15 | HOW TO BUILD -- UNIX | 15 | HOW TO BUILD -- UNIX |
| @@ -33,34 +33,41 @@ not actually execute them. | |||
| 33 | HOW TO BUILD -- UNIX, shared library libbz2.so. | 33 | HOW TO BUILD -- UNIX, shared library libbz2.so. |
| 34 | 34 | ||
| 35 | Do 'make -f Makefile-libbz2_so'. This Makefile seems to work for | 35 | Do 'make -f Makefile-libbz2_so'. This Makefile seems to work for |
| 36 | Linux-ELF (RedHat 5.2 on an x86 box), with gcc. I make no claims | 36 | Linux-ELF (RedHat 7.2 on an x86 box), with gcc. I make no claims |
| 37 | that it works for any other platform, though I suspect it probably | 37 | that it works for any other platform, though I suspect it probably |
| 38 | will work for most platforms employing both ELF and gcc. | 38 | will work for most platforms employing both ELF and gcc. |
| 39 | 39 | ||
| 40 | bzip2-shared, a client of the shared library, is also build, but | 40 | bzip2-shared, a client of the shared library, is also built, but not |
| 41 | not self-tested. So I suggest you also build using the normal | 41 | self-tested. So I suggest you also build using the normal Makefile, |
| 42 | Makefile, since that conducts a self-test. | 42 | since that conducts a self-test. A second reason to prefer the |
| 43 | version statically linked to the library is that, on x86 platforms, | ||
| 44 | building shared objects makes a valuable register (%ebx) unavailable | ||
| 45 | to gcc, resulting in a slowdown of 10%-20%, at least for bzip2. | ||
| 43 | 46 | ||
| 44 | Important note for people upgrading .so's from 0.9.0/0.9.5 to | 47 | Important note for people upgrading .so's from 0.9.0/0.9.5 to version |
| 45 | version 1.0. All the functions in the library have been renamed, | 48 | 1.0.X. All the functions in the library have been renamed, from (eg) |
| 46 | from (eg) bzCompress to BZ2_bzCompress, to avoid namespace pollution. | 49 | bzCompress to BZ2_bzCompress, to avoid namespace pollution. |
| 47 | Unfortunately this means that the libbz2.so created by | 50 | Unfortunately this means that the libbz2.so created by |
| 48 | Makefile-libbz2_so will not work with any program which used an | 51 | Makefile-libbz2_so will not work with any program which used an older |
| 49 | older version of the library. Sorry. I do encourage library | 52 | version of the library. Sorry. I do encourage library clients to |
| 50 | clients to make the effort to upgrade to use version 1.0, since | 53 | make the effort to upgrade to use version 1.0, since it is both faster |
| 51 | it is both faster and more robust than previous versions. | 54 | and more robust than previous versions. |
| 52 | 55 | ||
| 53 | 56 | ||
| 54 | HOW TO BUILD -- Windows 95, NT, DOS, Mac, etc. | 57 | HOW TO BUILD -- Windows 95, NT, DOS, Mac, etc. |
| 55 | 58 | ||
| 56 | It's difficult for me to support compilation on all these platforms. | 59 | It's difficult for me to support compilation on all these platforms. |
| 57 | My approach is to collect binaries for these platforms, and put them | 60 | My approach is to collect binaries for these platforms, and put them |
| 58 | on the master web page (http://sourceware.cygnus.com/bzip2). Look | 61 | on the master web page (http://sources.redhat.com/bzip2). Look there. |
| 59 | there. However (FWIW), bzip2-1.0 is very standard ANSI C and should | 62 | However (FWIW), bzip2-1.0.X is very standard ANSI C and should compile |
| 60 | compile unmodified with MS Visual C. For Win32, there is one | 63 | unmodified with MS Visual C. If you have difficulties building, you |
| 61 | important caveat: in bzip2.c, you must set BZ_UNIX to 0 and | 64 | might want to read README.COMPILATION.PROBLEMS. |
| 62 | BZ_LCCWIN32 to 1 before building. If you have difficulties building, | 65 | |
| 63 | you might want to read README.COMPILATION.PROBLEMS. | 66 | At least using MS Visual C++ 6, you can build from the unmodified |
| 67 | sources by issuing, in a command shell: | ||
| 68 | nmake -f makefile.msc | ||
| 69 | (you may need to first run the MSVC-provided script VCVARS32.BAT | ||
| 70 | so as to set up paths to the MSVC tools correctly). | ||
| 64 | 71 | ||
| 65 | 72 | ||
| 66 | VALIDATION | 73 | VALIDATION |
| @@ -138,29 +145,37 @@ WHAT'S NEW IN 0.9.5 ? | |||
| 138 | * Many small improvements in file and flag handling. | 145 | * Many small improvements in file and flag handling. |
| 139 | * A Y2K statement. | 146 | * A Y2K statement. |
| 140 | 147 | ||
| 141 | WHAT'S NEW IN 1.0 | 148 | WHAT'S NEW IN 1.0.0 ? |
| 142 | 149 | ||
| 143 | See the CHANGES file. | 150 | See the CHANGES file. |
| 144 | 151 | ||
| 152 | WHAT'S NEW IN 1.0.2 ? | ||
| 153 | |||
| 154 | See the CHANGES file. | ||
| 155 | |||
| 156 | |||
| 145 | I hope you find bzip2 useful. Feel free to contact me at | 157 | I hope you find bzip2 useful. Feel free to contact me at |
| 146 | jseward@acm.org | 158 | jseward@acm.org |
| 147 | if you have any suggestions or queries. Many people mailed me with | 159 | if you have any suggestions or queries. Many people mailed me with |
| 148 | comments, suggestions and patches after the releases of bzip-0.15, | 160 | comments, suggestions and patches after the releases of bzip-0.15, |
| 149 | bzip-0.21, bzip2-0.1pl2 and bzip2-0.9.0, and the changes in bzip2 are | 161 | bzip-0.21, and bzip2 versions 0.1pl2, 0.9.0, 0.9.5, 1.0.0 and 1.0.1, |
| 150 | largely a result of this feedback. I thank you for your comments. | 162 | and the changes in bzip2 are largely a result of this feedback. |
| 163 | I thank you for your comments. | ||
| 151 | 164 | ||
| 152 | At least for the time being, bzip2's "home" is (or can be reached via) | 165 | At least for the time being, bzip2's "home" is (or can be reached via) |
| 153 | http://www.muraroa.demon.co.uk. | 166 | http://sources.redhat.com/bzip2. |
| 154 | 167 | ||
| 155 | Julian Seward | 168 | Julian Seward |
| 156 | jseward@acm.org | 169 | jseward@acm.org |
| 157 | 170 | ||
| 158 | Cambridge, UK | 171 | Cambridge, UK (and what a great town this is!) |
| 159 | 18 July 1996 (version 0.15) | 172 | |
| 160 | 25 August 1996 (version 0.21) | 173 | 18 July 1996 (version 0.15) |
| 161 | 7 August 1997 (bzip2, version 0.1) | 174 | 25 August 1996 (version 0.21) |
| 162 | 29 August 1997 (bzip2, version 0.1pl2) | 175 | 7 August 1997 (bzip2, version 0.1) |
| 163 | 23 August 1998 (bzip2, version 0.9.0) | 176 | 29 August 1997 (bzip2, version 0.1pl2) |
| 164 | 8 June 1999 (bzip2, version 0.9.5) | 177 | 23 August 1998 (bzip2, version 0.9.0) |
| 165 | 4 Sept 1999 (bzip2, version 0.9.5d) | 178 | 8 June 1999 (bzip2, version 0.9.5) |
| 166 | 5 May 2000 (bzip2, version 1.0pre8) | 179 | 4 Sept 1999 (bzip2, version 0.9.5d) |
| 180 | 5 May 2000 (bzip2, version 1.0pre8) | ||
| 181 | 30 December 2001 (bzip2, version 1.0.2pre1) \ No newline at end of file | ||
