| [package] |
| authors = [ |
| "Jyun-Yan You <jyyou.tw@gmail.com>", |
| "Emilio Cobos Álvarez <emilio@crisal.io>", |
| "Nick Fitzgerald <fitzgen@gmail.com>", |
| "The Servo project developers", |
| ] |
| description = "Automatically generates Rust FFI bindings to C and C++ libraries." |
| keywords = ["bindings", "ffi", "code-generation"] |
| categories = ["external-ffi-bindings", "development-tools::ffi"] |
| license = "BSD-3-Clause" |
| name = "bindgen" |
| readme = "../README.md" |
| repository = "https://github.com/rust-lang/rust-bindgen" |
| documentation = "https://docs.rs/bindgen" |
| homepage = "https://rust-lang.github.io/rust-bindgen/" |
| version = "0.69.3" |
| edition = "2018" |
| build = "build.rs" |
| # If you change this, also update README.md and msrv in .github/workflows/bindgen.yml |
| rust-version = "1.60.0" |
| |
| [lib] |
| name = "bindgen" |
| path = "lib.rs" |
| |
| [dependencies] |
| annotate-snippets = { version = "0.9.1", features = ["color"], optional = true } |
| bitflags = "2.2.1" |
| cexpr = "0.6" |
| clang-sys = { version = "1", features = ["clang_6_0"] } |
| itertools = { version = "0.12.0", default-features = false } |
| lazy_static = "1" |
| lazycell = "1" |
| log = { version = "0.4", optional = true } |
| prettyplease = { version = "0.2.7", optional = true, features = ["verbatim"] } |
| proc-macro2 = { version = "1", default-features = false } |
| quote = { version = "1", default-features = false } |
| regex = { version = "1.5.1", default-features = false, features = ["std", "unicode-perl"] } |
| rustc-hash = "1.0.1" |
| shlex = "1" |
| syn = { version = "2.0", features = ["full", "extra-traits", "visit-mut"] } |
| which = { version = "4.2.1", optional = true, default-features = false } |
| |
| [features] |
| default = ["logging", "prettyplease", "runtime", "which-rustfmt"] |
| logging = ["dep:log"] |
| static = ["clang-sys/static"] |
| runtime = ["clang-sys/runtime"] |
| # Dynamically discover a `rustfmt` binary using the `which` crate |
| which-rustfmt = ["dep:which"] |
| experimental = ["dep:annotate-snippets"] |
| |
| ## The following features are for internal use and they shouldn't be used if |
| ## you're not hacking on bindgen |
| # Features used by `bindgen-cli` |
| __cli = [] |
| # Features used for CI testing |
| __testing_only_extra_assertions = [] |
| __testing_only_libclang_9 = [] |
| __testing_only_libclang_16 = [] |
| |
| [package.metadata.docs.rs] |
| features = ["experimental"] |
| |
| [package.metadata.release] |
| release = true |
| pre-release-hook = ["../node_modules/doctoc/doctoc.js", "../CHANGELOG.md"] |
| |
| # Add version and date to changelog file |
| [[package.metadata.release.pre-release-replacements]] |
| file = "../CHANGELOG.md" |
| search = "# Unreleased" |
| replace = "# Unreleased\n## Added\n## Changed\n## Removed\n## Fixed\n## Security\n\n# {{version}} ({{date}})" |