All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Raphaël Gallais-Pou" <rgallaispou@gmail.com>
To: Alsey Coleman Miller <alseycmiller@gmail.com>,
	buildroot@buildroot.org, Romain Naour <romain.naour@gmail.com>
Cc: "André Zwing" <nerv@dawncrow.de>,
	"Thomas Petazzoni" <thomas.petazzoni@bootlin.com>
Subject: Re: [Buildroot] [PATCH v2 1/2] package/libxkbcommon: build libxkbregistry when libxml2 is available
Date: Mon, 10 Aug 2026 11:51:19 +0200	[thread overview]
Message-ID: <6db03f79-b74a-4c8e-88f7-72d324ab4cde@gmail.com> (raw)
In-Reply-To: <20260809201403.3855903-1-alseycmiller@gmail.com>

Hi,

For information, I've provided a similar fix here:
https://lore.kernel.org/buildroot/20260527-master-v1-1-0d975f3b3f0d@gmail.com/ 
earlier this summer.

Romain stated that xkbregistry had been disabled on purpose[1] and to 
which my question has remained unanswered in this time of holidays.

Best regards,
Raphaël

[1] 
https://lore.kernel.org/buildroot/cbfb9495-35d2-447e-a9e1-22c834d07dc5@smile.fr/ 


Le 09/08/2026 à 22:14, Alsey Coleman Miller a écrit :
> 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 <alseycmiller@gmail.com>
> ---
> 
> Notes:
>      Changes since v1:
>       - Extend the commit log to document since when the problem exists, and
>         whether the 2025.02.x LTS branch is affected (suggested by Thomas
>         Petazzoni). No change to the code.
> 
>   package/libxkbcommon/libxkbcommon.mk | 10 ++++++++--
>   1 file changed, 8 insertions(+), 2 deletions(-)
> 
> diff --git a/package/libxkbcommon/libxkbcommon.mk b/package/libxkbcommon/libxkbcommon.mk
> index 21a2b937ef..406affe401 100644
> --- a/package/libxkbcommon/libxkbcommon.mk
> +++ b/package/libxkbcommon/libxkbcommon.mk
> @@ -12,8 +12,14 @@ LIBXKBCOMMON_CPE_ID_VENDOR = xkbcommon
>   LIBXKBCOMMON_INSTALL_STAGING = YES
>   LIBXKBCOMMON_DEPENDENCIES = host-bison host-flex
>   LIBXKBCOMMON_CONF_OPTS = \
> -	-Denable-docs=false \
> -	-Denable-xkbregistry=false
> +	-Denable-docs=false
> +
> +ifeq ($(BR2_PACKAGE_LIBXML2),y)
> +LIBXKBCOMMON_CONF_OPTS += -Denable-xkbregistry=true
> +LIBXKBCOMMON_DEPENDENCIES += libxml2
> +else
> +LIBXKBCOMMON_CONF_OPTS += -Denable-xkbregistry=false
> +endif
>   
>   ifeq ($(BR2_PACKAGE_XORG7),y)
>   LIBXKBCOMMON_CONF_OPTS += -Denable-x11=true

_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

      parent reply	other threads:[~2026-08-10  9:52 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-08-09 20:14 [Buildroot] [PATCH v2 1/2] package/libxkbcommon: build libxkbregistry when libxml2 is available Alsey Coleman Miller
2026-08-09 20:14 ` [Buildroot] [PATCH v2 2/2] package/wine: select libxkbcommon and libxml2 for the Wayland driver Alsey Coleman Miller
2026-08-09 20:29   ` Thomas Petazzoni via buildroot
2026-08-09 20:28 ` [Buildroot] [PATCH v2 1/2] package/libxkbcommon: build libxkbregistry when libxml2 is available Thomas Petazzoni via buildroot
2026-08-10  9:51 ` Raphaël Gallais-Pou [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=6db03f79-b74a-4c8e-88f7-72d324ab4cde@gmail.com \
    --to=rgallaispou@gmail.com \
    --cc=alseycmiller@gmail.com \
    --cc=buildroot@buildroot.org \
    --cc=nerv@dawncrow.de \
    --cc=romain.naour@gmail.com \
    --cc=thomas.petazzoni@bootlin.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.