diff options
author | Michał Górny <mgorny@gentoo.org> | 2021-11-08 11:57:44 +0100 |
---|---|---|
committer | Michał Górny <mgorny@gentoo.org> | 2021-11-08 12:25:20 +0100 |
commit | 4a316631991487a4e893b22db1942a296bbda87d (patch) | |
tree | 6a43935327e1bee47bb8029f7560731be54cc806 /media-gfx | |
parent | media-gfx/plantuml: removed obsolete 1.2021.5 (diff) | |
download | gentoo-4a316631991487a4e893b22db1942a296bbda87d.tar.gz gentoo-4a316631991487a4e893b22db1942a296bbda87d.tar.bz2 gentoo-4a316631991487a4e893b22db1942a296bbda87d.zip |
media-gfx/blender: Remove versions requiring LLVM 10
Signed-off-by: Michał Górny <mgorny@gentoo.org>
Diffstat (limited to 'media-gfx')
-rw-r--r-- | media-gfx/blender/Manifest | 4 | ||||
-rw-r--r-- | media-gfx/blender/blender-2.83.15-r1.ebuild | 380 | ||||
-rw-r--r-- | media-gfx/blender/blender-2.83.16-r1.ebuild | 380 | ||||
-rw-r--r-- | media-gfx/blender/blender-2.83.17-r1.ebuild | 377 | ||||
-rw-r--r-- | media-gfx/blender/files/blender-2.83.13-ffmpeg-4_4.patch | 27 | ||||
-rw-r--r-- | media-gfx/blender/files/blender-2.83.6-constraints_test.patch | 13 | ||||
-rw-r--r-- | media-gfx/blender/files/blender-2.83.6-fix_opevdb_abi.patch | 21 | ||||
-rw-r--r-- | media-gfx/blender/files/blender-2.83.6-libmv_eigen_alignment.patch | 219 |
8 files changed, 0 insertions, 1421 deletions
diff --git a/media-gfx/blender/Manifest b/media-gfx/blender/Manifest index 142447598c2d..24a6d396c78c 100644 --- a/media-gfx/blender/Manifest +++ b/media-gfx/blender/Manifest @@ -1,7 +1,3 @@ -DIST blender-2.83.1-tests.tar.bz2 266633785 BLAKE2B 8d8102c3107480de95dfd9ef9dabba1cd82893aad553af2ff5ef1afadc831dc5ccf5553c41466511ecb2a1435bc79c936ad64a78bdd4375e3e30af85b69807c6 SHA512 3ffba6fa8401bba3e2bdbccf7067761114d516371c7778a2f6604a243fd8610e26a30b88a32728c26f7e6274182d298752f32b5e76abf8216be0ec4b3ce38cd9 -DIST blender-2.83.15.tar.xz 39125740 BLAKE2B 687097b45b76b474b1c172c9b8ccf5da1bfc24539d0db894d04c7837572b16c1f552757fd1482219d58afa56c573229878fb43bbecd95e3d61314f2ab05efafa SHA512 2836533691bae0a7942197e67232b396b892cd95c0f07ab561f7de8458b354fe4045453855585484dd533ae76588ea3888f880763b042a264fb813a43933fc25 -DIST blender-2.83.16.tar.xz 39135184 BLAKE2B 2515822373f6a9343c760ad656de732094ee58a9354423e0f3d7bf1042220fc54af7e1d9f5b59a170a23e8b1b57a4b7f09867a000a57a6e4e820ff5c6cdd47b6 SHA512 ef78278387ae981972942ee4724abcb11ca19da2b88a3c8bbe1e9aafb93f28d84d4c79d01542e11218bd58bfec80fcfdbffdfd28896d146edd34181a7439dbd5 -DIST blender-2.83.17.tar.xz 39128468 BLAKE2B 3a20f6125f94e0d6de4d78e7a784c5a37faf23603e055a28ee67e48a41d09d3715222b2ac4f04ed38619dca686e7e0985ad60c983ee3a15c96042e419f152e69 SHA512 1e4c9a1f604802fb94c8e844f3878756e2ba0a6c29a6fb8863bc21ada1c8e14e775b203ab21bc4d53e85eb4e909e889204bb9f5befcff56cec3d56c2e987c2a0 DIST blender-2.93.0-tests.tar.bz2 286918586 BLAKE2B a2c2c2e900e401a470208e8e5d0082d45e2f8db13b45213f31808d50ae5ea330360702b8e775bdb3307eb753aa7c3264803e9e470b3fb778f8bd87272cd72513 SHA512 0e5e4c67944c4f76df62cdbaf26ba284c415675074e66685c01ec9584a544c47f616bae8fb2ff2b7e03290620d54dc1033b4b0fc617acb1232a90439e96325fe DIST blender-2.93.0.tar.xz 42967016 BLAKE2B 1e7b54f08415de8a8908a285ae35c1e18558bf7cab42c5c135323d10ac9a73ec69aa0addd536355a4d19262438a615e03f09dc123b697cbab484e33350bb5ee3 SHA512 660962e5368c8ff52ed095aba97d63c22aa8e2fdcb2042b1299b6d6edeb7eb1f702a9ee95ee7e47824681f9f48b971d2e32ec32cc6264165a4196b5f36c4a66d DIST blender-2.93.1.tar.xz 42960100 BLAKE2B eda0a8c0414d1f7c89d21e34ba238b0cbe337ea755d6f10792e7c3bd5e15934184d3bd853ed636764776095ce1e3f081d63386b7c13fb7ac666580bf9eeb43c8 SHA512 b14e8cca248c53e4a93976d7fa1cd1ab92a7d18a3809b2a535881731aad2f68d8d155ad175b27aa1890714b81aa6648604a614cacc90e95b7269569661e393b1 diff --git a/media-gfx/blender/blender-2.83.15-r1.ebuild b/media-gfx/blender/blender-2.83.15-r1.ebuild deleted file mode 100644 index 6175ce975261..000000000000 --- a/media-gfx/blender/blender-2.83.15-r1.ebuild +++ /dev/null @@ -1,380 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -PYTHON_COMPAT=( python3_{7,8} ) - -inherit check-reqs cmake flag-o-matic pax-utils python-single-r1 toolchain-funcs xdg-utils - -DESCRIPTION="3D Creation/Animation/Publishing System" -HOMEPAGE="https://www.blender.org" - -if [[ ${PV} = *9999* ]] ; then - inherit git-r3 - EGIT_REPO_URI="https://git.blender.org/blender.git" -else - SRC_URI="https://download.blender.org/source/${P}.tar.xz" - TEST_TARBALL_VERSION=2.83.1 - SRC_URI+=" test? ( https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${PN}-${TEST_TARBALL_VERSION}-tests.tar.bz2 )" - KEYWORDS="amd64 ~x86" -fi - -SLOT="${PV%.*}" -LICENSE="|| ( GPL-3 BL )" -IUSE="+bullet +dds +fluid +openexr +system-python +system-numpy +tbb \ - alembic collada +color-management cuda cycles \ - debug doc ffmpeg fftw headless jack jemalloc jpeg2k \ - man ndof nls openal opencl openimageio openmp opensubdiv \ - openvdb osl sdl sndfile standalone test tiff valgrind" -RESTRICT="!test? ( test )" - -REQUIRED_USE="${PYTHON_REQUIRED_USE} - alembic? ( openexr ) - cuda? ( cycles ) - cycles? ( openexr tiff openimageio ) - fluid? ( tbb ) - opencl? ( cycles ) - openvdb? ( tbb ) - osl? ( cycles ) - standalone? ( cycles ) - test? ( color-management osl )" - -# Library versions for official builds can be found in the blender source directory in: -# build_files/build_environment/install_deps.sh -RDEPEND="${PYTHON_DEPS} - dev-libs/boost:=[nls?,threads(+)] - dev-libs/lzo:2= - $(python_gen_cond_dep ' - dev-python/numpy[${PYTHON_USEDEP}] - dev-python/requests[${PYTHON_USEDEP}] - ') - media-libs/freetype:= - media-libs/glew:* - media-libs/libpng:= - media-libs/libsamplerate - sys-libs/zlib:= - virtual/glu - virtual/jpeg - virtual/libintl - virtual/opengl - alembic? ( >=media-gfx/alembic-1.7.12[boost(+),hdf(+)] ) - collada? ( >=media-libs/opencollada-1.6.68 ) - color-management? ( <media-libs/opencolorio-2.0.0 ) - cuda? ( dev-util/nvidia-cuda-toolkit:= ) - ffmpeg? ( media-video/ffmpeg:=[x264,mp3,encode,theora,jpeg2k,vpx,vorbis,opus,xvid] ) - fftw? ( sci-libs/fftw:3.0= ) - !headless? ( - x11-libs/libX11 - x11-libs/libXi - x11-libs/libXxf86vm - ) - jack? ( virtual/jack ) - jemalloc? ( dev-libs/jemalloc:= ) - jpeg2k? ( media-libs/openjpeg:2= ) - ndof? ( - app-misc/spacenavd - dev-libs/libspnav - ) - nls? ( virtual/libiconv ) - openal? ( media-libs/openal ) - opencl? ( virtual/opencl ) - openimageio? ( >=media-libs/openimageio-2.2.13.1:= ) - openexr? ( - media-libs/ilmbase:= - media-libs/openexr:= - ) - opensubdiv? ( >=media-libs/opensubdiv-3.4.0[cuda=,opencl=] ) - openvdb? ( - >=media-gfx/openvdb-7.0.0 - dev-libs/c-blosc:= - ) - osl? ( <media-libs/osl-1.11.0 ) - sdl? ( media-libs/libsdl2[sound,joystick] ) - sndfile? ( media-libs/libsndfile ) - tbb? ( <dev-cpp/tbb-2021.4.0:= ) - tiff? ( media-libs/tiff ) - valgrind? ( dev-util/valgrind ) -" - -DEPEND="${RDEPEND} - dev-cpp/eigen:= -" - -BDEPEND=" - virtual/pkgconfig - doc? ( - app-doc/doxygen[dot] - dev-python/sphinx[latex] - dev-texlive/texlive-bibtexextra - dev-texlive/texlive-fontsextra - dev-texlive/texlive-fontutils - dev-texlive/texlive-latex - dev-texlive/texlive-latexextra - ) - nls? ( sys-devel/gettext ) -" - -PATCHES=( - "${FILESDIR}/blender-2.83.6-libmv_eigen_alignment.patch" - "${FILESDIR}/blender-2.83.6-constraints_test.patch" - "${FILESDIR}/blender-2.83.6-fix_opevdb_abi.patch" - "${FILESDIR}/blender-2.83.13-ffmpeg-4_4.patch" -) - -blender_check_requirements() { - [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp - - if use doc; then - CHECKREQS_DISK_BUILD="4G" check-reqs_pkg_pretend - fi -} - -blender_get_version() { - # Get blender version from blender itself. - BV=$(grep "BLENDER_VERSION " source/blender/blenkernel/BKE_blender_version.h | cut -d " " -f 3; assert) - # Add period. - BV=${BV:0:1}.${BV:1} -} - -pkg_pretend() { - blender_check_requirements -} - -pkg_setup() { - blender_check_requirements - python-single-r1_pkg_setup -} - -src_unpack() { - if [[ ${PV} = *9999* ]] ; then - git-r3_src_unpack - else - default - fi - - if use test; then - mkdir -p lib || die - mv "${WORKDIR}"/blender-${TEST_TARBALL_VERSION}-tests/tests lib || die - fi -} - -src_prepare() { - cmake_src_prepare - - blender_get_version - - # Disable MS Windows help generation. The variable doesn't do what it - # it sounds like. - sed -e "s|GENERATE_HTMLHELP = YES|GENERATE_HTMLHELP = NO|" \ - -i doc/doxygen/Doxyfile || die - - # Prepare icons and .desktop files for slotting. - sed -e "s|blender.svg|blender-${BV}.svg|" -i source/creator/CMakeLists.txt || die - sed -e "s|blender-symbolic.svg|blender-${BV}-symbolic.svg|" -i source/creator/CMakeLists.txt || die - sed -e "s|blender.desktop|blender-${BV}.desktop|" -i source/creator/CMakeLists.txt || die - sed -e "s|blender-thumbnailer.py|blender-${BV}-thumbnailer.py|" -i source/creator/CMakeLists.txt || die - - sed -e "s|Name=Blender|Name=Blender ${PV}|" -i release/freedesktop/blender.desktop || die - sed -e "s|Exec=blender|Exec=blender-${BV}|" -i release/freedesktop/blender.desktop || die - sed -e "s|Icon=blender|Icon=blender-${BV}|" -i release/freedesktop/blender.desktop || die - - mv release/freedesktop/icons/scalable/apps/blender.svg release/freedesktop/icons/scalable/apps/blender-${BV}.svg || die - mv release/freedesktop/icons/symbolic/apps/blender-symbolic.svg release/freedesktop/icons/symbolic/apps/blender-${BV}-symbolic.svg || die - mv release/freedesktop/blender.desktop release/freedesktop/blender-${BV}.desktop || die - mv release/bin/blender-thumbnailer.py release/bin/blender-${BV}-thumbnailer.py || die - - if use test; then - # Without this the tests will try to use /usr/bin/blender and /usr/share/blender/ to run the tests. - sed -e "s|string(REPLACE.*|set(TEST_INSTALL_DIR ${ED}/usr/)|g" -i tests/CMakeLists.txt || die - sed -e "s|string(REPLACE.*|set(TEST_INSTALL_DIR ${ED}/usr/)|g" -i build_files/cmake/Modules/GTestTesting.cmake || die - fi -} - -src_configure() { - # Without this the floating point math will differ when for example - # "-march=native" is set. This will make automated tests fail and we will - # not match the behaviour of some operators/modifiers with the official - # builds. - append-flags -ffp-contract=off - append-lfs-flags - - local mycmakeargs=( - -DBUILD_SHARED_LIBS=OFF - -DPYTHON_INCLUDE_DIR="$(python_get_includedir)" - -DPYTHON_LIBRARY="$(python_get_library_path)" - -DPYTHON_VERSION="${EPYTHON/python/}" - -DWITH_ALEMBIC=$(usex alembic) - -DWITH_ASSERT_ABORT=$(usex debug) - -DWITH_BOOST=ON - -DWITH_BULLET=$(usex bullet) - -DWITH_CODEC_FFMPEG=$(usex ffmpeg) - -DWITH_CODEC_SNDFILE=$(usex sndfile) - -DWITH_CXX_GUARDEDALLOC=$(usex debug) - -DWITH_CYCLES_DEVICE_CUDA=$(usex cuda TRUE FALSE) - -DWITH_CYCLES=$(usex cycles) - -DWITH_CYCLES_DEVICE_OPENCL=$(usex opencl) - -DWITH_CYCLES_STANDALONE=$(usex standalone) - -DWITH_CYCLES_STANDALONE_GUI=$(usex standalone) - -DWITH_CYCLES_OSL=$(usex osl) - -DWITH_DOC_MANPAGE=$(usex man) - -DWITH_FFTW3=$(usex fftw) - -DWITH_GTESTS=$(usex test) - -DWITH_HEADLESS=$(usex headless) - -DWITH_INSTALL_PORTABLE=OFF - -DWITH_IMAGE_DDS=$(usex dds) - -DWITH_IMAGE_OPENEXR=$(usex openexr) - -DWITH_IMAGE_OPENJPEG=$(usex jpeg2k) - -DWITH_IMAGE_TIFF=$(usex tiff) - -DWITH_INPUT_NDOF=$(usex ndof) - -DWITH_INTERNATIONAL=$(usex nls) - -DWITH_JACK=$(usex jack) - -DWITH_MEM_JEMALLOC=$(usex jemalloc) - -DWITH_MEM_VALGRIND=$(usex valgrind) - -DWITH_MOD_FLUID=$(usex fluid) - -DWITH_MOD_OCEANSIM=$(usex fftw) - -DWITH_OPENAL=$(usex openal) - -DWITH_OPENCOLLADA=$(usex collada) - -DWITH_OPENCOLORIO=$(usex color-management) - -DWITH_OPENIMAGEIO=$(usex openimageio) - -DWITH_OPENMP=$(usex openmp) - -DWITH_OPENSUBDIV=$(usex opensubdiv) - -DWITH_OPENVDB=$(usex openvdb) - -DWITH_OPENVDB_BLOSC=$(usex openvdb) - -DWITH_PYTHON_INSTALL=$(usex system-python OFF ON) - -DWITH_PYTHON_INSTALL_NUMPY=$(usex system-numpy OFF ON) - -DWITH_SDL=$(usex sdl) - -DWITH_STATIC_LIBS=OFF - -DWITH_SYSTEM_EIGEN3=ON - -DWITH_SYSTEM_GLEW=ON - -DWITH_SYSTEM_LZO=ON - -DWITH_TBB=$(usex tbb) - -DWITH_USD=OFF - ) - if ! use debug ; then - append-flags -DNDEBUG - else - append-flags -DDEBUG - fi - cmake_src_configure -} - -src_compile() { - cmake_src_compile - - if use doc; then - # Workaround for binary drivers. - addpredict /dev/ati - addpredict /dev/dri - addpredict /dev/nvidiactl - - einfo "Generating Blender C/C++ API docs ..." - cd "${CMAKE_USE_DIR}"/doc/doxygen || die - doxygen -u Doxyfile || die - 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 "sphinx failed." - - cd "${CMAKE_USE_DIR}"/doc/python_api || die - sphinx-build sphinx-in BPY_API || die "sphinx failed." - fi -} - -src_test() { - # A lot of tests needs to have access to the installed data files. - # So install them into the image directory now. - cmake_src_install - - blender_get_version - # Define custom blender data/script file paths not be able to find them otherwise during testing. - # (Because the data is in the image directory and it will default to look in /usr/share) - export BLENDER_SYSTEM_SCRIPTS=${ED}/usr/share/blender/${BV}/scripts - export BLENDER_SYSTEM_DATAFILES=${ED}/usr/share/blender/${BV}/datafiles - - # NOTE: The 'modifiers' test will fail if opensubdiv was compiled with -march=native - # This this is fixed in blender version 2.92 and up." - cmake_src_test - - # Clean up the image directory for src_install - rm -fr ${ED}/* || die -} - -src_install() { - blender_get_version - - # Pax mark blender for hardened support. - pax-mark m "${BUILD_DIR}"/bin/blender - - if use standalone; then - dobin "${BUILD_DIR}"/bin/cycles - fi - - if use doc; then - docinto "html/API/python" - dodoc -r "${CMAKE_USE_DIR}"/doc/python_api/BPY_API/. - - docinto "html/API/blender" - dodoc -r "${CMAKE_USE_DIR}"/doc/doxygen/html/. - fi - - cmake_src_install - - if use man; then - # Slot the man page - mv "${ED}/usr/share/man/man1/blender.1" "${ED}/usr/share/man/man1/blender-${BV}.1" || die - fi - - # Fix doc installdir - docinto html - dodoc "${CMAKE_USE_DIR}"/release/text/readme.html - rm -r "${ED}"/usr/share/doc/blender || die - - python_fix_shebang "${ED}/usr/bin/blender-${BV}-thumbnailer.py" - python_optimize "${ED}/usr/share/blender/${BV}/scripts" - - mv "${ED}/usr/bin/blender" "${ED}/usr/bin/blender-${BV}" || die -} - -pkg_postinst() { - elog - elog "Blender uses python integration. As such, may have some" - elog "inherent risks with running unknown python scripts." - 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 "changing the 'Temporary Files' directory in Blender preferences." - 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 - - elog "You are building Blender with a newer python version than" - elog "supported by this version upstream." - elog "If you experience breakages with e.g. plugins, please download" - elog "the official Blender LTS binary release instead." - elog "Bug: https://bugs.gentoo.org/737388" - elog - - xdg_icon_cache_update - xdg_mimeinfo_database_update - xdg_desktop_database_update -} - -pkg_postrm() { - xdg_icon_cache_update - xdg_mimeinfo_database_update - xdg_desktop_database_update - - ewarn "" - ewarn "You may want to remove the following directory." - ewarn "~/.config/${PN}/${SLOT}/cache/" - ewarn "It may contain extra render kernels not tracked by portage" - ewarn "" -} diff --git a/media-gfx/blender/blender-2.83.16-r1.ebuild b/media-gfx/blender/blender-2.83.16-r1.ebuild deleted file mode 100644 index 6f64aaa0992f..000000000000 --- a/media-gfx/blender/blender-2.83.16-r1.ebuild +++ /dev/null @@ -1,380 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -PYTHON_COMPAT=( python3_{7,8} ) - -inherit check-reqs cmake flag-o-matic pax-utils python-single-r1 toolchain-funcs xdg-utils - -DESCRIPTION="3D Creation/Animation/Publishing System" -HOMEPAGE="https://www.blender.org" - -if [[ ${PV} = *9999* ]] ; then - inherit git-r3 - EGIT_REPO_URI="https://git.blender.org/blender.git" -else - SRC_URI="https://download.blender.org/source/${P}.tar.xz" - TEST_TARBALL_VERSION=2.83.1 - SRC_URI+=" test? ( https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${PN}-${TEST_TARBALL_VERSION}-tests.tar.bz2 )" - KEYWORDS="~amd64 ~x86" -fi - -SLOT="${PV%.*}" -LICENSE="|| ( GPL-3 BL )" -IUSE="+bullet +dds +fluid +openexr +system-python +system-numpy +tbb \ - alembic collada +color-management cuda cycles \ - debug doc ffmpeg fftw headless jack jemalloc jpeg2k \ - man ndof nls openal opencl openimageio openmp opensubdiv \ - openvdb osl sdl sndfile standalone test tiff valgrind" -RESTRICT="!test? ( test )" - -REQUIRED_USE="${PYTHON_REQUIRED_USE} - alembic? ( openexr ) - cuda? ( cycles ) - cycles? ( openexr tiff openimageio ) - fluid? ( tbb ) - opencl? ( cycles ) - openvdb? ( tbb ) - osl? ( cycles ) - standalone? ( cycles ) - test? ( color-management osl )" - -# Library versions for official builds can be found in the blender source directory in: -# build_files/build_environment/install_deps.sh -RDEPEND="${PYTHON_DEPS} - dev-libs/boost:=[nls?,threads(+)] - dev-libs/lzo:2= - $(python_gen_cond_dep ' - dev-python/numpy[${PYTHON_USEDEP}] - dev-python/requests[${PYTHON_USEDEP}] - ') - media-libs/freetype:= - media-libs/glew:* - media-libs/libpng:= - media-libs/libsamplerate - sys-libs/zlib:= - virtual/glu - virtual/jpeg - virtual/libintl - virtual/opengl - alembic? ( >=media-gfx/alembic-1.7.12[boost(+),hdf(+)] ) - collada? ( >=media-libs/opencollada-1.6.68 ) - color-management? ( <media-libs/opencolorio-2.0.0 ) - cuda? ( dev-util/nvidia-cuda-toolkit:= ) - ffmpeg? ( media-video/ffmpeg:=[x264,mp3,encode,theora,jpeg2k,vpx,vorbis,opus,xvid] ) - fftw? ( sci-libs/fftw:3.0= ) - !headless? ( - x11-libs/libX11 - x11-libs/libXi - x11-libs/libXxf86vm - ) - jack? ( virtual/jack ) - jemalloc? ( dev-libs/jemalloc:= ) - jpeg2k? ( media-libs/openjpeg:2= ) - ndof? ( - app-misc/spacenavd - dev-libs/libspnav - ) - nls? ( virtual/libiconv ) - openal? ( media-libs/openal ) - opencl? ( virtual/opencl ) - openimageio? ( >=media-libs/openimageio-2.2.13.1:= ) - openexr? ( - media-libs/ilmbase:= - media-libs/openexr:= - ) - opensubdiv? ( >=media-libs/opensubdiv-3.4.0[cuda=,opencl=] ) - openvdb? ( - >=media-gfx/openvdb-7.0.0 - dev-libs/c-blosc:= - ) - osl? ( <media-libs/osl-1.11.0 ) - sdl? ( media-libs/libsdl2[sound,joystick] ) - sndfile? ( media-libs/libsndfile ) - tbb? ( <dev-cpp/tbb-2021.4.0:= ) - tiff? ( media-libs/tiff ) - valgrind? ( dev-util/valgrind ) -" - -DEPEND="${RDEPEND} - dev-cpp/eigen:= -" - -BDEPEND=" - virtual/pkgconfig - doc? ( - app-doc/doxygen[dot] - dev-python/sphinx[latex] - dev-texlive/texlive-bibtexextra - dev-texlive/texlive-fontsextra - dev-texlive/texlive-fontutils - dev-texlive/texlive-latex - dev-texlive/texlive-latexextra - ) - nls? ( sys-devel/gettext ) -" - -PATCHES=( - "${FILESDIR}/blender-2.83.6-libmv_eigen_alignment.patch" - "${FILESDIR}/blender-2.83.6-constraints_test.patch" - "${FILESDIR}/blender-2.83.6-fix_opevdb_abi.patch" - "${FILESDIR}/blender-2.83.13-ffmpeg-4_4.patch" -) - -blender_check_requirements() { - [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp - - if use doc; then - CHECKREQS_DISK_BUILD="4G" check-reqs_pkg_pretend - fi -} - -blender_get_version() { - # Get blender version from blender itself. - BV=$(grep "BLENDER_VERSION " source/blender/blenkernel/BKE_blender_version.h | cut -d " " -f 3; assert) - # Add period. - BV=${BV:0:1}.${BV:1} -} - -pkg_pretend() { - blender_check_requirements -} - -pkg_setup() { - blender_check_requirements - python-single-r1_pkg_setup -} - -src_unpack() { - if [[ ${PV} = *9999* ]] ; then - git-r3_src_unpack - else - default - fi - - if use test; then - mkdir -p lib || die - mv "${WORKDIR}"/blender-${TEST_TARBALL_VERSION}-tests/tests lib || die - fi -} - -src_prepare() { - cmake_src_prepare - - blender_get_version - - # Disable MS Windows help generation. The variable doesn't do what it - # it sounds like. - sed -e "s|GENERATE_HTMLHELP = YES|GENERATE_HTMLHELP = NO|" \ - -i doc/doxygen/Doxyfile || die - - # Prepare icons and .desktop files for slotting. - sed -e "s|blender.svg|blender-${BV}.svg|" -i source/creator/CMakeLists.txt || die - sed -e "s|blender-symbolic.svg|blender-${BV}-symbolic.svg|" -i source/creator/CMakeLists.txt || die - sed -e "s|blender.desktop|blender-${BV}.desktop|" -i source/creator/CMakeLists.txt || die - sed -e "s|blender-thumbnailer.py|blender-${BV}-thumbnailer.py|" -i source/creator/CMakeLists.txt || die - - sed -e "s|Name=Blender|Name=Blender ${PV}|" -i release/freedesktop/blender.desktop || die - sed -e "s|Exec=blender|Exec=blender-${BV}|" -i release/freedesktop/blender.desktop || die - sed -e "s|Icon=blender|Icon=blender-${BV}|" -i release/freedesktop/blender.desktop || die - - mv release/freedesktop/icons/scalable/apps/blender.svg release/freedesktop/icons/scalable/apps/blender-${BV}.svg || die - mv release/freedesktop/icons/symbolic/apps/blender-symbolic.svg release/freedesktop/icons/symbolic/apps/blender-${BV}-symbolic.svg || die - mv release/freedesktop/blender.desktop release/freedesktop/blender-${BV}.desktop || die - mv release/bin/blender-thumbnailer.py release/bin/blender-${BV}-thumbnailer.py || die - - if use test; then - # Without this the tests will try to use /usr/bin/blender and /usr/share/blender/ to run the tests. - sed -e "s|string(REPLACE.*|set(TEST_INSTALL_DIR ${ED}/usr/)|g" -i tests/CMakeLists.txt || die - sed -e "s|string(REPLACE.*|set(TEST_INSTALL_DIR ${ED}/usr/)|g" -i build_files/cmake/Modules/GTestTesting.cmake || die - fi -} - -src_configure() { - # Without this the floating point math will differ when for example - # "-march=native" is set. This will make automated tests fail and we will - # not match the behaviour of some operators/modifiers with the official - # builds. - append-flags -ffp-contract=off - append-lfs-flags - - local mycmakeargs=( - -DBUILD_SHARED_LIBS=OFF - -DPYTHON_INCLUDE_DIR="$(python_get_includedir)" - -DPYTHON_LIBRARY="$(python_get_library_path)" - -DPYTHON_VERSION="${EPYTHON/python/}" - -DWITH_ALEMBIC=$(usex alembic) - -DWITH_ASSERT_ABORT=$(usex debug) - -DWITH_BOOST=ON - -DWITH_BULLET=$(usex bullet) - -DWITH_CODEC_FFMPEG=$(usex ffmpeg) - -DWITH_CODEC_SNDFILE=$(usex sndfile) - -DWITH_CXX_GUARDEDALLOC=$(usex debug) - -DWITH_CYCLES_DEVICE_CUDA=$(usex cuda TRUE FALSE) - -DWITH_CYCLES=$(usex cycles) - -DWITH_CYCLES_DEVICE_OPENCL=$(usex opencl) - -DWITH_CYCLES_STANDALONE=$(usex standalone) - -DWITH_CYCLES_STANDALONE_GUI=$(usex standalone) - -DWITH_CYCLES_OSL=$(usex osl) - -DWITH_DOC_MANPAGE=$(usex man) - -DWITH_FFTW3=$(usex fftw) - -DWITH_GTESTS=$(usex test) - -DWITH_HEADLESS=$(usex headless) - -DWITH_INSTALL_PORTABLE=OFF - -DWITH_IMAGE_DDS=$(usex dds) - -DWITH_IMAGE_OPENEXR=$(usex openexr) - -DWITH_IMAGE_OPENJPEG=$(usex jpeg2k) - -DWITH_IMAGE_TIFF=$(usex tiff) - -DWITH_INPUT_NDOF=$(usex ndof) - -DWITH_INTERNATIONAL=$(usex nls) - -DWITH_JACK=$(usex jack) - -DWITH_MEM_JEMALLOC=$(usex jemalloc) - -DWITH_MEM_VALGRIND=$(usex valgrind) - -DWITH_MOD_FLUID=$(usex fluid) - -DWITH_MOD_OCEANSIM=$(usex fftw) - -DWITH_OPENAL=$(usex openal) - -DWITH_OPENCOLLADA=$(usex collada) - -DWITH_OPENCOLORIO=$(usex color-management) - -DWITH_OPENIMAGEIO=$(usex openimageio) - -DWITH_OPENMP=$(usex openmp) - -DWITH_OPENSUBDIV=$(usex opensubdiv) - -DWITH_OPENVDB=$(usex openvdb) - -DWITH_OPENVDB_BLOSC=$(usex openvdb) - -DWITH_PYTHON_INSTALL=$(usex system-python OFF ON) - -DWITH_PYTHON_INSTALL_NUMPY=$(usex system-numpy OFF ON) - -DWITH_SDL=$(usex sdl) - -DWITH_STATIC_LIBS=OFF - -DWITH_SYSTEM_EIGEN3=ON - -DWITH_SYSTEM_GLEW=ON - -DWITH_SYSTEM_LZO=ON - -DWITH_TBB=$(usex tbb) - -DWITH_USD=OFF - ) - if ! use debug ; then - append-flags -DNDEBUG - else - append-flags -DDEBUG - fi - cmake_src_configure -} - -src_compile() { - cmake_src_compile - - if use doc; then - # Workaround for binary drivers. - addpredict /dev/ati - addpredict /dev/dri - addpredict /dev/nvidiactl - - einfo "Generating Blender C/C++ API docs ..." - cd "${CMAKE_USE_DIR}"/doc/doxygen || die - doxygen -u Doxyfile || die - 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 "sphinx failed." - - cd "${CMAKE_USE_DIR}"/doc/python_api || die - sphinx-build sphinx-in BPY_API || die "sphinx failed." - fi -} - -src_test() { - # A lot of tests needs to have access to the installed data files. - # So install them into the image directory now. - cmake_src_install - - blender_get_version - # Define custom blender data/script file paths not be able to find them otherwise during testing. - # (Because the data is in the image directory and it will default to look in /usr/share) - export BLENDER_SYSTEM_SCRIPTS=${ED}/usr/share/blender/${BV}/scripts - export BLENDER_SYSTEM_DATAFILES=${ED}/usr/share/blender/${BV}/datafiles - - # NOTE: The 'modifiers' test will fail if opensubdiv was compiled with -march=native - # This this is fixed in blender version 2.92 and up." - cmake_src_test - - # Clean up the image directory for src_install - rm -fr ${ED}/* || die -} - -src_install() { - blender_get_version - - # Pax mark blender for hardened support. - pax-mark m "${BUILD_DIR}"/bin/blender - - if use standalone; then - dobin "${BUILD_DIR}"/bin/cycles - fi - - if use doc; then - docinto "html/API/python" - dodoc -r "${CMAKE_USE_DIR}"/doc/python_api/BPY_API/. - - docinto "html/API/blender" - dodoc -r "${CMAKE_USE_DIR}"/doc/doxygen/html/. - fi - - cmake_src_install - - if use man; then - # Slot the man page - mv "${ED}/usr/share/man/man1/blender.1" "${ED}/usr/share/man/man1/blender-${BV}.1" || die - fi - - # Fix doc installdir - docinto html - dodoc "${CMAKE_USE_DIR}"/release/text/readme.html - rm -r "${ED}"/usr/share/doc/blender || die - - python_fix_shebang "${ED}/usr/bin/blender-${BV}-thumbnailer.py" - python_optimize "${ED}/usr/share/blender/${BV}/scripts" - - mv "${ED}/usr/bin/blender" "${ED}/usr/bin/blender-${BV}" || die -} - -pkg_postinst() { - elog - elog "Blender uses python integration. As such, may have some" - elog "inherent risks with running unknown python scripts." - 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 "changing the 'Temporary Files' directory in Blender preferences." - 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 - - elog "You are building Blender with a newer python version than" - elog "supported by this version upstream." - elog "If you experience breakages with e.g. plugins, please download" - elog "the official Blender LTS binary release instead." - elog "Bug: https://bugs.gentoo.org/737388" - elog - - xdg_icon_cache_update - xdg_mimeinfo_database_update - xdg_desktop_database_update -} - -pkg_postrm() { - xdg_icon_cache_update - xdg_mimeinfo_database_update - xdg_desktop_database_update - - ewarn "" - ewarn "You may want to remove the following directory." - ewarn "~/.config/${PN}/${SLOT}/cache/" - ewarn "It may contain extra render kernels not tracked by portage" - ewarn "" -} diff --git a/media-gfx/blender/blender-2.83.17-r1.ebuild b/media-gfx/blender/blender-2.83.17-r1.ebuild deleted file mode 100644 index 6c6548cf0f7c..000000000000 --- a/media-gfx/blender/blender-2.83.17-r1.ebuild +++ /dev/null @@ -1,377 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -PYTHON_COMPAT=( python3_8 ) - -inherit check-reqs cmake flag-o-matic pax-utils python-single-r1 toolchain-funcs xdg-utils - -DESCRIPTION="3D Creation/Animation/Publishing System" -HOMEPAGE="https://www.blender.org" - -if [[ ${PV} = *9999* ]] ; then - inherit git-r3 - EGIT_REPO_URI="https://git.blender.org/blender.git" -else - SRC_URI="https://download.blender.org/source/${P}.tar.xz" - TEST_TARBALL_VERSION=2.83.1 - SRC_URI+=" test? ( https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${PN}-${TEST_TARBALL_VERSION}-tests.tar.bz2 )" - KEYWORDS="~amd64 ~x86" -fi - -SLOT="${PV%.*}" -LICENSE="|| ( GPL-3 BL )" -IUSE="+bullet +dds +fluid +openexr +system-python +system-numpy +tbb \ - alembic collada +color-management cuda cycles \ - debug doc ffmpeg fftw headless jack jemalloc jpeg2k \ - man ndof nls openal opencl openimageio openmp opensubdiv \ - openvdb osl sdl sndfile standalone test tiff valgrind" -RESTRICT="!test? ( test )" - -REQUIRED_USE="${PYTHON_REQUIRED_USE} - alembic? ( openexr ) - cuda? ( cycles ) - cycles? ( openexr tiff openimageio ) - fluid? ( tbb ) - opencl? ( cycles ) - openvdb? ( tbb ) - osl? ( cycles ) - standalone? ( cycles ) - test? ( color-management osl )" - -# Library versions for official builds can be found in the blender source directory in: -# build_files/build_environment/install_deps.sh -RDEPEND="${PYTHON_DEPS} - dev-libs/boost:=[nls?,threads(+)] - dev-libs/lzo:2= - $(python_gen_cond_dep ' - dev-python/numpy[${PYTHON_USEDEP}] - dev-python/requests[${PYTHON_USEDEP}] - ') - media-libs/freetype:= - media-libs/glew:* - media-libs/libpng:= - media-libs/libsamplerate - sys-libs/zlib:= - virtual/glu - virtual/jpeg - virtual/libintl - virtual/opengl - alembic? ( >=media-gfx/alembic-1.7.12[boost(+),hdf(+)] ) - collada? ( >=media-libs/opencollada-1.6.68 ) - color-management? ( <media-libs/opencolorio-2.0.0 ) - cuda? ( dev-util/nvidia-cuda-toolkit:= ) - ffmpeg? ( media-video/ffmpeg:=[x264,mp3,encode,theora,jpeg2k,vpx,vorbis,opus,xvid] ) - fftw? ( sci-libs/fftw:3.0= ) - !headless? ( - x11-libs/libX11 - x11-libs/libXi - x11-libs/libXxf86vm - ) - jack? ( virtual/jack ) - jemalloc? ( dev-libs/jemalloc:= ) - jpeg2k? ( media-libs/openjpeg:2= ) - ndof? ( - app-misc/spacenavd - dev-libs/libspnav - ) - nls? ( virtual/libiconv ) - openal? ( media-libs/openal ) - opencl? ( virtual/opencl ) - openimageio? ( >=media-libs/openimageio-2.2.13.1:= ) - openexr? ( - media-libs/ilmbase:= - media-libs/openexr:= - ) - opensubdiv? ( >=media-libs/opensubdiv-3.4.0[cuda=,opencl=] ) - openvdb? ( - >=media-gfx/openvdb-7.0.0 - dev-libs/c-blosc:= - ) - osl? ( <media-libs/osl-1.11.0 ) - sdl? ( media-libs/libsdl2[sound,joystick] ) - sndfile? ( media-libs/libsndfile ) - tbb? ( <dev-cpp/tbb-2021.4.0:= ) - tiff? ( media-libs/tiff ) - valgrind? ( dev-util/valgrind ) -" - -DEPEND="${RDEPEND} - dev-cpp/eigen:= -" - -BDEPEND=" - virtual/pkgconfig - doc? ( - app-doc/doxygen[dot] - dev-python/sphinx[latex] - dev-texlive/texlive-bibtexextra - dev-texlive/texlive-fontsextra - dev-texlive/texlive-fontutils - dev-texlive/texlive-latex - dev-texlive/texlive-latexextra - ) - nls? ( sys-devel/gettext ) -" - -PATCHES=( - "${FILESDIR}/blender-2.83.6-libmv_eigen_alignment.patch" - "${FILESDIR}/blender-2.83.6-constraints_test.patch" - "${FILESDIR}/blender-2.83.6-fix_opevdb_abi.patch" - "${FILESDIR}/blender-2.83.13-ffmpeg-4_4.patch" -) - -blender_check_requirements() { - [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp - - if use doc; then - CHECKREQS_DISK_BUILD="4G" check-reqs_pkg_pretend - fi -} - -blender_get_version() { - # Get blender version from blender itself. - BV=$(grep "BLENDER_VERSION " source/blender/blenkernel/BKE_blender_version.h | cut -d " " -f 3; assert) - # Add period. - BV=${BV:0:1}.${BV:1} -} - -pkg_pretend() { - blender_check_requirements -} - -pkg_setup() { - blender_check_requirements - python-single-r1_pkg_setup -} - -src_unpack() { - if [[ ${PV} = *9999* ]] ; then - git-r3_src_unpack - else - default - fi - - if use test; then - mkdir -p lib || die - mv "${WORKDIR}"/blender-${TEST_TARBALL_VERSION}-tests/tests lib || die - fi -} - -src_prepare() { - cmake_src_prepare - - blender_get_version - - # Disable MS Windows help generation. The variable doesn't do what it - # it sounds like. - sed -e "s|GENERATE_HTMLHELP = YES|GENERATE_HTMLHELP = NO|" \ - -i doc/doxygen/Doxyfile || die - - # Prepare icons and .desktop files for slotting. - sed -e "s|blender.svg|blender-${BV}.svg|" -i source/creator/CMakeLists.txt || die - sed -e "s|blender-symbolic.svg|blender-${BV}-symbolic.svg|" -i source/creator/CMakeLists.txt || die - sed -e "s|blender.desktop|blender-${BV}.desktop|" -i source/creator/CMakeLists.txt || die - sed -e "s|blender-thumbnailer.py|blender-${BV}-thumbnailer.py|" -i source/creator/CMakeLists.txt || die - - sed -e "s|Name=Blender|Name=Blender ${PV}|" -i release/freedesktop/blender.desktop || die - sed -e "s|Exec=blender|Exec=blender-${BV}|" -i release/freedesktop/blender.desktop || die - sed -e "s|Icon=blender|Icon=blender-${BV}|" -i release/freedesktop/blender.desktop || die - - mv release/freedesktop/icons/scalable/apps/blender.svg release/freedesktop/icons/scalable/apps/blender-${BV}.svg || die - mv release/freedesktop/icons/symbolic/apps/blender-symbolic.svg release/freedesktop/icons/symbolic/apps/blender-${BV}-symbolic.svg || die - mv release/freedesktop/blender.desktop release/freedesktop/blender-${BV}.desktop || die - mv release/bin/blender-thumbnailer.py release/bin/blender-${BV}-thumbnailer.py || die - - if use test; then - # Without this the tests will try to use /usr/bin/blender and /usr/share/blender/ to run the tests. - sed -e "s|string(REPLACE.*|set(TEST_INSTALL_DIR ${ED}/usr/)|g" -i tests/CMakeLists.txt || die - sed -e "s|string(REPLACE.*|set(TEST_INSTALL_DIR ${ED}/usr/)|g" -i build_files/cmake/Modules/GTestTesting.cmake || die - fi -} - -src_configure() { - # Without this the floating point math will differ when for example - # "-march=native" is set. This will make automated tests fail and we will - # not match the behaviour of some operators/modifiers with the official - # builds. - append-flags -ffp-contract=off - append-lfs-flags - - local mycmakeargs=( - -DBUILD_SHARED_LIBS=OFF - -DPYTHON_INCLUDE_DIR="$(python_get_includedir)" - -DPYTHON_LIBRARY="$(python_get_library_path)" - -DPYTHON_VERSION="${EPYTHON/python/}" - -DWITH_ALEMBIC=$(usex alembic) - -DWITH_ASSERT_ABORT=$(usex debug) - -DWITH_BOOST=ON - -DWITH_BULLET=$(usex bullet) - -DWITH_CODEC_FFMPEG=$(usex ffmpeg) - -DWITH_CODEC_SNDFILE=$(usex sndfile) - -DWITH_CXX_GUARDEDALLOC=$(usex debug) - -DWITH_CYCLES_DEVICE_CUDA=$(usex cuda TRUE FALSE) - -DWITH_CYCLES=$(usex cycles) - -DWITH_CYCLES_DEVICE_OPENCL=$(usex opencl) - -DWITH_CYCLES_STANDALONE=$(usex standalone) - -DWITH_CYCLES_STANDALONE_GUI=$(usex standalone) - -DWITH_CYCLES_OSL=$(usex osl) - -DWITH_DOC_MANPAGE=$(usex man) - -DWITH_FFTW3=$(usex fftw) - -DWITH_GTESTS=$(usex test) - -DWITH_HEADLESS=$(usex headless) - -DWITH_INSTALL_PORTABLE=OFF - -DWITH_IMAGE_DDS=$(usex dds) - -DWITH_IMAGE_OPENEXR=$(usex openexr) - -DWITH_IMAGE_OPENJPEG=$(usex jpeg2k) - -DWITH_IMAGE_TIFF=$(usex tiff) - -DWITH_INPUT_NDOF=$(usex ndof) - -DWITH_INTERNATIONAL=$(usex nls) - -DWITH_JACK=$(usex jack) - -DWITH_MEM_JEMALLOC=$(usex jemalloc) - -DWITH_MEM_VALGRIND=$(usex valgrind) - -DWITH_MOD_FLUID=$(usex fluid) - -DWITH_MOD_OCEANSIM=$(usex fftw) - -DWITH_OPENAL=$(usex openal) - -DWITH_OPENCOLLADA=$(usex collada) - -DWITH_OPENCOLORIO=$(usex color-management) - -DWITH_OPENIMAGEIO=$(usex openimageio) - -DWITH_OPENMP=$(usex openmp) - -DWITH_OPENSUBDIV=$(usex opensubdiv) - -DWITH_OPENVDB=$(usex openvdb) - -DWITH_OPENVDB_BLOSC=$(usex openvdb) - -DWITH_PYTHON_INSTALL=$(usex system-python OFF ON) - -DWITH_PYTHON_INSTALL_NUMPY=$(usex system-numpy OFF ON) - -DWITH_SDL=$(usex sdl) - -DWITH_STATIC_LIBS=OFF - -DWITH_SYSTEM_EIGEN3=ON - -DWITH_SYSTEM_GLEW=ON - -DWITH_SYSTEM_LZO=ON - -DWITH_TBB=$(usex tbb) - -DWITH_USD=OFF - ) - append-flags $(usex debug '-DDEBUG' '-DNDEBUG') - - cmake_src_configure -} - -src_compile() { - cmake_src_compile - - if use doc; then - # Workaround for binary drivers. - addpredict /dev/ati - addpredict /dev/dri - addpredict /dev/nvidiactl - - einfo "Generating Blender C/C++ API docs ..." - cd "${CMAKE_USE_DIR}"/doc/doxygen || die - doxygen -u Doxyfile || die - 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 "sphinx failed." - - cd "${CMAKE_USE_DIR}"/doc/python_api || die - sphinx-build sphinx-in BPY_API || die "sphinx failed." - fi -} - -src_test() { - # A lot of tests needs to have access to the installed data files. - # So install them into the image directory now. - cmake_src_install - - blender_get_version - # Define custom blender data/script file paths not be able to find them otherwise during testing. - # (Because the data is in the image directory and it will default to look in /usr/share) - export BLENDER_SYSTEM_SCRIPTS=${ED}/usr/share/blender/${BV}/scripts - export BLENDER_SYSTEM_DATAFILES=${ED}/usr/share/blender/${BV}/datafiles - - # NOTE: The 'modifiers' test will fail if opensubdiv was compiled with -march=native - # This this is fixed in blender version 2.92 and up." - cmake_src_test - - # Clean up the image directory for src_install - rm -fr ${ED}/* || die -} - -src_install() { - blender_get_version - - # Pax mark blender for hardened support. - pax-mark m "${BUILD_DIR}"/bin/blender - - if use standalone; then - dobin "${BUILD_DIR}"/bin/cycles - fi - - if use doc; then - docinto "html/API/python" - dodoc -r "${CMAKE_USE_DIR}"/doc/python_api/BPY_API/. - - docinto "html/API/blender" - dodoc -r "${CMAKE_USE_DIR}"/doc/doxygen/html/. - fi - - cmake_src_install - - if use man; then - # Slot the man page - mv "${ED}/usr/share/man/man1/blender.1" "${ED}/usr/share/man/man1/blender-${BV}.1" || die - fi - - # Fix doc installdir - docinto html - dodoc "${CMAKE_USE_DIR}"/release/text/readme.html - rm -r "${ED}"/usr/share/doc/blender || die - - python_fix_shebang "${ED}/usr/bin/blender-${BV}-thumbnailer.py" - python_optimize "${ED}/usr/share/blender/${BV}/scripts" - - mv "${ED}/usr/bin/blender" "${ED}/usr/bin/blender-${BV}" || die -} - -pkg_postinst() { - elog - elog "Blender uses python integration. As such, may have some" - elog "inherent risks with running unknown python scripts." - 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 "changing the 'Temporary Files' directory in Blender preferences." - 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 - - elog "You are building Blender with a newer python version than" - elog "supported by this version upstream." - elog "If you experience breakages with e.g. plugins, please download" - elog "the official Blender LTS binary release instead." - elog "Bug: https://bugs.gentoo.org/737388" - elog - - xdg_icon_cache_update - xdg_mimeinfo_database_update - xdg_desktop_database_update -} - -pkg_postrm() { - xdg_icon_cache_update - xdg_mimeinfo_database_update - xdg_desktop_database_update - - ewarn "" - ewarn "You may want to remove the following directory." - ewarn "~/.config/${PN}/${SLOT}/cache/" - ewarn "It may contain extra render kernels not tracked by portage" - ewarn "" -} diff --git a/media-gfx/blender/files/blender-2.83.13-ffmpeg-4_4.patch b/media-gfx/blender/files/blender-2.83.13-ffmpeg-4_4.patch deleted file mode 100644 index bf8579675886..000000000000 --- a/media-gfx/blender/files/blender-2.83.13-ffmpeg-4_4.patch +++ /dev/null @@ -1,27 +0,0 @@ -From 9cdf11676ecd753fd86c3d8057c2375174ef0a70 Mon Sep 17 00:00:00 2001 -From: Sebastian Parborg <darkdefende@gmail.com> -Date: Fri, 7 May 2021 16:51:28 +0200 -Subject: [PATCH] Fix: No sound is exported with ffmpeg 4.4 - -We were not assigning the amount of sound channels to the output frames. -Newer ffmpeg releases has sanity checks in place and doesn't fall back -to two channels anymore. ---- - source/blender/blenkernel/intern/writeffmpeg.c | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/source/blender/blenkernel/intern/writeffmpeg.c b/source/blender/blenkernel/intern/writeffmpeg.c -index 7fc9e8cc0ef..e5550cee124 100644 ---- a/source/blender/blenkernel/intern/writeffmpeg.c -+++ b/source/blender/blenkernel/intern/writeffmpeg.c -@@ -164,6 +164,7 @@ static int write_audio_frame(FFMpegContext *context) - frame->pts = context->audio_time / av_q2d(c->time_base); - frame->nb_samples = context->audio_input_samples; - frame->format = c->sample_fmt; -+ frame->channels = c->channels; - # ifdef FFMPEG_HAVE_FRAME_CHANNEL_LAYOUT - frame->channel_layout = c->channel_layout; - # endif --- -2.26.3 - diff --git a/media-gfx/blender/files/blender-2.83.6-constraints_test.patch b/media-gfx/blender/files/blender-2.83.6-constraints_test.patch deleted file mode 100644 index ab1e9a6d2d4a..000000000000 --- a/media-gfx/blender/files/blender-2.83.6-constraints_test.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/tests/python/bl_constraints.py b/tests/python/bl_constraints.py -index 323dd874ac0..7cbc46d680a 100644 ---- a/tests/python/bl_constraints.py -+++ b/tests/python/bl_constraints.py -@@ -44,7 +44,7 @@ class AbstractConstraintTests(unittest.TestCase): - collection = top_collection.children[self.layer_collection] - collection.exclude = False - -- def assert_matrix(self, actual_matrix, expect_matrix, object_name: str, places=6, delta=None): -+ def assert_matrix(self, actual_matrix, expect_matrix, object_name: str, places=None, delta=1e-6): - """Asserts that the matrices almost equal.""" - self.assertEqual(len(actual_matrix), 4, 'Expected a 4x4 matrix') - diff --git a/media-gfx/blender/files/blender-2.83.6-fix_opevdb_abi.patch b/media-gfx/blender/files/blender-2.83.6-fix_opevdb_abi.patch deleted file mode 100644 index b7537f97fc09..000000000000 --- a/media-gfx/blender/files/blender-2.83.6-fix_opevdb_abi.patch +++ /dev/null @@ -1,21 +0,0 @@ ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -1552,7 +1552,7 @@ - CMAKE_C_COMPILER_ID MATCHES "Intel" - ) - # TODO(sergey): Do we want c++11 or gnu-c++11 here? -- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11") -+ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++14") - else() - message(FATAL_ERROR "Unknown compiler ${CMAKE_C_COMPILER_ID}, can't enable C++11 build") - endif() ---- a/extern/mantaflow/CMakeLists.txt -+++ b/extern/mantaflow/CMakeLists.txt -@@ -51,7 +51,6 @@ - - if(WITH_OPENVDB) - add_definitions(-DOPENVDB=1) -- add_definitions(-DOPENVDB_STATICLIB) - endif() - - if(WIN32 diff --git a/media-gfx/blender/files/blender-2.83.6-libmv_eigen_alignment.patch b/media-gfx/blender/files/blender-2.83.6-libmv_eigen_alignment.patch deleted file mode 100644 index 1392510a23a7..000000000000 --- a/media-gfx/blender/files/blender-2.83.6-libmv_eigen_alignment.patch +++ /dev/null @@ -1,219 +0,0 @@ -diff --git a/intern/libmv/libmv/base/vector.h b/intern/libmv/libmv/base/vector.h -index bdc4392155c..300291c5679 100644 ---- a/intern/libmv/libmv/base/vector.h -+++ b/intern/libmv/libmv/base/vector.h -@@ -25,151 +25,18 @@ - #ifndef LIBMV_BASE_VECTOR_H - #define LIBMV_BASE_VECTOR_H - --#include <cstring> --#include <new> -+#include <vector> - - #include <Eigen/Core> - - namespace libmv { - --// A simple container class, which guarantees 16 byte alignment needed for most --// vectorization. Don't use this container for classes that cannot be copied --// via memcpy. --// FIXME: this class has some issues: --// - doesn't support iterators. --// - impede compatibility with code using STL. --// - the STL already provide support for custom allocators --// it could be replaced with a simple --// template <T> class vector : std::vector<T, aligned_allocator> {} declaration --// provided it doesn't break code relying on libmv::vector specific behavior --template <typename T, -- typename Allocator = Eigen::aligned_allocator<T> > --class vector { -- public: -- ~vector() { clear(); } -+// A simple container class, which guarantees the correct memory alignment -+// needed for most eigen vectorization. Don't use this container for classes -+// that cannot be copied via memcpy. - -- vector() { init(); } -- vector(int size) { init(); resize(size); } -- vector(int size, const T & val) { -- init(); -- resize(size); -- std::fill(data_, data_+size_, val); } -- -- // Copy constructor and assignment. -- vector(const vector<T, Allocator> &rhs) { -- init(); -- copy(rhs); -- } -- vector<T, Allocator> &operator=(const vector<T, Allocator> &rhs) { -- if (&rhs != this) { -- copy(rhs); -- } -- return *this; -- } -- -- /// Swaps the contents of two vectors in constant time. -- void swap(vector<T, Allocator> &other) { -- std::swap(allocator_, other.allocator_); -- std::swap(size_, other.size_); -- std::swap(capacity_, other.capacity_); -- std::swap(data_, other.data_); -- } -- -- T *data() const { return data_; } -- int size() const { return size_; } -- int capacity() const { return capacity_; } -- const T& back() const { return data_[size_ - 1]; } -- T& back() { return data_[size_ - 1]; } -- const T& front() const { return data_[0]; } -- T& front() { return data_[0]; } -- const T& operator[](int n) const { return data_[n]; } -- T& operator[](int n) { return data_[n]; } -- const T& at(int n) const { return data_[n]; } -- T& at(int n) { return data_[n]; } -- const T * begin() const { return data_; } -- const T * end() const { return data_+size_; } -- T * begin() { return data_; } -- T * end() { return data_+size_; } -- -- void resize(size_t size) { -- reserve(size); -- if (size > size_) { -- construct(size_, size); -- } else if (size < size_) { -- destruct(size, size_); -- } -- size_ = size; -- } -- -- void push_back(const T &value) { -- if (size_ == capacity_) { -- reserve(size_ ? 2 * size_ : 1); -- } -- new (&data_[size_++]) T(value); -- } -- -- void pop_back() { -- resize(size_ - 1); -- } -- -- void clear() { -- destruct(0, size_); -- deallocate(); -- init(); -- } -- -- void reserve(unsigned int size) { -- if (size > size_) { -- T *data = static_cast<T *>(allocate(size)); -- memcpy(static_cast<void *>(data), data_, sizeof(*data)*size_); -- allocator_.deallocate(data_, capacity_); -- data_ = data; -- capacity_ = size; -- } -- } -- -- bool empty() { -- return size_ == 0; -- } -- -- private: -- void construct(int start, int end) { -- for (int i = start; i < end; ++i) { -- new (&data_[i]) T; -- } -- } -- void destruct(int start, int end) { -- for (int i = start; i < end; ++i) { -- data_[i].~T(); -- } -- } -- void init() { -- size_ = 0; -- data_ = 0; -- capacity_ = 0; -- } -- -- void *allocate(int size) { -- return size ? allocator_.allocate(size) : 0; -- } -- -- void deallocate() { -- allocator_.deallocate(data_, size_); -- data_ = 0; -- } -- -- void copy(const vector<T, Allocator> &rhs) { -- resize(rhs.size()); -- for (int i = 0; i < rhs.size(); ++i) { -- (*this)[i] = rhs[i]; -- } -- } -- -- Allocator allocator_; -- size_t size_; -- size_t capacity_; -- T *data_; --}; -+template <class ElementType> -+using vector = std::vector<ElementType, Eigen::aligned_allocator<ElementType>>; - - } // namespace libmv - -diff --git a/intern/libmv/libmv/base/vector_test.cc b/intern/libmv/libmv/base/vector_test.cc -index f17718c3926..44b9a152148 100644 ---- a/intern/libmv/libmv/base/vector_test.cc -+++ b/intern/libmv/libmv/base/vector_test.cc -@@ -115,31 +115,24 @@ TEST_F(VectorTest, ResizeConstructsAndDestructsAsExpected) { - // Create one object. - v.resize(1); - EXPECT_EQ(1, v.size()); -- EXPECT_EQ(1, v.capacity()); - EXPECT_EQ(1, foo_construct_calls); -- EXPECT_EQ(0, foo_destruct_calls); - EXPECT_EQ(5, v[0].value); - - // Create two more. - v.resize(3); - EXPECT_EQ(3, v.size()); -- EXPECT_EQ(3, v.capacity()); - EXPECT_EQ(3, foo_construct_calls); -- EXPECT_EQ(0, foo_destruct_calls); - - // Delete the last one. - v.resize(2); - EXPECT_EQ(2, v.size()); - EXPECT_EQ(3, v.capacity()); - EXPECT_EQ(3, foo_construct_calls); -- EXPECT_EQ(1, foo_destruct_calls); - - // Delete the remaining two. - v.resize(0); - EXPECT_EQ(0, v.size()); -- EXPECT_EQ(3, v.capacity()); - EXPECT_EQ(3, foo_construct_calls); -- EXPECT_EQ(3, foo_destruct_calls); - } - - TEST_F(VectorTest, PushPopBack) { -@@ -192,15 +185,15 @@ TEST_F(VectorTest, STLFind) { - a.push_back(5); - a.push_back(3); - -- // Find return an int * -+ // Find returns an int * - EXPECT_EQ(std::find(&a[0], &a[2], 1) == &a[0], true); - EXPECT_EQ(std::find(&a[0], &a[2], 5) == &a[1], true); - EXPECT_EQ(std::find(&a[0], &a[2], 3) == &a[2], true); - -- // Find return a const int * -- EXPECT_EQ(std::find(a.begin(), a.end(), 1) == &a[0], true); -- EXPECT_EQ(std::find(a.begin(), a.end(), 5) == &a[1], true); -- EXPECT_EQ(std::find(a.begin(), a.end(), 3) == &a[2], true); -+ // Find returns an interator -+ EXPECT_EQ(std::find(a.begin(), a.end(), 1) == std::next(a.begin(), 0), true); -+ EXPECT_EQ(std::find(a.begin(), a.end(), 5) == std::next(a.begin(), 1), true); -+ EXPECT_EQ(std::find(a.begin(), a.end(), 3) == std::next(a.begin(), 2), true); - - // Search value that are not in the vector - EXPECT_EQ(std::find(a.begin(), a.end(), 0) == a.end(), true); |