summaryrefslogtreecommitdiff
path: root/libre/abiword-libre/PKGBUILD
blob: b49c27a84c346cd4e419e34c505377529cacbdee (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
# $Id: PKGBUILD 209913 2014-04-08 14:24:40Z andyrtr $
# Contributor (Arch): Giovanni Scafora <giovanni@archlinux.org>
# Contributor (Arch): Maël Lavault <moimael@neuf.fr>
# Maintainer: André Silva <emulatorman@parabola.nu>

_pkgbase=abiword
pkgbase=abiword-libre
pkgname=('abiword-libre' 'abiword-libre-plugins')
pkgver=3.0.0
pkgrel=2
arch=('i686' 'x86_64' 'mips64el')
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
        liberation-fonts.patch)
md5sums=('8d9c41cff3a8fbef8d0c835c65600e65'
         'c3336f5ac7d227ff755c7e42459f20e1'
         'e7ef4d436469ae4b24b0f784b09ab023')

prepare() {
  cd $_pkgbase-$pkgver

  # Replace nonfree fonts support to liberation fonts
  patch -Np1 -i "${srcdir}/liberation-fonts.patch"
}

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-libre() {
  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-libre-plugins')
  conflicts=("abiword-libre-plugins<${pkgver}-${pkgrel}" 'abiword')
  replaces=('abiword')
  provides=("abiword=$pkgver")

  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-libre-plugins() {
  pkgdesc='Additional plugins for Abiword, without nonfree fonts support'
  depends=("abiword-libre=${pkgver}-${pkgrel}" 'loudmouth' 'libwpg' 'libwmf' 'link-grammar' 
           'gtkmathview' 'aiksaurus' 'libxslt' 'libsoup' 'libots' 'libgsf' 'psiconv')
  conflicts=('abiword-plugins')
  replaces=('abiword-plugins')
  provides=("abiword-plugins=$pkgver")

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