aboutsummaryrefslogtreecommitdiff
path: root/sysdeps/powerpc/powerpc32/configure
blob: da0e7f4afd29114bffab8f22ba44325d7bbdef56 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184

# as_fn_set_status STATUS
# -----------------------
# Set $? to STATUS, without forking.
as_fn_set_status ()
{
  return $1
} # as_fn_set_status

# as_fn_exit STATUS
# -----------------
# Exit the shell with STATUS, even in a "trap 0" or "set -e" context.
as_fn_exit ()
{
  set +e
  as_fn_set_status $1
  exit $1
} # as_fn_exit
if expr a : '\(a\)' >/dev/null 2>&1 &&
   test "X`expr 00001 : '.*\(...\)'`" = X001; then
  as_expr=expr
else
  as_expr=false
fi

if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then
  as_basename=basename
else
  as_basename=false
fi

as_me=`$as_basename -- "$0" ||
$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
	 X"$0" : 'X\(//\)$' \| \
	 X"$0" : 'X\(/\)' \| . 2>/dev/null ||
$as_echo X/"$0" |
    sed '/^.*\/\([^/][^/]*\)\/*$/{
	    s//\1/
	    q
	  }
	  /^X\/\(\/\/\)$/{
	    s//\1/
	    q
	  }
	  /^X\/\(\/\).*/{
	    s//\1/
	    q
	  }
	  s/.*/./; q'`


  as_lineno_1=$LINENO as_lineno_1a=$LINENO
  as_lineno_2=$LINENO as_lineno_2a=$LINENO
  eval 'test "x$as_lineno_1'$as_run'" != "x$as_lineno_2'$as_run'" &&
  test "x`expr $as_lineno_1'$as_run' + 1`" = "x$as_lineno_2'$as_run'"' || {
  # Blame Lee E. McMahon (1931-1989) for sed's syntax.  :-)
  sed -n '
    p
    /[$]LINENO/=
  ' <$as_myself |
    sed '
      s/[$]LINENO.*/&-/
      t lineno
      b
      :lineno
      N
      :loop
      s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/
      t loop
      s/-\n.*//
    ' >$as_me.lineno &&
  chmod +x "$as_me.lineno" ||
    { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2; as_fn_exit 1; }

  # Don't try to exec as it changes $[0], causing all sort of problems
  # (the dirname of $[0] is not the place where we might find the
  # original and so on.  Autoconf is especially sensitive to this).
  . "./$as_me.lineno"
  # Exit status is that of the last command.
  exit
}

# This file is generated from configure.in by Autoconf.  DO NOT EDIT!
 # Local configure fragment for sysdeps/powerpc/powerpc32.

# See whether gas has R_PPC_REL16 relocs.
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for R_PPC_REL16 gas support" >&5
$as_echo_n "checking for R_PPC_REL16 gas support... " >&6; }
if ${libc_cv_ppc_rel16+:} false; then :
  $as_echo_n "(cached) " >&6
else
  cat > conftest.s <<\EOF
	.text
	addis 11,30,_GLOBAL_OFFSET_TABLE_-.@ha
EOF
if { ac_try='${CC-cc} -c $CFLAGS 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
  test $ac_status = 0; }; }; then
  libc_cv_ppc_rel16=yes
else
  libc_cv_ppc_rel16=no
fi
rm -f conftest*
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libc_cv_ppc_rel16" >&5
$as_echo "$libc_cv_ppc_rel16" >&6; }
if test $libc_cv_ppc_rel16 = no; then
  as_fn_error $? "R_PPC_REL16 is not supported. Binutils is too old." "$LINENO" 5
fi

# See whether GCC uses -msecure-plt.
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for -msecure-plt by default" >&5
$as_echo_n "checking for -msecure-plt by default... " >&6; }
if ${libc_cv_ppc_secure_plt+:} false; then :
  $as_echo_n "(cached) " >&6
else
  echo 'int foo (void) { extern int bar; return bar; }' > conftest.c
libc_cv_ppc_secure_plt=no
if { ac_try='${CC-cc} -S $CFLAGS conftest.c -fpic -o 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
  test $ac_status = 0; }; }; then
  if grep '_GLOBAL_OFFSET_TABLE_-.*@ha' conftest.s > /dev/null 2>&1; then
    libc_cv_ppc_secure_plt=yes
  fi
fi
rm -rf conftest*
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libc_cv_ppc_secure_plt" >&5
$as_echo "$libc_cv_ppc_secure_plt" >&6; }
if test $libc_cv_ppc_secure_plt = yes; then
  $as_echo "#define HAVE_PPC_SECURE_PLT 1" >>confdefs.h

fi

# Check for support of thread-local storage handling in assembler and
# linker.
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for powerpc32 TLS support" >&5
$as_echo_n "checking for powerpc32 TLS support... " >&6; }
if ${libc_cv_powerpc32_tls+:} false; then :
  $as_echo_n "(cached) " >&6
else
  cat > conftest.s <<\EOF
	.section ".tdata","awT",@progbits
x:	.long	1
x1:	.long	1
x2:	.long	1
	.text
	addi	3,31,x@got@tlsgd
	addi	3,31,x1@got@tlsld
	addi	9,3,x1@dtprel
	addis	9,3,x2@dtprel@ha
	addi	9,9,x2@dtprel@l
	lwz	0,x1@dtprel(3)
	addis	9,3,x2@dtprel@ha
	lwz	0,x2@dtprel@l(9)
	lwz	9,x3@got@tprel(31)
	add	9,9,x@tls
	addi	9,2,x1@tprel
	addis	9,2,x2@tprel@ha
	addi	9,9,x2@tprel@l
EOF
if { ac_try='${CC-cc} -c $CFLAGS 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
  test $ac_status = 0; }; }; then
  libc_cv_powerpc32_tls=yes
else
  libc_cv_powerpc32_tls=no
fi
rm -f conftest*
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libc_cv_powerpc32_tls" >&5
$as_echo "$libc_cv_powerpc32_tls" >&6; }
if test $libc_cv_powerpc32_tls = no; then
  as_fn_error $? "the assembler must support TLS" "$LINENO" 5
fi