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

CMake Modernization: consolidate add library macros, patch targets, parallel options #20040

Open
wants to merge 8 commits into
base: task/biagas/cmake_modernization_with_blt
Choose a base branch
from

Conversation

biagas
Copy link
Contributor

@biagas biagas commented Nov 13, 2024

Description

Started down the road of updating creating visit_add_executable macro and updating CMakeLists as necessary, ran into a lot of duplication in regards to parallel settings, so decided to try to consolidate all the logic a bit better. This is the result of that effort. The actual executable changes will come later.

Added visit_patch_target to add additional settings to a target.
Added visit_patch_parallel_target which adds all the parallel flags/includes/links to a parallel target. Can be used for a library or an executable.

Modified visit_add_parallel_library to call visit_patch_parallel_target.
Modified the current PARALLEL settings to accommodate changes needed for the new. The old-style will eventually disappear.

Updated some libraries to utilize visit_patch_target.

Type of change

  • [ ] Bug fix
  • [ ] New feature
  • [ ] Documentation update
  • Other

CMake modernization.

Checklist:

  • I have commented my code where applicable.
  • [ ] I have updated the release notes.
  • [ ] I have made corresponding changes to the documentation.
  • [ ] I have added debugging support to my changes.
  • [ ] I have added tests that prove my fix is effective or that my feature works.
  • [ ] I have confirmed new and existing unit tests pass locally with my changes.
  • [ ] I have added new baselines for any new tests to the repo.
  • [ ] I have NOT made any changes to protocol or public interfaces in an RC branch.

Added `DO_PARALLEL` option to visit_add_libary, indicating the library should be considered parallel.
Added `SKIP_INSTALL` option to visit_add_library indicating the library isn't to be installed.
Added `visit_patch_parallel_target` which adds all the parallel flags, defines, includes, libs, etc to a parallel target.
Added `visit_patch_target` to add SOURCES, INCLUDES, DEFINES, etc to an already created target.
…_PARALLEL.

Use visit_patch_target where feasible.
It now calls visit_add_library, then visit_patch_parallel_target.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant