[libalien-sdl-perl] 01/02: patch build system to get reproducible builds

dod at debian.org dod at debian.org
Sat May 23 10:47:50 UTC 2015


This is an automated email from the git hooks/post-receive script.

dod pushed a commit to branch master
in repository libalien-sdl-perl.

commit 70ae9f102d083410d3d8c60fe29e452ce7d46e62
Author: Dominique Dumont <dod at debian.org>
Date:   Sat May 23 12:34:16 2015 +0200

    patch build system to get reproducible builds
---
 debian/patches/reproducible-build | 65 +++++++++++++++++++++++++++++++++++++++
 debian/patches/series             |  1 +
 2 files changed, 66 insertions(+)

diff --git a/debian/patches/reproducible-build b/debian/patches/reproducible-build
new file mode 100644
index 0000000..203e604
--- /dev/null
+++ b/debian/patches/reproducible-build
@@ -0,0 +1,65 @@
+Description: Fix reproducible build
+ Replaced all occurence of 'keys %foo' with 'sort keys %foo' in Build.PL and  lib used by Build.PL (in inc)
+Forwarded: NA
+Author: dod
+--- a/inc/My/Builder.pm
++++ b/inc/My/Builder.pm
+@@ -329,7 +329,7 @@
+   };
+ 
+   $cfg->{ld_shared_libs} = [ @shlibs ];
+-  $cfg->{ld_paths}       = [ keys %tmp ];
++  $cfg->{ld_paths}       = [ sort keys %tmp ];
+   $cfg->{ld_shlib_map}   = \%shlib_map;
+ 
+   my $have_libs = $self->notes('have_libs');
+--- a/inc/My/Builder/Unix.pm
++++ b/inc/My/Builder/Unix.pm
+@@ -18,7 +18,7 @@
+   my $self = shift;
+   my @list = ();
+   ### any platform specific -L/path/to/libs shoud go here
+-  for (keys %$inc_lib_candidates) {
++  for (sort keys %$inc_lib_candidates) {
+     push @list, "-I$_" if (-d $_);
+   }
+   return join(' ', @list);
+@@ -29,14 +29,14 @@
+   ### any platform specific -L/path/to/libs shoud go here
+   my @list = ();
+   my %rv; # putting detected dir into hash to avoid duplicates
+-  for (keys %$inc_lib_candidates) {
++  for (sort keys %$inc_lib_candidates) {
+     my $ld       = $inc_lib_candidates->{$_};
+     if( -d $_ && -d $ld ) {
+       $rv{"-L$ld"}          = 1;
+       #$rv{"-Wl,-rpath,$ld"} = 1 if $^O =~ /^linux|dragonfly|.+bsd$/;
+     }
+   }
+-  push @list, (keys %rv);
++  push @list, (sort keys %rv);
+   if ($^O eq 'openbsd') {
+     my $osver = `uname -r 2>/dev/null`;
+     if ($self->notes('perl_libs')->{pthread} || ($osver && $osver < 5.0)) {
+--- a/inc/My/Utility.pm
++++ b/inc/My/Utility.pm
+@@ -390,7 +390,7 @@
+     my $header             = (defined $header_map->{$lib}) ? $header_map->{$lib} : $lib;
+ 
+     my $dlext = get_dlext();
+-    foreach (keys %$inc_lib_candidates) {
++    foreach (sort keys %$inc_lib_candidates) {
+       my $ld = $inc_lib_candidates->{$_};
+       next unless -d $_ && -d $ld;
+       ($found_dll) = find_file($ld, qr/[\/\\]lib\Q$lib\E[\-\d\.]*\.($dlext[\d\.]*|so|dll)$/);
+--- a/Build.PL
++++ b/Build.PL
+@@ -127,7 +127,7 @@
+       my @set = `\@vcvars32 & set`;
+       chomp @set;
+       my %set  = map /(\w+)=(.+)/, @set;
+-      for( keys %set ) {
++      for( sort keys %set ) {
+         if( /^INCLUDE|LIB$/ ) {
+           $ENV{$_} = $set{$_};
+         }
diff --git a/debian/patches/series b/debian/patches/series
index c57f38f..103846a 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -1,3 +1,4 @@
 fix-build-option
 fix-spelling
 disable-rpath
+reproducible-build

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-perl/packages/libalien-sdl-perl.git



More information about the Pkg-perl-cvs-commits mailing list