diff options
Diffstat (limited to 'sysdeps/aarch64')
-rw-r--r-- | sysdeps/aarch64/configure | 202 |
1 files changed, 111 insertions, 91 deletions
diff --git a/sysdeps/aarch64/configure b/sysdeps/aarch64/configure index 5497dd397e..ca57edce47 100644 --- a/sysdeps/aarch64/configure +++ b/sysdeps/aarch64/configure @@ -2,7 +2,7 @@ # Local configure fragment for sysdeps/aarch64. # Static PIE is supported. -$as_echo "#define SUPPORT_STATIC_PIE 1" >>confdefs.h +printf "%s\n" "#define SUPPORT_STATIC_PIE 1" >>confdefs.h # We check to see if the compiler and flags are @@ -14,11 +14,12 @@ $as_echo "#define SUPPORT_STATIC_PIE 1" >>confdefs.h # the dynamic linker via %ifdef. -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for grep that handles long lines and -e" >&5 -$as_echo_n "checking for grep that handles long lines and -e... " >&6; } -if ${ac_cv_path_GREP+:} false; then : - $as_echo_n "(cached) " >&6 -else +{ 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 @@ -26,10 +27,15 @@ else for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin do IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_prog in grep ggrep; do + 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" + 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 @@ -38,13 +44,13 @@ case `"$ac_path_GREP" --version 2>&1` in ac_cv_path_GREP="$ac_path_GREP" ac_path_GREP_found=:;; *) ac_count=0 - $as_echo_n 0123456789 >"conftest.in" + printf %s 0123456789 >"conftest.in" while : do cat "conftest.in" "conftest.in" >"conftest.tmp" mv "conftest.tmp" "conftest.in" cp "conftest.in" "conftest.nl" - $as_echo 'GREP' >> "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 @@ -72,16 +78,17 @@ else fi fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_GREP" >&5 -$as_echo "$ac_cv_path_GREP" >&6; } +{ 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" -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for egrep" >&5 -$as_echo_n "checking for egrep... " >&6; } -if ${ac_cv_path_EGREP+:} false; then : - $as_echo_n "(cached) " >&6 -else +{ 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 @@ -92,10 +99,15 @@ else for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin do IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_prog in egrep; do + 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" + 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 @@ -104,13 +116,13 @@ case `"$ac_path_EGREP" --version 2>&1` in ac_cv_path_EGREP="$ac_path_EGREP" ac_path_EGREP_found=:;; *) ac_count=0 - $as_echo_n 0123456789 >"conftest.in" + printf %s 0123456789 >"conftest.in" while : do cat "conftest.in" "conftest.in" >"conftest.tmp" mv "conftest.tmp" "conftest.in" cp "conftest.in" "conftest.nl" - $as_echo 'EGREP' >> "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 @@ -139,16 +151,17 @@ fi fi fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_EGREP" >&5 -$as_echo "$ac_cv_path_EGREP" >&6; } +{ 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" -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for big endian" >&5 -$as_echo_n "checking for big endian... " >&6; } -if ${libc_cv_aarch64_be+:} false; then : - $as_echo_n "(cached) " >&6 -else +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for big endian" >&5 +printf %s "checking for big endian... " >&6; } +if test ${libc_cv_aarch64_be+y} +then : + printf %s "(cached) " >&6 +else $as_nop cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #ifdef __AARCH64EB__ @@ -157,18 +170,19 @@ else _ACEOF if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "yes" >/dev/null 2>&1; then : + $EGREP "yes" >/dev/null 2>&1 +then : libc_cv_aarch64_be=yes -else +else $as_nop libc_cv_aarch64_be=no fi -rm -f conftest* +rm -rf conftest* fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libc_cv_aarch64_be" >&5 -$as_echo "$libc_cv_aarch64_be" >&6; } +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $libc_cv_aarch64_be" >&5 +printf "%s\n" "$libc_cv_aarch64_be" >&6; } if test $libc_cv_aarch64_be = yes; then - $as_echo "#define HAVE_AARCH64_BE 1" >>confdefs.h + printf "%s\n" "#define HAVE_AARCH64_BE 1" >>confdefs.h config_vars="$config_vars default-abi = lp64_be" @@ -180,11 +194,12 @@ fi # Only consider BTI supported if -mbranch-protection=bti is # on by default in the compiler and the linker produces # binaries with GNU property notes in PT_GNU_PROPERTY segment. -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for BTI support" >&5 -$as_echo_n "checking for BTI support... " >&6; } -if ${libc_cv_aarch64_bti+:} false; then : - $as_echo_n "(cached) " >&6 -else +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for BTI support" >&5 +printf %s "checking for BTI support... " >&6; } +if test ${libc_cv_aarch64_bti+y} +then : + printf %s "(cached) " >&6 +else $as_nop cat > conftest.c <<EOF void foo (void) { } EOF @@ -193,31 +208,31 @@ EOF { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5 (eval $ac_try) 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; } \ && { ac_try='$READELF -lW conftest.so | grep -q GNU_PROPERTY' { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5 (eval $ac_try) 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; } \ && { ac_try='$READELF -nW conftest.so | grep -q "NT_GNU_PROPERTY_TYPE_0.*AArch64 feature:.* BTI"' { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5 (eval $ac_try) 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; } then libc_cv_aarch64_bti=yes fi rm -rf conftest.* fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libc_cv_aarch64_bti" >&5 -$as_echo "$libc_cv_aarch64_bti" >&6; } +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $libc_cv_aarch64_bti" >&5 +printf "%s\n" "$libc_cv_aarch64_bti" >&6; } config_vars="$config_vars aarch64-bti = $libc_cv_aarch64_bti" if test $libc_cv_aarch64_bti = yes; then - $as_echo "#define HAVE_AARCH64_BTI 1" >>confdefs.h + printf "%s\n" "#define HAVE_AARCH64_BTI 1" >>confdefs.h fi @@ -226,11 +241,12 @@ fi # pac-ret relies on unwinder support so it's not safe to use # it in assembly code unconditionally, but there is no # feature test macro for it in gcc. -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if pac-ret is enabled" >&5 -$as_echo_n "checking if pac-ret is enabled... " >&6; } -if ${libc_cv_aarch64_pac_ret+:} false; then : - $as_echo_n "(cached) " >&6 -else +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if pac-ret is enabled" >&5 +printf %s "checking if pac-ret is enabled... " >&6; } +if test ${libc_cv_aarch64_pac_ret+y} +then : + printf %s "(cached) " >&6 +else $as_nop cat > conftest.c <<EOF int bar (void); int foo (void) { return bar () + 1; } @@ -240,32 +256,33 @@ EOF { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5 (eval $ac_try) 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; } \ && { ac_try='grep -q -E '\''(hint( | )+25|paciasp)'\'' conftest.s' { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5 (eval $ac_try) 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; } then libc_cv_aarch64_pac_ret=yes fi rm -rf conftest.* fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libc_cv_aarch64_pac_ret" >&5 -$as_echo "$libc_cv_aarch64_pac_ret" >&6; } +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $libc_cv_aarch64_pac_ret" >&5 +printf "%s\n" "$libc_cv_aarch64_pac_ret" >&6; } if test $libc_cv_aarch64_pac_ret = yes; then - $as_echo "#define HAVE_AARCH64_PAC_RET 1" >>confdefs.h + printf "%s\n" "#define HAVE_AARCH64_PAC_RET 1" >>confdefs.h fi # Check if binutils supports variant PCS symbols. -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for variant PCS support" >&5 -$as_echo_n "checking for variant PCS support... " >&6; } -if ${libc_cv_aarch64_variant_pcs+:} false; then : - $as_echo_n "(cached) " >&6 -else +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for variant PCS support" >&5 +printf %s "checking for variant PCS support... " >&6; } +if test ${libc_cv_aarch64_variant_pcs+y} +then : + printf %s "(cached) " >&6 +else $as_nop cat > conftest.S <<EOF .global foo .type foo, %function @@ -282,30 +299,31 @@ EOF { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5 (eval $ac_try) 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; } \ && { ac_try='$READELF -dW conftest.so | grep -q AARCH64_VARIANT_PCS' { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5 (eval $ac_try) 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; } then libc_cv_aarch64_variant_pcs=yes fi rm -rf conftest.* fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libc_cv_aarch64_variant_pcs" >&5 -$as_echo "$libc_cv_aarch64_variant_pcs" >&6; } +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $libc_cv_aarch64_variant_pcs" >&5 +printf "%s\n" "$libc_cv_aarch64_variant_pcs" >&6; } config_vars="$config_vars aarch64-variant-pcs = $libc_cv_aarch64_variant_pcs" # Check if asm support armv8.2-a+sve -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for SVE support in assembler" >&5 -$as_echo_n "checking for SVE support in assembler... " >&6; } -if ${libc_cv_aarch64_sve_asm+:} false; then : - $as_echo_n "(cached) " >&6 -else +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for SVE support in assembler" >&5 +printf %s "checking for SVE support in assembler... " >&6; } +if test ${libc_cv_aarch64_sve_asm+y} +then : + printf %s "(cached) " >&6 +else $as_nop cat > conftest.s <<\EOF ptrue p0.b EOF @@ -313,7 +331,7 @@ if { ac_try='${CC-cc} -c -march=armv8.2-a+sve conftest.s 1>&5' { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5 (eval $ac_try) 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; }; then libc_cv_aarch64_sve_asm=yes else @@ -321,10 +339,10 @@ else fi rm -f conftest* fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libc_cv_aarch64_sve_asm" >&5 -$as_echo "$libc_cv_aarch64_sve_asm" >&6; } +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $libc_cv_aarch64_sve_asm" >&5 +printf "%s\n" "$libc_cv_aarch64_sve_asm" >&6; } if test $libc_cv_aarch64_sve_asm = yes; then - $as_echo "#define HAVE_AARCH64_SVE_ASM 1" >>confdefs.h + printf "%s\n" "#define HAVE_AARCH64_SVE_ASM 1" >>confdefs.h fi @@ -333,11 +351,12 @@ if test x"$build_mathvec" = xnotset; then fi # Check if compiler supports SVE ACLE. -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for availability of SVE ACLE" >&5 -$as_echo_n "checking for availability of SVE ACLE... " >&6; } -if ${libc_cv_aarch64_sve_acle+:} false; then : - $as_echo_n "(cached) " >&6 -else +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for availability of SVE ACLE" >&5 +printf %s "checking for availability of SVE ACLE... " >&6; } +if test ${libc_cv_aarch64_sve_acle+y} +then : + printf %s "(cached) " >&6 +else $as_nop cat > conftest.c <<EOF #include <arm_sve.h> EOF @@ -345,7 +364,7 @@ EOF { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5 (eval $ac_try) 2>&5 ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; }; then libc_cv_aarch64_sve_acle=yes else @@ -353,31 +372,32 @@ EOF fi rm conftest.c fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libc_cv_aarch64_sve_acle" >&5 -$as_echo "$libc_cv_aarch64_sve_acle" >&6; } +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $libc_cv_aarch64_sve_acle" >&5 +printf "%s\n" "$libc_cv_aarch64_sve_acle" >&6; } # Check if compiler is sufficient to build mathvec if test $build_mathvec = yes; then fail=no if test $libc_cv_aarch64_variant_pcs = no; then fail=yes - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: mathvec is enabled but linker does not support variant PCS." >&5 -$as_echo "$as_me: WARNING: mathvec is enabled but linker does not support variant PCS." >&2;} + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: mathvec is enabled but linker does not support variant PCS." >&5 +printf "%s\n" "$as_me: WARNING: mathvec is enabled but linker does not support variant PCS." >&2;} fi if test $libc_cv_aarch64_sve_asm = no; then fail=yes - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: mathvec is enabled but assembler does not support SVE." >&5 -$as_echo "$as_me: WARNING: mathvec is enabled but assembler does not support SVE." >&2;} + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: mathvec is enabled but assembler does not support SVE." >&5 +printf "%s\n" "$as_me: WARNING: mathvec is enabled but assembler does not support SVE." >&2;} fi if test $libc_cv_aarch64_sve_acle = no; then fail=yes - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: mathvec is enabled but compiler does not have SVE ACLE." >&5 -$as_echo "$as_me: WARNING: mathvec is enabled but compiler does not have SVE ACLE." >&2;} + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: mathvec is enabled but compiler does not have SVE ACLE." >&5 +printf "%s\n" "$as_me: WARNING: mathvec is enabled but compiler does not have SVE ACLE." >&2;} fi if test $fail = yes; then as_fn_error $? "use a compatible toolchain or configure with --disable-mathvec (this results in incomplete ABI)." "$LINENO" 5 fi else - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: mathvec is disabled, this results in incomplete ABI." >&5 -$as_echo "$as_me: WARNING: mathvec is disabled, this results in incomplete ABI." >&2;} + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: mathvec is disabled, this results in incomplete ABI." >&5 +printf "%s\n" "$as_me: WARNING: mathvec is disabled, this results in incomplete ABI." >&2;} fi + |