[PATCH core-updates-frozen] gnu: gtk+: Fix testsuite failure on non-x86_64 platforms

  • Done
  • quality assurance status badge
Details
2 participants
  • Thiago Jung Bauermann
  • Mathieu Othacehe
Owner
unassigned
Submitted by
Thiago Jung Bauermann
Severity
normal
T
T
Thiago Jung Bauermann wrote on 15 Sep 2021 01:24
(address . guix-patches@gnu.org)(name . Thiago Jung Bauermann)(address . bauermann@kolabnow.com)
20210914232437.53386-1-bauermann@kolabnow.com
On non-x86_64 platforms, gtk+ is linked with a gdk-pixbuf version that
doesn’t support SVG. This causes the ‘icontheme’ 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+)[propagated-inputs]: Use the ‘target-x86-64?’
convenience function.
[arguments]<#:phases>{disable-failing-tests}: Disable ‘icontheme’ test on
non-x86_64 platforms.
---

Hello,

This patch doesn’t change the gtk+ output derivations on x86_64-linux, so
it won’t cause any rebuilds there.

And together with the one in issue 50521, it allows gtk+ to build on
powerpc64le-linux. In fact, I can even build GTK+ apps such as Emacs and
Transmission! Unfortunately, GNOME apps need SVG support because of the
icon theme. And rust doesn’t build on powerpc64le-linux (mrustc errors out
with “Unknown target name ''”).

Thanks,
Thiago

gnu/packages/gtk.scm | 10 +++++++---
1 file changed, 7 insertions(+), 3 deletions(-)

Toggle diff (28 lines)
diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index 24c24d56530f..876071235ef4 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -958,8 +958,7 @@ application suites.")
("freetype" ,freetype)
;; SVG support is optional and requires librsvg, which pulls in rust.
;; Rust is not supported well on every architecture yet.
- ("gdk-pixbuf" ,(if (string-prefix? "x86_64" (or (%current-target-system)
- (%current-system)))
+ ("gdk-pixbuf" ,(if (target-x86-64?)
gdk-pixbuf+svg
gdk-pixbuf))
("glib" ,glib)
@@ -1028,7 +1027,12 @@ application suites.")
(("notify no-gtk-init object objects-finalize papersize rbtree")
"no-gtk-init papersize rbtree")
(("stylecontext templates textbuffer textiter treemodel treepath")
- "stylecontext textbuffer textiter treemodel treepath"))
+ "stylecontext textbuffer textiter treemodel treepath")
+ ;; The ‘icontheme’ test needs SVG support.
+ ,@(if (not (target-x86-64?))
+ '((("floating focus gestures grid gtkmenu icontheme keyhash listbox")
+ "floating focus gestures grid gtkmenu keyhash listbox"))
+ '()))
(substitute* "testsuite/a11y/Makefile.in"
(("accessibility-dump tree-performance text children derive")
"tree-performance text children derive"))
M
M
Mathieu Othacehe wrote on 19 Sep 2021 20:18
(name . Thiago Jung Bauermann)(address . bauermann@kolabnow.com)(address . 50593-done@debbugs.gnu.org)
87wnncpgy3.fsf@gnu.org
Hello Thiago,

Toggle quote (6 lines)
> And together with the one in issue 50521, it allows gtk+ to build on
> powerpc64le-linux. In fact, I can even build GTK+ apps such as Emacs and
> Transmission! Unfortunately, GNOME apps need SVG support because of the
> icon theme. And rust doesn’t build on powerpc64le-linux (mrustc errors out
> with “Unknown target name ''”).

Nice one, pushed as b452fe87e0c6e7634a2cb44274fa46832c763b40.

Thanks,

Mathieu
Closed
T
T
Thiago Jung Bauermann wrote on 20 Sep 2021 04:17
(name . Mathieu Othacehe)(address . othacehe@gnu.org)(address . 50593-done@debbugs.gnu.org)
2921983.b5OCIm1G9F@popigai
Hello Mathieu,

Em domingo, 19 de setembro de 2021, às 15:18:28 -03, Mathieu Othacehe
escreveu:
Toggle quote (11 lines)
> Hello Thiago,
>
> > And together with the one in issue 50521, it allows gtk+ to build on
> > powerpc64le-linux. In fact, I can even build GTK+ apps such as Emacs
> > and
> > Transmission! Unfortunately, GNOME apps need SVG support because of the
> > icon theme. And rust doesn’t build on powerpc64le-linux (mrustc errors
> > out with “Unknown target name ''”).
>
> Nice one, pushed as b452fe87e0c6e7634a2cb44274fa46832c763b40.

Great! Thank you!

--
Thanks,
Thiago
Closed
?