summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Lisp/libobjcl.lisp7
-rw-r--r--objective-cl.asd2
2 files changed, 7 insertions, 2 deletions
diff --git a/Lisp/libobjcl.lisp b/Lisp/libobjcl.lisp
index c15282d..6c8469a 100644
--- a/Lisp/libobjcl.lisp
+++ b/Lisp/libobjcl.lisp
@@ -92,10 +92,15 @@
(defcfun ("objcl_alignof_type" %objcl-alignof-type) :long
(typespec :string))
-(defcfun objcl-get-nil :pointer)
+(defcfun ("objcl_get_nil" %objcl-get-nil) :pointer)
(defcfun objcl-get-yes :long)
(defcfun objcl-get-no :long)
+(defun objcl-get-nil ()
+ ;; %OBJCL-GET-NIL can return NIL for CLISP, which CFFI refuses to
+ ;; accept as an argument to POINTER-EQ. This is weird.
+ (or (%objcl-get-nil) (make-pointer 0)))
+
(defun initialise-runtime ()
"Initialise the Objective C runtime.
diff --git a/objective-cl.asd b/objective-cl.asd
index 4d95124..f399aa9 100644
--- a/objective-cl.asd
+++ b/objective-cl.asd
@@ -93,7 +93,7 @@
(mapcan #'(lambda (x)
(directory (merge-pathnames x source-dir)))
'(#p"**/*.m" #p"**/*.h" #p"**/GNUmakefile.*"
- #p"**/*.make"))))
+ #p"**/*.make" #p"**/GNUmakefile"))))
(output-dir
(merge-pathnames #p"../../"
(directory-namestring (first (output-files o c))))))