diff options
Diffstat (limited to 'libre/abiword')
-rw-r--r-- | libre/abiword/PKGBUILD | 115 | ||||
-rw-r--r-- | libre/abiword/abiword-3.0.0-link-grammar-5-second.patch | 35 | ||||
-rw-r--r-- | libre/abiword/abiword-3.0.0-link-grammar-5.patch | 45 | ||||
-rw-r--r-- | libre/abiword/aiksaurus-plugin.m4 | 46 | ||||
-rw-r--r-- | libre/abiword/link-grammar-panic.patch | 10 |
5 files changed, 179 insertions, 72 deletions
diff --git a/libre/abiword/PKGBUILD b/libre/abiword/PKGBUILD index 70eccc2ca..cf7aff513 100644 --- a/libre/abiword/PKGBUILD +++ b/libre/abiword/PKGBUILD @@ -1,106 +1,77 @@ -# $Id: PKGBUILD 215017 2014-06-11 14:14:55Z jgc $ +# $Id: PKGBUILD 231659 2015-02-17 13:12:32Z jgc $ +# Maintainer (Arch): Jan de Groot <jgc@archlinux.org> # Contributor (Arch): Giovanni Scafora <giovanni@archlinux.org> # Contributor (Arch): Maël Lavault <moimael@neuf.fr> # Maintainer: André Silva <emulatorman@parabola.nu> -pkgbase=abiword -pkgname=('abiword' 'abiword-plugins') -pkgver=3.0.0 -pkgrel=3.parabola1 +pkgname=abiword +pkgver=3.0.1 +pkgrel=1.parabola1 arch=('i686' 'x86_64' 'mips64el') +pkgdesc='Fully-featured word processor, without nonfree fonts support' license=('GPL') url='http://www.abisource.com' -makedepends=('pkgconfig' 'asio' 'boost' 'fribidi' 'goffice' 'libwmf' 'wv' - 'link-grammar' 'gtkmathview' 'aiksaurus' 'libxslt' 'enchant' - 'libots' 'libwpg' 'librsvg' 'loudmouth' 'libsoup' 'psiconv' - 'redland' 'libical') +depends=('fribidi' 'wv' 'goffice' 'librsvg' 'enchant' 'desktop-file-utils' + 'redland' 'libical' 'gtk-update-icon-cache' 'loudmouth' 'libwpg' 'libwmf' 'link-grammar' + 'gtkmathview' 'aiksaurus' 'libxslt' 'libsoup' 'libots' 'libgsf' 'psiconv') +makedepends=('pkgconfig' 'asio' 'boost' 'gobject-introspection' 'python2' 'libwpd') +conflicts=('abiword-plugins' 'abiword-libre') +replaces=('abiword-plugins' 'abiword-libre') +install=abiword.install options=('!makeflags') -source=(http://abisource.com/downloads/$pkgbase/$pkgver/source/$pkgbase-$pkgver.tar.gz - fix_crash_saving_pdf.patch +source=(http://abisource.com/downloads/$pkgname/$pkgver/source/$pkgname-$pkgver.tar.gz abiword-3.0.0-librevenge.patch + abiword-3.0.0-link-grammar-5.patch + abiword-3.0.0-link-grammar-5-second.patch + link-grammar-panic.patch + aiksaurus-plugin.m4 liberation-fonts.patch) -md5sums=('8d9c41cff3a8fbef8d0c835c65600e65' - 'c3336f5ac7d227ff755c7e42459f20e1' - '6fc2d653d3b814bbfd9b0d71c69c4796' - 'e7ef4d436469ae4b24b0f784b09ab023') +sha256sums=('e094f6fbf0afc5c5538b4894888e7c346f8ee8f49c9d24821dd696d0734865c6' + '77b52a3722096cec3bfbe4fff3802f51b6c9e0ff7aaa30028c29825fd4e6a65f' + '6d88800f1e16becd69ed93d5f070793a56b9f162f7d886c71756643bcaed7ef5' + 'd2c80da81a339634a7a4ee4cef12f7ee968f2c2a8c2f75533b6713b71f0d61fd' + '94d1e638f7b85123dc2282d2e59b982bde6ad0dbbe1b6b54351e610c5a0ea578' + '5f80a2f94f9929cdba9809c5e1a87cd5d537a2518bb879bfb9eab51a71c8dac1' + '8a0b6e444e937924743f95c747cbe395a30fb8677a010e60c973b9039e258079') prepare() { - cd $pkgbase-$pkgver + cd $pkgname-$pkgver - # fix FS#39652 - http://bugzilla.abisource.com/show_bug.cgi?id=13586#c2 - patch -Np2 -i ${srcdir}/fix_crash_saving_pdf.patch - # fix build with librevenge based import filters - patch -Np0 -i ${srcdir}/abiword-3.0.0-librevenge.patch + patch -Np0 -i ../abiword-3.0.0-librevenge.patch - # replace nonfree fonts support to liberation fonts - patch -Np1 -i "${srcdir}/liberation-fonts.patch" + # Fix build with recent versions of link-grammar + patch -Np1 -i ../abiword-3.0.0-link-grammar-5.patch + patch -Np1 -i ../abiword-3.0.0-link-grammar-5-second.patch + patch -Np0 -i ../link-grammar-panic.patch + # Replace nonfree fonts support to liberation fonts + patch -Np1 -i ../liberation-fonts.patch + + # Install missing m4 file + install -m644 ../aiksaurus-plugin.m4 plugins/aiksaurus/plugin.m4 + + # Generate m4 file for configure find plugins -name plugin.m4 | xargs cat > plugin-configure.m4 - - #aclocal -I m4 --install - #autoconf + libtoolize --force autoreconf -fi } build() { - cd $pkgbase-$pkgver - -# Collab plugin is somehow broken: -# part service -#In file included from ./../../../backends/service/xp/RealmConnection.h:33:0, -# from ./../../../backends/service/xp/AbiCollabSaveInterceptor.h:23, -# from ./../../../backends/service/xp/ServiceAccountHandler.h:33, -# from ServiceUnixAccountHandler.h:23, -# from ServiceUnixAccountHandler.cpp:20: -#./../../../core/sync/xp/SynchronizedQueue.h:32:1: error: expected class-name before '{' token -# { -# part tcp -#In file included from ./../../../backends/tcp/xp/IOServerHandler.h:29:0, -# from ./../../../backends/tcp/xp/TCPAccountHandler.h:25, -# from TCPUnixAccountHandler.h:22, -# from TCPUnixAccountHandler.cpp:20: -#./../../../backends/tcp/xp/Session.h:34:63: error: expected class-name before ',' token -# class Session : public Synchronizer, public boost::noncopyable, public boost::enable_shared_from_this<Session> - + cd $pkgname-$pkgver ./configure --prefix=/usr \ --enable-shared \ --disable-static \ --enable-clipart \ --enable-templates \ - --disable-builtin-plugins \ --enable-plugins \ - --disable-collab-backend-service \ - --disable-collab-backend-tcp + --enable-introspection make } -package_abiword() { - pkgdesc='Fully-featured word processor, without nonfree fonts support' - depends=('fribidi' 'wv' 'goffice' 'librsvg' 'enchant' 'desktop-file-utils' - 'redland' 'libical' 'gtk-update-icon-cache') - install=$pkgbase.install - optdepends=('abiword-plugins') - conflicts=("abiword-plugins<${pkgver}-${pkgrel}" 'abiword-libre') - replaces=('abiword-libre') - - cd $pkgbase-$pkgver +package() { + cd $pkgname-$pkgver make DESTDIR="$pkgdir" install - - # split out plugins, there's no Makefile target for a clean way - mkdir ${srcdir}/_pluginsdir - mv "$pkgdir"/usr/lib/abiword-${pkgver%.*}/plugins ${srcdir}/_pluginsdir -} - -package_abiword-plugins() { - pkgdesc='Additional plugins for Abiword, without nonfree fonts support' - depends=("abiword=${pkgver}-${pkgrel}" 'loudmouth' 'libwpg' 'libwmf' 'link-grammar' - 'gtkmathview' 'aiksaurus' 'libxslt' 'libsoup' 'libots' 'libgsf' 'psiconv') - conflicts=('abiword-libre-plugins') - replaces=('abiword-libre-plugins') - - install -dm755 ${pkgdir}/usr/lib/abiword-${pkgver%.*} - mv ${srcdir}/_pluginsdir/plugins ${pkgdir}/usr/lib/abiword-${pkgver%.*}/ } diff --git a/libre/abiword/abiword-3.0.0-link-grammar-5-second.patch b/libre/abiword/abiword-3.0.0-link-grammar-5-second.patch new file mode 100644 index 000000000..c471c749f --- /dev/null +++ b/libre/abiword/abiword-3.0.0-link-grammar-5-second.patch @@ -0,0 +1,35 @@ +--- abiword-3.0.0/plugins/grammar/linkgrammarwrap/LinkGrammarWrap.cpp.orig 2014-06-30 08:21:30.000000000 -0500 ++++ abiword-3.0.0/plugins/grammar/linkgrammarwrap/LinkGrammarWrap.cpp 2014-06-30 08:27:01.000000000 -0500 +@@ -220,6 +220,7 @@ bool LinkGrammarWrap::parseSentence(Piec + pErr = NULL; + } + ++#ifdef DEAD_DEBUG_CODE + // for(i=0; i< pT->m_vecGrammarErrors.getItemCount(); i++) + // { + // pErr = pT->m_vecGrammarErrors.getNthItem(i); +@@ -227,15 +228,10 @@ bool LinkGrammarWrap::parseSentence(Piec + // } + UT_UTF8String sErr = linkage_get_violation_name(linkage); + // UT_DEBUGMSG(("Top Level error message |%s|\n",sErr.utf8_str())); +- UT_sint32 count = linkage_get_num_sublinkages(linkage); + // + // Find linkages with violations + // +- for(i=0; i<count;i++) + { +- UT_sint32 iok = linkage_set_current_sublinkage(linkage, i); +- if(iok == 0) +- continue; + UT_sint32 j = 0; + UT_sint32 iNum = linkage_get_num_links(linkage); + for(j=0;j< iNum;j++) +@@ -252,6 +248,8 @@ bool LinkGrammarWrap::parseSentence(Piec + } + } + linkage_delete(linkage); ++#endif // DEAD_DEBUG_CODE ++ + for(i=0; i< vecMapOfWords.getItemCount(); i++) + { + AbiGrammarError * p = vecMapOfWords.getNthItem(i); diff --git a/libre/abiword/abiword-3.0.0-link-grammar-5.patch b/libre/abiword/abiword-3.0.0-link-grammar-5.patch new file mode 100644 index 000000000..bbf75f6ce --- /dev/null +++ b/libre/abiword/abiword-3.0.0-link-grammar-5.patch @@ -0,0 +1,45 @@ +--- abiword-3.0.0/plugins/grammar/linkgrammarwrap/LinkGrammarWrap.cpp.orig 2014-06-29 14:50:30.000000000 -0500 ++++ abiword-3.0.0/plugins/grammar/linkgrammarwrap/LinkGrammarWrap.cpp 2014-06-29 14:55:39.000000000 -0500 +@@ -145,12 +145,11 @@ bool LinkGrammarWrap::parseSentence(Piec + } + AbiGrammarError * pWordMap = new AbiGrammarError(); + pWordMap->m_iErrLow = iLow; +- pWordMap->m_iErrHigh = iLow + strlen(sentence_get_nth_word(sent, i)); ++ pWordMap->m_iErrHigh = iLow + strlen(linkage_get_word(linkage, i)); + pWordMap->m_iWordNum = i; + vecMapOfWords.addItem(pWordMap); + bool bNew = false; +- if(!sentence_nth_word_has_disjunction(sent, i)) +- { ++ + //UT_DEBUGMSG(("|%s| NULL LINK\n",sent->word[i].string)); + if(pErr == NULL) + { +@@ -167,7 +166,7 @@ bool LinkGrammarWrap::parseSentence(Piec + } + pErr = new AbiGrammarError(); + } +- iHigh = iLow + strlen(sentence_get_nth_word(sent, i)); ++ iHigh = iLow + strlen(linkage_get_word(linkage, i)); + pErr->m_iErrLow = iLow + iOff -1; + pErr->m_iErrHigh = iHigh + iOff -1; + if(pErr->m_iErrLow < 0) +@@ -188,7 +187,7 @@ bool LinkGrammarWrap::parseSentence(Piec + // + // Expand the sqiggle + // +- iHigh = iLow + strlen(sentence_get_nth_word(sent, i)) + iOff; ++ iHigh = iLow + strlen(linkage_get_word(linkage, i)) + iOff; + pErr->m_iErrHigh = iHigh; + if(pErr->m_iErrHigh < totlen-1) + { +@@ -196,8 +195,7 @@ bool LinkGrammarWrap::parseSentence(Piec + } + pErr->m_iWordNum = i; + } +- } +- iLow += strlen(sentence_get_nth_word(sent, i)); ++ iLow += strlen(linkage_get_word(linkage, i)); + } + // + // No NULL links but still an error , mark the whole sentence bad. diff --git a/libre/abiword/aiksaurus-plugin.m4 b/libre/abiword/aiksaurus-plugin.m4 new file mode 100644 index 000000000..c70a00383 --- /dev/null +++ b/libre/abiword/aiksaurus-plugin.m4 @@ -0,0 +1,46 @@ + +aiksaurus_pkgs="aiksaurus-1.0" +aiksaurus_gtk_pkgs="aiksaurusgtk3-1.0" +aiksaurus_deps="no" + +if test "$enable_aiksaurus" != ""; then + +PKG_CHECK_EXISTS([ $aiksaurus_pkgs ], +[ + aiksaurus_deps="yes" +], [ + test "$enable_aiksaurus" = "auto" && AC_MSG_WARN([aiksaurus plugin: dependencies not satisfied - $aiksaurus_pkgs]) +]) + +fi + +if test "$enable_aiksaurus" = "yes" || \ + test "$aiksaurus_deps" = "yes"; then + +use_builtin_aiksaurus_gtk="no" +if test "$TOOLKIT" = "gtk"; then +PKG_CHECK_EXISTS([ $aiksaurus_gtk_pkgs ], +[ + aiksaurus_pkgs="$aiksaurus_pkgs $aiksaurus_gtk_pkgs" +], [use_builtin_aiksaurus_gtk="yes"]) +fi + +if test "$enable_aiksaurus_builtin" = "yes"; then +AC_MSG_ERROR([aiksaurus plugin: static linking not supported]) +fi + +PKG_CHECK_MODULES(AIKSAURUS,[ $aiksaurus_pkgs ]) + + +test "$enable_aiksaurus" = "auto" && PLUGINS="$PLUGINS aiksaurus" + +AIKSAURUS_CFLAGS="$AIKSAURUS_CFLAGS "'${PLUGIN_CFLAGS}' +AIKSAURUS_LIBS="$AIKSAURUS_LIBS "'${PLUGIN_LIBS}' + +fi + +AM_CONDITIONAL([WITH_BUILTIN_AIKSAURUS_GTK],[ test "x$use_builtin_aiksaurus_gtk" = "xyes" ]) + +AC_SUBST([AIKSAURUS_CFLAGS]) +AC_SUBST([AIKSAURUS_LIBS]) + diff --git a/libre/abiword/link-grammar-panic.patch b/libre/abiword/link-grammar-panic.patch new file mode 100644 index 000000000..f33a802ff --- /dev/null +++ b/libre/abiword/link-grammar-panic.patch @@ -0,0 +1,10 @@ +--- plugins/grammar/linkgrammarwrap/LinkGrammarWrap.cpp.orig 2015-02-17 12:11:05.062973479 +0000 ++++ plugins/grammar/linkgrammarwrap/LinkGrammarWrap.cpp 2015-02-17 12:11:38.909495002 +0000 +@@ -87,7 +87,6 @@ + parse_options_set_min_null_count(m_Opts, 0); + parse_options_set_max_null_count(m_Opts, 0); + parse_options_set_islands_ok(m_Opts, 0); +- parse_options_set_panic_mode(m_Opts, TRUE); + parse_options_reset_resources(m_Opts); + UT_sint32 num_linkages = sentence_parse(sent, m_Opts); + bool res = (num_linkages >= 1); |