From 4a720484822c3a766dd1775dd659e1a969605457 Mon Sep 17 00:00:00 2001 From: Glenn Morris Date: Wed, 18 May 2011 23:04:16 -0700 Subject: Remove the SOME_MACHINE_LISP distinction in src/Makefile.in. See discussion in http://debbugs.gnu.org/8302 * configure.in (NS_SUPPORT, MOUSE_SUPPORT, TOOLTIP_SUPPORT) (WINDOW_SUPPORT): Remove output variables that are no longer used. * lib-src/makefile.w32-in (echolisp): Remove rule that is no longer needed. (clean): No more echolisp.tmp. * .bzrignore: Remove lib-src/echolisp.tmp. * lisp/emacs-lisp/autoload.el (batch-update-autoloads): Set autoload-excludes by parsing lisp/loadup.el rather than Makefiles. * lisp/loadup.el: Update commentary. * msdos/sed1x.inp (TOOLTIP_SUPPORT, WINDOW_SUPPORT): * msdos/sed1v2.inp (MSDOS_SUPPORT, NS_SUPPORT, MOUSE_SUPPORT) (TOOLTIP_SUPPORT, WINDOW_SUPPORT): No need to edit these any more. * src/Makefile.in (MSDOS_SUPPORT_REAL, MSDOS_SUPPORT, NS_SUPPORT) (REAL_MOUSE_SUPPORT, GPM_MOUSE_SUPPORT, MOUSE_SUPPORT, TOOLTIP_SUPPORT) (BASE_WINDOW_SUPPORT, X_WINDOW_SUPPORT, WINDOW_SUPPORT): Remove. (lisp): Set the order to that of loadup.el. (shortlisp): Make it a copy of $lisp. (SOME_MACHINE_LISP): Remove. ($(etc)/DOC): Depend just on $lisp, not $SOME_MACHINE_LISP too. Use just $shortlisp, not $SOME_MACHINE_LISP too. --- lisp/emacs-lisp/autoload.el | 59 +++++++++++---------------------------------- 1 file changed, 14 insertions(+), 45 deletions(-) (limited to 'lisp/emacs-lisp/autoload.el') diff --git a/lisp/emacs-lisp/autoload.el b/lisp/emacs-lisp/autoload.el index f8f8d9b00f2..6d5067151d3 100644 --- a/lisp/emacs-lisp/autoload.el +++ b/lisp/emacs-lisp/autoload.el @@ -769,52 +769,21 @@ Calls `update-directory-autoloads' on the command line arguments. Definitions are written to `generated-autoload-file' (which should be non-nil)." ;; For use during the Emacs build process only. + ;; Exclude those files that are preloaded on ALL platforms. + ;; These are the ones in loadup.el where "(load" is at the start + ;; of the line (crude, but it works). (unless autoload-excludes - (let* ((ldir (file-name-directory generated-autoload-file)) - (default-directory - (file-name-as-directory - (expand-file-name (if (eq system-type 'windows-nt) - "../lib-src" - "../src") ldir))) - (mfile "Makefile") - (tmpfile "echolisp.tmp") - lim) - ;; Windows uses the 'echolisp' approach because: - ;; i) It does not have $lisp as a single simple definition, so - ;; it would be harder to parse the Makefile. - ;; ii) It can, since it already has $lisp broken up into pieces - ;; that the command-line can handle. - ;; Non-Windows builds do not use the 'echolisp' approach because - ;; no-one knows (?) the maximum safe command-line length on all - ;; supported systems. $lisp is much longer there since it uses - ;; absolute paths, and it would seem a shame to split it just for this. - (when (file-readable-p mfile) - (if (eq system-type 'windows-nt) - (when (ignore-errors - (if (file-exists-p tmpfile) (delete-file tmpfile)) - ;; FIXME call-process is better, if it works. - (shell-command (format "%s echolisp > %s" - autoload-make-program tmpfile)) - (file-readable-p tmpfile)) - (with-temp-buffer - (insert-file-contents tmpfile) - ;; FIXME could be a single while loop. - (while (not (eobp)) - (setq lim (line-end-position)) - (while (re-search-forward "\\([^ ]+\\.el\\)c?\\>" lim t) - (push (expand-file-name (match-string 1)) - autoload-excludes)) - (forward-line 1)))) - (with-temp-buffer - (insert-file-contents mfile) - (when (re-search-forward "^shortlisp= " nil t) - (while (and (not lim) - (re-search-forward "\\.\\./lisp/\\([^ ]+\\.el\\)c?\\>" - nil t)) - (push (expand-file-name (match-string 1) ldir) - autoload-excludes) - (skip-chars-forward " \t") - (if (eolp) (setq lim t))))))))) + (let ((default-directory (file-name-directory generated-autoload-file)) + file) + (when (file-readable-p "loadup.el") + (with-temp-buffer + (insert-file-contents "loadup.el") + (while (re-search-forward "^(load \"\\([^\"]+\\)\"" nil t) + (setq file (match-string 1)) + (or (string-match "\\.el\\'" file) + (setq file (format "%s.el" file))) + (or (string-match "\\`site-" file) + (push (expand-file-name file) autoload-excludes))))))) (let ((args command-line-args-left)) (setq command-line-args-left nil) (apply 'update-directory-autoloads args))) -- cgit v1.2.3