symcrypt_sys/
lib.rs

1#![doc = include_str!("../README.md")]
2#![allow(non_upper_case_globals)]
3#![allow(non_camel_case_types)]
4#![allow(non_snake_case)]
5#![allow(clippy::all)]
6
7extern crate libc;
8
9// Include bindings depending on which OS and architecture we are compiling for.
10// Current supported are:
11
12// Windows:
13// windows amd64 x86_64-pc-windows-msvc
14// windows arm64 aarch64-pc-windows-msvc
15
16// Linux:
17// linux amd64 x86_64-unknown-linux-gnu
18// linux arm64 aarch64-unknown-linux-gnu
19
20// Windows:
21#[cfg(all(target_os = "windows", target_arch = "x86_64"))]
22include!(concat!(
23    env!("CARGO_MANIFEST_DIR"),
24    "/bindings/windows_amd64_symcrypt_bindings.rs"
25));
26
27#[cfg(all(target_os = "windows", target_arch = "aarch64"))]
28include!(concat!(
29    env!("CARGO_MANIFEST_DIR"),
30    "/bindings/windows_arm64_symcrypt_bindings.rs"
31));
32
33// Linux:
34#[cfg(all(target_os = "linux", target_arch = "x86_64"))]
35include!(concat!(
36    env!("CARGO_MANIFEST_DIR"),
37    "/bindings/linux_amd64_symcrypt_bindings.rs"
38));
39
40#[cfg(all(target_os = "linux", target_arch = "aarch64"))]
41include!(concat!(
42    env!("CARGO_MANIFEST_DIR"),
43    "/bindings/linux_arm64_symcrypt_bindings.rs"
44));