summaryrefslogtreecommitdiff
path: root/lisp/emacs-lisp/comp.el
diff options
context:
space:
mode:
Diffstat (limited to 'lisp/emacs-lisp/comp.el')
-rw-r--r--lisp/emacs-lisp/comp.el22
1 files changed, 12 insertions, 10 deletions
diff --git a/lisp/emacs-lisp/comp.el b/lisp/emacs-lisp/comp.el
index 1e348c065b5..a316d741a26 100644
--- a/lisp/emacs-lisp/comp.el
+++ b/lisp/emacs-lisp/comp.el
@@ -2234,16 +2234,18 @@ Ultra cheap impersonation of `batch-byte-compile'."
(defun batch-byte-native-compile-for-bootstrap ()
"As `batch-byte-compile' but used for booststrap.
Always generate elc files too and handle native compiler expected errors."
- (let ((byte-native-for-bootstrap t)
- (byte-to-native-output-file nil))
- (unwind-protect
- (condition-case _
- (batch-native-compile)
- (native-compiler-error-dyn-func)
- (native-compiler-error-empty-byte))
- (pcase byte-to-native-output-file
- (`(,tempfile . ,target-file)
- (rename-file tempfile target-file t))))))
+ (if (equal (getenv "NATIVE_DISABLE") "1")
+ (batch-byte-compile)
+ (let ((byte-native-for-bootstrap t)
+ (byte-to-native-output-file nil))
+ (unwind-protect
+ (condition-case _
+ (batch-native-compile)
+ (native-compiler-error-dyn-func)
+ (native-compiler-error-empty-byte))
+ (pcase byte-to-native-output-file
+ (`(,tempfile . ,target-file)
+ (rename-file tempfile target-file t)))))))
;;;###autoload
(defun native-compile-async (paths &optional recursively load)