X-Git-Url: http://git.kpe.io/?p=clsql.git;a=blobdiff_plain;f=clsql.asd;h=2842c944c411cdc94384ccd8563d280a95b8f6d6;hp=9a1460b476059217fe0e77109fef4c0fa743c910;hb=edd7d48fad2820d89dd98db141a2fb8310f84b20;hpb=31e110c6d17b31e9978b61dcf64c13ba509182eb diff --git a/clsql.asd b/clsql.asd index 9a1460b..2842c94 100644 --- a/clsql.asd +++ b/clsql.asd @@ -2,47 +2,61 @@ ;;;; ************************************************************************* ;;;; FILE IDENTIFICATION ;;;; -;;;; Name: clsql.system -;;;; Purpose: Defsystem-3/4 for CLSQL -;;;; Programmer: Kevin M. Rosenberg -;;;; Date Started: Feb 2002 +;;;; Name: clsql.asd +;;;; Purpose: System definition for CLSQL-CLASSIC +;;;; Authors: Marcus Pearce and Kevin M. Rosenberg +;;;; Created: March 2004 ;;;; -;;;; $Id: clsql.asd,v 1.4 2002/09/01 09:00:15 kevin Exp $ -;;;; -;;;; This file, part of CLSQL, is Copyright (c) 2002 by Kevin M. Rosenberg +;;;; $Id$ ;;;; ;;;; CLSQL users are granted the rights to distribute and use this software ;;;; as governed by the terms of the Lisp Lesser GNU Public License ;;;; (http://opensource.franz.com/preamble.html), also known as the LLGPL. ;;;; ************************************************************************* -(declaim (optimize (debug 3) (speed 3) (safety 1) (compilation-speed 0))) - -(in-package :asdf) - -#-clsql-base -(let ((path (make-pathname :name "clsql-base" :type "system" - :defaults *load-truename*))) - (when (probe-file path) - (load path))) - -;;; System definitions - +(in-package #:cl-user) +(defpackage #:clsql-system (:use #:asdf #:cl)) +(in-package #:clsql-system) -(defmethod source-file-type ((c cl-source-file) - (s (eql (find-system 'clsql)))) - "cl") +(defsystem #:clsql + :name "CLSQL" + :author "" + :maintainer "" + :version "" + :licence "" + :description "A high level Common Lisp interface to SQL RDBMS." + :long-description "A high level Common Lisp interface to SQL RDBMS +based on the Xanalys CommonSQL interface for Lispworks. It depends on +the low-level database interfaces provided by CLSQL and includes both +a functional and an object oriented interface." + :depends-on (clsql-base) + :components + ((:module sql + :components + ((:module :package + :pathname "" + :components ((:file "package") + (:file "kmr-mop" :depends-on ("package")))) + (:module :core + :pathname "" + :components ((:file "generics") + (:file "classes" :depends-on ("generics")) + (:file "operations" :depends-on ("classes")) + (:file "syntax" :depends-on ("operations"))) + :depends-on (:package)) + (:module :functional + :pathname "" + :components ((:file "sql") + (:file "table" :depends-on ("sql"))) + :depends-on (:core)) + (:module :object + :pathname "" + :components ((:file "metaclasses") + (:file "objects" :depends-on ("metaclasses")) + (:file "relations" :depends-on ("objects"))) + :depends-on (:functional)))))) + -(defsystem clsql - :pathname #.(format nil "~A:clsql;" +clsql-logical-host+) - :perform (load-op :after (op clsql) - (pushnew :clsql cl:*features*)) - :components ((:file "package") - (:file "pool" :depends-on ("package")) - (:file "loop-extension") - (:file "sql" :depends-on ("pool")) - (:file "transactions" :depends-on ("sql")) - (:file "functional" :depends-on ("sql")) - (:file "usql" :depends-on ("sql"))) - :depends-on (:clsql-base) - ) +(defmethod perform ((o test-op) (c (eql (find-system 'clsql)))) + (operate 'load-op 'clsql-tests) + (operate 'test-op 'clsql-tests :force t))