*** empty log message ***
[elisp/emh.git] / EMH-MK
diff --git a/EMH-MK b/EMH-MK
index 0bac244..47a78be 100644 (file)
--- a/EMH-MK
+++ b/EMH-MK
@@ -24,6 +24,7 @@
                              VERSION_SPECIFIC_LISPDIR)))
             ))
     (setq command-line-args-left (cdr command-line-args-left))
+    (config-emh-pixmap-dir)
     )
   (setq command-line-args-left (cdr command-line-args-left))
   (load-file "EMH-CFG")
@@ -40,6 +41,7 @@ LISPDIR=%s\n" PREFIX LISPDIR))
 (defun install-emh ()
   (config-emh)
   (install-elisp-modules emh-modules "./" EMH_DIR)
+  (if PIXMAPDIR (install-emh-icons))
   )
 
 (defun config-emh-package ()
@@ -54,6 +56,7 @@ LISPDIR=%s\n" PREFIX LISPDIR))
     (setq emh-modules (append emh-modules
                               '(auto-autoloads custom-load)))
     (princ (format "PACKAGEDIR=%s\n" PACKAGEDIR))
+    (config-emh-pixmap-dir PACKAGEDIR)
     ))
 
 (defun compile-emh-package ()
@@ -76,6 +79,37 @@ LISPDIR=%s\n" PREFIX LISPDIR))
                         (expand-file-name EMH_PREFIX
                                           (expand-file-name "lisp"
                                                             PACKAGEDIR)))
+  (if PIXMAPDIR (install-emh-icons))
   )
 
+(defun config-emh-pixmap-dir (&optional packagedir)
+  (let ((pixmap-dir (car command-line-args-left)))
+    (defvar PIXMAPDIR
+      (if (string= pixmap-dir "NONE")
+         (if packagedir
+             (expand-file-name "etc/emh/" packagedir)
+           (expand-file-name "emh/icons/" data-directory))
+       pixmap-dir)))
+  (if PIXMAPDIR
+      (princ (format "PIXMAPDIR is %s\n" PIXMAPDIR)))
+  (setq command-line-args-left (cdr command-line-args-left)))
+
+(defun install-emh-icons ()
+  (if (not (file-directory-p PIXMAPDIR))
+      (make-directory PIXMAPDIR t))
+  (let* ((case-fold-search t)
+        (icons (if (and (not (featurep 'xemacs))
+                        (boundp 'emacs-major-version)
+                        (>= emacs-major-version 21))
+                   (directory-files "./etc/icons" t "\\.xpm$")))
+        icon dest)
+    (while icons
+      (setq icon  (car icons)
+           icons (cdr icons)
+           dest  (expand-file-name (file-name-nondirectory icon) PIXMAPDIR))
+      (princ (format "%s -> %s\n"
+                    (file-name-nondirectory icon)
+                    (substring (file-name-directory dest) 0 -1)))
+      (copy-file icon dest t))))
+
 ;;; EMH-MK ends here