tar/tar.spec
Marcus Meissner 5f0ee07258 Accepting request 227619 from home:vitezslav_cizek:branches:Base:System
- fix an infinite loop in handle_option (bnc#867919 and bnc#870422)
  * added tar-fix_eternal_loop_in_handle_option.patch

OBS-URL: https://build.opensuse.org/request/show/227619
OBS-URL: https://build.opensuse.org/package/show/Base:System/tar?expand=0&rev=53
2014-03-28 10:52:45 +00:00

166 lines
4.7 KiB
RPMSpec

#
# spec file for package tar
#
# Copyright (c) 2014 SUSE LINUX Products 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/
#
# minimum suse version where the full featured package builds
%define min_suse_ver 1010
Name: tar
Version: 1.27.1
Release: 0
Summary: GNU implementation of tar ((t)ape (ar)chiver)
License: GPL-3.0+
Group: System/Base
Url: http://www.gnu.org/software/tar/
Source0: http://ftp.gnu.org/gnu/tar/%{name}-%{version}.tar.bz2
Source1: http://ftp.gnu.org/gnu/tar/%{name}-%{version}.tar.bz2.sig
# http://wwwkeys.pgp.net:11371/pks/lookup?op=get&search=0x3602B07F55D0C732
Source2: tar.keyring
#
Patch3: tar-wildcards.patch
Patch6: tar-backup-spec-fix-paths.patch
Patch7: tar-1.26-remove_O_NONBLOCK.patch
Patch8: tar-fix_eternal_loop_in_handle_option.patch
Patch10: paxutils-rtapelib_mtget.patch
Patch20: add_readme-tests.patch
%if 0%{?suse_version} >= %min_suse_ver
BuildRequires: help2man
Recommends: tar-lang = %{version}
Recommends: xz
%endif
Requires(pre): info
Provides: base:/bin/tar
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%define _bindir /bin
%description
This package normally also includes the program "rmt", which provides
remote tape drive control. Since there are compatible versions of 'rmt'
in either the 'star' package or the 'dump' package, we didn't put 'rmt'
into this package. If you are planning to use the remote tape features
provided by tar you have to also install the 'dump' or the 'star'
package.
%package backup-scripts
Summary: Backup scripts
Group: Productivity/Archiving/Backup
Requires: %{name} = %{version}
%description backup-scripts
Shell scripts for system backup/restore
%package tests
Summary: Tests for the package
Group: Development/Tests
Requires: %{name} = %{version}
%description tests
Upstream testsuite for the package
%{?lang_package}
%prep
%setup -q
%patch3 -p1
%patch6 -p1
%patch7 -p1
%patch8 -p1
%patch10 -p1
%patch20 -p1
%build
%define my_cflags -W -Wall -Wpointer-arith -Wstrict-prototypes -Wformat-security -Wno-unused-parameter
export CFLAGS="%{optflags} %my_cflags"
export RSH="/usr/bin/rsh"
export DEFAULT_ARCHIVE_FORMAT="POSIX"
%configure \
gl_cv_func_linkat_follow="yes" \
--enable-backup-scripts \
--disable-silent-rules
make %{?_smp_mflags};
cd tests
make genfile
mkdir bin
mv genfile bin
cd -
%check
%if !0%{?qemu_user_space_build:1}
# Checks disabled in qemu because of races happening when we emulate
# multi-threaded programs
make check
%endif
%install
%{?make_install} %{!?make_install:make install DESTDIR=%{buildroot}}
%if 0%{?suse_version} >= %min_suse_ver
install -d -m 755 %{buildroot}/%{_mandir}/man1
help2man ./src/tar --name "The GNU version of the tar archiving utility" -p tar \
| gzip -c > %{buildroot}/%{_mandir}/man1/tar.1.gz
%endif
install -d -m 755 %{buildroot}%{_sysconfdir}/backup
install -D -m 644 scripts/backup-specs %{buildroot}%{_sysconfdir}/backup/backup-specs
rm -rf %{buildroot}%{_libexecdir}/rmt
rm -f %{buildroot}%{_infodir}/dir
install -d -m 755 %{buildroot}/var/lib/tests
cp -r tests %{buildroot}/var/lib/tests/tar
rm %{buildroot}/var/lib/tests/tar/*.{c,h,o}
rm %{buildroot}/var/lib/tests/tar/package.m4
rm %{buildroot}/var/lib/tests/tar/{atconfig,atlocal,Makefile}*
%find_lang %{name}
%files backup-scripts
%defattr(-,root, root)
%{_sbindir}/backup
%{_sbindir}/restore
%{_libexecdir}/backup.sh
%{_libexecdir}/dump-remind
%dir %{_sysconfdir}/backup
%config(noreplace) %{_sysconfdir}/backup/backup-specs
%if 0%{?lang_package:1}
%files lang -f %{name}.lang
%files tests
%defattr(-,root, root)
/var/lib/tests
%files
%else
%files -f %{name}.lang
%endif
%defattr(-, root, root)
%{_bindir}/tar
%doc README* ABOUT-NLS AUTHORS COPYING NEWS THANKS ChangeLog TODO
%{_infodir}/tar.info*
%if 0%{?suse_version} >= %min_suse_ver
%{_mandir}/man1/tar.1.gz
%endif
%post
%install_info --info-dir=%{_infodir} %{_infodir}/%{name}.info.gz
%postun
%install_info_delete --info-dir=%{_infodir} %{_infodir}/%{name}.info.gz
%clean
rm -rf %{buildroot}
%changelog