commit: 653816fe975340fde768db29517257350e1db661
Author: Mart Raudsepp <leio <AT> gentoo <DOT> org>
AuthorDate: Sat Apr 27 20:17:33 2024 +0000
Commit: Mart Raudsepp <leio <AT> gentoo <DOT> org>
CommitDate: Sun Apr 28 20:43:25 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=653816fe
gui-libs/gtk: Dependency fixes, test running tweaks
* Add missing libdrm and linux-headers linux build deps.
* Fix minimum required vulkan version.
* examples automagically depend on librsvg - just pull it in for them, as the
circular dep with librsvg is mostly a thing of the past.
* Depend on either gles2 or opengl gst-plugins-base, as former is preferred
nowadays and the dep didn't allow avoiding the latter. Either will provide
the necessary for gtk[gstreamer] gstreamer-gl-1.0.pc package.
* Add media-libs/gstreamer dep for correctness and avoiding a iwdevtools warn.
* Leave a note about zero-copy dmabuf video playback build-time conditional
dependending on gstreamer-1.23 for later minimum dep raising.
* Drop obsolete at-spi2-core dependency - gtk has its own copy of everything
it needs.
* Clarify librsvg PDEPEND comment, as it's only for wd40 profiles, as rust
librsvg doesn't ship the tool behind USE=tools that links to gtk, where
that probably even was GTK 3, not GTK 4. Also SLOT depend just in case.
* Tweak the meson test parameters to match upstream CI setup a bit more in
terms of skipped test suites for a lesser chance of expected failures
being hit. The tests are still rather dependent on installed fonts, the
graphics driver used and so on, but lets see how it fares for others.
Signed-off-by: Mart Raudsepp <leio <AT> gentoo.org>
gui-libs/gtk/gtk-4.14.3.ebuild | 35 ++++++++++++++++++++++++++++-------
1 file changed, 28 insertions(+), 7 deletions(-)
diff --git a/gui-libs/gtk/gtk-4.14.3.ebuild b/gui-libs/gtk/gtk-4.14.3.ebuild
index 9b673318f3f5..7f0c8930ab74 100644
--- a/gui-libs/gtk/gtk-4.14.3.ebuild
+++ b/gui-libs/gtk/gtk-4.14.3.ebuild
@@ -18,6 +18,7 @@ REQUIRED_USE="
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~loong ~ppc ~ppc64 ~riscv ~sparc
~x86"
+# TODO: Optional gst build dep on >=gst-plugins-base-1.23.1, so depend on it
once we can
COMMON_DEPEND="
>=dev-libs/glib-2.76.0:2
>=x11-libs/cairo-1.17.6[aqua?,glib,svg(+),X?]
@@ -36,12 +37,17 @@ COMMON_DEPEND="
cloudproviders? ( net-libs/libcloudproviders )
colord? ( >=x11-misc/colord-0.1.9:0= )
cups? ( >=net-print/cups-2.0 )
+ examples? ( gnome-base/librsvg:2 )
gstreamer? (
+ >=media-libs/gstreamer-1.12.3:1.0
>=media-libs/gst-plugins-bad-1.12.3:1.0
- >=media-libs/gst-plugins-base-1.12.3:1.0[opengl]
+ || (
+ >=media-libs/gst-plugins-base-1.12.3:1.0[gles2]
+ >=media-libs/gst-plugins-base-1.12.3:1.0[opengl]
+ )
)
introspection? ( >=dev-libs/gobject-introspection-1.76:= )
- vulkan? ( media-libs/vulkan-loader:= )
+ vulkan? ( >=media-libs/vulkan-loader-1.3:= )
wayland? (
>=dev-libs/wayland-1.21.0
>=dev-libs/wayland-protocols-1.31
@@ -49,7 +55,6 @@ COMMON_DEPEND="
>=x11-libs/libxkbcommon-0.2
)
X? (
- >=app-accessibility/at-spi2-core-2.46.0
media-libs/fontconfig
media-libs/mesa[X(+)]
x11-libs/libX11
@@ -63,15 +68,19 @@ COMMON_DEPEND="
)
"
DEPEND="${COMMON_DEPEND}
+ kernel_linux? (
+ x11-libs/libdrm
+ sys-kernel/linux-headers
+ )
sysprof? ( >=dev-util/sysprof-capture-3.40.1:4 )
X? ( x11-base/xorg-proto )
"
RDEPEND="${COMMON_DEPEND}
>=dev-util/gtk-update-icon-cache-3
"
-# librsvg for svg icons (PDEPEND to avoid circular dep), bug #547710
+# librsvg for svg icons (PDEPEND to avoid circular dep on wd40 profiles with
librsvg[tools]), bug #547710
PDEPEND="
- gnome-base/librsvg
+ gnome-base/librsvg:2
>=x11-themes/adwaita-icon-theme-3.14
"
BDEPEND="
@@ -177,7 +186,13 @@ src_test() {
if use X; then
einfo "Running tests under X"
- GSETTINGS_SCHEMA_DIR="${S}/gtk" virtx meson_src_test
--setup=x11 --timeout-multiplier=130
+ GSETTINGS_SCHEMA_DIR="${S}/gtk" virtx meson_src_test
--timeout-multiplier=130 \
+ --setup=x11 \
+ --no-suite=failing \
+ --no-suite=x11_failing \
+ --no-suite=flaky \
+ --no-suite=headless \
+ --no-suite=gsk-compare-broadway
fi
if use wayland; then
@@ -189,7 +204,13 @@ src_test() {
compositor=$!
export WAYLAND_DISPLAY=wayland-5
- GSETTINGS_SCHEMA_DIR="${S}/gtk" meson_src_test --setup=wayland
--timeout-multiplier=130
+ GSETTINGS_SCHEMA_DIR="${S}/gtk" meson_src_test
--timeout-multiplier=130 \
+ --setup=wayland \
+ --no-suite=failing \
+ --no-suite=wayland_failing \
+ --no-suite=flaky \
+ --no-suite=headless \
+ --no-suite=gsk-compare-broadway
exit_code=$?
kill ${compositor}