summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Frysinger <vapier@gentoo.org>2015-04-20 16:50:49 +0000
committerMike Frysinger <vapier@gentoo.org>2015-04-20 16:50:49 +0000
commit1bc8f062134a543c5aebe060422bb0ad24e46b64 (patch)
treee298b2405ea04570fd1dc7ef77733d2737efd583
parentKeyword ~ppc and ~ppc64. Bug #544242. (diff)
downloadhistorical-1bc8f062134a543c5aebe060422bb0ad24e46b64.tar.gz
historical-1bc8f062134a543c5aebe060422bb0ad24e46b64.tar.bz2
historical-1bc8f062134a543c5aebe060422bb0ad24e46b64.zip
Add fix from upstream for -A/-g flags #546294 by Alex Efros.
Package-Manager: portage-2.2.18/cvs/Linux x86_64 Manifest-Sign-Key: 0xD2E96200
-rw-r--r--app-arch/tar/ChangeLog10
-rw-r--r--app-arch/tar/Manifest24
-rw-r--r--app-arch/tar/files/tar-1.28-concat-listed.patch117
-rw-r--r--app-arch/tar/tar-1.28-r1.ebuild75
4 files changed, 203 insertions, 23 deletions
diff --git a/app-arch/tar/ChangeLog b/app-arch/tar/ChangeLog
index d9ed202e16d5..da4980595ecc 100644
--- a/app-arch/tar/ChangeLog
+++ b/app-arch/tar/ChangeLog
@@ -1,6 +1,12 @@
# ChangeLog for app-arch/tar
-# Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/app-arch/tar/ChangeLog,v 1.210 2014/08/12 12:17:44 vapier Exp $
+# Copyright 1999-2015 Gentoo Foundation; Distributed under the GPL v2
+# $Header: /var/cvsroot/gentoo-x86/app-arch/tar/ChangeLog,v 1.211 2015/04/20 16:49:46 vapier Exp $
+
+*tar-1.28-r1 (20 Apr 2015)
+
+ 20 Apr 2015; Mike Frysinger <vapier@gentoo.org>
+ +files/tar-1.28-concat-listed.patch, +tar-1.28-r1.ebuild:
+ Add fix from upstream for -A/-g flags #546294 by Alex Efros.
12 Aug 2014; Mike Frysinger <vapier@gentoo.org> tar-1.27.1-r2.ebuild:
Mark arm64/m68k/s390/sh stable.
diff --git a/app-arch/tar/Manifest b/app-arch/tar/Manifest
index 9cc06c5a1698..8bf36495737b 100644
--- a/app-arch/tar/Manifest
+++ b/app-arch/tar/Manifest
@@ -1,11 +1,9 @@
------BEGIN PGP SIGNED MESSAGE-----
-Hash: SHA256
-
AUX rmt 263 SHA256 c0371cb0243a190b6bb43609c86dfb4cd637882d4ff3ff9651ca7ec8d6b59355 SHA512 2f1a9d3a522fc1f0d5385d1ea4c27da88a1c9357b866340432c6310604c01d3e328e33080ed1e951c0da6f025c3ee2a0c9f170d4b86a1d235ebb56be48fef152 WHIRLPOOL 11869239f2ebbb237f8429d1f13f146fd2414e90edc2475d190f16659d052d3ac949d717939dcfc815a30942855fb26e60b6b506104876ccad32747191b04727
AUX tar-1.26-no-gets.patch 779 SHA256 80533a828c8a657ec1d585a6d3b7b2e8fcae6ba1d93d778195a185805f9a2a39 SHA512 98c54f084bb9770c69ba9ec58aff0e4182385984410e83cb93451ceda81152e4a8ddf63d3035b491153b1791888004744ae07f29866daf43e6a0caa4d067bd19 WHIRLPOOL caa81ebf934f60921e40cec889dd164154a43750034d9383e98d3755fdaa9e1f5c6d3a7714b8bcf25d86f41b944dc95c16126af0a6670eedd7939b3b2fe2fc10
AUX tar-1.26-xattr.patch 29828 SHA256 ce2b67c9fca5e610e117e11485f11bea5d4c6b053392c97825da7f7e65e9d043 SHA512 c8b88b7b9dc642344882d70903dd1657980e05100a618c9919f096e5599954120f6412226e15a827f166db2016c6a7558b07336e14a1a703f27d20339b9d8ace WHIRLPOOL f7e15d70a38b1ea9d6f6a6a3e1357a9c869306420d8ff0a4e325ccfda02fbd6e91fce7c5ca59a35fac43d9c75aae5d508c9eefff781454fe8ed1948537a8dbfd
AUX tar-1.27.1-recursion_norecursion.patch 765 SHA256 2232bcf904f9cc0a1a485549baf229b741d13fa89b69f8d112846c5f4f8ee0b0 SHA512 6b9a8c9a9f1d8a6c96137353a86c77c170d8f3bdc348c99a1147c950b43780aa896f0d8e1c0c1c70a044a0169f445f2ee6ca89ea680729062bf4f73f93a99ef1 WHIRLPOOL dfef48b1df29c53ff0aacbf7958c9101faf591d98f0e843b22185cd979e5e5d694b5c02b69f692c47f840f214d5bbffdf8cacb043fe1c901a30bd2df218a1643
AUX tar-1.27.1-xattr_build_fix.patch 5762 SHA256 a23332692959044ecc281a93de19de2ac7c37c56971d6aa541adf2fd3bc74251 SHA512 d44322734813ec201567d389deffc94f6a08c2f83c93d495f18451666409465a3ad577ca7f4c540d8ca668dd4d3f77d327fdf32669ec8e932d12e8d819f8c5ab WHIRLPOOL 1245479b74b1f11aabbe29f55b90eb7c179f6c8175f77f43f409e58b71b11026dd3f882665c10e777ae3837c1e5fac2ddd0e8f9d241a9a6d694a2ccb20ae38b5
+AUX tar-1.28-concat-listed.patch 3387 SHA256 a77e7d9d2ae7efd68a3f6b6342ebd8a822c32e689ff5bd61f78a39ee6e40b281 SHA512 990c0de7a3d83b149413857d18ac0a654fd68ebe5c0d972e4ea5ebc5c9b17750355959da549c6314213bd47a2befff1c01df21e2378800ca39dd94d2cdf8df36 WHIRLPOOL 47e031b2ba1e22f9536d8db8071201ce0a9384d8df9415db9e73724827ff70a7883be0e01bb75e7e6adc6f5d8a1b34368ee5a38f4c57fa4f2ec914f8b7300a41
AUX tar.1 16744 SHA256 47100e0f1dcaeee56b99083d8bb6fb398be701030f0a72439a1b4de31ac701d3 SHA512 1d0cc0449b4e9dbd0693d2ec678629f5dae47b7c25268a754fab07bb422957aded103164c096f12bf21dd12d08622067a26e1ac8d38cda0dfd9320e8ab7cb134 WHIRLPOOL f817e98f978ad0f79a6a8512038174e3438e3c5f5240d0191a0afb8c2e9a4a203c0b2a7e33125d1b3f8632f54851d2ba0d55ae6e141b7703988f4086a39b40af
AUX tar.1-1.27 13442 SHA256 fd1410214bad29525c08fc0fe499c8807c4cc648c7d56ba83bf429a2c43fdffd SHA512 4810df7e549713287e74a4de7113f2ba41bd96173829313d123be7ac9d74242d3d39ef17604761fbcc607cdd72ada0bcc26c99de5867cab5c1d0e9410131707b WHIRLPOOL ad8847f9d7f3395d42e9500aed6aa43cef2791e034e54c192a6ecef4953b8ba415dbfe1ddda4b113031c9aeb409e0630bc8b432f17ae28e905afa9b1d2b459a6
DIST tar-1.26.tar.bz2 2339773 SHA256 5a5369f464502a598e938029c310d4b3abd51e6bb8dfd045663e61c8ea9f6d41 SHA512 3bc12441bebfc388017ad0632fb3e777ceaf62be82fb19ce771df8bbb765eb094dad336110189f49f5eaaebd4d6ced586098e1e3c8b9f7f775dc483d5513f209 WHIRLPOOL bfdc579f97a260d6b6776211f470bfc1a99b81d89a8067b2ebfab3101ab1a4f2b4f7c444edffc05bc7585993cae601c499ec074bb606c7ef289deac5429cfb2b
@@ -13,23 +11,7 @@ DIST tar-1.27.1.tar.bz2 2573070 SHA256 9b0fb3ce8512059337add0da5f8f0f7d7647f2201
DIST tar-1.28.tar.bz2 2693989 SHA256 60e4bfe0602fef34cd908d91cf638e17eeb09394d7b98c2487217dc4d3147562 SHA512 4f66a236a2d9185114e2b358a09f3d38c3c38e984e5fca4bedc4d7eb461bdaace6a7a9fc62aafb70428b1f3dc617fb0d0553558fb29cad33f0cb53ba081521c4 WHIRLPOOL 54ad7b73e973d436cff853fda267d21ab22139f53d18f6870c7a53cf74e53ec8735022b6d3c503504ee416f1b9f9d43ca1af60d2fedb5d852766cb8dd2ac72d0
EBUILD tar-1.26-r1.ebuild 2290 SHA256 03651edf07bc9cc141a524efd006f4361c4cd79b1d5796dd88ebd3e4fd25eb5e SHA512 346ad7e358e2bc5337011cd076daaff887ed7c83d1bd2c411c409b7327d35dfeb01c4be51102623cb0e004da0c4a24393746b0d8260799e86f5de94ff633958d WHIRLPOOL 492c281e5e6929286c01dc9ecbd37b9de72947d3701237e34adeb690f1cdc84a559fcbc2f346505a64ebc4ae1e25d6d4f6882df03495dd767159e0e04ea89100
EBUILD tar-1.27.1-r2.ebuild 2441 SHA256 b37d9c2f2e5297499aa83930f2893ab0f7c16cc6e4be2279b9d7d0cb7a616ebd SHA512 38226606176dc485bf196e496e275986bb84ce85bbd69c708d0df41ca724c52e1f2e1d47301b8ded635fb5bc7fb488cb28526c1155c2401a2934f2476bd70d8f WHIRLPOOL 1f0b44b9284a9a7f0c53acd101ebe381221cf696409e58650cc4b5e2afc489f78fed53d640643c085bd422fe340a7c98efde5e8373a83ee4cdf9ae3626e1b958
+EBUILD tar-1.28-r1.ebuild 2273 SHA256 8ee48cc2339379978df9825ce12d6e7a68114d9b41c605441309370427dcb264 SHA512 f669e418f1cfe0121ef935ad77478b319bc29ead85c9b40f5d0de1f05b383b53d2260567cd64a3021089fc7f2b73655f4e282b1bbae96bf85d57d1afd34a58fe WHIRLPOOL 7e9dfdd006ab76699166c9afaf5dd8233afb86e8d5aeee831af8f96fd2d00f0c6d8b8ac599ae36493f5c4ef7ddc44e8acf9cf65a13a7f5bc9e4444aad1421bcb
EBUILD tar-1.28.ebuild 2288 SHA256 b6c4f42706042001033c09f99767acafb5870569ba87ed42b4a8d2275e2d73a5 SHA512 10bc263ba7e386cc4cf047748d5273be575c5b6e8a6c65f8db033cd500a28925e5a493eca7252fe3d62fbeb959f0534027cd671771656a881ee1af12b49d0d98 WHIRLPOOL 4c4348df02f5cc5a83731ae0dd6cc927f90efc5079e3dcaddb6d610161a80c96b35e1126eca7f6f21ddaebcafaf00df57ebe70fbe344cdde8bbae318bdaec3ef
-MISC ChangeLog 31576 SHA256 249b65b171d9aa2d0334b36653fe06ec0e4506ab3de4f7f8d4dc9008497e152b SHA512 daba79cede48c6494264c931dca571386bcc6c40893e21ddba0a036bd2c328455960ed008ba4157a0239c300a911e260d9bd5e5c0a96a06faf0c48b69b05e8c3 WHIRLPOOL 1a763a158468d4adba123725292c1aba00411dee2b8b36ce44df801372d217d1f0f29331c9263d5b2915167f43846206d4c83787533de035291ddc61553635c7
+MISC ChangeLog 31778 SHA256 ab62f1fcc8827d49bb709ec38acd0695c7877d11666b1859e368d2300d2e7df3 SHA512 77c2412befbebe87f63283941af63a649b7af4f7405a03534c0555bfb2768fe277f3efb02ddd8d6b42c4026ade34ac2e8a173d2e72e4b05b4a4539e520e8bc50 WHIRLPOOL 11df227385285d49b02bb56d8bb01dc64e6175a211c9e01b289122db8c5e94f87d46781950efe4662eb8c357f281db792d972bfe8d5d522fadbfa5034c6ec9ae
MISC metadata.xml 298 SHA256 776c92889812df8f8dc072ae2ac1d7091f1613afc6332eccd0e20a0d90caaf0b SHA512 9e7e0d3343fc95c9164d7b5cd7bf9a8cc21d5bba06af0ce19f693f8e6039415ab472411fba602fb99a1728529774cd85e828311a77c34d1f157cf4fedea59f65 WHIRLPOOL ddeaf15e3d36ed3c9e0ac13b17e49a187d0855255f38bf60a3726bd10ebaddbfc269a2101bbc64d4c8f69491228165016b2d76b15aabbd9bc3a0bd1732ca8f2e
------BEGIN PGP SIGNATURE-----
-Version: GnuPG v2
-
-iQIcBAEBCAAGBQJT6gXrAAoJEPGu1DbS6WIABicQAIj0GVGpAYyrH9ARdwhOBNg4
-oadqZpJmH6clbFE7t6uKkYvtArOMnb13I39TjS0V8FuG8FBxBfSUosGZgpeOwmPV
-qYMU1O31AOIS/VPca7gbarxte5EJXYjVzQVq+DvLsso0M+pXQ3OtBeTQFxeExDZI
-HxoMj8lm5TCZ4W8CLtaypFjSkqucTVa1FxX9tvpgQpeXREtbOX3DWHUVpQXDvswM
-sVuLtM4jBMaTSoCUllbJbS5Rmq62rff44jlZxnja03uY1/LZIlkhm54WYAD0mMXN
-3Y7WXSRp/cJ1NjZk4ibStjCnukGa4qbwV7Gb9K7/I3ZM8+NTgVjYRRP0MntcebQN
-5ZNw091TJ3/y1FJbmC7Ze/ENvOehEzg/nUr3P++8dqsVqAyrEXN52ns0JRxgr4yy
-9DISN1dqeugpAOM6mXCziDs/dw8KkoE3S7z5nvrUXiKJuvdr7NZPb7rtoQbHzciv
-gaRcGE5JLtkUTesRwjLsg4fCRIvcNpvrdi4+oTVkLhz/RLOQRo2KwBdNk5XiRg+2
-Goq6YUKHBM4vvruiqXgNT9KfAFavY6SSbwQOxFZhgChNrBU5E+oG/4yuJG5LwRvk
-+PE1mPIWMFF8a6YHmP/qSfDGod3gXSxhqld79D6NpRvzDOzIuYV6p4DxPVbHvw2u
-zEhfscv21jGuEjZmUJ4I
-=ZVsV
------END PGP SIGNATURE-----
diff --git a/app-arch/tar/files/tar-1.28-concat-listed.patch b/app-arch/tar/files/tar-1.28-concat-listed.patch
new file mode 100644
index 000000000000..28dc57824155
--- /dev/null
+++ b/app-arch/tar/files/tar-1.28-concat-listed.patch
@@ -0,0 +1,117 @@
+https://bugs.gentoo.org/546294
+https://lists.gnu.org/archive/html/bug-tar/2015-04/msg00006.html
+
+From 15c02c2b9d383446b3ea35dbea5a048e136b020d Mon Sep 17 00:00:00 2001
+From: Sergey Poznyakoff <gray@gnu.org.ua>
+Date: Thu, 16 Apr 2015 13:02:10 +0300
+Subject: [PATCH] Fix extraction from concatenated incremental archives.
+
+* src/common.h (remove_delayed_set_stat): New proto.
+* src/extract.c (free_delayed_set_stat)
+(remove_delayed_set_stat): New function.
+(apply_nonancestor_delayed_set_stat): Use free_delayed_set_stat.
+* src/misc.c (safer_rmdir): Remove delayed_set_stat entry
+corresponding to the removed directory.
+* tests/incr10.at: New test case.
+* tests/Makefile.am: Add new test.
+* tests/testsuite.at: Likewise.
+---
+ src/common.h | 2 ++
+ src/extract.c | 38 +++++++++++++++++++++++++++-----
+ src/misc.c | 7 +++++-
+ tests/Makefile.am | 1 +
+ tests/incr10.at | 64 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
+ tests/testsuite.at | 1 +
+ 6 files changed, 107 insertions(+), 6 deletions(-)
+ create mode 100644 tests/incr10.at
+
+diff --git a/src/common.h b/src/common.h
+index 20cbb64..2904183 100644
+--- a/src/common.h
++++ b/src/common.h
+@@ -523,6 +523,8 @@ void extract_archive (void);
+ void extract_finish (void);
+ bool rename_directory (char *src, char *dst);
+
++void remove_delayed_set_stat (const char *fname);
++
+ /* Module delete.c. */
+
+ void delete_archive_members (void);
+diff --git a/src/extract.c b/src/extract.c
+index ca25603..5aaeb1b 100644
+--- a/src/extract.c
++++ b/src/extract.c
+@@ -537,6 +537,38 @@ repair_delayed_set_stat (char const *dir,
+ quotearg_colon (dir)));
+ }
+
++static void
++free_delayed_set_stat (struct delayed_set_stat *data)
++{
++ xheader_xattr_free (data->xattr_map, data->xattr_map_size);
++ free (data->cntx_name);
++ free (data->acls_a_ptr);
++ free (data->acls_d_ptr);
++ free (data);
++}
++
++void
++remove_delayed_set_stat (const char *fname)
++{
++ struct delayed_set_stat *data, *next, *prev = NULL;
++ for (data = delayed_set_stat_head; data; data = next)
++ {
++ next = data->next;
++ if (chdir_current == data->change_dir
++ && strcmp (data->file_name, fname) == 0)
++ {
++ free_delayed_set_stat (data);
++ if (prev)
++ prev->next = next;
++ else
++ delayed_set_stat_head = next;
++ return;
++ }
++ else
++ prev = data;
++ }
++}
++
+ /* After a file/link/directory creation has failed, see if
+ it's because some required directory was not present, and if so,
+ create all required directories. Return zero if all the required
+@@ -846,11 +878,7 @@ apply_nonancestor_delayed_set_stat (char const *file_name, bool after_links)
+ }
+
+ delayed_set_stat_head = data->next;
+- xheader_xattr_free (data->xattr_map, data->xattr_map_size);
+- free (data->cntx_name);
+- free (data->acls_a_ptr);
+- free (data->acls_d_ptr);
+- free (data);
++ free_delayed_set_stat (data);
+ }
+ }
+
+diff --git a/src/misc.c b/src/misc.c
+index 8e66643..d263c07 100644
+--- a/src/misc.c
++++ b/src/misc.c
+@@ -586,7 +586,12 @@ safer_rmdir (const char *file_name)
+ return -1;
+ }
+
+- return unlinkat (chdir_fd, file_name, AT_REMOVEDIR);
++ if (unlinkat (chdir_fd, file_name, AT_REMOVEDIR) == 0)
++ {
++ remove_delayed_set_stat (file_name);
++ return 0;
++ }
++ return -1;
+ }
+
+ /* Remove FILE_NAME, returning 1 on success. If FILE_NAME is a directory,
+--
+2.3.5
+
diff --git a/app-arch/tar/tar-1.28-r1.ebuild b/app-arch/tar/tar-1.28-r1.ebuild
new file mode 100644
index 000000000000..81304686c949
--- /dev/null
+++ b/app-arch/tar/tar-1.28-r1.ebuild
@@ -0,0 +1,75 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/app-arch/tar/tar-1.28-r1.ebuild,v 1.1 2015/04/20 16:49:46 vapier Exp $
+
+EAPI=4
+
+inherit flag-o-matic eutils
+
+DESCRIPTION="Use this to make tarballs :)"
+HOMEPAGE="http://www.gnu.org/software/tar/"
+SRC_URI="mirror://gnu/tar/${P}.tar.bz2
+ mirror://gnu-alpha/tar/${P}.tar.bz2"
+
+LICENSE="GPL-3+"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~amd64-fbsd ~x86-fbsd ~x64-freebsd ~x86-freebsd ~hppa-hpux ~ia64-hpux ~x86-interix ~amd64-linux ~arm-linux ~ia64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE="acl minimal nls selinux static userland_GNU xattr"
+
+RDEPEND="acl? ( virtual/acl )
+ selinux? ( sys-libs/libselinux )"
+DEPEND="${RDEPEND}
+ nls? ( >=sys-devel/gettext-0.10.35 )
+ xattr? ( sys-apps/attr )"
+
+src_prepare() {
+ if ! use userland_GNU ; then
+ sed -i \
+ -e 's:/backup\.sh:/gbackup.sh:' \
+ scripts/{backup,dump-remind,restore}.in \
+ || die "sed non-GNU"
+ fi
+ epatch "${FILESDIR}"/${P}-concat-listed.patch #546294
+}
+
+src_configure() {
+ use static && append-ldflags -static
+ FORCE_UNSAFE_CONFIGURE=1 \
+ econf \
+ --enable-backup-scripts \
+ --bindir="${EPREFIX}"/bin \
+ --libexecdir="${EPREFIX}"/usr/sbin \
+ $(usex userland_GNU "" "--program-prefix=g") \
+ $(use_with acl posix-acls) \
+ $(use_enable nls) \
+ $(use_with selinux) \
+ $(use_with xattr xattrs)
+}
+
+src_install() {
+ default
+
+ local p=$(usex userland_GNU "" "g")
+ if [[ -z ${p} ]] ; then
+ # a nasty yet required piece of baggage
+ exeinto /etc
+ doexe "${FILESDIR}"/rmt
+ fi
+
+ # autoconf looks for gtar before tar (in configure scripts), hence
+ # in Prefix it is important that it is there, otherwise, a gtar from
+ # the host system (FreeBSD, Solaris, Darwin) will be found instead
+ # of the Prefix provided (GNU) tar
+ if use prefix ; then
+ dosym tar /bin/gtar
+ fi
+
+ mv "${ED}"/usr/sbin/${p}backup{,-tar} || die
+ mv "${ED}"/usr/sbin/${p}restore{,-tar} || die
+
+ if use minimal ; then
+ find "${ED}"/etc "${ED}"/*bin/ "${ED}"/usr/*bin/ \
+ -type f -a '!' '(' -name tar -o -name ${p}tar ')' \
+ -delete || die
+ fi
+}