@@ -1113,6 +1113,7 @@ dist_patch_DATA = \
%D%/packages/patches/emacs-kv-fix-tests.patch \
%D%/packages/patches/emacs-pgtk-super-key-fix.patch \
%D%/packages/patches/emacs-xelb-ignore-length-element.patch \
+ %D%/packages/patches/enblend-enfuse-reproducible.patch \
%D%/packages/patches/enjarify-setup-py.patch \
%D%/packages/patches/enlightenment-fix-setuid-path.patch \
%D%/packages/patches/erlang-man-path.patch \
new file mode 100644
@@ -0,0 +1,44 @@
+# HG changeset patch
+# User Bernhard M. Wiedemann <bwiedemann@suse.de>
+# Date 1502609999 -7200
+# Sun Aug 13 09:39:59 2017 +0200
+# Node ID a98e00eed893f62dd8349fc2894abca3aff4b33a
+# Parent 41ce01b7d413b3654211da0147857e7d6a1495de
+Facilitate reproducible builds
+by allowing to externally hold constant the build date and time.
+See
+ https://reproducible-builds.org/specs/source-date-epoch/
+
+Backport asap.
+
+diff -r 41ce01b7d413 -r a98e00eed893 NEWS
+--- a/NEWS Sun Aug 13 09:39:56 2017 +0200
++++ b/NEWS Sun Aug 13 09:39:59 2017 +0200
+@@ -48,6 +48,12 @@
+ https://github.com/akrzemi1/Optional
+ where only "optional.hpp" is needed.
+
++- The environment variable SOURCE_DATE_EPOCH overrides the build
++ timestamp as recorded by the signatures. See
++ https://reproducible-builds.org/specs/source-date-epoch/
++ for details.
++
++
+
+ * Version 4.2 "Compressor Road"
+
+diff -r 41ce01b7d413 -r a98e00eed893 src/DefaultSig.pm
+--- a/src/DefaultSig.pm Sun Aug 13 09:39:56 2017 +0200
++++ b/src/DefaultSig.pm Sun Aug 13 09:39:59 2017 +0200
+@@ -109,9 +109,10 @@
+ sub update_date_and_time {
+ my $self = shift;
+
++ my $now = $ENV{SOURCE_DATE_EPOCH} || time;
+ my ($second, $minute, $hour,
+ $day_of_month, $month, $year,
+- $day_of_week) = $self->is_using_gmt() ? gmtime : localtime;
++ $day_of_week) = $self->is_using_gmt() ? gmtime($now) : localtime($now);
+
+ $self->{DATE} = $self->format_date($day_of_month, $month, $year + 1900, $day_of_week,
+ $self->weekdays->[$day_of_week],
@@ -370,7 +370,18 @@ (define-public enblend-enfuse
name "-" version ".tar.gz"))
(sha256
(base32
- "0j5x011ilalb47ssah50ag0a4phgh1b0wdgxdbbp1gcyjcjf60w7"))))
+ "0j5x011ilalb47ssah50ag0a4phgh1b0wdgxdbbp1gcyjcjf60w7"))
+ (patches
+ ;; TODO: Remove when updating.
+ ;; Fixed upstream with a98e00eed893f62dd8349fc2894abca3aff4b33a.
+ (search-patches "enblend-enfuse-reproducible.patch"))
+ (modules '((guix build utils)))
+ (snippet
+ ;; TODO: Remove when updating.
+ ;; Fixed upstream with 81e25afe71146aaaf5058c604034f35d57e3be9d.
+ #~(substitute* "src/minimizer.cc"
+ (("^#include <gsl/gsl_errno\\.h>" all)
+ (string-append all "\n#include <limits>"))))))
(build-system gnu-build-system)
(native-inputs
(list pkg-config
@@ -395,16 +406,8 @@ (define-public enblend-enfuse
vigra
zlib))
(arguments
- (list #:configure-flags
- #~(list "--enable-openmp")
- #:phases
- #~(modify-phases %standard-phases
- (add-after 'unpack 'add-missing-include
- (lambda _
- (substitute* "src/minimizer.h"
- ;; Fix error: ‘numeric_limits’ is not a member of ‘std’.
- (("#include <vector>" line)
- (string-append line "\n#include <limits>"))))))))
+ (list
+ #:configure-flags #~(list "--enable-openmp")))
(home-page "https://enblend.sourceforge.net/")
(synopsis "Tools for combining and blending images")
(description