# $Id$
# Maintainer: Sven-Hendrik Haase <sh@lutzhaase.com>
# Contributor: Christoph Zeiler <archNOSPAM_at_moonblade.dot.org>

# ALARM: Kevin Mihelich <kevin@archlinuxarm.org>
#  - add -fsigned-char to cxxflags

pkgbase=bullet
pkgname=('bullet' 'bullet-docs')
pkgver=2.86
pkgrel=2
pkgdesc="A 3D Collision Detection and Rigid Body Dynamics Library for games and animation"
arch=('i686' 'x86_64')
url="http://www.bulletphysics.com/Bullet/"
license=('custom:zlib')
makedepends=('cmake' 'doxygen' 'graphviz' 'ttf-dejavu' 'mesa' 'glu' 'python' 'python-numpy')
source=("https://github.com/bulletphysics/bullet3/archive/${pkgver}.tar.gz"
        954.patch
        bullet3_examplebrowser.sh)
sha512sums=('af8a6b282ab606437d7975a59cd8a9c2bf273c83b0e79f0c4c1de6fa51695ba6d5f3c853dce2fdba9cb55e7572214e15089e54db51afc465ca26f502cbd5a4f9'
            '6ab8a2e3ac518705e09a4a5ca51ce5efd9d07918ad5374d3b69b3879239576ef1641ca86154e04345027503533ec5578aa5155131b83e927c2a09d34f44e9a70'
            '8741ad94b6c46c226d89aebc8ab06d8a11bac3c04d3f0a2bf7a7524792a3375aa7bf7d295410b16fbeb4c348a31057b4570acdebe9bbaea251f44daca8d9fe81')

prepare() {
  cd bullet3-${pkgver}

  patch -Np1 -i ${srcdir}/954.patch
}

build() {
  cd bullet3-${pkgver}

  CXXFLAGS+=" -fsigned-char"

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

  cmake .. \
       -DCMAKE_INSTALL_PREFIX=/usr \
       -DBUILD_SHARED_LIBS=1 \
       -DINSTALL_LIBS=1 \
       -DINSTALL_EXTRA_LIBS=1 \
       -DBUILD_PYBULLET=ON \
       -DBUILD_PYBULLET_NUMPY=ON \
       -DBUILD_OPENGL3_DEMOS=ON \
       -DCMAKE_BUILD_TYPE=Release

  make

  cd ..
  doxygen
}

package_bullet() {
  optdepends=('glu: for the example browser'
              'python: python bindings'
              'python-numpy: python bindings'
              'bullet-docs: documentation')

  cd bullet3-${pkgver}/build

  make DESTDIR=${pkgdir} install

  install -Dm755 examples/pybullet/pybullet.so.${pkgver} ${pkgdir}/usr/lib/libpybullet.so.${pkgver}
  install -Dm755 examples/ExampleBrowser/libBulletExampleBrowserLib.so.${pkgver} ${pkgdir}/usr/lib/libBulletExampleBrowserLib.so.${pkgver}
  install -Dm755 examples/OpenGLWindow/libOpenGLWindow.so ${pkgdir}/usr/lib/libOpenGLWindow.so
  install -Dm755 examples/ThirdPartyLibs/Gwen/libgwen.so ${pkgdir}/usr/lib/libgwen.so
  install -Dm755 examples/ThirdPartyLibs/BussIK/libBussIK.so ${pkgdir}/usr/lib/libBussIK.so
  install -Dm755 ${srcdir}/bullet3_examplebrowser.sh ${pkgdir}/usr/bin/bullet3_examplebrowser
  install -Dm755 examples/ExampleBrowser/App_ExampleBrowser ${pkgdir}/opt/bullet/App_ExampleBrowser
  cp -r data ${pkgdir}/opt/bullet/

  # install license
  install -Dm644 ../LICENSE.txt ${pkgdir}/usr/share/licenses/${pkgbase}/LICENSE
}

package_bullet-docs() {
  pkgdesc="Documentation for bullet"
  depends=()

  cd bullet3-${pkgver}

  # install docs
  install -Dm644 docs/GPU_rigidbody_using_OpenCL.pdf ${pkgdir}/usr/share/doc/bullet/GPU_rigidbody_using_OpenCL.pdf
  install -Dm644 docs/Bullet_User_Manual.pdf ${pkgdir}/usr/share/doc/bullet/Bullet_User_Manual.pdf
  install -Dm644 docs/BulletQuickstart.pdf ${pkgdir}/usr/share/doc/bullet/BulletQuickstart.pdf
  cp -r html ${pkgdir}/usr/share/doc/bullet/html
}
# vim: sw=2 ts=2 et: