app-office/abiword: Fix regression with gtk+-3.22 (#601300), try to add references...
authorPacho Ramos <pacho@gentoo.org>
Sun, 22 Jan 2017 12:33:32 +0000 (13:33 +0100)
committerPacho Ramos <pacho@gentoo.org>
Sun, 22 Jan 2017 12:39:07 +0000 (13:39 +0100)
Package-Manager: Portage-2.3.3, Repoman-2.3.1

app-office/abiword/abiword-3.0.2-r1.ebuild [new file with mode: 0644]
app-office/abiword/files/abiword-3.0.2-fix-black-drawing-regression.patch [new file with mode: 0644]

diff --git a/app-office/abiword/abiword-3.0.2-r1.ebuild b/app-office/abiword/abiword-3.0.2-r1.ebuild
new file mode 100644 (file)
index 0000000..e02789f
--- /dev/null
@@ -0,0 +1,152 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=6
+GNOME2_EAUTORECONF="yes"
+GNOME2_LA_PUNT="yes"
+
+inherit gnome2
+
+DESCRIPTION="Fully featured yet light and fast cross platform word processor"
+HOMEPAGE="http://www.abisource.com/"
+SRC_URI="http://www.abisource.com/downloads/${PN}/${PV}/source/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="2"
+KEYWORDS="~alpha ~amd64 ~arm ~mips ~x86 ~amd64-linux ~x86-linux"
+
+IUSE="calendar collab cups debug eds +goffice grammar +introspection latex map math ots +plugins readline redland spell wordperfect wmf thesaurus"
+# You need 'plugins' enabled if want to enable the extra plugins
+REQUIRED_USE="!plugins? ( !collab !grammar !latex !math !ots !readline !thesaurus !wordperfect !wmf )"
+
+RDEPEND="
+       >=app-text/wv-1.2
+       >=dev-libs/fribidi-0.10.4
+       >=dev-libs/glib-2.16:2
+       >=dev-libs/libgcrypt-1.4.5:0=
+       dev-libs/libxslt
+       >=gnome-base/librsvg-2.16:2
+       >=gnome-extra/libgsf-1.14.18:=
+       >=media-libs/libpng-1.2:0=
+       virtual/jpeg:0
+       >=x11-libs/cairo-1.10[X]
+       >=x11-libs/gtk+-3.0.8:3[cups?]
+       calendar? ( >=dev-libs/libical-0.46:= )
+       eds? ( >=gnome-extra/evolution-data-server-3.6.0:= )
+       goffice? ( >=x11-libs/goffice-0.10.2:0.10 )
+       introspection? ( >=dev-libs/gobject-introspection-1.0.0:= )
+       map? ( >=media-libs/libchamplain-0.12:0.12 )
+       plugins? (
+               collab? (
+                       >=dev-libs/libxml2-2.4:2
+                       >=net-libs/loudmouth-1
+                       net-libs/libsoup:2.4
+                       net-libs/gnutls:= )
+               grammar? ( >=dev-libs/link-grammar-4.2.1 )
+               math? ( >=x11-libs/gtkmathview-0.7.5 )
+               ots? ( >=app-text/ots-0.5-r1 )
+               readline? ( sys-libs/readline:0= )
+               thesaurus? ( >=app-text/aiksaurus-1.2[gtk] )
+               wordperfect? (
+                       app-text/libwpd:0.10
+                       app-text/libwpg:0.3 )
+               wmf? ( >=media-libs/libwmf-0.2.8 )
+       )
+       redland? (
+               >=dev-libs/redland-1.0.10
+               >=dev-libs/rasqal-0.9.17 )
+       spell? ( >=app-text/enchant-1.2 )
+       !<app-office/abiword-plugins-2.8
+"
+DEPEND="${RDEPEND}
+       dev-lang/perl
+       >=dev-libs/boost-1.40.0
+       virtual/pkgconfig
+       collab? ( dev-cpp/asio )
+"
+
+PATCHES=(
+       # http://bugzilla.abisource.com/show_bug.cgi?id=13842
+       "${FILESDIR}"/${PN}-2.8.3-desktop.patch
+
+       # http://bugzilla.abisource.com/show_bug.cgi?id=13843
+       "${FILESDIR}"/${PN}-2.6.0-boolean.patch
+
+       # http://bugzilla.abisource.com/show_bug.cgi?id=13844
+       "${FILESDIR}"/${PN}-3.0.0-librevenge.patch
+
+       # http://bugzilla.abisource.com/show_bug.cgi?id=13845
+       "${FILESDIR}"/${PN}-3.0.0-link-grammar-5-second.patch
+
+       # http://bugzilla.abisource.com/show_bug.cgi?id=13846
+       "${FILESDIR}"/${PN}-3.0.0-libwp.patch
+       "${FILESDIR}"/${PN}-3.0.1-libwps-0.4.patch
+       "${FILESDIR}"/${PN}-3.0.1-fixwps.patch
+
+       # http://bugzilla.abisource.com/show_bug.cgi?id=13847
+       "${FILESDIR}"/${PN}-3.0.2-fix-installing-readme.patch
+
+       # http://bugzilla.abisource.com/show_bug.cgi?id=13841
+       "${FILESDIR}"/${PN}-3.0.2-fix-nullptr-c++98.patch
+
+       # http://bugzilla.abisource.com/show_bug.cgi?id=13815
+       "${FILESDIR}"/${PN}-3.0.2-fix-black-drawing-regression.patch
+)
+
+src_configure() {
+       local plugins=()
+
+       if use plugins; then
+               # Plugins depending on libgsf
+               plugins=(t602 docbook clarisworks wml kword hancom openwriter pdf
+                       loadbindings mswrite garble pdb applix opendocument sdw xslfo)
+
+               # Plugins depending on librsvg
+               plugins+=(svg)
+
+               # Plugins not depending on anything
+               plugins+=(gimp bmp freetranslation iscii s5 babelfish opml eml wikipedia
+                       gdict passepartout google presentation urldict hrtext mif openxml)
+
+               # inter7eps: eps.h
+               # libtidy: gsf + tidy.h
+               # paint: windows only ?
+               use collab && plugins+=(collab)
+               use goffice && plugins+=(goffice)
+               use latex && plugins+=(latex)
+               use math && plugins+=(mathview)
+               use ots && plugins+=(ots)
+               # psion: >=psiconv-0.9.4
+               use readline && plugins+=(command)
+               use thesaurus && plugins+=(aiksaurus)
+               use wmf && plugins+=(wmf)
+               # wordperfect: >=wpd-0.9 >=wpg-0.2
+               use wordperfect && plugins+=(wpg)
+       fi
+
+       gnome2_src_configure \
+               --enable-plugins="${plugins[*]}" \
+               --disable-static \
+               --disable-default-plugins \
+               --disable-builtin-plugins \
+               --disable-collab-backend-telepathy \
+               --enable-clipart \
+               --enable-statusbar \
+               --enable-templates \
+               --with-gio \
+               --without-gnomevfs \
+               --without-gtk2 \
+               $(use_enable debug) \
+               $(use_with goffice goffice) \
+               $(use_with calendar libical) \
+               $(use_enable cups print) \
+               $(use_enable collab collab-backend-xmpp) \
+               $(use_enable collab collab-backend-tcp) \
+               $(use_enable collab collab-backend-service) \
+               $(use_with eds evolution-data-server) \
+               $(use_enable introspection) \
+               $(use_with map champlain) \
+               $(use_with redland) \
+               $(use_enable spell)
+}
diff --git a/app-office/abiword/files/abiword-3.0.2-fix-black-drawing-regression.patch b/app-office/abiword/files/abiword-3.0.2-fix-black-drawing-regression.patch
new file mode 100644 (file)
index 0000000..dbce8c6
--- /dev/null
@@ -0,0 +1,54 @@
+From cec2fda355b67b5b814a803c5ed128c425cbb030 Mon Sep 17 00:00:00 2001
+From: Hubert Figuiere <hub@figuiere.net>
+Date: Thu, 8 Dec 2016 02:03:10 +0000
+Subject: [PATCH] Bug 13815 - draw event should return TRUE
+
+This fix the black drawing regression with Gtk3.22
+
+git-svn-id: svn+ssh://svn.abisource.com/svnroot/abiword/branches/ABI-3-0-0-STABLE@35394 bcba8976-2d24-0410-9c9c-aab3bd5fdfd6
+---
+ src/af/xap/gtk/xap_UnixFrameImpl.cpp | 6 +++---
+ src/af/xap/gtk/xap_UnixFrameImpl.h   | 4 ++--
+ 2 files changed, 5 insertions(+), 5 deletions(-)
+
+diff --git a/src/af/xap/gtk/xap_UnixFrameImpl.cpp b/src/af/xap/gtk/xap_UnixFrameImpl.cpp
+index 780000e..10f8e00 100644
+--- a/src/af/xap/gtk/xap_UnixFrameImpl.cpp
++++ b/src/af/xap/gtk/xap_UnixFrameImpl.cpp
+@@ -1208,9 +1208,9 @@ gint XAP_UnixFrameImpl::_fe::delete_event(GtkWidget * w, GdkEvent * /*event*/, g
+ }
+ #if GTK_CHECK_VERSION(3,0,0)
+-gint XAP_UnixFrameImpl::_fe::draw(GtkWidget * w, cairo_t * cr)
++gboolean XAP_UnixFrameImpl::_fe::draw(GtkWidget * w, cairo_t * cr)
+ #else
+-gint XAP_UnixFrameImpl::_fe::expose(GtkWidget * w, GdkEventExpose* pExposeEvent)
++gboolean XAP_UnixFrameImpl::_fe::expose(GtkWidget * w, GdkEventExpose* pExposeEvent)
+ #endif
+ {
+       XAP_UnixFrameImpl * pUnixFrameImpl = static_cast<XAP_UnixFrameImpl *>(g_object_get_data(G_OBJECT(w), "user_data"));
+@@ -1243,7 +1243,7 @@ gint XAP_UnixFrameImpl::_fe::expose(GtkWidget * w, GdkEventExpose* pExposeEvent)
+               pView->draw(&rClip);
+ #endif
+       }
+-      return FALSE;
++      return TRUE;
+ }
+ static bool bScrollWait = false;
+diff --git a/src/af/xap/gtk/xap_UnixFrameImpl.h b/src/af/xap/gtk/xap_UnixFrameImpl.h
+index 30ee5d8..a0ff57f 100644
+--- a/src/af/xap/gtk/xap_UnixFrameImpl.h
++++ b/src/af/xap/gtk/xap_UnixFrameImpl.h
+@@ -152,9 +152,9 @@ class XAP_UnixFrameImpl : public XAP_FrameImpl
+                       static gint key_release_event(GtkWidget* w, GdkEventKey* e);
+                       static gint delete_event(GtkWidget * w, GdkEvent * /*event*/, gpointer /*data*/);
+ #if GTK_CHECK_VERSION(3,0,0)
+-                      static gint draw(GtkWidget * w, cairo_t * cr);
++                      static gboolean draw(GtkWidget * w, cairo_t * cr);
+ #else
+-                      static gint expose(GtkWidget * w, GdkEventExpose* pExposeEvent);
++                      static gboolean expose(GtkWidget * w, GdkEventExpose* pExposeEvent);
+ #endif
+                       static gint do_ZoomUpdate( gpointer /* xap_UnixFrame * */ p);
+                       static void vScrollChanged(GtkAdjustment * w, gpointer /*data*/);