Mercurial > hg > xemacs-beta
diff lisp/packages.el @ 420:41dbb7a9d5f2 r21-2-18
Import from CVS: tag r21-2-18
author | cvs |
---|---|
date | Mon, 13 Aug 2007 11:24:09 +0200 |
parents | 697ef44129c6 |
children | 11054d720c21 |
line wrap: on
line diff
--- a/lisp/packages.el Mon Aug 13 11:23:14 2007 +0200 +++ b/lisp/packages.el Mon Aug 13 11:24:09 2007 +0200 @@ -55,7 +55,7 @@ ;;; Package versioning (defvar packages-package-list nil - "database of loaded packages and version numbers") + "Database of loaded packages and version numbers") (defvar packages-hierarchy-depth 1 "Depth of package hierarchies.") @@ -86,13 +86,14 @@ (defvar package-locations (list - (list (paths-construct-path '("~" ".xemacs")) + (list (paths-construct-path '("~" ".xemacs" "mule-packages")) + 'early #'(lambda () (featurep 'mule))) + (list (paths-construct-path '("~" ".xemacs" "xemacs-packages")) 'early #'(lambda () t)) (list "site-packages" 'late #'(lambda () t)) (list "infodock-packages" 'late #'(lambda () (featurep 'infodock))) (list "mule-packages" 'late #'(lambda () (featurep 'mule))) - (list "xemacs-packages" 'late #'(lambda () t)) - (list "packages" 'late #'(lambda () t))) + (list "xemacs-packages" 'late #'(lambda () t))) "Locations of the various package directories. This is a list each of whose elements describes one directory. A directory description is a three-element list. @@ -122,9 +123,8 @@ (let ((info (if (and attributes (floatp (car attributes))) (list :version (car attributes)) attributes))) - (remassq name packages-package-list) (setq packages-package-list - (cons (cons name info) packages-package-list)))) + (cons (cons name info) (remassq name packages-package-list))))) (defun package-require (name version) (let ((pkg (assq name packages-package-list))) @@ -452,7 +452,7 @@ SUFFIXES is a list of names of package subdirectories to look for." (let ((directories (apply - #'append + #'nconc (mapcar #'(lambda (package) (mapcar #'(lambda (suffix) (file-name-as-directory (concat package suffix)))