pcl: updating to 1.7.2
The update to the latest version 1.7.2 was triggered by compilation errors in pcl 1.7.0 (i.e., in file common/include/pcl/point_types.h) due to the update of boost to 1.60.0 in openembedded-core [1]. This failure was detected by the internal CI build on 2016-01-15. Due to the version update, the commit drops patch `Fix incompatibility with Boost 1.56`, as the change is included upstream in version 1.7.2. This commit also adds the upstream-accepted patch `Add "WITH_OPENGL" option (...)` to make the dependency to OpenGL libraries optional. The commit configures package dependencies and compiles with the least possible packages, so that the pcl-ros recipe compiles. As a result, all optional packages in PCL, except qhull, can be set to FALSE. If qhull is deactivated, the do_configure task of pcl-ros reports: | -- Could NOT find qhull (missing: QHULL_LIBRARY) | ** WARNING ** surface features related to qhull will be disabled However, in the do_compile task of pcl-ros, the build process assumes that the surface features related to qhull are actually never disabled, i.e., if qhull is deactivated, compiling pcl-ros fails with: | In file included from [...]/pcl_ros/src/pcl_ros/surface/convex_hull.cpp:40:0: | [...]/pcl_ros/include/pcl_ros/surface/convex_hull.h:44:37: fatal error: pcl/surface/convex_hull.h: No such file or directory | compilation terminated. | CMakeFiles/pcl_ros_surface.dir/build.make:89: recipe for target 'CMakeFiles/pcl_ros_surface.dir/src/pcl_ros/surface/convex_hull.cpp.o' failed | make[2]: *** [CMakeFiles/pcl_ros_surface.dir/src/pcl_ros/surface/convex_hull.cpp.o] Error 1 | make[2]: Leaving directory '[...]/build' | CMakeFiles/Makefile2:1173: recipe for target 'CMakeFiles/pcl_ros_surface.dir/all' failed | make[1]: *** [CMakeFiles/pcl_ros_surface.dir/all] Error 2 [1] http://cgit.openembedded.org/openembedded-core/commit/?id=17d77db5e1203e18cdd178e7d9a457310425ebdc Signed-off-by: Lukas Bulwahn <lukas.bulwahn@oss.bmw-carit.de>
This commit is contained in:
parent
2500299b4e
commit
027c774cd7
|
@ -0,0 +1,38 @@
|
|||
From 1361899d1a336938811eceb17e2f71abe650ae17 Mon Sep 17 00:00:00 2001
|
||||
From: Davide Viti <zinosat@tiscali.it>
|
||||
Date: Sun, 9 Nov 2014 21:37:28 +0100
|
||||
Subject: [PATCH] Add "WITH_OPENGL" option to make OpenGL and Glut inclusion
|
||||
conditional
|
||||
|
||||
Upstream-Status: Accepted
|
||||
|
||||
This patch file was created from the pcl repository with:
|
||||
|
||||
`git checkout 1361899d1a336938811eceb17e2f71abe650ae17 && git format-patch -1`
|
||||
|
||||
I expect this patch to be dropped in any recipe version later than 1.7.2.
|
||||
|
||||
Signed-off-by: Lukas.Bulwahn <lukas.bulwahn@oss.bmw-carit.de>
|
||||
---
|
||||
CMakeLists.txt | 5 ++++-
|
||||
1 file changed, 4 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index 6cc473d..7fda151 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -403,7 +403,10 @@ if(WITH_PCAP)
|
||||
endif(WITH_PCAP)
|
||||
|
||||
# OpenGL and GLUT
|
||||
-include("${PCL_SOURCE_DIR}/cmake/pcl_find_gl.cmake")
|
||||
+option(WITH_OPENGL "Support for OpenGL" TRUE)
|
||||
+if(WITH_OPENGL)
|
||||
+ include("${PCL_SOURCE_DIR}/cmake/pcl_find_gl.cmake")
|
||||
+endif(WITH_OPENGL)
|
||||
|
||||
### ---[ Create the config.h file
|
||||
set(pcl_config_h_in "${CMAKE_CURRENT_SOURCE_DIR}/pcl_config.h.in")
|
||||
--
|
||||
2.4.3
|
||||
|
|
@ -1,77 +0,0 @@
|
|||
From c2ad66f36569d64a445dbadeae197264d216d48c Mon Sep 17 00:00:00 2001
|
||||
From: Sergey Alexandrov <alexandrov88@gmail.com>
|
||||
Date: Sat, 23 Aug 2014 13:03:37 +0200
|
||||
Subject: [PATCH] Fix incompatibility with Boost 1.56
|
||||
|
||||
The fix is based on the proposal of Andrew McMahon (@McDamon, #864).
|
||||
|
||||
Upstream-Status: Backport [retrieved from upstream repository]
|
||||
|
||||
This patch is copy of:
|
||||
https://github.com/PointCloudLibrary/pcl/commit/c2ad66f36569d64a445dbadeae197264d216d48c.patch
|
||||
---
|
||||
io/src/lzf_image_io.cpp | 20 ++++++++++++++------
|
||||
1 file changed, 14 insertions(+), 6 deletions(-)
|
||||
|
||||
diff --git a/io/src/lzf_image_io.cpp b/io/src/lzf_image_io.cpp
|
||||
index 55eca90..7742f16 100644
|
||||
--- a/io/src/lzf_image_io.cpp
|
||||
+++ b/io/src/lzf_image_io.cpp
|
||||
@@ -59,6 +59,17 @@
|
||||
|
||||
#define LZF_HEADER_SIZE 37
|
||||
|
||||
+
|
||||
+// The signature of boost::property_tree::xml_parser::write_xml() changed in Boost 1.56
|
||||
+// See https://github.com/PointCloudLibrary/pcl/issues/864
|
||||
+#include <boost/version.hpp>
|
||||
+#if (BOOST_VERSION >= 105600)
|
||||
+ typedef boost::property_tree::xml_writer_settings<std::string> xml_writer_settings;
|
||||
+#else
|
||||
+ typedef boost::property_tree::xml_writer_settings<char> xml_writer_settings;
|
||||
+#endif
|
||||
+
|
||||
+
|
||||
//////////////////////////////////////////////////////////////////////////////
|
||||
bool
|
||||
pcl::io::LZFImageWriter::saveImageBlob (const char* data,
|
||||
@@ -198,9 +209,8 @@ pcl::io::LZFImageWriter::writeParameter (const double ¶meter,
|
||||
catch (std::exception& e)
|
||||
{}
|
||||
|
||||
- boost::property_tree::xml_writer_settings<char> settings ('\t', 1);
|
||||
pt.put (tag, parameter);
|
||||
- write_xml (filename, pt, std::locale (), settings);
|
||||
+ write_xml (filename, pt, std::locale (), xml_writer_settings ('\t', 1));
|
||||
|
||||
return (true);
|
||||
}
|
||||
@@ -218,13 +228,12 @@ pcl::io::LZFDepth16ImageWriter::writeParameters (const pcl::io::CameraParameters
|
||||
catch (std::exception& e)
|
||||
{}
|
||||
|
||||
- boost::property_tree::xml_writer_settings<char> settings ('\t', 1);
|
||||
pt.put ("depth.focal_length_x", parameters.focal_length_x);
|
||||
pt.put ("depth.focal_length_y", parameters.focal_length_y);
|
||||
pt.put ("depth.principal_point_x", parameters.principal_point_x);
|
||||
pt.put ("depth.principal_point_y", parameters.principal_point_y);
|
||||
pt.put ("depth.z_multiplication_factor", z_multiplication_factor_);
|
||||
- write_xml (filename, pt, std::locale (), settings);
|
||||
+ write_xml (filename, pt, std::locale (), xml_writer_settings ('\t', 1));
|
||||
|
||||
return (true);
|
||||
}
|
||||
@@ -279,12 +288,11 @@ pcl::io::LZFRGB24ImageWriter::writeParameters (const pcl::io::CameraParameters &
|
||||
catch (std::exception& e)
|
||||
{}
|
||||
|
||||
- boost::property_tree::xml_writer_settings<char> settings ('\t', 1);
|
||||
pt.put ("rgb.focal_length_x", parameters.focal_length_x);
|
||||
pt.put ("rgb.focal_length_y", parameters.focal_length_y);
|
||||
pt.put ("rgb.principal_point_x", parameters.principal_point_x);
|
||||
pt.put ("rgb.principal_point_y", parameters.principal_point_y);
|
||||
- write_xml (filename, pt, std::locale (), settings);
|
||||
+ write_xml (filename, pt, std::locale (), xml_writer_settings ('\t', 1));
|
||||
|
||||
return (true);
|
||||
}
|
|
@ -3,25 +3,33 @@ SECTION = "devel"
|
|||
LICENSE = "BSD"
|
||||
LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=5b8a2a1aa14e6de44b4273134946a34c"
|
||||
|
||||
DEPENDS = "boost libflann libeigen libusb1 libpng qhull"
|
||||
DEPENDS = "boost libflann libeigen qhull"
|
||||
|
||||
SRC_URI = "https://github.com/PointCloudLibrary/${PN}/archive/${P}.tar.gz"
|
||||
SRC_URI[md5sum] = "e2ac2d2e72825d991c6d194f9586b5d8"
|
||||
SRC_URI[sha256sum] = "a5446b4d892d0e6b080ab6b6b745faad2f2f415c6c1353b1424f6b38175c777e"
|
||||
SRC_URI[md5sum] = "02c72eb6760fcb1f2e359ad8871b9968"
|
||||
SRC_URI[sha256sum] = "479f84f2c658a6319b78271111251b4c2d6cf07643421b66bbc351d9bed0ae93"
|
||||
|
||||
SRC_URI += "file://0001-Fix-incompatibility-with-Boost-1.56.patch"
|
||||
SRC_URI += "file://0001-Add-WITH_OPENGL-option-to-make-OpenGL-and-Glut-inclu.patch"
|
||||
|
||||
S = "${WORKDIR}/pcl-${P}"
|
||||
|
||||
EXTRA_OECMAKE += "\
|
||||
-DCMAKE_SKIP_RPATH=ON \
|
||||
-DHAVE_MM_MALLOC_EXITCODE=0 \
|
||||
-DHAVE_POSIX_MEMALIGN_EXITCODE=0 \
|
||||
-DHAVE_POSIX_MEMALIGN_EXITCODE=0 \
|
||||
${@bb.utils.contains("TARGET_CC_ARCH", "-msse4.2", "-DHAVE_SSE4_2_EXTENSIONS_EXITCODE=0", "-DHAVE_SSE4_2_EXTENSIONS_EXITCODE=1", d)} \
|
||||
${@bb.utils.contains("TARGET_CC_ARCH", "-msse4.1", "-DHAVE_SSE4_1_EXTENSIONS_EXITCODE=0", "-DHAVE_SSE4_1_EXTENSIONS_EXITCODE=1", d)} \
|
||||
${@bb.utils.contains("TARGET_CC_ARCH", "-msse3", "-DHAVE_SSE3_EXTENSIONS_EXITCODE=0", "-DHAVE_SSE3_EXTENSIONS_EXITCODE=1", d)} \
|
||||
${@bb.utils.contains("TARGET_CC_ARCH", "-msse3", "-DHAVE_SSE3_EXTENSIONS_EXITCODE=0", "-DHAVE_SSE3_EXTENSIONS_EXITCODE=1", d)} \
|
||||
${@bb.utils.contains("TARGET_CC_ARCH", "-msse2", "-DHAVE_SSE2_EXTENSIONS_EXITCODE=0", "-DHAVE_SSE2_EXTENSIONS_EXITCODE=1", d)} \
|
||||
${@bb.utils.contains("TARGET_CC_ARCH", "-msse", "-DHAVE_SSE_EXTENSIONS_EXITCODE=0", "-DHAVE_SSE_EXTENSIONS_EXITCODE=1", d)} \
|
||||
-DWITH_LIBUSB=FALSE \
|
||||
-DWITH_PNG=FALSE \
|
||||
-DWITH_QHULL=TRUE \
|
||||
-DWITH_CUDA=FALSE \
|
||||
-DWITH_QT=FALSE \
|
||||
-DWITH_VTK=FALSE \
|
||||
-DWITH_PCAP=FALSE \
|
||||
-DWITH_OPENGL=FALSE \
|
||||
"
|
||||
|
||||
#Setting -ffloat-store to alleviate 32bit vs 64bit discrepancies on non-SSE platforms.
|
Loading…
Reference in New Issue