New file clsql-cffi.asd
authorKevin Rosenberg <kevin@rosenberg.net>
Fri, 29 Jan 2010 22:00:59 +0000 (15:00 -0700)
committerKevin Rosenberg <kevin@rosenberg.net>
Fri, 29 Jan 2010 22:00:59 +0000 (15:00 -0700)
ChangeLog
clsql-cffi.asd [new file with mode: 0644]
clsql.asd

index ce68a03..ce425a3 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2010-01-29  Kevin Rosenberg <kevin@rosenberg.net
+       * clsql-cffi.asd: New file that causes CLSQL to use
+       CFFI-UFFI-COMPAT library rather than UFFI. Perform 'asdf:load-op
+       on this system rather than clsql to use CFFI-UFFI-COMPAT.
+
 2010-01-29  Nathan Bird  <nathan@acceleration.net>
        * tests/*.lisp: A lot more tests and test setup tweaks.
        * sql/expressions.lisp: output-sql on sql-relational-exp does
diff --git a/clsql-cffi.asd b/clsql-cffi.asd
new file mode 100644 (file)
index 0000000..fb6fb7d
--- /dev/null
@@ -0,0 +1,27 @@
+;;;; -*- Mode: LISP; Syntax: ANSI-Common-Lisp; Base: 10 -*-
+;;;; *************************************************************************
+;;;; FILE IDENTIFICATION
+;;;;
+;;;; Name:     clsql-cffi.asd
+;;;; Purpose:  ASDF System definition for CLSQL using CFFI-UFFI-COMPAT
+;;;; Author:   Kevin M. Rosenberg
+;;;; Created:  Jan 2010
+;;;;
+;;;; CLSQL users are granted the rights to distribute and use this software
+;;;; as governed by the terms of the Lisp Lesser GNU Public License
+;;;; (http://opensource.franz.com/preamble.html), also known as the LLGPL.
+;;;; *************************************************************************
+
+(push :clsql-cffi cl:*features*)
+
+(defpackage #:clsql-cffi-system (:use #:asdf #:cl))
+(in-package #:clsql-cffi-system)
+
+(defsystem clsql-cffi
+    :name "CLSQL-CFFI"
+    :author "Kevin Rosenberg <kevin@rosenberg.net>"
+    :maintainer "Kevin M. Rosenberg <kmr@debian.org>"
+    :licence "Lessor Lisp General Public License"
+    :description "CLSQL using CFFI-UFFI-COMPAT interface"
+    :depends-on (clsql)
+    :components nil)
index 29e2f38..c28225e 100644 (file)
--- a/clsql.asd
+++ b/clsql.asd
@@ -3,7 +3,7 @@
 ;;;; FILE IDENTIFICATION
 ;;;;
 ;;;; Name:     clsql.asd
-;;;; Purpose:  ASDF system definition for CLSQL
+;;;; Purpose:  ASDF System definition for CLSQL
 ;;;; Authors:  Marcus Pearce and Kevin M. Rosenberg
 ;;;; Created:  March 2004
 ;;;;
 (defpackage #:clsql-system (:use #:asdf #:cl))
 (in-package #:clsql-system)
 
-#+clisp
-(progn
-  (asdf:operate 'asdf:load-op 'cffi)
-  (asdf:operate 'asdf:load-op 'cffi-uffi-compat)
-  (asdf:defsystem uffi :depends-on (cffi-uffi-compat)))
+#+(and clisp (not :clsql-cffi))
+(asdf:operate 'asdf:load-op 'clsql-cffi)
 
 ;; need to load uffi for below perform :after method
 (eval-when (:compile-toplevel :load-toplevel :execute)
+  #+:clsql-cffi
+  (unless (find-package 'cffi-uffi-compat)
+    (asdf:operate 'asdf:load-op 'cffi-uffi-compat))
+  #-:clsql-cffi
   (unless (find-package 'uffi)
     (asdf:operate 'asdf:load-op 'uffi)))