graphics/yafaray: Updated for version 3.2.0.

Signed-off-by: Matteo Bernardini <ponce@slackbuilds.org>
This commit is contained in:
Matteo Bernardini 2017-06-22 10:24:02 +02:00 committed by Robby Workman
parent f3653f73b8
commit fb4924c37f
3 changed files with 35 additions and 67 deletions

View file

@ -2,10 +2,6 @@ YafaRay is a free open-source raytracing engine. Raytracing is a rendering
technique for generating realistic images by tracing the path of light
through a 3D scene.
This package is built by default with QT4 support (needed if you intend to use
the blender plugin too). If you don't want it, launch the script as follows:
# USEQT=no ./yafaray.SlackBuild (assuming you're root)
python3 is an optional dependency, to enable python bindings.
You can also build Python bindings, provided you have swig and Python
installed. Simply run
# BUILDPYTHON=yes ./yafaray.SlackBuild (always assuming you're root)
To disable building the Qt gui pass the script the variable QTGUI=OFF

View file

@ -29,14 +29,16 @@
# 1.0 - Initial release.
# 1.1 - Removed a bashism (==) to become ash-compatible.
# Modified by the SlackBuilds.org project
PRGNAM=yafaray
VERSION=${VERSION:-0.1.1}
VERSION=${VERSION:-3.2.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
i?86) ARCH=i486 ;;
i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
@ -47,14 +49,8 @@ TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
DOCS="LICENSE CODING INSTALL"
# Set to yes to build the qt4 gui (needs qt4)
USEQT=${USEQT:-yes}
# Set to yes to build python bindings too (needs swig)
BUILDPYTHON=${BUILDPYTHON:-no}
if [ "$ARCH" = "i486" ]; then
SLKCFLAGS="-O2 -march=i486 -mtune=i686"
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@ -72,61 +68,37 @@ set -e
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM
unzip "$CWD/YafaRay.${VERSION}.zip"
cd $PRGNAM
rm -rf Core-$VERSION
tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
cd Core-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
-exec chmod 755 {} \; -o \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \;
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
-o -perm 511 \) -exec chmod 755 {} \; -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
if [ ${USEQT} = yes ]; then
QTTARGET="YF_QTDIR=/usr WITH_YF_QT=true"
else
QTTARGET=""
fi
mkdir -p build
cd build
cmake \
-DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
-DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
-DCMAKE_INSTALL_PREFIX=/usr \
-DYAF_LIB_DIR=lib$LIBDIRSUFFIX \
-DWITH_QT=${QTGUI:-ON} \
-DCMAKE_BUILD_TYPE=Release ..
make
make install DESTDIR=$PKG
cd ..
# The build system is kinda 'naive': it hardcodes the PREFIX and other
# directories specified at configure-time into the final libs, so we can't
# specify PREFIX=${PKG}/usr, YF_LIBOUT=${PKG}/usr/lib.. because, when the
# package will be installed, the program will try to find its libraries in a
# /tmp path, and not in /usr/lib/yafaray as it should.
# An easy workaround is to exploit the included debian package creator to
# install all the files in a temporary location without having to specify a
# "fake" PREFIX location. However, this seems to be glitchy too, as specifying
# a different YF_PACKPATH doesn't seem to work fine, so we have to manually
# copy the files from the temporary debian build path to $PKG in the end.
# We install these manually
rm -fR $PKG/usr/share/doc
if [ ${BUILDPYTHON} = no ]; then
scons debian $QTTARGET PREFIX=/usr \
YF_LIBOUT=/usr/lib${LIBDIRSUFFIX} \
YF_PLUGINPATH=/usr/lib${LIBDIRSUFFIX}/yafaray \
REL_CCFLAGS="${SLKCFLAGS}" || echo "Don't worry about the dpkg error"
else
scons swig debian $QTTARGET PREFIX=/usr \
YF_LIBOUT=/usr/lib${LIBDIRSUFFIX} \
YF_PLUGINPATH=/usr/lib${LIBDIRSUFFIX}/yafaray \
REL_CCFLAGS="${SLKCFLAGS}" || echo "Don't worry about the dpkg error"
# Install also python bindings (manually T_T)
mkdir -p ${PKG}/usr/lib${LIBDIRSUFFIX}/python2.6/site-packages
mv bindings/python/* ${PKG}/usr/lib${LIBDIRSUFFIX}/python2.6/site-packages/
fi
# Copy "debian" package root to our package root.
# mv may complain if the python bindings have already been
# moved to their new home, hence we use cp + rm.
cp -r debian/${PRGNAM}/* ${PKG}
rm -rf debian/${PRGNAM}
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a \
$DOCS \
$PKG/usr/doc/$PRGNAM-$VERSION
cp -a AUTHORS CHANGELOG CODING LICENSES README $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install

View file

@ -1,10 +1,10 @@
PRGNAM="yafaray"
VERSION="0.1.1"
VERSION="3.2.0"
HOMEPAGE="http://www.yafaray.org"
DOWNLOAD="http://ponce.cc/slackware/sources/repo/YafaRay.0.1.1.zip"
MD5SUM="d1722dec25299f6f3fcc1d7c661a4e90"
DOWNLOAD="https://github.com/YafaRay/Core/archive/v3.2.0/yafaray-3.2.0.tar.gz"
MD5SUM="191e81b3d8c942302b97c142049365df"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
REQUIRES="opencv"
MAINTAINER="Alan Alberghini"
EMAIL="414N@slacky.it"