Skip to content
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

Allow TPLs to be listed in LIB_[REQUIRED|OPTIONAL]_PACKAGES (#63) #583

Merged
merged 2 commits into from
Jun 7, 2023

Conversation

bartlettroscoe
Copy link
Member

@bartlettroscoe bartlettroscoe commented Jun 2, 2023

Description

See the commit log and updated documentation for details.

For example, this should fix the SEACAS case described in sandialabs/seacas#377 (comment). I.e. this will eliminate the need for some of the logic in:

https://github.com/sandialabs/seacas/blob/master/packages/seacas/libraries/ioss/cmake/Dependencies.cmake

Instructions for reviewers

This required just a minor change in the function tribits_is_pkg_defined() and
removed the argument pkgsOrTpls because it does not matter.  (This will fix
the SEACAS case described in sandialabs/seacas#377.)

I changed the Dependencies.cmake files in the TriBITS projects
TribitsExampleProject, TribitsExampleProject2, and ReducedMockTrilinos to use
the XXX_PACKAGES lists and not the XXX_TPLS list but I left the
Dependencies.cmake in the larger MockTrilinos project alone to make sure we
maintain backward compatibility (even if these are not the best examples for
now).

But I did updaste the code to actually append the XXX_TPLS lists to the
XXX_PACKAGES lists internally so the testing of this should be pretty solid.
(I should likely change all of the example projects to use only the
XXX_PACKAGES list to be a good example.)

See the new entry in the `CHANGLOG.md` file and updated documentation in this
commit for details.

NOTE: I was also able to remove the howto section "how to add a new tribits
external package/tpl dependency" since there is no difference between adding a
dependency on an existing defined upstream internal or external package.

NOTE: This changed the order of internal vs. external packages in the
`<Package>_[TEST|LIB]_DEFINED_DEPENDENCIES` lists which impacted the tests but
does not otherwise impact behavior (because the order if packages in these
lists does not matter).
@bartlettroscoe
Copy link
Member Author

@gsjaardema, this should fix the issue you reported in https://github.com/sandialabs/seacas/pull/377/files/75807545278f32397bbf6e4d0a1119f165a8a3a0#r1182980716.

If you have a few minutes, would you mind doing a review of the update documentation link to above under Instructions for reviewers?

@bartlettroscoe
Copy link
Member Author

@KyleFromKitware, if you have a few minutes, would you mind doing a review? See Instructions for reviewers above.

@bartlettroscoe bartlettroscoe marked this pull request as ready for review June 3, 2023 00:10
@bartlettroscoe bartlettroscoe moved this from In Progress to In Review in TriBITS Refactor Jun 3, 2023
will refer to the downstream package as ``<packageName>`` with base directory
``<packageDir>`` and will refer to the upstream package as
``<upstreamPackageName>``.
existing `downstream`_ package to an existing `upstream`_ (intenral or
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

internal

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks! This is fixed in the new commit 2dd9509. @KyleFromKitware, can you please update your review and if this looks good, approve the PR so it can merge (I have set up auto-merge).

@bartlettroscoe bartlettroscoe merged commit a0d4293 into master Jun 7, 2023
6 checks passed
TriBITS Refactor automation moved this from In Review to Done Jun 7, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Status: Done
Development

Successfully merging this pull request may close these issues.

None yet

2 participants