bzip2/bzip2.spec

133 lines
3.9 KiB
RPMSpec
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

#
# spec file for package bzip2
#
# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
%define libname libbz2-1
Name: bzip2
Version: 1.0.6
Release: 0
Summary: A Program for Compressing Files
License: BSD-3-Clause
Group: Productivity/Archiving/Compression
Url: http://www.bzip.org/
Source: http://www.bzip.org/1.0.6/bzip2-%{version}.tar.gz
Source1: bznew.gz
Source2: bznew.1.gz
Source3: baselibs.conf
Source100: bzip2-rpmlintrc
# PATCH-FEATURE-OPENSUSE bzip2-1.0.6-autoconfiscated.patch sbrabec@suse.cz -- Convert to a standard autoconf based package.
Patch0: http://ftp.suse.com/pub/people/sbrabec/bzip2/for_downstream/bzip2-1.0.6-autoconfiscated.patch
Patch1: bzip2-1.0.6-fix-bashisms.patch
Patch2: bzip2-unsafe_strcpy.patch
Patch3: bzip2-point-to-doc-pkg.patch
Patch4: bzip2-ocloexec.patch
# PATCH-FIX-UPSTREAM bnc#970260 kstreitova@suse.com -- fix a wrong exit code when grepping multiple archives
Patch5: bzip2-1.0.6-bzgrep_return_value.patch
BuildRequires: autoconf >= 2.57
BuildRequires: libtool
BuildRequires: pkgconfig
# The following is a kludge to get updating bzip2 to after the split work
PreReq: %{libname}
Provides: bzip = %{version}
Obsoletes: bzip < %{version}
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%description
The bzip2 program is a very powerful program for compressing files.
%package doc
Summary: The bzip2 program and Library Documentation
Group: Productivity/Archiving/Compression
%if 0%{?suse_version} > 1130
BuildArch: noarch
%endif
%description doc
The bzip2 program and library documentation.
%package -n %{libname}
Summary: The bzip2 runtime library
Group: System/Libraries
%description -n %{libname}
The bzip2 runtime library
%package -n libbz2-devel
Summary: The bzip2 runtime library development files
Group: Development/Libraries/C and C++
Requires: %{libname} = %{version}
Requires: glibc-devel
%description -n libbz2-devel
The bzip2 runtime library development files.
%prep
%setup -q
%patch0
%patch1 -p1
%patch2
%patch3 -p1
%patch4
%patch5 -p1
autoreconf -fiv
%build
export CFLAGS="%{optflags} -fPIE"
%configure --with-pic --disable-static
make %{?_smp_mflags} LDFLAGS="-pie"
%install
make DESTDIR=%{buildroot} install %{?_smp_mflags} pkgconfigdir=%{_libdir}/pkgconfig
gzip -9 manual.ps
gzip -dc %{SOURCE1} > bznew
install -D -m 755 bznew %{buildroot}%{_bindir}/bznew
install -m 644 %{SOURCE2} %{buildroot}%{_mandir}/man1
# Steam and prolly others still use the 1.0 name, so we need to be
# compatible
# Remove this when all distros use the autotools based bzip2 release
ln -s libbz2.so.1 %{buildroot}/%{_libdir}/libbz2.so.1.0
find %{buildroot} -type f -name "*.la" -delete -print
%post -n %{libname} -p /sbin/ldconfig
%postun -n %{libname} -p /sbin/ldconfig
%check
make %{?_smp_mflags} test
%files
%defattr(-,root,root)
%{_mandir}/man1/*
%{_bindir}/*
%files doc
%defattr(-,root,root)
%doc manual.ps.gz manual*.html bzip2.txt manual.pdf
%files -n %{libname}
%defattr(-,root,root)
%{_libdir}/libbz2.so.*
%files -n libbz2-devel
%defattr(-,root,root)
%doc LICENSE CHANGES
%{_includedir}/bzlib.h
%{_libdir}/libbz2.so
%{_libdir}/pkgconfig/bzip2.pc
%changelog