From 498a100d05666024fd0d409a27709a03e7e58dd3 Mon Sep 17 00:00:00 2001 From: Rich Felker Date: Thu, 7 Jun 2012 00:32:22 -0400 Subject: [PATCH] check for ld support of -Bsymbolic-functions; disable shared if not avail this issue affects the last gpl2 version of binutils, which some people are still using out of aversion to gpl3. musl requires -Bsymbolic-functions because it's the only way to make a libc.so that's able to operate prior to dynamic linking but that still behaves correctly with respect to global vars that may be moved to the main program via copy relocations. --- configure | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/configure b/configure index f765ca72..7e5a8dfb 100755 --- a/configure +++ b/configure @@ -267,6 +267,13 @@ fi tryflag CFLAGS_AUTO -fno-stack-protector tryldflag LDFLAGS_AUTO -Wl,--hash-style=sysv +# Disable dynamic linking if ld is broken and can't do -Bsymbolic-functions +LDFLAGS_DUMMY= +tryldflag LDFLAGS_DUMMY -Wl,-Bsymbolic-functions || { +printf "warning: disabling dynamic linking support\n" +shared=no +} + printf "creating config.mak... "