Repository navigation
ColPack: use OpenMP only when it is found - #243
Merged
Merged
Conversation
ColPack's own CMakeLists.txt defaults COLPACK_ENABLE_OPENMP to ON and
then requires OpenMP. The clang-cl cross build for Windows has no OpenMP
runtime, so configuring it failed:
Could NOT find OpenMP_CXX (missing: OpenMP_CXX_FLAGS
OpenMP_CXX_LIB_NAMES)
The vendored copy never used OpenMP, and only SMPGC is parallelised,
which OpenModelica does not call. Probe for OpenMP first and enable it
in ColPack only if it is there. OpenMP_RUNTIME_MSVC is set as ColPack
would set it, so the cached probe is the one ColPack wants.
Assisted-by: Claude Opus 5.5
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
ColPack's own CMakeLists.txt defaults COLPACK_ENABLE_OPENMP to ON and then requires OpenMP. The clang-cl cross build for Windows has no OpenMP runtime, so configuring it failed:
The vendored copy never used OpenMP, and only SMPGC is parallelised, which OpenModelica does not call. Probe for OpenMP first and enable it in ColPack only if it is there. OpenMP_RUNTIME_MSVC is set as ColPack would set it, so the cached probe is the one ColPack wants.
Assisted-by: Claude Opus 5.5
Related Issues
Purpose
Approach