(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"))
(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*)
+
+ ;; since clsql-mysql is dynamically linked to libmysqlclient, do not need to
+ ;; load libmysqlclient directly
+ ;;
+ ;;(clsql-uffi:find-and-load-foreign-library *mysql-library-candidate-names*
+ ;; :module "mysql"
+ ;; :supporting-libraries *mysql-supporting-libraries*)
+
(clsql-uffi:find-and-load-foreign-library *clsql-mysql-library-candidate-names*
:module "clsql-mysql"
:supporting-libraries *mysql-supporting-libraries*)