Skip to content

Instantly share code, notes, and snippets.

@rotu
Last active March 18, 2020 20:40
Show Gist options
  • Save rotu/62cccb11b25398e9d1aa45021376d546 to your computer and use it in GitHub Desktop.
Save rotu/62cccb11b25398e9d1aa45021376d546 to your computer and use it in GitHub Desktop.
My colcon configuration
_definitions:
- &base-paths
# don't look at packages outside the src subdirectory
base-paths: [/opt/ros/master/src]
- &build-base
build-base: /opt/ros/master/build
- &test-base
test-base: /opt/ros/master/build
- &test-result-base
test-result-base: /opt/ros/master/test-results
- &install-base
install-base: /opt/ros/master/install
- &build-test-settings
# leads to shorter PATH and other environment variables from sourcing your workspace
merge-install: true
# my computer has lots of cores
parallel-workers: 3
"": # applies to all colcon subcommands
log-base: /opt/ros/master/log
build:
<<: [*base-paths, *build-base, *install-base, *test-result-base, *build-test-settings]
# makes it so some edits (e.g. python and launch files) don't require rebuilding the package
# but also leads to a long pythonpath
# symlink-install: true
symlink-install: false
# don't make uninstall targets. I never use them anyway
ament-cmake-args: [-DAMENT_CMAKE_UNINSTALL_TARGET=OFF]
cmake-args: [
--no-warn-unused-cli,
# choose the appropriate build configuration:
# -DCMAKE_BUILD_TYPE=Release
-DCMAKE_BUILD_TYPE=RelWithDebInfo # when running for performance profiling
# -DCMAKE_BUILD_TYPE=Debug # when running for debugging
]
# if a package fails, still try building the rest
continue-on-error: true
extension-points:
all: true
extensions:
all: true
graph:
<<: [*base-paths, *build-base]
info:
<<: [*base-paths, *build-base]
metadata: {}
list:
<<: [*base-paths, *build-base]
test:
<<: [*build-test-settings, *base-paths, *build-base, *test-result-base, *install-base]
test-result:
<<: [*test-result-base]
# Don't just give the totals - tell us which tests failed and why
verbose: true
version-check: {}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment