summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeroen Roovers <jer@gentoo.org>2016-11-06 12:05:50 +0100
committerJeroen Roovers <jer@gentoo.org>2016-11-06 12:06:40 +0100
commit7edf995959b4a06a5e9b14de3d9de7a88d0103d4 (patch)
treea3b8fa2620278420377df043d4f3daee11dc5180 /app-arch/dpkg
parentmail-filter/bogofilter: Looks compatible with all newer db slots (diff)
downloadgentoo-7edf995959b4a06a5e9b14de3d9de7a88d0103d4.tar.gz
gentoo-7edf995959b4a06a5e9b14de3d9de7a88d0103d4.tar.bz2
gentoo-7edf995959b4a06a5e9b14de3d9de7a88d0103d4.zip
app-arch/dpkg: Fix the gzip --rsyncable check. Disable one pedantic test.
Package-Manager: portage-2.3.2
Diffstat (limited to 'app-arch/dpkg')
-rw-r--r--app-arch/dpkg/dpkg-1.18.12.ebuild2
-rw-r--r--app-arch/dpkg/files/dpkg-1.18.12-dpkg_buildpackage-test.patch10
-rw-r--r--app-arch/dpkg/files/dpkg-1.18.12-rsyncable.patch28
3 files changed, 40 insertions, 0 deletions
diff --git a/app-arch/dpkg/dpkg-1.18.12.ebuild b/app-arch/dpkg/dpkg-1.18.12.ebuild
index f647cdb31028..94b5afef1557 100644
--- a/app-arch/dpkg/dpkg-1.18.12.ebuild
+++ b/app-arch/dpkg/dpkg-1.18.12.ebuild
@@ -47,6 +47,8 @@ DOCS=(
PATCHES=(
"${FILESDIR}"/${PN}-1.18.9-strerror.patch
"${FILESDIR}"/${PN}-1.18.12-flags.patch
+ "${FILESDIR}"/${PN}-1.18.12-rsyncable.patch
+ "${FILESDIR}"/${PN}-1.18.12-dpkg_buildpackage-test.patch
)
src_prepare() {
diff --git a/app-arch/dpkg/files/dpkg-1.18.12-dpkg_buildpackage-test.patch b/app-arch/dpkg/files/dpkg-1.18.12-dpkg_buildpackage-test.patch
new file mode 100644
index 000000000000..e9716758d41b
--- /dev/null
+++ b/app-arch/dpkg/files/dpkg-1.18.12-dpkg_buildpackage-test.patch
@@ -0,0 +1,10 @@
+--- a/scripts/Makefile.am
++++ b/scripts/Makefile.am
+@@ -238,7 +238,6 @@
+ t/Dpkg_Source_Package.t \
+ t/Dpkg_Dist_Files.t \
+ t/dpkg_source.t \
+- t/dpkg_buildpackage.t \
+ t/merge_changelogs.t \
+ t/mk.t \
+ $(nil)
diff --git a/app-arch/dpkg/files/dpkg-1.18.12-rsyncable.patch b/app-arch/dpkg/files/dpkg-1.18.12-rsyncable.patch
new file mode 100644
index 000000000000..69802da67092
--- /dev/null
+++ b/app-arch/dpkg/files/dpkg-1.18.12-rsyncable.patch
@@ -0,0 +1,28 @@
+--- a/scripts/Dpkg/Compression.pm
++++ b/scripts/Dpkg/Compression.pm
+@@ -81,20 +81,12 @@
+ };
+
+ #
+-# XXX: The gzip package in Debian at some point acquired a Debian-specific
+-# --rsyncable option via a vendor patch. Which is not present in most of the
+-# major distributions, dpkg downstream systems, nor gzip upstream, who have
+-# stated they will most probably not accept it because people should be using
+-# pigz instead.
++# If gzip supports --rsyncable (version >=1.7 or the Debian patched variant),
++# we use it. Sadly a non-compliant gzip will not complain about the argument
++# when it does not understand it, so we can only print out the usage and infer
++# --rsyncable support from that.
+ #
+-# This option should have never been accepted in dpkg, ever. But removing it
+-# now would probably cause demands for tarring and feathering. In addition
+-# we cannot use the Dpkg::Vendor logic because that would cause circular
+-# module dependencies. The whole affair is pretty disgusting really.
+-#
+-# Check the perl Config to discern Debian and hopefully derivatives too.
+-#
+-if ($Config{cf_by} eq 'Debian Project') {
++if (system("gzip --help 2>&1 | grep -q -- --rsyncable") == 0) {
+ push @{$COMP->{gzip}->{comp_prog}}, '--rsyncable';
+ }
+