-
-
Notifications
You must be signed in to change notification settings - Fork 310
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
The gnulink tool probably should not set -Bsymbolic #3248
Comments
Some additional background on this: https://software.intel.com/en-us/articles/performance-tools-for-software-developers-bsymbolic-can-cause-dangerous-side-effects |
I would tend to agree. |
Yes, I agree too. Not appropriate for default setting. It will be a breaking change, however. |
@garyo - Agree it is a breaking change, but probably one for the better. Those who wanted |
We probably need to figure out how the SCons Deprecation cycle applies to such a change. |
Yes, that's the proper SCons process for making a breaking change. In this case the change is pretty minor, and makes sense, but it still would (in some edge cases, which we can discuss the importance of) violate the principle of not breaking builds in a minor release. The workaround in either direction is pretty simple: users can reset We'd certainly need to announce that it's coming before we do it, and follow the parts of the deprecation cycle that make sense (not all of that applies in this case). |
Pass 1: test case showing the failure. This is WIP - need to add the fix, but want a CI build to show the fail. Closes issues SCons#3248 Signed-off-by: Mats Wichmann <mats@linux.com>
Pass 1: test case showing the failure. This is WIP - need to add the fix, but want a CI build to show the fail. Closes issues SCons#3248 Signed-off-by: Mats Wichmann <mats@linux.com>
Pass 1: test case showing the failure. This is WIP - need to add the fix, but want a CI build to show the fail. Closes issues SCons#3248 Signed-off-by: Mats Wichmann <mats@linux.com>
Just to add my thoughts. I consider this a bug, not a user breaking change. I don't think a deprecation cycle is necessary. That flag has dangerous side effects and SCons shouldn't be setting link policy like that. |
My thought is that we should, as noted above, immediately remove -Bsymbolic without a deprecation cycle. We can include the following language or something similar in the changelog or release notes:
|
I agree it's dangerous and should be removed (I was using it years ago but we stopped once better alternatives became available). People are probably using SCons without noticing that it adds that. But we can't just spring it on people in a minor release without warning. Maybe it would be enough to do the following: 1. announce on users/devs lists, 2. announce on discord, 3. highlight it in release notes (and why it's not following the usual depr cycle) per @acmorrow's note above. That's my opinion anyway... |
@garyo - sounds reasonable. Done. |
This isn't even a new issue... https://pairlist4.pair.net/pipermail/scons-users/2016-May/004893.html. Looks like some effort was made to mitigate this already in 3.0.0 (see CHANGES.txt). |
Resolve issue #3248 - removed '-Wl,-Bsymbolic' from SHLIBVERSIONFLAGS for gnulink
Fixed in #3621 |
3.x, not sure how much older.
Right now the 'gnulink' tool unconditionally adds
-Bsymbolic
to theSHLIBVERSIONFLAGS
variable. That probably isn't a good idea: the choice of whether to build a dynamic library with internal references as symbolic should probably be left to the developer.The text was updated successfully, but these errors were encountered: