diff --git a/lisp/emacs-lisp/shorthands.el b/lisp/emacs-lisp/shorthands.el index 413b9f816a0..33a302e500c 100644 --- a/lisp/emacs-lisp/shorthands.el +++ b/lisp/emacs-lisp/shorthands.el @@ -36,7 +36,11 @@ ;; detail of files.el. That function should be exported, ;; possibly be refactored into two parts, since we're only ;; interested in basic "Local Variables" parsing. - (alist-get 'read-symbol-shorthands (hack-local-variables--find-variables))) + ;; FIXME: Disable ourselves temporarily to avoid inf-loops during bootstrap, + ;; trying to look for shorthands in the files that implement shorthands. + (let ((hack-read-symbol-shorthands-function #'ignore)) + (alist-get 'read-symbol-shorthands + (hack-local-variables--find-variables)))) (setq hack-read-symbol-shorthands-function #'hack-read-symbol-shorthands) diff --git a/lisp/international/mule-cmds.el b/lisp/international/mule-cmds.el index 91822d1be04..b1ff5922c90 100644 --- a/lisp/international/mule-cmds.el +++ b/lisp/international/mule-cmds.el @@ -3125,6 +3125,7 @@ on encoding." (#xE0000 . #xE01FF))) (gc-cons-threshold (max gc-cons-threshold 10000000)) (names (make-hash-table :size 42943 :test #'equal))) + (require 'charprop) ;; Usually preloaded, but not during bootstrap. (dolist (range ranges) (let ((c (car range)) (end (cdr range))) diff --git a/src/Makefile.in b/src/Makefile.in index e4fc2fef711..a2f7ea011c3 100644 --- a/src/Makefile.in +++ b/src/Makefile.in @@ -948,7 +948,9 @@ NATIVE_COMPILATION_AOT = @NATIVE_COMPILATION_AOT@ endif ifneq ($(XCONFIGURE),android) -$(lispsource)/loaddefs.el: | bootstrap-emacs$(EXEEXT) $(bootstrap_pdmp) +$(lispsource)/loaddefs.el: | \ + bootstrap-emacs$(EXEEXT) $(bootstrap_pdmp) \ + $(lispsource)/international/charprop.el $(MAKE) -C ../lisp autoloads EMACS="$(bootstrap_exe)" endif