Date: Friday, December 3, 2021 @ 12:19:25 Author: felixonmars Revision: 1064772
archrelease: copy trunk to community-staging-x86_64 Added: blender/repos/community-staging-x86_64/ blender/repos/community-staging-x86_64/PKGBUILD (from rev 1064771, blender/trunk/PKGBUILD) blender/repos/community-staging-x86_64/blender-openexr3.patch (from rev 1064771, blender/trunk/blender-openexr3.patch) ------------------------+ PKGBUILD | 88 +++++++++++++++++++++++++++++++++++++++++++++++ blender-openexr3.patch | 42 ++++++++++++++++++++++ 2 files changed, 130 insertions(+) Copied: blender/repos/community-staging-x86_64/PKGBUILD (from rev 1064771, blender/trunk/PKGBUILD) =================================================================== --- community-staging-x86_64/PKGBUILD (rev 0) +++ community-staging-x86_64/PKGBUILD 2021-12-03 12:19:25 UTC (rev 1064772) @@ -0,0 +1,88 @@ +# Maintainer: Sven-Hendrik Haase <svenst...@gmail.com> +# Contributor: John Sowiak <j...@archlinux.org> +# Contributor: tobias <tob...@archlinux.org> + +# For legal reasons, we can't separately package the Optix headers so we'll +# just build the package against them. I checked with NVIDIA and this way is +# fine with them. + +pkgname=blender +pkgver=2.93.6 +pkgrel=3 +epoch=17 +pkgdesc="A fully integrated 3D graphics creation suite" +arch=('x86_64') +license=('GPL') +url="https://www.blender.org" +depends=('libpng' 'libtiff' 'openexr' 'python' 'desktop-file-utils' 'python-requests' 'potrace' + 'shared-mime-info' 'hicolor-icon-theme' 'xdg-utils' 'glew' 'openjpeg2' 'python-numpy' + 'freetype2' 'openal' 'ffmpeg' 'fftw' 'boost-libs' 'opencollada' 'alembic' 'openxr' + 'openimageio' 'libsndfile' 'jack' 'opencolorio' 'openshadinglanguage' 'openimagedenoise' + 'jemalloc' 'libspnav' 'ptex' 'opensubdiv' 'openvdb' 'log4cplus' 'sdl2' 'embree' 'libharu') +makedepends=('cmake' 'boost' 'mesa' 'git' 'llvm' 'cuda' 'ninja') +optdepends=('cuda: cycles renderer cuda support') +options=(!strip) +source=("git+https://git.blender.org/blender.git#tag=v$pkgver" + "git+https://git.blender.org/blender-addons.git" + "git+https://git.blender.org/blender-addons-contrib.git" + "git+https://git.blender.org/blender-translations.git" + "git+https://git.blender.org/blender-dev-tools.git" + https://developer.download.nvidia.com/redist/optix/v7.0/OptiX-7.0.0-include.zip + blender-openexr3.patch) +sha512sums=('SKIP' + 'SKIP' + 'SKIP' + 'SKIP' + 'SKIP' + 'b2cff73def3757d4259f4b4d318a8ccfe166bf7c215cbb2124f1c81bd6e742f96207285b24eb4d99b527b7b97dc6d5e8fdf2f16d78d5d1e2684c26d681328491' + 'e2dd7210d26b70445e9ae8e33dea35111ad0b0aca9d3b4ded3df560d0fcc8dc044868f729e0f090a04b6f316f083b5505a7056ce088e8702065add87b9b457e5') + +prepare() { + cd "$pkgname" + + git submodule init + git config submodule."release/scripts/addons".url "${srcdir}/blender-addons" + git config submodule."release/scripts/addons_contrib".url "${srcdir}/blender-addons-contrib" + git config submodule."release/datafiles/locale".url "${srcdir}/blender-translations" + git config submodule."source/tools".url "${srcdir}/blender-dev-tools" + git submodule update + git submodule foreach git checkout v${pkgver} + + patch -p1 < "$srcdir"/blender-openexr3.patch # Fix build with OpenEXR 3 +} + +build() { + cd "$pkgname" + + local PYTHON_VER=3.10 + + cmake \ + -Bbuild \ + -GNinja \ + -Cbuild_files/cmake/config/blender_release.cmake \ + -DOPTIX_ROOT_DIR="$srcdir"/include \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DCMAKE_BUILD_TYPE=Release \ + -DWITH_INSTALL_PORTABLE=OFF \ + -DWITH_PYTHON_INSTALL=OFF \ + -DPYTHON_VERSION=$PYTHON_VER \ + -DPYTHON_LIBPATH=/usr/lib \ + -DPYTHON_LIBRARY=python$PYTHON_VER \ + -DPYTHON_INCLUDE_DIRS=/usr/include/python$PYTHON_VER \ + -DCMAKE_CXX_FLAGS="-I /usr/include/python$PYTHON_VER" + ninja -C build +} + +package() { + cd "$pkgname" + + DESTDIR="${pkgdir}" ninja -C build install + install -Dm755 release/bin/blender-softwaregl "${pkgdir}/usr/bin/blender-softwaregl" + python -m compileall "${pkgdir}/usr/share/blender" + python -O -m compileall "${pkgdir}/usr/share/blender" + + install -Dm644 release/freedesktop/org.blender.Blender.appdata.xml "${pkgdir}/usr/share/metainfo/org.blender.Blender.appdata.xml" + + # Manually install additional scripts (See FS#69351) + cp -r release/scripts/addons_contrib/* "${pkgdir}"/usr/share/blender/2*/scripts/addons_contrib/ +} Copied: blender/repos/community-staging-x86_64/blender-openexr3.patch (from rev 1064771, blender/trunk/blender-openexr3.patch) =================================================================== --- community-staging-x86_64/blender-openexr3.patch (rev 0) +++ community-staging-x86_64/blender-openexr3.patch 2021-12-03 12:19:25 UTC (rev 1064772) @@ -0,0 +1,42 @@ +diff --git a/build_files/cmake/Modules/FindOpenEXR.cmake b/build_files/cmake/Modules/FindOpenEXR.cmake +index 090f80b8df7..a2f7b4c622b 100644 +--- a/build_files/cmake/Modules/FindOpenEXR.cmake ++++ b/build_files/cmake/Modules/FindOpenEXR.cmake +@@ -34,11 +34,10 @@ ENDIF() + SET(_openexr_libs_ver_init "2.0") + + SET(_openexr_FIND_COMPONENTS +- Half + Iex +- IlmImf +- IlmThread + Imath ++ OpenEXR ++ IlmThread + ) + + SET(_openexr_SEARCH_DIRS +@@ -120,7 +119,7 @@ FIND_PACKAGE_HANDLE_STANDARD_ARGS(OpenEXR DEFAULT_MSG + IF(OPENEXR_FOUND) + SET(OPENEXR_LIBRARIES ${_openexr_LIBRARIES}) + # Both include paths are needed because of dummy OSL headers mixing #include <OpenEXR/foo.h> and #include <foo.h> :( +- SET(OPENEXR_INCLUDE_DIRS ${OPENEXR_INCLUDE_DIR} ${OPENEXR_INCLUDE_DIR}/OpenEXR) ++ SET(OPENEXR_INCLUDE_DIRS ${OPENEXR_INCLUDE_DIR} ${OPENEXR_INCLUDE_DIR}/OpenEXR ${OPENEXR_INCLUDE_DIR}/Imath) + ENDIF() + + MARK_AS_ADVANCED( +diff --git a/source/blender/imbuf/intern/openexr/openexr_api.cpp b/source/blender/imbuf/intern/openexr/openexr_api.cpp +index 382d86f2645..eff50b19c31 100644 +--- a/source/blender/imbuf/intern/openexr/openexr_api.cpp ++++ b/source/blender/imbuf/intern/openexr/openexr_api.cpp +@@ -38,8 +38,10 @@ + #include <ImfChannelList.h> + #include <ImfCompression.h> + #include <ImfCompressionAttribute.h> ++#include <ImfFrameBuffer.h> + #include <ImfIO.h> + #include <ImfInputFile.h> ++#include <ImfInt64.h> + #include <ImfOutputFile.h> + #include <ImfPixelType.h> + #include <ImfStandardAttributes.h>