diff options
| author | Paul Eggert | 2016-03-02 10:21:45 -0800 |
|---|---|---|
| committer | Paul Eggert | 2016-03-02 10:24:11 -0800 |
| commit | 65f692658e81c940df8b3b315be873840dcef92b (patch) | |
| tree | 6a1b68cef01af388264cc691ab8bf7ec3daa9cbe /doc | |
| parent | d5a18a93270bfc8c36e40910f8520b3738a91f43 (diff) | |
| download | emacs-65f692658e81c940df8b3b315be873840dcef92b.tar.gz emacs-65f692658e81c940df8b3b315be873840dcef92b.zip | |
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 'doc')
| -rw-r--r-- | doc/emacs/cmdargs.texi | 7 | ||||
| -rw-r--r-- | doc/lispref/internals.texi | 10 | ||||
| -rw-r--r-- | doc/lispref/intro.texi | 3 |
3 files changed, 19 insertions, 1 deletions
diff --git a/doc/emacs/cmdargs.texi b/doc/emacs/cmdargs.texi index a842cb84abd..646c8da1bb8 100644 --- a/doc/emacs/cmdargs.texi +++ b/doc/emacs/cmdargs.texi | |||
| @@ -283,6 +283,13 @@ which will invoke Emacs with @samp{--script} and supply the name of | |||
| 283 | the script file as @var{file}. Emacs Lisp then treats the @samp{#!} | 283 | the script file as @var{file}. Emacs Lisp then treats the @samp{#!} |
| 284 | on this first line as a comment delimiter. | 284 | on this first line as a comment delimiter. |
| 285 | 285 | ||
| 286 | @item --no-build-details | ||
| 287 | @opindex --no-build-details | ||
| 288 | @cindex build details | ||
| 289 | @cindex deterministic build | ||
| 290 | Omit details like system name and build time from the Emacs executable, | ||
| 291 | so that builds are more deterministic. | ||
| 292 | |||
| 286 | @item -q | 293 | @item -q |
| 287 | @opindex -q | 294 | @opindex -q |
| 288 | @itemx --no-init-file | 295 | @itemx --no-init-file |
diff --git a/doc/lispref/internals.texi b/doc/lispref/internals.texi index 41064df5a28..fedef3d7f46 100644 --- a/doc/lispref/internals.texi +++ b/doc/lispref/internals.texi | |||
| @@ -66,6 +66,16 @@ into the dumped Emacs. If you port Emacs to a new operating system, | |||
| 66 | and are not able to implement dumping, then Emacs must load | 66 | and are not able to implement dumping, then Emacs must load |
| 67 | @file{loadup.el} each time it starts. | 67 | @file{loadup.el} each time it starts. |
| 68 | 68 | ||
| 69 | @cindex build details | ||
| 70 | @cindex deterministic build | ||
| 71 | @cindex @option{--disable-build-details} option to @command{configure} | ||
| 72 | By default the dumped @file{emacs} executable records details such | ||
| 73 | as the build time and host name. Use the | ||
| 74 | @option{--disable-build-details} option of @command{configure} to | ||
| 75 | suppress these details, so that building and installing Emacs twice | ||
| 76 | from the same sources is more likely to result in identical copies of | ||
| 77 | Emacs. | ||
| 78 | |||
| 69 | @cindex @file{site-load.el} | 79 | @cindex @file{site-load.el} |
| 70 | You can specify additional files to preload by writing a library named | 80 | You can specify additional files to preload by writing a library named |
| 71 | @file{site-load.el} that loads them. You may need to rebuild Emacs | 81 | @file{site-load.el} that loads them. You may need to rebuild Emacs |
diff --git a/doc/lispref/intro.texi b/doc/lispref/intro.texi index 0f42d4d8a7f..2f84aeee39e 100644 --- a/doc/lispref/intro.texi +++ b/doc/lispref/intro.texi | |||
| @@ -494,7 +494,8 @@ giving a prefix argument makes @var{here} non-@code{nil}. | |||
| 494 | @defvar emacs-build-time | 494 | @defvar emacs-build-time |
| 495 | The value of this variable indicates the time at which Emacs was | 495 | The value of this variable indicates the time at which Emacs was |
| 496 | built. It is a list of four integers, like the value of | 496 | built. It is a list of four integers, like the value of |
| 497 | @code{current-time} (@pxref{Time of Day}). | 497 | @code{current-time} (@pxref{Time of Day}), or is @code{nil} |
| 498 | if the information is not available. | ||
| 498 | 499 | ||
| 499 | @example | 500 | @example |
| 500 | @group | 501 | @group |