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

Evaluate CMakePresets.json to store machine specific settings #548

Open
mwaxmonsky opened this issue Jun 5, 2024 · 0 comments
Open

Evaluate CMakePresets.json to store machine specific settings #548

mwaxmonsky opened this issue Jun 5, 2024 · 0 comments
Labels
enhancement New feature or request
Milestone

Comments

@mwaxmonsky
Copy link
Collaborator

Is your feature request related to a problem? Please describe.
Currently each machine requires a different configuration of modules to be loaded/unloaded which has caused lost development time debugging environments unnecessarily. CMake provides the ability to load modules natively (https://cmake.org/cmake/help/latest/module/FindEnvModules.html) and has preset files (https://cmake.org/cmake/help/latest/manual/cmake-presets.7.html#manual:cmake-presets(7)) which can store machine specific settings.

Describe the solution you'd like
Exposed configuration variables (MICM_MODULE_LOADS/MICM_MODULE_UNLOADS) which are ;-seperated lists of module names and in cmake/dependencies.cmake, we can iterate each string and load/unload the module respectively by name using env_module(load ${PARSED_MODULE}).

Then on the command line, we can have the ability to pass in the presets via cmake --preset=derecho for example which would load the variables for us without needing to pass them through manually.

Describe alternatives you've considered
N\A

Additional context
N\A

@mwaxmonsky mwaxmonsky linked a pull request Jun 5, 2024 that will close this issue
@mattldawson mattldawson added the enhancement New feature or request label Jun 5, 2024
@mattldawson mattldawson added this to the Tech Debt milestone Jun 5, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants