summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorWil Thomason2020-01-14 20:19:56 -0500
committerWil Thomason2020-01-14 20:20:27 -0500
commitab7081113153e5d6fd980bcbb3db26c6696548ea (patch)
tree4999ebc0a899d38a8df9931f2caf7f531a832144
parenta1fa28f3e7f203f43c3be1c87c6956666adb465d (diff)
downloadaur-ab7081113153e5d6fd980bcbb3db26c6696548ea.tar.gz
Add patch for Boost 1.71 compatibility
-rw-r--r--PKGBUILD12
-rw-r--r--boost-fix.patch19
2 files changed, 25 insertions, 6 deletions
diff --git a/PKGBUILD b/PKGBUILD
index 3d4819fb4065..2829b6876bff 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -8,18 +8,18 @@ pkgdesc="The Open Motion Planning Library (OMPL) consists of many state-of-the-a
arch=('i686' 'x86_64')
url="http://ompl.kavrakilab.org/"
license=('BSD')
-# The restrictions on boost-libs and boost here are just until OMPL 1.50.0 is released, as it fixes
-# compatibility with boost 1.71.0 via commit 962961f
-depends=('boost-libs<=1.69.0' 'python' 'python-matplotlib')
-makedepends=('boost<=1.69.0' 'cmake')
+depends=('boost-libs' 'python' 'python-matplotlib')
+makedepends=('boost' 'cmake')
optdepends=('py++: Python binding'
'ode: Plan using the Open Dynamics Engine'
'eigen: For an informed sampling technique')
-source=(https://github.com/ompl/ompl/archive/${pkgver}.tar.gz)
-sha512sums=(67cd99ee80b2c74a35eb54ce1ed4faf19fafc58843d9a9eaf29d28ef0707623517ccf9571af4af094455309950ea8f38d56f5c04d963f5e7a2410a7638e6e5fa)
+source=(https://github.com/ompl/ompl/archive/${pkgver}.tar.gz "boost-fix.patch")
+sha512sums=(67cd99ee80b2c74a35eb54ce1ed4faf19fafc58843d9a9eaf29d28ef0707623517ccf9571af4af094455309950ea8f38d56f5c04d963f5e7a2410a7638e6e5fa
+5f61e2a4410b8bfd77eb90c85a600c46c201a770957c4cd815e37c8ccd5ae033e9d453d3e1a38d4f0c227e93024ba5c1c1ea86e5d50c6614a83f66705f90b64a)
prepare() {
cd "${srcdir}/${pkgname}-${pkgver}"
+ patch -uN demos/PlannerData.cpp ../../boost-fix.patch || return 1
rm -rf build
mkdir build
diff --git a/boost-fix.patch b/boost-fix.patch
new file mode 100644
index 000000000000..c734d94d27ff
--- /dev/null
+++ b/boost-fix.patch
@@ -0,0 +1,19 @@
+--- src/ompl-1.4.2/demos/PlannerData.cpp
++++ ./PlannerData.cpp
+@@ -170,13 +170,15 @@
+ ob::GoalState goal(si);
+ goal.setState(data.getGoalVertex(0).getState());
+ ob::PlannerData::Graph::Vertex start = boost::vertex(data.getStartIndex(0), graph);
++ boost::astar_visitor<boost::null_visitor> dummy_visitor;
+ boost::astar_search(graph, start,
+ [&goal, &opt, &vertices](ob::PlannerData::Graph::Vertex v1) { return distanceHeuristic(v1, &goal, &opt, vertices); },
+ boost::predecessor_map(prev).
+ distance_compare([&opt](ob::Cost c1, ob::Cost c2) { return opt.isCostBetterThan(c1, c2); }).
+ distance_combine([&opt](ob::Cost c1, ob::Cost c2) { return opt.combineCosts(c1, c2); }).
+ distance_inf(opt.infiniteCost()).
+- distance_zero(opt.identityCost()));
++ distance_zero(opt.identityCost()).
++ visitor(dummy_visitor));
+
+ // Extracting the path
+ og::PathGeometric path(si);