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.
This commit is contained in:
Glenn Morris 2011-05-18 23:04:16 -07:00
parent 23373930da
commit 4a72048482
12 changed files with 214 additions and 240 deletions

View file

@ -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)))