Update copyright header.
[elisp/semi.git] / SEMI-MK
diff --git a/SEMI-MK b/SEMI-MK
index 02c7e44..482deba 100644 (file)
--- a/SEMI-MK
+++ b/SEMI-MK
@@ -1,30 +1,34 @@
 ;;; -*-Emacs-Lisp-*-
-;;;
-;;; $Id: SEMI-MK,v 0.5 1997-05-13 15:03:32 morioka Exp $
-;;;
+
+;; SEMI-MK: installer for SEMI.
+
+;;; Code:
 
 (defun config-semi ()
-  (let (prefix exec-prefix lisp-dir)
+  (let (prefix exec-prefix lisp-dir version-specific-lisp-dir)
     (and (setq prefix (car command-line-args-left))
         (or (string-equal "NONE" prefix)
             (defvar PREFIX prefix)
             ))
     (setq command-line-args-left (cdr command-line-args-left))
-    (and (setq exec-prefix (car command-line-args-left))
-        (or (string-equal "NONE" exec-prefix)
-            (defvar EXEC_PREFIX exec-prefix)
-            ))
-    (setq command-line-args-left (cdr command-line-args-left))
     (and (setq lisp-dir (car command-line-args-left))
         (or (string-equal "NONE" lisp-dir)
             (defvar LISPDIR lisp-dir)
             ))
     (setq command-line-args-left (cdr command-line-args-left))
+    (and (setq version-specific-lisp-dir (car command-line-args-left))
+        (or (string-equal "NONE" version-specific-lisp-dir)
+            (progn
+              (defvar VERSION_SPECIFIC_LISPDIR version-specific-lisp-dir)
+              (princ (format "VERSION_SPECIFIC_LISPDIR=%s\n"
+                             VERSION_SPECIFIC_LISPDIR)))
+            ))
+    (setq command-line-args-left (cdr command-line-args-left))
     )
   (load-file "SEMI-CFG")
   (load-file "SEMI-ELS")
-  (princ (format "PREFIX=%s\tEXEC_PREFIX=%s
-LISPDIR=%s\n" PREFIX EXEC_PREFIX LISPDIR))
+  (princ (format "PREFIX=%s
+LISPDIR=%s\n" PREFIX LISPDIR))
   )
 
 (defun directory= (dir1 dir2)
@@ -50,4 +54,50 @@ LISPDIR=%s\n" PREFIX EXEC_PREFIX LISPDIR))
   (install-files METHODS METHOD_SRC_DIR METHOD_DIR nil t)
   )
 
+(defun config-semi-package ()
+  (let (package-dir)
+    (and (setq package-dir (car command-line-args-left))
+        (or (string= "NONE" package-dir)
+            (defvar PACKAGEDIR package-dir)
+            ))
+    (setq command-line-args-left (cdr command-line-args-left))
+    (load-file "SEMI-CFG")
+    (load-file "SEMI-ELS")
+                                         
+    (princ (format "PACKAGEDIR=%s\n" PACKAGEDIR))
+    ))
+
+(defun compile-semi-package ()
+  (config-semi-package)
+
+  (if (fboundp 'batch-update-directory-autoloads)
+      ;; XEmacs 21.5.19 and newer.
+      (progn
+       (add-to-list 'command-line-args-left ".")
+       (add-to-list 'command-line-args-left "semi")
+       (batch-update-directory-autoloads))
+    (setq autoload-package-name "semi")
+    (add-to-list 'command-line-args-left ".")
+    (batch-update-directory))
+
+  (add-to-list 'command-line-args-left ".")
+  (Custom-make-dependencies)
+
+  (compile-elisp-modules (append semi-modules-to-compile
+                                '(mime-setup auto-autoloads custom-load))
+                        ".")
+  )
+
+(defun install-semi-package ()
+  (config-semi-package)
+  (install-elisp-modules (append semi-modules
+                                '(mime-setup auto-autoloads custom-load))
+                        "./"
+                        (expand-file-name SEMI_PREFIX
+                                          (expand-file-name "lisp"
+                                                            PACKAGEDIR)))
+  (delete-file "./auto-autoloads.el")
+  (delete-file "./custom-load.el")
+  )
+
 ;;; SEMI-MK ends here