@@ -197,36 +197,42 @@ add_dependencies(png_static zlibstatic)
197
197
# OpenEXR
198
198
option (_NBL_COMPILE_WITH_OPEN_EXR_ "Build with OpenEXR library" ON )
199
199
200
- # Note we are adding it anyway regardless _NBL_COMPILE_WITH_OPEN_EXR_, its because we need Half dependecy
201
- # it generates on fly in its build directory which doesnt have to be linked (class with inline methods),
202
- # here is where _NBL_COMPILE_WITH_OPEN_EXR_ plays a role - when disabled OpenEXR won't be built and linked
203
- # but it's core
204
-
205
- # for new build system it doesn't matter since we no more fetch content stuff, temporary to fix current master CMake clones
206
- set (
OPENEXR_DEFLATE_REPO "[email protected] :ebiggers/libdeflate.git" CACHE STRING "Repo path for libdeflate source" FORCE )
207
- set (
OPENEXR_IMATH_REPO "[email protected] :AcademySoftwareFoundation/Imath.git" CACHE STRING "Repo for auto-build of Imath" FORCE )
200
+ # Imath
201
+ add_subdirectory (imath EXCLUDE_FROM_ALL )
202
+
203
+ if (_NBL_COMPILE_WITH_OPEN_EXR_ )
204
+ # Deflate
205
+ option (LIBDEFLATE_BUILD_SHARED_LIB "" OFF )
206
+ option (LIBDEFLATE_BUILD_STATIC_LIB "" ON )
207
+ option (LIBDEFLATE_GZIP_SUPPORT "" OFF )
208
+ option (LIBDEFLATE_BUILD_GZIP "" OFF )
209
+ add_subdirectory (libdeflate EXCLUDE_FROM_ALL )
210
+ set (libdeflate_DIR "${CMAKE_CURRENT_BINARY_DIR} /libdeflate" )
211
+
212
+ # OpenEXR
213
+ set (_OLD_BUILD_SHARED_LIBS ${BUILD_SHARED_LIBS} )
214
+ set (_OLD_BUILD_STATIC_LIBS ${BUILD_STATIC_LIBS} )
215
+ set (_OLD_BUILD_TESTING ${BUILD_TESTING} )
216
+ set (BUILD_SHARED_LIBS OFF )
217
+ set (BUILD_STATIC_LIBS OFF )
218
+ set (BUILD_TESTING OFF )
219
+ set (PYILMBASE_ENABLE OFF CACHE STRING "" FORCE )
220
+ set (OPENEXR_BUILD_UTILS OFF CACHE STRING "" FORCE )
221
+ set (OPENEXR_FORCE_INTERNAL_IMATH OFF CACHE STRING "" FORCE )
222
+ set (OPENEXR_FORCE_INTERNAL_DEFLATE OFF CACHE STRING "" FORCE )
223
+ set (OPENEXR_BUILD_TOOLS OFF CACHE STRING "" FORCE )
224
+ set (OPENEXR_INSTALL OFF CACHE STRING "" FORCE )
225
+ set (OPENEXR_INSTALL_DOCS OFF CACHE STRING "" FORCE )
226
+ set (OPENEXR_INSTALL_EXAMPLES OFF CACHE STRING "" FORCE )
227
+ set (OPENEXR_INSTALL_PKG_CONFIG OFF CACHE STRING "" FORCE )
228
+ set (OPENEXR_INSTALL_TOOLS OFF CACHE STRING "" FORCE )
229
+
230
+ add_subdirectory (openexr EXCLUDE_FROM_ALL )
208
231
209
- set (_OLD_BUILD_SHARED_LIBS ${BUILD_SHARED_LIBS} )
210
- set (_OLD_BUILD_STATIC_LIBS ${BUILD_STATIC_LIBS} )
211
- set (_OLD_BUILD_TESTING ${BUILD_TESTING} )
212
- set (BUILD_SHARED_LIBS OFF )
213
- set (BUILD_STATIC_LIBS OFF )
214
- set (BUILD_TESTING OFF )
215
- set (PYILMBASE_ENABLE OFF CACHE STRING "" FORCE )
216
- set (OPENEXR_BUILD_UTILS OFF CACHE STRING "" FORCE )
217
- set (OPENEXR_FORCE_INTERNAL_IMATH ON CACHE STRING "" FORCE ) # TODO: make it a submodule and force using it maybe instead of letting OpenEXR download it from it's github repository [FIXED in newBuildSystem branch]
218
- set (OPENEXR_FORCE_INTERNAL_DEFLATE ON CACHE STRING "" FORCE ) # TODO: make it a submodule and force using it maybe instead of letting OpenEXR download it from it's github repository [FIXED in newBuildSystem branch]
219
- set (OPENEXR_BUILD_TOOLS OFF CACHE STRING "" FORCE )
220
- set (OPENEXR_INSTALL OFF CACHE STRING "" FORCE )
221
- set (OPENEXR_INSTALL_DOCS OFF CACHE STRING "" FORCE )
222
- set (OPENEXR_INSTALL_EXAMPLES OFF CACHE STRING "" FORCE )
223
- set (OPENEXR_INSTALL_PKG_CONFIG OFF CACHE STRING "" FORCE )
224
- set (OPENEXR_INSTALL_TOOLS OFF CACHE STRING "" FORCE )
225
-
226
- add_subdirectory (openexr openexr EXCLUDE_FROM_ALL )
227
- set (BUILD_SHARED_LIBS ${_OLD_BUILD_SHARED_LIBS} )
228
- set (BUILD_STATIC_LIBS ${_OLD_BUILD_STATIC_LIBS} )
229
- set (BUILD_TESTING ${_OLD_BUILD_TESTING} )
232
+ set (BUILD_SHARED_LIBS ${_OLD_BUILD_SHARED_LIBS} )
233
+ set (BUILD_STATIC_LIBS ${_OLD_BUILD_STATIC_LIBS} )
234
+ set (BUILD_TESTING ${_OLD_BUILD_TESTING} )
235
+ endif ()
230
236
231
237
#gli
232
238
option (_NBL_COMPILE_WITH_GLI_ "Build with GLI library" ON )
@@ -470,10 +476,6 @@ set(NBL_3RDPARTY_TARGETS
470
476
SPIRV
471
477
SPIRV-Tools-static # SPIRV-Tools-shared in case of SHARED lib
472
478
SPIRV-Tools-opt
473
- OpenEXRUtil
474
- OpenEXRCore
475
- Iex
476
- IlmThread
477
479
Imath
478
480
freetype
479
481
${NBL_MSDFGEN_TARGETS}
@@ -482,7 +484,7 @@ set(NBL_3RDPARTY_TARGETS
482
484
)
483
485
if (_NBL_COMPILE_WITH_OPEN_EXR_ )
484
486
list (APPEND NBL_3RDPARTY_TARGETS
485
- OpenEXR
487
+ OpenEXR libdeflate_static OpenEXRUtil OpenEXRCore Iex IlmThread
486
488
)
487
489
endif ()
488
490
0 commit comments