r10077: * multiple: Apply patch from Joerg Hoehle with multiple
[clsql.git] / clsql-mysql.asd
index 7c77bab35f076f71dcd43646afa3c44cfb5575fa..378082763c040675a8d23860eb0df24e2847e065 100644 (file)
@@ -20,8 +20,8 @@
 (in-package #:clsql-mysql-system)
 
 (eval-when (:compile-toplevel :load-toplevel :execute)
-  #+common-lisp-controller (require 'uffi)
-  #-common-lisp-controller (asdf:operate 'asdf:load-op 'uffi))
+  (unless (find-package 'uffi)
+    (asdf:operate 'asdf:load-op 'uffi)))
 
 (defvar *library-file-dir* (append (pathname-directory *load-truename*)
                                   (list "db-mysql")))
        t)) 
 
 (defmethod perform ((o compile-op) (c clsql-mysql-source-file))
-  #-(or win32 mswindows)
-  (unless (zerop (run-shell-command
-                 #-freebsd "cd ~A; make"
-                 #+freebsd "cd ~A; gmake"
-                 (namestring (make-pathname :name nil
-                                            :type nil
-                                            :directory *library-file-dir*))))
-    (error 'operation-error :component c :operation o)))
+  (unless (operation-done-p o c)
+    #-(or win32 mswindows)
+    (unless (zerop (run-shell-command
+                   #-freebsd "cd ~A; make"
+                   #+freebsd "cd ~A; gmake"
+                   (namestring (make-pathname :name nil
+                                              :type nil
+                                              :directory *library-file-dir*))))
+      (error 'operation-error :component c :operation o))))
 
 (defmethod operation-done-p ((o compile-op) (c clsql-mysql-source-file))
   (or (and (probe-file #p"/usr/lib/clsql/mysql.so") t)
@@ -71,7 +72,6 @@
 
 ;;; System definition
 
-#+(or allegro lispworks cmu sbcl openmcl mcl scl)
 (defsystem :clsql-mysql
   :name "cl-sql-mysql"
   :author "Kevin M. Rosenberg <kmr@debian.org>"
@@ -80,7 +80,7 @@
   :description "Common Lisp SQL MySQL Driver"
   :long-description "cl-sql-mysql package provides a database driver to the MySQL database system."
 
-  :depends-on (uffi clsql-base clsql-uffi)
+  :depends-on (uffi clsql clsql-uffi)
   :components
   ((:module :db-mysql
            :components
@@ -89,4 +89,5 @@
             (:file "mysql-loader" :depends-on ("mysql-package" "mysql"))
             (:file "mysql-client-info" :depends-on ("mysql-loader"))
             (:file "mysql-api" :depends-on ("mysql-client-info"))
-            (:file "mysql-sql" :depends-on ("mysql-api"))))))
+            (:file "mysql-sql" :depends-on ("mysql-api"))
+            (:file "mysql-objects" :depends-on ("mysql-sql"))))))