diff options
author | Ray Molenkamp <github@lazydodo.com> | 2018-08-19 20:29:04 +0300 |
---|---|---|
committer | Ray Molenkamp <github@lazydodo.com> | 2018-08-19 20:44:46 +0300 |
commit | f4c9bdb022cd52f355c06f1e753fe3e5acbdabee (patch) | |
tree | 7f0a2a7501a483331952a90bf07da737863c5824 /build_files | |
parent | 8309f8ee3465bad3a9cb10da07bcb69852b57dea (diff) |
build_environment: opennvdb windows build fixes.
disable openexr namespaces on windows due to linker errors with it.
link pthreads due to dependency though blosc
Diffstat (limited to 'build_files')
-rw-r--r-- | build_files/build_environment/cmake/openvdb.cmake | 27 | ||||
-rw-r--r-- | build_files/build_environment/patches/openvdb.diff | 8 |
2 files changed, 35 insertions, 0 deletions
diff --git a/build_files/build_environment/cmake/openvdb.cmake b/build_files/build_environment/cmake/openvdb.cmake index 5b70d184201..06b8f59f451 100644 --- a/build_files/build_environment/cmake/openvdb.cmake +++ b/build_files/build_environment/cmake/openvdb.cmake @@ -52,6 +52,16 @@ set(OPENVDB_EXTRA_ARGS -DTBB_LIBRARY_PATH=${LIBDIR}/tbb/lib ) +if(WIN32) + #Namespaces seem to be buggy and cause linker erorrs due to things not + #being in the correct namespace + #needs to link pthreads due to it being a blosc dependency + set(OPENVDB_EXTRA_ARGS ${OPENVDB_EXTRA_ARGS} + -DOPENEXR_NAMESPACE_VERSIONING=OFF + -DEXTRA_LIBS:FILEPATH=${LIBDIR}/pthreads/lib/pthreadVC2.lib + ) +endif() + ExternalProject_Add(openvdb URL ${OPENVDB_URI} DOWNLOAD_DIR ${DOWNLOAD_DIR} @@ -71,3 +81,20 @@ add_dependencies( external_zlib external_blosc ) + +if(WIN32) + if(BUILD_MODE STREQUAL Release) + ExternalProject_Add_Step(openvdb after_install + COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/openvdb/include ${HARVEST_TARGET}/openvdb/include + COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/openvdb/lib/libopenvdb.lib ${HARVEST_TARGET}/openvdb/lib/openvdb.lib + DEPENDEES install + ) + endif() + if(BUILD_MODE STREQUAL Debug) + ExternalProject_Add_Step(openvdb after_install + COMMAND ${CMAKE_COMMAND} -E copy ${LIBDIR}/openvdb/lib/libopenvdb.lib ${HARVEST_TARGET}/openvdb/lib/openvdb_d.lib + DEPENDEES install + ) + endif() +endif() + diff --git a/build_files/build_environment/patches/openvdb.diff b/build_files/build_environment/patches/openvdb.diff index 5d4c26c9527..391a7be46db 100644 --- a/build_files/build_environment/patches/openvdb.diff +++ b/build_files/build_environment/patches/openvdb.diff @@ -11,6 +11,14 @@ diff -Naur openvdb.orig/openvdb/CMakeLists.txt openvdb/openvdb/CMakeLists.txt FIND_PACKAGE ( Blosc REQUIRED ) FIND_PACKAGE ( TBB REQUIRED ) +@@ -195,6 +198,7 @@ + ${Ilmbase_HALF_LIBRARY} + ${ZLIB_LIBRARY} + ${BLOSC_blosc_LIBRARY} ++ ${EXTRA_LIBS} + ) + + IF (WIN32) @@ -225,13 +228,16 @@ ${VDB_PRINT_SOURCE_FILES} ) |