3 ;;; $Id: inst-tm,v 7.4 1996/06/07 14:14:53 morioka Exp $
7 (load-file "../tl/tl-els")
8 (load-file "../mel/mel-els")
10 (load-file "mh-e/tmh-els")
12 (defun make-mime-setup (tl-path mel-path tm-path)
13 (let ((buf (find-file "mime-setup.el.in")))
14 (goto-char (point-min))
15 (re-search-forward "^;;; Code:" nil t)
16 (setq buffer-read-only nil)
17 (if (member tl-path default-load-path)
20 \(require \'tl-misc)")
29 \(add-path \"%s\")" tl-path tl-path))
31 (or (member mel-path default-load-path)
34 \(add-path \"%s\")" mel-path)))
35 (or (member tm-path default-load-path)
38 \(add-path \"%s\")" tm-path)))
40 (defvar mime-viewer/external-progs \"%s\")" METHOD_DIR))
41 (write-file "mime-setup.el")
44 (defun compile-el-files (path modules)
47 (setq module (expand-file-name module path))
48 (let ((el-file (concat module ".el"))
49 (elc-file (concat module ".elc"))
51 (if (file-newer-than-file-p el-file elc-file)
52 (byte-compile-file el-file)
57 (defun install-tm-gnus ()
63 TM_GNUS_INSTALL_FORMAT
64 (car command-line-args) TM_GNUS_DIR)
66 (princ (buffer-string))
75 (make-mime-setup TL_DIR MEL_DIR TM_KERNEL_DIR)
76 (compile-el-files "../tl/" tl-modules)
77 (compile-el-files "../mel/" mel-modules)
78 (compile-el-files "./" tm-modules)
79 (compile-el-files "mh-e/" tm-mh-e-modules)
80 (compile-el-files "./" '("mime-setup"))
82 (set-buffer (get-buffer-create TM_GNUS_COMPILE))
83 (let ((emacs (car command-line-args)))
84 (insert (format "cd gnus\n%s gnus EMACS=%s PWD=`pwd`\n" MAKE emacs))
85 (cond ((string-match "XEmacs" emacs-version)
86 (insert (format "%s sgnus EMACS=%s PWD=`pwd`\n" MAKE emacs))
88 (t (cond ((<= emacs-major-version 18)
89 (insert (format "%s gnus3 EMACS=%s PWD=`pwd`\n"
91 (insert (format "%s gnus4 EMACS=%s PWD=`pwd`\n"
94 ((< emacs-minor-version 30)
95 (insert (format "%s gnus4 EMACS=%s PWD=`pwd`\n"
97 (insert (format "%s gnus5 EMACS=%s PWD=`pwd`\n"
101 (insert (format "%s sgnus EMACS=%s PWD=`pwd`\n"
104 (write-file TM_GNUS_COMPILE)
108 (defun install-el-file (src dest file)
109 (let ((src-file (expand-file-name file src)))
110 (if (file-exists-p src-file)
111 (let ((full-path (expand-file-name file dest)))
112 (if (file-exists-p full-path)
113 (set-file-modes full-path el-file-mode)
115 (copy-file src-file full-path t t)
116 (princ (format "%s -> %s\n" file dest))
120 (defun install-el-files (src dest &rest files)
121 (mapcar (function (lambda (file)
122 (install-el-file src dest file)
126 (defun install-elc (src dest file)
127 (let ((src-file (expand-file-name file src)))
128 (if (file-exists-p src-file)
129 (let ((full-path (expand-file-name file dest)))
130 (copy-file src-file full-path t t)
132 (while (file-exists-p src-file)
135 (delete-file src-file)
138 (error (princ (format "%s\n" (nth 1 err))))
140 (princ (format "%s -> %s\n" file dest))
144 (defun install-elc-files (src dest &rest files)
145 (mapcar (function (lambda (file)
146 (install-elc src dest file)
150 (defun install-el-and-elc-files (src dest el-files elc-files)
151 (if (not (file-exists-p dest))
152 (make-directory dest t)
154 (apply (function install-el-files) src dest el-files)
155 (apply (function install-elc-files) src dest elc-files)
159 (princ (format "%s\n" emacs-version))
161 (install-el-and-elc-files "../tl/" TL_DIR tl-el-files tl-elc-files)
162 (install-el-and-elc-files "../mel/" MEL_DIR mel-el-files mel-elc-files)
163 (install-el-and-elc-files "./" TM_KERNEL_DIR tm-el-files tm-elc-files)
164 (install-el-and-elc-files "mh-e/" TM_MHE_DIR
165 tm-mh-e-el-files tm-mh-e-elc-files)
167 (install-el-and-elc-files "./" SETUP_FILE_DIR setup-el-files setup-elc-files)
170 (defun install-execs ()
171 (apply (function install-el-files) BIN_SRC_DIR BIN_DIR BINS)
172 (apply (function install-el-files) METHOD_SRC_DIR METHOD_DIR METHODS)