summaryrefslogtreecommitdiffstats
path: root/meta/recipes-devtools/dpkg
diff options
context:
space:
mode:
Diffstat (limited to 'meta/recipes-devtools/dpkg')
-rw-r--r--meta/recipes-devtools/dpkg/dpkg/tarfix.patch45
-rw-r--r--meta/recipes-devtools/dpkg/dpkg_1.17.25.bb1
2 files changed, 46 insertions, 0 deletions
diff --git a/meta/recipes-devtools/dpkg/dpkg/tarfix.patch b/meta/recipes-devtools/dpkg/dpkg/tarfix.patch
new file mode 100644
index 0000000000..50e0bb4069
--- /dev/null
+++ b/meta/recipes-devtools/dpkg/dpkg/tarfix.patch
@@ -0,0 +1,45 @@
1They managed to 'break' tar. Again. Sorry, they fixed a regression
2which broke dpkg-deb.
3
4The addition of:
5http://git.savannah.gnu.org/cgit/tar.git/commit/?id=163e96a0e619a900eab6de827c7c5749ecc9d3f2
6("Bugfix: entries read from the -T file did not get proper matching_flag.")
7means that the no-recursion option gets lost. This leads to many files getting included
8multiple times, along with files which shouldn't be there.
9
10The commit message is horrendous. The patch actually makes the option positional
11(as documnted since 2003) and therefore doesn't affect the input from the -T option.
12
13Moving the --no-reursion option to earlier in the command avoids the bug.
14
15The bug was not present in tar 1.28 however it has been backported in at least
16Fedora 22 and heading into Fedora 21.
17
18Redhat reports of issue:
19https://bugzilla.redhat.com/show_bug.cgi?id=1230762 [tar]
20https://bugzilla.redhat.com/show_bug.cgi?id=1241508 [dpkg]
21
22Discussion of bug in upstream tar:
23http://www.mail-archive.com/bug-tar@gnu.org/msg04799.html
24
25Yocto bug:
26https://bugzilla.yoctoproject.org/show_bug.cgi?id=7988
27
28Upstream-Status: Submitted [have mailed dpkg maintainer about this]
29
30RP
312015/7/13
32
33Index: dpkg-1.17.25/dpkg-deb/build.c
34===================================================================
35--- dpkg-1.17.25.orig/dpkg-deb/build.c
36+++ dpkg-1.17.25/dpkg-deb/build.c
37@@ -560,7 +560,7 @@ do_build(const char *const *argv)
38 if (chdir(dir))
39 ohshite(_("failed to chdir to `%.255s'"), dir);
40 execlp(TAR, "tar", "-cf", "-", "--format=gnu", "--null", "--no-unquote",
41- "-T", "-", "--no-recursion", NULL);
42+ "--no-recursion", "-T", "-", NULL);
43 ohshite(_("unable to execute %s (%s)"), "tar -cf", TAR);
44 }
45 close(p1[0]);
diff --git a/meta/recipes-devtools/dpkg/dpkg_1.17.25.bb b/meta/recipes-devtools/dpkg/dpkg_1.17.25.bb
index 74b1dd000f..1969effd61 100644
--- a/meta/recipes-devtools/dpkg/dpkg_1.17.25.bb
+++ b/meta/recipes-devtools/dpkg/dpkg_1.17.25.bb
@@ -13,6 +13,7 @@ SRC_URI += "file://noman.patch \
13 file://glibc2.5-sync_file_range.patch \ 13 file://glibc2.5-sync_file_range.patch \
14 file://no-vla-warning.patch \ 14 file://no-vla-warning.patch \
15 file://add_armeb_triplet_entry.patch \ 15 file://add_armeb_triplet_entry.patch \
16 file://tarfix.patch \
16 " 17 "
17 18
18SRC_URI[md5sum] = "e48fcfdb2162e77d72c2a83432d537ca" 19SRC_URI[md5sum] = "e48fcfdb2162e77d72c2a83432d537ca"