The upstream code checks whether GDK_WINDOWING_WAYLAND is defined by the gtk headers, and if so will compile against the wayland symbols it provides.
This means that libxfce4ui built on a system with gtk+[-wayland] will be compatible with anything, but when built on a system with gtk+[wayland], requires that at runtime regardless of USE flag. This cannot be expressed with USE flags. We could bind tightly to whether gtk was built with wayland and arbitrarily restrict libxfce4ui[-wayland] to only build and install on a system with gtk+[-wayland]. But we recently added a hack to gtk itself which allows hiding the automagic macros entirely. Inject this via append-cflags if the USE flags aren't set, to simulate building on a system with more minimal gtk packages. Fixed upstream in: https://gitlab.xfce.org/xfce/libxfce4ui/-/commit/967359624e408365b4c027bab66e737063af604b and hence only worked around for 4.18. Bug: https://bugs.gentoo.org/624960 Closes: https://bugs.gentoo.org/873520 Signed-off-by: Eli Schwartz <eschwart...@gmail.com> --- ...e4ui-4.18.6.ebuild => libxfce4ui-4.18.6-r1.ebuild} | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) copy xfce-base/libxfce4ui/{libxfce4ui-4.18.6.ebuild => libxfce4ui-4.18.6-r1.ebuild} (82%) diff --git a/xfce-base/libxfce4ui/libxfce4ui-4.18.6.ebuild b/xfce-base/libxfce4ui/libxfce4ui-4.18.6-r1.ebuild similarity index 82% copy from xfce-base/libxfce4ui/libxfce4ui-4.18.6.ebuild copy to xfce-base/libxfce4ui/libxfce4ui-4.18.6-r1.ebuild index bc3c10b62bdf..888730690ed9 100644 --- a/xfce-base/libxfce4ui/libxfce4ui-4.18.6.ebuild +++ b/xfce-base/libxfce4ui/libxfce4ui-4.18.6-r1.ebuild @@ -3,7 +3,7 @@ EAPI=8 -inherit xdg-utils vala +inherit flag-o-matic xdg-utils vala DESCRIPTION="Unified widget and session management libs for Xfce" HOMEPAGE=" @@ -14,13 +14,13 @@ SRC_URI="https://archive.xfce.org/src/xfce/${PN}/${PV%.*}/${P}.tar.bz2" LICENSE="LGPL-2+ GPL-2+" SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~mips ppc ppc64 ~riscv ~sparc x86 ~amd64-linux ~x86-linux" -IUSE="glade +introspection startup-notification system-info vala" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux" +IUSE="glade +introspection startup-notification system-info vala wayland" REQUIRED_USE="vala? ( introspection )" DEPEND=" >=dev-libs/glib-2.66.0 - >=x11-libs/gtk+-3.24.0:3[introspection?,X] + >=x11-libs/gtk+-3.24.0:3[introspection?,wayland?,X] x11-libs/libX11 x11-libs/libICE x11-libs/libSM @@ -47,6 +47,9 @@ BDEPEND=" " src_configure() { + # defang automagic dependencies, bug #873520 + use wayland || append-cflags -DGENTOO_GTK_HIDE_WAYLAND + local myconf=( $(use_enable introspection) $(use_enable system-info glibtop) -- 2.44.2