G-Wrap -- A tool for exporting C libraries into Scheme interpreters =================================================================== G-Wrap is a tool (and guile library) for generating function wrappers for inter-language calls. It currently only supports generating Guile wrappers for C functions. Other languages may be supported in the future, possibly on both sides. Installing ========== Prerequisites ------------- * Guile >= 1.6, http://www.gnu.org/software/guile/ * Guile-Lib >= 0.1.2, http://home.gna.org/guile-lib Instructions ------------ For detailed, general instructions, see the file INSTALL. * Building from a tarball Run ./configure and then "make" and "make install". Note: + Use option --prefix={where} to tell ./configure where to install g-wrap. * Building from Arch working copy Run ./autogen.sh. You can pass configure arguments to autogen.sh, or --noconfigure to disable the configure run, e.g. for out-of-tree builds (which are recommended). Then run "make" and "make install". Note that during the build of the included libffi, there is might be a warning about runtest not beeing found. This can be safely ignored. Notes about this branch ======================= This is G-Wrap-TNG (G-Wrap - The Next Generation), a rewrite of G-Wrap. It's goals are: * Use GOOPS, for enhanced flexibility and (hopefully) clearer design. * Be target-language agnostic; i.e. clean separation of the core and e.g. the Guile-specific code. New languages (perhaps even non-Schemes) should be easy to add. * Offer the current (1.3.4+) wrapping API as a compatibility layer. Status ------ Currently, the features from 1.3.4 are present and superceded. It should be considered "ready for testing". An 1.3.4 compatibility layer is in place, as far as needed by GnuCash, which is apparently the only user of that API. Authors ====== Maintainer: Andreas Rottmann Co-Maintainer: Rob Browning Originally written by: Christopher Lee http://www.cs.cmu.edu/~chrislee