table of contents
ROSBUILDER(1) | 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 for Debian.
SEE ALSO¶
0.11.1 |