# $Id: PKGBUILD 130480 2015-04-01 09:25:07Z svenstaro $
# Maintainer: Sven-Hendrik Haase <sh@lutzhaase.com>
pkgbase=ogre
pkgname=('ogre' 'ogre-docs')
pkgver=1.9.0
pkgrel=9
pkgdesc='Scene-oriented, flexible 3D engine written in C++'
arch=('i686' 'x86_64')
url='http://www.ogre3d.org'
license=('custom:MIT')
depends=('boost-libs' 'freeimage' 'freetype2' 'libxaw' 'libxrandr' 
         'nvidia-cg-toolkit' 'zziplib' 'ois' 'glu' 'tinyxml')
makedepends=('boost' 'cmake' 'doxygen' 'graphviz' 'ttf-dejavu' 'mesa' 'mercurial')
install=ogre.install
source=("hg+http://bitbucket.org/sinbad/ogre#tag=v${pkgver//./-}"
        cmake30.patch::https://bitbucket.org/sinbad/ogre/commits/d84bce645d3dd439188d3d29d8da51c51765a085/raw/)
md5sums=('SKIP'
         '116fb8009c8d4b499f9a885052cc0ea6')

prepare() {
  cd ogre

  patch -Np1 < $srcdir/cmake30.patch
}

build() {
  cd ogre

  [[ -d build ]] && rm -rf build
  mkdir build && cd build

  cmake .. \
    -DCMAKE_INSTALL_PREFIX=/usr \
    -DOGRE_INSTALL_SAMPLES=TRUE \
    -DOGRE_INSTALL_DOCS=TRUE \
    -DOGRE_INSTALL_SAMPLES_SOURCE=TRUE \
    -DCMAKE_BUILD_TYPE=Release

  make

  make OgreDoc
}

package_ogre() {
  optdepends=('cppunit: unit testing'
              'intel-tbb: better threading support'
              'poco: portability'
              'boost: for developing using ogre'
              'ogre-docs: documentation')

  cd ogre/build

  make DESTDIR=${pkgdir} install

  # fix up samples
  install -dm775 -o root -g users ${pkgdir}/opt/OGRE/samples/
  mv ${pkgdir}/usr/share/OGRE/*.cfg ${pkgdir}/opt/OGRE/samples/
  mv ${pkgdir}/usr/bin/SampleBrowser ${pkgdir}/opt/OGRE/samples/

  # make sample launcher
  echo "#!/bin/bash" > ${pkgdir}/usr/bin/OgreSampleBrowser
  echo "cd /opt/OGRE/samples && ./SampleBrowser" >> ${pkgdir}/usr/bin/OgreSampleBrowser
  chmod +x ${pkgdir}/usr/bin/OgreSampleBrowser
  
  install -Dm644 ../Docs/License.html ${pkgdir}/usr/share/licenses/${pkgname}/license.html

  # move docs out of this package
  mv ${pkgdir}/usr/share/OGRE/docs ${srcdir}/docs
}

package_ogre-docs() {
  pkgdesc="Documentation for ogre"
  depends=()

  cd ogre/build

  # move docs into this package
  install -dm755 ${pkgdir}/usr/share/doc
  mv ${srcdir}/docs ${pkgdir}/usr/share/doc/OGRE/

  # symlink for docs
  install -dm755 ${pkgdir}/usr/share/OGRE/
  cd ${pkgdir}/usr/share
  ln -s /usr/share/doc/OGRE/ OGRE/docs
}

# vim:set ts=2 sw=2 et:
