Bug#652356: please use argument-safe bswap macros on all architectures

2011-12-16 Thread Thorsten Glaser
Source: eglibc

Hi,

(from #595496) please make sure that this passes on all
architectures:

cat x.c 'EOF'
#include stddef.h
#include stdint.h
#include byteswap.h

uint32_t
foo(uint32_t *bar, size_t *baz) {
return (bswap_32(bar[(*baz)++]));
}
EOF
gcc -Wall -c x.c


On amd64 it passes, on m68k it gives:

x.c: In function ‘foo’:
x.c:6:10: warning: operation on ‘*baz’ may be undefined [-Wsequence-point]
x.c:6:10: warning: operation on ‘*baz’ may be undefined [-Wsequence-point]
x.c:6:10: warning: operation on ‘*baz’ may be undefined [-Wsequence-point]

The difference is in /usr/include/$multiarsch/bits/byteswap.h:

#  define __bswap_32(x) \
 (__extension__   \
  ({ register unsigned int __v, __x = (x);\
 if (__builtin_constant_p (__x))  \
[…]

(amd64) vs. (m68k)

# define __bswap_32(x) \
  __extension__ \
  ({ unsigned int __bswap_32_v; \
 if (__builtin_constant_p (x))  \
[…]

That is, the amd64 version evaluates the argument only once.

Please ensure all flavours of the bswap macros on all architectures
behave the same; otherwise it’s an introduction to porting issues
that need not be. Porting is joyful enough already ;-)

Thanks in advance,
//mirabilos
-- 
[...] if maybe ext3fs wasn't a better pick, or jfs, or maybe reiserfs, oh but
what about xfs, and if only i had waited until reiser4 was ready... in the be-
ginning, there was ffs, and in the middle, there was ffs, and at the end, there
was still ffs, and the sys admins knew it was good. :)  -- Ted Unangst über *fs



--
To UNSUBSCRIBE, email to debian-glibc-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Archive: 
http://lists.debian.org/pine.bsm.4.64l.1112161525050@herc.mirbsd.org



Processed: tagging 652356

2011-12-16 Thread Debian Bug Tracking System
Processing commands for cont...@bugs.debian.org:

 tags 652356 + pending
Bug #652356 [src:eglibc] please use argument-safe bswap macros on all 
architectures
Added tag(s) pending.
 thanks
Stopping processing here.

Please contact me if you need assistance.
-- 
652356: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=652356
Debian Bug Tracking System
Contact ow...@bugs.debian.org with problems


-- 
To UNSUBSCRIBE, email to debian-glibc-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Archive: 
http://lists.debian.org/handler.s.c.132408290317815.transcr...@bugs.debian.org



Bug#652356: please use argument-safe bswap macros on all architectures

2011-12-16 Thread Aurelien Jarno
On Fri, Dec 16, 2011 at 03:29:59PM +, Thorsten Glaser wrote:
 Source: eglibc
 
 Hi,
 
 (from #595496) please make sure that this passes on all
 architectures:
 
 cat x.c 'EOF'
 #include stddef.h
 #include stdint.h
 #include byteswap.h
 
 uint32_t
 foo(uint32_t *bar, size_t *baz) {
   return (bswap_32(bar[(*baz)++]));
 }
 EOF
 gcc -Wall -c x.c
 
 
 On amd64 it passes, on m68k it gives:
 
 x.c: In function ‘foo’:
 x.c:6:10: warning: operation on ‘*baz’ may be undefined [-Wsequence-point]
 x.c:6:10: warning: operation on ‘*baz’ may be undefined [-Wsequence-point]
 x.c:6:10: warning: operation on ‘*baz’ may be undefined [-Wsequence-point]
 
 The difference is in /usr/include/$multiarsch/bits/byteswap.h:
 
 #  define __bswap_32(x) \
  (__extension__   
 \
   ({ register unsigned int __v, __x = (x);
 \
  if (__builtin_constant_p (__x))  
 \
 […]
 
 (amd64) vs. (m68k)
 
 # define __bswap_32(x) \
   __extension__ \
   ({ unsigned int __bswap_32_v; \
  if (__builtin_constant_p (x))  \
 […]
 
 That is, the amd64 version evaluates the argument only once.
 
 Please ensure all flavours of the bswap macros on all architectures
 behave the same; otherwise it’s an introduction to porting issues
 that need not be. Porting is joyful enough already ;-)
 

The file is different on architectures providing an optimized version of
bswap functions. The m68k optimized version is lagging behind the others 
architectures and as you show, it is therefore broken.

I have dropped it in favor of the default version for the next upload.
This way it will behave like other architectures.

-- 
Aurelien Jarno  GPG: 1024D/F1BCDB73
aurel...@aurel32.net http://www.aurel32.net



-- 
To UNSUBSCRIBE, email to debian-glibc-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/20111217005242.ge9...@hall.aurel32.net



Re: [m68k] eglibc expected(?) testsuite results

2011-12-16 Thread Aurelien Jarno
On Thu, Dec 15, 2011 at 12:47:10PM +, Thorsten Glaser wrote:
 Just FYI, maybe you can do something with it (or not).
 I built the latest eglibc 2.13-23 without nocheck.
 

I have just included it as the expected tests results. I have to say the
list of failure seems to say that m68k is not really in a good state.

-- 
Aurelien Jarno  GPG: 1024D/F1BCDB73
aurel...@aurel32.net http://www.aurel32.net


-- 
To UNSUBSCRIBE, email to debian-glibc-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/20111217005938.gf9...@hall.aurel32.net



r5088 - in glibc-package/trunk/debian: . patches patches/m68k

2011-12-16 Thread Aurelien Jarno
Author: aurel32
Date: 2011-12-17 00:48:15 + (Sat, 17 Dec 2011)
New Revision: 5088

Added:
   glibc-package/trunk/debian/patches/m68k/local-byteswap.diff
Modified:
   glibc-package/trunk/debian/changelog
   glibc-package/trunk/debian/patches/series
Log:
  * patches/m68k/local-byteswap.diff: drop the m68k optimized version of
bits/byteswap.h.  Closes: #652356.



Modified: glibc-package/trunk/debian/changelog
===
--- glibc-package/trunk/debian/changelog2011-12-15 08:47:39 UTC (rev 
5087)
+++ glibc-package/trunk/debian/changelog2011-12-17 00:48:15 UTC (rev 
5088)
@@ -1,6 +1,7 @@
 eglibc (2.13-24) UNRELEASED; urgency=low
 
-  *  
+  * patches/m68k/local-byteswap.diff: drop the m68k optimized version of
+bits/byteswap.h.  Closes: #652356.
 
  -- Aurelien Jarno aure...@debian.org  Wed, 14 Dec 2011 00:42:25 +0100
 

Added: glibc-package/trunk/debian/patches/m68k/local-byteswap.diff
===
--- glibc-package/trunk/debian/patches/m68k/local-byteswap.diff 
(rev 0)
+++ glibc-package/trunk/debian/patches/m68k/local-byteswap.diff 2011-12-17 
00:48:15 UTC (rev 5088)
@@ -0,0 +1,102 @@
+--- a/ports/sysdeps/m68k/bits/byteswap.h
 /dev/null
+@@ -1,99 +0,0 @@
+-/* Macros to swap the order of bytes in integer values.  m68k version.
+-   Copyright (C) 1997, 2002, 2008 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.  */
+-
+-#if !defined _BYTESWAP_H  !defined _NETINET_IN_H  !defined _ENDIAN_H
+-# error Never use bits/byteswap.h directly; include byteswap.h instead.
+-#endif
+-
+-#ifndef _BITS_BYTESWAP_H
+-#define _BITS_BYTESWAP_H 1
+-
+-/* Swap bytes in 16 bit value.  We don't provide an assembler version
+-   because GCC is smart enough to generate optimal assembler output, and
+-   this allows for better cse.  */
+-#define __bswap_constant_16(x) \
+- x)  8)  0xffu) | (((x)  0xffu)  8))
+-
+-#ifdef __GNUC__
+-# define __bswap_16(x) \
+-(__extension__  \
+- ({ unsigned short int __bsx = (x); __bswap_constant_16 (__bsx); }))
+-#else
+-static __inline unsigned short int
+-__bswap_16 (unsigned short int __bsx)
+-{
+-  return __bswap_constant_16 (__bsx);
+-}
+-#endif
+-
+-/* Swap bytes in 32 bit value.  */
+-#define __bswap_constant_32(x) \
+- x)  0xff00u)  24) | (((x)  0x00ffu)   8) |   \
+-  (((x)  0xff00u)   8) | (((x)  0x00ffu)  24))
+-
+-#if defined __GNUC__  __GNUC__ = 2  !defined(__mcoldfire__)
+-# define __bswap_32(x) \
+-  __extension__   \
+-  ({ unsigned int __bswap_32_v;   \
+- if (__builtin_constant_p (x))\
+-   __bswap_32_v = __bswap_constant_32 (x);\
+- else \
+-   __asm__ __volatile__ (ror%.w %#8, %0;\
+-   swap %0; \
+-   ror%.w %#8, %0   \
+-   : =d (__bswap_32_v)  \
+-   : 0 ((unsigned int) (x)));   \
+- __bswap_32_v; })
+-#else
+-static __inline unsigned int
+-__bswap_32 (unsigned int __bsx)
+-{
+-  return __bswap_constant_32 (__bsx);
+-}
+-#endif
+-
+-#if defined __GNUC__  __GNUC__ = 2
+-/* Swap bytes in 64 bit value.  */
+-# define __bswap_constant_64(x) \
+- x)  0xff00ull)  56) \
+-  | (((x)  0x00ffull)  40)   \
+-  | (((x)  0xff00ull)  24)   \
+-  | (((x)  0x00ffull)  8)\
+-  | (((x)  0xff00ull)  8)\
+-  | (((x)  0x00ffull)  24)   \
+-  | (((x)  0xff00ull)  40)   \
+-  | (((x)  0x00ffull)  56))
+-
+-/* Swap bytes in 64 

r5089 - in glibc-package/trunk/debian: . testsuite-checking

2011-12-16 Thread Aurelien Jarno
Author: aurel32
Date: 2011-12-17 01:00:24 + (Sat, 17 Dec 2011)
New Revision: 5089

Added:
   
glibc-package/trunk/debian/testsuite-checking/expected-results-m68k-linux-gnu-libc
Modified:
   glibc-package/trunk/debian/changelog
Log:
  * Add m68k expected tests results.



Modified: glibc-package/trunk/debian/changelog
===
--- glibc-package/trunk/debian/changelog2011-12-17 00:48:15 UTC (rev 
5088)
+++ glibc-package/trunk/debian/changelog2011-12-17 01:00:24 UTC (rev 
5089)
@@ -2,6 +2,7 @@
 
   * patches/m68k/local-byteswap.diff: drop the m68k optimized version of
 bits/byteswap.h.  Closes: #652356.
+  * Add m68k expected tests results.
 
  -- Aurelien Jarno aure...@debian.org  Wed, 14 Dec 2011 00:42:25 +0100
 

Added: 
glibc-package/trunk/debian/testsuite-checking/expected-results-m68k-linux-gnu-libc
===
--- 
glibc-package/trunk/debian/testsuite-checking/expected-results-m68k-linux-gnu-libc
  (rev 0)
+++ 
glibc-package/trunk/debian/testsuite-checking/expected-results-m68k-linux-gnu-libc
  2011-12-17 01:00:24 UTC (rev 5089)
@@ -0,0 +1,47 @@
+#
+# Allowed failures for m68k-linux-gnu-libc and the returned make
+# failure number, indicating the signal the process died with.
+# Format: Failed test, Error Make error code [(ignored)]
+#
+annexc.out, Error 1 (ignored)
+bug-nextafter.out, Error 24
+bug-nexttoward.out, Error 32
+bug-regex20.out, Error 139
+check-localplt.out, Error 1
+sort-test.out, Error 1
+test-double.out, Error 1
+test-fenv.out, Error 1
+test-float.out, Error 1
+test-idouble.out, Error 1
+test-ifloat.out, Error 1
+test-misc.out, Error 1
+tst-atomic-long.out, Error 1
+tst-atomic.out, Error 1
+tst-mqueue5.out, Error 1
+tst-mqueue6.out, Error 1
+tst-mutexpi2.out, Error 1
+tst-mutexpi4.out, Error 1
+tst-mutexpi5.out, Error 1
+tst-mutexpi5a.out, Error 1
+tst-mutexpi6.out, Error 1
+tst-mutexpi7.out, Error 1
+tst-mutexpi7a.out, Error 1
+tst-mutexpi9.out, Error 1
+tst-robust1.out, Error 1
+tst-robust2.out, Error 1
+tst-robust3.out, Error 1
+tst-robust4.out, Error 1
+tst-robust5.out, Error 1
+tst-robust6.out, Error 1
+tst-robust7.out, Error 1
+tst-robust8.out, Error 1
+tst-robust9.out, Error 1
+tst-robustpi1.out, Error 1
+tst-robustpi2.out, Error 1
+tst-robustpi3.out, Error 1
+tst-robustpi4.out, Error 1
+tst-robustpi5.out, Error 1
+tst-robustpi6.out, Error 1
+tst-robustpi7.out, Error 1
+tst-robustpi8.out, Error 1
+tst-rxspencer.out, Error 139


-- 
To UNSUBSCRIBE, email to debian-glibc-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/e1rbidv-0005ny...@vasks.debian.org



Re: [m68k] eglibc expected(?) testsuite results

2011-12-16 Thread Finn Thain

On Sat, 17 Dec 2011, Aurelien Jarno wrote:

 On Thu, Dec 15, 2011 at 12:47:10PM +, Thorsten Glaser wrote:
  Just FYI, maybe you can do something with it (or not).
  I built the latest eglibc 2.13-23 without nocheck.
  
 
 I have just included it as the expected tests results. I have to say the
 list of failure seems to say that m68k is not really in a good state.

It might be worth running the tests on physical hardware instead of an 
emulator.

Finn


-- 
To UNSUBSCRIBE, email to debian-glibc-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Archive: 
http://lists.debian.org/alpine.LNX.2.00.1112171205410.3027@nippy.intranet



Bug#652356: please use argument-safe bswap macros on all architectures

2011-12-16 Thread Thorsten Glaser
Aurelien Jarno dixit:

I have dropped it in favor of the default version for the next upload.

Why don’t you just use these? (Tested for 32-bit and 64-bit both.)
I’ve not looked at other architectures atm though.

--- usr/include/m68k-linux-gnu/bits/byteswap.h~ 2011-12-17 02:44:08.0 
+
+++ usr/include/m68k-linux-gnu/bits/byteswap.h  2011-12-17 02:49:34.0 
+
@@ -1,5 +1,5 @@
 /* Macros to swap the order of bytes in integer values.  m68k version.
-   Copyright (C) 1997, 2002, 2008 Free Software Foundation, Inc.
+   Copyright (C) 1997, 2002, 2008, 2011 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
@@ -50,15 +50,15 @@
 #if defined __GNUC__  __GNUC__ = 2  !defined(__mcoldfire__)
 # define __bswap_32(x) \
   __extension__\
-  ({ unsigned int __bswap_32_v;\
- if (__builtin_constant_p (x)) \
-   __bswap_32_v = __bswap_constant_32 (x); \
+  ({ unsigned int __bswap_32_v, __bswap_32_x = (x);\
+ if (__builtin_constant_p (__bswap_32_x))  \
+   __bswap_32_v = __bswap_constant_32 (__bswap_32_x);  \
  else  \
__asm__ __volatile__ (ror%.w %#8, %0; \
 swap %0; \
 ror%.w %#8, %0   \
 : =d (__bswap_32_v)  \
-: 0 ((unsigned int) (x)));   \
+: 0 (__bswap_32_x)); \
  __bswap_32_v; })
 #else
 static __inline unsigned int
@@ -85,11 +85,12 @@
   __extension__
\
   ({ union { unsigned long long int __ll;  \
 unsigned long int __l[2]; } __bswap_64_v, __bswap_64_r;\
- if (__builtin_constant_p (x)) \
-   __bswap_64_r.__ll = __bswap_constant_64 (x);\
+ unsigned long long int __bswap_64_x = (x);
\
+ if (__builtin_constant_p (__bswap_64_x))  \
+   __bswap_64_r.__ll = __bswap_constant_64 (__bswap_64_x); \
  else  \
{   \
-__bswap_64_v.__ll = (x);   \
+__bswap_64_v.__ll = __bswap_64_x;  \
 __bswap_64_r.__l[0] = __bswap_32 (__bswap_64_v.__l[1]);\
 __bswap_64_r.__l[1] = __bswap_32 (__bswap_64_v.__l[0]);\
}   \



bye,
//mirabilos
-- 
  “Having a smoking section in a restaurant is like having
  a peeing section in a swimming pool.”
-- Edward Burr



--
To UNSUBSCRIBE, email to debian-glibc-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Archive: 
http://lists.debian.org/pine.bsm.4.64l.1112170250430@herc.mirbsd.org



Re: Cross Memory Attach v3

2011-12-16 Thread Thorsten Glaser
I’ve tested the below patch locally in the meantime, and it
does not break anything.

Aurelien Jarno dixit:

On Sun, Dec 11, 2011 at 10:11:03PM +, Thorsten Glaser wrote:
 Andreas Schwab dixit:
 
 Thorsten Glaser t...@mirbsd.de writes:
 
  Index: eglibc-2.13/ports/sysdeps/unix/sysv/linux/m68k/syscall.S
  ===
  --- eglibc-2.13.orig/ports/sysdeps/unix/sysv/linux/m68k/syscall.S 
  2011-12-04 14:36:16.0 +
  +++ eglibc-2.13/ports/sysdeps/unix/sysv/linux/m68k/syscall.S  
  2011-12-04 14:36:26.0 +
  @@ -24,9 +24,9 @@
.text
   ENTRY (syscall)
move.l 4(%sp), %d0  /* Load syscall number.  */
  - _DOARGS_5 (24)  /* Frob arguments.  */
  + _DOARGS_6 (28)  /* Frob arguments.  */
trap 0 /* Do the system call.  */
  - UNDOARGS_5  /* Unfrob arguments.  */
  + UNDOARGS_6  /* Unfrob arguments.  */
cmp.l -4095, %d0   /* Check %d0 for error.  */
jcc SYSCALL_ERROR_LABEL /* Jump to error handler if negative.  */
rts /* Return to caller.  */
 
 Thanks, installed.
 
 (Where?) So, should $someone submit that to eglibc-ports and
 Debisn src:eglibc? Did it indeed do the trick?

This patch should be reported to libc-po...@sourceware.org. If it also 

Reporting hereby.

needs to be applied to the Debian package quickly, please open a bug 
report in the Debian BTS.

@kernel people, is this needed / useful? Do we want/need this?
(I wonder why it's not using _DOARGS_6 already, as that looks
as if it were designed for it.)

bye,
//mirabilos
-- 
22:20⎜asarch The crazy that persists in his craziness becomes a master
22:21⎜asarch And the distance between the craziness and geniality is
only measured by the success 18:35⎜asarch Psychotics are consistently
inconsistent. The essence of sanity is to be inconsistently inconsistent


--
To UNSUBSCRIBE, email to debian-glibc-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Archive: 
http://lists.debian.org/pine.bsm.4.64l.1112170255070@herc.mirbsd.org



Re: [m68k] eglibc expected(?) testsuite results

2011-12-16 Thread Thorsten Glaser
Finn Thain dixit:

 I have just included it as the expected tests results. I have to say the
 list of failure seems to say that m68k is not really in a good state.

Mh. I’m just the builder.

It might be worth running the tests on physical hardware instead of an 
emulator.

You just volunteered. (In fact, from what I heard on the list, the
FPU emulation is known bad; the rest is good enough to be usable.)

bye,
//mirabilos
-- 
In traditional syntax ' is ignored, but in c99 everything between two ' is
handled as character constant.  Therefore you cannot use ' in a preproces-
sing file in c99 mode.  -- Ragge
No faith left in ISO C99, undefined behaviour, etc.


--
To UNSUBSCRIBE, email to debian-glibc-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Archive: 
http://lists.debian.org/pine.bsm.4.64l.1112170323190@herc.mirbsd.org



Bug#652428: eglibc: [INTL:ru] Russian debconf templates translation update

2011-12-16 Thread Yuri Kozlov
Package: eglibc
Version: 2.13-23
Severity: wishlist
Tags: l10n patch


Russian debconf templates translation update is attached.

-- System Information:
Debian Release: 6.0.1
  APT prefers testing
  APT policy: (500, 'testing'), (500, 'stable')
Architecture: amd64 (x86_64)

Kernel: Linux 3.0.0-1-amd64 (SMP w/4 CPU cores)
Locale: LANG=ru_RU.UTF-8, LC_CTYPE=ru_RU.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
# translation of ru.po to Russian
# Translation of glibc debconf .po to Russian
# This file is distributed under the same license as the eglibc package.
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER.
#
# Yuri Kozlov kozlo...@gmail.com, 2006.
# Sergey Alyoshin alyoshi...@gmail.com, 2007, 2008.
# Yuri Kozlov yu...@komyakino.ru, 2009, 2011.
msgid 
msgstr 
Project-Id-Version: eglibc 2.13-23\n
Report-Msgid-Bugs-To: egl...@packages.debian.org\n
POT-Creation-Date: 2011-10-30 11:52-0700\n
PO-Revision-Date: 2011-12-17 09:26+0400\n
Last-Translator: Yuri Kozlov yu...@komyakino.ru\n
Language-Team: Russian debian-l10n-russ...@lists.debian.org\n
Language: ru\n
MIME-Version: 1.0\n
Content-Type: text/plain; charset=UTF-8\n
Content-Transfer-Encoding: 8bit\n
X-Generator: Lokalize 1.0\n
Plural-Forms:  nplurals=3; plural=(n%10==1  n%100!=11 ? 0 : n%10=2  
n%10=4  (n%10010 || n%100=20) ? 1 : 2);\n

#. Type: multiselect
#. Choices
#: ../debhelper.in/locales.templates:1001
msgid All locales
msgstr Все локали

#. Type: multiselect
#. Description
#: ../debhelper.in/locales.templates:1002
msgid Locales to be generated:
msgstr Локали, которые будут созданы:

#. Type: multiselect
#. Description
#: ../debhelper.in/locales.templates:1002
msgid 
Locales are a framework to switch between multiple languages and allow users 
to use their language, country, characters, collation order, etc.
msgstr 
Локаль -- это инфраструктура для поддержки в системе нескольких языков; она 
позволяет пользователю настроить язык сообщений, страну, алфавит, порядок 
сортировки и т.п.

#. Type: multiselect
#. Description
#: ../debhelper.in/locales.templates:1002
msgid 
Please choose which locales to generate. UTF-8 locales should be chosen by 
default, particularly for new installations. Other character sets may be 
useful for backwards compatibility with older systems and software.
msgstr 
Выберите создаваемые локали. Кодировка локали UTF-8 должна быть выбрана по 
умолчанию, особенно при новой инсталляции. Другие кодировки локали могут 
быть полезны для обратной совместимости со старыми системами и программами.

#. Type: select
#. Choices
#: ../debhelper.in/locales.templates:2001
msgid None
msgstr Нет

#. Type: select
#. Description
#: ../debhelper.in/locales.templates:2002
msgid Default locale for the system environment:
msgstr Локаль по умолчанию в системном окружении:

#. Type: select
#. Description
#: ../debhelper.in/locales.templates:2002
msgid 
Many packages in Debian use locales to display text in the correct language 
for the user. You can choose a default locale for the system from the 
generated locales.
msgstr 
Многие пакеты в Debian используют локали для отображения сообщений на языке 
пользователя. Вы можете выбрать из созданных локалей системную локаль по 
умолчанию.

#. Type: select
#. Description
#: ../debhelper.in/locales.templates:2002
msgid 
This will select the default language for the entire system. If this system 
is a multi-user system where not all users are able to speak the default 
language, they will experience difficulties.
msgstr 
Эта настройка устанавливает язык по умолчанию для всей системы. Если это 
многопользовательская система, где не все пользователи говорят на выбранном 
языке по умолчанию, то у них возникнут трудности.

#. Type: boolean
#. Description
#: ../debhelper.in/libc.templates:1001
msgid Do you want to upgrade glibc now?
msgstr Хотите выполнить обновление glibc сейчас?

#. Type: boolean
#. Description
#: ../debhelper.in/libc.templates:1001
msgid 
Running services and programs that are using NSS need to be restarted, 
otherwise they might not be able to do lookup or authentication any more. 
The installation process is able to restart some services (such as ssh or 
telnetd), but other programs cannot be restarted automatically. One such 
program that needs manual stopping and restart after the glibc upgrade by 
yourself is xdm - because automatic restart might disconnect your active X11 
sessions.
msgstr 
Запущенные службы и программы, которые используют NSS, должны быть 
перезапущены, иначе они не будут способны выполнять поиск или 
аутентификацию. В процессе установки возможно перезапустить некоторые 
службы (такие, как ssh или telnetd), но другие программы не могут быть 
автоматически перезапущены. Одна из таких программ, которая требует ручной 
остановки и перезапуска после обновления glibc, это xdm, так как её 
автоматический перезапуск может отключить ваши активные сессии X11.

#. Type: boolean
#. Description
#: ../debhelper.in/libc.templates:1001
msgid 
This script detected the following 

Re: struct user conflicts on arm

2011-12-16 Thread peter green

Ulrich WeigandNow, glibc also provides a file sys/ucontext.h that defines
Ulrich Weigandlayouts of register sets for use with signal handlers as well
Ulrich Weigandas the makecontext/setcontext/getcontext family of routines.
Ulrich Weigand
Ulrich WeigandUsually, those layouts tend to be in fact identical to the
Ulrich Weigandlayouts described in sys/user.h / sys/procfs.h.  Apparently,
Ulrich Weigandwhoever implemented the ARM version of sys/ucontext.h was
Ulrich Weigandtrying to avoid some seemingly unnecessary code duplication
Ulrich Weigandby making sys/ucontext.h *include* sys/procfs.h and using
Ulrich Weigandthe information from there directly.  This is not done on other
Ulrich Weigandplatforms, for precisely the reason that the sys/procfs.h
Ulrich Weigandand sys/user.h headers do pollute the name space ...
Ulrich Weigand
Ulrich WeigandSo I think the right thing to do in the short term would be to
Ulrich Weigandstop sys/ucontext.h including sys/procfs.h, and instead add 
the
Ulrich Weigandregister set information there directly, even if that means some
Ulrich Weigandduplication of code.  (Again, since this is never-changing ABI,
Ulrich Weigandduplication isn't actually all that bad.  Also, all the other
Ulrich Weigandplatforms do it that way too, so why should ARM be different ...)
Makes sense to me

While we are talking about modifying sys/ucontext.h David Given
raised another issue with that header (for those reading on the linaro list his
post can be found at http://lists.debian.org/debian-arm/2011/12/msg00048.html)
David GivenThis might be a good time to mention that on ARM, sys/ucontext.h 
defines
David Givenboth symbols and preprocessor macros called R0, R1, R2, etc in the
David Givenglobal namespace; this is causing one of my packages to fail to 
build
David Givendue to symbol collision.
David Given
David GivenI'm fixing the package, but naming symbols stuff like that is still
David Givenpretty antisocial...
Does anyone know what the impact of renaming these to use a REG_ prefix like
i386, amd64 and sparc do* would be?

* ia64,mips, mipsel, powerpc, 390 and s390x don't seem to define such
symbols at all.


--
To UNSUBSCRIBE, email to debian-glibc-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/4eec420f.8010...@postgrad.manchester.ac.uk