.. _stack_xml: Stack manifest XML tags reference ================================= NOTE: Stack manifests always have the filename ``stack.xml``. This document describes catkin-ized stacks. ------- The ```` tag is the unique top-level tag in a stack manifest. Required Tags ------------- The required set of tags in a ``stack.xml`` file provides basic metadata about your stack, including what it is, who wrote it, and who can use it. * :ref:`\ ` * :ref:`\ ` * :ref:`\ ` * :ref:`\ ` * :ref:`\ ` * :ref:`\ ` * :ref:`\ ` Optional Tags ------------- The most common optional tags are ````, ```` and ````. We strongly recommend the use of the ```` tag to point users to a website where they can find out more information about your stack. The website is most commonly a wiki page on ROS.org so that users can easily edit and update information about your stack. * :ref:`\ ` * :ref:`\ ` * :ref:`\ ` * :ref:`\ ` * :ref:`\ ` * :ref:`\ ` Example ------- :: ros_comm 0.1.2 ROS communications-related packages, including core client libraries (roscpp, rospy, roslisp) and graph introspection tools (rostopic, rosnode, rosservice, rosparam). Troy Straszheim Morten Kjaergaard Ken Conley Troy Straszheim BSD willowgarage http://www.ros.org genmsg libboost-thread-dev libboost-date-time-dev libboost-thread libboost-date-time .. _stack_name_tag: ------ Text '''' The name of the stack. Should correspond to the name of the directory that the code is checked out in, if this directory is being traversed by catkin. .. _stack_version_tag: --------- Text '''' The version number of the stack. Major.Minor.Patchlevel version. Numeric only. Used by deb packaging utilities. Attributes '''''''''' ``abi="1.2.1"`` *(optional)* An optional ABI version number if it is different from the version number. Example ''''''' :: 1.2.3 .. _stack_description_tag: ------------- Text '''' Description of the stack. It may be multi-line and include XHTML. Attributes '''''''''' ``brief="brief text"`` *(optional)* One-line summary of your stack. Useful for UI displays where the stack name isn't sufficiently descriptive. Example ''''''' :: Python implementation of the ROS master/node APIs and client library. .. _stack_author_tag: (multiple) ------------------- Text '''' The name of the person who authored the stack. Attributes '''''''''' ``email="name@domain.tld"`` *(optional)* Email address of author. Example ''''''' :: Alyssa P. Hacker .. _stack_maintainer_tag: (multiple) ----------------------- Text '''' The name of the person maintaining the stack. Attributes '''''''''' ``email="name@domain.tld"`` *(optional)* Email address of maintainer. Example ''''''' :: Alyssa P. Hacker .. _stack_license_tag: --------- Text '''' Name of license for this package, e.g. BSD, GPL, LGPL. In order to assist machine readability, only include the license name in this tag. For any explanatory text about licensing caveats, please use the ```` tag. Most common open-source licenses are described on the `OSI website `_. Commonly used license strings: - Apache 2.0 - BSD - Boost Software License - GPLv2 - GPLv3 - LGPLv2.1 - LGPLv3 - MIT - Mozilla Public License Version 1.1 - ZLib - wxWindows Example ''''''' :: BSD,GPLv3 .. _stack_copyright_tag: ----------- Text '''' Copyright information which is integrated into Debian packages. Example ''''''' :: Copyright (c) 2012, Willow Garage, Inc. .. _stack_url_tag: ----- Text '''' Website for the stack. This is important for guiding users to online documentation. Example ''''''' :: http://ros.org/wiki/navigation .. _stack_review_tag: -------- Status of the stack in the review process (Design, API, and Code review). `QAProcess `_. Stack that have not yet been reviewed should be marked as "experimental". Attributes '''''''''' ``status="status"`` See `list of valid review statuses `_. ``notes="notes on review status"`` *(optional)* Notes on review status, such as date of last review. Example ''''''' :: .. _stack_depends_tag: (multiple) -------------------- Declares a ROS dep key that this stack depends on at run-time. Used to determine dependency ordering of current workspace (when this exists) and used by package and release tools. Example ''''''' :: roscpp .. _stack_build_depends_tag: (multiple) -------------------------- Test '''' Declares a ROS dep key that this stack depends on at build-time. Used to determine dependency ordering of current workspace (when this exists) and used by package and release tools. Example ''''''' :: genmsg .. _stack_build_type_tag: ------------ Text '''' The build type determines the debian rules file to use. Options: ``cmake``, ``autotools``, or ``python_distutils``. See bloom/bin/em for the definitions. Defaults to ``cmake``. Attributes '''''''''' ``file="local_path_to_rules.em_file"`` *(optional)* If the value is ``custom`` then that file path has to be given. E.g. ``./bloom/rules.em`` Example ''''''' :: autotools custom .. _stack_message_generator_tag: ------------------- Defines the 'tag' for the language bindings generated by this package, -e.g. in ``gencpp`` this is set to ``cpp``. Example ''''''' :: cpp