summaryrefslogtreecommitdiff
path: root/lisp/version.el
diff options
context:
space:
mode:
authorPaul Eggert <eggert@cs.ucla.edu>2016-03-02 10:21:45 -0800
committerPaul Eggert <eggert@cs.ucla.edu>2016-03-02 10:24:11 -0800
commit65f692658e81c940df8b3b315be873840dcef92b (patch)
tree6a1b68cef01af388264cc691ab8bf7ec3daa9cbe /lisp/version.el
parentd5a18a93270bfc8c36e40910f8520b3738a91f43 (diff)
downloademacs-65f692658e81c940df8b3b315be873840dcef92b.tar.gz
Deterministic build improvements
* configure.ac (BUILD_DETAILS): Rename from DETERMINISTIC_DUMP, and negate its sense. Use it via AC_SUBST, not AC_DEFINE, and have its value be either empty or --no-build-details. All uses changed. Change option to --disable-build-details. * doc/lispref/cmdargs.texi (Initial Options): Document --no-build-details. * doc/lispref/internals.texi (Building Emacs): * etc/NEWS: Document --disable-build-details. * doc/lispref/intro.texi (Version Info): Say that emacs-build-time can be nil. * lisp/erc/erc-compat.el (erc-emacs-build-time): Now nil if details are omitted. * lisp/erc/erc.el (erc-cmd-SV): * lisp/version.el (emacs-build-time): Now nil if no build details. (emacs-version): Output build time only if build details. * src/Makefile.in (BUILD_DETAILS): New macro. (temacs, bootstrap-emacs): Use it. * src/emacs.c (build_details): New var. (standard_args, main): Support --no-build-details. (Vdeterministic_dump): Remove; all uses replaced by !build_details. (syms_of_emacs): Set Vbuild_details to a boolean, not to a Lisp_Object. * src/lisp.h (build_details): New decl. * src/sysdep.c (init_system_name): When !build_details, set system-name to nil, not to "elided".
Diffstat (limited to 'lisp/version.el')
-rw-r--r--lisp/version.el24
1 files changed, 13 insertions, 11 deletions
diff --git a/lisp/version.el b/lisp/version.el
index ba24964bd25..dc228870d1e 100644
--- a/lisp/version.el
+++ b/lisp/version.el
@@ -38,14 +38,11 @@ This variable first existed in version 19.23.")
"Minor version number of this version of Emacs.
This variable first existed in version 19.23.")
-;; FIXME: The next variable should also be a constant if
-;; `deterministic-dump' is t.
-(defconst emacs-build-time (current-time)
- "Time at which Emacs was dumped out.")
+(defconst emacs-build-system (system-name)
+ "Name of the system on which Emacs was built, or nil if not available.")
-(defconst emacs-build-system
- (if deterministic-dump "elided" (system-name))
- "Name of the system on which Emacs was built.")
+(defconst emacs-build-time (if emacs-build-system (current-time))
+ "Time at which Emacs was dumped out, or nil if not available.")
(defvar motif-version-string)
(defvar gtk-version-string)
@@ -59,9 +56,7 @@ Don't use this function in programs to choose actions according
to the system configuration; look at `system-configuration' instead."
(interactive "P")
(let ((version-string
- (format (if (not (called-interactively-p 'interactive))
- "GNU Emacs %s (%s%s%s%s)\n of %s"
- "GNU Emacs %s (%s%s%s%s) of %s")
+ (format "GNU Emacs %s (%s%s%s%s)%s"
emacs-version
system-configuration
(cond ((featurep 'motif)
@@ -80,7 +75,14 @@ to the system configuration; look at `system-configuration' instead."
(format ", %s scroll bars"
(capitalize (symbol-name x-toolkit-scroll-bars)))
"")
- (format-time-string "%Y-%m-%d" emacs-build-time))))
+ (if emacs-build-time
+ (format-time-string (concat
+ (if (called-interactively-p
+ 'interactive)
+ "" "\n")
+ " of %Y-%m-%d")
+ emacs-build-time)
+ ""))))
(if here
(insert version-string)
(if (called-interactively-p 'interactive)