[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

r2403 - in glibc-package/trunk/debian: . debhelper.in maint patches/all patches/any patches/arm patches/hppa patches/hurd-i386 patches/i386 patches/localedata patches/sparc



Author: schizo
Date: 2007-07-07 16:29:26 +0000 (Sat, 07 Jul 2007)
New Revision: 2403

Added:
   glibc-package/trunk/debian/debhelper.in/nscd.lintian
   glibc-package/trunk/debian/maint/
   glibc-package/trunk/debian/maint/grab-testsuites.sh
   glibc-package/trunk/debian/patches/any/submitted-fileops-and-signals.diff
   glibc-package/trunk/debian/patches/arm/submitted-RTLD_SINGLE_THREAD_P.diff
   glibc-package/trunk/debian/patches/hppa/local-linuxthreads.diff
   glibc-package/trunk/debian/patches/hurd-i386/submitted-ioctl-unsigned-size_t.diff
   glibc-package/trunk/debian/patches/localedata/fix-am_ET.diff
   glibc-package/trunk/debian/patches/localedata/submitted-as_IN.diff
   glibc-package/trunk/debian/patches/sparc/local-undefined-registers.diff
Modified:
   glibc-package/trunk/debian/patches/all/local-ru_RU.diff
   glibc-package/trunk/debian/patches/any/local-forward-backward-collation.diff
   glibc-package/trunk/debian/patches/i386/local-biarch.diff
   glibc-package/trunk/debian/patches/localedata/locale-de_CH.diff
   glibc-package/trunk/debian/patches/localedata/locale-ku_TR.diff
   glibc-package/trunk/debian/patches/localedata/locale-no_NO.diff
Log:
Merge commit 'glibc-2.6'


Added: glibc-package/trunk/debian/debhelper.in/nscd.lintian
===================================================================
--- glibc-package/trunk/debian/debhelper.in/nscd.lintian	                        (rev 0)
+++ glibc-package/trunk/debian/debhelper.in/nscd.lintian	2007-07-07 16:29:26 UTC (rev 2403)
@@ -0,0 +1 @@
+nscd: non-standard-dir-in-var var/db/

Added: glibc-package/trunk/debian/maint/grab-testsuites.sh
===================================================================
--- glibc-package/trunk/debian/maint/grab-testsuites.sh	                        (rev 0)
+++ glibc-package/trunk/debian/maint/grab-testsuites.sh	2007-07-07 16:29:26 UTC (rev 2403)
@@ -0,0 +1,34 @@
+#!/bin/sh -e
+#
+# This scripts pulls all the .debs in a debian mirror, and extracts testsuite failures, then sorts them.
+#
+# Copyright © 2007 Pierre Habouzit <madcoder@debian.org>
+#
+# This script is in the public domain.
+
+[ $# -eq 1 ] && cd "$1"
+
+(mkdir -p debs && cd debs && lftp -e "cd debian/pool/main/g/glibc/; mget -c libc6_*.deb; mget -c libc6.1_*.deb; exit" ftp.debian.org)
+
+to_gnu() {
+    dpkg-architecture -a"$1" -qDEB_HOST_GNU_TYPE 2>/dev/null
+}
+
+trap "rm -rf here" 0
+
+for i in debs/*.deb; do
+    arch="${i##*_}"
+    arch="${arch%.deb}"
+    version="${i#*_}"
+    version="${version%_*}"
+
+    dpkg -x "$i" here
+    for log in $(ls here/usr/share/doc/libc6*/log-test-`to_gnu "$arch"`-libc.gz 2>/dev/null); do
+        zgrep -e '(Error|Erreur)' "$log" | sed -e '{
+            s/^make[^:]*: \** *//g;
+            s~^\[.*libc/~~g;
+            s~\].*~~g;
+        }' | grep -v '^\[' | sort -u > "${arch}_${version}.testsuite"
+    done
+    rm -rf here
+done


Property changes on: glibc-package/trunk/debian/maint/grab-testsuites.sh
___________________________________________________________________
Name: svn:executable
   + *

Modified: glibc-package/trunk/debian/patches/all/local-ru_RU.diff
===================================================================


Property changes on: glibc-package/trunk/debian/patches/all/local-ru_RU.diff
___________________________________________________________________
Name: svn:executable
   - *

Modified: glibc-package/trunk/debian/patches/any/local-forward-backward-collation.diff
===================================================================


Property changes on: glibc-package/trunk/debian/patches/any/local-forward-backward-collation.diff
___________________________________________________________________
Name: svn:executable
   - *

Added: glibc-package/trunk/debian/patches/any/submitted-fileops-and-signals.diff
===================================================================
--- glibc-package/trunk/debian/patches/any/submitted-fileops-and-signals.diff	                        (rev 0)
+++ glibc-package/trunk/debian/patches/any/submitted-fileops-and-signals.diff	2007-07-07 16:29:26 UTC (rev 2403)
@@ -0,0 +1,26 @@
+Index: glibc-2.6/libio/fileops.c
+===================================================================
+--- glibc-2.6.orig/libio/fileops.c
++++ glibc-2.6/libio/fileops.c
+@@ -517,10 +517,19 @@
+     fp->_cur_column = INTUSE(_IO_adjust_column) (fp->_cur_column - 1, data,
+ 						 count) + 1;
+   _IO_setg (fp, fp->_IO_buf_base, fp->_IO_buf_base, fp->_IO_buf_base);
+-  fp->_IO_write_base = fp->_IO_write_ptr = fp->_IO_buf_base;
+-  fp->_IO_write_end = (fp->_mode <= 0
++  if (__builtin_expect (count == to_do, 1))
++    {
++      fp->_IO_write_base = fp->_IO_write_ptr = fp->_IO_buf_base;
++      fp->_IO_write_end = (fp->_mode <= 0
+ 		       && (fp->_flags & (_IO_LINE_BUF+_IO_UNBUFFERED))
+ 		       ? fp->_IO_buf_base : fp->_IO_buf_end);
++    }
++  else if (count > 0 && fp->_IO_write_base == data)
++    {
++      memmove (data, data+count, 
++               fp->_IO_write_ptr - fp->_IO_write_base - count);
++      fp->_IO_write_ptr -= count;
++    }
+   return count;
+ }
+ 

Added: glibc-package/trunk/debian/patches/arm/submitted-RTLD_SINGLE_THREAD_P.diff
===================================================================
--- glibc-package/trunk/debian/patches/arm/submitted-RTLD_SINGLE_THREAD_P.diff	                        (rev 0)
+++ glibc-package/trunk/debian/patches/arm/submitted-RTLD_SINGLE_THREAD_P.diff	2007-07-07 16:29:26 UTC (rev 2403)
@@ -0,0 +1,19 @@
+2007-05-25  Aurelien Jarno  <aurelien@aurel32.net>
+
+	* sysdeps/unix/sysv/linux/arm/nptl/sysdep-cancel.h
+	(RTLD_SINGLE_THREAD_P): Define.
+
+Index: ports/sysdeps/unix/sysv/linux/arm/nptl/sysdep-cancel.h
+===================================================================
+--- ports/sysdeps/unix/sysv/linux/arm/nptl/sysdep-cancel.h.orig
++++ ports/sysdeps/unix/sysv/linux/arm/nptl/sysdep-cancel.h
+@@ -126,3 +126,9 @@
+ # define NO_CANCELLATION 1
+ 
+ #endif
++
++#ifndef __ASSEMBLER__
++# define RTLD_SINGLE_THREAD_P \
++  __builtin_expect (THREAD_GETMEM (THREAD_SELF, \
++				   header.multiple_threads) == 0, 1)
++#endif

Added: glibc-package/trunk/debian/patches/hppa/local-linuxthreads.diff
===================================================================
--- glibc-package/trunk/debian/patches/hppa/local-linuxthreads.diff	                        (rev 0)
+++ glibc-package/trunk/debian/patches/hppa/local-linuxthreads.diff	2007-07-07 16:29:26 UTC (rev 2403)
@@ -0,0 +1,318 @@
+Index: ports/sysdeps/unix/sysv/linux/hppa/linuxthreads/lowlevellock.h
+===================================================================
+--- /dev/null
++++ ports/sysdeps/unix/sysv/linux/hppa/linuxthreads/lowlevellock.h
+@@ -0,0 +1,298 @@
++/* Copyright (C) 2003, 2004, 2005 Free Software Foundation, Inc.
++   This file is part of the GNU C Library.
++
++   The GNU C Library is free software; you can redistribute it and/or
++   modify it under the terms of the GNU Lesser General Public
++   License as published by the Free Software Foundation; either
++   version 2.1 of the License, or (at your option) any later version.
++
++   The GNU C Library is distributed in the hope that it will be useful,
++   but WITHOUT ANY WARRANTY; without even the implied warranty of
++   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.	 See the GNU
++   Lesser General Public License for more details.
++
++   You should have received a copy of the GNU Lesser General Public
++   License along with the GNU C Library; if not, write to the Free
++   Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
++   02111-1307 USA.  */
++
++#ifndef _LOWLEVELLOCK_H
++#define _LOWLEVELLOCK_H	1
++
++#include <time.h>
++#include <sys/param.h>
++#include <bits/pthreadtypes.h>
++#include <sysdep.h>
++#include <atomic.h>
++
++/* The hppa only has one atomic read and modify memory operation,
++   load and clear, so hppa uses a kernel helper routine to implement
++   compare_and_exchange. See atomic.h for the userspace calling
++   sequence.  */
++
++#define FUTEX_WAIT		0
++#define FUTEX_WAKE		1
++#define FUTEX_REQUEUE		3
++#define FUTEX_CMP_REQUEUE	4
++#define FUTEX_WAKE_OP		5
++#define FUTEX_OP_CLEAR_WAKE_IF_GT_ONE	((4 << 24) | 1)
++#define FUTEX_LOCK_PI		6
++#define FUTEX_UNLOCK_PI		7
++#define FUTEX_TRYLOCK_PI	8
++
++/* Initialize locks to zero.  */
++#define LLL_MUTEX_LOCK_INITIALIZER (0)
++
++
++/* Type for lock object.  */
++typedef int lll_lock_t;
++
++
++#define lll_futex_wait(futexp, val) \
++  ({									      \
++    INTERNAL_SYSCALL_DECL (__err);					      \
++    long int __ret;							      \
++    __ret = INTERNAL_SYSCALL (futex, __err, 4,				      \
++			      (futexp), FUTEX_WAIT, (val), 0);		      \
++    __ret;								      \
++  })
++
++#define lll_futex_timed_wait(futexp, val, timespec) \
++  ({									      \
++    INTERNAL_SYSCALL_DECL (__err);					      \
++    long int __ret;							      \
++    __ret = INTERNAL_SYSCALL (futex, __err, 4,				      \
++			      (futexp), FUTEX_WAIT, (val), (timespec));	      \
++    __ret;								      \
++  })
++
++#define lll_futex_wake(futexp, nr) \
++  ({									      \
++    INTERNAL_SYSCALL_DECL (__err);					      \
++    long int __ret;							      \
++    __ret = INTERNAL_SYSCALL (futex, __err, 4,				      \
++			      (futexp), FUTEX_WAKE, (nr), 0);		      \
++    __ret;								      \
++  })
++
++#define lll_robust_mutex_dead(futexv) \
++  do									      \
++    {									      \
++      int *__futexp = &(futexv);					      \
++      atomic_or (__futexp, FUTEX_OWNER_DIED);				      \
++      lll_futex_wake (__futexp, 1);					      \
++    }									      \
++  while (0)
++
++/* Returns non-zero if error happened, zero if success.  */
++#define lll_futex_requeue(futexp, nr_wake, nr_move, mutex, val) \
++  ({									      \
++    INTERNAL_SYSCALL_DECL (__err);					      \
++    long int __ret;							      \
++    __ret = INTERNAL_SYSCALL (futex, __err, 6,				      \
++			      (futexp), FUTEX_CMP_REQUEUE, (nr_wake),	      \
++			      (nr_move), (mutex), (val));		      \
++    __ret;								      \
++  })
++
++/* Returns non-zero if error happened, zero if success.  */
++#define lll_futex_wake_unlock(futexp, nr_wake, nr_wake2, futexp2) \
++  ({									      \
++    INTERNAL_SYSCALL_DECL (__err);					      \
++    long int __ret;							      \
++    __ret = INTERNAL_SYSCALL (futex, __err, 6,				      \
++			      (futexp), FUTEX_WAKE_OP, (nr_wake),	      \
++			      (nr_wake2), (futexp2),			      \
++			      FUTEX_OP_CLEAR_WAKE_IF_GT_ONE);		      \
++    __ret;								      \
++  })
++
++static inline int __attribute__((always_inline))
++__lll_mutex_trylock(lll_lock_t *futex)
++{
++  return atomic_compare_and_exchange_val_acq (futex, 1, 0) != 0;
++}
++#define lll_mutex_trylock(lock)	__lll_mutex_trylock (&(lock))
++
++static inline int __attribute__((always_inline))
++__lll_robust_mutex_trylock(int *futex, int id)
++{
++  return atomic_compare_and_exchange_val_acq (futex, id, 0) != 0;
++}
++#define lll_robust_mutex_trylock(lock, id) \
++  __lll_robust_mutex_trylock (&(lock), id)
++
++
++static inline int __attribute__((always_inline))
++__lll_mutex_cond_trylock(lll_lock_t *futex)
++{
++  return atomic_compare_and_exchange_val_acq (futex, 2, 0) != 0;
++}
++#define lll_mutex_cond_trylock(lock)	__lll_mutex_cond_trylock (&(lock))
++
++
++extern void __lll_lock_wait (lll_lock_t *futex) attribute_hidden;
++
++static inline void __attribute__((always_inline))
++__lll_mutex_lock(lll_lock_t *futex)
++{
++  if (atomic_compare_and_exchange_bool_acq (futex, 1, 0) != 0)
++    __lll_lock_wait (futex);
++}
++#define lll_mutex_lock(futex) __lll_mutex_lock (&(futex))
++
++extern int __lll_robust_lock_wait (int *futex) attribute_hidden;
++
++static inline int __attribute__ ((always_inline))
++__lll_robust_mutex_lock (int *futex, int id)
++{
++  int result = 0;
++  if (atomic_compare_and_exchange_bool_acq (futex, id, 0) != 0)
++    result = __lll_robust_lock_wait (futex);
++  return result;
++}
++#define lll_robust_mutex_lock(futex, id) \
++  __lll_robust_mutex_lock (&(futex), id)
++
++static inline void __attribute__ ((always_inline))
++__lll_mutex_cond_lock (lll_lock_t *futex)
++{
++  if (atomic_compare_and_exchange_bool_acq (futex, 2, 0) != 0)
++    __lll_lock_wait (futex);
++}
++#define lll_mutex_cond_lock(futex) __lll_mutex_cond_lock (&(futex))
++
++
++#define lll_robust_mutex_cond_lock(futex, id) \
++  __lll_robust_mutex_lock (&(futex), (id) | FUTEX_WAITERS)
++
++
++extern int __lll_timedlock_wait (lll_lock_t *futex, const struct timespec *)
++	attribute_hidden;
++extern int __lll_robust_timedlock_wait (int *futex, const struct timespec *)
++	attribute_hidden;
++
++static inline int __attribute__ ((always_inline))
++__lll_mutex_timedlock (lll_lock_t *futex, const struct timespec *abstime)
++{
++  int result = 0;
++  if (atomic_compare_and_exchange_bool_acq (futex, 1, 0) != 0)
++    result = __lll_timedlock_wait (futex, abstime);
++  return result;
++}
++#define lll_mutex_timedlock(futex, abstime) \
++  __lll_mutex_timedlock (&(futex), abstime)
++
++static inline int __attribute__ ((always_inline))
++__lll_robust_mutex_timedlock (int *futex, const struct timespec *abstime,
++			      int id)
++{
++  int result = 0;
++  if (atomic_compare_and_exchange_bool_acq (futex, id, 0) != 0)
++    result = __lll_robust_timedlock_wait (futex, abstime);
++  return result;
++}
++#define lll_robust_mutex_timedlock(futex, abstime, id) \
++  __lll_robust_mutex_timedlock (&(futex), abstime, id)
++
++
++static inline void __attribute__ ((always_inline))
++__lll_mutex_unlock (lll_lock_t *futex)
++{
++  int val = atomic_exchange_rel (futex, 0);
++  if (__builtin_expect (val > 1, 0))
++    lll_futex_wake (futex, 1);
++}
++#define lll_mutex_unlock(futex) __lll_mutex_unlock(&(futex))
++
++
++static inline void __attribute__ ((always_inline))
++__lll_robust_mutex_unlock (int *futex, int mask)
++{
++  int val = atomic_exchange_rel (futex, 0);
++  if (__builtin_expect (val & mask, 0))
++    lll_futex_wake (futex, 1);
++}
++#define lll_robust_mutex_unlock(futex) \
++  __lll_robust_mutex_unlock(&(futex), FUTEX_WAITERS)
++
++
++static inline void __attribute__ ((always_inline))
++__lll_mutex_unlock_force (lll_lock_t *futex)
++{
++  (void) atomic_exchange_rel (futex, 0);
++  lll_futex_wake (futex, 1);
++}
++#define lll_mutex_unlock_force(futex) __lll_mutex_unlock_force(&(futex))
++
++#define lll_mutex_islocked(futex) \
++  (futex != 0)
++
++/* Our internal lock implementation is identical to the binary-compatible
++   mutex implementation. */
++
++#define LLL_LOCK_INITIALIZER (0)
++#define LLL_LOCK_INITIALIZER_CONST (0)
++#define LLL_LOCK_INITIALIZER_LOCKED (1)
++
++
++#define THREAD_INIT_LOCK(PD, LOCK) \
++  (PD)->LOCK = LLL_LOCK_INITIALIZER
++
++extern int lll_unlock_wake_cb (lll_lock_t *__futex) attribute_hidden;
++
++/* The states of a lock are:
++    0  -  untaken
++    1  -  taken by one user
++   >1  -  taken by more users */
++
++#define lll_trylock(lock)	lll_mutex_trylock (lock)
++#define lll_lock(lock)		lll_mutex_lock (lock)
++#define lll_unlock(lock)	lll_mutex_unlock (lock)
++#define lll_islocked(lock)	lll_mutex_islocked (lock)
++
++/* The kernel notifies a process which uses CLONE_CLEARTID via futex
++   wakeup when the clone terminates.  The memory location contains the
++   thread ID while the clone is running and is reset to zero
++   afterwards.	*/
++#define lll_wait_tid(tid) \
++  do {					\
++    __typeof (tid) __tid;		\
++    while ((__tid = (tid)) != 0)	\
++      lll_futex_wait (&(tid), __tid);	\
++  } while (0)
++
++extern int __lll_timedwait_tid (int *, const struct timespec *)
++     attribute_hidden;
++
++#define lll_timedwait_tid(tid, abstime) \
++  ({							\
++    int __res = 0;					\
++    if ((tid) != 0)					\
++      __res = __lll_timedwait_tid (&(tid), (abstime));	\
++    __res;						\
++  })
++
++
++/* Conditional variable handling.  */
++
++extern void __lll_cond_wait (pthread_cond_t *cond)
++     attribute_hidden;
++extern int __lll_cond_timedwait (pthread_cond_t *cond,
++				 const struct timespec *abstime)
++     attribute_hidden;
++extern void __lll_cond_wake (pthread_cond_t *cond)
++     attribute_hidden;
++extern void __lll_cond_broadcast (pthread_cond_t *cond)
++     attribute_hidden;
++
++#define lll_cond_wait(cond) \
++  __lll_cond_wait (cond)
++#define lll_cond_timedwait(cond, abstime) \
++  __lll_cond_timedwait (cond, abstime)
++#define lll_cond_wake(cond) \
++  __lll_cond_wake (cond)
++#define lll_cond_broadcast(cond) \
++  __lll_cond_broadcast (cond)
++
++#endif	/* lowlevellock.h */
+Index: ports/sysdeps/unix/sysv/linux/hppa/linuxthreads/sysdep-cancel.h
+===================================================================
+--- ports/sysdeps/unix/sysv/linux/hppa/linuxthreads/sysdep-cancel.h.orig
++++ ports/sysdeps/unix/sysv/linux/hppa/linuxthreads/sysdep-cancel.h
+@@ -236,3 +236,10 @@
+ 
+ #endif
+ /* !defined NOT_IN_libc || defined IS_IN_libpthread */
++
++#ifndef __ASSEMBLER__
++# define RTLD_SINGLE_THREAD_P \
++  __builtin_expect (THREAD_GETMEM (THREAD_SELF, \
++				   p_multiple_threads) == 0, 1)
++#endif
++

Added: glibc-package/trunk/debian/patches/hurd-i386/submitted-ioctl-unsigned-size_t.diff
===================================================================
--- glibc-package/trunk/debian/patches/hurd-i386/submitted-ioctl-unsigned-size_t.diff	                        (rev 0)
+++ glibc-package/trunk/debian/patches/hurd-i386/submitted-ioctl-unsigned-size_t.diff	2007-07-07 16:29:26 UTC (rev 2403)
@@ -0,0 +1,13 @@
+Index: sysdeps/mach/hurd/bits/ioctls.h
+===================================================================
+--- sysdeps/mach/hurd/bits/ioctls.h	7 Jan 2006 23:29:39 -0000	1.8
++++ sysdeps/mach/hurd/bits/ioctls.h	1 Jul 2007 22:26:21 -0000
+@@ -112,6 +112,8 @@ enum __ioctl_datum { IOC_8, IOC_16, IOC_
+ #define	_IOT__IOTBASE_int	_IOT_SIMPLE (int)
+ #define	_IOT__IOTBASE_char	_IOT_SIMPLE (char)
+ #define	_IOT__IOTBASE_short	_IOT_SIMPLE (short)
++#define	_IOT__IOTBASE_unsigned	_IOT_SIMPLE (unsigned)
++#define	_IOT__IOTBASE_size_t	_IOT_SIMPLE (size_t)
+ 
+ 
+ /* Standard flavors of ioctls.

Modified: glibc-package/trunk/debian/patches/i386/local-biarch.diff
===================================================================


Property changes on: glibc-package/trunk/debian/patches/i386/local-biarch.diff
___________________________________________________________________
Name: svn:executable
   - *

Added: glibc-package/trunk/debian/patches/localedata/fix-am_ET.diff
===================================================================
--- glibc-package/trunk/debian/patches/localedata/fix-am_ET.diff	                        (rev 0)
+++ glibc-package/trunk/debian/patches/localedata/fix-am_ET.diff	2007-07-07 16:29:26 UTC (rev 2403)
@@ -0,0 +1,27 @@
+Index: glibc-2.6/localedata/locales/am_ET
+===================================================================
+--- glibc-2.6.orig/localedata/locales/am_ET
++++ glibc-2.6/localedata/locales/am_ET
+@@ -58,7 +58,7 @@
+ %
+ %  The ETHIOPIC script declaration must come first.
+ %
+-script <ETHIOPIC>
++define USE_ETHIOPIC
+ %
+ % Copy the template from ISO/IEC 14651
+ %
+Index: glibc-2.6/localedata/locales/iso14651_t1_common
+===================================================================
+--- glibc-2.6.orig/localedata/locales/iso14651_t1_common
++++ glibc-2.6/localedata/locales/iso14651_t1_common
+@@ -50,6 +50,9 @@
+ # 2005-11-29, Pablo Saratxaga <pablo@mandriva.com>
+ 
+ # Déclaration des systèmes d'écriture / Declaration of scripts
++ifdef USE_ETHIOPIC
++script <ETHIOPIC>
++endif
+ script <SPECIAL>
+ script <LATIN>
+ script <TIFINAGH>

Modified: glibc-package/trunk/debian/patches/localedata/locale-de_CH.diff
===================================================================


Property changes on: glibc-package/trunk/debian/patches/localedata/locale-de_CH.diff
___________________________________________________________________
Name: svn:executable
   - *

Modified: glibc-package/trunk/debian/patches/localedata/locale-ku_TR.diff
===================================================================


Property changes on: glibc-package/trunk/debian/patches/localedata/locale-ku_TR.diff
___________________________________________________________________
Name: svn:executable
   - *

Modified: glibc-package/trunk/debian/patches/localedata/locale-no_NO.diff
===================================================================


Property changes on: glibc-package/trunk/debian/patches/localedata/locale-no_NO.diff
___________________________________________________________________
Name: svn:executable
   - *

Added: glibc-package/trunk/debian/patches/localedata/submitted-as_IN.diff
===================================================================
--- glibc-package/trunk/debian/patches/localedata/submitted-as_IN.diff	                        (rev 0)
+++ glibc-package/trunk/debian/patches/localedata/submitted-as_IN.diff	2007-07-07 16:29:26 UTC (rev 2403)
@@ -0,0 +1,15 @@
+http://sourceware.org/bugzilla/show_bug.cgi?id=4557
+
+Index: localedata/locales/as_IN
+===================================================================
+--- localedata/locales/as_IN.orig
++++ localedata/locales/as_IN
+@@ -596,7 +596,7 @@
+ <U09CC> <X689A>;<X0005>;<X0005>;IGNORE
+ <U09CD> <X689C>;<X0005>;<X0005>;IGNORE
+ <U09D7> <X689E>;<X0005>;<X0005>;IGNORE
+-<UNASSIGNED-09CE> "<XE2E9><X6B20>";<X0005>;"<X0005><X00C0>";IGNORE
++<U09CE> "<XE2E9><X6B20>";<X0005>;"<X0005><X00C0>";IGNORE
+ UNDEFINED IGNORE;IGNORE;IGNORE;%...
+ 
+ order_end

Added: glibc-package/trunk/debian/patches/sparc/local-undefined-registers.diff
===================================================================
--- glibc-package/trunk/debian/patches/sparc/local-undefined-registers.diff	                        (rev 0)
+++ glibc-package/trunk/debian/patches/sparc/local-undefined-registers.diff	2007-07-07 16:29:26 UTC (rev 2403)
@@ -0,0 +1,18 @@
+2007-05-24  Aurelien Jarno <aurelien@aurel32.net>
+
+	* elf/Makefile: ignore global registers while looking for
+	  undefined symbols. 
+
+Index: elf/Makefile
+===================================================================
+--- elf/Makefile.orig
++++ elf/Makefile
+@@ -311,7 +311,7 @@
+ 		  $(filter-out $(map-file),$^) $(load-map-file)		\
+ 		  -Wl,-soname=$(rtld-installed-name) -T $@.lds
+ 	rm -f $@.lds
+-	nm -u $@ | cmp -s /dev/null -
++	objdump -T $@ | grep 'D. \*UND\*' | cmp -s /dev/null -
+ 
+ # interp.c exists just to get this string into the libraries.
+ CFLAGS-interp.c = -D'RUNTIME_LINKER="$(slibdir)/$(rtld-installed-name)"' \



Reply to: