]> git.eshelyaron.com Git - emacs.git/commitdiff
Revert "Add new variable 'inhibit-native-compilation'"
authorAndrea Corallo <akrl@sdf.org>
Mon, 13 Feb 2023 09:19:31 +0000 (10:19 +0100)
committerAndrea Corallo <akrl@sdf.org>
Mon, 13 Feb 2023 09:19:31 +0000 (10:19 +0100)
This reverts commit 5fec9182dbeffa88cef6651d8c798ef9665d6681.

doc/lispref/compile.texi
etc/NEWS
lisp/emacs-lisp/comp.el
lisp/progmodes/elisp-mode.el
lisp/startup.el
lisp/subr.el
src/comp.c

index 8bb079b65dff135e70312eaabf25887e3cde57f0..0617b9c533cdf4eb038e58b8c6a906243009a268 100644 (file)
@@ -981,24 +981,6 @@ whether native-compilation is available should use this predicate.
   This section documents the variables that control
 native-compilation.
 
-@defvar inhibit-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
-wish to disable this, you can set this variable to non-@code{nil}.  If
-you want to set it permanently, this should probably be done from the
-early init file, since setting it in the normal init file is probably
-too late.
-
-While setting this variable disables automatic compilation of Lisp
-files, the compiler may still be invoked to install @dfn{trampolines}
-if any built-in functions are redefined.  However, these trampolines
-will not get written to your cache directory.
-
-You can also use the @samp{EMACS_INHIBIT_NATIVE_COMPILATION}
-environment variable to disable native compilation.
-@end defvar
-
 @defopt native-comp-speed
 This variable specifies the optimization level for native compilation.
 Its value should be a number between @minus{}1 and 3.  Values between
index 5ce18872f1a1c90161896d1b9b8d28861349d127..8f344aa576409552564232c163808ef88b435093 100644 (file)
--- a/etc/NEWS
+++ b/etc/NEWS
@@ -199,14 +199,6 @@ load time.
 ** Native Compilation
 
 +++
-*** New variable 'inhibit-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.
-
-
----
 *** New command 'native-compile-prune-cache'.
 This command deletes old subdirectories of the eln cache (but not the
 ones for the current Emacs version).  Note that subdirectories of the
index ab6c8a8ea90b7f0b657b0649f5e3705aacc19d7f..828e31c43bddc8a948a11791a57d795ebc4af200 100644 (file)
@@ -3803,25 +3803,22 @@ Return the trampoline if found or nil otherwise."
          (lexical-binding t))
     (comp--native-compile
      form nil
-     ;; If we've disabled nativecomp, don't write the trampolines to
-     ;; the eln cache (but create them).
-     (and (not inhibit-native-compilation)
-          (cl-loop
-           for dir in (if native-compile-target-directory
-                          (list (expand-file-name comp-native-version-dir
-                                                  native-compile-target-directory))
-                        (comp-eln-load-path-eff))
-           for f = (expand-file-name
-                    (comp-trampoline-filename subr-name)
-                    dir)
-           unless (file-exists-p dir)
-           do (ignore-errors
-                (make-directory dir t)
-                (cl-return f))
-           when (file-writable-p f)
-           do (cl-return f)
-           finally (error "Cannot find suitable directory for output in \
-`native-comp-eln-load-path'"))))))
+     (cl-loop
+      for dir in (if native-compile-target-directory
+                     (list (expand-file-name comp-native-version-dir
+                                             native-compile-target-directory))
+                   (comp-eln-load-path-eff))
+      for f = (expand-file-name
+               (comp-trampoline-filename subr-name)
+               dir)
+      unless (file-exists-p dir)
+        do (ignore-errors
+             (make-directory dir t)
+             (cl-return f))
+      when (file-writable-p f)
+        do (cl-return f)
+      finally (error "Cannot find suitable directory for output in \
+`native-comp-eln-load-path'")))))
 
 \f
 ;; Some entry point support code.
index 7ba2c38cb750551f1cbcd5d30aad83afdfc83329..ba1183f686bbdfe7ba0253afd97d4caa75f40266 100644 (file)
@@ -220,7 +220,7 @@ All commands in `lisp-mode-shared-map' are inherited by this map."
 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-comp-deferred-compilation' set to t to achieve asynchronous
 native compilation."
   (interactive nil emacs-lisp-mode)
   (emacs-lisp--before-compile-buffer)
index b0a8eed9d38c7943c851e711aa87d4206d21db03..240cfa30098f904a557f4206c9eba871f89399fb 100644 (file)
@@ -542,7 +542,7 @@ DIRS are relative."
   (setq comp--compilable t))
 
 (defvar native-comp-eln-load-path)
-(defvar inhibit-native-compilation)
+(defvar native-comp-deferred-compilation)
 (defvar comp-enable-subr-trampolines)
 
 (defvar startup--original-eln-load-path nil
@@ -579,9 +579,6 @@ the updated value."
 It sets `command-line-processed', processes the command-line,
 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"))
-
   (if command-line-processed
       (message internal--top-level-message)
     (setq command-line-processed t)
@@ -600,7 +597,7 @@ It is the default value of the variable `top-level'."
         ;; 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 native-comp-deferred-compilation nil
               comp-enable-subr-trampolines nil))
 
       ;; Form `native-comp-eln-load-path'.
index 6282abc1b16ba2f486d7c06e0717b34234b276d9..a56aeab724a551bd09dee446a40e23255517d32c 100644 (file)
@@ -1894,9 +1894,6 @@ activations.  To prevent runaway recursion, use `max-lisp-eval-depth'
 instead; it will indirectly limit the specpdl stack size as well.")
 (make-obsolete-variable 'max-specpdl-size nil "29.1")
 
-(make-obsolete-variable 'native-comp-deferred-compilation
-                        'inhibit-native-compilation "29.1")
-
 \f
 ;;;; Alternate names for functions - these are not being phased out.
 
index 88b871aaae8e5c187c4193f7a7acadae82718d0c..7d67995fa874ace05a7a09d902aabb45ae9c60dd 100644 (file)
@@ -5174,7 +5174,6 @@ maybe_defer_native_compilation (Lisp_Object function_name,
     return;
 
   if (!native_comp_deferred_compilation
-      || !NILP (Vinhibit_native_compilation)
       || noninteractive
       || !NILP (Vpurify_flag)
       || !COMPILEDP (definition)
@@ -5678,13 +5677,6 @@ For internal use.  */);
               doc: /* Non-nil when comp.el can be native compiled.
 For internal use. */);
   /* Compiler control customizes.  */
-  DEFVAR_LISP ("inhibit-native-compilation", Vinhibit_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;
-
   DEFVAR_BOOL ("native-comp-deferred-compilation",
               native_comp_deferred_compilation,
               doc: /* If non-nil compile loaded .elc files asynchronously.