-
Notifications
You must be signed in to change notification settings - Fork 45
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
Add support for tribits_add_library( ... HEADERONLY ... ) (#625) #626
Merged
bartlettroscoe
merged 3 commits into
TriBITSPub:master
from
bartlettroscoe:625-headeronly-libs
Feb 21, 2025
Merged
Add support for tribits_add_library( ... HEADERONLY ... ) (#625) #626
bartlettroscoe
merged 3 commits into
TriBITSPub:master
from
bartlettroscoe:625-headeronly-libs
Feb 21, 2025
Conversation
This file contains 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
e087c30
to
b125602
Compare
2fe0f8b
to
a10a508
Compare
rabartlett1972
previously approved these changes
Feb 21, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I verified that the updated code fixes the STKEmend package in my local build. This is ready to merge and snapshot to Trilinos.
a10a508
to
7fb3cbe
Compare
rabartlett1972
approved these changes
Feb 21, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Okay to merge.
ToDo: We need to check that the SOURCES var is empty if HEADERONLY is passed in. Current, we just ignore SOURCES. Signed-off-by: Roscoe A. Bartlett <[email protected]>
…iBITSPub#625) This failing test shows that an INTERFACE library was not getting picked up and linked to the <Package>::all_libs target. The reason the existing tests all passed after adding the initial support for HEAERONLY INTERFACE libraries was that I added the interface library 'mixedlang_vector' before the main 'mixedlang' library. So the new 'mixedlang_vector' library is getting written to the MixedLangTargets.cmake file and is getting linked to 'mixedlang' and 'mixedlang' was getting liked to MixedLang::all_libs. So, anyone that was linking against MixedLang::all_libs or just the 'mixedlang' LIB (from internal or IMPORTED target) was getting the include directories being specified in the 'mixedlang_vector' library. But this implementation fails for TriBITS packages that only have INTERFACE libraries. Those are never getting added to the <Package>::all_libs target or indirectly to targets that do. This is why the STKEmend package failed because it has just one HEADERONLY INTERFACE library. This new added test case ensures that the INTERFACE library does get linked to the <Package>::all_libs target and will fail if it does not. The next commit will add the code in TriBITS to fix this test :-) Signed-off-by: Roscoe A. Bartlett <[email protected]>
…ub#625) This fixes the previously added failing test :-) I also had to add logic to not generate the package-config files when doing installation testing where you are only building the tests and examples. This was generating a strange error about export sets. You should not be generating packge-config files in these cases. Also, this change required the update of some other tests. Now that INTERFACE_LIBRARY taragets are getting pulled down, the <SubPkg>::all_libs for subpackage targets are getting added the <ParentPkg>::all_libs target for parent packages. This is an intereting case but it works. Signed-off-by: Roscoe A. Bartlett <[email protected]>
7fb3cbe
to
fdcb586
Compare
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.
Implements #625
Closes #51