-
Notifications
You must be signed in to change notification settings - Fork 12
Fix find (or build) optional dependencies when optional dependency is already installed #167
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
Conversation
…Dependency call chain
…rary. Also add more verbose output
…dified find_or_build_optional_dependency rewrite
|
Fixed failing tests on CMake 3.26.0-rc4 and the unit tests here are passing. Still need to verify on CMake 4.x. |
|
On CMake 4.0.2-dirty, Just to be clear, while this removes a blocker, I still do not consider this PR r2g yet until I have a chance to test the integration tests as well. |
|
@ryanmrichard This is r2g. Integration tests passed on my system, as well as all of the other reported tests that I conducted. |
|
🚀 [bumpr] Bumped! |
Is this pull request associated with an issue(s)?
Fixes #166.
Description
Main Fix
This PR updates
cmaize_find_optional_dependency()(cfod()) andcmaize_find_or_build_optional_dependency()(cfobod()) calls to reference the correct target name when adding thecmaize_option()enabling the optional dependency to the dependency target'starget_compile_definitions().Enhanced Output
While debugging this issue, I had to investigate code spanning most of the life cycle of a target (both dependency targets and otherwise), so I also added more verbose output where possible, which can be enabled by setting the message log level at or finer than
VERBOSE(log levels here).TODOs
cfod()andcfobod()calls for the Eigen dependency, both when Eigen is installed and not.docs/bare_bones_cmakewas failing in CMake 4.0.2 and needs to be checked manually.