X-Git-Url: http://git.kpe.io/?p=clsql.git;a=blobdiff_plain;f=clsql.asd;h=c70fd787e5c8696dc3d8093715527f3dbae134f6;hp=2e7efe9659f29145707c95e228405ff79fedfe89;hb=26cfa48009c72652e0ba8ce9aed8c53216e9a3d3;hpb=c47ffde0f8939ddf0a04623b33777bb3a9fd365c diff --git a/clsql.asd b/clsql.asd index 2e7efe9..c70fd78 100644 --- a/clsql.asd +++ b/clsql.asd @@ -18,6 +18,11 @@ (defpackage #:clsql-system (:use #:asdf #:cl)) (in-package #:clsql-system) +;; need to load uffi for below perform :after method +(eval-when (:compile-toplevel :load-toplevel :execute) + (unless (find-package 'uffi) + (asdf:operate 'asdf:load-op 'uffi))) + (defsystem clsql :name "CLSQL" :author "Kevin Rosenberg " @@ -43,9 +48,9 @@ oriented interface." (:file "time" :depends-on ("package" "conditions")) (:file "utils" :depends-on ("package" "db-interface")) (:file "generics" :depends-on ("package")))) - (:module database - :pathname "" - :components + (:module database + :pathname "" + :components ((:file "initialize") (:file "database" :depends-on ("initialize")) (:file "recording" :depends-on ("database")) @@ -54,7 +59,7 @@ oriented interface." (:module syntax :pathname "" :components ((:file "expressions") - (:file "operations" + (:file "operations" :depends-on ("expressions")) (:file "syntax" :depends-on ("operations"))) :depends-on (database)) @@ -62,7 +67,7 @@ oriented interface." :pathname "" :components ((:file "fdml") (:file "transaction" :depends-on ("fdml")) - (:file "loop-extension" + (:file "loop-extension" :depends-on ("fdml")) (:file "fddl" :depends-on ("fdml"))) :depends-on (syntax)) @@ -83,3 +88,10 @@ oriented interface." (defmethod perform ((o test-op) (c (eql (find-system 'clsql)))) (operate 'load-op 'clsql-tests) (operate 'test-op 'clsql-tests :force t)) + +(defmethod perform :after ((o load-op) (c (eql (find-system 'clsql)))) + (let* ((init-var (uffi:getenv "CLSQLINIT")) + (init-file (or (when init-var (probe-file init-var)) + (probe-file "/etc/clsql-init.lisp")))) + (when init-file (load init-file)))) +