summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--libre/luxrays-parabola/PKGBUILD81
-rw-r--r--libre/luxrays-parabola/QTBUG-22829.diff17
-rw-r--r--libre/luxrays-parabola/luxmark_scenes_path.diff20
3 files changed, 118 insertions, 0 deletions
diff --git a/libre/luxrays-parabola/PKGBUILD b/libre/luxrays-parabola/PKGBUILD
new file mode 100644
index 000000000..8edc9ff17
--- /dev/null
+++ b/libre/luxrays-parabola/PKGBUILD
@@ -0,0 +1,81 @@
+# Maintainer (Arch): Lukas Jirkovsky <l.jirkovsky@gmail.com>
+# Maintainer: Márcio Silva <ecoadde@parabola.nu>
+_pkgname=('luxrays' 'luxmark')
+#pkgname=('luxrays-parabola' 'luxmark-parabola')
+pkgname=('luxrays-parabola')
+pkgver=1.3.1
+_pkgver=7459cd8a9583
+pkgrel=5
+pkgdesc="Accelerate the ray intersection process by using CPUs"
+arch=('i686' 'x86_64' 'mips64el')
+url="http://www.luxrender.net/"
+license=('GPL')
+#depends=('freeimage' 'libcl' 'libgl')
+depends=('freeimage' 'libgl')
+#makedepends=('cmake' 'boost' 'mesa' 'opencl-headers' 'glew' 'freeglut' 'qt4')
+makedepends=('cmake' 'boost' 'mesa' 'glew' 'freeglut' 'qt4')
+options=('staticlibs')
+source=(https://bitbucket.org/luxrender/luxrays/get/$_pkgver.tar.bz2 \
+ luxmark_scenes_path.diff QTBUG-22829.diff)
+md5sums=('859999e5e07550553fb310a7f48530a4'
+ '1fd2a6f32e2822b5e0f147304292a1b9'
+ '6e20ee7ea64c578431d51065d0871abc')
+
+prepare() {
+ cd "$srcdir/luxrender-luxrays-$_pkgver"
+
+ # change the path to luxmark scenes
+ patch -Np1 < "$srcdir/luxmark_scenes_path.diff" || true
+
+ # workaround QTBUG-22829 (moc doesn't work with boost headers)
+ patch -Np1 < "$srcdir/QTBUG-22829.diff" || true
+}
+
+build() {
+ cd "$srcdir/luxrender-luxrays-$_pkgver"
+
+ export CXXFLAGS="$CXXFLAGS -lpthread"
+ cmake -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_SKIP_RPATH=ON \
+ -DLUXRAYS_DISABLE_OPENCL=ON \
+ -DBUILD_LUXMARK=ON \
+ .
+ make
+}
+
+package_luxrays-parabola() {
+ provides=("${_pkgname[0]}=${pkgver}")
+ conflicts=("${_pkgname[0]}")
+ replaces=("${_pkgname[0]}")
+ optdepends=('glew: demos (SmallLuxGPU etc.)' 'freeglut: demos (SmallLuxGPU etc.)'
+ 'boost-libs: demos (SmallLuxGPU etc.)')
+
+ cd "$srcdir/luxrender-luxrays-$_pkgver"
+
+ 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
+
+ # remove luxmark (packaged separately)
+ #rm "$pkgdir"/usr/bin/luxmark
+}
+
+package_luxmark-parabola() {
+ pkgdesc="OpenCL benchmark tool"
+ depends+=("${depends[@]}" 'boost-libs' 'qt4')
+ provides=("${_pkgname[1]}=${pkgver}")
+ conflicts=("${_pkgname[1]}")
+ replaces=("${_pkgname[1]}")
+
+ cd "$srcdir/luxrender-luxrays-$_pkgver"
+ install -d -m755 "$pkgdir"/usr/{bin,share/luxmark}
+ #install -m755 bin/luxmark "$pkgdir"/usr/bin
+
+ # install scenes (only luxball is working ATM)
+ cp -a samples/luxmark/scenes/luxball "$pkgdir"/usr/share/luxmark
+ # fix the paths
+ sed -i 's|scenes/|/usr/share/luxmark/|' "$pkgdir"/usr/share/luxmark/*/*.cfg "$pkgdir"/usr/share/luxmark/*/*.scn
+}
+
+# vim:set ts=2 sw=2 et:
diff --git a/libre/luxrays-parabola/QTBUG-22829.diff b/libre/luxrays-parabola/QTBUG-22829.diff
new file mode 100644
index 000000000..5625856bf
--- /dev/null
+++ b/libre/luxrays-parabola/QTBUG-22829.diff
@@ -0,0 +1,17 @@
+diff -rup luxrender-luxrays-d16b0f132b4a/samples/luxmark/slgdefs.h luxrender-luxrays-d16b0f132b4a.new/samples/luxmark/slgdefs.h
+--- luxrender-luxrays-d16b0f132b4a/samples/luxmark/slgdefs.h 2013-10-16 11:16:00.000000000 +0200
++++ luxrender-luxrays-d16b0f132b4a.new/samples/luxmark/slgdefs.h 2013-10-30 20:29:36.768650444 +0100
+@@ -41,11 +41,13 @@
+ #include "luxrays/core/utils.h"
+ #include "luxrays/utils/atomic.h"
+
++#ifndef Q_MOC_RUN
+ #include "slg/slg.h"
+ #include "slg/rendersession.h"
+ #include "slg/renderconfig.h"
+ #include "slg/sdl/scene.h"
+ #include "slg/film/film.h"
++#endif
+
+ #include "mainwindow.h"
+
diff --git a/libre/luxrays-parabola/luxmark_scenes_path.diff b/libre/luxrays-parabola/luxmark_scenes_path.diff
new file mode 100644
index 000000000..80f909a05
--- /dev/null
+++ b/libre/luxrays-parabola/luxmark_scenes_path.diff
@@ -0,0 +1,20 @@
+diff -rup luxrender-luxrays-475fbf15f0ca/samples/luxmark/luxmarkapp.h luxrender-luxrays-475fbf15f0ca.new/samples/luxmark/luxmarkapp.h
+--- luxrender-luxrays-475fbf15f0ca/samples/luxmark/luxmarkapp.h 2013-02-22 22:29:42.000000000 +0100
++++ luxrender-luxrays-475fbf15f0ca.new/samples/luxmark/luxmarkapp.h 2013-06-24 14:54:12.946992718 +0200
+@@ -36,11 +36,11 @@
+ //------------------------------------------------------------------------------
+
+ // List of supported scenes
+-#define SCENE_ROOM "scenes/room/render.cfg"
+-#define SCENE_SALA "scenes/sala/render.cfg"
+-#define SCENE_LUXBALL_HDR "scenes/luxball/render-hdr.cfg"
+-#define SCENE_LUXBALL "scenes/luxball/render.cfg"
+-#define SCENE_LUXBALL_SKY "scenes/luxball/render-sunset.cfg"
++#define SCENE_ROOM "/usr/share/luxmark/room/render.cfg"
++#define SCENE_SALA "/usr/share/luxmark/sala/render.cfg"
++#define SCENE_LUXBALL_HDR "/usr/share/luxmark/luxball/render-hdr.cfg"
++#define SCENE_LUXBALL "/usr/share/luxmark/luxball/render.cfg"
++#define SCENE_LUXBALL_SKY "/usr/share/luxmark/luxball/render-sunset.cfg"
+
+ class LuxMarkApp : public QApplication {
+ Q_OBJECT