cl-autowrap is a point-and-shoot tool for creating and distributing FFI wrappers. It allows one to specify a C header file, and generates wrappers from there using c2ffi. Features:

  • Uses c2ffi to generate specs which are far more accurate than SWIG
  • Does not require a compiler for groveling or c2ffi for distribution, only the generated .spec files
  • Platform-specific details are separated and loaded on a per-platform basis
  • FFI is based on a new simplified FFI (SFFI) on top of CFFI-SYS
  • Type-correct pointer wrappers and easy GC support
  • Extensive metadata support
  • Bitfields (that is, partial-structure-fields, as opposed to bitmasks)
  • Bitmasks, flag translation, etc
  • Tested by implementing numerous wrappers including cl-sdl2

License: BSD 2-clause

Available via QuickLisp. c2ffi is required for authors and available separately (also BSD licensed).