Merge pull request #533 from yangjiel/master
ompl: fix compilation error
This commit is contained in:
commit
842830395a
|
@ -1,40 +0,0 @@
|
|||
From 3658bb95c120228cac55cd10e4103ababf30474b Mon Sep 17 00:00:00 2001
|
||||
From: Dmitry Rozhkov <dmitry.rozhkov@linux.intel.com>
|
||||
Date: Tue, 23 May 2017 10:01:06 +0300
|
||||
Subject: [PATCH 1/2] address gcc6 build error
|
||||
|
||||
With gcc6, compiling fails with `stdlib.h: No such file or directory`,
|
||||
as including '-isystem /usr/include' breaks with gcc6, cf.,
|
||||
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70129.
|
||||
|
||||
This commit addresses this issue for this package in almost the same way
|
||||
it was addressed in various other ROS packages. A list of related
|
||||
commits and pull requests is at:
|
||||
|
||||
https://github.com/ros/rosdistro/issues/12783
|
||||
|
||||
Particularly when searching for the Boost library CMake sets
|
||||
Boost_INCLUDE_DIRS to @SYSROOT@/usr/include which should be
|
||||
avoided in the `-isystem` option of gcc.
|
||||
|
||||
Upstream-Status: Submitted [https://github.com/ompl/ompl/pull/101]
|
||||
---
|
||||
CMakeLists.txt | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index 46ae14d..be53fac 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -74,7 +74,7 @@ else()
|
||||
# don't use chrono
|
||||
find_package(Boost COMPONENTS date_time thread serialization filesystem system program_options unit_test_framework REQUIRED)
|
||||
endif()
|
||||
-include_directories(SYSTEM ${Boost_INCLUDE_DIR})
|
||||
+include_directories(${Boost_INCLUDE_DIR})
|
||||
|
||||
if(${Boost_VERSION} LESS 105300)
|
||||
# Include bundled version of boost::odeint if it isn't installed natively
|
||||
--
|
||||
2.9.3
|
||||
|
|
@ -1,46 +0,0 @@
|
|||
From 99bfeffe5e80f3b48f82bfff336aca3e97bc19b7 Mon Sep 17 00:00:00 2001
|
||||
From: Dmitry Rozhkov <dmitry.rozhkov@linux.intel.com>
|
||||
Date: Tue, 23 May 2017 10:24:37 +0300
|
||||
Subject: [PATCH 2/2] Add option to skip setting RPATH
|
||||
|
||||
OMPL installs to /usr/lib by default and some projects integrating
|
||||
OMPL trigger a QA check suggesting that the set RPATH is useless.
|
||||
For example Yocto gives this warning:
|
||||
|
||||
QA Issue: ompl: /work/corei7-64-refkit-linux/ompl/1.1.0-r0/packages-split/ompl/usr/lib/libompl.so.1.1.0 contains probably-redundant RPATH /usr/lib [useless-rpaths]
|
||||
|
||||
Add the option OMPL_SKIP_RPATH that helps to skip setting RPATH
|
||||
for the library. By default the option is OFF.
|
||||
|
||||
Upstream-Status: Submitted [https://github.com/ompl/ompl/pull/101]
|
||||
---
|
||||
CMakeModules/CompilerSettings.cmake | 13 ++++++++-----
|
||||
1 file changed, 8 insertions(+), 5 deletions(-)
|
||||
|
||||
diff --git a/CMakeModules/CompilerSettings.cmake b/CMakeModules/CompilerSettings.cmake
|
||||
index ecef2db..65e3f45 100644
|
||||
--- a/CMakeModules/CompilerSettings.cmake
|
||||
+++ b/CMakeModules/CompilerSettings.cmake
|
||||
@@ -47,11 +47,14 @@ if((CMAKE_COMPILER_IS_GNUCXX OR IS_ICPC) AND NOT MINGW)
|
||||
add_definitions(-fPIC)
|
||||
endif((CMAKE_COMPILER_IS_GNUCXX OR IS_ICPC) AND NOT MINGW)
|
||||
|
||||
-# Set rpath http://www.paraview.org/Wiki/CMake_RPATH_handling
|
||||
-set(CMAKE_SKIP_BUILD_RPATH FALSE)
|
||||
-set(CMAKE_BUILD_WITH_INSTALL_RPATH FALSE)
|
||||
-set(CMAKE_INSTALL_RPATH "${CMAKE_INSTALL_PREFIX}/lib")
|
||||
-set(CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE)
|
||||
+option(OMPL_SKIP_RPATH "Don't set RPATH to the OMPL library" OFF)
|
||||
+if(NOT OMPL_SKIP_RPATH)
|
||||
+ # Set rpath http://www.paraview.org/Wiki/CMake_RPATH_handling
|
||||
+ set(CMAKE_SKIP_BUILD_RPATH FALSE)
|
||||
+ set(CMAKE_BUILD_WITH_INSTALL_RPATH FALSE)
|
||||
+ set(CMAKE_INSTALL_RPATH "${CMAKE_INSTALL_PREFIX}/lib")
|
||||
+ set(CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE)
|
||||
+endif()
|
||||
|
||||
# no prefix needed for python modules
|
||||
set(CMAKE_SHARED_MODULE_PREFIX "")
|
||||
--
|
||||
2.9.3
|
||||
|
|
@ -1,19 +0,0 @@
|
|||
DESCRIPTION = "The Open Motion Planning Library (OMPL) consists of a set of sampling-based motion planning algorithms."
|
||||
HOMEPAGE = "http://ompl.kavrakilab.org/"
|
||||
LICENSE = "BSD"
|
||||
LIC_FILES_CHKSUM = "file://LICENSE;md5=923f436234988118e9a042c42a64323c"
|
||||
|
||||
DEPENDS = "boost libeigen"
|
||||
|
||||
SRC_URI = "https://bitbucket.org/ompl/ompl/downloads/ompl-1.1.0-Source.tar.gz \
|
||||
file://0001-address-gcc6-build-error.patch \
|
||||
file://0002-Add-option-to-skip-setting-RPATH.patch \
|
||||
"
|
||||
SRC_URI[md5sum] = "2a72c5add9675e164c8370a710627e93"
|
||||
SRC_URI[sha256sum] = "4d141ad3aa322c65ee7ecfa90017a44a8114955316e159b635fae5b5e7db74f8"
|
||||
|
||||
S = "${WORKDIR}/ompl-${PV}-Source"
|
||||
|
||||
inherit cmake
|
||||
|
||||
EXTRA_OECMAKE = "-DOMPL_SKIP_RPATH=ON"
|
|
@ -0,0 +1,16 @@
|
|||
DESCRIPTION = "The Open Motion Planning Library (OMPL) consists of a set of sampling-based motion planning algorithms."
|
||||
HOMEPAGE = "http://ompl.kavrakilab.org/"
|
||||
LICENSE = "BSD"
|
||||
LIC_FILES_CHKSUM = "file://LICENSE;md5=923f436234988118e9a042c42a64323c"
|
||||
|
||||
DEPENDS = "boost libeigen"
|
||||
|
||||
SRC_URI = "https://github.com/ompl/ompl/archive/1.1.1.tar.gz"
|
||||
SRC_URI[md5sum] = "f8bb5f25c09c3b6e05444515eb14175a"
|
||||
SRC_URI[sha256sum] = "31d6f27dd7c033eb83ef792d402f716f27ce393b6a97b621f3acf540c6364bbc"
|
||||
|
||||
S = "${WORKDIR}/ompl-${PV}"
|
||||
|
||||
inherit cmake
|
||||
|
||||
EXTRA_OECMAKE = "-DOMPL_SKIP_RPATH=ON"
|
Loading…
Reference in New Issue