Updated to fedora-glibc-20060203T0932
authorjakub <jakub>
Fri, 3 Feb 2006 09:39:26 +0000 (09:39 +0000)
committerjakub <jakub>
Fri, 3 Feb 2006 09:39:26 +0000 (09:39 +0000)
ChangeLog
INSTALL
fedora/branch.mk
fedora/glibc.spec.in
include/errno.h
include/sys/time.h
manual/install.texi
sysdeps/unix/sysv/linux/futimesat.c
sysdeps/unix/sysv/linux/openat.c
sysdeps/unix/sysv/linux/x86_64/sysconf.c

index ec8e939..b50bdce 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,22 @@
+2006-02-02  Ulrich Drepper  <drepper@redhat.com>
+
+       * sysdeps/unix/sysv/linux/futimesat.c [__NR_futimesat]
+       (futimesat): If file is NULL use __futimes.
+       * include/sys/time.h: Declare __futimes.
+
 2006-02-02  Roland McGrath  <roland@redhat.com>
 
+       * sysdeps/unix/sysv/linux/openat.c (__atfct_seterrno): Use the same
+       fstat check for ENOENT that should be EBADF as for ENOTDIR, and also
+       check for missing /proc the same way.
+
+       * include/errno.h [__cplusplus]: Avoid extra header magic for C++.
+
+       * manual/install.texi (Tools for Compilation): Require gcc 3.4,
+       recommend 4.1, advise 4.0 for powerpc64, and note 4.1 required for
+       powerpc, s390{x,} with new long double.
+       * INSTALL: Regenerated.
+
        * timezone/private.h: Update from tzcode2006a.
        * timezone/scheck.c: Likewise.
        * timezone/asia: Update from tzdata2006a.
@@ -11,7 +28,7 @@
        * sysdeps/powerpc/powerpc64/elf/Makefile
        (CFLAGS-dl-runtime.os, CFLAGS-dl-lookup.os, CFLAGS-dl-misc.os,
        CFLAGS-rtld-mempcpy.os, CFLAGS-rtld-memmove.os, CFLAGS-rtld-memchr.os,
-       CFLAGS-rtld-strnlen.os): LIkewise
+       CFLAGS-rtld-strnlen.os): Likewise.
 
 2006-02-01  Roland McGrath  <roland@redhat.com>
 
@@ -53,6 +70,7 @@
 
        * sysdeps/unix/sysv/linux/i386/sysconf.c (intel_02_known): Add
        some more entries.
+       * sysdeps/unix/sysv/linux/x86_64/sysconf.c (intel_02_known): Likewise.
 
 2006-01-31  Jakub Jelinek  <jakub@redhat.com>
 
diff --git a/INSTALL b/INSTALL
index e424610..b503ea8 100644 (file)
--- a/INSTALL
+++ b/INSTALL
@@ -9,15 +9,7 @@ installation.  It is updated more frequently than this manual.
    Features can be added to GNU Libc via "add-on" bundles.  These are
 separate tar files, which you unpack into the top level of the source
 tree.  Then you give `configure' the `--enable-add-ons' option to
-activate them, and they will be compiled into the library.  As of the
-2.2 release, one important component of glibc is distributed as
-"official" add-ons: the linuxthreads add-on.  Unless you are doing an
-unusual installation, you should get this.
-
-   Support for POSIX threads is maintained by someone else, so it's in a
-separate package.  It is only available for GNU/Linux systems, but this
-will change in the future.  Get it from the same place you got the main
-bundle; the file is `glibc-linuxthreads-VERSION.tar.gz'.
+activate them, and they will be compiled into the library.
 
    You will need recent versions of several GNU tools: definitely GCC
 and GNU Make, and possibly others.  *Note Tools for Compilation::,
@@ -84,8 +76,7 @@ will be used, and CFLAGS sets optimization options for the compiler.
      specified with no list, it enables all the add-on packages it
      finds.  If you do not wish to use some add-on packages that you
      have present in your source tree, give this option a list of the
-     add-ons that you _do_ want used, like this:
-     `--enable-add-ons=linuxthreads'
+     add-ons that you _do_ want used, like this: `--enable-add-ons=nptl'
 
 `--enable-kernel=VERSION'
      This option is currently only useful on GNU/Linux systems.  The
@@ -302,11 +293,18 @@ build the GNU C library:
      recommend GNU `make' version 3.79.  All earlier versions have
      severe bugs or lack features.
 
-   * GCC 3.2 or newer
+   * GCC 3.4 or newer, GCC 4.1 recommended
 
      The GNU C library can only be compiled with the GNU C compiler
-     family.  As of the 2.3 release, GCC 3.2 or higher is required.  As
-     of this writing, GCC 3.2 is the compiler we advise to use.
+     family.  For the 2.3 releases, GCC 3.2 or higher is required; GCC
+     3.4 is the compiler we advise to use for 2.3 versions.  For the
+     2.4 release, GCC 3.4 or higher is required; as of this writing,
+     GCC 4.1 is the compiler we advise to use for current versions.  On
+     certain machines including `powerpc64', compilers prior to GCC 4.0
+     have bugs that prevent them compiling the C library code in the
+     2.4 release.  On other machines, GCC 4.1 is required to build the C
+     library with support for the correct `long double' type format;
+     these include `powerpc' (32 bit), `s390' and `s390x'.
 
      You can use whatever compiler you like to compile programs that
      use GNU libc, but be aware that both GCC 2.7 and 2.8 have bugs in
@@ -316,7 +314,7 @@ build the GNU C library:
      Check the FAQ for any special compiler issues on particular
      platforms.
 
-   * GNU `binutils' 2.13 or later
+   * GNU `binutils' 2.15 or later
 
      You must use GNU `binutils' (as and ld) to build the GNU C library.
      No other assembler or linker has the necessary functionality at the
@@ -330,11 +328,10 @@ build the GNU C library:
      installation mechanism for the info files is not present or works
      differently.
 
-   * GNU `awk' 3.0, or some other POSIX awk
+   * GNU `awk' 3.0, or higher
 
-     `Awk' is used in several places to generate files.  The scripts
-     should work with any POSIX-compliant `awk' implementation; `gawk'
-     3.0 and `mawk' 1.3 are known to work.
+     `Awk' is used in several places to generate files.  `gawk' 3.0 is
+     known to work.
 
    * Perl 5
 
index 27466b0..cef0bb0 100644 (file)
@@ -3,5 +3,5 @@ glibc-branch := fedora
 glibc-base := HEAD
 DIST_BRANCH := devel
 COLLECTION := dist-fc4
-fedora-sync-date := 2006-02-02 05:07 UTC
-fedora-sync-tag := fedora-glibc-20060202T0507
+fedora-sync-date := 2006-02-03 09:32 UTC
+fedora-sync-tag := fedora-glibc-20060203T0932
index 89012fc..9eaa8c6 100644 (file)
@@ -1,4 +1,4 @@
-%define glibcrelease 33
+%define glibcrelease 35
 %define auxarches i586 i686 athlon sparcv9 alphaev6
 %define prelinkarches noarch
 %define xenarches i686 athlon
@@ -1240,6 +1240,15 @@ rm -f *.filelist*
 %endif
 
 %changelog
+* Fri Feb  3 2006 Jakub Jelinek <jakub@redhat.com> 2.3.90-35
+- update from CVS
+  - handle futimesat (fd, NULL, tvp) as futimes (fd, tvp)
+- fix <stdlib.h> q{e,f,g}cvt{,_r} for -mlong-double-64
+
+* Thu Feb  2 2006 Jakub Jelinek <jakub@redhat.com> 2.3.90-34
+- fix <math.h> with C++ and -mlong-double-64 (#179742)
+- add nexttowardl redirect for -mlong-double-64
+
 * Thu Feb  2 2006 Jakub Jelinek <jakub@redhat.com> 2.3.90-33
 - update from CVS
   - long double support fixes
index 9865903..fe8bca4 100644 (file)
@@ -2,7 +2,7 @@
 
 #include <stdlib/errno.h>
 
-#if defined _ERRNO_H && !defined _ISOMAC
+#if defined _ERRNO_H && !defined _ISOMAC && !defined __cplusplus
 
 # ifdef IS_IN_rtld
 #  include <dl-sysdep.h>
index c70396f..ec40552 100644 (file)
@@ -20,6 +20,7 @@ extern int __setitimer (enum __itimer_which __which,
        attribute_hidden;
 extern int __utimes (__const char *__file, const struct timeval __tvp[2])
        attribute_hidden;
+extern int __futimes (int fd, __const struct timeval tvp[2]) attribute_hidden;
 
 #ifndef NOT_IN_libc
 # define __gettimeofday(tv, tz) INTUSE(__gettimeofday) (tv, tz)
index b538f77..d9dace9 100644 (file)
@@ -329,11 +329,18 @@ recommend GNU @code{make} version 3.79.  All earlier versions have severe
 bugs or lack features.
 
 @item
-GCC 3.2 or newer
+GCC 3.4 or newer, GCC 4.1 recommended
 
 The GNU C library can only be compiled with the GNU C compiler family.
-As of the 2.3 release, GCC 3.2 or higher is required.  As of this
-writing, GCC 3.2 is the compiler we advise to use.
+For the 2.3 releases, GCC 3.2 or higher is required; GCC 3.4 is the
+compiler we advise to use for 2.3 versions.
+For the 2.4 release, GCC 3.4 or higher is required; as of this
+writing, GCC 4.1 is the compiler we advise to use for current versions.
+On certain machines including @code{powerpc64}, compilers prior to GCC
+4.0 have bugs that prevent them compiling the C library code in the
+2.4 release.  On other machines, GCC 4.1 is required to build the C
+library with support for the correct @code{long double} type format;
+these include @code{powerpc} (32 bit), @code{s390} and @code{s390x}.
 
 You can use whatever compiler you like to compile programs that use GNU
 libc, but be aware that both GCC 2.7 and 2.8 have bugs in their
index 514f456..7c96b78 100644 (file)
@@ -42,6 +42,9 @@ futimesat (fd, file, tvp)
   if (__have_atfcts >= 0)
 # endif
     {
+      if (file == NULL)
+       return __futimes (fd, tvp);
+
       result = INLINE_SYSCALL (futimesat, 3, fd, file, tvp);
 # ifndef __ASSUME_ATFCTS
       if (result == -1 && errno == ENOSYS)
index 67e9df2..4c1f302 100644 (file)
@@ -30,7 +30,8 @@
 #if !defined OPENAT && !defined __ASSUME_ATFCTS
 # define OPENAT openat
 
-
+/* Set errno after a failed call.  If BUF is not null,
+   it is a /proc/self/fd/ path name we just tried to use.  */
 void
 attribute_hidden
 __atfct_seterrno (int errval, int fd, const char *buf)
@@ -39,7 +40,7 @@ __atfct_seterrno (int errval, int fd, const char *buf)
     {
       struct stat64 st;
 
-      if (errval == ENOTDIR)
+      if (errval == ENOTDIR || errval == ENOENT)
        {
          /* This can mean either the file descriptor is invalid or
             /proc is not mounted.  */
@@ -48,23 +49,11 @@ __atfct_seterrno (int errval, int fd, const char *buf)
            return;
 
          /* If /proc is not mounted there is nothing we can do.  */
-         if (S_ISDIR (st.st_mode)
+         if ((errval != ENOTDIR || S_ISDIR (st.st_mode))
              && (__xstat64 (_STAT_VER, "/proc/self/fd", &st) != 0
                  || !S_ISDIR (st.st_mode)))
            errval = ENOSYS;
        }
-      else if (errval == ENOENT)
-       {
-         /* This could mean the file descriptor is not valid.  We
-            reuse BUF for the stat call.  Find the slash after the
-            file descriptor number.  */
-         *(char *) strchr (buf + sizeof "/proc/self/fd", '/') = '\0';
-
-         int e = __lxstat64 (_STAT_VER, buf, &st);
-         if ((e == -1 && errno == ENOENT)
-             ||(e == 0 && !S_ISLNK (st.st_mode)))
-           errval = EBADF;
-       }
     }
 
   __set_errno (errval);
index 407fd46..99f704e 100644 (file)
@@ -1,5 +1,5 @@
 /* Get file-specific information about a file.  Linux version.
-   Copyright (C) 2003, 2004 Free Software Foundation, Inc.
+   Copyright (C) 2003, 2004, 2006 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
@@ -45,11 +45,24 @@ static const struct intel_02_cache_info
     { 0x29, _SC_LEVEL3_CACHE_SIZE, 4194304, 8, 64 },
     { 0x2c, _SC_LEVEL1_DCACHE_SIZE, 32768, 8, 64 },
     { 0x30, _SC_LEVEL1_ICACHE_SIZE, 32768, 8, 64 },
+    { 0x39, _SC_LEVEL2_CACHE_SIZE, 131072, 4, 64 },
+    { 0x3a, _SC_LEVEL2_CACHE_SIZE, 196608, 6, 64 },
+    { 0x3b, _SC_LEVEL2_CACHE_SIZE, 131072, 2, 64 },
+    { 0x3c, _SC_LEVEL2_CACHE_SIZE, 262144, 4, 64 },
+    { 0x3d, _SC_LEVEL2_CACHE_SIZE, 393216, 6, 64 },
+    { 0x3e, _SC_LEVEL2_CACHE_SIZE, 524288, 4, 64 },
     { 0x41, _SC_LEVEL2_CACHE_SIZE, 131072, 4, 32 },
     { 0x42, _SC_LEVEL2_CACHE_SIZE, 262144, 4, 32 },
     { 0x43, _SC_LEVEL2_CACHE_SIZE, 524288, 4, 32 },
     { 0x44, _SC_LEVEL2_CACHE_SIZE, 1048576, 4, 32 },
     { 0x45, _SC_LEVEL2_CACHE_SIZE, 2097152, 4, 32 },
+    { 0x46, _SC_LEVEL3_CACHE_SIZE, 4194304, 4, 64 },
+    { 0x47, _SC_LEVEL3_CACHE_SIZE, 8388608, 8, 64 },
+    { 0x49, _SC_LEVEL3_CACHE_SIZE, 4194304, 16, 64 },
+    { 0x4a, _SC_LEVEL3_CACHE_SIZE, 6291456, 12, 64 },
+    { 0x4b, _SC_LEVEL3_CACHE_SIZE, 8388608, 16, 64 },
+    { 0x4c, _SC_LEVEL3_CACHE_SIZE, 12582912, 12, 64 },
+    { 0x4d, _SC_LEVEL3_CACHE_SIZE, 16777216, 16, 64 },
     { 0x60, _SC_LEVEL1_DCACHE_SIZE, 16384, 8, 64 },
     { 0x66, _SC_LEVEL1_DCACHE_SIZE, 8192, 4, 64 },
     { 0x67, _SC_LEVEL1_DCACHE_SIZE, 16384, 4, 64 },
@@ -60,6 +73,7 @@ static const struct intel_02_cache_info
     { 0x7b, _SC_LEVEL2_CACHE_SIZE, 524288, 8, 64 },
     { 0x7c, _SC_LEVEL2_CACHE_SIZE, 1048576, 8, 64 },
     { 0x7d, _SC_LEVEL2_CACHE_SIZE, 2097152, 8, 64 },
+    { 0x7f, _SC_LEVEL2_CACHE_SIZE, 524288, 2, 64 },
     { 0x82, _SC_LEVEL2_CACHE_SIZE, 262144, 8, 32 },
     { 0x83, _SC_LEVEL2_CACHE_SIZE, 524288, 8, 32 },
     { 0x84, _SC_LEVEL2_CACHE_SIZE, 1048576, 8, 32 },