# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO
#
# When uploading crates to the registry Cargo will automatically
# "normalize" Cargo.toml files for maximal compatibility
# with all versions of Cargo and also rewrite `path` dependencies
# to registry (e.g., crates.io) dependencies.
#
# If you are reading this file be aware that the original Cargo.toml
# will likely look very different (and much more reasonable).
# See Cargo.toml.orig for the original contents.

[package]
edition = "2018"
name = "cbindgen"
version = "0.24.5"
authors = [
    "Emilio Cobos Álvarez <emilio@crisal.io>",
    "Jeff Muizelaar <jmuizelaar@mozilla.com>",
    "Kartikaya Gupta <kats@mozilla.com>",
    "Ryan Hunt <rhunt@eqrion.net>",
]
exclude = ["tests/profile.rs"]
description = "A tool for generating C bindings to Rust code."
readme = "README.md"
keywords = [
    "bindings",
    "ffi",
    "code-generation",
]
categories = [
    "external-ffi-bindings",
    "development-tools::ffi",
]
license = "MPL-2.0"
repository = "https://github.com/eqrion/cbindgen"

[lib]
name = "cbindgen"
path = "src/lib.rs"

[[bin]]
name = "cbindgen"
path = "src/main.rs"
doc = false
required-features = ["clap"]

[dependencies.clap]
version = "3.1"
optional = true

[dependencies.heck]
version = "0.4"

[dependencies.indexmap]
version = "1"

[dependencies.log]
version = "0.4"

[dependencies.proc-macro2]
version = "1"

[dependencies.quote]
version = "1"

[dependencies.serde]
version = "1.0.103"
features = ["derive"]
default-features = false

[dependencies.serde_json]
version = "1.0"

[dependencies.syn]
version = "1.0.88"
features = [
    "clone-impls",
    "extra-traits",
    "full",
    "parsing",
    "printing",
]
default-features = false

[dependencies.tempfile]
version = "3"

[dependencies.toml]
version = "0.5"

[dev-dependencies.serial_test]
version = "0.5.0"

[features]
default = ["clap"]
