tawasuyu

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 1411Shell 141Markdown 84Rust 832898 Definitions

kde/Capa0: util-linux shared variant (override incoming-kde) para libblkid

kcoreaddons falla 'blkid_* undefined': linkea libmount pero la util-linux canónica
es --disable-shared (el .a no arrastra libblkid). Variante --enable-shared produce
libmount.so→libblkid.so.1 (NEEDED) ⇒ resuelve solo. incoming-kde/ overridea a
recipes/ para builds KDE; base-system mantiene la static.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>

12097e6a14ff00dbbc1c866464b119f589927154 · by sergio · (3 months ago) · parent 67390cddf · browse the tree at this commit

Semantic delta

No definition changed: this change is text, documentation or data.

1 files · +64 −0

diff --git a/recipes/incoming-kde/util-linux.toml b/recipes/incoming-kde/util-linux.toml
new file mode 100644
index 00000000..4a4b2291
--- /dev/null
+++ b/recipes/incoming-kde/util-linux.toml
@@ -0,0 +1,64 @@
+# util-linux 2.42.2 — VARIANTE SHARED para KDE (override de la canónica static-only en incoming-kde).
+# Campaña KDE (ADR 0011), saldo de deuda Capa 0. kcoreaddons (y KF6) linkean libmount, que necesita
+# libblkid; con la util-linux canónica (--disable-shared) el link dinámico deja `blkid_* undefined`
+# (el .a no arrastra su transitiva). Aquí --enable-shared produce libmount.so/libblkid.so/libuuid.so
+# con SONAME + NEEDED correctos (libmount.so → libblkid.so.1) ⇒ linkear -lmount resuelve blkid solo.
+# El resolver de deps mira incoming-kde/ antes que recipes/ ⇒ los builds KDE toman ESTA; el base-system
+# sigue con la canónica static. Conserva el hack del filtro -mcpu=baseline de los generadores.
+name    = "util-linux"
+version = "2.42.2"
+
+[source]
+tarball = "https://www.kernel.org/pub/linux/utils/util-linux/v2.42/util-linux-2.42.2.tar.xz"
+sha256  = "03a05d3adf9602ef128f2da05b84b3205ce60c351e5737c0370f74000679ce8a"
+
+[build]
+compiler = "zig-cc"
+target   = "x86_64-linux-musl"
+link     = "dynamic"
+flags    = []
+
+[build.phases]
+configure = '''
+./configure \
+	--build=$CBUILD \
+	--host=$CHOST \
+	--prefix=/usr \
+	--localstatedir=/var \
+	--sysconfdir=/etc \
+	--enable-shared \
+	--disable-static \
+	--disable-nls \
+	--disable-rpath \
+	--disable-liblastlog2 \
+	--disable-pylibmount \
+	--disable-makeinstall-setuid \
+	--disable-makeinstall-chown \
+	--without-python \
+	--without-systemd \
+	--without-systemdsystemunitdir \
+	--without-udev \
+	--without-cryptsetup \
+	--without-ncursesw \
+	--without-ncurses \
+	--without-tinfo \
+	--without-readline \
+	--without-libz \
+	--without-selinux \
+	--without-audit \
+	--without-econf
+'''
+compile = '''
+# ver receta canónica: filtrar -mcpu=baseline sólo en los generadores errnos/syscalls (zig rechaza
+# el -mcpu vacío en modo -dM -E -). El resto del build lo conserva.
+for f in tools/all_errnos tools/all_syscalls; do
+	sed -i 's#^"$@" -MD#a=(); for x in "$@"; do [ "$x" = "-mcpu=baseline" ] || a+=("$x"); done\n"${a[@]}" -MD#' "$f"
+done
+make
+'''
+install = '''
+make DESTDIR="/out" install
+'''
+
+[deps]
+build = ["linux-headers"]