aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNancyLi1013 <46708020+NancyLi1013@users.noreply.github.com>2021-04-29 08:38:32 +0800
committerGitHub <noreply@github.com>2021-04-28 17:38:32 -0700
commit5db5b34a05f5c4dd8755c515eaed25ba978ac92c (patch)
tree645d99f6f8f06319a4c663fff05faebd7d1dd74e
parent5014989b543c07ef78377a80885c527f83e7f441 (diff)
downloadvcpkg-5db5b34a05f5c4dd8755c515eaed25ba978ac92c.tar.gz
vcpkg-5db5b34a05f5c4dd8755c515eaed25ba978ac92c.zip
[pcl] Fix qhul cannot be found (#17437)
* [pcl] Fix qhul cannot be found * Update version files
-rw-r--r--ports/pcl/CONTROL34
-rw-r--r--ports/pcl/fix-find-qhull.patch43
-rw-r--r--ports/pcl/portfile.cmake21
-rw-r--r--ports/pcl/vcpkg.json84
-rw-r--r--versions/baseline.json2
-rw-r--r--versions/p-/pcl.json5
6 files changed, 145 insertions, 44 deletions
diff --git a/ports/pcl/CONTROL b/ports/pcl/CONTROL
deleted file mode 100644
index 5954613bb..000000000
--- a/ports/pcl/CONTROL
+++ /dev/null
@@ -1,34 +0,0 @@
-Source: pcl
-Version: 1.11.1
-Port-Version: 2
-Homepage: https://github.com/PointCloudLibrary/pcl
-Description: Point Cloud Library (PCL) is open source library for 2D/3D image and point cloud processing.
-Build-Depends: eigen3, flann, qhull, libpng, boost-system, boost-filesystem, boost-thread, boost-date-time, boost-iostreams, boost-random, boost-foreach, boost-dynamic-bitset, boost-property-map, boost-graph, boost-multi-array, boost-signals2, boost-sort, boost-ptr-container, boost-uuid, boost-interprocess, boost-asio
-Supports: !(arm64&windows)
-
-Feature: openni2
-Description: OpenNI2 support for PCL
-Build-Depends: openni2
-
-Feature: qt
-Description: Qt support for PCL
-Build-Depends: vtk[qt]
-
-Feature: pcap
-Description: PCAP support for PCL
-Build-Depends: winpcap (windows), libpcap (!windows)
-
-Feature: tools
-Description: Build PCL utilities
-Build-Depends: boost-accumulators
-
-Feature: cuda
-Description: CUDA support for PCL
-Build-Depends: cuda
-
-Feature: opengl
-Description: OpenGL support for PCL
-
-Feature: vtk
-Description: VTK-Visualizations support for PCL
-Build-Depends: vtk
diff --git a/ports/pcl/fix-find-qhull.patch b/ports/pcl/fix-find-qhull.patch
new file mode 100644
index 000000000..79223eaf3
--- /dev/null
+++ b/ports/pcl/fix-find-qhull.patch
@@ -0,0 +1,43 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 2c50b8d..c5bdf35 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -354,10 +354,7 @@ if(WITH_QHULL)
+ if(NOT PCL_SHARED_LIBS OR ((WIN32 AND NOT MINGW) AND NOT PCL_BUILD_WITH_QHULL_DYNAMIC_LINKING_WIN32))
+ set(QHULL_USE_STATIC ON)
+ endif()
+- find_package(Qhull)
+- if(QHULL_FOUND)
+- include_directories(SYSTEM ${QHULL_INCLUDE_DIRS})
+- endif()
++ find_package(Qhull CONFIG REQUIRED)
+ endif()
+
+ # Cuda
+diff --git a/surface/CMakeLists.txt b/surface/CMakeLists.txt
+index e5e4231..2fb8a46 100644
+--- a/surface/CMakeLists.txt
++++ b/surface/CMakeLists.txt
+@@ -12,7 +12,7 @@ if(NOT build)
+ return()
+ endif()
+
+-if(QHULL_FOUND)
++if(Qhull_FOUND)
+ set(HULL_INCLUDES
+ "include/pcl/${SUBSYS_NAME}/concave_hull.h"
+ "include/pcl/${SUBSYS_NAME}/convex_hull.h"
+@@ -159,7 +159,12 @@ include_directories(SYSTEM
+ link_directories(${VTK_LIBRARY_DIRS})
+ PCL_ADD_LIBRARY(${LIB_NAME} COMPONENT ${SUBSYS_NAME} SOURCES ${srcs} ${incs} ${impl_incs} ${VTK_SMOOTHING_INCLUDES} ${POISSON_INCLUDES} ${OPENNURBS_INCLUDES} ${ON_NURBS_INCLUDES})
+ target_link_libraries("${LIB_NAME}" pcl_common pcl_search pcl_kdtree pcl_octree ${VTK_LIBRARIES} ${ON_NURBS_LIBRARIES})
+-if(QHULL_FOUND)
++if(Qhull_FOUND)
++ if(QHULL_USE_STATIC)
++ set(QHULL_LIBRARIES Qhull::qhullcpp Qhull::qhullstatic Qhull::qhullstatic_r)
++ else()
++ set(QHULL_LIBRARIES Qhull::qhull_r Qhull::qhullcpp)
++ endif()
+ target_link_libraries("${LIB_NAME}" ${QHULL_LIBRARIES})
+ endif()
+ PCL_MAKE_PKGCONFIG(${LIB_NAME} COMPONENT ${SUBSYS_NAME} DESC ${SUBSYS_DESC} PCL_DEPS ${SUBSYS_DEPS})
diff --git a/ports/pcl/portfile.cmake b/ports/pcl/portfile.cmake
index 92fb2e41b..2d5c8cb06 100644
--- a/ports/pcl/portfile.cmake
+++ b/ports/pcl/portfile.cmake
@@ -14,9 +14,11 @@ vcpkg_from_github(
fix-check-sse.patch
realsense2.patch
add-gcc-version-check.patch
+ fix-find-qhull.patch
)
file(REMOVE ${SOURCE_PATH}/cmake/Modules/FindFLANN.cmake)
+file(REMOVE ${SOURCE_PATH}/cmake/Modules/FindQhull.cmake)
string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "dynamic" PCL_SHARED_LIBS)
@@ -29,15 +31,16 @@ if ("tools" IN_LIST FEATURES AND VCPKG_LIBRARY_LINKAGE STREQUAL static)
endif()
vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS
- openni2 WITH_OPENNI2
- qt WITH_QT
- pcap WITH_PCAP
- cuda WITH_CUDA
- cuda BUILD_CUDA
- cuda BUILD_GPU
- tools BUILD_tools
- opengl WITH_OPENGL
- vtk WITH_VTK
+ FEATURES
+ openni2 WITH_OPENNI2
+ qt WITH_QT
+ pcap WITH_PCAP
+ cuda WITH_CUDA
+ cuda BUILD_CUDA
+ cuda BUILD_GPU
+ tools BUILD_tools
+ opengl WITH_OPENGL
+ vtk WITH_VTK
)
vcpkg_configure_cmake(
diff --git a/ports/pcl/vcpkg.json b/ports/pcl/vcpkg.json
new file mode 100644
index 000000000..49f28913a
--- /dev/null
+++ b/ports/pcl/vcpkg.json
@@ -0,0 +1,84 @@
+{
+ "name": "pcl",
+ "version": "1.11.1",
+ "port-version": 3,
+ "description": "Point Cloud Library (PCL) is open source library for 2D/3D image and point cloud processing.",
+ "homepage": "https://github.com/PointCloudLibrary/pcl",
+ "supports": "!(arm64 & windows)",
+ "dependencies": [
+ "boost-asio",
+ "boost-date-time",
+ "boost-dynamic-bitset",
+ "boost-filesystem",
+ "boost-foreach",
+ "boost-graph",
+ "boost-interprocess",
+ "boost-iostreams",
+ "boost-multi-array",
+ "boost-property-map",
+ "boost-ptr-container",
+ "boost-random",
+ "boost-signals2",
+ "boost-sort",
+ "boost-system",
+ "boost-thread",
+ "boost-uuid",
+ "eigen3",
+ "flann",
+ "libpng",
+ "qhull"
+ ],
+ "features": {
+ "cuda": {
+ "description": "CUDA support for PCL",
+ "dependencies": [
+ "cuda"
+ ]
+ },
+ "opengl": {
+ "description": "OpenGL support for PCL"
+ },
+ "openni2": {
+ "description": "OpenNI2 support for PCL",
+ "dependencies": [
+ "openni2"
+ ]
+ },
+ "pcap": {
+ "description": "PCAP support for PCL",
+ "dependencies": [
+ {
+ "name": "libpcap",
+ "platform": "!windows"
+ },
+ {
+ "name": "winpcap",
+ "platform": "windows"
+ }
+ ]
+ },
+ "qt": {
+ "description": "Qt support for PCL",
+ "dependencies": [
+ {
+ "name": "vtk",
+ "features": [
+ "qt"
+ ]
+ }
+ ]
+ },
+ "tools": {
+ "description": "Build PCL utilities",
+ "dependencies": [
+ "boost-accumulators"
+ ]
+ },
+ "vtk": {
+ "description": "VTK-Visualizations support for PCL",
+ "dependencies": [
+ "vtk"
+ ]
+ }
+ }
+}
diff --git a/versions/baseline.json b/versions/baseline.json
index 85a257391..a9de8877e 100644
--- a/versions/baseline.json
+++ b/versions/baseline.json
@@ -4682,7 +4682,7 @@
},
"pcl": {
"baseline": "1.11.1",
- "port-version": 2
+ "port-version": 3
},
"pcre": {
"baseline": "8.44",
diff --git a/versions/p-/pcl.json b/versions/p-/pcl.json
index 540bbbf7b..f8091910e 100644
--- a/versions/p-/pcl.json
+++ b/versions/p-/pcl.json
@@ -1,6 +1,11 @@
{
"versions": [
{
+ "git-tree": "26e422f1ac4af5ffcce30091a069b74e204f244e",
+ "version": "1.11.1",
+ "port-version": 3
+ },
+ {
"git-tree": "7efe6bc9f411b5669ec8ae76407a1250318f3772",
"version-string": "1.11.1",
"port-version": 2