cffi.asd - clic - Clic is an command line interactive client for gopher written in Common LISP
 (HTM) git clone git://bitreich.org/clic/ git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws65d7roiv6bfj7d652fid.onion/clic/
 (DIR) Log
 (DIR) Files
 (DIR) Refs
 (DIR) Tags
 (DIR) README
 (DIR) LICENSE
       ---
       cffi.asd (3864B)
       ---
            1 ;;;; -*- Mode: lisp; indent-tabs-mode: nil -*-
            2 ;;;
            3 ;;; cffi.asd --- ASDF system definition for CFFI.
            4 ;;;
            5 ;;; Copyright (C) 2005-2006, James Bielman  <jamesjb@jamesjb.com>
            6 ;;; Copyright (C) 2005-2010, Luis Oliveira  <loliveira@common-lisp.net>
            7 ;;;
            8 ;;; Permission is hereby granted, free of charge, to any person
            9 ;;; obtaining a copy of this software and associated documentation
           10 ;;; files (the "Software"), to deal in the Software without
           11 ;;; restriction, including without limitation the rights to use, copy,
           12 ;;; modify, merge, publish, distribute, sublicense, and/or sell copies
           13 ;;; of the Software, and to permit persons to whom the Software is
           14 ;;; furnished to do so, subject to the following conditions:
           15 ;;;
           16 ;;; The above copyright notice and this permission notice shall be
           17 ;;; included in all copies or substantial portions of the Software.
           18 ;;;
           19 ;;; THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
           20 ;;; EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
           21 ;;; MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
           22 ;;; NONINFRINGEMENT.  IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
           23 ;;; HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
           24 ;;; WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
           25 ;;; OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
           26 ;;; DEALINGS IN THE SOFTWARE.
           27 ;;;
           28 
           29 (in-package :asdf)
           30 
           31 #-(or openmcl mcl sbcl cmucl scl clisp lispworks ecl allegro cormanlisp abcl mkcl clasp)
           32 (error "Sorry, this Lisp is not yet supported.  Patches welcome!")
           33 
           34 (defsystem "cffi"
           35   :description "The Common Foreign Function Interface"
           36   :author "James Bielman  <jamesjb@jamesjb.com>"
           37   :maintainer "Luis Oliveira  <loliveira@common-lisp.net>"
           38   :licence "MIT"
           39   :depends-on (:uiop :alexandria :trivial-features :babel)
           40   :in-order-to ((test-op (load-op :cffi-tests)))
           41   :perform (test-op (o c) (operate 'asdf:test-op :cffi-tests))
           42   :components
           43   ((:module "src"
           44     :serial t
           45     :components
           46     (#+openmcl    (:file "cffi-openmcl")
           47      #+mcl        (:file "cffi-mcl")
           48      #+sbcl       (:file "cffi-sbcl")
           49      #+cmucl      (:file "cffi-cmucl")
           50      #+scl        (:file "cffi-scl")
           51      #+clisp      (:file "cffi-clisp")
           52      #+lispworks  (:file "cffi-lispworks")
           53      #+ecl        (:file "cffi-ecl")
           54      #+allegro    (:file "cffi-allegro")
           55      #+cormanlisp (:file "cffi-corman")
           56      #+abcl       (:file "cffi-abcl")
           57      #+mkcl       (:file "cffi-mkcl")
           58      #+clasp      (:file "cffi-clasp")
           59      (:file "package")
           60      (:file "utils")
           61      (:file "libraries")
           62      (:file "early-types")
           63      (:file "types")
           64      (:file "enum")
           65      (:file "strings")
           66      (:file "structures")
           67      (:file "functions")
           68      (:file "foreign-vars")
           69      (:file "features")))))
           70 
           71 ;; when you get CFFI from git, its defsystem doesn't have a version,
           72 ;; so we assume it satisfies any version requirements whatsoever.
           73 (defmethod version-satisfies ((c (eql (find-system :cffi))) version)
           74   (declare (ignorable version))
           75   (or (null (component-version c))
           76       (call-next-method)))
           77 
           78 (defsystem "cffi/c2ffi"
           79   :description "CFFI definition generator from the FFI spec generated by c2ffi. This system is enough to use the ASDF machinery (as a :defsystem-depends-on)."
           80   :author "Attila Lendvai <attila@lendvai.name>"
           81   :depends-on (:alexandria
           82                :cffi)
           83   :licence "MIT"
           84   :components
           85   ((:module "src/c2ffi"
           86     :components
           87     ((:file "package")
           88      (:file "c2ffi" :depends-on ("package"))
           89      (:file "asdf" :depends-on ("package" "c2ffi"))))))
           90 
           91 (defsystem "cffi/c2ffi-generator"
           92   :description "This system gets loaded lazily when the CFFI bindings need to be regenerated."
           93   :author "Attila Lendvai <attila@lendvai.name>"
           94   :depends-on (:cffi/c2ffi
           95                :cl-ppcre
           96                :cl-json)
           97   :licence "MIT"
           98   :components
           99   ((:module "src/c2ffi"
          100     :components
          101     ((:file "generator")))))