unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
* [bug#29580] [PATCH] gnu: gtk+-2: Fix failing test.
@ 2017-12-05 19:50 Gábor Boskovits
       [not found] ` <handler.29580.B.151250347132722.ack@debbugs.gnu.org>
                   ` (2 more replies)
  0 siblings, 3 replies; 6+ messages in thread
From: Gábor Boskovits @ 2017-12-05 19:50 UTC (permalink / raw)
  To: 29580; +Cc: Gábor Boskovits

* gnu/packages/gtk.scm (gtk+-2)[source]: Add patch.
* gnu/packages/patches/gtk2-fix-failing-test.patch: New file.
* gnu/local.mk (dist_patch_DATA): Register it.
---
 gnu/local.mk                                     |  1 +
 gnu/packages/gtk.scm                             |  3 ++-
 gnu/packages/patches/gtk2-fix-failing-test.patch | 23 +++++++++++++++++++++++
 3 files changed, 26 insertions(+), 1 deletion(-)
 create mode 100644 gnu/packages/patches/gtk2-fix-failing-test.patch

diff --git a/gnu/local.mk b/gnu/local.mk
index 5a701075f..b37d76ab3 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -713,6 +713,7 @@ dist_patch_DATA =						\
   %D%/packages/patches/guile-present-coding.patch		\
   %D%/packages/patches/guile-relocatable.patch			\
   %D%/packages/patches/guile-rsvg-pkgconfig.patch		\
+  %D%/packages/patches/gtk2-fix-failing-test.patch		\
   %D%/packages/patches/gtk2-respect-GUIX_GTK2_PATH.patch	\
   %D%/packages/patches/gtk2-respect-GUIX_GTK2_IM_MODULE_FILE.patch \
   %D%/packages/patches/gtk2-theme-paths.patch			\
diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index dfa7a59b1..3d9ffe8c8 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -600,7 +600,8 @@ is part of the GNOME accessibility project.")
               "0n26jm09n03nqbd00d2ij63xrby3vik56sk5yj6w1vy768kr5hb8"))
             (patches (search-patches "gtk2-respect-GUIX_GTK2_PATH.patch"
                                      "gtk2-respect-GUIX_GTK2_IM_MODULE_FILE.patch"
-                                     "gtk2-theme-paths.patch"))))
+                                     "gtk2-theme-paths.patch"
+                                     "gtk2-fix-failing-test.patch"))))
    (build-system gnu-build-system)
    (outputs '("out" "doc"))
    (propagated-inputs
diff --git a/gnu/packages/patches/gtk2-fix-failing-test.patch b/gnu/packages/patches/gtk2-fix-failing-test.patch
new file mode 100644
index 000000000..7ed3a2fa1
--- /dev/null
+++ b/gnu/packages/patches/gtk2-fix-failing-test.patch
@@ -0,0 +1,23 @@
+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.
+
+---
+ 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
+
-- 
2.15.0

^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [bug#29580] Acknowledgement ([PATCH] gnu: gtk+-2: Fix failing test.)
       [not found] ` <handler.29580.B.151250347132722.ack@debbugs.gnu.org>
@ 2017-12-05 19:59   ` Gábor Boskovits
  0 siblings, 0 replies; 6+ messages in thread
From: Gábor Boskovits @ 2017-12-05 19:59 UTC (permalink / raw)
  To: 29580

[-- Attachment #1: Type: text/plain, Size: 2013 bytes --]

This is a patch to make gtk2 build on core-updates.
Relevant details can be found on today irc logs.
Just the most important points:

gtk+-2 build fails on core-updates with a failing test: gtk/abitest.sh

The cause of the failure is that the new version of glib currently on
core-updates exposes a new marshaller, therefore the abi provided by the
library is a superset of the expected abi, and this test requires exact
match.

Here is a snippet of communcation with upstream:
17:49 < EmmanueleBassi> gabriel_: It's fine to ignore
17:49 < EmmanueleBassi> gabriel_: GLib added a new marshaller in its public
API
17:50 < EmmanueleBassi> gabriel_: 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 17:50 < EmmanueleBassi>
There's the question as to whether GLib should have added a new marshaller
in the public API in the first place
[17:56] <g_bor> EmmanueleBassi> But that happened a long time ago

So it seems, that this is fine to ignore this, and upstream is not
interested in fixing it.

My fix restricts the test to the gtk abi, which I think is the good thing
to do.

2017-12-05 20:52 GMT+01:00 GNU bug Tracking System <help-debbugs@gnu.org>:

> Thank you for filing a new bug report with debbugs.gnu.org.
>
> This is an automatically generated reply to let you know your message
> has been received.
>
> Your message is being forwarded to the package maintainers and other
> interested parties for their attention; they will reply in due course.
>
> Your message has been sent to the package maintainer(s):
>  guix-patches@gnu.org
>
> If you wish to submit further information on this problem, please
> send it to 29580@debbugs.gnu.org.
>
> Please do not send mail to help-debbugs@gnu.org unless you wish
> to report a problem with the Bug-tracking system.
>
> --
> 29580: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=29580
> GNU Bug Tracking System
> Contact help-debbugs@gnu.org with problems
>

[-- Attachment #2: Type: text/html, Size: 4649 bytes --]

^ permalink raw reply	[flat|nested] 6+ messages in thread

* [bug#29580] [PATCH] gnu: gtk+-2: Fix failing test.
  2017-12-05 19:50 [bug#29580] [PATCH] gnu: gtk+-2: Fix failing test Gábor Boskovits
       [not found] ` <handler.29580.B.151250347132722.ack@debbugs.gnu.org>
@ 2017-12-05 23:26 ` Danny Milosavljevic
  2017-12-06 14:19 ` Gábor Boskovits
  2 siblings, 0 replies; 6+ messages in thread
From: Danny Milosavljevic @ 2017-12-05 23:26 UTC (permalink / raw)
  To: Gábor Boskovits; +Cc: 29580

Please add a comment to the patch file at the top as to how it fixes the tests (I take it there are other symbols not starting with "gtk_" which are now filtered out - which ones?)

^ permalink raw reply	[flat|nested] 6+ messages in thread

* [bug#29580] [PATCH] gnu: gtk+-2: Fix failing test.
  2017-12-05 19:50 [bug#29580] [PATCH] gnu: gtk+-2: Fix failing test Gábor Boskovits
       [not found] ` <handler.29580.B.151250347132722.ack@debbugs.gnu.org>
  2017-12-05 23:26 ` [bug#29580] [PATCH] gnu: gtk+-2: Fix failing test Danny Milosavljevic
@ 2017-12-06 14:19 ` Gábor Boskovits
  2017-12-06 19:41   ` Danny Milosavljevic
  2017-12-07 17:02   ` bug#29580: " Marius Bakke
  2 siblings, 2 replies; 6+ messages in thread
From: Gábor Boskovits @ 2017-12-06 14:19 UTC (permalink / raw)
  To: dannym, 29580; +Cc: Gábor Boskovits

* gnu/packages/gtk.scm (gtk+-2)[source]: Add patch.
* gnu/packages/patches/gtk2-fix-failing-test.patch: New file.
* gnu/local.mk (dist_patch_DATA): Register it.
---
 gnu/local.mk                                     |  1 +
 gnu/packages/gtk.scm                             |  3 +-
 gnu/packages/patches/gtk2-fix-failing-test.patch | 39 ++++++++++++++++++++++++
 3 files changed, 42 insertions(+), 1 deletion(-)
 create mode 100644 gnu/packages/patches/gtk2-fix-failing-test.patch

diff --git a/gnu/local.mk b/gnu/local.mk
index 5a701075f..b37d76ab3 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -713,6 +713,7 @@ dist_patch_DATA =						\
   %D%/packages/patches/guile-present-coding.patch		\
   %D%/packages/patches/guile-relocatable.patch			\
   %D%/packages/patches/guile-rsvg-pkgconfig.patch		\
+  %D%/packages/patches/gtk2-fix-failing-test.patch		\
   %D%/packages/patches/gtk2-respect-GUIX_GTK2_PATH.patch	\
   %D%/packages/patches/gtk2-respect-GUIX_GTK2_IM_MODULE_FILE.patch \
   %D%/packages/patches/gtk2-theme-paths.patch			\
diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index dfa7a59b1..3d9ffe8c8 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -600,7 +600,8 @@ is part of the GNOME accessibility project.")
               "0n26jm09n03nqbd00d2ij63xrby3vik56sk5yj6w1vy768kr5hb8"))
             (patches (search-patches "gtk2-respect-GUIX_GTK2_PATH.patch"
                                      "gtk2-respect-GUIX_GTK2_IM_MODULE_FILE.patch"
-                                     "gtk2-theme-paths.patch"))))
+                                     "gtk2-theme-paths.patch"
+                                     "gtk2-fix-failing-test.patch"))))
    (build-system gnu-build-system)
    (outputs '("out" "doc"))
    (propagated-inputs
diff --git a/gnu/packages/patches/gtk2-fix-failing-test.patch b/gnu/packages/patches/gtk2-fix-failing-test.patch
new file mode 100644
index 000000000..721dc012c
--- /dev/null
+++ b/gnu/packages/patches/gtk2-fix-failing-test.patch
@@ -0,0 +1,39 @@
+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
+
-- 
2.15.0

^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [bug#29580] [PATCH] gnu: gtk+-2: Fix failing test.
  2017-12-06 14:19 ` Gábor Boskovits
@ 2017-12-06 19:41   ` Danny Milosavljevic
  2017-12-07 17:02   ` bug#29580: " Marius Bakke
  1 sibling, 0 replies; 6+ messages in thread
From: Danny Milosavljevic @ 2017-12-06 19:41 UTC (permalink / raw)
  To: Gábor Boskovits; +Cc: 29580

The patch doesn't apply using "git am" for me.

^ permalink raw reply	[flat|nested] 6+ messages in thread

* bug#29580: [PATCH] gnu: gtk+-2: Fix failing test.
  2017-12-06 14:19 ` Gábor Boskovits
  2017-12-06 19:41   ` Danny Milosavljevic
@ 2017-12-07 17:02   ` Marius Bakke
  1 sibling, 0 replies; 6+ messages in thread
From: Marius Bakke @ 2017-12-07 17:02 UTC (permalink / raw)
  To: Gábor Boskovits, dannym, 29580-done

[-- Attachment #1: Type: text/plain, Size: 4337 bytes --]

Gábor Boskovits <boskovits@gmail.com> writes:

> * gnu/packages/gtk.scm (gtk+-2)[source]: Add patch.
> * gnu/packages/patches/gtk2-fix-failing-test.patch: New file.
> * gnu/local.mk (dist_patch_DATA): Register it.
> ---
>  gnu/local.mk                                     |  1 +
>  gnu/packages/gtk.scm                             |  3 +-
>  gnu/packages/patches/gtk2-fix-failing-test.patch | 39 ++++++++++++++++++++++++
>  3 files changed, 42 insertions(+), 1 deletion(-)
>  create mode 100644 gnu/packages/patches/gtk2-fix-failing-test.patch
>
> diff --git a/gnu/local.mk b/gnu/local.mk
> index 5a701075f..b37d76ab3 100644
> --- a/gnu/local.mk
> +++ b/gnu/local.mk
> @@ -713,6 +713,7 @@ dist_patch_DATA =						\
>    %D%/packages/patches/guile-present-coding.patch		\
>    %D%/packages/patches/guile-relocatable.patch			\
>    %D%/packages/patches/guile-rsvg-pkgconfig.patch		\
> +  %D%/packages/patches/gtk2-fix-failing-test.patch		\
>    %D%/packages/patches/gtk2-respect-GUIX_GTK2_PATH.patch	\
>    %D%/packages/patches/gtk2-respect-GUIX_GTK2_IM_MODULE_FILE.patch \
>    %D%/packages/patches/gtk2-theme-paths.patch			\
> diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
> index dfa7a59b1..3d9ffe8c8 100644
> --- a/gnu/packages/gtk.scm
> +++ b/gnu/packages/gtk.scm
> @@ -600,7 +600,8 @@ is part of the GNOME accessibility project.")
>                "0n26jm09n03nqbd00d2ij63xrby3vik56sk5yj6w1vy768kr5hb8"))
>              (patches (search-patches "gtk2-respect-GUIX_GTK2_PATH.patch"
>                                       "gtk2-respect-GUIX_GTK2_IM_MODULE_FILE.patch"
> -                                     "gtk2-theme-paths.patch"))))
> +                                     "gtk2-theme-paths.patch"
> +                                     "gtk2-fix-failing-test.patch"))))
>     (build-system gnu-build-system)
>     (outputs '("out" "doc"))
>     (propagated-inputs
> diff --git a/gnu/packages/patches/gtk2-fix-failing-test.patch b/gnu/packages/patches/gtk2-fix-failing-test.patch
> new file mode 100644
> index 000000000..721dc012c
> --- /dev/null
> +++ b/gnu/packages/patches/gtk2-fix-failing-test.patch
> @@ -0,0 +1,39 @@
> +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

Thanks for investigating.  The patch did not apply for me on
core-updates, so I had to do the gnu/local.mk change "manually".

> +
> +---
> + 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

Maybe we should rename this patch to more accurately reflect what's
going on?  Something like "gtk+2-abi-check-ignore-glib.patch".  WDYT?

Regardless I've pushed this as 92b61d3e1bb50f0c1d087bc8d57cc00c3ce360df.

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 487 bytes --]

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2017-12-07 17:03 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-12-05 19:50 [bug#29580] [PATCH] gnu: gtk+-2: Fix failing test Gábor Boskovits
     [not found] ` <handler.29580.B.151250347132722.ack@debbugs.gnu.org>
2017-12-05 19:59   ` [bug#29580] Acknowledgement ([PATCH] gnu: gtk+-2: Fix failing test.) Gábor Boskovits
2017-12-05 23:26 ` [bug#29580] [PATCH] gnu: gtk+-2: Fix failing test Danny Milosavljevic
2017-12-06 14:19 ` Gábor Boskovits
2017-12-06 19:41   ` Danny Milosavljevic
2017-12-07 17:02   ` bug#29580: " Marius Bakke

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).