r2388: *** empty log message ***
[clsql.git] / clsql.asd
1 ;;;; -*- Mode: LISP; Syntax: ANSI-Common-Lisp; Base: 10 -*-
2 ;;;; *************************************************************************
3 ;;;; FILE IDENTIFICATION
4 ;;;;
5 ;;;; Name:          clsql.system
6 ;;;; Purpose:       Defsystem-3/4 for CLSQL
7 ;;;; Programmer:    Kevin M. Rosenberg
8 ;;;; Date Started:  Feb 2002
9 ;;;;
10 ;;;; $Id: clsql.asd,v 1.3 2002/08/23 19:39:56 kevin Exp $
11 ;;;;
12 ;;;; This file, part of CLSQL, is Copyright (c) 2002 by Kevin M. Rosenberg
13 ;;;;
14 ;;;; CLSQL users are granted the rights to distribute and use this software
15 ;;;; as governed by the terms of the Lisp Lesser GNU Public License
16 ;;;; (http://opensource.franz.com/preamble.html), also known as the LLGPL.
17 ;;;; *************************************************************************
18
19 (declaim (optimize (debug 3) (speed 3) (safety 1) (compilation-speed 0)))
20
21 (in-package :asdf)
22
23 #-clsql-base
24 (let ((path (make-pathname :name "clsql-base" :type "system"
25                                       :defaults *load-truename*)))
26   (when (probe-file path)
27     (load path)))
28
29 ;;; System definitions
30
31 (unless (ignore-errors (find-class 'clsql-cl-source-file))
32   (defclass clsql-cl-source-file (cl-source-file) ())
33   (defmethod source-file-type ((c clsql-cl-source-file) (s module)) 
34     "cl"))
35
36 (defsystem clsql
37   :default-component-class clsql-cl-source-file
38   :pathname #.(format nil "~A:clsql;" +clsql-logical-host+)
39   :perform (load-op :after (op clsql)
40                     (pushnew :clsql cl:*features*))
41   :components ((:file "package")
42                (:file "pool" :depends-on ("package"))
43                (:file "loop-extension")
44                (:file "sql" :depends-on ("pool"))
45                  (:file "transactions" :depends-on ("sql"))
46                  (:file "functional" :depends-on ("sql"))
47                  (:file "usql" :depends-on ("sql")))
48   :depends-on (:clsql-base)
49   )