|
M5 (task qt0): modern format backends.
- src/loader/backends/jxl.c: libjxl decoder → RGBA → GdkMemoryTexture.
- src/loader/backends/heif.c: libheif decoder → interleaved RGBA →
GdkMemoryTexture (also handles AVIF when libavif is absent).
- src/loader/backends/avif.c: libavif decoder (written; auto-disabled when
libavif is not installed).
- src/loader/loader.c: BACKENDS array conditionally includes the backends
via -DHAVE_JXL/HAVE_AVIF/HAVE_HEIF; pixbuf remains last (fallback).
- meson.build: conditional backend sources + c_args + extra deps.
- tests: assert_unsupports updated to assert NULL only (any error, works
with or without the specific backend compiled in).
- Minimal build (all disabled) + full build (jxl+heif) both 14/14 green,
ASan clean.
|