-
Notifications
You must be signed in to change notification settings - Fork 570
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
Address providing compilers in TrilinosConfig.cmake and <Package>Config.cmake files #12306
Comments
@sebrowne, @ccober6, @jwillenbring, with the merge of: it has just been discovered that this change that will result in libs and I think that we should ASAP update the Trilinos RELEASE_NOTES to state that Trilinos 15.0+ will no longer support providing the compilers in the installed Note that when doing a CUDA build, you have to define the compilers first before calling With Trilinos 15.0 this is a chance to officially remove this functionality with explanation! Should I put in a PR that makes this change and drop support for putting the compilers in the and either remove support for providing compilers altogether or provide them by a separate call to This seems like the best time to address this (or back out the change to use GNUInstallDirs until Trilinos 16.0). |
@sebrowne, @ccober6, @jwillenbring, @rppawlo, @jhux2, So given that at least Albany and Nalu still want to be able to get compilers from the Trilinos installation, we may need to determine how many other customers want to keep this functionality. And if they want to keep that functionality, we should consider pulling the trigger on Proposed Solution 2 in: Someone should bring this up at the next SART meeting. |
I guess I don't see the problem, admittedly probably because I don't have the depth of knowledge required. If a project chooses to use, for example, |
@bartlettroscoe This has also affected Sierra. @vbrunini can give more details. |
@vbrunini, if I had to guess, this would be related to the Lines 18 to 47 in 55108f7
|
Yes it was from the move to |
@vbrunini, just curious, but what fix the Sierra go with? |
Previously we used a dummy CMakeLists.txt like:
and I just added |
Right, but what good is a process that does not work for all situations? If you need to do something completely different for CUDA, then what is the value of trying to rely on Trilinos complilers?
Okay, so if that is useful, then the current system breaks when Trilinos is using the standard CMake module The idea with the Proposed Solution 2 in: provides as small tweak to this process that will work for CUDA and when using Is that worth implementing and supporting if it means that Trilinos customer projects can use the compilers and tools that were used in the installed Trilinos in all cases, even CUDA? That is the question because even before switching to Make sense? If not, I should explain this at the next SART meeting. |
I'm okay with Proposed Solution 2. |
@glhenni, if you want that, then as an important user of Trilinos, you should request that via the Trilinos HelpDesk (an internal SNL site). If the request comes from an important user, then it will carry more weight with the Trilinos prioritization process. The Trilinos framework team does not directly manage issues on GitHub, only on the Trilinos HelpDesk (or at least that was their policy). |
This issue has had no activity for 365 days and is marked for closure. It will be closed after an additional 30 days of inactivity. |
CC: @sebrowne, @ccober6, @jwillenbring, @rppawlo, @jhux2
Description
The TriBITS-generated
TrilinosConfig.cmake
and<Package>Config.cmake
files have long included variables that gave the full paths to the different compilers used to build and install Trilinos as well as the complier options as the variables:This allowed downstream projects like Albany to call
find_package(Trilinos)
and then use the compilers defined by that call. However, this does not work when usingGNUInstallDirs.cmake
(see sandialabs/Albany#982) or when using a CUDA build with Kokkos (see #11863 (comment) and TriBITSPub/TriBITS#545).Therefore, to avoid these problems when moving to modern CMake (see TriBITSPub/TriBITS#411), these compiler-related variables should be removed from these files.
However, if it is desired to have a way to provide these compilers and compiler options to downstream, another solution is suggested in Proposed Solution 2 in:
The text was updated successfully, but these errors were encountered: