;;;;
;;;; 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.12 2003/01/15 02:01:39 kevin Exp $
+;;;; $Id: umlisp.asd,v 1.16 2003/05/03 17:10:08 kevin Exp $
;;;;
;;;; This file, part of UMLisp, is
;;;; Copyright (c) 2000-2002 by Kevin M. Rosenberg, M.D.
;;;; as governed by the terms of the GNU General Public License.
;;;; *************************************************************************
-(in-package :asdf)
+(defpackage #:umlisp-system (:use #:asdf #:cl))
+(in-package #:umlisp-system)
#+(or allegro lispworks cmu sbcl openmcl scl)
-(defsystem :umlisp
- :perform (load-op :after (op umlisp)
- (pushnew :umlisp cl:*features*))
-
+(defsystem umlisp
: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
- :kmrcl
- :hyperobject))
+ ((: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 "class-support" :depends-on ("classes"))
+ (:file "sql-classes" :depends-on ("class-support" "sql"))
+ (:file "composite" :depends-on ("sql-classes")))
+ :depends-on (:clsql :clsql-mysql :kmrcl :hyperobject))
+#+(or allegro lispworks cmu sbcl openmcl scl)
+(defmethod perform ((o test-op) (c (eql (find-system :umlisp))))
+ (oos 'load-op 'umlisp-tests)
+ (oos 'test-op 'umlisp-tests))
+
+#+(or allegro lispworks cmu sbcl openmcl scl)
+(defsystem umlisp-tests
+ :depends-on (rt umlisp)
+ :components ((:file "tests")))
+
+#+(or allegro lispworks cmu sbcl openmcl scl)
+(defmethod perform ((o test-op) (c (eql (find-system :umlisp-tests))))
+ (or (funcall (intern (symbol-name '#:do-tests) (find-package '#:rtest)))
+ (error "test-op failed")))