Closed sethrj closed 2 years ago
@sethrj, yup, that is the plan. See:
This will be done as part of https://github.com/TriBITSPub/TriBITS/issues/299.
Also see discussion on this in:
But for greater flexibility, I think you want to find individual packages like find_package(Tpetra)
, find_package(MueLu)
instead of find_package(Trilinos COMPONENTS Tpetra Muelu ...)
. The former allows Tpetra and MueLu to be built and installed in independent CMake projects (i.e. different Spack packages) and the latter does not.
Sounds good!
Sounds good!
@sethrj, please comment on:
if you see any needed changes to that proposal.
If we can get CMake projects to adopt that standard, then we can make it easier to stitch together different CMake projects without having to read the detailed documentation for each project independently to figure out how to link to them after finding them.
With this issue, I was hoping that the basic "modern target" for export would be a separate (and easier) component compared to refactoring all of tribits' internal system.
Another enhancement would be to export other Trilinos configuration-related variables, e.g.
Tpetra_INST_INT_LONG_LONG
.
Right. Exporting variables like Tpetra_INST_INT_LONG_LONG
in TpetraCore.cmake
(and therefore TpetraConfig.cmake
and TrilinosConfig.cmake
) is also necessary to be able to build and install Trilinos packages in smaller subsets.
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.
If you would like to keep this issue open please add a comment and/or remove the MARKED_FOR_CLOSURE
label.
If this issue should be kept open even with no activity beyond the time limits you can add the label DO_NOT_AUTOCLOSE
.
If it is ok for this issue to be closed, feel free to go ahead and close it. Please do not add any comments or change any labels or otherwise touch this issue unless your intention is to reset the inactivity counter for an additional year.
This issue was closed due to inactivity for 395 days.
Enhancement
@bartlettroscoe
Currently Trilinos uses TriBITS to export CMake config files (with the
Trilinos_ENABLE_INSTALL_CMAKE_CONFIG_FILES
option). However, these files only generate simple library targets (not global, not namespaced) and do not propagate build flags or include directories. As a workaround, ForTrilinos and SCALE use an independentFindTrilinos.cmake
module that extends the tribits-exported components (attached below).It would make including Trilinos easier for downstream CMake projects if global, scoped targets were exported natively by the FindTrilinos module. Another enhancement would be to export other Trilinos configuration-related variables, e.g.
Tpetra_INST_INT_LONG_LONG
.