-
Notifications
You must be signed in to change notification settings - Fork 901
Add checks for libevent.so conflict with LSF #7698
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
Conversation
* This should have been `LDFLAGS` not `LIBS`. Either works, but `LDFLAGS` is more correct. We should also include `CPPFLAGS` just in case the header is important to the check. Signed-off-by: Joshua Hursey <jhursey@us.ibm.com>
Note: This is filed against v4.0.x first because the configury change spans ORTE and OMPI. We will be able to pick a part of this patch back to OMPI master, and the other part to PRRTE master (thus two commits). For the first round of review, it was easier to keep them together in a single commit. |
I'm keeping this as a draft for the moment. I'm looking at a libevent library linking advancement to tack onto this ticket. |
opal/mca/event/external/configure.m4
Outdated
AC_MSG_WARN([on the system, but the linker is picking up the wrong version.]) | ||
AC_MSG_WARN([]) | ||
AC_MSG_WARN([Configure will continue and attempt to use the 'internal' libevent]) | ||
AC_MSG_WARN([instead of the 'external' libevent.]) |
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.
This part of the message isn't true if the user specified --with-event=external
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.
Good point. I'll generalize the text. If they did specify --with-libevent=external
then this message will print, but it will error out at the bottom of the configure check.
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.
Pushed change. Take a look at the new wording.
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'll look at the new wording. You could also just selectively emit this paragraph.
d51a67c
to
88498c6
Compare
I just re-pushed with the changes that Jeff suggested. libevent vs libevent_coreI added 1 new commit that moves from using
I kept that particular change out as a separate commit to isolate it. We may need to change the internal component, but I wanted to hold off on that given the changes to libevent happening in @bwbarrett 's branch. But I'd like Brian to comment on the libevent_core part of this change before deciding if we should include it or not. We might decide not to do it for v4, but to move to it for v5. |
It'd be nice if the non-orte commits were cherry-picked from an equivalent master PR. |
88498c6
to
5f3d3f5
Compare
@gpaulsen I wanted to get eyes on it all together before breaking it apart between OMPI and PRRTE for Note that the last commit might be too much for v4 (changing from |
* LSF ships a `libevent.so` that is no related to the `libevent.so` shipped with Libevent. * Add some checks to the configure logic to detect scenarios where this conflict can be detected, and provide the user with a descriptive warning message. - When detected by `event/external` this is just a warning since the internal component may be able to be used instead. - This happens when the user supplies the LSF path via the `LDFLAGS` envar instead of via `--with-lsf-libdir`. - When detected by a LSF component and LSF was explicitly requested then this becomes an error. Otherwise it will just print the warning and that component will fail to build. Signed-off-by: Joshua Hursey <jhursey@us.ibm.com>
* `libevent_core.so` contains the core functionality that we depend upon - `libevent.so` library has been identified as the legacy target. - `libevent_core.so` exists as far back as Libevent 2.0.5 (oldest supported by OMPI) * `libevent_pthreads.so` can work with either `-levent` or `-levent_core` Signed-off-by: Joshua Hursey <jhursey@us.ibm.com>
5f3d3f5
to
886f41f
Compare
I'm not sure why the "Pull Request Build Checker" is stuck. It looks like the sub-jobs passed, but the main job status is still flashing. It's been stuck like that for |
We discussed on today's call, and we cam to consensus that this change WOULD be appropriate for a v4.0.x release (changing dependency from |
Note: |
Can one of the admins verify this patch? |
There is a problem with this patch - it causes spurious warnings to be emitted if there is a system-level libevent (a good one) and you point at a custom one. Please don't merge this until that gets fixed! |
The issue that @rhc54 mentioned is described here: openpmix/prrte#560 |
Signed-off-by: Joshua Hursey <jhursey@us.ibm.com> (cherry picked from commit 05e095a)
* Want to make sure that the result from `wc` is trimmed of spaces, so the `0` check returns properly * Add a few more comments, and fix wording in the warning message. Signed-off-by: Joshua Hursey <jhursey@us.ibm.com>
I just pushed to commits that should address Ralph's concerns. Related PRs:
|
@bwbarrett This looks like the (transient?) gcc6 issue: https://jenkins.open-mpi.org/jenkins/job/open-mpi.build.compilers/4220/Compiler=gcc6/console |
bot:retest |
libevent.so
that is no related to thelibevent.so
shipped with Libevent.
conflict can be detected, and provide the user with a descriptive
warning message.
event/external
this is just a warning sincethe internal component may be able to be used instead.
LDFLAGS
envar instead of via--with-lsf-libdir
.then this becomes an error. Otherwise, it will just print the warning
and that component will fail to build.