X-Git-Url: http://git.chise.org/gitweb/?a=blobdiff_plain;f=lisp%2Fsetup-paths.el;h=b275db2569773c5b09e173c2e07dbcb4e9edafd5;hb=667a2b3a2dbea07c3c228e17d986110cc6a33084;hp=3d075601b8433d0e08e1db4dd3665900a4d330e1;hpb=2e3e3f9ee27fec50f45c282d71eaddf7c673bc56;p=chise%2Fxemacs-chise.git diff --git a/lisp/setup-paths.el b/lisp/setup-paths.el index 3d07560..b275db2 100644 --- a/lisp/setup-paths.el +++ b/lisp/setup-paths.el @@ -54,12 +54,23 @@ nil configure-site-directory)) +(defun paths-find-site-module-directory (roots) + "Find the site modules directory of the XEmacs hierarchy." + (paths-find-site-directory roots "site-modules" + nil + configure-site-module-directory)) + (defun paths-find-lisp-directory (roots) "Find the main Lisp directory of the XEmacs hierarchy." (paths-find-version-directory roots "lisp" nil configure-lisp-directory)) +(defun paths-find-module-directory (roots) + "Find the main modules directory of the XEmacs hierarchy." + (paths-find-architecture-directory roots "modules" + configure-module-directory)) + (defun paths-construct-load-path (roots early-package-load-path late-package-load-path last-package-load-path lisp-directory @@ -84,6 +95,25 @@ lisp-load-path last-package-load-path))) +(defun paths-construct-module-load-path + (root module-directory &optional site-module-directory) + "Construct the modules load path." + (let* ((envvar-value (getenv "EMACSMODULEPATH")) + (env-module-path + (and envvar-value + (paths-decode-directory-path envvar-value 'drop-empties))) + (site-module-load-path + (and site-module-directory + (paths-find-recursive-load-path (list site-module-directory) + paths-load-path-depth))) + (module-load-path + (and module-directory + (paths-find-recursive-load-path (list module-directory) + paths-load-path-depth)))) + (append env-module-path + site-module-load-path + module-load-path))) + (defun paths-construct-info-path (roots early-packages late-packages last-packages) "Construct the info path." (let ((info-path-envval (getenv "INFOPATH"))) @@ -111,10 +141,12 @@ (defun paths-find-lock-directory (roots) "Find the lock directory." + (defvar configure-lock-directory) (paths-find-site-directory roots "lock" "EMACSLOCKDIR" configure-lock-directory)) (defun paths-find-superlock-file (lock-directory) "Find the superlock file." + ;; #### There is no such variable configure-superlock-file! (cond ((null lock-directory) nil) @@ -137,12 +169,12 @@ (paths-decode-directory-path path-envval 'drop-empties))) (packages-find-package-exec-path early-packages) (packages-find-package-exec-path late-packages) - (packages-find-package-exec-path last-packages) (let ((emacspath-envval (getenv "EMACSPATH"))) (and emacspath-envval (split-path emacspath-envval))) (and exec-directory - (list exec-directory)))) + (list exec-directory)) + (packages-find-package-exec-path last-packages))) (defun paths-find-data-directory (roots) "Find the data directory." @@ -154,7 +186,7 @@ (append (packages-find-package-data-path early-packages) (packages-find-package-data-path late-packages) - (packages-find-package-data-path last-packages) - (list data-directory))) + (list data-directory) + (packages-find-package-data-path last-packages))) ;;; setup-paths.el ends here