From 7ad7c3a0866ffa1e8b40e908c0cf4309a46ebed1 Mon Sep 17 00:00:00 2001 From: André Fabian Silva Delgado Date: Sat, 29 Jun 2013 01:11:33 -0300 Subject: newton-dynamics-libre: add new package to libre repo NOTE: unar can uncompress source code perfectly, but source code is very old to compile against our packages, that package was compiled in Arch around 2011. So is necessary put patches to compile it against our lastest gcc. --- libre/newton-dynamics-libre/PKGBUILD | 50 ++++++++++++++++++++++++++++ libre/newton-dynamics-libre/assert-fix.patch | 13 ++++++++ 2 files changed, 63 insertions(+) create mode 100644 libre/newton-dynamics-libre/PKGBUILD create mode 100644 libre/newton-dynamics-libre/assert-fix.patch diff --git a/libre/newton-dynamics-libre/PKGBUILD b/libre/newton-dynamics-libre/PKGBUILD new file mode 100644 index 000000000..1702cca70 --- /dev/null +++ b/libre/newton-dynamics-libre/PKGBUILD @@ -0,0 +1,50 @@ +# $Id: PKGBUILD 84449 2013-02-19 04:20:15Z svenstaro $ +# Maintainer: Sven-Hendrik Haase +# Contributor: Josh Taylor (deficite) +# Contributor: Christophe Robin (bombstrike) +# Maintainer (Parabola): André Silva +_pkgname=newton-dynamics +pkgname=newton-dynamics-libre +pkgver=2.36 +pkgrel=1 +pkgdesc="A simple physics API" +arch=('i686' 'x86_64' 'mips64el') +url="http://www.newtondynamics.com" +license=('custom') +depends=() +makedepends=('unar') +replaces=$_pkgname +conflicts=$_pkgname +provides=$_pkgname=$pkgver +source=("http://newton-dynamics.googlecode.com/files/newton-dynamics-${pkgver}.rar") +noextract=("newton-dynamics-${pkgver}.rar") +md5sums=('0dffa112d0a6ea39ad9e904e555da69a') + +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}" + unar "newton-dynamics-${pkgver}.rar" + + # needed for building + mkdir -p "${_srcdir}/packages/${platform}" + + ## build lib + cd "${builddir}" + sed -i 's/ -o libNewton.so/ -lpthread -lstdc++ -o libNewton.so/' makefile + sed -i 's/Debug\.cpp.*$/Debug \\/g' makefile + make +} + +package() { + 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/libre/newton-dynamics-libre/assert-fix.patch b/libre/newton-dynamics-libre/assert-fix.patch new file mode 100644 index 000000000..83dfdd790 --- /dev/null +++ b/libre/newton-dynamics-libre/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; -- cgit v1.2.3-54-g00ecf