[devscripts] 01/01: mk-origtargz: Work around tar --delete not working unless piping.
Joachim Breitner
nomeata at moszumanska.debian.org
Tue Aug 11 19:29:43 UTC 2015
This is an automated email from the git hooks/post-receive script.
nomeata pushed a commit to branch master
in repository devscripts.
commit 13f5c48414547b627501d782aa502d3b916bb0b7
Author: Joachim Breitner <nomeata at debian.org>
Date: Tue Aug 11 21:14:45 2015 +0200
mk-origtargz: Work around tar --delete not working unless piping.
This should make the support for Excluded-Files more reliable. Thanks to Felix
Natter for identifying the problem and solution.
---
debian/changelog | 9 +++++++++
scripts/mk-origtargz.pl | 11 +++++++++--
2 files changed, 18 insertions(+), 2 deletions(-)
diff --git a/debian/changelog b/debian/changelog
index c10f75d..cfb7bb3 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,12 @@
+devscripts (2.15.9) UNRELEASED; urgency=medium
+
+ * mk-origtargz:
+ + Work around tar --delete not working unless piping. This should
+ make the support for Excluded-Files more reliable.
+ Thanks to Felix Natter for identifying the problem and solution.
+
+ -- Joachim Breitner <nomeata at debian.org> Tue, 11 Aug 2015 21:12:03 +0200
+
devscripts (2.15.8) unstable; urgency=high
* licensecheck:
diff --git a/scripts/mk-origtargz.pl b/scripts/mk-origtargz.pl
index 0126132..ef2c75e 100755
--- a/scripts/mk-origtargz.pl
+++ b/scripts/mk-origtargz.pl
@@ -470,8 +470,15 @@ if ($deletecount) {
if ($do_repack || $deletecount) {
decompress_archive($upstream_tar, $destfiletar);
unlink $upstream_tar if $mode eq "rename";
- spawn(exec => ['tar', '--delete', '--file', $destfiletar, @to_delete ],
- wait_child => 1) if scalar(@to_delete) > 0;
+ # We have to use piping because --delete is broken otherwise, as documented
+ # at https://www.gnu.org/software/tar/manual/html_node/delete.html
+ if (@to_delete > 0) {
+ spawn(exec => ['tar', '--delete', @to_delete ],
+ from_file => $destfiletar,
+ to_file => $destfiletar . ".tmp",
+ wait_child => 1) if scalar(@to_delete) > 0;
+ move ($destfiletar . ".tmp", $destfiletar);
+ }
compress_archive($destfiletar, $destfile, $compression);
# Symlink no longer makes sense
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/collab-maint/devscripts.git
More information about the devscripts-devel
mailing list