;;;; Programmers: Kevin M. Rosenberg
;;;; Date Started: Feb 2002
;;;;
-;;;; $Id: mysql-loader.cl,v 1.9 2002/05/14 16:10:55 kevin Exp $
+;;;; $Id: mysql-loader.cl,v 1.18 2002/05/27 17:19:30 kevin Exp $
;;;;
;;;; This file, part of CLSQL, is Copyright (c) 2002 by Kevin M. Rosenberg
;;;;
(defvar *clsql-mysql-library-filename*
(uffi:find-foreign-library
"clsql-mysql"
- `(,(translate-logical-pathname
- "CL-LIBRARY:clsql;interfaces;clsql-uffi;")
- "/usr/share/common-lisp/source/clsql/interfaces/clsql-uffi/")))
-
+ `(,(directory-namestring
+ (translate-logical-pathname
+ "CL-LIBRARY:clsql;interfaces;mysql;"))
+ "/usr/share/common-lisp/source/clsql/interfaces/mysql/")
+ :drive-letters '("C" "D" "E" "F" "G")))
+
(defvar *mysql-library-filename*
(cond
((probe-file "/opt/mysql/lib/mysql/libmysqlclient.so")
(defvar *mysql-library-loaded* nil
"T if foreign library was able to be loaded successfully")
-(defmethod clsql-sys:database-type-library-loaded ((database-type (eql :mysql)))
+(defmethod clsql-base-sys:database-type-library-loaded ((database-type (eql :mysql)))
*mysql-library-loaded*)
-(defmethod clsql-sys:database-type-load-foreign ((database-type (eql :mysql)))
+(defmethod clsql-base-sys:database-type-load-foreign ((database-type (eql :mysql)))
(let ((mysql-path
(uffi:find-foreign-library *mysql-library-candidate-names*
*mysql-library-candidate-directories*
(uffi:load-foreign-library
(uffi:find-foreign-library '("libz" "zlib")
'("/usr/lib/" "/usr/local/" "/lib/")))
- (when
- (and
+ (if (and
(uffi:load-foreign-library mysql-path
:module "mysql"
:supporting-libraries
:module "clsql-mysql"
:supporting-libraries
(append *mysql-supporting-libraries*)))
- (setq *mysql-library-loaded* t))))
+ (setq *mysql-library-loaded* t)
+ (warn "Unable to load MySQL client library ~A or CLSQL-MySQL library ~A"
+ mysql-path *clsql-mysql-library-filename*))))
+
+(clsql-base-sys:database-type-load-foreign :mysql)
-(clsql-sys:database-type-load-foreign :mysql)
-(when (clsql-sys:database-type-library-loaded :mysql)
- (clsql-sys:initialize-database-type :database-type :mysql)
- (setq clsql:*default-database-type* :mysql)
- (pushnew :mysql cl:*features*))