summaryrefslogtreecommitdiff
path: root/media-gfx/openvdb/openvdb-9.0.0-r4.ebuild
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2022-03-20 00:40:44 +0000
committerV3n3RiX <venerix@koprulu.sector>2022-03-20 00:40:44 +0000
commit4cbcc855382a06088e2f016f62cafdbcb7e40665 (patch)
tree356496503d52354aa6d9f2d36126302fed5f3a73 /media-gfx/openvdb/openvdb-9.0.0-r4.ebuild
parentfcc5224904648a8e6eb528d7603154160a20022f (diff)
gentoo resync : 20.03.2022
Diffstat (limited to 'media-gfx/openvdb/openvdb-9.0.0-r4.ebuild')
-rw-r--r--media-gfx/openvdb/openvdb-9.0.0-r4.ebuild137
1 files changed, 137 insertions, 0 deletions
diff --git a/media-gfx/openvdb/openvdb-9.0.0-r4.ebuild b/media-gfx/openvdb/openvdb-9.0.0-r4.ebuild
new file mode 100644
index 000000000000..8ec379c61a6d
--- /dev/null
+++ b/media-gfx/openvdb/openvdb-9.0.0-r4.ebuild
@@ -0,0 +1,137 @@
+# 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/9"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86"
+IUSE="cpu_flags_x86_avx cpu_flags_x86_sse4_2 +blosc cuda doc +nanovdb numpy python static-libs test utils +zlib abi6-compat abi7-compat abi8-compat +abi9-compat"
+RESTRICT="!test? ( test )"
+
+REQUIRED_USE="blosc? ( zlib )
+ numpy? ( python )
+ cuda? ( nanovdb )
+ ^^ ( abi6-compat abi7-compat abi8-compat abi9-compat )
+ python? ( ${PYTHON_REQUIRED_USE} )"
+
+RDEPEND="
+ >=dev-cpp/tbb-2020.3:=
+ dev-libs/boost:=
+ dev-libs/jemalloc:=
+ dev-libs/log4cplus:=
+ >=dev-libs/imath-3.1.4-r2:=
+ media-libs/glfw
+ media-libs/glu
+ >=media-libs/openexr-3:=
+ sys-libs/zlib:=
+ x11-libs/libXcursor
+ x11-libs/libXi
+ x11-libs/libXinerama
+ x11-libs/libXrandr
+ blosc? ( dev-libs/c-blosc:= )
+ cuda? ( >=dev-util/nvidia-cuda-toolkit-11 )
+ python? (
+ ${PYTHON_DEPS}
+ $(python_gen_cond_dep '
+ dev-libs/boost:=[numpy?,python?,${PYTHON_USEDEP}]
+ numpy? ( dev-python/numpy[${PYTHON_USEDEP}] )
+ ')
+ )
+ zlib? ( sys-libs/zlib )
+"
+
+DEPEND="${RDEPEND}"
+BDEPEND="
+ 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}-8.1.0-glfw-libdir.patch"
+ "${FILESDIR}/${PN}-9.0.0-fix-atomic.patch"
+ "${FILESDIR}/${PN}-9.0.0-numpy.patch"
+ "${FILESDIR}/${PN}-9.0.0-unconditionally-search-Python-interpreter.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
+ elif use abi9-compat; then
+ version=9
+ else
+ die "OpenVDB ABI version is not compatible"
+ fi
+
+ local mycmakeargs=(
+ -DCMAKE_INSTALL_DOCDIR="share/doc/${PF}/"
+ -DOPENVDB_ABI_VERSION_NUMBER="${version}"
+ -DOPENVDB_BUILD_DOCS=$(usex doc)
+ -DOPENVDB_BUILD_UNITTESTS=$(usex test)
+ -DOPENVDB_BUILD_VDB_LOD=$(usex utils)
+ -DOPENVDB_BUILD_VDB_RENDER=$(usex utils)
+ -DOPENVDB_BUILD_VDB_VIEW=$(usex utils)
+ -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
+ -DUSE_NANOVDB=$(usex nanovdb)
+ )
+
+ if use nanovdb; then
+ mycmakeargs+=(
+ -DNANOVDB_BUILD_UNITTESTS=$(usex test)
+ -DNANOVDB_USE_CUDA=$(usex cuda)
+ )
+ fi
+
+ if use python; then
+ mycmakeargs+=(
+ -DOPENVDB_BUILD_PYTHON_MODULE=ON
+ -DUSE_NUMPY=$(usex numpy)
+ -DOPENVDB_BUILD_PYTHON_UNITTESTS=$(usex test)
+ -DPYOPENVDB_INSTALL_DIRECTORY="$(python_get_sitedir)"
+ -DPython_INCLUDE_DIR="$(python_get_includedir)"
+ )
+ 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
+}