diff options
Diffstat (limited to 'dev-ros/rospack')
-rw-r--r-- | dev-ros/rospack/Manifest | 7 | ||||
-rw-r--r-- | dev-ros/rospack/files/boost165.patch | 231 | ||||
-rw-r--r-- | dev-ros/rospack/files/gentoo.patch | 18 | ||||
-rw-r--r-- | dev-ros/rospack/metadata.xml | 11 | ||||
-rw-r--r-- | dev-ros/rospack/rospack-2.4.2.ebuild | 32 | ||||
-rw-r--r-- | dev-ros/rospack/rospack-9999.ebuild | 31 |
6 files changed, 330 insertions, 0 deletions
diff --git a/dev-ros/rospack/Manifest b/dev-ros/rospack/Manifest new file mode 100644 index 000000000000..c2a4079b5db6 --- /dev/null +++ b/dev-ros/rospack/Manifest @@ -0,0 +1,7 @@ +AUX boost165.patch 10361 SHA256 1eeddbbbc2b525d11a712b5e80e53eec6436b2a60719439bcea14291258a9cb2 SHA512 c486badc23c76a96ed84a7dba0b2f90d4d1ef98a699229efb7c94821a20fc3f32345632f4f5a097dee60b4aace85affbb0e5fe11e3df7a00531138c73340ab10 WHIRLPOOL 75d0d0d2a0d2769c7089ab89c65dd812f696ddfcf8d1d482e252a1ff5a991643afb76e422647f9af97c4c0c7c83708de0d91f7846988d636feb9a4fe75a6a12b +AUX gentoo.patch 576 SHA256 ab951bbaab55a9997e276b79831a3d4b77f09420d6dfd009ad14f7796d7699a2 SHA512 85bc49da821ff4a31d6cff838f2ff006625f0f5041c2bfa8f742c92173c48fc6d2a4601e370058478afe66e1b0aa5e237964b950554c40710f9f411e1e04bbad WHIRLPOOL 52dcc69ac2159bb7c6b2acfc757d1398da0b8ae44f857d710cd39363a1af7a2acb715e0e4d890425b06418e377d9888615172a5fb274623caa89162fc268d945 +DIST rospack-2.4.2.tar.gz 71938 SHA256 5ef87c11d492759608f12d03113bd538cdb61bbc3876ebd91be078c9b56241f7 SHA512 f5569ba19abcb41b888d98c272bacca19d7be68528550154003e8394bd431aa381858f0a4440f708b5d9ac1814fa0e093a7ba34c3c192bcedb2de8040f364605 WHIRLPOOL 5e747bc9904fdbf1d5c33af46d912224605fb755aa2c5339b9efaabdc8c2ef5b4e5ab2a56714d43ca45030a83e36429a31a92b6bd79d0c20a584019e50b00189 +EBUILD rospack-2.4.2.ebuild 594 SHA256 90dbdf68ec53b650acef95023d1cf793f24142112d747e2bbe208e1fea99f5f4 SHA512 be26b5072a612ca6e40bb8d63969aed639c2923279a4970aba2270a92f5940e5bbb01a533ae0aa7a13fff91d0b426bbb5be5510c4358416284ce0a77af499fe8 WHIRLPOOL fa21aee927616a6ca407ba1543cf2a09a79f1eb057ad28bd3fc3884accc6696f93a3d89db9ba52f2fba2422a04caaa4d2d7cbdc9e7f6314a29a22d45a92c0fb3 +EBUILD rospack-9999.ebuild 564 SHA256 7d67ddb6c658542fae95860c0d2e93aa8ce655374372697f6402078e32391224 SHA512 9814190d49aa220554bf3a440e781642eeefbb5f1b5126c1b74e0fbe98ddd946327f38973fe7215b27b0de6d5a799af221940659c51294fd28906423e3be19be WHIRLPOOL 1c53be8422d58d8c0e1301244cacccd581dda0e76f210582639b70a744b3b0a3a6a363daad254724e4358af2d4c0b07573b1ac6fe760603162e3710dd0eadf02 +MISC ChangeLog 2586 SHA256 498f2ff44d0d42c5315f2f5c0014f7d2c97ae8bd454c7d89e6204eb73e4e2354 SHA512 2e1a0de13ff7bfc46659fb7675b747e77992339bd565c1b43db456bab9aacf0ad541dbf0770ef2f4eaa92ccec121accaeb22adfeed117c8d1dd6d741a91c1026 WHIRLPOOL 39b562b629c6757efb99f27e9d656c016d70e2cca7a371ee2f130b177409b2fd47218477425211cfd02b2cb7675aaaffef8c62b2da42ca3f416de7eff11846a4 +MISC metadata.xml 325 SHA256 4dde5a05e61c886d9a1363ccdbe9684143a6c44cf7ad9f903346c53ee23adfe7 SHA512 2718fee8c06627957b95d0e99b517d2dcb2428279925a22e6cbbab1e56ea6d25da57c7143d316e7406419b7d2ff75187950957a705348adfb4008413923dda5c WHIRLPOOL b2f122a22500fab4eaa11f970c37976744989c232845fe50648e00f58316c84b98ab9ca09b391b5da05542db5c5a631bc3bca0ab9725de9bcb45db75fc7c0f8f diff --git a/dev-ros/rospack/files/boost165.patch b/dev-ros/rospack/files/boost165.patch new file mode 100644 index 000000000000..fda1c6668107 --- /dev/null +++ b/dev-ros/rospack/files/boost165.patch @@ -0,0 +1,231 @@ +commit 6fcee1b0d2b1c225c39a5820981166b99f0d8750 +Author: Tim Rakowski <tim.rakowski@googlemail.com> +Date: Mon Sep 4 21:41:11 2017 +0200 + + Replaced references to deprecated Boost.TR1 + + boost/tr1 includes where removed with boost 1.65 + +diff --git a/include/rospack/rospack.h b/include/rospack/rospack.h +index 4389187..bb7bc2e 100644 +--- a/include/rospack/rospack.h ++++ b/include/rospack/rospack.h +@@ -105,8 +105,8 @@ and Rosstack. + #ifndef ROSPACK_ROSPACK_H + #define ROSPACK_ROSPACK_H + +-#include <boost/tr1/unordered_set.hpp> +-#include <boost/tr1/unordered_map.hpp> ++#include <boost/unordered_set.hpp> ++#include <boost/unordered_map.hpp> + #include <list> + #include <map> + #include <set> +@@ -148,8 +148,8 @@ class ROSPACK_DECL Rosstackage + std::string tag_; + bool quiet_; + std::vector<std::string> search_paths_; +- std::tr1::unordered_map<std::string, std::vector<std::string> > dups_; +- std::tr1::unordered_map<std::string, Stackage*> stackages_; ++ boost::unordered_map<std::string, std::vector<std::string> > dups_; ++ boost::unordered_map<std::string, Stackage*> stackages_; + Stackage* findWithRecrawl(const std::string& name); + void log(const std::string& level, const std::string& msg, bool append_errno); + void clearStackages(); +@@ -159,7 +159,7 @@ class ROSPACK_DECL Rosstackage + int depth, + bool collect_profile_data, + std::vector<DirectoryCrawlRecord*>& profile_data, +- std::tr1::unordered_set<std::string>& profile_hash); ++ boost::unordered_set<std::string>& profile_hash); + bool isStackage(const std::string& path); + void loadManifest(Stackage* stackage); + void computeDeps(Stackage* stackage, bool ignore_errors=false, bool ignore_missing=false); +@@ -171,7 +171,7 @@ class ROSPACK_DECL Rosstackage + bool no_recursion_on_wet=false); + void gatherDepsFull(Stackage* stackage, bool direct, + traversal_order_t order, int depth, +- std::tr1::unordered_set<Stackage*>& deps_hash, ++ boost::unordered_set<Stackage*>& deps_hash, + std::vector<Stackage*>& deps, + bool get_indented_deps, + std::vector<std::string>& indented_deps, +diff --git a/src/rospack.cpp b/src/rospack.cpp +index 6b88a36..a3e08a3 100644 +--- a/src/rospack.cpp ++++ b/src/rospack.cpp +@@ -259,7 +259,7 @@ Rosstackage::~Rosstackage() + + void Rosstackage::clearStackages() + { +- for(std::tr1::unordered_map<std::string, Stackage*>::const_iterator it = stackages_.begin(); ++ for(boost::unordered_map<std::string, Stackage*>::const_iterator it = stackages_.begin(); + it != stackages_.end(); + ++it) + { +@@ -382,7 +382,7 @@ Rosstackage::crawl(std::vector<std::string> search_path, + search_paths_ = search_path; + + std::vector<DirectoryCrawlRecord*> dummy; +- std::tr1::unordered_set<std::string> dummy2; ++ boost::unordered_set<std::string> dummy2; + for(std::vector<std::string>::const_iterator p = search_paths_.begin(); + p != search_paths_.end(); + ++p) +@@ -447,7 +447,7 @@ Rosstackage::contents(const std::string& name, + std::set<std::string>& packages) + { + Rospack rp2; +- std::tr1::unordered_map<std::string, Stackage*>::const_iterator it = stackages_.find(name); ++ boost::unordered_map<std::string, Stackage*>::const_iterator it = stackages_.find(name); + if(it != stackages_.end()) + { + std::vector<std::string> search_paths; +@@ -474,7 +474,7 @@ Rosstackage::contains(const std::string& name, + std::string& path) + { + Rospack rp2; +- for(std::tr1::unordered_map<std::string, Stackage*>::const_iterator it = stackages_.begin(); ++ for(boost::unordered_map<std::string, Stackage*>::const_iterator it = stackages_.begin(); + it != stackages_.end(); + ++it) + { +@@ -503,7 +503,7 @@ Rosstackage::contains(const std::string& name, + void + Rosstackage::list(std::set<std::pair<std::string, std::string> >& list) + { +- for(std::tr1::unordered_map<std::string, Stackage*>::const_iterator it = stackages_.begin(); ++ for(boost::unordered_map<std::string, Stackage*>::const_iterator it = stackages_.begin(); + it != stackages_.end(); + ++it) + { +@@ -519,7 +519,7 @@ Rosstackage::listDuplicates(std::vector<std::string>& dups) + { + dups.resize(dups_.size()); + int i = 0; +- for(std::tr1::unordered_map<std::string, std::vector<std::string> >::const_iterator it = dups_.begin(); ++ for(boost::unordered_map<std::string, std::vector<std::string> >::const_iterator it = dups_.begin(); + it != dups_.end(); + ++it) + { +@@ -532,7 +532,7 @@ void + Rosstackage::listDuplicatesWithPaths(std::map<std::string, std::vector<std::string> >& dups) + { + dups.clear(); +- for(std::tr1::unordered_map<std::string, std::vector<std::string> >::const_iterator it = dups_.begin(); ++ for(boost::unordered_map<std::string, std::vector<std::string> >::const_iterator it = dups_.begin(); + it != dups_.end(); + ++it) + { +@@ -598,7 +598,7 @@ Rosstackage::depsIndent(const std::string& name, bool direct, + { + computeDeps(stackage); + std::vector<Stackage*> deps_vec; +- std::tr1::unordered_set<Stackage*> deps_hash; ++ boost::unordered_set<Stackage*> deps_hash; + std::vector<std::string> indented_deps; + gatherDepsFull(stackage, direct, POSTORDER, 0, deps_hash, deps_vec, true, indented_deps); + for(std::vector<std::string>::const_iterator it = indented_deps.begin(); +@@ -1089,7 +1089,7 @@ Rosstackage::plugins(const std::string& name, const std::string& attrib, + if(!depsOnDetail(name, true, stackages, true)) + return false; + // Also look in the package itself +- std::tr1::unordered_map<std::string, Stackage*>::const_iterator it = stackages_.find(name); ++ boost::unordered_map<std::string, Stackage*>::const_iterator it = stackages_.find(name); + if(it != stackages_.end()) + { + // don't warn here; it was done in depsOnDetail() +@@ -1102,7 +1102,7 @@ Rosstackage::plugins(const std::string& name, const std::string& attrib, + std::vector<Stackage*> top_deps; + if(!depsDetail(top, false, top_deps)) + return false; +- std::tr1::unordered_set<Stackage*> top_deps_set; ++ boost::unordered_set<Stackage*> top_deps_set; + for(std::vector<Stackage*>::iterator it = top_deps.begin(); + it != top_deps.end(); + ++it) +@@ -1292,7 +1292,7 @@ Rosstackage::depsOnDetail(const std::string& name, bool direct, + } + try + { +- for(std::tr1::unordered_map<std::string, Stackage*>::const_iterator it = stackages_.begin(); ++ for(boost::unordered_map<std::string, Stackage*>::const_iterator it = stackages_.begin(); + it != stackages_.end(); + ++it) + { +@@ -1327,7 +1327,7 @@ Rosstackage::profile(const std::vector<std::string>& search_path, + { + double start = time_since_epoch(); + std::vector<DirectoryCrawlRecord*> dcrs; +- std::tr1::unordered_set<std::string> dcrs_hash; ++ boost::unordered_set<std::string> dcrs_hash; + for(std::vector<std::string>::const_iterator p = search_path.begin(); + p != search_path.end(); + ++p) +@@ -1437,7 +1437,7 @@ Rosstackage::crawlDetail(const std::string& path, + int depth, + bool collect_profile_data, + std::vector<DirectoryCrawlRecord*>& profile_data, +- std::tr1::unordered_set<std::string>& profile_hash) ++ boost::unordered_set<std::string>& profile_hash) + { + if(depth > MAX_CRAWL_DEPTH) + throw Exception("maximum depth exceeded during crawl"); +@@ -1786,7 +1786,7 @@ Rosstackage::gatherDeps(Stackage* stackage, bool direct, + std::vector<Stackage*>& deps, + bool no_recursion_on_wet) + { +- std::tr1::unordered_set<Stackage*> deps_hash; ++ boost::unordered_set<Stackage*> deps_hash; + std::vector<std::string> indented_deps; + gatherDepsFull(stackage, direct, order, 0, + deps_hash, deps, false, indented_deps, no_recursion_on_wet); +@@ -1795,7 +1795,7 @@ Rosstackage::gatherDeps(Stackage* stackage, bool direct, + void + _gatherDepsFull(Stackage* stackage, bool direct, + traversal_order_t order, int depth, +- std::tr1::unordered_set<Stackage*>& deps_hash, ++ boost::unordered_set<Stackage*>& deps_hash, + std::vector<Stackage*>& deps, + bool get_indented_deps, + std::vector<std::string>& indented_deps, +@@ -1881,7 +1881,7 @@ _gatherDepsFull(Stackage* stackage, bool direct, + void + Rosstackage::gatherDepsFull(Stackage* stackage, bool direct, + traversal_order_t order, int depth, +- std::tr1::unordered_set<Stackage*>& deps_hash, ++ boost::unordered_set<Stackage*>& deps_hash, + std::vector<Stackage*>& deps, + bool get_indented_deps, + std::vector<std::string>& indented_deps, +@@ -2068,7 +2068,7 @@ Rosstackage::writeCache() + { + char *rpp = getenv("ROS_PACKAGE_PATH"); + fprintf(cache, "#ROS_PACKAGE_PATH=%s\n", (rpp ? rpp : "")); +- for(std::tr1::unordered_map<std::string, Stackage*>::const_iterator it = stackages_.begin(); ++ for(boost::unordered_map<std::string, Stackage*>::const_iterator it = stackages_.begin(); + it != stackages_.end(); + ++it) + fprintf(cache, "%s\n", it->second->path_.c_str()); +diff --git a/src/utils.cpp b/src/utils.cpp +index 97a557a..f41a00e 100644 +--- a/src/utils.cpp ++++ b/src/utils.cpp +@@ -28,7 +28,7 @@ + #include <string> + #include <vector> + #include <boost/algorithm/string.hpp> +-#include <boost/tr1/unordered_set.hpp> ++#include <boost/unordered_set.hpp> + + #include "utils.h" + +@@ -41,7 +41,7 @@ deduplicate_tokens(const std::string& instring, + std::string& outstring) + { + std::vector<std::string> vec; +- std::tr1::unordered_set<std::string> set; ++ boost::unordered_set<std::string> set; + boost::split(vec, instring, + boost::is_any_of("\t "), + boost::token_compress_on); diff --git a/dev-ros/rospack/files/gentoo.patch b/dev-ros/rospack/files/gentoo.patch new file mode 100644 index 000000000000..7090d7b02dd7 --- /dev/null +++ b/dev-ros/rospack/files/gentoo.patch @@ -0,0 +1,18 @@ +Index: rospack-2.3.1/src/rospack.cpp +=================================================================== +--- rospack-2.3.1.orig/src/rospack.cpp ++++ rospack-2.3.1/src/rospack.cpp +@@ -191,6 +191,13 @@ class Stackage + break; + } + } ++ ++ // On Gentoo we move package.xml to /usr/share/ros_packages/... but need to keep standard stuff in /usr/share, so correct this here. ++ try { ++ fs::path p = fs::canonical("../../" + name_, path_); ++ path_ = p.string(); ++ } ++ catch(fs::filesystem_error& e) {}; + } + + bool isStack() const diff --git a/dev-ros/rospack/metadata.xml b/dev-ros/rospack/metadata.xml new file mode 100644 index 000000000000..38f7385bd7d2 --- /dev/null +++ b/dev-ros/rospack/metadata.xml @@ -0,0 +1,11 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="project"> + <email>ros@gentoo.org</email> + <name>Gentoo ROS Project</name> + </maintainer> + <upstream> + <remote-id type="github">ros/rospack</remote-id> + </upstream> +</pkgmetadata> diff --git a/dev-ros/rospack/rospack-2.4.2.ebuild b/dev-ros/rospack/rospack-2.4.2.ebuild new file mode 100644 index 000000000000..0e082cdfb01d --- /dev/null +++ b/dev-ros/rospack/rospack-2.4.2.ebuild @@ -0,0 +1,32 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=5 + +ROS_REPO_URI="https://github.com/ros/rospack" +KEYWORDS="~amd64 ~arm" + +inherit ros-catkin + +DESCRIPTION="Retrieves information about ROS packages available on the filesystem" + +LICENSE="BSD" +SLOT="0" +IUSE="" +REQUIRED_USE="${PYTHON_REQUIRED_USE}" + +RDEPEND=" + dev-libs/boost:= + dev-libs/tinyxml2:= + ${PYTHON_DEPS}" +DEPEND="${RDEPEND} + >=dev-ros/cmake_modules-0.4.1 + test? ( + dev-cpp/gtest + dev-python/nose + )" + +PATCHES=( + "${FILESDIR}/gentoo.patch" + "${FILESDIR}/boost165.patch" +) diff --git a/dev-ros/rospack/rospack-9999.ebuild b/dev-ros/rospack/rospack-9999.ebuild new file mode 100644 index 000000000000..18b9f633ad3f --- /dev/null +++ b/dev-ros/rospack/rospack-9999.ebuild @@ -0,0 +1,31 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=5 + +ROS_REPO_URI="https://github.com/ros/rospack" +KEYWORDS="~amd64 ~arm" + +inherit ros-catkin + +DESCRIPTION="Retrieves information about ROS packages available on the filesystem" + +LICENSE="BSD" +SLOT="0" +IUSE="" +REQUIRED_USE="${PYTHON_REQUIRED_USE}" + +RDEPEND=" + dev-libs/boost:= + dev-libs/tinyxml2:= + ${PYTHON_DEPS}" +DEPEND="${RDEPEND} + >=dev-ros/cmake_modules-0.4.1 + test? ( + dev-cpp/gtest + dev-python/nose + )" + +PATCHES=( + "${FILESDIR}/gentoo.patch" +) |