PKGBUILDs/extra/bullet/PKGBUILD
2022-04-11 18:16:37 -04:00

98 lines
3.6 KiB
Bash

# Maintainer: Sven-Hendrik Haase <svenstaro@archlinux.org>
# Contributor: Christoph Zeiler <archNOSPAM_at_moonblade.dot.org>
# ALARM: Kevin Mihelich <kevin@archlinuxarm.org>
# - -DBUILD_BULLET2_DEMOS=OFF, -DBUILD_UNIT_TESTS=OFF, -DBUILD_EXTRAS=OFF
pkgbase=bullet
pkgname=('bullet' 'bullet-docs' 'python-pybullet')
pkgver=3.22
_pkgver=3.22b
pkgrel=1
pkgdesc="A 3D Collision Detection and Rigid Body Dynamics Library for games and animation"
arch=('x86_64')
url="http://www.bulletphysics.com/Bullet/"
license=('custom:zlib')
makedepends=('cmake' 'doxygen' 'graphviz' 'ttf-dejavu' 'mesa' 'glu' 'python' 'python-numpy' 'python-setuptools' 'ninja')
source=("$pkgname-$pkgver.tar.gz::https://github.com/bulletphysics/bullet3/archive/refs/tags/${_pkgver}.tar.gz"
bullet3_examplebrowser.sh)
sha512sums=('9e2f3eb78b94de6a11d605f4ab87868f19d5aa8df61b35030c3866d47ae9c3e5cfc56ab57b8752d697c17489599de55f4066125f3e1fcbcbc61eed8821ae3f24'
'8741ad94b6c46c226d89aebc8ab06d8a11bac3c04d3f0a2bf7a7524792a3375aa7bf7d295410b16fbeb4c348a31057b4570acdebe9bbaea251f44daca8d9fe81')
prepare() {
cd bullet3-${_pkgver}
sed -i '/SET_TARGET_PROPERTIES(pybullet PROPERTIES PREFIX/d' examples/pybullet/CMakeLists.txt
}
build() {
cd bullet3-${_pkgver}
cmake \
-Bbuild \
-GNinja \
-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 \
-DBUILD_BULLET2_DEMOS=OFF \
-DBUILD_UNIT_TESTS=OFF \
-DBUILD_EXTRAS=OFF \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_SKIP_RPATH=YES
ninja -C build
python setup.py build
doxygen
}
package_bullet() {
optdepends=('glu: for the example browser'
'python: python bindings'
'python-numpy: python bindings'
'bullet-docs: documentation')
cd bullet3-${_pkgver}
DESTDIR="${pkgdir}" ninja -C build install
cd build
#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 -Dm644 ../LICENSE.txt "${pkgdir}"/usr/share/licenses/${pkgbase}/LICENSE
}
package_python-pybullet() {
pkgdesc="Bullet Python bindings"
depends+=('bullet' 'gcc-libs')
cd bullet3-${_pkgver}
#install -Dm755 build/examples/pybullet/libpybullet.so.${pkgver} "${pkgdir}"/usr/lib/libpybullet.so.${pkgver}
python setup.py install --prefix=/usr --root="${pkgdir}" --optimize=1 --skip-build
install -Dm644 LICENSE.txt "${pkgdir}"/usr/share/licenses/${pkgname}/LICENSE
}
package_bullet-docs() {
pkgdesc="Documentation for bullet"
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: