path: root/configure
diff options
authorRich Felker <>2016-01-31 00:40:33 -0500
committerRich Felker <>2016-01-31 00:40:33 -0500
commit65498f289bded83afb809b24d850647e7c91cd58 (patch)
tree7f7ed77e26f238f71e0c449e6073f2d8789c5167 /configure
parentc18d05f0e8909ec54252b251c441b5dd903268f8 (diff)
don't suppress shared libc when linker lacks -Bsymbolic-functions
previous work overhauling the dynamic linker made it so that linking libc with -Bsymbolic-functions was no longer mandatory, but the configure logic that forced --disable-shared when ld failed to accept the option was left in place. this commit removes the hard-coded -Bsymbolic-functions from the Makefile and changes the configure test to one that simply adds it to the auto-detected LDFLAGS on success.
Diffstat (limited to 'configure')
1 files changed, 4 insertions, 9 deletions
diff --git a/configure b/configure
index a296f8ab..58f496e0 100755
--- a/configure
+++ b/configure
@@ -565,15 +565,10 @@ tryldflag LDFLAGS_AUTO -Wl,--no-undefined
# versions built without shared library support and pcc are broken.
tryldflag LDFLAGS_AUTO -Wl,--exclude-libs=ALL
-test "$shared" = "no" || {
-# Disable dynamic linking if ld is broken and can't do -Bsymbolic-functions
-tryldflag LDFLAGS_DUMMY -Wl,-Bsymbolic-functions || {
-test "$shared" = "yes" && fail "$0: error: linker cannot build shared library"
-printf "warning: disabling dynamic linking support\n"
+# Linking with -Bsymbolic-functions is no longer mandatory for
+# the dynamic linker to work, but enable it if it works as
+# a linking optimization.
+tryldflag LDFLAGS_AUTO -Wl,-Bsymbolic-functions
# Find compiler runtime library
test -z "$LIBCC" && tryldflag LIBCC -lgcc && tryldflag LIBCC -lgcc_eh