commit df145908860c79bb9ac51bab06456d3860a69a7f
parent e2a366997c94967c9e11dfb7a9f868cf5ba36007
Author: Tomas Hlavaty <tom@logand.com>
Date:   Sat,  1 Nov 2014 15:18:05 +0100
save demo images on ccl too
however, it brings debug repl on ^C
Diffstat:
3 files changed, 26 insertions(+), 2 deletions(-)
diff --git a/Makefile b/Makefile
@@ -1,9 +1,11 @@
 all: cl-rw-demo-counter cl-rw-demo-zappel
 
 cl-rw-demo-counter:
+#	~/lisp/ccl-1.10/lx86cl64 --eval '(require :cl-rw-demo-counter)' --eval '(rw.demo.counter::save-image)'
 	sbcl --eval '(require :cl-rw-demo-counter)' --eval '(rw.demo.counter::save-image)'
 
 cl-rw-demo-zappel:
+#	~/lisp/ccl-1.10/lx86cl64 --eval '(require :cl-rw-demo-zappel)' --eval '(rw.demo.zappel::save-image)'
 	sbcl --eval '(require :cl-rw-demo-zappel)' --eval '(rw.demo.zappel::save-image)'
 
 clean:
diff --git a/demo-counter.lisp b/demo-counter.lisp
@@ -100,8 +100,19 @@
 ;;(start)
 
 (defun save-image ()
-  #-sbcl
+  #-(or ccl sbcl)
   (error "TODO RW.DEMO.COUNTER::SAVE-IMAGE")
+  #+ccl ;; TODO no debug on ^C
+  (ccl:save-application "cl-rw-demo-counter"
+                        :prepend-kernel t
+                        :error-handler :quit-quietly
+                        :toplevel-function (lambda ()
+                                             (handler-case
+                                                 (progn
+                                                   (start)
+                                                   (loop (sleep 1)))
+                                               (condition ()
+                                                 (ccl:quit 1)))))
   #+sbcl
   (sb-ext:save-lisp-and-die "cl-rw-demo-counter"
                             :executable t
diff --git a/demo-zappel.lisp b/demo-zappel.lisp
@@ -190,8 +190,19 @@
 ;;(start)
 
 (defun save-image ()
-  #-sbcl
+  #-(or ccl sbcl)
   (error "TODO RW.DEMO.ZAPPEL::SAVE-IMAGE")
+  #+ccl ;; TODO no debug on ^C
+  (ccl:save-application "cl-rw-demo-zappel"
+                        :prepend-kernel t
+                        :error-handler :quit-quietly
+                        :toplevel-function (lambda ()
+                                             (handler-case
+                                                 (progn
+                                                   (start)
+                                                   (loop (sleep 1)))
+                                               (condition ()
+                                                 (ccl:quit 1)))))
   #+sbcl
   (sb-ext:save-lisp-and-die "cl-rw-demo-zappel"
                             :executable t