guix-devel/gnu/packages/patches/gtk2-fix-failing-test.patch

40 lines
1.6 KiB
Diff

From 12d8b4e8f2f9c9a7707d1d3fccba382732212e3c Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?G=C3=A1bor=20Boskovits?= <boskovits@gmail.com>
Date: Tue, 5 Dec 2017 20:06:36 +0100
Subject: [PATCH] Fix test failing on new GLib versions.
This test fails on newer GLib version, because GLib exports a new public marshaller.
The additional symbol making the test fail is:
g_cclosure_marshal_BOOLEAN__BOXED_BOXED
The fix makes the test ignore non-gtk related abi.
This ensures if future marshallers are added to glib those will not pose a problem.
The fix also ensures that the test still checks the gtk abi for identity, and
that the library provides a superset of the required abi.
Upstream reponse to this problem was:
GLib added a new marshaller in its public API
And the `abicheck.sh`in GTK+ 2.24 hasn't been updated because GTK+ 2.24 is in deep
maintenance mode and very few people test it against newer versions of GLib
---
gtk/abicheck.sh | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/gtk/abicheck.sh b/gtk/abicheck.sh
index 0d033fb..53b7bfe 100755
--- a/gtk/abicheck.sh
+++ b/gtk/abicheck.sh
@@ -1,5 +1,5 @@
#! /bin/sh
cpp -DINCLUDE_VARIABLES -P -DG_OS_UNIX -DGTK_WINDOWING_X11 -DALL_FILES ${srcdir:-.}/gtk.symbols | sed -e '/^$/d' -e 's/ G_GNUC.*$//' -e 's/ PRIVATE//' | sort > expected-abi
-nm -D -g --defined-only .libs/libgtk-x11-2.0.so | cut -d ' ' -f 3 | egrep -v '^(__bss_start|_edata|_end)' | sort > actual-abi
+nm -D -g --defined-only .libs/libgtk-x11-2.0.so | cut -d ' ' -f 3 | egrep -v '^(__bss_start|_edata|_end)' | egrep '^gtk_' | sort > actual-abi
diff -u expected-abi actual-abi && rm -f expected-abi actual-abi
--
2.15.0