aboutsummaryrefslogtreecommitdiff
path: root/config
diff options
context:
space:
mode:
authorIain Sandoe <iain@sandoe.co.uk>2023-08-07 13:07:24 +0200
committerAlan Modra <amodra@gmail.com>2023-08-12 10:24:26 +0930
commitc841db953822200b5f9babeb7ddeaefe0bb377df (patch)
treec20c13d49fea2f4683d95f0abd0deceaac0c26ff /config
parent3c4e12ba885df77650038870684396945eae867f (diff)
downloadbinutils-c841db953822200b5f9babeb7ddeaefe0bb377df.zip
binutils-c841db953822200b5f9babeb7ddeaefe0bb377df.tar.gz
binutils-c841db953822200b5f9babeb7ddeaefe0bb377df.tar.bz2
configure: Allow host fragments to react to --enable-host-shared.
This makes the host_shared value available to host makefile fragments. It uses this to adjust Darwin's mdynamic-no-pic in the case that shared host resources are required. Signed-off-by: Iain Sandoe <iain@sandoe.co.uk> config/ * mh-darwin: Require a non-shared host configuration to enable mdynamic-no-pic where that is supported.
Diffstat (limited to 'config')
-rw-r--r--config/mh-darwin8
1 files changed, 8 insertions, 0 deletions
diff --git a/config/mh-darwin b/config/mh-darwin
index fb2bb5a..b72835a 100644
--- a/config/mh-darwin
+++ b/config/mh-darwin
@@ -11,9 +11,15 @@
# non-bootstrapped compiler), later stages will be built by GCC which supports
# the required flags.
+# We cannot use mdynamic-no-pic when building shared host resources.
+
+ifeq (${host_shared},no)
BOOTSTRAP_TOOL_CAN_USE_MDYNAMIC_NO_PIC := $(shell \
$(CC) -S -xc /dev/null -o /dev/null -Werror -mno-dynamic-no-pic 2>/dev/null \
&& echo true)
+else
+BOOTSTRAP_TOOL_CAN_USE_MDYNAMIC_NO_PIC := false
+endif
@if gcc-bootstrap
ifeq (${BOOTSTRAP_TOOL_CAN_USE_MDYNAMIC_NO_PIC},true)
@@ -21,8 +27,10 @@ STAGE1_CFLAGS += -mdynamic-no-pic
else
STAGE1_CFLAGS += -fPIC
endif
+ifeq (${host_shared},no)
# Add -mdynamic-no-pic to later stages when we know it is built with GCC.
BOOT_CFLAGS += -mdynamic-no-pic
+endif
@endif gcc-bootstrap
@unless gcc-bootstrap