Source: libmarpa-r2-perl Version: 2.086000~dfsg-5 Severity: wishlist Tags: patch upstream User: reproducible-builds@lists.alioth.debian.org Usertags: timestamps X-Debbugs-Cc: reproducible-builds@lists.alioth.debian.org
Hi! While working on the "reproducible builds" effort [1], we have noticed that libmarpa-r2-perl could not be built reproducibly. It embeds the current build date into Version.pm. The attached patch makes it honour SOURCE_DATE_EPOCH, if it is available, to get a deterministic timestamp. Regards, Reiner [1]: https://wiki.debian.org/ReproducibleBuilds
diff --git a/debian/patches/reproducible_build.patch b/debian/patches/reproducible_build.patch new file mode 100644 index 0000000..7d80ba7 --- /dev/null +++ b/debian/patches/reproducible_build.patch @@ -0,0 +1,22 @@ +Author: Reiner Herrmann <rei...@reiner-h.de> +Description: Honour SOURCE_DATE_EPOCH for embedded timestamp, if it is set + +--- a/inc/Marpa/R2/Build_Me.pm ++++ b/inc/Marpa/R2/Build_Me.pm +@@ -83,7 +83,7 @@ + + ##no critic(ValuesAndExpressions::RequireInterpolationOfMetachars) + $text .= q{use vars qw($TIMESTAMP)} . qq{;\n}; +- $text .= q{$TIMESTAMP='} . localtime()->datetime . qq{';\n}; ++ $text .= q{$TIMESTAMP='} . (gmtime($ENV{SOURCE_DATE_EPOCH}) || localtime())->datetime . qq{';\n}; + ##use critic + + for my $package (@use_packages) { +@@ -105,6 +105,7 @@ + ##no critic(ValuesAndExpressions::RequireInterpolationOfMetachars) + $text .= q{use vars qw($TIMESTAMP)} . qq{;\n}; + $text .= q{$TIMESTAMP='} . localtime()->datetime . qq{';\n}; ++ $text .= q{$TIMESTAMP='} . (gmtime($ENV{SOURCE_DATE_EPOCH}) || localtime())->datetime . qq{';\n}; + ##use critic + + for my $package (@use_packages) { diff --git a/debian/patches/series b/debian/patches/series index f8d2256..b4a3780 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -1,2 +1,3 @@ 1001_xs_boot_workaround.patch 2001_libmarpa_external_linkage.patch +reproducible_build.patch
_______________________________________________ Reproducible-builds mailing list Reproducible-builds@lists.alioth.debian.org http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/reproducible-builds