From e57306ec7bc9eefd10d4b6f58a6c567ff4d03bc5 Mon Sep 17 00:00:00 2001 From: Schrijvers Luc Date: Mon, 17 Jun 2024 12:48:46 +0200 Subject: [PATCH] opensubdiv3.4, revive lib package for blender 2.* (#10606) --- .../opensubdiv/opensubdiv3.4-3.4.3.recipe | 93 +++++++++++++++++++ 1 file changed, 93 insertions(+) create mode 100644 media-libs/opensubdiv/opensubdiv3.4-3.4.3.recipe diff --git a/media-libs/opensubdiv/opensubdiv3.4-3.4.3.recipe b/media-libs/opensubdiv/opensubdiv3.4-3.4.3.recipe new file mode 100644 index 000000000..d0ffafd19 --- /dev/null +++ b/media-libs/opensubdiv/opensubdiv3.4-3.4.3.recipe @@ -0,0 +1,93 @@ +SUMMARY="An open-source subdivision surface library" +DESCRIPTION="OpenSubdiv is a set of open source libraries that implement high \ +performance subdivision surface (subdiv) evaluation on massively parallel CPU \ +and GPU architectures. This codepath is optimized for drawing deforming \ +subdivs with static topology at interactive framerates. The resulting limit \ +surface matches Pixar's Renderman to numerical precision." +HOMEPAGE="https://graphics.pixar.com/opensubdiv/" +COPYRIGHT="2013-2020 Pixar" +LICENSE="Apache v2" +REVISION="1" +SOURCE_URI="https://github.com/PixarAnimationStudios/OpenSubdiv/archive/v${portVersion//\./_}.tar.gz" +CHECKSUM_SHA256="7b22eb27d636ab0c1e03722c7a5a5bd4f11664ee65c9b48f341a6d0ce7f36745" +SOURCE_FILENAME="opensubdiv-$portVersion.tar.gz" +SOURCE_DIR="OpenSubdiv-${portVersion//\./_}" + +ARCHITECTURES="all !x86_gcc2" +SECONDARY_ARCHITECTURES="x86" + +PROVIDES=" + opensubdiv3.4$secondaryArchSuffix = $portVersion + lib:libosdCPU$secondaryArchSuffix = $portVersion + lib:libosdGPU$secondaryArchSuffix = $portVersion + " +REQUIRES=" + haiku$secondaryArchSuffix + lib:libGl$secondaryArchSuffix + lib:libglew$secondaryArchSuffix + lib:libGLU$secondaryArchSuffix + lib:libgomp$secondaryArchSuffix + lib:libopencl$secondaryArchSuffix + lib:libtbb$secondaryArchSuffix + lib:libtbbmalloc$secondaryArchSuffix + lib:libtbbmalloc_proxy$secondaryArchSuffix + lib:libz$secondaryArchSuffix + " + +BUILD_REQUIRES=" + haiku${secondaryArchSuffix}_devel + devel:libGl$secondaryArchSuffix + devel:libglew$secondaryArchSuffix + devel:libGLU$secondaryArchSuffix + devel:libgomp$secondaryArchSuffix + devel:libopencl$secondaryArchSuffix + devel:libopencl_headers$secondaryArchSuffix + devel:libtbb$secondaryArchSuffix + devel:libtbbmalloc$secondaryArchSuffix + devel:libtbbmalloc_proxy$secondaryArchSuffix + devel:libz$secondaryArchSuffix + " +BUILD_PREREQUIRES=" + cmd:cmake + cmd:gcc$secondaryArchSuffix + cmd:make + " + +defineDebugInfoPackage opensubdiv3.4$secondaryArchSuffix \ + $libDir/libosdCPU.so.$portVersion \ + $libDir/libosdGPU.so.$portVersion + +BUILD() +{ + mkdir -p build && cd build + + cmake .. -DCMAKE_BUILD_TYPE=Release \ + -DCMAKE_INSTALL_PREFIX=$prefix \ + -DCMAKE_BINDIR_BASE=$prefix/bin \ + -DCMAKE_INCDIR_BASE=$includeDir/opensubdiv \ + -DCMAKE_LIBDIR_BASE=$libDir \ + -DCMAKE_SKIP_RPATH=ON \ + -DNO_EXAMPLES=ON \ + -DNO_TUTORIALS=ON \ + -DNO_GLFW_X11=ON \ + -DGLEW_LIBRARY="`finddir B_SYSTEM_DIRECTORY`/$relativeLibDir" \ + -DGLEW_INCLUDE_DIR="`finddir B_SYSTEM_DIRECTORY`/$relativeIncludeDir/GL" + make $jobArgs +} + +INSTALL() +{ + cd build + make install + + # remove static libraries + rm $libDir/*.a + + prepareInstalledDevelLibs \ + libosdCPU \ + libosdGPU + fixPkgconfig + + # we only need the libraries + rm -rf $developDir $prefix/bin +}