-
Notifications
You must be signed in to change notification settings - Fork 288
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
pmi: avoid name clash of pmix.h with external pmix lib #7246
Conversation
183d6f4
to
3df3246
Compare
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.
LGTM. I'll merge once the tests clear.
test:mpich/pmi There issues running pmix with hydra. I'll look into it later. |
2440616
to
8be30aa
Compare
test:mpich/pmi ✔️ |
@sonjahapp I added two commits. One fixing the testing harness. And the other slightly alters the way to include pmix/pmix.h. Let me know if you are okay with it. |
This prevents a name clash between MPICH's pmix.h and the header of an external PMIx library.
When running hydra using pmix, somehow we changed the default stdout flush mode and it is not flushing after the newline. This causes the multi-tests mode hang. Adding explicit flushing fixes it.
We put embedded pmix.h to the pmix subdir to avoid clashing with system pmix.h. Adding it to CPPFLAGS makes it depending on the rather obscure inclusion order. Rather, include pmix/pmix.h explicitly in the code when we know we are building embedded pmix. This is consistent with how we do it in src/pmi/src/pmix.c.
8be30aa
to
612cebb
Compare
Happy new year and thanks for merging! I had to cherry-pick this change to make the include solution for |
Pull Request Description
Fixes #7243
This is the solution that we use for ParaStation MPI to circumvent the problem for now.
Better ideas are welcome. :)
Happy holidays!
Author Checklist
Particularly focus on why, not what. Reference background, issues, test failures, xfail entries, etc.
Commits are self-contained and do not do two things at once.
Commit message is of the form:
module: short description
Commit message explains what's in the commit.
Whitespace checker. Warnings test. Additional tests via comments.
For non-Argonne authors, check contribution agreement.
If necessary, request an explicit comment from your companies PR approval manager.