Re: [Buildroot] [PATCH v2 1/2] package/libxkbcommon: build libxkbregistry when libxml2 is available
Thomas Petazzoni via buildroot <[email protected]>
| Newsgroups | net.busybox.buildroot |
|---|---|
| Message-ID | <anjixKjxRvjrCYok@windsurf> |
On Sun, Aug 09, 2026 at 04:14:02PM -0400, Alsey Coleman Miller wrote:
> libxkbregistry is the keyboard layout catalogue half of the library. It
> parses the XML layout registry and so needs libxml2, which is presumably
> why it was disabled unconditionally rather than wired to a dependency.
>
> wine needs it. Its configure.ac requires XKBREGISTRY_LIBS alongside
> wayland-client, wayland-scanner, xkbcommon and linux/input.h before it
> will build the Wayland driver, and wine.mk passes --with-wayland for any
> build with BR2_PACKAGE_WAYLAND - which turns that notice into a hard
> error:
>
> checking for wayland-client.h... yes
> checking for wl_display_connect in -lwayland-client... yes
> checking for wayland-scanner... .../host/bin/wayland-scanner
> checking for xkb_context_new in -lxkbcommon... yes
> checking for wayland-egl.h... yes
> checking for wl_egl_window_create in -lwayland-egl... yes
> configure: error: Wayland development files not found, the Wayland
> driver won't be supported.
> This is an error since --with-wayland was requested.
>
> Every other term of that test passes; only XKBREGISTRY_LIBS is empty, so
> wine and wayland together could not be built on any architecture.
>
> Gated on BR2_PACKAGE_LIBXML2 rather than turned on outright, because
> meson.build takes dependency('libxml-2.0') unconditionally once
> enable-xkbregistry is set, so a target without libxml2 would fail to
> configure.
>
> Regarding since when this is broken, three pieces had to come together:
>
> - libxkbcommon has passed -Denable-xkbregistry=false since commit
> 1791bc30a5 ("package/libxkbcommon: bump version to 1.0.1", Sep 2020),
> i.e. Buildroot 2020.11. libxkbregistry has therefore never been built
> in Buildroot.
>
> - wine's configure gained the XKBREGISTRY_LIBS term in its Wayland
> test in wine 9.0, with upstream commit d64ea8e4a6c9
> ("winewayland.drv: Enumerate Xkb layouts and create matching HKL.",
> Nov 2023).
>
> - wine.mk started passing --with-wayland in commit 7cb49e7712
> ("package/wine: bump to version 9.19", Oct 2024), which is what turns
> the missing XKBREGISTRY_LIBS from a notice into a hard error.
>
> The breakage therefore dates from Buildroot 2024.11, and every branch
> since is affected, including the LTS one: 2025.02.x carries wine 10.0,
> whose configure has the XKBREGISTRY_LIBS check, together with
> libxkbcommon 1.9.2 built with -Denable-xkbregistry=false, and its wine.mk
> passes --with-wayland. 2025.05.x and 2025.08.x are in the same state.
> A backport to 2025.02.x is thus needed.
>
> Signed-off-by: Alsey Coleman Miller <[email protected]>
Thanks for this new iteration!
Reviewed-by: Thomas Petazzoni <[email protected]>
Thomas
--
Thomas Petazzoni, co-owner and CEO, Bootlin
Embedded Linux and Kernel engineering and training
https://bootlin.com
_______________________________________________
buildroot mailing list
[email protected]
https://lists.buildroot.org/mailman/listinfo/buildroot