-(in-package :cl-user)
-
-;;; Setup logical pathname translaton with separate binary directories
-;;; for each implementation
-
-;; push allegro case sensitivity on *features*
-#+allegro
-(eval-when (:compile-toplevel :load-toplevel :execute)
- (if (or (eq excl:*current-case-mode* :case-sensitive-lower)
- (eq excl:*current-case-mode* :case-sensitive-upper))
- (pushnew :case-sensitive cl:*features*)
- (pushnew :case-insensitive cl:*features*)))
-
-(defconstant +uffi-compiler-name+
- #+(and allegro ics case-sensitive) "acl-modern"
- #+(and allegro (not ics) case-sensitive) "acl-modern8"
- #+(and allegro ics (not case-sensitive)) "acl-ansi"
- #+(and allegro (not ics) (not case-sensitive)) "acl-ansi8"
- #+lispworks "lispworks"
- #+clisp "clisp"
- #+cmu "cmucl"
- #+sbcl "sbcl"
- #+corman "corman"
- #+mcl "mcl"
- #-(or allegro lispworks clisp cmu sbcl corman mcl) "unknown")
-
-(setf (logical-pathname-translations "UFFI")
- `(("**;bin;*.*.*" ,(merge-pathnames
- (make-pathname
- :name :wild
- :type :wild
- :directory
- (append '(:relative :wild-inferiors
- ".bin" #.+uffi-compiler-name+)))
- *load-truename*))
- ("**;*.*.*" ,(merge-pathnames
- (make-pathname
- :name :wild
- :type :wild
- :directory '(:relative :wild-inferiors))
- *load-truename*))))
-
-;;; UFFI system definition
-
-(mk:defsystem :uffi
- :source-pathname "UFFI:src;"
+(in-package :make)
+
+;; For use with non-Common Lisp Controller installations
+#-common-lisp-controller
+(let ((path (make-pathname :name "set-logical" :type "cl"
+ :defaults *load-truename*)))
+ (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")
+
+(make:defsystem :uffi
+ :source-pathname
+ #-mcl #.(format nil "~A:uffi;" +uffi-logical-host+)
+ #+mcl #.(format nil "~A:uffi;mcl;" +uffi-logical-host+)