summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobin H. Johnson <robbat2@gentoo.org>2015-08-08 13:49:04 -0700
committerRobin H. Johnson <robbat2@gentoo.org>2015-08-08 17:38:18 -0700
commit56bd759df1d0c750a065b8c845e93d5dfa6b549d (patch)
tree3f91093cdb475e565ae857f1c5a7fd339e2d781e /media-gfx/blender
downloadgentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.gz
gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.bz2
gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.zip
proj/gentoo: Initial commit
This commit represents a new era for Gentoo: Storing the gentoo-x86 tree in Git, as converted from CVS. This commit is the start of the NEW history. Any historical data is intended to be grafted onto this point. Creation process: 1. Take final CVS checkout snapshot 2. Remove ALL ChangeLog* files 3. Transform all Manifests to thin 4. Remove empty Manifests 5. Convert all stale $Header$/$Id$ CVS keywords to non-expanded Git $Id$ 5.1. Do not touch files with -kb/-ko keyword flags. Signed-off-by: Robin H. Johnson <robbat2@gentoo.org> X-Thanks: Alec Warner <antarus@gentoo.org> - did the GSoC 2006 migration tests X-Thanks: Robin H. Johnson <robbat2@gentoo.org> - infra guy, herding this project X-Thanks: Nguyen Thai Ngoc Duy <pclouds@gentoo.org> - Former Gentoo developer, wrote Git features for the migration X-Thanks: Brian Harring <ferringb@gentoo.org> - wrote much python to improve cvs2svn X-Thanks: Rich Freeman <rich0@gentoo.org> - validation scripts X-Thanks: Patrick Lauer <patrick@gentoo.org> - Gentoo dev, running new 2014 work in migration X-Thanks: Michał Górny <mgorny@gentoo.org> - scripts, QA, nagging X-Thanks: All of other Gentoo developers - many ideas and lots of paint on the bikeshed
Diffstat (limited to 'media-gfx/blender')
-rw-r--r--media-gfx/blender/Manifest1
-rw-r--r--media-gfx/blender/blender-2.72b-r2.ebuild280
-rw-r--r--media-gfx/blender/blender-2.72b-r3.ebuild278
-rw-r--r--media-gfx/blender/files/blender-2.68-doxyfile.patch19
-rw-r--r--media-gfx/blender/files/blender-2.68-fix-install-rules.patch26
-rw-r--r--media-gfx/blender/files/blender-2.70-sse2.patch35
-rw-r--r--media-gfx/blender/files/blender-2.72-T42797.diff13
-rw-r--r--media-gfx/blender/metadata.xml64
8 files changed, 716 insertions, 0 deletions
diff --git a/media-gfx/blender/Manifest b/media-gfx/blender/Manifest
new file mode 100644
index 000000000000..17ebd4898350
--- /dev/null
+++ b/media-gfx/blender/Manifest
@@ -0,0 +1 @@
+DIST blender-2.72b.tar.gz 52018242 SHA256 4436c704afa28e2e5e7b28b2c06981806ddedab70565d40972e422c00644bf47 SHA512 9767797621e443ff9b6810d1713dda110f883c33626d40d7fe5dda676f549e3591516dc24b75feebd85823dd13437c34521ca752139cd31ddacf31ea6b14e124 WHIRLPOOL 3687255bc9f4195b25b66a75630676ee15e67cf10a058dca11b3472617b54aae2bebb1810cc16e19c58ca1c09b1ea8b70f72e30c05632ab0bae8910925a37a54
diff --git a/media-gfx/blender/blender-2.72b-r2.ebuild b/media-gfx/blender/blender-2.72b-r2.ebuild
new file mode 100644
index 000000000000..3e366adfd112
--- /dev/null
+++ b/media-gfx/blender/blender-2.72b-r2.ebuild
@@ -0,0 +1,280 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+## BUNDLED-DEPS:
+# extern/cuew
+# extern/Eigen3
+# extern/xdnd
+# extern/carve
+# extern/glew
+# extern/libmv
+# extern/clew
+# extern/colamd
+# extern/lzma
+# extern/gtest
+# extern/rangetree
+# extern/libredcode
+# extern/wcwidth
+# extern/binreloc
+# extern/recastnavigation
+# extern/bullet2
+# extern/lzo
+# extern/libopenjpeg
+# extern/libmv/third_party/msinttypes
+# extern/libmv/third_party/ceres
+# extern/libmv/third_party/gflags
+# extern/libmv/third_party/glog
+
+EAPI=5
+PYTHON_COMPAT=( python3_4 )
+#PATCHSET="1"
+
+inherit multilib fdo-mime gnome2-utils cmake-utils eutils python-single-r1 versionator flag-o-matic toolchain-funcs pax-utils check-reqs
+
+DESCRIPTION="3D Creation/Animation/Publishing System"
+HOMEPAGE="http://www.blender.org"
+
+case ${PV} in
+ *_p*)
+ SRC_URI="http://dev.gentoo.org/~lu_zero/${P}.tar.gz" ;;
+ *)
+ SRC_URI="http://download.blender.org/source/${P}.tar.gz" ;;
+esac
+
+if [[ -n ${PATCHSET} ]]; then
+ SRC_URI+=" http://dev.gentoo.org/~flameeyes/${PN}/${P}-patches-${PATCHSET}.tar.xz"
+fi
+
+SLOT="0"
+LICENSE="|| ( GPL-2 BL )"
+KEYWORDS="~amd64 ~x86"
+IUSE="+boost +bullet collada colorio cycles +dds debug doc +elbeem ffmpeg fftw +game-engine jack jpeg2k ndof nls openal openimageio +opennl openmp +openexr player redcode sdl sndfile cpu_flags_x86_sse cpu_flags_x86_sse2 tiff"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}
+ player? ( game-engine )
+ redcode? ( jpeg2k ffmpeg )
+ cycles? ( boost openexr tiff )
+ nls? ( boost )
+ game-engine? ( boost )"
+
+RDEPEND="
+ ${PYTHON_DEPS}
+ dev-python/numpy[${PYTHON_USEDEP}]
+ dev-python/requests[${PYTHON_USEDEP}]
+ >=media-libs/freetype-2.0:2
+ media-libs/glew
+ media-libs/libpng:0
+ media-libs/libsamplerate
+ sci-libs/ldl
+ sys-libs/zlib
+ virtual/glu
+ virtual/jpeg
+ virtual/libintl
+ virtual/opengl
+ x11-libs/libX11
+ x11-libs/libXi
+ x11-libs/libXxf86vm
+ boost? ( >=dev-libs/boost-1.44[nls?,threads(+)] )
+ collada? ( media-libs/opencollada )
+ colorio? ( <=media-libs/opencolorio-1.0.9 )
+ cycles? (
+ media-libs/openimageio
+ )
+ ffmpeg? (
+ || (
+ >=media-video/ffmpeg-2.1.4:0[x264,mp3,encode,theora,jpeg2k?]
+ >=media-video/libav-9[x264,mp3,encode,theora,jpeg2k?]
+ )
+ )
+ fftw? ( sci-libs/fftw:3.0 )
+ jack? ( media-sound/jack-audio-connection-kit )
+ jpeg2k? ( media-libs/openjpeg:0 )
+ ndof? (
+ app-misc/spacenavd
+ dev-libs/libspnav
+ )
+ nls? ( virtual/libiconv )
+ openal? ( >=media-libs/openal-1.6.372 )
+ openimageio? ( media-libs/openimageio )
+ openexr? ( media-libs/ilmbase media-libs/openexr )
+ sdl? ( media-libs/libsdl[sound,joystick] )
+ sndfile? ( media-libs/libsndfile )
+ tiff? ( media-libs/tiff:0 )"
+DEPEND="${RDEPEND}
+ doc? (
+ app-doc/doxygen[-nodot(-),dot(+)]
+ dev-python/sphinx
+ )
+ nls? ( sys-devel/gettext )"
+
+pkg_pretend() {
+ if use openmp && ! tc-has-openmp; then
+ eerror "You are using gcc built without 'openmp' USE."
+ eerror "Switch CXX to an OpenMP capable compiler."
+ die "Need openmp"
+ fi
+
+ if use doc; then
+ CHECKREQS_DISK_BUILD="4G" check-reqs_pkg_pretend
+ fi
+}
+
+pkg_setup() {
+ python-single-r1_pkg_setup
+}
+
+src_prepare() {
+ epatch "${FILESDIR}"/${PN}-2.68-doxyfile.patch \
+ "${FILESDIR}"/${PN}-2.68-fix-install-rules.patch \
+ "${FILESDIR}"/${PN}-2.70-sse2.patch \
+ "${FILESDIR}"/${PN}-2.72-T42797.diff
+
+ epatch_user
+
+ # we don't want static glew, but it's scattered across
+ # thousand files
+ # !!!CHECK THIS SED ON EVERY VERSION BUMP!!!
+ sed -i \
+ -e '/-DGLEW_STATIC/d' \
+ $(find . -type f -name "CMakeLists.txt") || die
+
+ # linguas cleanup
+ local i
+ if ! use nls; then
+ rm -r "${S}"/release/datafiles/locale || die
+ else
+ if [[ -n "${LINGUAS+x}" ]] ; then
+ cd "${S}"/release/datafiles/locale/po
+ for i in *.po ; do
+ mylang=${i%.po}
+ has ${mylang} ${LINGUAS} || { rm -r ${i} || die ; }
+ done
+ fi
+ fi
+}
+
+src_configure() {
+ # FIX: forcing '-funsigned-char' fixes an anti-aliasing issue with menu
+ # shadows, see bug #276338 for reference
+ append-flags -funsigned-char
+ append-lfs-flags
+
+ # WITH_PYTHON_SECURITY
+ # WITH_PYTHON_SAFETY
+ local mycmakeargs=(
+ -DCMAKE_INSTALL_PREFIX=/usr
+ -DWITH_INSTALL_PORTABLE=OFF
+ $(cmake-utils_use_with boost BOOST)
+ $(cmake-utils_use_with cycles CYCLES)
+ $(cmake-utils_use_with collada OPENCOLLADA)
+ $(cmake-utils_use_with dds IMAGE_DDS)
+ $(cmake-utils_use_with elbeem MOD_FLUID)
+ $(cmake-utils_use_with ffmpeg CODEC_FFMPEG)
+ $(cmake-utils_use_with fftw FFTW3)
+ $(cmake-utils_use_with fftw MOD_OCEANSIM)
+ $(cmake-utils_use_with game-engine GAMEENGINE)
+ $(cmake-utils_use_with nls INTERNATIONAL)
+ $(cmake-utils_use_with jack JACK)
+ $(cmake-utils_use_with jpeg2k IMAGE_OPENJPEG)
+ $(cmake-utils_use_with openimageio OPENIMAGEIO)
+ $(cmake-utils_use_with openal OPENAL)
+ $(cmake-utils_use_with openexr IMAGE_OPENEXR)
+ $(cmake-utils_use_with openmp OPENMP)
+ $(cmake-utils_use_with opennl OPENNL)
+ $(cmake-utils_use_with player PLAYER)
+ $(cmake-utils_use_with redcode IMAGE_REDCODE)
+ $(cmake-utils_use_with sdl SDL)
+ $(cmake-utils_use_with sndfile CODEC_SNDFILE)
+ $(cmake-utils_use_with cpu_flags_x86_sse RAYOPTIMIZATION)
+ $(cmake-utils_use_with cpu_flags_x86_sse2 SSE2)
+ $(cmake-utils_use_with bullet BULLET)
+ $(cmake-utils_use_with tiff IMAGE_TIFF)
+ $(cmake-utils_use_with colorio OPENCOLORIO)
+ $(cmake-utils_use_with ndof INPUT_NDOF)
+ -DWITH_PYTHON_INSTALL=OFF
+ -DWITH_PYTHON_INSTALL_NUMPY=OFF
+ -DWITH_STATIC_LIBS=OFF
+ -DWITH_SYSTEM_GLEW=ON
+ -DWITH_SYSTEM_OPENJPEG=ON
+ -DWITH_SYSTEM_BULLET=OFF
+ -DPYTHON_VERSION="${EPYTHON/python/}"
+ -DPYTHON_LIBRARY="$(python_get_library_path)"
+ -DPYTHON_INCLUDE_DIR="$(python_get_includedir)"
+ )
+ cmake-utils_src_configure
+}
+
+src_compile() {
+ cmake-utils_src_compile
+
+ if use doc; then
+ einfo "Generating Blender C/C++ API docs ..."
+ cd "${CMAKE_USE_DIR}"/doc/doxygen || die
+ doxygen -u Doxyfile
+ doxygen || die "doxygen failed to build API docs."
+
+ cd "${CMAKE_USE_DIR}" || die
+ einfo "Generating (BPY) Blender Python API docs ..."
+ "${BUILD_DIR}"/bin/blender --background --python doc/python_api/sphinx_doc_gen.py -noaudio || die "blender failed."
+
+ cd "${CMAKE_USE_DIR}"/doc/python_api || die
+ sphinx-build sphinx-in BPY_API || die "sphinx failed."
+ fi
+}
+
+src_test() { :; }
+
+src_install() {
+ local i
+
+ # Pax mark blender for hardened support.
+ pax-mark m "${CMAKE_BUILD_DIR}"/bin/blender
+
+ if use doc; then
+ docinto "API/python"
+ dohtml -r "${CMAKE_USE_DIR}"/doc/python_api/BPY_API/*
+
+ docinto "API/blender"
+ dohtml -r "${CMAKE_USE_DIR}"/doc/doxygen/html/*
+ fi
+
+ # fucked up cmake will relink binary for no reason
+ emake -C "${CMAKE_BUILD_DIR}" DESTDIR="${D}" install/fast
+
+ # fix doc installdir
+ dohtml "${CMAKE_USE_DIR}"/release/text/readme.html
+ rm -rf "${ED%/}"/usr/share/doc/blender
+
+ python_fix_shebang "${ED%/}"/usr/bin/blender-thumbnailer.py
+ python_optimize "${ED%/}"/usr/share/blender/${PV}/scripts
+}
+
+pkg_preinst() {
+ gnome2_icon_savelist
+}
+
+pkg_postinst() {
+ elog
+ elog "Blender uses python integration. As such, may have some"
+ elog "inherit risks with running unknown python scripting."
+ elog
+ elog "It is recommended to change your blender temp directory"
+ elog "from /tmp to /home/user/tmp or another tmp file under your"
+ elog "home directory. This can be done by starting blender, then"
+ elog "dragging the main menu down do display all paths."
+ elog
+ ewarn
+ ewarn "This ebuild does not unbundle the massive amount of 3rd party"
+ ewarn "libraries which are shipped with blender. Note that"
+ ewarn "these have caused security issues in the past."
+ ewarn "If you are concerned about security, file a bug upstream:"
+ ewarn " https://developer.blender.org/"
+ ewarn
+ gnome2_icon_cache_update
+ fdo-mime_desktop_database_update
+}
+
+pkg_postrm() {
+ gnome2_icon_cache_update
+ fdo-mime_desktop_database_update
+}
diff --git a/media-gfx/blender/blender-2.72b-r3.ebuild b/media-gfx/blender/blender-2.72b-r3.ebuild
new file mode 100644
index 000000000000..cd8c51fc9d3b
--- /dev/null
+++ b/media-gfx/blender/blender-2.72b-r3.ebuild
@@ -0,0 +1,278 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+## BUNDLED-DEPS:
+# extern/cuew
+# extern/Eigen3
+# extern/xdnd
+# extern/carve
+# extern/glew
+# extern/libmv
+# extern/clew
+# extern/colamd
+# extern/lzma
+# extern/gtest
+# extern/rangetree
+# extern/libredcode
+# extern/wcwidth
+# extern/binreloc
+# extern/recastnavigation
+# extern/bullet2
+# extern/lzo
+# extern/libopenjpeg
+# extern/libmv/third_party/msinttypes
+# extern/libmv/third_party/ceres
+# extern/libmv/third_party/gflags
+# extern/libmv/third_party/glog
+
+EAPI=5
+PYTHON_COMPAT=( python3_4 )
+#PATCHSET="1"
+
+inherit multilib fdo-mime gnome2-utils cmake-utils eutils python-single-r1 versionator flag-o-matic toolchain-funcs pax-utils check-reqs
+
+DESCRIPTION="3D Creation/Animation/Publishing System"
+HOMEPAGE="http://www.blender.org"
+
+case ${PV} in
+ *_p*)
+ SRC_URI="http://dev.gentoo.org/~lu_zero/${P}.tar.gz" ;;
+ *)
+ SRC_URI="http://download.blender.org/source/${P}.tar.gz" ;;
+esac
+
+if [[ -n ${PATCHSET} ]]; then
+ SRC_URI+=" http://dev.gentoo.org/~flameeyes/${PN}/${P}-patches-${PATCHSET}.tar.xz"
+fi
+
+SLOT="0"
+LICENSE="|| ( GPL-2 BL )"
+KEYWORDS="~amd64 ~x86"
+IUSE="+boost +bullet collada colorio cycles +dds debug doc +elbeem ffmpeg fftw +game-engine jack jpeg2k libav ndof nls openal openimageio +opennl openmp +openexr player redcode sdl sndfile cpu_flags_x86_sse cpu_flags_x86_sse2 tiff"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}
+ player? ( game-engine )
+ redcode? ( jpeg2k ffmpeg )
+ cycles? ( boost openexr tiff )
+ nls? ( boost )
+ game-engine? ( boost )"
+
+RDEPEND="
+ ${PYTHON_DEPS}
+ dev-python/numpy[${PYTHON_USEDEP}]
+ dev-python/requests[${PYTHON_USEDEP}]
+ >=media-libs/freetype-2.0:2
+ media-libs/glew
+ media-libs/libpng:0
+ media-libs/libsamplerate
+ sci-libs/ldl
+ sys-libs/zlib
+ virtual/glu
+ virtual/jpeg
+ virtual/libintl
+ virtual/opengl
+ x11-libs/libX11
+ x11-libs/libXi
+ x11-libs/libXxf86vm
+ boost? ( >=dev-libs/boost-1.44[nls?,threads(+)] )
+ collada? ( media-libs/opencollada )
+ colorio? ( <=media-libs/opencolorio-1.0.9 )
+ cycles? (
+ media-libs/openimageio
+ )
+ ffmpeg? (
+ !libav? ( >=media-video/ffmpeg-2.1.4:0=[x264,mp3,encode,theora,jpeg2k?] )
+ libav? ( >=media-video/libav-9:0=[x264,mp3,encode,theora,jpeg2k?] )
+ )
+ fftw? ( sci-libs/fftw:3.0 )
+ jack? ( media-sound/jack-audio-connection-kit )
+ jpeg2k? ( media-libs/openjpeg:0 )
+ ndof? (
+ app-misc/spacenavd
+ dev-libs/libspnav
+ )
+ nls? ( virtual/libiconv )
+ openal? ( >=media-libs/openal-1.6.372 )
+ openimageio? ( media-libs/openimageio )
+ openexr? ( media-libs/ilmbase media-libs/openexr )
+ sdl? ( media-libs/libsdl[sound,joystick] )
+ sndfile? ( media-libs/libsndfile )
+ tiff? ( media-libs/tiff:0 )"
+DEPEND="${RDEPEND}
+ doc? (
+ app-doc/doxygen[-nodot(-),dot(+)]
+ dev-python/sphinx
+ )
+ nls? ( sys-devel/gettext )"
+
+pkg_pretend() {
+ if use openmp && ! tc-has-openmp; then
+ eerror "You are using gcc built without 'openmp' USE."
+ eerror "Switch CXX to an OpenMP capable compiler."
+ die "Need openmp"
+ fi
+
+ if use doc; then
+ CHECKREQS_DISK_BUILD="4G" check-reqs_pkg_pretend
+ fi
+}
+
+pkg_setup() {
+ python-single-r1_pkg_setup
+}
+
+src_prepare() {
+ epatch "${FILESDIR}"/${PN}-2.68-doxyfile.patch \
+ "${FILESDIR}"/${PN}-2.68-fix-install-rules.patch \
+ "${FILESDIR}"/${PN}-2.70-sse2.patch \
+ "${FILESDIR}"/${PN}-2.72-T42797.diff
+
+ epatch_user
+
+ # we don't want static glew, but it's scattered across
+ # thousand files
+ # !!!CHECK THIS SED ON EVERY VERSION BUMP!!!
+ sed -i \
+ -e '/-DGLEW_STATIC/d' \
+ $(find . -type f -name "CMakeLists.txt") || die
+
+ # linguas cleanup
+ local i
+ if ! use nls; then
+ rm -r "${S}"/release/datafiles/locale || die
+ else
+ if [[ -n "${LINGUAS+x}" ]] ; then
+ cd "${S}"/release/datafiles/locale/po
+ for i in *.po ; do
+ mylang=${i%.po}
+ has ${mylang} ${LINGUAS} || { rm -r ${i} || die ; }
+ done
+ fi
+ fi
+}
+
+src_configure() {
+ # FIX: forcing '-funsigned-char' fixes an anti-aliasing issue with menu
+ # shadows, see bug #276338 for reference
+ append-flags -funsigned-char
+ append-lfs-flags
+
+ # WITH_PYTHON_SECURITY
+ # WITH_PYTHON_SAFETY
+ local mycmakeargs=(
+ -DCMAKE_INSTALL_PREFIX=/usr
+ -DWITH_INSTALL_PORTABLE=OFF
+ $(cmake-utils_use_with boost BOOST)
+ $(cmake-utils_use_with cycles CYCLES)
+ $(cmake-utils_use_with collada OPENCOLLADA)
+ $(cmake-utils_use_with dds IMAGE_DDS)
+ $(cmake-utils_use_with elbeem MOD_FLUID)
+ $(cmake-utils_use_with ffmpeg CODEC_FFMPEG)
+ $(cmake-utils_use_with fftw FFTW3)
+ $(cmake-utils_use_with fftw MOD_OCEANSIM)
+ $(cmake-utils_use_with game-engine GAMEENGINE)
+ $(cmake-utils_use_with nls INTERNATIONAL)
+ $(cmake-utils_use_with jack JACK)
+ $(cmake-utils_use_with jpeg2k IMAGE_OPENJPEG)
+ $(cmake-utils_use_with openimageio OPENIMAGEIO)
+ $(cmake-utils_use_with openal OPENAL)
+ $(cmake-utils_use_with openexr IMAGE_OPENEXR)
+ $(cmake-utils_use_with openmp OPENMP)
+ $(cmake-utils_use_with opennl OPENNL)
+ $(cmake-utils_use_with player PLAYER)
+ $(cmake-utils_use_with redcode IMAGE_REDCODE)
+ $(cmake-utils_use_with sdl SDL)
+ $(cmake-utils_use_with sndfile CODEC_SNDFILE)
+ $(cmake-utils_use_with cpu_flags_x86_sse RAYOPTIMIZATION)
+ $(cmake-utils_use_with cpu_flags_x86_sse2 SSE2)
+ $(cmake-utils_use_with bullet BULLET)
+ $(cmake-utils_use_with tiff IMAGE_TIFF)
+ $(cmake-utils_use_with colorio OPENCOLORIO)
+ $(cmake-utils_use_with ndof INPUT_NDOF)
+ -DWITH_PYTHON_INSTALL=OFF
+ -DWITH_PYTHON_INSTALL_NUMPY=OFF
+ -DWITH_STATIC_LIBS=OFF
+ -DWITH_SYSTEM_GLEW=ON
+ -DWITH_SYSTEM_OPENJPEG=ON
+ -DWITH_SYSTEM_BULLET=OFF
+ -DPYTHON_VERSION="${EPYTHON/python/}"
+ -DPYTHON_LIBRARY="$(python_get_library_path)"
+ -DPYTHON_INCLUDE_DIR="$(python_get_includedir)"
+ )
+ cmake-utils_src_configure
+}
+
+src_compile() {
+ cmake-utils_src_compile
+
+ if use doc; then
+ einfo "Generating Blender C/C++ API docs ..."
+ cd "${CMAKE_USE_DIR}"/doc/doxygen || die
+ doxygen -u Doxyfile
+ doxygen || die "doxygen failed to build API docs."
+
+ cd "${CMAKE_USE_DIR}" || die
+ einfo "Generating (BPY) Blender Python API docs ..."
+ "${BUILD_DIR}"/bin/blender --background --python doc/python_api/sphinx_doc_gen.py -noaudio || die "blender failed."
+
+ cd "${CMAKE_USE_DIR}"/doc/python_api || die
+ sphinx-build sphinx-in BPY_API || die "sphinx failed."
+ fi
+}
+
+src_test() { :; }
+
+src_install() {
+ local i
+
+ # Pax mark blender for hardened support.
+ pax-mark m "${CMAKE_BUILD_DIR}"/bin/blender
+
+ if use doc; then
+ docinto "API/python"
+ dohtml -r "${CMAKE_USE_DIR}"/doc/python_api/BPY_API/*
+
+ docinto "API/blender"
+ dohtml -r "${CMAKE_USE_DIR}"/doc/doxygen/html/*
+ fi
+
+ # fucked up cmake will relink binary for no reason
+ emake -C "${CMAKE_BUILD_DIR}" DESTDIR="${D}" install/fast
+
+ # fix doc installdir
+ dohtml "${CMAKE_USE_DIR}"/release/text/readme.html
+ rm -rf "${ED%/}"/usr/share/doc/blender
+
+ python_fix_shebang "${ED%/}"/usr/bin/blender-thumbnailer.py
+ python_optimize "${ED%/}"/usr/share/blender/${PV}/scripts
+}
+
+pkg_preinst() {
+ gnome2_icon_savelist
+}
+
+pkg_postinst() {
+ elog
+ elog "Blender uses python integration. As such, may have some"
+ elog "inherit risks with running unknown python scripting."
+ elog
+ elog "It is recommended to change your blender temp directory"
+ elog "from /tmp to /home/user/tmp or another tmp file under your"
+ elog "home directory. This can be done by starting blender, then"
+ elog "dragging the main menu down do display all paths."
+ elog
+ ewarn
+ ewarn "This ebuild does not unbundle the massive amount of 3rd party"
+ ewarn "libraries which are shipped with blender. Note that"
+ ewarn "these have caused security issues in the past."
+ ewarn "If you are concerned about security, file a bug upstream:"
+ ewarn " https://developer.blender.org/"
+ ewarn
+ gnome2_icon_cache_update
+ fdo-mime_desktop_database_update
+}
+
+pkg_postrm() {
+ gnome2_icon_cache_update
+ fdo-mime_desktop_database_update
+}
diff --git a/media-gfx/blender/files/blender-2.68-doxyfile.patch b/media-gfx/blender/files/blender-2.68-doxyfile.patch
new file mode 100644
index 000000000000..c11c793fda97
--- /dev/null
+++ b/media-gfx/blender/files/blender-2.68-doxyfile.patch
@@ -0,0 +1,19 @@
+commit 62308d9fc24bde22a50497816c44c8ca91f96f63
+Author: hasufell <hasufell@gentoo.org>
+Date: Fri Jul 19 18:36:34 2013 +0200
+
+ remove hhc.exe reference
+
+diff --git a/doc/doxygen/Doxyfile b/doc/doxygen/Doxyfile
+index 397cc30..ac61756 100644
+--- a/doc/doxygen/Doxyfile
++++ b/doc/doxygen/Doxyfile
+@@ -1051,7 +1051,7 @@ CHM_FILE = blender.chm
+ # the HTML help compiler (hhc.exe). If non-empty doxygen will try to run
+ # the HTML help compiler on the generated index.hhp.
+
+-HHC_LOCATION = "C:/Program Files (x86)/HTML Help Workshop/hhc.exe"
++HHC_LOCATION =
+
+ # If the GENERATE_HTMLHELP tag is set to YES, the GENERATE_CHI flag
+ # controls if a separate .chi index file is generated (YES) or that
diff --git a/media-gfx/blender/files/blender-2.68-fix-install-rules.patch b/media-gfx/blender/files/blender-2.68-fix-install-rules.patch
new file mode 100644
index 000000000000..aa8ecc9f6174
--- /dev/null
+++ b/media-gfx/blender/files/blender-2.68-fix-install-rules.patch
@@ -0,0 +1,26 @@
+commit 94eed33f878e35a8c7b69b0c23b3b30026460f33
+Author: hasufell <hasufell@gentoo.org>
+Date: Fri Jul 19 18:50:08 2013 +0200
+
+ remove stupid uninstall snippet
+
+ whoever coded this... it is dangerous
+ uninstall methods have NO PLACE in install rules
+
+diff --git a/source/creator/CMakeLists.txt b/source/creator/CMakeLists.txt
+index c84d944..2b9bf46 100644
+--- a/source/creator/CMakeLists.txt
++++ b/source/creator/CMakeLists.txt
+@@ -268,12 +268,6 @@ endif()
+ # Install Targets (Generic, All Platforms)
+
+
+-# important to make a clean install each time, else old scripts get loaded.
+-install(
+- CODE
+- "file(REMOVE_RECURSE ${TARGETDIR_VER})"
+-)
+-
+ if(WITH_PYTHON)
+ # install(CODE "message(\"copying blender scripts...\")")
+
diff --git a/media-gfx/blender/files/blender-2.70-sse2.patch b/media-gfx/blender/files/blender-2.70-sse2.patch
new file mode 100644
index 000000000000..6fc870ea3258
--- /dev/null
+++ b/media-gfx/blender/files/blender-2.70-sse2.patch
@@ -0,0 +1,35 @@
+commit 0e0b27a589680e10e38a26575ad4dba8f3af2ec6
+Author: hasufell <hasufell@gentoo.org>
+Date: Fri Jul 19 18:50:19 2013 +0200
+
+ add option to explicitly control sse2 optimization
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 78bb3c6..d5f4576 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -86,6 +86,7 @@
+ #-----------------------------------------------------------------------------
+ # Load some macros.
+ include(build_files/cmake/macros.cmake)
++include(CMakeDependentOption)
+
+
+ #-----------------------------------------------------------------------------
+@@ -251,6 +252,7 @@
+ # Misc
+ option(WITH_INPUT_NDOF "Enable NDOF input devices (SpaceNavigator and friends)" ON)
+ option(WITH_RAYOPTIMIZATION "Enable use of SIMD (SSE) optimizations for the raytracer" ON)
++cmake_dependent_option(WITH_SSE2 "SSE2 optimizations" ON WITH_RAYOPTIMIZATION OFF)
+ option(WITH_OPENNL "Enable use of Open Numerical Library" ON)
+ if(UNIX AND NOT APPLE)
+ option(WITH_INSTALL_PORTABLE "Install redistributeable runtime, otherwise install into CMAKE_INSTALL_PREFIX" ON)
+@@ -1950,7 +1952,7 @@
+ set(PLATFORM_CFLAGS " ${COMPILER_SSE_FLAG} ${PLATFORM_CFLAGS}")
+ add_definitions(-D__SSE__ -D__MMX__)
+ endif()
+- if(SUPPORT_SSE2_BUILD)
++ if(WITH_SSE2 AND SUPPORT_SSE2_BUILD)
+ set(PLATFORM_CFLAGS " ${COMPILER_SSE2_FLAG} ${PLATFORM_CFLAGS}")
+ add_definitions(-D__SSE2__)
+ if(NOT SUPPORT_SSE_BUILD) # dont double up
diff --git a/media-gfx/blender/files/blender-2.72-T42797.diff b/media-gfx/blender/files/blender-2.72-T42797.diff
new file mode 100644
index 000000000000..d1db31882019
--- /dev/null
+++ b/media-gfx/blender/files/blender-2.72-T42797.diff
@@ -0,0 +1,13 @@
+--- source/blender/blenfont/intern/blf_glyph.c
++++ source/blender/blenfont/intern/blf_glyph.c
+@@ -262,8 +262,8 @@
+ g->xoff = -1;
+ g->yoff = -1;
+ bitmap = slot->bitmap;
+- g->width = bitmap.width;
+- g->height = bitmap.rows;
++ g->width = (int)bitmap.width;
++ g->height = (int)bitmap.rows;
+
+ if (g->width && g->height) {
+ if (sharp) {
diff --git a/media-gfx/blender/metadata.xml b/media-gfx/blender/metadata.xml
new file mode 100644
index 000000000000..f2841cfbe2ea
--- /dev/null
+++ b/media-gfx/blender/metadata.xml
@@ -0,0 +1,64 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>graphics</herd>
+
+ <maintainer>
+ <email>hasufell@gentoo.org</email>
+ <name>Julian Ospald</name>
+ </maintainer>
+
+ <maintainer>
+ <email>lu_zero@gentoo.org</email>
+ <name>Luca Barbato</name>
+ </maintainer>
+
+ <longdescription>
+ Blender, the open source software for 3D modeling, animation,
+ rendering, post-production, interactive creation and playback.
+ </longdescription>
+
+ <use>
+ <flag name='game-engine' restrict='&gt;=media-gfx/blender-2.50'>
+ Adds Game Engine support to Blender.
+ </flag>
+ <flag name='collada'>
+ Add support for Collada interchange format through
+ <pkg>media-libs/opencollada</pkg>.
+ </flag>
+ <flag name='cycles'>
+ Build cycles renderer (requires <pkg>media-libs/openimageio</pkg> and
+ <pkg>dev-libs/boost</pkg>).
+ </flag>
+ <flag name='dds'>
+ Adds DDS textures support to Blender.
+ </flag>
+ <flag name='player'>
+ Build the Blender Player. THis requires the Game engine.
+ </flag>
+ <flag name='elbeem'>
+ Adds surface fluid simulation to Blender using El'Beem library.
+ </flag>
+ <flag name="doc">
+ Build C and Python API documentation directly from the source code.
+ </flag>
+ <flag name="redcode">
+ This flag add support for RED CODE camera digital format (5K HD
+ images *.r3d) - EXPERIMENTAL.
+ </flag>
+ <flag name="boost">
+ Enable features depending on boost.
+ </flag>
+ <flag name="bullet">
+ Enable Bullet (Physics Engine).
+ </flag>
+ <flag name="colorio">
+ Enable OpenColorIO color management.
+ </flag>
+ <flag name="ndof">
+ Enable NDOF input devices (SpaceNavigator and friends).
+ </flag>
+ <flag name="openimageio">Enable OpenImageIO Support</flag>
+ <flag name="opennl">Enable use of Open Numerical Library</flag>
+ </use>
+</pkgmetadata>