Update AllegroCL for :long-long on 64-bit platforms
[uffi.git] / uffi.asd
index 48346e5d17b571a1ec1a8bf97fd0869fb90712f2..5eea1a8a47751792a9c61c8d93d96735e28d360f 100644 (file)
--- a/uffi.asd
+++ b/uffi.asd
@@ -4,66 +4,45 @@
 ;;;;
 ;;;; Name:          uffi.asd
 ;;;; Purpose:       ASDF system definition file for UFFI package
-;;;; Programmer:    Kevin M. Rosenberg
+;;;; Author:        Kevin M. Rosenberg
 ;;;; Date Started:  Aug 2002
 ;;;;
-;;;; $Id: uffi.asd,v 1.7 2002/08/28 03:29:01 kevin Exp $
+;;;; This file, part of UFFI, is Copyright (c) 2002-2010 by Kevin M. Rosenberg
 ;;;;
-;;;; This file, part of UFFI, is Copyright (c) 2002 by Kevin M. Rosenberg
-;;;;
-;;;; 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 :asdf)
-
-;; 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")
-
-(defmethod source-file-type  ((c cl-source-file) (s (eql (find-system 'uffi)))) 
-   "cl")
-
-;(defclass uffi-cl-source-file (cl-source-file) ())
-;(defmethod source-file-type ((c uffi-cl-source-file) (s module))  "cl")
+(defpackage #:uffi-system (:use #:asdf #:cl))
+(in-package #:uffi-system)
 
+#+(or allegro lispworks cmu openmcl digitool cormanlisp sbcl scl)
 (defsystem uffi
-  :name "cl-uffi"
-  :author "Kevin M. Rosenberg <kmr@debian.org"
-  :version "0.6.1"
-  :maintainer "Kevin M. Rosenberg <kmr@debian.org"
+  :name "uffi"
+  :author "Kevin Rosenberg <kevin@rosenberg.net>"
+  :version "2.0.0"
+  :maintainer "Kevin M. Rosenberg <kmr@debian.org>"
   :licence "Lessor Lisp General Public License"
   :description "Universal Foreign Function Library for Common Lisp"
   :long-description "UFFI provides a universal foreign function interface (FFI) for Common Lisp. UFFI supports CMUCL, Lispworks, and AllegroCL."
-  
-  :default-component-class uffi-cl-source-file
-  :pathname 
-  #-mcl #.(format nil "~A:uffi;" +uffi-logical-host+)
-  #+mcl #.(format nil "~A:uffi;mcl;" +uffi-logical-host+)
-  :perform (load-op :after (op uffi)
-                   (pushnew :uffi cl:*features*))
-  :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")))
-  )
+
+  :components
+  ((:module :src
+           :components
+           ((:file "package")
+             (:file "i18n" :depends-on ("package"))
+            (:file "primitives" :depends-on ("i18n"))
+            #+(or openmcl digitool) (:file "readmacros-mcl" :depends-on ("package"))
+            (:file "objects" :depends-on ("primitives"))
+            (:file "aggregates" :depends-on ("primitives"))
+            (:file "strings" :depends-on ("primitives" "functions" "aggregates" "objects"
+                                           #+(or openmcl digitool) "readmacros-mcl"))
+            (:file "functions" :depends-on ("primitives"))
+            (:file "libraries" :depends-on ("package"))
+            (:file "os" :depends-on ("package"))))
+   ))
+
+#+(or allegro lispworks cmu openmcl digitool cormanlisp sbcl scl)
+(defmethod perform ((o test-op) (c (eql (find-system 'uffi))))
+  (oos 'load-op 'uffi-tests)
+  (oos 'test-op 'uffi-tests :force t))
+