1# This file is generated from configure.ac by Autoconf. DO NOT EDIT! 2 # Local configure fragment for sysdeps/arm. 3 4# We check to see if the compiler and flags are 5# selecting the hard-float ABI and if they are then 6# we set libc_cv_arm_pcs_vfp to yes which causes 7# HAVE_ARM_PCS_VFP to be defined in config.h and 8# in include/libc-symbols.h and thus available to 9# shlib-versions to select the appropriate name for 10# the dynamic linker via %ifdef. 11 12 13{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for grep that handles long lines and -e" >&5 14$as_echo_n "checking for grep that handles long lines and -e... " >&6; } 15if ${ac_cv_path_GREP+:} false; then : 16 $as_echo_n "(cached) " >&6 17else 18 if test -z "$GREP"; then 19 ac_path_GREP_found=false 20 # Loop through the user's path and test for each of PROGNAME-LIST 21 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR 22for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin 23do 24 IFS=$as_save_IFS 25 test -z "$as_dir" && as_dir=. 26 for ac_prog in grep ggrep; do 27 for ac_exec_ext in '' $ac_executable_extensions; do 28 ac_path_GREP="$as_dir/$ac_prog$ac_exec_ext" 29 as_fn_executable_p "$ac_path_GREP" || continue 30# Check for GNU ac_path_GREP and select it if it is found. 31 # Check for GNU $ac_path_GREP 32case `"$ac_path_GREP" --version 2>&1` in 33*GNU*) 34 ac_cv_path_GREP="$ac_path_GREP" ac_path_GREP_found=:;; 35*) 36 ac_count=0 37 $as_echo_n 0123456789 >"conftest.in" 38 while : 39 do 40 cat "conftest.in" "conftest.in" >"conftest.tmp" 41 mv "conftest.tmp" "conftest.in" 42 cp "conftest.in" "conftest.nl" 43 $as_echo 'GREP' >> "conftest.nl" 44 "$ac_path_GREP" -e 'GREP$' -e '-(cannot match)-' < "conftest.nl" >"conftest.out" 2>/dev/null || break 45 diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break 46 as_fn_arith $ac_count + 1 && ac_count=$as_val 47 if test $ac_count -gt ${ac_path_GREP_max-0}; then 48 # Best one so far, save it but keep looking for a better one 49 ac_cv_path_GREP="$ac_path_GREP" 50 ac_path_GREP_max=$ac_count 51 fi 52 # 10*(2^10) chars as input seems more than enough 53 test $ac_count -gt 10 && break 54 done 55 rm -f conftest.in conftest.tmp conftest.nl conftest.out;; 56esac 57 58 $ac_path_GREP_found && break 3 59 done 60 done 61 done 62IFS=$as_save_IFS 63 if test -z "$ac_cv_path_GREP"; then 64 as_fn_error $? "no acceptable grep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5 65 fi 66else 67 ac_cv_path_GREP=$GREP 68fi 69 70fi 71{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_GREP" >&5 72$as_echo "$ac_cv_path_GREP" >&6; } 73 GREP="$ac_cv_path_GREP" 74 75 76{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for egrep" >&5 77$as_echo_n "checking for egrep... " >&6; } 78if ${ac_cv_path_EGREP+:} false; then : 79 $as_echo_n "(cached) " >&6 80else 81 if echo a | $GREP -E '(a|b)' >/dev/null 2>&1 82 then ac_cv_path_EGREP="$GREP -E" 83 else 84 if test -z "$EGREP"; then 85 ac_path_EGREP_found=false 86 # Loop through the user's path and test for each of PROGNAME-LIST 87 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR 88for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin 89do 90 IFS=$as_save_IFS 91 test -z "$as_dir" && as_dir=. 92 for ac_prog in egrep; do 93 for ac_exec_ext in '' $ac_executable_extensions; do 94 ac_path_EGREP="$as_dir/$ac_prog$ac_exec_ext" 95 as_fn_executable_p "$ac_path_EGREP" || continue 96# Check for GNU ac_path_EGREP and select it if it is found. 97 # Check for GNU $ac_path_EGREP 98case `"$ac_path_EGREP" --version 2>&1` in 99*GNU*) 100 ac_cv_path_EGREP="$ac_path_EGREP" ac_path_EGREP_found=:;; 101*) 102 ac_count=0 103 $as_echo_n 0123456789 >"conftest.in" 104 while : 105 do 106 cat "conftest.in" "conftest.in" >"conftest.tmp" 107 mv "conftest.tmp" "conftest.in" 108 cp "conftest.in" "conftest.nl" 109 $as_echo 'EGREP' >> "conftest.nl" 110 "$ac_path_EGREP" 'EGREP$' < "conftest.nl" >"conftest.out" 2>/dev/null || break 111 diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break 112 as_fn_arith $ac_count + 1 && ac_count=$as_val 113 if test $ac_count -gt ${ac_path_EGREP_max-0}; then 114 # Best one so far, save it but keep looking for a better one 115 ac_cv_path_EGREP="$ac_path_EGREP" 116 ac_path_EGREP_max=$ac_count 117 fi 118 # 10*(2^10) chars as input seems more than enough 119 test $ac_count -gt 10 && break 120 done 121 rm -f conftest.in conftest.tmp conftest.nl conftest.out;; 122esac 123 124 $ac_path_EGREP_found && break 3 125 done 126 done 127 done 128IFS=$as_save_IFS 129 if test -z "$ac_cv_path_EGREP"; then 130 as_fn_error $? "no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5 131 fi 132else 133 ac_cv_path_EGREP=$EGREP 134fi 135 136 fi 137fi 138{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_EGREP" >&5 139$as_echo "$ac_cv_path_EGREP" >&6; } 140 EGREP="$ac_cv_path_EGREP" 141 142 143{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the compiler is using the ARM hard-float ABI" >&5 144$as_echo_n "checking whether the compiler is using the ARM hard-float ABI... " >&6; } 145if ${libc_cv_arm_pcs_vfp+:} false; then : 146 $as_echo_n "(cached) " >&6 147else 148 cat confdefs.h - <<_ACEOF >conftest.$ac_ext 149/* end confdefs.h. */ 150#ifdef __ARM_PCS_VFP 151 yes 152 #endif 153 154_ACEOF 155if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | 156 $EGREP "yes" >/dev/null 2>&1; then : 157 libc_cv_arm_pcs_vfp=yes 158else 159 libc_cv_arm_pcs_vfp=no 160fi 161rm -f conftest* 162 163fi 164{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libc_cv_arm_pcs_vfp" >&5 165$as_echo "$libc_cv_arm_pcs_vfp" >&6; } 166if test $libc_cv_arm_pcs_vfp = yes; then 167 $as_echo "#define HAVE_ARM_PCS_VFP 1" >>confdefs.h 168 169 config_vars="$config_vars 170default-abi = hard" 171else 172 config_vars="$config_vars 173default-abi = soft" 174fi 175 176{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether PC-relative relocs in movw/movt work properly" >&5 177$as_echo_n "checking whether PC-relative relocs in movw/movt work properly... " >&6; } 178if ${libc_cv_arm_pcrel_movw+:} false; then : 179 $as_echo_n "(cached) " >&6 180else 181 182cat > conftest.s <<\EOF 183 .syntax unified 184 .arm 185 .arch armv7-a 186 187 .text 188 .globl foo 189 .type foo,%function 190foo: movw r0, #:lower16:symbol - 1f - 8 191 movt r0, #:upper16:symbol - 1f - 8 1921: add r0, pc 193 @ And now a case with a local symbol. 194 movw r0, #:lower16:3f - 2f - 8 195 movt r0, #:upper16:3f - 2f - 8 1962: add r0, pc 197 bx lr 198 199.data 200 .globl symbol 201 .hidden symbol 202symbol: .long 23 2033: .long 17 204EOF 205libc_cv_arm_pcrel_movw=no 206${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS \ 207 -nostartfiles -nostdlib -shared \ 208 -o conftest.so conftest.s 1>&5 2>&5 && 209LC_ALL=C $READELF -dr conftest.so > conftest.dr 2>&5 && 210{ 211 cat conftest.dr 1>&5 212 grep -F 'TEXTREL 213R_ARM_NONE' conftest.dr > /dev/null || libc_cv_arm_pcrel_movw=yes 214} 215rm -f conftest* 216fi 217{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libc_cv_arm_pcrel_movw" >&5 218$as_echo "$libc_cv_arm_pcrel_movw" >&6; } 219if test $libc_cv_arm_pcrel_movw = yes; then 220 $as_echo "#define ARM_PCREL_MOVW_OK 1" >>confdefs.h 221 222fi 223 224# This was buggy in assemblers from GNU binutils versions before 2.25.1 225# (it's known to be broken in 2.24 and 2.25; see 226# https://sourceware.org/bugzilla/show_bug.cgi?id=18383). 227{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether TPOFF relocs with addends are assembled correctly" >&5 228$as_echo_n "checking whether TPOFF relocs with addends are assembled correctly... " >&6; } 229if ${libc_cv_arm_tpoff_addend+:} false; then : 230 $as_echo_n "(cached) " >&6 231else 232 233cat > conftest.s <<\EOF 234 .syntax unified 235 .arm 236 .arch armv7-a 237 238 .text 239foo: 240 .word tbase(tpoff)+4 241 242 .section .tdata,"awT",%progbits 243 .word -4 244tbase: .word 0 245 .word 4 246EOF 247libc_cv_arm_tpoff_addend=no 248${CC-cc} -c $CFLAGS $CPPFLAGS \ 249 -o conftest.o conftest.s 1>&5 2>&5 && 250LC_ALL=C $READELF -x.text conftest.o > conftest.x 2>&5 && 251{ 252 cat conftest.x 1>&5 253 $AWK 'BEGIN { result = 2 } 254$1 ~ /0x0+/ && $2 ~ /[0-9a-f]+/ { 255# Check for little-endian or big-endian encoding of 4 in the in-place addend. 256 result = ($2 == "04000000" || $2 == "00000004") ? 0 : 1 257} 258END { exit(result) } 259' conftest.x 2>&5 && libc_cv_arm_tpoff_addend=yes 260} 261rm -f conftest* 262fi 263{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libc_cv_arm_tpoff_addend" >&5 264$as_echo "$libc_cv_arm_tpoff_addend" >&6; } 265if test $libc_cv_arm_tpoff_addend = no; then 266 config_vars="$config_vars 267test-xfail-tst-tlsalign = yes" 268 config_vars="$config_vars 269test-xfail-tst-tlsalign-static = yes" 270fi 271 272 273libc_cv_gcc_unwind_find_fde=no 274 275# Remove -fno-unwind-tables that was added in sysdeps/arm/preconfigure.ac. 276CFLAGS=${CFLAGS% -fno-unwind-tables} 277