(chinese-cns11643-3): Don't define if `utf-2000' is provided because
[chise/xemacs-chise.git] / lisp / packages.el
index eb3b4a7..03d001b 100644 (file)
@@ -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.")
 
 (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 @@ the directory to be ignored.")
   (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 @@ PACKAGES is a list of package directories.
 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)))