first pass at implementing low-level foreign functions
authorAndy Wingo <wingo@pobox.com>
Mon, 25 Jan 2010 17:15:35 +0000 (18:15 +0100)
committerAndy Wingo <wingo@pobox.com>
Tue, 26 Jan 2010 21:56:41 +0000 (22:56 +0100)
commitd8b04f04e90882f3903092ea85038a9e3cd10d39
tree96bc2b6908de147279883c2f41628b9d85a525bf
parent827dc8dcb61dcbdd62ad1ae41b98d65ecd8d5b66
first pass at implementing low-level foreign functions

* libguile/Makefile.am (AM_CPPFLAGS): Move LIBFFI_CFLAGS here (from
  AM_CFLAGS), allowing snarfing to work.

* libguile/foreign.h (scm_make_foreign_function): New public function.

* libguile/foreign.c: Flesh out an implementation of foreign functions.
  (scm_take_foreign_pointer): Bugfix for the case in which we have a
  finalizer.

* module/system/foreign.scm: Export `make-foreign-function'.
libguile/Makefile.am
libguile/foreign.c
libguile/foreign.h
module/system/foreign.scm