The Bzip2 package contains programs for compressing and decompressing files. Compressing text files with bzip2 yields a much better compression percentage than with the traditional gzip.
Apply a patch to install the documentation for this package:
patch -Np1 -i ../bzip2-1.0.3-install_docs-1.patch
The bzgrep command does not escape '|' and '&' in filenames passed to it. This allows arbitrary commands to be executed with the privileges of the user running bzgrep. Apply the following to address this:
patch -Np1 -i ../bzip2-1.0.3-bzgrep_security-1.patch
The bzdiff script still uses the deprecated tempfile program. Update it to use mktemp instead:
sed -i 's@tempfile -d /tmp -p bz@mktemp -p /tmp@' bzdiff
Prepare Bzip2 for compilation with:
make -f Makefile-libbz2_so make clean
The meaning of the make parameter:
This will cause Bzip2 to be built using a different Makefile file, in this case the Makefile-libbz2_so file, which creates a dynamic libbz2.so library and links the Bzip2 utilities against it.
Compile and test the package:
make
If reinstalling Bzip2, perform rm -vf /usr/bin/bz* first, otherwise the following make install will fail.
Install the programs:
make install
Install the shared bzip2 binary into the /bin directory, make some necessary symbolic links, and clean up:
cp -v bzip2-shared /bin/bzip2 cp -av libbz2.so* /lib ln -sv ../../lib/libbz2.so.1.0 /usr/lib/libbz2.so rm -v /usr/bin/{bunzip2,bzcat,bzip2} ln -sv bzip2 /bin/bunzip2 ln -sv bzip2 /bin/bzcat