Update tar to 1.29 release and add proposed upstream fix for BSD http://www.mail-archive.com/bug-tar@gnu.org/msg05067.html to eliminate failure of 30: --numeric-owner basic tests when run under sudo. Changes to the info file from the current packaging are...
Index: tar.info
===================================================================
RCS file: /cvsroot/fink/dists/10.9-libcxx/stable/main/finkinfo/base/tar.info,v
retrieving revision 1.2
diff -r1.2 tar.info
2,3c2,3
< Version: 1.26
< Revision: 4
---
> Version: 1.29
> Revision: 1
13,16c13,21
< Source: mirror:sourceforge:fink/%n-%v.tar.bz2
< #Source: mirror:gnu:%n/%n-%v.tar.bz2
< Source-MD5: 2cee42a2ff4f1cd4f9298eeeb2264519
< PatchScript: perl -pi -e "s/(textdomain \(PACKAGE\)\;)/\1\ngettext\(\"\"\)\;/" src/tar.c
---
> #Source: mirror:sourceforge:fink/%n-%v.tar.bz2
> Source: mirror:gnu:%n/%n-%v.tar.bz2
> Source-MD5: 955cd533955acb1804b83fd70218da51
> PatchFile: %n.patch
> PatchFile-MD5: fd284f3664c905dab6f522c9465c0170
> PatchScript: <<
> %{default_script}
> perl -pi -e "s/(textdomain \(PACKAGE\)\;)/\1\ngettext\(\"\"\)\;/" src/tar.c
> <<
Tested with 'fink -m' on 10.11.
Info file for tar-1.29-1
Patch file for tar-1.29-1
The new tar seems to break dpkg as follows. When tar 1.29 is installed, dpkg now creates a DEBIAN directory at the root level for all package builds and results in the same root level DEBIAN directory being added to the files for all of the debs created by dpkg under tar 1.29.
We should try to puzzle out what exact invocaton of tar in fink/dpkg is misbehaving and misplacing the extracted DEBIAN directory at the root level so a bug report can be filed upstream. It is unclear to me if this is happening in fink or dpkg. Also, our dpkg is really old so if the glitch is only present in the legacy versions of dpkg, upstream might not get reports on it.
It's a new strictness (or newly fixed documented strictness, or something like that) in command-line parameters to tar, already reported and responded upstream several times. See for example:
http://lists.gnu.org/archive/html/bug-tar/2016-05/msg00022.html
FYI, http://lists.gnu.org/archive/html/bug-tar/2016-08/msg00016.html was also reported upstream (where tar fails when LANG is unset). This bug was introduced with a signaling change http://git.savannah.gnu.org/cgit/tar.git/patch/?id=589ba77faf60e4632771d80e2b25d9e3778d4a3f in tar 1.29. The bug goes latent if libintl isn't built against CoreFoundation framework so it is likely a threading issue tickled by this change in signaling.
[03:19] <guillem> TheSin, dmacks: re the newer tar problems at least in dpkg: commits fcfe4f3aa2f3cb7f8179d4f2fe6dd65e75f7bbdf and 02e2060504f1c8dbbe5dec8211beaf945350c789 fix that</guillem>
these are the required patches to fix dpkg for newer tar, we should consider back porting to our 1.10.x dpkg so we can update tar.
I'll add a patch to dpkg to fix this issue, but this packages needs to have a Conflicts on dpkg <= %v-%r of current dpkg in each tree. Then when I rev up it should all dpkg and tar to install without issues, I'll test this and if so commit it.
so the conflicts will need ot be on dpkg (<= 1.10.21-1244)
Just noting it here before I start on this, I'm still building a fresh install to test with.
conflicts wasn't enough I had to add a depends, it seems the fink dep engine just ignores conflicts and expects dpkg to catch it.
thus so it doesn't break bootstraping I'm adding
Depends: dpkg (>> 1.10.21-1244) | dpkg-bootstrap
this should make sure it doesnt' break the dpkg bootstrap build order, it's being tested but looking promissing, so when I add this to fink I'll update the bootstrap files in master as well, I'm not sure if akh needs to update a branch when I push to master so I'll check with him first. Testing on upgrading a currently installed fink works properly with this config.
all tests passed, commiting to fink master and dists/10.9-libcxx