r2388: *** empty log message ***
[clsql.git] / clsql-base.asd
1 ;;;; -*- Mode: LISP; Syntax: ANSI-Common-Lisp; Base: 10 -*-
2 ;;;; *************************************************************************
3 ;;;; FILE IDENTIFICATION
4 ;;;;
5 ;;;; Name:          clsql-base.asd
6 ;;;; Purpose:       ASDF definition file for Base CLSQL
7 ;;;; Programmer:    Kevin M. Rosenberg
8 ;;;; Date Started:  Feb 2002
9 ;;;;
10 ;;;; $Id: clsql-base.asd,v 1.4 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 (in-package :asdf)
21
22 ;; For use with non-Common Lisp Controller installations
23 #-common-lisp-controller
24 (let ((path (make-pathname :name "set-logical" :type "cl"
25                                       :defaults *load-truename*)))
26   (when (probe-file path)
27     (load path)
28     (set-logical-host-for-pathname 
29      "clsql" 
30      (make-pathname :host (pathname-host *load-truename*)
31                     :device (pathname-device *load-truename*)
32                     :directory (pathname-directory *load-truename*)))))
33
34 (defconstant +clsql-logical-host+
35   #+common-lisp-controller "cl-library"
36   #-common-lisp-controller "clsql"
37   "Logical hostname for loading system")
38
39 (unless (ignore-errors (find-class 'clsql-cl-source-file))
40   (defclass clsql-cl-source-file (cl-source-file) ())
41   (defmethod source-file-type ((c clsql-cl-source-file) (s module)) 
42     "cl"))
43
44  ;;; System definitions
45
46 (defsystem clsql-base
47   :default-component-class clsql-cl-source-file
48   :pathname #.(format nil "~A:clsql-base;" +clsql-logical-host+)
49   :perform (load-op :after (op clsql-base)
50                     (pushnew :clsql-base cl:*features*))
51   :components ((:file "cmucl-compat")
52                (:file "package")
53                (:file "utils" :depends-on ("package"))
54                (:file "classes" :depends-on ("package"))
55                (:file "conditions" :depends-on ("classes"))
56                (:file "db-interface" :depends-on ("conditions"))
57                (:file "initialize" :depends-on ("db-interface")))
58   )