-
Notifications
You must be signed in to change notification settings - Fork 929
configury: add option to disable enable-new-dtags #6532
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
configury: add option to disable enable-new-dtags #6532
Conversation
The --enable-new-dtags option for the compiler wrappers is often great, but for some particular install/usage scenarios causes issues. This commit provides a new configury option to use of rpath in the compiler wrappers, but disables the use of --enable-new-dtags in the link line. The new configury option is --enable-wrappers-runpath To disable use of --enable-new-dtags in the wrappers, add --disable-wrappers-runpath to the Open MPI configury line. Fixes open-mpi#1089 Signed-off-by: Howard Pritchard <[email protected]> (cherry picked from commit ebb30c1)
| AC_MSG_CHECKING([if linker supports RUNPATH]) | ||
| AC_LINK_IFELSE([AC_LANG_PROGRAM([], [return 7;])], | ||
| [WRAPPER_RPATH_SUPPORT=runpath | ||
| runpath_args="-Wl,--enable-new-dtags" |
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 doesn't seem right. Can you please double check this in the context of the rest of the configure script?
Specifically: $runpath_args is used later down in the code, but you've now only assigned it if --disable-wrapper-runpath was not specified.
Are the wrappers the only place that runpath is used?
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.
hmmm looks like we may need some other commits from master, I'm surprised the cherry-pick worked without a problem.
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.
actually runpath_args is initialized empty at line 234. the variable is used at line 315. The admin wanting the patch on 3.0.x noticed an issue with the fortran wrappers not obeying the --enable/disable-runpath, but I'll fix that in a separate PR.
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 was wrong. the patch looks correct. see comments on the file.
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.
Right, I see it's initialized in 234. But it's used down below. My question is: are there any other places we use runpath besides the wrappers? Because if so, this patch is disabling runpath everywhere, not just for the wrappers.
If we're only using runpath for the wrappers, then this patch is likely fine.
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.
It doesn't look like it. buildrpm.sh does add --enable-new-dtags to LDFLAGS passed into configure for the spec file. Looks like this change has been in master for almost 2 years now.
|
looks like mellanox is having internet problems. |
|
@hppritcha Should this be a PR for master, and then cherry-picked over to the relevant release branches? |
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 missed that this is a cherry pick; sorry.
|
@hppritcha Please also PR this to v3.1.x. |
|
its already in v3.1.x it got in before v3.1.x was branched from master |
|
@hppritcha Ah, perfect! |
The --enable-new-dtags option for the compiler wrappers is
often great, but for some particular install/usage scenarios
causes issues.
This commit provides a new configury option to use of rpath
in the compiler wrappers, but disables the
use of --enable-new-dtags in the link line.
The new configury option is
--enable-wrappers-runpath
To disable use of --enable-new-dtags in the wrappers, add
--disable-wrappers-runpath
to the Open MPI configury line.
Fixes #1089
Signed-off-by: Howard Pritchard [email protected]
(cherry picked from commit ebb30c1)