# $Id: PKGBUILD 184364 2013-05-06 19:36:46Z foutrelis $
# Maintainer: Andrea Scarpino <andrea@archlinux.org>
# Contributor: Ronald van Haren <ronald.archlinux.org>

# ALARM: Kevin Mihelich <kevin@archlinuxarm.org>
#  - removed makedepend on vc - not for ARM
#  - patch to fix qreal ARMisms

pkgbase=calligra
pkgname=('calligra-braindump'
         'calligra-extras'
         'calligra-filters'
         'calligra-flow'
         'calligra-handbook'
         'calligra-karbon'
         'calligra-kexi'
         'calligra-krita'
         'calligra-libs'
         'calligra-plan'
         'calligra-plugins'
         'calligra-sheets'
         'calligra-stage'
         'calligra-words')
pkgver=2.7.4
pkgrel=1
arch=('i686' 'x86_64')
url='http://www.calligra-suite.org/'
license=('FDL1.2' 'GPL2' 'LGPL')
makedepends=('cmake' 'automoc4' 'boost' 'kdepimlibs' 'eigen2' 'kdeedu-marble'
             'lcms2' 'libmariadbclient' 'freetds' 'xbase' 'libwpg' 'opencolorio'
             'libwps' 'gsl' 'glew' 'fftw' 'opengtl' 'poppler-qt' 'libkdcraw'
             'openjpeg' 'kdegraphics-okular' 'pstoedit')
groups=('calligra')
source=("http://download.kde.org/stable/${pkgbase}-${pkgver}/${pkgbase}-${pkgver}.tar.xz"
        "arm.patch")
md5sums=('0a9368b4a134eaf7c9834d21097e5016'
         '07d60efe2cdd472cb8860ea1ae157976')

prepare() {
  cd $pkgbase-$pkgver
  patch -p1 -i "$srcdir"/arm.patch
  cd ..
  
  mkdir build
}

build() {
  cd build
  cmake ../${pkgbase}-${pkgver} \
    -DCMAKE_BUILD_TYPE=Release \
    -DCMAKE_INSTALL_PREFIX=/usr \
    -DBUILD_active=OFF
  make
}

package_calligra-filters() {
  pkgdesc="Filters for the Calligra office suite"
  optdepends=('libwpg: Corel WordPerfect Graphics image importer'
              'libwps: Microsoft Works file word processor format import')
  conflicts=('koffice-filters')
  replaces=('koffice-filters')
  install=calligra-filters.install

  cd "${srcdir}"/build/filters
  make DESTDIR="${pkgdir}" install
}

package_calligra-libs() {
  pkgdesc="Libraries for the Calligra office suite"
  depends=('kdepimlibs' 'lcms2' 'kactivities')
  conflicts=('koffice-interfaces' 'koffice-libs' 'koffice-pics'
             'koffice-servicetypes' 'koffice-templates' 'calligra-interfaces'
             'calligra-pics' 'calligra-servicetypes' 'calligra-templates')
  replaces=('koffice-interfaces' 'koffice-libs' 'koffice-pics'
             'koffice-servicetypes' 'koffice-templates' 'calligra-interfaces'
             'calligra-pics' 'calligra-servicetypes' 'calligra-templates')

  for d in interfaces libs pics servicetypes templates; do
    cd "${srcdir}"/build/${d}
    make DESTDIR="${pkgdir}" install
  done
}

package_calligra-plugins() {
  pkgdesc="Plugins for the Calligra office suite"
  depends=('calligra-libs' 'calligra-filters')
  optdepends=('kdeedu-marble: map shape for Calligra')
  conflicts=('koffice-plugins' 'koffice-kchart')
  replaces=('koffice-plugins' 'koffice-kchart' 'koffice-kformula')
  install=calligra-plugins.install

  cd "${srcdir}"/build/plugins
  make DESTDIR="${pkgdir}" install

  cd "${srcdir}"/build/3rdparty/kdchart
  make DESTDIR="${pkgdir}" install
}

package_calligra-karbon() {
  pkgdesc="Create scalable vector drawings"
  depends=('calligra-libs' 'kdebase-runtime' 'pstoedit')
  optdepends=('calligra-filters: import/export filters'
              'calligra-extras: extra calligra tools')
  conflicts=('koffice-karbon' 'koffice-karbon-doc' 'calligra-karbon-doc')
  replaces=('koffice-karbon' 'koffice-karbon-doc' 'calligra-karbon-doc')
  install=calligra-karbon.install

  cd "${srcdir}"/build/karbon
  make DESTDIR="${pkgdir}" install
}

package_calligra-kexi() {
  pkgdesc="Develop desktop database applications"
  depends=('calligra-libs' 'glew' 'fftw')
  optdepends=('libmariadbclient: MariaDB driver'
              'freetds: Sybase & MS SQL driver'
              'xbase: XBase driver'
              'calligra-sheets: Spreadsheet-to-Kexi-table import plugin'
              'kdeedu-marble: map form widget'
              'calligra-plugins: extra calligra plugins')
  conflicts=('koffice-kexi' 'koffice-kexi-doc' 'calligra-kexi-doc')
  replaces=('koffice-kexi' 'koffice-kexi-doc' 'calligra-kexi-doc')
  install=calligra-kexi.install

  cd "${srcdir}"/build/kexi
  make DESTDIR="${pkgdir}" install
  cd "${srcdir}"/build/doc/kexi
  make DESTDIR="${pkgdir}" install
}

package_calligra-plan() {
  pkgdesc="Calligra Project Management Component"
  depends=('calligra-words')
  conflicts=('koffice-kplato' 'calligra-kplato')
  replaces=('koffice-kplato' 'calligra-kplato')
  install=calligra-plan.install

  cd "${srcdir}"/build/plan
  make DESTDIR="${pkgdir}" install

  cd "${srcdir}"/build/3rdparty/kdgantt
  make DESTDIR="${pkgdir}" install
}

package_calligra-stage() {
  pkgdesc="Write presentation documents"
  depends=('calligra-plugins' 'kdebase-runtime')
  conflicts=('koffice-kpresenter' 'koffice-kpresenter-doc' 'calligra-stage-doc')
  replaces=('koffice-kpresenter' 'koffice-kpresenter-doc' 'calligra-stage-doc')
  install=calligra-stage.install

  cd "${srcdir}"/build/stage
  make DESTDIR="${pkgdir}" install
  cd "${srcdir}"/build/doc/stage
  make DESTDIR="${pkgdir}" install
}

package_calligra-krita() {
  pkgdesc="Edit and paint images"
  depends=('calligra-plugins' 'kdebase-runtime' 'eigen2'
           'opencolorio' 'libkdcraw' 'fftw' 'glew' 'opengtl')
  conflicts=('koffice-krita' 'calligra-krita-doc')
  replaces=('koffice-krita' 'calligra-krita-doc')
  install=calligra-krita.install

  cd "${srcdir}"/build/krita
  make DESTDIR="${pkgdir}" install
}

package_calligra-sheets() {
  pkgdesc="Write spreadsheet documents"
  depends=('calligra-libs' 'gsl' 'kdebase-runtime')
  optdepends=('calligra-filters: import/export filters'
              'calligra-plugins: extra calligra plugins'
              'calligra-extras: extra calligra tools')
  conflicts=('koffice-kspread' 'koffice-kspread-doc' 'calligra-tables-doc' 'calligra-tables')
  replaces=('koffice-kspread' 'koffice-kspread-doc' 'calligra-tables-doc' 'calligra-tables')
  install=calligra-sheets.install

  cd "${srcdir}"/build/sheets
  make DESTDIR="${pkgdir}" install
  cd "${srcdir}"/build/doc/sheets
  make DESTDIR="${pkgdir}" install
}

package_calligra-words() {
  pkgdesc="Word Processor"
  depends=('calligra-plugins' 'kdegraphics-okular')
  optdepends=('calligra-extras: extra calligra tools')
  conflicts=('koffice-kword')
  replaces=('koffice-kword')
  install=calligra-words.install

  cd "${srcdir}"/build/words
  make DESTDIR="${pkgdir}" install
}

package_calligra-handbook() {
  pkgdesc="Documentation for Calligra"
  conflicts=('koffice-handbook')
  replaces=('koffice-handbook')
  options=('docs')

  cd "${srcdir}"/build/doc/calligra
  make DESTDIR="${pkgdir}" install
}

package_calligra-braindump() {
  pkgdesc="Notes and idea gathering"
  depends=('calligra-libs' 'kdebase-runtime')
  install=calligra-braindump.install

  cd "${srcdir}"/build/braindump
  make DESTDIR="${pkgdir}" install
}

package_calligra-flow() {
  pkgdesc="Flowchart & Diagram Editing"
  depends=('calligra-words')
  conflicts=('calligra-flow-doc')
  replaces=('calligra-flow-doc')
  install=calligra-flow.install
  optdepends=('calligra-karbon: to export the charts in various formats')

  cd "${srcdir}"/build/flow
  make DESTDIR="${pkgdir}" install
}

package_calligra-extras() {
  pkgdesc="Calligra suite extras"
  depends=('calligra-libs')
  optdepends=('kdegraphics-okular')
  conflicts=('calligra-tools')
  replaces=('calligra-tools')
  install=calligra-extras.install

  cd "${srcdir}"/build/extras
  make DESTDIR="${pkgdir}" install
}