This section documents the variables that control
native-compilation.
-@defvar inhibit-native-compilation
+@defvar inhibit-automatic-native-compilation
If your Emacs has support for native compilation, Emacs will (by
default) compile the Lisp files you're loading in the background, and
then install the native-compiled versions of the functions. If you
if any built-in functions are redefined. However, these trampolines
will not get written to disk.
-You can also use the @samp{EMACS_INHIBIT_NATIVE_COMPILATION}
+You can also use the @samp{EMACS_INHIBIT_AUTOMATIC_NATIVE_COMPILATION}
environment variable to disable native compilation.
@end defvar
** Native Compilation
+++
-*** New variable 'inhibit-native-compilation'.
+*** New variable 'inhibit-automatic-native-compilation'.
If set, Emacs will inhibit native compilation (and won't write
anything to the eln cache automatically). The variable is initialised
-from the EMACS_INHIBIT_NATIVE_COMPILATION environment variable on
-Emacs startup.
+from the EMACS_INHIBIT_AUTOMATIC_NATIVE_COMPILATION environment
+variable on Emacs startup.
--- *** New command 'native-compile-prune-cache'. This command
form nil
;; If we've disabled nativecomp, don't write the trampolines to
;; the eln cache (but create them).
- (and (not inhibit-native-compilation)
+ (and (not inhibit-automatic-native-compilation)
(cl-loop
for dir in (if native-compile-target-directory
(list (expand-file-name comp-native-version-dir
Load the compiled code when finished.
Use `emacs-lisp-byte-compile-and-load' in combination with
-`inhibit-native-compilation' set to nil to achieve asynchronous
-native compilation."
+`inhibit-automatic-native-compilation' set to nil to achieve
+asynchronous native compilation."
(interactive nil emacs-lisp-mode)
(emacs-lisp--before-compile-buffer)
(load (native-compile buffer-file-name)))
(setq comp--compilable t))
(defvar native-comp-eln-load-path)
-(defvar inhibit-native-compilation)
+(defvar inhibit-automatic-native-compilation)
(defvar comp-enable-subr-trampolines)
(defvar startup--original-eln-load-path nil
reads the initialization files, etc.
It is the default value of the variable `top-level'."
;; Allow disabling automatic .elc->.eln processing.
- (setq inhibit-native-compilation (getenv "EMACS_INHIBIT_NATIVE_COMPILATION"))
+ (setq inhibit-automatic-native-compilation
+ (getenv "EMACS_INHIBIT_AUTOMATIC_NATIVE_COMPILATION"))
(if command-line-processed
(message internal--top-level-message)
;; in this session. This is necessary if libgccjit is not
;; available on MS-Windows, but Emacs was built with
;; native-compilation support.
- (setq inhibit-native-compilation t
+ (setq inhibit-automatic-native-compilation t
comp-enable-subr-trampolines nil))
;; Form `native-comp-eln-load-path'.
(make-obsolete-variable 'max-specpdl-size nil "29.1")
(make-obsolete-variable 'native-comp-deferred-compilation
- 'inhibit-native-compilation "29.1")
+ 'inhibit-automatic-native-compilation "29.1")
\f
;;;; Alternate names for functions - these are not being phased out.
return;
if (!native_comp_deferred_compilation
- || !NILP (Vinhibit_native_compilation)
+ || !NILP (Vinhibit_automatic_native_compilation)
|| noninteractive
|| !NILP (Vpurify_flag)
|| !COMPILEDP (definition)
doc: /* Non-nil when comp.el can be native compiled.
For internal use. */);
/* Compiler control customizes. */
- DEFVAR_LISP ("inhibit-native-compilation", Vinhibit_native_compilation,
+ DEFVAR_LISP ("inhibit-automatic-native-compilation",
+ Vinhibit_automatic_native_compilation,
doc: /* If non-nil, inhibit automatic native compilation of loaded .elc files.
After compilation, each function definition is updated to the native
compiled one. */);
- Vinhibit_native_compilation = Qnil;
+ Vinhibit_automatic_native_compilation = Qnil;
DEFVAR_BOOL ("native-comp-deferred-compilation",
native_comp_deferred_compilation,