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
Remove automatic RPATH #1699
Remove automatic RPATH #1699
Conversation
Before OpenSSL 1.1.0, binaries were installed in a non-standard location by default, and runpath directories were therefore added in those binaries, to make sure the executables would be able to find the shared libraries they were linked with. With OpenSSL 1.1.0 and on, binaries are installed in standard directories by default, and the addition of runpath directories is therefore not needed any more.
Make Configure recognise -rpath and -R to support user added rpaths for OSF1 and Solaris. For convenience, add a variable LIBRPATH in the Unix Makefile, which the users can use as follows: ./config [options] -Wl,-rpath,\$(LIBRPATH)
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 think this needs a CHANGES/NEWS entry? I would be in favor of backport this as a bugfix, maybe discusson the team.
Looking for something starting with '-Wl,-rpath,' isn't good enough, as someone might give something like '-Wl,--enable-new-dtags,-rpath,/PATH'. Looking for ',-rpath,' should be safe enough. We could remove the preloading stuff entirely, but just in case the user has chosen to given RPATH setting arguments at configuration, we'd better make sure testing will still work. Fair warning, there are some configuration options that do not work with preloaded OpenSSL libraries, such as the sanity checking ones.
I did some final changes and added the change to |
Merged to both master and OpenSSL_1_1_0-stable |
Before OpenSSL 1.1.0, binaries were installed in a non-standard
location by default, and runpath directories were therefore added in
those binaries, to make sure the executables would be able to find the
shared libraries they were linked with.
With OpenSSL 1.1.0 and on, binaries are installed in standard
directories by default, and the addition of runpath directories is
therefore not needed any more.
Make Configure recognise -rpath and -R to support user added rpaths
for OSF1 and Solaris. For convenience, add a variable LIBRPATH in the
Unix Makefile, which the users can use as follows:
Fixes #1635 and is an alternative to #1688