summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--libre/abiword/PKGBUILD68
-rw-r--r--libre/abiword/enchant-2.1.patch29
-rw-r--r--libre/abiword/libical-deprecated.patch13
3 files changed, 86 insertions, 24 deletions
diff --git a/libre/abiword/PKGBUILD b/libre/abiword/PKGBUILD
index 36b1f9a42..69a11dfa4 100644
--- a/libre/abiword/PKGBUILD
+++ b/libre/abiword/PKGBUILD
@@ -1,23 +1,27 @@
-# $Id: PKGBUILD 284775 2016-12-25 20:26:42Z felixonmars $
+# Maintainer: Andreas Grapentin <andreas@grapentin.org>
# Maintainer (Arch): Jan de Groot <jgc@archlinux.org>
+# Contributor: André Silva <emulatorman@hyperbola.info>
# Contributor (Arch): Giovanni Scafora <giovanni@archlinux.org>
# Contributor (Arch): Maël Lavault <moimael@neuf.fr>
-# Maintainer: André Silva <emulatorman@hyperbola.info>
pkgname=abiword
+
pkgver=3.0.2
-pkgrel=5.parabola1
-pkgdesc='Fully-featured word processor, without Google search engine and nonfree fonts support'
-arch=('i686' 'x86_64' 'armv7h')
-license=('GPL')
-url='http://www.abisource.com'
-depends=('fribidi' 'wv' 'goffice' 'librsvg' 'enchant' 'desktop-file-utils'
- 'redland' 'libical' 'gtk-update-icon-cache' 'loudmouth' 'libwpg' 'libwps' 'libwmf' 'link-grammar'
- 'gtkmathview' 'aiksaurus' 'libxslt' 'libsoup' 'libots' 'libgsf' 'psiconv')
-makedepends=('pkgconfig' 'asio' 'boost' 'gobject-introspection' 'libwpd' 'libwps' 'python2-gobject' 'python-gobject')
-conflicts=('abiword-plugins' 'abiword-libre')
-replaces=('abiword-plugins' 'abiword-libre')
-options=('!makeflags')
+pkgrel=5.parabola2
+arch=(i686 x86_64 armv7h)
+
+pkgdesc="Fully-featured word processor, without Google search engine and nonfree fonts support"
+url="http://www.abisource.com"
+license=(GPL)
+
+depends=(fribidi wv goffice librsvg enchant desktop-file-utils
+ redland libical gtk-update-icon-cache loudmouth libwpg libwps libwmf link-grammar
+ gtkmathview aiksaurus libxslt libsoup libots libgsf psiconv)
+makedepends=(pkgconfig asio boost gobject-introspection libwpd libwps python2-gobject python-gobject)
+conflicts=(abiword-plugins abiword-libre)
+replaces=(abiword-plugins abiword-libre)
+options=(!makeflags)
+
source=(http://abisource.com/downloads/$pkgname/$pkgver/source/$pkgname-$pkgver.tar.gz
abiword-3.0.0-librevenge.patch
abiword-3.0.1-libwps-0.4.patch
@@ -25,7 +29,9 @@ source=(http://abisource.com/downloads/$pkgname/$pkgver/source/$pkgname-$pkgver.
command-plugin.m4
python-override.patch
bug13815.patch
- liberation-fonts.patch)
+ liberation-fonts.patch
+ enchant-2.1.patch
+ libical-deprecated.patch)
sha256sums=('afbfd458fd02989d8b0c6362ba8a4c14686d89666f54cfdb5501bd2090cf3522'
'77b52a3722096cec3bfbe4fff3802f51b6c9e0ff7aaa30028c29825fd4e6a65f'
'f1375b2ab7af2959717cba0259ba546c8e75ef849e84263bdc253019e849cb2a'
@@ -33,30 +39,38 @@ sha256sums=('afbfd458fd02989d8b0c6362ba8a4c14686d89666f54cfdb5501bd2090cf3522'
'2f26826e9d59d80dacd0dae4aceb815804eaa75954e47507a0897794f33e45be'
'dba1e3265cd42589f17b41fea1a39c8aa4b83c7203b9d5944b578d0ff9c858be'
'05f2544a177d6f58424af9045c26e82aca64938d0daf00f43f6b99a2abf64496'
- '8a0b6e444e937924743f95c747cbe395a30fb8677a010e60c973b9039e258079')
+ '8a0b6e444e937924743f95c747cbe395a30fb8677a010e60c973b9039e258079'
+ '444dc2aadea3c80310a509b690097541573f6d2652c573d04da66a0f385fcfb2'
+ 'fe6eec4129777117bbfd5fa12d02208e430c8a3b96a54dcf8574ce800f240489')
prepare() {
cd $pkgname-$pkgver
# fix build with librevenge based import filters
- patch -Np0 -i ../abiword-3.0.0-librevenge.patch
+ patch -Np0 -i $srcdir/abiword-3.0.0-librevenge.patch
# Fix libwpd 0.4 detection
- patch -Np1 -i ../abiword-3.0.1-libwps-0.4.patch
+ patch -Np1 -i $srcdir/abiword-3.0.1-libwps-0.4.patch
# Fix python override code to work with Python 3.x
- patch -Np1 -i ../python-override.patch
+ patch -Np1 -i $srcdir/python-override.patch
# Fix black on black (FS#51667)
# http://bugzilla.abisource.com/show_bug.cgi?id=13815
- patch -Np1 -i ../bug13815.patch
+ patch -Np1 -i $srcdir/bug13815.patch
# Replace nonfree fonts support to liberation fonts
- patch -Np1 -i ../liberation-fonts.patch
+ patch -Np1 -i $srcdir/liberation-fonts.patch
+
+ # fix build against enchant-2.1
+ patch -Np1 -i $srcdir/enchant-2.1.patch
+
+ # fix build against libical
+ patch -Np1 -i $srcdir/libical-deprecated.patch
# Install missing m4 file
- install -m644 ../aiksaurus-plugin.m4 plugins/aiksaurus/plugin.m4
- install -m644 ../command-plugin.m4 plugins/command/plugin.m4
+ install -m644 $srcdir/aiksaurus-plugin.m4 plugins/aiksaurus/plugin.m4
+ install -m644 $srcdir/command-plugin.m4 plugins/command/plugin.m4
# Generate m4 file for configure
find plugins -name plugin.m4 | xargs cat > plugin-configure.m4
@@ -68,9 +82,11 @@ prepare() {
build() {
cd $pkgname-$pkgver
+
# `--enable-plugins` has the complete list of plugins, except for
# 'command', 'gda', 'google', and 'rsvg'.
- ./configure --prefix=/usr \
+ ./configure \
+ --prefix=/usr \
--enable-shared \
--disable-static \
--enable-clipart \
@@ -82,15 +98,19 @@ build() {
passepartout pdb pdf presentation psion s5 sdw t602 urldict \
wikipedia wmf wml wordperfect wpg xslfo" \
--enable-introspection
+
sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool
+
make
}
package() {
cd $pkgname-$pkgver
+
make DESTDIR="$pkgdir" install
cd src/gi-overrides
sed -i 's/python -c/python2 -c/' Makefile
+
make DESTDIR="$pkgdir" PYTHON=python2 install
}
diff --git a/libre/abiword/enchant-2.1.patch b/libre/abiword/enchant-2.1.patch
new file mode 100644
index 000000000..010aac100
--- /dev/null
+++ b/libre/abiword/enchant-2.1.patch
@@ -0,0 +1,29 @@
+--- abiword-3.0.2/src/af/xap/xp/enchant_checker.cpp.orig 2013-04-07 13:53:03.000000000 +0000
++++ abiword-3.0.2/src/af/xap/xp/enchant_checker.cpp 2017-11-19 22:54:41.236180298 +0000
+@@ -127,7 +127,7 @@
+ pvSugg->addItem (ucszSugg);
+ }
+
+- enchant_dict_free_suggestions (m_dict, suggestions);
++ enchant_dict_free_string_list (m_dict, suggestions);
+ }
+
+ return pvSugg;
+@@ -139,7 +139,7 @@
+
+ if (word && len) {
+ UT_UTF8String utf8 (word, len);
+- enchant_dict_add_to_personal (m_dict, utf8.utf8_str(), utf8.byteLength());
++ enchant_dict_add (m_dict, utf8.utf8_str(), utf8.byteLength());
+ return true;
+ }
+ return false;
+@@ -150,7 +150,7 @@
+ UT_return_val_if_fail (m_dict, false);
+
+ UT_UTF8String ignore (toCorrect, toCorrectLen);
+- return enchant_dict_is_in_session (m_dict, ignore.utf8_str(), ignore.byteLength()) != 0;
++ return enchant_dict_is_added (m_dict, ignore.utf8_str(), ignore.byteLength()) != 0;
+ }
+
+ void EnchantChecker::ignoreWord (const UT_UCSChar *toCorrect, size_t toCorrectLen)
diff --git a/libre/abiword/libical-deprecated.patch b/libre/abiword/libical-deprecated.patch
new file mode 100644
index 000000000..9ca15bee1
--- /dev/null
+++ b/libre/abiword/libical-deprecated.patch
@@ -0,0 +1,13 @@
+--- abiword-3.0.2/src/text/ptbl/xp/pd_DocumentRDF.cpp.orig 2015-04-02 03:09:20.000000000 +0000
++++ abiword-3.0.2/src/text/ptbl/xp/pd_DocumentRDF.cpp 2017-11-19 22:57:49.533304878 +0000
+@@ -2269,8 +2269,8 @@
+ icalcomponent_set_uid( c, m_uid.c_str() );
+ icalcomponent_set_location( c, m_location.c_str() );
+ icalcomponent_set_description( c, m_desc.c_str() );
+- icalcomponent_set_dtstart( c, icaltime_from_timet( m_dtstart, 0 ) );
+- icalcomponent_set_dtend( c, icaltime_from_timet( m_dtend, 0 ) );
++ icalcomponent_set_dtstart( c, icaltime_from_timet_with_zone( m_dtstart, 0, 0 ) );
++ icalcomponent_set_dtend( c, icaltime_from_timet_with_zone( m_dtend, 0, 0 ) );
+
+ char* data = icalcomponent_as_ical_string( c );
+ std::ofstream oss( filename.c_str() );