summaryrefslogtreecommitdiff
path: root/libre/luxrender
diff options
context:
space:
mode:
Diffstat (limited to 'libre/luxrender')
-rw-r--r--libre/luxrender/PKGBUILD61
-rw-r--r--libre/luxrender/force_python3.diff12
2 files changed, 73 insertions, 0 deletions
diff --git a/libre/luxrender/PKGBUILD b/libre/luxrender/PKGBUILD
new file mode 100644
index 000000000..04264a00c
--- /dev/null
+++ b/libre/luxrender/PKGBUILD
@@ -0,0 +1,61 @@
+# Maintainer (Arch): Lukas Jirkovsky <l.jirkovsky@gmail.com>
+# Contributor (Arch): flixie <69one@gmx.net>
+# Contributor (Arch): Imanol Celaya <ornitorrincos@archlinux-es.org>
+# Maintainer: Márcio Silva <coadde@parabola.nu>
+pkgname=luxrender
+pkgver=1.3.1
+_pkgver=d0b0e20c47cc
+pkgrel=10.parabola1
+pkgdesc='Rendering system for physically correct, unbiased image synthesis, without nonfree nvidia-utils, amdstream and intel-opencl-sdk recommendation'
+arch=('i686' 'x86_64' 'mips64el')
+url="http://www.$pkgname.net/"
+license=('GPL')
+#depends=('boost-libs' 'freeimage' 'openexr' 'libpng' 'libcl' 'libgl' 'fftw')
+depends=('boost-libs' 'freeimage' 'openexr' 'libpng' 'libgl' 'fftw')
+optdepends=('blender-addon-luxrender: Blender exporter' 'qt4: Qt GUI'
+ 'python: pylux Python interface')
+# luxrender is constantly broken to various GCC bugs, the latest one being FS#40596
+#makedepends=('cmake' 'boost' 'mesa' 'qt4' "luxrays=$pkgver" 'python' 'opencl-headers' 'clang')
+makedepends=('cmake' 'boost' 'mesa' 'qt4' "luxrays=$pkgver" 'python' 'clang')
+conflicts=("${pkgname}-libre" "${pkgname}-parabola")
+replaces=("${pkgname}-libre" "${pkgname}-parabola")
+source=("https://bitbucket.org/$pkgname/lux/get/$_pkgver.tar.bz2"
+ "force_python3.diff")
+md5sums=('cbe749f56a1e1976745f5458100efa8a'
+ '42692e65eabc5828693e2682e94b7c64')
+
+prepare() {
+ cd $srcdir/$pkgname-lux-$_pkgver
+
+ # fix library path on 64bit
+ sed -i '\|SET[(]LIB_SUFFIX 64[)]|d' CMakeLists.txt
+
+ patch -Np1 < $srcdir/force_python3.diff || true
+ # workaround QTBUG-22829
+ find . -type f -exec sed -i 's|^#include .*boost/.*|#ifndef Q_MOC_RUN\n&\n#endif|' '{}' ';'
+}
+
+build() {
+ cd $srcdir/$pkgname-lux-$_pkgver
+
+ export CC=clang
+ export CXX=clang++
+
+ cmake . -DCMAKE_INSTALL_PREFIX=/usr \
+ -DLUXRAYS_DISABLE_OPENCL=ON \
+ -DPYTHON_CUSTOM=ON \
+ -DPYTHON_LIBRARIES=/usr/lib/libpython3.4m.so \
+ -DPYTHON_INCLUDE_PATH=/usr/include/python3.4m/ \
+ -DCMAKE_EXE_LINKER_FLAGS=-lpthread
+ make
+}
+
+package() {
+ cd $srcdir/$pkgname-lux-$_pkgver
+ make DESTDIR=$pkgdir install
+
+ #install pylux
+ install -D -m644 pylux.so $pkgdir/usr/lib/python3.4/pylux.so
+}
+
+# vim:set ts=2 sw=2 et:
diff --git a/libre/luxrender/force_python3.diff b/libre/luxrender/force_python3.diff
new file mode 100644
index 000000000..1ee61e872
--- /dev/null
+++ b/libre/luxrender/force_python3.diff
@@ -0,0 +1,12 @@
+diff -rup luxrender-lux-d0b0e20c47cc/cmake/Dependencies.cmake luxrender-lux-d0b0e20c47cc.new/cmake/Dependencies.cmake
+--- luxrender-lux-d0b0e20c47cc/cmake/Dependencies.cmake 2013-11-04 22:25:45.000000000 +0100
++++ luxrender-lux-d0b0e20c47cc.new/cmake/Dependencies.cmake 2013-12-05 19:43:23.414625854 +0100
+@@ -156,7 +156,7 @@ IF(MSVC AND BOOST_python_LIBRARYDIR)
+ SET(BOOST_LIBRARYDIR "${BOOST_python_LIBRARYDIR}")
+ ENDIF(MSVC AND BOOST_python_LIBRARYDIR)
+
+-FIND_PACKAGE(Boost ${Boost_MINIMUM_VERSION} COMPONENTS python REQUIRED)
++FIND_PACKAGE(Boost ${Boost_MINIMUM_VERSION} COMPONENTS python3 REQUIRED)
+
+ IF(MSVC AND BOOST_python_LIBRARYDIR)
+ SET(BOOST_LIBRARYDIR "${_boost_libdir}")