FreeBSD Bugzilla – Attachment 189943 Details for
Bug 224895
New port: devel/ros-rosdep Multi-package manager system dependency tool for ROS
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
Remember
[x]
|
Forgot Password
Login:
[x]
Updated shar
rosdep.shar (text/plain), 12.30 KB, created by
Trenton Schulz
on 2018-01-21 09:51:59 UTC
(
hide
)
Description:
Updated shar
Filename:
MIME Type:
Creator:
Trenton Schulz
Created:
2018-01-21 09:51:59 UTC
Size:
12.30 KB
patch
obsolete
># This is a shell archive. Save it in a file, remove anything before ># this line, and then unpack it by entering "sh file". Note, it may ># create directories; files and directories will be owned by you and ># have default permissions. ># ># This archive contains: ># ># rosdep ># rosdep/pkg-descr ># rosdep/files ># rosdep/files/patch-src_rosdep2_platforms_freebsd.py ># rosdep/files/patch-src_rosdep2_____init____.py ># rosdep/files/patch-src_rosdep2_catkin__support.py ># rosdep/pkg-plist ># rosdep/distinfo ># rosdep/Makefile ># >echo c - rosdep >mkdir -p rosdep > /dev/null 2>&1 >echo x - rosdep/pkg-descr >sed 's/^X//' >rosdep/pkg-descr << '8008cf1a7c42d94d6e7c404fab7ba3ce' >XTaken from the rosdep documentation. >X >Xrosdep is a command-line tool for installing system dependencies. For >X*end-users*, rosdep helps you install system dependencies for software >Xthat you are building from source. For *developers*, rosdep simplifies >Xthe problem of installing system dependencies on different platforms. >X >XOn FreeBSD, the pkg system is used. >8008cf1a7c42d94d6e7c404fab7ba3ce >echo c - rosdep/files >mkdir -p rosdep/files > /dev/null 2>&1 >echo x - rosdep/files/patch-src_rosdep2_platforms_freebsd.py >sed 's/^X//' >rosdep/files/patch-src_rosdep2_platforms_freebsd.py << '1b729930d91895a42b73cc4fe25dc17a' >X--- src/rosdep2/platforms/freebsd.py.orig 2017-08-04 00:33:42 UTC >X+++ src/rosdep2/platforms/freebsd.py >X@@ -28,60 +28,54 @@ >X >X # Original from cygwin.py by Tingfan Wu tingfan@gmail.com >X # Modified for FreeBSD by Rene Ladan rene@freebsd.org >X+# Updated for FreeBSD with pkg by Trenton Schulz trentonw@ifi.uio.no >X >X-import os >X-import subprocess >X- >X from rospkg.os_detect import OS_FREEBSD >X >X-from .source import SOURCE_INSTALLER >X-from ..installers import Installer >X+from .pip import PIP_INSTALLER >X+from ..installers import PackageManagerInstaller >X+from ..shell_utils import read_stdout >X >X-PKG_ADD_INSTALLER = 'pkg_add' >X+PKG_INSTALLER = 'pkg' >X >X+ >X def register_installers(context): >X- context.set_installer(PKG_ADD_INSTALLER, PkgAddInstaller()) >X- >X+ context.set_installer(PKG_INSTALLER, PkgInstaller()) >X+ >X+ >X def register_platforms(context): >X- context.add_os_installer_key(OS_FREEBSD, SOURCE_INSTALLER) >X- context.add_os_installer_key(OS_FREEBSD, PKG_ADD_INSTALLER) >X- context.set_default_os_installer_key(OS_FREEBSD, lambda self: PKG_ADD_INSTALLER) >X+ context.add_os_installer_key(OS_FREEBSD, PKG_INSTALLER) >X+ context.add_os_installer_key(OS_FREEBSD, PIP_INSTALLER) >X+ context.set_default_os_installer_key(OS_FREEBSD, lambda self: PKG_INSTALLER) >X >X-def pkg_info_detect_single(p): >X+ >X+def pkg_detect_single(p, exec_fn): >X if p == "builtin": >X return True >X- # The next code is a lot of hassle, but there is no >X- # better way in FreeBSD using just the base tools >X- portname = p >X- if p == "gtk20": >X- portname = "gtk-2.\*" >X- elif p == "py-gtk2": >X- portname = "py27-gtk-2.\*" >X- elif p[:9] in ["autoconf2", "automake1"]: >X- portname = p[:8] + "-" + p[8] + "." + p[9:] + "\*" >X- elif p[:3] == "py-": >X- portname = "py27-" + p[3:] + "\*" >X- else: >X- portname = p + "-\*" >X- pop = subprocess.Popen("/usr/sbin/pkg_info -qE " + portname, shell=True) >X- return os.waitpid(pop.pid, 0)[1] == 0 # pkg_info -E returns 0 if pkg installed, 1 if not >X >X-def pkg_info_detect(packages): >X- return [p for p in packages if pkg_info_detect_single(p)] >X+ cmd = ['/usr/sbin/pkg', 'query', '%n', p] >X+ std_out = exec_fn(cmd) >X+ return std_out.split() != [] >X >X-class PkgAddInstaller(Installer): >X+ >X+def pkg_detect(packages, exec_fn=None): >X+ if exec_fn is None: >X+ exec_fn = read_stdout >X+ return [p for p in packages if pkg_detect_single(p, exec_fn)] >X+ >X+ >X+class PkgInstaller(PackageManagerInstaller): >X """ >X An implementation of the Installer for use on FreeBSD-style >X systems. >X """ >X >X def __init__(self): >X- super(PkgAddInstaller, self).__init__(pkg_info_detect) >X+ super(PkgInstaller, self).__init__(pkg_detect) >X >X def get_install_command(self, resolved, interactive=True, reinstall=False, quiet=False): >X- packages = self.get_packages_to_install(resolved, reinstall=reinstall) >X+ packages = self.get_packages_to_install(resolved, reinstall=reinstall) >X if not packages: >X return [] >X else: >X- #pkg_add does not have a non-interactive command >X- return [self.elevate_priv(['/usr/sbin/pkg_add', '-r'])+packages] >X+ return [self.elevate_priv(['/usr/sbin/pkg', 'install', '-y']) + packages] >1b729930d91895a42b73cc4fe25dc17a >echo x - rosdep/files/patch-src_rosdep2_____init____.py >sed 's/^X//' >rosdep/files/patch-src_rosdep2_____init____.py << '573fe1db812b6e4427ba7c607f20effe' >X--- src/rosdep2/__init__.py.orig 2017-08-04 00:33:42 UTC >X+++ src/rosdep2/__init__.py >X@@ -64,10 +64,11 @@ def create_default_installer_context(verbose=False): >X from .platforms import pip >X from .platforms import gem >X from .platforms import redhat >X+ from .platforms import freebsd >X from .platforms import slackware >X from .platforms import source >X >X- platform_mods = [arch, cygwin, debian, gentoo, opensuse, osx, redhat, slackware] >X+ platform_mods = [arch, cygwin, debian, gentoo, opensuse, osx, redhat, slackware, freebsd] >X installer_mods = [source, pip, gem] + platform_mods >X >X context = InstallerContext() >573fe1db812b6e4427ba7c607f20effe >echo x - rosdep/files/patch-src_rosdep2_catkin__support.py >sed 's/^X//' >rosdep/files/patch-src_rosdep2_catkin__support.py << '885c870a56e570f4cb1f87653ba1259a' >X--- src/rosdep2/catkin_support.py.orig 2017-08-04 00:33:42 UTC >X+++ src/rosdep2/catkin_support.py >X@@ -27,20 +27,23 @@ from .platforms.debian import APT_INSTALLER >X from .platforms.osx import BREW_INSTALLER >X from .platforms.pip import PIP_INSTALLER >X from .platforms.redhat import YUM_INSTALLER >X+from .platforms.freebsd import PKG_INSTALLER >X from .rep3 import download_targets_data >X from .rosdistrohelper import get_targets >X from .rospkg_loader import DEFAULT_VIEW_KEY >X from .sources_list import get_sources_list_dir, DataSourceMatcher, SourcesListLoader >X >X+ >X class ValidationFailed(Exception): >X pass >X >X+ >X def call(command, pipe=None): >X """ >X Copy of call() function from catkin-generate-debian to mimic output >X """ >X working_dir = '.' >X- #print('+ cd %s && ' % working_dir + ' '.join(command)) >X+ # print('+ cd %s && ' % working_dir + ' '.join(command)) >X process = Popen(command, stdout=pipe, stderr=pipe, cwd=working_dir) >X output, unused_err = process.communicate() >X retcode = process.poll() >X@@ -49,6 +52,7 @@ def call(command, pipe=None): >X if pipe: >X return output >X >X+ >X def get_ubuntu_targets(rosdistro): >X """ >X Get a list of Ubuntu distro codenames for the specified ROS >X@@ -64,16 +68,18 @@ def get_ubuntu_targets(rosdistro): >X targets_data['electric'] = {'ubuntu': legacy_targets['electric']} >X return targets_data[rosdistro]['ubuntu'] >X >X+ >X def get_installer(installer_name): >X """ Expected installers APT_INSTALLER, YUM_INSTALLER, ...""" >X >X installer_context = create_default_installer_context() >X return installer_context.get_installer(installer_name) >X >X+ >X def resolve_for_os(rosdep_key, view, installer, os_name, os_version): >X """ >X Resolve rosdep key to dependencies. >X- >X+ >X :param os_name: OS name, e.g. 'ubuntu' >X >X :raises: :exc:`rosdep2.ResolutionError` >X@@ -110,8 +116,8 @@ def get_catkin_view(rosdistro_name, os_name, os_versio >X raise ValidationFailed("""rosdep database does not have any sources. >X Please make sure you have a valid configuration in: >X \t%s >X-"""%(sources_list_dir)) >X- >X+""" % (sources_list_dir)) >X+ >X # for vestigial reasons, using the roskg loader, but we're only >X # actually using the backend db as resolution is not resource-name based >X lookup = RosdepLookup.create_from_rospkg(sources_loader=sources_loader) >885c870a56e570f4cb1f87653ba1259a >echo x - rosdep/pkg-plist >sed 's/^X//' >rosdep/pkg-plist << 'f46d1048ecf6108350a557dfe0c5f677' >Xbin/rosdep >Xbin/rosdep-source >X%%PYTHON_SITELIBDIR%%/rosdep-0.11.8-py%%PYTHON_VER%%.egg-info/PKG-INFO >X%%PYTHON_SITELIBDIR%%/rosdep-0.11.8-py%%PYTHON_VER%%.egg-info/SOURCES.txt >X%%PYTHON_SITELIBDIR%%/rosdep-0.11.8-py%%PYTHON_VER%%.egg-info/dependency_links.txt >X%%PYTHON_SITELIBDIR%%/rosdep-0.11.8-py%%PYTHON_VER%%.egg-info/requires.txt >X%%PYTHON_SITELIBDIR%%/rosdep-0.11.8-py%%PYTHON_VER%%.egg-info/top_level.txt >X%%PYTHON_SITELIBDIR%%/rosdep2/__init__.py >X%%PYTHON_SITELIBDIR%%/rosdep2/__init__.pyc >X%%PYTHON_SITELIBDIR%%/rosdep2/_version.py >X%%PYTHON_SITELIBDIR%%/rosdep2/_version.pyc >X%%PYTHON_SITELIBDIR%%/rosdep2/catkin_packages.py >X%%PYTHON_SITELIBDIR%%/rosdep2/catkin_packages.pyc >X%%PYTHON_SITELIBDIR%%/rosdep2/catkin_support.py >X%%PYTHON_SITELIBDIR%%/rosdep2/catkin_support.pyc >X%%PYTHON_SITELIBDIR%%/rosdep2/core.py >X%%PYTHON_SITELIBDIR%%/rosdep2/core.pyc >X%%PYTHON_SITELIBDIR%%/rosdep2/dependency_graph.py >X%%PYTHON_SITELIBDIR%%/rosdep2/dependency_graph.pyc >X%%PYTHON_SITELIBDIR%%/rosdep2/gbpdistro_support.py >X%%PYTHON_SITELIBDIR%%/rosdep2/gbpdistro_support.pyc >X%%PYTHON_SITELIBDIR%%/rosdep2/installers.py >X%%PYTHON_SITELIBDIR%%/rosdep2/installers.pyc >X%%PYTHON_SITELIBDIR%%/rosdep2/loader.py >X%%PYTHON_SITELIBDIR%%/rosdep2/loader.pyc >X%%PYTHON_SITELIBDIR%%/rosdep2/lookup.py >X%%PYTHON_SITELIBDIR%%/rosdep2/lookup.pyc >X%%PYTHON_SITELIBDIR%%/rosdep2/main.py >X%%PYTHON_SITELIBDIR%%/rosdep2/main.pyc >X%%PYTHON_SITELIBDIR%%/rosdep2/model.py >X%%PYTHON_SITELIBDIR%%/rosdep2/model.pyc >X%%PYTHON_SITELIBDIR%%/rosdep2/platforms/__init__.py >X%%PYTHON_SITELIBDIR%%/rosdep2/platforms/__init__.pyc >X%%PYTHON_SITELIBDIR%%/rosdep2/platforms/arch.py >X%%PYTHON_SITELIBDIR%%/rosdep2/platforms/arch.pyc >X%%PYTHON_SITELIBDIR%%/rosdep2/platforms/cygwin.py >X%%PYTHON_SITELIBDIR%%/rosdep2/platforms/cygwin.pyc >X%%PYTHON_SITELIBDIR%%/rosdep2/platforms/debian.py >X%%PYTHON_SITELIBDIR%%/rosdep2/platforms/debian.pyc >X%%PYTHON_SITELIBDIR%%/rosdep2/platforms/freebsd.py >X%%PYTHON_SITELIBDIR%%/rosdep2/platforms/freebsd.pyc >X%%PYTHON_SITELIBDIR%%/rosdep2/platforms/gem.py >X%%PYTHON_SITELIBDIR%%/rosdep2/platforms/gem.pyc >X%%PYTHON_SITELIBDIR%%/rosdep2/platforms/gentoo.py >X%%PYTHON_SITELIBDIR%%/rosdep2/platforms/gentoo.pyc >X%%PYTHON_SITELIBDIR%%/rosdep2/platforms/opensuse.py >X%%PYTHON_SITELIBDIR%%/rosdep2/platforms/opensuse.pyc >X%%PYTHON_SITELIBDIR%%/rosdep2/platforms/osx.py >X%%PYTHON_SITELIBDIR%%/rosdep2/platforms/osx.pyc >X%%PYTHON_SITELIBDIR%%/rosdep2/platforms/pip.py >X%%PYTHON_SITELIBDIR%%/rosdep2/platforms/pip.pyc >X%%PYTHON_SITELIBDIR%%/rosdep2/platforms/redhat.py >X%%PYTHON_SITELIBDIR%%/rosdep2/platforms/redhat.pyc >X%%PYTHON_SITELIBDIR%%/rosdep2/platforms/slackware.py >X%%PYTHON_SITELIBDIR%%/rosdep2/platforms/slackware.pyc >X%%PYTHON_SITELIBDIR%%/rosdep2/platforms/source.py >X%%PYTHON_SITELIBDIR%%/rosdep2/platforms/source.pyc >X%%PYTHON_SITELIBDIR%%/rosdep2/rep3.py >X%%PYTHON_SITELIBDIR%%/rosdep2/rep3.pyc >X%%PYTHON_SITELIBDIR%%/rosdep2/rosdistrohelper.py >X%%PYTHON_SITELIBDIR%%/rosdep2/rosdistrohelper.pyc >X%%PYTHON_SITELIBDIR%%/rosdep2/rospack.py >X%%PYTHON_SITELIBDIR%%/rosdep2/rospack.pyc >X%%PYTHON_SITELIBDIR%%/rosdep2/rospkg_loader.py >X%%PYTHON_SITELIBDIR%%/rosdep2/rospkg_loader.pyc >X%%PYTHON_SITELIBDIR%%/rosdep2/shell_utils.py >X%%PYTHON_SITELIBDIR%%/rosdep2/shell_utils.pyc >X%%PYTHON_SITELIBDIR%%/rosdep2/sources_list.py >X%%PYTHON_SITELIBDIR%%/rosdep2/sources_list.pyc >f46d1048ecf6108350a557dfe0c5f677 >echo x - rosdep/distinfo >sed 's/^X//' >rosdep/distinfo << 'f8dbcfa901e69f6683c5a5d3dff84fbc' >XTIMESTAMP = 1513849764 >XSHA256 (ros-infrastructure-rosdep-0.11.8_GH0.tar.gz) = 2d5b3c73caa1af5a92b2d1d5356614fff4947d62ac9985e96f62ef801a078137 >XSIZE (ros-infrastructure-rosdep-0.11.8_GH0.tar.gz) = 112899 >f8dbcfa901e69f6683c5a5d3dff84fbc >echo x - rosdep/Makefile >sed 's/^X//' >rosdep/Makefile << '4a5ef68c8a4dfea569c697f3f6410060' >X# $FreeBSD$ >X >XPORTNAME= ros-rosdep >XDISTVERSION= 0.11.8 >XCATEGORIES= devel >X >XMAINTAINER= trentonw@ifi.uio.no >XCOMMENT= Multi-package manager system dependency tool for ROS >X >XLICENSE= BSD3CLAUSE >X >XWWW= http://docs.ros.org/independent/api/rosdep/html/ >XUSES= python >XUSE_PYHTON= distutils autoplist >XUSE_GITHUB= yes >XGH_ACCOUNT= ros-infrastructure >XGH_PROJECT= rosdep >XGH_TAGNAME= 0.11.8 >X >Xdo-install: >X (cd ${WRKSRC} && python setup.py install --root ${STAGEDIR}) >X >X.include <bsd.port.mk> >4a5ef68c8a4dfea569c697f3f6410060 >exit >
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Raw
Actions:
View
Attachments on
bug 224895
:
189396
|
189943
|
201897
|
202139
|
207565