;;;; Programmer: Kevin M. Rosenberg
;;;; Date Started: Feb 2002
;;;;
-;;;; $Id: uffi.system,v 1.12 2002/04/09 20:03:18 kevin Exp $
+;;;; $Id: uffi.system,v 1.16 2002/08/23 15:29:06 kevin Exp $
;;;;
;;;; This file, part of UFFI, is Copyright (c) 2002 by Kevin M. Rosenberg
;;;;
;;;; *************************************************************************
(declaim (optimize (debug 3) (speed 3) (safety 1) (compilation-speed 0)))
-(in-package :cl-user)
+(in-package :make)
-(load (make-pathname :name "set-logical" :type "cl"
- :defaults *load-truename*))
+;;; UFFI system definition (for Common Lisp Controller systems)
-(set-logical-host-for-pathname "UFFI" *load-truename*)
-(set-logical-host-for-pathname "UFFI-SRC"
- (merge-pathnames
- (make-pathname
- :directory
- #+(or cmu allegro lispworks)
- '(:relative "src")
- #+mcl
- '(:relative "src" "mcl")
- #+corman
- '(:relative "src" "corman")
- )
- *load-truename*))
+#+common-lisp-controller
+(make:defsystem :uffi
+ :source-pathname #-mcl "cl-library:uffi;"
+ #+mcl "cl-library:uffi;mcl;"
+ :source-extension "cl"
+ :components
+ ((:file "package")
+ (:file "primitives" :depends-on ("package"))
+ (:file "strings" :depends-on ("primitives"))
+ (:file "objects" :depends-on ("primitives"))
+ (:file "aggregates" :depends-on ("primitives"))
+ (:file "functions" :depends-on ("primitives"))
+ (:file "libraries" :depends-on ("package")))
+ :finally-do
+ (pushnew :uffi cl:*features*))
+
+;; For use with non-Common Lisp Controller installations
-;;; UFFI system definition
+#-common-lisp-controller
+(let ((helper-pathname (make-pathname :name "set-cl-library" :type "cl"
+ :defaults *load-truename*)))
+ (when (probe-file helper-pathname)
+ (load helper-pathname)))
-(mk:defsystem :uffi
- :source-pathname "UFFI-SRC:"
+#-common-lisp-controller
+(make:defsystem :uffi
+ :source-pathname #-mcl "cl-library:uffi;src;"
+ #+mcl "cl-library:uffi;src;mcl;"
:source-extension "cl"
- :binary-pathname "UFFI-SRC:bin;"
:components
((:file "package")
(:file "primitives" :depends-on ("package"))