# Copyright 1999-2008 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 # $Header: /var/cvsroot/gentoo-x86/media-gfx/blender/blender-2.43-r2.ebuild,v 1.5 2008/06/25 21:09:08 maekke Exp $ inherit multilib flag-o-matic eutils python #IUSE="jpeg mozilla png sdl static truetype" IUSE="blender-game ffmpeg jpeg nls openal openexr png" FFMPEG_SNAP="0.4.9-p20070330" DESCRIPTION="3D Creation/Animation/Publishing System" HOMEPAGE="http://www.blender.org/" SRC_URI="http://download.blender.org/source/${P}.tar.gz ffmpeg? ( mirror://gentoo/ffmpeg-${FFMPEG_SNAP}.tar.bz2 )" SLOT="0" LICENSE="|| ( GPL-2 BL )" KEYWORDS="~amd64 ppc ppc64 ~sparc x86" RDEPEND="=dev-lang/python-2.4* >=dev-libs/openssl-0.9.6 ffmpeg? ( >=media-video/ffmpeg-${FFMPEG_SNAP/-/_} media-libs/x264 ) jpeg? ( media-libs/jpeg ) media-libs/tiff nls? ( >=media-libs/freetype-2.0 virtual/libintl >=media-libs/ftgl-2.1 ) openal? ( media-libs/openal media-libs/freealut ) openexr? ( media-libs/openexr ) png? ( media-libs/libpng ) >=media-libs/libsdl-1.2 virtual/opengl" DEPEND="dev-util/scons x11-libs/libXt x11-proto/inputproto ${RDEPEND}" blend_with() { local UWORD="$2" if [ -z "${UWORD}" ]; then UWORD="$1" fi if useq $1; then echo "WITH_BF_${UWORD}=1" | tr '[:lower:]' '[:upper:]' \ >> "${S}"/user-config.py else echo "WITH_BF_${UWORD}=0" | tr '[:lower:]' '[:upper:]' \ >> "${S}"/user-config.py fi return 0 } src_unpack() { unpack ${A} cd "${S}"/release/plugins chmod 755 bmake rmdir include cp -pPR "${S}"/source/blender/blenpluginapi include cd "${S}" epatch "${FILESDIR}"/blender-2.37-dirs.patch epatch "${FILESDIR}"/blender-2.45-cve-2008-1102.patch epatch "${FILESDIR}"/blender-2.45-cve-2008-1103-1.patch epatch "${FILESDIR}"/blender-2.45-cve-2008-1103-2.patch if use ffmpeg ; then cd "${S}"/extern mv ffmpeg/Makefile ffmpeg/common.mak "${T}" unpack ffmpeg-${FFMPEG_SNAP}.tar.bz2 mv "${T}"/Makefile "${T}"/common.mak ffmpeg fi # pass compiler flags to the scons build system echo "CFLAGS += '${CFLAGS}'" >> "${S}"/user-config.py echo "CCFLAGS += ['${CXXFLAGS//' '/','}','-DYESIAMSTUPID']" \ >> "${S}"/user-config.py # disable blender-player and iconv # echo "WITH_BF_PLAYER=0" >> ${S}/user-config.py # echo "WITH_BF_ICONV=0" >> ${S}/user-config.py } src_compile() { myconf="${myconf} $(blend_with openal)" myconf="${myconf} $(blend_with openexr)" myconf="${myconf} $(blend_with jpeg)" myconf="${myconf} $(blend_with ffmpeg)" myconf="${myconf} $(blend_with png)" myconf="${myconf} $(blend_with nls international)" myconf="${myconf} $(blend_with blender-game gameengine)" # scons uses -l differently -> remove it scons ${MAKEOPTS/-l[0-9]} -h > scons.config scons ${MAKEOPTS/-l[0-9]} || die \ "!!! Please add ${S}/scons.config when filing bugs reports to bugs.gentoo.org" cd "${S}"/release/plugins emake || die } src_install() { exeinto /usr/bin/ doexe "${WORKDIR}"/install/linux2/blender dodir /usr/share/${PN} exeinto /usr/$(get_libdir)/${PN}/textures doexe "${S}"/release/plugins/texture/*.so exeinto /usr/$(get_libdir)/${PN}/sequences doexe "${S}"/release/plugins/sequence/*.so insinto /usr/include/${PN} doins "${S}"/release/plugins/include/*.h if use nls ; then mv "${WORKDIR}"/install/linux2/.blender/{.Blanguages,.bfont.ttf} \ "${D}"/usr/share/${PN} mv "${WORKDIR}"/install/linux2/.blender/locale \ "${D}"/usr/share/locale fi mv "${WORKDIR}"/install/linux2/.blender/scripts "${D}"/usr/share/${PN} insinto /usr/share/pixmaps doins "${FILESDIR}"/${PN}.png insinto /usr/share/applications doins "${FILESDIR}"/${PN}.desktop dodoc INSTALL README } pkg_preinst(){ if [ -h "${ROOT}/usr/$(get_libdir)/blender/plugins/include" ]; then rm -f "${ROOT}"/usr/$(get_libdir)/blender/plugins/include fi }