From d991fd8d10c04b20907fe6397dbe3cd6a691d0c7 Mon Sep 17 00:00:00 2001 From: "coadde [Márcio Alexandre Silva Delgado]" Date: Sun, 24 Aug 2014 16:05:32 -0300 Subject: add luxrays-parabola (and luxmark-parabola) to libre repo --- libre/luxrays-parabola/PKGBUILD | 81 +++++++++++++++++++++++++ libre/luxrays-parabola/QTBUG-22829.diff | 17 ++++++ libre/luxrays-parabola/luxmark_scenes_path.diff | 20 ++++++ 3 files changed, 118 insertions(+) create mode 100644 libre/luxrays-parabola/PKGBUILD create mode 100644 libre/luxrays-parabola/QTBUG-22829.diff create mode 100644 libre/luxrays-parabola/luxmark_scenes_path.diff 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 +# Maintainer: Márcio Silva +_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 -- cgit v1.2.3-54-g00ecf