emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] Changes to emacs/lisp/cus-dep.el,v


From: Glenn Morris
Subject: [Emacs-diffs] Changes to emacs/lisp/cus-dep.el,v
Date: Thu, 05 Jun 2008 02:35:36 +0000

CVSROOT:        /sources/emacs
Module name:    emacs
Changes by:     Glenn Morris <gm>       08/06/05 02:35:36

Index: cus-dep.el
===================================================================
RCS file: /sources/emacs/emacs/lisp/cus-dep.el,v
retrieving revision 1.43
retrieving revision 1.44
diff -u -b -r1.43 -r1.44
--- cus-dep.el  6 May 2008 07:57:28 -0000       1.43
+++ cus-dep.el  5 Jun 2008 02:35:36 -0000       1.44
@@ -1,7 +1,7 @@
 ;;; cus-dep.el --- find customization dependencies
 ;;
-;; Copyright (C) 1997, 2001, 2002, 2003, 2004, 2005,
-;;   2006, 2007, 2008 Free Software Foundation, Inc.
+;; Copyright (C) 1997, 2001, 2002, 2003, 2004, 2005, 2006, 2007,
+;;   2008  Free Software Foundation, Inc.
 ;;
 ;; Author: Per Abrahamsen <address@hidden>
 ;; Keywords: internal
@@ -30,13 +30,20 @@
 (require 'cus-face)
 
 (defvar generated-custom-dependencies-file "cus-load.el"
-  "Output file for \\[custom-make-dependencies].")
+  "Output file for `custom-make-dependencies'.")
+
+;; See finder-no-scan-regexp in finder.el.
+(defvar custom-dependencies-no-scan-regexp "\\(^\\.#\\|\\(loaddefs\\|\
+cus-load\\|finder-inf\\|esh-groups\\|subdirs\\)\\.el$\\)"
+  "Regexp matching file names not to scan for `custom-make-dependencies'.")
+
+(autoload 'autoload-rubric "autoload")
 
 (defun custom-make-dependencies ()
   "Batch function to extract custom dependencies from .el files.
 Usage: emacs -batch -l ./cus-dep.el -f custom-make-dependencies DIRS"
   (let ((enable-local-eval nil))
-    (set-buffer (get-buffer-create " cus-dep temp"))
+    (with-temp-buffer
     (dolist (subdir command-line-args-left)
       (message "Directory %s" subdir)
       (let ((files (directory-files subdir nil "\\`[^=].*\\.el\\'"))
@@ -49,9 +56,9 @@
                                            preloaded-file-list) t)
                               "\\.el\\'")))
        (dolist (file files)
-         (when (and (file-exists-p file)
-                    ;; Ignore files that are preloaded.
-                    (not (string-match preloaded file)))
+            (unless (or (string-match custom-dependencies-no-scan-regexp file)
+                        (string-match preloaded file)
+                        (not (file-exists-p file)))
            (erase-buffer)
            (insert-file-contents file)
            (goto-char (point-min))
@@ -74,15 +81,14 @@
                            (eval expr)
                            (put (nth 1 expr) 'custom-where name))
                        (error nil))))
-               (error nil))))))))
+                  (error nil)))))))))
   (message "Generating %s..." generated-custom-dependencies-file)
   (set-buffer (find-file-noselect generated-custom-dependencies-file))
+  (setq buffer-undo-list t)
   (erase-buffer)
-  (insert ";;; " (file-name-nondirectory generated-custom-dependencies-file)
-      " --- automatically extracted custom dependencies
-;;\n;;; Code:
-
-")
+  (insert (autoload-rubric generated-custom-dependencies-file
+                           "custom dependencies"))
+  (search-backward "")
   (mapatoms (lambda (symbol)
              (let ((members (get symbol 'custom-group))
                     where found)
@@ -160,23 +166,8 @@
            (if version-alist "'" ""))
     (prin1 version-alist (current-buffer))
     (insert "\n \"For internal use by custom.\")\n"))
-
-  (insert "\
-
-\(provide '" (file-name-sans-extension
-             (file-name-nondirectory generated-custom-dependencies-file)) ")
-
-;; Local Variables:
-;; version-control: never
-;; no-byte-compile: t
-;; no-update-autoloads: t
-;; End:\n;;; "
-              (file-name-nondirectory generated-custom-dependencies-file)
-              " ends here\n")
-  (let ((kept-new-versions 10000000))
-    (save-buffer))
-  (message "Generating %s...done" generated-custom-dependencies-file)
-  (kill-emacs))
+  (save-buffer)
+  (message "Generating %s...done" generated-custom-dependencies-file))
 
 
 




reply via email to

[Prev in Thread] Current Thread [Next in Thread]