commit:     6e00512a740e62ed0f8a10665c114669e698d679
Author:     Alfred Wingate <parona <AT> protonmail <DOT> com>
AuthorDate: Sat Sep 20 21:45:41 2025 +0000
Commit:     Mart Raudsepp <leio <AT> gentoo <DOT> org>
CommitDate: Wed Jan 14 11:33:09 2026 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6e00512a

media-libs/gst-plugins-base: wrangle tests

Address the rest of abi_x86_32 pain points now that gstreamer itself is
fixed for abi_x86_32.

GSETTINGS_BACKEND=dconf leaks into env and breaks libs_rtspconnection on
abi_x86_32 because there is no 32-bit dconf.

Skip the rest of the unaddressed test failures.

Bug: https://bugs.gentoo.org/870361
Signed-off-by: Alfred Wingate <parona <AT> protonmail.com>
Signed-off-by: Mart Raudsepp <leio <AT> gentoo.org>

 .../gst-plugins-base-1.24.13.ebuild                | 42 +++++++++++++++++++++-
 1 file changed, 41 insertions(+), 1 deletion(-)

diff --git a/media-libs/gst-plugins-base/gst-plugins-base-1.24.13.ebuild 
b/media-libs/gst-plugins-base/gst-plugins-base-1.24.13.ebuild
index 337c926b2cdf..4388f7131de5 100644
--- a/media-libs/gst-plugins-base/gst-plugins-base-1.24.13.ebuild
+++ b/media-libs/gst-plugins-base/gst-plugins-base-1.24.13.ebuild
@@ -4,7 +4,7 @@
 EAPI=8
 GST_ORG_MODULE="gst-plugins-base"
 
-inherit flag-o-matic meson-multilib gstreamer-meson
+inherit flag-o-matic meson-multilib gstreamer-meson virtualx
 
 DESCRIPTION="Basepack of plugins for gstreamer"
 HOMEPAGE="https://gstreamer.freedesktop.org/";
@@ -142,3 +142,43 @@ multilib_src_configure() {
 
        gstreamer_multilib_src_configure
 }
+
+multilib_src_test() {
+       # User env may cause issues (notably dconf isnt multilib)
+       export GSETTINGS_BACKEND=memory
+
+       # Homebrew test skips for meson
+       local -a tests
+       tests=( $(meson test --list -C "${BUILD_DIR}") )
+
+       local -a _skip_tests=()
+       # Affects abi_x86_32
+       multilib_is_native_abi || _skip_tests+=(
+               # failed ABI check
+               libs_libsabi
+               # ../glib-2.84.4/gobject/gtype.c:4159: type id '284' is invalid
+               libs_dsd
+               # general:test_max_s8:0: Assertion 'memcmp (res, out, 4) == 0' 
failed
+               elements_volume
+       )
+
+       # Add suites which in this case are PN
+       if has_version ">=dev-build/meson-1.10.0"; then
+               local -a skip_tests=()
+               for skip_test in ${_skip_tests[@]}; do
+                       skip_tests+=( "${PN}:${skip_test}" )
+               done
+       else
+               local -a skip_tests=( ${_skip_tests[@]} )
+       fi
+       unset _skip_tests
+
+       for test_index in ${!tests[@]}; do
+               if [[ ${skip_tests[@]} =~ ${tests[${test_index}]} ]]; then
+                       unset tests[${test_index}]
+               fi
+       done
+
+       # gstreamer_multilib_src_test doesn't pass arguments
+       GST_GL_WINDOW=x11 virtx meson_src_test --timeout-multiplier 5 
${tests[@]}
+}

Reply via email to