diff options
-rw-r--r-- | .SRCINFO | 5 | ||||
-rw-r--r-- | PKGBUILD | 23 | ||||
-rw-r--r-- | serialize_undef_call.patch | 37 |
3 files changed, 55 insertions, 10 deletions
@@ -1,11 +1,12 @@ pkgbase = luxrays-hg pkgdesc = Accelerate the ray intersection process by using GPUs pkgver = 3755+.ceb10f796325+ - pkgrel = 4 + pkgrel = 5 url = http://www.luxrender.net/ arch = x86_64 license = GPL makedepends = boost + makedepends = python makedepends = cmake makedepends = freetype2 makedepends = gtk3 @@ -29,8 +30,10 @@ pkgbase = luxrays-hg options = staticlibs source = luxrays::hg+https://bitbucket.org/luxrender/luxrays#branch=default source = force_python3.diff + source = serialize_undef_call.patch md5sums = SKIP md5sums = ba9a42dbe073009189c6d21845bff767 + md5sums = 44f46506e1bfd1bddbceaed40c87b056 pkgname = luxrays-hg @@ -4,13 +4,13 @@ pkgname=luxrays-hg pkgver=3755+.ceb10f796325+ -pkgrel=4 +pkgrel=5 pkgdesc="Accelerate the ray intersection process by using GPUs" arch=('x86_64') url="http://www.luxrender.net/" license=('GPL') depends=('embree-bvh_build-git' 'opencl-icd-loader' 'libgl' 'openimageio') -makedepends=('boost' 'cmake' 'freetype2' 'gtk3' 'libpng' 'mesa' 'opencl-headers' 'glew' 'freeglut' +makedepends=('boost' 'python' 'cmake' 'freetype2' 'gtk3' 'libpng' 'mesa' 'opencl-headers' 'glew' 'freeglut' 'mercurial') optdepends=('opencl-driver: OpenCL support' \ 'glew: demos (SmallLuxGPU etc.)' \ @@ -21,9 +21,11 @@ options=('staticlibs') provides=('luxrays') conflicts=('luxrays') source=('luxrays::hg+https://bitbucket.org/luxrender/luxrays#branch=default' \ - force_python3.diff) + 'force_python3.diff' + 'serialize_undef_call.patch') md5sums=('SKIP' - 'ba9a42dbe073009189c6d21845bff767') + 'ba9a42dbe073009189c6d21845bff767' + '44f46506e1bfd1bddbceaed40c87b056') pkgver() { cd "$srcdir/luxrays" @@ -41,13 +43,16 @@ prepare() { sed -i '/luxcoreimplserializationdemo/d' CMakeLists.txt # force python3 for boost - patch -Np1 < "$srcdir/force_python3.diff" || true + patch -Np1 -i "$srcdir/force_python3.diff" || true + + # fix missing symbols in slg-core(tilerepository.o) + patch -Np1 -i ${srcdir}/serialize_undef_call.patch } build() { - cd "$srcdir/luxrays" + mkdir -p build && cd build - cmake . \ + cmake ${srcdir}/luxrays \ -DCMAKE_INSTALL_PREFIX=/usr \ -DEMBREE_INCLUDE_PATH=/usr/include/embree-bvh_build \ -DEMBREE_LIBRARY=/usr/lib/embree-bvh_build/libembree.so.2 \ @@ -57,12 +62,12 @@ build() { } package() { - cd "$srcdir/luxrays" + cd "$srcdir/build" install -d -m755 "$pkgdir"/usr/{bin,include,lib} install -m755 bin/* "$pkgdir"/usr/bin install -m644 lib/* "$pkgdir"/usr/lib - cp -a include "$pkgdir"/usr + cp -a ${srcdir}/luxrays/include "$pkgdir"/usr # install pyluxcore to the Python search path _pypath=`pacman -Ql python | sed -n '/\/usr\/lib\/python[^\/]*\/$/p' | cut -d" " -f 2` diff --git a/serialize_undef_call.patch b/serialize_undef_call.patch new file mode 100644 index 000000000000..1d2564dc84bb --- /dev/null +++ b/serialize_undef_call.patch @@ -0,0 +1,37 @@ +diff -r ceb10f796325 src/slg/engines/tilerepository.cpp +--- a/src/slg/engines/tilerepository.cpp Mon Dec 18 17:20:21 2017 +0100 ++++ b/src/slg/engines/tilerepository.cpp Wed Nov 07 15:24:25 2018 +0100 +@@ -676,3 +676,15 @@ + + ar & convergedTiles; + } ++ ++ ++namespace slg { ++// Explicit instantiations for portable archives ++template void TileRepository::save(eos::portable_oarchive &ar, const u_int version) const; ++template void TileRepository::load(eos::portable_iarchive &ar, const unsigned int version); ++template void TileRepository::save(boost::archive::binary_oarchive &ar, const u_int version) const; ++template void TileRepository::load(boost::archive::binary_iarchive &ar, const unsigned int version); ++// Explicit instantiations for polymorphic archives ++template void TileRepository::save(boost::archive::polymorphic_oarchive &ar, const u_int version) const; ++template void TileRepository::load(boost::archive::polymorphic_iarchive &ar, const u_int version); ++} +diff -r ceb10f796325 src/slg/film/filmserialize.cpp +--- a/src/slg/film/filmserialize.cpp Mon Dec 18 17:20:21 2017 +0100 ++++ b/src/slg/film/filmserialize.cpp Wed Nov 07 15:24:25 2018 +0100 +@@ -197,3 +197,14 @@ + ar & initialized; + ar & enabledOverlappedScreenBufferUpdate; + } ++ ++namespace slg { ++// Explicit instantiations for portable archives ++template void Film::save(eos::portable_oarchive &ar, const u_int version) const; ++template void Film::load(eos::portable_iarchive &ar, const u_int version); ++template void Film::save(boost::archive::binary_oarchive &ar, const u_int version) const; ++template void Film::load(boost::archive::binary_iarchive &ar, const u_int version); ++// The following 2 lines shouldn't be required but they are with GCC 5 ++template void Film::save(boost::archive::polymorphic_oarchive &ar, const u_int version) const; ++template void Film::load(boost::archive::polymorphic_iarchive &ar, const u_int version); ++} |