aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobin Krahl <me@robin-krahl.de>2020-09-20 04:32:40 +0200
committerRobin Krahl <robin.krahl@ireas.org>2020-09-20 11:34:23 +0200
commit7394a6b188c2a6c0d5ae72f8bba5fddc9720613b (patch)
tree7614255216cc3ea2c89595636924f3ad845be46e
parent8695e2c762807e033a86c8d03974b686d20cdd72 (diff)
downloadnitrokey-sys-rs-7394a6b188c2a6c0d5ae72f8bba5fddc9720613b.tar.gz
nitrokey-sys-rs-7394a6b188c2a6c0d5ae72f8bba5fddc9720613b.tar.bz2
Add Makefile for generating src/ffi.rs
This patch adds a Makefile to make it easier to generate the src/ffi.rs file using bindgen. As we can use whitelists instead of manually removing the unnecessary type definitions, we also re-generate the file with the new settings.
-rw-r--r--Makefile11
-rw-r--r--src/ffi.rs6
2 files changed, 16 insertions, 1 deletions
diff --git a/Makefile b/Makefile
new file mode 100644
index 0000000..dc55e2f
--- /dev/null
+++ b/Makefile
@@ -0,0 +1,11 @@
+BINDGEN ?= bindgen
+LIBNITROKEY ?= $(wildcard libnitrokey-v*)
+
+src/ffi.rs: ${LIBNITROKEY}/NK_C_API.h
+ ${BINDGEN} \
+ --whitelist-function "NK_.*" \
+ --whitelist-var "NK_.*" \
+ --whitelist-var "MAXIMUM_STR_REPLY_LENGTH" \
+ --output "$@" \
+ "$<" \
+ -- "-I${LIBNITROKEY}/libnitrokey"
diff --git a/src/ffi.rs b/src/ffi.rs
index a01eae8..0dea45a 100644
--- a/src/ffi.rs
+++ b/src/ffi.rs
@@ -1,5 +1,9 @@
-/* automatically generated by rust-bindgen, manually modified */
+/* automatically generated by rust-bindgen */
+pub type __uint8_t = ::std::os::raw::c_uchar;
+pub type __uint16_t = ::std::os::raw::c_ushort;
+pub type __uint32_t = ::std::os::raw::c_uint;
+pub type __uint64_t = ::std::os::raw::c_ulong;
extern "C" {
#[link_name = "\u{1}NK_PWS_SLOT_COUNT"]
pub static mut NK_PWS_SLOT_COUNT: u8;