# # spec file for package bzip2 (Version 1.0.4) # # Copyright (c) 2008 SUSE LINUX Products GmbH, Nuernberg, Germany. # This file and all modifications and additions to the pristine # package are under the same license as the package itself. # # Please submit bugfixes or comments via http://bugs.opensuse.org/ # # norootforbuild Name: bzip2 Version: 1.0.4 Release: 69 Provides: bzip Obsoletes: bzip # The following is a kludge to get updating bzip2 to after the split work PreReq: libbz2-1 AutoReqProv: on Group: Productivity/Archiving/Compression License: BSD 3-Clause Url: http://www.bzip.org/ Summary: A Program for Compressing Files Source: bzip2-%{version}.tar.gz Source1: bznew.gz Source2: bznew.1.gz Source100: rpmlintrc Patch1: bzip2-shared_lib.patch Patch2: bzip2-maxlen20.patch Patch3: bzip2-faster.patch Patch4: bzip2-CVE-2008-1372-CERT-FI-20469.patch BuildRoot: %{_tmppath}/%{name}-%{version}-build %description The bzip2 program is a very powerful program for compressing files. Authors: -------- Julian Seward %package doc Summary: The bzip2 program and Library Documentation Group: Productivity/Archiving/Compression %description doc The bzip2 program and library documentation. Authors: -------- Julian Seward %package -n libbz2-1 Summary: The bzip2 runtime library Group: Productivity/Archiving/Compression %description -n libbz2-1 The bzip2 runtime library Authors: -------- Julian Seward %package -n libbz2-devel Summary: The bzip2 runtime library development files Group: Development/Libraries/Other Requires: libbz2-1 = %{version} %description -n libbz2-devel The bzip2 runtime library development files. Authors: -------- Julian Seward %prep %setup -q %patch1 %patch2 %patch3 %patch4 -p1 %build profile_bzip2() { tmpfile=$(mktemp) trap "rm -f $tmpfile $tmpfile.gz" EXIT tar -cjf $tmpfile.bz2 /usr/src || true # time ./bzip2 $tmpfile export LD_PRELOAD=$PWD/libbz2.so time ./bzip2 -d < $tmpfile.bz2 > /dev/null unset LD_PRELOAD } export CFLAGS="$RPM_OPT_FLAGS -D_FILE_OFFSET_BITS=64 -Wall -Winline -fpic" %if %{do_profiling} make CFLAGS="$CFLAGS %{cflags_profile_generate}" LIBDIR=%{_libdir} %{?jobs:-j %jobs} bzip2 profile_bzip2 make clean make CFLAGS="$CFLAGS %{cflags_profile_feedback}" LIBDIR=%{_libdir} %{?jobs:-j %jobs} bzip2 %endif make CFLAGS="$CFLAGS" LIBDIR=%{_libdir} %{?jobs:-j %jobs} %install make PREFIX=$RPM_BUILD_ROOT%{_prefix} MANDIR=$RPM_BUILD_ROOT%{_mandir} \ LIBDIR=$RPM_BUILD_ROOT%{_libdir} install gzip -9 manual.ps gzip -dc %{SOURCE1} > bznew install -D -m 755 bznew $RPM_BUILD_ROOT%{_bindir}/bznew install -m 644 %{SOURCE2} $RPM_BUILD_ROOT%{_mandir}/man1 install -m 755 -d $RPM_BUILD_ROOT/%{_lib}/ mv $RPM_BUILD_ROOT%{_libdir}/libbz2.so $RPM_BUILD_ROOT/%{_lib}/libbz2.so.%{version} ln -sf libbz2.so.%{version} $RPM_BUILD_ROOT/%{_lib}/libbz2.so.1 ln -sf ../../%{_lib}/libbz2.so.%{version} $RPM_BUILD_ROOT%{_libdir}/libbz2.so %clean rm -rf $RPM_BUILD_ROOT %post -n libbz2-1 -p /sbin/ldconfig %postun -n libbz2-1 -p /sbin/ldconfig %files %defattr(-,root,root) %doc README LICENSE CHANGES %doc %{_mandir}/man1/* %{_bindir}/* %files doc %defattr(-,root,root) %doc manual.ps.gz manual*.html %files -n libbz2-1 %defattr(-,root,root) %doc README LICENSE CHANGES /%{_lib}/libbz2.so.1 /%{_lib}/libbz2.so.1.* %files -n libbz2-devel %defattr(-,root,root) %{_includedir}/bzlib.h %{_libdir}/libbz2.a %{_libdir}/libbz2.so %changelog * Wed Mar 19 2008 nadvornik@suse.cz - fixed buffer overflows CVE-2008-1372 [bnc#372047] * Thu Dec 06 2007 lmichnovic@suse.cz - bznew can now repack also .tar.gz files [#342612] The dot in suffix is explicitly checked * Thu Nov 08 2007 lmichnovic@suse.cz - added README, LICENSE, CHANGES files to libbz2-1 package * Mon Jun 04 2007 schwab@suse.de - Fix dependency. * Wed May 30 2007 lmichnovic@suse.cz - renamed lib to libbz2-1 according to Shared Library Packaging Policy - calling ldconfig for libbz2-1 package * Sat May 26 2007 dmueller@suse.de - build with profile feedback enabled (7-15%% speedup) * Fri Mar 30 2007 rguenther@suse.de - Add PreReq to libbz2 from bzip2 to work around update problems * Fri Mar 23 2007 rguenther@suse.de - Split off doc, libbz2 and libbz2-devel packages * Mon Jan 15 2007 lmichnovic@suse.cz - Update to version 1.0.4 * Fixes some minor bugs since the last version, 1.0.3. * Fix file permissions race problem (CAN-2005-0953). * Avoid possible segfault in BZ2_bzclose. From Coverity's NetBSD scan. * 'const'/prototype cleanups in the C code. * Change default install location to /usr/local, and handle multiple 'make install's without error. * Sanitise file names more carefully in bzgrep. Fixes CAN-2005-0758 to the extent that applies to bzgrep. * Use 'mktemp' rather than 'tempfile' in bzdiff. * Tighten up a couple of assertions in blocksort.c following automated analysis. * Fix minor doc/comment bugs. * Mon Oct 16 2006 dmueller@suse.de - strip .la files * Wed Jan 25 2006 mls@suse.de - converted neededforbuild to BuildRequires * Wed Jan 18 2006 schwab@suse.de - Don't strip binaries. * Fri Aug 12 2005 mls@suse.de - make decompress much faster - compile with -O3 - go back to maxlen=20 when compressing * Fri Aug 05 2005 ro@suse.de - next libdir: only package lib* * Fri Aug 05 2005 ro@suse.de - do not package all of libdir (debuginfo) * Mon Aug 01 2005 mjancar@suse.cz - update to 1.0.3 * Tue Jun 28 2005 kukuk@suse.de - Move shared libraries to /%%{_lib} * Thu Mar 24 2005 werner@suse.de - Add bznew, a changeed version of the gzip znew. * Tue Apr 20 2004 mmj@suse.de - Fix strict aliasing * Sun Jan 11 2004 adrian@suse.de - add %%defattr and %%run_ldconfig * Wed Jul 23 2003 tcrhak@suse.cz - fixed URL * Tue Jul 23 2002 tcrhak@suse.cz - renamed to bzip2 * Tue Feb 05 2002 tcrhak@suse.cz - update to version 1.0.2 - bziped tarball * Thu Mar 08 2001 nadvornik@suse.cz - re-added /usr/include/bzlib.h * Thu Mar 08 2001 bk@suse.de - Replaced the -malign options with -mcpu=pentiumpro * Tue Mar 06 2001 bk@suse.de - add version info to libbz2 link to fix the library version number - if i386, add -malign-loops=2 -malign-jumps=2 -malign-functions=2 * Thu Nov 30 2000 aj@suse.de - New version, compile with LFS support. * Tue Oct 03 2000 kukuk@suse.de - Set libdir for 64bit architectures * Mon May 22 2000 nadvornik@suse.cz - update to 1.0.0 * Wed Apr 26 2000 nadvornik@suse.cz - changed Group * Mon Apr 10 2000 nadvornik@suse.cz - added URL * Tue Apr 04 2000 nadvornik@suse.cz - fixed to compile * Mon Apr 03 2000 bk@suse.de - added libbz2 shared library support for s390 * Thu Mar 02 2000 fehr@suse.de - moved man pages to /usr/share/man * Mon Sep 13 1999 bs@suse.de - ran old prepare_spec on spec file to switch to new prepare_spec. * Mon Sep 13 1999 fehr@suse.de - update to 0.9.5d * Thu Jul 01 1999 ro@suse.de - update to 0.9.0c * Fri Sep 18 1998 ro@suse.de - update to 0.9.0b (including libbz2 and bzlib.h) * Thu Oct 30 1997 fehr@suse.de - add bzip package to S.u.S.E. distribution