diff options
author | Brecht Van Lommel <brecht> | 2020-01-19 15:11:27 +0300 |
---|---|---|
committer | Brecht Van Lommel <brechtvanlommel@gmail.com> | 2020-01-20 11:43:28 +0300 |
commit | 02f6722350d9b613450016505db0c24ba2bc9109 (patch) | |
tree | 5a6ce94b4f5f46ada09aea115592d78a4b3d4e03 | |
parent | 78aa32193113964ee031c0e0ab05fba2d32610c4 (diff) |
Build: upgrade to OpenEXR 2.4.0, OpenVDB 7.0.0 and Boost 1.70.0
This aligns with the VFX reference platform 2020 along with the decision
to stick to Python 3.7, see T68774.
Blosc was downgraded to 1.5 as recommended by the OpenVDB documentation.
IlmBase and OpenEXR are now built together with CMake rather separately
using autoconf.
Differential Revision: https://developer.blender.org/D6593
17 files changed, 263 insertions, 282 deletions
diff --git a/build_files/build_environment/CMakeLists.txt b/build_files/build_environment/CMakeLists.txt index d3f98d55049..9a96446f201 100644 --- a/build_files/build_environment/CMakeLists.txt +++ b/build_files/build_environment/CMakeLists.txt @@ -64,7 +64,6 @@ include(cmake/jpeg.cmake) include(cmake/boost.cmake) include(cmake/blosc.cmake) include(cmake/pthreads.cmake) -include(cmake/ilmbase.cmake) include(cmake/openexr.cmake) include(cmake/freetype.cmake) include(cmake/freeglut.cmake) diff --git a/build_files/build_environment/cmake/alembic.cmake b/build_files/build_environment/cmake/alembic.cmake index 49c54ff6e82..06f8b9184c3 100644 --- a/build_files/build_environment/cmake/alembic.cmake +++ b/build_files/build_environment/cmake/alembic.cmake @@ -26,12 +26,6 @@ if(ALEMBIC_HDF5) endif() endif() -if(WIN32) - set(ALEMBIC_ILMBASE ${LIBDIR}/openexr) -else() - set(ALEMBIC_ILMBASE ${LIBDIR}/ilmbase) -endif() - set(ALEMBIC_EXTRA_ARGS -DBUILDSTATIC=ON -DLINKSTATIC=ON @@ -44,13 +38,13 @@ set(ALEMBIC_EXTRA_ARGS -DBoost_DEBUG=ON -DBOOST_ROOT=${LIBDIR}/boost -DBoost_NO_SYSTEM_PATHS=ON - -DILMBASE_ROOT=${ALEMBIC_ILMBASE} - -DALEMBIC_ILMBASE_INCLUDE_DIRECTORY=${ALEMBIC_ILMBASE}/include/OpenEXR - -DALEMBIC_ILMBASE_HALF_LIB=${ALEMBIC_ILMBASE}/lib/${LIBPREFIX}Half${ILMBASE_VERSION_POSTFIX}${LIBEXT} - -DALEMBIC_ILMBASE_IMATH_LIB=${ALEMBIC_ILMBASE}/lib/${LIBPREFIX}Imath${ILMBASE_VERSION_POSTFIX}${LIBEXT} - -DALEMBIC_ILMBASE_ILMTHREAD_LIB=${ALEMBIC_ILMBASE}/lib/${LIBPREFIX}IlmThread${ILMBASE_VERSION_POSTFIX}${LIBEXT} - -DALEMBIC_ILMBASE_IEX_LIB=${ALEMBIC_ILMBASE}/lib/${LIBPREFIX}Iex${ILMBASE_VERSION_POSTFIX}${LIBEXT} - -DALEMBIC_ILMBASE_IEXMATH_LIB=${ALEMBIC_ILMBASE}/lib/${LIBPREFIX}IexMath${ILMBASE_VERSION_POSTFIX}${LIBEXT} + -DILMBASE_ROOT=${LIBDIR}/openexr + -DALEMBIC_ILMBASE_INCLUDE_DIRECTORY=${LIBDIR}/openexr/include/OpenEXR + -DALEMBIC_ILMBASE_HALF_LIB=${LIBDIR}/openexr/lib/${LIBPREFIX}Half${OPENEXR_VERSION_POSTFIX}${LIBEXT} + -DALEMBIC_ILMBASE_IMATH_LIB=${LIBDIR}/openexr/lib/${LIBPREFIX}Imath${OPENEXR_VERSION_POSTFIX}${LIBEXT} + -DALEMBIC_ILMBASE_ILMTHREAD_LIB=${LIBDIR}/openexr/lib/${LIBPREFIX}IlmThread${OPENEXR_VERSION_POSTFIX}${LIBEXT} + -DALEMBIC_ILMBASE_IEX_LIB=${LIBDIR}/openexr/lib/${LIBPREFIX}Iex${OPENEXR_VERSION_POSTFIX}${LIBEXT} + -DALEMBIC_ILMBASE_IEXMATH_LIB=${LIBDIR}/openexr/lib/${LIBPREFIX}IexMath${OPENEXR_VERSION_POSTFIX}${LIBEXT} -DUSE_PYILMBASE=0 -DUSE_PYALEMBIC=0 -DUSE_ARNOLD=0 @@ -100,6 +94,5 @@ add_dependencies( external_alembic external_boost external_zlib - external_ilmbase external_openexr ) diff --git a/build_files/build_environment/cmake/boost.cmake b/build_files/build_environment/cmake/boost.cmake index 4c5ce749cd5..c11e14f879b 100644 --- a/build_files/build_environment/cmake/boost.cmake +++ b/build_files/build_environment/cmake/boost.cmake @@ -38,7 +38,7 @@ if(WIN32) set(BOOST_BUILD_OPTIONS runtime-link=shared ) set(BOOST_HARVEST_CMD ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/boost/lib/ ${HARVEST_TARGET}/boost/lib/ ) if(BUILD_MODE STREQUAL Release) - set(BOOST_HARVEST_CMD ${BOOST_HARVEST_CMD} && ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/boost/include/boost-1_68/ ${HARVEST_TARGET}/boost/include/) + set(BOOST_HARVEST_CMD ${BOOST_HARVEST_CMD} && ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/boost/include/boost-${BOOST_VERSION_NODOTS_SHORT}/ ${HARVEST_TARGET}/boost/include/) endif() elseif(APPLE) diff --git a/build_files/build_environment/cmake/harvest.cmake b/build_files/build_environment/cmake/harvest.cmake index cc93db7de64..5b5c254b150 100644 --- a/build_files/build_environment/cmake/harvest.cmake +++ b/build_files/build_environment/cmake/harvest.cmake @@ -116,8 +116,6 @@ harvest(freetype/include freetype/include "*.h") harvest(freetype/lib/libfreetype2ST.a freetype/lib/libfreetype.a) harvest(glew/include glew/include "*.h") harvest(glew/lib glew/lib "*.a") -harvest(ilmbase openexr "*") -harvest(ilmbase/include openexr/include "*.h") harvest(jemalloc/include jemalloc/include "*.h") harvest(jemalloc/lib jemalloc/lib "*.a") harvest(jpg/include jpeg/include "*.h") diff --git a/build_files/build_environment/cmake/ilmbase.cmake b/build_files/build_environment/cmake/ilmbase.cmake deleted file mode 100644 index 97761b4ad49..00000000000 --- a/build_files/build_environment/cmake/ilmbase.cmake +++ /dev/null @@ -1,58 +0,0 @@ -# ***** BEGIN GPL LICENSE BLOCK ***** -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation; either version 2 -# of the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software Foundation, -# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -# -# ***** END GPL LICENSE BLOCK ***** - -if(WIN32) - set(ILMBASE_CMAKE_CXX_STANDARD_LIBRARIES "kernel32${LIBEXT} user32${LIBEXT} gdi32${LIBEXT} winspool${LIBEXT} shell32${LIBEXT} ole32${LIBEXT} oleaut32${LIBEXT} uuid${LIBEXT} comdlg32${LIBEXT} advapi32${LIBEXT} psapi${LIBEXT}") - set(ILMBASE_EXTRA_ARGS - -DBUILD_SHARED_LIBS=OFF - -DCMAKE_CXX_STANDARD_LIBRARIES=${ILMBASE_CMAKE_CXX_STANDARD_LIBRARIES} - ) - - ExternalProject_Add(external_ilmbase - URL ${ILMBASE_URI} - DOWNLOAD_DIR ${DOWNLOAD_DIR} - URL_HASH MD5=${ILMBASE_HASH} - PREFIX ${BUILD_DIR}/ilmbase - CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/ilmbase ${DEFAULT_CMAKE_FLAGS} ${ILMBASE_EXTRA_ARGS} - INSTALL_DIR ${LIBDIR}/openexr - ) - - if(BUILD_MODE STREQUAL Release) - ExternalProject_Add_Step(external_ilmbase after_install - COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/ilmbase ${HARVEST_TARGET}/openexr - DEPENDEES install - ) - endif() - -else() - set(ILMBASE_EXTRA_ARGS - --enable-static - --disable-shared - --enable-cxxstd=11 - ) - ExternalProject_Add(external_ilmbase - URL ${ILMBASE_URI} - DOWNLOAD_DIR ${DOWNLOAD_DIR} - URL_HASH MD5=${ILMBASE_HASH} - PREFIX ${BUILD_DIR}/ilmbase - CONFIGURE_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/ilmbase/src/external_ilmbase/ && ${CONFIGURE_COMMAND} --prefix=${LIBDIR}/ilmbase ${ILMBASE_EXTRA_ARGS} - BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/ilmbase/src/external_ilmbase/ && make -j${MAKE_THREADS} - INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/ilmbase/src/external_ilmbase/ && make install - INSTALL_DIR ${LIBDIR}/openexr - ) -endif() diff --git a/build_files/build_environment/cmake/openexr.cmake b/build_files/build_environment/cmake/openexr.cmake index 39533a94cd9..38dbeecc3eb 100644 --- a/build_files/build_environment/cmake/openexr.cmake +++ b/build_files/build_environment/cmake/openexr.cmake @@ -20,59 +20,45 @@ if(WIN32) set(OPENEXR_CMAKE_CXX_STANDARD_LIBRARIES "kernel32${LIBEXT} user32${LIBEXT} gdi32${LIBEXT} winspool${LIBEXT} shell32${LIBEXT} ole32${LIBEXT} oleaut32${LIBEXT} uuid${LIBEXT} comdlg32${LIBEXT} advapi32${LIBEXT} psapi${LIBEXT}") set(OPENEXR_EXTRA_ARGS -DCMAKE_CXX_STANDARD_LIBRARIES=${OPENEXR_CMAKE_CXX_STANDARD_LIBRARIES} - -DZLIB_LIBRARY=${LIBDIR}/zlib/lib/${ZLIB_LIBRARY} - -DZLIB_INCLUDE_DIR=${LIBDIR}/zlib/include/ - -DILMBASE_PACKAGE_PREFIX=${LIBDIR}/ilmbase - -DOPENEXR_BUILD_ILMBASE=On - -DOPENEXR_BUILD_OPENEXR=On - -DOPENEXR_BUILD_PYTHON_LIBS=Off - -DOPENEXR_BUILD_STATIC=On - -DOPENEXR_BUILD_SHARED=Off - -DOPENEXR_BUILD_TESTS=Off - -DOPENEXR_BUILD_VIEWERS=Off - -DOPENEXR_BUILD_UTILS=Off - -DOPENEXR_NAMESPACE_VERSIONING=Off ) - ExternalProject_Add(external_openexr - URL ${OPENEXR_URI} - DOWNLOAD_DIR ${DOWNLOAD_DIR} - URL_HASH MD5=${OPENEXR_HASH} - PREFIX ${BUILD_DIR}/openexr - CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/openexr ${DEFAULT_CMAKE_FLAGS} ${OPENEXR_EXTRA_ARGS} - INSTALL_DIR ${LIBDIR}/openexr +else() + set(OPENEXR_EXTRA_ARGS ) +endif() + +set(OPENEXR_EXTRA_ARGS + ${OPENEXR_EXTRA_ARGS} + -DZLIB_LIBRARY=${LIBDIR}/zlib/lib/${ZLIB_LIBRARY} + -DZLIB_INCLUDE_DIR=${LIBDIR}/zlib/include/ + -DBUILD_TESTING=OFF + -DOPENEXR_BUILD_BOTH_STATIC_SHARED=OFF + -DILMBASE_BUILD_BOTH_STATIC_SHARED=OFF + -DBUILD_SHARED_LIBS=OFF + -DOPENEXR_BUILD_UTILS=OFF + -DPYILMBASE_ENABLE=OFF + -DOPENEXR_VIEWERS_ENABLE=OFF + -DILMBASE_LIB_SUFFIX=${OPENEXR_VERSION_BUILD_POSTFIX} + -DOPENEXR_LIB_SUFFIX=${OPENEXR_VERSION_BUILD_POSTFIX} +) + +ExternalProject_Add(external_openexr + URL ${OPENEXR_URI} + DOWNLOAD_DIR ${DOWNLOAD_DIR} + URL_HASH MD5=${OPENEXR_HASH} + PREFIX ${BUILD_DIR}/openexr + CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/openexr ${DEFAULT_CMAKE_FLAGS} ${OPENEXR_EXTRA_ARGS} + INSTALL_DIR ${LIBDIR}/openexr +) +if(WIN32) ExternalProject_Add_Step(external_openexr after_install COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/openexr/lib ${HARVEST_TARGET}/openexr/lib - # Libs have moved between versions, just duplicate it for now. - COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/openexr/lib ${LIBDIR}/ilmbase/lib COMMAND ${CMAKE_COMMAND} -E copy_directory ${LIBDIR}/openexr/include ${HARVEST_TARGET}/openexr/include DEPENDEES install ) - -else() - set(OPENEXR_PKG_CONFIG_PATH ${LIBDIR}/zlib/share/pkgconfig) - set(OPENEXR_EXTRA_ARGS - --enable-static - --disable-shared - --enable-cxxstd=11 - --with-ilmbase-prefix=${LIBDIR}/ilmbase - ) - - ExternalProject_Add(external_openexr - URL ${OPENEXR_URI} - DOWNLOAD_DIR ${DOWNLOAD_DIR} - URL_HASH MD5=${OPENEXR_HASH} - PREFIX ${BUILD_DIR}/openexr - CONFIGURE_COMMAND ${CONFIGURE_ENV} && export PKG_CONFIG_PATH=${OPENEXR_PKG_CONFIG_PATH} && cd ${BUILD_DIR}/openexr/src/external_openexr/ && ${CONFIGURE_COMMAND} --prefix=${LIBDIR}/openexr ${OPENEXR_EXTRA_ARGS} - BUILD_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/openexr/src/external_openexr/ && make -j${MAKE_THREADS} - INSTALL_COMMAND ${CONFIGURE_ENV} && cd ${BUILD_DIR}/openexr/src/external_openexr/ && make install - INSTALL_DIR ${LIBDIR}/openexr - ) endif() add_dependencies( external_openexr external_zlib - external_ilmbase ) diff --git a/build_files/build_environment/cmake/openimageio.cmake b/build_files/build_environment/cmake/openimageio.cmake index 57b8860f2bd..27e04a1f1d1 100644 --- a/build_files/build_environment/cmake/openimageio.cmake +++ b/build_files/build_environment/cmake/openimageio.cmake @@ -106,13 +106,13 @@ set(OPENIMAGEIO_EXTRA_ARGS -DOCIO_PATH=${LIBDIR}/opencolorio/ -DOpenEXR_USE_STATIC_LIBS=On -DOPENEXR_HOME=${LIBDIR}/openexr/ - -DILMBASE_INCLUDE_PATH=${LIBDIR}/ilmbase/ - -DILMBASE_PACKAGE_PREFIX=${LIBDIR}/ilmbase/ - -DILMBASE_INCLUDE_DIR=${LIBDIR}/ilmbase/include/ - -DOPENEXR_HALF_LIBRARY=${LIBDIR}/ilmbase/lib/${LIBPREFIX}Half${ILMBASE_VERSION_POSTFIX}${LIBEXT} - -DOPENEXR_IMATH_LIBRARY=${LIBDIR}/ilmbase/lib/${LIBPREFIX}Imath${ILMBASE_VERSION_POSTFIX}${LIBEXT} - -DOPENEXR_ILMTHREAD_LIBRARY=${LIBDIR}/ilmbase/lib/${LIBPREFIX}IlmThread${ILMBASE_VERSION_POSTFIX}${LIBEXT} - -DOPENEXR_IEX_LIBRARY=${LIBDIR}/ilmbase/lib/${LIBPREFIX}Iex${ILMBASE_VERSION_POSTFIX}${LIBEXT} + -DILMBASE_INCLUDE_PATH=${LIBDIR}/openexr/ + -DILMBASE_PACKAGE_PREFIX=${LIBDIR}/openexr/ + -DILMBASE_INCLUDE_DIR=${LIBDIR}/openexr/include/ + -DOPENEXR_HALF_LIBRARY=${LIBDIR}/openexr/lib/${LIBPREFIX}Half${OPENEXR_VERSION_POSTFIX}${LIBEXT} + -DOPENEXR_IMATH_LIBRARY=${LIBDIR}/openexr/lib/${LIBPREFIX}Imath${OPENEXR_VERSION_POSTFIX}${LIBEXT} + -DOPENEXR_ILMTHREAD_LIBRARY=${LIBDIR}/openexr/lib/${LIBPREFIX}IlmThread${OPENEXR_VERSION_POSTFIX}${LIBEXT} + -DOPENEXR_IEX_LIBRARY=${LIBDIR}/openexr/lib/${LIBPREFIX}Iex${OPENEXR_VERSION_POSTFIX}${LIBEXT} -DOPENEXR_INCLUDE_DIR=${LIBDIR}/openexr/include/ -DOPENEXR_ILMIMF_LIBRARY=${LIBDIR}/openexr/lib/${LIBPREFIX}IlmImf${OPENEXR_VERSION_POSTFIX}${LIBEXT} -DSTOP_ON_WARNING=OFF @@ -135,7 +135,6 @@ ExternalProject_Add(external_openimageio add_dependencies( external_openimageio external_png external_zlib - external_ilmbase external_openexr external_jpeg external_boost diff --git a/build_files/build_environment/cmake/openvdb.cmake b/build_files/build_environment/cmake/openvdb.cmake index c73cf2681ae..87ca7b03c40 100644 --- a/build_files/build_environment/cmake/openvdb.cmake +++ b/build_files/build_environment/cmake/openvdb.cmake @@ -29,24 +29,20 @@ set(OPENVDB_EXTRA_ARGS -DBoost_NO_SYSTEM_PATHS=ON -DZLIB_LIBRARY=${LIBDIR}/zlib/lib/${ZLIB_LIBRARY} -DZLIB_INCLUDE_DIR=${LIBDIR}/zlib/include/ - -DBLOSC_INCLUDE_DIR=${LIBDIR}/blosc/include/ - -DBLOSC_blosc_LIBRARY=${LIBDIR}/blosc/lib/libblosc${BLOSC_POST}${LIBEXT} + -DBlosc_INCLUDE_DIR=${LIBDIR}/blosc/include/ + -DBlosc_LIBRARY=${LIBDIR}/blosc/lib/libblosc${BLOSC_POST}${LIBEXT} -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/ + -DBlosc_ROOT=${LIBDIR}/blosc/ -DTBB_ROOT=${LIBDIR}/tbb/ - -DOPENEXR_LOCATION=${LIBDIR}/openexr - -DILMBASE_LOCATION=${LIBDIR}/ilmbase - -DIlmbase_HALF_LIBRARY=${LIBDIR}/ilmbase/lib/${LIBPREFIX}Half${ILMBASE_VERSION_POSTFIX}${LIBEXT} - -DIlmbase_IEX_LIBRARY=${LIBDIR}/ilmbase/lib/${LIBPREFIX}Iex${ILMBASE_VERSION_POSTFIX}${LIBEXT} - -DIlmbase_ILMTHREAD_LIBRARY=${LIBDIR}/ilmbase/lib/${LIBPREFIX}IlmThread${ILMBASE_VERSION_POSTFIX}${LIBEXT} - -DOpenexr_ILMIMF_LIBRARY=${LIBDIR}/openexr/lib/${LIBPREFIX}IlmImf${OPENEXR_VERSION_POSTFIX}${LIBEXT} - -DTBB_LIBRARYDIR=${LIBDIR}/tbb/lib - -DTbb_TBB_LIBRARY=${LIBDIR}/tbb/lib/${LIBPREFIX}tbb_static${LIBEXT} - -DTBB_LIBRARY_PATH=${LIBDIR}/tbb/lib + -DOpenEXR_ROOT=${LIBDIR}/openexr + -DIlmBase_ROOT=${LIBDIR}/openexr + -DOPENEXR_LIBRARYDIR=${LIBDIR}/openexr/lib + # All libs live in openexr, even the ilmbase ones + -DILMBASE_LIBRARYDIR=${LIBDIR}/openexr/lib + -DOPENVDB_CORE_SHARED=Off + -DOPENVDB_BUILD_BINARIES=Off ) if(WIN32) @@ -54,15 +50,17 @@ if(WIN32) # 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/pthreadVC3.lib + -DCMAKE_CXX_STANDARD_LIBRARIES="${LIBDIR}/pthreads/lib/pthreadVC3.lib" + -DUSE_EXR=On + ) +else() + # OpenVDB can't find the _static libraries automatically. + set(OPENVDB_EXTRA_ARGS ${OPENVDB_EXTRA_ARGS} + -DTbb_LIBRARIES=${LIBDIR}/tbb/lib/${LIBPREFIX}tbb_static${LIBEXT} + -DTbb_tbb_LIBRARY=${LIBDIR}/tbb/lib/${LIBPREFIX}tbb_static${LIBEXT} + -DTbb_tbbmalloc_LIBRARY=${LIBDIR}/tbb/lib/${LIBPREFIX}tbbmalloc_static${LIBEXT} + -DTbb_tbbmalloc_proxy_LIBRARY=${LIBDIR}/tbb/lib/${LIBPREFIX}tbbmalloc_proxy_static${LIBEXT} ) - if("${CMAKE_SIZEOF_VOID_P}" EQUAL "4") - set(OPENVDB_EXTRA_ARGS ${OPENVDB_EXTRA_ARGS} - -DCMAKE_SHARED_LINKER_FLAGS="/safeseh:no" - -DCMAKE_EXE_LINKER_FLAGS="/safeseh:no" - ) - endif() endif() ExternalProject_Add(openvdb @@ -79,7 +77,6 @@ add_dependencies( openvdb external_tbb external_boost - external_ilmbase external_openexr external_zlib external_blosc diff --git a/build_files/build_environment/cmake/osl.cmake b/build_files/build_environment/cmake/osl.cmake index 42f4f14fab0..5113f9ded48 100644 --- a/build_files/build_environment/cmake/osl.cmake +++ b/build_files/build_environment/cmake/osl.cmake @@ -33,7 +33,7 @@ else() SET(OSL_PLATFORM_FLAGS) endif() -set(OSL_ILMBASE_CUSTOM_LIBRARIES "${LIBDIR}/ilmbase/lib/Imath${ILMBASE_VERSION_POSTFIX}.lib^^${LIBDIR}/ilmbase/lib/Half{ILMBASE_VERSION_POSTFIX}.lib^^${LIBDIR}/ilmbase/lib/IlmThread${ILMBASE_VERSION_POSTFIX}.lib^^${LIBDIR}/ilmbase/lib/Iex${ILMBASE_VERSION_POSTFIX}.lib") +set(OSL_ILMBASE_CUSTOM_LIBRARIES "${LIBDIR}/openexr/lib/Imath${OPENEXR_VERSION_POSTFIX}.lib^^${LIBDIR}/openexr/lib/Half{OPENEXR_VERSION_POSTFIX}.lib^^${LIBDIR}/openexr/lib/IlmThread${OPENEXR_VERSION_POSTFIX}.lib^^${LIBDIR}/openexr/lib/Iex${OPENEXR_VERSION_POSTFIX}.lib") set(OSL_LLVM_LIBRARY "${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMAnalysis${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMAsmParser${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMAsmPrinter${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMBitReader${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMBitWriter${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMCodeGen${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMCore${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMDebugInfo${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMExecutionEngine${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMInstCombine${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMInstrumentation${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMInterpreter${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMJIT${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMLinker${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMMC${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMMCDisassembler${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMMCJIT${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMMCParser${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMObject${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMRuntimeDyld${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMScalarOpts${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMSelectionDAG${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMSupport${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMTableGen${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMTarget${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMTransformUtils${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMVectorize${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMX86AsmParser${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMX86AsmPrinter${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMX86CodeGen${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMX86Desc${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMX86Disassembler${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMX86Info${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMX86Utils${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMipa${LIBEXT};${LIBDIR}/llvm/lib/${LIBPREFIX}LLVMipo${LIBEXT}") set(OSL_EXTRA_ARGS @@ -50,12 +50,12 @@ set(OSL_EXTRA_ARGS -DLLVM_VERSION=3.4 -DLLVM_LIBRARY=${OSL_LLVM_LIBRARY} -DOPENEXR_HOME=${LIBDIR}/openexr/ - -DILMBASE_HOME=${LIBDIR}/ilmbase/ - -DILMBASE_INCLUDE_DIR=${LIBDIR}/ilmbase/include/ - -DOPENEXR_HALF_LIBRARY=${LIBDIR}/ilmbase/lib/${LIBPREFIX}Half${ILMBASE_VERSION_POSTFIX}${LIBEXT} - -DOPENEXR_IMATH_LIBRARY=${LIBDIR}/ilmbase/lib/${LIBPREFIX}Imath${ILMBASE_VERSION_POSTFIX}${LIBEXT} - -DOPENEXR_ILMTHREAD_LIBRARY=${LIBDIR}/ilmbase/lib/${LIBPREFIX}IlmThread${ILMBASE_VERSION_POSTFIX}${LIBEXT} - -DOPENEXR_IEX_LIBRARY=${LIBDIR}/ilmbase/lib/${LIBPREFIX}Iex${ILMBASE_VERSION_POSTFIX}${LIBEXT} + -DILMBASE_HOME=${LIBDIR}/openexr/ + -DILMBASE_INCLUDE_DIR=${LIBDIR}/openexr/include/ + -DOPENEXR_HALF_LIBRARY=${LIBDIR}/openexr/lib/${LIBPREFIX}Half${OPENEXR_VERSION_POSTFIX}${LIBEXT} + -DOPENEXR_IMATH_LIBRARY=${LIBDIR}/openexr/lib/${LIBPREFIX}Imath${OPENEXR_VERSION_POSTFIX}${LIBEXT} + -DOPENEXR_ILMTHREAD_LIBRARY=${LIBDIR}/openexr/lib/${LIBPREFIX}IlmThread${OPENEXR_VERSION_POSTFIX}${LIBEXT} + -DOPENEXR_IEX_LIBRARY=${LIBDIR}/openexr/lib/${LIBPREFIX}Iex${OPENEXR_VERSION_POSTFIX}${LIBEXT} -DOPENEXR_INCLUDE_DIR=${LIBDIR}/openexr/include/ -DOPENEXR_ILMIMF_LIBRARY=${LIBDIR}/openexr/lib/${LIBPREFIX}IlmImf${OPENEXR_VERSION_POSTFIX}${LIBEXT} -DOSL_BUILD_TESTS=OFF @@ -106,7 +106,6 @@ add_dependencies( external_boost ll external_clang - external_ilmbase external_openexr external_zlib external_flexbison diff --git a/build_files/build_environment/cmake/versions.cmake b/build_files/build_environment/cmake/versions.cmake index 2b08a74c1aa..fda65922a7f 100644 --- a/build_files/build_environment/cmake/versions.cmake +++ b/build_files/build_environment/cmake/versions.cmake @@ -32,42 +32,38 @@ set(JPEG_VERSION 1.5.3) set(JPEG_URI https://github.com/libjpeg-turbo/libjpeg-turbo/archive/${JPEG_VERSION}.tar.gz) set(JPEG_HASH 5b7549d440b86c98a517355c102d155e) -set(BOOST_VERSION 1.68.0) -set(BOOST_VERSION_NODOTS 1_68_0) +set(BOOST_VERSION 1.70.0) +set(BOOST_VERSION_NODOTS 1_70_0) +set(BOOST_VERSION_NODOTS_SHORT 1_70) set(BOOST_URI https://dl.bintray.com/boostorg/release/${BOOST_VERSION}/source/boost_${BOOST_VERSION_NODOTS}.tar.gz) -set(BOOST_HASH 5d8b4503582fffa9eefdb9045359c239) +set(BOOST_HASH fea771fe8176828fabf9c09242ee8c26) -set(BLOSC_VERSION 1.14.4) +# Using old version as recommended by OpenVDB build documentation. +set(BLOSC_VERSION 1.5.0) set(BLOSC_URI https://github.com/Blosc/c-blosc/archive/v${BLOSC_VERSION}.tar.gz) -set(BLOSC_HASH e80dfc71e4cba03b8d01ed0876547ffe) +set(BLOSC_HASH 6e4a49c8c06f05aa543f3312cfce3d55) set(PTHREADS_VERSION 3.0.0) set(PTHREADS_URI http://sourceforge.mirrorservice.org/p/pt/pthreads4w/pthreads4w-code-v${PTHREADS_VERSION}.zip) set(PTHREADS_HASH f3bf81bb395840b3446197bcf4ecd653) -set(ILMBASE_VERSION 2.3.0) +set(OPENEXR_VERSION 2.4.0) +set(OPENEXR_URI https://github.com/AcademySoftwareFoundation/openexr/archive/v${OPENEXR_VERSION}.tar.gz) +set(OPENEXR_HASH 9e4d69cf2a12c6fb19b98af7c5e0eaee) if(WIN32) + # Openexr started appending _d on its own so now + # we need to tell the build the postfix is _s while + # telling all other deps the postfix is _s_d if(BUILD_MODE STREQUAL Release) - set(ILMBASE_VERSION_POSTFIX _s) set(OPENEXR_VERSION_POSTFIX _s) + set(OPENEXR_VERSION_BUILD_POSTFIX _s) else() - set(ILMBASE_VERSION_POSTFIX _s_d) set(OPENEXR_VERSION_POSTFIX _s_d) + set(OPENEXR_VERSION_BUILD_POSTFIX _s) endif() else() - set(ILMBASE_VERSION_POSTFIX) -endif() -set(ILMBASE_URI https://github.com/openexr/openexr/releases/download/v${ILMBASE_VERSION}/ilmbase-${ILMBASE_VERSION}.tar.gz) -set(ILMBASE_HASH 354bf86de3b930ab87ac63619d60c860) - -set(OPENEXR_VERSION 2.3.0) -if(WIN32) # release 2.3.0 tarball has broken cmake support - set(OPENEXR_URI https://github.com/openexr/openexr/archive/0ac2ea34c8f3134148a5df4052e40f155b76f6fb.tar.gz) - set(OPENEXR_HASH ed159435d508240712fbaaa21d94bafb) -else() + set(OPENEXR_VERSION_BUILD_POSTFIX) set(OPENEXR_VERSION_POSTFIX) - set(OPENEXR_URI https://github.com/openexr/openexr/releases/download/v${OPENEXR_VERSION}/openexr-${OPENEXR_VERSION}.tar.gz) - set(OPENEXR_HASH a157e8a46596bc185f2472a5a4682174) endif() set(FREETYPE_VERSION 2.9.1) @@ -153,9 +149,9 @@ set(TBB_VERSION 2019_U9) set(TBB_URI https://github.com/01org/tbb/archive/${TBB_VERSION}.tar.gz) set(TBB_HASH 584edbec127c508f2cd5b6e79ad200fc) -set(OPENVDB_VERSION 5.1.0) +set(OPENVDB_VERSION 7.0.0) set(OPENVDB_URI https://github.com/dreamworksanimation/openvdb/archive/v${OPENVDB_VERSION}.tar.gz) -set(OPENVDB_HASH 5310101f874dcfd2165f9cee68c22624) +set(OPENVDB_HASH fd6c4f168282f7e0e494d290cd531fa8) set(IDNA_VERSION 2.8) set(CHARDET_VERSION 3.0.4) diff --git a/build_files/build_environment/dependencies.dot b/build_files/build_environment/dependencies.dot new file mode 100644 index 00000000000..62949f3de62 --- /dev/null +++ b/build_files/build_environment/dependencies.dot @@ -0,0 +1,100 @@ +strict graph { +graph[autosize = false, size = "25.7,8.3!", resolution = 300, overlap = false, splines = false, outputorder=edgesfirst ]; + node [style=filled fillcolor=white]; + external_alembic -- external_boost; + external_alembic -- external_zlib; + external_alembic -- external_openexr; + external_blosc -- external_zlib; + external_blosc -- external_pthreads; + external_boost -- Make_Python_Environment; + external_clang -- ll; + external_ffmpeg -- external_zlib; + external_ffmpeg -- external_faad; + external_ffmpeg -- external_openjpeg; + external_ffmpeg -- external_xvidcore; + external_ffmpeg -- external_x264; + external_ffmpeg -- external_vpx; + external_ffmpeg -- external_theora; + external_ffmpeg -- external_vorbis; + external_ffmpeg -- external_ogg; + external_ffmpeg -- external_lame; + external_ffmpeg -- external_zlib_mingw; + external_numpy -- Make_Python_Environment; + external_opencollada -- external_xml2; + external_opencolorio -- external_boost; + external_opencolorio -- external_tinyxml; + external_opencolorio -- external_yamlcpp; + external_openexr -- external_zlib; + external_openimageio -- external_png; + external_openimageio -- external_zlib; + external_openimageio -- external_openexr; + external_openimageio -- external_openexr; + external_openimageio -- external_jpeg; + external_openimageio -- external_boost; + external_openimageio -- external_tiff; + external_openimageio -- external_opencolorio; + external_openimageio -- external_openjpeg; + external_openimageio -- external_webp; + external_openimageio -- external_opencolorio_extra; + external_openmp -- external_clang; + external_opensubdiv -- external_glew; + external_opensubdiv -- external_glfw; + external_opensubdiv -- external_clew; + external_opensubdiv -- external_cuew; + external_opensubdiv -- external_tbb; + openvdb -- external_tbb; + openvdb -- external_boost; + openvdb -- external_openexr; + openvdb -- external_openexr; + openvdb -- external_zlib; + openvdb -- external_blosc; + external_osl -- external_boost; + external_osl -- ll; + external_osl -- external_clang; + external_osl -- external_openexr; + external_osl -- external_openexr; + external_osl -- external_zlib; + external_osl -- external_flexbison; + external_osl -- external_openimageio; + external_osl -- external_pugixml; + external_png -- external_zlib; + external_python_site_packages -- Make_Python_Environment; + external_sndfile -- external_ogg; + external_sndfile -- external_vorbis; + external_sndfile -- external_flac; + external_theora -- external_vorbis; + external_theora -- external_ogg; + external_tiff -- external_zlib; + external_vorbis -- external_ogg; + blender-- external_ffmpeg; + blender-- external_alembic; + blender-- external_openjpeg; + blender-- external_opencolorio; + blender-- external_openexr; + blender-- external_opensubdiv; + blender-- openvdb; + blender-- external_osl; + blender-- external_boost; + blender-- external_jpeg; + blender-- external_png; + blender-- external_python; + blender-- external_sndfile; + blender-- external_iconv; + blender-- external_fftw3; + external_python-- external_python_site_packages; + external_python_site_packages-- requests; + external_python_site_packages-- idna; + external_python_site_packages-- chardet; + external_python_site_packages-- urllib3; + external_python_site_packages-- certifi; + external_python-- external_numpy; + external_usd-- external_boost; + external_usd-- external_tbb; + blender-- external_opencollada; + blender-- external_sdl; + blender-- external_freetype; + blender-- external_pthreads; + blender-- external_zlib; + blender-- external_openal; + blender-- external_usd; +} diff --git a/build_files/build_environment/install_deps.sh b/build_files/build_environment/install_deps.sh index 4e69bf08dd2..dd15fb0d2ed 100755 --- a/build_files/build_environment/install_deps.sh +++ b/build_files/build_environment/install_deps.sh @@ -329,7 +329,7 @@ NUMPY_FORCE_BUILD=false NUMPY_FORCE_REBUILD=false NUMPY_SKIP=false -BOOST_VERSION="1.68.0" +BOOST_VERSION="1.70.0" BOOST_VERSION_MIN="1.49" BOOST_FORCE_BUILD=false BOOST_FORCE_REBUILD=false @@ -341,9 +341,9 @@ OCIO_FORCE_BUILD=false OCIO_FORCE_REBUILD=false OCIO_SKIP=false -OPENEXR_VERSION="2.3.0" +OPENEXR_VERSION="2.4.0" OPENEXR_VERSION_MIN="2.0.1" -ILMBASE_VERSION="2.3.0" +ILMBASE_VERSION="2.4.0" ILMBASE_VERSION_MIN="2.3" OPENEXR_FORCE_BUILD=false OPENEXR_FORCE_REBUILD=false @@ -379,9 +379,9 @@ OSD_FORCE_REBUILD=false OSD_SKIP=false # OpenVDB needs to be compiled for now -OPENVDB_BLOSC_VERSION="1.14.4" +OPENVDB_BLOSC_VERSION="1.5.0" -OPENVDB_VERSION="5.1.0" +OPENVDB_VERSION="7.0.0" OPENVDB_VERSION_MIN=$OPENVDB_VERSION OPENVDB_FORCE_BUILD=false OPENVDB_FORCE_REBUILD=false diff --git a/build_files/build_environment/patches/blosc.diff b/build_files/build_environment/patches/blosc.diff index 2c473d3b632..653649bb914 100644 --- a/build_files/build_environment/patches/blosc.diff +++ b/build_files/build_environment/patches/blosc.diff @@ -13,19 +13,17 @@ diff -Naur src/blosc/CMakeLists.txt external_blosc/blosc/CMakeLists.txt diff -Naur external_blosc.orig/blosc/blosc.c external_blosc/blosc/blosc.c --- external_blosc.orig/blosc/blosc.c 2018-07-30 04:56:38 -0600 +++ external_blosc/blosc/blosc.c 2018-08-11 15:27:26 -0600 -@@ -56,14 +56,7 @@ +@@ -41,12 +41,7 @@ #include <inttypes.h> #endif /* _WIN32 */ --/* Include the win32/pthread.h library for all the Windows builds. See #224. */ -#if defined(_WIN32) - #include "win32/pthread.h" - #include "win32/pthread.c" -#else - #include <pthread.h> -#endif -- +#include <pthread.h> + /* Some useful units */ - #define KB 1024 diff --git a/build_files/build_environment/patches/openvdb.diff b/build_files/build_environment/patches/openvdb.diff index 391a7be46db..a9360cbafd3 100644 --- a/build_files/build_environment/patches/openvdb.diff +++ b/build_files/build_environment/patches/openvdb.diff @@ -1,102 +1,73 @@ -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 ) -@@ -195,6 +198,7 @@ - ${Ilmbase_HALF_LIBRARY} - ${ZLIB_LIBRARY} - ${BLOSC_blosc_LIBRARY} -+ ${EXTRA_LIBS} +diff -Naur orig/cmake/FindIlmBase.cmake openvdb/cmake/FindIlmBase.cmake +--- orig/cmake/FindIlmBase.cmake 2019-12-06 13:11:33 -0700 ++++ openvdb/cmake/FindIlmBase.cmake 2020-01-16 09:06:32 -0700 +@@ -225,6 +225,12 @@ + list(APPEND CMAKE_FIND_LIBRARY_SUFFIXES + "-${IlmBase_VERSION_MAJOR}_${IlmBase_VERSION_MINOR}.lib" ) - - IF (WIN32) -@@ -225,13 +228,16 @@ - ${VDB_PRINT_SOURCE_FILES} ++ list(APPEND CMAKE_FIND_LIBRARY_SUFFIXES ++ "_s.lib" ++ ) ++ list(APPEND CMAKE_FIND_LIBRARY_SUFFIXES ++ "_s_d.lib" ++ ) + else() + if(ILMBASE_USE_STATIC_LIBS) + list(APPEND CMAKE_FIND_LIBRARY_SUFFIXES +diff -Naur orig/cmake/FindOpenEXR.cmake openvdb/cmake/FindOpenEXR.cmake +--- orig/cmake/FindOpenEXR.cmake 2019-12-06 13:11:33 -0700 ++++ openvdb/cmake/FindOpenEXR.cmake 2020-01-16 09:06:39 -0700 +@@ -218,6 +218,12 @@ + list(APPEND CMAKE_FIND_LIBRARY_SUFFIXES + "-${OpenEXR_VERSION_MAJOR}_${OpenEXR_VERSION_MINOR}.lib" ) ++ list(APPEND CMAKE_FIND_LIBRARY_SUFFIXES ++ "_s.lib" ++ ) ++ list(APPEND CMAKE_FIND_LIBRARY_SUFFIXES ++ "_s_d.lib" ++ ) + else() + if(OPENEXR_USE_STATIC_LIBS) + list(APPEND CMAKE_FIND_LIBRARY_SUFFIXES +diff -Naur orig/openvdb/CMakeLists.txt openvdb/openvdb/CMakeLists.txt +--- orig/openvdb/CMakeLists.txt 2019-12-06 13:11:33 -0700 ++++ openvdb/openvdb/CMakeLists.txt 2020-01-16 08:56:25 -0700 +@@ -193,11 +193,12 @@ + if(OPENVDB_DISABLE_BOOST_IMPLICIT_LINKING) + add_definitions(-DBOOST_ALL_NO_LIB) + endif() ++ add_definitions(-D__TBB_NO_IMPLICIT_LINKAGE -DOPENVDB_OPENEXR_STATICLIB) + endif() -+if(NOT WIN32) -+ set(EXTRA_LIBS m stdc++ dl) -+endif() -+ - TARGET_LINK_LIBRARIES ( vdb_print - openvdb_shared - ${CMAKE_THREAD_LIBS_INIT} - ${BLOSC_blosc_LIBRARY} -- m -- stdc++ -- ) -+ ${EXTRA_LIBS} -+) + # @todo Should be target definitions + if(WIN32) +- add_definitions(-D_WIN32 -DNOMINMAX -DOPENVDB_DLL) ++ add_definitions(-D_WIN32 -DNOMINMAX -DOPENVDB_STATICLIB) + endif() - 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} - ) + ##### Core library configuration +diff -Naur orig/openvdb/cmd/CMakeLists.txt openvdb/openvdb/cmd/CMakeLists.txt +--- orig/openvdb/cmd/CMakeLists.txt 2019-12-06 13:11:33 -0700 ++++ openvdb/openvdb/cmd/CMakeLists.txt 2020-01-16 08:56:25 -0700 +@@ -53,7 +53,7 @@ + endif() - SET ( VDB_VIEW_SOURCE_FILES -@@ -270,7 +270,7 @@ - PROPERTIES - COMPILE_FLAGS "-DOPENVDB_USE_BLOSC ${OPENVDB_USE_GLFW_FLAG} -DGL_GLEXT_PROTOTYPES=1" - ) --IF (NOT WIN32) -+IF (FALSE) - ADD_EXECUTABLE ( vdb_view - ${VDB_VIEW_SOURCE_FILES} - ) -@@ -283,9 +288,8 @@ - ${GLFW_LINK_LIBRARY} - ${GLFW_DEPENDENT_LIBRARIES} - ${GLEW_GLEW_LIBRARY} -- m -- stdc++ -- ) -+ ${EXTRA_LIBS} -+ ) - ENDIF () + if(WIN32) +- add_definitions(-D_WIN32 -DNOMINMAX -DOPENVDB_DLL) ++ add_definitions(-D_WIN32 -DNOMINMAX -DOPENVDB_STATICLIB) + endif() - SET ( UNITTEST_SOURCE_FILES -@@ -392,8 +396,7 @@ - TARGET_LINK_LIBRARIES ( vdb_test - ${CPPUnit_cppunit_LIBRARY} - openvdb_shared -- m -- stdc++ -+ ${EXTRA_LIBS} - ) + # rpath handling +diff -Naur orig/openvdb/unittest/CMakeLists.txt openvdb/openvdb/unittest/CMakeLists.txt +--- orig/openvdb/unittest/CMakeLists.txt 2019-12-06 13:11:33 -0700 ++++ openvdb/openvdb/unittest/CMakeLists.txt 2020-01-16 08:56:25 -0700 +@@ -49,7 +49,7 @@ + endif() - ADD_TEST ( vdb_unit_test vdb_test ) -@@ -422,7 +422,7 @@ - ENDIF () + if(WIN32) +- add_definitions(-D_WIN32 -DNOMINMAX -DOPENVDB_DLL) ++ add_definitions(-D_WIN32 -DNOMINMAX -DOPENVDB_STATICLIB) + endif() - # Installation --IF ( NOT WIN32 ) -+IF ( FALSE ) - INSTALL ( TARGETS - vdb_view - DESTINATION -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" + ##### VDB unit tests diff --git a/build_files/build_environment/windows/build_deps.cmd b/build_files/build_environment/windows/build_deps.cmd index bb9dda81435..ea8bfdaa3d2 100644 --- a/build_files/build_environment/windows/build_deps.cmd +++ b/build_files/build_environment/windows/build_deps.cmd @@ -126,6 +126,7 @@ if "%dobuild%" == "1" ( cmake --build . --target Harvest_Release_Results > Harvest_Release.txt ) echo %DATE% %TIME% : Release Harvest done >> %StatusFile% +if "%NODEBUG%" == "1" goto exit cd %BUILD_DIR% mkdir %STAGING%\%BuildDir%%ARCH%D cd %Staging%\%BuildDir%%ARCH%D diff --git a/extern/mantaflow/CMakeLists.txt b/extern/mantaflow/CMakeLists.txt index f4eefbb4d04..aab1fdd0219 100644 --- a/extern/mantaflow/CMakeLists.txt +++ b/extern/mantaflow/CMakeLists.txt @@ -51,6 +51,7 @@ endif() if(WITH_OPENVDB) add_definitions(-DOPENVDB=1) + add_definitions(-DOPENVDB_STATICLIB) endif() set(INC diff --git a/intern/openvdb/CMakeLists.txt b/intern/openvdb/CMakeLists.txt index 5d51e6c3dbc..fdc57d1a282 100644 --- a/intern/openvdb/CMakeLists.txt +++ b/intern/openvdb/CMakeLists.txt @@ -43,6 +43,7 @@ if(WITH_OPENVDB) if(WIN32) add_definitions( -DOPENVDB_STATICLIB + -D_USE_MATH_DEFINES ) endif() |