r9456: relax type for server-version
[clsql.git] / clsql.asd
1 ;;;; -*- Mode: LISP; Syntax: ANSI-Common-Lisp; Base: 10 -*-
2 ;;;; *************************************************************************
3 ;;;; FILE IDENTIFICATION
4 ;;;;
5 ;;;; Name:     clsql.asd
6 ;;;; Purpose:  System definition for CLSQL-CLASSIC
7 ;;;; Authors:  Marcus Pearce and Kevin M. Rosenberg
8 ;;;; Created:  March 2004
9 ;;;;
10 ;;;; $Id$
11 ;;;;
12 ;;;; CLSQL users are granted the rights to distribute and use this software
13 ;;;; as governed by the terms of the Lisp Lesser GNU Public License
14 ;;;; (http://opensource.franz.com/preamble.html), also known as the LLGPL.
15 ;;;; *************************************************************************
16
17 (in-package #:cl-user)
18 (defpackage #:clsql-system (:use #:asdf #:cl))
19 (in-package #:clsql-system)
20
21 (defsystem #:clsql
22     :name "CLSQL"
23     :author "Kevin Rosenberg <kevin@rosenberg.net>"
24     :maintainer "Kevin M. Rosenberg <kmr@debian.org>"
25     :licence "Lessor Lisp General Public License"
26     :description "Common Lisp SQL Interface library"
27     :long-description "A Common Lisp interface to SQL RDBMS based on
28 the Xanalys CommonSQL interface for Lispworks. It depends on the
29 low-level database interfaces as well as a functional and an object
30 oriented interface."
31     :components
32     ((:module sql
33               :components
34               ((:module :base
35                         :pathname ""
36                         :components
37                         ((:file "cmucl-compat")
38                          (:file "package")
39                          (:file "utils" :depends-on ("package" "db-interface"))
40                          (:file "base-classes" :depends-on ("package"))
41                          (:file "conditions" :depends-on ("base-classes"))
42                          (:file "db-interface" :depends-on ("conditions"))
43                          (:file "initialize" :depends-on ("db-interface" "utils"))
44                          (:file "loop-extension" :depends-on ("db-interface"))
45                          (:file "time" :depends-on ("package"))
46                          (:file "database" :depends-on ("initialize"))
47                          (:file "recording" :depends-on ("time" "database"))
48                          (:file "basic-sql" :depends-on ("database" "cmucl-compat"))
49                          (:file "pool" :depends-on ("basic-sql"))
50                          (:file "transaction" :depends-on ("basic-sql"))
51                          (:file "kmr-mop" :depends-on ("package"))))
52                (:module :core
53                         :pathname ""
54                         :components ((:file "generics")
55                                      (:file "classes" :depends-on ("generics"))
56                                      (:file "operations" :depends-on ("classes"))
57                                      (:file "syntax" :depends-on ("operations")))
58                         :depends-on (:base))
59                (:module :functional
60                         :pathname ""
61                         :components ((:file "sql")
62                                      (:file "table" :depends-on ("sql")))
63                         :depends-on (:core))
64                (:module :object
65                         :pathname ""
66                        :components ((:file "metaclasses")
67                                     (:file "objects" :depends-on ("metaclasses")))
68                        :depends-on (:functional))
69                (:module :generic
70                         :pathname ""
71                        :components ((:file "generic-postgresql")
72                                     (:file "generic-odbc")
73                                     (:file "sequences"))
74                        :depends-on (:functional))))))
75      
76
77 (defmethod perform ((o test-op) (c (eql (find-system 'clsql))))
78   (operate 'load-op 'clsql-tests)
79   (operate 'test-op 'clsql-tests :force t))