about summary refs log tree commit diff
diff options
context:
space:
mode:
authorJoseph Myers <joseph@codesourcery.com>2011-09-13 15:55:38 +0000
committerJoseph Myers <joseph@codesourcery.com>2011-09-13 15:55:38 +0000
commit329c2e635813fac3a18bbe052474c1b1eea7526e (patch)
tree4507f53a1a059f6278b9760761a328dbc450cf09
parent6136cdd6dd1558bffd067b8e766d1cdf35323a69 (diff)
downloadglibc-329c2e635813fac3a18bbe052474c1b1eea7526e.tar.gz
glibc-329c2e635813fac3a18bbe052474c1b1eea7526e.tar.xz
glibc-329c2e635813fac3a18bbe052474c1b1eea7526e.zip
Remove HAVE_TLS_SUPPORT conditionals for MIPS.
-rw-r--r--ChangeLog.mips7
-rw-r--r--sysdeps/mips/elf/configure109
-rw-r--r--sysdeps/mips/elf/configure.in6
-rw-r--r--sysdeps/mips/nptl/tls.h5
4 files changed, 102 insertions, 25 deletions
diff --git a/ChangeLog.mips b/ChangeLog.mips
index 0694fe85fc..b99b3386c8 100644
--- a/ChangeLog.mips
+++ b/ChangeLog.mips
@@ -1,3 +1,10 @@
+2011-09-13  Joseph Myers  <joseph@codesourcery.com>
+
+	* sysdeps/mips/elf/configure.in: Always test for TLS support and
+	error out in case it is missing.
+	* sysdeps/mips/elf/configure: Regenerate.
+	* sysdeps/mips/nptl/tls.h: Remove test for HAVE_TLS_SUPPORT.
+
 2011-09-11  Joseph Myers  <joseph@codesourcery.com>
 
 	* sysdeps/mips/dl-machine.h, sysdeps/mips/libc-tls.c,
diff --git a/sysdeps/mips/elf/configure b/sysdeps/mips/elf/configure
index 3d90a1e420..3cf02e0f12 100644
--- a/sysdeps/mips/elf/configure
+++ b/sysdeps/mips/elf/configure
@@ -1,13 +1,94 @@
+
+# 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/mips/elf.
 
-if test "$usetls" != no; then
 # Check for support of thread-local storage handling in assembler and
 # linker.
-echo "$as_me:$LINENO: checking for MIPS TLS support" >&5
-echo $ECHO_N "checking for MIPS TLS support... $ECHO_C" >&6
-if test "${libc_cv_mips_tls+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for MIPS TLS support" >&5
+$as_echo_n "checking for MIPS TLS support... " >&6; }
+if ${libc_cv_mips_tls+:} false; then :
+  $as_echo_n "(cached) " >&6
 else
   cat > conftest.s <<\EOF
 	.section ".tdata", "awT", %progbits
@@ -23,24 +104,20 @@ bar:	.skip	4
 	addiu	$4, $28, %tlsgd(x)
 EOF
 if { ac_try='${CC-cc} -c $CFLAGS conftest.s 1>&5'
-  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+  { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
   (eval $ac_try) 2>&5
   ac_status=$?
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; }; then
   libc_cv_mips_tls=yes
 else
   libc_cv_mips_tls=no
 fi
 rm -f conftest*
 fi
-echo "$as_me:$LINENO: result: $libc_cv_mips_tls" >&5
-echo "${ECHO_T}$libc_cv_mips_tls" >&6
-if test $libc_cv_mips_tls = yes; then
-  cat >>confdefs.h <<\_ACEOF
-#define HAVE_TLS_SUPPORT 1
-_ACEOF
-
-fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libc_cv_mips_tls" >&5
+$as_echo "$libc_cv_mips_tls" >&6; }
+if test $libc_cv_mips_tls = no; then
+  as_fn_error $? "the assembler must support TLS" "$LINENO" 5
 fi
 
diff --git a/sysdeps/mips/elf/configure.in b/sysdeps/mips/elf/configure.in
index ecb9108c12..5cb5a742ec 100644
--- a/sysdeps/mips/elf/configure.in
+++ b/sysdeps/mips/elf/configure.in
@@ -1,7 +1,6 @@
 GLIBC_PROVIDES dnl See aclocal.m4 in the top level source directory.
 # Local configure fragment for sysdeps/mips/elf.
 
-if test "$usetls" != no; then
 # Check for support of thread-local storage handling in assembler and
 # linker.
 AC_CACHE_CHECK(for MIPS TLS support, libc_cv_mips_tls, [dnl
@@ -25,9 +24,8 @@ else
   libc_cv_mips_tls=no
 fi
 rm -f conftest*])
-if test $libc_cv_mips_tls = yes; then
-  AC_DEFINE(HAVE_TLS_SUPPORT)
-fi
+if test $libc_cv_mips_tls = no; then
+  AC_MSG_ERROR([the assembler must support TLS])
 fi
 
 dnl No MIPS GCC supports accessing static and hidden symbols in an
diff --git a/sysdeps/mips/nptl/tls.h b/sysdeps/mips/nptl/tls.h
index 2a89e34aaf..0f215d4473 100644
--- a/sysdeps/mips/nptl/tls.h
+++ b/sysdeps/mips/nptl/tls.h
@@ -56,11 +56,6 @@ typedef union dtv
 #endif /* __ASSEMBLER__ */
 
 
-/* We require TLS support in the tools.  */
-#ifndef HAVE_TLS_SUPPORT
-# error "TLS support is required."
-#endif
-
 #ifndef __ASSEMBLER__
 
 /* Get system call information.  */