The devel/c2ffi port
c2ffi-16.0.0.0 – extract FFI definitions from C, C++, and Objective C
Description
This is a tool for extracting definitions from C, C++, and Objective C
headers for use with foreign function call interfaces.
There are generally two steps to using `c2ffi`:
- Generate output for a particular header or file, gathering macro
definitions (with the `-M <file>.c` parameter)
- Generate output for macro definitions by running `c2ffi` again on
the *generated* file (without `-M`)
Currently JSON is the default output. This is in a rather wordy
hierarchical format, with each object having a "tag" field which
describes it. All objects are contained in an array. This should
make it fairly easy (or at least far easier than parsing C yourself)
to transform into language-specific bindings.
The following language bindings exist for `c2ffi`:
- [cl-autowrap](https://github.com/rpav/cl-autowrap/): Create bindings
in Common Lisp from a `.h` with `c2ffi` using a simple `(c-include "file.h")`
- [c2ffi-ruby](https://github.com/rpav/c2ffi-ruby): Uses the JSON
from c2ffi to produce a nicely-formatted Ruby file for ruby-ffi.
WWW: https://github.com/rpav/c2ffi
- Only for arches
-
aarch64
aarch64
alpha
alpha
amd64
amd64
arm
arm
hppa
hppa
i386
i386
mips64
mips64
mips64el
mips64el
powerpc
powerpc
powerpc64
powerpc64
riscv64
riscv64
sh
sparc64
sparc64
- Categories:
-
devel
Library dependencies
Build dependencies
Run dependencies