[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
01/01: gnu: xorg-server: Build reproducibly.
From: |
Ludovic Courtès |
Subject: |
01/01: gnu: xorg-server: Build reproducibly. |
Date: |
Mon, 30 Oct 2017 20:02:38 -0400 (EDT) |
civodul pushed a commit to branch master
in repository guix.
commit c2eb8cd98c82277e851eb4302b7f12614e215a76
Author: Ludovic Courtès <address@hidden>
Date: Tue Oct 31 00:47:35 2017 +0100
gnu: xorg-server: Build reproducibly.
Fixes <https://bugs.gnu.org/24112>.
* gnu/packages/xorg.scm (xorg-server)[arguments]: Pass "--with-os-name"
and "--with-os-vendor" as #:configure-flags.
Augment 'pre-configure' phase to set 'BUILD_DATE' and 'BUILD_TIME' in
'configure'.
---
gnu/packages/xorg.scm | 36 +++++++++++++++++++++++++-----------
1 file changed, 25 insertions(+), 11 deletions(-)
diff --git a/gnu/packages/xorg.scm b/gnu/packages/xorg.scm
index 28d0d75..5820b3d 100644
--- a/gnu/packages/xorg.scm
+++ b/gnu/packages/xorg.scm
@@ -5178,6 +5178,12 @@ over Xlib, including:
;; It's not used anyway, so set it to empty.
"--with-default-font-path="
+ ;; The default is to use "uname -srm", which captures the kernel
+ ;; version and makes builds non-reproducible.
+ "--with-os-name=GNU"
+
+ "--with-os-vendor=GuixSD" ;not strictly needed, but looks nice
+
;; For the log file, etc.
"--localstatedir=/var"
@@ -5187,17 +5193,25 @@ over Xlib, including:
#:phases
(modify-phases %standard-phases
- (add-before
- 'configure 'pre-configure
- (lambda _
- (substitute* (find-files "." "\\.c$")
- (("/bin/sh") (which "sh")))
-
- ;; Don't try to 'mkdir /var'.
- (substitute* "hw/xfree86/Makefile.in"
- (("\\$\\(MKDIR_P\\).*logdir.*")
- "true\n"))
- #t)))))
+ (add-before 'configure 'pre-configure
+ (lambda _
+ (substitute* (find-files "." "\\.c$")
+ (("/bin/sh") (which "sh")))
+
+ ;; Don't try to 'mkdir /var'.
+ (substitute* "hw/xfree86/Makefile.in"
+ (("\\$\\(MKDIR_P\\).*logdir.*")
+ "true\n"))
+
+ ;; Strip timestamps that would otherwise end up in the 'Xorg'
+ ;; binary.
+ (substitute* "configure"
+ (("^BUILD_DATE=.*$")
+ "BUILD_DATE=19700101\n")
+ (("^BUILD_TIME=.*$")
+ "BUILD_TIME=000001\n"))
+
+ #t)))))
(home-page "https://www.x.org/wiki/")
(synopsis "Xorg implementation of the X Window System")
(description