# cbindgen — genera headers C/C++ desde código Rust. Herramienta de BUILD de mozjs (el build de
# SpiderMonkey invoca cbindgen para los bindings de sus crates Rust). Binario Rust; el lab lo detecta
# como BuildSys::Cargo (hay Cargo.toml + Cargo.lock en el tarball de GitHub) y hace `cargo vendor` en el
# fetch + `cargo build --release --locked --offline` en el sandbox. Sin sys-crates C ⇒ no necesita el
# wrapper de AR (ver cargo-recipe-ar-wrapper). Firefox 128 pide cbindgen >= 0.26; 0.27 cumple.
name    = "cbindgen"
version = "0.27.0"
license = "MPL-2.0"

[source]
tarball          = "https://github.com/mozilla/cbindgen/archive/refs/tags/0.27.0.tar.gz"
sha256           = "dd813d37325d21cd6be807be4f902a5ef130567cb4da17ea743206a3ebeb6303"
strip_components = 1

[build]
compiler = "gcc"        # convención de las CLIs Rust: gcc = toolchain del link zig-cc
target   = "x86_64-linux-musl"
link     = "static"
# cbindgen expone lib + bin homónimos ⇒ `cargo rustc -- <crt-static/reloc>` es ambiguo ("extra
# arguments to rustc can only be passed to one target"). --bin cbindgen fija el target del bin final.
flags    = ["--bin", "cbindgen"]

[deps]
build = []
