# # spec file for package star # # Copyright (c) 2015 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/ # Name: star Version: 1.5.3 Release: 91.2 Summary: POSIX.1-2001-Compliant Tar Implementation License: CDDL-1.0 Group: Productivity/Archiving/Backup Url: http://cdrecord.berlios.de/old/private/star.html Source0: http://sourceforge.net/projects/s-tar/files/%{name}-%{version}.tar.bz2 Source1: README-FIRST Source2: tests.tar.bz2 # PATCH-FIX-SUSE: some default values for configuration/comilation Patch0: star-configuration.diff # PATCH-FIX-SUSE: do not run FSYNC by default Patch1: star-no_fsync.diff # PATCH-FIX-UPSTREAM: Implement selinux Patch2: star-selinux.patch Patch3: star-lock.diff # PATCH-FIX-OPENSUSE-bnc#858660 Patch4: bnc#858660_detect_gzip_failures.patch # PATCH-FIX-UPSTRTEAM: Fix segfault when using selinux and no xattr Patch5: star-1.5.1-selinux-segfault.patch # PATCH-FIX-UPSTREAM: Fix bufferoverflow Patch6: star-1.5.2-bufferoverflow.patch # PATCH-FIX-SUSE: Use ssh by default Patch7: star-1.5.2-use-ssh-by-default.patch # PATCH-FIX-UPSTREAM: Segfault on pax -X Patch8: star-1.5.3-pax-X-option.patch # PATCH-FIX-UPSTREAM: Fix broken star.mk in 1.5.3 (included from all.mk) Patch9: star-1.5.3-star-mk.patch BuildRequires: autoconf BuildRequires: e2fsprogs-devel BuildRequires: libacl-devel BuildRequires: libattr-devel BuildRequires: libselinux-devel BuildRequires: libtool Provides: rmt BuildRoot: %{_tmppath}/%{name}-%{version}-build BuildArch: i486 %package -n spax Summary: Portable archive exchange Group: Productivity/Archiving/Backup Requires: star = %{version} Provides: pax = 3.5 Obsoletes: pax < 3.5 %description Star is a tar like archiver. TAR stands for Tape ARchiver. Star is the fastest known implementation of a tar archiver. Features: - FIFO to keep the tape streaming. - remote tape support. - accurate sparse files (if the OS supports it). - pattern matcher to archive and extract a subset of files. - user tailorable interface for comparing tar archives against file trees. - path names up to 1024 Bytes may be archived. - stores and restores all 3 file times (even creation time). With POSIX.1-2001 the times are in nanosecond granularity. %description -n spax The pax utility shall read and write archives, write lists of the members of archive files and copy directory hierarchies as is defined in IEEE Std 1003.1. %prep %setup -q -T -b 2 -n tests -b 0 -n star-%{version} %patch0 -p1 %patch1 -p1 #%patch2 -p1 %patch3 %patch4 -p1 #%patch5 -p1 %patch6 -p1 %patch7 -p1 %patch8 -p1 %patch9 -p1 cp %{SOURCE1} . for PLAT in %arm ppc ppc64 ppc64le x86_64 s390 s390x; do for AFILE in gcc cc; do [ ! -e RULES/${PLAT}-linux-${AFILE}.rul ] \ && ln -s i586-linux-${AFILE}.rul RULES/${PLAT}-linux-${AFILE}.rul done done # disable single "fat" binary cp -a star/all.mk star/Makefile %build # x86 is special %ifarch %ix86 FLAGS="`echo %{optflags} | sed -e 's/\-fomit-frame-pointer//g'`" %else FLAGS="%{optflags}" %endif # This is config/work-around for atypical build system. Variables used are # docummented makefiles.5. GMAKE_NOWARN silences irritating warnings in # GNU/Linux ecosystem. %global make_flags GMAKE_NOWARN=true \\\ RUNPATH= \\\ LDPATH= \\\ PARCH=%{_target_cpu} \\\ K_ARCH=%{_target_cpu} \\\ INS_BASE=%{buildroot}%{_prefix} \\\ INS_RBASE=%{buildroot} \\\ INSTALL='sh $(SRCROOT)/conf/install-sh -c -m $(INSMODEINS)' \\\ COPTX="$FLAGS -DTRY_EXT2_FS" \\\ DEFCCOM=gcc MAKEPROG=gmake MANDIR=man cp %{SOURCE1} . make %{?_smp_mflags} %{make_flags} %install # we need to create all these directories install -d %{buildroot}/sbin install -d %{buildroot}%{_bindir} install -d %{buildroot}%{_sysconfdir}/default install -d %{buildroot}%{_docdir}/star install -d %{buildroot}%{_datadir}/share/man/man1/ make %{make_flags} install %{?_smp_mflags} install -m 644 rmt/rmt.dfl %{buildroot}%{_sysconfdir}/default/rmt install -m 644 star/star.dfl %{buildroot}%{_sysconfdir}/default/star mv %{buildroot}%{_sbindir}/rmt %{buildroot}/sbin # lot of tools assume this location ln -sf ../sbin/rmt %{buildroot}%{_sysconfdir}/rmt ln -sf ./star %{buildroot}%{_bindir}/ustar # Create compatibilty link for LSB. ln -sf spax %{buildroot}%{_bindir}/pax # Install docu install AN* PORTING README Changelog CDDL.Schily.txt CDDL.Sun.txt README.* TODO %{buildroot}/%{_docdir}/star/ # do not ship these rm -f %{buildroot}%{_bindir}/tar rm -rf %{buildroot}/%{_prefix}/{lib,include,bin/mt} \ %{buildroot}%{_mandir}/man[35] \ %{buildroot}%{_mandir}/man1/{gnutar,scpio,smt,suntar,mt}.1 \ %{buildroot}%{_bindir}/{gnutar,scpio,suntar,star_sym} %check cd %{_builddir}/tests export PATH=%{buildroot}%{_prefix}/bin:$PATH # FAILS: 36 commands (30 passed, 6 failed) make %{?_smp_mflags} || : %files %defattr(-, root, root) %dir %{_docdir}/star %docdir %{_docdir}/star %attr(644,root,root) %{_docdir}/star/* %dir %{_datadir}/doc/rmt/ %docdir %{_datadir}/doc/rmt/ %attr(644,root,root) %{_datadir}/doc/rmt/* %config(noreplace) %attr(644, root, root) %{_sysconfdir}/default/rmt %config(noreplace) %attr(644, root, root) %{_sysconfdir}/default/star %{_bindir}/smt %{_bindir}/star %{_bindir}/tartest %{_bindir}/ustar /sbin/rmt %{_sysconfdir}/rmt %{_mandir}/man1/match.1.gz %{_mandir}/man1/rmt.1.gz %{_mandir}/man1/star.1.gz %{_mandir}/man1/tartest.1.gz %files -n spax %defattr(-, root, root) %doc %{_mandir}/man1/spax.1* %{_bindir}/pax %{_bindir}/spax %changelog * Mon Feb 23 2015 kstreitova@suse.com - remove /usr/share/man/man1/mt.1.gz man page because this causes a conflict with cpio package. * Fri Feb 20 2015 tchvatal@suse.com - Fix build on i586 * Fri Feb 20 2015 tchvatal@suse.com - Do not install docu that describes how to compile - Convert spec file and changelog to UTF8 * Thu Feb 19 2015 mpluskal@suse.com - Cleanup install section * Thu Feb 19 2015 tchvatal@suse.com - Copy testsuite run to %%check phase - Fix the install phase to pass * Thu Feb 19 2015 tchvatal@suse.com - Add few patches from fedora: * star-1.5.1-selinux-segfault.patch * star-1.5.2-bufferoverflow.patch * star-1.5.2-use-ssh-by-default.patch * star-1.5.3-pax-X-option.patch * star-1.5.3-star-mk.patch * Thu Feb 19 2015 tchvatal@suse.com - Remove german from README-FIRST * Thu Feb 19 2015 tchvatal@suse.com - Version bump to 1.5.3 release, Various changes without changelog - Upstream moved to sourceforge - Libtool is needed always, so stop the if conditions around it - Refresh few patches: * star-configuration.diff * star-no_fsync.diff * star-lock.diff * star-selinux.patch * bnc#858660_detect_gzip_failures.patch - Obsoleted patch: * rmt-move.diff * star-getline.diff * star-fexecve.diff * star-1.5.1-bufferoverflow.patch * Thu Jan 29 2015 kukuk@suse.de - Add missing requires for star main package * Thu Jan 29 2015 kukuk@suse.de - Create subpackage with spax binary and compatibility link for pax. This is needed for LSB compatibility. * Mon May 26 2014 vdziewiecki@suse.com -Fix Bug 858660 - star does not detect gzip failures: bnc#858660_detect_gzip_failures.patch * Mon Dec 9 2013 dvaleev@suse.com - enable ppc64le * Sun Jun 16 2013 jengelh@inai.de - Explicitly list libattr-devel as BuildRequires - Remove redundant %%clean section. * Wed Mar 20 2013 schwab@suse.de - Port baroque configuration system to aarch64 * Tue Jun 19 2012 cfarrell@suse.com - license update: CDDL-1.0 SPDX format * Wed Jan 4 2012 meissner@suse.de - for ppc64, we need to do the stuff that suse_update_config did. * Wed Dec 21 2011 coolo@suse.com - add autoconf as buildrequire to avoid implicit dependency * Wed Dec 21 2011 coolo@suse.com - remove call to suse_update_config (very old work around) * Fri Sep 30 2011 agraf@novell.com - fix build on armv7 * Wed Jul 28 2010 puzel@novell.com - star-1.5.1-bufferoverflow.patch (bnc#625527) * Sun Jun 7 2009 ro@suse.de - rename getline to my_getline to avoid collision with function from glibc - rename fexecve to my_fexecve to avoid collision with function from glibc * Tue Mar 10 2009 werner@suse.de - Set read lock before using the semaphore wait on a pipe fd to avoid deadlock (bnc#414251) * Wed Aug 20 2008 mkoenig@suse.de - enable SELinux support [fate#303662] * Tue Apr 29 2008 mkoenig@suse.de - set version to 1.5final to avoid update problem with previous version number 1.5a70. * Mon Apr 28 2008 skh@suse.de - update to version 1.5 final (see Changelog in package documentation for all changes) - remove patch star-CVE-2007-4134.patch (is upstream now) - don't build with -D_GNU_SOURCE * Fri Aug 31 2007 mkoenig@suse.de - fix directory traversal vulnerability CVE-2007-4134 [#302489] * Mon Sep 11 2006 jw@suse.de - remove unused GPL code. Fixing #134113 * Wed May 10 2006 mmj@suse.de - compile with RPM_OPT_FLAGS [#170464] * Wed Jan 25 2006 mls@suse.de - converted neededforbuild to BuildRequires * Tue Dec 20 2005 mmj@suse.de - update to 1.5a70 o null.diff is upstream * Fri Dec 9 2005 ro@suse.de - disable selinux * Tue Nov 22 2005 mmj@suse.de - ustar should link to star [#134107] * Tue Nov 15 2005 uli@suse.de - link armv4l build rules to armv5tel (aka QEMU) * Mon Jul 25 2005 nadvornik@suse.cz - install symlink /etc/rmt -> /sbin/rmt - provide rmt * Thu Jul 21 2005 mmj@suse.de - Disable fsync again [#97500] - Enable null.diff * Wed Jul 20 2005 mmj@suse.de - Move rmt to /sbin [#97266] * Tue Jun 28 2005 agruen@suse.de - null.diff: Add -null option to star (patch from Björn Jacke). * Fri Feb 18 2005 agruen@suse.de - The new version also needs e2fsprogs-devel for some defines. * Wed Feb 16 2005 agruen@suse.de - star-acl-fix.diff: Drop this patch: it contains a bug (#50874) and nothing else that would be useful. * Wed Feb 16 2005 agruen@suse.de - Update to version 1.5a58-pre2. * Wed Feb 16 2005 agruen@suse.de - Add support for the ext3 'j' flag (per-file data journaling). * Wed Aug 11 2004 mmj@suse.de - Update to star-1.5a44 * Fri Jul 9 2004 mmj@suse.de - Update to star-1.5a41 and move stuff from %%prep to %%build * Mon Mar 15 2004 kukuk@suse.de - Add SELinux support * Fri Mar 5 2004 mmj@suse.de - Fix testsuite * Thu Mar 4 2004 mmj@suse.de - Update to 1.5a38 * Sat Jan 10 2004 adrian@suse.de - fix user build * Mon Oct 13 2003 agruen@suse.de - Upgrade to version 1.5a30. * Mon Sep 15 2003 agruen@suse.de - Upgrade to version 1.5a25. - Another fix in star-acl-fix.diff. - Rename star-alpha (ver. 1.5a25) to star, and drop star 1.4.3. * Wed Sep 10 2003 agruen@suse.de - Upgrade to version 1.5a24. - Fix restoring of archives that contain broken acls. * Thu Aug 21 2003 agruen@suse.de - Fix bug in xattr patch that causes star to crash. * Sun Jul 27 2003 agruen@suse.de - Update to version 1.5a17. - Don't do fsync for extracted files. - Remove files that won't be packaged. - Include tartest binary and manpage. - Add test suite for acls and extended atributes. * Tue Mar 4 2003 agruen@suse.de - Split star-1.5 package from from star. Upgrade to latest alpha version. * Tue Feb 25 2003 agruen@suse.de - Fix several shortcomings and some bugs in the EA handling patch. (EA support in star on 8.2 beta 2 is broken -- which doesn't matter so much, since it's a new feature, anyway.) * Mon Feb 24 2003 agruen@suse.de - Add Extended Attributes handling patch. (Still needs to be discussed much forther with Jörg Schilling, so it is quite likely to change again soon.) * Wed Jan 22 2003 agruen@suse.de - Update to 1.4.2, which includes the fix from Oct 29. - names-with-spaces.diff fixes a bug with spaces in user/group names of ACL entries. - Update the Source tag in the spec file to the new FTP server (was: ftp://ftp.fokus.gmd.de/pub/unix/star/%%{name}-%%{version}.tar.bz2) * Fri Dec 13 2002 ro@suse.de - updated neededforbuild * Tue Oct 29 2002 pthomas@suse.de - Apply patch from agruen@suse.de to fix archive corruption. * Fri Aug 16 2002 pthomas@suse.de - Fix typo in README.SuSE - Add acl,acl-devel, and attr to neededforbuild to make star support ACLs * Tue Jun 25 2002 pthomas@suse.de - Update to bugfix release 1.4.1 * Mon Jun 3 2002 pthomas@suse.de - Add rules for ppc64-linux as symlinks to i586-linux. * Wed May 29 2002 pthomas@suse.de - Install /etc/default/rmt as %%config(noreplace) - Add README.SuSE explaining configuration and setup for using rmt. - Fix rmt manpage. - Only install smt, as cpio provides mt. - Don't install makefiles.5 and makerules.5 - Define _GNU_SOURCE unconditionally and modify sources so that declarations for fexecve and getline don't clash. * Tue May 28 2002 sf@suse.de - %%_lib fixes * Mon May 27 2002 ro@suse.de - fixed typo in specfile * Mon May 27 2002 pthomas@suse.de - Initial package creation.