diff options
Diffstat (limited to 'artistic/luxrender-nocl')
-rw-r--r-- | artistic/luxrender-nocl/PKGBUILD | 78 | ||||
-rw-r--r-- | artistic/luxrender-nocl/boost_1.50_fix.diff | 131 |
2 files changed, 209 insertions, 0 deletions
diff --git a/artistic/luxrender-nocl/PKGBUILD b/artistic/luxrender-nocl/PKGBUILD new file mode 100644 index 000000000..9daa7a548 --- /dev/null +++ b/artistic/luxrender-nocl/PKGBUILD @@ -0,0 +1,78 @@ +# Maintainer: Lukas Jirkovsky <l.jirkovsky@gmail.com> +# Initial contributor: flixie <69one@gmx.net> +# Contributor: Imanol Celaya <ornitorrincos@archlinux-es.org> +# Maintainer (Parabola): Márcio Silva <coadde@lavabit.com> +pkgname=luxrender-nocl +pkgver=1.0rc4 +_pkgver=0b4c3e188707 +pkgrel=1 +pkgdesc='Rendering system for physically correct, unbiased image synthesis (without OpenCL)' +arch=( + i686 + x86_64 + mips64el +) +url=http://www.${pkgname%-nocl}.net/ +license=( + GPL +) +depends=( + boost-libs + freeimage + openexr +) +optdepends=( + 'luxblend25: Blender exporter' + 'python: Python interface (pylux)' + 'qt: Qt GUI' +) +makedepends=( + cmake + boost + qt + ${pkgname::3}rays-nocl=$pkgver + python +) +conflicts=( + ${pkgname%-nocl} +) +provides=( + ${pkgname%-nocl}=$pkgver +) +source=( + https://bitbucket.org/${pkgname%-nocl}/${pkgname::3}/get/$_pkgver.tar.bz2 + boost_1.50_fix.diff +) +md5sums=( + 54ff625a7833541c3cff5f0a77a93863 + 8c7774bb0c97aadd77d9e665d8fa4aab +) + +build() { + cd $srcdir/${pkgname%-nocl}-${pkgname::3}-$_pkgver + + # fix for boost 1.50 + # the boost::TIME_UTC has been renamed due to the conflict with C++11 + patch -Np1 < $srcdir/boost_1.50_fix.diff || true + + export CXXFLAGS='$CXXFLAGS -lpthread' + cmake -DCMAKE_INSTALL_PREFIX=/usr \ + -DLUXRAYS_DISABLE_OPENCL=ON \ + -DPYTHON_CUSTOM=ON \ + -DPYTHON_LIBRARIES=/usr/lib/libpython3.2mu.so \ + -DPYTHON_INCLUDE_PATH=/usr/include/python3.2mu \ + . + make +} + +package() { + cd $srcdir/${pkgname%-nocl}-${pkgname::3}-$_pkgver + make DESTDIR=$pkgdir install + + # fix library path on x86_64 + [ $CARCH = x86_64 ] && mv $pkgdir/usr/lib64 $pkgdir/usr/lib + + #install pylux + install -D -m644 pylux.so $pkgdir/usr/lib/python3.2/pylux.so +} + diff --git a/artistic/luxrender-nocl/boost_1.50_fix.diff b/artistic/luxrender-nocl/boost_1.50_fix.diff new file mode 100644 index 000000000..c1aa0a8e2 --- /dev/null +++ b/artistic/luxrender-nocl/boost_1.50_fix.diff @@ -0,0 +1,131 @@ +diff -rup luxrender-lux-008805644181/core/film.cpp luxrender-lux-008805644181.new/core/film.cpp +--- luxrender-lux-008805644181/core/film.cpp 2012-06-02 08:40:33.000000000 +0200 ++++ luxrender-lux-008805644181.new/core/film.cpp 2012-07-07 15:44:59.867492295 +0200 +@@ -618,7 +618,7 @@ Film::Film(u_int xres, u_int yres, Filte + int yRealHeight = Floor2Int(yPixelStart + .5f + yPixelCount + filter->yWidth) - Floor2Int(yPixelStart + .5f - filter->yWidth); + samplePerPass = xRealWidth * yRealHeight; + +- boost::xtime_get(&creationTime, boost::TIME_UTC); ++ boost::xtime_get(&creationTime, boost::TIME_UTC_); + + //Queryable parameters + AddIntAttribute(*this, "xResolution", "Horizontal resolution (pixels)", &Film::GetXResolution); +@@ -855,7 +855,7 @@ void Film::AddSampleCount(float count) { + if (haltTime > 0) { + // Check if we have met the enough rendering time condition + boost::xtime t; +- boost::xtime_get(&t, boost::TIME_UTC); ++ boost::xtime_get(&t, boost::TIME_UTC_); + if (t.sec - creationTime.sec > haltTime) + enoughSamplesPerPixel = true; + } +diff -rup luxrender-lux-008805644181/core/photonmap.cpp luxrender-lux-008805644181.new/core/photonmap.cpp +--- luxrender-lux-008805644181/core/photonmap.cpp 2012-06-02 08:40:33.000000000 +0200 ++++ luxrender-lux-008805644181.new/core/photonmap.cpp 2012-07-07 15:44:59.870825579 +0200 +@@ -474,13 +474,13 @@ void PhotonMapPreprocess(const RandomGen + + boost::xtime photonShootingStartTime; + boost::xtime lastUpdateTime; +- boost::xtime_get(&photonShootingStartTime, boost::TIME_UTC); +- boost::xtime_get(&lastUpdateTime, boost::TIME_UTC); ++ boost::xtime_get(&photonShootingStartTime, boost::TIME_UTC_); ++ boost::xtime_get(&lastUpdateTime, boost::TIME_UTC_); + u_int nshot = 0; + while ((!radianceDone || !directDone || !causticDone || !indirectDone) && !scene.terminated) { + // Dade - print some progress information + boost::xtime currentTime; +- boost::xtime_get(¤tTime, boost::TIME_UTC); ++ boost::xtime_get(¤tTime, boost::TIME_UTC_); + if (currentTime.sec - lastUpdateTime.sec > 5) { + ss.str(""); + ss << "Photon shooting progress: Direct[" << directPhotons.size(); +@@ -686,7 +686,7 @@ void PhotonMapPreprocess(const RandomGen + return; + + boost::xtime photonShootingEndTime; +- boost::xtime_get(&photonShootingEndTime, boost::TIME_UTC); ++ boost::xtime_get(&photonShootingEndTime, boost::TIME_UTC_); + LOG(LUX_INFO,LUX_NOERROR) << "Photon shooting done (" << ( photonShootingEndTime.sec - photonShootingStartTime.sec ) << "s)"; + + if (computeRadianceMap) { +@@ -700,7 +700,7 @@ void PhotonMapPreprocess(const RandomGen + for (u_int i = 0; i < radiancePhotons.size(); ++i) { + // Dade - print some progress info + boost::xtime currentTime; +- boost::xtime_get(¤tTime, boost::TIME_UTC); ++ boost::xtime_get(¤tTime, boost::TIME_UTC_); + if (currentTime.sec - lastUpdateTime.sec > 5) { + LOG(LUX_INFO,LUX_NOERROR) << "Radiance photon map computation progress: " << i << " (" << (100 * i / radiancePhotons.size()) << "%)"; + +@@ -740,7 +740,7 @@ void PhotonMapPreprocess(const RandomGen + + + boost::xtime radianceComputeEndTime; +- boost::xtime_get(&radianceComputeEndTime, boost::TIME_UTC); ++ boost::xtime_get(&radianceComputeEndTime, boost::TIME_UTC_); + LOG(LUX_INFO,LUX_NOERROR) << "Radiance photon map computed (" << ( radianceComputeEndTime.sec - photonShootingEndTime.sec ) << "s)"; + } + +diff -rup luxrender-lux-008805644181/core/renderfarm.cpp luxrender-lux-008805644181.new/core/renderfarm.cpp +--- luxrender-lux-008805644181/core/renderfarm.cpp 2012-06-02 08:40:33.000000000 +0200 ++++ luxrender-lux-008805644181.new/core/renderfarm.cpp 2012-07-07 15:44:59.870825579 +0200 +@@ -100,7 +100,7 @@ void FilmUpdaterThread::updateFilm(FilmU + // Dade - thread to update the film with data from servers + + boost::xtime reft; +- boost::xtime_get(&reft, boost::TIME_UTC); ++ boost::xtime_get(&reft, boost::TIME_UTC_); + + while (filmUpdaterThread->signal == SIG_NONE) { + // Dade - check signal every 1 sec +@@ -108,7 +108,7 @@ void FilmUpdaterThread::updateFilm(FilmU + for(;;) { + // Dade - sleep for 1 sec + boost::xtime xt; +- boost::xtime_get(&xt, boost::TIME_UTC); ++ boost::xtime_get(&xt, boost::TIME_UTC_); + xt.sec += 1; + boost::thread::sleep(xt); + +diff -rup luxrender-lux-008805644181/film/fleximage.cpp luxrender-lux-008805644181.new/film/fleximage.cpp +--- luxrender-lux-008805644181/film/fleximage.cpp 2012-06-02 08:40:33.000000000 +0200 ++++ luxrender-lux-008805644181.new/film/fleximage.cpp 2012-07-07 15:44:59.877492150 +0200 +@@ -191,7 +191,7 @@ FlexImageFilm::FlexImageFilm(u_int xres, + m_CameraResponseEnabled = d_CameraResponseEnabled = m_CameraResponseFile != ""; + + // init timer +- boost::xtime_get(&lastWriteImageTime, boost::TIME_UTC); ++ boost::xtime_get(&lastWriteImageTime, boost::TIME_UTC_); + lastWriteFLMTime = lastWriteImageTime; + } + +@@ -812,7 +812,7 @@ void FlexImageFilm::CheckWriteOuputInter + { + // Check write output interval + boost::xtime currentTime; +- boost::xtime_get(¤tTime, boost::TIME_UTC); ++ boost::xtime_get(¤tTime, boost::TIME_UTC_); + bool timeToWriteImage = (currentTime.sec - lastWriteImageTime.sec > writeInterval); + bool timeToWriteFLM = (currentTime.sec - lastWriteFLMTime.sec > flmWriteInterval); + +@@ -834,7 +834,7 @@ void FlexImageFilm::CheckWriteOuputInter + // WriteImage can take a very long time to be executed (i.e. by saving + // the film. It is better to refresh timestamps after the + // execution of WriteImage instead than before. +- boost::xtime_get(¤tTime, boost::TIME_UTC); ++ boost::xtime_get(¤tTime, boost::TIME_UTC_); + + if (timeToWriteImage) + lastWriteImageTime = currentTime; +diff -rup luxrender-lux-008805644181/renderers/sppmrenderer.h luxrender-lux-008805644181.new/renderers/sppmrenderer.h +--- luxrender-lux-008805644181/renderers/sppmrenderer.h 2012-06-02 08:40:33.000000000 +0200 ++++ luxrender-lux-008805644181.new/renderers/sppmrenderer.h 2012-07-07 15:44:59.874158864 +0200 +@@ -126,7 +126,7 @@ public: + { + while (state == PAUSE && !boost::this_thread::interruption_requested()) { + boost::xtime xt; +- boost::xtime_get(&xt, boost::TIME_UTC); ++ boost::xtime_get(&xt, boost::TIME_UTC_); + xt.sec += 1; + boost::thread::sleep(xt); + } |