aboutsummaryrefslogtreecommitdiffstats
path: root/community/abiword
diff options
context:
space:
mode:
authorNatanael Copa <ncopa@alpinelinux.org>2017-12-25 12:33:46 +0000
committerNatanael Copa <ncopa@alpinelinux.org>2017-12-25 12:33:46 +0000
commit318ad331e239e410b199e29c82e3f412a1b5a1b8 (patch)
tree5a0df46daa6143420fddf71fe60b6bb2bf0b61d9 /community/abiword
parent50ecbf794e52b2cb2ed1ba07b83a11c80352a5bf (diff)
downloadaports-318ad331e239e410b199e29c82e3f412a1b5a1b8.tar.bz2
aports-318ad331e239e410b199e29c82e3f412a1b5a1b8.tar.xz
community/{goffice,abiword,gnumeric}: move from main
Diffstat (limited to 'community/abiword')
-rw-r--r--community/abiword/APKBUILD78
-rw-r--r--community/abiword/fix-black-drawing-regression.patch54
-rw-r--r--community/abiword/fix-nullptr-c++98.patch34
3 files changed, 166 insertions, 0 deletions
diff --git a/community/abiword/APKBUILD b/community/abiword/APKBUILD
new file mode 100644
index 0000000000..1651e290d2
--- /dev/null
+++ b/community/abiword/APKBUILD
@@ -0,0 +1,78 @@
+# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
+pkgname=abiword
+pkgver=3.0.2
+pkgrel=1
+pkgdesc="A fully-featured word processor"
+url="http://www.abisource.com"
+arch="all"
+license="GPL2+"
+makedepends="gtk+3.0-dev libgsf-dev enchant-dev fribidi-dev wv-dev
+ popt-dev libjpeg-turbo-dev librsvg-dev bzip2-dev goffice-dev pcre-dev
+ libxslt-dev"
+
+# openxml plugin
+makedepends="$makedepends boost-dev"
+
+# collab plugin
+makedepends="$makedepends gnutls-dev libsoup-dev dbus-glib-dev"
+
+subpackages="$pkgname-dev $pkgname-doc $pkgname-plugins"
+
+_plugins="applix babelfish bmp clarisworks collab docbook eml epub
+ freetranslation garble gdict gimp google hancom hrtext iscii kword
+ latex loadbindings mht mif mswrite openwriter openxml opml paint
+ passepartout pdb pdf presentation s5 sdw t602 urldict wikipedia wml
+ xslfo"
+
+for _i in $_plugins; do
+ subpackages="$subpackages $pkgname-plugin-$_i:$_i"
+done
+
+source="http://www.abisource.com/downloads/$pkgname/$pkgver/source/$pkgname-$pkgver.tar.gz
+ fix-black-drawing-regression.patch
+ fix-nullptr-c++98.patch"
+
+builddir="$srcdir"/$pkgname-$pkgver
+
+build() {
+ cd "$builddir"
+ export CXXFLAGS="$CXXFLAGS -std=gnu++98"
+ ./configure \
+ --build=$CBUILD \
+ --host=$CHOST \
+ --prefix=/usr \
+ --enable-shared \
+ --disable-static \
+ --enable-plugins
+ make
+}
+
+package() {
+ cd "$builddir"
+ make DESTDIR="$pkgdir" install
+}
+
+_do_plugin() {
+ local plugin="$1"
+ pkgdesc="Abiword $1 plugin"
+ local dir="usr/lib/abiword-${pkgver%.*}/plugins"
+ mkdir -p "$subpkgdir"/$dir
+ mv "$pkgdir"/$dir/$plugin.so "$subpkgdir"/$dir/
+}
+
+for _i in $_plugins; do
+ eval "$_i() { _do_plugin $_i; }"
+done
+
+plugins() {
+ pkgdesc="Abiword plugins, all of them"
+ depends=
+ for _i in $_plugins; do
+ depends="$depends $pkgname-plugin-$_i"
+ done
+ mkdir -p "$subpkgdir"
+}
+
+sha512sums="29ce9e80b3b85ab2933e7d39216771d8c4e05db5255eaed0cf8e1d032ffaac2cb1880bf24e754196ad5dae4969a1c2101ce4dc9c1db14604adc2f852b6a17fe3 abiword-3.0.2.tar.gz
+cae9a08047cd97d11acea25a2f0b0ca4e8e4556b462eb476507fa178a7412221839febfeb36bebf491bb94d53525c4584d86230f96c403a7ceb2dec4223be8fe fix-black-drawing-regression.patch
+fbfedad9b58ba44fac53142fae77dce499b9d3f01acb2967e6507b94a8206436240e924ae420c1b92f707a0e08df9874c8de034532032cf6d8df9b28dcd8a3cf fix-nullptr-c++98.patch"
diff --git a/community/abiword/fix-black-drawing-regression.patch b/community/abiword/fix-black-drawing-regression.patch
new file mode 100644
index 0000000000..dbce8c696d
--- /dev/null
+++ b/community/abiword/fix-black-drawing-regression.patch
@@ -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*/);
diff --git a/community/abiword/fix-nullptr-c++98.patch b/community/abiword/fix-nullptr-c++98.patch
new file mode 100644
index 0000000000..f09319693f
--- /dev/null
+++ b/community/abiword/fix-nullptr-c++98.patch
@@ -0,0 +1,34 @@
+Replace 'nullptr' by NULL in order to allow compiling in C++98 mode.
+See also: https://bugs.gentoo.org/show_bug.cgi?id=599618
+
+--- a/src/af/gr/gtk/gr_UnixCairoGraphics.cpp
++++ b/src/af/gr/gtk/gr_UnixCairoGraphics.cpp
+@@ -180,7 +180,7 @@
+ if (m_styleBg) {
+ g_object_unref(m_styleBg);
+ }
+- m_styleBg = XAP_GtkStyle_get_style(nullptr, "GtkButton"); // "button"
++ m_styleBg = XAP_GtkStyle_get_style(NULL, "GtkButton"); // "button"
+ // guess colours
+ // WHITE
+ GdkRGBA rgba2;
+@@ -627,7 +627,7 @@
+ _setProps();
+ cairo_save (m_cr);
+
+- GtkStyleContext *context = nullptr;
++ GtkStyleContext *context = NULL;
+ switch(c) {
+ case GR_Graphics::CLR3D_Background:
+ context = m_styleBg;
+--- a/src/wp/ap/xp/ap_Dialog_Spell.cpp
++++ b/src/wp/ap/xp/ap_Dialog_Spell.cpp
+@@ -251,7 +251,7 @@
+ UT_return_val_if_fail (m_Suggestions, false);
+
+ // get suggestions from spelling engine
+- const UT_GenericVector<UT_UCSChar*> *cpvEngineSuggestions = nullptr;
++ const UT_GenericVector<UT_UCSChar*> *cpvEngineSuggestions = NULL;
+
+ if (checker->checkWord(m_pWord, m_iWordLength) == SpellChecker::LOOKUP_FAILED)
+ {