37 releases (breaking)
| 0.28.0 | Aug 9, 2024 |
|---|---|
| 0.27.1 | Dec 2, 2023 |
| 0.26.0 | Oct 13, 2023 |
| 0.24.0 | May 12, 2023 |
| 0.4.1 | Nov 19, 2020 |
#2 in #ergo-tree
1,897 downloads per month
300KB
7K
SLoC
C bindings for ergo-lib
A thin wrapper for core Rust part of C bindings Does not use Rust types in the API and is suitable for C FFI.
Build instructions
The following command builds the project with REST API features:
cargo build -p ergo-lib-c --features rest
To build without REST simply omit --features rest.
The C header file is generated with cbindgen. Run the following command:
cbindgen --config cbindgen.toml --crate ergo-lib-c --output h/ergo_lib.h
Note that we require a nightly version of rustc just for this command. This is because we use
macros to generate some C-types and cbindgen cannot directly generate types through them. However
cbindgen gives us the option to expand macros, which can only be done through a nightly version of
rustc. The crate itself can always be compiled by a stable version of rustc.
Dependencies
~20–37MB
~577K SLoC