mirror of
git://sourceware.org/git/glibc.git
synced 2025-03-06 20:58:33 +01:00
stdio-common: Use clang with bugfix for bug28
The issue that was the cause of hang was fixed in upstream. Reviewed-by: H.J. Lu <hjl.tools@gmail.com>
This commit is contained in:
parent
0c36c983ec
commit
5a96da210c
3 changed files with 61 additions and 4 deletions
42
configure
vendored
42
configure
vendored
|
@ -6069,6 +6069,48 @@ rm -f conftest*
|
||||||
config_vars="$config_vars
|
config_vars="$config_vars
|
||||||
have-test-clangxx = $libc_cv_test_clangxx"
|
have-test-clangxx = $libc_cv_test_clangxx"
|
||||||
|
|
||||||
|
if test "$libc_cv_test_clang" = "yes"; then
|
||||||
|
conftest_code="
|
||||||
|
#if __clang_major__ > 19
|
||||||
|
#error clang version > 19
|
||||||
|
#endif
|
||||||
|
"
|
||||||
|
|
||||||
|
cat > conftest.c <<EOF
|
||||||
|
$conftest_code
|
||||||
|
EOF
|
||||||
|
|
||||||
|
saved_CC="$CC"
|
||||||
|
CC="$TEST_CC"
|
||||||
|
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for clang in testing" >&5
|
||||||
|
printf %s "checking for clang in testing... " >&6; }
|
||||||
|
if test ${libc_cv_test_clang_19_or_less+y}
|
||||||
|
then :
|
||||||
|
printf %s "(cached) " >&6
|
||||||
|
else case e in #(
|
||||||
|
e) if { ac_try='${CC-cc} $CFLAGS $CPPFLAGS -c conftest.c -o conftest 1>&5'
|
||||||
|
{ { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
|
||||||
|
(eval $ac_try) 2>&5
|
||||||
|
ac_status=$?
|
||||||
|
printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
|
||||||
|
test $ac_status = 0; }; }
|
||||||
|
then
|
||||||
|
libc_cv_test_clang_19_or_less=yes
|
||||||
|
else
|
||||||
|
libc_cv_test_clang_19_or_less=no
|
||||||
|
fi ;;
|
||||||
|
esac
|
||||||
|
fi
|
||||||
|
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $libc_cv_test_clang_19_or_less" >&5
|
||||||
|
printf "%s\n" "$libc_cv_test_clang_19_or_less" >&6; }
|
||||||
|
|
||||||
|
CC="$saved_CC"
|
||||||
|
|
||||||
|
rm -f conftest*
|
||||||
|
fi
|
||||||
|
config_vars="$config_vars
|
||||||
|
have-test-clang-19-or-less = $libc_cv_test_clang_19_or_less"
|
||||||
|
|
||||||
|
|
||||||
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for -fstack-protector" >&5
|
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for -fstack-protector" >&5
|
||||||
printf %s "checking for -fstack-protector... " >&6; }
|
printf %s "checking for -fstack-protector... " >&6; }
|
||||||
|
|
15
configure.ac
15
configure.ac
|
@ -665,6 +665,21 @@ LIBC_TRY_TEST_CXX_COMMAND([for clang++],
|
||||||
)
|
)
|
||||||
LIBC_CONFIG_VAR([have-test-clangxx], [$libc_cv_test_clangxx])
|
LIBC_CONFIG_VAR([have-test-clangxx], [$libc_cv_test_clangxx])
|
||||||
|
|
||||||
|
if test "$libc_cv_test_clang" = "yes"; then
|
||||||
|
conftest_code="
|
||||||
|
#if __clang_major__ > 19
|
||||||
|
#error clang version > 19
|
||||||
|
#endif
|
||||||
|
"
|
||||||
|
LIBC_TRY_TEST_CC_COMMAND([for clang],
|
||||||
|
[$conftest_code],
|
||||||
|
[-c],
|
||||||
|
libc_cv_test_clang_19_or_less,
|
||||||
|
[libc_cv_test_clang_19_or_less=yes], [libc_cv_test_clang_19_or_less=no],
|
||||||
|
)
|
||||||
|
fi
|
||||||
|
LIBC_CONFIG_VAR([have-test-clang-19-or-less], [$libc_cv_test_clang_19_or_less])
|
||||||
|
|
||||||
LIBC_TRY_CC_AND_TEST_CC_OPTION([for -fstack-protector],
|
LIBC_TRY_CC_AND_TEST_CC_OPTION([for -fstack-protector],
|
||||||
[-Werror -fstack-protector],
|
[-Werror -fstack-protector],
|
||||||
libc_cv_ssp,
|
libc_cv_ssp,
|
||||||
|
|
|
@ -317,10 +317,10 @@ tests := \
|
||||||
# tests
|
# tests
|
||||||
|
|
||||||
# Clang 19 takes a very long time, it ran more than 27 minutes on Intel
|
# Clang 19 takes a very long time, it ran more than 27 minutes on Intel
|
||||||
# Core i7-1195G7 before the process was killed, to compile bug28.c:
|
# Core i7-1195G7 before the process was killed, to compile bug28.c
|
||||||
# https://github.com/llvm/llvm-project/issues/120462
|
# The issue was fixed in upstream but check if clang has the version that has the fix
|
||||||
# Exclude it when Clang is used for testing.
|
# https://github.com/llvm/llvm-project/commit/99dddef340e566e9d303010f1219f7d7d6d37a11 .
|
||||||
ifneq ($(have-test-clang),yes)
|
ifneq ($(have-test-clang-19-or-less),yes)
|
||||||
tests += \
|
tests += \
|
||||||
bug28 \
|
bug28 \
|
||||||
# tests
|
# tests
|
||||||
|
|
Loading…
Add table
Reference in a new issue