78 lines
2.3 KiB
Diff
78 lines
2.3 KiB
Diff
|
diff --git a/cmake/modules/FindOpenVDB.cmake b/cmake/modules/FindOpenVDB.cmake
|
||
|
index 4fde5fa4a..566e73a5e 100644
|
||
|
--- a/cmake/modules/FindOpenVDB.cmake
|
||
|
+++ b/cmake/modules/FindOpenVDB.cmake
|
||
|
@@ -347,28 +347,10 @@ macro(just_fail msg)
|
||
|
return()
|
||
|
endmacro()
|
||
|
|
||
|
-find_package(IlmBase QUIET)
|
||
|
-if(NOT IlmBase_FOUND)
|
||
|
- pkg_check_modules(IlmBase QUIET IlmBase)
|
||
|
-endif()
|
||
|
-if (IlmBase_FOUND AND NOT TARGET IlmBase::Half)
|
||
|
- message(STATUS "Falling back to IlmBase found by pkg-config...")
|
||
|
-
|
||
|
- find_library(IlmHalf_LIBRARY NAMES Half)
|
||
|
- if(IlmHalf_LIBRARY-NOTFOUND OR NOT IlmBase_INCLUDE_DIRS)
|
||
|
- just_fail("IlmBase::Half can not be found!")
|
||
|
- endif()
|
||
|
-
|
||
|
- add_library(IlmBase::Half UNKNOWN IMPORTED)
|
||
|
- set_target_properties(IlmBase::Half PROPERTIES
|
||
|
- IMPORTED_LOCATION "${IlmHalf_LIBRARY}"
|
||
|
- INTERFACE_INCLUDE_DIRECTORIES "${IlmBase_INCLUDE_DIRS}")
|
||
|
-elseif(NOT IlmBase_FOUND)
|
||
|
- just_fail("IlmBase::Half can not be found!")
|
||
|
-endif()
|
||
|
find_package(TBB ${_quiet} ${_required} COMPONENTS tbb)
|
||
|
find_package(ZLIB ${_quiet} ${_required})
|
||
|
find_package(Boost ${_quiet} ${_required} COMPONENTS iostreams system )
|
||
|
+find_package(Imath CONFIG)
|
||
|
|
||
|
# Use GetPrerequisites to see which libraries this OpenVDB lib has linked to
|
||
|
# which we can query for optional deps. This basically runs ldd/otoll/objdump
|
||
|
@@ -419,7 +401,7 @@ foreach(PREREQUISITE ${_OPENVDB_PREREQUISITE_LIST})
|
||
|
set(OpenVDB_USES_LOG4CPLUS ON)
|
||
|
endif()
|
||
|
|
||
|
- string(FIND ${PREREQUISITE} "IlmImf" _HAS_DEP)
|
||
|
+ string(FIND ${PREREQUISITE} "OpenEXR" _HAS_DEP)
|
||
|
if(NOT ${_HAS_DEP} EQUAL -1)
|
||
|
set(OpenVDB_USES_ILM ON)
|
||
|
endif()
|
||
|
@@ -450,11 +432,7 @@ if(OpenVDB_USES_LOG4CPLUS)
|
||
|
find_package(Log4cplus ${_quiet} ${_required})
|
||
|
endif()
|
||
|
|
||
|
-if(OpenVDB_USES_ILM)
|
||
|
- find_package(IlmBase ${_quiet} ${_required})
|
||
|
-endif()
|
||
|
-
|
||
|
-if(OpenVDB_USES_EXR)
|
||
|
+if(OpenVDB_USES_ILM OR OpenVDB_USES_EXR)
|
||
|
find_package(OpenEXR ${_quiet} ${_required})
|
||
|
endif()
|
||
|
|
||
|
@@ -471,7 +449,7 @@ endif()
|
||
|
set(_OPENVDB_VISIBLE_DEPENDENCIES
|
||
|
Boost::iostreams
|
||
|
Boost::system
|
||
|
- IlmBase::Half
|
||
|
+ Imath::Imath
|
||
|
)
|
||
|
|
||
|
set(_OPENVDB_DEFINITIONS)
|
||
|
@@ -481,10 +459,7 @@ endif()
|
||
|
|
||
|
if(OpenVDB_USES_EXR)
|
||
|
list(APPEND _OPENVDB_VISIBLE_DEPENDENCIES
|
||
|
- IlmBase::IlmThread
|
||
|
- IlmBase::Iex
|
||
|
- IlmBase::Imath
|
||
|
- OpenEXR::IlmImf
|
||
|
+ OpenEXR::OpenEXR
|
||
|
)
|
||
|
list(APPEND _OPENVDB_DEFINITIONS "-DOPENVDB_TOOLS_RAYTRACER_USE_EXR")
|
||
|
endif()
|