Only copy existing *.xpm files.
[riece] / lisp / COMPILE
index 128ec4e..4b3d57a 100644 (file)
@@ -7,12 +7,13 @@
                'riece-emacs)
              '(riece-globals
                riece-options
+               riece-debug
                riece-version
-               riece-inlines
-               riece-highlight
                riece-coding
                riece-complete
+               riece-addon
 
+               riece-mode
                ;; riece-identity -+-> riece-channel
                ;;                 +-> riece-user
                riece-identity
                riece-user
 
                riece-misc
+               riece-signal
+
+               ;; riece-layout ---> riece-display
+               riece-layout
                riece-display
                riece-server
 
                riece-500
 
                riece-commands
+               riece-irc
                riece
 
                ;; add-ons
-               riece-ctcp))))
+               riece-ctcp
+               riece-highlight
+               riece-log
+               riece-mini
+               riece-rdcc
+               riece-url
+               riece-unread
+               riece-doctor
+               riece-alias
+               riece-skk-kakutei
+               riece-foolproof
+               riece-guess
+               riece-history
+               riece-button
+               riece-keyword
+               riece-menu
+               riece-icon
+               riece-async
+               riece-lsdb
+               riece-xface
+               riece-ctlseq
+               riece-ignore
+               riece-hangman
+               riece-biff
+               riece-kakasi
+               riece-yank
+               riece-toolbar
+               riece-eval
+               riece-google
+               riece-keepalive))))
+
+(defvar riece-icons
+  '(riece-command-quit
+    riece-command-join
+    riece-command-part
+    riece-command-previous-channel
+    riece-command-next-channel
+    riece-command-change-layout
+    riece-submit-bug-report))
 
 (defun riece-compile-modules (modules)
   (let ((load-path (cons nil load-path)))
@@ -49,7 +93,9 @@
       (let ((source (expand-file-name
                     (concat (symbol-name (car modules)) ".el"))))
        (if (file-newer-than-file-p source (concat source "c"))
-           (byte-compile-file source)))
+           (condition-case error
+               (byte-compile-file source)
+             (error))))
       (setq modules (cdr modules)))))
 
 (defun riece-install-modules (modules dest just-print)
                   t t))
       (princ (format "%s.elc -> %s\n" name dest))
       (unless just-print
-       (copy-file (expand-file-name (concat name ".elc"))
-                  (expand-file-name (concat name ".elc") dest)
-                  t t)))
+       (if (file-exists-p (expand-file-name (concat name ".elc")))
+           (copy-file (expand-file-name (concat name ".elc"))
+                      (expand-file-name (concat name ".elc") dest)
+                      t t)
+         (princ (format "(%s was not successfully compiled, ignored)\n"
+                        name)))))
     (setq modules (cdr modules))))
 
+(defun riece-install-icons (icons dest just-print)
+  (unless (or just-print (file-exists-p dest))
+    (make-directory dest t))
+  (while icons
+    (if (file-exists-p (expand-file-name (concat name ".xpm")))
+       (let ((name (symbol-name (car icons))))
+         (princ (format "%s.xpm -> %s\n" name dest))
+         (unless just-print
+           (copy-file (expand-file-name (concat name ".xpm"))
+                      (expand-file-name (concat name ".xpm") dest)
+                      t t))))
+    (setq icons (cdr icons))))
+
 (defun riece-install-just-print-p ()
   (let ((flag (getenv "MAKEFLAGS"))
        case-fold-search)
   (riece-install-modules
    riece-modules
    (expand-file-name "riece" (car command-line-args-left))
+   (riece-install-just-print-p))
+  (riece-install-icons
+   riece-icons
+   (expand-file-name "riece" (car command-line-args-left))
    (riece-install-just-print-p)))
 
 (defun riece-compile-package ()
   (riece-install-modules
    (append riece-modules
           '(auto-autoloads custom-load))
+   (expand-file-name "riece"
+                    (expand-file-name "lisp" (car command-line-args-left)))
+   (riece-install-just-print-p))
+  (riece-install-icons
+   riece-icons
    (expand-file-name "riece"
                     (expand-file-name "lisp" (car command-line-args-left)))
    (riece-install-just-print-p)))
+
+(defun riece-test ()
+  (let ((load-path (cons (expand-file-name "test") (cons nil load-path)))
+       (files (directory-files "test" t "^test-.*\\.el$"))
+        suite)
+    (require 'lunit-report)
+    (setq suite (lunit-make-test-suite))
+    (while files
+      (when (file-regular-p (car files))
+       (load-file (car files))
+       (lunit-test-suite-add-test
+        suite
+        (lunit-make-test-suite-from-class
+         (intern (file-name-sans-extension
+                  (file-name-nondirectory (car files)))))))
+      (setq files (cdr files)))
+    (lunit-report suite (car command-line-args-left))))