Package: libencode-hanextra-perl
Version: 0.23-3
Tags: patch
User: reproducible-bui...@lists.alioth.debian.org
Usertags: randomness

This package doesn't currently build reproducibly.
Patch to fix this attached, will upload shortly.
-- 
Niko Tyni   nt...@debian.org
>From ffaee9c0e01aa0e66a8284948eb98efe4420549f Mon Sep 17 00:00:00 2001
From: Niko Tyni <nt...@debian.org>
Date: Thu, 4 Jun 2015 20:35:36 +0300
Subject: [PATCH] Make the build reproducible by sorting hash keys in
 Makefile.PL

---
 Makefile.PL | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/Makefile.PL b/Makefile.PL
index 9e6cf51..28b8489 100644
--- a/Makefile.PL
+++ b/Makefile.PL
@@ -79,7 +79,7 @@ sub post_initialize {
     my $x = $self->{'OBJ_EXT'};
 
     # Add the table O_FILES
-    foreach my $e (keys %tables) {
+    foreach my $e (sort keys %tables) {
         $o{ $e . $x } = 1;
     }
     $o{"$name$x"} = 1;
@@ -93,7 +93,7 @@ sub post_initialize {
 
     # $self->{'H'} = [$self->catfile($self->updir,'encode.h')];
     my %xs;
-    foreach my $table (keys %tables) {
+    foreach my $table (sort keys %tables) {
         push(@{ $self->{'C'} }, "$table.c");
 
         # Do NOT add $table.h etc. to H_FILES unless we own up as to how they
@@ -112,7 +112,7 @@ sub post_initialize {
 #define U8 U8
 #include "encode.h"
 END
-    foreach my $table (keys %tables) {
+    foreach my $table (sort keys %tables) {
         print XS qq[#include "${table}.h"\n];
     }
     print XS <<"END";
@@ -141,7 +141,7 @@ PROTOTYPES: DISABLE
 BOOT:
 {
 END
-    foreach my $table (keys %tables) {
+    foreach my $table (sort keys %tables) {
         print XS qq[#include "${table}.exh"\n];
     }
     print XS "}\n";
@@ -155,13 +155,13 @@ sub postamble {
     my $str =
 "# $name\$(OBJ_EXT) depends on .h and .exh files not .c files - but all written by enc2xs\n";
     $str .= "$name.c : $name.xs ";
-    foreach my $table (keys %tables) {
+    foreach my $table (sort keys %tables) {
         $str .= " $table.c";
     }
     $str .= "\n\n";
     $str .= "$name\$(OBJ_EXT) : $name.c\n\n";
 
-    foreach my $table (keys %tables) {
+    foreach my $table (sort keys %tables) {
         my $numlines    = 1;
         my $lengthsofar = length($str);
         my $continuator = '';
-- 
2.1.4

Reply via email to