commit: 62f5c51b744d94f8d5b2e07166a18dd192c0c9c9 Author: Denis Dupeyron <calchan <AT> gentoo <DOT> org> AuthorDate: Fri Aug 12 18:19:40 2016 +0000 Commit: Denis Dupeyron <calchan <AT> gentoo <DOT> org> CommitDate: Fri Aug 12 18:20:10 2016 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=62f5c51b
x11-libs/guile-gtk: fix bugs #577630 and #590786. Package-Manager: portage-2.3.0 .../guile-gtk/files/2.1_migrate_gh_functions.patch | 60 ++++++++++++++++++++++ x11-libs/guile-gtk/guile-gtk-2.1-r3.ebuild | 49 ++++++++++++++++++ 2 files changed, 109 insertions(+) diff --git a/x11-libs/guile-gtk/files/2.1_migrate_gh_functions.patch b/x11-libs/guile-gtk/files/2.1_migrate_gh_functions.patch new file mode 100644 index 0000000..5a19487 --- /dev/null +++ b/x11-libs/guile-gtk/files/2.1_migrate_gh_functions.patch @@ -0,0 +1,60 @@ +diff -ur guile-gtk-2.1.orig/glade/glade-support.c guile-gtk-2.1/glade/glade-support.c +--- guile-gtk-2.1.orig/glade/glade-support.c 2016-08-12 12:00:45.894290499 -0600 ++++ guile-gtk-2.1/glade/glade-support.c 2016-08-12 12:02:33.186666585 -0600 +@@ -17,7 +17,6 @@ + + #include <glade/glade-xml.h> + #include <libguile.h> +-#include <guile/gh.h> + + #include "config.h" + #include "guile-gtk.h" +@@ -83,7 +82,7 @@ + sgtk_protshell *protshell; + GClosure *closure; + +- cb = scm_internal_cwdr ((scm_t_catch_body) gh_eval_str, (char*) handler_name, ++ cb = scm_internal_cwdr ((scm_t_catch_body) scm_c_eval_string, (char*) handler_name, + scm_handle_by_message_noexit, "glade", + &stack_item); + +diff -ur guile-gtk-2.1.orig/gtk-gl/gdk-gl-support.c guile-gtk-2.1/gtk-gl/gdk-gl-support.c +--- guile-gtk-2.1.orig/gtk-gl/gdk-gl-support.c 2016-08-12 12:00:45.894290499 -0600 ++++ guile-gtk-2.1/gtk-gl/gdk-gl-support.c 2016-08-12 12:02:19.530121760 -0600 +@@ -19,7 +19,6 @@ + #include <gtkgl/gdkgl.h> + + #include <libguile.h> +-#include <guile/gh.h> + + typedef struct { + char* name; +@@ -100,7 +99,7 @@ + if (! SCM_INUMP (s_value)) + goto error; + +- *aptr++ = gh_scm2int (s_value); ++ *aptr++ = scm_to_int (s_value); + } + } + } +diff -ur guile-gtk-2.1.orig/guile-gtk.c guile-gtk-2.1/guile-gtk.c +--- guile-gtk-2.1.orig/guile-gtk.c 2016-08-12 12:00:45.890957197 -0600 ++++ guile-gtk-2.1/guile-gtk.c 2016-08-12 12:01:59.346968496 -0600 +@@ -28,7 +28,6 @@ + #include <gdk/gdkx.h> + + #include <libguile.h> +-#include <guile/gh.h> + #include <libguile/dynl.h> + #include <libguile/tags.h> + +@@ -2196,7 +2195,7 @@ + #if 0 + /* Gone in Gtk 2 */ + case GTK_TYPE_CALLBACK: +- return gh_procedure_p (obj); ++ return scm_is_true (scm_procedure_p (obj)); + #endif + case G_TYPE_OBJECT: + return sgtk_is_a_gtkobj (type, obj); diff --git a/x11-libs/guile-gtk/guile-gtk-2.1-r3.ebuild b/x11-libs/guile-gtk/guile-gtk-2.1-r3.ebuild new file mode 100644 index 0000000..c24b3ad --- /dev/null +++ b/x11-libs/guile-gtk/guile-gtk-2.1-r3.ebuild @@ -0,0 +1,49 @@ +# Copyright 1999-2016 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +AUTOTOOLS_AUTORECONF=true +WANT_AUTOMAKE=1.9 + +inherit autotools-utils virtualx + +DESCRIPTION="GTK+ bindings for guile" +HOMEPAGE="https://www.gnu.org/software/guile-gtk/" +SRC_URI="mirror://gnu/guile-gtk/${P}.tar.gz" + +LICENSE="GPL-3" +SLOT="0" +KEYWORDS="~amd64 ~ppc ~x86 ~amd64-linux ~x86-linux" +IUSE="" + +RDEPEND=" + >=dev-scheme/guile-2[deprecated(+)] + x11-libs/gtk+:2 + gnome-base/libglade:2.0 + >=x11-libs/gtkglarea-1.90:2" +DEPEND="${RDEPEND}" + +PATCHES=( + "${FILESDIR}"/${PN}-2.0-g-object-ref.diff + "${FILESDIR}"/${PV}-prll-install.patch + "${FILESDIR}"/${PV}-brokentest.patch + "${FILESDIR}"/${PV}_migrate_gh_functions.patch +) + +src_prepare() { + sed -i 's/AM_CONFIG_HEADER/AC_CONFIG_HEADERS/g' configure.ac || die + autotools-utils_src_prepare +} + +src_test() { + cd "${BUILD_DIR}" || die + Xemake check +} + +src_install() { + autotools-utils_src_install + insinto /usr/share/doc/${PF}/ + doins -r examples +}