From fa058f6d97d9bf45c82160703c9cb4e85dbcadc0 Mon Sep 17 00:00:00 2001 From: Kyle Meyer Date: Sun, 21 May 2023 17:06:59 -0400 Subject: [PATCH] mk/org-fixup.el: Adjust for Emacs 29 autoload.el deprecation * mk/org-fixup.el (org-make-org-loaddefs): Generate org-loaddefs.el with loaddefs-generate if available. Link: https://list.orgmode.org/87lenabrcv.fsf@kyleam.com --- mk/org-fixup.el | 29 ++++++++++++++++------------- 1 file changed, 16 insertions(+), 13 deletions(-) diff --git a/mk/org-fixup.el b/mk/org-fixup.el index 5989875a8..1cc8882e6 100644 --- a/mk/org-fixup.el +++ b/mk/org-fixup.el @@ -24,7 +24,6 @@ ;; ;;; Commentary: -(require 'autoload) (require 'org-compat "org-compat.el") (defun org-make-manual () @@ -86,18 +85,22 @@ This function is internally used by the build system and should be used by foreign build systems or installers to produce this file in the installation directory of Org mode. Org will not work correctly if this file is not up-to-date." - (with-temp-buffer - (set-visited-file-name "org-loaddefs.el") - (insert ";;; org-loaddefs.el --- autogenerated file, do not edit\n;;\n;;; Code:\n") - (let ((files (directory-files default-directory - nil "^\\(org\\|ob\\|ox\\|ol\\|oc\\)\\(-.*\\)?\\.el$"))) - (mapc (lambda (f) (generate-file-autoloads f)) files)) - (insert "\f\n(provide 'org-loaddefs)\n") - (insert "\f\n;; Local Variables:\n;; version-control: never\n") - (insert ";; no-byte-compile: t\n;; no-update-autoloads: t\n") - (insert ";; coding: utf-8\n;; End:\n;;; org-loaddefs.el ends here\n") - (let ((inhibit-read-only t)) - (save-buffer)))) + (let ((outfile "org-loaddefs.el")) + (if (fboundp 'loaddefs-generate) ; FIXME: Emacs >= 29 + (loaddefs-generate default-directory (expand-file-name outfile)) + (require 'autoload) + (with-temp-buffer + (set-visited-file-name outfile) + (insert ";;; org-loaddefs.el --- autogenerated file, do not edit\n;;\n;;; Code:\n") + (let ((files (directory-files default-directory + nil "^\\(org\\|ob\\|ox\\|ol\\|oc\\)\\(-.*\\)?\\.el$"))) + (mapc (lambda (f) (generate-file-autoloads f)) files)) + (insert "\f\n(provide 'org-loaddefs)\n") + (insert "\f\n;; Local Variables:\n;; version-control: never\n") + (insert ";; no-byte-compile: t\n;; no-update-autoloads: t\n") + (insert ";; coding: utf-8\n;; End:\n;;; org-loaddefs.el ends here\n") + (let ((inhibit-read-only t)) + (save-buffer)))))) (defun org-make-autoloads (&optional compile force) "Make the files org-loaddefs.el and org-version.el in the install directory.