aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTobias Geerinckx-Rice <me@tobias.gr>2020-01-07 18:55:40 +0100
committerTobias Geerinckx-Rice <me@tobias.gr>2020-01-08 02:26:18 +0100
commitbb335e84ed98055599752740a0f6114fe31f325d (patch)
treea9c0126d5d6a91d663e07120d081c25c18364afb
parentc9b99e88f510a4211df2be56f2c13d380f7a99b2 (diff)
downloadguix-bb335e84ed98055599752740a0f6114fe31f325d.tar
guix-bb335e84ed98055599752740a0f6114fe31f325d.tar.gz
gnu: exim: Build (more) reproducibly.
* gnu/packages/mail.scm (exim)[arguments]: Add a ‘build-reproducibly’ phase.
-rw-r--r--gnu/packages/mail.scm9
1 files changed, 8 insertions, 1 deletions
diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm
index 30623d786b..7d56949ae9 100644
--- a/gnu/packages/mail.scm
+++ b/gnu/packages/mail.scm
@@ -1338,7 +1338,14 @@ delivery.")
(let ((bash (assoc-ref inputs "bash")))
(substitute* '("scripts/Configure-eximon")
(("#!/bin/sh") (string-append "#!" bash "/bin/sh"))))
- #t)))
+ #t))
+ (add-before 'build 'build-reproducibly
+ (lambda _
+ ;; The ‘compilation number’ is incremented for every build from the
+ ;; same source tree. It appears to vary over different (parallel?)
+ ;; builds. Make it a ‘constant number’ instead.
+ (substitute* "src/version.c"
+ (("#include \"cnumber.h\"") "1")))))
#:make-flags
(list "CC=gcc"
"INSTALL_ARG=-no_chown")