Files
takana/recipes/libunibreak.toml
Sergio bb3fdc2ca0 libass 0.17.5 + libunibreak 6.1: el renderizador de subtítulos que mpv exige sin opción
`meson.build:32` de mpv pide libass sin `required:` ⇒ no hay build de mpv sin esto.

libunibreak es "opcional" para upstream (`default=check`) y obligatorio acá: sin él libass parte
los renglones por espacios, que es justo lo que no sirve en japonés, chino o tailandés. Cuesta una
receta leaf de C plano.

`--enable-asm`: 234 símbolos SSE2/AVX2 en la `.a` sellada. Es la razón por la que `nasm` subió al
corpus en el commit anterior.

La lección de las deps, para la próxima receta que resuelva `.pc`: más de la mitad de `[deps]` no
aparece en el `./configure`. La harfbuzz del corpus va `-Dglib=enabled` (por GTK4) ⇒ su `.pc` pide
`glib-2.0`, que arrastra pcre2 y libffi. Y el fallo NO dice que falte glib: dice «Package
requirements (harfbuzz >= 1.2.3) were not met», culpando a la lib que sí estaba.

Selladas: libunibreak b3:a01fb6bd, libass b3:213df6b1.
2026-09-03 03:12:12 +00:00

32 lines
1.4 KiB
TOML

# libunibreak 6.1 — algoritmos Unicode de corte de línea y de palabra (UAX #14 / UAX #29).
# Entra como dep de `libass`: sin él, libass compila igual (su configure lo prueba con
# `default=check`) pero parte los renglones de subtítulo por espacios, que es exactamente lo que no
# sirve en japonés, chino o tailandés — idiomas que no separan palabras con espacio. Es la
# diferencia entre "hay subtítulos" y "los subtítulos se leen".
#
# C plano, autotools, leaf: no depende de nada más que la libc. Tarball de release de GitHub
# (`releases/download/…`), no el `/archive/` que genera la forge al vuelo — ése cambia de sha256
# cuando el servidor actualiza git/gzip y mata el pin sin que nadie toque la receta (ADR 0006).
# OJO con la URL: el tag usa guiones bajos (`libunibreak_6_1`) y el fichero puntos (`6.1`).
name = "libunibreak"
version = "6.1"
license = "Zlib"
[source]
tarball = "https://github.com/adah1972/libunibreak/releases/download/libunibreak_6_1/libunibreak-6.1.tar.gz"
sha256 = "cc4de0099cf7ff05005ceabff4afed4c582a736abc38033e70fdac86335ce93f"
[build]
compiler = "zig-cc"
target = "x86_64-linux-musl"
link = "static"
flags = []
[build.phases]
configure = './configure --build=$CBUILD --host=$CHOST --prefix=/usr --disable-shared --enable-static'
compile = 'make -j"$(nproc)"'
install = 'make DESTDIR=/out install'
[deps]
build = ["make", "pkgconf"]