[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[commits] r7868 - in /trunk: libc/ libc/elf/ libc/iconv/ libc/include/ libc/libio/ libc/localedata/ libc/localedata/locales/ libc/mall...
- To: commits@xxxxxxxxxx
- Subject: [commits] r7868 - in /trunk: libc/ libc/elf/ libc/iconv/ libc/include/ libc/libio/ libc/localedata/ libc/localedata/locales/ libc/mall...
- From: joseph@xxxxxxxxxx
- Date: Thu, 05 Feb 2009 14:29:57 -0000
Author: joseph
Date: Thu Feb 5 06:29:56 2009
New Revision: 7868
Log:
Merge changes between r7756 and r7867 from /fsf/trunk.
Added:
trunk/libc/iconv/tst-iconv4.c
- copied unchanged from r7867, fsf/trunk/libc/iconv/tst-iconv4.c
trunk/libc/libio/tst-fgetwc.c
- copied unchanged from r7867, fsf/trunk/libc/libio/tst-fgetwc.c
trunk/libc/libio/tst-fgetwc.input
- copied unchanged from r7867, fsf/trunk/libc/libio/tst-fgetwc.input
trunk/libc/misc/bug-hsearch1.c
- copied unchanged from r7867, fsf/trunk/libc/misc/bug-hsearch1.c
trunk/ports/sysdeps/unix/sysv/linux/mips/dl-static.c
- copied unchanged from r7867, fsf/trunk/ports/sysdeps/unix/sysv/linux/mips/dl-static.c
trunk/ports/sysdeps/unix/sysv/linux/mips/ldsodefs.h
- copied unchanged from r7867, fsf/trunk/ports/sysdeps/unix/sysv/linux/mips/ldsodefs.h
Modified:
trunk/libc/ChangeLog
trunk/libc/FAQ
trunk/libc/FAQ.in
trunk/libc/Makeconfig
trunk/libc/NEWS
trunk/libc/elf/Makefile
trunk/libc/iconv/Makefile
trunk/libc/iconv/gconv_trans.c
trunk/libc/include/alloca.h
trunk/libc/libio/Makefile
trunk/libc/libio/wfileops.c
trunk/libc/localedata/ChangeLog
trunk/libc/localedata/locales/as_IN
trunk/libc/localedata/locales/bn_BD
trunk/libc/localedata/locales/bn_IN
trunk/libc/localedata/locales/hi_IN
trunk/libc/localedata/locales/mr_IN
trunk/libc/malloc/malloc.c
trunk/libc/misc/Makefile
trunk/libc/misc/hsearch_r.c
trunk/libc/misc/sbrk.c
trunk/libc/nptl/ChangeLog
trunk/libc/nptl/allocatestack.c
trunk/libc/nptl/init.c
trunk/libc/nptl/pthreadP.h
trunk/libc/nptl/pthread_mutex_lock.c
trunk/libc/nptl/sysdeps/pthread/unwind-forcedunwind.c
trunk/libc/nptl/sysdeps/unix/sysv/linux/sh/lowlevellock.S
trunk/libc/nptl/sysdeps/unix/sysv/linux/sh/lowlevellock.h
trunk/libc/nscd/connections.c
trunk/libc/nscd/mem.c
trunk/libc/nss/getent.c
trunk/libc/po/ru.po
trunk/libc/string/string.h
trunk/libc/string/strings.h
trunk/libc/sysdeps/generic/dl-osinfo.h
trunk/libc/sysdeps/i386/stackinfo.h
trunk/libc/sysdeps/powerpc/fpu/tst-setcontext-fpscr.c
trunk/libc/sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S
trunk/libc/sysdeps/powerpc/powerpc64/__longjmp-common.S
trunk/libc/sysdeps/sh/sh4/__longjmp.S
trunk/libc/sysdeps/sh/sh4/dl-trampoline.S
trunk/libc/sysdeps/sh/sh4/setjmp.S
trunk/libc/sysdeps/unix/sysv/linux/bits/shm.h
trunk/libc/sysdeps/unix/sysv/linux/i386/sysconf.c
trunk/libc/sysdeps/unix/sysv/linux/ia64/bits/shm.h
trunk/libc/sysdeps/unix/sysv/linux/powerpc/bits/shm.h
trunk/libc/sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext-common.S
trunk/libc/sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext-common.S
trunk/libc/sysdeps/unix/sysv/linux/s390/bits/shm.h
trunk/libc/sysdeps/unix/sysv/linux/sh/Makefile
trunk/libc/sysdeps/unix/sysv/linux/sh/bits/shm.h
trunk/libc/sysdeps/unix/sysv/linux/sh/sh4/getcontext.S
trunk/libc/sysdeps/unix/sysv/linux/sh/sh4/register-dump.h
trunk/libc/sysdeps/unix/sysv/linux/sh/sh4/setcontext.S
trunk/libc/sysdeps/unix/sysv/linux/sh/sh4/swapcontext.S
trunk/libc/sysdeps/unix/sysv/linux/sh/sysdep.h
trunk/libc/sysdeps/unix/sysv/linux/sparc/bits/shm.h
trunk/libc/sysdeps/unix/sysv/linux/sys/inotify.h
trunk/libc/sysdeps/unix/sysv/linux/tst-clone.c
trunk/libc/sysdeps/unix/sysv/linux/x86_64/bits/shm.h
trunk/libc/sysdeps/x86_64/cacheinfo.c
trunk/libc/sysdeps/x86_64/stackinfo.h
trunk/libc/wcsmbs/wchar.h
trunk/ports/ChangeLog.arm
trunk/ports/ChangeLog.mips
trunk/ports/sysdeps/arm/elf/start.S
trunk/ports/sysdeps/arm/memset.S
trunk/ports/sysdeps/unix/sysv/linux/arm/bits/shm.h
trunk/ports/sysdeps/unix/sysv/linux/arm/nptl/lowlevellock.h
trunk/ports/sysdeps/unix/sysv/linux/arm/sysdep.h
trunk/ports/sysdeps/unix/sysv/linux/mips/Makefile
trunk/ports/sysdeps/unix/sysv/linux/mips/Versions
trunk/ports/sysdeps/unix/sysv/linux/mips/bits/shm.h
Modified: trunk/libc/ChangeLog
==============================================================================
--- trunk/libc/ChangeLog (original)
+++ trunk/libc/ChangeLog Thu Feb 5 06:29:56 2009
@@ -1,3 +1,161 @@
+2009-02-03 Andrew Stubbs <ams@xxxxxxxxxxxxxxxx>
+
+ * sysdeps/sh/sh4/dl-trampoline.S: Only set HAVE_FPU if __SH_FPU_ANY__
+ is set.
+ * sysdeps/sh/sh4/setjmp.S: Support SH4-NOFPU.
+ * sysdeps/sh/sh4/__longjmp.S: Likewise.
+ * sysdeps/unix/sysv/linux/sh/sh4/getcontext.S: Likewise.
+ * sysdeps/unix/sysv/linux/sh/sh4/setcontext.S: Likewise.
+ * sysdeps/unix/sysv/linux/sh/sh4/swapcontext.S: Likewise.
+ * sysdeps/unix/sysv/linux/sh/sh4/register-dump.h: Likewise.
+
+2009-02-04 Ulrich Drepper <drepper@xxxxxxxxxx>
+
+ * po/ru.po: Update from translation team.
+
+2008-11-17 Nathan Sidwell <nathan@xxxxxxxxxxxxxxxx>
+
+ * sysdeps/unix/sysv/linux/sparc/bits/siginfo.h (struct sigevent):
+ Add _tid slot to maintain consistency with kernel.
+
+2009-02-04 Ulrich Drepper <drepper@xxxxxxxxxx>
+
+ * libio/wfileops.c (_IO_wfile_underflow): Fix handling of
+ incomplete characters at end of input buffer.
+ * libio/Makefile (tests): Add tst-fgetwc.
+ * libio/tst-fgetwc.c: New file.
+ * libio/tst-fgetwc.input: New file.
+
+2009-02-02 Andrew Stubbs <ams@xxxxxxxxxxxxxxxx>
+
+ * sysdeps/unix/sysv/linux/sh/Makefile (libm.so-no-z-defs): Define.
+
+2009-02-02 Ulrich Drepper <drepper@xxxxxxxxxx>
+
+ [BZ #9793]
+ * iconv/gconv_trans.c (__gconv_transliterate): Don't change
+ *OUTBUFSTART unless the whole output fit into the buffer.
+ * iconv/Makefile (tests): Add tst-iconv4.
+ * iconv/tst-iconv4.c: New file.
+
+2009-02-01 Ulrich Drepper <drepper@xxxxxxxxxx>
+
+ * sysdeps/x86_64/cacheinfo.c (intel_02_known): Add new descriptors.
+ * sysdeps/unix/sysv/linux/i386/sysconf.c (intel_02_known): Likewise.
+
+2009-01-29 Andrew Stubbs <ams@xxxxxxxxxxxxxxxx>
+
+ * elf/Makefile (ld.so): Adjust the sed script to insert _begin in to
+ newer linker scripts.
+
+2009-01-30 Ulrich Drepper <drepper@xxxxxxxxxx>
+
+ [BZ #7040]
+ * sysdeps/unix/sysv/linux/sys/inotify.h: Second parameter of
+ inotify_rm_watch should have type int.
+
+2009-01-06 Steven Munroe <sjmunroe@xxxxxxxxxx>
+
+ * sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S (__longjmp):
+ Make aligned_restore_vmx a local symbol.
+ * sysdeps/powerpc/powerpc64/__longjmp-common.S (__longjmp):
+ Likewise.
+
+2009-01-30 Andreas Jaeger <aj@xxxxxxx>
+
+ * sysdeps/unix/sysv/linux/bits/shm.h (SHM_EXEC): Define.
+ * sysdeps/unix/sysv/linux/ia64/bits/shm.h (SHM_EXEC): Define.
+ * sysdeps/unix/sysv/linux/powerpc/bits/shm.h (SHM_EXEC): Define.
+ * sysdeps/unix/sysv/linux/s390/bits/shm.h (SHM_EXEC): Define.
+ * sysdeps/unix/sysv/linux/sh/bits/shm.h (SHM_EXEC): Define.
+ * sysdeps/unix/sysv/linux/sparc/bits/shm.h (SHM_EXEC): Define.
+ * sysdeps/unix/sysv/linux/x86_64/bits/shm.h (SHM_EXEC): Define.
+
+2009-01-11 Ryan S. Arnold <rsa@xxxxxxxxxx>
+
+ [BZ #9726]
+ * sysdeps/powerpc/fpu/tst-setcontext-fpscr.c (_SET_DI_FPSCR,
+ _SET_SI_FPSCR): Clobber fp0 to prevent erroneous test-case passes.
+
+2009-01-08 Ryan S. Arnold <rsa@xxxxxxxxxx>
+
+ [BZ #9726]
+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext-common.S
+ (__CONTEXT_FUNC_NAME): Fix mtfsf to use fp31 instead of fp0.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext-common.S
+ (__CONTEXT_FUNC_NAME): Fix mtfsf to use fp31 instead of fp0.
+
+2009-01-11 Thomas Schwinge <tschwinge@xxxxxxx>
+
+ * sysdeps/generic/dl-osinfo.h (_dl_setup_stack_chk_guard): Use
+ memcpy instead of memcmp.
+ (_dl_setup_pointer_guard): Likewise.
+
+2009-01-30 Ulrich Drepper <drepper@xxxxxxxxxx>
+
+ * malloc/malloc.c (sYSMALLOc): Don't use assert when detecting
+ manipulated brk, use malloc_printerr.
+ * misc/sbrk.c (__sbrk): Better error handling for nonsense
+ requests.
+
+2009-01-30 Jakub Jelinek <jakub@xxxxxxxxxx>
+
+ * string/string.h (memchr, strchr, strrchr, strpbrk, strstr, index,
+ rindex): For C++ add inlines so that they can be recognized as
+ builtins.
+ * string/strings.h: Define correct C++ prototypes for gcc 4.4.
+
+2009-01-29 Ulrich Drepper <drepper@xxxxxxxxxx>
+ Jakub Jelinek <jakub@xxxxxxxxxx>
+
+ * string/string.h: Define correct C++ prototypes for gcc 4.4.
+ * wcsmbs/wchar.h: Likewise.
+
+2009-01-29 Ulrich Drepper <drepper@xxxxxxxxxx>
+
+ * sysdeps/i386/stackinfo.h (stackinfo_get_sp): Define.
+ (stackinfo_sub_sp): Define.
+
+2009-01-28 Ulrich Drepper <drepper@xxxxxxxxxx>
+
+ [BZ #9750]
+ * nscd/mem.c (gc): Use alloca_count to get the real stack usage.
+ * include/alloca.h (alloca_account): Define.
+ * sysdeps/x86_64/stackinfo.h (stackinfo_get_sp): Define.
+ (stackinfo_sub_sp): Define.
+
+ * nscd/connections.c (nscd_init): If database file access fails
+ check whether this is due to permission problems and bail in that
+ case.
+
+ [BZ #9741]
+ * nscd/mem.c (gc): Fix assignment of he_data in case malloc is used.
+ Reported by Jun'ichi Nomura <j-nomura@xxxxxxxxxxxxx>.
+
+2009-01-14 Kaz Kojima <kkojima@xxxxxxxxxxxxxx>
+
+ * sysdeps/unix/sysv/linux/sh/sysdep.h (INTERNAL_SYSCALL):
+ Add "t" to clobber list.
+ (INTERNAL_SYSCALL_NCS): Likewise.
+
+2009-01-28 Ulrich Drepper <drepper@xxxxxxxxxx>
+
+ * nss/getent.c (print_networks): Don't print comma between aliases.
+
+2009-01-23 Ulrich Drepper <drepper@xxxxxxxxxx>
+
+ * sysdeps/unix/sysv/linux/tst-clone.c (do_test): Avoid warning.
+
+ * misc/hsearch_r.c (hcreate_r): We need at least three elements in
+ the hash table.
+ * misc/Makefile (tests): Add bug-hsearch1.
+ * misc/bug-hsearch1.c: New file.
+
+2009-01-22 Roland McGrath <roland@xxxxxxxxxx>
+
+ * Makeconfig (%.v.i): Strip trailing # comments,
+ not only whole-line comments.
+
2009-01-10 Ulrich Drepper <drepper@xxxxxxxxxx>
* sysdeps/generic/dl-osinfo.h (_dl_setup_stack_chk_guard): Take
@@ -80,7 +238,6 @@
* resolv/nss_dns/dns-host.c (_nss_dns_gethostbyaddr2_r): Check and
adjust the buffer alignment.
->>>>>>> 1.11443
2009-01-07 Samuel Thibault <samuel.thibault@xxxxxxxxxxxx>
* sysdeps/mach/hurd/Makefile (sysdep_headers) [subdir=socket]:
@@ -570,7 +727,7 @@
[BZ #6942]
* resolv/res_send.c (send_vc): Fix use of unaligned address.
- Properly handle partial reads.
+ Properly handle partial reads.
2008-10-01 Mark Shinwell <shinwell@xxxxxxxxxxxxxxxx>
@@ -621,7 +778,7 @@
Patch by Michael Solberg <msolberg@xxxxxxxxxx>.
2008-09-12 Flavio Leitner <fleitner@xxxxxxxxxx>
- Ulrich Drepper <drepper@xxxxxxxxxx>
+ Ulrich Drepper <drepper@xxxxxxxxxx>
* malloc/malloc.c (public_vALLOc): Try other arenas in case
_int_valloc fails.
@@ -4574,7 +4731,7 @@
2007-08-16 Andreas Jaeger <aj@xxxxxxx>
* locale/localeinfo.h: Make _nl_category_name_idxs extern.
- Reported by Peter Festner <peter.festner@xxxxxxxxxx>.
+ Reported by Peter Festner <peter.festner@xxxxxxxxxx>.
2007-08-17 Jakub Jelinek <jakub@xxxxxxxxxx>
@@ -5664,8 +5821,8 @@
* sysdeps/generic/ldsodefs.h (_dl_addr_inside_object): New prototype.
2007-06-18 Jakub Jelinek <jakub@xxxxxxxxxx>
- Tomas Janousek <tjanouse@xxxxxxxxxx>
- Ulrich Drepper <drepper@xxxxxxxxxx>
+ Tomas Janousek <tjanouse@xxxxxxxxxx>
+ Ulrich Drepper <drepper@xxxxxxxxxx>
[BZ #4647]
* resolv/res_send.c (send_dg): Remove socket_pf. Use ipv6_unavail
Modified: trunk/libc/FAQ
==============================================================================
--- trunk/libc/FAQ (original)
+++ trunk/libc/FAQ Thu Feb 5 06:29:56 2009
@@ -570,8 +570,6 @@
because of problems of the FPU emulation in the Linux kernel (the MIPS FPU
doesn't handle all cases and needs help from the kernel).
-For details check also my page <http://www.suse.de/~aj/glibc-mips.html>.
-
1.21. Which compiler should I use for powerpc64?
Modified: trunk/libc/FAQ.in
==============================================================================
--- trunk/libc/FAQ.in (original)
+++ trunk/libc/FAQ.in Thu Feb 5 06:29:56 2009
@@ -367,7 +367,6 @@
because of problems of the FPU emulation in the Linux kernel (the MIPS FPU
doesn't handle all cases and needs help from the kernel).
-For details check also my page <http://www.suse.de/~aj/glibc-mips.html>.
??powerpc64 Which compiler should I use for powerpc64?
Modified: trunk/libc/Makeconfig
==============================================================================
--- trunk/libc/Makeconfig (original)
+++ trunk/libc/Makeconfig Thu Feb 5 06:29:56 2009
@@ -1,4 +1,4 @@
-# Copyright (C) 1991-2003,2004,2005,2006,2007,2008
+# Copyright (C) 1991-2003,2004,2005,2006,2007,2008,2009
# Free Software Foundation, Inc.
# This file is part of the GNU C Library.
@@ -802,7 +802,8 @@
# listing both its input files, and any header files that it may reference
# (but no commands).
%.v.i: $(common-objpfx)config.h
- sed '/^[ ]*#/d;s/^[ ]*%/#/' $(filter-out FORCE %.h,$^) \
+ sed 's/#.*$$//;/^[ ]*$$/d;s/^[ ]*%/#/' \
+ $(filter-out FORCE %.h,$^) \
| $(CC) -E -undef $(CPPFLAGS) -x assembler-with-cpp - \
> $@T
mv -f $@T $@
Modified: trunk/libc/NEWS
==============================================================================
--- trunk/libc/NEWS (original)
+++ trunk/libc/NEWS Thu Feb 5 06:29:56 2009
@@ -1,5 +1,5 @@
-GNU C Library NEWS -- history of user-visible changes. 2008-12-2
-Copyright (C) 1992-2007, 2008 Free Software Foundation, Inc.
+GNU C Library NEWS -- history of user-visible changes. 2009-1-30
+Copyright (C) 1992-2008, 2009 Free Software Foundation, Inc.
See the end for copying conditions.
Please send GNU C library bug reports via <http://sources.redhat.com/bugzilla/>
@@ -8,6 +8,9 @@
Version 2.10
* New Linux interface: accept4
+
+* Correct declarations of string function when used in C++ code. This
+ could lead to compile error for invalid C++ code.
Version 2.9
Modified: trunk/libc/elf/Makefile
==============================================================================
--- trunk/libc/elf/Makefile (original)
+++ trunk/libc/elf/Makefile Thu Feb 5 06:29:56 2009
@@ -1,4 +1,4 @@
-# Copyright (C) 1995-2007, 2008 Free Software Foundation, Inc.
+# Copyright (C) 1995-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
@@ -305,8 +305,7 @@
$(LDFLAGS-rtld) -Wl,-z,defs -Wl,--verbose 2>&1 | \
LC_ALL=C \
sed -e '/^=========/,/^=========/!d;/^=========/d' \
- -e 's/\. = 0 + SIZEOF_HEADERS;/& _begin = . - SIZEOF_HEADERS;/' \
- -e 's/\. = SEGMENT_START("text-segment", 0) + SIZEOF_HEADERS;/& _begin = . - SIZEOF_HEADERS;/' \
+ -e 's/\. = .* + SIZEOF_HEADERS;/& _begin = . - SIZEOF_HEADERS;/' \
> $@.lds
$(LINK.o) -nostdlib -nostartfiles -shared -o $@ \
$(LDFLAGS-rtld) -Wl,-z,defs $(z-now-$(bind-now)) \
Modified: trunk/libc/iconv/Makefile
==============================================================================
--- trunk/libc/iconv/Makefile (original)
+++ trunk/libc/iconv/Makefile Thu Feb 5 06:29:56 2009
@@ -1,5 +1,4 @@
-# Copyright (C) 1997,1998,2000,2001,2002,2003,2004,2007
-# Free Software Foundation, Inc.
+# Copyright (C) 1997,1998,2000-2004,2007,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
@@ -52,7 +51,7 @@
CFLAGS-linereader.c = -DNO_TRANSLITERATION
CFLAGS-simple-hash.c = -I../locale
-tests = tst-iconv1 tst-iconv2 tst-iconv3 tst-iconv5
+tests = tst-iconv1 tst-iconv2 tst-iconv3 tst-iconv4 tst-iconv5
distribute = gconv_builtin.h gconv_int.h loop.c skeleton.c iconv_prog.h \
iconv_charmap.c dummy-repertoire.c gconv_charset.h strtab.c \
Modified: trunk/libc/iconv/gconv_trans.c
==============================================================================
--- trunk/libc/iconv/gconv_trans.c (original)
+++ trunk/libc/iconv/gconv_trans.c Thu Feb 5 06:29:56 2009
@@ -1,5 +1,5 @@
/* Transliteration using the locale's data.
- Copyright (C) 2000 Free Software Foundation, Inc.
+ Copyright (C) 2000, 2009 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Ulrich Drepper <drepper@xxxxxxxxxx>, 2000.
@@ -141,7 +141,10 @@
++*irreversible;
res = __GCONV_OK;
}
- *outbufstart = outptr;
+ /* Do not increment the output pointer if we could not
+ store the entire output. */
+ if (res != __GCONV_FULL_OUTPUT)
+ *outbufstart = outptr;
return res;
}
Modified: trunk/libc/include/alloca.h
==============================================================================
--- trunk/libc/include/alloca.h (original)
+++ trunk/libc/include/alloca.h Thu Feb 5 06:29:56 2009
@@ -46,4 +46,17 @@
__alloca (((len) = (newlen)))
#endif
+#if defined stackinfo_get_sp && defined stackinfo_sub_sp
+# define alloca_account(size, avar) \
+ ({ void *old__ = stackinfo_get_sp (); \
+ void *m__ = __alloca (size); \
+ avar += stackinfo_sub_sp (old__); \
+ m__; })
+#else
+# define alloca_account(size, avar) \
+ ({ size_t s__ = (size); \
+ avar += s__; \
+ __alloca (s__); })
#endif
+
+#endif
Modified: trunk/libc/libio/Makefile
==============================================================================
--- trunk/libc/libio/Makefile (original)
+++ trunk/libc/libio/Makefile Thu Feb 5 06:29:56 2009
@@ -1,4 +1,4 @@
-# Copyright (C) 1995-2004,2006,2007,2008 Free Software Foundation, Inc.
+# Copyright (C) 1995-2004,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
@@ -76,7 +76,7 @@
+= bug-rewind bug-rewind2 bug-ungetwc1 \
bug-wfflush bug-wmemstream1 tst-fopenloc2 \
tst_getwc \
- tst_putwc tst_wprintf tst_wprintf2 tst_wscanf
+ tst_putwc tst_wprintf tst_wprintf2 tst_wscanf tst-fgetwc
tests-$(OPTION_POSIX_C_LANG_WIDE_CHAR) \
+= tst_swprintf tst_swscanf \
tst-sscanf \
Modified: trunk/libc/libio/wfileops.c
==============================================================================
--- trunk/libc/libio/wfileops.c (original)
+++ trunk/libc/libio/wfileops.c Thu Feb 5 06:29:56 2009
@@ -1,4 +1,4 @@
-/* Copyright (C) 1993,1995,1997-2003,2004, 2006 Free Software Foundation, Inc.
+/* Copyright (C) 1993,1995,1997-2004,2006,2009 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Written by Ulrich Drepper <drepper@xxxxxxxxxx>.
Based on the single byte version by Per Bothner <bothner@xxxxxxxxxx>.
@@ -123,8 +123,6 @@
struct _IO_codecvt *cd;
enum __codecvt_result status;
_IO_ssize_t count;
- int tries;
- const char *read_ptr_copy;
if (__builtin_expect (fp->_flags & _IO_NO_READS, 0))
{
@@ -236,13 +234,15 @@
fp->_wide_data->_IO_write_base = fp->_wide_data->_IO_write_ptr =
fp->_wide_data->_IO_write_end = fp->_wide_data->_IO_buf_base;
- tries = 0;
+ const char *read_ptr_copy;
+ char accbuf[MB_LEN_MAX];
+ size_t naccbuf = 0;
again:
count = _IO_SYSREAD (fp, fp->_IO_read_end,
fp->_IO_buf_end - fp->_IO_read_end);
if (count <= 0)
{
- if (count == 0 && tries == 0)
+ if (count == 0 && naccbuf == 0)
fp->_flags |= _IO_EOF_SEEN;
else
fp->_flags |= _IO_ERR_SEEN, count = 0;
@@ -250,7 +250,7 @@
fp->_IO_read_end += count;
if (count == 0)
{
- if (tries != 0)
+ if (naccbuf != 0)
/* There are some bytes in the external buffer but they don't
convert to anything. */
__set_errno (EILSEQ);
@@ -262,18 +262,31 @@
/* Now convert the read input. */
fp->_wide_data->_IO_last_state = fp->_wide_data->_IO_state;
fp->_IO_read_base = fp->_IO_read_ptr;
+ const char *from = fp->_IO_read_ptr;
+ const char *to = fp->_IO_read_end;
+ size_t to_copy = count;
+ if (__builtin_expect (naccbuf != 0, 0))
+ {
+ to_copy = MIN (sizeof (accbuf) - naccbuf, count);
+ to = __mempcpy (&accbuf[naccbuf], from, to_copy);
+ naccbuf += to_copy;
+ from = accbuf;
+ }
status = (*cd->__codecvt_do_in) (cd, &fp->_wide_data->_IO_state,
- fp->_IO_read_ptr, fp->_IO_read_end,
- &read_ptr_copy,
+ from, to, &read_ptr_copy,
fp->_wide_data->_IO_read_end,
fp->_wide_data->_IO_buf_end,
&fp->_wide_data->_IO_read_end);
- fp->_IO_read_ptr = (char *) read_ptr_copy;
+ if (__builtin_expect (naccbuf != 0, 0))
+ fp->_IO_read_ptr += MAX (0, read_ptr_copy - &accbuf[naccbuf - to_copy]);
+ else
+ fp->_IO_read_ptr = (char *) read_ptr_copy;
if (fp->_wide_data->_IO_read_end == fp->_wide_data->_IO_buf_base)
{
- if (status == __codecvt_error || fp->_IO_read_end == fp->_IO_buf_end)
- {
+ if (status == __codecvt_error)
+ {
+ out_eilseq:
__set_errno (EILSEQ);
fp->_flags |= _IO_ERR_SEEN;
return WEOF;
@@ -281,7 +294,40 @@
/* The read bytes make no complete character. Try reading again. */
assert (status == __codecvt_partial);
- ++tries;
+
+ if (naccbuf == 0)
+ {
+ if (fp->_IO_read_base < fp->_IO_read_ptr)
+ {
+ /* Partially used the buffer for some input data that
+ produces no output. */
+ size_t avail = fp->_IO_read_end - fp->_IO_read_ptr;
+ memmove (fp->_IO_read_base, fp->_IO_read_ptr, avail);
+ fp->_IO_read_ptr = fp->_IO_read_base;
+ fp->_IO_read_end -= avail;
+ goto again;
+ }
+ naccbuf = fp->_IO_read_end - fp->_IO_read_ptr;
+ if (naccbuf >= sizeof (accbuf))
+ goto out_eilseq;
+
+ memcpy (accbuf, fp->_IO_read_ptr, naccbuf);
+ }
+ else
+ {
+ size_t used = read_ptr_copy - accbuf;
+ if (used > 0)
+ {
+ memmove (accbuf, read_ptr_copy, naccbuf - used);
+ naccbuf -= used;
+ }
+
+ if (naccbuf == sizeof (accbuf))
+ goto out_eilseq;
+ }
+
+ fp->_IO_read_ptr = fp->_IO_read_end = fp->_IO_read_base;
+
goto again;
}
Modified: trunk/libc/localedata/ChangeLog
==============================================================================
--- trunk/libc/localedata/ChangeLog (original)
+++ trunk/libc/localedata/ChangeLog Thu Feb 5 06:29:56 2009
@@ -1,3 +1,12 @@
+2009-01-28 Ulrich Drepper <drepper@xxxxxxxxxx>
+
+ * locales/as_IN: Break circular include loops introduced in last patch.
+ * locales/bn_BD: Likewise.
+ * locales/bn_IN: Likewise.
+ * locales/hi_IN: Likewise.
+ * locales/mr_IN: Likewise.
+ Patch by Pravin Satpute <psatpute@xxxxxxxxxx>.
+
2009-01-08 Ulrich Drepper <drepper@xxxxxxxxxx>
[BZ #9701]
Modified: trunk/libc/localedata/locales/as_IN
==============================================================================
--- trunk/libc/localedata/locales/as_IN (original)
+++ trunk/libc/localedata/locales/as_IN Thu Feb 5 06:29:56 2009
@@ -32,11 +32,7 @@
%%%%%%%%%%%%%
LC_CTYPE
-copy "bn_IN"
-
-translit_start
-include "translit_combining";""
-translit_end
+copy "bn_BD"
END LC_CTYPE
%%%%%%%%%%%%%
Modified: trunk/libc/localedata/locales/bn_BD
==============================================================================
--- trunk/libc/localedata/locales/bn_BD (original)
+++ trunk/libc/localedata/locales/bn_BD Thu Feb 5 06:29:56 2009
@@ -37,7 +37,24 @@
END LC_COLLATE
LC_CTYPE
-copy "bn_IN"
+copy "i18n"
+
+% Bengali uses the alternate digits U+09E6..U+09EF
+outdigit <U09E6>..<U09EF>
+
+% This is used in the scanf family of functions to read Bengali numbers
+% using "%Id" and such.
+map to_inpunct; /
+ (<U0030>,<U09E6>); /
+ (<U0031>,<U09E7>); /
+ (<U0032>,<U09E8>); /
+ (<U0033>,<U09E9>); /
+ (<U0034>,<U09EA>); /
+ (<U0035>,<U09EB>); /
+ (<U0036>,<U09EC>); /
+ (<U0037>,<U09ED>); /
+ (<U0038>,<U09EE>); /
+ (<U0039>,<U09EF>);
translit_start
include "translit_combining";""
Modified: trunk/libc/localedata/locales/bn_IN
==============================================================================
--- trunk/libc/localedata/locales/bn_IN (original)
+++ trunk/libc/localedata/locales/bn_IN Thu Feb 5 06:29:56 2009
@@ -34,28 +34,7 @@
LC_CTYPE
-copy "i18n"
-
-% Bengali uses the alternate digits U+09E6..U+09EF
-outdigit <U09E6>..<U09EF>
-
-% This is used in the scanf family of functions to read Bengali numbers
-% using "%Id" and such.
-map to_inpunct; /
- (<U0030>,<U09E6>); /
- (<U0031>,<U09E7>); /
- (<U0032>,<U09E8>); /
- (<U0033>,<U09E9>); /
- (<U0034>,<U09EA>); /
- (<U0035>,<U09EB>); /
- (<U0036>,<U09EC>); /
- (<U0037>,<U09ED>); /
- (<U0038>,<U09EE>); /
- (<U0039>,<U09EF>);
-
-translit_start
-include "translit_combining";""
-translit_end
+copy "bn_BD"
END LC_CTYPE
Modified: trunk/libc/localedata/locales/hi_IN
==============================================================================
--- trunk/libc/localedata/locales/hi_IN (original)
+++ trunk/libc/localedata/locales/hi_IN Thu Feb 5 06:29:56 2009
@@ -32,7 +32,24 @@
END LC_IDENTIFICATION
LC_CTYPE
-copy "mr_IN"
+copy "i18n"
+
+% Devanagari uses the alternate digits U+0966..U+096F
+outdigit <U0966>..<U096F>
+
+% This is used in the scanf family of functions to read devanagari numbers
+% using "%Id" and such.
+map to_inpunct; /
+ (<U0030>,<U0966>); /
+ (<U0031>,<U0967>); /
+ (<U0032>,<U0968>); /
+ (<U0033>,<U0969>); /
+ (<U0034>,<U096A>); /
+ (<U0035>,<U096B>); /
+ (<U0036>,<U096C>); /
+ (<U0037>,<U096D>); /
+ (<U0038>,<U096E>); /
+ (<U0039>,<U096F>);
translit_start
include "translit_combining";""
Modified: trunk/libc/localedata/locales/mr_IN
==============================================================================
--- trunk/libc/localedata/locales/mr_IN (original)
+++ trunk/libc/localedata/locales/mr_IN Thu Feb 5 06:29:56 2009
@@ -32,28 +32,7 @@
END LC_IDENTIFICATION
LC_CTYPE
-copy "i18n"
-
-% Devanagari uses the alternate digits U+0966..U+096F
-outdigit <U0966>..<U096F>
-
-% This is used in the scanf family of functions to read devanagari numbers
-% using "%Id" and such.
-map to_inpunct; /
- (<U0030>,<U0966>); /
- (<U0031>,<U0967>); /
- (<U0032>,<U0968>); /
- (<U0033>,<U0969>); /
- (<U0034>,<U096A>); /
- (<U0035>,<U096B>); /
- (<U0036>,<U096C>); /
- (<U0037>,<U096D>); /
- (<U0038>,<U096E>); /
- (<U0039>,<U096F>);
-
-translit_start
-include "translit_combining";""
-translit_end
+copy "hi_IN"
END LC_CTYPE
LC_COLLATE
Modified: trunk/libc/malloc/malloc.c
==============================================================================
--- trunk/libc/malloc/malloc.c (original)
+++ trunk/libc/malloc/malloc.c Thu Feb 5 06:29:56 2009
@@ -1,5 +1,5 @@
/* Malloc implementation for multiple threads without lock contention.
- Copyright (C) 1996-2006, 2007, 2008 Free Software Foundation, Inc.
+ Copyright (C) 1996-2006, 2007, 2008, 2009 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Wolfram Gloger <wg@xxxxxxxxx>
and Doug Lea <dl@xxxxxxxxxxxxx>, 2001.
@@ -3189,7 +3189,7 @@
else if (contiguous(av) && old_size && brk < old_end) {
/* Oops! Someone else killed our space.. Can't touch anything. */
- assert(0);
+ malloc_printerr (3, "break adjusted to free malloc space", brk);
}
/*
Modified: trunk/libc/misc/Makefile
==============================================================================
--- trunk/libc/misc/Makefile (original)
+++ trunk/libc/misc/Makefile Thu Feb 5 06:29:56 2009
@@ -1,4 +1,4 @@
-# Copyright (C) 1991-2006, 2007 Free Software Foundation, Inc.
+# Copyright (C) 1991-2006, 2007, 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
@@ -86,7 +86,7 @@
gpl2lgpl := error.c error.h
tests := tst-dirname tst-tsearch tst-fdset tst-efgcvt tst-mntent tst-hsearch \
- tst-pselect tst-insremque tst-mntent2
+ tst-pselect tst-insremque tst-mntent2 bug-hsearch1
tests-$(OPTION_POSIX_WIDE_CHAR_DEVICE_IO) += tst-error1
# eglibc: ifeq (no,$(cross-compiling))
ifeq (y,$(OPTION_POSIX_WIDE_CHAR_DEVICE_IO))
Modified: trunk/libc/misc/hsearch_r.c
==============================================================================
--- trunk/libc/misc/hsearch_r.c (original)
+++ trunk/libc/misc/hsearch_r.c Thu Feb 5 06:29:56 2009
@@ -1,4 +1,4 @@
-/* Copyright (C) 1993,1995-1997,2002,2005,2007,2008
+/* Copyright (C) 1993,1995-1997,2002,2005,2007,2008,2009
Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Ulrich Drepper <drepper@xxxxxxxxxxxxxx>, 1993.
@@ -79,6 +79,10 @@
if (htab->table != NULL)
return 0;
+ /* We need a size of at least 3. Otherwise the hash functions we
+ use will not work. */
+ if (nel < 3)
+ nel = 3;
/* Change nel to the first prime number not smaller as nel. */
nel |= 1; /* make odd */
while (!isprime (nel))
Modified: trunk/libc/misc/sbrk.c
==============================================================================
--- trunk/libc/misc/sbrk.c (original)
+++ trunk/libc/misc/sbrk.c Thu Feb 5 06:29:56 2009
@@ -1,4 +1,4 @@
-/* Copyright (C) 1991,1995,1996,1997,2000,2002 Free Software Foundation, Inc.
+/* Copyright (C) 1991,1995-1997,2000,2002,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
@@ -16,8 +16,9 @@
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
02111-1307 USA. */
+#include <errno.h>
+#include <stdint.h>
#include <unistd.h>
-#include <errno.h>
/* Defined in brk.c. */
extern void *__curbrk;
@@ -47,7 +48,10 @@
return __curbrk;
oldbrk = __curbrk;
- if (__brk (oldbrk + increment) < 0)
+ if ((increment > 0
+ ? ((uintptr_t) oldbrk + (uintptr_t) increment < (uintptr_t) oldbrk)
+ : ((uintptr_t) oldbrk < (uintptr_t) -increment))
+ || __brk (oldbrk + increment) < 0)
return (void *) -1;
return oldbrk;
Modified: trunk/libc/nptl/ChangeLog
==============================================================================
--- trunk/libc/nptl/ChangeLog (original)
+++ trunk/libc/nptl/ChangeLog Thu Feb 5 06:29:56 2009
@@ -1,3 +1,34 @@
+2009-01-29 Ulrich Drepper <drepper@xxxxxxxxxx>
+
+ * sysdeps/pthread/unwind-forcedunwind.c: Encrypt all function
+ pointer variables.
+
+ * allocatestack.c (__free_stacks): Renamed from free_stacks.
+ (__free_stack_cache): Removed. Change callers to call __free_stacks.
+ * init.c (nptl_freeres): New function.
+ (pthread_functions): Initialize ptr_freeres to nptl_freeres.
+ * pthreadP.h: Don't declare __free_stack_cache. Declare __free_stacks.
+ * sysdeps/pthread/unwind-forcedunwind.c (libgcc_s_handle): New
+ variable.
+ (pthread_cancel_init): Depend in libgcc_s_handle for decision to
+ load DSO. Assign last.
+ (__unwind_freeres): New function.
+
+ * allocatestack.c (__reclaim_stacks): Reset in_flight_stack later
+ for better debugging. No need to use stack_list_add here.
+
+2009-01-14 Kaz Kojima <kkojima@xxxxxxxxxxxxxx>
+
+ * sysdeps/unix/sysv/linux/sh/lowlevellock.S
+ (__lll_timedlock_wait): Use FUTEX_WAIT_BITSET|FUTEX_CLOCK_REALTIME
+ instead of computing relative timeout.
+ * sysdeps/unix/sysv/linux/sh/lowlevellock.h: Define
+ FUTEX_CLOCK_REALTIME and FUTEX_BITSET_MATCH_ANY.
+
+2009-01-25 Ulrich Drepper <drepper@xxxxxxxxxx>
+
+ * pthread_mutex_lock.c (__pthread_mutex_lock): Remove unused label out.
+
2009-01-08 Ulrich Drepper <drepper@xxxxxxxxxx>
* sysdeps/pthread/list.h (list_add): Initialize new element first.
Modified: trunk/libc/nptl/allocatestack.c
==============================================================================
--- trunk/libc/nptl/allocatestack.c (original)
+++ trunk/libc/nptl/allocatestack.c Thu Feb 5 06:29:56 2009
@@ -248,8 +248,8 @@
/* Free stacks until cache size is lower than LIMIT. */
-static void
-free_stacks (size_t limit)
+void
+__free_stacks (size_t limit)
{
/* We reduce the size of the cache. Remove the last entries until
the size is below the limit. */
@@ -299,15 +299,7 @@
stack_cache_actsize += stack->stackblock_size;
if (__builtin_expect (stack_cache_actsize > stack_cache_maxsize, 0))
- free_stacks (stack_cache_maxsize);
-}
-
-
-/* This function is called indirectly from the freeres code in libc. */
-void
-__free_stack_cache (void)
-{
- free_stacks (0);
+ __free_stacks (stack_cache_maxsize);
}
@@ -849,8 +841,6 @@
elem->next->prev = elem->prev;
elem->prev->next = elem->next;
}
-
- in_flight_stack = 0;
}
/* Mark all stacks except the still running one as free. */
@@ -913,10 +903,12 @@
if (__builtin_expect (THREAD_GETMEM (self, user_stack), 0))
list_add (&self->list, &__stack_user);
else
- stack_list_add (&self->list, &stack_used);
+ list_add (&self->list, &stack_used);
/* There is one thread running. */
__nptl_nthreads = 1;
+
+ in_flight_stack = 0;
/* Initialize the lock. */
stack_cache_lock = LLL_LOCK_INITIALIZER;
Modified: trunk/libc/nptl/init.c
==============================================================================
--- trunk/libc/nptl/init.c (original)
+++ trunk/libc/nptl/init.c Thu Feb 5 06:29:56 2009
@@ -66,6 +66,8 @@
#ifndef SHARED
extern void __libc_setup_tls (size_t tcbsize, size_t tcbalign);
#endif
+
+static void nptl_freeres (void);
#ifdef SHARED
@@ -128,12 +130,24 @@
.ptr__nptl_deallocate_tsd = __nptl_deallocate_tsd,
.ptr__nptl_setxid = __nptl_setxid,
/* For now only the stack cache needs to be freed. */
- .ptr_freeres = __free_stack_cache
+ .ptr_freeres = nptl_freeres
};
# define ptr_pthread_functions &pthread_functions
#else
# define ptr_pthread_functions NULL
#endif
+
+
+/* This function is called indirectly from the freeres code in libc. */
+static void
+__libc_freeres_fn_section
+nptl_freeres (void)
+{
+#ifdef SHARED
+ __unwind_freeres ();
+#endif
+ __free_stacks (0);
+}
/* For asynchronous cancellation we use a signal. This is the handler. */
Modified: trunk/libc/nptl/pthreadP.h
==============================================================================
--- trunk/libc/nptl/pthreadP.h (original)
+++ trunk/libc/nptl/pthreadP.h Thu Feb 5 06:29:56 2009
@@ -1,4 +1,4 @@
-/* Copyright (C) 2002,2003,2004,2005,2006,2007 Free Software Foundation, Inc.
+/* Copyright (C) 2002-2007, 2009 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Ulrich Drepper <drepper@xxxxxxxxxx>, 2002.
@@ -247,6 +247,7 @@
hidden_proto (__pthread_unregister_cancel)
# ifdef SHARED
extern void attribute_hidden pthread_cancel_init (void);
+extern void __unwind_freeres (void);
# endif
#endif
@@ -564,7 +565,7 @@
extern int __nptl_setxid (struct xid_command *cmdp) attribute_hidden;
-extern void __free_stack_cache (void) attribute_hidden;
+extern void __free_stacks (size_t limit) attribute_hidden;
extern void __wait_lookup_done (void) attribute_hidden;
Modified: trunk/libc/nptl/pthread_mutex_lock.c
==============================================================================
--- trunk/libc/nptl/pthread_mutex_lock.c (original)
+++ trunk/libc/nptl/pthread_mutex_lock.c Thu Feb 5 06:29:56 2009
@@ -121,7 +121,6 @@
goto simple;
}
- out:
/* Record the ownership. */
mutex->__data.__owner = id;
#ifndef NO_INCR
Modified: trunk/libc/nptl/sysdeps/pthread/unwind-forcedunwind.c
==============================================================================
--- trunk/libc/nptl/sysdeps/pthread/unwind-forcedunwind.c (original)
+++ trunk/libc/nptl/sysdeps/pthread/unwind-forcedunwind.c Thu Feb 5 06:29:56 2009
@@ -1,4 +1,4 @@
-/* Copyright (C) 2003, 2005, 2006 Free Software Foundation, Inc.
+/* Copyright (C) 2003, 2005, 2006, 2009 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Jakub Jelinek <jakub@xxxxxxxxxx>.
@@ -21,7 +21,9 @@
#include <stdio.h>
#include <unwind.h>
#include <pthreadP.h>
+#include <sysdep.h>
+static void *libgcc_s_handle;
static void (*libgcc_s_resume) (struct _Unwind_Exception *exc);
static _Unwind_Reason_Code (*libgcc_s_personality)
(int, _Unwind_Action, _Unwind_Exception_Class, struct _Unwind_Exception *,
@@ -34,10 +36,13 @@
__attribute_noinline__
pthread_cancel_init (void)
{
- void *resume, *personality, *forcedunwind, *getcfa;
+ void *resume;
+ void *personality;
+ void *forcedunwind;
+ void *getcfa;
void *handle;
- if (__builtin_expect (libgcc_s_getcfa != NULL, 1))
+ if (__builtin_expect (libgcc_s_handle != NULL, 1))
{
/* Force gcc to reload all values. */
asm volatile ("" ::: "memory");
@@ -58,23 +63,42 @@
)
__libc_fatal ("libgcc_s.so.1 must be installed for pthread_cancel to work\n");
+ PTR_MANGLE (resume);
libgcc_s_resume = resume;
+ PTR_MANGLE (personality);
libgcc_s_personality = personality;
+ PTR_MANGLE (forcedunwind);
libgcc_s_forcedunwind = forcedunwind;
- /* Make sure libgcc_s_getcfa is written last. Otherwise,
+ PTR_MANGLE (getcfa);
+ libgcc_s_getcfa = getcfa;
+ /* Make sure libgcc_s_handle is written last. Otherwise,
pthread_cancel_init might return early even when the pointer the
caller is interested in is not initialized yet. */
atomic_write_barrier ();
- libgcc_s_getcfa = getcfa;
+ libgcc_s_handle = handle;
+}
+
+void
+__libc_freeres_fn_section
+__unwind_freeres (void)
+{
+ void *handle = libgcc_s_handle;
+ if (handle != NULL)
+ {
+ libgcc_s_handle = NULL;
+ __libc_dlclose (handle);
+ }
}
void
_Unwind_Resume (struct _Unwind_Exception *exc)
{
- if (__builtin_expect (libgcc_s_resume == NULL, 0))
+ if (__builtin_expect (libgcc_s_handle == NULL, 0))
pthread_cancel_init ();
- libgcc_s_resume (exc);
+ void (*resume) (struct _Unwind_Exception *exc) = libgcc_s_resume;
+ PTR_DEMANGLE (resume);
+ resume (exc);
}
_Unwind_Reason_Code
@@ -83,28 +107,37 @@
struct _Unwind_Exception *ue_header,
struct _Unwind_Context *context)
{
- if (__builtin_expect (libgcc_s_personality == NULL, 0))
+ if (__builtin_expect (libgcc_s_handle == NULL, 0))
pthread_cancel_init ();
- return libgcc_s_personality (version, actions, exception_class,
- ue_header, context);
+ _Unwind_Reason_Code (*personality)
+ (int, _Unwind_Action, _Unwind_Exception_Class, struct _Unwind_Exception *,
+ struct _Unwind_Context *) = libgcc_s_personality;
+ PTR_DEMANGLE (personality);
+ return personality (version, actions, exception_class, ue_header, context);
}
_Unwind_Reason_Code
_Unwind_ForcedUnwind (struct _Unwind_Exception *exc, _Unwind_Stop_Fn stop,
void *stop_argument)
{
- if (__builtin_expect (libgcc_s_forcedunwind == NULL, 0))
+ if (__builtin_expect (libgcc_s_handle == NULL, 0))
pthread_cancel_init ();
- return libgcc_s_forcedunwind (exc, stop, stop_argument);
+ _Unwind_Reason_Code (*forcedunwind)
+ (struct _Unwind_Exception *, _Unwind_Stop_Fn, void *)
+ = libgcc_s_forcedunwind;
+ PTR_DEMANGLE (forcedunwind);
+ return forcedunwind (exc, stop, stop_argument);
}
_Unwind_Word
_Unwind_GetCFA (struct _Unwind_Context *context)
{
- if (__builtin_expect (libgcc_s_getcfa == NULL, 0))
+ if (__builtin_expect (libgcc_s_handle == NULL, 0))
pthread_cancel_init ();
- return libgcc_s_getcfa (context);
+ _Unwind_Word (*getcfa) (struct _Unwind_Context *) = libgcc_s_getcfa;
+ PTR_DEMANGLE (getcfa);
+ return getcfa (context);
}
Modified: trunk/libc/nptl/sysdeps/unix/sysv/linux/sh/lowlevellock.S
==============================================================================
--- trunk/libc/nptl/sysdeps/unix/sysv/linux/sh/lowlevellock.S (original)
+++ trunk/libc/nptl/sysdeps/unix/sysv/linux/sh/lowlevellock.S Thu Feb 5 06:29:56 2009
@@ -1,4 +1,4 @@
-/* Copyright (C) 2003, 2004, 2005, 2007, 2008
+/* Copyright (C) 2003, 2004, 2005, 2007, 2008, 2009
Free Software Foundation, Inc.
This file is part of the GNU C Library.
@@ -36,6 +36,13 @@
mov #(FUTEX_WAIT | FUTEX_PRIVATE_FLAG), tmp; \
extu.b tmp, tmp; \
xor tmp, reg
+# define LOAD_FUTEX_WAIT_ABS(reg,tmp,tmp2) \
+ mov #(FUTEX_WAIT_BITSET | FUTEX_PRIVATE_FLAG), tmp; \
+ extu.b tmp, tmp; \
+ mov #(FUTEX_CLOCK_REALTIME >> 8), tmp2; \
+ swap.b tmp2, tmp2; \
+ or tmp2, tmp; \
+ xor tmp, reg
# define LOAD_FUTEX_WAKE(reg,tmp,tmp2) \
mov #(FUTEX_WAKE | FUTEX_PRIVATE_FLAG), tmp; \
extu.b tmp, tmp; \
@@ -95,6 +102,22 @@
xor tmp, reg ; \
and tmp2, reg ; \
mov #FUTEX_WAIT, tmp ; \
+ or tmp, reg
+# define LOAD_FUTEX_WAIT_ABS(reg,tmp,tmp2) \
+ stc gbr, tmp ; \
+ mov.w 99f, tmp2 ; \
+ add tmp2, tmp ; \
+ mov.l @tmp, tmp2 ; \
+ bra 98f ; \
+ mov #FUTEX_PRIVATE_FLAG, tmp ; \
+99: .word PRIVATE_FUTEX - TLS_PRE_TCB_SIZE ; \
+98: extu.b tmp, tmp ; \
+ xor tmp, reg ; \
+ and tmp2, reg ; \
+ mov #FUTEX_WAIT_BITSET, tmp ; \
+ mov #(FUTEX_CLOCK_REALTIME >> 8), tmp2; \
+ swap.b tmp2, tmp2; \
+ or tmp2, tmp; \
or tmp, reg
# endif
# define LOAD_FUTEX_WAKE(reg,tmp,tmp2) \
@@ -193,12 +216,85 @@
cfi_endproc
.size __lll_lock_wait,.-__lll_lock_wait
+ /* r5 (r8): futex
+ r7 (r11): flags
+ r6 (r9): timeout
+ r4 (r10): futex value
+ */
.globl __lll_timedlock_wait
.type __lll_timedlock_wait,@function
.hidden __lll_timedlock_wait
.align 5
cfi_startproc
__lll_timedlock_wait:
+ mov.l r12, @-r15
+ cfi_adjust_cfa_offset(4)
+ cfi_rel_offset (r12, 0)
+
+# ifndef __ASSUME_FUTEX_CLOCK_REALTIME
+ mov.l .Lhave, r1
+# ifdef PIC
+ mova .Lgot, r0
+ mov.l .Lgot, r12
+ add r0, r12
+ add r12, r1
+# endif
+ mov.l @r1, r0
+ tst r0, r0
+ bt .Lreltmo
+# endif
+
+ mov r4, r2
+ mov r5, r4
+ mov r7, r5
+ mov r6, r7
+ LOAD_FUTEX_WAIT_ABS (r5, r0, r1)
+
+ mov #2, r6
+ cmp/eq r6, r2
+ bf/s 2f
+ mov r2, r6
+
+1:
+ mov #2, r6
+ mov #-1, r1
+ mov #SYS_futex, r3
+ extu.b r3, r3
+ trapa #0x16
+ SYSCALL_INST_PAD
+ mov r0, r6
+
+2:
+ XCHG (r2, @r4, r3) /* NB: lock is implied */
+
+ tst r3, r3
+ bt/s 3f
+ mov r6, r0
+
+ cmp/eq #-ETIMEDOUT, r0
+ bt 4f
+ cmp/eq #-EINVAL, r0
+ bf 1b
+4:
+ neg r0, r3
+3:
+ mov r3, r0
+ rts
+ mov.l @r15+, r12
+
+ .align 2
+# ifdef PIC
+.Lgot:
+ .long _GLOBAL_OFFSET_TABLE_
+.Lhave:
+ .long __have_futex_clock_realtime@GOTOFF
+# else
+.Lhave:
+ .long __have_futex_clock_realtime
+# endif
+
+# ifndef __ASSUME_FUTEX_CLOCK_REALTIME
+.Lreltmo:
/* Check for a valid timeout value. */
mov.l @(4,r6), r1
mov.l .L1g, r0
@@ -290,12 +386,15 @@
mov.l @r15+, r8
mov.l @r15+, r9
mov.l @r15+, r10
- rts
- mov.l @r15+, r11
+ mov.l @r15+, r11
+ rts
+ mov.l @r15+, r12
3:
+ mov.l @r15+, r12
rts
mov #EINVAL, r0
+# endif
cfi_endproc
.L1k:
Modified: trunk/libc/nptl/sysdeps/unix/sysv/linux/sh/lowlevellock.h
==============================================================================
--- trunk/libc/nptl/sysdeps/unix/sysv/linux/sh/lowlevellock.h (original)
+++ trunk/libc/nptl/sysdeps/unix/sysv/linux/sh/lowlevellock.h Thu Feb 5 06:29:56 2009
@@ -1,4 +1,5 @@
-/* Copyright (C) 2003, 2004, 2006, 2007, 2008 Free Software Foundation, Inc.
+/* Copyright (C) 2003, 2004, 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
@@ -37,6 +38,9 @@
#define FUTEX_WAIT_BITSET 9
#define FUTEX_WAKE_BITSET 10
#define FUTEX_PRIVATE_FLAG 128
+#define FUTEX_CLOCK_REALTIME 256
+
+#define FUTEX_BITSET_MATCH_ANY 0xffffffff
#define FUTEX_OP_CLEAR_WAKE_IF_GT_ONE ((4 << 24) | 1)
Modified: trunk/libc/nscd/connections.c
==============================================================================
--- trunk/libc/nscd/connections.c (original)
+++ trunk/libc/nscd/connections.c Thu Feb 5 06:29:56 2009
@@ -1,5 +1,5 @@
/* Inner loops of cache daemon.
- Copyright (C) 1998-2007, 2008 Free Software Foundation, Inc.
+ Copyright (C) 1998-2007, 2008, 2009 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Ulrich Drepper <drepper@xxxxxxxxxx>, 1998.
@@ -647,6 +647,9 @@
if (fd != -1)
close (fd);
}
+ else if (errno == EACCES)
+ error (EXIT_FAILURE, 0, _("cannot access '%s'"),
+ dbs[cnt].db_filename);
}
if (dbs[cnt].head == NULL)
Modified: trunk/libc/nscd/mem.c
==============================================================================
--- trunk/libc/nscd/mem.c (original)
+++ trunk/libc/nscd/mem.c Thu Feb 5 06:29:56 2009
@@ -1,5 +1,5 @@
/* Cache memory handling.
- Copyright (C) 2004, 2005, 2006, 2008 Free Software Foundation, Inc.
+ Copyright (C) 2004, 2005, 2006, 2008, 2009 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Ulrich Drepper <drepper@xxxxxxxxxx>, 2004.
@@ -134,12 +134,11 @@
stack_used = 0;
size_t nmark = (db->head->first_free / BLOCK_ALIGN + BITS - 1) / BITS;
size_t memory_needed = nmark * sizeof (BITMAP_T);
- if (stack_used + memory_needed <= MAX_STACK_USE)
- {
- mark = (BITMAP_T *) alloca (memory_needed);
+ if (__builtin_expect (stack_used + memory_needed <= MAX_STACK_USE, 1))
+ {
+ mark = (BITMAP_T *) alloca_account (memory_needed, stack_used);
mark_use_malloc = false;
memset (mark, '\0', memory_needed);
- stack_used += memory_needed;
}
else
{
@@ -153,19 +152,17 @@
struct hashentry **he;
struct hashentry **he_data;
bool he_use_malloc;
- if (stack_used + memory_needed <= MAX_STACK_USE)
- {
- he = alloca (db->head->nentries * sizeof (struct hashentry *));
- he_data = alloca (db->head->nentries * sizeof (struct hashentry *));
+ if (__builtin_expect (stack_used + memory_needed <= MAX_STACK_USE, 1))
+ {
+ he = alloca_account (memory_needed, stack_used);
he_use_malloc = false;
- stack_used += memory_needed;
}
else
{
he = xmalloc (memory_needed);
- he_data = &he[db->head->nentries * sizeof (struct hashentry *)];
he_use_malloc = true;
}
+ he_data = &he[db->head->nentries];
size_t cnt = 0;
for (size_t idx = 0; idx < db->head->module; ++idx)
@@ -373,11 +370,9 @@
ref_t disp = off_alloc - off_free;
struct moveinfo *new_move;
- if (stack_used + sizeof (*new_move) <= MAX_STACK_USE)
- {
- new_move = alloca (sizeof (*new_move));
- stack_used += sizeof (*new_move);
- }
+ if (__builtin_expect (stack_used + sizeof (*new_move) <= MAX_STACK_USE,
+ 1))
+ new_move = alloca_account (sizeof (*new_move), stack_used);
else
new_move = obstack_alloc (&ob, sizeof (*new_move));
new_move->from = db->data + off_alloc;
Modified: trunk/libc/nss/getent.c
==============================================================================
--- trunk/libc/nss/getent.c (original)
+++ trunk/libc/nss/getent.c Thu Feb 5 06:29:56 2009
@@ -454,8 +454,6 @@
putchar_unlocked (' ');
fputs_unlocked (net->n_aliases[i], stdout);
++i;
- if (net->n_aliases[i] != NULL)
- putchar_unlocked (',');
}
putchar_unlocked ('\n');
}
Modified: trunk/libc/po/ru.po
==============================================================================
--- trunk/libc/po/ru.po (original)
+++ trunk/libc/po/ru.po Thu Feb 5 06:29:56 2009
@@ -1,150 +1,155 @@
-# ÐÅÒÅ×ÏÄ ÓÏÏÂÝÅÎÉÊ GNU libc
+# Translation of libc messages to Russian
# Copyright (C) 2005 Free Software Foundation, Inc.
+# This file is distributed under the same license as the glibc package.
+#
# Oleg Tihonov <ost@xxxxxxxxxx>, 2005, 2007.
+# Dimitriy Ryazantcev <DJm00n@xxxxxxx>, 2009.
+# Pavel Maryanov <acid_jack@xxxxxxx>, 2009.
#
msgid ""
msgstr ""
-"Project-Id-Version: libc 2.5\n"
-"POT-Creation-Date: 2006-09-29 11:38-0700\n"
-"PO-Revision-Date: 2007-02-13 13:52+0300\n"
-"Last-Translator: Oleg Tihonov <ost@xxxxxxxxxx>\n"
-"Language-Team: Russian <ru@xxxxxx>\n"
+"Project-Id-Version: libc 2.7\n"
+"POT-Creation-Date: 2007-10-15 21:18-0700\n"
+"PO-Revision-Date: 2009-02-04 21:52+0200\n"
+"Last-Translator: Pavel Maryanov <acid_jack@xxxxxxx>\n"
+"Language-Team: Russian <gnu@xxxxx>\n"
"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=koi8-r\n"
+"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
-
-#: argp/argp-help.c:227
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+#: argp/argp-help.c:228
#, c-format
msgid "%.*s: ARGP_HELP_FMT parameter requires a value"
-msgstr "%.*s: ÐÁÒÁÍÅÔÒ ARGP_HELP_FMT ÔÒÅÂÕÅÔ ÚÎÁÞÅÎÉÅ"
-
-#: argp/argp-help.c:237
+msgstr "%.*s: паÑамеÑÑ ARGP_HELP_FMT ÑÑебÑÐµÑ Ð·Ð½Ð°Ñение"
+
+#: argp/argp-help.c:238
#, c-format
msgid "%.*s: Unknown ARGP_HELP_FMT parameter"
-msgstr "%.*s: ÎÅÉÚ×ÅÓÔÎÙÊ ÐÁÒÁÍÅÔÒ ARGP_HELP_FMT"
-
-#: argp/argp-help.c:250
+msgstr "%.*s: неизвеÑÑнÑй паÑамеÑÑ ARGP_HELP_FMT"
+
+#: argp/argp-help.c:251
#, c-format
msgid "Garbage in ARGP_HELP_FMT: %s"
-msgstr "íÕÓÏÒ × ARGP_HELP_FMT: %s"
-
-#: argp/argp-help.c:1214
+msgstr "ÐÑÑÐ¾Ñ Ð² ARGP_HELP_FMT: %s"
+
+#: argp/argp-help.c:1215
msgid "Mandatory or optional arguments to long options are also mandatory or optional for any corresponding short options."
-msgstr "ïÂÑÚÁÔÅÌØÎÙÅ ÉÌÉ ÎÅÏÂÑÚÁÔÅÌØÎÙÅ ÁÒÇÕÍÅÎÔÙ ÄÌÑ ÄÌÉÎÎÙÈ ËÌÀÞÅÊ ÔÁËÖÅ Ñ×ÌÑÀÔÓÑ ÏÂÑÚÁÔÅÌØÎÙÍÉ ÉÌÉ ÎÅÏÂÑÚÁÔÅÌØÎÙÍÉ ÄÌÑ ÓÏÏÔ×ÅÔÓÔ×ÕÀÝÉÈ ËÏÒÏÔËÉÈ ËÌÀÞÅÊ."
-
-#: argp/argp-help.c:1600
+msgstr "ÐбÑзаÑелÑнÑе или необÑзаÑелÑнÑе аÑгÑменÑÑ Ð´Ð»Ñ Ð´Ð»Ð¸Ð½Ð½ÑÑ
клÑÑей Ñакже ÑвлÑÑÑÑÑ Ð¾Ð±ÑзаÑелÑнÑми или необÑзаÑелÑнÑми Ð´Ð»Ñ ÑооÑвеÑÑÑвÑÑÑиÑ
коÑоÑкиÑ
клÑÑей."
+
+#: argp/argp-help.c:1601
msgid "Usage:"
-msgstr "éÓÐÏÌØÚÏ×ÁÎÉÅ:"
-
-#: argp/argp-help.c:1604
+msgstr "ÐÑполÑзование:"
+
+#: argp/argp-help.c:1605
msgid " or: "
-msgstr " ÉÌÉ: "
-
-#: argp/argp-help.c:1616
+msgstr " или: "
+
+#: argp/argp-help.c:1617
msgid " [OPTION...]"
-msgstr " [ëìàþ...]"
-
-#: argp/argp-help.c:1643
+msgstr " [ÐÐЮЧ...]"
+
+#: argp/argp-help.c:1644
#, c-format
msgid "Try `%s --help' or `%s --usage' for more information.\n"
-msgstr "ðÏÐÒÏÂÕÊÔÅ `%s --help' ÉÌÉ `%s --usage' ÄÌÑ ÐÏÌÕÞÅÎÉÑ ÂÏÌÅÅ ÐÏÄÒÏÂÎÏÇÏ ÏÐÉÓÁÎÉÑ.\n"
-
-#: argp/argp-help.c:1671
+msgstr "ÐопÑобÑйÑе «%s --help» или «%s --usage» Ð´Ð»Ñ Ð¿Ð¾Ð»ÑÑÐµÐ½Ð¸Ñ Ð±Ð¾Ð»ÐµÐµ подÑобного опиÑаниÑ.\n"
+
+#: argp/argp-help.c:1672
#, c-format
msgid "Report bugs to %s.\n"
-msgstr "óÏÏÂÝÅÎÉÑ Ï ÏÛÉÂËÁÈ ÏÔÐÒÁ×ÌÑÊÔÅ ÐÏ ÁÄÒÅÓÕ %s.\n"
+msgstr "СообÑÐµÐ½Ð¸Ñ Ð¾Ð± оÑибкаÑ
оÑпÑавлÑйÑе по адÑеÑÑ %s.\n"
#: argp/argp-parse.c:102
msgid "Give this help list"
-msgstr "÷ÙÄÁÅÔ ÜÔÏÔ ÓÐÒÁ×ÏÞÎÙÊ ÓÐÉÓÏË"
+msgstr "ÐÑÐ´Ð°ÐµÑ ÑÑÐ¾Ñ ÑпÑавоÑнÑй ÑпиÑок"
#: argp/argp-parse.c:103
msgid "Give a short usage message"
-msgstr "÷ÙÄÁÅÔ ËÒÁÔËÕÀ ÉÎÆÏÒÍÁÃÉÀ Ï ÉÓÐÏÌØÚÏ×ÁÎÉÉ"
+msgstr "ÐÑÐ´Ð°ÐµÑ ÐºÑаÑкÑÑ Ð¸Ð½ÑоÑмаÑÐ¸Ñ Ð¾Ð± иÑполÑзовании"
#: argp/argp-parse.c:104
msgid "Set the program name"
-msgstr "õÓÔÁÎÁ×ÌÉ×ÁÅÔ ÉÍÑ ÐÒÏÇÒÁÍÍÙ"
+msgstr "УÑÑÐ°Ð½Ð°Ð²Ð»Ð¸Ð²Ð°ÐµÑ Ð¸Ð¼Ñ Ð¿ÑогÑаммÑ"
#: argp/argp-parse.c:106
msgid "Hang for SECS seconds (default 3600)"
-msgstr "÷ÉÓÉÔ ÕËÁÚÁÎÎÏÅ ÞÉÓÌÏ ÓÅËÕÎÄ (ÐÏ ÕÍÏÌÞÁÎÉÀ 3600)"
+msgstr "ÐиÑÐ¸Ñ Ñказанное ÑиÑло ÑекÑнд (по ÑмолÑÐ°Ð½Ð¸Ñ 3600)"
#: argp/argp-parse.c:167
msgid "Print program version"
-msgstr "ðÅÞÁÔÁÅÔ ×ÅÒÓÉÀ ÐÒÏÇÒÁÍÍÙ"
+msgstr "ÐеÑаÑÐ°ÐµÑ Ð²ÐµÑÑÐ¸Ñ Ð¿ÑогÑаммÑ"
#: argp/argp-parse.c:183
msgid "(PROGRAM ERROR) No version known!?"
-msgstr "(ïûéâëá ðòïçòáííù) ÷ÅÒÓÉÑ ÎÅÉÚ×ÅÓÔÎÁ!?"
+msgstr "(ÐШÐÐÐÐ ÐÐ ÐÐÐ ÐÐÐЫ) ÐеÑÑÐ¸Ñ Ð½ÐµÐ¸Ð·Ð²ÐµÑÑна!?"
#: argp/argp-parse.c:623
#, c-format
msgid "%s: Too many arguments\n"
-msgstr "%s: óÌÉÛËÏÍ ÍÎÏÇÏ ÁÒÇÕÍÅÎÔÏ×\n"
+msgstr "%s: СлиÑком много аÑгÑменÑов\n"
#: argp/argp-parse.c:766
msgid "(PROGRAM ERROR) Option should have been recognized!?"
-msgstr "(ïûéâëá ðòïçòáííù) ëÌÀÞ ÄÏÌÖÅÎ ÂÙÔØ ÒÁÓÐÏÚÎÁÎ!?"
+msgstr "(ÐШÐÐÐÐ ÐÐ ÐÐÐ ÐÐÐЫ) ÐлÑÑ Ð´Ð¾Ð»Ð¶ÐµÐ½ бÑÑÑ ÑаÑпознан!?"
#: assert/assert-perr.c:57
#, c-format
msgid "%s%s%s:%u: %s%sUnexpected error: %s.\n"
-msgstr "%s%s%s:%u: %s%sîÅÏÖÉÄÁÎÎÁÑ ÏÛÉÂËÁ: %s.\n"
+msgstr "%s%s%s:%u: %s%sÐÐµÐ¾Ð¶Ð¸Ð´Ð°Ð½Ð½Ð°Ñ Ð¾Ñибка: %s.\n"
#: assert/assert.c:57
#, c-format
msgid "%s%s%s:%u: %s%sAssertion `%s' failed.\n"
-msgstr "%s%s%s:%u: %s%sðÒÏ×ÅÒÏÞÎÏÅ ÕÔ×ÅÒÖÄÅÎÉÅ `%s' ÎÅ ×ÙÐÏÌÎÅÎÏ.\n"
-
-#: catgets/gencat.c:109 catgets/gencat.c:113 nscd/nscd.c:96 nss/makedb.c:61
+msgstr "%s%s%s:%u: %s%sÐÑовеÑоÑное ÑÑвеÑждение «%s» не вÑполнено.\n"
+
+#: catgets/gencat.c:110 catgets/gencat.c:114 nscd/nscd.c:97 nss/makedb.c:61
msgid "NAME"
-msgstr "æáêì"
-
-#: catgets/gencat.c:110
+msgstr "ФÐÐÐ"
+
+#: catgets/gencat.c:111
msgid "Create C header file NAME containing symbol definitions"
-msgstr "óÏÚÄÁÅÔ ÚÁÇÏÌÏ×ÏÞÎÙÊ æáêì ÎÁ óÉ, ÓÏÄÅÒÖÁÝÉÊ ÏÐÒÅÄÅÌÅÎÉÑ ÓÉÍ×ÏÌÏ×."
-
-#: catgets/gencat.c:112
+msgstr "Ð¡Ð¾Ð·Ð´Ð°ÐµÑ Ð·Ð°Ð³Ð¾Ð»Ð¾Ð²Ð¾ÑнÑй ФÐÐРна Си, ÑодеÑжаÑий опÑÐµÐ´ÐµÐ»ÐµÐ½Ð¸Ñ Ñимволов."
+
+#: catgets/gencat.c:113
msgid "Do not use existing catalog, force new output file"
-msgstr "îÅ ÉÓÐÏÌØÚÏ×ÁÔØ ÓÕÝÅÓÔ×ÕÀÝÉÊ ËÁÔÁÌÏÇ, ÐÒÉÎÕÄÉÔÅÌØÎÏ ÓÏÚÄÁÔØ ÎÏ×ÙÊ ×ÙÈÏÄÎÏÊ ÆÁÊÌ"
-
-#: catgets/gencat.c:113 nss/makedb.c:61
+msgstr "Ðе иÑполÑзоваÑÑ ÑÑÑеÑÑвÑÑÑий каÑалог, пÑинÑдиÑелÑно ÑоздаÑÑ Ð½Ð¾Ð²Ñй вÑÑ
одной Ñайл"
+
+#: catgets/gencat.c:114 nss/makedb.c:61
msgid "Write output to file NAME"
-msgstr "úÁÐÉÓÁÔØ ×Ù×ÏÄ × æáêì"
-
-#: catgets/gencat.c:118
+msgstr "ÐапиÑаÑÑ Ð²Ñвод в ФÐÐÐ"
+
+#: catgets/gencat.c:119
msgid ""
-"Generate message catalog.If INPUT-FILE is -, input is read from standard input. If OUTPUT-FILE\n"
+"Generate message catalog.\vIf INPUT-FILE is -, input is read from standard input. If OUTPUT-FILE\n"
"is -, output is written to standard output.\n"
msgstr ""
-"çÅÎÅÒÉÒÕÅÔ ËÁÔÁÌÏÇ ÓÏÏÂÝÅÎÉÊ.åÓÌÉ ÷èïäîïê-æáêì ÚÁÄÁÎ ËÁË -, ÞÉÔÁÅÔ ÓÔÁÎÄÁÒÔÎÙÊ ××ÏÄ. åÓÌÉ\n"
-"÷ùèïäîïê-æáêì ÚÁÄÁÎ ËÁË -, ÒÅÚÕÌØÔÁÔ ÐÅÞÁÔÁÅÔÓÑ ÎÁ ÓÔÁÎÄÁÒÔÎÙÊ ×Ù×ÏÄ.\n"
-
-#: catgets/gencat.c:123
+"ÐенеÑиÑÑÐµÑ ÐºÐ°Ñалог ÑообÑений.\vÐÑли ÐÐ¥ÐÐÐÐÐ-ФÐÐРзадан как -, ÑиÑÐ°ÐµÑ ÑÑандаÑÑнÑй ввод. ÐÑли\n"
+"ÐЫХÐÐÐÐÐ-ФÐÐРзадан как -, ÑезÑлÑÑÐ°Ñ Ð¿ÐµÑаÑаеÑÑÑ Ð½Ð° ÑÑандаÑÑнÑй вÑвод.\n"
+
+#: catgets/gencat.c:124
msgid ""
"-o OUTPUT-FILE [INPUT-FILE]...\n"
"[OUTPUT-FILE [INPUT-FILE]...]"
msgstr ""
-"-o ÷ùèïäîïê-æáêì [÷èïäîïê-æáêì]...\n"
-"[÷ùèïäîïê-æáêì [÷èïäîïê-æáêì]...]"
-
-#: catgets/gencat.c:231 debug/pcprofiledump.c:199 iconv/iconv_prog.c:410
-#: iconv/iconvconfig.c:379 locale/programs/localedef.c:370
-#: login/programs/pt_chown.c:88 malloc/memusagestat.c:525 nss/makedb.c:231
+"-o ÐЫХÐÐÐÐÐ-ФÐÐÐ [ÐÐ¥ÐÐÐÐÐ-ФÐÐÐ]...\n"
+"[ÐЫХÐÐÐÐÐ-ФÐÐÐ [ÐÐ¥ÐÐÐÐÐ-ФÐÐÐ]...]"
+
+#: catgets/gencat.c:232 debug/pcprofiledump.c:204 iconv/iconv_prog.c:411
+#: iconv/iconvconfig.c:380 locale/programs/localedef.c:371
+#: login/programs/pt_chown.c:88 malloc/memusagestat.c:526 nss/makedb.c:231
msgid ""
"For bug reporting instructions, please see:\n"
"<http://www.gnu.org/software/libc/bugs.html>.\n"
msgstr ""
-"éÎÓÔÒÕËÃÉÉ ÐÏ ÓÏÏÂÝÅÎÉÀ Ï ÏÛÉÂËÁÈ ÓÍÏÔÒÉÔÅ ÎÁ\n"
+"ÐнÑÑÑÑкÑии по ÑообÑÐµÐ½Ð¸Ñ Ð¾Ð± оÑибкаÑ
ÑмоÑÑиÑе на\n"
"<http://www.gnu.org/software/libc/bugs.html>.\n"
-#: catgets/gencat.c:245 debug/xtrace.sh:64 elf/ldconfig.c:285
-#: elf/ldd.bash.in:39 elf/sprof.c:355 iconv/iconv_prog.c:425
-#: iconv/iconvconfig.c:394 locale/programs/locale.c:274
-#: locale/programs/localedef.c:386 login/programs/pt_chown.c:59
-#: malloc/memusage.sh:71 nscd/nscd.c:401 nss/getent.c:83 nss/makedb.c:245
-#: posix/getconf.c:1007
+#: catgets/gencat.c:246 debug/xtrace.sh:64 elf/ldconfig.c:296
+#: elf/ldd.bash.in:39 elf/sprof.c:355 iconv/iconv_prog.c:426
+#: iconv/iconvconfig.c:395 locale/programs/locale.c:275
+#: locale/programs/localedef.c:387 login/programs/pt_chown.c:59
+#: malloc/memusage.sh:71 nscd/nscd.c:406 nss/getent.c:83 nss/makedb.c:245
+#: posix/getconf.c:1012
#, c-format
msgid ""
"Copyright (C) %s Free Software Foundation, Inc.\n"
@@ -152,140 +157,142 @@
"warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n"
msgstr ""
"Copyright (C) %s Free Software Foundation, Inc.\n"
-"üÔÏ Ó×ÏÂÏÄÎÁÑ ÐÒÏÇÒÁÍÍÁ; ÐÏÄÒÏÂÎÏÓÔÉ Ï ÕÓÌÏ×ÉÑÈ ÒÁÓÐÒÏÓÔÒÁÎÅÎÉÑ\n"
-"ÓÍÏÔÒÉÔÅ × ÉÓÈÏÄÎÏÍ ÔÅËÓÔÅ. íÙ îå ÐÒÅÄÏÓÔÁ×ÌÑÅÍ ÇÁÒÁÎÔÉÊ; ÄÁÖÅ ÇÁÒÁÎÔÉÊ\n"
-"ëïííåòþåóëïê ðòéçïäîïóôé ÉÌÉ ðòéçïäîïóôé äìñ ëáëïê-ìéâï ãåìé.\n"
-
-#: catgets/gencat.c:250 debug/xtrace.sh:68 elf/ldconfig.c:290 elf/sprof.c:361
-#: iconv/iconv_prog.c:430 iconv/iconvconfig.c:399 locale/programs/locale.c:279
-#: locale/programs/localedef.c:391 malloc/memusage.sh:75 nscd/nscd.c:406
-#: nss/getent.c:88 nss/makedb.c:250 posix/getconf.c:1012
+"ÐÑо ÑÐ²Ð¾Ð±Ð¾Ð´Ð½Ð°Ñ Ð¿ÑогÑамма; подÑобноÑÑи об ÑÑловиÑÑ
ÑаÑпÑоÑÑÑанениÑ\n"
+"ÑмоÑÑиÑе в иÑÑ
одном ÑекÑÑе. ÐÑ ÐРпÑедоÑÑавлÑем гаÑанÑий; даже гаÑанÑий\n"
+"ÐÐÐÐÐРЧÐСÐÐÐ ÐÐ ÐÐÐÐÐÐСТРили ÐÐ ÐÐÐÐÐÐСТРÐÐЯ ÐÐÐÐÐ-ÐÐÐРЦÐÐÐ.\n"
+
+#: catgets/gencat.c:251 debug/xtrace.sh:68 elf/ldconfig.c:301 elf/sprof.c:361
+#: iconv/iconv_prog.c:431 iconv/iconvconfig.c:400 locale/programs/locale.c:280
+#: locale/programs/localedef.c:392 malloc/memusage.sh:75 nscd/nscd.c:411
+#: nss/getent.c:88 nss/makedb.c:250 posix/getconf.c:1017
#, c-format
msgid "Written by %s.\n"
-msgstr "á×ÔÏÒ ÐÒÏÇÒÁÍÍÙ -- %s.\n"
-
-#: catgets/gencat.c:281
+msgstr "ÐвÑÐ¾Ñ Ð¿ÑогÑÐ°Ð¼Ð¼Ñ -- %s.\n"
+
+#: catgets/gencat.c:282
msgid "*standard input*"
-msgstr "*ÓÔÁÎÄÁÒÔÎÙÊ ××ÏÄ*"
-
-#: catgets/gencat.c:287 iconv/iconv_charmap.c:157 iconv/iconv_prog.c:297
+msgstr "*ÑÑандаÑÑнÑй ввод*"
+
+#: catgets/gencat.c:288 iconv/iconv_charmap.c:158 iconv/iconv_prog.c:298
#: nss/makedb.c:170
#, c-format
msgid "cannot open input file `%s'"
-msgstr "ÎÅ×ÏÚÍÏÖÎÏ ÏÔËÒÙÔØ ×ÈÏÄÎÏÊ ÆÁÊÌ `%s'"
-
-#: catgets/gencat.c:416 catgets/gencat.c:493
+msgstr "невозможно оÑкÑÑÑÑ Ð²Ñ
одной Ñайл «%s»"
+
+#: catgets/gencat.c:417 catgets/gencat.c:494
msgid "illegal set number"
-msgstr "ÎÅ×ÅÒÎÙÊ ÎÏÍÅÒ ÍÎÏÖÅÓÔ×Á"
-
-#: catgets/gencat.c:443
+msgstr "невеÑнÑй Ð½Ð¾Ð¼ÐµÑ Ð¼Ð½Ð¾Ð¶ÐµÑÑва"
+
+#: catgets/gencat.c:444
msgid "duplicate set definition"
-msgstr "ÐÏ×ÔÏÒÎÏÅ ÏÐÒÅÄÅÌÅÎÉÅ ÍÎÏÖÅÓÔ×Á"
-
-#: catgets/gencat.c:445 catgets/gencat.c:622 catgets/gencat.c:676
+msgstr "повÑоÑное опÑеделение множеÑÑва"
+
+#: catgets/gencat.c:446 catgets/gencat.c:623 catgets/gencat.c:677
msgid "this is the first definition"
-msgstr "ÜÔÏ ÐÅÒ×ÏÅ ÏÐÒÅÄÅÌÅÎÉÅ"
-
-#: catgets/gencat.c:521
+msgstr "ÑÑо пеÑвое опÑеделение"
+
+#: catgets/gencat.c:522
#, c-format
msgid "unknown set `%s'"
-msgstr "ÎÅÉÚ×ÅÓÔÎÏÅ ÍÎÏÖÅÓÔ×Ï `%s'"
-
-#: catgets/gencat.c:562
+msgstr "неизвеÑÑное множеÑÑво «%s»"
+
+#: catgets/gencat.c:563
msgid "invalid quote character"
-msgstr "ÎÅ×ÅÒÎÙÊ ÜËÒÁÎÉÒÕÀÝÉÊ ÚÎÁË"
-
-#: catgets/gencat.c:575
+msgstr "невеÑнÑй ÑкÑаниÑÑÑÑий знак"
+
+#: catgets/gencat.c:576
#, c-format
msgid "unknown directive `%s': line ignored"
-msgstr "ÎÅÉÚ×ÅÓÔÎÁÑ ÄÉÒÅËÔÉ×Á `%s': ÓÔÒÏËÁ ÉÇÎÏÒÉÒÏ×ÁÎÁ"
-
-#: catgets/gencat.c:620
+msgstr "неизвеÑÑÐ½Ð°Ñ Ð´Ð¸ÑекÑива «%s»: ÑÑÑока игноÑиÑована"
+
+#: catgets/gencat.c:621
msgid "duplicated message number"
-msgstr "ÐÏ×ÔÏÒÎÙÊ ÎÏÍÅÒ ÓÏÏÂÝÅÎÉÑ"
-
-#: catgets/gencat.c:673
+msgstr "повÑоÑнÑй Ð½Ð¾Ð¼ÐµÑ ÑообÑениÑ"
+
+#: catgets/gencat.c:674
msgid "duplicated message identifier"
-msgstr "ÐÏ×ÔÏÒÎÙÊ ÉÄÅÎÔÉÆÉËÁÔÏÒ ÓÏÏÂÝÅÎÉÑ"
-
-#: catgets/gencat.c:730
+msgstr "повÑоÑнÑй иденÑиÑикаÑÐ¾Ñ ÑообÑениÑ"
+
+#: catgets/gencat.c:731
msgid "invalid character: message ignored"
-msgstr "ÎÅÄÏÐÕÓÔÉÍÙÊ ÚÎÁË: ÓÏÏÂÝÅÎÉÅ ÉÇÎÏÒÉÒÏ×ÁÎÏ"
-
-#: catgets/gencat.c:773
+msgstr "недопÑÑÑимÑй знак: ÑообÑение игноÑиÑовано"
+
+#: catgets/gencat.c:774
msgid "invalid line"
-msgstr "ÎÅ×ÅÒÎÁÑ ÓÔÒÏËÁ"
-
-#: catgets/gencat.c:827
+msgstr "невеÑÐ½Ð°Ñ ÑÑÑока"
+
+#: catgets/gencat.c:828
msgid "malformed line ignored"
-msgstr "ÎÅÐÒÁ×ÉÌØÎÁÑ ÓÔÒÏËÁ ÉÇÎÏÒÉÒÏ×ÁÎÁ"
-
-#: catgets/gencat.c:991 catgets/gencat.c:1032 nss/makedb.c:183
+msgstr "непÑавилÑÐ½Ð°Ñ ÑÑÑока игноÑиÑована"
+
+#: catgets/gencat.c:992 catgets/gencat.c:1033 nss/makedb.c:183
#, c-format
msgid "cannot open output file `%s'"
-msgstr "ÎÅ×ÏÚÍÏÖÎÏ ÏÔËÒÙÔØ ×ÙÈÏÄÎÏÊ ÆÁÊÌ `%s'"
-
-#: catgets/gencat.c:1194 locale/programs/linereader.c:559
+msgstr "невозможно оÑкÑÑÑÑ Ð²ÑÑ
одной Ñайл «%s»"
+
+#: catgets/gencat.c:1195 locale/programs/linereader.c:560
msgid "invalid escape sequence"
-msgstr "ÎÅ×ÅÒÎÁÑ ÕÐÒÁ×ÌÑÀÝÁÑ ÐÏÓÌÅÄÏ×ÁÔÅÌØÎÏÓÔØ"
-
-#: catgets/gencat.c:1216
+msgstr "невеÑÐ½Ð°Ñ ÑпÑавлÑÑÑÐ°Ñ Ð¿Ð¾ÑледоваÑелÑноÑÑÑ"
+
+#: catgets/gencat.c:1217
msgid "unterminated message"
-msgstr "ÎÅÚÁ×ÅÒÛÅÎÎÏÅ ÓÏÏÂÝÅÎÉÅ"
-
-#: catgets/gencat.c:1240
+msgstr "незавеÑÑенное ÑообÑение"
+
+#: catgets/gencat.c:1241
#, c-format
msgid "while opening old catalog file"
-msgstr "ÐÒÉ ÏÔËÒÙÔÉÉ ÓÔÁÒÏÇÏ ÆÁÊÌÁ ËÁÔÁÌÏÇÁ"
-
-#: catgets/gencat.c:1331
+msgstr "пÑи оÑкÑÑÑии ÑÑаÑого Ñайла каÑалога"
+
+#: catgets/gencat.c:1332
#, c-format
msgid "conversion modules not available"
-msgstr "ÍÏÄÕÌÉ ÐÒÅÏÂÒÁÚÏ×ÁÎÉÑ ÎÅÄÏÓÔÕÐÎÙ"
-
-#: catgets/gencat.c:1357
+msgstr "модÑли пÑеобÑÐ°Ð·Ð¾Ð²Ð°Ð½Ð¸Ñ Ð½ÐµÐ´Ð¾ÑÑÑпнÑ"
+
+#: catgets/gencat.c:1358
#, c-format
msgid "cannot determine escape character"
-msgstr "ÎÅ×ÏÚÍÏÖÎÏ ÏÐÒÅÄÅÌÉÔØ ÚÎÁË ×ÙÈÏÄÁ"
-
-#: debug/pcprofiledump.c:52
+msgstr "невозможно опÑеделиÑÑ Ð·Ð½Ð°Ðº вÑÑ
ода"
+
+#: debug/pcprofiledump.c:53
msgid "Don't buffer output"
-msgstr "îÅ ÂÕÆÅÒÉÒÏ×ÁÔØ ×Ù×ÏÄ"
-
-#: debug/pcprofiledump.c:57
+msgstr "Ðе бÑÑеÑиÑоваÑÑ Ð²Ñвод"
+
+#: debug/pcprofiledump.c:58
msgid "Dump information generated by PC profiling."
-msgstr "óÂÒÁÓÙ×ÁÅÔ ÉÎÆÏÒÍÁÃÉÀ, ÓÏÂÒÁÎÎÕÀ ÐÒÉ ÐÒÏÆÉÌÉÒÏ×ÁÎÉÉ PC."
-
-#: debug/pcprofiledump.c:60
+msgstr "СбÑаÑÑÐ²Ð°ÐµÑ Ð¸Ð½ÑоÑмаÑиÑ, ÑобÑаннÑÑ Ð¿Ñи пÑоÑилиÑовании PC."
+
+#: debug/pcprofiledump.c:61
msgid "[FILE]"
-msgstr "[æáêì]"
-
-#: debug/pcprofiledump.c:100
+msgstr "[ФÐÐÐ]"
+
+#: debug/pcprofiledump.c:104
#, c-format
msgid "cannot open input file"
-msgstr "ÎÅ×ÏÚÍÏÖÎÏ ÏÔËÒÙÔØ ×ÈÏÄÎÏÊ ÆÁÊÌ"
-
-#: debug/pcprofiledump.c:106
+msgstr "невозможно оÑкÑÑÑÑ Ð²Ñ
одной Ñайл"
+
+#: debug/pcprofiledump.c:111
#, c-format
msgid "cannot read header"
-msgstr "ÎÅ×ÏÚÍÏÖÎÏ ÓÞÉÔÁÔØ ÚÁÇÏÌÏ×ÏË"
-
-#: debug/pcprofiledump.c:170
+msgstr "невозможно ÑÑиÑаÑÑ Ð·Ð°Ð³Ð¾Ð»Ð¾Ð²Ð¾Ðº"
+
+#: debug/pcprofiledump.c:175
#, c-format
msgid "invalid pointer size"
-msgstr "ÎÅ×ÅÒÎÙÊ ÒÁÚÍÅÒ ÕËÁÚÁÔÅÌÑ"
+msgstr "невеÑнÑй ÑÐ°Ð·Ð¼ÐµÑ ÑказаÑелÑ"
#: debug/xtrace.sh:27 debug/xtrace.sh:45
msgid "Usage: xtrace [OPTION]... PROGRAM [PROGRAMOPTION]...\\n"
-msgstr "éÓÐÏÌØÚÏ×ÁÎÉÅ: xtrace [ëìàþ]... ðòïçòáííá [ëìàþ-ðòïçòáííù]...\\n"
+msgstr "ÐÑполÑзование: xtrace [ÐÐЮЧ]... ÐÐ ÐÐÐ ÐÐÐÐ [ÐÐЮЧ-ÐÐ ÐÐÐ ÐÐÐЫ]...\\n"
#: debug/xtrace.sh:33
-msgid "Try `xtrace --help' for more information.\\n"
-msgstr "ðÏÐÒÏÂÕÊÔÅ `xtrace --help' ÄÌÑ ÐÏÌÕÞÅÎÉÑ ÂÏÌÅÅ ÐÏÄÒÏÂÎÏÇÏ ÏÐÉÓÁÎÉÑ.\\n"
+#, fuzzy
+msgid "Try \\`xtrace --help' for more information.\\n"
+msgstr "ÐопÑобÑйÑе «xtrace --help» Ð´Ð»Ñ Ð¿Ð¾Ð»ÑÑÐµÐ½Ð¸Ñ Ð±Ð¾Ð»ÐµÐµ подÑобного опиÑаниÑ.\\n"
#: debug/xtrace.sh:39
-msgid "xtrace: option `$1' requires an argument.\\n"
-msgstr "xtrace: ËÌÀÞ `%1' ÔÒÅÂÕÅÔ ÁÒÇÕÍÅÎÔ.\\n"
+#, fuzzy
+msgid "xtrace: option \\`$1' requires an argument.\\n"
+msgstr "xtrace: клÑÑ Â«%1» ÑÑебÑÐµÑ Ð°ÑгÑменÑ.\\n"
#: debug/xtrace.sh:46
msgid ""
@@ -303,623 +310,609 @@
"For bug reporting instructions, please see:\n"
"<http://www.gnu.org/software/libc/bugs.html>.\\n"
msgstr ""
-"ôÒÁÓÓÉÒÕÅÔ ×ÙÐÏÌÎÅÎÉÅ ÐÒÏÇÒÁÍÍÙ, ÐÅÞÁÔÁÑ ×ÙÐÏÌÎÑÀÝÕÀÓÑ × ÄÁÎÎÏÅ ×ÒÅÍÑ ÆÕÎËÃÉÀ.\n"
+"ТÑаÑÑиÑÑÐµÑ Ð²Ñполнение пÑогÑаммÑ, пеÑаÑÐ°Ñ Ð²ÑполнÑÑÑÑÑÑÑ Ð² данное вÑÐµÐ¼Ñ ÑÑнкÑиÑ.\n"
"\n"
-" --data=æáêì îÅ ×ÙÐÏÌÎÑÔØ ÐÒÏÇÒÁÍÍÕ, ÐÒÏÓÔÏ ÎÁÐÅÞÁÔÁÔØ ÄÁÎÎÙÅ ÉÚ æáêìá.\n"
+" --data=ФÐÐÐ Ðе вÑполнÑÑÑ Ð¿ÑогÑаммÑ, пÑоÑÑо напеÑаÑаÑÑ Ð´Ð°Ð½Ð½Ñе из ФÐÐÐÐ.\n"
" \n"
-" -?,--help ðÏËÁÚÁÔØ ÜÔÕ ÓÐÒÁ×ËÕ É ×ÙÊÔÉ\n"
-" --usage ðÏËÁÚÁÔØ ËÒÁÔËÏÅ ÓÏÏÂÝÅÎÉÅ Ï ÉÓÐÏÌØÚÏ×ÁÎÉÉ\n"
-" -V,--version ðÏËÁÚÁÔØ ÉÎÆÏÒÍÁÃÉÀ Ï ×ÅÒÓÉÉ É ×ÙÊÔÉ\n"
+" -?,--help ÐоказаÑÑ ÑÑÑ ÑпÑÐ°Ð²ÐºÑ Ð¸ вÑйÑи\n"
+" --usage ÐоказаÑÑ ÐºÑаÑкое ÑообÑение об иÑполÑзовании\n"
+" -V,--version ÐоказаÑÑ Ð¸Ð½ÑоÑмаÑÐ¸Ñ Ð¾ веÑÑии и вÑйÑи\n"
"\n"
-"áÒÇÕÍÅÎÔÙ, ÏÂÑÚÁÔÅÌØÎÙÅ ÄÌÑ ÄÌÉÎÎÙÈ ËÌÀÞÅÊ, ÏÂÑÚÁÔÅÌØÎÙ É ÄÌÑ\n"
-"ÓÏÏÔ×ÅÔÓÔ×ÕÀÝÉÈ ËÏÒÏÔËÉÈ.\n"
+"ÐÑгÑменÑÑ, обÑзаÑелÑнÑе Ð´Ð»Ñ Ð´Ð»Ð¸Ð½Ð½ÑÑ
клÑÑей, обÑзаÑелÑÐ½Ñ Ð¸ длÑ\n"
+"ÑооÑвеÑÑÑвÑÑÑиÑ
коÑоÑкиÑ
.\n"
"\n"
-"éÎÓÔÒÕËÃÉÉ ÐÏ ÓÏÏÂÝÅÎÉÀ Ï ÏÛÉÂËÁÈ ÓÍÏÔÒÉÔÅ ÎÁ\n"
+"ÐнÑÑÑÑкÑии по ÑообÑÐµÐ½Ð¸Ñ Ð¾Ð± оÑибкаÑ
ÑмоÑÑиÑе на\n"
"<http://www.gnu.org/software/libc/bugs.html>.\\n"
#: debug/xtrace.sh:125
-msgid "xtrace: unrecognized option `$1'\\n"
-msgstr "xtrace: ÎÅÒÁÓÐÏÚÎÁÎÎÙÊ ËÌÀÞ `$1'\\n"
+#, fuzzy
+msgid "xtrace: unrecognized option \\`$1'\\n"
+msgstr "xtrace: неÑаÑпознаннÑй клÑÑ Â«$1»\\n"
#: debug/xtrace.sh:138
msgid "No program name given\\n"
-msgstr "îÅ ÚÁÄÁÎÏ ÉÍÑ ÐÒÏÇÒÁÍÍÙ\\n"
+msgstr "Ðе задано Ð¸Ð¼Ñ Ð¿ÑогÑаммÑ\\n"
#: debug/xtrace.sh:146
-#, sh-format
-msgid "executable `$program' not found\\n"
-msgstr "ÉÓÐÏÌÎÑÅÍÙÊ ÆÁÊÌ `$program' ÎÅ ÎÁÊÄÅÎ\\n"
+#, fuzzy, sh-format
+msgid "executable \\`$program' not found\\n"
+msgstr "иÑполнÑемÑй Ñайл «$program» не найден\\n"
#: debug/xtrace.sh:150
-#, sh-format
-msgid "`$program' is no executable\\n"
-msgstr "`$program' ÎÅ Ñ×ÌÑÅÔÓÑ ÉÓÐÏÌÎÑÅÍÙÍ ÆÁÊÌÏÍ\\n"
-
-#: dlfcn/dlinfo.c:67
+#, fuzzy, sh-format
+msgid "\\`$program' is no executable\\n"
+msgstr "«$program» не ÑвлÑеÑÑÑ Ð¸ÑполнÑемÑм Ñайлом\\n"
+
+#: dlfcn/dlinfo.c:64
msgid "RTLD_SELF used in code not dynamically loaded"
-msgstr "RTLD_SELF ÉÓÐÏÌØÚÏ×ÁÎÏ × ÎÅ ÄÉÎÁÍÉÞÅÓËÉ ÚÁÇÒÕÖÅÎÎÏÍ ËÏÄÅ"
-
-#: dlfcn/dlinfo.c:76
+msgstr "RTLD_SELF иÑполÑзовано в не динамиÑеÑки загÑÑженном коде"
+
+#: dlfcn/dlinfo.c:73
msgid "unsupported dlinfo request"
-msgstr "ÎÅÐÏÄÄÅÒÖÉ×ÁÅÍÙÊ ÚÁÐÒÏÓ dlinfo"
+msgstr "неподдеÑживаемÑй запÑÐ¾Ñ dlinfo"
#: dlfcn/dlmopen.c:64
msgid "invalid namespace"
-msgstr "ÎÅ×ÅÒÎÏÅ ÐÒÏÓÔÒÁÎÓÔ×Ï ÉÍÅÎ"
+msgstr "невеÑное пÑоÑÑÑанÑÑво имен"
#: dlfcn/dlmopen.c:69
msgid "invalid mode"
-msgstr "ÎÅ×ÅÒÎÙÊ ÒÅÖÉÍ"
+msgstr "невеÑнÑй Ñежим"
#: dlfcn/dlopen.c:64
msgid "invalid mode parameter"
-msgstr "ÎÅ×ÅÒÎÙÊ ÐÁÒÁÍÅÔÒ ÒÅÖÉÍÁ"
-
-#: elf/cache.c:67
+msgstr "невеÑнÑй паÑамеÑÑ Ñежима"
+
+#: elf/cache.c:69
msgid "unknown"
-msgstr "ÎÅÉÚ×ÅÓÔÎÏ"
-
-#: elf/cache.c:110
+msgstr "неизвеÑÑно"
+
+#: elf/cache.c:112
msgid "Unknown OS"
-msgstr "îÅÉÚ×ÅÓÔÎÁÑ ïó"
-
-#: elf/cache.c:115
+msgstr "ÐеизвеÑÑÐ½Ð°Ñ ÐС"
+
+#: elf/cache.c:117
#, c-format
msgid ", OS ABI: %s %d.%d.%d"
-msgstr ", ABI ïó: %s %d.%d.%d"
-
-#: elf/cache.c:141 elf/ldconfig.c:1231
+msgstr ", ABI ÐС: %s %d.%d.%d"
+
+#: elf/cache.c:134 elf/ldconfig.c:1270
#, c-format
msgid "Can't open cache file %s\n"
-msgstr "îÅ×ÏÚÍÏÖÎÏ ÏÔËÒÙÔØ ËÜÛ-ÆÁÊÌ %s\n"
-
-#: elf/cache.c:153
+msgstr "Ðевозможно оÑкÑÑÑÑ ÐºÑÑ-Ñайл %s\n"
+
+#: elf/cache.c:148
#, c-format
msgid "mmap of cache file failed.\n"
-msgstr "ÏÔÏÂÒÁÖÅÎÉÅ ËÜÛ-ÆÁÊÌÁ × ÐÁÍÑÔØ ÎÅ ÕÄÁÌÏÓØ.\n"
-
-#: elf/cache.c:157 elf/cache.c:167
+msgstr "оÑобÑажение кÑÑ-Ñайла в памÑÑÑ Ð½Ðµ ÑдалоÑÑ.\n"
+
+#: elf/cache.c:152 elf/cache.c:166
#, c-format
msgid "File is not a cache file.\n"
-msgstr "üÔÏ ÎÅ ËÜÛ-ÆÁÊÌ.\n"
-
-#: elf/cache.c:200 elf/cache.c:210
+msgstr "ÐÑо не кÑÑ-Ñайл.\n"
+
+#: elf/cache.c:199 elf/cache.c:209
#, c-format
msgid "%d libs found in cache `%s'\n"
-msgstr "%d ÂÉÂÌÉÏÔÅË ÎÁÊÄÅÎÏ × ËÜÛÅ `%s'\n"
-
-#: elf/cache.c:409
-#, c-format
-msgid "Can't remove old temporary cache file %s"
-msgstr "îÅ×ÏÚÍÏÖÎÏ ÕÄÁÌÉÔØ ÓÔÁÒÙÊ ×ÒÅÍÅÎÎÙÊ ËÜÛ-ÆÁÊÌ %s"
-
-#: elf/cache.c:416
+msgstr "%d библиоÑек найдено в кÑÑе «%s»\n"
+
+#: elf/cache.c:403
#, c-format
msgid "Can't create temporary cache file %s"
-msgstr "îÅ×ÏÚÍÏÖÎÏ ÓÏÚÄÁÔØ ×ÒÅÍÅÎÎÙÊ ËÜÛ-ÆÁÊÌ %s"
-
-#: elf/cache.c:424 elf/cache.c:434 elf/cache.c:438
+msgstr "Ðевозможно ÑоздаÑÑ Ð²ÑеменнÑй кÑÑ-Ñайл %s"
+
+#: elf/cache.c:411 elf/cache.c:421 elf/cache.c:425 elf/cache.c:430
#, c-format
msgid "Writing of cache data failed"
-msgstr "úÁÐÉÓØ ÄÁÎÎÙÈ ËÜÛÁ ÎÅÕÓÐÅÛÎÁ"
-
-#: elf/cache.c:442
-#, c-format
-msgid "Writing of cache data failed."
-msgstr "úÁÐÉÓØ ÄÁÎÎÙÈ ËÜÛÁ ÎÅÕÓÐÅÛÎÁ."
-
-#: elf/cache.c:449
+msgstr "ÐапиÑÑ Ð´Ð°Ð½Ð½ÑÑ
кÑÑа неÑÑпеÑна"
+
+#: elf/cache.c:435
#, c-format
msgid "Changing access rights of %s to %#o failed"
-msgstr "éÚÍÅÎÅÎÉÅ ÐÒÁ× ÄÏÓÔÕÐÁ ÄÌÑ %s ÎÁ %#o ÎÅÕÓÐÅÛÎÏ"
-
-#: elf/cache.c:454
+msgstr "Ðзменение пÑав доÑÑÑпа Ð´Ð»Ñ %s на %#o неÑÑпеÑно"
+
+#: elf/cache.c:440
#, c-format
msgid "Renaming of %s to %s failed"
-msgstr "ðÅÒÅÉÍÅÎÏ×ÁÎÉÅ %s × %s ÎÅÕÓÐÅÛÎÏ"
-
-#: elf/dl-close.c:116
+msgstr "ÐеÑеименование %s в %s неÑÑпеÑно"
+
+#: elf/dl-close.c:378 elf/dl-open.c:460
+msgid "cannot create scope list"
+msgstr "невозможно ÑоздаÑÑ ÑпиÑок облаÑÑей"
+
+#: elf/dl-close.c:724
msgid "shared object not open"
-msgstr "ÒÁÚÄÅÌÑÅÍÙÊ ÏÂßÅËÔ ÎÅ ÏÔËÒÙÔ"
-
-#: elf/dl-deps.c:112
+msgstr "ÑазделÑемÑй обÑÐµÐºÑ Ð½Ðµ оÑкÑÑÑ"
+
+#: elf/dl-deps.c:114
msgid "DST not allowed in SUID/SGID programs"
-msgstr "DST ÎÅ ÄÏÐÕÓËÁÅÔÓÑ × ÐÒÏÇÒÁÍÍÁÈ Ó SUID/SGID"
-
-#: elf/dl-deps.c:125
-msgid "empty dynamics string token substitution"
-msgstr ""
-
-#: elf/dl-deps.c:131
+msgstr "DST не допÑÑкаеÑÑÑ Ð² пÑогÑаммаÑ
Ñ SUID/SGID"
+
+#: elf/dl-deps.c:127 elf/dl-open.c:282
+msgid "empty dynamic string token substitution"
+msgstr "пÑÑÑое вÑ
ождение динамиÑеÑкого ÑÑÑокового Ñокена"
+
+#: elf/dl-deps.c:133
#, c-format
msgid "cannot load auxiliary `%s' because of empty dynamic string token substitution\n"
-msgstr ""
-
-#: elf/dl-deps.c:472
+msgstr "невозможно загÑÑзиÑÑ Ð²ÑпомогаÑелÑное «%s» из-за вÑ
Ð¾Ð¶Ð´ÐµÐ½Ð¸Ñ Ð¿ÑÑÑого динамиÑеÑкого ÑÑÑокового Ñокена\n"
+
+#: elf/dl-deps.c:474
msgid "cannot allocate dependency list"
-msgstr "ÎÅ×ÏÚÍÏÖÎÏ ×ÙÄÅÌÉÔØ ÐÁÍÑÔØ ÐÏÄ ÓÐÉÓÏË ÚÁ×ÉÓÉÍÏÓÔÅÊ"
-
-#: elf/dl-deps.c:505 elf/dl-deps.c:560
+msgstr "невозможно вÑделиÑÑ Ð¿Ð°Ð¼ÑÑÑ Ð¿Ð¾Ð´ ÑпиÑок завиÑимоÑÑей"
+
+#: elf/dl-deps.c:510 elf/dl-deps.c:565
msgid "cannot allocate symbol search list"
-msgstr "ÎÅ×ÏÚÍÏÖÎÏ ×ÙÄÅÌÉÔØ ÐÁÍÑÔØ ÐÏÄ ÓÐÉÓÏË ÐÏÉÓËÁ ÓÉÍ×ÏÌÏ×"
-
-#: elf/dl-deps.c:545
+msgstr "невозможно вÑделиÑÑ Ð¿Ð°Ð¼ÑÑÑ Ð¿Ð¾Ð´ ÑпиÑок поиÑка Ñимволов"
+
+#: elf/dl-deps.c:550
msgid "Filters not supported with LD_TRACE_PRELINKING"
-msgstr "æÉÌØÔÒÙ ÎÅ ÐÏÄÄÅÒÖÉ×ÁÀÔÓÑ Ó LD_TRACE_PRELINKING"
+msgstr "ФилÑÑÑÑ Ð½Ðµ поддеÑживаÑÑÑÑ Ñ LD_TRACE_PRELINKING"
#: elf/dl-error.c:77
msgid "DYNAMIC LINKER BUG!!!"
-msgstr "ïûéâëá äéîáíéþåóëïçï ëïíðïîï÷ýéëá!!!"
+msgstr "ÐШÐÐÐÐ ÐÐÐÐÐÐЧÐСÐÐÐÐ ÐÐÐÐÐÐÐÐЩÐÐÐ!!!"
#: elf/dl-error.c:124
msgid "error while loading shared libraries"
-msgstr "ÏÛÉÂËÁ ÐÒÉ ÚÁÇÒÕÚËÅ ÒÁÚÄÅÌÑÅÍÙÈ ÂÉÂÌÉÏÔÅË"
+msgstr "оÑибка пÑи загÑÑзке ÑазделÑемÑÑ
библиоÑек"
#: elf/dl-fptr.c:88
msgid "cannot map pages for fdesc table"
-msgstr "ÎÅ×ÏÚÍÏÖÎÏ ÏÔÏÂÒÁÚÉÔØ ÓÔÒÁÎÉÃÙ ÄÌÑ ÔÁÂÌÉÃÙ fdesc"
+msgstr "невозможно оÑобÑазиÑÑ ÑÑÑаниÑÑ Ð´Ð»Ñ ÑаблиÑÑ fdesc"
#: elf/dl-fptr.c:192
msgid "cannot map pages for fptr table"
-msgstr "ÎÅ×ÏÚÍÏÖÎÏ ÏÔÏÂÒÁÚÉÔØ ÓÔÒÁÎÉÃÙ ÄÌÑ ÔÁÂÌÉÃÙ fptr"
+msgstr "невозможно оÑобÑазиÑÑ ÑÑÑаниÑÑ Ð´Ð»Ñ ÑаблиÑÑ fptr"
#: elf/dl-fptr.c:221
msgid "internal error: symidx out of range of fptr table"
-msgstr "×ÎÕÔÒÅÎÎÑÑ ÏÛÉÂËÁ: symidx ×ÙÈÏÄÉÔ ÚÁ ÐÒÅÄÅÌÙ ÔÁÂÌÉÃÙ fptr"
+msgstr "внÑÑÑеннÑÑ Ð¾Ñибка: symidx вÑÑ
Ð¾Ð´Ð¸Ñ Ð·Ð° пÑÐµÐ´ÐµÐ»Ñ ÑаблиÑÑ fptr"
#: elf/dl-load.c:372
msgid "cannot allocate name record"
-msgstr "ÎÅ×ÏÚÍÏÖÎÏ ×ÙÄÅÌÉÔØ ÐÁÍÑÔØ ÐÏÄ ÚÁÐÉÓØ ÉÍÅÎÉ"
-
-#: elf/dl-load.c:474 elf/dl-load.c:553 elf/dl-load.c:673 elf/dl-load.c:786
+msgstr "невозможно вÑделиÑÑ Ð¿Ð°Ð¼ÑÑÑ Ð¿Ð¾Ð´ запиÑÑ Ð¸Ð¼ÐµÐ½Ð¸"
+
+#: elf/dl-load.c:474 elf/dl-load.c:582 elf/dl-load.c:667 elf/dl-load.c:780
msgid "cannot create cache for search path"
-msgstr "ÎÅ×ÏÚÍÏÖÎÏ ÓÏÚÄÁÔØ ËÜÛ ÄÌÑ ÐÕÔÅÊ ÐÏÉÓËÁ"
-
-#: elf/dl-load.c:576
+msgstr "невозможно ÑоздаÑÑ ÐºÑÑ Ð´Ð»Ñ Ð¿ÑÑей поиÑка"
+
+#: elf/dl-load.c:565
msgid "cannot create RUNPATH/RPATH copy"
-msgstr "ÎÅ×ÏÚÍÏÖÎÏ ÓÏÚÄÁÔØ ËÏÐÉÀ RUNPATH/RPATH"
-
-#: elf/dl-load.c:659
+msgstr "невозможно ÑоздаÑÑ ÐºÐ¾Ð¿Ð¸Ñ RUNPATH/RPATH"
+
+#: elf/dl-load.c:653
msgid "cannot create search path array"
-msgstr "ÎÅ×ÏÚÍÏÖÎÏ ÓÏÚÄÁÔØ ÍÁÓÓÉ× ÐÕÔÅÊ ÐÏÉÓËÁ"
-
-#: elf/dl-load.c:870
+msgstr "невозможно ÑоздаÑÑ Ð¼Ð°ÑÑив пÑÑей поиÑка"
+
+#: elf/dl-load.c:864
msgid "cannot stat shared object"
-msgstr "ÎÅ×ÏÚÍÏÖÎÏ ×ÙÐÏÌÎÉÔØ stat ÄÌÑ ÒÁÚÄÅÌÑÅÍÏÇÏ ÏÂßÅËÔÁ"
-
-#: elf/dl-load.c:940
+msgstr "невозможно вÑполниÑÑ stat Ð´Ð»Ñ ÑазделÑемого обÑекÑа"
+
+#: elf/dl-load.c:934
msgid "cannot open zero fill device"
-msgstr "ÎÅ×ÏÚÍÏÖÎÏ ÏÔËÒÙÔØ ÆÁÊÌ-ÉÓÔÏÞÎÉË ÎÕÌÅÊ"
-
-#: elf/dl-load.c:985 elf/dl-load.c:2215
+msgstr "невозможно оÑкÑÑÑÑ Ñайл-иÑÑоÑник нÑлей"
+
+#: elf/dl-load.c:979 elf/dl-load.c:2224
msgid "cannot create shared object descriptor"
-msgstr "ÎÅ×ÏÚÍÏÖÎÏ ÓÏÚÄÁÔØ ÄÅÓËÒÉÐÔÏÒ ÒÁÚÄÅÌÑÅÍÏÇÏ ÏÂßÅËÔÁ"
-
-#: elf/dl-load.c:1004 elf/dl-load.c:1663 elf/dl-load.c:1755
+msgstr "невозможно ÑоздаÑÑ Ð´ÐµÑкÑипÑÐ¾Ñ ÑазделÑемого обÑекÑа"
+
+#: elf/dl-load.c:998 elf/dl-load.c:1656 elf/dl-load.c:1748
msgid "cannot read file data"
-msgstr "ÎÅ×ÏÚÍÏÖÎÏ ÐÒÏÞÉÔÁÔØ ÄÁÎÎÙÅ ÆÁÊÌÁ"
-
-#: elf/dl-load.c:1048
+msgstr "невозможно пÑоÑиÑаÑÑ Ð´Ð°Ð½Ð½Ñе Ñайла"
+
+#: elf/dl-load.c:1042
msgid "ELF load command alignment not page-aligned"
-msgstr "×ÙÒÁ×ÎÉ×ÁÎÉÅ ËÏÍÁÎÄÙ ÚÁÇÒÕÚËÉ ELF ÎÅ ×ÙÒÏ×ÎÅÎÏ ÐÏ ÓÔÒÁÎÉÃÅ"
-
-#: elf/dl-load.c:1055
+msgstr "вÑÑавнивание ÐºÐ¾Ð¼Ð°Ð½Ð´Ñ Ð·Ð°Ð³ÑÑзки ELF не вÑÑовнено по ÑÑÑаниÑе"
+
+#: elf/dl-load.c:1049
msgid "ELF load command address/offset not properly aligned"
-msgstr "ÁÄÒÅÓ/ÓÍÅÝÅÎÉÅ ËÏÍÁÎÄÙ ÚÁÇÒÕÚËÉ ELF ÎÅ ×ÙÒÏ×ÎÅÎÏ ÐÒÁ×ÉÌØÎÏ"
-
-#: elf/dl-load.c:1139
+msgstr "адÑеÑ/ÑмеÑение ÐºÐ¾Ð¼Ð°Ð½Ð´Ñ Ð·Ð°Ð³ÑÑзки ELF не вÑÑовнено пÑавилÑно"
+
+#: elf/dl-load.c:1132
msgid "cannot allocate TLS data structures for initial thread"
-msgstr "ÎÅ×ÏÚÍÏÖÎÏ ×ÙÄÅÌÉÔØ ÐÁÍÑÔØ ÐÏÄ TLS-ÓÔÒÕËÔÕÒÙ ÄÌÑ ÎÁÞÁÌØÎÏÇÏ ÔÒÅÄÁ"
-
-#: elf/dl-load.c:1163
+msgstr "невозможно вÑделиÑÑ Ð¿Ð°Ð¼ÑÑÑ Ð¿Ð¾Ð´ TLS-ÑÑÑÑкÑÑÑÑ Ð´Ð»Ñ Ð½Ð°ÑалÑного ÑÑеда"
+
+#: elf/dl-load.c:1155
msgid "cannot handle TLS data"
-msgstr "ÎÅ×ÏÚÍÏÖÎÏ ÏÂÒÁÂÏÔÁÔØ ÄÁÎÎÙÅ TLS"
-
-#: elf/dl-load.c:1182
+msgstr "невозможно обÑабоÑаÑÑ Ð´Ð°Ð½Ð½Ñе TLS"
+
+#: elf/dl-load.c:1174
msgid "object file has no loadable segments"
-msgstr "× ÏÂßÅËÔÎÏÍ ÆÁÊÌÅ ÎÅÔ ÚÁÇÒÕÖÁÅÍÙÈ ÓÅÇÍÅÎÔÏ×"
-
-#: elf/dl-load.c:1218
+msgstr "в обÑекÑном Ñайле Ð½ÐµÑ Ð·Ð°Ð³ÑÑжаемÑÑ
ÑегменÑов"
+
+#: elf/dl-load.c:1210
msgid "failed to map segment from shared object"
-msgstr "ÓÂÏÊ ÏÔÏÂÒÁÖÅÎÉÑ ÓÅÇÍÅÎÔÁ ÉÚ ÒÁÚÄÅÌÑÅÍÏÇÏ ÏÂßÅËÔÁ"
-
-#: elf/dl-load.c:1242
+msgstr "Ñбой оÑобÑÐ°Ð¶ÐµÐ½Ð¸Ñ ÑегменÑа из ÑазделÑемого обÑекÑа"
+
+#: elf/dl-load.c:1236
msgid "cannot dynamically load executable"
-msgstr "ÎÅ×ÏÚÍÏÖÎÏ ÄÉÎÁÍÉÞÅÓËÉ ÚÁÇÒÕÚÉÔØ ÉÓÐÏÌÎÑÅÍÙÊ ÆÁÊÌ"
-
-#: elf/dl-load.c:1303
+msgstr "невозможно динамиÑеÑки загÑÑзиÑÑ Ð¸ÑполнÑемÑй Ñайл"
+
+#: elf/dl-load.c:1298
msgid "cannot change memory protections"
-msgstr "ÎÅ×ÏÚÍÏÖÎÏ ÉÚÍÅÎÉÔØ ÚÁÝÉÔÕ ÐÁÍÑÔÉ"
-
-#: elf/dl-load.c:1322
+msgstr "невозможно измениÑÑ Ð·Ð°ÑиÑÑ Ð¿Ð°Ð¼ÑÑи"
+
+#: elf/dl-load.c:1317
msgid "cannot map zero-fill pages"
-msgstr "ÎÅ×ÏÚÍÏÖÎÏ ÏÔÏÂÒÁÚÉÔØ ÓÔÒÁÎÉÃÙ ÚÁÐÏÌÎÅÎÉÑ ÎÕÌÑÍÉ"
-
-#: elf/dl-load.c:1336
+msgstr "невозможно оÑобÑазиÑÑ ÑÑÑаниÑÑ Ð·Ð°Ð¿Ð¾Ð»Ð½ÐµÐ½Ð¸Ñ Ð½ÑлÑми"
+
+#: elf/dl-load.c:1331
msgid "object file has no dynamic section"
-msgstr "× ÏÂßÅËÔÎÏÍ ÆÁÊÌÅ ÎÅÔ ÄÉÎÁÍÉÞÅÓËÏÊ ÓÅËÃÉÉ"
-
-#: elf/dl-load.c:1359
+msgstr "в обÑекÑном Ñайле Ð½ÐµÑ Ð´Ð¸Ð½Ð°Ð¼Ð¸ÑеÑкой ÑекÑии"
+
+#: elf/dl-load.c:1354
msgid "shared object cannot be dlopen()ed"
-msgstr "ÎÅ×ÏÚÍÏÖÎÏ ÐÒÉÍÅÎÉÔØ dlopen() Ë ÒÁÚÄÅÌÑÅÍÏÍÕ ÏÂßÅËÔÕ"
-
-#: elf/dl-load.c:1372
+msgstr "невозможно пÑимениÑÑ dlopen() к ÑазделÑÐµÐ¼Ð¾Ð¼Ñ Ð¾Ð±ÑекÑÑ"
+
+#: elf/dl-load.c:1367
msgid "cannot allocate memory for program header"
-msgstr "ÎÅ×ÏÚÍÏÖÎÏ ×ÙÄÅÌÉÔØ ÐÁÍÑÔØ ÐÏÄ ÚÁÇÏÌÏ×ÏË ÐÒÏÇÒÁÍÍÙ"
-
-#: elf/dl-load.c:1389 elf/dl-open.c:174
+msgstr "невозможно вÑделиÑÑ Ð¿Ð°Ð¼ÑÑÑ Ð¿Ð¾Ð´ заголовок пÑогÑаммÑ"
+
+#: elf/dl-load.c:1384 elf/dl-open.c:218
msgid "invalid caller"
-msgstr "ÎÅ×ÅÒÎÁÑ ×ÙÚÙ×ÁÀÝÁÑ ÆÕÎËÃÉÑ"
-
-#: elf/dl-load.c:1428
+msgstr "невеÑÐ½Ð°Ñ Ð²ÑзÑваÑÑÐ°Ñ ÑÑнкÑиÑ"
+
+#: elf/dl-load.c:1423
msgid "cannot enable executable stack as shared object requires"
-msgstr "ÎÅ×ÏÚÍÏÖÎÏ ÚÁÄÅÊÓÔ×Ï×ÁÔØ ÉÓÐÏÌÎÑÅÍÙÊ ÓÔÅË, ËÁË ÔÒÅÂÕÅÔ ÒÁÚÄÅÌÑÅÍÙÊ ÏÂßÅËÔ"
-
-#: elf/dl-load.c:1443
+msgstr "невозможно задейÑÑвоваÑÑ Ð¸ÑполнÑемÑй ÑÑек, как ÑÑебÑÐµÑ ÑазделÑемÑй обÑекÑ"
+
+#: elf/dl-load.c:1436
msgid "cannot close file descriptor"
-msgstr "ÎÅ×ÏÚÍÏÖÎÏ ÚÁËÒÙÔØ ÄÅÓËÒÉÐÔÏÒ ÆÁÊÌÁ"
-
-#: elf/dl-load.c:1485
+msgstr "невозможно закÑÑÑÑ Ð´ÐµÑкÑипÑÐ¾Ñ Ñайла"
+
+#: elf/dl-load.c:1478
msgid "cannot create searchlist"
-msgstr "ÎÅ×ÏÚÍÏÖÎÏ ÓÏÚÄÁÔØ ÓÐÉÓÏË ÐÏÉÓËÁ"
-
-#: elf/dl-load.c:1663
+msgstr "невозможно ÑоздаÑÑ ÑпиÑок поиÑка"
+
+#: elf/dl-load.c:1656
msgid "file too short"
-msgstr "ÆÁÊÌ ÓÌÉÛËÏÍ ÍÁÌ"
-
-#: elf/dl-load.c:1692
+msgstr "Ñайл ÑлиÑком мал"
+
+#: elf/dl-load.c:1685
msgid "invalid ELF header"
-msgstr "ÎÅ×ÅÒÎÙÊ ÚÁÇÏÌÏ×ÏË ELF"
-
-#: elf/dl-load.c:1704
+msgstr "невеÑнÑй заголовок ELF"
+
+#: elf/dl-load.c:1697
msgid "ELF file data encoding not big-endian"
-msgstr "ËÏÄÉÒÏ×ËÁ ÄÁÎÎÙÈ × ELF-ÆÁÊÌÅ ÎÅ ÔÕÐÏËÏÎÅÞÎÁÑ"
-
-#: elf/dl-load.c:1706
+msgstr "кодиÑовка даннÑÑ
в ELF-Ñайле не ÑÑпоконеÑнаÑ"
+
+#: elf/dl-load.c:1699
msgid "ELF file data encoding not little-endian"
-msgstr "ËÏÄÉÒÏ×ËÁ ÄÁÎÎÙÈ × ELF-ÆÁÊÌÅ ÎÅ ÏÓÔÒÏËÏÎÅÞÎÁÑ"
-
-#: elf/dl-load.c:1710
+msgstr "кодиÑовка даннÑÑ
в ELF-Ñайле не оÑÑÑоконеÑнаÑ"
+
+#: elf/dl-load.c:1703
msgid "ELF file version ident does not match current one"
-msgstr "ÉÄÅÎÔÉÆÉËÁÔÏÒ ×ÅÒÓÉÉ ELF-ÆÁÊÌÁ ÎÅ ÓÏÏÔ×ÅÔÓÔ×ÕÅÔ ÔÅËÕÝÅÊ ×ÅÒÓÉÉ"
-
-#: elf/dl-load.c:1714
+msgstr "иденÑиÑикаÑÐ¾Ñ Ð²ÐµÑÑии ELF-Ñайла не ÑооÑвеÑÑÑвÑÐµÑ ÑекÑÑей веÑÑии"
+
+#: elf/dl-load.c:1707
msgid "ELF file OS ABI invalid"
-msgstr "ÎÅ×ÅÒÎÙÊ ABI ïó ELF-ÆÁÊÌÁ"
-
-#: elf/dl-load.c:1716
+msgstr "невеÑнÑй ABI ÐС ELF-Ñайла"
+
+#: elf/dl-load.c:1709
msgid "ELF file ABI version invalid"
-msgstr "ÎÅ×ÅÒÎÁÑ ×ÅÒÓÉÑ ABI ELF-ÆÁÊÌÁ"
+msgstr "невеÑÐ½Ð°Ñ Ð²ÐµÑÑÐ¸Ñ ABI ELF-Ñайла"
+
+#: elf/dl-load.c:1712
+msgid "internal error"
+msgstr "внÑÑÑеннÑÑ Ð¾Ñибка"
#: elf/dl-load.c:1719
-msgid "internal error"
-msgstr "×ÎÕÔÒÅÎÎÑÑ ÏÛÉÂËÁ"
-
-#: elf/dl-load.c:1726
msgid "ELF file version does not match current one"
-msgstr "×ÅÒÓÉÑ ELF-ÆÁÊÌÁ ÎÅ ÓÏÏÔ×ÅÔÓÔ×ÕÅÔ ÔÅËÕÝÅÊ ×ÅÒÓÉÉ"
-
-#: elf/dl-load.c:1734
+msgstr "веÑÑÐ¸Ñ ELF-Ñайла не ÑооÑвеÑÑÑвÑÐµÑ ÑекÑÑей веÑÑии"
+
+#: elf/dl-load.c:1727
msgid "only ET_DYN and ET_EXEC can be loaded"
-msgstr "ÍÏÖÎÏ ÚÁÇÒÕÚÉÔØ ÔÏÌØËÏ ET_DYN É ET_EXEC"
+msgstr "можно загÑÑзиÑÑ ÑолÑко ET_DYN и ET_EXEC"
# ???
-#: elf/dl-load.c:1740
+#: elf/dl-load.c:1733
msgid "ELF file's phentsize not the expected size"
-msgstr "phentsize ELF-ÆÁÊÌÁ ÎÅ ÓÏ×ÐÁÄÁÅÔ Ó ÏÖÉÄÁÅÍÙÍ ÒÁÚÍÅÒÏÍ"
-
-#: elf/dl-load.c:2231
+msgstr "phentsize ELF-Ñайла не ÑÐ¾Ð²Ð¿Ð°Ð´Ð°ÐµÑ Ñ Ð¾Ð¶Ð¸Ð´Ð°ÐµÐ¼Ñм ÑазмеÑом"
+
+#: elf/dl-load.c:2240
msgid "wrong ELF class: ELFCLASS64"
-msgstr "ÎÅÐÒÁ×ÉÌØÎÙÊ ËÌÁÓÓ ELF: ELFCLASS64"
-
-#: elf/dl-load.c:2232
+msgstr "непÑавилÑнÑй клаÑÑ ELF: ELFCLASS64"
+
+#: elf/dl-load.c:2241
msgid "wrong ELF class: ELFCLASS32"
-msgstr "ÎÅÐÒÁ×ÉÌØÎÙÊ ËÌÁÓÓ ELF: ELFCLASS32"
-
-#: elf/dl-load.c:2235
+msgstr "непÑавилÑнÑй клаÑÑ ELF: ELFCLASS32"
+
+#: elf/dl-load.c:2244
msgid "cannot open shared object file"
-msgstr "ÎÅ×ÏÚÍÏÖÎÏ ÏÔËÒÙÔØ ÒÁÚÄÅÌÑÅÍÙÊ ÏÂßÅËÔÎÙÊ ÆÁÊÌ"
-
-#: elf/dl-lookup.c:261
+msgstr "невозможно оÑкÑÑÑÑ ÑазделÑемÑй обÑекÑнÑй Ñайл"
+
+#: elf/dl-lookup.c:356
msgid "relocation error"
-msgstr "ÏÛÉÂËÁ ÐÅÒÅÍÅÝÅÎÉÑ"
-
-#: elf/dl-lookup.c:289
+msgstr "оÑибка пеÑемеÑениÑ"
+
+#: elf/dl-lookup.c:384
msgid "symbol lookup error"
-msgstr "ÏÛÉÂËÁ ÐÏÉÓËÁ ÓÉÍ×ÏÌÁ"
-
-#: elf/dl-open.c:112
+msgstr "оÑибка поиÑка Ñимвола"
+
+#: elf/dl-open.c:114
msgid "cannot extend global scope"
-msgstr "ÎÅ×ÏÚÍÏÖÎÏ ÒÁÓÛÉÒÉÔØ ÇÌÏÂÁÌØÎÕÀ ÏÂÌÁÓÔØ"
-
-#: elf/dl-open.c:237
-msgid "empty dynamic string token substitution"
-msgstr ""
-
-#: elf/dl-open.c:406 elf/dl-open.c:417 elf/dl-open.c:425
-msgid "cannot create scope list"
-msgstr "ÎÅ×ÏÚÍÏÖÎÏ ÓÏÚÄÁÔØ ÓÐÉÓÏË ÏÂÌÁÓÔÅÊ"
-
-#: elf/dl-open.c:470
+msgstr "невозможно ÑаÑÑиÑиÑÑ Ð³Ð»Ð¾Ð±Ð°Ð»ÑнÑÑ Ð¾Ð±Ð»Ð°ÑÑÑ"
+
+#: elf/dl-open.c:512
msgid "TLS generation counter wrapped! Please report this."
-msgstr "ðÅÒÅÐÏÌÎÅÎÉÅ ÓÞÅÔÞÉËÁ ÐÏËÏÌÅÎÉÊ TLS! ðÏÖÁÌÕÊÓÔÁ, ÓÏÏÂÝÉÔÅ Ï ÜÔÏÍ."
-
-#: elf/dl-open.c:508
+msgstr "ÐеÑеполнение ÑÑеÑÑика поколений TLS! ÐожалÑйÑÑа, ÑообÑиÑе об ÑÑом."
+
+#: elf/dl-open.c:549
msgid "invalid mode for dlopen()"
-msgstr "ÎÅ×ÅÒÎÙÊ ÒÅÖÉÍ ÄÌÑ dlopen()"
-
-#: elf/dl-open.c:525
+msgstr "невеÑнÑй Ñежим Ð´Ð»Ñ dlopen()"
+
+#: elf/dl-open.c:566
msgid "no more namespaces available for dlmopen()"
-msgstr "ÂÏÌØÛÅ ÎÅÔ ÄÏÓÔÕÐÎÙÈ ÐÒÏÓÔÒÁÎÓÔ× ÉÍÅÎ ÄÌÑ dlmopen()"
-
-#: elf/dl-open.c:538
+msgstr "болÑÑе Ð½ÐµÑ Ð´Ð¾ÑÑÑпнÑÑ
пÑоÑÑÑанÑÑв имен Ð´Ð»Ñ dlmopen()"
+
+#: elf/dl-open.c:579
msgid "invalid target namespace in dlmopen()"
-msgstr "ÎÅ×ÅÒÎÏÅ ÃÅÌÅ×ÏÅ ÐÒÏÓÔÒÁÎÓÔ×Ï ÉÍÅÎ × dlmopen()"
-
-#: elf/dl-reloc.c:55
+msgstr "невеÑное Ñелевое пÑоÑÑÑанÑÑво имен в dlmopen()"
+
+#: elf/dl-reloc.c:54
msgid "cannot allocate memory in static TLS block"
-msgstr "ÎÅ×ÏÚÍÏÖÎÏ ×ÙÄÅÌÉÔØ ÐÁÍÑÔØ × ÓÔÁÔÉÞÎÏÍ ÂÌÏËÅ TLS"
-
-#: elf/dl-reloc.c:198
+msgstr "невозможно вÑделиÑÑ Ð¿Ð°Ð¼ÑÑÑ Ð² ÑÑаÑиÑном блоке TLS"
+
+#: elf/dl-reloc.c:196
msgid "cannot make segment writable for relocation"
-msgstr "ÎÅ×ÏÚÍÏÖÎÏ ÓÄÅÌÁÔØ ÓÅÇÍÅÎÔ ÚÁÐÉÓÙ×ÁÅÍÙÍ ÄÌÑ ÐÅÒÅÍÅÝÅÎÉÑ"
-
-#: elf/dl-reloc.c:279
+msgstr "невозможно ÑделаÑÑ ÑÐµÐ³Ð¼ÐµÐ½Ñ Ð·Ð°Ð¿Ð¸ÑÑваемÑм Ð´Ð»Ñ Ð¿ÐµÑемеÑениÑ"
+
+#: elf/dl-reloc.c:277
#, c-format
msgid "%s: no PLTREL found in object %s\n"
-msgstr "%s: × ÏÂßÅËÔÅ %s ÎÅ ÎÁÊÄÅÎÏ PLTREL\n"
-
-#: elf/dl-reloc.c:290
+msgstr "%s: в обÑекÑе %s не найдено PLTREL\n"
+
+#: elf/dl-reloc.c:288
#, c-format
msgid "%s: out of memory to store relocation results for %s\n"
-msgstr "%s: ÎÅÄÏÓÔÁÔÏÞÎÏ ÐÁÍÑÔÉ ÄÌÑ ÚÁÐÉÓÉ ÒÅÚÕÌØÔÁÔÏ× ÒÅÌÏËÁÃÉÉ ÄÌÑ %s\n"
-
-#: elf/dl-reloc.c:306
+msgstr "%s: недоÑÑаÑоÑно памÑÑи Ð´Ð»Ñ Ð·Ð°Ð¿Ð¸Ñи ÑезÑлÑÑаÑов ÑелокаÑии Ð´Ð»Ñ %s\n"
+
+#: elf/dl-reloc.c:304
msgid "cannot restore segment prot after reloc"
-msgstr "ÎÅ×ÏÚÍÏÖÎÏ ×ÏÓÓÔÁÎÏ×ÉÔØ ÚÁÝÉÔÕ ÓÅÇÍÅÎÔÁ ÐÏÓÌÅ ÐÅÒÅÍÅÝÅÎÉÑ"
-
-#: elf/dl-reloc.c:331
[... 10012 lines stripped ...]