Re: trying to avoid tons of #+

Matthew Danish <[email protected]> Thu, 19 Dec 2002 13:49:12 -0500
Newsgroups gmane.lisp.uffi.general
Message-ID <[email protected]>
On Thu, Dec 19, 2002 at 10:09:10AM +0100, Hoehle, Joerg-Cyril wrote:
> BTW, how do you use uffi:def-function?  (def-function foo #+(or
> Liwpworks CLISP) (:module #+(and lispworks pc) "zlib.dll" #+(and
> lispworks unix) "zlib.so" #+(and clisp unix (not cygwin)) "zlib.so"
> #+(and clisp pc (not cygwin)) "zlib.dll" #+(and clisp cygwin)
> "cygz.so-or-such") ; Allegro, CMUCL and others don't require a
> :module, so people from there don't put it in :returning xyz)
> 
> I was told that lispworks needs the :module keyword. CLISP would, too,
> for dynamic libraries (future), but not for modules (present).

I always use it like so:

;; somewhere earlier:
 ... (load-foreign-library libpath :module "foo") ...

(def-function ("Frob" frob)
  ((arg :int))
 :returning :int
 :module "foo")

-- 
; Matthew Danish <[email protected]>
; OpenPGP public key: C24B6010 on keyring.debian.org
; Signed or encrypted mail welcome.
; "There is no dark side of the moon really; matter of fact, it's all dark."