(in-package "COMMON-LISP-USER")

;;; File: patch-defsys.lisp
;;; Optional explicit definition of patches for KPML 4
;;;
;;; ----------------------------------------------------------------------
;;; If we want more patch structure than the two files kpml-body-patches.lisp
;;; and kpml-interface.lisp, then we redefine the KPML-PATCHES system
;;; here to explicitly control which patch files are loaded and when.
;;; The default definition just repeats what KPML would do anyway if
;;; the system were not to be redefined here.
;;; ----------------------------------------------------------------------

(make:defsystem KPML-PATCHES
  :source-pathname *root-of-kpml*
  :source-extension "lisp"
  :binary-pathname *kpml-binaries-root*
  :components 

  ;; ----------------------------------------
  ;; There are by default two modules, one for
  ;; patches to the main KPML code, one for
  ;; patches to the GUI. Both should be maintained
  ;; in a subdirectory/folder "patches".
  ;; ----------------------------------------

  ((:module body-patches
	    :source-pathname "patches"
	    :components 
	    (
	     (:file "kpml-body-patches")
	     ;;
             ;; more files here if wanted...
	     ;;
	     ))

   ;; ----------------------------------------
   ;;  do not bother loading the interface
   ;;  patches if CLIM is not around...  in
   ;;  general, interface patches may assume
   ;;  that all of the body patches have
   ;;  already been loaded.
   ;; ----------------------------------------

   #+clim
   (:module window-patches
	    :source-pathname "patches"
	    :components 
	    (
	     (:file "kpml-interface-patches")
	     ;;
             ;; more files here if wanted...
	     ;;
	     ))))