Skip to content

Commit

Permalink
Merge commit 'glibc-2.10.2' into fedora/2.10/master
Browse files Browse the repository at this point in the history
  • Loading branch information
Andreas Schwab committed Nov 16, 2009
2 parents ed26dd5 + dacc52e commit 82e87e0
Show file tree
Hide file tree
Showing 42 changed files with 925 additions and 652 deletions.
112 changes: 112 additions & 0 deletions ChangeLog
Original file line number Diff line number Diff line change
@@ -1,3 +1,115 @@
2009-10-28 Roland McGrath <roland@redhat.com>

* Makefile (dist-prepare): New target.
(tag-for-dist): Target removed.
(glibc-%.tar): Pattern rule removed.
(%.tar): New pattern rule, does simple use of git archive.
(dist-version): Remove variable definition.
(dist): Just depend on that. Add .tar.xz dependency.
If dist-version variable not set on command line, depend on
dist-prepare, re-invoke with dist-version set via git describe.

* Makerules (%.xz): New pattern rule.

2009-11-03 Andreas Schwab <schwab@redhat.com>

* sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list: Add
readahead.

2009-11-04 Jakub Jelinek <jakub@redhat.com>

* misc/sys/uio.h (preadv, pwritev): Fix type of last argument
when -D_FILE_OFFSET_BITS=64.

* sysdeps/unix/sysv/linux/ia64/bits/fcntl.h (fallocate): Fix types
of last two arguments when -D_FILE_OFFSET_BITS=64.
* sysdeps/unix/sysv/linux/i386/bits/fcntl.h (fallocate): Likewise.
* sysdeps/unix/sysv/linux/s390/bits/fcntl.h (fallocate): Likewise.
* sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h (fallocate): Likewise.
* sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h (fallocate): Likewise.
* sysdeps/unix/sysv/linux/sparc/bits/fcntl.h (fallocate): Likewise.
* sysdeps/unix/sysv/linux/sh/bits/fcntl.h (fallocate): Likewise.

2009-09-05 H.J. Lu <hongjiu.lu@intel.com>

* configure.in: Support binutils 2.100 and 3.0.

2009-09-07 Ulrich Drepper <drepper@redhat.com>

* locale/programs/ld-collate.c (struct locale_collate_t): Add
unnamed_section_defined field.
(collate_read): Test and set unnamed_section_defined.

* posix/getconf.c (vars): Handle POSIX2_LINE_MAX in addition to
_POSIX2_LINE_MAX.

2009-09-04 H.J. Lu <hongjiu.lu@intel.com>

* configure.in: Support binutils 2.20.

2009-09-01 Andreas Schwab <schwab@redhat.com>

* hesiod/nss_hesiod/hesiod-grp.c (internal_gid_from_group): Fix
parsing of group entry.

2009-09-02 Andreas Schwab <schwab@redhat.com>

* libio/wfileops.c (_IO_wfile_seekoff): Account for readahead in
external buffer. Always discard readahead in internal buffer.
* libio/Makefile (tests): Add bug-wsetpos.
* libio/bug-wsetpos.c: New file.

2009-08-31 Andreas Schwab <schwab@redhat.com>

* libio/wfileops.c (_IO_wfile_seekoff): Remove dead code and
reformulate in-buffer optimisation check to match code in
_IO_new_file_seekoff.

2009-08-31 Joshua W. Boyer <jwboyer@linux.vnet.ibm.com>

* sysdeps/powerpc/powerpc32/power6/memcpy.S: Change srdi instruction
to srwi in 32-bit memcpy for power6.

2009-08-31 Ulrich Drepper <drepper@redhat.com>

[BZ #10560]
* malloc/malloc.c: Add local assert definition to avoid problems with
memory allocation in the real one.

2009-08-25 Joseph Myers <joseph@codesourcery.com>

* math/s_fdiml.c (__fdiml): Use fpclassify instead of fpclassifyl.

2009-08-24 Ulrich Drepper <drepper@redhat.com>

* math/s_fdim.c: In case of overflows set errno.
* math/s_fdimf.c: Likewise.
* math/s_fdiml.c: Likewise.

2009-08-23 Ulrich Drepper <drepper@redhat.com>

* posix/regcomp.c (parse_dup_op): Verify the expression is correctly
terminated.
* posix/Makefile (tests): Add bug-regex29.
* posix/bug-regex29.c: New file.

* posix/unistd.h: Define _POSIX_VERSION and _POSIX2_* correctly if
older POSIX versions are selected.

2009-08-10 SUGIOKA Toshinobu <sugioka@itonet.co.jp>

* stdlib/longlong.h [__sh__] (udiv_qrnnd, sub_ddmmss): Add "t" to
clobber list.

2009-07-31 Jakub Jelinek <jakub@redhat.com>

* malloc/Makefile (CFLAGS-obstack.c): Add $(uses-callbacks).

2009-07-30 Ulrich Drepper <drepper@redhat.com>

* sysdeps/ia64/backtrace.c (backtrace_helper): Stop backtrace when
we make no more progress.

2009-07-25 Ulrich Drepper <drepper@redhat.com>

[BZ #10448]
Expand Down
63 changes: 25 additions & 38 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -347,51 +347,38 @@ TAGS:
| $(ETAGS) -o $@ -

# Make the distribution tarfile.
.PHONY: dist tag-for-dist
.PHONY: dist dist-prepare

generated := $(generated) stubs.h

files-for-dist := README FAQ INSTALL NOTES configure

tag-of-stem = glibc-$(subst .,_,$*)
dist-selector = -r $(tag-of-stem)

# Add-ons in the main repository but distributed in their own tar files.
dist-separate = libidn

glibc-%.tar $(dist-separate:%=glibc-%-%.tar): $(files-for-dist) \
$(foreach D,$(dist-separate),\
$D/configure)
@rm -fr glibc-$*
$(MAKE) -q `find sysdeps $(addsuffix /sysdeps,$(sysdeps-add-ons)) \
-name configure`
cvs $(CVSOPTS) -Q export -d glibc-$* $(dist-selector) libc
# Touch all the configure scripts going into the tarball since cvs export
# might have delivered configure.in newer than configure.
find glibc-$* -name configure -print | xargs touch
$(dist-do-separate-dirs)
tar cf glibc-$*.tar glibc-$*
rm -fr glibc-$*
define dist-do-separate-dirs
$(foreach dir,$(dist-separate),
@rm -fr glibc-$(dir)-$*
mv glibc-$*/$(dir) glibc-$(dir)-$*
tar cf glibc-$(dir)-$*.tar glibc-$(dir)-$*
rm -fr glibc-$(dir)-$*
)
endef
files-for-dist := README FAQ INSTALL NOTES configure ChangeLog NEWS

# Regenerate stuff, then error if these things are not committed yet.
dist-prepare: $(files-for-dist)
conf=`find sysdeps $(addsuffix /sysdeps,$(sysdeps-add-ons)) \
-name configure`; \
$(MAKE) $$conf && \
git diff --stat HEAD -- $^ $$conf \
| $(AWK) '{ print; rc=1 } END { exit rc }'

%.tar: FORCE
git archive --prefix=$*/ $* > $@.new
mv -f $@.new $@

# Do `make dist dist-version=X.Y.Z' to make tar files of an older version.
dist-version = $(version)

dist: $(foreach Z,.bz2 .gz,glibc-$(dist-version).tar$Z \
$(foreach D,$(dist-separate),\
glibc-$D-$(dist-version).tar$Z))
ifneq (,$(strip $(dist-version)))
dist: $(foreach Z,.bz2 .gz .xz,$(dist-version).tar$Z)
md5sum $^

tag-for-dist: tag-$(dist-version)
tag-%: $(files-for-dist)
cvs $(CVSOPTS) -Q tag -c $(tag-of-stem)
else
dist: dist-prepare
@if v=`git describe`; then \
echo Distribution version $$v; \
$(MAKE) dist dist-version=$$v; \
else \
false; \
fi
endif

define format-me
@rm -f $@
Expand Down
3 changes: 2 additions & 1 deletion Makerules
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# Copyright (C) 1991-2006, 2007, 2008 Free Software Foundation, Inc.
# Copyright (C) 1991-2006,2007,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
Expand Down Expand Up @@ -1335,6 +1335,7 @@ echo-headers:

%.bz2: %; bzip2 -9vk $<
%.gz: %; gzip -9vnc $< > $@.new && mv -f $@.new $@
%.xz: %; xz -9evk $<

# Common cleaning targets.

Expand Down
4 changes: 2 additions & 2 deletions configure
Original file line number Diff line number Diff line change
Expand Up @@ -4839,7 +4839,7 @@ $as_echo_n "checking version of $AS... " >&6; }
ac_prog_version=`$AS --version 2>&1 | sed -n 's/^.*GNU assembler.* \([0-9]*\.[0-9.]*\).*$/\1/p'`
case $ac_prog_version in
'') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;;
2.1[3-9]*)
2.1[3-9]*|2.1[0-9][0-9]*|2.[2-9]*|[3-9].*)
ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;;
*) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;;
Expand Down Expand Up @@ -4902,7 +4902,7 @@ $as_echo_n "checking version of $LD... " >&6; }
ac_prog_version=`$LD --version 2>&1 | sed -n 's/^.*GNU ld.* \([0-9][0-9]*\.[0-9.]*\).*$/\1/p'`
case $ac_prog_version in
'') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;;
2.1[3-9]*)
2.1[3-9]*|2.1[0-9][0-9]*|2.[2-9]*|3-9.*)
ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;;
*) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;;
Expand Down
4 changes: 2 additions & 2 deletions configure.in
Original file line number Diff line number Diff line change
Expand Up @@ -897,10 +897,10 @@ AC_SUBST(MIG)dnl Needed by sysdeps/mach/configure.in
# Accept binutils 2.13 or newer.
AC_CHECK_PROG_VER(AS, $AS, --version,
[GNU assembler.* \([0-9]*\.[0-9.]*\)],
[2.1[3-9]*], AS=: critic_missing="$critic_missing as")
[2.1[3-9]*|2.1[0-9][0-9]*|2.[2-9]*|[3-9].*], AS=: critic_missing="$critic_missing as")
AC_CHECK_PROG_VER(LD, $LD, --version,
[GNU ld.* \([0-9][0-9]*\.[0-9.]*\)],
[2.1[3-9]*], LD=: critic_missing="$critic_missing ld")
[2.1[3-9]*|2.1[0-9][0-9]*|2.[2-9]*]|[3-9].*, LD=: critic_missing="$critic_missing ld")

# We need the physical current working directory. We cannot use the
# "pwd -P" shell builtin since that's not portable. Instead we try to
Expand Down
8 changes: 3 additions & 5 deletions hesiod/nss_hesiod/hesiod-grp.c
Original file line number Diff line number Diff line change
Expand Up @@ -139,21 +139,19 @@ internal_gid_from_group (void *context, const char *groupname, gid_t *group)
{
char *p = *grp_res;

/* Skip to third field. */
while (*p != '\0' && *p != ':')
++p;
while (*p != '\0' && *p == ':')
if (*p != '\0')
++p;
while (*p != '\0' && *p != ':')
++p;
while (*p != '\0' && *p == ':')
++p;
if (*p == ':')
if (*p != '\0')
{
char *endp;
char *q = ++p;
long int val;

q = p;
while (*q != '\0' && *q != ':')
++q;

Expand Down
2 changes: 1 addition & 1 deletion libio/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -58,7 +58,7 @@ tests = tst_swprintf tst_wprintf tst_swscanf tst_wscanf tst_getwc tst_putwc \
tst-memstream1 tst-memstream2 \
tst-wmemstream1 tst-wmemstream2 \
bug-memstream1 bug-wmemstream1 \
tst-setvbuf1 tst-popen1 tst-fgetwc
tst-setvbuf1 tst-popen1 tst-fgetwc bug-wsetpos
test-srcs = test-freopen

all: # Make this the default target; it will be defined in Rules.
Expand Down
75 changes: 75 additions & 0 deletions libio/bug-wsetpos.c
Original file line number Diff line number Diff line change
@@ -0,0 +1,75 @@
/* Test program for fsetpos on a wide character stream. */

#include <assert.h>
#include <stdio.h>
#include <wchar.h>

static void do_prepare (void);
#define PREPARE(argc, argv) do_prepare ()
static int do_test (void);
#define TEST_FUNCTION do_test ()
#include <test-skeleton.c>

static const char pattern[] = "12345";
static char *temp_file;

static void
do_prepare (void)
{
int fd = create_temp_file ("bug-wsetpos.", &temp_file);
if (fd == -1)
{
printf ("cannot create temporary file: %m\n");
exit (1);
}
write (fd, pattern, sizeof (pattern));
close (fd);
}

static int
do_test (void)
{
FILE *fp = fopen (temp_file, "r");
fpos_t pos;
wchar_t c;

if (fp == NULL)
{
printf ("fdopen: %m\n");
return 1;
}

c = fgetwc (fp); assert (c == L'1');
c = fgetwc (fp); assert (c == L'2');

if (fgetpos (fp, &pos) == EOF)
{
printf ("fgetpos: %m\n");
return 1;
}

rewind (fp);
if (ferror (fp))
{
printf ("rewind: %m\n");
return 1;
}

c = fgetwc (fp); assert (c == L'1');

if (fsetpos (fp, &pos) == EOF)
{
printf ("fsetpos: %m\n");
return 1;
}

c = fgetwc (fp);
if (c != L'3')
{
puts ("fsetpos failed");
return 1;
}

puts ("Test succeeded.");
return 0;
}
Loading

0 comments on commit 82e87e0

Please sign in to comment.