diff options
author | Ray Molenkamp <github@lazydodo.com> | 2018-08-16 05:47:44 +0300 |
---|---|---|
committer | Ray Molenkamp <github@lazydodo.com> | 2018-08-16 05:48:19 +0300 |
commit | 8d1a7f37731f643bbe4b26ed209b4c0e14c0cbd9 (patch) | |
tree | 0ecca0a09b6b25c1b6816a3fb4e8bbcc29e0fd35 /build_files | |
parent | eebc292b424da565c5f4bdb6e64205525585c6c2 (diff) |
build_environment: openvdb 5.1.0
Diffstat (limited to 'build_files')
4 files changed, 94 insertions, 71 deletions
diff --git a/build_files/build_environment/cmake/openvdb.cmake b/build_files/build_environment/cmake/openvdb.cmake index 26791012688..3418987a46b 100644 --- a/build_files/build_environment/cmake/openvdb.cmake +++ b/build_files/build_environment/cmake/openvdb.cmake @@ -21,23 +21,6 @@ if(BUILD_MODE STREQUAL Debug) endif() set(OPENVDB_EXTRA_ARGS - -DILMBASE_HOME=${LIBDIR}/ilmbase/ - -DILMBASE_CUSTOM=ON - -DILMBASE_CUSTOM_LIBRARIES=Half;Imath-2_2;IlmThread-2_2;Iex-2_2 - -DILMBASE_INCLUDE_DIR=${LIBDIR}/ilmbase/include/ - -DILMBASE_HALF_LIBRARIES=${LIBDIR}/ilmbase/lib/Half${LIBEXT} - -DILMBASE_IMATH_LIBRARIES=${LIBDIR}/ilmbase/lib/${LIBPREFIX}Imath-2_2${LIBEXT} - -DILMBASE_ILMTHREAD_LIBRARIES=${LIBDIR}/ilmbase/lib/${LIBPREFIX}IlmThread-2_2${LIBEXT} - -DILMBASE_IEX_LIBRARIES=${LIBDIR}/ilmbase/lib/${LIBPREFIX}Iex-2_2${LIBEXT} - -DOPENEXR_HOME=${LIBDIR}/openexr/ - -DOPENEXR_USE_STATIC_LIBS=ON - -DOPENEXR_CUSTOM=ON - -DOPENEXR_CUSTOM_LIBRARY=IlmImf-2_2 - -DOPENEXR_INCLUDE_DIR=${LIBDIR}/openexr/include/ - -DOPENEXR_ILMIMF_LIBRARIES=${LIBDIR}/openexr/lib/${LIBPREFIX}IlmImf-2_2${LIBEXT} - -DTBB_ROOT_DIR=${LIBDIR}/tbb/ - -DTBB_INCLUDE_DIRS=${LIBDIR}/tbb/include - -DTBB_LIBRARY=${LIBDIR}/tbb/lib/tbb_static${LIBEXT} -DBoost_COMPILER:STRING=${BOOST_COMPILER_STRING} -DBoost_USE_MULTITHREADED=ON -DBoost_USE_STATIC_LIBS=ON @@ -49,22 +32,32 @@ set(OPENVDB_EXTRA_ARGS -DWITH_BLOSC=ON -DBLOSC_INCLUDE_DIR=${LIBDIR}/blosc/include/ -DBLOSC_LIBRARY=${LIBDIR}/blosc/lib/libblosc${BLOSC_POST}${LIBEXT} + -DOPENVDB_ABI_VERSION_NUMBER=3 + -DOPENVDB_ENABLE_3_ABI_COMPATIBLE=Off + -DOPENVDB_BUILD_UNITTESTS=Off + -DOPENVDB_BUILD_PYTHON_MODULE=Off + -DGLEW_LOCATION=${LIBDIR}/glew/ + -DBLOSC_LOCATION=${LIBDIR}/blosc/ + -DTBB_LOCATION=${LIBDIR}/tbb/ + -DTBB_ROOT=${LIBDIR}/tbb/ + -DOPENEXR_LOCATION=${LIBDIR}/openexr + -DILMBASE_LOCATION=${LIBDIR}/openexr + -DIlmbase_HALF_LIBRARY=${LIBDIR}/openexr/lib/Half-2_3_s${LIBEXT} + -DIlmbase_IEX_LIBRARY=${LIBDIR}/openexr/lib/Iex-2_3_s${LIBEXT} + -DIlmbase_ILMTHREAD_LIBRARY=${LIBDIR}/openexr/lib/IlmThread-2_3_s${LIBEXT} + -DOpenexr_ILMIMF_LIBRARY=${LIBDIR}/openexr/lib/IlmImf-2_3_s${LIBEXT} + -DTBB_LIBRARYDIR=${LIBDIR}/tbb/lib + -DTbb_TBB_LIBRARY=${LIBDIR}/tbb/lib/tbb_static${LIBEXT} + -DTBB_LIBRARY_DIR=${LIBDIR}/tbb/lib + -DTBB_LIBRARY_PATH=${LIBDIR}/tbb/lib ) -set(OPENVDB_EXTRA_ARGS ${OPENVDB_EXTRA_ARGS}) - -# CMake script for OpenVDB based on https://raw.githubusercontent.com/diekev/openvdb-cmake/master/CMakeLists.txt -# can't be in external_openvdb because of how the includes are setup. - ExternalProject_Add(openvdb URL ${OPENVDB_URI} DOWNLOAD_DIR ${DOWNLOAD_DIR} URL_HASH MD5=${OPENVDB_HASH} PREFIX ${BUILD_DIR}/openvdb - PATCH_COMMAND COMMAND - ${CMAKE_COMMAND} -E copy ${PATCH_DIR}/cmakelists_openvdb.txt ${BUILD_DIR}/openvdb/src/openvdb/CMakeLists.txt && - ${CMAKE_COMMAND} -E copy_directory ${PATCH_DIR}/cmake/ ${BUILD_DIR}/openvdb/src/openvdb/cmake/ && - ${PATCH_CMD} --verbose -p 0 -N -d ${BUILD_DIR}/openvdb/src/openvdb < ${PATCH_DIR}/openvdb_vc2013.diff + PATCH_COMMAND ${PATCH_CMD} -p 1 -d ${BUILD_DIR}/openvdb/src/openvdb < ${PATCH_DIR}/openvdb.diff CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/openvdb ${DEFAULT_CMAKE_FLAGS} ${OPENVDB_EXTRA_ARGS} INSTALL_DIR ${LIBDIR}/openvdb ) diff --git a/build_files/build_environment/cmake/versions.cmake b/build_files/build_environment/cmake/versions.cmake index c5e8f6f6d96..fea05cbc492 100644 --- a/build_files/build_environment/cmake/versions.cmake +++ b/build_files/build_environment/cmake/versions.cmake @@ -150,9 +150,9 @@ set(TBB_VERSION 2018_U5) set(TBB_URI https://github.com/01org/tbb/archive/${TBB_VERSION}.tar.gz) set(TBB_HASH ff3ae09f8c23892fbc3008c39f78288f) -set(OPENVDB_VERSION 3.1.0) +set(OPENVDB_VERSION 5.1.0) set(OPENVDB_URI https://github.com/dreamworksanimation/openvdb/archive/v${OPENVDB_VERSION}.tar.gz) -set(OPENVDB_HASH 30a7e9571a03ab7bcf1a39fb62aa436f) +set(OPENVDB_HASH 5310101f874dcfd2165f9cee68c22624) set(IDNA_VERSION 2.6) set(CHARDET_VERSION 3.0.2) diff --git a/build_files/build_environment/patches/openvdb.diff b/build_files/build_environment/patches/openvdb.diff index f3afa13ea17..51d587b5a22 100644 --- a/build_files/build_environment/patches/openvdb.diff +++ b/build_files/build_environment/patches/openvdb.diff @@ -1,11 +1,76 @@ -diff -Naur k:\BlenderDev\lib\win64_vc12_Harvest\openVDB\/include/openvdb/math/Coord.h .\openVDB/include/openvdb/math/Coord.h ---- k:\BlenderDev\lib\win64_vc12_Harvest\openVDB\/include/openvdb/math/Coord.h 2016-03-30 15:09:49 -0600 -+++ .\openVDB/include/openvdb/math/Coord.h 2016-04-01 06:53:47 -0600 -@@ -34,6 +34,7 @@ +diff -Naur openvdb.orig/openvdb/CMakeLists.txt openvdb/openvdb/CMakeLists.txt +--- openvdb.orig/openvdb/CMakeLists.txt 2018-04-10 12:22:17 -0600 ++++ openvdb/openvdb/CMakeLists.txt 2018-08-15 19:04:52 -0600 +@@ -82,6 +82,9 @@ + IF (WIN32 AND OPENVDB_DISABLE_BOOST_IMPLICIT_LINKING) + ADD_DEFINITIONS ( -DBOOST_ALL_NO_LIB ) + ENDIF () ++if(WIN32) ++ADD_DEFINITIONS ( -D__TBB_NO_IMPLICIT_LINKAGE ) ++endif() + + FIND_PACKAGE ( Blosc REQUIRED ) + FIND_PACKAGE ( TBB REQUIRED ) +@@ -225,13 +228,16 @@ + ${VDB_PRINT_SOURCE_FILES} + ) + ++if(NOT WIN32) ++ set(EXTRA_LIBS m stdc++) ++endif() ++ + TARGET_LINK_LIBRARIES ( vdb_print + openvdb_shared + ${CMAKE_THREAD_LIBS_INIT} + ${BLOSC_blosc_LIBRARY} +- m +- stdc++ +- ) ++ ${EXTRA_LIBS} ++) + + SET ( VDB_RENDER_SOURCE_FILES cmd/openvdb_render/main.cc ) + SET_SOURCE_FILES_PROPERTIES ( ${VDB_RENDER_SOURCE_FILES} +@@ -249,8 +255,7 @@ + ${Openexr_ILMIMF_LIBRARY} + ${Ilmbase_ILMTHREAD_LIBRARY} + ${Ilmbase_IEX_LIBRARY} +- m +- stdc++ ++ ${EXTRA_LIBS} + ) + + SET ( VDB_VIEW_SOURCE_FILES +@@ -283,9 +288,8 @@ + ${GLFW_LINK_LIBRARY} + ${GLFW_DEPENDENT_LIBRARIES} + ${GLEW_GLEW_LIBRARY} +- m +- stdc++ +- ) ++ ${EXTRA_LIBS} ++ ) + ENDIF () + + SET ( UNITTEST_SOURCE_FILES +@@ -392,8 +396,7 @@ + TARGET_LINK_LIBRARIES ( vdb_test + ${CPPUnit_cppunit_LIBRARY} + openvdb_shared +- m +- stdc++ ++ ${EXTRA_LIBS} + ) + + ADD_TEST ( vdb_unit_test vdb_test ) +diff -Naur openvdb.orig/openvdb/math/Coord.h openvdb/openvdb/math/Coord.h +--- openvdb.orig/openvdb/math/Coord.h 2018-04-10 12:22:17 -0600 ++++ openvdb/openvdb/math/Coord.h 2018-08-15 20:32:43 -0600 +@@ -35,6 +35,7 @@ + #include <array> // for std::array + #include <iostream> + #include <limits> ++#define NOMINMAX #include <openvdb/Platform.h> #include "Math.h" #include "Vec3.h" -+#define NOMINMAX - - namespace tbb { class split; } // forward declaration - diff --git a/build_files/build_environment/patches/openvdb_vc2013.diff b/build_files/build_environment/patches/openvdb_vc2013.diff deleted file mode 100644 index 7dc3e476297..00000000000 --- a/build_files/build_environment/patches/openvdb_vc2013.diff +++ /dev/null @@ -1,35 +0,0 @@ ---- openvdb/tree/LeafNode.h 2015-10-01 15:55:33 -0600 -+++ openvdb/tree/LeafNode.h 2016-03-26 13:12:22 -0600 -@@ -70,13 +70,14 @@ - typedef boost::shared_ptr<LeafNode> Ptr; - typedef util::NodeMask<Log2Dim> NodeMaskType; - -- static const Index -- LOG2DIM = Log2Dim, // needed by parent nodes -- TOTAL = Log2Dim, // needed by parent nodes -- DIM = 1 << TOTAL, // dimension along one coordinate direction -- NUM_VALUES = 1 << 3 * Log2Dim, -- NUM_VOXELS = NUM_VALUES, // total number of voxels represented by this node -- SIZE = NUM_VALUES, -+ static const Index -+ LOG2DIM = Log2Dim, // needed by parent nodes -+ TOTAL = Log2Dim, // needed by parent nodes -+ DIM = 1 << TOTAL, // dimension along one coordinate direction -+ NUM_VALUES = 1 << 3 * Log2Dim, -+ NUM_VOXELS = NUM_VALUES; // total number of voxels represented by this node -+ static const Index -+ SIZE = NUM_VALUES, - LEVEL = 0; // level 0 = leaf - - /// @brief ValueConverter<T>::Type is the type of a LeafNode having the same ---- openvdb/PlatformConfig.h 2016-03-30 15:09:49 -0600 -+++ openvdb/PlatformConfig.h 2016-04-01 07:00:38 -0600 -@@ -47,7 +47,7 @@ - #if !defined(OPENVDB_OPENEXR_STATICLIB) && !defined(OPENEXR_DLL) - #define OPENEXR_DLL - #endif -- -+ #define NOMINMAX - #endif // _WIN32 - - #endif // OPENVDB_PLATFORMCONFIG_HAS_BEEN_INCLUDED |