Repository navigation
Conversation
chapman39
marked this pull request as draft
October 15, 2026 22:34
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.
avoid exporting MFEM cmake target. this creates a lot of issues when we build with codevelop. instead, each project will import the third party libraries they need individually. and only export targets that are internal to the project. so smith only exports smith_infrastructure, smith_numerics, etc. https://github.com/llnl/smith/blob/develop/CMakeLists.txt#L206-L211
This only works if every project built from source (i.e. mfem, axom, tribol) agrees to NOT export mfem, except mfem itself. Because either only one library can export a target, or everyone has to. So before this, lido, smith, axom, tribol all had to export mfem, which becomes hard to maintain.
I updated the Axom and Tribol submodules to no longer export mfem. Links:
NOTE:
Now that we're importing targets more often in our smith-config.cmake, it's good practice to check if the target already exists before importing it. Otherwise when downstream projects install Smith and they both import
arpackfor example, it will error-out, since you can't have two targets with the same name. It's not required to do this when we call find_dependency. ExampleSome issues: