summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatthias Benkard <code@mail.matthias.benkard.de>2008-02-03 10:41:03 +0100
committerMatthias Benkard <code@mail.matthias.benkard.de>2008-02-03 10:41:03 +0100
commit62933e138ce166f9b7901e8f783e4e17402d7aff (patch)
tree3c8c4ec5d49f4ef8abe894d9e03e4d55c7656a60
parentd24eda3f5a8093cd5e3316453f170de659c75586 (diff)
Add system objective-cl-clozure-compat.
darcs-hash:118ca7e4268f77f7b9b9ab10c17200cebdd00ba9
-rw-r--r--Lisp/clozure-compat.lisp25
-rw-r--r--Lisp/data-types.lisp9
-rw-r--r--Lisp/defpackage.lisp4
-rw-r--r--objective-cl-clozure-compat.asd10
-rw-r--r--objective-cl-tests.asd2
-rw-r--r--objective-cl.asd10
6 files changed, 49 insertions, 11 deletions
diff --git a/Lisp/clozure-compat.lisp b/Lisp/clozure-compat.lisp
new file mode 100644
index 0000000..8d6e2ea
--- /dev/null
+++ b/Lisp/clozure-compat.lisp
@@ -0,0 +1,25 @@
+;;;; Objective-CL, an Objective-C bridge for Common Lisp.
+;;;; Copyright (C) 2007 Matthias Andreas Benkard.
+;;;;
+;;;; This program is free software: you can redistribute it and/or
+;;;; modify it under the terms of the GNU Lesser General Public License
+;;;; as published by the Free Software Foundation, either version 3 of
+;;;; the License, or (at your option) any later version.
+;;;;
+;;;; This program is distributed in the hope that it will be useful, but
+;;;; WITHOUT ANY WARRANTY; without even the implied warranty of
+;;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+;;;; Lesser General Public License for more details.
+;;;;
+;;;; You should have received a copy of the GNU Lesser General Public
+;;;; License along with this program. If not, see
+;;;; <http://www.gnu.org/licenses/>.
+
+
+(let* ((package (find-package '#:objective-c-classes))
+ (new-name '#:ns)
+ (new-nicknames (remove new-name
+ (remove-duplicates
+ (cons (package-name package)
+ (package-nicknames package))))))
+ (rename-package package new-name new-nicknames))
diff --git a/Lisp/data-types.lisp b/Lisp/data-types.lisp
index a5ec1ba..a857800 100644
--- a/Lisp/data-types.lisp
+++ b/Lisp/data-types.lisp
@@ -95,7 +95,8 @@ The following calls are all equivalent:
(apply #'invoke-by-name receiver selector args))))
-(defclass id (c-pointer-wrapper) ()
+(defclass id (c-pointer-wrapper)
+ ()
(:documentation "An instance of an Objective-C class.
## Description:
@@ -138,9 +139,9 @@ a suitable class method instead as you would in Objective-C.
(define-condition exception (error)
- ((pointer :type c-pointer
- :accessor pointer-to
- :initarg :pointer))
+ ((pointer :type c-pointer
+ :accessor pointer-to
+ :initarg :pointer))
(:report (lambda (condition stream)
(format stream
"The Objective-C runtime has issued an exception of ~
diff --git a/Lisp/defpackage.lisp b/Lisp/defpackage.lisp
index 0543ed5..9151bba 100644
--- a/Lisp/defpackage.lisp
+++ b/Lisp/defpackage.lisp
@@ -68,8 +68,8 @@
#:next-runtime))
-(defpackage #:objective-c-classes
- (:nicknames #:objc-classes)
+(defpackage #:objcl-ns
+ (:nicknames #:objective-c-classes #:objc-classes)
(:use))
diff --git a/objective-cl-clozure-compat.asd b/objective-cl-clozure-compat.asd
new file mode 100644
index 0000000..bfc4b70
--- /dev/null
+++ b/objective-cl-clozure-compat.asd
@@ -0,0 +1,10 @@
+(defsystem "objective-cl-clozure-compat"
+ :description "Different package names for Objective-CL that clash with
+ Clozure-CL's predefined ones."
+ :version "0.0.4"
+ :author "Matthias Benkard <matthias@benkard.de>"
+ :licence "GNU Lesser General Public License, version 3 or higher"
+ :depends-on (:objective-cl)
+ :components ((:module "Lisp"
+ :components ((:file "clozure-compat"))))
+ :serial t)
diff --git a/objective-cl-tests.asd b/objective-cl-tests.asd
index a6cd132..7ecb551 100644
--- a/objective-cl-tests.asd
+++ b/objective-cl-tests.asd
@@ -20,7 +20,7 @@
:version "0.0.4"
:author "Matthias Benkard <matthias@benkard.de>"
:licence "GNU General Public License, version 3 or higher"
- :depends-on (#:objective-cl #:lift)
+ :depends-on (#:objective-cl #:objective-cl-clozure-compat #:lift)
:components
((:module "Lisp"
:components ((:file "tests")))))
diff --git a/objective-cl.asd b/objective-cl.asd
index 82cc2aa..0c15f8a 100644
--- a/objective-cl.asd
+++ b/objective-cl.asd
@@ -15,11 +15,13 @@
;;;; along with this program. If not, see
;;;; <http://www.gnu.org/licenses/>.
+(defvar *objcl-version* "0.0.4")
+
(defsystem "objective-cl"
:description "A portable Objective C bridge."
- :version "0.0.4"
+ :version *objcl-version*
:author "Matthias Benkard <matthias@benkard.de>"
- :licence "GNU General Public License, version 3 or higher"
+ :licence "GNU Lesser General Public License, version 3 or higher"
:depends-on (#:cffi #:trivial-garbage #:split-sequence #:objective-cl-libobjcl
#:closer-mop)
:components
@@ -172,9 +174,9 @@
(defsystem "objective-cl-libobjcl"
:description "A portable Objective C bridge."
- :version "0.0.4"
+ :version *objcl-version*
:author "Matthias Benkard <matthias@benkard.de>"
- :licence "GNU General Public License, version 3 or higher"
+ :licence "GNU Lesser General Public License, version 3 or higher"
:depends-on ()
:components ((:module "Objective-C"
:components ((:objc-source-file "libobjcl")