[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[commits] r9528 - in /fsf/trunk/libc: ChangeLog configure configure.in include/stdlib.h



Author: eglibc
Date: Thu Dec 24 00:02:24 2009
New Revision: 9528

Log:
Import glibc-mainline for 2009-12-24

Modified:
    fsf/trunk/libc/ChangeLog
    fsf/trunk/libc/configure
    fsf/trunk/libc/configure.in
    fsf/trunk/libc/include/stdlib.h

Modified: fsf/trunk/libc/ChangeLog
==============================================================================
--- fsf/trunk/libc/ChangeLog (original)
+++ fsf/trunk/libc/ChangeLog Thu Dec 24 00:02:24 2009
@@ -1,3 +1,14 @@
+2009-12-17  H.J. Lu  <hongjiu.lu@xxxxxxxxx>
+
+	* configure.in: Enable multi-arch by default if the assembler
+	supports gnu_indirect_function symbol type and the architecture
+	supports it.
+
+2009-12-23  Ulrich Drepper  <drepper@xxxxxxxxxx>
+
+	* include/stdlib.h: Exclude some includes and prototypes if _ISOMAC
+	is defined.
+
 2009-12-22  Samuel Thibault  <samuel.thibault@xxxxxxxxxxxx>
 
 	* hurd/hurdioctl.c (_hurd_locked_install_cttyid): Set newctty to
@@ -17,7 +28,9 @@
 
 2009-12-21  Ulrich Drepper  <drepper@xxxxxxxxxx>
 
+	[BZ #10992]
 	* sysdeps/unix/sysv/linux/futimens.c: Handle AT_FDCWD.
+	Patch by Eric Blake <ebb9@xxxxxxx>.
 
 2009-12-15  Ulrich Drepper  <drepper@xxxxxxxxxx>
 

Modified: fsf/trunk/libc/configure
==============================================================================
--- fsf/trunk/libc/configure (original)
+++ fsf/trunk/libc/configure Thu Dec 24 00:02:24 2009
@@ -724,12 +724,12 @@
 sysdeps_add_ons
 sysnames
 submachine
+multi_arch
 base_machine
 add_on_subdirs
 add_ons
 libc_cv_nss_crypt
 experimental_malloc
-multi_arch
 all_warnings
 force_install
 bindnow
@@ -3801,17 +3801,12 @@
 if test "${enable_multi_arch+set}" = set; then
   enableval=$enable_multi_arch; multi_arch=$enableval
 else
-  multi_arch=no
-fi
-
-if test x"$multi_arch" = xyes; then
-  cat >>confdefs.h <<\_ACEOF
-#define USE_MULTIARCH 1
-_ACEOF
-
+  multi_arch=default
+fi
+
+if test x"$multi_arch" != xno; then
   multi_arch_d=/multiarch
 fi
-
 
 # Check whether --enable-experimental-malloc was given.
 if test "${enable_experimental_malloc+set}" = set; then
@@ -4359,6 +4354,44 @@
   done
 done
 
+# If the assembler supports gnu_indirect_function symbol type and the
+# architecture supports multi-arch, we enable multi-arch by default.
+if test "$multi_arch" = default; then
+{ $as_echo "$as_me:$LINENO: checking for assembler gnu_indirect_function symbol type support" >&5
+$as_echo_n "checking for assembler gnu_indirect_function symbol type support... " >&6; }
+if test "${libc_cv_asm_gnu_indirect_function+set}" = set; then
+  $as_echo_n "(cached) " >&6
+else
+  cat > conftest.s <<EOF
+.type foo,%gnu_indirect_function
+EOF
+if ${CC-cc} -c $ASFLAGS conftest.s 1>&5 2>&5;
+then
+  libc_cv_asm_gnu_indirect_function=yes
+else
+  libc_cv_asm_gnu_indirect_function=no
+fi
+rm -f conftest*
+fi
+{ $as_echo "$as_me:$LINENO: result: $libc_cv_asm_gnu_indirect_function" >&5
+$as_echo "$libc_cv_asm_gnu_indirect_function" >&6; }
+  multi_arch=no
+  if test "$libc_cv_asm_gnu_indirect_function" = yes; then
+    case $sysnames_add_ons$sysnames in
+    *"$multi_arch_d"*)
+       multi_arch=yes
+      ;;
+    esac
+  fi
+fi
+if test x"$multi_arch" = xyes; then
+  cat >>confdefs.h <<\_ACEOF
+#define USE_MULTIARCH 1
+_ACEOF
+
+fi
+
+
 if test -z "$os_used" && test "$os" != none; then
   { { $as_echo "$as_me:$LINENO: error: Operating system $os is not supported." >&5
 $as_echo "$as_me: error: Operating system $os is not supported." >&2;}

Modified: fsf/trunk/libc/configure.in
==============================================================================
--- fsf/trunk/libc/configure.in (original)
+++ fsf/trunk/libc/configure.in Thu Dec 24 00:02:24 2009
@@ -272,12 +272,10 @@
 	      AC_HELP_STRING([--enable-multi-arch],
 			     [enable single DSO with optimizations for multiple architectures]),
 	      [multi_arch=$enableval],
-	      [multi_arch=no])
-if test x"$multi_arch" = xyes; then
-  AC_DEFINE(USE_MULTIARCH)
+	      [multi_arch=default])
+if test x"$multi_arch" != xno; then
   multi_arch_d=/multiarch
 fi
-AC_SUBST(multi_arch)
 
 AC_ARG_ENABLE([experimental-malloc],
 	      AC_HELP_STRING([--enable-experimental-malloc],
@@ -722,6 +720,35 @@
   done
 done
 
+# If the assembler supports gnu_indirect_function symbol type and the
+# architecture supports multi-arch, we enable multi-arch by default.
+if test "$multi_arch" = default; then
+AC_CACHE_CHECK([for assembler gnu_indirect_function symbol type support],
+               libc_cv_asm_gnu_indirect_function, [dnl
+cat > conftest.s <<EOF
+.type foo,%gnu_indirect_function
+EOF
+if ${CC-cc} -c $ASFLAGS conftest.s 1>&AS_MESSAGE_LOG_FD 2>&AS_MESSAGE_LOG_FD;
+then
+  libc_cv_asm_gnu_indirect_function=yes
+else
+  libc_cv_asm_gnu_indirect_function=no
+fi
+rm -f conftest*])
+  multi_arch=no
+  if test "$libc_cv_asm_gnu_indirect_function" = yes; then
+    case $sysnames_add_ons$sysnames in
+    *"$multi_arch_d"*)
+       multi_arch=yes
+      ;;
+    esac
+  fi
+fi
+if test x"$multi_arch" = xyes; then
+  AC_DEFINE(USE_MULTIARCH)
+fi
+AC_SUBST(multi_arch)
+
 if test -z "$os_used" && test "$os" != none; then
   AC_MSG_ERROR(Operating system $os is not supported.)
 fi

Modified: fsf/trunk/libc/include/stdlib.h
==============================================================================
--- fsf/trunk/libc/include/stdlib.h (original)
+++ fsf/trunk/libc/include/stdlib.h Thu Dec 24 00:02:24 2009
@@ -9,7 +9,9 @@
 
 /* Now define the internal interfaces.  */
 #ifndef __Need_M_And_C
-# include <sys/stat.h>
+# ifndef _ISOMAC
+#  include <sys/stat.h>
+# endif
 
 __BEGIN_DECLS
 
@@ -78,8 +80,10 @@
 extern char *__canonicalize_file_name (__const char *__name);
 extern char *__realpath (__const char *__name, char *__resolved);
 extern int __ptsname_r (int __fd, char *__buf, size_t __buflen);
+# ifndef _ISOMAC
 extern int __ptsname_internal (int fd, char *buf, size_t buflen,
 			       struct stat64 *stp);
+# endif
 extern int __getpt (void);
 extern int __posix_openpt (int __oflag);