Hello,

On OS-X, this works:

(define-foreign-library libc
        (t (:default "libc")))
(use-foreign-library libc)

But this doesn't:

(define-foreign-library libc
        (t (:or "libc" "libc.so.6")))
(use-foreign-library libc)

This seems to be because load-foreign-library doesn't attempt to guess the appropriate suffix for the library name when used with :or. This is the documented behavior but it could be a little confusing since the second example appears to the naive (like me) to be a super- set of the first example.

Also:
(define-foreign-library libc
        (:unix (:or "libc.so.6"))
        (t (:default "libc")))
(use-foreign-library libc)

Doesn't work since OS-X is unix, but not linux. Maybe after failing on the specific case (i.e. unix), it could fall back to the general case?

I could try and provide patches for one or both of these behaviors if people think that this would be an improvement.

best,
-Hazen

_______________________________________________
cffi-devel mailing list
cffi-devel@common-lisp.net
http://common-lisp.net/cgi-bin/mailman/listinfo/cffi-devel

Reply via email to