;;;; Programmer: Kevin M. Rosenberg
;;;; Date Started: Feb 2002
;;;;
-;;;; $Id: uffi.system,v 1.16 2002/08/23 15:29:06 kevin Exp $
+;;;; $Id: uffi.system,v 1.19 2002/08/23 19:46:16 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 :make)
-;;; UFFI system definition (for Common Lisp Controller systems)
-
-#+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
-
#-common-lisp-controller
-(let ((helper-pathname (make-pathname :name "set-cl-library" :type "cl"
+(let ((path (make-pathname :name "set-logical" :type "cl"
:defaults *load-truename*)))
- (when (probe-file helper-pathname)
- (load helper-pathname)))
+ (when (probe-file path)
+ (load path)
+ (set-logical-host-for-pathname
+ "uffi"
+ (make-pathname :host (pathname-host *load-truename*)
+ :device (pathname-device *load-truename*)
+ :directory (pathname-directory *load-truename*)))))
+
+(defconstant +uffi-logical-host+
+ #+common-lisp-controller "cl-library"
+ #-common-lisp-controller "uffi"
+ "Logical hostname for loading system")
-#-common-lisp-controller
(make:defsystem :uffi
- :source-pathname #-mcl "cl-library:uffi;src;"
- #+mcl "cl-library:uffi;src;mcl;"
+ :source-pathname
+ #-mcl #.(format nil "~A:uffi;" +uffi-logical-host+)
+ #+mcl #.(format nil "~A:uffi;mcl;" +uffi-logical-host+)
:source-extension "cl"
:components
((:file "package")
(:file "libraries" :depends-on ("package")))
:finally-do
(pushnew :uffi cl:*features*))
-