* README.en: Add explanations about
[elisp/apel.git] / APEL-MK
diff --git a/APEL-MK b/APEL-MK
index 17c2c6b..09ea4c2 100644 (file)
--- a/APEL-MK
+++ b/APEL-MK
 ;;; -*-Emacs-Lisp-*-
-;;;
-;;; $Id: APEL-MK,v 0.1 1997-03-20 02:04:19 morioka Exp $
-;;;
+
+;; APEL-MK: installer for APEL.
+
+;;; Code:
 
 (defun config-apel ()
-  (let (prefix)
-    (setq prefix (car command-line-args-left))
-    (and prefix
-        (not (string-equal "NONE" prefix))
-        (progn
-          (defvar PREFIX prefix)
-          (setq command-line-args-left (cdr command-line-args-left))
-          ))
-    (add-to-list 'load-path (expand-file-name "../emu"))
-    (add-to-list 'load-path ".")
-    (require 'install)
-    
+  (let (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 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 "APEL-CFG")
-    (load-file "APEL-ELS")
+    (or (boundp 'apel-modules)
+       (load-file "APEL-ELS")
+       )
     (princ (format "PREFIX=%s\n" PREFIX))
     ))
 
 (defun compile-apel ()
   (config-apel)
+  (load "EMU-ELS")
+  (load-file "APEL-ELS")
+  (compile-elisp-modules emu-modules   ".")
   (compile-elisp-modules apel-modules  ".")
   )
 
 (defun install-apel ()
-  (config-apel)
-  (compile-elisp-modules apel-modules  ".")
+  (compile-apel)
+  (install-elisp-modules emu-modules   "."     EMU_DIR)
   (install-elisp-modules apel-modules  "."     APEL_DIR)
   )
 
+(defun config-apel-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 "APEL-CFG")
+    (load-file "APEL-ELS")
+                                         
+    (princ (format "PACKAGEDIR=%s\n" PACKAGEDIR))
+    ))
+
+(defun install-apel-package ()
+  (config-apel-package)
+  (load "EMU-ELS")
+  
+  (compile-elisp-modules emu-modules   ".")
+  (compile-elisp-modules apel-modules  ".")
+  
+  (let ((dir (expand-file-name APEL_PREFIX
+                              (expand-file-name "lisp"
+                                                PACKAGEDIR))))
+    (install-elisp-modules emu-modules "." dir)
+    (install-elisp-modules apel-modules        "." dir)
+    
+    (setq autoload-package-name "apel")
+    (add-to-list 'command-line-args-left dir)
+    (batch-update-directory)
+
+    (add-to-list 'command-line-args-left dir)
+    (Custom-make-dependencies)
+
+    (byte-compile-file (expand-file-name "auto-autoloads.el" dir))
+    (byte-compile-file (expand-file-name "custom-load.el" dir))
+    ))
+
+(defun what-where-apel ()
+  (config-apel)
+  (load "EMU-ELS")
+  (princ (format "
+The files that belong to the EMU modules:
+  %s
+  -> %s
+
+The files that belong to the APEL modules:
+  %s
+  -> %s
+"
+                (mapconcat 'symbol-name emu-modules ", ")
+                EMU_DIR
+                (mapconcat 'symbol-name apel-modules ", ")
+                APEL_DIR)))
+
 ;;; APEL-MK ends here