# $Id: PKGBUILD 209914 2014-04-08 14:25:03Z andyrtr $
# Contributor: Giovanni Scafora <giovanni@archlinux.org>
# Contributor: Maël Lavault <moimael@neuf.fr>

pkgbase=abiword
pkgname=('abiword' 'abiword-plugins')
pkgver=3.0.0
pkgrel=2
arch=('i686' 'x86_64')
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')
options=('!makeflags')
source=(http://abisource.com/downloads/$pkgbase/$pkgver/source/$pkgbase-$pkgver.tar.gz
        fix_crash_saving_pdf.patch)
md5sums=('8d9c41cff3a8fbef8d0c835c65600e65'
         'c3336f5ac7d227ff755c7e42459f20e1')

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>

  # fix FS#39652 - http://bugzilla.abisource.com/show_bug.cgi?id=13586#c2
  patch -Np2 -i ${srcdir}/fix_crash_saving_pdf.patch

  ./configure --prefix=/usr \
    --enable-shared \
    --disable-static \
    --enable-clipart \
    --enable-templates \
    --disable-builtin-plugins \
    --enable-plugins \
    --disable-collab-backend-service \
    --disable-collab-backend-tcp
  make
}

package_abiword() {
  pkgdesc='Fully-featured word processor'
  depends=('fribidi' 'wv' 'goffice' 'librsvg' 'enchant' 'desktop-file-utils'
           'redland' 'libical' 'gtk-update-icon-cache')
  install=$pkgname.install
  optdepends=('abiword-plugins')
  conflicts=("abiword-plugins<${pkgver}-${pkgrel}")

  cd $pkgbase-$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'
  depends=("abiword=${pkgver}-${pkgrel}" 'loudmouth' 'libwpg' 'libwmf' 'link-grammar' 
           'gtkmathview' 'aiksaurus' 'libxslt' 'libsoup' 'libots' 'libgsf' 'psiconv')

  install -dm755 ${pkgdir}/usr/lib/abiword-${pkgver%.*}
  mv ${srcdir}/_pluginsdir/plugins ${pkgdir}/usr/lib/abiword-${pkgver%.*}/
}
