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.
This commit is contained in:
Ludovic Courtès 2015-12-16 22:05:30 +01:00
parent 6042f40bfa
commit c5b65f7e2b

View file

@ -595,6 +595,15 @@ (define-public glibc
(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"