# Maintainer: mmm # Contributer: jellysheep pkgname=gpuocelot-svn pkgver=2.1.2210 pkgrel=3 pkgdesc="Ocelot emulation allows CUDA programs to be executed on NVIDIA/AMD GPUs and x86-CPUs at full speed without recompilation" arch=('i686' 'x86_64') url="https://code.google.com/p/gpuocelot/" license=('BSD') depends=('cuda' 'boost' 'llvm' 'glew') makedepends=('gcc>=4.5' 'svn' 'scons' 'flex' 'bison' 'mesa' 'python2') provides=('gpuocelot') source=('lib_mt_fix.patch' 'ptxgrammar_fix.patch') md5sums=('93247cceb967ace49d6756922ec2f543' 'e26c4304a60f1cba3efb7fd3df51e07f') build() { cd $srcdir msg "Connecting to $pkgname SVN server..." mkdir -p $pkgname cd $pkgname if [[ -d .svn ]]; then svn cleanup && svn up else svn checkout http://gpuocelot.googlecode.com/svn/trunk/ocelot . || return 1 fi msg "SVN checkout done" msg "Downloading llvm-svn header files..." cd $srcdir svn checkout http://llvm.org/svn/llvm-project/llvm/trunk/include/ $pkgname/.release_build/ocelot/ msg "Done." cd $pkgname msg "Starting make..." patch -p0 < $srcdir/lib_mt_fix.patch python2 build.py --install -p$srcdir/build || ( msg "resolving error in ptxgrammar.hpp and trying again..." patch -p0 < $srcdir/ptxgrammar_fix.patch python2 build.py --install -p$srcdir/build ) } package() { mv $srcdir/build/* $pkgdir/ rm -r $srcdir/build }