# libuuid-shared 2.42.2 — SÓLO libuuid.so del tarball de util-linux, para la isla dinámica. # # evolution-data-server pide `uuid` como REQUERIDA (CMakeLists.txt:424) para generar los UID de # contactos y eventos. El util-linux canónico la provee, pero es `--disable-shared --enable-static` # y su libuuid.a no es PIC (verificado) ⇒ no entra en libedataserver.so. # # La variante NO reconstruye util-linux entero: --disable-all-programs apaga los ~100 binarios # (mount, fdisk, lsblk…) y --enable-libuuid deja exactamente una librería. Es deliberado que esta # receta sea angosta y no un "util-linux-shared": el canónico tiene un radio grande y una lista # larga de --without-* elegidos para el userland estático; duplicar todo eso para conseguir un .so # de 30 KB sería copiar una superficie que después hay que mantener en dos lugares. # # El sed de -mcpu=baseline se conserva del canónico: zig cc traduce ese flag a un `-mcpu=` VACÍO en # modo preprocesador (`-dM -E -`) y los generadores errnos.h/syscalls.h lo invocan así. name = "libuuid-shared" version = "2.42.2" license = "BSD-3-Clause" [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 \ --enable-shared --disable-static \ --disable-all-programs \ --enable-libuuid \ --disable-nls --disable-rpath \ --without-python --without-systemd --without-systemdsystemunitdir \ --without-udev --without-ncursesw --without-ncurses --without-tinfo \ --without-readline --without-libz --without-selinux --without-audit --without-econf ''' compile = ''' for f in tools/all_errnos tools/all_syscalls; do [ -f "$f" ] || continue sed -i 's#^"$@" -MD#a=(); for x in "$@"; do [ "$x" = "-mcpu=baseline" ] || a+=("$x"); done\n"${a[@]}" -MD#' "$f" done make -j"$(nproc)" ''' install = 'make DESTDIR=/out install' [deps] build = ["linux-headers", "make", "pkgconf"]