summaryrefslogtreecommitdiff
path: root/community/newton-dynamics
diff options
context:
space:
mode:
authorroot <root@rshg047.dnsready.net>2011-07-15 23:12:20 +0000
committerroot <root@rshg047.dnsready.net>2011-07-15 23:12:20 +0000
commit76c26b027d797f3671bf0b6c6618eda2496cf88d (patch)
treec386be56a0a3bc7b668a674e9cec6405a4d2fb2f /community/newton-dynamics
parent29657877f6a02dbba1bd58b417b4ccd211939690 (diff)
Fri Jul 15 23:12:20 UTC 2011
Diffstat (limited to 'community/newton-dynamics')
-rw-r--r--community/newton-dynamics/PKGBUILD45
-rw-r--r--community/newton-dynamics/assert-fix.patch13
2 files changed, 58 insertions, 0 deletions
diff --git a/community/newton-dynamics/PKGBUILD b/community/newton-dynamics/PKGBUILD
new file mode 100644
index 000000000..93a578450
--- /dev/null
+++ b/community/newton-dynamics/PKGBUILD
@@ -0,0 +1,45 @@
+# Maintainer: Sven-Hendrik Haase <sh@lutzhaase.com>
+# Contributor: Josh Taylor (deficite) <joshtaylor.mail@gmail.com>
+# Contributor: Christophe Robin (bombstrike) <crobin@php.net>
+pkgname=newton-dynamics
+pkgver=2.33
+pkgrel=1
+pkgdesc="A simple physics API"
+arch=('i686' 'x86_64')
+url="http://www.newtondynamics.com"
+license=('custom')
+depends=()
+makedepends=('unrar')
+source=("http://newton-dynamics.googlecode.com/files/newton-dynamics-${pkgver}.rar"
+ 'assert-fix.patch')
+md5sums=('b8394c7c3f4e8a1bd41ffa07c5979a9e'
+ 'fa747c99d0516d66f03175fca1f1ba34')
+
+build() {
+ _srcdir="${srcdir}/newton-dynamics-${pkgver}"
+ [ "$CARCH" = "i686" ] && platform="linux32"
+ [ "$CARCH" = "x86_64" ] && platform="linux64"
+ builddir="${_srcdir}/coreLibrary_200/projets/${platform}"
+
+ # clean build directory
+ [ -d "${_srcdir}" ] && rm -Rf "${_srcdir}"
+
+ # decompress package
+ cd "${srcdir}"
+ unrar x "newton-dynamics-${pkgver}.rar"
+
+ # needed for building
+ mkdir -p "${_srcdir}/packages/${platform}"
+
+ # patch issue with an _ASSERT call instead of _ASSERTE
+ cd "${_srcdir}/coreLibrary_200"
+ patch -p0 < "${srcdir}/assert-fix.patch"
+
+ ## build lib
+ cd "${builddir}"
+ make
+
+ install -D -m644 "${builddir}/libNewton.a" "${pkgdir}/usr/lib/libNewton.a"
+ install -D -m755 "${builddir}/libNewton.so" "${pkgdir}/usr/lib/libNewton.so"
+ install -D -m644 "${_srcdir}/coreLibrary_200/source/newton/Newton.h" "${pkgdir}/usr/include/Newton.h"
+}
diff --git a/community/newton-dynamics/assert-fix.patch b/community/newton-dynamics/assert-fix.patch
new file mode 100644
index 000000000..83dfdd790
--- /dev/null
+++ b/community/newton-dynamics/assert-fix.patch
@@ -0,0 +1,13 @@
+Index: source/core/dgTypes.cpp
+===================================================================
+--- source/core/dgTypes.cpp (revision 506)
++++ source/core/dgTypes.cpp (working copy)
+@@ -515,7 +515,7 @@
+ return 0;
+ }
+ _ASSERTE (compareCount <= dgInt32 (strideInBytes / sizeof (dgFloat64)));
+- _ASSERT (strideInBytes == dgInt32 (sizeof (dgFloat64) * (strideInBytes / sizeof (dgFloat64))));
++ _ASSERTE (strideInBytes == dgInt32 (sizeof (dgFloat64) * (strideInBytes / sizeof (dgFloat64))));
+
+ dgInt32 stride = strideInBytes / dgInt32 (sizeof (dgFloat64));
+ dgInt32 stride2 = stride + 2;