From 451398f8b87c2a7c6bed7d6650a6cfbca43f9189 Mon Sep 17 00:00:00 2001 From: Carlos O'Donell Date: Thu, 20 Oct 2011 14:15:51 -0400 Subject: Always test for TLS support. Always test for TLS support on hppa and raise an error if the TLS support is missing. Signed-off-by: Carlos O'Donell --- sysdeps/hppa/configure | 100 ++++++++++++++++++++++++++++++++++---- sysdeps/hppa/elf/configure | 109 +++++++++++++++++++++++++++++++++++------- sysdeps/hppa/elf/configure.in | 6 +-- 3 files changed, 186 insertions(+), 29 deletions(-) mode change 100644 => 100755 sysdeps/hppa/elf/configure (limited to 'sysdeps/hppa') diff --git a/sysdeps/hppa/configure b/sysdeps/hppa/configure index b50ec17be1..aafc420097 100644 --- a/sysdeps/hppa/configure +++ b/sysdeps/hppa/configure @@ -1,19 +1,101 @@ + +# 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! -{ echo "$as_me:$LINENO: checking for assembler line separator" >&5 -echo $ECHO_N "checking for assembler line separator... $ECHO_C" >&6; } -if test "${libc_cv_asm_line_sep+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for assembler line separator" >&5 +$as_echo_n "checking for assembler line separator... " >&6; } +if test "${libc_cv_asm_line_sep+set}" = set; then : + $as_echo_n "(cached) " >&6 else cat > conftest.s <&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_asm_line_sep='!' else if test -z "$enable_hacker_mode"; then @@ -25,8 +107,8 @@ else fi rm -f conftest* fi -{ echo "$as_me:$LINENO: result: $libc_cv_asm_line_sep" >&5 -echo "${ECHO_T}$libc_cv_asm_line_sep" >&6; } +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libc_cv_asm_line_sep" >&5 +$as_echo "$libc_cv_asm_line_sep" >&6; } cat >>confdefs.h <<_ACEOF #define ASM_LINE_SEP $libc_cv_asm_line_sep _ACEOF diff --git a/sysdeps/hppa/elf/configure b/sysdeps/hppa/elf/configure old mode 100644 new mode 100755 index ba69990fd5..4df64a852b --- a/sysdeps/hppa/elf/configure +++ b/sysdeps/hppa/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/hppa/elf. -if test "$usetls" != no; then # Check for support of thread-local storage handling in assembler and # linker. -{ echo "$as_me:$LINENO: checking for hppa TLS support" >&5 -echo $ECHO_N "checking for hppa TLS support... $ECHO_C" >&6; } -if test "${libc_cv_hppa_tls+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for hppa TLS support" >&5 +$as_echo_n "checking for hppa TLS support... " >&6; } +if test "${libc_cv_hppa_tls+set}" = set; then : + $as_echo_n "(cached) " >&6 else cat > conftest.s <<\EOF ; Setup tls data @@ -41,23 +122,19 @@ test3: ; Done all the TLS tests. 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_hppa_tls=yes else libc_cv_hppa_tls=no fi rm -f conftest* fi -{ echo "$as_me:$LINENO: result: $libc_cv_hppa_tls" >&5 -echo "${ECHO_T}$libc_cv_hppa_tls" >&6; } -if test $libc_cv_hppa_tls = yes; then - cat >>confdefs.h <<\_ACEOF -#define HAVE_TLS_SUPPORT 1 -_ACEOF - -fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libc_cv_hppa_tls" >&5 +$as_echo "$libc_cv_hppa_tls" >&6; } +if test $libc_cv_hppa_tls = no; then + as_fn_error $? "the assembler must support TLS" "$LINENO" 5 fi diff --git a/sysdeps/hppa/elf/configure.in b/sysdeps/hppa/elf/configure.in index 1b70a5b740..e31c880c1e 100644 --- a/sysdeps/hppa/elf/configure.in +++ b/sysdeps/hppa/elf/configure.in @@ -1,7 +1,6 @@ GLIBC_PROVIDES dnl See aclocal.m4 in the top level source directory. # Local configure fragment for sysdeps/hppa/elf. -if test "$usetls" != no; then # Check for support of thread-local storage handling in assembler and # linker. AC_CACHE_CHECK(for hppa TLS support, libc_cv_hppa_tls, [dnl @@ -43,7 +42,6 @@ else libc_cv_hppa_tls=no fi rm -f conftest*]) -if test $libc_cv_hppa_tls = yes; then - AC_DEFINE(HAVE_TLS_SUPPORT) -fi +if test $libc_cv_hppa_tls = no; then + AC_MSG_ERROR([the assembler must support TLS]) fi -- cgit v1.2.3