1 ;;;; -*- Mode: Lisp; Syntax: ANSI-Common-Lisp; Base: 10; Package: umlisp -*-
2 ;;;; *************************************************************************
3 ;;;; FILE IDENTIFICATION
6 ;;;; Purpose: ASDF system definition file for UMLisp
7 ;;;; Author: Kevin M. Rosenberg
8 ;;;; Date Started: Apr 2000
12 ;;;; This file, part of UMLisp, is
13 ;;;; Copyright (c) 2000-2006 by Kevin M. Rosenberg, M.D.
15 ;;;; UMLisp users are granted the rights to distribute and use this software
16 ;;;; as governed by the terms of the GNU General Public License.
17 ;;;; *************************************************************************
19 (defpackage #:umlisp-system (:use #:asdf #:cl))
20 (in-package #:umlisp-system)
22 ;; need to load uffi for below perform :after method
23 (eval-when (:compile-toplevel :load-toplevel :execute)
24 (unless (find-package 'uffi)
25 (asdf:operate 'asdf:load-op 'uffi)))
30 (:file "data-structures" :depends-on ("package"))
31 (:file "utils" :depends-on ("data-structures"))
32 (:file "sql" :depends-on ("utils"))
33 (:file "parse-macros" :depends-on ("sql"))
34 (:file "parse-rrf" :depends-on ("parse-macros"))
35 (:file "parse-common" :depends-on ("parse-rrf"))
36 (:file "create-sql" :depends-on ("parse-common"))
37 (:file "sql-classes" :depends-on ("sql"))
38 (:file "classes" :depends-on ("sql-classes"))
39 (:file "class-support" :depends-on ("classes"))
40 (:file "composite" :depends-on ("sql-classes")))
41 :depends-on (clsql clsql-mysql kmrcl hyperobject))
43 (defmethod perform ((o test-op) (c (eql (find-system 'umlisp))))
44 (operate 'load-op 'umlisp-tests)
45 (operate 'test-op 'umlisp-tests :force t))
47 (defmethod perform :after ((o load-op) (c (eql (find-system 'umlisp))))
48 (let* ((init-var (uffi:getenv "UMLISPRC"))
49 (init-file (or (when init-var (probe-file init-var))
52 (make-pathname :name ".umlisprc")
53 (user-homedir-pathname)))
54 #+(or mswin windows win32)
55 (probe-file "c:\\etc\\umlisp-init.lisp"))))
57 (format t "loading umlisp init file ~A~%" init-file)