Fix undefine init_smoke* C function & cleanup finalizers when a image is saved.
src/smoke.lisp
Thu Jul 2 21:08:40 CEST 2009 Tobias Rautenkranz <tobias@rautenkranz.ch>
* Fix undefine init_smoke* C function & cleanup finalizers when a image is saved.
--- old-smoke/src/smoke.lisp 2014-10-30 08:13:49.000000000 +0100
+++ new-smoke/src/smoke.lisp 2014-10-30 08:13:49.000000000 +0100
@@ -187,16 +187,25 @@
"Define a Smoke module."
(let ((smoke-module (intern "*SMOKE-MODULE*")))
`(progn
- (eval-startup (:compile-toplevel :execute)
(eval-when (:compile-toplevel :load-toplevel :execute)
(define-foreign-library ,library
(:unix ,(format nil "~(~A~).so.2" library))
- (t (:default ,(format nil "~(~A~)" library))))
- (use-foreign-library ,library))
- (defcvar (,variable ,variable-name :read-only t) :pointer)
+ (t (:default ,(format nil "~(~A~)" library)))))
+ (eval-startup (:compile-toplevel :execute)
+ (load-foreign-library ',library))
+ (eval-startup (:compile-toplevel :execute)
+; (eval-when (:compile-toplevel :load-toplevel :execute)
+; (define-foreign-library ,library
+; (:unix ,(format nil "~(~A~).so.2" library))
+; (t (:default ,(format nil "~(~A~)" library))))
+; (load-foreign-library ',library))
+ (defcvar (,variable ,variable-name
+ :read-only t
+ :library ,library) :pointer)
(defcfun (,init-function ,(format nil "_Z~A~Av"
(length function-name)
- function-name))
+ function-name)
+ :library ,library)
:void))
(eval-when (:compile-toplevel :load-toplevel :execute)
(defparameter ,smoke-module (make-smoke-module)))