From 8202adbceeba6c43dd5af5ffaa35e780cc9c5429 Mon Sep 17 00:00:00 2001 From: Bruno Victal Date: Sat, 16 Sep 2023 17:49:27 +0100 Subject: gnu: enblend-enfuse: Backport upstream fixes. Backport changes for reproducible builds & missing include. * gnu/packages/patches/enblend-enfuse-reproducible.patch: New file. * gnu/local.mk: Register it. * gnu/packages/photo.scm (enblend-enfuse)[source]: Use newly added patch. Add snippet to fix missing header. [arguments]<#:phases>: Remove 'add-missing-include. Signed-off-by: Maxim Cournoyer --- gnu/local.mk | 1 + .../patches/enblend-enfuse-reproducible.patch | 44 ++++++++++++++++++++++ gnu/packages/photo.scm | 25 ++++++------ 3 files changed, 59 insertions(+), 11 deletions(-) create mode 100644 gnu/packages/patches/enblend-enfuse-reproducible.patch diff --git a/gnu/local.mk b/gnu/local.mk index 672050723f..54217fbd5a 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -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 \ diff --git a/gnu/packages/patches/enblend-enfuse-reproducible.patch b/gnu/packages/patches/enblend-enfuse-reproducible.patch new file mode 100644 index 0000000000..8bd6a3aeda --- /dev/null +++ b/gnu/packages/patches/enblend-enfuse-reproducible.patch @@ -0,0 +1,44 @@ +# HG changeset patch +# User Bernhard M. Wiedemann +# 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], diff --git a/gnu/packages/photo.scm b/gnu/packages/photo.scm index b290e2b29a..39f4ce10d6 100644 --- a/gnu/packages/photo.scm +++ b/gnu/packages/photo.scm @@ -370,7 +370,18 @@ overlapping images, as well as some command line tools.") 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 " all) + (string-append all "\n#include ")))))) (build-system gnu-build-system) (native-inputs (list pkg-config @@ -395,16 +406,8 @@ overlapping images, as well as some command line tools.") 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 " line) - (string-append line "\n#include ")))))))) + (list + #:configure-flags #~(list "--enable-openmp"))) (home-page "https://enblend.sourceforge.net/") (synopsis "Tools for combining and blending images") (description -- cgit v1.2.3