[cffi-devel] Grovel default search path for include files

Liam Healy lnp at healy.washington.dc.us
Sat Aug 22 20:42:07 UTC 2009


On Fri, Aug 21, 2009 at 3:54 AM, Stelian Ionescu<sionescu at cddr.org> wrote:
> On Thu, 2009-08-20 at 22:37 -0400, Liam Healy wrote:
>> System-installed header files sometimes are in different places
>> depending on the OS and method of installation.  In particular, the
>> file ffi.h that FSBV (http://repo.or.cz/w/fsbv.git) uses from libffi
>> seems to be in different places on OS X depending on how it was
>> installed (Apple native, Mac ports, etc.).  Not being a user of OS X,
>> it is difficult for me to know all the possible locations where this
>> file might end up.  Is it possible to specify that the groveler
>> should "search system-standard locations" for the header files
>> specified in include forms,
>
> The groveler does not do any kind of searching: it merely invokes the
> system C compiler which searches for includes in "system-standard
> locations". what you need is a way to configure the sources; for
> example, a simple ./configure scripts that looks for libffi and
> generates a config.lisp would do
>

OK, understood, thanks for the explanation.
I *think* I've solved the Mac Ports problem by adding this:

#+darwin
(setf cffi-grovel::*cc-flags*
      (append '("-I" "/opt/local/include/") cffi-grovel::*cc-flags*))

but since I don't use the Mac I will need to wait for reports from Mac
users to confirm.

Liam




More information about the cffi-devel mailing list