[PATCH 21.5] Do not insert timestamps in .elc files
Jerry James <[email protected]> Thu, 25 Sep 2014 12:04:24 -0600
| Newsgroups | gmane.emacs.xemacs.patches |
|---|---|
| Message-ID | <CAHCOHQnEpzvbiu6cQMwc+3yYMxadgNUt=b+=Z1HBc91CMHTMDw@mail.gmail.com> |
PATCH 21.5 Over on xemacs-beta, Stephen J. Turnbull <[email protected]> wrote: > Why not just make it a commit-time constant? That mailbox is great! :-) I hoped somebody would like that. My favorite of all time, though, was the email address of Patrice Godefroid when he was at Bell Labs: [email protected]. > No, I don't see any reason to keep it. AFAIK the reason to have it in > the first place was to make it sort of possible to identify the build > that compiled the elc, but the VCS id is much more accurate about the > code base. > > But there are going to be files that vary anyway; I'm pretty sure > there's code protected by compile-time features (like Mats's > gnus-use-idna), even in core. Sure. The use case of interest is compiling on systems that vary only in CPU architecture. They will have the same sets of software installed, with exactly the same versions, etc. This change will make it possible to verify that we're getting identical results in such cases, which means the files can be shared across all architectures (we can produce a "noarch" package, to use RPM terminology). Anyway, here's the patch. diff -r be31f7878b0d lisp/ChangeLog --- a/lisp/ChangeLog Tue Sep 23 16:50:48 2014 -0600 +++ b/lisp/ChangeLog Thu Sep 25 11:58:18 2014 -0600 @@ -1,3 +1,8 @@ +2014-09-25 Jerry James <[email protected]> + + * bytecomp.el (byte-compile-insert-header): do not insert email + addresses or timestamps in comments to get reproducible builds. + 2014-08-05 Aidan Kehoe <[email protected]> * keymap.el: diff -r be31f7878b0d lisp/bytecomp.el --- a/lisp/bytecomp.el Tue Sep 23 16:50:48 2014 -0600 +++ b/lisp/bytecomp.el Thu Sep 25 11:58:18 2014 -0600 @@ -2156,11 +2156,7 @@ finally return res))) (setq comments (with-string-as-buffer-contents "" - (insert "\n;;; compiled by " - (or (and (boundp 'user-mail-address) user-mail-address) - (concat (user-login-name) "@" (system-name))) - " on " - (current-time-string) "\n;;; from file " filename "\n") + (insert "\n;;; compiled from file " filename "\n") (insert ";;; emacs version " emacs-version ".\n") (insert ";;; bytecomp version " byte-compile-version "\n;;; " (cond -- Jerry James http://www.jamezone.org/