Merge apel-shubit.
[elisp/apel.git] / APEL-ELS
index 4b931c2..4d63740 100644 (file)
--- a/APEL-ELS
+++ b/APEL-ELS
@@ -1,23 +1,43 @@
-;;; -*-Emacs-Lisp-*-
+;;; APEL-ELS --- list of APEL modules to install. -*-Emacs-Lisp-*-
 
-;; APEL-ELS: list of APEL modules to install
+;;; Commentary:
+
+;; APEL-MK imports `apel-modules' from here.
 
 ;;; Code:
 
-(setq apel-modules '(product apel-ver
-                            alist calist
-                            path-util filename install
-                            mule-caesar
-                            
+(defvar apel-modules '(product apel-ver
+                              alist calist path-util filename install
+                            ;; "mule-caesar" is version-dependent.
+                            ;; moved to EMU-ELS.
+                            ;; mule-caesar
+
                             ;; [obsoleted modules] If you would like to
                             ;; install following, please activate them.
-
                             ;; atype file-detect
-                            ))
+                              ))
 
 (if (or (< emacs-major-version 19)
        (and (eq emacs-major-version 19) (< emacs-minor-version 16)))
     (setq apel-modules (cons 'time-stamp apel-modules))
   )
 
+(condition-case nil
+    (let ((load-path (delete (expand-file-name ".")
+                             (copy-sequence load-path))))
+      ;; v18 does not have timezone.el.
+      (require 'timezone)
+      ;; Is timezone.el APEL version?
+      (if (product-find 'timezone)
+         (error "timezone.el is APEL version. Install newer version."))
+      ;; Y2K test.
+      (or (string= (aref (timezone-parse-date "Sat, 1 Jan 00 00:00:00 GMT")
+                         0)
+                   "2000")
+         (error "timezone.el has Y2K problem. Install fixed version."))
+      ;; another test here.
+      )
+  (error
+   (setq apel-modules (cons 'timezone apel-modules))))
+
 ;;; APEL-ELS ends here