From 867df2ac4476661e69f78d96f80ff523b591f9cd Mon Sep 17 00:00:00 2001 From: JonLiu1993 <63675417+JonLiu1993@users.noreply.github.com> Date: Tue, 22 Mar 2022 05:07:02 +0800 Subject: [PATCH] [OpenVDB] Update to V9.0.0 (#23623) * [OpenVDB] Update to V9.0.0 * update version * add license * update version --- ports/openvdb/0003-fix-cmake.patch | 74 ++++++++++++++++--------- ports/openvdb/fix-Target-notfound.patch | 19 +++++++ ports/openvdb/portfile.cmake | 5 +- ports/openvdb/vcpkg.json | 3 +- versions/baseline.json | 2 +- versions/o-/openvdb.json | 5 ++ 6 files changed, 77 insertions(+), 31 deletions(-) create mode 100644 ports/openvdb/fix-Target-notfound.patch diff --git a/ports/openvdb/0003-fix-cmake.patch b/ports/openvdb/0003-fix-cmake.patch index 4bd86e5cfd4ead..52839ae143225f 100644 --- a/ports/openvdb/0003-fix-cmake.patch +++ b/ports/openvdb/0003-fix-cmake.patch @@ -1,8 +1,8 @@ diff --git a/CMakeLists.txt b/CMakeLists.txt -index 2a879f2..e0d9ab5 100644 +index 8dfbc5e..0ba8887 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt -@@ -356,13 +356,9 @@ endif() +@@ -373,13 +373,9 @@ list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_LIST_DIR}/cmake") if(OPENVDB_INSTALL_CMAKE_MODULES) set(OPENVDB_CMAKE_MODULES @@ -17,10 +17,10 @@ index 2a879f2..e0d9ab5 100644 cmake/OpenVDBHoudiniSetup.cmake cmake/OpenVDBMayaSetup.cmake diff --git a/cmake/FindOpenVDB.cmake b/cmake/FindOpenVDB.cmake -index 86eaf84..15fe31a 100644 +index 0dac1de..5014c6a 100644 --- a/cmake/FindOpenVDB.cmake +++ b/cmake/FindOpenVDB.cmake -@@ -462,7 +462,7 @@ endif() +@@ -485,7 +485,7 @@ endif() # Add standard dependencies @@ -29,7 +29,7 @@ index 86eaf84..15fe31a 100644 if(NOT OPENVDB_USE_STATIC_LIBS AND NOT Boost_USE_STATIC_LIBS) # @note Both of these must be set for Boost 1.70 (VFX2020) to link against -@@ -612,7 +612,7 @@ elseif(NOT OPENVDB_USE_STATIC_LIBS) +@@ -635,7 +635,7 @@ elseif(NOT OPENVDB_USE_STATIC_LIBS) endif() if(OpenVDB_USES_BLOSC) @@ -38,7 +38,7 @@ index 86eaf84..15fe31a 100644 endif() if(OpenVDB_USES_ZLIB) -@@ -626,7 +626,7 @@ endif() +@@ -649,7 +649,7 @@ endif() if(OpenVDB_USES_IMATH_HALF) find_package(Imath CONFIG) if (NOT TARGET Imath::Imath) @@ -47,7 +47,7 @@ index 86eaf84..15fe31a 100644 endif() if(WIN32) -@@ -675,7 +675,7 @@ set(_OPENVDB_HIDDEN_DEPENDENCIES) +@@ -698,7 +698,7 @@ set(_OPENVDB_HIDDEN_DEPENDENCIES) if(NOT OPENVDB_USE_STATIC_LIBS) if(OpenVDB_USES_BLOSC) @@ -57,7 +57,7 @@ index 86eaf84..15fe31a 100644 if(OpenVDB_USES_ZLIB) list(APPEND _OPENVDB_HIDDEN_DEPENDENCIES ZLIB::ZLIB) diff --git a/openvdb/openvdb/CMakeLists.txt b/openvdb/openvdb/CMakeLists.txt -index 9b6ba83..08b6bb3 100644 +index 1d5b75f..f2da6f9 100644 --- a/openvdb/openvdb/CMakeLists.txt +++ b/openvdb/openvdb/CMakeLists.txt @@ -127,9 +127,9 @@ if(OPENVDB_FUTURE_DEPRECATION AND FUTURE_MINIMUM_BOOST_VERSION) @@ -81,23 +81,35 @@ index 9b6ba83..08b6bb3 100644 if(OPENVDB_FUTURE_DEPRECATION AND FUTURE_MINIMUM_ILMBASE_VERSION) if(${IlmBase_VERSION} VERSION_LESS FUTURE_MINIMUM_ILMBASE_VERSION) message(DEPRECATION "Support for IlmBase versions < ${FUTURE_MINIMUM_ILMBASE_VERSION} " -@@ -157,14 +157,7 @@ endif() +@@ -157,26 +157,7 @@ endif() if(USE_BLOSC) # Find Blosc libraries - find_package(Blosc ${MINIMUM_BLOSC_VERSION} REQUIRED) -- if(Blosc_FOUND AND Blosc_VERSION VERSION_GREATER MINIMUM_BLOSC_VERSION) -- message(WARNING "The version of Blosc located is greater than ${MINIMUM_BLOSC_VERSION}. " -- "There have been reported issues with using later versions of Blosc with OpenVDB. " -- "OpenVDB has been tested fully against Blosc ${MINIMUM_BLOSC_VERSION}, it is " -- "recommended that you use this version where possible." -- ) +- if(Blosc_VERSION) +- if(OPENVDB_FUTURE_DEPRECATION AND FUTURE_MINIMUM_BLOSC_VERSION) +- if(${Blosc_VERSION} VERSION_LESS FUTURE_MINIMUM_BLOSC_VERSION) +- message(DEPRECATION "Support for Blosc versions < ${FUTURE_MINIMUM_BLOSC_VERSION} " +- "is deprecated and will be removed.") +- endif() +- endif() +- # Print a warning if using of the blosc versions with regression issues +- # with Blosc 1.5.0 caches. +- if((Blosc_VERSION VERSION_GREATER_EQUAL 1.11.0 AND +- Blosc_VERSION VERSION_LESS 1.14.0) OR +- (Blosc_VERSION VERSION_GREATER_EQUAL 1.16.0 AND +- Blosc_VERSION VERSION_LESS 1.16.2)) +- message(WARNING "The following Blosc versions are incompatible with the " +- "recommended builds of OpenVDB: [1.11.0 -> 1.14.0) [1.16.0, 1.16.1]. " +- "Found Blosc version '${Blosc_VERSION}' which falls in this range. We " +- "strongly recommend using the new future minimum version '${FUTURE_MINIMUM_BLOSC_VERSION}'") +- endif() - endif() + find_package(blosc CONFIG REQUIRED) else() message(WARNING "Blosc support is disabled. It is strongly recommended to " "enable blosc for optimal builds of OpenVDB and to support compatible " -@@ -222,7 +215,7 @@ endif() +@@ -234,7 +215,7 @@ endif() # /usr/local if(USE_BLOSC) @@ -107,7 +119,7 @@ index 9b6ba83..08b6bb3 100644 if(USE_BLOSC OR USE_ZLIB) diff --git a/openvdb/openvdb/cmd/CMakeLists.txt b/openvdb/openvdb/cmd/CMakeLists.txt -index 4d96425..d2037e8 100644 +index c1d5649..c173566 100644 --- a/openvdb/openvdb/cmd/CMakeLists.txt +++ b/openvdb/openvdb/cmd/CMakeLists.txt @@ -46,7 +46,7 @@ if(CONCURRENT_MALLOC STREQUAL "Jemalloc") @@ -119,14 +131,22 @@ index 4d96425..d2037e8 100644 list(APPEND OPENVDB_BINARIES_DEPENDENT_LIBS TBB::tbbmalloc) endif() -@@ -83,8 +83,8 @@ endif() - if(OPENVDB_BUILD_VDB_RENDER) - find_package(Imath CONFIG) - if (NOT TARGET Imath::Imath) -- find_package(IlmBase ${MINIMUM_ILMBASE_VERSION} REQUIRED COMPONENTS Half Iex IlmThread Imath) -- find_package(OpenEXR ${MINIMUM_OPENEXR_VERSION} REQUIRED COMPONENTS IlmImf) -+ find_package(IlmBase CONFIG REQUIRED) -+ find_package(OpenEXR CONFIG REQUIRED) - else() - find_package(OpenEXR CONFIG) +@@ -90,17 +90,13 @@ if(OPENVDB_BUILD_VDB_RENDER) + find_package(Imath CONFIG) + if (NOT TARGET Imath::Imath) + if(USE_EXR) +- find_package(IlmBase ${MINIMUM_ILMBASE_VERSION} REQUIRED COMPONENTS Half Iex IlmThread Imath) +- else() +- find_package(IlmBase ${MINIMUM_ILMBASE_VERSION} REQUIRED COMPONENTS Half) ++ find_package(IlmBase CONFIG REQUIRED) + endif() + endif() + endif() + + if(USE_EXR) + if (NOT TARGET Imath::Imath) +- find_package(OpenEXR ${MINIMUM_OPENEXR_VERSION} REQUIRED COMPONENTS IlmImf) +- else() + find_package(OpenEXR CONFIG REQUIRED) + endif() endif() diff --git a/ports/openvdb/fix-Target-notfound.patch b/ports/openvdb/fix-Target-notfound.patch new file mode 100644 index 00000000000000..421ee5da202ace --- /dev/null +++ b/ports/openvdb/fix-Target-notfound.patch @@ -0,0 +1,19 @@ +diff --git a/openvdb/openvdb/cmd/CMakeLists.txt b/openvdb/openvdb/cmd/CMakeLists.txt +index c173566..53f8575 100644 +--- a/openvdb/openvdb/cmd/CMakeLists.txt ++++ b/openvdb/openvdb/cmd/CMakeLists.txt +@@ -137,9 +137,11 @@ if(OPENVDB_BUILD_VDB_RENDER) + + if(WIN32) + # @note OPENVDB_OPENEXR_STATICLIB is old functionality and should be removed +- get_target_property(ILMBASE_LIB_TYPE IlmBase::Half TYPE) +- if(OPENEXR_USE_STATIC_LIBS OR (${ILMBASE_LIB_TYPE} STREQUAL STATIC_LIBRARY)) +- target_compile_definitions(vdb_render PUBLIC -DOPENVDB_OPENEXR_STATICLIB) ++ if(USE_IMATH_HALF) ++ get_target_property(ILMBASE_LIB_TYPE IlmBase::Half TYPE) ++ if(OPENEXR_USE_STATIC_LIBS OR (${ILMBASE_LIB_TYPE} STREQUAL STATIC_LIBRARY)) ++ target_compile_definitions(vdb_render PUBLIC -DOPENVDB_OPENEXR_STATICLIB) ++ endif() + endif() + endif() + diff --git a/ports/openvdb/portfile.cmake b/ports/openvdb/portfile.cmake index b5a3e77790cb2a..6016632fa1b59b 100644 --- a/ports/openvdb/portfile.cmake +++ b/ports/openvdb/portfile.cmake @@ -1,10 +1,11 @@ vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO AcademySoftwareFoundation/openvdb - REF 89873d2bd29870cc9f176ed12b3f3a930ca38d1a # v8.2.0 - SHA512 d72a0eec6b7ce8e25fbe3100d4a291c35d7c2448f23131aaa9f247210f26e965198ef2991d9cf789afc754cbcddaace7a27ab62a2609a19a896034859c518699 + REF 0ed0f19ea4fbb0d8bf64d3dca07abab3c7429803 # v9.0.0 + SHA512 f033f2d5801327ab8aeffb12d1a74ff880e477a1f00da3b03a3087262a3e72ef77c13e05fe8e3c94a26721804230c0272d9ca069af997c36c992f3e2f3d962f2 PATCHES 0003-fix-cmake.patch + fix-Target-notfound.patch ) file(REMOVE "${SOURCE_PATH}/cmake/FindTBB.cmake") diff --git a/ports/openvdb/vcpkg.json b/ports/openvdb/vcpkg.json index 669107898efb72..7acb002f72a632 100644 --- a/ports/openvdb/vcpkg.json +++ b/ports/openvdb/vcpkg.json @@ -1,8 +1,9 @@ { "name": "openvdb", - "version": "8.2.0", + "version": "9.0.0", "description": "Sparse volume data structure and tools", "homepage": "https://github.com/dreamworksanimation/openvdb", + "license": "MPL-2.0", "dependencies": [ "blosc", "boost-any", diff --git a/versions/baseline.json b/versions/baseline.json index 7746e49d44750d..5debe164804a49 100644 --- a/versions/baseline.json +++ b/versions/baseline.json @@ -5145,7 +5145,7 @@ "port-version": 2 }, "openvdb": { - "baseline": "8.2.0", + "baseline": "9.0.0", "port-version": 0 }, "openvpn3": { diff --git a/versions/o-/openvdb.json b/versions/o-/openvdb.json index 3549324dfc9177..75ee6fac0e3f01 100644 --- a/versions/o-/openvdb.json +++ b/versions/o-/openvdb.json @@ -1,5 +1,10 @@ { "versions": [ + { + "git-tree": "a026562abe75e40d4b60d97108ef057b2e28629a", + "version": "9.0.0", + "port-version": 0 + }, { "git-tree": "8546c4c4d392f4b0bb9a604e8bb6a831d39b99e8", "version": "8.2.0",