appstream: falta xz en [deps] — liblzma entra por el .pc Requires de libxmlb
libxmlb.pc → Requires: gio-2.0 >= 2.45.8, liblzma, libzstd
appstream declaraba libxmlb y zstd pero NO xz, así que el link moría con
`unable to find static system library 'lzma'`. Patrón `.pc Requires`→[deps].
Se veía primero en los binarios de tests/ (as-test_xml, as-test_validate…) y
appstream 1.0.5 NO tiene opción `tests` en meson_options.txt. Sedear
`subdir('tests')` —como ya hace la receta con docs/— habría tapado el síntoma
y dejado el fallo para los 4 dependientes, que enlazan appstream estática y
necesitan la liblzma igual.
Verificado: sella en 23 s, 0 errores de lzma, artefacto de 18 M / 97 ficheros.
Blast radius nulo: en deuda en los cinco grafos con 0 dependientes sellados.
El dependiente adwaita-hello pasa de fallar en 23 s a 3m33s y ahora muere en
gtk4 (libgtk-4.so contra libtiff/libfreetype/libfontconfig/libjpeg/libpng16
no-PIC), que es una decisión de arquitectura aparte y sigue abierta.
This commit is contained in:
@@ -30,6 +30,13 @@ configure = "sed -i \"\\#subdir('docs/')#d\" meson.build && PKG_CONFIG_PATH=/usr
|
||||
compile = "PYTHONPATH=/usr/lib/python3.12/site-packages ninja -C output"
|
||||
install = "PYTHONPATH=/usr/lib/python3.12/site-packages DESTDIR=/out meson install -C output --no-rebuild"
|
||||
|
||||
# ⚠ `xz` (liblzma) está acá por el `.pc Requires` de libxmlb, no porque appstream la nombre:
|
||||
# libxmlb.pc → Requires: gio-2.0 >= 2.45.8, liblzma, libzstd
|
||||
# Sin ella el link muere con `unable to find static system library 'lzma'`. Se ve PRIMERO en los
|
||||
# binarios de `tests/` (as-test_xml, as-test_validate…) porque son lo último que enlaza ninguna
|
||||
# opción puede saltarse: appstream 1.0.5 NO tiene opción `tests` en meson_options.txt. Arreglarlo
|
||||
# sedeando `subdir('tests')` habría tapado el síntoma y dejado el fallo para los 4 dependientes,
|
||||
# que enlazan appstream estática y necesitan igual la liblzma. Es el patrón `.pc Requires`→`[deps]`.
|
||||
[deps]
|
||||
# `binutils` por `strip_debug = true`: el paso de strip del lab usa su `strip --strip-debug`.
|
||||
build = ["binutils", "meson", "samurai", "python3", "pkgconf", "gperf", "gettext-tiny", "itstool", "glib", "libxml2", "libyaml", "curl", "openssl", "libxmlb", "zstd", "pcre2", "libffi", "zlib"]
|
||||
build = ["binutils", "meson", "samurai", "python3", "pkgconf", "gperf", "gettext-tiny", "itstool", "glib", "libxml2", "libyaml", "curl", "openssl", "libxmlb", "xz", "zstd", "pcre2", "libffi", "zlib"]
|
||||
|
||||
Reference in New Issue
Block a user