From 124446f17c460cdd7ec987d89be90147d1a0d14b Mon Sep 17 00:00:00 2001 From: Pekka Enberg Date: Tue, 9 May 2023 10:04:14 +0300 Subject: [PATCH] Generate C header file on `cargo build` --- core/mvcc/.gitignore | 3 ++- core/mvcc/bindings/c/build.rs | 6 ++++++ core/mvcc/bindings/c/cbindgen.toml | 6 ++++++ 3 files changed, 14 insertions(+), 1 deletion(-) create mode 100644 core/mvcc/bindings/c/build.rs create mode 100644 core/mvcc/bindings/c/cbindgen.toml diff --git a/core/mvcc/.gitignore b/core/mvcc/.gitignore index 2c96eb1b6..48e69afa7 100644 --- a/core/mvcc/.gitignore +++ b/core/mvcc/.gitignore @@ -1,2 +1,3 @@ -target/ Cargo.lock +bindings/c/include +target/ diff --git a/core/mvcc/bindings/c/build.rs b/core/mvcc/bindings/c/build.rs new file mode 100644 index 000000000..af21fb9d8 --- /dev/null +++ b/core/mvcc/bindings/c/build.rs @@ -0,0 +1,6 @@ +use std::path::Path; + +fn main() { + let header_file = Path::new("include").join("mvcc.h"); + cbindgen::generate(".").expect("Failed to generate C bindings").write_to_file(header_file); +} diff --git a/core/mvcc/bindings/c/cbindgen.toml b/core/mvcc/bindings/c/cbindgen.toml new file mode 100644 index 000000000..b530dce1d --- /dev/null +++ b/core/mvcc/bindings/c/cbindgen.toml @@ -0,0 +1,6 @@ +language = "C" +cpp_compat = true +include_guard = "MVCC_H" +line_length = 120 +no_includes = true +style = "type"