harkaq: el clasificador distingue gcc-compilador de gcc-sonda — matar-gcc son 47 recetas
El límite del modelo que mtdev destapó, cerrado. harkaq clasificaba /usr/bin/gcc
como "sonda esperada" SIEMPRE, así que marcaba `Hermetico` a las recetas que
compilan CON el gcc de Alpine (compiler=gcc = CC=gcc, musl+GNU ld). Estuvo ciego
a la deuda de compilador todo el barrido.
Fix en harkaq-suggest: 5º arg = la receta medida. Si usa compiler=gcc, los
frontends de gcc (gcc/cpp/c89/c99/g++/cc/ld/as) dejan de ser "esperada" y pasan a
DEUDA DE COMPILADOR (matar-gcc). Para compiler=zig-cc (default, 714 recetas) gcc
sigue siendo sonda de configure — esperada, como antes. Verificado: mtdev(gcc) →
deuda de compilador; zlib(zig) → sin deuda.
EL HALLAZGO: matar-gcc no es "{kernel, cmake}" como creía la memoria del proyecto.
Son 47 recetas (36 C puro + 11 Rust con sys-crate C) que dependen del gcc de
Alpine. harkaq lo reveló sólo cuando aprendió a leer el compiler= de la receta —
antes gcc-como-sonda-esperada ocultaba una deuda mayor que toda la que sí detectó.
Reporte: tandas/needs-review-harkaq/deuda-compilador-matar-gcc.md.
Cada una usa gcc porque zig-cc la miscompila (documentado en su receta). Acción
por receta: migrar a zig cuando zig mejore, o aceptar el escape como deuda
conocida. Ahora es una deuda NOMBRADA y contada, no invisible.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,60 @@
|
||||
# Deuda de compilador (matar-gcc) — las recetas que compilan con el gcc de Alpine
|
||||
|
||||
harkaq clasificaba `/usr/bin/gcc` como sonda esperada SIEMPRE, así que marcaba estas recetas
|
||||
`Hermetico` — ciego a que dependen del gcc de Alpine (`compiler=gcc` = CC=gcc de Alpine, musl+GNU
|
||||
ld). El arreglo (harkaq-suggest, 2026-07-16): para `compiler=gcc` los frontends de gcc son DEUDA
|
||||
DE COMPILADOR, no sonda. Esto redimensiona matar-gcc de "{kernel, cmake}" a **47 recetas**.
|
||||
|
||||
Cada una compila con gcc porque zig-cc la miscompila/no la soporta (documentado en su receta).
|
||||
**Acción por receta:** migrar a zig-cc cuando zig mejore, o aceptar el escape como deuda conocida.
|
||||
|
||||
## C puro (36) — candidatas a zig cuando zig mejore
|
||||
- bzip2
|
||||
- expat
|
||||
- curl
|
||||
- file
|
||||
- freetype
|
||||
- gzip
|
||||
- htop
|
||||
- json-c
|
||||
- jq
|
||||
- less
|
||||
- libevent
|
||||
- libgcrypt
|
||||
- libgpg-error
|
||||
- libssh2
|
||||
- libffi
|
||||
- libassuan
|
||||
- libxml2
|
||||
- libevdev
|
||||
- linux-pam
|
||||
- libpng
|
||||
- libsodium
|
||||
- libyaml
|
||||
- libuv
|
||||
- mtdev
|
||||
- nano
|
||||
- pigz
|
||||
- pcre2
|
||||
- procps-ng
|
||||
- socat
|
||||
- tig
|
||||
- tmux
|
||||
- vim
|
||||
- wget
|
||||
- xplr
|
||||
- xz
|
||||
- zstd
|
||||
|
||||
## Rust con sys-crate C (11) — gcc para el C embebido (libgit2-sys, etc)
|
||||
- broot
|
||||
- cargo-audit
|
||||
- cargo-cache
|
||||
- delta
|
||||
- gitui
|
||||
- git-absorb
|
||||
- helix
|
||||
- hurl
|
||||
- ouch
|
||||
- yazi
|
||||
- zellij
|
||||
Reference in New Issue
Block a user