CMake: Disable Options Depending on OpenEXR Dependecies #106209
|
@ -886,8 +886,11 @@ set_and_warn_dependency(WITH_TBB WITH_MOD_FLUID OFF)
|
|||
# NanoVDB requires OpenVDB to convert the data structure
|
||||
set_and_warn_dependency(WITH_OPENVDB WITH_NANOVDB OFF)
|
||||
|
||||
# OpenVDB and OpenColorIO uses 'half' type from OpenEXR
|
||||
# OpenVDB, Alembic and Vulkan, OSL uses 'half' or 'imath' from OpenEXR
|
||||
set_and_warn_dependency(WITH_IMAGE_OPENEXR WITH_OPENVDB OFF)
|
||||
set_and_warn_dependency(WITH_IMAGE_OPENEXR WITH_ALEMBIC OFF)
|
||||
set_and_warn_dependency(WITH_IMAGE_OPENEXR WITH_VULKAN_BACKEND OFF)
|
||||
set_and_warn_dependency(WITH_IMAGE_OPENEXR WITH_CYCLES_OSL OFF)
|
||||
|
||||
# Haru needs `TIFFFaxBlackCodes` & `TIFFFaxWhiteCodes` symbols from TIFF.
|
||||
set_and_warn_dependency(WITH_IMAGE_TIFF WITH_HARU OFF)
|
||||
|
|
|
@ -120,9 +120,8 @@ UNSET(_openexr_libs_ver)
|
|||
|
||||
IF(OPENEXR_VERSION VERSION_GREATER_EQUAL "3.0.0")
|
||||
# For OpenEXR 3.x, we also need to find the now separate Imath library.
|
||||
# For simplicity we add it to the OpenEXR includes and libraries, as we
|
||||
# have no direct dependency on Imath and it's simpler to support both
|
||||
# 2.x and 3.x this way.
|
||||
# For simplicity we also add it to the OpenEXR includes and libraries,
|
||||
# as it's simpler to support both 2.x and 3.x this way.
|
||||
|
||||
Jeroen-Bakker marked this conversation as resolved
Outdated
|
||||
# Find include directory
|
||||
FIND_PATH(IMATH_INCLUDE_DIR
|
||||
|
@ -169,6 +168,12 @@ IF(OPENEXR_VERSION VERSION_GREATER_EQUAL "3.0.0")
|
|||
UNSET(_imath_build_specification)
|
||||
ENDIF()
|
||||
|
||||
IF(OPENEXR_VERSION VERSION_GREATER_EQUAL "3.0.0")
|
||||
SET(IMATH_LIBRARIES ${IMATH_LIBRARY})
|
||||
ELSE()
|
||||
SET(IMATH_LIBRARIES ${OPENEXR_IMATH_LIBRARY})
|
||||
ENDIF()
|
||||
|
||||
# handle the QUIETLY and REQUIRED arguments and set OPENEXR_FOUND to TRUE if
|
||||
# all listed variables are TRUE
|
||||
INCLUDE(FindPackageHandleStandardArgs)
|
||||
|
@ -196,6 +201,7 @@ MARK_AS_ADVANCED(
|
|||
OPENEXR_VERSION
|
||||
IMATH_INCLUDE_DIR
|
||||
IMATH_LIBRARY
|
||||
IMATH_LIBRARIES
|
||||
)
|
||||
FOREACH(COMPONENT ${_openexr_FIND_COMPONENTS})
|
||||
STRING(TOUPPER ${COMPONENT} UPPERCOMPONENT)
|
||||
|
|
|
@ -801,7 +801,6 @@ if(WITH_GPU_BUILDTIME_SHADER_BUILDER)
|
|||
bf_intern_ghost
|
||||
${PLATFORM_LINKLIBS}
|
||||
${IMATH_LIBRARIES}
|
||||
${IMATH_LIBRARY}
|
||||
)
|
||||
target_include_directories(shader_builder PRIVATE ${INC} ${CMAKE_CURRENT_BINARY_DIR})
|
||||
|
||||
|
|
Loading…
Reference in New Issue
This code only runs for OpenEXR 3, so this does not work for 2. To handle both cases: