dev-ros/pluginlib: look for package.xml in ros_packages too for plugins.

Package-Manager: portage-2.3.2
This commit is contained in:
Alexis Ballier
2016-11-28 16:04:16 +01:00
parent b12c2eefa7
commit 2701f4e2ec
3 changed files with 36 additions and 0 deletions

View File

@@ -0,0 +1,34 @@
Find package.xml in ros_packages/package_name too as we moved it here.
Index: pluginlib-1.10.4/include/pluginlib/class_loader_imp.h
===================================================================
--- pluginlib-1.10.4.orig/include/pluginlib/class_loader_imp.h
+++ pluginlib-1.10.4/include/pluginlib/class_loader_imp.h
@@ -444,6 +444,7 @@ namespace pluginlib
std::string package_name;
boost::filesystem::path p(plugin_xml_file_path);
boost::filesystem::path parent = p.parent_path();
+ boost::filesystem::path basename = p.filename();
//Figure out exactly which package the passed XML file is exported by.
while (true)
@@ -453,6 +454,11 @@ namespace pluginlib
std::string package_file_path = (boost::filesystem::path(parent / "package.xml")).string();
return(extractPackageNameFromPackageXML(package_file_path));
}
+ else if(boost::filesystem::exists(parent / "ros_packages" / basename / "package.xml"))
+ {
+ std::string package_file_path = (boost::filesystem::path(parent / "ros_packages" / basename / "package.xml")).string();
+ return(extractPackageNameFromPackageXML(package_file_path));
+ }
else if (boost::filesystem::exists(parent / "manifest.xml"))
{
#if BOOST_FILESYSTEM_VERSION >= 3
@@ -470,6 +476,7 @@ namespace pluginlib
}
//Recursive case - hop one folder up
+ basename = parent.filename();
parent = parent.parent_path().string();
//Base case - reached root and cannot find what we're looking for

View File

@@ -25,3 +25,4 @@ RDEPEND="
"
DEPEND="${RDEPEND}
test? ( dev-cpp/gtest )"
PATCHES=( "${FILESDIR}/gentoo.patch" )

View File

@@ -25,3 +25,4 @@ RDEPEND="
"
DEPEND="${RDEPEND}
test? ( dev-cpp/gtest )"
PATCHES=( "${FILESDIR}/gentoo.patch" )