r11102: 06 Sep 2006 Kevin Rosenberg <kevin@rosenberg.net>
[clsql.git] / db-mysql / mysql-loader.lisp
index aa903222a62627e7294e4e3a74819752c4f67826..1c27ad3c603d0526e4af6150b695648ee78ac70f 100644 (file)
 
 (in-package #:mysql)
 
+;; searches clsql_mysql64 to accomodate both 32-bit and 64-bit libraries on same system
 (defparameter *clsql-mysql-library-candidate-names*
-  (list #+(or 64bit x86-64) "clsql_mysql64"
-        "clsql_mysql"))
+  `(,@(when (> most-positive-fixnum (expt 2 32)) (list "clsql_mysql64"))
+    "clsql_mysql"))
 
 (defvar *mysql-library-candidate-names*
   '("libmysqlclient" "libmysql"))
@@ -37,6 +38,8 @@ set to the right path before compiling or loading the system.")
   *mysql-library-loaded*)
 
 (defmethod clsql-sys:database-type-load-foreign ((database-type (eql :mysql)))
+  (clsql:push-library-path
+   (make-pathname :directory clsql-mysql-system::*library-file-dir*))
   (clsql-uffi:find-and-load-foreign-library *mysql-library-candidate-names*
                                             :module "mysql"
                                             :supporting-libraries *mysql-supporting-libraries*)