Files
haikuports/sci-physics/bullet/bullet-2.87.recipe
2017-10-22 11:21:32 +02:00

128 lines
3.5 KiB
Bash

SUMMARY="Continuous Collision Detection and Physics Library"
DESCRIPTION="Bullet Physics is a professional open source collision \
detection, rigid body and soft body dynamicslibrary written in portable C++. \
The library is primarily designed for use in games, visual effects \
and robotic simulation. The library is free for commercial use under \
the ZLib license."
HOMEPAGE="http://www.bulletphysics.com/"
COPYRIGHT="2003-2017 Erwin Coumans and the Bullet Physics Library Team"
LICENSE="Zlib"
REVISION="1"
SOURCE_URI="https://github.com/bulletphysics/bullet3/archive/$portVersion.tar.gz"
CHECKSUM_SHA256="438c151c48840fe3f902ec260d9496f8beb26dba4b17769a4a53212903935f95"
SOURCE_DIR="bullet3-$portVersion"
ARCHITECTURES="!x86_gcc2 ?x86 x86_64"
SECONDARY_ARCHITECTURES="?x86"
PROVIDES="
bullet$secondaryArchSuffix = $portVersion
lib:libBullet3Collision$secondaryArchSuffix = $portVersion
lib:libBullet3Common$secondaryArchSuffix = $portVersion
lib:libBullet3Dynamics$secondaryArchSuffix = $portVersion
lib:libBullet3Geometry$secondaryArchSuffix = $portVersion
lib:libBullet3OpenCL_clew$secondaryArchSuffix = $portVersion
lib:libBullet2FileLoader$secondaryArchSuffix = $portVersion
lib:libBulletCollision$secondaryArchSuffix = $portVersion
lib:libBulletDynamics$secondaryArchSuffix = $portVersion
lib:libBulletInverseDynamics$secondaryArchSuffix = $portVersion
lib:libBulletSoftBody$secondaryArchSuffix = $portVersion
lib:libLinearMath$secondaryArchSuffix = $portVersion
"
REQUIRES="
haiku$secondaryArchSuffix
lib:libgl$secondaryArchSuffix
lib:libglu$secondaryArchSuffix
lib:libglew$secondaryArchSuffix
cmd:python
"
PROVIDES_devel="
bullet${secondaryArchSuffix}_devel = $portVersion
devel:libBullet3Collision$secondaryArchSuffix = $portVersion
devel:libBullet3Common$secondaryArchSuffix = $portVersion
devel:libBullet3Dynamics$secondaryArchSuffix = $portVersion
devel:libBullet3Geometry$secondaryArchSuffix = $portVersion
devel:libBullet3OpenCL_clew$secondaryArchSuffix = $portVersion
devel:libBullet2FileLoader$secondaryArchSuffix = $portVersion
devel:libBulletCollision$secondaryArchSuffix = $portVersion
devel:libBulletDynamics$secondaryArchSuffix = $portVersion
devel:libBulletInverseDynamics$secondaryArchSuffix = $portVersion
devel:libBulletSoftBody$secondaryArchSuffix = $portVersion
devel:libLinearMath$secondaryArchSuffix = $portVersion
"
REQUIRES_devel="
bullet$secondaryArchSuffix == $portVersion base
"
BUILD_REQUIRES="
haiku${secondaryArchSuffix}_devel
devel:libgl$secondaryArchSuffix
devel:libglu$secondaryArchSuffix
devel:libglew$secondaryArchSuffix
"
BUILD_PREREQUIRES="
cmd:cmake
cmd:gcc$secondaryArchSuffix
cmd:make
cmd:python2
"
BUILD()
{
mkdir -p build_haiku
cd build_haiku
export LDFLAGS="-lroot -lnetwork -lbsd"
export CFLAGS="-D_BSD_SOURCE"
cmake .. \
-Wno-dev \
-DBUILD_SHARED_LIBS=ON \
-DBUILD_BULLET2_DEMOS=OFF \
-DBUILD_EXTRAS=OFF \
-DBUILD_UNIT_TESTS=OFF \
-DCMAKE_INSTALL_PREFIX=$prefix \
-DCMAKE_BUILD_TYPE=Release \
-DINSTALL_LIBS=ON \
-DLIB_DESTINATION:PATH="$libDir" \
-DINCLUDE_INSTALL_DIR:PATH="$includeDir/bullet/"
make $jobArgs
}
INSTALL()
{
cd build_haiku
mkdir -p $libDir
mkdir -p $includeDir
make install
prepareInstalledDevelLibs \
libBullet3Collision \
libBullet3Common \
libBullet3Dynamics \
libBullet3Geometry \
libBullet3OpenCL_clew \
libBullet2FileLoader \
libBulletCollision \
libBulletDynamics \
libBulletInverseDynamics \
libBulletSoftBody \
libLinearMath
packageEntries devel \
$developDir \
$libDir/pkgconfig \
$libDir/cmake
fixPkgconfig
}
TEST()
{
make check
}