tm 7.87.
[elisp/tm.git] / TM-CFG
diff --git a/TM-CFG b/TM-CFG
index b434a38..4609e3d 100644 (file)
--- a/TM-CFG
+++ b/TM-CFG
 ;;; -*-Emacs-Lisp-*-
 ;;;
-;;; $Id: TM-CFG,v 2.0 1996/03/11 14:54:25 morioka Exp $
+;;; $Id: TM-CFG,v 7.23 1996/09/08 17:46:57 morioka Exp morioka $
 ;;;
 
+(defvar default-load-path load-path)
 (setq load-path (append
                 (mapcar (function
                          (lambda (path)
                            (expand-file-name path (getenv "PWD"))
                            ))
-                        '("." "../tl/" "../mel/" "mh-e/")
+                        '("." "../tl" "../mu" "../mel"
+                          "../tm-mh-e" "../gnus-mime" "../tm-gnus"
+                          "../tm-mail" "../tm-vm")
                         )
                 load-path))
 
 (require 'tl-misc)
+(require 'install)
 
 
-;; Please specify VM path.
-(add-path "vm-5.95beta/" 'all-paths)
+;;; @ Please specify optional package directory if you use them.
+;;;
 
-;; Please specify Mailcrypt path.
-(add-path "mailcrypt-3.4/" 'all-paths)
+;; It is only necessary to use `add-path' if these packages are not
+;; already on the standard load-path of Emacs.
 
-;; Please specify BBDB path.
-(add-path "bbdb-1.50/" 'all-paths)
+;; Function `get-latest-path' detect latest version of such package
+;; under load-path directories. If you want to use a version of a
+;; package instead of latest version, please specify by argument of
+;; function `add-path'.
 
-;; Please specify shell command path.
-(setq SHELL "/bin/sh")
+;; Function `add-path' finds path under load-path directories. If a
+;; package does not exist in load-path, please specify by absolutely
+;; (`~/' is available), for example
+;;     (add-path "~/lib/elisp/mailcrypt-3.4")
+;; or
+;;     (add-path "/opt/share/xmule/site-lisp/mailcrypt-3.4")
 
-;; Please specify shell command option.
-(setq SHELLOPTION "-c")
+;;; @@ Please specify VM path.
+;;;
 
-;; Please specify install path prefix.
-(setq PREFIX "~/")
-;;(setq PREFIX "/usr/local/")
+;; Use latest version installed in load-path.
 
-(setq EMACS_PREFIX
-      (cond ((boundp 'NEMACS) "nemacs/")
-           ((boundp 'MULE)   "mule/")
-           ((string-match "XEmacs" emacs-version) "xemacs/")
-           (t "emacs/")
-           ))
+(let ((path (get-latest-path "vm" 'all-paths)))
+  (if path
+      (add-path path)
+    ))
 
-(setq DATA_PREFIX
-      (if (or (< emacs-major-version 19)
-             (< emacs-minor-version 29)
-             )
-         "lib/"
-       "share/"))
+;; Or please specify path.
+;; (add-path "vm-5.95beta" 'all-paths)
 
-(setq DATADIR (expand-file-name DATA_PREFIX PREFIX))
 
-(setq LISP_PREFIX
-      (if (>= emacs-major-version 19)
-         "site-lisp/"
-       "local.lisp/"))
+;;; @@ Please specify Mailcrypt path.
+;;;
 
-(setq EMACS_DATADIR (expand-file-name EMACS_PREFIX DATADIR))
+;; Use latest version installed in load-path.
 
-(defvar LISPDIR (expand-file-name LISP_PREFIX EMACS_DATADIR))
+(let ((path (get-latest-path "mailcrypt" 'all-paths)))
+  (if path
+      (add-path path)
+    ))
 
+;; Or please specify path.
+;; (add-path "mailcrypt-3.4" 'all-paths)
 
-;; Please specify mime-setup.{el|elc} install path.
-(setq SETUP_FILE_DIR LISPDIR)
 
+;;; @@ Please specify BBDB path.
+;;;
 
-(setq TM_PREFIX "")
+(let ((path (get-latest-path "bbdb" 'all-paths)))
+  (if path
+      (add-path path)
+    ))
 
-(setq TM_LISPDIR (expand-file-name TM_PREFIX LISPDIR))
+;; Or please specify path.
+;; (add-path "bbdb-1.50" 'all-paths)
 
-(setq TL_DIR (expand-file-name "tl/" TM_LISPDIR))
-(setq MEL_DIR (expand-file-name "mel/" TM_LISPDIR))
-(setq TM_KERNEL_DIR (expand-file-name "tm/" TM_LISPDIR))
-(setq TM_MHE_DIR TM_KERNEL_DIR)
-(setq TM_GNUS_DIR TM_KERNEL_DIR)
 
-(setq TM_GNUS_COMPILE_FORMAT "cd gnus; PWD=`pwd` make %s EMACS=%s")
-(setq TM_GNUS_INSTALL_FORMAT "cd gnus; PWD=`pwd` make install-19 EMACS=%s TMDIR19=%s")
+;;; @ shell
+;;;
 
-(setq el-file-mode (+ (* 64 6)(* 8 4) 4))
+;; Please specify shell command path.
+(setq SHELL
+      (find-if (function file-exists-p)
+              '("/bin/sh" "/usr/bin/sh")
+              ))
 
+;; Please specify shell command option.
+(setq SHELLOPTION "-c")
 
-(setq BIN_SRC_DIR "src/")
-(setq BINS '("src/ol2" "src/decode-b"))
-(setq METHOD_SRC_DIR "methods/")
-(setq METHODS
-      '("tm-au" "tm-file" "tm-html" "tm-image" "tm-mpeg" "tm-plain"
-       "tmdecode"))
 
+;;; @ Please specify prefix of install directory.
+;;;
+
+;; Please specify install path prefix.
+;; If it is omitted, shared directory (maybe /usr/local is used).
+(defvar PREFIX install-prefix)
+;;(setq PREFIX "~/")
+
+;; Please specify install path prefix for binaries.
+(defvar EXEC_PREFIX
+  (if (or running-emacs-18 running-xemacs)
+      (expand-file-name "../../.." exec-directory)
+    (expand-file-name "../../../.." exec-directory)
+    ))
+
+;; Please specify tm package prefix [optional]
+(setq TM_PACKAGE_PREFIX "")
+
+;; Please specify tl prefix [optional]
+;;(setq TL_PREFIX "tl")
+(setq TL_PREFIX
+      (if (string-match "XEmacs" emacs-version)
+         "tl"
+       ""))
+
+;; Please specify MU prefix [optional]
+(setq MU_PREFIX "mu")
+
+;; Please specify MEL prefix [optional]
+(setq MEL_PREFIX "mel")
+
+;; Please specify tm prefix [optional]
+(setq TM_PREFIX "tm")
+
+;; lisp files of tm are installed into following directory tree:
+;;
+;;     <LISPDIR> = <PREFIX>/DATA_PREFIX/<install-elisp-prefix>/
+;;     <LISPDIR>/mime-setup.{el|elc}
+;;     <LISPDIR>/<TM_PACKAGE_PREFIX>/<TL_PREFIX>/  --- tl  lisp files
+;;     <LISPDIR>/<TM_PACKAGE_PREFIX>/<MU_PREFIX>/  --- MU lisp files
+;;     <LISPDIR>/<TM_PACKAGE_PREFIX>/<MEL_PREFIX>/ --- MEL lisp files
+;;     <LISPDIR>/<TM_PACKAGE_PREFIX>/<TM_PREFIX>/  --- tm  lisp files
+;;
+;; For example, if <PREFIX> = "/usr/local" and you use Emacs 19.34,
+;;
+;;     <LISPDIR> = /usr/local/share/emacs/site-lisp/
+;;     /usr/local/share/emacs/site-lisp/mime-setup.{el|elc}
+;;     /usr/local/share/emacs/site-lisp/     --- tl  lisp files
+;;     /usr/local/share/emacs/site-lisp/mu/  --- MU lisp files
+;;     /usr/local/share/emacs/site-lisp/mel/ --- MEL lisp files
+;;     /usr/local/share/emacs/site-lisp/tm/  --- tm  lisp files
+;;
+;; For example, if <PREFIX> = "~/" and you use XEmacs,
+;;
+;;     <LISPDIR> = ~/share/xemacs/site-lisp/
+;;     ~/lib/xemacs/site-lisp/mime-setup.{el|elc}
+;;     ~/lib/xemacs/site-lisp/tl/  --- tl  lisp files
+;;     ~/lib/xemacs/site-lisp/mu/  --- MU  lisp files
+;;     ~/lib/xemacs/site-lisp/mel/ --- MEL lisp files
+;;     ~/lib/xemacs/site-lisp/tm/  --- tm  lisp files
+
+
+;;; @ executables
+;;;
 
 ;; Please specify binary path.
-(defvar BIN_DIR (expand-file-name "bin/" PREFIX))
+(defvar BIN_DIR (expand-file-name "bin" EXEC_PREFIX))
 
-;; Please specify binary path.
-(setq METHOD_DIR BIN_DIR)
+;; Please specify binary path. (for external method scripts)
+(setq METHOD_DIR (expand-file-name "share/tm" PREFIX))
+
+
+\f
+
+;;; @ optional settings
+;;;
+
+;; It is generated by automatically. Please set variable `PREFIX'.
+;; If you don't like default directory tree, please set it.
+(defvar LISPDIR (install-detect-elisp-directory PREFIX))
+;; (setq install-default-elisp-directory "~/lib/emacs/lisp")
+
+;; Please specify mime-setup.{el|elc} install path.
+(setq SETUP_FILE_DIR LISPDIR)
+
+(setq TM_LISPDIR (expand-file-name TM_PACKAGE_PREFIX LISPDIR))
+
+(setq TL_DIR (expand-file-name TL_PREFIX TM_LISPDIR))
+(setq MU_DIR (expand-file-name MU_PREFIX TM_LISPDIR))
+(setq MEL_DIR (expand-file-name MEL_PREFIX TM_LISPDIR))
+(setq TM_KERNEL_DIR (expand-file-name TM_PREFIX TM_LISPDIR))
+(setq TM_MHE_DIR TM_KERNEL_DIR)
+(setq TM_GNUS_DIR TM_KERNEL_DIR)
+(setq Gnus_MIME_DIR TM_KERNEL_DIR)
+(setq TM_MAIL_DIR TM_KERNEL_DIR)
+(setq TM_VM_DIR TM_KERNEL_DIR)
+
+(cond ((member LISPDIR default-load-path)
+       (if (string-equal TM_PACKAGE_PREFIX "")
+          (setq TL_RELATIVE_DIR TL_PREFIX
+                MU_RELATIVE_DIR MU_PREFIX
+                MEL_RELATIVE_DIR MEL_PREFIX
+                TM_KERNEL_RELATIVE_DIR TM_PREFIX
+                )
+        (setq TL_RELATIVE_DIR
+              (concat (file-name-as-directory TM_PACKAGE_PREFIX) TL_PREFIX))
+        (setq MU_RELATIVE_DIR
+              (concat (file-name-as-directory TM_PACKAGE_PREFIX) MU_PREFIX))
+        (setq MEL_RELATIVE_DIR
+              (concat (file-name-as-directory TM_PACKAGE_PREFIX) MEL_PREFIX))
+        (setq TM_KERNEL_RELATIVE_DIR
+              (concat (file-name-as-directory TM_PACKAGE_PREFIX) TM_PREFIX))
+        ))
+      ((string-match (concat "^" (regexp-quote (expand-file-name "~/")))
+                    LISPDIR)
+       (setq TL_RELATIVE_DIR (concat "~/" (file-relative-name TL_DIR "~/")))
+       (setq MU_RELATIVE_DIR (concat "~/" (file-relative-name MU_DIR "~/")))
+       (setq MEL_RELATIVE_DIR (concat "~/" (file-relative-name MEL_DIR "~/")))
+       (setq TM_KERNEL_RELATIVE_DIR
+            (concat "~/" (file-relative-name TM_KERNEL_DIR "~/")))
+       )
+      (t
+       (setq TL_RELATIVE_DIR TL_DIR)
+       (setq MU_RELATIVE_DIR MU_DIR)
+       (setq MEL_RELATIVE_DIR MEL_DIR)
+       (setq TM_KERNEL_RELATIVE_DIR TM_KERNEL_DIR)
+       ))
+(setq TM_MHE_RELATIVE_DIR TM_KERNEL_RELATIVE_DIR)
+(setq TM_GNUS_RELATIVE_DIR TM_KERNEL_RELATIVE_DIR)
+
+(setq TM_GNUS_INSTALL_FORMAT
+      "cd gnus; PWD=`pwd` make install-19 EMACS=%s TMDIR19=%s")
+(setq TM_GNUS_COMPILE ".gnus-compile")
+(setq MAKE "make")
+
+
+(setq BIN_SRC_DIR "src")
+(setq BINS '("ol2" "decode-b"))
+(setq METHOD_SRC_DIR "methods")
+(setq METHODS
+      '("tm-au" "tm-file" "tm-html" "tm-image" "tm-mpeg"
+       "tm-plain" "tm-ps"
+       "tmdecode"))
+
+;;; TM-CFG ends here