dev-qt/qtwayland: update live

Most code was moved to qtbase alongside their tests, and
this package is now primarily for the compositor bits.

Considered still keeping USE=compositor but "wayland_server"
feature was moved to qtbase as well and would need control it
*there* and depend on qtbase[compositor=] which provides rather
poor UX due to portage giving misleading warnings (not as bad
for e.g. opengl=,vulkan= because they are set globally by
profiles). On the bright side, many users may be able to
depclean qtwayland altogether so it won't be wasteful.

Formerly skipped tst_compositor is still here but let's
tentatively allow it again (seems to pass).

Signed-off-by: Ionen Wolkens <ionen@gentoo.org>
This commit is contained in:
Ionen Wolkens
2025-06-07 00:30:20 -04:00
parent 9c0e9c2f84
commit 655cc4b484

View File

@@ -1,67 +1,39 @@
# Copyright 2021-2024 Gentoo Authors
# Copyright 2021-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit qt6-build
DESCRIPTION="Wayland platform plugin for Qt"
DESCRIPTION="Toolbox for making Qt based Wayland compositors"
if [[ ${QT6_BUILD_TYPE} == release ]]; then
KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~x86"
fi
IUSE="accessibility compositor gnome qml vulkan"
IUSE="gnome qml"
RDEPEND="
dev-libs/wayland
~dev-qt/qtbase-${PV}:6[accessibility=,gui,opengl,vulkan=,wayland]
~dev-qt/qtbase-${PV}:6[gui,opengl,wayland]
media-libs/libglvnd
x11-libs/libxkbcommon
compositor? (
qml? ( ~dev-qt/qtdeclarative-${PV}:6 )
)
qml? ( ~dev-qt/qtdeclarative-${PV}:6 )
gnome? (
~dev-qt/qtbase-${PV}:6[dbus]
~dev-qt/qtsvg-${PV}:6
)
"
DEPEND="
${RDEPEND}
vulkan? ( dev-util/vulkan-headers )
DEPEND="${RDEPEND}"
BDEPEND="
dev-util/wayland-scanner
"
BDEPEND="dev-util/wayland-scanner"
CMAKE_SKIP_TESTS=(
# segfaults for not-looked-into reasons, but not considered
# an issue given >=seatv5 exists since wayland-1.10 (2016)
tst_seatv4
# needs a compositor/opengl, skip the extra trouble
tst_surface
tst_xdgdecorationv1
# known failing with wayland-1.23.0 (or at least with offscreen), not
# believed to result in critical runtime issues so skip until this is
# looked at upstream (https://bugreports.qt.io/browse/QTBUG-126379)
tst_client
tst_compositor
tst_scaling
)
src_configure() {
local mycmakeargs=(
$(cmake_use_find_package compositor Qt6Quick)
$(cmake_use_find_package qml Qt6Quick)
$(qt_feature compositor wayland_server)
$(qt_feature gnome wayland_decoration_adwaita)
)
qt6-build_src_configure
}
src_test() {
# users' session setting may break tst_clientextension (bug #927030)
unset DESKTOP_SESSION XDG_CURRENT_DESKTOP
unset GNOME_DESKTOP_SESSION_ID KDE_FULL_SESSION
qt6-build_src_test
}