summaryrefslogtreecommitdiff
path: root/gold
diff options
context:
space:
mode:
authorTsukasa OI <research_trasio@irq.a4lg.com>2022-09-10 17:08:13 +0000
committerTsukasa OI <research_trasio@irq.a4lg.com>2022-09-14 05:42:17 +0000
commit491cf3178f718e48d71a54e50475e37dd831a51d (patch)
tree9329c5cbf3004f8c126c6a10e79c400a84e907fb /gold
parentfdbca3611592ecfe6c421923562ed307ef75c8e0 (diff)
downloadbinutils-gdb-491cf3178f718e48d71a54e50475e37dd831a51d.tar.gz
bfd: Stop using -Wstack-usage=262144 when built with Clang
Some components of GNU Binutils will pass "-Wstack-usage=262144" when "GCC >= 5.0" is detected. However, Clang does not support "-Wstack-usage", despite that related configuration part in bfd/warning.m4 handles the latest Clang (15.0.0 as of this writing) as "GCC >= 5.0". The option "-Wstack-usage" was ignored when the first version of Clang is released but even this "ignoring" behavior is removed before Clang 4.0.0. So, if we give Clang "-Wstack-usage=262144", it generates a warning, making the build failure. This commit checks "__clang__" macro to prevent adding the option if the compiler is identified as Clang. bfd/ChangeLog: * warning.m4: Stop appending "-Wstack-usage=262144" option when compiled with Clang. * configure: Regenerate. binutils/ChangeLog: * configure: Regenerate. gas/ChangeLog: * configure: Regenerate. gold/ChangeLog: * configure: Regenerate. gprof/ChangeLog: * configure: Regenerate. ld/ChangeLog: * configure: Regenerate. opcodes/ChangeLog: * configure: Regenerate.
Diffstat (limited to 'gold')
-rwxr-xr-xgold/configure18
1 files changed, 18 insertions, 0 deletions
diff --git a/gold/configure b/gold/configure
index 84c413fecd2..85f62a92fcd 100755
--- a/gold/configure
+++ b/gold/configure
@@ -7938,10 +7938,19 @@ if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
$EGREP "(^[0-4]$|^__GNUC__$)" >/dev/null 2>&1; then :
else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+__clang__
+_ACEOF
+if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+ $EGREP "^__clang__$" >/dev/null 2>&1; then :
GCC_WARN_CFLAGS="$GCC_WARN_CFLAGS -Wstack-usage=262144"
fi
rm -f conftest*
+fi
+rm -f conftest*
+
# Set WARN_WRITE_STRINGS if the compiler supports -Wwrite-strings.
WARN_WRITE_STRINGS=""
@@ -7983,10 +7992,19 @@ if (eval "$ac_cpp_for_build conftest.$ac_ext") 2>&5 |
$EGREP "(^[0-4]$|^__GNUC__$)" >/dev/null 2>&1; then :
else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+__clang__
+_ACEOF
+if (eval "$ac_cpp_for_build conftest.$ac_ext") 2>&5 |
+ $EGREP "^__clang__$" >/dev/null 2>&1; then :
GCC_WARN_CFLAGS_FOR_BUILD="$GCC_WARN_CFLAGS_FOR_BUILD -Wstack-usage=262144"
fi
rm -f conftest*
+fi
+rm -f conftest*
+
# Check whether --enable-werror was given.
if test "${enable_werror+set}" = set; then :