diff --git a/ports/pcl/1635.patch b/ports/pcl/1635.patch new file mode 100644 index 00000000000000..71609794901bb7 --- /dev/null +++ b/ports/pcl/1635.patch @@ -0,0 +1,36 @@ +From 8710ee9b6c3ef236a84450ab9fd1f8f167c87a56 Mon Sep 17 00:00:00 2001 +From: Tsukasa Sugiura +Date: Thu, 16 Jun 2016 01:52:29 +0900 +Subject: [PATCH] Fix compile error C2440 of pcl_visualization on MSVC + +The pcl_visualization occur compile error C2440 on MSVC. +This error occurs because that can not directly cast to enum type from +double type in MSVC. +It must explicitly cast to int type from double type before cast to enum +type. +--- + visualization/src/pcl_visualizer.cpp | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/visualization/src/pcl_visualizer.cpp b/visualization/src/pcl_visualizer.cpp +index b5fabde110..7c84b7543e 100644 +--- a/visualization/src/pcl_visualizer.cpp ++++ b/visualization/src/pcl_visualizer.cpp +@@ -1492,7 +1492,7 @@ pcl::visualization::PCLVisualizer::setPointCloudRenderingProperties ( + actor->GetMapper ()->ScalarVisibilityOn (); + actor->GetMapper ()->SetScalarRange (range[0], range[1]); + vtkSmartPointer table; +- if (!pcl::visualization::getColormapLUT (static_cast(value), table)) ++ if (!pcl::visualization::getColormapLUT (static_cast(static_cast(value)), table)) + break; + table->SetRange (range[0], range[1]); + actor->GetMapper ()->SetLookupTable (table); +@@ -1738,7 +1738,7 @@ pcl::visualization::PCLVisualizer::setShapeRenderingProperties ( + actor->GetMapper ()->ScalarVisibilityOn (); + actor->GetMapper ()->SetScalarRange (range[0], range[1]); + vtkSmartPointer table = vtkSmartPointer::New (); +- getColormapLUT (static_cast(value), table); ++ getColormapLUT (static_cast(static_cast(value)), table); + table->SetRange (range[0], range[1]); + actor->GetMapper ()->SetLookupTable (table); + style_->updateLookUpTableDisplay (false); diff --git a/ports/pcl/1788.patch b/ports/pcl/1788.patch new file mode 100644 index 00000000000000..da384708a26006 --- /dev/null +++ b/ports/pcl/1788.patch @@ -0,0 +1,24 @@ +From 1216590288f9c1e9195954c06cebdc421a8a3986 Mon Sep 17 00:00:00 2001 +From: Tsukasa Sugiura +Date: Fri, 30 Dec 2016 05:11:36 +0900 +Subject: [PATCH] Update find Boost versions + +Update find Boost versions. +Add Boost 1.62.0 and Boost 1.63.0. +--- + cmake/pcl_find_boost.cmake | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/cmake/pcl_find_boost.cmake b/cmake/pcl_find_boost.cmake +index a3abe1c069..7ccf80c727 100644 +--- a/cmake/pcl_find_boost.cmake ++++ b/cmake/pcl_find_boost.cmake +@@ -19,7 +19,7 @@ if(${CMAKE_VERSION} VERSION_LESS 2.8.5) + "1.46.0" "1.46" "1.45.0" "1.45" "1.44.0" "1.44" "1.43.0" "1.43") + else(${CMAKE_VERSION} VERSION_LESS 2.8.5) + set(Boost_ADDITIONAL_VERSIONS +- "1.61.0" "1.61" "1.60.0" "1.60" ++ "1.63.0" "1.63" "1.62.0" "1.62" "1.61.0" "1.61" "1.60.0" "1.60" + "1.59.0" "1.59" "1.58.0" "1.58" "1.57.0" "1.57" "1.56.0" "1.56" "1.55.0" "1.55" + "1.54.0" "1.54" "1.53.0" "1.53" "1.52.0" "1.52" "1.51.0" "1.51" + "1.50.0" "1.50" "1.49.0" "1.49" "1.48.0" "1.48" "1.47.0" "1.47") diff --git a/ports/pcl/1823.patch b/ports/pcl/1823.patch new file mode 100644 index 00000000000000..cc901a6bedd451 --- /dev/null +++ b/ports/pcl/1823.patch @@ -0,0 +1,22 @@ +From b89b32b5e812353e93a5c35203c70b878c8ae2b7 Mon Sep 17 00:00:00 2001 +From: Mourad Boufarguine +Date: Mon, 20 Feb 2017 10:13:25 +0100 +Subject: [PATCH] Link to delayimp library for all MSVC versions + +--- + cmake/pcl_targets.cmake | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/cmake/pcl_targets.cmake b/cmake/pcl_targets.cmake +index 691ead0b7a..06df2791cd 100644 +--- a/cmake/pcl_targets.cmake ++++ b/cmake/pcl_targets.cmake +@@ -196,7 +196,7 @@ macro(PCL_ADD_LIBRARY _name _component) + target_link_libraries(${_name} gomp) + endif() + +- if(MSVC90 OR MSVC10) ++ if(MSVC) + target_link_libraries(${_name} delayimp.lib) # because delay load is enabled for openmp.dll + endif() + diff --git a/ports/pcl/1830.patch b/ports/pcl/1830.patch new file mode 100644 index 00000000000000..b197e9183b0930 --- /dev/null +++ b/ports/pcl/1830.patch @@ -0,0 +1,68 @@ +From b9022ebd8ad5f5300662069b5f79995d0c0e18be Mon Sep 17 00:00:00 2001 +From: Tsukasa Sugiura +Date: Fri, 24 Feb 2017 23:52:40 +0900 +Subject: [PATCH] Remove MSVCdd variables + +Version check for MSVC with MSVC_VERSION variable instead of MSVCdd +variables, because MSVCdd variables are legacy. +(e.g. MSVCdd is not defined for Visual C++ 2017.) +--- + CMakeLists.txt | 14 +++++++------- + cmake/pcl_cpack.cmake | 10 +++++----- + 2 files changed, 12 insertions(+), 12 deletions(-) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 7c455e175d..a07a3af0a4 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -248,18 +248,18 @@ if(OPENMP_FOUND) + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${OpenMP_CXX_FLAGS}") + message (STATUS "Found OpenMP") + if(MSVC) +- if(MSVC90) ++ if(MSVC_VERSION EQUAL 1500) + set(OPENMP_DLL VCOMP90) +- elseif(MSVC10) ++ elseif(MSVC_VERSION EQUAL 1600) + set(OPENMP_DLL VCOMP100) +- elseif(MSVC11) ++ elseif(MSVC_VERSION EQUAL 1700) + set(OPENMP_DLL VCOMP110) +- elseif(MSVC12) ++ elseif(MSVC_VERSION EQUAL 1800) + set(OPENMP_DLL VCOMP120) +- elseif(MSVC14) ++ elseif(MSVC_VERSION EQUAL 1900) ++ set(OPENMP_DLL VCOMP140) ++ elseif(MSVC_VERSION EQUAL 1910) + set(OPENMP_DLL VCOMP140) +- elseif(MSVC15) +- set(OPENMP_DLL VCOMP150) + endif() + if(OPENMP_DLL) + set(CMAKE_SHARED_LINKER_FLAGS_DEBUG "${CMAKE_SHARED_LINKER_FLAGS_DEBUG} /DELAYLOAD:${OPENMP_DLL}D.dll") +diff --git a/cmake/pcl_cpack.cmake b/cmake/pcl_cpack.cmake +index a42d930d2c..eec2b1b1db 100644 +--- a/cmake/pcl_cpack.cmake ++++ b/cmake/pcl_cpack.cmake +@@ -37,15 +37,15 @@ if(WIN32) + if(BUILD_all_in_one_installer) + set(CPACK_NSIS_PACKAGE_NAME "${PROJECT_NAME}-${PCL_VERSION}-AllInOne") + endif(BUILD_all_in_one_installer) +- if(MSVC10) ++ if(MSVC_VERSION EQUAL 1600) + set(CPACK_NSIS_PACKAGE_NAME "${CPACK_NSIS_PACKAGE_NAME}-msvc2010-${win_system_name}") +- elseif(MSVC11) ++ elseif(MSVC_VERSION EQUAL 1700) + set(CPACK_NSIS_PACKAGE_NAME "${CPACK_NSIS_PACKAGE_NAME}-msvc2012-${win_system_name}") +- elseif(MSVC12) ++ elseif(MSVC_VERSION EQUAL 1800) + set(CPACK_NSIS_PACKAGE_NAME "${CPACK_NSIS_PACKAGE_NAME}-msvc2013-${win_system_name}") +- elseif(MSVC14) ++ elseif(MSVC_VERSION EQUAL 1900) + set(CPACK_NSIS_PACKAGE_NAME "${CPACK_NSIS_PACKAGE_NAME}-msvc2015-${win_system_name}") +- elseif(MSVC15) ++ elseif(MSVC_VERSION EQUAL 1910) + set(CPACK_NSIS_PACKAGE_NAME "${CPACK_NSIS_PACKAGE_NAME}-msvc2017-${win_system_name}") + else() + set(CPACK_NSIS_PACKAGE_NAME "${CPACK_NSIS_PACKAGE_NAME}-${win_system_name}") diff --git a/ports/pcl/1855.patch b/ports/pcl/1855.patch new file mode 100644 index 00000000000000..319408849d66ea --- /dev/null +++ b/ports/pcl/1855.patch @@ -0,0 +1,24 @@ +From 274e55a289c1f67e19c24a7672453384527247eb Mon Sep 17 00:00:00 2001 +From: Tsukasa Sugiura +Date: Tue, 18 Apr 2017 21:54:12 +0900 +Subject: [PATCH] Update find Boost version + +Update find Boost version. +Add Boost 1.64.0 that supported Visual Studio 2017. +--- + cmake/pcl_find_boost.cmake | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/cmake/pcl_find_boost.cmake b/cmake/pcl_find_boost.cmake +index 7ccf80c727..68920ccd41 100644 +--- a/cmake/pcl_find_boost.cmake ++++ b/cmake/pcl_find_boost.cmake +@@ -19,7 +19,7 @@ if(${CMAKE_VERSION} VERSION_LESS 2.8.5) + "1.46.0" "1.46" "1.45.0" "1.45" "1.44.0" "1.44" "1.43.0" "1.43") + else(${CMAKE_VERSION} VERSION_LESS 2.8.5) + set(Boost_ADDITIONAL_VERSIONS +- "1.63.0" "1.63" "1.62.0" "1.62" "1.61.0" "1.61" "1.60.0" "1.60" ++ "1.64.0" "1.64" "1.63.0" "1.63" "1.62.0" "1.62" "1.61.0" "1.61" "1.60.0" "1.60" + "1.59.0" "1.59" "1.58.0" "1.58" "1.57.0" "1.57" "1.56.0" "1.56" "1.55.0" "1.55" + "1.54.0" "1.54" "1.53.0" "1.53" "1.52.0" "1.52" "1.51.0" "1.51" + "1.50.0" "1.50" "1.49.0" "1.49" "1.48.0" "1.48" "1.47.0" "1.47") diff --git a/ports/pcl/1856.patch b/ports/pcl/1856.patch new file mode 100644 index 00000000000000..75ccccc95ff74e --- /dev/null +++ b/ports/pcl/1856.patch @@ -0,0 +1,23 @@ +From fd32c32e92c24823b4852f44221e67aba7accbf3 Mon Sep 17 00:00:00 2001 +From: Tsukasa Sugiura +Date: Sun, 23 Apr 2017 01:36:06 +0900 +Subject: [PATCH] Update find Boost versions for PCLConfig + +Add latest versions to find Boost macro. +--- + PCLConfig.cmake.in | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/PCLConfig.cmake.in b/PCLConfig.cmake.in +index fd214a85cb..af1f772db6 100644 +--- a/PCLConfig.cmake.in ++++ b/PCLConfig.cmake.in +@@ -91,7 +91,7 @@ macro(find_boost) + else(${CMAKE_VERSION} VERSION_LESS 2.8.5) + set(Boost_ADDITIONAL_VERSIONS + "@Boost_MAJOR_VERSION@.@Boost_MINOR_VERSION@.@Boost_SUBMINOR_VERSION@" "@Boost_MAJOR_VERSION@.@Boost_MINOR_VERSION@" +- "1.61.0" "1.61" "1.60.0" "1.60" ++ "1.64.0" "1.64" "1.63.0" "1.63" "1.62.0" "1.62" "1.61.0" "1.61" "1.60.0" "1.60" + "1.59.0" "1.59" "1.58.0" "1.58" "1.57.0" "1.57" "1.56.0" "1.56" "1.55.0" "1.55" + "1.54.0" "1.54" "1.53.0" "1.53" "1.52.0" "1.52" "1.51.0" "1.51" + "1.50.0" "1.50" "1.49.0" "1.49" "1.48.0" "1.48" "1.47.0" "1.47") diff --git a/ports/pcl/CONTROL b/ports/pcl/CONTROL new file mode 100644 index 00000000000000..aa3b892b6f1770 --- /dev/null +++ b/ports/pcl/CONTROL @@ -0,0 +1,4 @@ +Source: pcl +Version: 1.8.0 +Build-Depends: boost, eigen3, flann, qhull, vtk, openni2 +Description: Point Cloud Library (PCL) is open source library for 2D/3D image and point cloud processing. diff --git a/ports/pcl/config.patch b/ports/pcl/config.patch new file mode 100644 index 00000000000000..2f1e26bb2df870 --- /dev/null +++ b/ports/pcl/config.patch @@ -0,0 +1,39 @@ +diff --git a/PCLConfig.cmake.in b/PCLConfig.cmake.in +index 994d20e5d..7f57c0790 100644 +--- a/PCLConfig.cmake.in ++++ b/PCLConfig.cmake.in +@@ -149,7 +149,7 @@ macro(find_qhull) + NAMES "@QHULL_LIBRARY_DEBUG_NAME@" + HINTS "${QHULL_ROOT}" "$ENV{QHULL_ROOT}" + PATHS "$ENV{PROGRAMFILES}/qhull" "$ENV{PROGRAMW6432}/qhull" +- PATH_SUFFIXES project build bin lib) ++ PATH_SUFFIXES project build bin debug/lib) + + find_package_handle_standard_args(qhull DEFAULT_MSG QHULL_LIBRARY QHULL_INCLUDE_DIRS) + +@@ -433,7 +433,7 @@ macro(find_flann) + HINTS ${PC_FLANN_LIBDIR} ${PC_FLANN_LIBRARY_DIRS} "${FLANN_ROOT}" "$ENV{FLANN_ROOT}" + PATHS "$ENV{PROGRAMFILES}/flann 1.6.9" "$ENV{PROGRAMW6432}/flann 1.6.9" + "$ENV{PROGRAMFILES}/flann" "$ENV{PROGRAMW6432}/flann" +- PATH_SUFFIXES lib) ++ PATH_SUFFIXES debug/lib) + + find_package_handle_standard_args(Flann DEFAULT_MSG FLANN_LIBRARY FLANN_INCLUDE_DIRS) + if(FLANN_FOUND) +@@ -708,6 +708,7 @@ file(TO_CMAKE_PATH "${PCL_DIR}" PCL_DIR) + if(WIN32 AND NOT MINGW) + # PCLConfig.cmake is installed to PCL_ROOT/cmake + get_filename_component(PCL_ROOT "${PCL_DIR}" PATH) ++ get_filename_component(PCL_ROOT "${PCL_ROOT}" PATH) + else(WIN32 AND NOT MINGW) + # PCLConfig.cmake is installed to PCL_ROOT/share/pcl-x.y + get_filename_component(PCL_ROOT "${PCL_DIR}" PATH) +@@ -719,7 +720,7 @@ if(EXISTS "${PCL_ROOT}/include/pcl-${PCL_VERSION_MAJOR}.${PCL_VERSION_MINOR}/pcl + # Found a PCL installation + # pcl_message("Found a PCL installation") + set(PCL_INCLUDE_DIRS "${PCL_ROOT}/include/pcl-${PCL_VERSION_MAJOR}.${PCL_VERSION_MINOR}") +- set(PCL_LIBRARY_DIRS "${PCL_ROOT}/@LIB_INSTALL_DIR@") ++ set(PCL_LIBRARY_DIRS "${PCL_ROOT}/@LIB_INSTALL_DIR@" "${PCL_ROOT}/debug/@LIB_INSTALL_DIR@") + if(EXISTS "${PCL_ROOT}/3rdParty") + set(PCL_ALL_IN_ONE_INSTALLER ON) + endif(EXISTS "${PCL_ROOT}/3rdParty") diff --git a/ports/pcl/config_install.patch b/ports/pcl/config_install.patch new file mode 100644 index 00000000000000..de11bd939a4869 --- /dev/null +++ b/ports/pcl/config_install.patch @@ -0,0 +1,13 @@ +diff --git a/cmake/pcl_utils.cmake b/cmake/pcl_utils.cmake +index 55b0820f2..034fbc227 100644 +--- a/cmake/pcl_utils.cmake ++++ b/cmake/pcl_utils.cmake +@@ -109,7 +109,7 @@ macro(SET_INSTALL_DIRS) + set(BIN_INSTALL_DIR "bin") + set(PKGCFG_INSTALL_DIR "${LIB_INSTALL_DIR}/pkgconfig") + if(WIN32 AND NOT MINGW) +- set(PCLCONFIG_INSTALL_DIR "cmake") ++ set(PCLCONFIG_INSTALL_DIR "share/pcl") + else(WIN32 AND NOT MINGW) + set(PCLCONFIG_INSTALL_DIR "share/${PROJECT_NAME_LOWER}-${PCL_MAJOR_VERSION}.${PCL_MINOR_VERSION}") + endif(WIN32 AND NOT MINGW) diff --git a/ports/pcl/find_flann.patch b/ports/pcl/find_flann.patch new file mode 100644 index 00000000000000..e4661825565163 --- /dev/null +++ b/ports/pcl/find_flann.patch @@ -0,0 +1,35 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index e5fd763e3..241fa5208 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -276,9 +276,9 @@ include_directories(SYSTEM ${EIGEN_INCLUDE_DIRS}) + add_definitions(-DEIGEN_USE_NEW_STDVECTOR + -DEIGEN_YES_I_KNOW_SPARSE_MODULE_IS_NOT_STABLE_YET) + # FLANN (required) +-if(NOT PCL_SHARED_LIBS OR (WIN32 AND NOT MINGW)) ++if(NOT PCL_SHARED_LIBS) + set(FLANN_USE_STATIC ON) +-endif(NOT PCL_SHARED_LIBS OR (WIN32 AND NOT MINGW)) ++endif(NOT PCL_SHARED_LIBS) + find_package(FLANN 1.7.0 REQUIRED) + include_directories(${FLANN_INCLUDE_DIRS}) + +diff --git a/cmake/Modules/FindFLANN.cmake b/cmake/Modules/FindFLANN.cmake +index b5739dc95..b5c22a3b0 100644 +--- a/cmake/Modules/FindFLANN.cmake ++++ b/cmake/Modules/FindFLANN.cmake +@@ -10,11 +10,11 @@ + # look for shared ones + + if(FLANN_USE_STATIC) +- set(FLANN_RELEASE_NAME flann_cpp_s) +- set(FLANN_DEBUG_NAME flann_cpp_s-gd) ++ set(FLANN_RELEASE_NAME flann_cpp) ++ set(FLANN_DEBUG_NAME flann_cpp) + else(FLANN_USE_STATIC) + set(FLANN_RELEASE_NAME flann_cpp) +- set(FLANN_DEBUG_NAME flann_cpp-gd) ++ set(FLANN_DEBUG_NAME flann_cpp) + endif(FLANN_USE_STATIC) + + find_package(PkgConfig QUIET) diff --git a/ports/pcl/find_openni2.patch b/ports/pcl/find_openni2.patch new file mode 100644 index 00000000000000..4bd3e0799a7668 --- /dev/null +++ b/ports/pcl/find_openni2.patch @@ -0,0 +1,12 @@ +diff --git a/cmake/Modules/FindOpenNI2.cmake b/cmake/Modules/FindOpenNI2.cmake +index 713099a14..f31de96a6 100644 +--- a/cmake/Modules/FindOpenNI2.cmake ++++ b/cmake/Modules/FindOpenNI2.cmake +@@ -51,6 +51,7 @@ find_path(OPENNI2_INCLUDE_DIRS OpenNI.h + PATHS + "$ENV{OPENNI2_INCLUDE${OPENNI2_SUFFIX}}" # Win64 needs '64' suffix + /usr/include/openni2 # common path for deb packages ++ PATH_SUFFIXES include/openni2 + ) + + find_library(OPENNI2_LIBRARY diff --git a/ports/pcl/find_qhull.patch b/ports/pcl/find_qhull.patch new file mode 100644 index 00000000000000..0f5036e1e4eacb --- /dev/null +++ b/ports/pcl/find_qhull.patch @@ -0,0 +1,13 @@ +diff --git a/cmake/Modules/FindQhull.cmake b/cmake/Modules/FindQhull.cmake +index 698bd151b..44c1d5d8d 100644 +--- a/cmake/Modules/FindQhull.cmake ++++ b/cmake/Modules/FindQhull.cmake +@@ -55,7 +55,7 @@ find_library(QHULL_LIBRARY_DEBUG + NAMES ${QHULL_DEBUG_NAME} ${QHULL_RELEASE_NAME} + HINTS "${QHULL_ROOT}" "$ENV{QHULL_ROOT}" + PATHS "$ENV{PROGRAMFILES}/QHull" "$ENV{PROGRAMW6432}/QHull" +- PATH_SUFFIXES project build bin lib) ++ PATH_SUFFIXES project build bin debug/lib) + + if(NOT QHULL_LIBRARY_DEBUG) + set(QHULL_LIBRARY_DEBUG ${QHULL_LIBRARY}) diff --git a/ports/pcl/portfile.cmake b/ports/pcl/portfile.cmake new file mode 100644 index 00000000000000..2c4aad0520f473 --- /dev/null +++ b/ports/pcl/portfile.cmake @@ -0,0 +1,71 @@ +# Common Ambient Variables: +# CURRENT_BUILDTREES_DIR = ${VCPKG_ROOT_DIR}\buildtrees\${PORT} +# CURRENT_PACKAGES_DIR = ${VCPKG_ROOT_DIR}\packages\${PORT}_${TARGET_TRIPLET} +# CURRENT_PORT_DIR = ${VCPKG_ROOT_DIR}\ports\${PORT} +# PORT = current port name (zlib, etc) +# TARGET_TRIPLET = current triplet (x86-windows, x64-windows-static, etc) +# VCPKG_CRT_LINKAGE = C runtime linkage type (static, dynamic) +# VCPKG_LIBRARY_LINKAGE = target library linkage type (static, dynamic) +# VCPKG_ROOT_DIR = +# VCPKG_TARGET_ARCHITECTURE = target architecture (x64, x86, arm) +# + +include(vcpkg_common_functions) +set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/pcl-pcl-1.8.0) +vcpkg_download_distfile(ARCHIVE + URLS "https://github.com/PointCloudLibrary/pcl/archive/pcl-1.8.0.zip" + FILENAME "pcl-1.8.0.zip" + SHA512 932f7e2101707003712e53d9310c6ba8304b8d325997a71a45d052c329cd9465f1d390c6c53a11bcb01d65e808c7701452ea06f116a0bd779d8098fdf3246ca8 +) +vcpkg_extract_source_archive(${ARCHIVE}) + +vcpkg_apply_patches( + SOURCE_PATH ${SOURCE_PATH} + PATCHES "${CMAKE_CURRENT_LIST_DIR}/config.patch" + "${CMAKE_CURRENT_LIST_DIR}/config_install.patch" + "${CMAKE_CURRENT_LIST_DIR}/find_flann.patch" + "${CMAKE_CURRENT_LIST_DIR}/find_qhull.patch" + "${CMAKE_CURRENT_LIST_DIR}/find_openni2.patch" + # Fix for PCL 1.8.0 + "${CMAKE_CURRENT_LIST_DIR}/1635.patch" + "${CMAKE_CURRENT_LIST_DIR}/1788.patch" + "${CMAKE_CURRENT_LIST_DIR}/1823.patch" + "${CMAKE_CURRENT_LIST_DIR}/1830.patch" + "${CMAKE_CURRENT_LIST_DIR}/1855.patch" + "${CMAKE_CURRENT_LIST_DIR}/1856.patch" +) + +if(VCPKG_CRT_LINKAGE STREQUAL "dynamic") + set(CRT_LINKAGE ON) +elseif(VCPKG_CRT_LINKAGE STREQUAL "static") + set(CRT_LINKAGE OFF) +endif() + +vcpkg_configure_cmake( + SOURCE_PATH ${SOURCE_PATH} + #PREFER_NINJA + OPTIONS + # BUILD + -DBUILD_2d=OFF # The pcl-2d import library is not generated. + -DBUILD_surface_on_nurbs=ON + -DBUILD_tools=OFF + # PCL + -DPCL_BUILD_WITH_BOOST_DYNAMIC_LINKING_WIN32=${CRT_LINKAGE} + -DPCL_SHARED_LIBS=${CRT_LINKAGE} + # WITH + -DWITH_CUDA=OFF + -DWITH_LIBUSB=OFF + -DWITH_OPENNI2=ON + -DWITH_PCAP=OFF + -DWITH_PNG=OFF + -DWITH_QHULL=ON + -DWITH_QT=OFF + -DWITH_VTK=ON +) + +vcpkg_install_cmake() + +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share) +file(COPY ${SOURCE_PATH}/LICENSE.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/pcl) +file(RENAME ${CURRENT_PACKAGES_DIR}/share/pcl/LICENSE.txt ${CURRENT_PACKAGES_DIR}/share/pcl/copyright)