Commit d279f6f4 authored by nobody's avatar nobody

This commit was manufactured by cvs2svn to create tag

'glibc22-final'.

svn path=/tags/glibc22-final/; revision=33
parent 2c775c2a
glibc (2.2.5-13) unstable; urgency=low
glibc (2.2.5-15) unstable; urgency=low
* GOTO Masanori <gotom@debian.or.jp>
- debian/patches/glibc-cvs.dpatch: Update from Glibc CVS.
- debian/patches: Dropped applying below patches due to updating
glibc-cvs.dpatch.
hurd-update, hurd-ioperms, ia64-strncpy, sparc-misc, resolv-nss_dns,
glibc-openoffice-fixes, xdr-array-security, hurd-lfs64,
syserrlist, mathpatch
- Fix gcc 3.1/3.2 compatibility building for glibc on ppc, with upstream
patched by Jack Howarth <howarth@bromo.msbb.uc.edu> and
Franz Sirl <Franz.Sirl-kernel@lauterbach.com>.
Closes: #155606
-- GOTO Masanori <gotom@debian.or.jp> Sat, 17 Aug 2002 11:44:47 +0900
glibc (2.2.5-14) unstable; urgency=low
* GOTO Masanori <gotom@debian.or.jp>
- debian/patches/sh-sysdep.dpatch: Added the patch to compile for sh[34]
sh[34]eb. Closes: #156273
- debian/patches/glibc22-m68k-compat.dpatch: Newer m68k debian specific
compatibility patch. Patched by Michael Fedrowitz <michaelf@debian.org>.
- debian/patches/malloc-security.dpatch: Applied malloc security patch
Patched by Wolfram Gloger <wg@malloc.de>.
- debian/patches/alpha-build-failure.dpatch: Fix alpha build failure.
-- GOTO Masanori <gotom@debian.or.jp> Wed, 7 Aug 2002 20:56:54 +0900
* Last maintainer upload for me.
* Fix double getent listing for build of libc package.
* Set maintainer to the debian-glibc mailing list. Set uploaders to myself
and others.
glibc (2.2.5-13) unstable; urgency=low
-- Ben Collins <bcollins@debian.org> Thu, 25 Jul 2002 10:02:04 -0400
* Ben Collins
- Last maintainer upload for me.
- Fix double getent listing for build of libc package.
Closes: #154133, #152866
- Set maintainer to the debian-glibc mailing list. Set uploaders to myself
and others.
- Placed into CVS (this log entry is the first test commit).
- ia64 build failure was fixed in last NMU. Closes: #151956
- This sshd/libc bug is long since gone. Closes: #72596, #82468
- ldconfig search order has also since been fixed. Closes: #105249
- Add patches that OpenOffice needs in order to build. Closes: #153107
- Bump min kernel supported to 2.2.0. Closes: #149529
- Remove db1 compat library. The only user I know of this is coda. Coda
can include it's own version of the library now. I've emailed the coda
maintainer.
- Bump the shlibs ver because of the min-kernel change, and db1 removal.
- Add xdr-array.c security patch, Closes: #154992
* GOTO Masanori <gotom@debian.or.jp>
- applied patches/locale-de_CH.
- debian/control: fix my uploader address due to my obsolete gpg key.
- debian/copyright: update copyright year.
* Jeff Bailey <jbailey@debian.org>
- Add hurd-i386 patch for support LFS from CVS
- Add patch to only declare sys_errlist and sys_nerr on Linux. This
allows gcc to build cleanly on hurd-i386.
- Require mig >= 1.3-2 (hurd-i386 only), and hurd-dev >= 20020608-1
(hurd-i386 only)
- Prune hurd-ldflags from Hurd patch list. Noone is quite sure what
it's for. With this change, all hurd-i386 patches are now upstream
in CVS.
- Add 'mathpatch' to fix a math testsuite failure.
-- Ben Collins <bcollins@debian.org> Thu, 25 Jul 2002 11:13:22 -0400
glibc (2.2.5-12) unstable; urgency=low
......
......@@ -5,7 +5,7 @@ Build-Depends: gettext (>= 0.10.37-1), make (>= 3.78-4), dpkg-dev (>= 1.4.1.5),
Build-Depends-Indep: perl, latex2html
Build-Conflicts: gcc-2.95 (<< 1:2.95.3-8) [!i386], gcc-2.95 (<< 1:2.95.3-9) [i386]
Maintainer: GNU Libc Maintainers <debian-glibc@lists.debian.org>
Uploaders: Ben Collins <bcollins@debian.org>, GOTO Masanori <gotom@debian.org>, Philip Blundell <pb@nexus.co.uk>, Jeff Bailey <jbailey@nisa.net>
Uploaders: Ben Collins <bcollins@debian.org>, GOTO Masanori <gotom@debian.or.jp>, Philip Blundell <pb@nexus.co.uk>, Jeff Bailey <jbailey@nisa.net>
Standards-Version: 3.1.1
Package: glibc-doc
......
Source: @glibc@
Section: libs
Priority: required
Build-Depends: gettext (>= 0.10.37-1), make (>= 3.78-4), dpkg-dev (>= 1.4.1.5), debianutils (>= 1.13.1), tar (>= 1.13.11), bzip2, texinfo (>= 4.0), kernel-headers-2.4 [!hurd-i386], mig [hurd-i386], hurd-dev [hurd-i386], gnumach-dev [hurd-i386], texi2html, file, gcc-3.1 [sparc], autoconf
Build-Depends: gettext (>= 0.10.37-1), make (>= 3.78-4), dpkg-dev (>= 1.4.1.5), debianutils (>= 1.13.1), tar (>= 1.13.11), bzip2, texinfo (>= 4.0), kernel-headers-2.4 [!hurd-i386], mig (>= 1.3-2) [hurd-i386], hurd-dev (>= 20020608-1) [hurd-i386], gnumach-dev [hurd-i386], texi2html, file, gcc-3.0 [sparc], autoconf
Build-Depends-Indep: perl, latex2html
Build-Conflicts: gcc-2.95 (<< 1:2.95.3-8) [!i386], gcc-2.95 (<< 1:2.95.3-9) [i386]
Build-Conflicts: gcc-2.95 (<< 1:2.95.3-9), kernel-headers-2.4.18-sparc [!sparc]
Maintainer: GNU Libc Maintainers <debian-glibc@lists.debian.org>
Uploaders: Ben Collins <bcollins@debian.org>, GOTO Masanori <gotom@debian.org>, Philip Blundell <pb@nexus.co.uk>, Jeff Bailey <jbailey@nisa.net>
Uploaders: Ben Collins <bcollins@debian.org>, GOTO Masanori <gotom@debian.or.jp>, Philip Blundell <pb@nexus.co.uk>, Jeff Bailey <jbailey@nisa.net>
Standards-Version: 3.1.1
Package: @glibc@-doc
......
......@@ -7,7 +7,7 @@ from the following sources:
<ftp://sourceware.cygnus.com/pub/glibc/releases/glibc-2.2.x.tar.bz2>
<ftp://sourceware.cygnus.com/pub/glibc/releases/glibc-linuxthreads-2.2.x.tar.gz>
Copyright (C) 1991,92,93,94,95,96,97,98,99,2000,2001 Free Software Foundation, Inc.
Copyright (C) 1991,92,93,94,95,96,97,98,99,2000,2001,2002 Free Software Foundation, Inc.
The GNU C Library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
......
glibc-cvs
glibc22-misc
db1-addon-enabler
manual-texinfo4
ldd
glibcbug
hurd-ldflags
fhs-linux-paths
pthread_create-manpage
string2-pointer-arith
......@@ -33,9 +31,18 @@ various-lsb-fixes
ia64-reloc-none
#glibc2.2.6-nice
nscd-security-fix
hurd-update
hurd-ioperms
ia64-strncpy
##hurd-update
##hurd-ioperms
##ia64-strncpy
ia64-perf
sparc-misc
resolv-nss_dns
##sparc-misc
##resolv-nss_dns
##glibc-openoffice-fixes
##xdr-array-security
locales-de_CH
##hurd-lfs64
##syserrlist
##mathpatch
sh-sysdep
##malloc-security
alpha-build-failure
#! /bin/sh -e
# All lines beginning with `# DP:' are a description of the patch.
# DP: avoid linking libmachuser and libhurduser against libc
# DP: Fix alpha build failure
if [ $# -ne 2 ]; then
echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
......@@ -16,14 +16,29 @@ case "$1" in
esac
exit 0
--- sysdeps/mach/hurd/Makefile Tue Dec 22 19:15:49 1998
+++ sysdeps/mach/hurd/Makefile Sun Dec 20 12:08:05 1998
@@ -116,6 +116,8 @@
$(common-objpfx)hurd/libhurduser.so
$(common-objpfx)libc.so: $(rpcuserlibs)
rpath-dirs += mach hurd
+LDFLAGS-machuser.so = -nostdlib -nostartfiles
+LDFLAGS-hurduser.so = -nostdlib -nostartfiles
# append the patch here and adjust the -p? flag in the patch calls.
--- sysdeps/alpha/divrem.h 6 Jul 2001 04:55:45 -0000 1.8
+++ sysdeps/alpha/divrem.h 15 Jun 2002 20:53:37 -0000 1.9
@@ -1,4 +1,4 @@
-/* Copyright (C) 1996, 1997 Free Software Foundation, Inc.
+/* Copyright (C) 1996,97,2002 Free Software Foundation, Inc.
Contributed by David Mosberger (davidm@cs.arizona.edu).
This file is part of the GNU C Library.
# And get them into the libc.so ldscript.
$(inst_libdir)/libc.so: $(rpcuserlibs)
@@ -86,6 +86,7 @@
.align 3
UFUNC_NAME:
+$udiv_entry:
lda sp, -STACK(sp)
.frame sp, STACK, retaddr, 0
#ifdef PROF
@@ -206,7 +207,7 @@
cmovge AT, AT, arg2
/* Do the unsigned division. */
- bsr retaddr, UFUNC_NAME
+ bsr retaddr, $udiv_entry
/* Restore originals and adjust the sign of the result. */
ldq arg1, 0(sp)
This source diff could not be displayed because it is too large. You can view the blob instead.
#! /bin/sh -e
# DP: Some fixes that allow openoffice to build correctly.
if [ $# -ne 2 ]; then
echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
exit 1
fi
case "$1" in
-patch) patch -d "$2" -f --no-backup-if-mismatch -p0 < $0;;
-unpatch) patch -d "$2" -f --no-backup-if-mismatch -R -p0 < $0;;
*)
echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
exit 1
esac
exit 0
This fixes the missing sqrtl entry in libm on powerpc.
2002-05-10 Andreas Schwab <schwab@suse.de>;
* sysdeps/powerpc/fpu/w_sqrt.c: Add sqrtl alias.
Index: sysdeps/powerpc/fpu/w_sqrt.c
===================================================================
RCS file: /cvs/glibc/libc/sysdeps/powerpc/fpu/w_sqrt.c,v
retrieving revision 1.2
diff -u -p -a -u -p -a -r1.2 sysdeps/powerpc/fpu/w_sqrt.c
--- sysdeps/powerpc/fpu/w_sqrt.c 6 Jul 2001 04:56:02 -0000 1.2
+++ sysdeps/powerpc/fpu/w_sqrt.c 10 May 2002 08:40:46 -0000
@@ -1,5 +1,5 @@
/* Single-precision floating point square root.
- Copyright (C) 1997 Free Software Foundation, Inc.
+ Copyright (C) 1997, 2002 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
@@ -139,3 +139,8 @@ weak_alias (__sqrt, sqrt)
/* Strictly, this is wrong, but the only places where _ieee754_sqrt is
used will not pass in a negative result. */
strong_alias(__sqrt,__ieee754_sqrt)
+
+#ifdef NO_LONG_DOUBLE
+weak_alias (__sqrt, __sqrtl)
+weak_alias (__sqrt, sqrtl)
+#endif
Index: sysdeps/unix/sysv/linux/semctl.c
===================================================================
RCS file: /cvs/glibc/libc/sysdeps/unix/sysv/linux/semctl.c,v
retrieving revision 1.12
diff -u -p -r1.12 semctl.c
--- sysdeps/unix/sysv/linux/semctl.c 6 Jul 2001 04:56:13 -0000 1.12
+++ sysdeps/unix/sysv/linux/semctl.c 28 Apr 2002 21:03:16 -0000
@@ -69,8 +69,23 @@ __old_semctl (int semid, int semnum, int
va_start (ap, cmd);
- /* Get the argument. */
- arg = va_arg (ap, union semun);
+ /* Get the argument only if required. */
+ arg.buf = NULL;
+ switch (cmd)
+ {
+ case SETVAL: /* arg.val */
+ case GETALL: /* arg.array */
+ case SETALL:
+ case IPC_STAT: /* arg.buf */
+ case IPC_SET:
+ case SEM_STAT:
+ case IPC_INFO: /* arg.__buf */
+ case SEM_INFO:
+ va_start (ap, cmd);
+ arg = va_arg (ap, union semun);
+ va_end (ap);
+ break;
+ }
va_end (ap);
@@ -88,8 +103,23 @@ __new_semctl (int semid, int semnum, int
va_start (ap, cmd);
- /* Get the argument. */
- arg = va_arg (ap, union semun);
+ /* Get the argument only if required. */
+ arg.buf = NULL;
+ switch (cmd)
+ {
+ case SETVAL: /* arg.val */
+ case GETALL: /* arg.array */
+ case SETALL:
+ case IPC_STAT: /* arg.buf */
+ case IPC_SET:
+ case SEM_STAT:
+ case IPC_INFO: /* arg.__buf */
+ case SEM_INFO:
+ va_start (ap, cmd);
+ arg = va_arg (ap, union semun);
+ va_end (ap);
+ break;
+ }
va_end (ap);
#! /bin/sh -e
# DP: Fixes some compatibility issues with m68k and lchown/chown
# DP: Fixes some old compatibility issues with m68k and lchown/chown
if [ $# -ne 2 ]; then
echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
......@@ -15,9 +15,9 @@ case "$1" in
esac
exit 0
diff -urN glibc-2.1.95.orig/sysdeps/unix/sysv/linux/m68k/chown.c glibc-2.1.95/sysdeps/unix/sysv/linux/m68k/chown.c
--- glibc-2.1.95.orig/sysdeps/unix/sysv/linux/m68k/chown.c Fri Sep 1 05:58:10 2000
+++ glibc-2.1.95/sysdeps/unix/sysv/linux/m68k/chown.c Sat Oct 14 14:58:38 2000
diff -urN glibc-2.2.5.orig/sysdeps/unix/sysv/linux/m68k/chown.c glibc-2.2.5/sysdeps/unix/sysv/linux/m68k/chown.c
--- glibc-2.2.5.orig/sysdeps/unix/sysv/linux/m68k/chown.c 2001-07-10 02:57:24.000000000 +0200
+++ glibc-2.2.5/sysdeps/unix/sysv/linux/m68k/chown.c 2002-08-11 15:37:09.000000000 +0200
@@ -72,3 +72,8 @@
#endif
}
......@@ -27,132 +27,11 @@ diff -urN glibc-2.1.95.orig/sysdeps/unix/sysv/linux/m68k/chown.c glibc-2.1.95/sy
+#if SHLIB_COMPAT (libc, GLIBC_2_1, GLIBC_2_2)
+compat_symbol (libc, __chown, chown, GLIBC_2_1);
+#endif
diff -urN glibc-2.1.95.orig/sysdeps/unix/sysv/linux/m68k.orig/lchown.c glibc-2.1.95/sysdeps/unix/sysv/linux/m68k/lchown.c
--- glibc-2.1.95.orig/sysdeps/unix/sysv/linux/m68k/lchown.c Mon Jan 17 06:20:35 2000
+++ glibc-2.1.95/sysdeps/unix/sysv/linux/m68k/lchown.c Mon Oct 16 18:59:45 2000
@@ -1 +1,126 @@
-#include <sysdeps/unix/sysv/linux/i386/lchown.c>
+/* Copyright (C) 2000 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
+ modify it under the terms of the GNU Library General Public License as
+ published by the Free Software Foundation; either version 2 of the
+ License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Library General Public License for more details.
+
+ You should have received a copy of the GNU Library General Public
+ License along with the GNU C Library; see the file COPYING.LIB. If not,
+ write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ Boston, MA 02111-1307, USA. */
+
+#include <errno.h>
+#include <unistd.h>
+
+#include <sysdep.h>
+#include <sys/syscall.h>
+#include <bp-checks.h>
+
+#include <linux/posix_types.h>
+#include "kernel-features.h"
+
+extern int __syscall_chown (const char *__unbounded __file,
+ __kernel_uid_t __owner, __kernel_gid_t __group);
+
+#if defined __NR_lchown || __ASSUME_LCHOWN_SYSCALL > 0
+extern int __syscall_lchown (const char *__unbounded __file,
+ __kernel_uid_t __owner, __kernel_gid_t __group);
+
+# ifdef __NR_lchown32
+extern int __syscall_lchown32 (const char *__unbounded __file,
+ __kernel_uid32_t __owner, __kernel_gid32_t __group);
+# if __ASSUME_32BITUIDS == 0
+/* This variable is shared with all files that need to check for 32bit
+ uids. */
+extern int __libc_missing_32bit_uids;
+# endif
+# endif /* __NR_lchown32 */
+#endif /* __NR_lchown || __ASSUME_LCHOWN_SYSCALL > 0 */
+
+int
+__lchown (const char *file, uid_t owner, gid_t group)
+{
+#if defined __NR_lchown || __ASSUME_LCHOWN_SYSCALL > 0
+# if __ASSUME_LCHOWN_SYSCALL == 0
+ static int __libc_old_chown;
+ int result;
+
+ if(!__libc_old_chown)
+ {
+ int saved_errno = errno;
+# ifdef __NR_lchown32
+ if (__libc_missing_32bit_uids <= 0)
+ {
+ int saved_errno = errno;
+
+ result = INLINE_SYSCALL (lchown32, 3, CHECK_STRING (file), owner, group);
+ if (result == 0 || errno != ENOSYS)
+ return result;
+
+ __set_errno (saved_errno);
+ __libc_missing_32bit_uids = 1;
+ }
+# endif /* __NR_lchown32 */
+
+ if (((owner + 1) > (uid_t) ((__kernel_uid_t) -1U))
+ || ((group + 1) > (gid_t) ((__kernel_gid_t) -1U)))
+ {
+ __set_errno (EINVAL);
+ return -1;
+ }
+
+ result = INLINE_SYSCALL (lchown, 3, CHECK_STRING (file), owner, group);
+ if (result == 0 || errno != ENOSYS)
+ return result;
+
+ __set_errno (saved_errno);
+ __libc_old_chown = 1;
+ }
+
+ return INLINE_SYSCALL (chown, 3, CHECK_STRING (file), owner, group);
+
+# elif __ASSUME_32BITUIDS
+ return INLINE_SYSCALL (lchown32, 3, CHECK_STRING (file), owner, group);
+# else
+# ifdef __NR_lchown32
+ if (__libc_missing_32bit_uids <= 0)
+ {
+ int result;
+ int saved_errno = errno;
+
+ result = INLINE_SYSCALL (lchown32, 3, CHECK_STRING (file), owner, group);
+ if (result == 0 || errno != ENOSYS)
+ return result;
+
+ __set_errno (saved_errno);
+ __libc_missing_32bit_uids = 1;
+ }
+# endif /* __NR_lchown32 */
+
+ if (((owner + 1) > (uid_t) ((__kernel_uid_t) -1U))
+ || ((group + 1) > (gid_t) ((__kernel_gid_t) -1U)))
+ {
+ __set_errno (EINVAL);
+ return -1;
+ }
+
+ return INLINE_SYSCALL (lchown, 3, CHECK_STRING (file), owner, group);
+# endif
+#else
+ return INLINE_SYSCALL (chown, 3, CHECK_STRING (file), owner, group);
+#endif
+}
+
+weak_alias (__lchown, lchown)
diff -urN glibc-2.2.5.orig/sysdeps/unix/sysv/linux/m68k/lchown.c glibc-2.2.5/sysdeps/unix/sysv/linux/m68k/lchown.c
--- glibc-2.2.5.orig/sysdeps/unix/sysv/linux/m68k/lchown.c 2000-01-17 06:20:35.000000000 +0100
+++ glibc-2.2.5/sysdeps/unix/sysv/linux/m68k/lchown.c 2002-08-11 15:38:56.000000000 +0200
@@ -1 +1,6 @@
#include <sysdeps/unix/sysv/linux/i386/lchown.c>
+
+#include <shlib-compat.h>
+#if SHLIB_COMPAT (libc, GLIBC_2_1, GLIBC_2_2)
......
#! /bin/sh -e
# All lines beginning with `# DP:' are a description of the patch.
# DP: Hurd update from CVS to suport LFS
if [ $# -ne 2 ]; then
echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
exit 1
fi
case "$1" in
-patch) patch -d "$2" -f --no-backup-if-mismatch -p1 < $0;;
-unpatch) patch -d "$2" -f --no-backup-if-mismatch -R -p1 < $0;;
*)
echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
exit 1
esac
exit 0
# append the patch here and adjust the -p? flag in the patch calls.
diff -X .ignore -urN glibc-2.2.5.old/ChangeLog glibc-2.2.5/ChangeLog
--- glibc-2.2.5.old/ChangeLog Tue Jun 11 19:49:29 2002
+++ glibc-2.2.5/ChangeLog Tue Jun 11 19:26:39 2002
@@ -0,0 +1,63 @@
+2002-07-31 Roland McGrath <roland@frob.com>
+
+ * sysdeps/mach/hurd/Versions (ld: GLIBC_2.0): __fxstat -> __fxstat64,
+ __xstat -> __xstat64, __lseek -> __libc_lseek64. Completes 2002-06-09
+ sysdeps/mach/hurd/dl-sysdep.c change.
+
+2002-06-09 Roland McGrath <roland@frob.com>
+
+ Update to new Hurd RPC interfaces supporting 64-bit file sizes.
+ * sysdeps/mach/hurd/configure.in: Check for <hurd/version.h> with
+ value of HURD_INTERFACE_VERSION >= 20020609.
+ * sysdeps/mach/hurd/configure: Regenerated.
+ * shlib-versions (.*-.*-gnu-gnu.*): Set libhurduser=0.3.
+ * sysdeps/mach/hurd/xstatconv.c (xstat64_conv): Rewritten to
+ convert a struct stat64 into a struct stat and return 0 or -1
+ with errno set to EOVERFLOW.
+ * sysdeps/mach/hurd/statfsconv.c (statfs64_conv): Likewise
+ for struct statfs64 to struct statfs.
+ * sysdeps/mach/hurd/xstat.c (__xstat): Use converter and call ...
+ * sysdeps/mach/hurd/xstat64.c (__xstat64): ... this, real work here.
+ * sysdeps/mach/hurd/fxstat.c (__fxstat): Likewise.
+ * sysdeps/mach/hurd/fxstat64.c (__fxstat64): Likewise.
+ * sysdeps/mach/hurd/lxstat.c (__lxstat): Likewise.
+ * sysdeps/mach/hurd/lxstat64.c (__lxstat64): Likewise.
+ * sysdeps/mach/hurd/statfs.c (__statfs): Likewise.
+ * sysdeps/mach/hurd/statfs64.c (__statfs64): Likewise.
+ * sysdeps/mach/hurd/fstatfs.c (__fstatfs): Likewise.
+ * sysdeps/mach/hurd/fstatfs64.c (__fstatfs64): Likewise.
+ * sysdeps/mach/hurd/pwrite64.c (__libc_pwrite64): Do real work here.
+ * sysdeps/mach/hurd/pwrite.c (__libc_pwrite): Call that.
+ * sysdeps/mach/hurd/pread64.c (__libc_pread64): Do real work here.
+ * sysdeps/mach/hurd/pread.c (__libc_pread): Call that.
+ * sysdeps/mach/hurd/lseek64.c (__libc_lseek64): Do real work here.
+ * sysdeps/mach/hurd/lseek.c (__libc_lseek): Call that.
+ * sysdeps/mach/hurd/readdir64.c (__readdir64): Do real work here.
+ * sysdeps/mach/hurd/readdir.c (__readdir): Call that.
+ * sysdeps/mach/hurd/readdir64_r.c (__readdir64_r): Do real work here.
+ * sysdeps/mach/hurd/readdir_r.c (__readdir64_r): Call that.
+ * hurd/lookup-retry.c (__hurd_file_name_lookup_retry):
+ Use struct stat64 for io_stat argument.
+ * sysdeps/mach/hurd/readlink.c (__readlink): Likewise.
+ * hurd/fopenport.c (seekio): Remove EOVERFLOW check, pass POS directly
+ to io_seek.
+ * hurd/fd-read.c (_hurd_fd_read): Use loff_t for OFFSET argument.
+ * hurd/fd-write.c (_hurd_fd_write): Likewise.
+ * hurd/hurd/fd.h: Update decls.
+ * sysdeps/mach/hurd/getcwd.c
+ (_hurd_canonicalize_directory_name_internal): Use ino64_t
+ and struct dirent64.
+ * sysdeps/mach/hurd/dl-sysdep.c (open_file): Use struct stat64.
+ (__xstat): Renamed to __xstat64, use struct stat64 for argument.
+ (__fxstat): Renamed to __fxstat64, use struct stat64 for argument.
+ (__lseek): Renamed to __libc_lseek64, use off64_t for argument.
+
+2002-06-08 Roland McGrath <roland@frob.com>
+
+ * sysdeps/mach/hurd/dirstream.h (struct __dirstream): Use size_t
+ instead of unsigned long int for __allocation and __size members.
+
+2002-06-07 Roland McGrath <roland@frob.com>
+
+ * sysdeps/mach/hurd/bits/environments.h: File removed.
+
diff -X .ignore -urN glibc-2.2.5.old/hurd/fd-read.c glibc-2.2.5/hurd/fd-read.c
--- glibc-2.2.5.old/hurd/fd-read.c Fri Jul 6 00:54:47 2001
+++ glibc-2.2.5/hurd/fd-read.c Tue Jun 11 19:29:52 2002
@@ -1,4 +1,4 @@
-/* Copyright (C) 1993,94,95,97,99 Free Software Foundation, Inc.
+/* Copyright (C) 1993,94,95,97,99,2002 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
@@ -23,7 +23,7 @@
#include <string.h>
error_t
-_hurd_fd_read (struct hurd_fd *fd, void *buf, size_t *nbytes, off_t offset)
+_hurd_fd_read (struct hurd_fd *fd, void *buf, size_t *nbytes, loff_t offset)
{
error_t err;
char *data;
diff -X .ignore -urN glibc-2.2.5.old/hurd/fd-write.c glibc-2.2.5/hurd/fd-write.c
--- glibc-2.2.5.old/hurd/fd-write.c Fri Jul 6 00:54:47 2001
+++ glibc-2.2.5/hurd/fd-write.c Tue Jun 11 19:29:52 2002
@@ -1,5 +1,5 @@
/* _hurd_fd_write -- write to a file descriptor; handles job control et al.
- Copyright (C) 1993,94,95,97,99 Free Software Foundation, Inc.
+ Copyright (C) 1993,94,95,97,99,2002 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
@@ -24,7 +24,7 @@
error_t
_hurd_fd_write (struct hurd_fd *fd,
- const void *buf, size_t *nbytes, off_t offset)
+ const void *buf, size_t *nbytes, loff_t offset)
{
error_t err;
mach_msg_type_number_t wrote;
diff -X .ignore -urN glibc-2.2.5.old/hurd/fopenport.c glibc-2.2.5/hurd/fopenport.c
--- glibc-2.2.5.old/hurd/fopenport.c Tue Nov 13 05:06:41 2001
+++ glibc-2.2.5/hurd/fopenport.c Tue Jun 11 19:29:52 2002
@@ -1,4 +1,4 @@
-/* Copyright (C) 1994,95,97,2000,01 Free Software Foundation, Inc.
+/* Copyright (C) 1994,95,97,2000,01,02 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
@@ -70,23 +70,8 @@
#endif
int whence)
{
- off_t res;
- error_t error;
-
- /* XXX We don't really support large files on the Hurd. So if POS
- doesn't fit in an `off_t', we'll return `-1' and set errno. EOVERFLOW
- probably isn't the right error value, but seems appropriate here. */
- if ((off_t) *pos != *pos)
- {
- __set_errno (EOVERFLOW);
- return -1;
- }
-
- error = __io_seek ((file_t) cookie, *pos, whence, &res);
- if (error)
- return __hurd_fail (error);
- *pos = res;
- return 0;
+ error_t err = __io_seek ((file_t) cookie, *pos, whence, pos);
+ return err ? __hurd_fail (err) : 0;
}
/* Close the file associated with COOKIE.
diff -X .ignore -urN glibc-2.2.5.old/hurd/hurd/fd.h glibc-2.2.5/hurd/hurd/fd.h
--- glibc-2.2.5.old/hurd/hurd/fd.h Fri Jul 6 00:54:47 2001
+++ glibc-2.2.5/hurd/hurd/fd.h Tue Jun 11 19:30:01 2002
@@ -1,5 +1,6 @@
/* File descriptors.
- Copyright (C) 1993,94,95,96,97,98,99,2000,01 Free Software Foundation, Inc.
+ Copyright (C) 1993,94,95,96,97,98,99,2000,01,02
+ 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
@@ -214,9 +215,9 @@
If successful, stores the amount actually read or written in *NBYTES. */
extern error_t _hurd_fd_read (struct hurd_fd *fd,
- void *buf, size_t *nbytes, off_t offset);
+ void *buf, size_t *nbytes, loff_t offset);
extern error_t _hurd_fd_write (struct hurd_fd *fd,
- const void *buf, size_t *nbytes, off_t offset);
+ const void *buf, size_t *nbytes, loff_t offset);
/* Call *RPC on PORT and/or CTTY; if a call on CTTY returns EBACKGROUND,
diff -X .ignore -urN glibc-2.2.5.old/hurd/lookup-retry.c glibc-2.2.5/hurd/lookup-retry.c
--- glibc-2.2.5.old/hurd/lookup-retry.c Fri Jul 6 00:54:47 2001
+++ glibc-2.2.5/hurd/lookup-retry.c Tue Jun 11 19:29:57 2002
@@ -1,5 +1,5 @@
/* hairy bits of Hurd file name lookup
- Copyright (C) 1992,93,94,95,96,97,99,2001 Free Software Foundation, Inc.
+ Copyright (C) 1992,93,94,95,96,97,99,2001,02 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
@@ -136,7 +136,7 @@
we follow root-owned symlinks; if that is deemed
undesireable, we can add a final check for that
one exception to our general translator-based rule. */
- struct stat st;
+ struct stat64 st;
err = __io_stat (*result, &st);
if (!err
&& (st.st_mode & (S_IPTRANS|S_IATRANS)))
diff -X .ignore -urN glibc-2.2.5.old/shlib-versions glibc-2.2.5/shlib-versions
--- glibc-2.2.5.old/shlib-versions Sat Mar 23 14:50:11 2002
+++ glibc-2.2.5/shlib-versions Tue Jun 11 19:27:14 2002
@@ -57,8 +57,8 @@
# libmachuser.so.1 corresponds to mach/*.defs as of Utah's UK22 release.
.*-.*-gnu-gnu.* libmachuser=1
-# libhurduser.so.0.0 corresponds to hurd/*.defs as of 7 May 1996.
-.*-.*-gnu-gnu.* libhurduser=0.0
+# libhurduser.so.0.3 corresponds to hurd/*.defs as of 11 June 2002.
+.*-.*-gnu-gnu.* libhurduser=0.3
%ifndef USE_IN_LIBIO
# libc.so.0.2 is for the Hurd alpha release 0.2.
diff -X .ignore -urN glibc-2.2.5.old/sysdeps/mach/hurd/bits/environments.h glibc-2.2.5/sysdeps/mach/hurd/bits/environments.h
--- glibc-2.2.5.old/sysdeps/mach/hurd/bits/environments.h Fri Jul 6 00:55:58 2001
+++ glibc-2.2.5/sysdeps/mach/hurd/bits/environments.h Wed Dec 31 19:00:00 1969
@@ -1,53 +0,0 @@
-/* Copyright (C) 1998, 2001 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
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
-#ifndef _UNISTD_H
-# error "Never include this file directly. Use <unistd.h> instead"
-#endif
-
-/* This header should define the following symbols under the described
- situations. A value `1' means that the model is always supported,
- `-1' means it is never supported. Undefined means it cannot be
- statically decided.
-
- _POSIX_V6_ILP32_OFF32 32bit int, long, pointers, and off_t type
- _POSIX_V6_ILP32_OFFBIG 32bit int, long, and pointers and larger off_t type
-
- _POSIX_V6_LP64_OFF32 64bit long and pointers and 32bit off_t type
- _POSIX_V6_LPBIG_OFFBIG 64bit long and pointers and large off_t type
-
- The macros _XBS5_ILP32_OFF32, _XBS5_ILP32_OFFBIG, _XBS5_LP64_OFF32, and
- _XBS5_LPBIG_OFFBIG were used in previous versions of the Unix standard
- and are available only for compatibility.
-*/
-
-/* By default we have 32-bit wide `int', `long int', pointers and
- `off_t'. */
-#define _POSIX_V6_ILP32_OFF32 1
-#define _XBS5_ILP32_OFF32 1
-
-/* We can never (yet) provide an environment with the above size but
- a 64-bit size `off_t'. */
-#define _POSIX_V6_ILP32_OFFBIG -1
-#define _XBS5_ILP32_OFFBIG -1
-
-/* We can never provide environments with 64-bit wide pointers. */
-#define _POSIX_V6_LP64_OFF64 -1
-#define _POSIX_V6_LPBIG_OFFBIG -1
-#define _XBS5_LP64_OFF64 -1
-#define _XBS5_LPBIG_OFFBIG -1
diff -X .ignore -urN glibc-2.2.5.old/sysdeps/mach/hurd/configure glibc-2.2.5/sysdeps/mach/hurd/configure
--- glibc-2.2.5.old/sysdeps/mach/hurd/configure Tue Jun 11 20:20:49 2002
+++ glibc-2.2.5/sysdeps/mach/hurd/configure Tue Jun 11 19:38:54 2002
@@ -27,3 +27,37 @@
fi
;;
esac
+
+echo $ac_n "checking Hurd header version""... $ac_c" 1>&6
+echo "configure:33: checking Hurd header version" >&5
+if eval "test \"`echo '$''{'libc_cv_hurd_version'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+else
+ cat > conftest.$ac_ext <<EOF
+#line 38 "configure"
+#include "confdefs.h"
+#include <hurd/version.h>
+int main() {
+
+#define NEED_VERSION 20020609
+#if HURD_INTERFACE_VERSION < NEED_VERSION
+# error Hurd version too old: HURD_INTERFACE_VERSION < NEED_VERSION
+#endif
+; return 0; }
+EOF
+if { (eval echo configure:49: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+ rm -rf conftest*
+ libc_cv_hurd_version=ok
+else
+ echo "configure: failed program was:" >&5
+ cat conftest.$ac_ext >&5