Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Provide better examples for .meta files #94

Open
Ryanf55 opened this issue Mar 22, 2024 · 1 comment
Open

Provide better examples for .meta files #94

Ryanf55 opened this issue Mar 22, 2024 · 1 comment

Comments

@Ryanf55
Copy link

Ryanf55 commented Mar 22, 2024

I have a bunch of packages that have CMake options exposed. Some are package-specific, but are in upstream repos that don't want to change defaults.

When building in colcon, there is support for changing the behavior of packages from the colcon root, but the docs do not explain how to use it very well.

Can you provide a more complete example in the docs for a use case like this:

src/
   pkgA/
   pkgB/
   pkgC/
.my_example.meta

I want to turn

  • BUILD_TESTING=OFF on pkgA because its tests take forever to compile and it's slow, but leave it as default (on) in the others
  • PACKAGE_B_CUSTOM1=42 only affecting pkgB

If you try setting CMake args for these for the entire build, there is no fine grained control.

It would be very helpful for the docs to include a sample my_example.meta

Thanks for the consideration!

@leorich
Copy link

leorich commented Dec 17, 2024

This may extend the issue a bit, but its related enough I opted to comment here.

There are several ways to affect colcon config:

  • colcon.pkg files
  • colcon.meta
  • defaults.yaml
  • cli args

I would love to see the order of precedence (ie what configs override other configs).

It would also be helpful to document if args are appended to existing args, or if existing args are overwritten.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

No branches or pull requests

2 participants