mirror of
https://sourceware.org/git/glibc.git
synced 2024-11-22 21:10:07 +00:00
c6cb8783b5
Bump autoconf requirement to 2.71 to allow regenerating configure on more recent distributions. autoconf 2.71 has been in Fedora since F36 and is the current version in Debian stable (bookworm). It appears to be current in Gentoo as well. All sysdeps configure and preconfigure scripts have also been regenerated; all changes are trivial transformations that do not affect functionality. Signed-off-by: Siddhesh Poyarekar <siddhesh@sourceware.org> Reviewed-by: Carlos O'Donell <carlos@redhat.com>
294 lines
8.4 KiB
Plaintext
294 lines
8.4 KiB
Plaintext
# This file is generated from configure.ac by Autoconf. DO NOT EDIT!
|
|
# Local configure fragment for sysdeps/arm.
|
|
|
|
# We check to see if the compiler and flags are
|
|
# selecting the hard-float ABI and if they are then
|
|
# we set libc_cv_arm_pcs_vfp to yes which causes
|
|
# HAVE_ARM_PCS_VFP to be defined in config.h and
|
|
# in include/libc-symbols.h and thus available to
|
|
# shlib-versions to select the appropriate name for
|
|
# the dynamic linker via %ifdef.
|
|
|
|
|
|
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for grep that handles long lines and -e" >&5
|
|
printf %s "checking for grep that handles long lines and -e... " >&6; }
|
|
if test ${ac_cv_path_GREP+y}
|
|
then :
|
|
printf %s "(cached) " >&6
|
|
else $as_nop
|
|
if test -z "$GREP"; then
|
|
ac_path_GREP_found=false
|
|
# Loop through the user's path and test for each of PROGNAME-LIST
|
|
as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
|
|
for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
|
|
do
|
|
IFS=$as_save_IFS
|
|
case $as_dir in #(((
|
|
'') as_dir=./ ;;
|
|
*/) ;;
|
|
*) as_dir=$as_dir/ ;;
|
|
esac
|
|
for ac_prog in grep ggrep
|
|
do
|
|
for ac_exec_ext in '' $ac_executable_extensions; do
|
|
ac_path_GREP="$as_dir$ac_prog$ac_exec_ext"
|
|
as_fn_executable_p "$ac_path_GREP" || continue
|
|
# Check for GNU ac_path_GREP and select it if it is found.
|
|
# Check for GNU $ac_path_GREP
|
|
case `"$ac_path_GREP" --version 2>&1` in
|
|
*GNU*)
|
|
ac_cv_path_GREP="$ac_path_GREP" ac_path_GREP_found=:;;
|
|
*)
|
|
ac_count=0
|
|
printf %s 0123456789 >"conftest.in"
|
|
while :
|
|
do
|
|
cat "conftest.in" "conftest.in" >"conftest.tmp"
|
|
mv "conftest.tmp" "conftest.in"
|
|
cp "conftest.in" "conftest.nl"
|
|
printf "%s\n" 'GREP' >> "conftest.nl"
|
|
"$ac_path_GREP" -e 'GREP$' -e '-(cannot match)-' < "conftest.nl" >"conftest.out" 2>/dev/null || break
|
|
diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
|
|
as_fn_arith $ac_count + 1 && ac_count=$as_val
|
|
if test $ac_count -gt ${ac_path_GREP_max-0}; then
|
|
# Best one so far, save it but keep looking for a better one
|
|
ac_cv_path_GREP="$ac_path_GREP"
|
|
ac_path_GREP_max=$ac_count
|
|
fi
|
|
# 10*(2^10) chars as input seems more than enough
|
|
test $ac_count -gt 10 && break
|
|
done
|
|
rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
|
|
esac
|
|
|
|
$ac_path_GREP_found && break 3
|
|
done
|
|
done
|
|
done
|
|
IFS=$as_save_IFS
|
|
if test -z "$ac_cv_path_GREP"; then
|
|
as_fn_error $? "no acceptable grep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5
|
|
fi
|
|
else
|
|
ac_cv_path_GREP=$GREP
|
|
fi
|
|
|
|
fi
|
|
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_GREP" >&5
|
|
printf "%s\n" "$ac_cv_path_GREP" >&6; }
|
|
GREP="$ac_cv_path_GREP"
|
|
|
|
|
|
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for egrep" >&5
|
|
printf %s "checking for egrep... " >&6; }
|
|
if test ${ac_cv_path_EGREP+y}
|
|
then :
|
|
printf %s "(cached) " >&6
|
|
else $as_nop
|
|
if echo a | $GREP -E '(a|b)' >/dev/null 2>&1
|
|
then ac_cv_path_EGREP="$GREP -E"
|
|
else
|
|
if test -z "$EGREP"; then
|
|
ac_path_EGREP_found=false
|
|
# Loop through the user's path and test for each of PROGNAME-LIST
|
|
as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
|
|
for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
|
|
do
|
|
IFS=$as_save_IFS
|
|
case $as_dir in #(((
|
|
'') as_dir=./ ;;
|
|
*/) ;;
|
|
*) as_dir=$as_dir/ ;;
|
|
esac
|
|
for ac_prog in egrep
|
|
do
|
|
for ac_exec_ext in '' $ac_executable_extensions; do
|
|
ac_path_EGREP="$as_dir$ac_prog$ac_exec_ext"
|
|
as_fn_executable_p "$ac_path_EGREP" || continue
|
|
# Check for GNU ac_path_EGREP and select it if it is found.
|
|
# Check for GNU $ac_path_EGREP
|
|
case `"$ac_path_EGREP" --version 2>&1` in
|
|
*GNU*)
|
|
ac_cv_path_EGREP="$ac_path_EGREP" ac_path_EGREP_found=:;;
|
|
*)
|
|
ac_count=0
|
|
printf %s 0123456789 >"conftest.in"
|
|
while :
|
|
do
|
|
cat "conftest.in" "conftest.in" >"conftest.tmp"
|
|
mv "conftest.tmp" "conftest.in"
|
|
cp "conftest.in" "conftest.nl"
|
|
printf "%s\n" 'EGREP' >> "conftest.nl"
|
|
"$ac_path_EGREP" 'EGREP$' < "conftest.nl" >"conftest.out" 2>/dev/null || break
|
|
diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
|
|
as_fn_arith $ac_count + 1 && ac_count=$as_val
|
|
if test $ac_count -gt ${ac_path_EGREP_max-0}; then
|
|
# Best one so far, save it but keep looking for a better one
|
|
ac_cv_path_EGREP="$ac_path_EGREP"
|
|
ac_path_EGREP_max=$ac_count
|
|
fi
|
|
# 10*(2^10) chars as input seems more than enough
|
|
test $ac_count -gt 10 && break
|
|
done
|
|
rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
|
|
esac
|
|
|
|
$ac_path_EGREP_found && break 3
|
|
done
|
|
done
|
|
done
|
|
IFS=$as_save_IFS
|
|
if test -z "$ac_cv_path_EGREP"; then
|
|
as_fn_error $? "no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5
|
|
fi
|
|
else
|
|
ac_cv_path_EGREP=$EGREP
|
|
fi
|
|
|
|
fi
|
|
fi
|
|
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_EGREP" >&5
|
|
printf "%s\n" "$ac_cv_path_EGREP" >&6; }
|
|
EGREP="$ac_cv_path_EGREP"
|
|
|
|
|
|
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the compiler is using the ARM hard-float ABI" >&5
|
|
printf %s "checking whether the compiler is using the ARM hard-float ABI... " >&6; }
|
|
if test ${libc_cv_arm_pcs_vfp+y}
|
|
then :
|
|
printf %s "(cached) " >&6
|
|
else $as_nop
|
|
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
|
|
/* end confdefs.h. */
|
|
#ifdef __ARM_PCS_VFP
|
|
yes
|
|
#endif
|
|
|
|
_ACEOF
|
|
if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
|
|
$EGREP "yes" >/dev/null 2>&1
|
|
then :
|
|
libc_cv_arm_pcs_vfp=yes
|
|
else $as_nop
|
|
libc_cv_arm_pcs_vfp=no
|
|
fi
|
|
rm -rf conftest*
|
|
|
|
fi
|
|
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $libc_cv_arm_pcs_vfp" >&5
|
|
printf "%s\n" "$libc_cv_arm_pcs_vfp" >&6; }
|
|
if test $libc_cv_arm_pcs_vfp = yes; then
|
|
printf "%s\n" "#define HAVE_ARM_PCS_VFP 1" >>confdefs.h
|
|
|
|
config_vars="$config_vars
|
|
default-abi = hard"
|
|
else
|
|
config_vars="$config_vars
|
|
default-abi = soft"
|
|
fi
|
|
|
|
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether PC-relative relocs in movw/movt work properly" >&5
|
|
printf %s "checking whether PC-relative relocs in movw/movt work properly... " >&6; }
|
|
if test ${libc_cv_arm_pcrel_movw+y}
|
|
then :
|
|
printf %s "(cached) " >&6
|
|
else $as_nop
|
|
|
|
cat > conftest.s <<\EOF
|
|
.syntax unified
|
|
.arm
|
|
.arch armv7-a
|
|
|
|
.text
|
|
.globl foo
|
|
.type foo,%function
|
|
foo: movw r0, #:lower16:symbol - 1f - 8
|
|
movt r0, #:upper16:symbol - 1f - 8
|
|
1: add r0, pc
|
|
@ And now a case with a local symbol.
|
|
movw r0, #:lower16:3f - 2f - 8
|
|
movt r0, #:upper16:3f - 2f - 8
|
|
2: add r0, pc
|
|
bx lr
|
|
|
|
.data
|
|
.globl symbol
|
|
.hidden symbol
|
|
symbol: .long 23
|
|
3: .long 17
|
|
EOF
|
|
libc_cv_arm_pcrel_movw=no
|
|
${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS \
|
|
-nostartfiles -nostdlib -shared \
|
|
-o conftest.so conftest.s 1>&5 2>&5 &&
|
|
LC_ALL=C $READELF -dr conftest.so > conftest.dr 2>&5 &&
|
|
{
|
|
cat conftest.dr 1>&5
|
|
grep -F 'TEXTREL
|
|
R_ARM_NONE' conftest.dr > /dev/null || libc_cv_arm_pcrel_movw=yes
|
|
}
|
|
rm -f conftest*
|
|
fi
|
|
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $libc_cv_arm_pcrel_movw" >&5
|
|
printf "%s\n" "$libc_cv_arm_pcrel_movw" >&6; }
|
|
if test $libc_cv_arm_pcrel_movw = yes; then
|
|
printf "%s\n" "#define ARM_PCREL_MOVW_OK 1" >>confdefs.h
|
|
|
|
fi
|
|
|
|
# This was buggy in assemblers from GNU binutils versions before 2.25.1
|
|
# (it's known to be broken in 2.24 and 2.25; see
|
|
# https://sourceware.org/bugzilla/show_bug.cgi?id=18383).
|
|
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether TPOFF relocs with addends are assembled correctly" >&5
|
|
printf %s "checking whether TPOFF relocs with addends are assembled correctly... " >&6; }
|
|
if test ${libc_cv_arm_tpoff_addend+y}
|
|
then :
|
|
printf %s "(cached) " >&6
|
|
else $as_nop
|
|
|
|
cat > conftest.s <<\EOF
|
|
.syntax unified
|
|
.arm
|
|
.arch armv7-a
|
|
|
|
.text
|
|
foo:
|
|
.word tbase(tpoff)+4
|
|
|
|
.section .tdata,"awT",%progbits
|
|
.word -4
|
|
tbase: .word 0
|
|
.word 4
|
|
EOF
|
|
libc_cv_arm_tpoff_addend=no
|
|
${CC-cc} -c $CFLAGS $CPPFLAGS \
|
|
-o conftest.o conftest.s 1>&5 2>&5 &&
|
|
LC_ALL=C $READELF -x.text conftest.o > conftest.x 2>&5 &&
|
|
{
|
|
cat conftest.x 1>&5
|
|
$AWK 'BEGIN { result = 2 }
|
|
$1 ~ /0x0+/ && $2 ~ /[0-9a-f]+/ {
|
|
# Check for little-endian or big-endian encoding of 4 in the in-place addend.
|
|
result = ($2 == "04000000" || $2 == "00000004") ? 0 : 1
|
|
}
|
|
END { exit(result) }
|
|
' conftest.x 2>&5 && libc_cv_arm_tpoff_addend=yes
|
|
}
|
|
rm -f conftest*
|
|
fi
|
|
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $libc_cv_arm_tpoff_addend" >&5
|
|
printf "%s\n" "$libc_cv_arm_tpoff_addend" >&6; }
|
|
if test $libc_cv_arm_tpoff_addend = no; then
|
|
config_vars="$config_vars
|
|
test-xfail-tst-tlsalign = yes"
|
|
config_vars="$config_vars
|
|
test-xfail-tst-tlsalign-static = yes"
|
|
fi
|
|
|
|
|
|
libc_cv_gcc_unwind_find_fde=no
|
|
|
|
# Remove -fno-unwind-tables that was added in sysdeps/arm/preconfigure.ac.
|
|
CFLAGS=${CFLAGS% -fno-unwind-tables}
|
|
|