Techt3o commited on
Commit
ab29fb0
·
verified ·
1 Parent(s): 6fd47d0

38b2e3f406705c1693b3a5d0252cf965a04ed3782ae7b7a853c21c9c9accef98

Browse files
Files changed (50) hide show
  1. third-party/DPVO/Pangolin/scripts/vcpkg/ports/pango/portfile.cmake +42 -0
  2. third-party/DPVO/Pangolin/scripts/vcpkg/ports/pango/vcpkg.json +36 -0
  3. third-party/DPVO/Pangolin/scripts/vcpkg/ports/pangolin/fix-build-error-in-vs2019.patch +13 -0
  4. third-party/DPVO/Pangolin/scripts/vcpkg/ports/pangolin/fix-cmake-version.patch +10 -0
  5. third-party/DPVO/Pangolin/scripts/vcpkg/ports/pangolin/fix-dependencies.patch +97 -0
  6. third-party/DPVO/Pangolin/scripts/vcpkg/ports/pangolin/fix-includepath-error.patch +13 -0
  7. third-party/DPVO/Pangolin/scripts/vcpkg/ports/pangolin/portfile.cmake +95 -0
  8. third-party/DPVO/Pangolin/scripts/vcpkg/ports/pangolin/usage +5 -0
  9. third-party/DPVO/Pangolin/scripts/vcpkg/ports/pangolin/vcpkg.json +131 -0
  10. third-party/DPVO/Pangolin/scripts/vcpkg/ports/pangomm/COPYING +515 -0
  11. third-party/DPVO/Pangolin/scripts/vcpkg/ports/pangomm/portfile.cmake +26 -0
  12. third-party/DPVO/Pangolin/scripts/vcpkg/ports/pangomm/vcpkg.json +27 -0
  13. third-party/DPVO/Pangolin/scripts/vcpkg/ports/parallel-hashmap/portfile.cmake +23 -0
  14. third-party/DPVO/Pangolin/scripts/vcpkg/ports/parallel-hashmap/vcpkg.json +12 -0
  15. third-party/DPVO/Pangolin/scripts/vcpkg/ports/parallelstl/fix-cmakelist.patch +32 -0
  16. third-party/DPVO/Pangolin/scripts/vcpkg/ports/parallelstl/portfile.cmake +28 -0
  17. third-party/DPVO/Pangolin/scripts/vcpkg/ports/parallelstl/vcpkg.json +10 -0
  18. third-party/DPVO/Pangolin/scripts/vcpkg/ports/paraview/add-tools-option.patch +15 -0
  19. third-party/DPVO/Pangolin/scripts/vcpkg/ports/paraview/catalyst_install.patch +24 -0
  20. third-party/DPVO/Pangolin/scripts/vcpkg/ports/paraview/cgns.patch +29 -0
  21. third-party/DPVO/Pangolin/scripts/vcpkg/ports/paraview/external_vtk.patch +150 -0
  22. third-party/DPVO/Pangolin/scripts/vcpkg/ports/paraview/portfile.cmake +186 -0
  23. third-party/DPVO/Pangolin/scripts/vcpkg/ports/paraview/python_include.patch +13 -0
  24. third-party/DPVO/Pangolin/scripts/vcpkg/ports/paraview/python_wrapper.patch +19 -0
  25. third-party/DPVO/Pangolin/scripts/vcpkg/ports/paraview/removedoublesymbols.patch +89 -0
  26. third-party/DPVO/Pangolin/scripts/vcpkg/ports/paraview/vcpkg.json +91 -0
  27. third-party/DPVO/Pangolin/scripts/vcpkg/ports/parmetis/fix-gklib-vs14-math.patch +11 -0
  28. third-party/DPVO/Pangolin/scripts/vcpkg/ports/parmetis/fix-libparmetis-cmakelist.patch +15 -0
  29. third-party/DPVO/Pangolin/scripts/vcpkg/ports/parmetis/fix-metis-vs14-math.patch +11 -0
  30. third-party/DPVO/Pangolin/scripts/vcpkg/ports/parmetis/fix-root-cmakelist-2.patch +18 -0
  31. third-party/DPVO/Pangolin/scripts/vcpkg/ports/parmetis/fix-root-cmakelist.patch +29 -0
  32. third-party/DPVO/Pangolin/scripts/vcpkg/ports/parmetis/portfile.cmake +36 -0
  33. third-party/DPVO/Pangolin/scripts/vcpkg/ports/parmetis/use_stdint.patch +22 -0
  34. third-party/DPVO/Pangolin/scripts/vcpkg/ports/parmetis/vcpkg.json +11 -0
  35. third-party/DPVO/Pangolin/scripts/vcpkg/ports/parquet/portfile.cmake +2 -0
  36. third-party/DPVO/Pangolin/scripts/vcpkg/ports/parquet/vcpkg.json +9 -0
  37. third-party/DPVO/Pangolin/scripts/vcpkg/ports/parson/CMakeLists.txt +19 -0
  38. third-party/DPVO/Pangolin/scripts/vcpkg/ports/parson/portfile.cmake +31 -0
  39. third-party/DPVO/Pangolin/scripts/vcpkg/ports/parson/vcpkg.json +6 -0
  40. third-party/DPVO/Pangolin/scripts/vcpkg/ports/pbc/linux.patch +45 -0
  41. third-party/DPVO/Pangolin/scripts/vcpkg/ports/pbc/portfile.cmake +113 -0
  42. third-party/DPVO/Pangolin/scripts/vcpkg/ports/pbc/vcpkg.json +18 -0
  43. third-party/DPVO/Pangolin/scripts/vcpkg/ports/pbc/windows.patch +130 -0
  44. third-party/DPVO/Pangolin/scripts/vcpkg/ports/pcapplusplus/CMakeLists.txt +106 -0
  45. third-party/DPVO/Pangolin/scripts/vcpkg/ports/pcapplusplus/portfile.cmake +23 -0
  46. third-party/DPVO/Pangolin/scripts/vcpkg/ports/pcapplusplus/vcpkg.json +26 -0
  47. third-party/DPVO/Pangolin/scripts/vcpkg/ports/pcg/portfile.cmake +12 -0
  48. third-party/DPVO/Pangolin/scripts/vcpkg/ports/pcg/vcpkg.json +6 -0
  49. third-party/DPVO/Pangolin/scripts/vcpkg/ports/pcl/add-gcc-version-check.patch +27 -0
  50. third-party/DPVO/Pangolin/scripts/vcpkg/ports/pcl/fix-check-sse.patch +25 -0
third-party/DPVO/Pangolin/scripts/vcpkg/ports/pango/portfile.cmake ADDED
@@ -0,0 +1,42 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ vcpkg_from_gitlab(
2
+ GITLAB_URL https://gitlab.gnome.org/
3
+ OUT_SOURCE_PATH SOURCE_PATH
4
+ REPO GNOME/pango
5
+ REF 37a427018c92a2bc679ef104097e07a619609c9c #v1.50.6
6
+ SHA512 4990022cae2130b4842d0d9d3161545c7214ac3dd445d85a7ec49b0a89e39319b404fecc66d4025965cd2407823c7476b937e6ee53e2e6763b35048db8ff387f
7
+ HEAD_REF master # branch name
8
+ )
9
+
10
+ vcpkg_configure_meson(
11
+ SOURCE_PATH ${SOURCE_PATH}
12
+ OPTIONS
13
+ -Dintrospection=disabled # Build the GObject introspection data for Pango
14
+ -Dfontconfig=enabled # Build with FontConfig support.
15
+ -Dsysprof=disabled # include tracing support for sysprof
16
+ -Dlibthai=disabled # Build with libthai support
17
+ -Dcairo=enabled # Build with cairo support
18
+ -Dxft=disabled # Build with xft support
19
+ -Dfreetype=enabled # Build with freetype support
20
+ -Dgtk_doc=false #Build API reference for Pango using GTK-Doc
21
+ ADDITIONAL_NATIVE_BINARIES glib-genmarshal='${CURRENT_HOST_INSTALLED_DIR}/tools/glib/glib-genmarshal'
22
+ glib-mkenums='${CURRENT_HOST_INSTALLED_DIR}/tools/glib/glib-mkenums'
23
+ ADDITIONAL_CROSS_BINARIES glib-genmarshal='${CURRENT_HOST_INSTALLED_DIR}/tools/glib/glib-genmarshal'
24
+ glib-mkenums='${CURRENT_HOST_INSTALLED_DIR}/tools/glib/glib-mkenums'
25
+ )
26
+
27
+ vcpkg_install_meson()
28
+ vcpkg_fixup_pkgconfig()
29
+ vcpkg_copy_pdbs()
30
+
31
+ vcpkg_copy_tools(TOOL_NAMES pango-view pango-list pango-segmentation AUTO_CLEAN)
32
+
33
+ file(INSTALL ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright)
34
+
35
+ set(_file "${CURRENT_PACKAGES_DIR}/debug/lib/pkgconfig/pango.pc")
36
+ if(EXISTS "${_file}")
37
+ vcpkg_replace_string("${_file}" [[-I"${includedir}/pango-1.0"]] [[-I"${includedir}/pango-1.0" -I"${includedir}/harfbuzz"]])
38
+ endif()
39
+ set(_file "${CURRENT_PACKAGES_DIR}/lib/pkgconfig/pango.pc")
40
+ if(EXISTS "${_file}")
41
+ vcpkg_replace_string("${_file}" [[-I"${includedir}/pango-1.0"]] [[-I"${includedir}/pango-1.0" -I"${includedir}/harfbuzz"]])
42
+ endif()
third-party/DPVO/Pangolin/scripts/vcpkg/ports/pango/vcpkg.json ADDED
@@ -0,0 +1,36 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "name": "pango",
3
+ "version": "1.50.6",
4
+ "description": "Text and font handling library.",
5
+ "homepage": "https://ftp.gnome.org/pub/GNOME/sources/pango/",
6
+ "license": "LGPL-2.0-only",
7
+ "dependencies": [
8
+ {
9
+ "name": "cairo",
10
+ "features": [
11
+ "gobject"
12
+ ]
13
+ },
14
+ "fontconfig",
15
+ "freetype",
16
+ "fribidi",
17
+ "gettext",
18
+ "glib",
19
+ {
20
+ "name": "glib",
21
+ "host": true
22
+ },
23
+ "harfbuzz",
24
+ {
25
+ "name": "harfbuzz",
26
+ "features": [
27
+ "coretext"
28
+ ],
29
+ "platform": "osx"
30
+ },
31
+ {
32
+ "name": "vcpkg-tool-meson",
33
+ "host": true
34
+ }
35
+ ]
36
+ }
third-party/DPVO/Pangolin/scripts/vcpkg/ports/pangolin/fix-build-error-in-vs2019.patch ADDED
@@ -0,0 +1,13 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ diff --git a/include/mpark/variant.hpp b/include/mpark/variant.hpp
2
+ index fb2cf06..6debb99 100644
3
+ --- a/include/mpark/variant.hpp
4
+ +++ b/include/mpark/variant.hpp
5
+ @@ -243,7 +243,7 @@ namespace std {
6
+ #endif
7
+
8
+ #if defined(__cpp_constexpr) && __cpp_constexpr >= 201304
9
+ -#define MPARK_CPP14_CONSTEXPR
10
+ +//#define MPARK_CPP14_CONSTEXPR
11
+ #endif
12
+
13
+ #if __has_feature(cxx_exceptions) || defined(__cpp_exceptions) || \
third-party/DPVO/Pangolin/scripts/vcpkg/ports/pangolin/fix-cmake-version.patch ADDED
@@ -0,0 +1,10 @@
 
 
 
 
 
 
 
 
 
 
 
1
+ diff --git a/CMakeLists.txt b/CMakeLists.txt
2
+ index 0e13110..6adf1e2 100644
3
+ --- a/CMakeLists.txt
4
+ +++ b/CMakeLists.txt
5
+ @@ -1,4 +1,4 @@
6
+ -cmake_minimum_required(VERSION 2.8.12)
7
+ +cmake_minimum_required(VERSION 3.8)
8
+ project("Pangolin")
9
+ set(PANGOLIN_VERSION_MAJOR 0)
10
+ set(PANGOLIN_VERSION_MINOR 6)
third-party/DPVO/Pangolin/scripts/vcpkg/ports/pangolin/fix-dependencies.patch ADDED
@@ -0,0 +1,97 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ diff --git a/include/pangolin/gl/colour.h b/include/pangolin/gl/colour.h
2
+ index 92bedf4..8c3e542 100644
3
+ --- a/include/pangolin/gl/colour.h
4
+ +++ b/include/pangolin/gl/colour.h
5
+ @@ -28,6 +28,7 @@
6
+ #pragma once
7
+
8
+ #include <cmath>
9
+ +#include <limits>
10
+
11
+ #include <stdexcept>
12
+
13
+ diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
14
+ index ddeb144..ee27d57 100644
15
+ --- a/src/CMakeLists.txt
16
+ +++ b/src/CMakeLists.txt
17
+ @@ -299,7 +299,9 @@ if(BUILD_PANGOLIN_PYTHON AND BUILD_PANGOLIN_GUI AND BUILD_PANGOLIN_VARS AND NOT
18
+
19
+ if(pybind11_FOUND)
20
+ set(HAVE_PYTHON 1)
21
+ -
22
+ + if (UNIX)
23
+ + set(PYTHON_LIBRARY ${PYTHON_LIBRARY} dl util)
24
+ + endif()
25
+ file(GLOB pypangolin_SRC "python/pypangolin/*.cpp" )
26
+ file(GLOB pypangolin_HDR "python/pypangolin/*.hpp" )
27
+ list(APPEND HEADERS
28
+ @@ -382,6 +384,7 @@ endif()
29
+
30
+ option(BUILD_PANGOLIN_FFMPEG "Build support for ffmpeg video input" ON)
31
+ if(BUILD_PANGOLIN_FFMPEG AND BUILD_PANGOLIN_VIDEO)
32
+ + add_definitions(-DHAVE_FFMPEG_AVPIXELFORMAT)
33
+ find_package(FFMPEG QUIET)
34
+ if(FFMPEG_FOUND)
35
+ set(HAVE_FFMPEG 1)
36
+ @@ -464,11 +467,14 @@ endif()
37
+
38
+ option(BUILD_PANGOLIN_LIBUVC "Build support for libuvc video input" ON)
39
+ if(BUILD_PANGOLIN_LIBUVC AND BUILD_PANGOLIN_VIDEO)
40
+ - find_package(uvc QUIET)
41
+ - if(uvc_FOUND)
42
+ + find_package(libuvc CONFIG QUIET)
43
+ + if(libuvc_FOUND)
44
+ set(HAVE_UVC 1)
45
+ - list(APPEND INTERNAL_INC ${uvc_INCLUDE_DIRS} )
46
+ - list(APPEND LINK_LIBS ${uvc_LIBRARIES} )
47
+ + if (TARGET LibUVC::UVCShared)
48
+ + list(APPEND LINK_LIBS LibUVC::UVCShared )
49
+ + else()
50
+ + list(APPEND LINK_LIBS LibUVC::UVCStatic )
51
+ + endif()
52
+ list(APPEND HEADERS ${INCDIR}/video/drivers/uvc.h )
53
+ list(APPEND SOURCES video/drivers/uvc.cpp)
54
+ list(APPEND VIDEO_FACTORY_REG RegisterUvcVideoFactory )
55
+ @@ -584,11 +590,10 @@ endif()
56
+
57
+ option(BUILD_PANGOLIN_LIBOPENEXR "Build support for libopenexr image input" ON)
58
+ if(BUILD_PANGOLIN_LIBOPENEXR)
59
+ - find_package(OpenEXR QUIET)
60
+ + find_package(OpenEXR CONFIG QUIET)
61
+ if(OpenEXR_FOUND)
62
+ set(HAVE_OPENEXR 1)
63
+ - list(APPEND INTERNAL_INC ${OpenEXR_INCLUDE_DIR} )
64
+ - list(APPEND LINK_LIBS ${OpenEXR_LIBRARY} )
65
+ + list(APPEND LINK_LIBS OpenEXR::IlmImf OpenEXR::IlmImfUtil OpenEXR::IlmImfConfig )
66
+ message(STATUS "libopenexr Found and Enabled")
67
+ endif()
68
+ endif()
69
+ @@ -630,6 +635,13 @@ endif()
70
+
71
+ set(INSTALL_INCLUDE_DIR "include")
72
+
73
+ +# Required by geometry
74
+ +if(NOT BUILD_EXTERN_GLEW)
75
+ + find_package(GLEW REQUIRED)
76
+ +endif()
77
+ +list(APPEND USER_INC ${GLEW_INCLUDE_DIR})
78
+ +list(APPEND LINK_LIBS ${GLEW_LIBRARY})
79
+ +
80
+ add_library(${LIBRARY_NAME} ${SOURCES} ${HEADERS})
81
+ # 'System' includes shield us from warnings in those includes.
82
+ target_include_directories(${LIBRARY_NAME} SYSTEM PUBLIC ${USER_INC} PRIVATE ${INTERNAL_INC})
83
+ @@ -692,7 +704,13 @@ CreateMethodCallFile(
84
+ option(BUILD_PYPANGOLIN_MODULE "Python wrapper for Pangolin" ON)
85
+ if(BUILD_PYPANGOLIN_MODULE AND HAVE_PYTHON )
86
+ file(GLOB pypangolin_SRC "python/pypangolin/*.hpp" "python/pypangolin/*.cpp" "python/pypangolin_module.cpp")
87
+ - pybind11_add_module(pypangolin ${pypangolin_SRC})
88
+ + if (BUILD_SHARED_LIBS)
89
+ + set(PYBIND11_MODULE_TYPE SHARED)
90
+ + else()
91
+ + set(PYBIND11_MODULE_TYPE STATIC)
92
+ + endif()
93
+ +
94
+ + pybind11_add_module(pypangolin ${PYBIND11_MODULE_TYPE} ${pypangolin_SRC})
95
+ target_link_libraries(pypangolin PRIVATE ${LIBRARY_NAME})
96
+ target_include_directories(pypangolin PRIVATE "${USER_INC}")
97
+ endif()
third-party/DPVO/Pangolin/scripts/vcpkg/ports/pangolin/fix-includepath-error.patch ADDED
@@ -0,0 +1,13 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
2
+ index a2c60ea..ddeb144 100644
3
+ --- a/src/CMakeLists.txt
4
+ +++ b/src/CMakeLists.txt
5
+ @@ -735,7 +735,7 @@ configure_file( ${CMAKE_CURRENT_SOURCE_DIR}/${PROJECT_NAME}Config.cmake.in
6
+ ${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}Config.cmake @ONLY IMMEDIATE )
7
+
8
+ # Install tree config
9
+ -set( EXPORT_LIB_INC_DIR "\${PROJECT_CMAKE_DIR}/${REL_INCLUDE_DIR}" )
10
+ +set( EXPORT_LIB_INC_DIR "\${PROJECT_CMAKE_DIR}/../../include" )
11
+ configure_file( ${CMAKE_CURRENT_SOURCE_DIR}/${PROJECT_NAME}Config.cmake.in
12
+ ${CMAKE_CURRENT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/${PROJECT_NAME}Config.cmake @ONLY )
13
+
third-party/DPVO/Pangolin/scripts/vcpkg/ports/pangolin/portfile.cmake ADDED
@@ -0,0 +1,95 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+
2
+ if(VCPKG_TARGET_IS_WINDOWS)
3
+ vcpkg_check_linkage(ONLY_STATIC_LIBRARY)
4
+ endif()
5
+
6
+ vcpkg_from_github(
7
+ OUT_SOURCE_PATH SOURCE_PATH
8
+ REPO stevenlovegrove/Pangolin
9
+ REF dd801d244db3a8e27b7fe8020cd751404aa818fd #v0.6
10
+ SHA512 8004ab6f146f319df41e4b8d4bdb6677b8faf6db725e34fea76fcbf065522fa286d334c2426dcb39faf0cfb3332946104f78393d2b2b2418fe02d91450916e78
11
+ HEAD_REF master
12
+ PATCHES
13
+ fix-includepath-error.patch # include path has one more ../
14
+ fix-cmake-version.patch
15
+ fix-build-error-in-vs2019.patch
16
+ fix-dependencies.patch
17
+ )
18
+
19
+ vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS
20
+ FEATURES
21
+ test BUILD_TESTS
22
+ tools BUILD_TOOLS
23
+ examples BUILD_EXAMPLES
24
+ gui BUILD_PANGOLIN_GUI
25
+ vars BUILD_PANGOLIN_VARS
26
+ video BUILD_PANGOLIN_VIDEO
27
+ pybind11 BUILD_PANGOLIN_PYTHON
28
+ eigen BUILD_PANGOLIN_EIGEN
29
+ ffmpeg BUILD_PANGOLIN_FFMPEG
30
+ realsense BUILD_PANGOLIN_LIBREALSENSE2
31
+ openni2 BUILD_PANGOLIN_OPENNI2
32
+ uvc BUILD_PANGOLIN_LIBUVC
33
+ png BUILD_PANGOLIN_LIBPNG
34
+ jpeg BUILD_PANGOLIN_LIBJPEG
35
+ tiff BUILD_PANGOLIN_LIBTIFF
36
+ openexr BUILD_PANGOLIN_LIBOPENEXR
37
+ zstd BUILD_PANGOLIN_ZSTD
38
+ lz4 BUILD_PANGOLIN_LZ4
39
+ module BUILD_PYPANGOLIN_MODULE
40
+ )
41
+
42
+ file(REMOVE "${SOURCE_PATH}/CMakeModules/FindGLEW.cmake")
43
+ file(REMOVE "${SOURCE_PATH}/CMakeModules/FindFFMPEG.cmake")
44
+
45
+ string(COMPARE EQUAL "${VCPKG_CRT_LINKAGE}" "static" MSVC_USE_STATIC_CRT)
46
+
47
+ vcpkg_cmake_configure(
48
+ SOURCE_PATH "${SOURCE_PATH}"
49
+ OPTIONS ${FEATURE_OPTIONS}
50
+ -DBUILD_EXTERN_GLEW=OFF
51
+ -DBUILD_EXTERN_LIBPNG=OFF
52
+ -DBUILD_EXTERN_LIBJPEG=OFF
53
+ -DBUILD_PANGOLIN_PLEORA=OFF
54
+ -DBUILD_PANGOLIN_TELICAM=OFF
55
+ -DBUILD_PANGOLIN_DEPTHSENSE=OFF
56
+ -DBUILD_PANGOLIN_OPENNI=OFF
57
+ -DBUILD_PANGOLIN_UVC_MEDIAFOUNDATION=OFF
58
+ -DBUILD_PANGOLIN_LIBREALSENSE=OFF
59
+ -DBUILD_PANGOLIN_V4L=OFF
60
+ -DBUILD_PANGOLIN_LIBDC1394=OFF
61
+ -DBUILD_PANGOLIN_TOON=OFF
62
+ -DDISPLAY_WAYLAND=OFF
63
+ -DDISPLAY_X11=OFF
64
+ -DBUILD_FOR_GLES_2=OFF
65
+ -DMSVC_USE_STATIC_CRT=${MSVC_USE_STATIC_CRT}
66
+ MAYBE_UNUSED_VARIABLES
67
+ MSVC_USE_STATIC_CRT
68
+ BUILD_FOR_GLES_2
69
+ )
70
+
71
+ vcpkg_cmake_install()
72
+
73
+ vcpkg_cmake_config_fixup(CONFIG_PATH lib/cmake/Pangolin)
74
+ vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/share/pangolin/PangolinConfig.cmake" "SET( Pangolin_CMAKEMODULES ${SOURCE_PATH}/src/../CMakeModules )" "")
75
+
76
+ vcpkg_copy_pdbs()
77
+
78
+ file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include")
79
+
80
+ if("tools" IN_LIST FEATURES)
81
+ vcpkg_copy_tools(TOOL_NAMES Plotter VideoConvert VideoJsonPrint VideoJsonTransform VideoViewer AUTO_CLEAN)
82
+ endif()
83
+
84
+ if(VCPKG_LIBRARY_LINKAGE STREQUAL "static")
85
+ file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/bin" "${CURRENT_PACKAGES_DIR}/debug/bin")
86
+ endif()
87
+
88
+ if(VCPKG_TARGET_IS_WINDOWS)
89
+ # Copy missing header file
90
+ file(COPY "${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg/src/include/pangolin/pangolin_export.h" DESTINATION "${CURRENT_PACKAGES_DIR}/include/pangolin")
91
+ endif()
92
+
93
+ # Put the license file where vcpkg expects it
94
+ file(COPY "${CURRENT_PORT_DIR}/usage" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}")
95
+ file(INSTALL "${SOURCE_PATH}/LICENCE" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright)
third-party/DPVO/Pangolin/scripts/vcpkg/ports/pangolin/usage ADDED
@@ -0,0 +1,5 @@
 
 
 
 
 
 
1
+ The package pangolin is compatible with built-in CMake targets:
2
+
3
+ find_package(Pangolin CONFIG REQUIRED)
4
+ target_link_libraries(main PRIVATE pangolin)
5
+ target_include_directories(main PRIVATE ${Pangolin_INCLUDE_DIRS})
third-party/DPVO/Pangolin/scripts/vcpkg/ports/pangolin/vcpkg.json ADDED
@@ -0,0 +1,131 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "name": "pangolin",
3
+ "version": "0.6",
4
+ "port-version": 2,
5
+ "description": "Lightweight GUI Library",
6
+ "homepage": "https://github.com/stevenlovegrove/Pangolin",
7
+ "supports": "!uwp",
8
+ "dependencies": [
9
+ "glew",
10
+ {
11
+ "name": "vcpkg-cmake",
12
+ "host": true
13
+ },
14
+ {
15
+ "name": "vcpkg-cmake-config",
16
+ "host": true
17
+ }
18
+ ],
19
+ "default-features": [
20
+ "eigen",
21
+ "ffmpeg",
22
+ "gui",
23
+ "jpeg",
24
+ "png",
25
+ "vars",
26
+ "video"
27
+ ],
28
+ "features": {
29
+ "eigen": {
30
+ "description": "Build support for Eigen matrix types",
31
+ "dependencies": [
32
+ "eigen3"
33
+ ]
34
+ },
35
+ "examples": {
36
+ "description": "Build Examples"
37
+ },
38
+ "ffmpeg": {
39
+ "description": "Build support for ffmpeg video input",
40
+ "dependencies": [
41
+ {
42
+ "name": "ffmpeg",
43
+ "features": [
44
+ "avformat"
45
+ ]
46
+ }
47
+ ]
48
+ },
49
+ "gui": {
50
+ "description": "Build support for Pangolin GUI"
51
+ },
52
+ "jpeg": {
53
+ "description": "Build support for libjpeg image input",
54
+ "dependencies": [
55
+ "libjpeg-turbo"
56
+ ]
57
+ },
58
+ "lz4": {
59
+ "description": "Build support for liblz4 compression",
60
+ "dependencies": [
61
+ "lz4"
62
+ ]
63
+ },
64
+ "module": {
65
+ "description": "Python wrapper for Pangolin",
66
+ "dependencies": [
67
+ "python3"
68
+ ]
69
+ },
70
+ "openexr": {
71
+ "description": "Build support for libopenexr image input",
72
+ "dependencies": [
73
+ "openexr"
74
+ ]
75
+ },
76
+ "openni2": {
77
+ "description": "Build support for OpenNI2 video input",
78
+ "dependencies": [
79
+ "openni2"
80
+ ]
81
+ },
82
+ "png": {
83
+ "description": "Build support for libpng image input",
84
+ "dependencies": [
85
+ "libpng"
86
+ ]
87
+ },
88
+ "pybind11": {
89
+ "description": "Build support for Pangolin Interactive Console",
90
+ "dependencies": [
91
+ "pybind11"
92
+ ]
93
+ },
94
+ "realsense": {
95
+ "description": "Build support for LibRealSense2 video input",
96
+ "dependencies": [
97
+ "realsense2"
98
+ ]
99
+ },
100
+ "test": {
101
+ "description": "Build Tests"
102
+ },
103
+ "tiff": {
104
+ "description": "Build support for libtiff image input",
105
+ "dependencies": [
106
+ "tiff"
107
+ ]
108
+ },
109
+ "tools": {
110
+ "description": "Build Tools"
111
+ },
112
+ "uvc": {
113
+ "description": "Build support for MediaFoundation UVC input",
114
+ "dependencies": [
115
+ "libuvc"
116
+ ]
117
+ },
118
+ "vars": {
119
+ "description": "Build support for Pangolin Vars"
120
+ },
121
+ "video": {
122
+ "description": "Build support for Pangolin Video Utilities"
123
+ },
124
+ "zstd": {
125
+ "description": "Build support for libzstd compression",
126
+ "dependencies": [
127
+ "zstd"
128
+ ]
129
+ }
130
+ }
131
+ }
third-party/DPVO/Pangolin/scripts/vcpkg/ports/pangomm/COPYING ADDED
@@ -0,0 +1,515 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+
2
+ GNU LESSER GENERAL PUBLIC LICENSE
3
+ Version 2.1, February 1999
4
+
5
+ Copyright (C) 1991, 1999 Free Software Foundation, Inc.
6
+ 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
7
+ Everyone is permitted to copy and distribute verbatim copies
8
+ of this license document, but changing it is not allowed.
9
+
10
+ [This is the first released version of the Lesser GPL. It also counts
11
+ as the successor of the GNU Library Public License, version 2, hence
12
+ the version number 2.1.]
13
+
14
+ Preamble
15
+
16
+ The licenses for most software are designed to take away your
17
+ freedom to share and change it. By contrast, the GNU General Public
18
+ Licenses are intended to guarantee your freedom to share and change
19
+ free software--to make sure the software is free for all its users.
20
+
21
+ This license, the Lesser General Public License, applies to some
22
+ specially designated software packages--typically libraries--of the
23
+ Free Software Foundation and other authors who decide to use it. You
24
+ can use it too, but we suggest you first think carefully about whether
25
+ this license or the ordinary General Public License is the better
26
+ strategy to use in any particular case, based on the explanations
27
+ below.
28
+
29
+ When we speak of free software, we are referring to freedom of use,
30
+ not price. Our General Public Licenses are designed to make sure that
31
+ you have the freedom to distribute copies of free software (and charge
32
+ for this service if you wish); that you receive source code or can get
33
+ it if you want it; that you can change the software and use pieces of
34
+ it in new free programs; and that you are informed that you can do
35
+ these things.
36
+
37
+ To protect your rights, we need to make restrictions that forbid
38
+ distributors to deny you these rights or to ask you to surrender these
39
+ rights. These restrictions translate to certain responsibilities for
40
+ you if you distribute copies of the library or if you modify it.
41
+
42
+ For example, if you distribute copies of the library, whether gratis
43
+ or for a fee, you must give the recipients all the rights that we gave
44
+ you. You must make sure that they, too, receive or can get the source
45
+ code. If you link other code with the library, you must provide
46
+ complete object files to the recipients, so that they can relink them
47
+ with the library after making changes to the library and recompiling
48
+ it. And you must show them these terms so they know their rights.
49
+
50
+ We protect your rights with a two-step method: (1) we copyright the
51
+ library, and (2) we offer you this license, which gives you legal
52
+ permission to copy, distribute and/or modify the library.
53
+
54
+ To protect each distributor, we want to make it very clear that
55
+ there is no warranty for the free library. Also, if the library is
56
+ modified by someone else and passed on, the recipients should know
57
+ that what they have is not the original version, so that the original
58
+ author's reputation will not be affected by problems that might be
59
+ introduced by others.
60
+ ^L
61
+ Finally, software patents pose a constant threat to the existence of
62
+ any free program. We wish to make sure that a company cannot
63
+ effectively restrict the users of a free program by obtaining a
64
+ restrictive license from a patent holder. Therefore, we insist that
65
+ any patent license obtained for a version of the library must be
66
+ consistent with the full freedom of use specified in this license.
67
+
68
+ Most GNU software, including some libraries, is covered by the
69
+ ordinary GNU General Public License. This license, the GNU Lesser
70
+ General Public License, applies to certain designated libraries, and
71
+ is quite different from the ordinary General Public License. We use
72
+ this license for certain libraries in order to permit linking those
73
+ libraries into non-free programs.
74
+
75
+ When a program is linked with a library, whether statically or using
76
+ a shared library, the combination of the two is legally speaking a
77
+ combined work, a derivative of the original library. The ordinary
78
+ General Public License therefore permits such linking only if the
79
+ entire combination fits its criteria of freedom. The Lesser General
80
+ Public License permits more lax criteria for linking other code with
81
+ the library.
82
+
83
+ We call this license the "Lesser" General Public License because it
84
+ does Less to protect the user's freedom than the ordinary General
85
+ Public License. It also provides other free software developers Less
86
+ of an advantage over competing non-free programs. These disadvantages
87
+ are the reason we use the ordinary General Public License for many
88
+ libraries. However, the Lesser license provides advantages in certain
89
+ special circumstances.
90
+
91
+ For example, on rare occasions, there may be a special need to
92
+ encourage the widest possible use of a certain library, so that it
93
+ becomes
94
+ a de-facto standard. To achieve this, non-free programs must be
95
+ allowed to use the library. A more frequent case is that a free
96
+ library does the same job as widely used non-free libraries. In this
97
+ case, there is little to gain by limiting the free library to free
98
+ software only, so we use the Lesser General Public License.
99
+
100
+ In other cases, permission to use a particular library in non-free
101
+ programs enables a greater number of people to use a large body of
102
+ free software. For example, permission to use the GNU C Library in
103
+ non-free programs enables many more people to use the whole GNU
104
+ operating system, as well as its variant, the GNU/Linux operating
105
+ system.
106
+
107
+ Although the Lesser General Public License is Less protective of the
108
+ users' freedom, it does ensure that the user of a program that is
109
+ linked with the Library has the freedom and the wherewithal to run
110
+ that program using a modified version of the Library.
111
+
112
+ The precise terms and conditions for copying, distribution and
113
+ modification follow. Pay close attention to the difference between a
114
+ "work based on the library" and a "work that uses the library". The
115
+ former contains code derived from the library, whereas the latter must
116
+ be combined with the library in order to run.
117
+ ^L
118
+ GNU LESSER GENERAL PUBLIC LICENSE
119
+ TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
120
+
121
+ 0. This License Agreement applies to any software library or other
122
+ program which contains a notice placed by the copyright holder or
123
+ other authorized party saying it may be distributed under the terms of
124
+ this Lesser General Public License (also called "this License").
125
+ Each licensee is addressed as "you".
126
+
127
+ A "library" means a collection of software functions and/or data
128
+ prepared so as to be conveniently linked with application programs
129
+ (which use some of those functions and data) to form executables.
130
+
131
+ The "Library", below, refers to any such software library or work
132
+ which has been distributed under these terms. A "work based on the
133
+ Library" means either the Library or any derivative work under
134
+ copyright law: that is to say, a work containing the Library or a
135
+ portion of it, either verbatim or with modifications and/or translated
136
+ straightforwardly into another language. (Hereinafter, translation is
137
+ included without limitation in the term "modification".)
138
+
139
+ "Source code" for a work means the preferred form of the work for
140
+ making modifications to it. For a library, complete source code means
141
+ all the source code for all modules it contains, plus any associated
142
+ interface definition files, plus the scripts used to control
143
+ compilation
144
+ and installation of the library.
145
+
146
+ Activities other than copying, distribution and modification are not
147
+ covered by this License; they are outside its scope. The act of
148
+ running a program using the Library is not restricted, and output from
149
+ such a program is covered only if its contents constitute a work based
150
+ on the Library (independent of the use of the Library in a tool for
151
+ writing it). Whether that is true depends on what the Library does
152
+ and what the program that uses the Library does.
153
+
154
+ 1. You may copy and distribute verbatim copies of the Library's
155
+ complete source code as you receive it, in any medium, provided that
156
+ you conspicuously and appropriately publish on each copy an
157
+ appropriate copyright notice and disclaimer of warranty; keep intact
158
+ all the notices that refer to this License and to the absence of any
159
+ warranty; and distribute a copy of this License along with the
160
+ Library.
161
+
162
+ You may charge a fee for the physical act of transferring a copy,
163
+ and you may at your option offer warranty protection in exchange for a
164
+ fee.
165
+
166
+ 2. You may modify your copy or copies of the Library or any portion
167
+ of it, thus forming a work based on the Library, and copy and
168
+ distribute such modifications or work under the terms of Section 1
169
+ above, provided that you also meet all of these conditions:
170
+
171
+ a) The modified work must itself be a software library.
172
+
173
+ b) You must cause the files modified to carry prominent notices
174
+ stating that you changed the files and the date of any change.
175
+
176
+ c) You must cause the whole of the work to be licensed at no
177
+ charge to all third parties under the terms of this License.
178
+
179
+ d) If a facility in the modified Library refers to a function or a
180
+ table of data to be supplied by an application program that uses
181
+ the facility, other than as an argument passed when the facility
182
+ is invoked, then you must make a good faith effort to ensure that,
183
+ in the event an application does not supply such function or
184
+ table, the facility still operates, and performs whatever part of
185
+ its purpose remains meaningful.
186
+
187
+ (For example, a function in a library to compute square roots has
188
+ a purpose that is entirely well-defined independent of the
189
+ application. Therefore, Subsection 2d requires that any
190
+ application-supplied function or table used by this function must
191
+ be optional: if the application does not supply it, the square
192
+ root function must still compute square roots.)
193
+
194
+ These requirements apply to the modified work as a whole. If
195
+ identifiable sections of that work are not derived from the Library,
196
+ and can be reasonably considered independent and separate works in
197
+ themselves, then this License, and its terms, do not apply to those
198
+ sections when you distribute them as separate works. But when you
199
+ distribute the same sections as part of a whole which is a work based
200
+ on the Library, the distribution of the whole must be on the terms of
201
+ this License, whose permissions for other licensees extend to the
202
+ entire whole, and thus to each and every part regardless of who wrote
203
+ it.
204
+
205
+ Thus, it is not the intent of this section to claim rights or contest
206
+ your rights to work written entirely by you; rather, the intent is to
207
+ exercise the right to control the distribution of derivative or
208
+ collective works based on the Library.
209
+
210
+ In addition, mere aggregation of another work not based on the Library
211
+ with the Library (or with a work based on the Library) on a volume of
212
+ a storage or distribution medium does not bring the other work under
213
+ the scope of this License.
214
+
215
+ 3. You may opt to apply the terms of the ordinary GNU General Public
216
+ License instead of this License to a given copy of the Library. To do
217
+ this, you must alter all the notices that refer to this License, so
218
+ that they refer to the ordinary GNU General Public License, version 2,
219
+ instead of to this License. (If a newer version than version 2 of the
220
+ ordinary GNU General Public License has appeared, then you can specify
221
+ that version instead if you wish.) Do not make any other change in
222
+ these notices.
223
+ ^L
224
+ Once this change is made in a given copy, it is irreversible for
225
+ that copy, so the ordinary GNU General Public License applies to all
226
+ subsequent copies and derivative works made from that copy.
227
+
228
+ This option is useful when you wish to copy part of the code of
229
+ the Library into a program that is not a library.
230
+
231
+ 4. You may copy and distribute the Library (or a portion or
232
+ derivative of it, under Section 2) in object code or executable form
233
+ under the terms of Sections 1 and 2 above provided that you accompany
234
+ it with the complete corresponding machine-readable source code, which
235
+ must be distributed under the terms of Sections 1 and 2 above on a
236
+ medium customarily used for software interchange.
237
+
238
+ If distribution of object code is made by offering access to copy
239
+ from a designated place, then offering equivalent access to copy the
240
+ source code from the same place satisfies the requirement to
241
+ distribute the source code, even though third parties are not
242
+ compelled to copy the source along with the object code.
243
+
244
+ 5. A program that contains no derivative of any portion of the
245
+ Library, but is designed to work with the Library by being compiled or
246
+ linked with it, is called a "work that uses the Library". Such a
247
+ work, in isolation, is not a derivative work of the Library, and
248
+ therefore falls outside the scope of this License.
249
+
250
+ However, linking a "work that uses the Library" with the Library
251
+ creates an executable that is a derivative of the Library (because it
252
+ contains portions of the Library), rather than a "work that uses the
253
+ library". The executable is therefore covered by this License.
254
+ Section 6 states terms for distribution of such executables.
255
+
256
+ When a "work that uses the Library" uses material from a header file
257
+ that is part of the Library, the object code for the work may be a
258
+ derivative work of the Library even though the source code is not.
259
+ Whether this is true is especially significant if the work can be
260
+ linked without the Library, or if the work is itself a library. The
261
+ threshold for this to be true is not precisely defined by law.
262
+
263
+ If such an object file uses only numerical parameters, data
264
+ structure layouts and accessors, and small macros and small inline
265
+ functions (ten lines or less in length), then the use of the object
266
+ file is unrestricted, regardless of whether it is legally a derivative
267
+ work. (Executables containing this object code plus portions of the
268
+ Library will still fall under Section 6.)
269
+
270
+ Otherwise, if the work is a derivative of the Library, you may
271
+ distribute the object code for the work under the terms of Section 6.
272
+ Any executables containing that work also fall under Section 6,
273
+ whether or not they are linked directly with the Library itself.
274
+ ^L
275
+ 6. As an exception to the Sections above, you may also combine or
276
+ link a "work that uses the Library" with the Library to produce a
277
+ work containing portions of the Library, and distribute that work
278
+ under terms of your choice, provided that the terms permit
279
+ modification of the work for the customer's own use and reverse
280
+ engineering for debugging such modifications.
281
+
282
+ You must give prominent notice with each copy of the work that the
283
+ Library is used in it and that the Library and its use are covered by
284
+ this License. You must supply a copy of this License. If the work
285
+ during execution displays copyright notices, you must include the
286
+ copyright notice for the Library among them, as well as a reference
287
+ directing the user to the copy of this License. Also, you must do one
288
+ of these things:
289
+
290
+ a) Accompany the work with the complete corresponding
291
+ machine-readable source code for the Library including whatever
292
+ changes were used in the work (which must be distributed under
293
+ Sections 1 and 2 above); and, if the work is an executable linked
294
+ with the Library, with the complete machine-readable "work that
295
+ uses the Library", as object code and/or source code, so that the
296
+ user can modify the Library and then relink to produce a modified
297
+ executable containing the modified Library. (It is understood
298
+ that the user who changes the contents of definitions files in the
299
+ Library will not necessarily be able to recompile the application
300
+ to use the modified definitions.)
301
+
302
+ b) Use a suitable shared library mechanism for linking with the
303
+ Library. A suitable mechanism is one that (1) uses at run time a
304
+ copy of the library already present on the user's computer system,
305
+ rather than copying library functions into the executable, and (2)
306
+ will operate properly with a modified version of the library, if
307
+ the user installs one, as long as the modified version is
308
+ interface-compatible with the version that the work was made with.
309
+
310
+ c) Accompany the work with a written offer, valid for at
311
+ least three years, to give the same user the materials
312
+ specified in Subsection 6a, above, for a charge no more
313
+ than the cost of performing this distribution.
314
+
315
+ d) If distribution of the work is made by offering access to copy
316
+ from a designated place, offer equivalent access to copy the above
317
+ specified materials from the same place.
318
+
319
+ e) Verify that the user has already received a copy of these
320
+ materials or that you have already sent this user a copy.
321
+
322
+ For an executable, the required form of the "work that uses the
323
+ Library" must include any data and utility programs needed for
324
+ reproducing the executable from it. However, as a special exception,
325
+ the materials to be distributed need not include anything that is
326
+ normally distributed (in either source or binary form) with the major
327
+ components (compiler, kernel, and so on) of the operating system on
328
+ which the executable runs, unless that component itself accompanies
329
+ the executable.
330
+
331
+ It may happen that this requirement contradicts the license
332
+ restrictions of other proprietary libraries that do not normally
333
+ accompany the operating system. Such a contradiction means you cannot
334
+ use both them and the Library together in an executable that you
335
+ distribute.
336
+ ^L
337
+ 7. You may place library facilities that are a work based on the
338
+ Library side-by-side in a single library together with other library
339
+ facilities not covered by this License, and distribute such a combined
340
+ library, provided that the separate distribution of the work based on
341
+ the Library and of the other library facilities is otherwise
342
+ permitted, and provided that you do these two things:
343
+
344
+ a) Accompany the combined library with a copy of the same work
345
+ based on the Library, uncombined with any other library
346
+ facilities. This must be distributed under the terms of the
347
+ Sections above.
348
+
349
+ b) Give prominent notice with the combined library of the fact
350
+ that part of it is a work based on the Library, and explaining
351
+ where to find the accompanying uncombined form of the same work.
352
+
353
+ 8. You may not copy, modify, sublicense, link with, or distribute
354
+ the Library except as expressly provided under this License. Any
355
+ attempt otherwise to copy, modify, sublicense, link with, or
356
+ distribute the Library is void, and will automatically terminate your
357
+ rights under this License. However, parties who have received copies,
358
+ or rights, from you under this License will not have their licenses
359
+ terminated so long as such parties remain in full compliance.
360
+
361
+ 9. You are not required to accept this License, since you have not
362
+ signed it. However, nothing else grants you permission to modify or
363
+ distribute the Library or its derivative works. These actions are
364
+ prohibited by law if you do not accept this License. Therefore, by
365
+ modifying or distributing the Library (or any work based on the
366
+ Library), you indicate your acceptance of this License to do so, and
367
+ all its terms and conditions for copying, distributing or modifying
368
+ the Library or works based on it.
369
+
370
+ 10. Each time you redistribute the Library (or any work based on the
371
+ Library), the recipient automatically receives a license from the
372
+ original licensor to copy, distribute, link with or modify the Library
373
+ subject to these terms and conditions. You may not impose any further
374
+ restrictions on the recipients' exercise of the rights granted herein.
375
+ You are not responsible for enforcing compliance by third parties with
376
+ this License.
377
+ ^L
378
+ 11. If, as a consequence of a court judgment or allegation of patent
379
+ infringement or for any other reason (not limited to patent issues),
380
+ conditions are imposed on you (whether by court order, agreement or
381
+ otherwise) that contradict the conditions of this License, they do not
382
+ excuse you from the conditions of this License. If you cannot
383
+ distribute so as to satisfy simultaneously your obligations under this
384
+ License and any other pertinent obligations, then as a consequence you
385
+ may not distribute the Library at all. For example, if a patent
386
+ license would not permit royalty-free redistribution of the Library by
387
+ all those who receive copies directly or indirectly through you, then
388
+ the only way you could satisfy both it and this License would be to
389
+ refrain entirely from distribution of the Library.
390
+
391
+ If any portion of this section is held invalid or unenforceable under
392
+ any particular circumstance, the balance of the section is intended to
393
+ apply, and the section as a whole is intended to apply in other
394
+ circumstances.
395
+
396
+ It is not the purpose of this section to induce you to infringe any
397
+ patents or other property right claims or to contest validity of any
398
+ such claims; this section has the sole purpose of protecting the
399
+ integrity of the free software distribution system which is
400
+ implemented by public license practices. Many people have made
401
+ generous contributions to the wide range of software distributed
402
+ through that system in reliance on consistent application of that
403
+ system; it is up to the author/donor to decide if he or she is willing
404
+ to distribute software through any other system and a licensee cannot
405
+ impose that choice.
406
+
407
+ This section is intended to make thoroughly clear what is believed to
408
+ be a consequence of the rest of this License.
409
+
410
+ 12. If the distribution and/or use of the Library is restricted in
411
+ certain countries either by patents or by copyrighted interfaces, the
412
+ original copyright holder who places the Library under this License
413
+ may add an explicit geographical distribution limitation excluding those
414
+ countries, so that distribution is permitted only in or among
415
+ countries not thus excluded. In such case, this License incorporates
416
+ the limitation as if written in the body of this License.
417
+
418
+ 13. The Free Software Foundation may publish revised and/or new
419
+ versions of the Lesser General Public License from time to time.
420
+ Such new versions will be similar in spirit to the present version,
421
+ but may differ in detail to address new problems or concerns.
422
+
423
+ Each version is given a distinguishing version number. If the Library
424
+ specifies a version number of this License which applies to it and
425
+ "any later version", you have the option of following the terms and
426
+ conditions either of that version or of any later version published by
427
+ the Free Software Foundation. If the Library does not specify a
428
+ license version number, you may choose any version ever published by
429
+ the Free Software Foundation.
430
+ ^L
431
+ 14. If you wish to incorporate parts of the Library into other free
432
+ programs whose distribution conditions are incompatible with these,
433
+ write to the author to ask for permission. For software which is
434
+ copyrighted by the Free Software Foundation, write to the Free
435
+ Software Foundation; we sometimes make exceptions for this. Our
436
+ decision will be guided by the two goals of preserving the free status
437
+ of all derivatives of our free software and of promoting the sharing
438
+ and reuse of software generally.
439
+
440
+ NO WARRANTY
441
+
442
+ 15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO
443
+ WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW.
444
+ EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR
445
+ OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY
446
+ KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE
447
+ IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
448
+ PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE
449
+ LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME
450
+ THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
451
+
452
+ 16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN
453
+ WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY
454
+ AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU
455
+ FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR
456
+ CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE
457
+ LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING
458
+ RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A
459
+ FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF
460
+ SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
461
+ DAMAGES.
462
+
463
+ END OF TERMS AND CONDITIONS
464
+ ^L
465
+ How to Apply These Terms to Your New Libraries
466
+
467
+ If you develop a new library, and you want it to be of the greatest
468
+ possible use to the public, we recommend making it free software that
469
+ everyone can redistribute and change. You can do so by permitting
470
+ redistribution under these terms (or, alternatively, under the terms
471
+ of the ordinary General Public License).
472
+
473
+ To apply these terms, attach the following notices to the library.
474
+ It is safest to attach them to the start of each source file to most
475
+ effectively convey the exclusion of warranty; and each file should
476
+ have at least the "copyright" line and a pointer to where the full
477
+ notice is found.
478
+
479
+
480
+ <one line to give the library's name and a brief idea of what it
481
+ does.>
482
+ Copyright (C) <year> <name of author>
483
+
484
+ This library is free software; you can redistribute it and/or
485
+ modify it under the terms of the GNU Lesser General Public
486
+ License as published by the Free Software Foundation; either
487
+ version 2 of the License, or (at your option) any later version.
488
+
489
+ This library is distributed in the hope that it will be useful,
490
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
491
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
492
+ Lesser General Public License for more details.
493
+
494
+ You should have received a copy of the GNU Lesser General Public
495
+ License along with this library; if not, write to the Free Software
496
+ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
497
+
498
+ Also add information on how to contact you by electronic and paper
499
+ mail.
500
+
501
+ You should also get your employer (if you work as a programmer) or
502
+ your
503
+ school, if any, to sign a "copyright disclaimer" for the library, if
504
+ necessary. Here is a sample; alter the names:
505
+
506
+ Yoyodyne, Inc., hereby disclaims all copyright interest in the
507
+ library `Frob' (a library for tweaking knobs) written by James
508
+ Random Hacker.
509
+
510
+ <signature of Ty Coon>, 1 April 1990
511
+ Ty Coon, President of Vice
512
+
513
+ That's all there is to it!
514
+
515
+
third-party/DPVO/Pangolin/scripts/vcpkg/ports/pangomm/portfile.cmake ADDED
@@ -0,0 +1,26 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ vcpkg_download_distfile(ARCHIVE
2
+ URLS "https://ftp.gnome.org/pub/GNOME/sources/pangomm/2.50/pangomm-2.50.0.tar.xz"
3
+ FILENAME "pangomm-2.50.0.tar.xz"
4
+ SHA512 844850db93b8c4dab19dd364e674ee3d61b2fcb8e020ab3d314f240065ee17aeceea21e9ddc438a7d09d56410e3f82147a57425f76bb01e26d82872934269477
5
+ )
6
+
7
+ vcpkg_extract_source_archive_ex(
8
+ OUT_SOURCE_PATH SOURCE_PATH
9
+ ARCHIVE ${ARCHIVE}
10
+ )
11
+
12
+ vcpkg_configure_meson(
13
+ SOURCE_PATH ${SOURCE_PATH}
14
+ OPTIONS
15
+ -Dmsvc14x-parallel-installable=false
16
+ ADDITIONAL_NATIVE_BINARIES glib-genmarshal='${CURRENT_HOST_INSTALLED_DIR}/tools/glib/glib-genmarshal'
17
+ glib-mkenums='${CURRENT_HOST_INSTALLED_DIR}/tools/glib/glib-mkenums'
18
+ ADDITIONAL_CROSS_BINARIES glib-genmarshal='${CURRENT_HOST_INSTALLED_DIR}/tools/glib/glib-genmarshal'
19
+ glib-mkenums='${CURRENT_HOST_INSTALLED_DIR}/tools/glib/glib-mkenums'
20
+ )
21
+
22
+ vcpkg_install_meson()
23
+ vcpkg_fixup_pkgconfig()
24
+ vcpkg_copy_pdbs()
25
+
26
+ file(INSTALL ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright)
third-party/DPVO/Pangolin/scripts/vcpkg/ports/pangomm/vcpkg.json ADDED
@@ -0,0 +1,27 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "name": "pangomm",
3
+ "version": "2.50.0",
4
+ "port-version": 1,
5
+ "description": "pangomm is the official C++ interface for the Pango font layout library. See, for instance, the Pango::Layout class.",
6
+ "homepage": "https://ftp.gnome.org/pub/GNOME/sources/pangomm",
7
+ "supports": "!arm",
8
+ "dependencies": [
9
+ "cairo",
10
+ "cairomm",
11
+ "fontconfig",
12
+ "freetype",
13
+ "gettext",
14
+ "glib",
15
+ {
16
+ "name": "glib",
17
+ "host": true
18
+ },
19
+ "glibmm",
20
+ "harfbuzz",
21
+ "pango",
22
+ {
23
+ "name": "vcpkg-tool-meson",
24
+ "host": true
25
+ }
26
+ ]
27
+ }
third-party/DPVO/Pangolin/scripts/vcpkg/ports/parallel-hashmap/portfile.cmake ADDED
@@ -0,0 +1,23 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ #header-only library
2
+
3
+ vcpkg_from_github(
4
+ OUT_SOURCE_PATH SOURCE_PATH
5
+ REPO greg7mdp/parallel-hashmap
6
+ REF 1.34
7
+ SHA512 3747422e80406aa77b009adee3c16325640dd1044560882fb881dac5ef4109f7d165d26ed7e64002c9285275f95962725ce20c918da12c0c113999c8ca3c7429
8
+ HEAD_REF master
9
+ )
10
+
11
+ # Use greg7mdp/parallel-hashmap's own build process, skipping examples and tests
12
+ vcpkg_cmake_configure(
13
+ SOURCE_PATH "${SOURCE_PATH}"
14
+ )
15
+ vcpkg_cmake_install()
16
+
17
+ # Delete redundant directories
18
+ file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/lib ${CURRENT_PACKAGES_DIR}/debug ${CURRENT_PACKAGES_DIR}/share/doc)
19
+
20
+ file(COPY ${SOURCE_PATH}/phmap.natvis DESTINATION ${CURRENT_PACKAGES_DIR}/include)
21
+
22
+ # Put the licence file where vcpkg expects it
23
+ file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright)
third-party/DPVO/Pangolin/scripts/vcpkg/ports/parallel-hashmap/vcpkg.json ADDED
@@ -0,0 +1,12 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "name": "parallel-hashmap",
3
+ "version": "1.34",
4
+ "description": "A header-only, very fast and memory-friendly family of C++ hash map & btree containers.",
5
+ "license": "Apache-2.0",
6
+ "dependencies": [
7
+ {
8
+ "name": "vcpkg-cmake",
9
+ "host": true
10
+ }
11
+ ]
12
+ }
third-party/DPVO/Pangolin/scripts/vcpkg/ports/parallelstl/fix-cmakelist.patch ADDED
@@ -0,0 +1,32 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ diff --git a/CMakeLists.txt b/CMakeLists.txt
2
+ index 878b212..caa3cba 100644
3
+ --- a/CMakeLists.txt
4
+ +++ b/CMakeLists.txt
5
+ @@ -44,7 +44,7 @@ add_library(pstl::ParallelSTL ALIAS ParallelSTL)
6
+ if (PARALLELSTL_USE_PARALLEL_POLICIES)
7
+ message(STATUS "Using Parallel Policies")
8
+ if (PARALLELSTL_BACKEND STREQUAL "tbb")
9
+ - find_package(TBB 2018 REQUIRED tbb OPTIONAL_COMPONENTS tbbmalloc)
10
+ + find_package(TBB CONFIG REQUIRED tbb OPTIONAL_COMPONENTS tbbmalloc)
11
+ message(STATUS "Parallel STL uses TBB ${TBB_VERSION} (interface version: ${TBB_INTERFACE_VERSION})")
12
+ target_link_libraries(ParallelSTL INTERFACE TBB::tbb)
13
+ else()
14
+ @@ -64,8 +64,7 @@ target_include_directories(ParallelSTL
15
+ INTERFACE
16
+ $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
17
+ $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/stdlib>
18
+ - $<INSTALL_INTERFACE:include>
19
+ - $<INSTALL_INTERFACE:stdlib>)
20
+ + $<INSTALL_INTERFACE:include>)
21
+
22
+ target_compile_features(ParallelSTL
23
+ INTERFACE
24
+ @@ -100,6 +99,8 @@ install(FILES "${CMAKE_CURRENT_BINARY_DIR}/ParallelSTLConfig.cmake"
25
+ DESTINATION lib/cmake/ParallelSTL)
26
+ install(DIRECTORY include/pstl
27
+ DESTINATION include)
28
+ +file(GLOB STDLIB_HEADERS ${CMAKE_CURRENT_SOURCE_DIR}/stdlib/pstl/*)
29
+ +install(FILES ${STDLIB_HEADERS} DESTINATION include/pstl)
30
+
31
+ add_custom_target(install-pstl
32
+ COMMAND "${CMAKE_COMMAND}" -P "${PROJECT_BINARY_DIR}/cmake_install.cmake" -DCOMPONENT=ParallelSTL)
third-party/DPVO/Pangolin/scripts/vcpkg/ports/parallelstl/portfile.cmake ADDED
@@ -0,0 +1,28 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ vcpkg_from_github(
2
+ OUT_SOURCE_PATH SOURCE_PATH
3
+ REPO intel/parallelstl
4
+ REF 0241743d73bb405b16d9c4a24b693e4533dc34a7 # 20200330
5
+ SHA512 cd2f1b60639e9da35a722bdef0bc6420ddca064e3bff979d8a6ea591fb43865b7614c811bced642fd5ff1fab659da1dfaa248dc2b321db7f27d0e74544a2f21e
6
+ HEAD_REF master
7
+ PATCHES
8
+ fix-cmakelist.patch
9
+ )
10
+
11
+ vcpkg_configure_cmake(
12
+ SOURCE_PATH ${SOURCE_PATH}
13
+ PREFER_NINJA
14
+ OPTIONS
15
+ -DPARALLELSTL_USE_PARALLEL_POLICIES=ON
16
+ )
17
+
18
+ vcpkg_install_cmake()
19
+
20
+ vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/ParallelSTL)
21
+
22
+ vcpkg_copy_pdbs()
23
+
24
+ file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug)
25
+ file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/lib)
26
+
27
+ # Handle copyright
28
+ file(INSTALL ${SOURCE_PATH}/LICENSE.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright)
third-party/DPVO/Pangolin/scripts/vcpkg/ports/parallelstl/vcpkg.json ADDED
@@ -0,0 +1,10 @@
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "name": "parallelstl",
3
+ "version-string": "20200330",
4
+ "port-version": 1,
5
+ "description": "Parallel STL is an implementation of the C++ standard library algorithms with support for execution policies, as specified in ISO/IEC 14882:2017 standard, commonly called C++17.",
6
+ "homepage": "https://github.com/intel/parallelstl",
7
+ "dependencies": [
8
+ "tbb"
9
+ ]
10
+ }
third-party/DPVO/Pangolin/scripts/vcpkg/ports/paraview/add-tools-option.patch ADDED
@@ -0,0 +1,15 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ diff --git a/CMakeLists.txt b/CMakeLists.txt
2
+ index 8b33b25..10cadda 100644
3
+ --- a/CMakeLists.txt
4
+ +++ b/CMakeLists.txt
5
+ @@ -730,7 +730,10 @@ if (PARAVIEW_ENABLE_WEB)
6
+ @ONLY)
7
+ endif ()
8
+
9
+ +option(PARAVIEW_BUILD_TOOLS "Build paraview tools" OFF)
10
+ +if (PARAVIEW_BUILD_TOOLS)
11
+ add_subdirectory(Clients)
12
+ +endif()
13
+
14
+ if (PARAVIEW_USE_PYTHON)
15
+ add_subdirectory(Wrapping/Python)
third-party/DPVO/Pangolin/scripts/vcpkg/ports/paraview/catalyst_install.patch ADDED
@@ -0,0 +1,24 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ diff --git a/Clients/InSitu/CMakeLists.txt b/Clients/InSitu/CMakeLists.txt
2
+ index 159aa8ffc..f9bfc7dfe 100644
3
+ --- a/Clients/InSitu/CMakeLists.txt
4
+ +++ b/Clients/InSitu/CMakeLists.txt
5
+ @@ -86,5 +86,5 @@ _vtk_module_apply_properties(catalyst)
6
+ # Update install locations
7
+ catalyst_library(
8
+ TARGET catalyst
9
+ - LIBRARY_DESTINATION "${_vtk_build_LIBRARY_DESTINATION}"
10
+ + #LIBRARY_DESTINATION "${_vtk_build_LIBRARY_DESTINATION}"
11
+ INSTALL_EXPORT_DEFAULT)
12
+ diff --git a/Remoting/Views/vtkGeometryRepresentationInternal.h b/Remoting/Views/vtkGeometryRepresentationInternal.h
13
+ index 86eb383af..cc204fba2 100644
14
+ --- a/Remoting/Views/vtkGeometryRepresentationInternal.h
15
+ +++ b/Remoting/Views/vtkGeometryRepresentationInternal.h
16
+ @@ -22,7 +22,7 @@
17
+ // serial backend.
18
+ #ifndef __VTK_WRAP__
19
+ #if VTK_MODULE_ENABLE_VTK_vtkm
20
+ -#include "vtkmConfigFilters.h" // for VTKM_ENABLE_TBB
21
+ +//#include "vtkmConfigFilters.h" // for VTKM_ENABLE_TBB
22
+ #endif
23
+
24
+ #if defined(VTKM_ENABLE_TBB) && VTK_MODULE_ENABLE_VTK_AcceleratorsVTKmFilters
third-party/DPVO/Pangolin/scripts/vcpkg/ports/paraview/cgns.patch ADDED
@@ -0,0 +1,29 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ diff --git a/CMake/FindCGNS.cmake b/CMake/FindCGNS.cmake
2
+ index 005f1afd9..a45103a9f 100644
3
+ --- a/CMake/FindCGNS.cmake
4
+ +++ b/CMake/FindCGNS.cmake
5
+ @@ -16,7 +16,7 @@ mark_as_advanced(CGNS_INCLUDE_DIR)
6
+
7
+ find_library(CGNS_LIBRARY
8
+ NAMES
9
+ - cgns
10
+ + cgnsdll cgns
11
+ DOC "CGNS library")
12
+ mark_as_advanced(CGNS_LIBRARY)
13
+
14
+ @@ -45,4 +45,15 @@ if (CGNS_FOUND)
15
+ IMPORTED_LOCATION "${CGNS_LIBRARY}"
16
+ INTERFACE_INCLUDE_DIRECTORIES "${CGNS_INCLUDE_DIR}")
17
+ endif ()
18
+ + include(CMakeFindDependencyMacro)
19
+ + find_dependency(hdf5 CONFIG)
20
+ + if(TARGET hdf5::hdf5-shared)
21
+ + set_property(TARGET CGNS::CGNS APPEND PROPERTY
22
+ + INTERFACE_LINK_LIBRARIES "hdf5::hdf5-shared")
23
+ + elseif(TARGET hdf5::hdf5-static)
24
+ + set_property(TARGET CGNS::CGNS APPEND PROPERTY
25
+ + INTERFACE_LINK_LIBRARIES "hdf5::hdf5-static")
26
+ + else()
27
+ + message(FATAL_ERROR "No HDF5 target to link cgns against")
28
+ + endif()
29
+ endif ()
third-party/DPVO/Pangolin/scripts/vcpkg/ports/paraview/external_vtk.patch ADDED
@@ -0,0 +1,150 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ diff --git a/CMake/ParaViewClient.cmake b/CMake/ParaViewClient.cmake
2
+ index b0dea2b32..b035a9dc3 100644
3
+ --- a/CMake/ParaViewClient.cmake
4
+ +++ b/CMake/ParaViewClient.cmake
5
+ @@ -516,6 +516,7 @@ function (paraview_client_documentation)
6
+ NAMES xmlpatterns-qt5 xmlpatterns
7
+ HINTS "${Qt5_DIR}/../../../bin"
8
+ "${Qt5_DIR}/../../../libexec/qt5/bin"
9
+ + "${Qt5_DIR}/../../../tools/qt5/bin"
10
+ DOC "Path to xmlpatterns")
11
+ mark_as_advanced(qt_xmlpatterns_executable)
12
+
13
+ diff --git a/CMake/ParaViewOptions.cmake b/CMake/ParaViewOptions.cmake
14
+ index f544a7c06..c51278931 100644
15
+ --- a/CMake/ParaViewOptions.cmake
16
+ +++ b/CMake/ParaViewOptions.cmake
17
+ @@ -88,7 +88,7 @@ endif()
18
+ #========================================================================
19
+
20
+ # XXX(VTK): External VTK is not yet actually supported.
21
+ -if (FALSE)
22
+ +if (TRUE)
23
+ option(PARAVIEW_USE_EXTERNAL_VTK "Use an external VTK." OFF)
24
+ mark_as_advanced(PARAVIEW_USE_EXTERNAL_VTK)
25
+ else ()
26
+ diff --git a/CMakeLists.txt b/CMakeLists.txt
27
+ index 1af77d164..bebcb83ee 100644
28
+ --- a/CMakeLists.txt
29
+ +++ b/CMakeLists.txt
30
+ @@ -72,7 +72,8 @@ if (NOT CMAKE_INSTALL_LICENSEDIR)
31
+ endif ()
32
+
33
+ set(paraview_cmake_dir "${CMAKE_CURRENT_SOURCE_DIR}/CMake")
34
+ -set(vtk_cmake_dir "${CMAKE_CURRENT_SOURCE_DIR}/VTK/CMake")
35
+ +set(vtk_cmake_dir "${_VCPKG_INSTALLED_DIR}/${VCPKG_TARGET_TRIPLET}/share/vtk")
36
+ +message(STATUS "vtk_cmake_dir:${vtk_cmake_dir}")
37
+ if (NOT IS_DIRECTORY "${vtk_cmake_dir}")
38
+ message(FATAL_ERROR
39
+ "Failed to find the VTK CMake directory. Did you forget to initialize the "
40
+ @@ -383,9 +384,73 @@ endif ()
41
+
42
+ if (PARAVIEW_USE_EXTERNAL_VTK)
43
+ if (paraview_required_modules OR paraview_unrecognized_modules)
44
+ - message(FATAL_ERROR
45
+ - "The following modules were requested or required, but not found: "
46
+ - "${paraview_required_modules};${paraview_unrecognized_modules}.")
47
+ + message(STATUS "REQUIRED:${paraview_required_modules}")
48
+ + foreach(mod ${paraview_required_modules})
49
+ + if(NOT TARGET ${mod})
50
+ + message(STATUS "REQUIRED TARGET not defined: ${mod}")
51
+ + list(APPEND modules_notarget ${mod})
52
+ + endif()
53
+ + if(${mod} MATCHES "VTK::") # For better debugging
54
+ + message(STATUS "VTK TARGET found: ${mod}")
55
+ + list(APPEND vtk_modules ${mod})
56
+ + endif()
57
+ + endforeach()
58
+ + foreach(mod ${paraview_unrecognized_modules})
59
+ + if(NOT TARGET ${mod})
60
+ + message(STATUS "UNREC TARGET not defined: ${mod}")
61
+ + list(FIND paraview_rejected_modules ${mod} _found_mod)
62
+ + if(_found_mod GREATER_EQUAL 0)
63
+ + message(STATUS "MODULE ${mod} not necessary; Removing from unrecognized")
64
+ + list(APPEND _to_remove ${mod})
65
+ + endif()
66
+ + else()
67
+ + list(APPEND _to_remove ${mod})
68
+ + #list(APPEND vtk_modules ${mod}) #probably do not need to add unrecognized_modules to the wrapper
69
+ + endif()
70
+ + endforeach()
71
+ + message(STATUS "UNRECOGNIZED:${paraview_unrecognized_modules}")
72
+ + list(REMOVE_ITEM paraview_unrecognized_modules ${_to_remove})
73
+ + message(STATUS "REJECTED MODULES: ${paraview_rejected_modules}")
74
+ + message(STATUS "UNRECOGNIZED WITHOUT REJECTED AND KNOWN TARGETS: ${paraview_unrecognized_modules}")
75
+ + message(STATUS "ALL PROVIDED MODULES: ${paraview_modules}")
76
+ + set(_unnecessary_moduls ${paraview_modules})
77
+ + list(REMOVE_ITEM _unnecessary_moduls ${paraview_required_modules})
78
+ + message(STATUS "Unnecessary MODULES: ${_unnecessary_moduls}")
79
+ + if(modules_notarget)
80
+ + message(FATAL_ERROR
81
+ + "The following modules were requested or required, but not found: "
82
+ + "${modules_notarget}")
83
+ + endif()
84
+ + list(REMOVE_DUPLICATES vtk_modules)
85
+ + macro(search_dependent_targets)
86
+ + set(vtk_mod_dep_list)
87
+ + foreach(vtk_targ ${ARGN})
88
+ + get_target_property(vtk_mod_dep ${vtk_targ} "INTERFACE_vtk_module_depends")
89
+ + if(vtk_mod_dep)
90
+ + list(APPEND vtk_mod_dep_list ${vtk_mod_dep})
91
+ + endif()
92
+ + get_target_property(vtk_mod_pdep ${vtk_targ} "INTERFACE_vtk_module_private_depends")
93
+ + if(vtk_mod_pdep)
94
+ + list(APPEND vtk_mod_dep_list ${vtk_mod_pdep})
95
+ + endif()
96
+ + get_target_property(vtk_mod_odep ${vtk_targ} "INTERFACE_vtk_module_opional_depends")
97
+ + if(vtk_mod_odep)
98
+ + list(APPEND vtk_mod_dep_list ${vtk_mod_odep})
99
+ + endif()
100
+ + if(vtk_mod_dep_list)
101
+ + message(STATUS "Target ${vtk_targ} depends on ${vtk_mod_dep_list}")
102
+ + list(REMOVE_ITEM vtk_mod_dep_list ${vtk_modules})
103
+ + if(vtk_mod_dep_list)
104
+ + message(STATUS "Newly discovered modules: ${vtk_mod_dep_list}")
105
+ + list(APPEND vtk_modules ${vtk_mod_dep_list})
106
+ + search_dependent_targets(${vtk_mod_dep_list})
107
+ + else()
108
+ + message(STATUS "No new modules discovered!")
109
+ + endif()
110
+ + endif()
111
+ + endforeach()
112
+ + endmacro()
113
+ + search_dependent_targets(${vtk_modules})
114
+ endif ()
115
+
116
+ if (PARAVIEW_USE_PYTHON)
117
+ @@ -459,7 +524,7 @@ else ()
118
+ endif()
119
+
120
+ # Set up these variables now so that modules may acess them
121
+ - if (NOT PARAVIEW_USE_EXTERNAL_VTK AND PARAVIEW_INSTALL_DEVELOPMENT_FILES)
122
+ + if (PARAVIEW_INSTALL_DEVELOPMENT_FILES)
123
+ set(vtk_cmake_dir
124
+ "${CMAKE_CURRENT_SOURCE_DIR}/VTK/CMake")
125
+ set(vtk_cmake_destination
126
+ @@ -558,6 +623,9 @@ set(_paraview_add_tests_default_data_directory
127
+ set(_paraview_add_tests_default_test_data_target
128
+ "ParaViewData")
129
+
130
+ +list(REMOVE_DUPLICATES vtk_modules) # Missed this somewhere
131
+ +list(REMOVE_DUPLICATES paraview_modules) # probably not needed
132
+ +
133
+ vtk_module_build(
134
+ MODULES ${paraview_modules}
135
+ KITS ${paraview_kits}
136
+ @@ -596,9 +664,11 @@ vtk_module_build(
137
+ TEST_OUTPUT_DATA_DIRECTORY "${paraview_test_data_directory_output}")
138
+
139
+ include(vtkModuleJson)
140
+ -vtk_module_json(
141
+ - MODULES ${vtk_modules}
142
+ - OUTPUT "vtk-modules.json")
143
+ +if(NOT PARAVIEW_USE_EXTERNAL_VTK)
144
+ + vtk_module_json(
145
+ + MODULES ${vtk_modules}
146
+ + OUTPUT "vtk-modules.json")
147
+ +endif()
148
+ vtk_module_json(
149
+ MODULES ${paraview_modules}
150
+ OUTPUT "paraview-modules.json")
third-party/DPVO/Pangolin/scripts/vcpkg/ports/paraview/portfile.cmake ADDED
@@ -0,0 +1,186 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ file(READ "${CMAKE_CURRENT_LIST_DIR}/vcpkg.json" _vcpkg_json)
2
+ string(JSON _ver_string GET "${_vcpkg_json}" "version-semver")
3
+ string(REGEX MATCH "^[0-9]+\.[0-9]+" VERSION "${_ver_string}")
4
+
5
+ vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS
6
+ "cuda" PARAVIEW_USE_CUDA #untested; probably only affects internal VTK build so it does nothing here
7
+ "all_modules" PARAVIEW_BUILD_ALL_MODULES #untested
8
+ "mpi" PARAVIEW_USE_MPI #untested
9
+ "vtkm" PARAVIEW_USE_VTKM
10
+ "python" PARAVIEW_USE_PYTHON
11
+ "tools" PARAVIEW_BUILD_TOOLS
12
+ )
13
+
14
+ vcpkg_from_github(
15
+ OUT_SOURCE_PATH SOURCE_PATH
16
+ REPO Kitware/ParaView
17
+ REF aad4b6f1e92154879209102edfab8367f1e7d191 # v5.9.1
18
+ SHA512 330fcb8525bdee9b02e06f05d4e91cc4d631d03df99c30f82bb97da5e06b5a2a6ff4ecee807b6f6c7110d2f53db1c17e4670d6078ae1cc89cfd7089b67d05bdb
19
+ HEAD_REF master
20
+ PATCHES
21
+ external_vtk.patch
22
+ cgns.patch
23
+ python_include.patch
24
+ python_wrapper.patch
25
+ add-tools-option.patch
26
+ catalyst_install.patch
27
+ )
28
+
29
+ if(VCPKG_LIBRARY_LINKAGE STREQUAL "static")
30
+ list(APPEND VisItPatches removedoublesymbols.patch)
31
+ endif()
32
+
33
+ #The following two dependencies should probably be their own port
34
+ #but require additional patching in paraview to make it work.
35
+
36
+ #Get VisItBridge Plugin
37
+ vcpkg_from_gitlab(
38
+ OUT_SOURCE_PATH VISITIT_SOURCE_PATH
39
+ GITLAB_URL https://gitlab.kitware.com/
40
+ REPO paraview/visitbridge
41
+ REF 42fce8ad6863ca2c1308741955cca1d0cf570d22
42
+ SHA512 03a6254989d3e286a462683af92caba1e90decbdcfb2e729f2d7e1116b04d63a05c28d02c4615d780fdd0d33e2719f96617233d6e0602410cc6d894f92fe6ee3
43
+ PATCHES
44
+ ${VisItPatches}
45
+ )
46
+ #Get QtTesting Plugin
47
+ vcpkg_from_gitlab(
48
+ OUT_SOURCE_PATH QTTESTING_SOURCE_PATH
49
+ GITLAB_URL https://gitlab.kitware.com/
50
+ REPO paraview/qttesting
51
+ REF 72290689c7c55622d729bf95c97e7627026a234e
52
+ SHA512 fb18c6745b784b294f01d5391ba4cdcaa109443a193eb35fbf1553fdb3a4f7217f784fd4893fab72784cec5bd3fc821bf1e766e943d0f562c5917788800599b0
53
+ )
54
+
55
+ #Get Catalyst
56
+ vcpkg_from_gitlab(
57
+ OUT_SOURCE_PATH CATALYST_SOURCE_PATH
58
+ GITLAB_URL https://gitlab.kitware.com/
59
+ REPO paraview/catalyst
60
+ REF e36e4a5f3c67011c97c335cce23d2bc3abc0d086
61
+ SHA512 9926c272ab8785997f9c98cfaf696943081b0ddb0e9e343602722671b6f3eaef5b8de5dd049ca783b6844c7e328a96e1b09c8b24c16f001eeeed2d154d290480
62
+ )
63
+
64
+
65
+ file(COPY ${VISITIT_SOURCE_PATH}/ DESTINATION ${SOURCE_PATH}/Utilities/VisItBridge)
66
+ file(COPY ${QTTESTING_SOURCE_PATH}/ DESTINATION ${SOURCE_PATH}/ThirdParty/QtTesting/vtkqttesting)
67
+ file(COPY ${CATALYST_SOURCE_PATH}/ DESTINATION ${SOURCE_PATH}/ThirdParty/catalyst/vtkcatalyst/catalyst)
68
+
69
+ if("python" IN_LIST FEATURES)
70
+ vcpkg_find_acquire_program(PYTHON3)
71
+ list(APPEND ADDITIONAL_OPTIONS
72
+ -DPython3_FIND_REGISTRY=NEVER
73
+ "-DPython3_EXECUTABLE:PATH=${PYTHON3}" # Required by more than one feature
74
+ )
75
+ #VTK_PYTHON_SITE_PACKAGES_SUFFIX should be set to the install dir of the site-packages
76
+ endif()
77
+
78
+ vcpkg_configure_cmake(
79
+ SOURCE_PATH ${SOURCE_PATH}
80
+ PREFER_NINJA # Disable this option if project cannot be built with Ninja
81
+ OPTIONS ${FEATURE_OPTIONS}
82
+ -DPARAVIEW_BUILD_WITH_EXTERNAL:BOOL=ON
83
+ -DPARAVIEW_USE_EXTERNAL_VTK:BOOL=ON
84
+ -DPARAVIEW_ENABLE_VISITBRIDGE:BOOL=ON
85
+ -DVTK_MODULE_ENABLE_ParaView_qttesting=YES
86
+ -DPARAVIEW_ENABLE_EMBEDDED_DOCUMENTATION:BOOL=OFF
87
+ -DPARAVIEW_USE_QTHELP:BOOL=OFF
88
+
89
+ #A little bit of help in finding the boost headers
90
+ "-DBoost_INCLUDE_DIR:PATH=${CURRENT_INSTALLED_DIR}/include"
91
+
92
+ # Workarounds for CMake issues
93
+ -DHAVE_SYS_TYPES_H=0 ## For some strange reason the test first succeeds and then fails the second time around
94
+ -DWORDS_BIGENDIAN=0 ## Tests fails in VisItCommon.cmake for some unknown reason this is just a workaround since most systems are little endian.
95
+ ${ADDITIONAL_OPTIONS}
96
+
97
+ #-DPARAVIEW_ENABLE_FFMPEG:BOOL=OFF
98
+ )
99
+ if(CMAKE_HOST_UNIX)
100
+ # ParaView runs Qt tools so LD_LIBRARY_PATH must be set correctly for them to find *.so files
101
+ set(BACKUP_LD_LIBRARY_PATH $ENV{LD_LIBRARY_PATH})
102
+ set(ENV{LD_LIBRARY_PATH} "${BACKUP_LD_LIBRARY_PATH}:${CURRENT_INSTALLED_DIR}/lib")
103
+ endif()
104
+
105
+ vcpkg_install_cmake(ADD_BIN_TO_PATH) # Bin to path required since paraview will use some self build tools
106
+
107
+ if(CMAKE_HOST_UNIX)
108
+ set(ENV{LD_LIBRARY_PATH} "${BACKUP_LD_LIBRARY_PATH}")
109
+ endif()
110
+
111
+ vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/paraview-${VERSION})
112
+
113
+ file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
114
+ file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share)
115
+
116
+ # see https://gitlab.kitware.com/paraview/paraview/-/issues/21328
117
+ file(REMOVE "${CURRENT_PACKAGES_DIR}/include/paraview-${VERSION}/vtkCPConfig.h")
118
+
119
+ set(TOOLVER pv${VERSION})
120
+ set(TOOLS paraview
121
+ pvbatch
122
+ pvdataserver
123
+ pvpython
124
+ pvrenderserver
125
+ pvserver
126
+ smTestDriver
127
+ vtkProcessXML
128
+ vtkWrapClientServer)
129
+
130
+ foreach(tool ${TOOLS})
131
+ # Remove debug tools
132
+ set(filename ${CURRENT_PACKAGES_DIR}/debug/bin/${tool}${VCPKG_TARGET_EXECUTABLE_SUFFIX})
133
+ if(EXISTS ${filename})
134
+ file(REMOVE ${filename})
135
+ endif()
136
+ set(filename ${CURRENT_PACKAGES_DIR}/debug/bin/${tool}-${TOOLVER}${VCPKG_TARGET_EXECUTABLE_SUFFIX})
137
+ if(EXISTS ${filename})
138
+ file(REMOVE ${filename})
139
+ endif()
140
+ set(filename ${CURRENT_PACKAGES_DIR}/debug/bin/${tool}-${TOOLVER}d${VCPKG_TARGET_EXECUTABLE_SUFFIX})
141
+ if(EXISTS ${filename})
142
+ file(REMOVE ${filename})
143
+ endif()
144
+
145
+ # Move release tools
146
+ set(filename ${CURRENT_PACKAGES_DIR}/bin/${tool}${VCPKG_TARGET_EXECUTABLE_SUFFIX})
147
+ if(EXISTS ${filename})
148
+ file(INSTALL ${filename} DESTINATION ${CURRENT_PACKAGES_DIR}/tools/${PORT})
149
+ file(REMOVE ${filename})
150
+ endif()
151
+ set(filename ${CURRENT_PACKAGES_DIR}/bin/${tool}-${TOOLVER}${VCPKG_TARGET_EXECUTABLE_SUFFIX})
152
+ if(EXISTS ${filename})
153
+ file(INSTALL ${filename} DESTINATION ${CURRENT_PACKAGES_DIR}/tools/${PORT})
154
+ file(REMOVE ${filename})
155
+ endif()
156
+ endforeach()
157
+ vcpkg_copy_tool_dependencies(${CURRENT_PACKAGES_DIR}/tools/${PORT})
158
+
159
+ # # Handle copyright
160
+ file(INSTALL ${SOURCE_PATH}/Copyright.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/paraview RENAME Copyright.txt) # Which one is the correct one?
161
+ file(INSTALL ${SOURCE_PATH}/License_v1.2.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/paraview RENAME copyright)
162
+
163
+ if(VCPKG_LIBRARY_LINKAGE STREQUAL "static")
164
+ macro(move_bin_to_lib name)
165
+ if(EXISTS ${CURRENT_PACKAGES_DIR}/bin/${name})
166
+ file(RENAME "${CURRENT_PACKAGES_DIR}/bin/${name}" "${CURRENT_PACKAGES_DIR}/lib/${name}")
167
+ endif()
168
+ if(EXISTS ${CURRENT_PACKAGES_DIR}/debug/bin/${name})
169
+ file(RENAME "${CURRENT_PACKAGES_DIR}/debug/bin/${name}" "${CURRENT_PACKAGES_DIR}/debug/lib/${name}")
170
+ endif()
171
+ endmacro()
172
+
173
+ set(to_move Lib paraview-${VERSION} paraview-config)
174
+ foreach(name ${to_move})
175
+ move_bin_to_lib(${name})
176
+ endforeach()
177
+
178
+ file(GLOB_RECURSE cmake_files ${CURRENT_PACKAGES_DIR}/share/${PORT}/*.cmake)
179
+ foreach(cmake_file ${cmake_files})
180
+ file(READ "${cmake_file}" _contents)
181
+ STRING(REPLACE "bin/" "lib/" _contents "${_contents}")
182
+ file(WRITE "${cmake_file}" "${_contents}")
183
+ endforeach()
184
+
185
+ file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin ${CURRENT_PACKAGES_DIR}/debug/bin)
186
+ endif()
third-party/DPVO/Pangolin/scripts/vcpkg/ports/paraview/python_include.patch ADDED
@@ -0,0 +1,13 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ diff --git a/CMake/ParaViewOptions.cmake b/CMake/ParaViewOptions.cmake
2
+ index 0ecb928e9..5b5459a37 100644
3
+ --- a/CMake/ParaViewOptions.cmake
4
+ +++ b/CMake/ParaViewOptions.cmake
5
+ @@ -136,7 +136,7 @@ option(PARAVIEW_ENABLE_RAYTRACING "Build ParaView with OSPray and/or OptiX ray-t
6
+
7
+ set(paraview_web_default ON)
8
+ if (PARAVIEW_USE_PYTHON AND WIN32)
9
+ - include("${CMAKE_CURRENT_SOURCE_DIR}/VTK/CMake/FindPythonModules.cmake")
10
+ + include(FindPythonModules)
11
+ find_python_module(win32api have_pywin32)
12
+ set(paraview_web_default "${have_pywin32}")
13
+ endif ()
third-party/DPVO/Pangolin/scripts/vcpkg/ports/paraview/python_wrapper.patch ADDED
@@ -0,0 +1,19 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ diff --git a/CMake/vtkModuleWrapClientServer.cmake b/CMake/vtkModuleWrapClientServer.cmake
2
+ index 3804a24e2..91fdd593a 100644
3
+ --- a/CMake/vtkModuleWrapClientServer.cmake
4
+ +++ b/CMake/vtkModuleWrapClientServer.cmake
5
+ @@ -37,10 +37,13 @@ function (_vtk_module_wrap_client_server_sources module sources classes)
6
+ "$<TARGET_PROPERTY:${_vtk_client_server_target_name},COMPILE_DEFINITIONS>")
7
+ set(_vtk_client_server_genex_include_directories
8
+ "$<TARGET_PROPERTY:${_vtk_client_server_target_name},INCLUDE_DIRECTORIES>")
9
+ + set(_vtk_client_server_genex_interface_include_directories
10
+ + "$<TARGET_PROPERTY:${_vtk_client_server_target_name},INTERFACE_INCLUDE_DIRECTORIES>")
11
+ file(GENERATE
12
+ OUTPUT "${_vtk_client_server_args_file}"
13
+ CONTENT "$<$<BOOL:${_vtk_client_server_genex_compile_definitions}>:\n-D\'$<JOIN:${_vtk_client_server_genex_compile_definitions},\'\n-D\'>\'>\n
14
+ -$<$<BOOL:${_vtk_client_server_genex_include_directories}>:\n-I\'$<JOIN:${_vtk_client_server_genex_include_directories},\'\n-I\'>\'>\n")
15
+ + $<$<BOOL:${_vtk_client_server_genex_include_directories}>:\n-I\'$<JOIN:${_vtk_client_server_genex_include_directories},\'\n-I\'>\'>\n
16
+ + $<$<BOOL:${_vtk_client_server_genex_interface_include_directories}>:\n-I\'$<JOIN:${_vtk_client_server_genex_interface_include_directories},\'\n-I\'>\'>\n")
17
+
18
+ _vtk_module_get_module_property("${module}"
19
+ PROPERTY "hierarchy"
third-party/DPVO/Pangolin/scripts/vcpkg/ports/paraview/removedoublesymbols.patch ADDED
@@ -0,0 +1,89 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ diff --git a/Library/VisItLib/visit_vtk/lightweight/vtkUnstructuredGridFacelistFilter.C b/Library/VisItLib/visit_vtk/lightweight/vtkUnstructuredGridFacelistFilter.C
2
+ index db64a0534..0d987d8e7 100644
3
+ --- a/Library/VisItLib/visit_vtk/lightweight/vtkUnstructuredGridFacelistFilter.C
4
+ +++ b/Library/VisItLib/visit_vtk/lightweight/vtkUnstructuredGridFacelistFilter.C
5
+ @@ -69,7 +69,10 @@
6
+ //
7
+ // Forward declare some of types used to hash faces.
8
+ //
9
+ -class Quad;
10
+ +namespace hidden {
11
+ + class Quad;
12
+ +}
13
+ +using hidden::Quad;
14
+ class QuadMemoryManager;
15
+ class Tri;
16
+ class TriMemoryManager;
17
+ @@ -322,43 +325,43 @@ class HashEntryList
18
+ // Creation: October 21, 2002
19
+ //
20
+ // ****************************************************************************
21
+ +namespace hidden {
22
+ + class Quad
23
+ + {
24
+ + friend class Tri;
25
+
26
+ -class Quad
27
+ -{
28
+ - friend class Tri;
29
+ -
30
+ - public:
31
+ - Quad() { ordering_case = 255; };
32
+ -
33
+ - vtkIdType AssignNodes(const vtkIdType *);
34
+ - bool Equals(Quad *);
35
+ - bool Equals(Tri *);
36
+ - void AddInRemainingTriangle(Tri *, int);
37
+ - inline void ReRegisterMemory(void)
38
+ - {
39
+ - hashEntryList->qmm.ReRegisterQuad(this);
40
+ - }
41
+ + public:
42
+ + Quad() { ordering_case = 255; };
43
+
44
+ - inline void SetOriginalZone(const int &oz) { orig_zone = oz; };
45
+ - inline int GetOriginalZone(void) { return orig_zone; };
46
+ + vtkIdType AssignNodes(const vtkIdType *);
47
+ + bool Equals(Quad *);
48
+ + bool Equals(Tri *);
49
+ + void AddInRemainingTriangle(Tri *, int);
50
+ + inline void ReRegisterMemory(void)
51
+ + {
52
+ + hashEntryList->qmm.ReRegisterQuad(this);
53
+ + }
54
+
55
+ - void OutputCell(int,vtkPolyData *, vtkCellData *, vtkCellData *);
56
+ + inline void SetOriginalZone(const int &oz) { orig_zone = oz; };
57
+ + inline int GetOriginalZone(void) { return orig_zone; };
58
+
59
+ - inline void RegisterHashEntryList(HashEntryList *hel)
60
+ - { hashEntryList = hel; };
61
+ - inline void SetNumberOfPoints(int np) { npts = np; };
62
+ + void OutputCell(int,vtkPolyData *, vtkCellData *, vtkCellData *);
63
+
64
+ - protected:
65
+ - unsigned char ordering_case;
66
+ - vtkIdType nodes[3];
67
+ - vtkIdType orig_zone;
68
+ + inline void RegisterHashEntryList(HashEntryList *hel)
69
+ + { hashEntryList = hel; };
70
+ + inline void SetNumberOfPoints(int np) { npts = np; };
71
+
72
+ - HashEntryList *hashEntryList;
73
+ - int npts;
74
+ + protected:
75
+ + unsigned char ordering_case;
76
+ + vtkIdType nodes[3];
77
+ + vtkIdType orig_zone;
78
+
79
+ - void AddInRemainingTriangle(int, int);
80
+ -};
81
+ + HashEntryList *hashEntryList;
82
+ + int npts;
83
+
84
+ + void AddInRemainingTriangle(int, int);
85
+ + };
86
+ +}
87
+ //
88
+ // We will be re-ordering the nodes into numerical order. This enumerated
89
+ // type will allow the ordering to be preserved.
third-party/DPVO/Pangolin/scripts/vcpkg/ports/paraview/vcpkg.json ADDED
@@ -0,0 +1,91 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "name": "paraview",
3
+ "version-semver": "5.9.1",
4
+ "port-version": 1,
5
+ "description": "VTK-based Data Analysis and Visualization Application",
6
+ "homepage": "https://www.paraview.org/",
7
+ "dependencies": [
8
+ "boost-algorithm",
9
+ "boost-core",
10
+ "boost-format",
11
+ "cgns",
12
+ "protobuf",
13
+ {
14
+ "name": "vtk",
15
+ "default-features": false,
16
+ "features": [
17
+ "paraview"
18
+ ]
19
+ }
20
+ ],
21
+ "features": {
22
+ "all-modules": {
23
+ "description": "enables the build of all paraview modules",
24
+ "dependencies": [
25
+ "ffmpeg",
26
+ "gdal",
27
+ "laszip",
28
+ "pdal"
29
+ ]
30
+ },
31
+ "cuda": {
32
+ "description": "enables cuda within paraview",
33
+ "dependencies": [
34
+ "cuda",
35
+ {
36
+ "name": "vtk",
37
+ "default-features": false,
38
+ "features": [
39
+ "cuda"
40
+ ]
41
+ }
42
+ ]
43
+ },
44
+ "mpi": {
45
+ "description": "enables cuda within paraview",
46
+ "dependencies": [
47
+ {
48
+ "name": "hdf5",
49
+ "default-features": false,
50
+ "features": [
51
+ "parallel"
52
+ ]
53
+ },
54
+ {
55
+ "name": "vtk",
56
+ "default-features": false,
57
+ "features": [
58
+ "mpi"
59
+ ]
60
+ }
61
+ ]
62
+ },
63
+ "python": {
64
+ "description": "enables the build of python wrappers",
65
+ "dependencies": [
66
+ {
67
+ "name": "vtk",
68
+ "default-features": false,
69
+ "features": [
70
+ "python"
71
+ ]
72
+ }
73
+ ]
74
+ },
75
+ "tools": {
76
+ "description": "Build paraview tools"
77
+ },
78
+ "vtkm": {
79
+ "description": "enables vtkm for the build of paraview",
80
+ "dependencies": [
81
+ {
82
+ "name": "vtk",
83
+ "default-features": false,
84
+ "features": [
85
+ "vtkm"
86
+ ]
87
+ }
88
+ ]
89
+ }
90
+ }
91
+ }
third-party/DPVO/Pangolin/scripts/vcpkg/ports/parmetis/fix-gklib-vs14-math.patch ADDED
@@ -0,0 +1,11 @@
 
 
 
 
 
 
 
 
 
 
 
 
1
+ --- a/metis/GKlib/gk_arch.h Wed Dec 21 18:34:18 2016
2
+ +++ b/metis/GKlib/gk_arch.h Wed Dec 21 18:30:49 2016
3
+ @@ -58,7 +58,7 @@
4
+ #define PTRDIFF_MAX INT64_MAX
5
+ #endif
6
+
7
+ -#ifdef __MSC__
8
+ +#if defined(__MSC__) && (_MSC_VER < 1900)
9
+ /* MSC does not have rint() function */
10
+ #define rint(x) ((int)((x)+0.5))
11
+
third-party/DPVO/Pangolin/scripts/vcpkg/ports/parmetis/fix-libparmetis-cmakelist.patch ADDED
@@ -0,0 +1,15 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ --- a/libparmetis/CMakeLists.txt Sat Mar 30 17:24:50 2013
2
+ +++ b/libparmetis/CMakeLists.txt Wed Dec 21 19:40:28 2016
3
+ @@ -5,10 +5,10 @@
4
+ # Create libparmetis
5
+ add_library(parmetis ${ParMETIS_LIBRARY_TYPE} ${parmetis_sources})
6
+ # Link with metis and MPI libraries.
7
+ -target_link_libraries(parmetis metis ${MPI_LIBRARIES})
8
+ +target_link_libraries(parmetis ${METIS_LIBRARY} ${MPI_LIBRARIES})
9
+ set_target_properties(parmetis PROPERTIES LINK_FLAGS "${MPI_LINK_FLAGS}")
10
+
11
+ install(TARGETS parmetis
12
+ LIBRARY DESTINATION lib
13
+ - RUNTIME DESTINATION lib
14
+ + RUNTIME DESTINATION bin
15
+ ARCHIVE DESTINATION lib)
third-party/DPVO/Pangolin/scripts/vcpkg/ports/parmetis/fix-metis-vs14-math.patch ADDED
@@ -0,0 +1,11 @@
 
 
 
 
 
 
 
 
 
 
 
 
1
+ --- a/metis/libmetis/metislib.h Sat Mar 30 17:24:45 2013
2
+ +++ b/metis/libmetis/metislib.h Wed Dec 21 18:30:59 2016
3
+ @@ -31,7 +31,7 @@
4
+ #include <proto.h>
5
+
6
+
7
+ -#if defined(COMPILER_MSC)
8
+ +#if defined(COMPILER_MSC) && (_MSC_VER < 1900)
9
+ #if defined(rint)
10
+ #undef rint
11
+ #endif
third-party/DPVO/Pangolin/scripts/vcpkg/ports/parmetis/fix-root-cmakelist-2.patch ADDED
@@ -0,0 +1,18 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ --- a/CMakeLists.txt 2013-03-30 17:24:50.000000000 +0100
2
+ +++ b/CMakeLists.txt 2021-04-20 10:41:49.946801222 +0200
3
+ @@ -1,12 +1,12 @@
4
+ cmake_minimum_required(VERSION 2.8)
5
+ project(ParMETIS)
6
+
7
+ -set(GKLIB_PATH METIS/GKlib CACHE PATH "path to GKlib")
8
+ -set(METIS_PATH METIS CACHE PATH "path to METIS")
9
+ +set(GKLIB_PATH ${CMAKE_CURRENT_SOURCE_DIR}/metis/GKlib CACHE PATH "path to GKlib")
10
+ +set(METIS_PATH metis CACHE PATH "path to METIS")
11
+
12
+ # Symlink ./metis to wherever metis is. This allows files to be
13
+ # included from metis/libmetis/.
14
+ -execute_process(COMMAND ${CMAKE_COMMAND} -E create_symlink ${METIS_PATH} metis)
15
+ +#execute_process(COMMAND ${CMAKE_COMMAND} -E create_symlink ${METIS_PATH} metis)
16
+
17
+ # Search for MPI.
18
+ # GK commented this out as it seems to be creating problems
third-party/DPVO/Pangolin/scripts/vcpkg/ports/parmetis/fix-root-cmakelist.patch ADDED
@@ -0,0 +1,29 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ --- a/CMakeLists.txt Sat Mar 30 17:24:50 2013
2
+ +++ b/CMakeLists.txt Wed Dec 21 19:38:12 2016
3
+ @@ -16,6 +16,9 @@
4
+ # endif()
5
+ # set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${MPI_COMPILE_FLAGS}")
6
+
7
+ +find_package(MPI REQUIRED)
8
+ +find_library(METIS_LIBRARY NAMES metis)
9
+ +
10
+ # Prepare libraries.
11
+ if(SHARED)
12
+ set(ParMETIS_LIBRARY_TYPE SHARED)
13
+ @@ -30,13 +33,13 @@
14
+ include_directories(include)
15
+ include_directories(${MPI_INCLUDE_PATH})
16
+ include_directories(${GKLIB_PATH})
17
+ -include_directories(${METIS_PATH}/include)
18
+ +# include_directories(${METIS_PATH}/include)
19
+
20
+ # List of directories that cmake will look for CMakeLists.txt
21
+ -add_subdirectory(${METIS_PATH}/libmetis ${CMAKE_BINARY_DIR}/libmetis)
22
+ +# add_subdirectory(${METIS_PATH}/libmetis ${CMAKE_BINARY_DIR}/libmetis)
23
+ add_subdirectory(include)
24
+ add_subdirectory(libparmetis)
25
+ -add_subdirectory(programs)
26
+ +# add_subdirectory(programs)
27
+
28
+ # This is for testing during development and is not being distributed
29
+ #add_subdirectory(test)
third-party/DPVO/Pangolin/scripts/vcpkg/ports/parmetis/portfile.cmake ADDED
@@ -0,0 +1,36 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ vcpkg_check_linkage(ONLY_STATIC_LIBRARY)
2
+ set(ADDITIONAL_OPTIONS -DSHARED=OFF)
3
+
4
+ vcpkg_download_distfile(ARCHIVE
5
+ URLS "http://glaros.dtc.umn.edu/gkhome/fetch/sw/parmetis/parmetis-4.0.3.tar.gz"
6
+ FILENAME "parmetis-4.0.3.tar.gz"
7
+ SHA512 454a91921ca35c981df11c9846a11963ff8fd8407a25179453af33f8fe69493f6dd7f2a0b8feed9a7d3f121e45b715749dd7a94873eaac2bae4cad1e535ca132
8
+ )
9
+
10
+ vcpkg_extract_source_archive_ex(
11
+ OUT_SOURCE_PATH SOURCE_PATH
12
+ ARCHIVE ${ARCHIVE}
13
+ PATCHES
14
+ fix-metis-vs14-math.patch
15
+ fix-gklib-vs14-math.patch
16
+ fix-root-cmakelist.patch
17
+ fix-libparmetis-cmakelist.patch
18
+ use_stdint.patch
19
+ fix-root-cmakelist-2.patch
20
+ )
21
+
22
+ vcpkg_configure_cmake(
23
+ SOURCE_PATH ${SOURCE_PATH}
24
+ PREFER_NINJA
25
+ OPTIONS
26
+ ${ADDITIONAL_OPTIONS}
27
+ )
28
+
29
+ vcpkg_install_cmake()
30
+ vcpkg_copy_pdbs()
31
+
32
+ file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
33
+
34
+ # Handle copyright
35
+ file(COPY ${SOURCE_PATH}/LICENSE.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/parmetis)
36
+ file(RENAME ${CURRENT_PACKAGES_DIR}/share/parmetis/LICENSE.txt ${CURRENT_PACKAGES_DIR}/share/parmetis/copyright)
third-party/DPVO/Pangolin/scripts/vcpkg/ports/parmetis/use_stdint.patch ADDED
@@ -0,0 +1,22 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ diff --git a/metis/GKlib/ms_stdint.h b/metis/GKlib/ms_stdint.h
2
+ index 7e200dc..0d07a7a 100644
3
+ --- a/metis/GKlib/ms_stdint.h
4
+ +++ b/metis/GKlib/ms_stdint.h
5
+ @@ -42,6 +42,10 @@
6
+
7
+ #include <limits.h>
8
+
9
+ +#if(_MSC_VER >= 1900)
10
+ + #include <stdint.h>
11
+ +#else
12
+ +
13
+ // For Visual Studio 6 in C++ mode wrap <wchar.h> include with 'extern "C++" {}'
14
+ // or compiler give many errors like this:
15
+ // error C2733: second C linkage of overloaded function 'wmemchr' not allowed
16
+ @@ -218,5 +222,6 @@ typedef uint64_t uintmax_t;
17
+
18
+ #endif // __STDC_CONSTANT_MACROS ]
19
+
20
+ +#endif
21
+
22
+ #endif // _MSC_STDINT_H_ ]
third-party/DPVO/Pangolin/scripts/vcpkg/ports/parmetis/vcpkg.json ADDED
@@ -0,0 +1,11 @@
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "name": "parmetis",
3
+ "version-string": "4.0.3",
4
+ "port-version": 5,
5
+ "description": "Parallel Graph Partitioning and Fill-reducing Matrix Ordering",
6
+ "homepage": "https://glaros.dtc.umn.edu/gkhome/metis/parmetis/overview",
7
+ "dependencies": [
8
+ "metis",
9
+ "mpi"
10
+ ]
11
+ }
third-party/DPVO/Pangolin/scripts/vcpkg/ports/parquet/portfile.cmake ADDED
@@ -0,0 +1,2 @@
 
 
 
1
+ # The parquet library has been merged into arrow
2
+ set(VCPKG_POLICY_EMPTY_PACKAGE enabled)
third-party/DPVO/Pangolin/scripts/vcpkg/ports/parquet/vcpkg.json ADDED
@@ -0,0 +1,9 @@
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "name": "parquet",
3
+ "version-string": "0",
4
+ "port-version": 1,
5
+ "description": "Parquet-cpp is a C++ library to read and write the Apache Parquet columnar data format. It is now part of the arrow library.",
6
+ "dependencies": [
7
+ "arrow"
8
+ ]
9
+ }
third-party/DPVO/Pangolin/scripts/vcpkg/ports/parson/CMakeLists.txt ADDED
@@ -0,0 +1,19 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ cmake_minimum_required(VERSION 3.5)
2
+ project(parson C)
3
+
4
+ add_library(parson parson.c)
5
+ target_include_directories(parson PUBLIC $<INSTALL_INTERFACE:include>)
6
+
7
+ install(TARGETS parson
8
+ EXPORT unofficial-parson-targets
9
+ RUNTIME DESTINATION bin
10
+ LIBRARY DESTINATION lib
11
+ ARCHIVE DESTINATION lib
12
+ )
13
+
14
+ install(
15
+ EXPORT unofficial-parson-targets
16
+ FILE unofficial-parson-config.cmake
17
+ NAMESPACE unofficial::parson::
18
+ DESTINATION share/unofficial-parson
19
+ )
third-party/DPVO/Pangolin/scripts/vcpkg/ports/parson/portfile.cmake ADDED
@@ -0,0 +1,31 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ if(VCPKG_LIBRARY_LINKAGE STREQUAL "dynamic")
2
+ message("parson only supports static linkage")
3
+ set(VCPKG_LIBRARY_LINKAGE "static")
4
+ endif()
5
+
6
+ vcpkg_from_github(
7
+ OUT_SOURCE_PATH SOURCE_PATH
8
+ REPO kgabis/parson
9
+ REF 102a4467e10c77ffcfde1d233798780acd719cc5 # accessed on 2020-09-14
10
+ SHA512 8498e667525a0f08881c4041877194bf68926af34c9f0cbd9fd3d9538c31e0ad1ab1c083fbee48423f4ffd99f46e25918928c43585206237c8f723e5e47b17b7
11
+ HEAD_REF master
12
+ )
13
+
14
+ file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH})
15
+
16
+ vcpkg_configure_cmake(
17
+ SOURCE_PATH ${SOURCE_PATH}
18
+ PREFER_NINJA
19
+ )
20
+
21
+ vcpkg_install_cmake()
22
+
23
+ file(COPY ${SOURCE_PATH}/parson.h DESTINATION ${CURRENT_PACKAGES_DIR}/include)
24
+
25
+ vcpkg_fixup_cmake_targets(CONFIG_PATH share/unofficial-parson TARGET_PATH share/unofficial-parson)
26
+
27
+ file(INSTALL
28
+ ${SOURCE_PATH}/LICENSE
29
+ DESTINATION ${CURRENT_PACKAGES_DIR}/share/parson RENAME copyright)
30
+
31
+ vcpkg_copy_pdbs()
third-party/DPVO/Pangolin/scripts/vcpkg/ports/parson/vcpkg.json ADDED
@@ -0,0 +1,6 @@
 
 
 
 
 
 
 
1
+ {
2
+ "name": "parson",
3
+ "version-string": "2020-09-14",
4
+ "port-version": 1,
5
+ "description": "a lighweight json library written in C"
6
+ }
third-party/DPVO/Pangolin/scripts/vcpkg/ports/pbc/linux.patch ADDED
@@ -0,0 +1,45 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ --- configure.ac 2018-11-29 13:51:14.495012138 +0100
2
+ +++ configure.ac 2018-11-29 13:51:45.308095312 +0100
3
+ @@ -10,7 +10,6 @@
4
+ LT_INIT
5
+ #AC_CANONICAL_HOST
6
+
7
+ -CFLAGS=
8
+ default_fink_path=/sw
9
+ case $host_os in
10
+ darwin*)
11
+ @@ -78,20 +77,7 @@
12
+ AC_PROG_MAKE_SET
13
+
14
+ AC_PROG_LEX
15
+ -if test "x$LEX" != xflex; then
16
+ - echo "************************"
17
+ - echo "flex not found"
18
+ - echo "************************"
19
+ - exit -1
20
+ -fi
21
+ -
22
+ AC_PROG_YACC
23
+ -if test "x$YACC" != "xbison -y"; then
24
+ - echo "************************"
25
+ - echo "bison not found"
26
+ - echo "************************"
27
+ - exit -1
28
+ -fi
29
+
30
+ # Checks for libraries.
31
+ lib_err_msg="add its path to LDFLAGS\nsee ./configure --help"
32
+ @@ -121,13 +134,6 @@
33
+
34
+ CFLAGS="$CFLAGS -Wall -W -Wfloat-equal -Wpointer-arith -Wcast-align -Wstrict-prototypes -Wredundant-decls \
35
+ -Wendif-labels -Wshadow -pipe -ffast-math -U__STRICT_ANSI__ -std=gnu99"
36
+ -if test "$with_debug" == "y"; then
37
+ - CFLAGS="$CFLAGS -g3 -O0"
38
+ -elif test "$with_enable_optimized" != "no"; then
39
+ - CFLAGS="$CFLAGS -g -O2"
40
+ -else
41
+ - CFLAGS="$CFLAGS -fomit-frame-pointer -O3"
42
+ -fi
43
+
44
+ if test "$with_safe_clean" != "n"; then
45
+ CFLAGS="$CFLAGS -DSAFE_CLEAN"
third-party/DPVO/Pangolin/scripts/vcpkg/ports/pbc/portfile.cmake ADDED
@@ -0,0 +1,113 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ set(PBC_VERSION 0.5.14)
2
+
3
+ if(NOT VCPKG_TARGET_IS_WINDOWS)
4
+ vcpkg_download_distfile(
5
+ ARCHIVE
6
+ URLS "https://crypto.stanford.edu/pbc/files/pbc-${PBC_VERSION}.tar.gz"
7
+ FILENAME pbc-${PBC_VERSION}.tar.gz
8
+ SHA512 d75d4ceb3f67ee62c7ca41e2a91ee914fbffaeb70256675aed6734d586950ea8e64e2f16dc069d71481eddb703624df8d46497005fb58e75cf098dd7e7961333
9
+ )
10
+
11
+ vcpkg_extract_source_archive_ex(
12
+ OUT_SOURCE_PATH SOURCE_PATH
13
+ ARCHIVE ${ARCHIVE}
14
+ REF ${PBC_VERSION}
15
+ PATCHES linux.patch
16
+ )
17
+
18
+ vcpkg_find_acquire_program(BISON)
19
+ vcpkg_find_acquire_program(FLEX)
20
+
21
+ if(VCPKG_LIBRARY_LINKAGE STREQUAL "static")
22
+ set(SHARED_STATIC --enable-static --disable-shared)
23
+ else()
24
+ set(SHARED_STATIC --disable-static --enable-shared)
25
+ endif()
26
+
27
+ set(OPTIONS ${SHARED_STATIC} LEX=${FLEX} YACC=${BISON}\ -y)
28
+
29
+ vcpkg_configure_make(
30
+ SOURCE_PATH ${SOURCE_PATH}
31
+ AUTOCONFIG
32
+ COPY_SOURCE
33
+ OPTIONS
34
+ ${OPTIONS}
35
+ )
36
+
37
+ vcpkg_install_make()
38
+
39
+ file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include ${CURRENT_PACKAGES_DIR}/debug/share ${CURRENT_PACKAGES_DIR}/share/info)
40
+ file(INSTALL ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright)
41
+ else()
42
+ vcpkg_check_linkage(ONLY_STATIC_LIBRARY)
43
+ vcpkg_from_github(
44
+ OUT_SOURCE_PATH SOURCE_PATH
45
+ REPO blynn/pbc
46
+ REF fbf4589036ce4f662e2d06905862c9e816cf9d08
47
+ SHA512 9348afd3866090b9fca189ae3a6bbb86c842b5f6ee7e1972f1a579993e589952c5926cb0795d4db1e647e3af263827e22c7602314c39bd97e03ffe9ad0fb48ab
48
+ HEAD_REF master
49
+ PATCHES windows.patch
50
+ )
51
+
52
+ set(CMAKE_FIND_LIBRARY_PREFIXES "")
53
+ set(CMAKE_FIND_LIBRARY_SUFFIXES "")
54
+
55
+ find_path(MPIR_INCLUDE_DIR "gmp.h" HINTS ${CURRENT_INSTALLED_DIR} PATH_SUFFIXES include)
56
+ if(NOT MPIR_INCLUDE_DIR)
57
+ message(FATAL_ERROR "GMP includes not found")
58
+ endif()
59
+
60
+ find_library(MPIR_LIBRARIES_REL NAMES "mpir.lib" HINTS ${CURRENT_INSTALLED_DIR} PATH_SUFFIXES lib)
61
+ if(NOT MPIR_LIBRARIES_REL)
62
+ message(FATAL_ERROR "mpir library not found")
63
+ endif()
64
+
65
+ find_library(MPIR_LIBRARIES_DBG NAMES "mpir.lib" HINTS ${CURRENT_INSTALLED_DIR} PATH_SUFFIXES debug/lib)
66
+ if(NOT MPIR_LIBRARIES_DBG)
67
+ message(FATAL_ERROR "mpir debug library not found")
68
+ endif()
69
+
70
+ if(VCPKG_LIBRARY_LINKAGE STREQUAL "static")
71
+ set(LibrarySuffix "lib")
72
+ set(ConfigurationSuffix "")
73
+ else()
74
+ set(LibrarySuffix "dll")
75
+ set(ConfigurationSuffix " DLL")
76
+ endif()
77
+
78
+ if(VCPKG_CRT_LINKAGE STREQUAL "static")
79
+ set(RuntimeLibraryExt "")
80
+ else()
81
+ set(RuntimeLibraryExt "DLL")
82
+ endif()
83
+
84
+ if(TRIPLET_SYSTEM_ARCH STREQUAL "x86")
85
+ set(Platform "Win32")
86
+ else()
87
+ set(Platform ${TRIPLET_SYSTEM_ARCH})
88
+ endif()
89
+
90
+ # PBC expects mpir directory in build root
91
+ get_filename_component(SOURCE_PATH_PARENT ${SOURCE_PATH} DIRECTORY)
92
+ file(REMOVE_RECURSE ${SOURCE_PATH_PARENT}/mpir)
93
+ file(MAKE_DIRECTORY ${SOURCE_PATH_PARENT}/mpir)
94
+ file(GLOB FILES ${MPIR_INCLUDE_DIR}/gmp*.h)
95
+ file(COPY ${FILES} ${MPIR_LIBRARIES_REL} DESTINATION "${SOURCE_PATH_PARENT}/mpir/${LibrarySuffix}/${Platform}/Release")
96
+ file(COPY ${FILES} ${MPIR_LIBRARIES_DBG} DESTINATION "${SOURCE_PATH_PARENT}/mpir/${LibrarySuffix}/${Platform}/Debug")
97
+
98
+ get_filename_component(SOURCE_PATH_SUFFIX ${SOURCE_PATH} NAME)
99
+ vcpkg_install_msbuild(SOURCE_PATH ${SOURCE_PATH_PARENT}
100
+ PROJECT_SUBPATH ${SOURCE_PATH_SUFFIX}/pbcwin/projects/pbclib.vcxproj
101
+ INCLUDES_SUBPATH ${SOURCE_PATH_SUFFIX}/include
102
+ LICENSE_SUBPATH ${SOURCE_PATH_SUFFIX}/COPYING
103
+ RELEASE_CONFIGURATION "Release${ConfigurationSuffix}"
104
+ DEBUG_CONFIGURATION "Debug${ConfigurationSuffix}"
105
+ OPTIONS_DEBUG "/p:RuntimeLibrary=MultiThreadedDebug${RuntimeLibraryExt}"
106
+ OPTIONS_RELEASE "/p:RuntimeLibrary=MultiThreaded${RuntimeLibraryExt}"
107
+ OPTIONS /p:SolutionDir=../
108
+ ALLOW_ROOT_INCLUDES ON
109
+ )
110
+
111
+ # clean up mpir stuff
112
+ file(REMOVE ${CURRENT_PACKAGES_DIR}/lib/mpir.lib ${CURRENT_PACKAGES_DIR}/debug/lib/mpir.lib)
113
+ endif()
third-party/DPVO/Pangolin/scripts/vcpkg/ports/pbc/vcpkg.json ADDED
@@ -0,0 +1,18 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "name": "pbc",
3
+ "version": "0.5.14",
4
+ "port-version": 6,
5
+ "description": "Pairing-Based Crypto library provides low-level routines for pairing-based cryptosystems.",
6
+ "homepage": "https://crypto.stanford.edu/pbc",
7
+ "supports": "!uwp & !arm",
8
+ "dependencies": [
9
+ {
10
+ "name": "gmp",
11
+ "platform": "!windows"
12
+ },
13
+ {
14
+ "name": "mpir",
15
+ "platform": "windows"
16
+ }
17
+ ]
18
+ }
third-party/DPVO/Pangolin/scripts/vcpkg/ports/pbc/windows.patch ADDED
@@ -0,0 +1,130 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ diff --git "a/include/pbc_curve.h" "b/include/pbc_curve.h"
2
+ --- "a/include/pbc_curve.h"
3
+ +++ "b/include/pbc_curve.h"
4
+ @@ -60,7 +60,9 @@
5
+
6
+ void field_curve_set_quotient_cmp(field_ptr c, mpz_t quotient_cmp);
7
+
8
+ +#ifdef __GNUC__
9
+ #pragma GCC visibility push(hidden)
10
+ +#endif
11
+ // Internal:
12
+
13
+ element_ptr curve_x_coord(element_t e);
14
+ @@ -74,6 +76,8 @@
15
+ void curve_set_si(element_t R, long int x, long int y);
16
+ void curve_set_gen_no_cofac(element_ptr a);
17
+
18
+ +#ifdef __GNUC__
19
+ #pragma GCC visibility pop
20
+ +#endif
21
+
22
+ #endif //__PBC_CURVE_H__
23
+ diff --git "a/include/pbc_vc_compat.win32.h" "b/include/pbc_vc_compat.win32.h"
24
+ index 27d3bba..7f772d4 100644
25
+ --- "a/include/pbc_vc_compat.win32.h"
26
+ +++ "b/include/pbc_vc_compat.win32.h"
27
+ @@ -3,7 +3,3 @@
28
+ #define __attribute__(X)
29
+ #define inline
30
+ #define __func__ __FUNCTION__
31
+ -
32
+ -#define NULL 0
33
+ -
34
+ -#define snprintf _snprintf
35
+
36
+ diff --git "a/pbcwin/projects/pbclib.vcxproj" "b/pbcwin/projects/pbclib.vcxproj"
37
+ index f0a9b3f..507c24d 100644
38
+ --- "a/pbcwin/projects/pbclib.vcxproj"
39
+ +++ "b/pbcwin/projects/pbclib.vcxproj"
40
+ @@ -214,13 +214,13 @@ <?xml version="1.0" encoding="utf-8"?>
41
+ </PropertyGroup>
42
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
43
+ <IncludePath>$(SolutionDir)..\include;$(SolutionDir)..;$(SolutionDir)..\..\mpir\lib\$(Platform)\Release;$(IncludePath)</IncludePath>
44
+ - <LibraryPath>$(SolutionDir)..\..\mpir\lib\x64\Release;$(LibraryPath)</LibraryPath>
45
+ + <LibraryPath>$(SolutionDir)..\..\mpir\lib\$(Platform)\Release;$(LibraryPath)</LibraryPath>
46
+ <OutDir>$(SolutionDir)lib\$(Platform)\Release\</OutDir>
47
+ <IntDir>$(SolutionDir)obj\$(Platform)\$(Configuration)\$(ProjectName)\</IntDir>
48
+ </PropertyGroup>
49
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
50
+ - <IncludePath>$(SolutionDir)..\include;$(SolutionDir)..;$(SolutionDir)..\..\mpir\lib\x64\Release;$(IncludePath)</IncludePath>
51
+ - <LibraryPath>$(SolutionDir)..\..\mpir\lib\x64\Release;$(LibraryPath)</LibraryPath>
52
+ + <IncludePath>$(SolutionDir)..\include;$(SolutionDir)..;$(SolutionDir)..\..\mpir\lib\$(Platform)\Release;$(IncludePath)</IncludePath>
53
+ + <LibraryPath>$(SolutionDir)..\..\mpir\lib\$(Platform)\Release;$(LibraryPath)</LibraryPath>
54
+ <OutDir>$(SolutionDir)lib\$(Platform)\Release\</OutDir>
55
+ <IntDir>$(SolutionDir)obj\$(Platform)\$(Configuration)\$(ProjectName)\</IntDir>
56
+ </PropertyGroup>
57
+ @@ -245,7 +245,8 @@ <?xml version="1.0" encoding="utf-8"?>
58
+ <PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
59
+ <ForcedIncludeFiles>pbc_vc_compat.win32.h</ForcedIncludeFiles>
60
+ <DisableSpecificWarnings>4068</DisableSpecificWarnings>
61
+ - <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
62
+ + <RuntimeLibrary>$(RuntimeLibrary)</RuntimeLibrary>
63
+ + <DebugInformationFormat>OldStyle</DebugInformationFormat>
64
+ </ClCompile>
65
+ <Link>
66
+ <GenerateDebugInformation>true</GenerateDebugInformation>
67
+ @@ -275,7 +276,8 @@ echo ***************************************************************************
68
+ <PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
69
+ <ForcedIncludeFiles>pbc_vc_compat.win32.h</ForcedIncludeFiles>
70
+ <DisableSpecificWarnings>4068</DisableSpecificWarnings>
71
+ - <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
72
+ + <RuntimeLibrary>$(RuntimeLibrary)</RuntimeLibrary>
73
+ + <DebugInformationFormat>OldStyle</DebugInformationFormat>
74
+ </ClCompile>
75
+ <Link>
76
+ <GenerateDebugInformation>true</GenerateDebugInformation>
77
+ @@ -305,7 +307,7 @@ echo ***************************************************************************
78
+ <PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
79
+ <ForcedIncludeFiles>pbc_vc_compat.win32.h</ForcedIncludeFiles>
80
+ <DisableSpecificWarnings>4068</DisableSpecificWarnings>
81
+ - <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
82
+ + <RuntimeLibrary>$(RuntimeLibrary)</RuntimeLibrary>
83
+ </ClCompile>
84
+ <Link>
85
+ <GenerateDebugInformation>true</GenerateDebugInformation>
86
+ @@ -332,7 +334,7 @@ echo ***************************************************************************
87
+ <PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
88
+ <ForcedIncludeFiles>pbc_vc_compat.win32.h</ForcedIncludeFiles>
89
+ <DisableSpecificWarnings>4068</DisableSpecificWarnings>
90
+ - <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
91
+ + <RuntimeLibrary>$(RuntimeLibrary)</RuntimeLibrary>
92
+ </ClCompile>
93
+ <Link>
94
+ <GenerateDebugInformation>true</GenerateDebugInformation>
95
+ @@ -361,7 +363,7 @@ echo ***************************************************************************
96
+ <PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
97
+ <ForcedIncludeFiles>pbc_vc_compat.win32.h</ForcedIncludeFiles>
98
+ <DisableSpecificWarnings>4068</DisableSpecificWarnings>
99
+ - <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
100
+ + <RuntimeLibrary>$(RuntimeLibrary)</RuntimeLibrary>
101
+ </ClCompile>
102
+ <Link>
103
+ <GenerateDebugInformation>true</GenerateDebugInformation>
104
+ @@ -395,7 +397,7 @@ echo ***************************************************************************
105
+ <PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
106
+ <ForcedIncludeFiles>pbc_vc_compat.win32.h</ForcedIncludeFiles>
107
+ <DisableSpecificWarnings>4068</DisableSpecificWarnings>
108
+ - <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
109
+ + <RuntimeLibrary>$(RuntimeLibrary)</RuntimeLibrary>
110
+ </ClCompile>
111
+ <Link>
112
+ <GenerateDebugInformation>true</GenerateDebugInformation>
113
+ @@ -429,7 +431,7 @@ echo ***************************************************************************
114
+ <PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
115
+ <ForcedIncludeFiles>pbc_vc_compat.win32.h</ForcedIncludeFiles>
116
+ <DisableSpecificWarnings>4068</DisableSpecificWarnings>
117
+ - <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
118
+ + <RuntimeLibrary>$(RuntimeLibrary)</RuntimeLibrary>
119
+ </ClCompile>
120
+ <Link>
121
+ <GenerateDebugInformation>true</GenerateDebugInformation>
122
+ @@ -460,7 +462,7 @@ echo ***************************************************************************
123
+ <PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
124
+ <ForcedIncludeFiles>pbc_vc_compat.win32.h</ForcedIncludeFiles>
125
+ <DisableSpecificWarnings>4068</DisableSpecificWarnings>
126
+ - <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
127
+ + <RuntimeLibrary>$(RuntimeLibrary)</RuntimeLibrary>
128
+ </ClCompile>
129
+ <Link>
130
+ <GenerateDebugInformation>true</GenerateDebugInformation>
third-party/DPVO/Pangolin/scripts/vcpkg/ports/pcapplusplus/CMakeLists.txt ADDED
@@ -0,0 +1,106 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ cmake_minimum_required(VERSION 3.12)
2
+
3
+ project(pcapplusplus CXX)
4
+
5
+ list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_LIST_DIR}")
6
+
7
+ if (WIN32)
8
+ set(BUILD_SHARED_LIBS OFF)
9
+ endif()
10
+
11
+ # dependencies
12
+ include(FindPackageHandleStandardArgs)
13
+ include(SelectLibraryConfigurations)
14
+ if (WIN32)
15
+ find_path(PCAP_INCLUDES NAMES pcap.h)
16
+ find_library(PCAP_LIBRARY_RELEASE NAMES wpcap PATH_SUFFIXES lib REQUIRED)
17
+ find_library(PCAP_LIBRARY_DEBUG NAMES wpcap PATH_SUFFIXES lib REQUIRED)
18
+ find_library(PACKET_LIBRARY_RELEASE NAMES Packet PATH_SUFFIXES lib REQUIRED)
19
+ find_library(PACKET_LIBRARY_DEBUG NAMES Packet PATH_SUFFIXES lib REQUIRED)
20
+ select_library_configurations(PCAP)
21
+ select_library_configurations(PACKET)
22
+ list(APPEND PCAP_LIBRARIES ${PACKET_LIBRARIES})
23
+ else()
24
+ find_path(PCAP_INCLUDES NAMES pcap.h)
25
+ find_library(PCAP_LIBRARY_RELEASE NAMES pcap PATH_SUFFIXES lib REQUIRED)
26
+ find_library(PCAP_LIBRARY_DEBUG NAMES pcap PATH_SUFFIXES lib REQUIRED)
27
+ select_library_configurations(PCAP)
28
+ endif()
29
+
30
+ find_package(Threads REQUIRED)
31
+
32
+ # common++
33
+ file(GLOB COMMONPP_HEADERS "${CMAKE_CURRENT_LIST_DIR}/Common++/header/*.h")
34
+ file(GLOB COMMONPP_SOURCES "${CMAKE_CURRENT_LIST_DIR}/Common++/src/*.cpp")
35
+
36
+ add_library(commonpp ${COMMONPP_SOURCES})
37
+
38
+ target_include_directories(commonpp PUBLIC "${CMAKE_CURRENT_LIST_DIR}/Common++/header"
39
+ "${CMAKE_CURRENT_LIST_DIR}/3rdParty/EndianPortable/include")
40
+ set_target_properties(commonpp PROPERTIES OUTPUT_NAME Common++)
41
+ if (WIN32)
42
+ target_compile_definitions(commonpp PRIVATE WPCAP HAVE_REMOTE _CRT_SECURE_NO_WARNINGS)
43
+ elseif (UNIX AND NOT APPLE)
44
+ target_compile_definitions(commonpp PRIVATE LINUX)
45
+ elseif (APPLE)
46
+ target_compile_definitions(commonpp PRIVATE MAC_OS_X)
47
+ endif()
48
+
49
+ # packet++
50
+ file(GLOB PACKETPP_HEADERS "${CMAKE_CURRENT_LIST_DIR}/Packet++/header/*.h")
51
+ file(GLOB PACKETPP_SOURCES "${CMAKE_CURRENT_LIST_DIR}/Packet++/src/*.cpp")
52
+ list(APPEND PACKETPP_SOURCES "${CMAKE_CURRENT_LIST_DIR}/3rdParty/hash-library/md5.cpp")
53
+
54
+ add_library(packetpp ${PACKETPP_SOURCES})
55
+
56
+ target_include_directories(packetpp PUBLIC "${CMAKE_CURRENT_LIST_DIR}/Packet++/header"
57
+ "${CMAKE_CURRENT_LIST_DIR}/3rdParty/hash-library")
58
+ target_link_libraries(packetpp PRIVATE commonpp)
59
+ set_target_properties(packetpp PROPERTIES OUTPUT_NAME Packet++)
60
+ if (WIN32)
61
+ target_compile_definitions(packetpp PRIVATE WPCAP HAVE_REMOTE _CRT_SECURE_NO_WARNINGS)
62
+ elseif (UNIX AND NOT APPLE)
63
+ target_compile_definitions(packetpp PRIVATE LINUX)
64
+ elseif (APPLE)
65
+ target_compile_definitions(packetpp PRIVATE MAC_OS_X)
66
+ endif()
67
+
68
+ # pcap++
69
+ file(GLOB PCAPPP_HEADERS "${CMAKE_CURRENT_LIST_DIR}/Pcap++/header/*.h")
70
+ file(GLOB PCAPPP_SOURCES "${CMAKE_CURRENT_LIST_DIR}/Pcap++/src/*.cpp")
71
+ file(GLOB LIGHTPCAPNG_SOURCES "${CMAKE_CURRENT_LIST_DIR}/3rdParty/LightPcapNg/LightPcapNg/src/*.cpp")
72
+
73
+ add_library(pcappp ${PCAPPP_SOURCES})
74
+
75
+ target_include_directories(pcappp PUBLIC "${CMAKE_CURRENT_LIST_DIR}/Pcap++/header" "${PCAP_INCLUDES}"
76
+ "${CMAKE_CURRENT_LIST_DIR}/3rdParty/LightPcapNg/LightPcapNg/include")
77
+ target_link_libraries(pcappp PUBLIC commonpp packetpp ${PCAP_LIBRARIES} Threads::Threads)
78
+
79
+ if (WIN32)
80
+ target_link_libraries(pcappp PUBLIC ws2_32 iphlpapi)
81
+ elseif (APPLE)
82
+ find_library(COREFOUNDATION_LIBRARY CoreFoundation)
83
+ find_library(SYSTEMCONFIGURATION_LIBRARY SystemConfiguration)
84
+ target_link_libraries(pcappp PUBLIC ${COREFOUNDATION_LIBRARY} ${SYSTEMCONFIGURATION_LIBRARY})
85
+ endif()
86
+
87
+ if (WIN32)
88
+ target_compile_definitions(pcappp PRIVATE WPCAP HAVE_REMOTE HAVE_STRUCT_TIMESPEC _CRT_SECURE_NO_WARNINGS)
89
+ elseif (UNIX AND NOT APPLE)
90
+ target_compile_definitions(pcappp PRIVATE LINUX)
91
+ elseif (APPLE)
92
+ target_compile_definitions(pcappp PRIVATE MAC_OS_X)
93
+ endif()
94
+
95
+ set_target_properties(pcappp PROPERTIES OUTPUT_NAME Pcap++)
96
+
97
+ # Install
98
+ install(FILES ${PCAPPP_HEADERS} ${COMMONPP_HEADERS} ${PACKETPP_HEADERS} DESTINATION include)
99
+ install(FILES "${CMAKE_CURRENT_LIST_DIR}/LICENSE" DESTINATION share/pcapplusplus)
100
+
101
+ install(
102
+ TARGETS pcappp commonpp packetpp
103
+ RUNTIME DESTINATION bin
104
+ LIBRARY DESTINATION lib
105
+ ARCHIVE DESTINATION lib
106
+ )
third-party/DPVO/Pangolin/scripts/vcpkg/ports/pcapplusplus/portfile.cmake ADDED
@@ -0,0 +1,23 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ if (VCPKG_TARGET_IS_WINDOWS)
2
+ vcpkg_check_linkage(ONLY_STATIC_LIBRARY)
3
+ endif()
4
+
5
+ vcpkg_from_github(
6
+ OUT_SOURCE_PATH SOURCE_PATH
7
+ REPO seladb/PcapPlusPlus
8
+ REF v21.11
9
+ SHA512 ad10034950c0c3e6a4638e8b314c8983ce42609948d7d8d40ad0ff678820a2469807bd29aff77e657a150008602475b50cea84a0766ad87ea203985519cb38ac
10
+ HEAD_REF master
11
+ )
12
+ file(COPY "${CURRENT_PORT_DIR}/CMakeLists.txt" DESTINATION "${SOURCE_PATH}")
13
+
14
+ vcpkg_cmake_configure(
15
+ SOURCE_PATH "${SOURCE_PATH}"
16
+ )
17
+
18
+ vcpkg_cmake_install()
19
+ vcpkg_copy_pdbs()
20
+
21
+ file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include" "${CURRENT_PACKAGES_DIR}/debug/share")
22
+
23
+ file(RENAME "${CURRENT_PACKAGES_DIR}/share/${PORT}/LICENSE" "${CURRENT_PACKAGES_DIR}/share/${PORT}/copyright")
third-party/DPVO/Pangolin/scripts/vcpkg/ports/pcapplusplus/vcpkg.json ADDED
@@ -0,0 +1,26 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "name": "pcapplusplus",
3
+ "version": "21.11",
4
+ "port-version": 1,
5
+ "description": "PcapPlusPlus is a multi-platform C++ library for capturing, parsing and crafting of network packets",
6
+ "homepage": "https://github.com/seladb/PcapPlusPlus",
7
+ "license": null,
8
+ "dependencies": [
9
+ {
10
+ "name": "libpcap",
11
+ "platform": "!windows"
12
+ },
13
+ {
14
+ "name": "pthreads",
15
+ "platform": "windows"
16
+ },
17
+ {
18
+ "name": "vcpkg-cmake",
19
+ "host": true
20
+ },
21
+ {
22
+ "name": "winpcap",
23
+ "platform": "windows"
24
+ }
25
+ ]
26
+ }
third-party/DPVO/Pangolin/scripts/vcpkg/ports/pcg/portfile.cmake ADDED
@@ -0,0 +1,12 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ vcpkg_from_github(
2
+ OUT_SOURCE_PATH SOURCE_PATH
3
+ REPO imneme/pcg-cpp
4
+ REF ffd522e7188bef30a00c74dc7eb9de5faff90092
5
+ SHA512 e96e40bf63ddb29ebf8679ddaabbf5dc934173f38cb5ed97c5efe068a742a715daa05e38d9ae322a10fa538c8ec7a271622bfb6569256a471fe5e1c9a83f9e3f
6
+ HEAD_REF master
7
+ )
8
+
9
+ file(INSTALL ${SOURCE_PATH}/include/pcg_extras.hpp DESTINATION ${CURRENT_PACKAGES_DIR}/include)
10
+ file(INSTALL ${SOURCE_PATH}/include/pcg_random.hpp DESTINATION ${CURRENT_PACKAGES_DIR}/include)
11
+ file(INSTALL ${SOURCE_PATH}/include/pcg_uint128.hpp DESTINATION ${CURRENT_PACKAGES_DIR}/include)
12
+ file(INSTALL ${SOURCE_PATH}/LICENSE-MIT.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright)
third-party/DPVO/Pangolin/scripts/vcpkg/ports/pcg/vcpkg.json ADDED
@@ -0,0 +1,6 @@
 
 
 
 
 
 
 
1
+ {
2
+ "name": "pcg",
3
+ "version-string": "2021-04-06",
4
+ "port-version": 1,
5
+ "description": "Permuted Congruential Generator"
6
+ }
third-party/DPVO/Pangolin/scripts/vcpkg/ports/pcl/add-gcc-version-check.patch ADDED
@@ -0,0 +1,27 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ From 116e665df611242ea0575a62478c31ec03e78fcc Mon Sep 17 00:00:00 2001
2
+ From: raahilsha-z <[email protected]>
3
+ Date: Wed, 7 Jul 2021 15:53:49 -0400
4
+ Subject: [PATCH] add gcc version check
5
+
6
+ ---
7
+ CMakeLists.txt | 4 ++++
8
+ 1 file changed, 4 insertions(+)
9
+
10
+ diff --git a/CMakeLists.txt b/CMakeLists.txt
11
+ index 63b38df68..29f79d31b 100644
12
+ --- a/CMakeLists.txt
13
+ +++ b/CMakeLists.txt
14
+ @@ -311,6 +311,10 @@ if(NOT (${FLANN_LIBRARY_TYPE} MATCHES ${PCL_FLANN_REQUIRED_TYPE}) AND NOT (${PCL
15
+ message(FATAL_ERROR "Flann was selected with ${PCL_FLANN_REQUIRED_TYPE} but found as ${FLANN_LIBRARY_TYPE}")
16
+ endif()
17
+
18
+ +if(UNIX AND CMAKE_CXX_COMPILER_VERSION VERSION_LESS 6.0)
19
+ + set (CMAKE_CXX_STANDARD 17)
20
+ +endif()
21
+ +
22
+ # libusb
23
+ option(WITH_LIBUSB "Build USB RGBD-Camera drivers" TRUE)
24
+ if(WITH_LIBUSB)
25
+ --
26
+ 2.32.0.windows.1
27
+
third-party/DPVO/Pangolin/scripts/vcpkg/ports/pcl/fix-check-sse.patch ADDED
@@ -0,0 +1,25 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ From c65e034afb538932f4ff55a93332f875ae43a578 Mon Sep 17 00:00:00 2001
2
+ From: raahilsha-z <[email protected]>
3
+ Date: Wed, 7 Jul 2021 15:54:33 -0400
4
+ Subject: [PATCH] fix check sse
5
+
6
+ ---
7
+ CMakeLists.txt | 2 +-
8
+ 1 file changed, 1 insertion(+), 1 deletion(-)
9
+
10
+ diff --git a/CMakeLists.txt b/CMakeLists.txt
11
+ index 29f79d31b..a1d9bb58f 100644
12
+ --- a/CMakeLists.txt
13
+ +++ b/CMakeLists.txt
14
+ @@ -86,7 +86,7 @@ endif()
15
+
16
+ # check for SSE flags
17
+ include("${PCL_SOURCE_DIR}/cmake/pcl_find_sse.cmake")
18
+ -if(PCL_ENABLE_SSE AND "${CMAKE_CXX_FLAGS}" STREQUAL "${CMAKE_CXX_FLAGS_DEFAULT}")
19
+ +if(PCL_ENABLE_SSE)
20
+ PCL_CHECK_FOR_SSE()
21
+ endif()
22
+
23
+ --
24
+ 2.32.0.windows.1
25
+