- add bindgen generated file so docs.rs works

This commit is contained in:
Wim Pomp
2025-08-10 18:09:32 +02:00
parent 222543630a
commit eebda907af
4 changed files with 1911 additions and 33 deletions

View File

@@ -1,6 +1,6 @@
[package]
name = "libczirw-sys"
version = "0.1.0"
version = "0.1.1"
edition = "2024"
rust-version = "1.85.1"
authors = ["Wim Pomp <w.pomp@nki.nl>"]
@@ -18,6 +18,5 @@ anyhow = "1.0.98"
[build-dependencies]
anyhow = "1.0.98"
bindgen = "0.72.0"
cmake = "0.1.54"
git2 = "0.20.2"

View File

@@ -1,4 +1,4 @@
use anyhow::{Error, Result};
use anyhow::Result;
use std::env;
use std::fs::OpenOptions;
use std::io::{Read, Seek, Write};
@@ -30,10 +30,10 @@ fn main() -> Result<()> {
.define("LIBCZI_BUILD_LIBCZIAPI", "ON")
.build();
let libczi_src = libczi_dir.join("Src/libCZI");
let libcziapi_inc = libczi_dir.join("Src/libCZIAPI/inc");
let libcziapi_src = libczi_dir.join("Src/libCZIAPI/src");
let libczi_h = libcziapi_inc.join("libCZIApi.h");
// let libcziapi_inc = libczi_dir.join("Src/libCZIAPI/inc");
// let libczi_src = libczi_dir.join("Src/libCZI");
// let libcziapi_src = libczi_dir.join("Src/libCZIAPI/src");
// let libczi_h = libcziapi_inc.join("libCZIApi.h");
let import_export = libczi_dir.join("Src/libCZIAPI/inc/importexport.h");
{
@@ -53,32 +53,32 @@ fn main() -> Result<()> {
.expect("Could not truncate");
};
let bindings = bindgen::Builder::default()
.clang_args([
"-x",
"c++",
"-std=c++14",
"-I",
libcziapi_inc
.to_str()
.ok_or(Error::msg("cannot into string"))?,
"-I",
libcziapi_src
.to_str()
.ok_or(Error::msg("cannot into string"))?,
"-I",
libczi_src
.to_str()
.ok_or(Error::msg("cannot into string"))?,
])
.header(libczi_h.to_str().ok_or(Error::msg("cannot into string"))?)
.generate()
.expect("Unable to generate bindings");
// let bindings = bindgen::Builder::default()
// .clang_args([
// "-x",
// "c++",
// "-std=c++14",
// "-I",
// libcziapi_inc
// .to_str()
// .ok_or(Error::msg("cannot into string"))?,
// "-I",
// libcziapi_src
// .to_str()
// .ok_or(Error::msg("cannot into string"))?,
// "-I",
// libczi_src
// .to_str()
// .ok_or(Error::msg("cannot into string"))?,
// ])
// .header(libczi_h.to_str().ok_or(Error::msg("cannot into string"))?)
// .generate()
// .expect("Unable to generate bindings");
//
// bindings
// .write_to_file(out_dir.join("lib_czi_api.rs"))
// .expect("Couldn't write bindings!");
bindings
.write_to_file(out_dir.join("lib_czi_api.rs"))
.expect("Couldn't write bindings!");
println!(
"cargo:rustc-link-search=native={}",
dst.join("build/Src/libCZIAPI").display()

1878
src/lib_czi_api.rs Normal file

File diff suppressed because it is too large Load Diff

View File

@@ -5,5 +5,6 @@
#![allow(dead_code)]
#![allow(rustdoc::broken_intra_doc_links)]
#![allow(rustdoc::invalid_html_tags)]
#![allow(clippy::missing_safety_doc)]
include!(concat!(env!("OUT_DIR"), "/lib_czi_api.rs"));
include!("lib_czi_api.rs");