summary refs log tree commit diff
diff options
context:
space:
mode:
authorVagrant Cascadian <vagrant@reproducible-builds.org>2022-08-19 21:06:50 -0700
committerVagrant Cascadian <vagrant@debian.org>2022-08-19 21:17:12 -0700
commitf31e55d0819064557b9a2af687f05b131f5c4f26 (patch)
tree833f3ea0f6d985a590f02bec7428dded08812603
parentd2b85f8906489fb95d8be41d6ba9fd520a5967d0 (diff)
downloadguix-f31e55d0819064557b9a2af687f05b131f5c4f26.tar.gz
gnu: perl-class-methodmaker: Build reproducibly.
* gnu/packages/patches/perl-class-methodmaker-reproducible.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add patch.
* gnu/packages/perl.scm (perl-class-methodmaker)[source]: Use patch.
-rw-r--r--gnu/local.mk1
-rw-r--r--gnu/packages/patches/perl-class-methodmaker-reproducible.patch21
-rw-r--r--gnu/packages/perl.scm4
3 files changed, 25 insertions, 1 deletions
diff --git a/gnu/local.mk b/gnu/local.mk
index 4e4ad908ce..26dfb6afe2 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1624,6 +1624,7 @@ dist_patch_DATA =						\
   %D%/packages/patches/perl-5.14-module-pluggable-search.patch	\
   %D%/packages/patches/perl-5.14-no-sys-dirs.patch		\
   %D%/packages/patches/perl-autosplit-default-time.patch	\
+  %D%/packages/patches/perl-class-methodmaker-reproducible.patch \
   %D%/packages/patches/perl-finance-quote-unuse-mozilla-ca.patch \
   %D%/packages/patches/perl-image-exiftool-CVE-2021-22204.patch	\
   %D%/packages/patches/perl-net-amazon-s3-moose-warning.patch	\
diff --git a/gnu/packages/patches/perl-class-methodmaker-reproducible.patch b/gnu/packages/patches/perl-class-methodmaker-reproducible.patch
new file mode 100644
index 0000000000..29a71babd1
--- /dev/null
+++ b/gnu/packages/patches/perl-class-methodmaker-reproducible.patch
@@ -0,0 +1,21 @@
+Description: make build reproducible by sorting hash keys
+ cf. https://reproducible.debian.net/dbd/unstable/amd64/libclass-methodmaker-perl_2.21-1.debbindiff.html
+Origin: vendor
+Bug-Debian: https://bugs.debian.org/778979
+Author: Chris Lamb <lamby@debian.org>
+Reviewed-by: gregor herrmann <gregoa@debian.org>
+Last-Update: 2015-05-02
+Forwarded: https://rt.cpan.org/Ticket/Display.html?id=104163
+Bug: https://rt.cpan.org/Ticket/Display.html?id=104163
+
+--- a/lib/Class/MethodMaker/OptExt.pm
++++ b/lib/Class/MethodMaker/OptExt.pm
+@@ -357,7 +357,7 @@
+ 
+ # -------------------------------------
+ 
+-sub option_names { grep $_ ne 'DEFAULT', keys %{OPTEXT()} }
++sub option_names { grep $_ ne 'DEFAULT', sort keys %{OPTEXT()} }
+ 
+ sub optcode {
+   my $class = shift;
diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm
index f9a95e818d..42c7d18c9d 100644
--- a/gnu/packages/perl.scm
+++ b/gnu/packages/perl.scm
@@ -1601,7 +1601,9 @@ Class::Load.")
                            version ".tar.gz"))
        (sha256
         (base32
-         "0a03i4k3a33qqwhykhz5k437ld5mag2vq52vvsy03gbynb65ivsy"))))
+         "0a03i4k3a33qqwhykhz5k437ld5mag2vq52vvsy03gbynb65ivsy"))
+       (patches (search-patches
+                 "perl-class-methodmaker-reproducible.patch"))))
     (build-system perl-build-system)
     (home-page "https://metacpan.org/release/Class-MethodMaker")
     (synopsis "Create generic methods for OO Perl")