diff options
-rw-r--r-- | CMakeLists.txt | 2 | ||||
-rw-r--r-- | intern/openvdb/CMakeLists.txt | 7 | ||||
-rw-r--r-- | intern/openvdb/intern/openvdb_writer.cc | 2 |
3 files changed, 9 insertions, 2 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index 566754d4883..f0930866d64 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -251,6 +251,8 @@ option(WITH_OPENSUBDIV "Enable OpenSubdiv for surface subdivision" _init_OPEN option(WITH_OPENVDB "Enable features relying on OpenVDB" OFF) option(WITH_OPENVDB_BLOSC "Enable blosc compression for OpenVDB, only enable if OpenVDB was built with blosc support" OFF) +option(WITH_OPENVDB_3_ABI_COMPATIBLE "Assume OpenVDB library has been compiled with version 3 ABI compatibility" OFF) +mark_as_advanced(WITH_OPENVDB_3_ABI_COMPATIBLE) # GHOST Windowing Library Options option(WITH_GHOST_DEBUG "Enable debugging output for the GHOST library" OFF) diff --git a/intern/openvdb/CMakeLists.txt b/intern/openvdb/CMakeLists.txt index 4b872f25d45..f666dc78e75 100644 --- a/intern/openvdb/CMakeLists.txt +++ b/intern/openvdb/CMakeLists.txt @@ -38,9 +38,14 @@ set(SRC if(WITH_OPENVDB) add_definitions( -DWITH_OPENVDB - -DOPENVDB_3_ABI_COMPATIBLE ) + if(WITH_OPENVDB_3_ABI_COMPATIBLE) + add_definitions( + -DOPENVDB_3_ABI_COMPATIBLE + ) + endif() + list(APPEND INC_SYS ${BOOST_INCLUDE_DIR} ${TBB_INCLUDE_DIRS} diff --git a/intern/openvdb/intern/openvdb_writer.cc b/intern/openvdb/intern/openvdb_writer.cc index b83691ac7de..bedcfe65552 100644 --- a/intern/openvdb/intern/openvdb_writer.cc +++ b/intern/openvdb/intern/openvdb_writer.cc @@ -45,7 +45,7 @@ void OpenVDBWriter::insert(const openvdb::GridBase::Ptr &grid) void OpenVDBWriter::insert(const openvdb::GridBase &grid) { -#if (OPENVDB_LIBRARY_MAJOR_VERSION_NUMBER >= 3) +#if (OPENVDB_LIBRARY_MAJOR_VERSION_NUMBER <= 3) || defined(OPENVDB_3_ABI_COMPATIBLE) m_grids->push_back(grid.copyGrid()); #else m_grids->push_back(grid.copyGridWithNewTree()); |