summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSam James <sam@gentoo.org>2022-02-12 04:47:54 +0000
committerSam James <sam@gentoo.org>2022-02-12 04:47:54 +0000
commitca5b6410bfc01c83492baf228436676283c4c602 (patch)
tree706c3261c473d83b4fa27fc6880d64fc736163c4 /media-gfx
parentmedia-libs/osl: update dep bounds for OpenEXR 3 conversion (diff)
downloadgentoo-ca5b6410bfc01c83492baf228436676283c4c602.tar.gz
gentoo-ca5b6410bfc01c83492baf228436676283c4c602.tar.bz2
gentoo-ca5b6410bfc01c83492baf228436676283c4c602.zip
media-gfx/openvdb: flip over to OpenEXR 3 for 8.2.0
Things are getting complicated with trying to keep Blender on OpenEXR 2. Blender needs to switch as a result, but so do its dependencies. Bug: https://bugs.gentoo.org/831357 Bug: https://bugs.gentoo.org/832862 Bug: https://bugs.gentoo.org/831425 Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'media-gfx')
-rw-r--r--media-gfx/openvdb/files/openvdb-8.2.0-openexr-3-imath.patch16
-rw-r--r--media-gfx/openvdb/openvdb-8.2.0-r2.ebuild139
2 files changed, 155 insertions, 0 deletions
diff --git a/media-gfx/openvdb/files/openvdb-8.2.0-openexr-3-imath.patch b/media-gfx/openvdb/files/openvdb-8.2.0-openexr-3-imath.patch
new file mode 100644
index 000000000000..0a9dfe541f79
--- /dev/null
+++ b/media-gfx/openvdb/files/openvdb-8.2.0-openexr-3-imath.patch
@@ -0,0 +1,16 @@
+diff --git a/openvdb/openvdb/Types.h b/openvdb/openvdb/Types.h
+index a1d6a9f..f6ecb19 100644
+--- a/openvdb/openvdb/Types.h
++++ b/openvdb/openvdb/Types.h
+@@ -10,9 +10,9 @@
+
+ #ifdef OPENVDB_USE_IMATH_HALF
+ #ifdef OPENVDB_IMATH_VERSION
+-#include <Imath/half.h>
++#include <Imath-3/half.h>
+ #else
+-#include <OpenEXR/half.h>
++#include <OpenEXR-3/half.h>
+ #endif
+ namespace openvdb {
+ OPENVDB_USE_VERSION_NAMESPACE
diff --git a/media-gfx/openvdb/openvdb-8.2.0-r2.ebuild b/media-gfx/openvdb/openvdb-8.2.0-r2.ebuild
new file mode 100644
index 000000000000..ceb0d37949a9
--- /dev/null
+++ b/media-gfx/openvdb/openvdb-8.2.0-r2.ebuild
@@ -0,0 +1,139 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{8,9,10} )
+
+inherit cmake python-single-r1
+
+DESCRIPTION="Library for the efficient manipulation of volumetric data"
+HOMEPAGE="https://www.openvdb.org"
+SRC_URI="https://github.com/AcademySoftwareFoundation/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MPL-2.0"
+SLOT="0/8"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"
+IUSE="cpu_flags_x86_avx cpu_flags_x86_sse4_2 +blosc doc numpy python static-libs test utils zlib abi6-compat abi7-compat +abi8-compat"
+RESTRICT="!test? ( test )"
+
+REQUIRED_USE="
+ numpy? ( python )
+ ^^ ( abi6-compat abi7-compat abi8-compat )
+ python? ( ${PYTHON_REQUIRED_USE} )
+"
+
+RDEPEND="
+ dev-cpp/tbb:=
+ dev-libs/boost:=
+ dev-libs/jemalloc:=
+ dev-libs/log4cplus:=
+ media-libs/glfw
+ media-libs/glu
+ sys-libs/zlib:=
+ x11-libs/libXcursor
+ x11-libs/libXi
+ x11-libs/libXinerama
+ x11-libs/libXrandr
+ blosc? ( dev-libs/c-blosc:= )
+ python? (
+ ${PYTHON_DEPS}
+ $(python_gen_cond_dep '
+ dev-libs/boost:=[numpy?,python?,${PYTHON_USEDEP}]
+ numpy? ( dev-python/numpy[${PYTHON_USEDEP}] )
+ ')
+ )
+ utils? (
+ dev-libs/imath:=
+ media-libs/openexr:3=
+ )
+ zlib? ( sys-libs/zlib )
+"
+
+DEPEND="${RDEPEND}"
+
+BDEPEND="
+ >=dev-util/cmake-3.16.2-r1
+ virtual/pkgconfig
+ doc? (
+ app-doc/doxygen
+ dev-texlive/texlive-bibtexextra
+ dev-texlive/texlive-fontsextra
+ dev-texlive/texlive-fontutils
+ dev-texlive/texlive-latex
+ dev-texlive/texlive-latexextra
+ )
+ test? ( dev-util/cppunit dev-cpp/gtest )
+"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-7.1.0-0001-Fix-multilib-header-source.patch"
+ "${FILESDIR}/${PN}-8.0.1-add-consistency-for-NumPy-find_package-call.patch"
+ "${FILESDIR}/${PN}-8.1.0-glfw-libdir.patch"
+ "${FILESDIR}/${PN}-8.2.0-fix-finding-ilmbase-if-imath-and-ilmbase-are-installed.patch"
+ "${FILESDIR}/${PN}-8.2.0-unconditionally-search-Python-interpreter.patch"
+ "${FILESDIR}/${PN}-8.2.0-openexr-3-imath.patch"
+)
+
+pkg_setup() {
+ use python && python-single-r1_pkg_setup
+}
+
+src_configure() {
+ local myprefix="${EPREFIX}/usr/"
+
+ local version
+ if use abi6-compat; then
+ version=6
+ elif use abi7-compat; then
+ version=7
+ elif use abi8-compat; then
+ version=8
+ else
+ die "OpenVDB ABI version is not compatible"
+ fi
+
+ local mycmakeargs=(
+ -DCMAKE_INSTALL_DOCDIR="share/doc/${PF}/"
+ -DOPENVDB_ABI_VERSION_NUMBER="${version}"
+ -DOPENVDB_BUILD_BINARIES=$(usex utils)
+ -DOPENVDB_BUILD_DOCS=$(usex doc)
+ -DOPENVDB_BUILD_UNITTESTS=$(usex test)
+ -DOPENVDB_CORE_SHARED=ON
+ -DOPENVDB_CORE_STATIC=$(usex static-libs)
+ -DOPENVDB_ENABLE_RPATH=OFF
+ -DUSE_BLOSC=$(usex blosc)
+ -DUSE_ZLIB=$(usex zlib)
+ -DUSE_CCACHE=OFF
+ -DUSE_COLORED_OUTPUT=ON
+ -DUSE_IMATH_HALF=ON
+ -DUSE_LOG4CPLUS=ON
+ )
+
+ if use python; then
+ mycmakeargs+=(
+ -DOPENVDB_BUILD_PYTHON_MODULE=ON
+ -DOPENVDB_BUILD_PYTHON_UNITTESTS=$(usex test)
+ -DPYOPENVDB_INSTALL_DIRECTORY="$(python_get_sitedir)"
+ -DPython_EXECUTABLE="${PYTHON}"
+ -DPython_INCLUDE_DIR="$(python_get_includedir)"
+ -DUSE_NUMPY=$(usex numpy)
+ )
+ fi
+
+ if use utils; then
+ mycmakeargs+=(
+ -DOPENVDB_BUILD_VDB_LOD=ON
+ -DOPENVDB_BUILD_VDB_RENDER=ON
+ -DOPENVDB_BUILD_VDB_VIEW=ON
+ )
+ fi
+
+ if use cpu_flags_x86_avx; then
+ mycmakeargs+=( -DOPENVDB_SIMD=AVX )
+ elif use cpu_flags_x86_sse4_2; then
+ mycmakeargs+=( -DOPENVDB_SIMD=SSE42 )
+ fi
+
+ cmake_src_configure
+}