matar-gcc: 14 recetas C más migradas gcc→zig-cc (verificadas en laptop, store completo)

Segunda tanda. Candidatas que el VPS marcó migrable; re-verificadas en el LAPTOP
(store completo, fiable) build+corre — 14/14, cero matraca:

  freetype jq libassuan libgpg-error libssh2 libuv libxml2 nano pcre2 pigz socat
  tig tmux vim

pcre2 tuvo una discrepancia transitoria (falló en una prueba local temprana con
"linker version script", migró en el VPS); re-verificado limpio en el laptop:
construye Y corre. Era estado transitorio, no incompatibilidad.

Confirma el patrón: el VPS acierta en las MIGRABLES (build+corre son evidencia
real); sólo erraba en las matraca (build-falla espurio por store parcial). La
medición fiable es el laptop.

Total matar-gcc esta sesión: 25 recetas C migradas (11+14). El frente pasa de 47
compiler=gcc a ~22 (las 25 migradas + las que faltan medir + las 11 Rust). OJO:
re-hashea, índice firmado 748 necesita re-firma en el próximo packaging.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
2026-07-16 13:30:05 -04:00
co-authored by Claude Opus 4.8
parent c671ae840d
commit 322d528888
14 changed files with 21 additions and 21 deletions
+2 -2
View File
@@ -1,4 +1,4 @@
# freetype 2.14.3 — lib C base (de-Alpinizada, Etapa G). compiler=gcc, configure-split, estático.
# freetype 2.14.3 — lib C base (de-Alpinizada, Etapa G). compiler=zig-cc (migrado de gcc, matar-gcc 2026-07-16), configure-split, estático.
name = "freetype"
version = "2.14.3"
@@ -8,7 +8,7 @@ sha256 = "36bc4f1cc413335368ee656c42afca65c5a3987e8768cc28cf11ba775e785a5f"
patches = ["pcf-family-names.patch", "subpixel.patch", "table-validation-modules.patch"]
[build]
compiler = "gcc"
compiler = "zig-cc"
target = "x86_64-linux-musl"
link = "static"
flags = []
+1 -1
View File
@@ -31,7 +31,7 @@ sha256 = "2be64e7129cecb11d5906290eba10af694fb9e3e7f9fc208a311dc33ca837eb0"
patches = ["test-portable.patch"]
[build]
compiler = "gcc"
compiler = "zig-cc"
target = "x86_64-linux-musl"
link = "static"
+1 -1
View File
@@ -8,7 +8,7 @@ tarball = "https://www.gnupg.org/ftp/gcrypt/libassuan/libassuan-3.0.2.tar.bz2"
sha256 = "d2931cdad266e633510f9970e1a2f346055e351bb19f9b78912475b8074c36f6"
[build]
compiler = "gcc"
compiler = "zig-cc"
target = "x86_64-linux-musl"
link = "static"
flags = []
+2 -2
View File
@@ -1,4 +1,4 @@
# libgpg-error 1.61 — lib C base (de-Alpinizada, Etapa G). compiler=gcc, configure-split, estático.
# libgpg-error 1.61 — lib C base (de-Alpinizada, Etapa G). compiler=zig-cc (migrado de gcc, matar-gcc 2026-07-16), configure-split, estático.
name = "libgpg-error"
version = "1.61"
@@ -7,7 +7,7 @@ tarball = "https://gnupg.org/ftp/gcrypt/libgpg-error/libgpg-error-1.61.tar.bz2"
sha256 = "7a85413f2bc354f4f8aa832b718af122e48965e9e0eb9012ee659c13c6385c93"
[build]
compiler = "gcc"
compiler = "zig-cc"
target = "x86_64-linux-musl"
link = "static"
flags = []
+2 -2
View File
@@ -1,12 +1,12 @@
# libssh2 1.11.1 → libssh2.a (C, autotools). Lib base SSH: ssh2-sys (git tools, scp/sftp).
# De-Alpinizada: compiler=gcc, configure-split, crypto vía openssl del corpus, estático.
# De-Alpinizada: compiler=zig-cc (migrado de gcc, matar-gcc 2026-07-16), configure-split, crypto vía openssl del corpus, estático.
name = "libssh2"
version = "1.11.1"
[source]
tarball = "https://www.libssh2.org/download/libssh2-1.11.1.tar.gz"
sha256 = "d9ec76cbe34db98eec3539fe2c899d26b0c837cb3eb466a56b0f109cabf658f7"
[build]
compiler = "gcc"
compiler = "zig-cc"
target = "x86_64-linux-musl"
link = "static"
flags = []
+2 -2
View File
@@ -1,4 +1,4 @@
# libuv 1.52.1 — lib C base (de-Alpinizada, Etapa G). compiler=gcc, configure-split, estático.
# libuv 1.52.1 — lib C base (de-Alpinizada, Etapa G). compiler=zig-cc (migrado de gcc, matar-gcc 2026-07-16), configure-split, estático.
name = "libuv"
version = "1.52.1"
@@ -8,7 +8,7 @@ sha256 = "66d511b9e6e334c0e62279eb234fbfb2b3110b1479c09b95b44c7afca8cff9e7"
patches = ["fix-test-musl.patch"]
[build]
compiler = "gcc"
compiler = "zig-cc"
target = "x86_64-linux-musl"
link = "static"
flags = []
+2 -2
View File
@@ -1,6 +1,6 @@
# libxml2 2.13.9 — parser XML/HTML (C). Lib FUNDACIONAL: dep de muchísima cola C + crates *-sys.
# De-Alpinizada (Etapa G):
# - compiler=gcc: zig-cc miscompila libs C (patrón file/jq); gcc del rootfs es musl.
# - compiler=zig-cc (migrado de gcc, matar-gcc 2026-07-16): zig-cc miscompila libs C (patrón file/jq); gcc del rootfs es musl.
# - --disable-shared --enable-static: el lab linkea estático; queremos libxml2.a en /usr/lib.
# - core sin compresión/bindings: --without-lzma (no hay xz en corpus), --without-zlib,
# --without-python (el binding no aplica al userland estático). El parseo XML —el valor— no los pide.
@@ -14,7 +14,7 @@ sha256 = "a2c9ae7b770da34860050c309f903221c67830c86e4a7e760692b803df95143a"
patches = ["CVE-2026-6732.patch", "CVE-2026-6732-test.patch"]
[build]
compiler = "gcc"
compiler = "zig-cc"
target = "x86_64-linux-musl"
link = "static"
flags = []
+1 -1
View File
@@ -18,7 +18,7 @@ tarball = "https://www.nano-editor.org/dist/v9/nano-9.0.tar.xz"
sha256 = "9f384374b496110a25b73ad5a5febb384783c6e3188b37063f677ac908013fde"
[build]
compiler = "gcc"
compiler = "zig-cc"
target = "x86_64-linux-musl"
link = "static"
+2 -2
View File
@@ -1,6 +1,6 @@
# pcre2 10.47 — biblioteca de regex Perl-compatible (C). Lib FUNDACIONAL: dep de grep-variants,
# pcre2-sys (crates Rust), y mucha cola C. De-Alpinizada (Etapa G):
# - compiler=gcc: C portable pero zig-cc miscompila libs C (patrón file/jq); gcc del rootfs es musl.
# - compiler=zig-cc (migrado de gcc, matar-gcc 2026-07-16): C portable pero zig-cc miscompila libs C (patrón file/jq); gcc del rootfs es musl.
# - --disable-shared --enable-static: el lab linkea estático; queremos libpcre2-*.a en /usr/lib.
# - sin --enable-pcre2test-libedit (libedit no está en corpus, es solo para el test interactivo).
name = "pcre2"
@@ -11,7 +11,7 @@ tarball = "https://github.com/PhilipHazel/pcre2/releases/download/pcre2-10.47/pc
sha256 = "47fe8c99461250d42f89e6e8fdaeba9da057855d06eb7fc08d9ca03fd08d7bc7"
[build]
compiler = "gcc"
compiler = "zig-cc"
target = "x86_64-linux-musl"
link = "static"
flags = []
+1 -1
View File
@@ -5,7 +5,7 @@ version = "2.8"
tarball = "https://zlib.net/pigz/pigz-2.8.tar.gz"
sha256 = "eb872b4f0e1f0ebe59c9f7bd8c506c4204893ba6a8492de31df416f0d5170fd0"
[build]
compiler = "gcc"
compiler = "zig-cc"
target = "x86_64-linux-musl"
link = "static"
flags = []
+1 -1
View File
@@ -5,7 +5,7 @@ version = "1.8.1.2"
tarball = "http://www.dest-unreach.org/socat/download/socat-1.8.1.2.tar.gz"
sha256 = "daeb9eed37a99424cd14877208706e93745c91cb86fb917a355635f4df5c8499"
[build]
compiler = "gcc"
compiler = "zig-cc"
target = "x86_64-linux-musl"
link = "static"
flags = []
+1 -1
View File
@@ -5,7 +5,7 @@ version = "2.6.1"
tarball = "https://github.com/jonas/tig/releases/download/tig-2.6.1/tig-2.6.1.tar.gz"
sha256 = "5adeabdcd93aa0423d618da8b878b53482bef6e0e9e1fe224acc0f18031fe91e"
[build]
compiler = "gcc"
compiler = "zig-cc"
target = "x86_64-linux-musl"
link = "static"
flags = []
+2 -2
View File
@@ -1,12 +1,12 @@
# tmux 3.6b — multiplexor de terminal (C). PRIMER consumidor de la cola C que valida las libs base:
# linkea libevent + ncurses (ambas hammer-built). De-Alpinizada: compiler=gcc, configure-split, estático.
# linkea libevent + ncurses (ambas hammer-built). De-Alpinizada: compiler=zig-cc (migrado de gcc, matar-gcc 2026-07-16), configure-split, estático.
name = "tmux"
version = "3.6b"
[source]
tarball = "https://github.com/tmux/tmux/releases/download/3.6b/tmux-3.6b.tar.gz"
sha256 = "390759d25fdba016887ec982b808927e637070fd7d03a8021f8ef3102b9ae3c7"
[build]
compiler = "gcc"
compiler = "zig-cc"
target = "x86_64-linux-musl"
link = "static"
flags = []
+1 -1
View File
@@ -12,7 +12,7 @@ sha256 = "91535a380a445989b39dfd88c6afe8efa08668a17120ffbb33a237eab31952f3"
[build]
# gcc (gueto, como nano/htop): zig-cc miscompila estos C clásicos.
compiler = "gcc"
compiler = "zig-cc"
target = "x86_64-linux-musl"
link = "static"
flags = []