-(defmethod database-type-load-foreign ((database-type (eql :mysql)))
- (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)))
+(defmethod clsql-sys:database-type-load-foreign ((database-type (eql :mysql)))
+ (let ((mysql-path
+ (uffi:find-foreign-library *mysql-library-candidate-names*
+ *mysql-library-candidate-directories*
+ :drive-letters
+ *mysql-library-candidate-drive-letters*)))
+ ;; zlib required to load mysql on CMUCL Solaris
+ (uffi:load-foreign-library
+ (uffi:find-foreign-library '("libz" "zlib")
+ '("/usr/lib/" "/usr/local/" "/lib/")))
+ (when
+ (and
+ (uffi:load-foreign-library mysql-path
+ :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))))