Mercurial > emacs
changeset 105484:fe4228529c23
(autoload-excludes): New variable.
(autoload-generate-file-autoloads): Skip files in autoload-excludes.
(batch-update-autoloads): Process a string value of autoload-excludes,
set during the build process.
author | Glenn Morris <rgm@gnu.org> |
---|---|
date | Tue, 06 Oct 2009 03:12:32 +0000 |
parents | ada588cf3ad7 |
children | 73071baff669 |
files | lisp/emacs-lisp/autoload.el |
diffstat | 1 files changed, 18 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/lisp/emacs-lisp/autoload.el Tue Oct 06 03:09:25 2009 +0000 +++ b/lisp/emacs-lisp/autoload.el Tue Oct 06 03:12:32 2009 +0000 @@ -70,6 +70,9 @@ read and an autoload made for it. If there is further text on the line, that text will be copied verbatim to `generated-autoload-file'.") +(defvar autoload-excludes nil + "If non-nil, list of absolute file names not to scan for autoloads.") + (defconst generate-autoload-section-header "\f\n;;;### " "String that marks the form at the start of a new file's autoload section.") @@ -373,7 +376,8 @@ relfile ;; nil until we found a cookie. output-start) - + (if (member absfile autoload-excludes) + (message "Generating autoloads for %s...skipped" file) (with-current-buffer (or visited ;; It is faster to avoid visiting the file. (autoload-find-file file)) @@ -482,7 +486,7 @@ (message "Generating autoloads for %s...done" file)) (or visited ;; We created this buffer, so we should kill it. - (kill-buffer (current-buffer)))) + (kill-buffer (current-buffer))))) ;; If the entries were added to some other buffer, then the file ;; doesn't add entries to OUTFILE. (or (not output-start) otherbuf)))) @@ -679,6 +683,18 @@ (defun batch-update-autoloads () "Update loaddefs.el autoloads in batch mode. Calls `update-directory-autoloads' on the command line arguments." + ;; For use during the Emacs build process only. We do the file-name + ;; expansion here rather than in lisp/Makefile in order to keep the + ;; shell command line short. (Long lines are an issue on some systems.) + (if (stringp autoload-excludes) + (setq autoload-excludes + (mapcar + (lambda (file) + (concat + (expand-file-name (file-name-sans-extension file) + (file-name-directory generated-autoload-file)) + ".el")) + (split-string autoload-excludes)))) (let ((args command-line-args-left)) (setq command-line-args-left nil) (apply 'update-directory-autoloads args)))