r2566: *** empty log message ***
[uffi.git] / uffi.system
index d4361bcafccc3715a2ad259d84583de02609a8e0..df0cd1e4f31cbc568d99d6d3110ec02912063155 100644 (file)
@@ -1,4 +1,4 @@
-;;;; -*- Mode: LISP; Syntax: ANSI-Common-Lisp; Base: 10 -*-
+;;;; -*- Mode: Lisp; Syntax: ANSI-Common-Lisp; Base: 10 -*-
 ;;;; *************************************************************************
 ;;;; FILE IDENTIFICATION
 ;;;;
@@ -7,7 +7,7 @@
 ;;;; Programmer:    Kevin M. Rosenberg
 ;;;; Date Started:  Feb 2002
 ;;;;
-;;;; $Id: uffi.system,v 1.5 2002/03/14 21:03:12 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 :cl-user)
-
-(load (make-pathname :name "set-logical" :type "cl"
-                    :defaults *load-truename*))
-(set-logical-host-for-pathname "UFFI" *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+)
     :source-extension "cl"
-    :binary-pathname "UFFI:src;bin;"
     :components 
     ((:file "package")
      (:file "primitives" :depends-on ("package"))
      (:file "objects" :depends-on ("primitives"))
      (:file "aggregates" :depends-on ("primitives"))
      (:file "functions" :depends-on ("primitives"))
-     (:file "libraries" :depends-on ("package"))))
-
-
-
-
-
-
+     (:file "libraries" :depends-on ("package")))
+    :finally-do
+    (pushnew :uffi cl:*features*))