;;;;
;;;; Name: umlisp.asd
;;;; Purpose: ASDF system definition file for UMLisp
-;;;; Programmer: Kevin M. Rosenberg
+;;;; Author: Kevin M. Rosenberg
;;;; Date Started: Apr 2000
;;;;
-;;;; $Id: umlisp.asd,v 1.8 2002/10/18 03:57:39 kevin Exp $
-;;;;
;;;; This file, part of UMLisp, is
-;;;; Copyright (c) 2000-2002 by Kevin M. Rosenberg, M.D.
+;;;; Copyright (c) 2000-2006 by Kevin M. Rosenberg, M.D.
;;;;
;;;; UMLisp users are granted the rights to distribute and use this software
;;;; as governed by the terms of the GNU General Public License.
;;;; *************************************************************************
-(in-package :asdf)
+(defpackage #:umlisp-system (:use #:asdf #:cl))
+(in-package #:umlisp-system)
+
+(defsystem umlisp
+ :components
+ ((:file "package")
+ (:file "data-structures" :depends-on ("package"))
+ (:file "utils" :depends-on ("data-structures"))
+ (:file "sql" :depends-on ("utils"))
+ (:file "parse-macros" :depends-on ("sql"))
+ (:file "parse-rrf" :depends-on ("parse-macros"))
+ (:file "parse-common" :depends-on ("parse-rrf"))
+ (:file "create-sql" :depends-on ("parse-common"))
+ (:file "sql-classes" :depends-on ("sql"))
+ (:file "classes" :depends-on ("sql-classes"))
+ (:file "class-support" :depends-on ("classes"))
+ (:file "composite" :depends-on ("sql-classes")))
+ :depends-on (clsql clsql-mysql kmrcl hyperobject))
+
+(defmethod perform ((o test-op) (c (eql (find-system 'umlisp))))
+ (operate 'load-op 'umlisp-tests)
+ (operate 'test-op 'umlisp-tests :force t))
-#+(or allegro lispworks cmu sbcl openmcl)
-(defsystem :umlisp
- :perform (load-op :after (op umlisp)
- (pushnew :umlisp cl:*features*))
-
- :components
- ((:file "package")
- (:file "data-structures" :depends-on ("package"))
- (:file "sql" :depends-on ("data-structures"))
- (:file "utils" :depends-on ("data-structures"))
- (:file "parse-macros" :depends-on ("sql"))
- (:file "parse-2002" :depends-on ("parse-macros"))
- (:file "parse-common" :depends-on ("parse-2002"))
- (:file "sql-create" :depends-on ("parse-common"))
- (:file "classes" :depends-on ("utils"))
- (:file "sql-classes" :depends-on ("classes" "sql"))
- (:file "composite" :depends-on ("sql-classes")))
- :depends-on (:clsql-mysql
- :clsql-postgresql
- :clsql
- :kmrcl))
+(defmethod perform :after ((o load-op) (c (eql (find-system 'umlisp))))
+ (let ((init-file (or (probe-file
+ (merge-pathnames
+ (make-pathname :name ".umlisprc")
+ (user-homedir-pathname)))
+ #+(or mswin windows win32)
+ (probe-file "c:\\etc\\umlisp-init.lisp"))))
+ (when init-file
+ (format t "loading umlisp init file ~A~%" init-file)
+ (load init-file))))
-#+(or allegro lispworks cmu sbcl openmcl)
-(when (ignore-errors (find-class 'load-compiled-op))
- (defmethod perform :after ((op load-compiled-op) (c (eql (find-system :umlisp))))
- (pushnew :umlisp cl:*features*)))