Mercurial > emacs
comparison lisp/emacs-lisp/autoload.el @ 81790:8aa7f1b66163
(update-directory-autoloads): Remove duplicates without also removing
entries from other directories.
author | Stefan Monnier <monnier@iro.umontreal.ca> |
---|---|
date | Tue, 10 Jul 2007 14:13:16 +0000 |
parents | 6416cbdef0fa |
children | e29d41367d51 |
comparison
equal
deleted
inserted
replaced
81789:98fb807fb54e | 81790:8aa7f1b66163 |
---|---|
557 (files (apply 'nconc | 557 (files (apply 'nconc |
558 (mapcar (lambda (dir) | 558 (mapcar (lambda (dir) |
559 (directory-files (expand-file-name dir) | 559 (directory-files (expand-file-name dir) |
560 t files-re)) | 560 t files-re)) |
561 dirs))) | 561 dirs))) |
562 (done ()) | |
562 (this-time (current-time)) | 563 (this-time (current-time)) |
563 ;; Files with no autoload cookies or whose autoloads go to other | 564 ;; Files with no autoload cookies or whose autoloads go to other |
564 ;; files because of file-local autoload-generated-file settings. | 565 ;; files because of file-local autoload-generated-file settings. |
565 (no-autoloads nil) | 566 (no-autoloads nil) |
566 (autoload-modified-buffers nil)) | 567 (autoload-modified-buffers nil)) |
590 (not (time-less-p last-time file-time))) | 591 (not (time-less-p last-time file-time))) |
591 ;; file unchanged | 592 ;; file unchanged |
592 (push file no-autoloads) | 593 (push file no-autoloads) |
593 (setq files (delete file files))))))) | 594 (setq files (delete file files))))))) |
594 ((not (stringp file))) | 595 ((not (stringp file))) |
595 ((not (and (file-exists-p file) | 596 ((or (not (file-exists-p file)) |
596 ;; Remove duplicates as well, just in case. | 597 ;; Remove duplicates as well, just in case. |
597 (member file files))) | 598 (member file done)) |
598 ;; Remove the obsolete section. | 599 ;; Remove the obsolete section. |
599 (autoload-remove-section (match-beginning 0))) | 600 (autoload-remove-section (match-beginning 0))) |
600 ((not (time-less-p (nth 4 form) | 601 ((not (time-less-p (nth 4 form) |
601 (nth 5 (file-attributes file)))) | 602 (nth 5 (file-attributes file)))) |
602 ;; File hasn't changed. | 603 ;; File hasn't changed. |
603 nil) | 604 nil) |
604 (t | 605 (t |
605 (autoload-remove-section (match-beginning 0)) | 606 (autoload-remove-section (match-beginning 0)) |
606 (if (autoload-generate-file-autoloads | 607 (if (autoload-generate-file-autoloads |
607 file (current-buffer) buffer-file-name) | 608 file (current-buffer) buffer-file-name) |
608 (push file no-autoloads)))) | 609 (push file no-autoloads)))) |
610 (push file done) | |
609 (setq files (delete file files))))) | 611 (setq files (delete file files))))) |
610 ;; Elements remaining in FILES have no existing autoload sections yet. | 612 ;; Elements remaining in FILES have no existing autoload sections yet. |
611 (dolist (file files) | 613 (dolist (file files) |
612 (if (autoload-generate-file-autoloads file nil buffer-file-name) | 614 (if (autoload-generate-file-autoloads file nil buffer-file-name) |
613 (push file no-autoloads))) | 615 (push file no-autoloads))) |