;;;;  Copyright (c) 1992, Giuseppe Attardi.
;;;;
;;;;    This program is free software; you can redistribute it and/or
;;;;    modify it under the terms of the GNU Library General Public
;;;;    License as published by the Free Software Foundation; either
;;;;    version 2 of the License, or (at your option) any later version.
;;;;
;;;;    See file '../Copyright' for full details.
;;;
;;;

;;; ----------------------------------------------------------------------
;;;	CLOS
;;; ----------------------------------------------------------------------

(defparameter
  *clos-modules*
  ;; file       load              compile               files which force
  ;;            environment       environment           recompilations of
  ;;                                                    this file
  '(
    (walk      ()           	 ()               	())
    (macros    (walk)     	 (walk)                 ())
    (kernel    (macros)          (macros)               ())
    (method    (kernel)          (kernel)       	(kernel))
    (slot      ()	         ()			())
    (combin    (kernel)          (kernel)		(kernel))
    (precomp   t		 t			())
    (boot      (kernel slot combin)
	       			 (kernel slot)   	(kernel slot))
    (print     (boot)		 (boot) 		(boot))
    (defclass  (kernel slot)     (kernel slot)          (boot))
    (standard  (boot defclass precomp)
	      			 (boot defclass)	(kernel defclass))
    (change    (standard)	 (standard)		(standard))
    (builtin   (standard)        (standard)	   	(standard))
    (stdmethod (builtin)	 (builtin)	        (builtin))
    (generic   (stdmethod)       (stdmethod)            ())
    (fixup     (stdmethod)       (stdmethod)            (standard))
    (inspect   (standard)        (standard)             (standard))
    (conditions ()		 ()			())
    ))

(defparameter
  *clos-modules*
  ;; file       load              compile               files which force
  ;;            environment       environment           recompilations of
  ;;                                                    this file
  '#.(mapcar #'(lambda (x) `(,x () () ()))
       '(walk macros kernel method slot combin precomp boot print
	 defclass standard change builtin stdmethod generic fixup
	 inspect conditions)))

(sbt:defsystem 
 clos
 :modules *clos-modules*
 :source-directory "@abs_srcdir@/"
 :fasl-directory "@abs_builddir@/"
 :library-directory "@abs_top_builddir@/")
