summary refs log tree commit diff
path: root/gnu
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 /gnu
parentc9b99e88f510a4211df2be56f2c13d380f7a99b2 (diff)
downloadguix-bb335e84ed98055599752740a0f6114fe31f325d.tar.gz
gnu: exim: Build (more) reproducibly.
* gnu/packages/mail.scm (exim)[arguments]: Add a ‘build-reproducibly’
phase.
Diffstat (limited to 'gnu')
-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")