Subject: [PATCH core-updates-frozen] gnu: gtk+: Fix testsuite failure on non-x86_64 platforms.
From: Thiago Jung Bauermann <[email-masked]>
To: [email-masked]
Cc: Thiago Jung Bauermann <[email-masked]>
Date: Thu, 28 Oct 2021 16:43:23 -0300
List-Id: <debbugs-submit.debbugs.gnu.org>

On non-x86_64 platforms, gtk+ is linked with a gdk-pixbuf version that
doesn’t support SVG.  This causes the ‘tree-relationships’ test to fail
because it tries to fetch SVG icons in some of the tests.

Therefore, we need to disable the test when SVG support isn’t available.

* gnu/packages/gtk.scm (gtk+)[arguments]<#:phases>{disable-failing-tests}:
Disable ‘tree-relationships’ test on non-x86_64 platforms.
---

Hello,

Considering that the core-updates-frozen-batched-changes branch will
soon make GTK+ depend on Rust (via an updated mozjs package), perhaps
this patch is somewhat pointless. But I thought it would be at least a
bit useful to have this information recorded.

Also, there's a good change that polkit will switch from mozjs to duktape
as its Javascript engine. In that case it will be useful again to have
this patch in.

With this patch, GTK+ builds again on core-updates-frozen on
powerpc64le-linux. This patch doesn't change the package derivation
on x86_64-linux

Thanks,
Thiago.

 gnu/packages/gtk.scm | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index fadd0794c5dd..40fc2c93d681 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -1106,7 +1106,12 @@ (define-public gtk+
                      '()))
              (substitute* "testsuite/a11y/Makefile.in"
                (("accessibility-dump tree-performance text children derive")
-                "tree-performance text children derive"))
+                "tree-performance text children derive")
+               ;; The ‘tree-relationships’ test needs SVG support.
+               ,@(if (not (target-x86-64?))
+                     '((("value misc tree-relationships util")
+                        "value misc util"))
+                     '()))
              (substitute* "testsuite/reftests/Makefile.in"
                (("TEST_PROGS = gtk-reftest")
                 "TEST_PROGS = "))