mirror of
https://git.freebsd.org/ports.git
synced 2025-07-18 17:59:20 -04:00
misc/openvdb: make compatible with OpenEXR/Imath 3.0
This commit is contained in:
parent
309ccb9a4c
commit
0440ba7ebb
10 changed files with 242 additions and 14 deletions
|
@ -1,7 +1,7 @@
|
|||
PORTNAME= openvdb
|
||||
DISTVERSIONPREFIX= v
|
||||
DISTVERSION= 8.0.1
|
||||
PORTREVISION= 1
|
||||
PORTREVISION= 2
|
||||
CATEGORIES= misc
|
||||
|
||||
MAINTAINER= yuri@FreeBSD.org
|
||||
|
@ -12,7 +12,7 @@ LICENSE_FILE= ${WRKSRC}/LICENSE
|
|||
|
||||
LIB_DEPENDS= libblosc.so:archivers/c-blosc \
|
||||
libboost_system.so:devel/boost-libs \
|
||||
libHalf.so:graphics/ilmbase \
|
||||
libImath.so:math/Imath \
|
||||
libtbb.so:devel/tbb
|
||||
|
||||
USES= cmake compiler:c++11-lang localbase:ldflags pkgconfig
|
||||
|
@ -38,7 +38,7 @@ TOOLS_DESC= Build CLI tools
|
|||
TOOLS_CMAKE_BOOL= OPENVDB_BUILD_BINARIES OPENVDB_BUILD_VDB_LOD \
|
||||
OPENVDB_BUILD_VDB_RENDER OPENVDB_BUILD_VDB_VIEW
|
||||
TOOLS_LIB_DEPENDS= libglfw.so:graphics/glfw \
|
||||
libIlmImf.so:graphics/openexr
|
||||
libOpenEXR.so:graphics/openexr
|
||||
TOOLS_USES= gl xorg
|
||||
TOOLS_USE= GL=gl,glu XORG=ice,sm,x11,xcursor,xext,xi,xinerama,xrandr,xxf86vm
|
||||
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
--- CMakeLists.txt.orig 2020-12-24 17:13:14 UTC
|
||||
--- CMakeLists.txt.orig 2021-02-05 19:21:38 UTC
|
||||
+++ CMakeLists.txt
|
||||
@@ -199,7 +199,7 @@ mark_as_advanced(
|
||||
# @note Blosc version is currently treated as exception which must be adhered
|
||||
|
@ -9,7 +9,15 @@
|
|||
# @note ABI always enforced so the correct deprecation messages are available.
|
||||
# OPENVDB_USE_DEPRECATED_ABI_<VERSION> should be used to circumvent this
|
||||
set(MINIMUM_OPENVDB_ABI_VERSION 6)
|
||||
@@ -220,7 +220,7 @@ if(NOT DISABLE_DEPENDENCY_VERSION_CHECKS)
|
||||
@@ -214,13 +214,13 @@ if(NOT DISABLE_DEPENDENCY_VERSION_CHECKS)
|
||||
set(MINIMUM_MSVC_VERSION 19.10)
|
||||
|
||||
set(MINIMUM_BOOST_VERSION 1.61) # @warning should be 1.66, but H18 ships with 1.61
|
||||
- set(MINIMUM_ILMBASE_VERSION 2.2) # @warning should be 2.3, but H18 ships with 2.2
|
||||
- set(MINIMUM_OPENEXR_VERSION 2.2) # @warning should be 2.3, but H18 ships with 2.2
|
||||
+ set(MINIMUM_ILMBASE_VERSION 3.0) # @warning should be 2.3, but H18 ships with 2.2
|
||||
+ set(MINIMUM_OPENEXR_VERSION 3.0) # @warning should be 2.3, but H18 ships with 2.2
|
||||
set(MINIMUM_ZLIB_VERSION 1.2.7)
|
||||
set(MINIMUM_TBB_VERSION 2018.0)
|
||||
set(MINIMUM_LLVM_VERSION 6.0.0)
|
||||
|
||||
|
|
130
misc/openvdb/files/patch-cmake_FindIlmBase.cmake
Normal file
130
misc/openvdb/files/patch-cmake_FindIlmBase.cmake
Normal file
|
@ -0,0 +1,130 @@
|
|||
--- cmake/FindIlmBase.cmake.orig 2021-02-05 19:21:38 UTC
|
||||
+++ cmake/FindIlmBase.cmake
|
||||
@@ -36,11 +36,11 @@ Result Variables
|
||||
|
||||
This will define the following variables:
|
||||
|
||||
-``IlmBase_FOUND``
|
||||
- True if the system has the IlmBase library.
|
||||
+``Imath_FOUND``
|
||||
+ True if the system has the Imath library.
|
||||
``IlmBase_VERSION``
|
||||
The version of the IlmBase library which was found.
|
||||
-``IlmBase_INCLUDE_DIRS``
|
||||
+``S``
|
||||
Include directories needed to use IlmBase.
|
||||
``IlmBase_LIBRARIES``
|
||||
Libraries needed to link to IlmBase.
|
||||
@@ -54,7 +54,7 @@ Cache Variables
|
||||
|
||||
The following cache variables may also be set:
|
||||
|
||||
-``IlmBase_INCLUDE_DIR``
|
||||
+````
|
||||
The directory containing ``IlmBase/config-auto.h``.
|
||||
``IlmBase_{COMPONENT}_LIBRARY``
|
||||
Individual component libraries for IlmBase
|
||||
@@ -85,7 +85,7 @@ include(GNUInstallDirs)
|
||||
|
||||
|
||||
mark_as_advanced(
|
||||
- IlmBase_INCLUDE_DIR
|
||||
+
|
||||
IlmBase_LIBRARY
|
||||
)
|
||||
|
||||
@@ -95,10 +95,6 @@ if(DISABLE_CMAKE_SEARCH_PATHS)
|
||||
endif()
|
||||
|
||||
set(_ILMBASE_COMPONENT_LIST
|
||||
- Half
|
||||
- Iex
|
||||
- IexMath
|
||||
- IlmThread
|
||||
Imath
|
||||
)
|
||||
|
||||
@@ -142,7 +138,7 @@ if(USE_PKGCONFIG)
|
||||
if(NOT DEFINED PKG_CONFIG_FOUND)
|
||||
find_package(PkgConfig)
|
||||
endif()
|
||||
- pkg_check_modules(PC_IlmBase QUIET IlmBase)
|
||||
+ pkg_check_modules(PC_IlmBase QUIET Imath)
|
||||
endif()
|
||||
|
||||
# ------------------------------------------------------------------------
|
||||
@@ -158,15 +154,15 @@ list(APPEND _ILMBASE_INCLUDE_SEARCH_DIRS
|
||||
)
|
||||
|
||||
# Look for a standard IlmBase header file.
|
||||
-find_path(IlmBase_INCLUDE_DIR IlmBaseConfig.h
|
||||
+find_path( IlmBaseConfig.h
|
||||
${_FIND_ILMBASE_ADDITIONAL_OPTIONS}
|
||||
PATHS ${_ILMBASE_INCLUDE_SEARCH_DIRS}
|
||||
PATH_SUFFIXES ${CMAKE_INSTALL_INCLUDEDIR}/OpenEXR include/OpenEXR OpenEXR
|
||||
)
|
||||
|
||||
-if(EXISTS "${IlmBase_INCLUDE_DIR}/IlmBaseConfig.h")
|
||||
+if(EXISTS "${}/IlmBaseConfig.h")
|
||||
# Get the ILMBASE version information from the config header
|
||||
- file(STRINGS "${IlmBase_INCLUDE_DIR}/IlmBaseConfig.h"
|
||||
+ file(STRINGS "${}/IlmBaseConfig.h"
|
||||
_ilmbase_version_major_string REGEX "#define ILMBASE_VERSION_MAJOR "
|
||||
)
|
||||
string(REGEX REPLACE "#define ILMBASE_VERSION_MAJOR" ""
|
||||
@@ -174,7 +170,7 @@ if(EXISTS "${IlmBase_INCLUDE_DIR}/IlmBaseConfig.h")
|
||||
)
|
||||
string(STRIP "${_ilmbase_version_major_string}" IlmBase_VERSION_MAJOR)
|
||||
|
||||
- file(STRINGS "${IlmBase_INCLUDE_DIR}/IlmBaseConfig.h"
|
||||
+ file(STRINGS "${}/IlmBaseConfig.h"
|
||||
_ilmbase_version_minor_string REGEX "#define ILMBASE_VERSION_MINOR "
|
||||
)
|
||||
string(REGEX REPLACE "#define ILMBASE_VERSION_MINOR" ""
|
||||
@@ -255,16 +251,16 @@ unset(_ILMBASE_ORIG_CMAKE_FIND_LIBRARY_SUFFIXES)
|
||||
# ------------------------------------------------------------------------
|
||||
|
||||
include(FindPackageHandleStandardArgs)
|
||||
-find_package_handle_standard_args(IlmBase
|
||||
- FOUND_VAR IlmBase_FOUND
|
||||
+find_package_handle_standard_args(Imath
|
||||
+ FOUND_VAR Imath_FOUND
|
||||
REQUIRED_VARS
|
||||
- IlmBase_INCLUDE_DIR
|
||||
+
|
||||
IlmBase_LIB_COMPONENTS
|
||||
VERSION_VAR IlmBase_VERSION
|
||||
HANDLE_COMPONENTS
|
||||
)
|
||||
|
||||
-if(IlmBase_FOUND)
|
||||
+if(Imath_FOUND)
|
||||
set(IlmBase_LIBRARIES ${IlmBase_LIB_COMPONENTS})
|
||||
|
||||
# We have to add both include and include/OpenEXR to the include
|
||||
@@ -280,12 +276,12 @@ if(IlmBase_FOUND)
|
||||
|
||||
set(_IlmBase_Parent_Dir "")
|
||||
get_filename_component(_IlmBase_Parent_Dir
|
||||
- ${IlmBase_INCLUDE_DIR}/../ ABSOLUTE)
|
||||
+ ${}/../ ABSOLUTE)
|
||||
|
||||
- set(IlmBase_INCLUDE_DIRS)
|
||||
- list(APPEND IlmBase_INCLUDE_DIRS
|
||||
+ set(S)
|
||||
+ list(APPEND S
|
||||
${_IlmBase_Parent_Dir}
|
||||
- ${IlmBase_INCLUDE_DIR}
|
||||
+ ${}
|
||||
)
|
||||
unset(_IlmBase_Parent_Dir)
|
||||
|
||||
@@ -330,7 +326,7 @@ if(IlmBase_FOUND)
|
||||
IMPORTED_LOCATION "${IlmBase_${COMPONENT}_LIBRARY}"
|
||||
INTERFACE_COMPILE_OPTIONS "${PC_IlmBase_CFLAGS_OTHER}"
|
||||
INTERFACE_COMPILE_DEFINITIONS "${IlmBase_${COMPONENT}_DEFINITIONS}"
|
||||
- INTERFACE_INCLUDE_DIRECTORIES "${IlmBase_INCLUDE_DIRS}"
|
||||
+ INTERFACE_INCLUDE_DIRECTORIES "${S}"
|
||||
)
|
||||
endif()
|
||||
endforeach()
|
12
misc/openvdb/files/patch-cmake_FindOpenEXR.cmake
Normal file
12
misc/openvdb/files/patch-cmake_FindOpenEXR.cmake
Normal file
|
@ -0,0 +1,12 @@
|
|||
--- cmake/FindOpenEXR.cmake.orig 2021-02-05 19:21:38 UTC
|
||||
+++ cmake/FindOpenEXR.cmake
|
||||
@@ -91,8 +91,7 @@ if(DISABLE_CMAKE_SEARCH_PATHS)
|
||||
endif()
|
||||
|
||||
set(_OPENEXR_COMPONENT_LIST
|
||||
- IlmImf
|
||||
- IlmImfUtil
|
||||
+ OpenEXR
|
||||
)
|
||||
|
||||
if(OpenEXR_FIND_COMPONENTS)
|
|
@ -1,6 +1,6 @@
|
|||
--- cmake/FindTBB.cmake.orig 2020-08-13 19:15:58 UTC
|
||||
--- cmake/FindTBB.cmake.orig 2021-02-05 19:21:38 UTC
|
||||
+++ cmake/FindTBB.cmake
|
||||
@@ -97,7 +97,6 @@ endif()
|
||||
@@ -93,7 +93,6 @@ endif()
|
||||
set(_TBB_COMPONENT_LIST
|
||||
tbb
|
||||
tbbmalloc
|
||||
|
|
|
@ -1,10 +1,10 @@
|
|||
--- doc/CMakeLists.txt.orig 2020-12-24 17:13:14 UTC
|
||||
--- doc/CMakeLists.txt.orig 2021-02-05 19:21:38 UTC
|
||||
+++ doc/CMakeLists.txt
|
||||
@@ -193,5 +193,5 @@ doxygen_add_docs(doc ${DOXY_FILES}
|
||||
@@ -195,5 +195,5 @@ doxygen_add_docs(doc ${DOXY_FILES}
|
||||
COMMENT "Generating API documentation with Doxygen")
|
||||
|
||||
# Suppress "Installing..." messages for all but one of the hundreds of generated files.
|
||||
-install(FILES ${CMAKE_CURRENT_BINARY_DIR}/html/index.html DESTINATION doc/html)
|
||||
-install(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/html DESTINATION doc MESSAGE_NEVER)
|
||||
-install(FILES ${CMAKE_CURRENT_BINARY_DIR}/html/index.html DESTINATION ${CMAKE_INSTALL_DOCDIR}/html)
|
||||
-install(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/html DESTINATION ${CMAKE_INSTALL_DOCDIR} MESSAGE_NEVER)
|
||||
+install(FILES ${CMAKE_CURRENT_BINARY_DIR}/openvdb/doc/html/index.html DESTINATION share/doc/openvdb)
|
||||
+install(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/openvdb/doc/html DESTINATION share/doc/openvdb MESSAGE_NEVER)
|
||||
|
|
41
misc/openvdb/files/patch-openvdb_openvdb_CMakeLists.txt
Normal file
41
misc/openvdb/files/patch-openvdb_openvdb_CMakeLists.txt
Normal file
|
@ -0,0 +1,41 @@
|
|||
--- openvdb/openvdb/CMakeLists.txt.orig 2021-02-05 19:21:38 UTC
|
||||
+++ openvdb/openvdb/CMakeLists.txt
|
||||
@@ -45,8 +45,8 @@ message(STATUS "--------------------------------------
|
||||
|
||||
# Collect and configure lib dependencies
|
||||
|
||||
+find_package(Imath ${MINIMUM_ILMBASE_VERSION} REQUIRED)
|
||||
if(USE_EXR)
|
||||
- find_package(IlmBase ${MINIMUM_ILMBASE_VERSION} REQUIRED)
|
||||
find_package(OpenEXR ${MINIMUM_OPENEXR_VERSION} REQUIRED)
|
||||
if(OPENVDB_FUTURE_DEPRECATION AND FUTURE_MINIMUM_OPENEXR_VERSION)
|
||||
if(${OpenEXR_VERSION} VERSION_LESS FUTURE_MINIMUM_OPENEXR_VERSION)
|
||||
@@ -54,8 +54,6 @@ if(USE_EXR)
|
||||
"is deprecated and will be removed.")
|
||||
endif()
|
||||
endif()
|
||||
-else()
|
||||
- find_package(IlmBase ${MINIMUM_ILMBASE_VERSION} REQUIRED COMPONENTS Half)
|
||||
endif()
|
||||
|
||||
if(OPENVDB_FUTURE_DEPRECATION AND FUTURE_MINIMUM_ILMBASE_VERSION)
|
||||
@@ -129,7 +127,7 @@ endif()
|
||||
set(OPENVDB_CORE_DEPENDENT_LIBS
|
||||
Boost::iostreams
|
||||
Boost::system
|
||||
- IlmBase::Half
|
||||
+ Imath::Imath
|
||||
)
|
||||
|
||||
if(WIN32)
|
||||
@@ -147,9 +145,7 @@ endif()
|
||||
|
||||
if(USE_EXR)
|
||||
list(APPEND OPENVDB_CORE_DEPENDENT_LIBS
|
||||
- IlmBase::IlmThread
|
||||
- IlmBase::Iex
|
||||
- IlmBase::Imath
|
||||
+ Imath::Imath
|
||||
OpenEXR::IlmImf
|
||||
)
|
||||
endif()
|
11
misc/openvdb/files/patch-openvdb_openvdb_Types.h
Normal file
11
misc/openvdb/files/patch-openvdb_openvdb_Types.h
Normal file
|
@ -0,0 +1,11 @@
|
|||
--- openvdb/openvdb/Types.h.orig 2021-02-05 19:21:38 UTC
|
||||
+++ openvdb/openvdb/Types.h
|
||||
@@ -7,7 +7,7 @@
|
||||
#include "version.h"
|
||||
#include "Platform.h"
|
||||
#include "TypeList.h" // backwards compat
|
||||
-#include <OpenEXR/half.h>
|
||||
+#include <Imath/half.h>
|
||||
#include <openvdb/math/Math.h>
|
||||
#include <openvdb/math/BBox.h>
|
||||
#include <openvdb/math/Quat.h>
|
26
misc/openvdb/files/patch-openvdb_openvdb_cmd_CMakeLists.txt
Normal file
26
misc/openvdb/files/patch-openvdb_openvdb_cmd_CMakeLists.txt
Normal file
|
@ -0,0 +1,26 @@
|
|||
--- openvdb/openvdb/cmd/CMakeLists.txt.orig 2021-02-05 19:21:38 UTC
|
||||
+++ openvdb/openvdb/cmd/CMakeLists.txt
|
||||
@@ -116,8 +116,8 @@ endif()
|
||||
#### vdb_render
|
||||
|
||||
if(OPENVDB_BUILD_VDB_RENDER)
|
||||
- find_package(IlmBase ${MINIMUM_ILMBASE_VERSION} REQUIRED COMPONENTS Half Iex IlmThread Imath)
|
||||
- find_package(OpenEXR ${MINIMUM_OPENEXR_VERSION} REQUIRED COMPONENTS IlmImf)
|
||||
+ find_package(Imath ${MINIMUM_ILMBASE_VERSION} REQUIRED)
|
||||
+ find_package(OpenEXR ${MINIMUM_OPENEXR_VERSION} REQUIRED)
|
||||
|
||||
set(VDB_RENDER_SOURCE_FILES openvdb_render.cc)
|
||||
add_executable(vdb_render ${VDB_RENDER_SOURCE_FILES})
|
||||
@@ -129,10 +129,8 @@ if(OPENVDB_BUILD_VDB_RENDER)
|
||||
# headers
|
||||
|
||||
target_link_libraries(vdb_render
|
||||
- OpenEXR::IlmImf
|
||||
- IlmBase::IlmThread
|
||||
- IlmBase::Iex
|
||||
- IlmBase::Imath
|
||||
+ OpenEXR::OpenEXR
|
||||
+ Imath::Imath
|
||||
${OPENVDB_BINARIES_DEPENDENT_LIBS}
|
||||
)
|
||||
|
|
@ -1,6 +1,6 @@
|
|||
--- openvdb/openvdb/python/CMakeLists.txt.orig 2020-12-24 17:13:14 UTC
|
||||
--- openvdb/openvdb/python/CMakeLists.txt.orig 2021-02-05 19:21:38 UTC
|
||||
+++ openvdb/openvdb/python/CMakeLists.txt
|
||||
@@ -85,7 +85,7 @@ if(OPENVDB_BUILD_PYTHON_UNITTESTS)
|
||||
@@ -81,7 +81,7 @@ if(OPENVDB_BUILD_PYTHON_UNITTESTS)
|
||||
endif()
|
||||
|
||||
if(${CMAKE_VERSION} VERSION_LESS 3.14)
|
||||
|
@ -9,7 +9,7 @@
|
|||
OPENVDB_CHECK_PYTHON_VERSION(${Python_VERSION} ${Python_INCLUDE_DIRS})
|
||||
|
||||
if(USE_NUMPY)
|
||||
@@ -94,11 +94,11 @@ if(${CMAKE_VERSION} VERSION_LESS 3.14)
|
||||
@@ -90,11 +90,11 @@ if(${CMAKE_VERSION} VERSION_LESS 3.14)
|
||||
list(APPEND OPENVDB_PYTHON_DEPS Python::NumPy)
|
||||
endif()
|
||||
else()
|
||||
|
|
Loading…
Add table
Reference in a new issue