char/char-rtc-obs
git clone https://git.t4t.associates/char/char-rtc-obs
eeaf4aa
main
1use std::{ env, path:: PathBuf }; 2 3fn main () { 4let crate_dir = env:: var ( "CARGO_MANIFEST_DIR" ). unwrap (); 5let bindings_dir = env:: var ( "CHAR_RTC_GENERATED_DIR" ). ok (); 6let version = env:: var ( "CHAR_RTC_OBS_VERSION" ). unwrap_or_else ( |_|"0.0.0" . into ()); 7 8// Make libobs version available 9println! ( "cargo:rustc-env=OBS_VERSION={version}" ); 10 11let config = cbindgen:: Config { 12language : cbindgen:: Language :: C , 13 ..Default :: default () 14}; 15 16match cbindgen:: generate_with_config ( crate_dir, config) { 17Ok ( bindings) =>{ 18if let Some ( bindings_dir) = bindings_dir{ 19let bindings_dir: PathBuf = bindings_dir. into (); 20 bindings. write_to_file ( bindings_dir. join ( "bindings.h" )); 21} 22} 23Err ( cbindgen:: Error :: ParseSyntaxError { ..}) =>(), // ignore in favor of cargo's syntax check 24Err ( err) =>panic! ( "{:?}" , err), 25}; 26}