Mesa necesita el codegen Python `mako` (dispatch GL/GLES, formatos) y éste importa `markupsafe` a nivel de módulo. Ambos como módulos Python puros (igual que meson): se copia el paquete a site-packages de python3.12, sin pip/wheel. markupsafe cae a su backend `_native` (sin compilar la extensión C `_speedups`). Verificado import + render de Template. PIC en libs base C (zlib, zstd, expat; libffi ya en el commit anterior): el .a estático lleva objetos PIC para poder enlazarse DENTRO de bibliotecas compartidas — Mesa liga libz/libzstd/libexpat/libffi en sus .so y sin PIC falla con «R_X86_64_PC32 ... recompile with -fPIC». PIC es superset (sigue sirviendo para enlace estático de exes/toolchain); la invalidación de caché de los dependientes es perezosa y produce artefactos equivalentes. Mismo patrón aplicado y verificado con libffi→wayland. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
22 lines
913 B
TOML
22 lines
913 B
TOML
# expat 2.8.1 — parser XML stream (C). Lib base: dep de cola C (fontconfig, dbus, etc.) y crates -sys.
|
|
# De-Alpinizada (Etapa G): compiler=gcc, configure-split explícito, estático. Sin deps externas.
|
|
name = "expat"
|
|
version = "2.8.1"
|
|
|
|
[source]
|
|
tarball = "https://github.com/libexpat/libexpat/releases/download/R_2_8_1/expat-2.8.1.tar.xz"
|
|
sha256 = "10b195ee78160a908388180a8fe3603d4e9a12f4755fbf5f3816b23a9d750da0"
|
|
|
|
[build]
|
|
compiler = "gcc"
|
|
target = "x86_64-linux-musl"
|
|
link = "static"
|
|
flags = []
|
|
|
|
[build.phases]
|
|
# --with-pic: el .a estático lleva objetos PIC ⇒ enlazable dentro de .so (Mesa liga libexpat en
|
|
# libgallium/xmlconfig; sin PIC: «R_X86_64_PC32 ... recompile with -fPIC»). PIC es superset.
|
|
configure = './configure --build=$CBUILD --host=$CHOST --prefix=/usr --disable-shared --enable-static --with-pic --without-docbook'
|
|
compile = 'make'
|
|
install = 'make DESTDIR=/out install'
|