Files
takana/recipes/cbindgen.toml
T
Sergio fee383ff64 cbindgen 0.27.0 → 0.29.4 — el configure de Firefox 154 exige >= 0.29.4
«cbindgen version 0.27.0 is too old. At least version 0.29.4 is required.»
Subir es gratis: yupana radio cbindgen = 0, ninguna receta la declara todavía —
es herramienta de la plataforma Gecko y nada más.

De paso pasa de tarball /archive/refs/tags/ a commit pineado. Esos tarballs los
genera la forja al vuelo y su sha256 cambia cuando el servidor actualiza git/gzip
(ADR 0006); ya que había que tocar la fuente, se deja anclada. El tag 0.29.4 es
LIGERO —una sola ref en ls-remote, sin ^{}— así que el sha ES el commit.
2026-09-04 22:07:39 +00:00

39 lines
2.3 KiB
TOML

# ══ SUBIÓ AL CORPUS (2026-09-04) — PLATAFORMA GECKO ════════════════════════════════════════════
# El build de Firefox la exige: genera las cabeceras C++ de los componentes escritos en Rust
# (Stylo, WebRender). Firefox, Waterfox y Zen la comparten igual que todo lo demás de la plataforma,
# y desde el corpus no se alcanza una cola hermana.
#
# Mudanza GRATIS y medida antes: `[deps].build` está VACÍO, así que no hay cierre que cambiar, y
# `hammer hash` dio el MISMO ArtifactHash (b3:bd2e6ca6) en las dos rutas. `yupana radio` = 0: nadie
# la declaraba todavía, ni siquiera en la cola donde vivía.
#
# 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"
# 0.27.0 → 0.29.4 (2026-09-04): el configure de Firefox 154 corta con «cbindgen version 0.27.0 is
# too old. At least version 0.29.4 is required.». Subir es GRATIS: `yupana radio cbindgen` = 0, o sea
# que ninguna receta la declara todavía — es herramienta de la plataforma Gecko y nada más.
version = "0.29.4"
license = "MPL-2.0"
[source]
# Por COMMIT y no por `/archive/refs/tags/…`, que es lo que tenía: esos tarballs los genera la forja
# al vuelo y su sha256 cambia cuando el servidor actualiza git/gzip (ADR 0006). El tag `0.29.4` es
# LIGERO —una sola ref en `ls-remote`, sin `^{}`— ⇒ este sha ES el commit.
repo = "https://github.com/mozilla/cbindgen.git"
commit = "b826cb8911488fe8a209d2b693492c0c673e8cca"
[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 = []