# libxml2-shared 2.13.9 — variante DINÁMICA de libxml2 para la isla dinámica de GNOME.
#
# Por qué existe, y por qué NO existía hasta ahora: en libical la libxml2 sólo la enlazaba un
# ejecutable de build (ical-glib-src-generator), así que la .a canónica alcanzó. En
# evolution-data-server NO: libxml-2.0 es dep REQUERIDA de libedataserver, libebackend, libebook y
# libecal (CMakeLists.txt:932,936,937,938), o sea que entra dentro de .so reales. La libxml2.a
# canónica no es PIC (verificado: reubicaciones R_X86_64_32) ⇒ mismo muro que sqlite y freetype.
#
# Mismo tarball, misma versión y MISMOS patches de CVE que la canónica: no se abre skew entre el
# mundo estático y el dinámico, y la superficie de seguridad es idéntica. Los .patch están copiados
# a esta cola porque se resuelven contra el base_dir de la receta, no contra recipes/.
#
# Se mantienen --without-{python,lzma,zlib} de la canónica: eds parsea XML, no comprime.
name    = "libxml2-shared"
version = "2.13.9"

[source]
tarball = "https://download.gnome.org/sources/libxml2/2.13/libxml2-2.13.9.tar.xz"
sha256  = "a2c9ae7b770da34860050c309f903221c67830c86e4a7e760692b803df95143a"
patches = ["CVE-2026-6732.patch", "CVE-2026-6732-test.patch"]

[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 \
	--without-python --without-lzma --without-zlib \
	--with-legacy
'''
compile = 'make -j"$(nproc)"'
install = 'make DESTDIR=/out install'

[deps]
build = ["make", "pkgconf"]
