Author: aurel32 Date: 2011-02-26 19:57:54 +0000 (Sat, 26 Feb 2011) New Revision: 4546
Added: glibc-package/branches/multiarch/debian/debhelper.in/libc.prerm glibc-package/branches/multiarch/debian/patches/any/cvs-fnmatch-alloca.patch glibc-package/branches/multiarch/debian/patches/any/cvs-qsort-race.diff Modified: glibc-package/branches/multiarch/debian/changelog glibc-package/branches/multiarch/debian/patches/any/local-rtld.diff glibc-package/branches/multiarch/debian/patches/series glibc-package/branches/multiarch/debian/rules glibc-package/branches/multiarch/debian/sysdeps/amd64.mk glibc-package/branches/multiarch/debian/sysdeps/hurd-i386.mk glibc-package/branches/multiarch/debian/sysdeps/sparc64.mk Log: Merge from trunk Modified: glibc-package/branches/multiarch/debian/changelog =================================================================== --- glibc-package/branches/multiarch/debian/changelog 2011-02-26 19:46:14 UTC (rev 4545) +++ glibc-package/branches/multiarch/debian/changelog 2011-02-26 19:57:54 UTC (rev 4546) @@ -1,20 +1,6 @@ -eglibc (2.11.2-12) UNRELEASED; urgency=low +eglibc (2.11.2-13) UNRELEASED; urgency=low [ Aurelien Jarno ] - * Re-enable build failure in case of testsuite regressions. - - [ Samuel Thibault ] - * patches/any/submitted-sched_h.diff: Synchronize bits/sched.h with - sysdeps/unix/sysv/linux/bits/sched.h (Closes: #527589), rename to - cvs-sched_h.diff. - * patches/hurd-i386/cvs-if_freereq.diff: Fix crash when siocgifconf - actually succeeds. - - [ Clint Adams ] - * Patch from Nobuhiro Iwamatsu to cope with the removal of - patch --unified-reject-files. closes: #612540. - - [ Aurelien Jarno ] * Use the multiarch path for the native version and optimized flavors. * Simplify the creation of /etc/ld.so.conf.d/<triplet>.conf. * Install a symlink ABI -> multiarch path. @@ -37,8 +23,37 @@ precedence. * set multiarch field for new optimized hurd-i386 packages - -- Clint Adams <cl...@debian.org> Tue, 08 Feb 2011 22:29:28 -0500 + -- Aurelien Jarno <aure...@debian.org> Sat, 26 Feb 2011 18:28:26 +0100 +eglibc (2.11.2-12) unstable; urgency=medium + + [ Aurelien Jarno ] + * Re-enable build failure in case of testsuite regressions. + * Add patches/any/cvs-fnmatch-alloca.patch from upstream to fix a + memory corruption in fnmatch() that can lead to code execution. + Closes: #615120. + * Add patches/any/cvs-qsort-race.diff from upstream to fix race in + qsort_r(). Closes: #614892. + + [ Samuel Thibault ] + * patches/any/submitted-sched_h.diff: Synchronize bits/sched.h with + sysdeps/unix/sysv/linux/bits/sched.h (Closes: #527589), rename to + cvs-sched_h.diff. + * patches/hurd-i386/cvs-if_freereq.diff: Fix crash when siocgifconf + actually succeeds. + + [ Clint Adams ] + * Patch from Nobuhiro Iwamatsu to cope with the removal of + patch --unified-reject-files. closes: #612540. + + [ Steve Langasek ] + * Merge parts of multiarch patch: + - Use the correct path in the ldd script as well + - Set default rtlddir to /lib and override it when needed. + - Install xen library in $(libdir)/xen instead of /usr/lib/xen. + + -- Aurelien Jarno <aure...@debian.org> Sat, 26 Feb 2011 18:28:26 +0100 + eglibc (2.11.2-11) unstable; urgency=low * patches/kfreebsd/local-sysdeps.diff: remove stub marks for at* Added: glibc-package/branches/multiarch/debian/debhelper.in/libc.prerm =================================================================== --- glibc-package/branches/multiarch/debian/debhelper.in/libc.prerm (rev 0) +++ glibc-package/branches/multiarch/debian/debhelper.in/libc.prerm 2011-02-26 19:57:54 UTC (rev 4546) @@ -0,0 +1,24 @@ +#!/bin/sh +set -e +export LC_ALL=C + +type=$1 +preversion=$2 + +#DEBHELPER# + +if [ -n "$preversion" ]; then + if dpkg --compare-versions "$preversion" lt 2.12; then + # upgrading from a pre-multiarch libc to a multiarch libc; we have + # to blow away /etc/ld.so.cache, otherwise the old unpacked libc + # is still first in the cache and segfaults when combined with + # our newly-unpacked ld.so. For the moment, assume the version + # constraint is the same as for NSS (but it may need to be + # tightened) + # and do this last to avoid slowing down the rest of the upgrade. + rm -f /etc/ld.so.cache + fi +fi + +exit 0 +w Added: glibc-package/branches/multiarch/debian/patches/any/cvs-fnmatch-alloca.patch =================================================================== --- glibc-package/branches/multiarch/debian/patches/any/cvs-fnmatch-alloca.patch (rev 0) +++ glibc-package/branches/multiarch/debian/patches/any/cvs-fnmatch-alloca.patch 2011-02-26 19:57:54 UTC (rev 4546) @@ -0,0 +1,446 @@ +2010-11-11 Andreas Schwab <sch...@redhat.com> + + * posix/fnmatch_loop.c (NEW_PATTERN): Fix use of alloca. + +2010-08-09 Ulrich Drepper <drep...@redhat.com> + + [BZ #11883] + * posix/fnmatch.c: Keep track of alloca use and fall back on malloc. + * posix/fnmatch_loop.c: Likewise. + +diff a/posix/fnmatch.c b/posix/fnmatch.c +--- a/posix/fnmatch.c ++++ b/posix/fnmatch.c +@@ -1,4 +1,4 @@ +-/* Copyright (C) 1991,1992,1993,1996,1997,1998,1999,2000,2001,2002,2003,2007 ++/* Copyright (C) 1991,1992,1993,1996,1997,1998,1999,2000,2001,2002,2003,2007,2010 + Free Software Foundation, Inc. + This file is part of the GNU C Library. + +@@ -41,6 +41,12 @@ + # include <stdlib.h> + #endif + ++#ifdef _LIBC ++# include <alloca.h> ++#else ++# define alloca_account(size., var) alloca (size) ++#endif ++ + /* For platform which support the ISO C amendement 1 functionality we + support user defined character classes. */ + #if defined _LIBC || (defined HAVE_WCTYPE_H && defined HAVE_WCHAR_H) +@@ -330,8 +336,11 @@ fnmatch (pattern, string, flags) + mbstate_t ps; + size_t n; + const char *p; ++ wchar_t *wpattern_malloc = NULL; + wchar_t *wpattern; ++ wchar_t *wstring_malloc = NULL; + wchar_t *wstring; ++ size_t alloca_used = 0; + + /* Convert the strings into wide characters. */ + memset (&ps, '\0', sizeof (ps)); +@@ -343,7 +352,8 @@ fnmatch (pattern, string, flags) + #endif + if (__builtin_expect (n < 1024, 1)) + { +- wpattern = (wchar_t *) alloca ((n + 1) * sizeof (wchar_t)); ++ wpattern = (wchar_t *) alloca_account ((n + 1) * sizeof (wchar_t), ++ alloca_used); + n = mbsrtowcs (wpattern, &p, n + 1, &ps); + if (__builtin_expect (n == (size_t) -1, 0)) + /* Something wrong. +@@ -365,8 +375,11 @@ fnmatch (pattern, string, flags) + XXX Do we have to set `errno' to something which mbsrtows hasn't + already done? */ + return -1; +- wpattern = (wchar_t *) alloca ((n + 1) * sizeof (wchar_t)); ++ wpattern_malloc = wpattern ++ = (wchar_t *) malloc ((n + 1) * sizeof (wchar_t)); + assert (mbsinit (&ps)); ++ if (wpattern == NULL) ++ return -2; + (void) mbsrtowcs (wpattern, &pattern, n + 1, &ps); + } + +@@ -379,13 +392,18 @@ fnmatch (pattern, string, flags) + p = string; + if (__builtin_expect (n < 1024, 1)) + { +- wstring = (wchar_t *) alloca ((n + 1) * sizeof (wchar_t)); ++ wstring = (wchar_t *) alloca_account ((n + 1) * sizeof (wchar_t), ++ alloca_used); + n = mbsrtowcs (wstring, &p, n + 1, &ps); + if (__builtin_expect (n == (size_t) -1, 0)) +- /* Something wrong. +- XXX Do we have to set `errno' to something which mbsrtows hasn't +- already done? */ +- return -1; ++ { ++ /* Something wrong. ++ XXX Do we have to set `errno' to something which ++ mbsrtows hasn't already done? */ ++ free_return: ++ free (wpattern_malloc); ++ return -1; ++ } + if (p) + { + memset (&ps, '\0', sizeof (ps)); +@@ -400,19 +418,32 @@ fnmatch (pattern, string, flags) + /* Something wrong. + XXX Do we have to set `errno' to something which mbsrtows hasn't + already done? */ +- return -1; +- wstring = (wchar_t *) alloca ((n + 1) * sizeof (wchar_t)); ++ goto free_return; ++ ++ wstring_malloc = wstring ++ = (wchar_t *) malloc ((n + 1) * sizeof (wchar_t)); ++ if (wstring == NULL) ++ { ++ free (wpattern_malloc); ++ return -2; ++ } + assert (mbsinit (&ps)); + (void) mbsrtowcs (wstring, &string, n + 1, &ps); + } + +- return internal_fnwmatch (wpattern, wstring, wstring + n, +- flags & FNM_PERIOD, flags, NULL); ++ int res = internal_fnwmatch (wpattern, wstring, wstring + n, ++ flags & FNM_PERIOD, flags, NULL, ++ alloca_used); ++ ++ free (wstring_malloc); ++ free (wpattern_malloc); ++ ++ return res; + } + # endif /* mbstate_t and mbsrtowcs or _LIBC. */ + + return internal_fnmatch (pattern, string, string + strlen (string), +- flags & FNM_PERIOD, flags, NULL); ++ flags & FNM_PERIOD, flags, NULL, 0); + } + + # ifdef _LIBC +diff a/posix/fnmatch_loop.c b/posix/fnmatch_loop.c +--- a/posix/fnmatch_loop.c ++++ b/posix/fnmatch_loop.c +@@ -1,4 +1,4 @@ +-/* Copyright (C) 1991-1993,1996-2001,2003-2005,2007 ++/* Copyright (C) 1991-1993,1996-2001,2003-2005,2007,2010 + Free Software Foundation, Inc. + This file is part of the GNU C Library. + +@@ -28,22 +28,24 @@ struct STRUCT + it matches, nonzero if not. */ + static int FCT (const CHAR *pattern, const CHAR *string, + const CHAR *string_end, int no_leading_period, int flags, +- struct STRUCT *ends) ++ struct STRUCT *ends, size_t alloca_used) + internal_function; + static int EXT (INT opt, const CHAR *pattern, const CHAR *string, +- const CHAR *string_end, int no_leading_period, int flags) ++ const CHAR *string_end, int no_leading_period, int flags, ++ size_t alloca_used) + internal_function; + static const CHAR *END (const CHAR *patternp) internal_function; + + static int + internal_function +-FCT (pattern, string, string_end, no_leading_period, flags, ends) ++FCT (pattern, string, string_end, no_leading_period, flags, ends, alloca_used) + const CHAR *pattern; + const CHAR *string; + const CHAR *string_end; + int no_leading_period; + int flags; + struct STRUCT *ends; ++ size_t alloca_used; + { + register const CHAR *p = pattern, *n = string; + register UCHAR c; +@@ -67,10 +69,8 @@ FCT (pattern, string, string_end, no_leading_period, flags, ends) + case L('?'): + if (__builtin_expect (flags & FNM_EXTMATCH, 0) && *p == '(') + { +- int res; +- +- res = EXT (c, p, n, string_end, no_leading_period, +- flags); ++ int res = EXT (c, p, n, string_end, no_leading_period, ++ flags, alloca_used); + if (res != -1) + return res; + } +@@ -99,10 +99,8 @@ FCT (pattern, string, string_end, no_leading_period, flags, ends) + case L('*'): + if (__builtin_expect (flags & FNM_EXTMATCH, 0) && *p == '(') + { +- int res; +- +- res = EXT (c, p, n, string_end, no_leading_period, +- flags); ++ int res = EXT (c, p, n, string_end, no_leading_period, ++ flags, alloca_used); + if (res != -1) + return res; + } +@@ -191,7 +189,7 @@ FCT (pattern, string, string_end, no_leading_period, flags, ends) + + for (--p; n < endp; ++n, no_leading_period = 0) + if (FCT (p, n, string_end, no_leading_period, flags2, +- &end) == 0) ++ &end, alloca_used) == 0) + goto found; + } + else if (c == L('/') && (flags & FNM_FILE_NAME)) +@@ -200,7 +198,7 @@ FCT (pattern, string, string_end, no_leading_period, flags, ends) + ++n; + if (n < string_end && *n == L('/') + && (FCT (p, n + 1, string_end, flags & FNM_PERIOD, flags, +- NULL) == 0)) ++ NULL, alloca_used) == 0)) + return 0; + } + else +@@ -214,7 +212,7 @@ FCT (pattern, string, string_end, no_leading_period, flags, ends) + for (--p; n < endp; ++n, no_leading_period = 0) + if (FOLD ((UCHAR) *n) == c + && (FCT (p, n, string_end, no_leading_period, flags2, +- &end) == 0)) ++ &end, alloca_used) == 0)) + { + found: + if (end.pattern == NULL) +@@ -749,7 +747,7 @@ FCT (pattern, string, string_end, no_leading_period, flags, ends) + _NL_COLLATE_SYMB_EXTRAMB); + + /* Locate the character in the hashing +- table. */ ++ table. */ + hash = elem_hash (str, c1); + + idx = 0; +@@ -971,9 +969,8 @@ FCT (pattern, string, string_end, no_leading_period, flags, ends) + case L('!'): + if (__builtin_expect (flags & FNM_EXTMATCH, 0) && *p == '(') + { +- int res; +- +- res = EXT (c, p, n, string_end, no_leading_period, flags); ++ int res = EXT (c, p, n, string_end, no_leading_period, flags, ++ alloca_used); + if (res != -1) + return res; + } +@@ -1052,26 +1049,32 @@ END (const CHAR *pattern) + static int + internal_function + EXT (INT opt, const CHAR *pattern, const CHAR *string, const CHAR *string_end, +- int no_leading_period, int flags) ++ int no_leading_period, int flags, size_t alloca_used) + { + const CHAR *startp; + int level; + struct patternlist + { + struct patternlist *next; ++ CHAR malloced; + CHAR str[0]; + } *list = NULL; + struct patternlist **lastp = &list; + size_t pattern_len = STRLEN (pattern); ++ int any_malloced = 0; + const CHAR *p; + const CHAR *rs; ++ int retval = 0; + + /* Parse the pattern. Store the individual parts in the list. */ + level = 0; + for (startp = p = pattern + 1; level >= 0; ++p) + if (*p == L('\0')) +- /* This is an invalid pattern. */ +- return -1; ++ { ++ /* This is an invalid pattern. */ ++ retval = -1; ++ goto out; ++ } + else if (*p == L('[')) + { + /* Handle brackets special. */ +@@ -1088,8 +1091,11 @@ EXT (INT opt, const CHAR *pattern, const CHAR *string, const CHAR *string_end, + /* Skip over all characters of the list. */ + while (*p != L(']')) + if (*p++ == L('\0')) +- /* This is no valid pattern. */ +- return -1; ++ { ++ /* This is no valid pattern. */ ++ retval = -1; ++ goto out; ++ } + } + else if ((*p == L('?') || *p == L('*') || *p == L('+') || *p == L('@') + || *p == L('!')) && p[1] == L('(')) +@@ -1102,15 +1108,25 @@ EXT (INT opt, const CHAR *pattern, const CHAR *string, const CHAR *string_end, + /* This means we found the end of the pattern. */ + #define NEW_PATTERN \ + struct patternlist *newp; \ +- \ +- if (opt == L('?') || opt == L('@')) \ +- newp = alloca (sizeof (struct patternlist) \ +- + (pattern_len * sizeof (CHAR))); \ ++ size_t slen = (opt == L('?') || opt == L('@') \ ++ ? pattern_len : (p - startp + 1)); \ ++ slen = sizeof (struct patternlist) + (slen * sizeof (CHAR)); \ ++ int malloced = ! __libc_use_alloca (alloca_used + slen); \ ++ if (__builtin_expect (malloced, 0)) \ ++ { \ ++ newp = malloc (slen); \ ++ if (newp == NULL) \ ++ { \ ++ retval = -2; \ ++ goto out; \ ++ } \ ++ any_malloced = 1; \ ++ } \ + else \ +- newp = alloca (sizeof (struct patternlist) \ +- + ((p - startp + 1) * sizeof (CHAR))); \ +- *((CHAR *) MEMPCPY (newp->str, startp, p - startp)) = L('\0'); \ ++ newp = alloca_account (slen, alloca_used); \ + newp->next = NULL; \ ++ newp->malloced = malloced; \ ++ *((CHAR *) MEMPCPY (newp->str, startp, p - startp)) = L('\0'); \ + *lastp = newp; \ + lastp = &newp->next + NEW_PATTERN; +@@ -1131,8 +1147,9 @@ EXT (INT opt, const CHAR *pattern, const CHAR *string, const CHAR *string_end, + switch (opt) + { + case L('*'): +- if (FCT (p, string, string_end, no_leading_period, flags, NULL) == 0) +- return 0; ++ if (FCT (p, string, string_end, no_leading_period, flags, NULL, ++ alloca_used) == 0) ++ goto success; + /* FALLTHROUGH */ + + case L('+'): +@@ -1143,7 +1160,7 @@ EXT (INT opt, const CHAR *pattern, const CHAR *string, const CHAR *string_end, + current pattern. */ + if (FCT (list->str, string, rs, no_leading_period, + flags & FNM_FILE_NAME ? flags : flags & ~FNM_PERIOD, +- NULL) == 0 ++ NULL, alloca_used) == 0 + /* This was successful. Now match the rest with the rest + of the pattern. */ + && (FCT (p, rs, string_end, +@@ -1151,7 +1168,7 @@ EXT (INT opt, const CHAR *pattern, const CHAR *string, const CHAR *string_end, + ? no_leading_period + : rs[-1] == '/' && NO_LEADING_PERIOD (flags) ? 1 : 0, + flags & FNM_FILE_NAME +- ? flags : flags & ~FNM_PERIOD, NULL) == 0 ++ ? flags : flags & ~FNM_PERIOD, NULL, alloca_used) == 0 + /* This didn't work. Try the whole pattern. */ + || (rs != string + && FCT (pattern - 1, rs, string_end, +@@ -1160,18 +1177,21 @@ EXT (INT opt, const CHAR *pattern, const CHAR *string, const CHAR *string_end, + : (rs[-1] == '/' && NO_LEADING_PERIOD (flags) + ? 1 : 0), + flags & FNM_FILE_NAME +- ? flags : flags & ~FNM_PERIOD, NULL) == 0))) ++ ? flags : flags & ~FNM_PERIOD, NULL, ++ alloca_used) == 0))) + /* It worked. Signal success. */ +- return 0; ++ goto success; + } + while ((list = list->next) != NULL); + + /* None of the patterns lead to a match. */ +- return FNM_NOMATCH; ++ retval = FNM_NOMATCH; ++ break; + + case L('?'): +- if (FCT (p, string, string_end, no_leading_period, flags, NULL) == 0) +- return 0; ++ if (FCT (p, string, string_end, no_leading_period, flags, NULL, ++ alloca_used) == 0) ++ goto success; + /* FALLTHROUGH */ + + case L('@'): +@@ -1183,13 +1203,14 @@ EXT (INT opt, const CHAR *pattern, const CHAR *string, const CHAR *string_end, + if (FCT (STRCAT (list->str, p), string, string_end, + no_leading_period, + flags & FNM_FILE_NAME ? flags : flags & ~FNM_PERIOD, +- NULL) == 0) ++ NULL, alloca_used) == 0) + /* It worked. Signal success. */ +- return 0; ++ goto success; + while ((list = list->next) != NULL); + + /* None of the patterns lead to a match. */ +- return FNM_NOMATCH; ++ retval = FNM_NOMATCH; ++ break; + + case L('!'): + for (rs = string; rs <= string_end; ++rs) +@@ -1199,7 +1220,7 @@ EXT (INT opt, const CHAR *pattern, const CHAR *string, const CHAR *string_end, + for (runp = list; runp != NULL; runp = runp->next) + if (FCT (runp->str, string, rs, no_leading_period, + flags & FNM_FILE_NAME ? flags : flags & ~FNM_PERIOD, +- NULL) == 0) ++ NULL, alloca_used) == 0) + break; + + /* If none of the patterns matched see whether the rest does. */ +@@ -1209,21 +1230,34 @@ EXT (INT opt, const CHAR *pattern, const CHAR *string, const CHAR *string_end, + ? no_leading_period + : rs[-1] == '/' && NO_LEADING_PERIOD (flags) ? 1 : 0, + flags & FNM_FILE_NAME ? flags : flags & ~FNM_PERIOD, +- NULL) == 0)) ++ NULL, alloca_used) == 0)) + /* This is successful. */ +- return 0; ++ goto success; + } + + /* None of the patterns together with the rest of the pattern + lead to a match. */ +- return FNM_NOMATCH; ++ retval = FNM_NOMATCH; ++ break; + + default: + assert (! "Invalid extended matching operator"); ++ retval = -1; + break; + } + +- return -1; ++ success: ++ out: ++ if (any_malloced) ++ while (list != NULL) ++ { ++ struct patternlist *old = list; ++ list = list->next; ++ if (old->malloced) ++ free (old); ++ } ++ ++ return retval; + } + + Added: glibc-package/branches/multiarch/debian/patches/any/cvs-qsort-race.diff =================================================================== --- glibc-package/branches/multiarch/debian/patches/any/cvs-qsort-race.diff (rev 0) +++ glibc-package/branches/multiarch/debian/patches/any/cvs-qsort-race.diff 2011-02-26 19:57:54 UTC (rev 4546) @@ -0,0 +1,37 @@ +2010-12-09 Ulrich Drepper <drep...@gmail.com> + + [BZ #11655] + * stdlib/msort.c (qsort_r): Make sure both phys_pages and pagesize + are initialized. + +diff --git a/stdlib/msort.c b/stdlib/msort.c +index 35cd4d0..fc58f0d 100644 +--- a/stdlib/msort.c ++++ b/stdlib/msort.c +@@ -25,6 +25,7 @@ + #include <unistd.h> + #include <memcopy.h> + #include <errno.h> ++#include <atomic.h> + + struct msort_param + { +@@ -182,7 +183,7 @@ qsort_r (void *b, size_t n, size_t s, __compar_d_fn_t cmp, void *arg) + static long int phys_pages; + static int pagesize; + +- if (phys_pages == 0) ++ if (pagesize == 0) + { + phys_pages = __sysconf (_SC_PHYS_PAGES); + +@@ -197,6 +198,9 @@ qsort_r (void *b, size_t n, size_t s, __compar_d_fn_t cmp, void *arg) + a quarter of the physical memory. */ + phys_pages /= 4; + ++ /* Make sure phys_pages is written to memory. */ ++ atomic_write_barrier (); ++ + pagesize = __sysconf (_SC_PAGESIZE); + } + Modified: glibc-package/branches/multiarch/debian/patches/any/local-rtld.diff =================================================================== --- glibc-package/branches/multiarch/debian/patches/any/local-rtld.diff 2011-02-26 19:46:14 UTC (rev 4545) +++ glibc-package/branches/multiarch/debian/patches/any/local-rtld.diff 2011-02-26 19:57:54 UTC (rev 4546) @@ -15,10 +15,8 @@ elf/Makefile | 2 +- 2 files changed, 7 insertions(+), 2 deletions(-) -Index: eglibc-2.12.1/Makeconfig -=================================================================== ---- eglibc-2.12.1.orig/Makeconfig -+++ eglibc-2.12.1/Makeconfig +--- a/Makeconfig ++++ b/Makeconfig @@ -202,6 +202,11 @@ endif inst_slibdir = $(install_root)$(slibdir) @@ -40,10 +38,8 @@ endif endif ifndef link-libc -Index: eglibc-2.12.1/elf/Makefile -=================================================================== ---- eglibc-2.12.1.orig/elf/Makefile -+++ eglibc-2.12.1/elf/Makefile +--- a/elf/Makefile ++++ b/elf/Makefile @@ -380,7 +380,7 @@ | $(AWK) '($$7 ~ /^UND(|EF)$$/ && $$1 != "0:" && $$4 != "REGISTER") { print; p=1 } END { exit p != 0 }' Modified: glibc-package/branches/multiarch/debian/patches/series =================================================================== --- glibc-package/branches/multiarch/debian/patches/series 2011-02-26 19:46:14 UTC (rev 4545) +++ glibc-package/branches/multiarch/debian/patches/series 2011-02-26 19:57:54 UTC (rev 4546) @@ -270,3 +270,5 @@ any/cvs-audit-suid.diff any/cvs-dont-expand-dst-twice.diff any/cvs-ignore-origin-privileged.diff +any/cvs-fnmatch-alloca.patch +any/cvs-qsort-race.diff Modified: glibc-package/branches/multiarch/debian/rules =================================================================== --- glibc-package/branches/multiarch/debian/rules 2011-02-26 19:46:14 UTC (rev 4545) +++ glibc-package/branches/multiarch/debian/rules 2011-02-26 19:57:54 UTC (rev 4546) @@ -89,7 +89,7 @@ docdir=$(prefix)/share/doc mandir=$(prefix)/share/man sbindir=$(prefix)/sbin -rtlddir = /lib +rtlddir=/lib slibdir=/lib/$(DEB_HOST_GNU_TYPE) libdir=/usr/lib/$(DEB_HOST_GNU_TYPE) Modified: glibc-package/branches/multiarch/debian/sysdeps/amd64.mk =================================================================== --- glibc-package/branches/multiarch/debian/sysdeps/amd64.mk 2011-02-26 19:46:14 UTC (rev 4545) +++ glibc-package/branches/multiarch/debian/sysdeps/amd64.mk 2011-02-26 19:57:54 UTC (rev 4546) @@ -18,7 +18,6 @@ i386_extra_cflags = -march=pentium4 -mtune=generic i386_extra_config_options = $(extra_config_options) i386_includedir = /usr/include/i486-linux-gnu -i386_rtlddir = /lib i386_slibdir = /lib32 i386_libdir = /usr/lib32 Modified: glibc-package/branches/multiarch/debian/sysdeps/hurd-i386.mk =================================================================== --- glibc-package/branches/multiarch/debian/sysdeps/hurd-i386.mk 2011-02-26 19:46:14 UTC (rev 4545) +++ glibc-package/branches/multiarch/debian/sysdeps/hurd-i386.mk 2011-02-26 19:57:54 UTC (rev 4546) @@ -19,8 +19,8 @@ xen_extra_config_options = $(extra_config_options) --disable-profile define libc0.3-dev_extra_pkg_install -mkdir -p debian/libc0.3-dev/usr/lib/xen -cp -af debian/tmp-xen/usr/lib/*.a \ - debian/libc0.3-dev/usr/lib/xen +mkdir -p debian/libc0.3-dev/$(libdir)/xen +cp -af debian/tmp-xen/$(libdir)/*.a \ + debian/libc0.3-dev/$(libdir)/xen endef Modified: glibc-package/branches/multiarch/debian/sysdeps/sparc64.mk =================================================================== --- glibc-package/branches/multiarch/debian/sysdeps/sparc64.mk 2011-02-26 19:46:14 UTC (rev 4545) +++ glibc-package/branches/multiarch/debian/sysdeps/sparc64.mk 2011-02-26 19:57:54 UTC (rev 4546) @@ -9,7 +9,7 @@ sparcv9b_configure_build=sparc64b-linux-gnu sparcv9b_extra_cflags = -mcpu=ultrasparc3 sparcv9b_extra_config_options = $(extra_config_options) --disable-profile -sparcv9b_rtlddir = /lib +sparcv9b_rtlddir = /lib64 sparcv9b_slibdir = /lib/ultra3 # /lib64 and /usr/lib64 are provided by glibc instead base-files: #259302. -- 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/e1ptqh7-0001wg...@alioth.debian.org