aboutsummaryrefslogtreecommitdiff
path: root/Makefile.in
diff options
context:
space:
mode:
authorIain Sandoe <iain@sandoe.co.uk>2023-06-17 15:27:39 +0100
committerIain Sandoe <iain@sandoe.co.uk>2023-06-25 10:16:39 +0100
commitc1fecabe6597801856513aadc71a38e589697fbd (patch)
tree45bd911d556ba38eff0ff39ff1d3ad69266e6ff9 /Makefile.in
parent319e6fe96027f53719fd07b5ed057100b19ac802 (diff)
configure, Darwin: Ensure overrides to host-pie are passed to gcc configure.
The latest versions of Darwin on the Aarch64 platform mandate PIE executables. On x86_64 it remains optional, but produces tool warnings after Darwin20, so we default to PIE executables there too. All (non-PowerPC) 64b Darwin platforms mandate PIC code and therefore force host_shared on (we issue a diagnostic if the user tries to configure them non-shared). However, this also means we cannot test the host_shared setting independently of the host_pie setting so that the logic for setting PICFLAG must be amended for Darwin. For Darwin versions required to have PIE executables, in the event that the user tries to configure these as --disable-host-pie, we issue a warning and override the setting. These versions must also switch host_pie on even if it is not given in the configure line. To cater for this we pass the current value of host_pie, as determined by top-level configure, to the GCC configure. Signed-off-by: Iain Sandoe <iain@sandoe.co.uk> ChangeLog: * Makefile.def: Pass the enable-host-pie value to GCC configure. * Makefile.in: Regenerate. * configure: Regenerate. * configure.ac: Adjust the logic for shared and PIE host flags to ensure that PIE is passed for hosts that require it.
Diffstat (limited to 'Makefile.in')
-rw-r--r--Makefile.in29
1 files changed, 19 insertions, 10 deletions
diff --git a/Makefile.in b/Makefile.in
index b559454cc90..45f09f9308f 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -12021,7 +12021,7 @@ configure-gcc:
$$s/$$module_srcdir/configure \
--srcdir=$${topdir}/$$module_srcdir \
$(HOST_CONFIGARGS) --build=${build_alias} --host=${host_alias} \
- --target=${target_alias} \
+ --target=${target_alias} @gcc_host_pie@ \
|| exit 1
@endif gcc
@@ -12056,7 +12056,8 @@ configure-stage1-gcc:
$(HOST_CONFIGARGS) --build=${build_alias} --host=${host_alias} \
--target=${target_alias} \
\
- $(STAGE1_CONFIGURE_FLAGS)
+ $(STAGE1_CONFIGURE_FLAGS) \
+ @gcc_host_pie@
@endif gcc-bootstrap
.PHONY: configure-stage2-gcc maybe-configure-stage2-gcc
@@ -12089,7 +12090,8 @@ configure-stage2-gcc:
$(HOST_CONFIGARGS) --build=${build_alias} --host=${host_alias} \
--target=${target_alias} \
--with-build-libsubdir=$(HOST_SUBDIR) \
- $(STAGE2_CONFIGURE_FLAGS)
+ $(STAGE2_CONFIGURE_FLAGS) \
+ @gcc_host_pie@
@endif gcc-bootstrap
.PHONY: configure-stage3-gcc maybe-configure-stage3-gcc
@@ -12122,7 +12124,8 @@ configure-stage3-gcc:
$(HOST_CONFIGARGS) --build=${build_alias} --host=${host_alias} \
--target=${target_alias} \
--with-build-libsubdir=$(HOST_SUBDIR) \
- $(STAGE3_CONFIGURE_FLAGS)
+ $(STAGE3_CONFIGURE_FLAGS) \
+ @gcc_host_pie@
@endif gcc-bootstrap
.PHONY: configure-stage4-gcc maybe-configure-stage4-gcc
@@ -12155,7 +12158,8 @@ configure-stage4-gcc:
$(HOST_CONFIGARGS) --build=${build_alias} --host=${host_alias} \
--target=${target_alias} \
--with-build-libsubdir=$(HOST_SUBDIR) \
- $(STAGE4_CONFIGURE_FLAGS)
+ $(STAGE4_CONFIGURE_FLAGS) \
+ @gcc_host_pie@
@endif gcc-bootstrap
.PHONY: configure-stageprofile-gcc maybe-configure-stageprofile-gcc
@@ -12188,7 +12192,8 @@ configure-stageprofile-gcc:
$(HOST_CONFIGARGS) --build=${build_alias} --host=${host_alias} \
--target=${target_alias} \
--with-build-libsubdir=$(HOST_SUBDIR) \
- $(STAGEprofile_CONFIGURE_FLAGS)
+ $(STAGEprofile_CONFIGURE_FLAGS) \
+ @gcc_host_pie@
@endif gcc-bootstrap
.PHONY: configure-stagetrain-gcc maybe-configure-stagetrain-gcc
@@ -12221,7 +12226,8 @@ configure-stagetrain-gcc:
$(HOST_CONFIGARGS) --build=${build_alias} --host=${host_alias} \
--target=${target_alias} \
--with-build-libsubdir=$(HOST_SUBDIR) \
- $(STAGEtrain_CONFIGURE_FLAGS)
+ $(STAGEtrain_CONFIGURE_FLAGS) \
+ @gcc_host_pie@
@endif gcc-bootstrap
.PHONY: configure-stagefeedback-gcc maybe-configure-stagefeedback-gcc
@@ -12254,7 +12260,8 @@ configure-stagefeedback-gcc:
$(HOST_CONFIGARGS) --build=${build_alias} --host=${host_alias} \
--target=${target_alias} \
--with-build-libsubdir=$(HOST_SUBDIR) \
- $(STAGEfeedback_CONFIGURE_FLAGS)
+ $(STAGEfeedback_CONFIGURE_FLAGS) \
+ @gcc_host_pie@
@endif gcc-bootstrap
.PHONY: configure-stageautoprofile-gcc maybe-configure-stageautoprofile-gcc
@@ -12287,7 +12294,8 @@ configure-stageautoprofile-gcc:
$(HOST_CONFIGARGS) --build=${build_alias} --host=${host_alias} \
--target=${target_alias} \
--with-build-libsubdir=$(HOST_SUBDIR) \
- $(STAGEautoprofile_CONFIGURE_FLAGS)
+ $(STAGEautoprofile_CONFIGURE_FLAGS) \
+ @gcc_host_pie@
@endif gcc-bootstrap
.PHONY: configure-stageautofeedback-gcc maybe-configure-stageautofeedback-gcc
@@ -12320,7 +12328,8 @@ configure-stageautofeedback-gcc:
$(HOST_CONFIGARGS) --build=${build_alias} --host=${host_alias} \
--target=${target_alias} \
--with-build-libsubdir=$(HOST_SUBDIR) \
- $(STAGEautofeedback_CONFIGURE_FLAGS)
+ $(STAGEautofeedback_CONFIGURE_FLAGS) \
+ @gcc_host_pie@
@endif gcc-bootstrap