r2385: *** empty log message ***
[uffi.git] / uffi.system
index 7491d639f4522ab9594a4e8f66cdb57a44dc3ba2..12483e078fda82f20b6b7fc8c08972e1049e48ee 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,39 +7,25 @@
 ;;;; Programmer:    Kevin M. Rosenberg
 ;;;; Date Started:  Feb 2002
 ;;;;
-;;;; Copyright (c) 2002 Kevin M. Rosenberg
+;;;; $Id: uffi.system,v 1.16 2002/08/23 15:29:06 kevin Exp $
 ;;;;
-;;;; $Id: uffi.system,v 1.4 2002/03/11 18:00:57 kevin Exp $
+;;;; This file, part of UFFI, is Copyright (c) 2002 by Kevin M. Rosenberg
 ;;;;
-;;;; This file is part of UFFI. 
-;;;;
-;;;; UFFI is free software; you can redistribute it and/or modify
-;;;; it under the terms of the GNU General Public License (version 2) as
-;;;; published by the Free Software Foundation.
-;;;;
-;;;; UFFI is distributed in the hope that it will be useful,
-;;;; but WITHOUT ANY WARRANTY; without even the implied warranty of
-;;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-;;;; GNU General Public License for more details.
-;;;;
-;;;; You should have received a copy of the GNU General Public License
-;;;; along with UFFI; if not, write to the Free Software Foundation, Inc.,
-;;;; 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
+;;;; UFFI users are granted the rights to distribute and use this software
+;;;; as governed by the terms of the Lisp Lesser GNU Public License
+;;;; (http://opensource.franz.com/preamble.html), also known as the LLGPL.
 ;;;; *************************************************************************
 
 (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*))
-(set-logical-host-for-pathname "UFFI" *load-truename*)
+;;; UFFI system definition (for Common Lisp Controller systems)
 
-;;; UFFI system definition
-
-(mk:defsystem :uffi
-    :source-pathname "UFFI:src;"
+#+common-lisp-controller
+(make:defsystem :uffi
+    :source-pathname #-mcl "cl-library:uffi;"
+                     #+mcl "cl-library:uffi;mcl;"
     :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*))
+
+;; For use with non-Common Lisp Controller installations
+
+#-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)))
+
+#-common-lisp-controller
+(make:defsystem :uffi
+    :source-pathname #-mcl "cl-library:uffi;src;"
+                     #+mcl "cl-library:uffi;src;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*))