gioser

sergio/takana

> Una distribución Linux construida con un laboratorio funcional y hermético en el > sótano, y una terminal mutable, clásica y anárquica en el piso de arriba — diseñada > desde el suelo para que una IA programadora entienda, modifique y co…

TOML 1389Shell 137Markdown 80Rust 802602 Definiciones

⎇ 7c794568a963b18b68d747959e6bbd07cf2ebff7 recipes/cbindgen.toml TOML · 38 líneas · 2.3 KB Historia crudo

takana etapa 5a: los comentarios de las 741 recetas e852f4849 · Sergio ·

1# ══ SUBIÓ AL CORPUS (2026-09-04) — PLATAFORMA GECKO ════════════════════════════════════════════
2# El build de Firefox la exige: genera las cabeceras C++ de los componentes escritos en Rust
3# (Stylo, WebRender). Firefox, Waterfox y Zen la comparten igual que todo lo demás de la plataforma,
4# y desde el corpus no se alcanza una cola hermana.
5#
6# Mudanza GRATIS y medida antes: `[deps].build` está VACÍO, así que no hay cierre que cambiar, y
7# `takana hash` dio el MISMO ArtifactHash (b3:bd2e6ca6) en las dos rutas. `yupana radio` = 0: nadie
8# la declaraba todavía, ni siquiera en la cola donde vivía.
9#
10# cbindgen — genera headers C/C++ desde código Rust. Herramienta de BUILD de mozjs (el build de
11# SpiderMonkey invoca cbindgen para los bindings de sus crates Rust). Binario Rust; el lab lo detecta
12# como BuildSys::Cargo (hay Cargo.toml + Cargo.lock en el tarball de GitHub) y hace `cargo vendor` en el
13# fetch + `cargo build --release --locked --offline` en el sandbox. Sin sys-crates C ⇒ no necesita el
14# wrapper de AR (ver cargo-recipe-ar-wrapper). Firefox 128 pide cbindgen >= 0.26; 0.27 cumple.
15name    = "cbindgen"
16# 0.27.0 → 0.29.4 (2026-09-04): el configure de Firefox 154 corta con «cbindgen version 0.27.0 is
17# too old. At least version 0.29.4 is required.». Subir es GRATIS: `yupana radio cbindgen` = 0, o sea
18# que ninguna receta la declara todavía — es herramienta de la plataforma Gecko y nada más.
19version = "0.29.4"
20license = "MPL-2.0"
21
22[source]
23# Por COMMIT y no por `/archive/refs/tags/…`, que es lo que tenía: esos tarballs los genera la forja
24# al vuelo y su sha256 cambia cuando el servidor actualiza git/gzip (ADR 0006). El tag `0.29.4` es
25# LIGERO —una sola ref en `ls-remote`, sin `^{}`— ⇒ este sha ES el commit.
26repo   = "https://github.com/mozilla/cbindgen.git"
27commit = "b826cb8911488fe8a209d2b693492c0c673e8cca"
28
29[build]
30compiler = "gcc"        # convención de las CLIs Rust: gcc = toolchain del link zig-cc
31target   = "x86_64-linux-musl"
32link     = "static"
33# cbindgen expone lib + bin homónimos ⇒ `cargo rustc -- <crt-static/reloc>` es ambiguo ("extra
34# arguments to rustc can only be passed to one target"). --bin cbindgen fija el target del bin final.
35flags    = ["--bin", "cbindgen"]
36
37[deps]
38build = []