@@ -58,14 +58,52 @@ else()
5858 message ( STATUS " ZLIB is automatically linked when using OpenEXR 3.x but CTL needs to link to ZLIB if using OpenEXR 2.x" )
5959endif ()
6060
61- find_package (OpenEXR 3 CONFIG QUIET )
61+ # find OpenEXR
62+ find_package (IlmBase QUIET )
63+ if (IlmBase_FOUND)
64+ message (STATUS "Found IlmBase ${IlmBase_VERSION} " )
65+ find_package (OpenEXR 2 QUIET )
66+ endif ()
67+
68+ if (NOT OpenEXR_FOUND)
69+ find_package (OpenEXR CONFIG 3 REQUIRED)
70+ if (OpenEXR_FOUND)
71+ set (OpenEXR_FOUND_WITH_CONFIG TRUE BOOL "found OpenEXR with Config" )
72+ endif ()
73+ endif ()
74+
6275if (OpenEXR_FOUND)
6376 message (STATUS "Found OpenEXR ${OpenEXR_VERSION} " )
64- else ()
65- message (STATUS "OpenEXR v3 not found, looking for IlmBase and OpenEXR v2" )
66- find_package (IlmBase REQUIRED)
67- find_package (OpenEXR 2 REQUIRED)
68- endif ()
77+ set (USE_OPENEXR TRUE CACHE BOOL "Add OpenEXR support" )
78+ add_definitions (-DOJPH_ENABLE_OPENEXR_SUPPORT)
79+ if (OpenEXR_FOUND_WITH_CONFIG)
80+ message (STATUS " found OpenEXR with Config" )
81+ else (OpenEXR_FOUND_WITH_CONFIG)
82+ message (STATUS " found OpenEXR with FindModule" )
83+ endif (OpenEXR_FOUND_WITH_CONFIG)
84+ else (OpenEXR_FOUND)
85+ message (ERROR "OpenEXR is a required dependency but it has not been found" )
86+ endif (OpenEXR_FOUND)
87+
88+ if (IlmBase_FOUND)
89+ message (STATUS "IlmBase info:" )
90+ message (STATUS " IlmBase_VERSION = ${IlmBase_VERSION} " )
91+ message (STATUS " IlmBase_INCLUDE_DIR = ${IlmBase_INCLUDE_DIR} " )
92+ message (STATUS " IlmBase_INCLUDE_DIRS = ${IlmBase_INCLUDE_DIRS} " )
93+ message (STATUS " IlmBase_LIBRARY = ${IlmBase_LIBRARY} " )
94+ message (STATUS " IlmBase_LIBRARIES = ${IlmBase_LIBRARIES} " )
95+ endif (IlmBase_FOUND)
96+
97+ if (OpenEXR_FOUND)
98+ message (STATUS "OpenEXR info:" )
99+ message (STATUS " OpenEXR_VERSION = ${OpenEXR_VERSION} " )
100+ if ( NOT OpenEXR_FOUND_WITH_CONFIG)
101+ message (STATUS " OpenEXR_INCLUDE_DIR = ${OpenEXR_INCLUDE_DIR} " )
102+ message (STATUS " OpenEXR_INCLUDE_DIRS = ${OpenEXR_INCLUDE_DIRS} " )
103+ message (STATUS " OpenEXR_LIBRARY = ${OpenEXR_LIBRARY} " )
104+ message (STATUS " OpenEXR_LIBRARIES = ${OpenEXR_LIBRARIES} " )
105+ endif (NOT OpenEXR_FOUND_WITH_CONFIG)
106+ endif (OpenEXR_FOUND)
69107
70108add_subdirectory (lib)
71109add_subdirectory (doc )
0 commit comments