diff options
-rw-r--r-- | dev-lisp/cl-sql/ChangeLog | 6 | ||||
-rw-r--r-- | dev-lisp/cl-sql/files/3.5.6-gentoo.patch | 104 |
2 files changed, 109 insertions, 1 deletions
diff --git a/dev-lisp/cl-sql/ChangeLog b/dev-lisp/cl-sql/ChangeLog index ae05ab7e5a61..ff058da471d9 100644 --- a/dev-lisp/cl-sql/ChangeLog +++ b/dev-lisp/cl-sql/ChangeLog @@ -1,6 +1,10 @@ # ChangeLog for dev-lisp/cl-sql # Copyright 2000-2006 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/dev-lisp/cl-sql/ChangeLog,v 1.26 2006/04/30 05:48:53 mkennedy Exp $ +# $Header: /var/cvsroot/gentoo-x86/dev-lisp/cl-sql/ChangeLog,v 1.27 2006/04/30 05:54:00 mkennedy Exp $ + + 30 Apr 2006; Matthew Kennedy <mkennedy@gentoo.org> + +files/3.5.6-gentoo.patch: + Include patch. *cl-sql-3.5.6 (30 Apr 2006) diff --git a/dev-lisp/cl-sql/files/3.5.6-gentoo.patch b/dev-lisp/cl-sql/files/3.5.6-gentoo.patch new file mode 100644 index 000000000000..acc51208777a --- /dev/null +++ b/dev-lisp/cl-sql/files/3.5.6-gentoo.patch @@ -0,0 +1,104 @@ +diff -ur clsql-3.5.6.orig/db-mysql/mysql-loader.lisp clsql-3.5.6/db-mysql/mysql-loader.lisp +--- clsql-3.5.6.orig/db-mysql/mysql-loader.lisp 2005-07-05 19:51:52.000000000 -0500 ++++ clsql-3.5.6/db-mysql/mysql-loader.lisp 2005-12-31 13:29:19.000000000 -0600 +@@ -18,17 +18,6 @@ + + (in-package #:mysql) + +-(defparameter *clsql-mysql-library-candidate-names* +- (list #+(or 64bit x86-64) "clsql_mysql64" +- #+(or 64bit x86-64) (make-pathname :name "clsql_mysql64" +- :directory (pathname-directory *load-truename*)) +- "clsql_mysql" +- (make-pathname :name "clsql_mysql" +- :directory (pathname-directory *load-truename*)))) +- +-(defvar *mysql-library-candidate-names* +- '("libmysqlclient" "libmysql")) +- + (defvar *mysql-supporting-libraries* '("c") + "Used only by CMU. List of library flags needed to be passed to ld to + load the MySQL client library succesfully. If this differs at your site, +@@ -41,14 +30,17 @@ + *mysql-library-loaded*) + + (defmethod clsql-sys:database-type-load-foreign ((database-type (eql :mysql))) +- (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*) ++ (uffi:load-foreign-library (make-pathname :directory '(:absolute "usr" "@LIBDIR@") ++ :name "libmysqlclient" ++ :type "so") ++ :module "mysql" ++ :supporting-libraries *mysql-supporting-libraries*) ++ (uffi:load-foreign-library (make-pathname :directory '(:absolute "usr" "@LIBDIR@" "clsql") ++ :name "clsql_mysql" ++ :type "so") ++ :module "clsql-mysql" ++ :supporting-libraries *mysql-supporting-libraries*) + (setq *mysql-library-loaded* t)) + + + (clsql-sys:database-type-load-foreign :mysql) +- +diff -ur clsql-3.5.6.orig/uffi/clsql-uffi-loader.lisp clsql-3.5.6/uffi/clsql-uffi-loader.lisp +--- clsql-3.5.6.orig/uffi/clsql-uffi-loader.lisp 2005-08-22 15:24:22.000000000 -0500 ++++ clsql-3.5.6/uffi/clsql-uffi-loader.lisp 2005-12-31 13:28:56.000000000 -0600 +@@ -18,37 +18,6 @@ + + (in-package #:clsql-uffi) + +-(defun find-and-load-foreign-library (filenames &key module supporting-libraries (errorp t)) +- (setq filenames (if (listp filenames) filenames (list filenames)) +- filenames +- (append +- (loop for search-path in clsql:*foreign-library-search-paths* +- nconc (loop for filename in filenames +- collect (merge-pathnames filename search-path))) +- filenames)) +- (or (loop for type in (uffi:foreign-library-types) +- for suffix = (make-pathname :type type) +- thereis (loop for filename in filenames +- thereis (handler-case +- (uffi:load-foreign-library (merge-pathnames filename suffix) +- :module module +- :supporting-libraries supporting-libraries) +- (error (c) +- (warn "~A" c) +- nil)))) +- (when errorp +- (error "Couldn't load foreign librar~@P ~{~S~^, ~}. (searched ~S)" +- (length filenames) filenames +- 'clsql:*foreign-library-search-paths*)))) +- +-(defvar *clsql-uffi-library-filenames* +- (list #+(or 64bit x86-64) "clsql_uffi64" +- #+(or 64bit x86-64) (make-pathname :name "clsql_uffi64" +- :directory clsql-uffi-system::*library-file-dir*) +- "clsql_uffi" +- (make-pathname :name "clsql_uffi" +- :directory clsql-uffi-system::*library-file-dir*))) +- + (defvar *clsql-uffi-supporting-libraries* '("c") + "Used only by CMU. List of library flags needed to be passed to ld to + load the MySQL client library succesfully. If this differs at your site, +@@ -58,10 +27,12 @@ + "T if foreign library was able to be loaded successfully") + + (defun load-uffi-foreign-library () +- (find-and-load-foreign-library *clsql-uffi-library-filenames* +- :module "clsql-uffi" +- :supporting-libraries +- *clsql-uffi-supporting-libraries*) ++ (uffi:load-foreign-library (make-pathname :directory '(:absolute "usr" "@LIBDIR@" "clsql") ++ :name "clsql_uffi" ++ :type "so") ++ :module "clsql-uffi" ++ :supporting-libraries ++ *clsql-uffi-supporting-libraries*) + (setq *uffi-library-loaded* t)) + + (load-uffi-foreign-library) |