Fix ament_target_dependencies accepting non-packages #180
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This quotes a cmake variable to avoid some weird behavior that causes a check to always evaluate to false, even for non-packages.
If
package_name
has been found thenif(NOT ${${package_name}_FOUND})
becomesif(NOT 1)
, and the condition is false as intended.If
package_name
is not a package name then${package_name}_FOUND
isn't a variable, so${${package_name}_FOUND}
is an empty string. Since the string is unquoted it gets expanded into zero arguments, and the actual condition becomesif(NOT)
which evaluates to false too.Thanks to @aaronchongth for finding the cmake issue: https://gitlab.kitware.com/cmake/cmake/issues/19379