r1648: *** empty log message ***
[clsql.git] / interfaces / mysql / mysql-loader.cl
index df0bd643915574b513f550d30a7fc40e3802475c..ce8b7ceeb3dec44d87b68e65bc2968f739f2a983 100644 (file)
@@ -7,7 +7,7 @@
 ;;;; Programmers:   Kevin M. Rosenberg
 ;;;; Date Started:  Feb 2002
 ;;;;
 ;;;; Programmers:   Kevin M. Rosenberg
 ;;;; Date Started:  Feb 2002
 ;;;;
-;;;; $Id: mysql-loader.cl,v 1.1 2002/03/23 14:04:52 kevin Exp $
+;;;; $Id: mysql-loader.cl,v 1.2 2002/03/24 04:01:26 kevin Exp $
 ;;;;
 ;;;; This file, part of CLSQL, is Copyright (c) 2002 by Kevin M. Rosenberg
 ;;;;
 ;;;;
 ;;;; This file, part of CLSQL, is Copyright (c) 2002 by Kevin M. Rosenberg
 ;;;;
 load the MySQL client library succesfully.  If this differs at your site,
 set to the right path before compiling or loading the system.")
 
 load the MySQL client library succesfully.  If this differs at your site,
 set to the right path before compiling or loading the system.")
 
+(defvar *mysql-library-loaded* nil
+  "T if foreign library was able to be loaded successfully")
 
 
-
+(defmethod database-type-library-loaded ((database-type (eql :mysql)))
+  *mysql-library-loaded*)
+                                     
 (defmethod database-type-load-foreign ((database-type (eql :mysql)))
 (defmethod database-type-load-foreign ((database-type (eql :mysql)))
-  (uffi:load-foreign-library *mysql-library-filename* 
-                            :module "mysql" 
-                             :supporting-libraries 
-                            *mysql-supporting-libraries*)
-  (uffi:load-foreign-library *clsql-mysql-library-filename* 
-                            :module "clsql-mysql" 
-                             :supporting-libraries 
-                            (append *mysql-supporting-libraries*)))
+  (when
+      (and
+       (uffi:load-foreign-library *mysql-library-filename* 
+                                 :module "mysql" 
+                                 :supporting-libraries 
+                                 *mysql-supporting-libraries*)
+       (uffi:load-foreign-library *clsql-mysql-library-filename* 
+                                 :module "clsql-mysql" 
+                                 :supporting-libraries 
+                                 (append *mysql-supporting-libraries*)))
+    (setq *mysql-library-loaded* t)))
 
 
 (database-type-load-foreign :mysql)
 
 
 (database-type-load-foreign :mysql)