ROSBUILDER(1)

NAME
rosbuilder - execute appropriate build commands for ROS packages

SYNOPSIS
rosbuilder [options]

DESCRIPTION
rosbuilder is invoked internally by the ros buildsystem. You can use this in your debian/rules with dh --buildsystem=ros.

OPTIONS

-h, --help
    show this help message and exit

--sourcedir DIR
    root directory of the source package

--search-depth N
    limit maximum depth to N directory levels when searching for packages recursively (default: 2)

--unlimited-search-depth
    do not limit maximum depth when searching for packages

--builddir DIR
    build directory

--destdir DIR
    installation directory

--verbose
    make verbose output

--detect
    detect if ROS packages are to be built

--build-types
    list detected build types

--build-order
    list packages in build order

ENVIRONMENT
The rosbuilder behavior can be customized by setting various environment variables in debian/rules.

Remember to prefix the declarations with the export keyword, or the variables will not propagate to the environment properly.

  General behavior

ROS_DESTDIR
    override the location for the staged installation

ROS_IGNORE_TEST_RESULTS
    do not fail the build if the dh_auto_test step fails for the listed packages. If set to the special value 1, test failures for all packages will be ignored.

ROS_PYTHON_VERSION
    set to 2 or 3 to force the respective Python version for the build

ROS_SKIP_PACKAGES
    do not build the listed packages at all

ROS_SKIP_TESTS
    skip tests for the listed packages. If set to the special value 1, all package tests will be skipped. This is equivalent to passing nocheck via DEB_BUILD_OPTIONS.

  Customizing dh_auto_*
For the configure, build, test, and install steps, there are hooks to run additional commands before and after each step. Also, either additional arguments can be passed to the dh_auto_* helpers or the whole step can be replaced by a different command.

ROS_step_ARGS
    pass additional arguments to a dh step. The placeholder step stands for one of CONFIGURE, BUILD, TEST, INSTALL, or CLEAN, all in upper-case.

ROS_step_type_ARGS
    pass additional arguments to a dh step, but only for packages with a particular build type. Known build types are AMENT_CMAKE, AMENT_PYTHON, CATKIN, and CMAKE.

ROS_step_COMMAND_PREFIX
    prepend the given command and its arguments to a dh step. This is intended for wrapper commands which execute the remainder of their arguments, such as xvfb-run, which can be used to run tests in a virtual X server.

ROS_step_type_COMMAND_PREFIX
    prepend the given command and its arguments to a dh step, but only for a particular build type.

ROS_EXECUTE_BEFORE_step
    execute additional commands before a dh step. The value is subject to some variable expansion (see below) and treated as shell command line.

ROS_EXECUTE_AFTER_step
    execute additional commands before a dh step

ROS_EXECUTE_BEFORE_step_type
    execute additional commands before a dh step for packages of build type type.

ROS_EXECUTE_AFTER_step_type
    execute additional commands after a dh step for packages of build type type.

ROS_EXECUTE_CUSTOM_step
    replace the dh step by a custom shell command line. This will replace the entire command line, so any COMMAND_PREFIX will be ignored as well.

ROS_EXECUTE_CUSTOM_step_type
    replace the dh step for packages of build type type by a custom shell command line. This will replace the entire command line, so any COMMAND_PREFIX will be ignored as well.

  Variable expansions for shell command lines
rosbuilder supports a few placeholders in custom command lines. All values will be quoted as required to prevent spurious shell expansions.

{dir}
    the source directory of the currently processed ROS package

{builddir}
    the temporary build directory of the currently processed ROS package

{destdir}
    the location for the staged installation

{package}
    the name of the currently processed ROS package

{package_id}
    the sanitized package name, suitable for use as variable identifier

{version}
    the version number of the currently procssed ROS package

{build_type}
    the build type of the currently processed ROS package

AUTHOR
The dh-ros helper and rosbuilder was written by Timo Röhling (roehling@debian.org) for Debian.

SEE ALSO
debhelper(7)