about summary refs log blame commit diff
path: root/sysdeps/powerpc/powerpc64/configure
blob: 762ae4a25de829674052c9e79a53c0326cfce2b7 (plain) (tree)
















































































                                                                                                          



                                                                     
                                                                                           
                                                                     
                                           
                            


                                                                         
                                                                      
                     
                                                              







                                                 
                                                                            
                                        
                                             
                                                            

  
                                                                                                      
                                                                                
                                             
                            


                                                                         
                                                                      
                     
                                                              









                                                                         
                                                                              
                                          
                                              
                                                             
  






























































                                                                                

# 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/powerpc64.

# The Aix ld uses global .symbol_names instead of symbol_names
# and unfortunately early Linux PPC64 linkers use it as well.
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for support for omitting dot symbols" >&5
$as_echo_n "checking for support for omitting dot symbols... " >&6; }
if ${libc_cv_omit_dot_syms+:} false; then :
  $as_echo_n "(cached) " >&6
else
  libc_cv_omit_dot_syms=no
echo 'void foo (void) {}' > conftest.c
if { ac_try='${CC-cc} $CFLAGS $CPPFLAGS -S conftest.c -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 -w '\.foo' conftest.s > /dev/null; then
    :
  else
    libc_cv_omit_dot_syms=yes
  fi
fi
rm -f conftest.c conftest.s

fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libc_cv_omit_dot_syms" >&5
$as_echo "$libc_cv_omit_dot_syms" >&6; }
if test x$libc_cv_omit_dot_syms != xyes; then
  $as_echo "#define HAVE_ASM_GLOBAL_DOT_NAME 1" >>confdefs.h

fi

{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for linker support for overlapping .opd entries" >&5
$as_echo_n "checking for linker support for overlapping .opd entries... " >&6; }
if ${libc_cv_overlapping_opd+:} false; then :
  $as_echo_n "(cached) " >&6
else
  libc_cv_overlapping_opd=no
echo 'void foo (void) {}' > conftest.c
if { ac_try='${CC-cc} $CFLAGS $CPPFLAGS -S conftest.c -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 '\.TOC\.@tocbase' conftest.s > /dev/null; then
    if grep '\.TOC\.@tocbase[ 	]*,[ 	]*0' conftest.s > /dev/null; then
      :
    else
      libc_cv_overlapping_opd=yes
    fi
  fi
fi
rm -f conftest.c conftest.s

fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libc_cv_overlapping_opd" >&5
$as_echo "$libc_cv_overlapping_opd" >&6; }
if test x$libc_cv_overlapping_opd = xyes; then
  $as_echo "#define USE_PPC64_OVERLAPPING_OPD 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 powerpc64 TLS support" >&5
$as_echo_n "checking for powerpc64 TLS support... " >&6; }
if ${libc_cv_powerpc64_tls+:} false; then :
  $as_echo_n "(cached) " >&6
else
  cat > conftest.s <<\EOF
	.section ".tdata","awT",@progbits
x:      .quad   1
x1:     .quad   1
x2:     .quad   1
x3:     .quad   1
x4:     .long   1
	.section ".toc","aw"
.LC0:
	.quad	x@dtpmod
	.quad	x@dtprel
.LC1:
	.quad	x1@dtpmod
	.quad	0
.LC2:
	.quad	x@tprel
	.text
	addi    3,2,x@got@tlsgd
	addi    3,2,.LC0@toc
	addi    3,2,x1@got@tlsld
	addi    9,3,x1@dtprel
	addis   9,3,x2@dtprel@ha
	addi    9,9,x2@dtprel@l
	ld      9,x3@got@dtprel(2)
	addi    3,2,.LC0@toc
	lwz     0,x1@dtprel(3)
	ld      0,x1@dtprel(3)
	addis   9,3,x2@dtprel@ha
	lwz     0,x2@dtprel@l(9)
	ld      0,x2@dtprel@l(9)
	ld      9,x3@got@dtprel(2)
	ld      9,x@got@tprel(2)
	add     9,9,x@tls
	ld      9,.LC2@toc(2)
	add     9,9,.LC2@tls
	addi    9,13,x1@tprel
	addis   9,13,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_powerpc64_tls=yes
else
  libc_cv_powerpc64_tls=no
fi
rm -f conftest*
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libc_cv_powerpc64_tls" >&5
$as_echo "$libc_cv_powerpc64_tls" >&6; }
if test $libc_cv_powerpc64_tls = no; then
  as_fn_error $? "the assembler must support TLS" "$LINENO" 5
fi