diff options
| author | Victor Romero <romerosanchezv@gmail.com> | 2019-02-26 08:16:20 -0800 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2019-02-26 08:16:20 -0800 |
| commit | bd94d1e254aede85506e07a632d1a7aafd538115 (patch) | |
| tree | 3b99452b7346175aca0d514dafc8324eb07364b8 /ports/openvdb | |
| parent | ecff2997f686d9169e3d088541fda7aa2ea62011 (diff) | |
| download | vcpkg-bd94d1e254aede85506e07a632d1a7aafd538115.tar.gz vcpkg-bd94d1e254aede85506e07a632d1a7aafd538115.zip | |
[freeimage, libwebp, OpenEXR, OpenVDB] Updates (#5417)
* [libwebp] update to v1.0.2, greatly simplify port, remove unnecessary custom find_package script in favour of original Config files for cmake
* [libwebp] enable building of all tools
* [libwebp] install cmake config file in expected path
* [libwebp] add compatibility layer inside CMake Config file
* [libwebp] fix libwebpmux library name
* [OpenEXR] Update to v2.3.0, enable tools, improve cmake module while still maintaining backwards compatibility (there's an official one distributed with the package but it is completely different, for now it is avoided)
* [OpenEXR] remove unused patches
* [OpenEXR] remove forced definition, could hide problems downstream
* [freeimage] add compatibility with latest OpenEXR
* [freeimage] bump control
* [OpenEXR] restore ilmbase as an empty package to permit clean update
* [OpenVDB] update to v6.0
* [OpenEXR] disable building on UWP platform
* [openexr] Fix tools suffixes
* [openexr] Fix Linux build paths
Diffstat (limited to 'ports/openvdb')
| -rw-r--r-- | ports/openvdb/0001-fix-cmake-modules.patch | 198 | ||||
| -rw-r--r-- | ports/openvdb/0002-add-custom-options.patch | 14 | ||||
| -rw-r--r-- | ports/openvdb/0003-build-only-necessary-targets.patch (renamed from ports/openvdb/AddLinkageAndToolsChoice.patch) | 143 | ||||
| -rw-r--r-- | ports/openvdb/CONTROL | 6 | ||||
| -rw-r--r-- | ports/openvdb/UseGLEWOnWindowsForViewer.patch | 60 | ||||
| -rw-r--r-- | ports/openvdb/portfile.cmake | 89 |
6 files changed, 307 insertions, 203 deletions
diff --git a/ports/openvdb/0001-fix-cmake-modules.patch b/ports/openvdb/0001-fix-cmake-modules.patch new file mode 100644 index 000000000..1e613e602 --- /dev/null +++ b/ports/openvdb/0001-fix-cmake-modules.patch @@ -0,0 +1,198 @@ +diff --git a/cmake/FindBlosc.cmake b/cmake/FindBlosc.cmake +index 2d9d9d3..e9b4abc 100644 +--- a/cmake/FindBlosc.cmake ++++ b/cmake/FindBlosc.cmake +@@ -37,11 +37,7 @@ + + FIND_PACKAGE ( PackageHandleStandardArgs ) + +-FIND_PATH( BLOSC_LOCATION include/blosc.h +- "$ENV{BLOSC_ROOT}" +- NO_DEFAULT_PATH +- NO_SYSTEM_ENVIRONMENT_PATH +- ) ++FIND_PATH( BLOSC_LOCATION include/blosc.h) + + FIND_PACKAGE_HANDLE_STANDARD_ARGS ( Blosc + REQUIRED_VARS BLOSC_LOCATION +@@ -53,7 +49,7 @@ IF ( BLOSC_FOUND ) + CACHE STRING "Blosc library directories") + + SET ( _blosc_library_name "blosc" ) +- ++ + # Static library setup + IF (Blosc_USE_STATIC_LIBS) + SET(CMAKE_FIND_LIBRARY_SUFFIXES_BACKUP ${CMAKE_FIND_LIBRARY_SUFFIXES}) +@@ -69,7 +65,7 @@ IF ( BLOSC_FOUND ) + NO_DEFAULT_PATH + NO_SYSTEM_ENVIRONMENT_PATH + ) +- ++ + # Static library tear down + IF (Blosc_USE_STATIC_LIBS) + SET( CMAKE_FIND_LIBRARY_SUFFIXES ${CMAKE_FIND_LIBRARY_SUFFIXES_BACKUP} ) +diff --git a/cmake/FindGLEW.cmake b/cmake/FindGLEW.cmake +index 0b72457..75951a6 100644 +--- a/cmake/FindGLEW.cmake ++++ b/cmake/FindGLEW.cmake +@@ -39,11 +39,7 @@ + + FIND_PACKAGE ( PackageHandleStandardArgs ) + +-FIND_PATH( GLEW_LOCATION include/GL/glew.h +- "$ENV{GLEW_ROOT}" +- NO_DEFAULT_PATH +- NO_SYSTEM_ENVIRONMENT_PATH +- ) ++FIND_PATH( GLEW_LOCATION include/GL/glew.h) + + FIND_PACKAGE_HANDLE_STANDARD_ARGS ( GLEW + REQUIRED_VARS GLEW_LOCATION +diff --git a/cmake/FindGLFW3.cmake b/cmake/FindGLFW3.cmake +index cea0b86..07ea09e 100644 +--- a/cmake/FindGLFW3.cmake ++++ b/cmake/FindGLFW3.cmake +@@ -39,11 +39,7 @@ + + FIND_PACKAGE ( PackageHandleStandardArgs ) + +-FIND_PATH( GLFW3_LOCATION include/GLFW/glfw3.h +- "$ENV{GLFW3_ROOT}" +- NO_DEFAULT_PATH +- NO_SYSTEM_ENVIRONMENT_PATH +-) ++FIND_PATH( GLFW3_LOCATION include/GLFW/glfw3.h) + + FIND_PACKAGE_HANDLE_STANDARD_ARGS ( GLFW3 + REQUIRED_VARS GLFW3_LOCATION +diff --git a/cmake/FindILMBase.cmake b/cmake/FindILMBase.cmake +index 664affd..5197110 100644 +--- a/cmake/FindILMBase.cmake ++++ b/cmake/FindILMBase.cmake +@@ -43,11 +43,7 @@ + + FIND_PACKAGE ( PackageHandleStandardArgs ) + +-FIND_PATH ( ILMBASE_LOCATION include/OpenEXR/IlmBaseConfig.h +- "$ENV{ILMBASE_ROOT}" +- NO_DEFAULT_PATH +- NO_SYSTEM_ENVIRONMENT_PATH +- ) ++FIND_PATH ( ILMBASE_LOCATION include/OpenEXR/IlmBaseConfig.h) + + FIND_PACKAGE_HANDLE_STANDARD_ARGS ( ILMBase + REQUIRED_VARS ILMBASE_LOCATION +@@ -70,11 +66,13 @@ IF ( ILMBASE_FOUND ) + SET ( IEXMATH_LIBRARY_NAME IexMath-${ILMBASE_VERSION_MAJOR}_${ILMBASE_VERSION_MINOR} ) + SET ( ILMTHREAD_LIBRARY_NAME IlmThread-${ILMBASE_VERSION_MAJOR}_${ILMBASE_VERSION_MINOR} ) + SET ( IMATH_LIBRARY_NAME Imath-${ILMBASE_VERSION_MAJOR}_${ILMBASE_VERSION_MINOR} ) ++ SET ( HALF_LIBRARY_NAME Half-${ILMBASE_VERSION_MAJOR}_${ILMBASE_VERSION_MINOR} ) + ELSE ( ILMBASE_NAMESPACE_VERSIONING ) + SET ( IEX_LIBRARY_NAME Iex ) + SET ( IEXMATH_LIBRARY_NAME IexMath ) + SET ( ILMTHREAD_LIBRARY_NAME IlmThread ) + SET ( IMATH_LIBRARY_NAME Imath ) ++ SET ( HALF_LIBRARY_NAME Half ) + ENDIF ( ILMBASE_NAMESPACE_VERSIONING ) + + SET ( ILMBASE_INCLUDE_DIRS +@@ -84,7 +82,7 @@ IF ( ILMBASE_FOUND ) + SET ( ILMBASE_LIBRARYDIR ${ILMBASE_LOCATION}/lib + CACHE STRING "ILMBase library directories") + SET ( ILMBASE_FOUND TRUE ) +- ++ + SET ( ORIGINAL_CMAKE_FIND_LIBRARY_SUFFIXES ${CMAKE_FIND_LIBRARY_SUFFIXES}) + IF (Ilmbase_USE_STATIC_LIBS) + IF (APPLE) +@@ -129,14 +127,14 @@ IF ( ILMBASE_FOUND ) + ELSEIF (WIN32) + # Link library + SET(CMAKE_FIND_LIBRARY_SUFFIXES ".lib") +- FIND_LIBRARY ( Ilmbase_HALF_LIBRARY Half PATHS ${ILMBASE_LIBRARYDIR} ) ++ FIND_LIBRARY ( Ilmbase_HALF_LIBRARY ${HALF_LIBRARY_NAME} PATHS ${ILMBASE_LIBRARYDIR} ) + FIND_LIBRARY ( Ilmbase_IEX_LIBRARY ${IEX_LIBRARY_NAME} PATHS ${ILMBASE_LIBRARYDIR} ) + FIND_LIBRARY ( Ilmbase_IEXMATH_LIBRARY ${IEXMATH_LIBRARY_NAME} PATHS ${ILMBASE_LIBRARYDIR} ) + FIND_LIBRARY ( Ilmbase_ILMTHREAD_LIBRARY ${ILMTHREAD_LIBRARY_NAME} PATHS ${ILMBASE_LIBRARYDIR} ) + FIND_LIBRARY ( Ilmbase_IMATH_LIBRARY ${IMATH_LIBRARY_NAME} PATHS ${ILMBASE_LIBRARYDIR} ) + # Load library + SET(CMAKE_FIND_LIBRARY_SUFFIXES ".dll") +- FIND_LIBRARY ( Ilmbase_HALF_DLL Half PATHS ${ILMBASE_LOCATION}/bin ++ FIND_LIBRARY ( Ilmbase_HALF_DLL ${HALF_LIBRARY_NAME} PATHS ${ILMBASE_LOCATION}/bin + NO_DEFAULT_PATH + NO_SYSTEM_ENVIRONMENT_PATH + ) +@@ -157,7 +155,7 @@ IF ( ILMBASE_FOUND ) + NO_SYSTEM_ENVIRONMENT_PATH + ) + ELSE (APPLE) +- FIND_LIBRARY ( Ilmbase_HALF_LIBRARY Half PATHS ${ILMBASE_LIBRARYDIR} ++ FIND_LIBRARY ( Ilmbase_HALF_LIBRARY ${HALF_LIBRARY_NAME} PATHS ${ILMBASE_LIBRARYDIR} + NO_DEFAULT_PATH + NO_SYSTEM_ENVIRONMENT_PATH + ) +diff --git a/cmake/FindOpenEXR.cmake b/cmake/FindOpenEXR.cmake +index 6d69c03..5ecf8fa 100644 +--- a/cmake/FindOpenEXR.cmake ++++ b/cmake/FindOpenEXR.cmake +@@ -38,11 +38,7 @@ + + FIND_PACKAGE ( PackageHandleStandardArgs ) + +-FIND_PATH ( OPENEXR_LOCATION include/OpenEXR/OpenEXRConfig.h +- ENV OPENEXR_ROOT +- NO_DEFAULT_PATH +- NO_SYSTEM_ENVIRONMENT_PATH +- ) ++FIND_PATH ( OPENEXR_LOCATION include/OpenEXR/OpenEXRConfig.h) + + FIND_PACKAGE_HANDLE_STANDARD_ARGS ( OpenEXR + REQUIRED_VARS OPENEXR_LOCATION +@@ -59,7 +55,7 @@ IF ( OPENEXR_FOUND ) + FILE ( STRINGS "${OPENEXR_LOCATION}/include/OpenEXR/OpenEXRConfig.h" _openexr_version_minor_string REGEX "#define OPENEXR_VERSION_MINOR ") + STRING ( REGEX REPLACE "#define OPENEXR_VERSION_MINOR" "" _openexr_version_minor_unstrip "${_openexr_version_minor_string}") + STRING ( STRIP "${_openexr_version_minor_unstrip}" OPENEXR_VERSION_MINOR ) +- ++ + MESSAGE ( STATUS "Found OpenEXR v${OPENEXR_VERSION_MAJOR}.${OPENEXR_VERSION_MINOR} at ${OPENEXR_LOCATION}" ) + + IF ( OPENEXR_NAMESPACE_VERSIONING ) +@@ -67,7 +63,7 @@ IF ( OPENEXR_FOUND ) + ELSE ( OPENEXR_NAMESPACE_VERSIONING ) + SET ( ILMIMF_LIBRARY_NAME IlmImf ) + ENDIF ( OPENEXR_NAMESPACE_VERSIONING ) +- ++ + SET ( OPENEXR_INCLUDE_DIRS + ${OPENEXR_LOCATION}/include + ${OPENEXR_LOCATION}/include/OpenEXR +@@ -120,6 +116,5 @@ IF ( OPENEXR_FOUND ) + ENDIF () + + # SET( Openexr_ILMIMF_LIBRARY ${OPENEXR_ILMIMF_LIBRARY_PATH} CACHE STRING "Openexr's IlmImf library") +- +-ENDIF ( OPENEXR_FOUND ) + ++ENDIF ( OPENEXR_FOUND ) +diff --git a/cmake/FindTBB.cmake b/cmake/FindTBB.cmake +index 8a56ec0..9f5a7b4 100644 +--- a/cmake/FindTBB.cmake ++++ b/cmake/FindTBB.cmake +@@ -42,14 +42,7 @@ FIND_PACKAGE ( PackageHandleStandardArgs ) + + # SET ( TBB_FOUND FALSE ) + +-FIND_PATH( TBB_LOCATION include/tbb/tbb.h +- "$ENV{TBB_ROOT}" +- NO_DEFAULT_PATH +- NO_CMAKE_ENVIRONMENT_PATH +- NO_CMAKE_PATH +- NO_SYSTEM_ENVIRONMENT_PATH +- NO_CMAKE_SYSTEM_PATH +- ) ++FIND_PATH( TBB_LOCATION include/tbb/tbb.h) + + FIND_PACKAGE_HANDLE_STANDARD_ARGS ( TBB + REQUIRED_VARS TBB_LOCATION diff --git a/ports/openvdb/0002-add-custom-options.patch b/ports/openvdb/0002-add-custom-options.patch new file mode 100644 index 000000000..5e8d49091 --- /dev/null +++ b/ports/openvdb/0002-add-custom-options.patch @@ -0,0 +1,14 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index b35ec70..801e7df 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -38,6 +38,9 @@ if(CCACHE_FOUND) + set_property(GLOBAL PROPERTY RULE_LAUNCH_LINK ccache) + endif(CCACHE_FOUND) + ++OPTION ( OPENVDB_BUILD_TOOLS "Build OpenVDB utilities" OFF ) ++OPTION ( OPENVDB_STATIC "Build statically linked library" OFF ) ++OPTION ( OPENVDB_SHARED "Build dynamically linked library" ON ) + OPTION ( OPENVDB_BUILD_UNITTESTS "Build the OpenVDB unit tests" ON ) + OPTION ( OPENVDB_BUILD_DOCS "Build the OpenVDB documentation" OFF ) + OPTION ( OPENVDB_BUILD_PYTHON_MODULE "Build the pyopenvdb Python module" ON ) diff --git a/ports/openvdb/AddLinkageAndToolsChoice.patch b/ports/openvdb/0003-build-only-necessary-targets.patch index 57078be15..55b480ce4 100644 --- a/ports/openvdb/AddLinkageAndToolsChoice.patch +++ b/ports/openvdb/0003-build-only-necessary-targets.patch @@ -1,81 +1,63 @@ -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 712fb1d..440a63a 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -32,6 +32,9 @@ PROJECT ( OpenVDB ) - - ENABLE_TESTING() - -+OPTION ( OPENVDB_BUILD_TOOLS "Build OpenVDB utilities" ON ) -+OPTION ( OPENVDB_STATIC "Build statically linked library" ON ) -+OPTION ( OPENVDB_SHARED "Build dynamically linked library" ON ) - OPTION ( OPENVDB_BUILD_UNITTESTS "Build the OpenVDB unit tests" ON ) - OPTION ( OPENVDB_BUILD_DOCS "Build the OpenVDB documentation" OFF ) - OPTION ( OPENVDB_BUILD_PYTHON_MODULE "Build the pyopenvdb Python module" ON ) diff --git a/openvdb/CMakeLists.txt b/openvdb/CMakeLists.txt -index 5703eb9..6ff3c6a 100644 +index 9404dbc..b4129e3 100644 --- a/openvdb/CMakeLists.txt +++ b/openvdb/CMakeLists.txt -@@ -26,6 +26,7 @@ - # - PROJECT ( OpenVDBCore ) +@@ -29,12 +29,13 @@ PROJECT ( OpenVDBCore ) + + set(CMAKE_CXX_STANDARD 11) +IF ( OPENVDB_BUILD_TOOLS ) IF ( USE_GLFW3 ) FIND_PACKAGE ( GLFW3 REQUIRED ) SET ( OPENVDB_USE_GLFW_FLAG "-DOPENVDB_USE_GLFW_3" ) -@@ -42,9 +43,12 @@ ELSE () + IF ( UNIX AND NOT APPLE ) + SET ( GLFW_DEPENDENT_LIBRARIES "X11;Xi;Xrandr;Xinerama;Xcursor;Xxf86vm" ) +- ENDIF ( UNIX AND NOT APPLE ) ++ ENDIF () + SET ( GLFW_LINK_LIBRARY ${GLFW3_glfw_LIBRARY} ) + SET ( GLFW_INCLUDE_DIRECTORY ${GLFW3_INCLUDE_DIR} CACHE STRING "GLFW3 include directory") + ELSE () +@@ -45,12 +46,14 @@ ELSE () SET ( GLFW_LINK_LIBRARY ${GLFW_glfw_LIBRARY} ) SET ( GLFW_INCLUDE_DIRECTORY ${GLFW_INCLUDE_DIR} CACHE STRING "GLFW include directory") ENDIF () -+ENDIF ( OPENVDB_BUILD_TOOLS ) ++ENDIF () - IF (WIN32) -+ IF ( OPENVDB_BUILD_TOOLS ) - FIND_PACKAGE ( GLEW REQUIRED ) -+ ENDIF ( OPENVDB_BUILD_TOOLS ) - ELSE () - FIND_PACKAGE ( Threads REQUIRED ) - ENDIF() -@@ -75,7 +79,7 @@ SET ( OPENVDB_PATCH_VERSION_NUMBER ${_openvdb_patch_version_number} CACHE STRING - # MESSAGE ( "OPENVDB_MINOR_VERSION_NUMBER = ${OPENVDB_MINOR_VERSION_NUMBER}" ) - # MESSAGE ( "OPENVDB_PATCH_VERSION_NUMBER = ${OPENVDB_PATCH_VERSION_NUMBER}" ) - --FIND_PACKAGE ( Boost ${MINIMUM_BOOST_VERSION} REQUIRED COMPONENTS iostreams system thread ${OPENVDB_BOOST_PYTHON_LIBRARY_COMPONENT_NAME} ) -+FIND_PACKAGE ( Boost ${MINIMUM_BOOST_VERSION} REQUIRED COMPONENTS iostreams system thread date_time ${OPENVDB_BOOST_PYTHON_LIBRARY_COMPONENT_NAME} ) - IF (WIN32 AND OPENVDB_DISABLE_BOOST_IMPLICIT_LINKING) - ADD_DEFINITIONS ( -DBOOST_ALL_NO_LIB ) - ENDIF () -@@ -85,7 +89,9 @@ FIND_PACKAGE ( TBB REQUIRED ) - FIND_PACKAGE ( ZLIB REQUIRED ) - FIND_PACKAGE ( ILMBase REQUIRED ) - FIND_PACKAGE ( OpenEXR REQUIRED ) +-IF (WIN32) +IF ( OPENVDB_BUILD_TOOLS ) - FIND_PACKAGE ( OpenGL REQUIRED ) ++IF ( WIN32 ) + FIND_PACKAGE ( GLEW REQUIRED ) +-ELSE () +- FIND_PACKAGE ( Threads REQUIRED ) +-ENDIF() +ENDIF () - IF (OPENVDB_BUILD_DOCS) - FIND_PACKAGE ( Doxygen REQUIRED ) - ENDIF () -@@ -127,7 +133,10 @@ INCLUDE_DIRECTORIES ( SYSTEM ${BLOSC_INCLUDE_DIR} ) ++ENDIF () ++FIND_PACKAGE ( Threads REQUIRED ) + + # Determine OpenVDB version + #define OPENVDB_LIBRARY_MAJOR_VERSION_NUMBER 4 +@@ -130,7 +133,12 @@ INCLUDE_DIRECTORIES ( SYSTEM ${BLOSC_INCLUDE_DIR} ) INCLUDE_DIRECTORIES ( SYSTEM ${CPPUNIT_INCLUDE_DIR} ) IF (WIN32) - ADD_DEFINITIONS ( -D_WIN32 -DNOMINMAX -DHALF_EXPORTS -DOPENVDB_DLL ) ++ ADD_DEFINITIONS ( -D__TBB_NO_IMPLICIT_LINKAGE ) ++ ADD_DEFINITIONS ( -D__TBBMALLOC_NO_IMPLICIT_LINKAGE ) + ADD_DEFINITIONS ( -D_WIN32 -DNOMINMAX ) + IF ( OPENVDB_SHARED ) -+ ADD_DEFINITIONS ( -DOPENVDB_DLL ) ++ ADD_DEFINITIONS ( -DOPENEXR_DLL -DOPENVDB_DLL ) + ENDIF () ELSE () ADD_DEFINITIONS ( -pthread -fPIC ) ENDIF () -@@ -167,16 +176,20 @@ SET ( OPENVDB_LIBRARY_SOURCE_FILES +@@ -170,16 +178,21 @@ SET ( OPENVDB_LIBRARY_SOURCE_FILES SET_SOURCE_FILES_PROPERTIES ( ${OPENVDB_LIBRARY_SOURCE_FILES} PROPERTIES - COMPILE_FLAGS "-DOPENVDB_PRIVATE -DOPENVDB_USE_BLOSC ${OPENVDB_USE_GLFW_FLAG}" + COMPILE_FLAGS "-DOPENVDB_PRIVATE -DOPENVDB_USE_BLOSC ${OPENVDB_USE_GLFW_FLAG} $<$<CXX_COMPILER_ID:MSVC>:/bigobj>" ) -- + +IF ( OPENVDB_STATIC ) ADD_LIBRARY ( openvdb_static STATIC ${OPENVDB_LIBRARY_SOURCE_FILES} @@ -91,7 +73,7 @@ index 5703eb9..6ff3c6a 100644 TARGET_LINK_LIBRARIES ( openvdb_static ${Boost_IOSTREAMS_LIBRARY} ${Boost_SYSTEM_LIBRARY} -@@ -185,6 +198,8 @@ TARGET_LINK_LIBRARIES ( openvdb_static +@@ -188,6 +201,8 @@ TARGET_LINK_LIBRARIES ( openvdb_static ${ZLIB_LIBRARY} ${BLOSC_blosc_LIBRARY} ) @@ -100,7 +82,7 @@ index 5703eb9..6ff3c6a 100644 TARGET_LINK_LIBRARIES ( openvdb_shared ${Boost_IOSTREAMS_LIBRARY} ${Boost_SYSTEM_LIBRARY} -@@ -193,7 +208,9 @@ TARGET_LINK_LIBRARIES ( openvdb_shared +@@ -196,7 +211,9 @@ TARGET_LINK_LIBRARIES ( openvdb_shared ${ZLIB_LIBRARY} ${BLOSC_blosc_LIBRARY} ) @@ -110,17 +92,19 @@ index 5703eb9..6ff3c6a 100644 IF (WIN32) SET_TARGET_PROPERTIES ( openvdb_static PROPERTIES OUTPUT_NAME libopenvdb -@@ -203,7 +220,9 @@ ELSE() +@@ -205,8 +222,10 @@ ELSE() + SET_TARGET_PROPERTIES ( openvdb_static PROPERTIES OUTPUT_NAME openvdb ) - ENDIF() +-ENDIF() ++ENDIF () +ENDIF () +IF ( OPENVDB_SHARED ) SET_TARGET_PROPERTIES( openvdb_shared PROPERTIES -@@ -211,13 +230,15 @@ SET_TARGET_PROPERTIES( +@@ -214,13 +233,15 @@ SET_TARGET_PROPERTIES( SOVERSION ${OPENVDB_MAJOR_VERSION_NUMBER}.${OPENVDB_MINOR_VERSION_NUMBER} VERSION ${OPENVDB_MAJOR_VERSION_NUMBER}.${OPENVDB_MINOR_VERSION_NUMBER}.${OPENVDB_PATCH_VERSION_NUMBER} ) @@ -137,7 +121,7 @@ index 5703eb9..6ff3c6a 100644 ADD_EXECUTABLE ( vdb_print ${VDB_PRINT_SOURCE_FILES} ) -@@ -231,7 +252,7 @@ TARGET_LINK_LIBRARIES ( vdb_print +@@ -236,7 +257,7 @@ TARGET_LINK_LIBRARIES ( vdb_print SET ( VDB_RENDER_SOURCE_FILES cmd/openvdb_render/main.cc ) SET_SOURCE_FILES_PROPERTIES ( ${VDB_RENDER_SOURCE_FILES} PROPERTIES @@ -146,7 +130,7 @@ index 5703eb9..6ff3c6a 100644 ) ADD_EXECUTABLE ( vdb_render ${VDB_RENDER_SOURCE_FILES} -@@ -256,26 +277,26 @@ SET ( VDB_VIEW_SOURCE_FILES +@@ -263,31 +284,40 @@ SET ( VDB_VIEW_SOURCE_FILES ) SET_SOURCE_FILES_PROPERTIES ( ${VDB_VIEW_SOURCE_FILES} PROPERTIES @@ -154,9 +138,13 @@ index 5703eb9..6ff3c6a 100644 + COMPILE_FLAGS "-DOPENVDB_USE_BLOSC ${OPENVDB_USE_GLFW_FLAG} -DGL_GLEXT_PROTOTYPES=1 $<$<CXX_COMPILER_ID:MSVC>:/bigobj>" ) -IF (NOT WIN32) ++ ADD_EXECUTABLE ( vdb_view ${VDB_VIEW_SOURCE_FILES} ) +- ++ + target_include_directories ( vdb_view SYSTEM PRIVATE ${Boost_INCLUDE_DIR} ) TARGET_LINK_LIBRARIES ( vdb_view openvdb_shared @@ -167,41 +155,58 @@ index 5703eb9..6ff3c6a 100644 - ${COCOA_LIBRARY} - ${IOKIT_LIBRARY} - ${COREVIDEO_LIBRARY} -+ #${COCOA_LIBRARY} -+ #${IOKIT_LIBRARY} -+ #${COREVIDEO_LIBRARY} ${GLFW_LINK_LIBRARY} ${GLFW_DEPENDENT_LIBRARIES} ${GLEW_GLEW_LIBRARY} - ) --ENDIF () -+ -+ENDIF ( OPENVDB_BUILD_TOOLS ) ++ ) ++ IF (APPLE) ++ TARGET_LINK_LIBRARIES ( vdb_view ++ ${COCOA_LIBRARY} ++ ${IOKIT_LIBRARY} ++ ${COREVIDEO_LIBRARY} ++ ) ++ ENDIF () ++ IF (NOT WIN32) ++ TARGET_LINK_LIBRARIES ( vdb_view + m + stdc++ +- ) ++ ) ++ ENDIF () + ENDIF () ++ SET ( UNITTEST_SOURCE_FILES unittest/main.cc -@@ -405,27 +426,32 @@ IF (OPENVDB_BUILD_DOCS) + unittest/TestAttributeArray.cc +@@ -398,7 +428,7 @@ IF ( OPENVDB_BUILD_UNITTESTS ) + ADD_TEST ( vdb_unit_test vdb_test ) + +-ENDIF (OPENVDB_BUILD_UNITTESTS) ++ENDIF () + + # Doxygen docmentation + IF (OPENVDB_BUILD_DOCS) +@@ -419,26 +449,29 @@ IF (OPENVDB_BUILD_DOCS) ENDIF () -+IF ( OPENVDB_BUILD_TOOLS ) # Installation -IF ( NOT WIN32 ) -+#IF ( NOT WIN32 ) ++IF ( OPENVDB_BUILD_TOOLS ) INSTALL ( TARGETS vdb_view DESTINATION bin ) -ENDIF () -+#ENDIF () INSTALL ( TARGETS vdb_print vdb_render DESTINATION bin ) -+ENDIF ( OPENVDB_BUILD_TOOLS ) ++ENDIF () +IF ( OPENVDB_STATIC) INSTALL ( TARGETS @@ -215,11 +220,11 @@ index 5703eb9..6ff3c6a 100644 IF (WIN32) INSTALL ( TARGETS openvdb_shared -@@ -439,6 +465,7 @@ ELSE() +@@ -452,6 +485,7 @@ ELSE() lib ) ENDIF () -+ENDIF ( OPENVDB_SHARED ) ++ENDIF () INSTALL ( DIRECTORY ${PROJECT_SOURCE_DIR} DESTINATION include FILES_MATCHING PATTERN "*.h" diff --git a/ports/openvdb/CONTROL b/ports/openvdb/CONTROL index e822bf04c..acf11cd00 100644 --- a/ports/openvdb/CONTROL +++ b/ports/openvdb/CONTROL @@ -1,8 +1,8 @@ Source: openvdb -Version: 5.0.0-2 -Build-Depends: ilmbase, openexr, tbb, blosc, boost-iostreams, boost-system, boost-thread, boost-date-time, boost-any, boost-uuid, boost-interprocess +Version: 6.0.0 +Build-Depends: boost-ptr-container, openexr, tbb, blosc, boost-iostreams, boost-system, boost-thread, boost-date-time, boost-any, boost-uuid, boost-interprocess Description: Sparse volume data structure and tools Feature: tools Description: OpenVDB utilities: view, print and render -Build-Depends: glew, glfw3, boost-ptr-container +Build-Depends: glew, glfw3 diff --git a/ports/openvdb/UseGLEWOnWindowsForViewer.patch b/ports/openvdb/UseGLEWOnWindowsForViewer.patch deleted file mode 100644 index bfa29c46c..000000000 --- a/ports/openvdb/UseGLEWOnWindowsForViewer.patch +++ /dev/null @@ -1,60 +0,0 @@ -diff --git a/openvdb/viewer/ClipBox.h b/openvdb/viewer/ClipBox.h -index b792491..d2f50cc 100644 ---- a/openvdb/viewer/ClipBox.h -+++ b/openvdb/viewer/ClipBox.h -@@ -36,6 +36,8 @@ - #if defined(__APPLE__) || defined(MACOSX) - #include <OpenGL/gl.h> - #include <OpenGL/glu.h> -+#elif defined(WIN32) -+#include <GL/glew.h> - #else - #include <GL/gl.h> - #include <GL/glu.h> -diff --git a/openvdb/viewer/Font.h b/openvdb/viewer/Font.h -index 6e79704..566cfbd 100644 ---- a/openvdb/viewer/Font.h -+++ b/openvdb/viewer/Font.h -@@ -36,6 +36,8 @@ - #if defined(__APPLE__) || defined(MACOSX) - #include <OpenGL/gl.h> - #include <OpenGL/glu.h> -+#elif defined(WIN32) -+#include <GL/glew.h> - #else - #include <GL/gl.h> - #include <GL/glu.h> -diff --git a/openvdb/viewer/RenderModules.h b/openvdb/viewer/RenderModules.h -index f4745d9..339dfc3 100644 ---- a/openvdb/viewer/RenderModules.h -+++ b/openvdb/viewer/RenderModules.h -@@ -43,6 +43,8 @@ - #if defined(__APPLE__) || defined(MACOSX) - #include <OpenGL/gl.h> - #include <OpenGL/glu.h> -+#elif defined(WIN32) -+#include <GL/glew.h> - #else - #include <GL/gl.h> - #include <GL/glu.h> -diff --git a/openvdb/viewer/Viewer.cc b/openvdb/viewer/Viewer.cc -index 307aa2b..8b79358 100644 ---- a/openvdb/viewer/Viewer.cc -+++ b/openvdb/viewer/Viewer.cc -@@ -540,7 +540,15 @@ ViewerImpl::open(int width, int height) - std::shared_ptr<GLFWwindow> curWindow( - glfwGetCurrentContext(), glfwMakeContextCurrent); - glfwMakeContextCurrent(mWindow); -- BitmapFont13::initialize(); -+ BitmapFont13::initialize(); -+#ifdef WIN32 -+ if (glewInit() == GLEW_OK) { -+ OPENVDB_LOG_DEBUG_RUNTIME("initialized GLEW from thread " -+ << boost::this_thread::get_id()); -+ } else { -+ OPENVDB_LOG_ERROR("GLEW initialization failed"); -+ } -+#endif - } - } - mCamera->setWindow(mWindow); diff --git a/ports/openvdb/portfile.cmake b/ports/openvdb/portfile.cmake index a21e82240..7f2fa6c29 100644 --- a/ports/openvdb/portfile.cmake +++ b/ports/openvdb/portfile.cmake @@ -2,17 +2,14 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH - REPO dreamworksanimation/openvdb - REF v5.0.0 - SHA512 8916d54683d81144114e57f8332be43b7547e6da5d194f6147bcefd4ee9e8e7ec817f27b65adb129dfd149e6b308f4bab30591ee953ee2c319636491bf051a2b + REPO AcademySoftwareFoundation/openvdb + REF v6.0.0 + SHA512 6b9e267fff46647b39e1e6faa12059442196c1858df1fda1515cfc375e25bc3033e2828c80e63a652509cfba386376e022cebf81ec85aaccece421b0c721529b HEAD_REF master -) - -vcpkg_apply_patches( - SOURCE_PATH ${SOURCE_PATH} PATCHES - ${CMAKE_CURRENT_LIST_DIR}/UseGLEWOnWindowsForViewer.patch - ${CMAKE_CURRENT_LIST_DIR}/AddLinkageAndToolsChoice.patch + ${CMAKE_CURRENT_LIST_DIR}/0001-fix-cmake-modules.patch + ${CMAKE_CURRENT_LIST_DIR}/0002-add-custom-options.patch + ${CMAKE_CURRENT_LIST_DIR}/0003-build-only-necessary-targets.patch ) if (VCPKG_LIBRARY_LINKAGE STREQUAL static) @@ -24,74 +21,24 @@ else() endif() if ("tools" IN_LIST FEATURES) + if (VCPKG_LIBRARY_LINKAGE STREQUAL dynamic) set(OPENVDB_BUILD_TOOLS ON) - set(OPENVDB_SHARED ON) # tools require shared version of the library -else() - set(OPENVDB_BUILD_TOOLS OFF) -endif() - -file(TO_NATIVE_PATH "${VCPKG_ROOT_DIR}/installed/${TARGET_TRIPLET}" INSTALL_LOCATION) - -file(TO_NATIVE_PATH "${INSTALL_LOCATION}/include" INCLUDE_LOCATION) -file(TO_NATIVE_PATH "${INSTALL_LOCATION}/lib/" LIB_LOCATION) -file(TO_NATIVE_PATH "${INSTALL_LOCATION}/debug/lib/" LIB_LOCATION_DEBUG) - -file(TO_NATIVE_PATH "${LIB_LOCATION}/zlib.lib" ZLIB_LIBRARY) -file(TO_NATIVE_PATH "${LIB_LOCATION}/tbb.lib" Tbb_TBB_LIBRARY) -file(TO_NATIVE_PATH "${LIB_LOCATION}/tbbmalloc.lib" Tbb_TBBMALLOC_LIBRARY) -file(TO_NATIVE_PATH "${LIB_LOCATION_DEBUG}/tbb_debug.lib" Tbb_TBB_LIBRARY_DEBUG) -file(TO_NATIVE_PATH "${LIB_LOCATION_DEBUG}/tbbmalloc_debug.lib" Tbb_TBBMALLOC_LIBRARY_DEBUG) - -file(TO_NATIVE_PATH "${LIB_LOCATION}/Half.lib" Ilmbase_HALF_LIBRARY) -file(TO_NATIVE_PATH "${LIB_LOCATION}/Iex-2_2.lib" Ilmbase_IEX_LIBRARY) -file(TO_NATIVE_PATH "${LIB_LOCATION}/IlmThread-2_2.lib" Ilmbase_ILMTHREAD_LIBRARY) - -if (OPENVDB_STATIC) - file(TO_NATIVE_PATH "${LIB_LOCATION}/glfw3.lib" GLFW3_LIBRARY) -else() - file(TO_NATIVE_PATH "${LIB_LOCATION}/glfw3dll.lib" GLFW3_LIBRARY) + else() + message(ERROR "Unable to build tools if static libraries are required") + endif() endif() - vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} PREFER_NINJA - OPTIONS -DOPENVDB_BUILD_UNITTESTS=OFF - -DOPENVDB_BUILD_PYTHON_MODULE=OFF - -DOPENVDB_ENABLE_3_ABI_COMPATIBLE=OFF - -DUSE_GLFW3=ON - -DGLFW3_USE_STATIC_LIBS=${OPENVDB_STATIC} - -DBlosc_USE_STATIC_LIBS=${OPENVDB_STATIC} - -DOpenexr_USE_STATIC_LIBS=${OPENVDB_STATIC} - -DIlmbase_USE_STATIC_LIBS=${OPENVDB_STATIC} - -DGLFW3_glfw_LIBRARY=${GLFW3_LIBRARY} - - -DIlmbase_HALF_LIBRARY=${Ilmbase_HALF_LIBRARY} - -DIlmbase_IEX_LIBRARY=${Ilmbase_IEX_LIBRARY} - -DIlmbase_ILMTHREAD_LIBRARY=${Ilmbase_ILMTHREAD_LIBRARY} - - -DOPENVDB_STATIC=${OPENVDB_STATIC} - -DOPENVDB_SHARED=${OPENVDB_SHARED} - -DOPENVDB_BUILD_TOOLS=${OPENVDB_BUILD_TOOLS} - - -DZLIB_INCLUDE_DIR=${INCLUDE_LOCATION} - -DTBB_INCLUDE_DIR=${INCLUDE_LOCATION} - -DZLIB_LIBRARY=${ZLIB_LIBRARY} - - -DGLFW3_LOCATION=${INSTALL_LOCATION} - -DGLEW_LOCATION=${INSTALL_LOCATION} - -DILMBASE_LOCATION=${INSTALL_LOCATION} - -DOPENEXR_LOCATION=${INSTALL_LOCATION} - -DTBB_LOCATION=${INSTALL_LOCATION} - -DBLOSC_LOCATION=${INSTALL_LOCATION} - OPTIONS_RELEASE - -DTBB_LIBRARY_PATH=${LIB_LOCATION} - -DTbb_TBB_LIBRARY=${Tbb_TBB_LIBRARY} - -DTbb_TBBMALLOC_LIBRARY=${Tbb_TBBMALLOC_LIBRARY} - OPTIONS_DEBUG - -DTBB_LIBRARY_PATH=${LIB_LOCATION_DEBUG} - -DTbb_TBB_LIBRARY=${Tbb_TBB_LIBRARY_DEBUG} - -DTbb_TBBMALLOC_LIBRARY=${Tbb_TBBMALLOC_LIBRARY_DEBUG} + OPTIONS + -DOPENVDB_BUILD_UNITTESTS=OFF + -DOPENVDB_BUILD_PYTHON_MODULE=OFF + -DOPENVDB_ENABLE_3_ABI_COMPATIBLE=OFF + -DUSE_GLFW3=ON + -DOPENVDB_STATIC=${OPENVDB_STATIC} + -DOPENVDB_SHARED=${OPENVDB_SHARED} + -DOPENVDB_BUILD_TOOLS=${OPENVDB_BUILD_TOOLS} ) vcpkg_install_cmake() |
