# Copyright 1999-2005 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 # $Header: /var/cvsroot/gentoo-x86/media-gfx/blender/blender-2.37a.ebuild,v 1.6 2005/12/15 04:59:59 spyderous Exp $ inherit flag-o-matic eutils python IUSE="ffmpeg gameengine iconv jpeg nls openal openexr sdl" DESCRIPTION="3D Creation/Animation/Publishing System" HOMEPAGE="http://www.blender.org/" SRC_URI="http://download.blender.org/source/${P}.tar.gz" SLOT="0" LICENSE="|| (GPL-2 BL)" KEYWORDS="~amd64 ~ppc ~sparc ~x86" RDEPEND="ffmpeg? ( media-video/ffmpeg ) iconv? ( virtual/libiconv ) jpeg? ( media-libs/jpeg ) nls? ( >=media-libs/freetype-2.0 >=media-libs/ftgl-2.1 virtual/libintl ) openal? ( ~media-libs/openal ) openexr? ( media-libs/openexr ) sdl? ( >=media-libs/libsdl-1.2 ) virtual/opengl" DEPEND="dev-util/scons || ( x11-libs/libXt virtual/x11 ) ${RDEPEND}" S=${WORKDIR}/${PN}${PV} set_flag() { local UWORD="$2" if [ -z "${UWORD}" ]; then UWORD="$1" fi # convert UWORD to upper characters UWORD=`echo $UWORD | tr '[:lower:]' '[:upper:]'` if useq $1; then einfo "Enabling $1 support" sed -i -e "s:WITH_BF_${UWORD}.*$:WITH_BF_${UWORD} = 'true':" \ ${S}/config/linux2-config.py else einfo "Disabling $1 support" sed -i -e "s:WITH_BF_${UWORD}.*$:WITH_BF_${UWORD} = 'false':" \ ${S}/config/linux2-config.py fi return 0 } src_unpack() { unpack ${A} mkdir -p ${WORKDIR}/install/linux2/plugins/ cd ${WORKDIR}/install/linux2/plugins/ cp -pPR ${S}/source/blender/blenpluginapi include } src_compile() { # Blender uses SConstruct instead of autoconf and make. # Read more: # http://www.blender3d.org/cms/Building_Blender.117.0.html set_flag ffmpeg set_flag gameengine set_flag iconv set_flag jpeg set_flag nls international set_flag openal set_flag openexr set_flag sdl if use gameengine; then echo "WITH_BF_PLAYER = 'true'" >> ${S}/config/linux2-config.py fi # Make wrapper scripts for blender and (if existant) blenderplayer # Symlinking would not work! mkdir wrappers echo '#!/bin/sh' > wrappers/blender echo 'cd /opt/blender' >> wrappers/blender echo './blender "$@"' >> wrappers/blender if use gameengine; then echo '#!/bin/sh' > wrappers/blenderplayer echo 'cd /opt/blender' >> wrappers/blenderplayer echo './blenderplayer "$@"' >> wrappers/blenderplayer fi scons ${MAKEOPTS} || die cd ${WORKDIR}/install/linux2/plugins chmod 755 bmake emake || die } src_install() { exeinto /opt/${PN} doexe ${WORKDIR}/install/linux2/blender if use gameengine; then doexe ${WORKDIR}/install/linux2/blenderplayer; fi # Install wrapper scripts exeinto /usr/bin doexe ${S}/wrappers/blender if use gameengine; then doexe ${S}/wrappers/blenderplayer; fi # Install plugins exeinto /opt/${PN}/plugins/texture doexe ${WORKDIR}/install/linux2/plugins/texture/*.so exeinto /opt/${PN}/plugins/sequence doexe ${WORKDIR}/install/linux2/plugins/sequence/*.so # Install scripts insinto /opt/${PN}/release doins -r ${S}/release/scripts if use nls; then # Copy language files insinto /opt/${PN}/.blender doins -r ${S}/bin/.blender/{.bfont.ttf,.Blanguages,locale} fi insinto /usr/share/pixmaps doins ${FILESDIR}/${PN}.png insinto /usr/share/applications doins ${FILESDIR}/${PN}.desktop dodoc ${WORKDIR}/install/linux2/{BlenderQuickStart.pdf,*.txt} } pkg_preinst() { if [ -h "/usr/$(get_libdir)/blender/plugins/include" ]; then rm -f /usr/$(get_libdir)/blender/plugins/include fi }