boxdd-sys 0.6.0

Low-level FFI bindings for Box2D built from upstream via submodule
Documentation
[package]
name = "boxdd-sys"
version.workspace = true
edition.workspace = true
rust-version.workspace = true
description = "Low-level FFI bindings for Box2D built from upstream via submodule"
license.workspace = true
repository.workspace = true
homepage.workspace = true
links = "box2d"
build = "build.rs"
readme = "README.md"
documentation = "https://docs.rs/boxdd-sys"
keywords = ["box2d", "physics", "ffi", "bindings", "game"]
categories = ["external-ffi-bindings", "game-engines"]

# Keep the crate slim on crates.io
include = [
    "LICENSE-APACHE",
    "LICENSE-MIT",
    "Cargo.toml",
    "README.md",
    "build.rs",
    "effective-source.toml",
    "upstream.toml",
    "patches/**",
    "abi/**",
    "native/**",
    "security/sigstore/trusted_root.json",
    "src/**",
    # Only headers from upstream include/
    "third-party/box2d/include/**/*.h",
    # C sources and local headers from upstream src/
    "third-party/box2d/src/**/*.c",
    "third-party/box2d/src/**/*.h",
    "third-party/box2d/src/**/*.inl",
    # Upstream license file (Box2D is MIT-licensed)
    "third-party/box2d/LICENSE",
]

[package.metadata.docs.rs]
all-features = false
no-default-features = true
features = []
rustdoc-args = ["--cfg", "docsrs"]

[features]
default = ["build-from-source"]
# Build the pinned vendored Box2D C sources with cc.
build-from-source = []
# Enable bindgen-based regeneration of bindings (requires libclang).
bindgen = ["dep:bindgen"]
# Build Box2D with double-precision world coordinates.
double-precision = []
## Optional performance/debug features (match upstream options)
# Enable AVX2 SIMD optimizations (x86_64 only); ignored if `disable-simd` is also set.
simd-avx2 = []
# Disable all SIMD; takes precedence over `simd-avx2`.
disable-simd = []
# Enable heavy internal validation (assertions and checks)
validate = []

[build-dependencies]
cc = { workspace = true }
bindgen = { workspace = true, optional = true }
toml = { workspace = true }
sha2 = { workspace = true }
diffy = { workspace = true }
object = { workspace = true }
tempfile = { workspace = true }

[dev-dependencies]
tempfile = { workspace = true }
toml = { workspace = true }
sha2 = { workspace = true }
diffy = { workspace = true }
object = { workspace = true, features = ["write"] }