[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
01/01: gnu: glibc: Remove timestamp from 'nscd' binary.
From: |
Ludovic Courtès |
Subject: |
01/01: gnu: glibc: Remove timestamp from 'nscd' binary. |
Date: |
Wed, 16 Dec 2015 21:54:20 +0000 |
civodul pushed a commit to branch core-updates
in repository guix.
commit c5b65f7e2bd907a5b7061a42959c485d69ba1ac6
Author: Ludovic Courtès <address@hidden>
Date: Wed Dec 16 22:05:30 2015 +0100
gnu: glibc: Remove timestamp from 'nscd' binary.
This makes libc bit-for-bit reproducible per '--rounds=2'.
* gnu/packages/base.scm (glibc)[arguments] <pre-configure>: Remove
__DATE__ and __TIME__ from nscd_stat.c.
---
gnu/packages/base.scm | 9 +++++++++
1 files changed, 9 insertions(+), 0 deletions(-)
diff --git a/gnu/packages/base.scm b/gnu/packages/base.scm
index 75f00a6..ce7d1cd 100644
--- a/gnu/packages/base.scm
+++ b/gnu/packages/base.scm
@@ -595,6 +595,15 @@ store.")
(string-append "#define _PATH_BSHELL \""
bash "/bin/bash\"\n")))
+ ;; Nscd uses __DATE__ and __TIME__ to create a string to
+ ;; make sure the client and server come from the same
+ ;; libc. Use something deterministic instead.
+ (substitute* "nscd/nscd_stat.c"
+ (("static const char compilation\\[21\\] =.*$")
+ (string-append
+ "static const char compilation[21] = \""
+ (string-take (basename out) 20) "\";\n")))
+
;; Make sure we don't retain a reference to the
;; bootstrap Perl.
(substitute* "malloc/mtrace.pl"