blob: 18f43c043189240d3e06068aaf7b819dbfc64888 [file] [log] [blame]
[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.1"
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"] }
lazy_static = "1"
lazycell = "1"
log = { version = "0.4", optional = true }
peeking_take_while = "0.1.2"
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", default-features = false, features = ["std", "unicode"] }
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_5 = []
[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}})"