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

[commits] r7992 - in /fsf/trunk/libc: ./ bits/ io/sys/ nptl/ nptl/sysdeps/unix/sysv/linux/bits/ sysdeps/posix/ sysdeps/unix/sysv/linux...



Author: eglibc
Date: Wed Feb 25 00:05:27 2009
New Revision: 7992

Log:
Import glibc-mainline for 2009-02-25

Removed:
    fsf/trunk/libc/README.template
Modified:
    fsf/trunk/libc/ChangeLog
    fsf/trunk/libc/Makefile
    fsf/trunk/libc/README
    fsf/trunk/libc/bits/confname.h
    fsf/trunk/libc/io/sys/stat.h
    fsf/trunk/libc/nptl/ChangeLog
    fsf/trunk/libc/nptl/sysdeps/unix/sysv/linux/bits/posix_opt.h
    fsf/trunk/libc/sysdeps/posix/sysconf.c
    fsf/trunk/libc/sysdeps/unix/sysv/linux/sysconf.c
    fsf/trunk/libc/time/tzset.c

Modified: fsf/trunk/libc/ChangeLog
==============================================================================
--- fsf/trunk/libc/ChangeLog (original)
+++ fsf/trunk/libc/ChangeLog Wed Feb 25 00:05:27 2009
@@ -1,3 +1,29 @@
+2009-02-24  Ulrich Drepper  <drepper@xxxxxxxxxx>
+
+	* bits/confname.h: Define _SC_TRACE_EVENT_NAME_MAX, _SC_TRACE_NAME_MAX,
+	_SC_TRACE_SYS_MAX, _SC_TRACE_USER_EVENT_MAX, _SC_XOPEN_STREAMS.
+	* sysdeps/posix/sysconf.c (__sysconf): Handle
+	_SC_TRACE_EVENT_NAME_MAX, _SC_TRACE_NAME_MAX, _SC_TRACE_SYS_MAX,
+	_SC_TRACE_USER_EVENT_MAX, _SC_XOPEN_STREAMS.
+
+2009-02-24  Roland McGrath  <roland@xxxxxxxxxx>
+
+	[BZ #9895]
+	* README.template: Reworded not to use substituted version number.
+	Renamed to ...
+	* README: ... here (no longer generated).
+	* Makefile (README): Target removed.
+
+2009-02-24  Ulrich Drepper  <drepper@xxxxxxxxxx>
+
+	* sysdeps/unix/sysv/linux/sysconf.c (__sysconf):
+	/proc/sys/kenrel/rtsig_max doesn't exist anymore, use getrlimit
+	instead.
+
+	* io/sys/stat.h: The lstat functions have been mandatory since 2001.
+
+	* time/tzset.c (tzset_internal): Correct parsing of TZ envvar.
+
 2009-02-22  Ulrich Drepper  <drepper@xxxxxxxxxx>
 
 	* po/bg.po: Update from translation team.

Modified: fsf/trunk/libc/Makefile
==============================================================================
--- fsf/trunk/libc/Makefile (original)
+++ fsf/trunk/libc/Makefile Wed Feb 25 00:05:27 2009
@@ -1,4 +1,4 @@
-# Copyright (C) 1991-2002,2003,2004,2005,2006,2008
+# Copyright (C) 1991-2002,2003,2004,2005,2006,2008,2009
 #	Free Software Foundation, Inc.
 # This file is part of the GNU C Library.
 
@@ -351,15 +351,6 @@
 
 generated := $(generated) stubs.h
 
-README: README.template version.h
-	-rm -f $@
-	sed -e 's/RELEASE/$(release)/' -e 's/VERSION/$(version)/' < $< > $@
-# Make it unwritable so I won't change it by mistake.
-	chmod 444 $@
-ifeq ($(with-cvs),yes)
-	test ! -d CVS || cvs $(CVSOPTS) commit -m'Remade for $(release)-$(version)' $@
-endif
-
 files-for-dist := README FAQ INSTALL NOTES configure
 
 tag-of-stem = glibc-$(subst .,_,$*)

Modified: fsf/trunk/libc/README
==============================================================================
--- fsf/trunk/libc/README (original)
+++ fsf/trunk/libc/README Wed Feb 25 00:05:27 2009
@@ -1,4 +1,5 @@
-This directory contains the version 2.7 release of the GNU C Library.
+This directory contains the sources of the GNU C Library.
+See the file "version.h" for what release version you have.
 
 The GNU C Library is the standard system C library for all GNU systems,
 and is an important part of what makes up a GNU system.  It provides the
@@ -52,7 +53,7 @@
 
 The code for other CPU configurations supported by volunteers outside of
 the core glibc maintenance effort is contained in the separate `ports'
-add-on.  You can find glibc-ports-2.7 distributed separately in the
+add-on.  You can find glibc-ports-VERSION distributed separately in the
 same place where you got the main glibc distribution files.
 Currently these configurations are known to work using the `ports' add-on:
 

Modified: fsf/trunk/libc/bits/confname.h
==============================================================================
--- fsf/trunk/libc/bits/confname.h (original)
+++ fsf/trunk/libc/bits/confname.h Wed Feb 25 00:05:27 2009
@@ -509,6 +509,21 @@
 #define _SC_V7_LP64_OFF64		_SC_V7_LP64_OFF64
     _SC_V7_LPBIG_OFFBIG,
 #define _SC_V7_LPBIG_OFFBIG		_SC_V7_LPBIG_OFFBIG
+
+    _SC_SS_REPL_MAX,
+#define _SC_SS_REPL_MAX			_SC_SS_REPL_MAX
+
+    _SC_TRACE_EVENT_NAME_MAX,
+#define _SC_TRACE_EVENT_NAME_MAX	_SC_TRACE_EVENT_NAME_MAX
+    _SC_TRACE_NAME_MAX,
+#define _SC_TRACE_NAME_MAX		_SC_TRACE_NAME_MAX
+    _SC_TRACE_SYS_MAX,
+#define _SC_TRACE_SYS_MAX		_SC_TRACE_SYS_MAX
+    _SC_TRACE_USER_EVENT_MAX,
+#define _SC_TRACE_USER_EVENT_MAX	_SC_TRACE_USER_EVENT_MAX
+
+    _SC_XOPEN_STREAMS,
+#define _SC_XOPEN_STREAMS		_SC_XOPEN_STREAMS
   };
 
 /* Values for the NAME argument to `confstr'.  */

Modified: fsf/trunk/libc/io/sys/stat.h
==============================================================================
--- fsf/trunk/libc/io/sys/stat.h (original)
+++ fsf/trunk/libc/io/sys/stat.h Wed Feb 25 00:05:27 2009
@@ -254,7 +254,7 @@
      __THROW __nonnull ((2, 3));
 #endif
 
-#if defined __USE_BSD || defined __USE_XOPEN_EXTENDED
+#if defined __USE_BSD || defined __USE_XOPEN_EXTENDED || defined __USE_XOPEN2K
 # ifndef __USE_FILE_OFFSET64
 /* Get file attributes about FILE and put them in BUF.
    If FILE is a symbolic link, do not follow it.  */

Modified: fsf/trunk/libc/nptl/ChangeLog
==============================================================================
--- fsf/trunk/libc/nptl/ChangeLog (original)
+++ fsf/trunk/libc/nptl/ChangeLog Wed Feb 25 00:05:27 2009
@@ -1,3 +1,8 @@
+2009-02-24  Ulrich Drepper  <drepper@xxxxxxxxxx>
+
+	* sysdeps/unix/sysv/linux/bits/posix_opt.h (_BITS_POSIX_OPT_H):
+	Unify name of include protector macro.
+
 2009-02-14  SUGIOKA Toshinobu  <sugioka@xxxxxxxxxxxx>
 
 	* sysdeps/unix/sysv/linux/sh/lowlevellock.S: Define

Modified: fsf/trunk/libc/nptl/sysdeps/unix/sysv/linux/bits/posix_opt.h
==============================================================================
--- fsf/trunk/libc/nptl/sysdeps/unix/sysv/linux/bits/posix_opt.h (original)
+++ fsf/trunk/libc/nptl/sysdeps/unix/sysv/linux/bits/posix_opt.h Wed Feb 25 00:05:27 2009
@@ -1,5 +1,5 @@
 /* Define POSIX options for Linux.
-   Copyright (C) 1996-2004, 2006, 2008 Free Software Foundation, Inc.
+   Copyright (C) 1996-2004, 2006, 2008, 2009 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -17,8 +17,8 @@
    write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
    Boston, MA 02111-1307, USA.  */
 
-#ifndef	_POSIX_OPT_H
-#define	_POSIX_OPT_H	1
+#ifndef	_BITS_POSIX_OPT_H
+#define	_BITS_POSIX_OPT_H	1
 
 /* Job control is supported.  */
 #define	_POSIX_JOB_CONTROL	1
@@ -181,4 +181,4 @@
 /* Typed memory objects are not available.  */
 #define _POSIX_TYPED_MEMORY_OBJECTS	-1
 
-#endif /* posix_opt.h */
+#endif /* bits/posix_opt.h */

Modified: fsf/trunk/libc/sysdeps/posix/sysconf.c
==============================================================================
--- fsf/trunk/libc/sysdeps/posix/sysconf.c (original)
+++ fsf/trunk/libc/sysdeps/posix/sysconf.c Wed Feb 25 00:05:27 2009
@@ -1204,6 +1204,16 @@
 #else
       return -1;
 #endif
+
+    case _SC_TRACE_EVENT_NAME_MAX:
+    case _SC_TRACE_NAME_MAX:
+    case _SC_TRACE_SYS_MAX:
+    case _SC_TRACE_USER_EVENT_MAX:
+      /* No support for tracing.  */
+
+    case _SC_XOPEN_STREAMS:
+      /* No support for STREAMS.  */
+      return -1;
 
     case _SC_LEVEL1_ICACHE_SIZE:
     case _SC_LEVEL1_ICACHE_ASSOC:

Modified: fsf/trunk/libc/sysdeps/unix/sysv/linux/sysconf.c
==============================================================================
--- fsf/trunk/libc/sysdeps/unix/sysv/linux/sysconf.c (original)
+++ fsf/trunk/libc/sysdeps/unix/sysv/linux/sysconf.c Wed Feb 25 00:05:27 2009
@@ -1,5 +1,5 @@
 /* Get file-specific information about a file.  Linux version.
-   Copyright (C) 2003, 2004, 2006, 2008 Free Software Foundation, Inc.
+   Copyright (C) 2003, 2004, 2006, 2008, 2009 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -43,6 +43,7 @@
 
   switch (name)
     {
+      struct rlimit rlimit;
 #ifdef __NR_clock_getres
     case _SC_MONOTONIC_CLOCK:
       /* Check using the clock_getres system call.  */
@@ -84,12 +85,9 @@
 	 size.  */
       if (GLRO(dl_discover_osversion) () >= 0x020617)
 #endif
-	{
-	  /* Use getrlimit to get the stack limit.  */
-	  struct rlimit rlimit;
-	  if (__getrlimit (RLIMIT_STACK, &rlimit) == 0)
-	    return MAX (legacy_ARG_MAX, rlimit.rlim_cur / 4);
-	}
+	/* Use getrlimit to get the stack limit.  */
+	if (__getrlimit (RLIMIT_STACK, &rlimit) == 0)
+	  return MAX (legacy_ARG_MAX, rlimit.rlim_cur / 4);
 
       return legacy_ARG_MAX;
 
@@ -100,6 +98,9 @@
       break;
 
     case _SC_SIGQUEUE_MAX:
+      if (__getrlimit (RLIMIT_SIGPENDING, &rlimit) == 0)
+	return rlimit.rlim_cur;
+
       /* The /proc/sys/kernel/rtsig-max file contains the answer.  */
       procfname = "/proc/sys/kernel/rtsig-max";
       break;

Modified: fsf/trunk/libc/time/tzset.c
==============================================================================
--- fsf/trunk/libc/time/tzset.c (original)
+++ fsf/trunk/libc/time/tzset.c Wed Feb 25 00:05:27 2009
@@ -174,13 +174,25 @@
   /* Get the standard timezone name.  */
   tzbuf = strdupa (tz);
 
-  if (sscanf (tz, "%[^0-9,+-]", tzbuf) != 1 ||
-      (l = strlen (tzbuf)) < 3)
+  if (sscanf (tz, "%[A-Za-z]", tzbuf) != 1)
+    {
+      /* Check for the quoted version.  */
+      char *wp = tzbuf;
+      if (*tz++ != '<')
+	goto out;
+
+      while (isalnum (*tz) || *tz == '+' || *tz == '-')
+	*wp++ = *tz++;
+      if (*tz++ != '>' || wp - tzbuf < 3)
+	goto out;
+      *wp = '\0';
+    }
+  else if ((l = strlen (tzbuf)) < 3)
     goto out;
+  else
+    tz += l;
 
   tz_rules[0].name = __tzstring (tzbuf);
-
-  tz += l;
 
   /* Figure out the standard offset from UTC.  */
   if (*tz == '\0' || (*tz != '+' && *tz != '-' && !isdigit (*tz)))
@@ -217,13 +229,31 @@
   if (*tz != '\0')
     {
       char *n = tzbuf + strlen (tzbuf) + 1;
-      if (sscanf (tz, "%[^0-9,+-]", n) != 1 ||
-	  (l = strlen (n)) < 3)
-	goto done_names;	/* Punt on name, set up the offsets.  */
+
+      if (sscanf (tz, "%[A-Za-z]", tzbuf) != 1)
+	{
+	  /* Check for the quoted version.  */
+	  char *wp = tzbuf;
+	  const char *rp = tz;
+	  if (*rp++ != '<')
+	    /* Punt on name, set up the offsets.  */
+	    goto done_names;
+
+	  while (isalnum (*rp) || *rp == '+' || *rp == '-')
+	    *wp++ = *rp++;
+	  if (*rp++ != '>' || wp - tzbuf < 3)
+	    /* Punt on name, set up the offsets.  */
+	    goto done_names;
+	  *wp = '\0';
+	  tz = rp;
+	}
+      else if ((l = strlen (tzbuf)) < 3)
+	/* Punt on name, set up the offsets.  */
+	goto done_names;
+      else
+	tz += l;
 
       tz_rules[1].name = __tzstring (n);
-
-      tz += l;
 
       /* Figure out the DST offset from GMT.  */
       if (*tz == '-' || *tz == '+')