[elephant-cvs] CVS elephant

rread rread at common-lisp.net
Wed Feb 22 20:18:51 UTC 2006


Update of /project/elephant/cvsroot/elephant
In directory common-lisp:/tmp/cvs-serv13327

Modified Files:
	INSTALL ele-clsql.asd elephant.asd 
Added Files:
	config.lisp 
Log Message:
New Configuration mechanism.  Minor test changes.  At least to SQL-side fixes.


--- /project/elephant/cvsroot/elephant/INSTALL	2006/02/20 15:45:36	1.16
+++ /project/elephant/cvsroot/elephant/INSTALL	2006/02/22 20:18:51	1.17
@@ -93,7 +93,7 @@
 
 b) Also edit the variable *sleepycat-foreign-library-path* in
 
-   ele-bdb.asd 
+   config.lisp
 
 to point to your local distribution of the Berkeley DB libraries
 
--- /project/elephant/cvsroot/elephant/ele-clsql.asd	2006/02/19 16:22:39	1.6
+++ /project/elephant/cvsroot/elephant/ele-clsql.asd	2006/02/22 20:18:51	1.7
@@ -16,11 +16,35 @@
 ;;; as governed by the terms of the Lisp Lesser GNU Public License
 ;;; (http://opensource.franz.com/preamble.html), also known as the LLGPL.
 
+;; (eval-when (:compile-toplevel :load-toplevel  :execute)
+;;   (unless (find-package 'clsql)
+;;     (asdf:operate 'asdf:load-op 'clsql)))
+
+;; ;; clsql needs to know how to find libaries to various databases....
+;;    (defvar *clsql-foreign-lib-path* "/usr/lib")
+;;    (defvar *elephant-lib-path* "/usr/local/share/common-lisp/elephant/")
+;;    (clsql:push-library-path *clsql-foreign-lib-path*)
+;;    (clsql:push-library-path *elephant-lib-path*)
+;; )
+
+(defparameter *clsql-foreign-lib-path* #p"/usr/lib")
+(defparameter *elephant-lib-path* #p"/usr/local/share/common-lisp/elephant/")
+
+(defmethod asdf:perform :after ((o asdf:load-op) 
+				(c (eql (asdf:find-system 'clsql))))
+  (let ((plp (find-symbol (symbol-name '#:push-library-path)
+			(find-package 'clsql))))
+  (funcall plp
+	   *clsql-foreign-lib-path*)
+  (funcall plp
+	   *elephant-lib-path*)
+))
+
 (defsystem ele-clsql
   :name "elephant"
   :author "Ben Lee <blee at common-lisp.net>"
   :version "0.6.0"
-  :maintainer "Ben Lee <blee at common-lisp.net>"
+  :maintainer "Robert L. Read <rread at common-lisp.net>"
   :licence "LLGPL"
   :description "SQL-based Object respository for Common Lisp"
   :long-description "An experimental CL-SQL based implementation of Elephant"
--- /project/elephant/cvsroot/elephant/elephant.asd	2006/02/19 20:06:03	1.15
+++ /project/elephant/cvsroot/elephant/elephant.asd	2006/02/22 20:18:51	1.16
@@ -95,6 +95,7 @@
 	     (:module elephant
 		      :components
 		      ((:file "elephant")
+		       (:file "config" :pathname "../../config.lisp")
 		       (:file "variables")
 		       #+cmu (:file "cmu-mop-patches")
 		       #+openmcl (:file "openmcl-mop-patches")

--- /project/elephant/cvsroot/elephant/config.lisp	2006/02/22 20:18:51	NONE
+++ /project/elephant/cvsroot/elephant/config.lisp	2006/02/22 20:18:51	1.1
;;  CLSQL BACKEND
;;  Make sure the libraries that CLSQL needs for a particular system
;;  are pointed to by these libraries.
;;  These values will be irrelevant if you don't use a CLSQL-based backend.
(defparameter *clsql-foreign-lib-path* #p"/usr/local/share/common-lisp/elephant/")


;;  BerkeleyDB 
;;  Make sure the libraries that CLSQL needs for a particular system
;;  are pointed to by these libraries.
(defparameter *sleepycat-foreign-library-path*
       ;; Sleepycat: this works on linux
       #+linux
;;       "/db/ben/lisp/db43/lib/libdb.so" 
       "/usr/local/BerkeleyDB.4.3/lib/libdb-4.3.so"
       ;; this works on FreeBSD
       #+(and (or bsd freebsd) (not (or darwin macosx)))
       "/usr/local/lib/db43/libdb.so" 
       #+(or darwin macosx)
       ;; for Fink (OS X) -- but I will assume Linux more common...
;;       "/sw/lib/libdb-4.3.dylib"
       ;; a possible manual install
       "/usr/local/BerkeleyDB.4.3/lib/libdb.dylib")



More information about the Elephant-cvs mailing list