forked from pool/glibc
- avoid spurious differences in nscd on rebuilds.
OBS-URL: https://build.opensuse.org/package/show/Base:System/glibc?expand=0&rev=18
This commit is contained in:
parent
5c18beed72
commit
6f4a02fa68
3
glibc-2.11.1-11c19d374bd4.tar.bz2
Normal file
3
glibc-2.11.1-11c19d374bd4.tar.bz2
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:e03c84ffe3b41a81a070a896307fa59b4618f2cc053360a65c867a79a32a718c
|
||||||
|
size 15670997
|
@ -1,3 +0,0 @@
|
|||||||
version https://git-lfs.github.com/spec/v1
|
|
||||||
oid sha256:9b0467d31d53dcb8e9920efa51c338e2ef1bb597ab7d2ed14b9a16103ffd2622
|
|
||||||
size 15670351
|
|
19
glibc-2.5-ppc-llrintl.diff
Normal file
19
glibc-2.5-ppc-llrintl.diff
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
Index: powerpc-cpu/sysdeps/powerpc/powerpc32/powerpc64/fpu/s_llrint.S
|
||||||
|
===================================================================
|
||||||
|
--- powerpc-cpu/sysdeps/powerpc/powerpc32/powerpc64/fpu/s_llrint.S.orig
|
||||||
|
+++ powerpc-cpu/sysdeps/powerpc/powerpc32/powerpc64/fpu/s_llrint.S
|
||||||
|
@@ -18,6 +18,7 @@
|
||||||
|
02110-1301 USA. */
|
||||||
|
|
||||||
|
#include <sysdep.h>
|
||||||
|
+#include <math_ldbl_opt.h>
|
||||||
|
|
||||||
|
/* long long int[r3, r4] __llrint (double x[fp1]) */
|
||||||
|
ENTRY (__llrint)
|
||||||
|
@@ -41,3 +42,6 @@ weak_alias (__llrint, llrint)
|
||||||
|
strong_alias (__llrint, __llrintl)
|
||||||
|
weak_alias (__llrint, llrintl)
|
||||||
|
#endif
|
||||||
|
+#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_1)
|
||||||
|
+compat_symbol (libm, __llrint, llrintl, GLIBC_2_1)
|
||||||
|
+#endif
|
@ -1,76 +0,0 @@
|
|||||||
--- posix/gai.conf~ 2010-05-12 04:10:58.087661000 +0200
|
|
||||||
+++ posix/gai.conf 2010-05-12 04:14:40.638820000 +0200
|
|
||||||
@@ -67,11 +67,66 @@
|
|
||||||
#scopev4 ::ffff:192.168.0.0/112 5
|
|
||||||
#scopev4 ::ffff:0.0.0.0/96 14
|
|
||||||
#
|
|
||||||
-# For sites which use site-local IPv4 addresses behind NAT there is
|
|
||||||
-# the problem that even if IPv4 addresses are preferred they do not
|
|
||||||
-# have the same scope and are therefore not sorted first. To change
|
|
||||||
-# this use only these rules:
|
|
||||||
+# Back in 2003, the sorting algorithm used by getaddrinfo() was defined in RFC
|
|
||||||
+# 3484. However, this document did not take into account (or foresee) the
|
|
||||||
+# ubiquity of IPv4 NAT on today's internet. This in turn causes some real
|
|
||||||
+# operational problems that's hindering the deployment of IPv6 for content
|
|
||||||
+# providers.
|
|
||||||
+#
|
|
||||||
+# The problem scenario is the following:
|
|
||||||
+#
|
|
||||||
+# An end user is located in a network numbered with private (RFC 1918) IPv4
|
|
||||||
+# addresses and transitional 6to4 (RFC 3056) IPv6 addresses. The network is
|
|
||||||
+# connected to the internet by a CPE/SOHO device implementing NAT for IPv4 and
|
|
||||||
+# anycasted 6to4 (RFC 3068) for IPv6.
|
|
||||||
+#
|
|
||||||
+# When the user attempts to connect to a server whose hostname has both IPv4
|
|
||||||
+# and IPv6 addresses published in DNS, an IPv6 connection using the
|
|
||||||
+# transitional 6to4 service will be preferred. This happens because the scope
|
|
||||||
+# comparsion fails for IPv4, the RFC 1918 addresses are assumed to have
|
|
||||||
+# site-local scope, which is smaller than the global scope of the server's IPv4
|
|
||||||
+# address. For IPv6, both the server's and the client's (6to4) address have
|
|
||||||
+# global scope.
|
|
||||||
+#
|
|
||||||
+# Unfortunately, the operational reality is that a transitional technique such
|
|
||||||
+# as 6to4 is much less reliable than IPv4. The relay routers might be located
|
|
||||||
+# far away from the optimal IPv4 path, and thus cause a significant latency
|
|
||||||
+# increase, or they might not even work optimally (they're usually operated by
|
|
||||||
+# voulenteering third parties on a best-effort basis), and finally some ISPs
|
|
||||||
+# simply filter away all proto-41 traffic. Transitional techniques are useful
|
|
||||||
+# to give end users with IPv4-only service a real shot at accessing IPv6-only
|
|
||||||
+# content, but it should never be preferred over IPv4 service when accessing
|
|
||||||
+# dual-stacked content.
|
|
||||||
+#
|
|
||||||
+# RFC 3484 even acknowledges this, by saying to "«avoid the use of transitional
|
|
||||||
+# addresses when native addresses are available"».
|
|
||||||
+#
|
|
||||||
+# An IETF draft document which describes the problem in a much more detailed
|
|
||||||
+# manner than I have is available here:
|
|
||||||
+#
|
|
||||||
+# http://tools.ietf.org/html/draft-denis-v6ops-nat-addrsel-00
|
|
||||||
+#
|
|
||||||
+# There's also an IETF draft that aims to revise RFC 3484 in order to fix this
|
|
||||||
+# problem (amongst others):
|
|
||||||
+#
|
|
||||||
+# http://tools.ietf.org/html/draft-arifumi-6man-rfc3484-revise-02
|
|
||||||
+#
|
|
||||||
+# Quoting from this document:
|
|
||||||
+#
|
|
||||||
+# > 2.7. To change private IPv4 address scope
|
|
||||||
+# >
|
|
||||||
+# > As detailed in Remi's draft [I-D.denis-v6ops-nat-addrsel], when a
|
|
||||||
+# > host is in NATed site, and has a private IPv4 address and
|
|
||||||
+# > transitional addresses like 6to4 and Teredo, the host chooses
|
|
||||||
+# > transitional IPv6 address to access most of the dual-stack servers.
|
|
||||||
+# >
|
|
||||||
+# > This is because private IPv4 address is defined to be site-local
|
|
||||||
+# > scope, and as in RFC 3484, the scope matching rules (Rule 2) set
|
|
||||||
+# > lower priority for private IPv4 address.
|
|
||||||
+# >
|
|
||||||
+# > By changing the address scope of private IPv4 address to global, this
|
|
||||||
+# > problem can be solved.
|
|
||||||
#
|
|
||||||
-#scopev4 ::ffff:169.254.0.0/112 2
|
|
||||||
-#scopev4 ::ffff:127.0.0.0/104 2
|
|
||||||
-#scopev4 ::ffff:0.0.0.0/96 14
|
|
||||||
+scopev4 ::ffff:10.0.0.0/104 14
|
|
||||||
+scopev4 ::ffff:172.16.0.0/108 14
|
|
||||||
+scopev4 ::ffff:192.168.0.0/112 14
|
|
@ -1,37 +0,0 @@
|
|||||||
2010-05-31 Petr Baudis <pasky@suse.cz>
|
|
||||||
|
|
||||||
* elf/ldconfig.c: Allow aux_cache_file open()ing to fail silently
|
|
||||||
even in the chroot mode.
|
|
||||||
|
|
||||||
|
|
||||||
diff --git a/elf/ldconfig.c b/elf/ldconfig.c
|
|
||||||
index 6e71b09..6ba8e07 100644
|
|
||||||
--- a/elf/ldconfig.c
|
|
||||||
+++ b/elf/ldconfig.c
|
|
||||||
@@ -1359,14 +1359,9 @@ main (int argc, char **argv)
|
|
||||||
|
|
||||||
const char *aux_cache_file = _PATH_LDCONFIG_AUX_CACHE;
|
|
||||||
if (opt_chroot)
|
|
||||||
- {
|
|
||||||
- aux_cache_file = chroot_canon (opt_chroot, aux_cache_file);
|
|
||||||
- if (aux_cache_file == NULL)
|
|
||||||
- error (EXIT_FAILURE, errno, _("Can't open cache file %s\n"),
|
|
||||||
- _PATH_LDCONFIG_AUX_CACHE);
|
|
||||||
- }
|
|
||||||
+ aux_cache_file = chroot_canon (opt_chroot, aux_cache_file);
|
|
||||||
|
|
||||||
- if (! opt_ignore_aux_cache)
|
|
||||||
+ if (! opt_ignore_aux_cache && aux_cache_file)
|
|
||||||
load_aux_cache (aux_cache_file);
|
|
||||||
else
|
|
||||||
init_aux_cache ();
|
|
||||||
@@ -1376,7 +1371,8 @@ main (int argc, char **argv)
|
|
||||||
if (opt_build_cache)
|
|
||||||
{
|
|
||||||
save_cache (cache_file);
|
|
||||||
- save_aux_cache (aux_cache_file);
|
|
||||||
+ if (aux_cache_file)
|
|
||||||
+ save_aux_cache (aux_cache_file);
|
|
||||||
}
|
|
||||||
|
|
||||||
return 0;
|
|
@ -1,91 +0,0 @@
|
|||||||
From: Andreas Schwab <schwab at redhat dot com>
|
|
||||||
To: libc-hacker at sourceware dot org
|
|
||||||
Subject: [PATCH] Work around shortest-stem feature in make 3.82+
|
|
||||||
|
|
||||||
make 3.82+ no longer selects pattern rules by order, but by shortest
|
|
||||||
stem, so we need to add more rules to make sure we still get the right
|
|
||||||
matches.
|
|
||||||
|
|
||||||
Andreas.
|
|
||||||
|
|
||||||
2010-09-09 Andreas Schwab <schwab@redhat.com>
|
|
||||||
|
|
||||||
* Makeconfig (sysd-rules-patterns): Add rtld-%:rtld-%.
|
|
||||||
(sysd-rules-targets): Remove duplicates.
|
|
||||||
* elf/rtld-Rules ($(objpfx)rtld-%.os): Add pattern rules with
|
|
||||||
rtld-%.$o dependency.
|
|
||||||
|
|
||||||
2010-09-06 Andreas Schwab <schwab@redhat.com>
|
|
||||||
|
|
||||||
* manual/Makefile: Don't mix pattern rules with normal rules.
|
|
||||||
|
|
||||||
diff --git a/Makeconfig b/Makeconfig
|
|
||||||
index 9778998..807c1d1 100644
|
|
||||||
--- a/Makeconfig
|
|
||||||
+++ b/Makeconfig
|
|
||||||
@@ -966,7 +966,7 @@ endif
|
|
||||||
# emitted into sysd-rules. A sysdeps Makeconfig fragment can
|
|
||||||
# add its own special object file prefix to this list with e.g. foo-%:%
|
|
||||||
# to have foo-*.? compiled from *.? using $(foo-CPPFLAGS).
|
|
||||||
-sysd-rules-patterns := %:% rtld-%:% m_%:s_%
|
|
||||||
+sysd-rules-patterns := %:% rtld-%:rtld-% rtld-%:% m_%:s_%
|
|
||||||
|
|
||||||
# Let sysdeps/ subdirs contain a Makeconfig fragment for us to include here.
|
|
||||||
sysdep-makeconfigs := $(wildcard $(+sysdep_dirs:=/Makeconfig))
|
|
||||||
@@ -975,8 +975,8 @@ include $(sysdep-makeconfigs)
|
|
||||||
endif
|
|
||||||
|
|
||||||
# Compute just the target patterns. Makeconfig has set sysd-rules-patterns.
|
|
||||||
-sysd-rules-targets := $(foreach p,$(sysd-rules-patterns),\
|
|
||||||
- $(firstword $(subst :, ,$p)))
|
|
||||||
+sysd-rules-targets := $(sort $(foreach p,$(sysd-rules-patterns),\
|
|
||||||
+ $(firstword $(subst :, ,$p))))
|
|
||||||
|
|
||||||
endif # Makeconfig not yet included
|
|
||||||
|
|
||||||
diff --git a/elf/rtld-Rules b/elf/rtld-Rules
|
|
||||||
index 9f31a56..fc225f2 100644
|
|
||||||
--- a/elf/rtld-Rules
|
|
||||||
+++ b/elf/rtld-Rules
|
|
||||||
@@ -93,6 +93,12 @@ else
|
|
||||||
# These are the basic compilation rules corresponding to the Makerules ones.
|
|
||||||
# The sysd-rules generated makefile already defines pattern rules for rtld-%
|
|
||||||
# targets built from sysdeps source files.
|
|
||||||
+$(objpfx)rtld-%.os: rtld-%.S $(before-compile)
|
|
||||||
+ $(compile-command.S) $(rtld-CPPFLAGS)
|
|
||||||
+$(objpfx)rtld-%.os: rtld-%.s $(before-compile)
|
|
||||||
+ $(compile-command.s) $(rtld-CPPFLAGS)
|
|
||||||
+$(objpfx)rtld-%.os: rtld-%.c $(before-compile)
|
|
||||||
+ $(compile-command.c) $(rtld-CPPFLAGS)
|
|
||||||
$(objpfx)rtld-%.os: %.S $(before-compile)
|
|
||||||
$(compile-command.S) $(rtld-CPPFLAGS)
|
|
||||||
$(objpfx)rtld-%.os: %.s $(before-compile)
|
|
||||||
@@ -101,6 +107,9 @@ $(objpfx)rtld-%.os: %.c $(before-compile)
|
|
||||||
$(compile-command.c) $(rtld-CPPFLAGS)
|
|
||||||
|
|
||||||
# The rules for generated source files.
|
|
||||||
+$(objpfx)rtld-%.os: $(objpfx)rtld-%.S $(before-compile); $(compile-command.S)
|
|
||||||
+$(objpfx)rtld-%.os: $(objpfx)rtld-%.s $(before-compile); $(compile-command.s)
|
|
||||||
+$(objpfx)rtld-%.os: $(objpfx)rtld-%.c $(before-compile); $(compile-command.c)
|
|
||||||
$(objpfx)rtld-%.os: $(objpfx)%.S $(before-compile); $(compile-command.S)
|
|
||||||
$(objpfx)rtld-%.os: $(objpfx)%.s $(before-compile); $(compile-command.s)
|
|
||||||
$(objpfx)rtld-%.os: $(objpfx)%.c $(before-compile); $(compile-command.c)
|
|
||||||
--
|
|
||||||
1.7.2.2
|
|
||||||
|
|
||||||
diff --git a/manual/Makefile b/manual/Makefile
|
|
||||||
index c5866eb..b1f5fa7 100644
|
|
||||||
--- a/manual/Makefile
|
|
||||||
+++ b/manual/Makefile
|
|
||||||
@@ -232,7 +232,10 @@ ifdef objpfx
|
|
||||||
.PHONY: stubs
|
|
||||||
stubs: $(objpfx)stubs
|
|
||||||
endif
|
|
||||||
-$(objpfx)stubs ../po/manual.pot $(objpfx)stamp%:
|
|
||||||
+$(objpfx)stubs ../po/manual.pot:
|
|
||||||
+ $(make-target-directory)
|
|
||||||
+ touch $@
|
|
||||||
+$(objpfx)stamp%:
|
|
||||||
$(make-target-directory)
|
|
||||||
touch $@
|
|
||||||
|
|
@ -1,39 +0,0 @@
|
|||||||
2010-05-31 Petr Baudis <pasky@suse.cz>
|
|
||||||
|
|
||||||
* nis/nss_compat/compat-initgroups.c (internal_getgrent_r): Fix
|
|
||||||
initialization of skip_initgroups_dyn.
|
|
||||||
|
|
||||||
diff --git a/nis/nss_compat/compat-initgroups.c b/nis/nss_compat/compat-initgroups.c
|
|
||||||
index 07a3b92..de8d95c 100644
|
|
||||||
--- a/nis/nss_compat/compat-initgroups.c
|
|
||||||
+++ b/nis/nss_compat/compat-initgroups.c
|
|
||||||
@@ -474,18 +474,21 @@ internal_getgrent_r (ent_t *ent, char *buffer, size_t buflen, const char *user,
|
|
||||||
/* If the selected module does not support getgrent_r or
|
|
||||||
initgroups_dyn, abort. We cannot find the needed group
|
|
||||||
entries. */
|
|
||||||
- if (nss_getgrent_r == NULL && nss_initgroups_dyn == NULL)
|
|
||||||
+ if (nss_initgroups_dyn == NULL || nss_getgrgid_r == NULL)
|
|
||||||
+ {
|
|
||||||
+ if (nss_setgrent != NULL)
|
|
||||||
+ {
|
|
||||||
+ nss_setgrent (1);
|
|
||||||
+ ent->need_endgrent = true;
|
|
||||||
+ }
|
|
||||||
+ ent->skip_initgroups_dyn = true;
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
+ if (ent->skip_initgroups_dyn && nss_getgrent_r == NULL)
|
|
||||||
return NSS_STATUS_UNAVAIL;
|
|
||||||
|
|
||||||
ent->files = false;
|
|
||||||
|
|
||||||
- if (nss_initgroups_dyn == NULL && nss_setgrent != NULL)
|
|
||||||
- {
|
|
||||||
- nss_setgrent (1);
|
|
||||||
- ent->need_endgrent = true;
|
|
||||||
- }
|
|
||||||
- ent->skip_initgroups_dyn = true;
|
|
||||||
-
|
|
||||||
return getgrent_next_nss (ent, buffer, buflen, user, group,
|
|
||||||
start, size, groupsp, limit, errnop);
|
|
||||||
}
|
|
@ -1,28 +0,0 @@
|
|||||||
2010-03-04 Carlos Eduardo Seo <cseo@linux.vnet.ibm.com>
|
|
||||||
|
|
||||||
* sysdeps/unix/sysv/linux/powerpc/powerpc64/time.c: New file.
|
|
||||||
|
|
||||||
Index: src/sysdeps/unix/sysv/linux/powerpc/powerpc64/time.c
|
|
||||||
===================================================================
|
|
||||||
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
|
|
||||||
+++ src/sysdeps/unix/sysv/linux/powerpc/powerpc64/time.c 2010-03-04 20:02:23.000000000 -0300
|
|
||||||
@@ -0,0 +1,19 @@
|
|
||||||
+/* Copyright (C) 2010 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. */
|
|
||||||
+
|
|
||||||
+#include <sysdeps/unix/time.c>
|
|
@ -1,19 +0,0 @@
|
|||||||
diff --git a/resolv/res_hconf.c b/resolv/res_hconf.c
|
|
||||||
index ed55bec..f06db75 100644
|
|
||||||
--- a/resolv/res_hconf.c
|
|
||||||
+++ b/resolv/res_hconf.c
|
|
||||||
@@ -243,9 +243,12 @@ parse_line (const char *fname, int line_num, const char *str)
|
|
||||||
if (c == NULL)
|
|
||||||
{
|
|
||||||
char *buf;
|
|
||||||
+ char *hint = "";
|
|
||||||
|
|
||||||
- if (__asprintf (&buf, _("%s: line %d: bad command `%s'\n"),
|
|
||||||
- fname, line_num, start) < 0)
|
|
||||||
+ if (__strncasecmp (start, "mdns", len) == 0 && len == 4)
|
|
||||||
+ hint = "Multicast DNS is now configured in /etc/nsswitch.conf instead.\nSee also the package and manpage of nss-mdns.\n";
|
|
||||||
+ if (__asprintf (&buf, _("%s: line %d: bad command `%s'\n%s"),
|
|
||||||
+ fname, line_num, start, hint) < 0)
|
|
||||||
return;
|
|
||||||
|
|
||||||
__fxprintf (NULL, "%s", buf);
|
|
@ -1,124 +0,0 @@
|
|||||||
From libc-alpha-return-22754-pasky=ucw.cz@sourceware.org Tue Mar 16 00:47:00 2010
|
|
||||||
Return-Path: <libc-alpha-return-22754-pasky=ucw.cz@sourceware.org>
|
|
||||||
X-Original-To: pasky@pasky.or.cz
|
|
||||||
Delivered-To: pasky@pasky.or.cz
|
|
||||||
Received: from nikam.ms.mff.cuni.cz (nikam-dmz.ms.mff.cuni.cz [195.113.20.16])
|
|
||||||
by machine.or.cz (Postfix) with ESMTPS id C1B8586202A
|
|
||||||
for <pasky@pasky.or.cz>; Tue, 16 Mar 2010 00:47:00 +0100 (CET)
|
|
||||||
Received: by nikam.ms.mff.cuni.cz (Postfix)
|
|
||||||
id 9CDEC9AC7A4; Tue, 16 Mar 2010 00:47:00 +0100 (CET)
|
|
||||||
Delivered-To: pasky@kam.mff.cuni.cz
|
|
||||||
Received: from jabberwock.ucw.cz (jabberwock.ucw.cz [89.250.246.4])
|
|
||||||
by nikam.ms.mff.cuni.cz (Postfix) with ESMTP id 99F0E9AC77B
|
|
||||||
for <pasky@kam.mff.cuni.cz>; Tue, 16 Mar 2010 00:47:00 +0100 (CET)
|
|
||||||
Received: from sourceware.org (server1.sourceware.org [209.132.180.131])
|
|
||||||
by jabberwock.ucw.cz (Postfix) with SMTP id 14E1ACF040
|
|
||||||
for <pasky@ucw.cz>; Tue, 16 Mar 2010 00:46:59 +0100 (CET)
|
|
||||||
Received: (qmail 18956 invoked by alias); 15 Mar 2010 23:46:58 -0000
|
|
||||||
Delivered-To: moderator for libc-alpha@sourceware.org
|
|
||||||
Received: (qmail 15843 invoked by uid 22791); 15 Mar 2010 17:23:15 -0000
|
|
||||||
X-SWARE-Spam-Status: No, hits=-2.6 required=5.0
|
|
||||||
tests=BAYES_00
|
|
||||||
X-Spam-Check-By: sourceware.org
|
|
||||||
Message-ID: <4B9E6CFA.7020002@riot.org>
|
|
||||||
Date: Mon, 15 Mar 2010 18:23:06 +0100
|
|
||||||
From: Sebastian Kienzl <seb@riot.org>
|
|
||||||
User-Agent: Thunderbird 2.0.0.23 (Windows/20090812)
|
|
||||||
MIME-Version: 1.0
|
|
||||||
To: libc-alpha@sourceware.org
|
|
||||||
Subject: Reloading of /etc/resolv.conf
|
|
||||||
Content-Type: multipart/mixed;
|
|
||||||
boundary="------------060407080409020101000002"
|
|
||||||
Mailing-List: contact libc-alpha-help@sourceware.org; run by ezmlm
|
|
||||||
Precedence: bulk
|
|
||||||
List-Id: <libc-alpha.sourceware.org>
|
|
||||||
List-Unsubscribe: <mailto:libc-alpha-unsubscribe-pasky=ucw.cz@sourceware.org>
|
|
||||||
List-Subscribe: <mailto:libc-alpha-subscribe@sourceware.org>
|
|
||||||
List-Archive: <http://sourceware.org/ml/libc-alpha/>
|
|
||||||
List-Post: <mailto:libc-alpha@sourceware.org>
|
|
||||||
List-Help: <mailto:libc-alpha-help@sourceware.org>, <http://sourceware.org/ml/#faqs>
|
|
||||||
Sender: libc-alpha-owner@sourceware.org
|
|
||||||
Delivered-To: mailing list libc-alpha@sourceware.org
|
|
||||||
|
|
||||||
This is a multi-part message in MIME format.
|
|
||||||
--------------060407080409020101000002
|
|
||||||
Content-Type: text/plain; charset=ISO-8859-15; format=flowed
|
|
||||||
Content-Transfer-Encoding: 7bit
|
|
||||||
|
|
||||||
Hello!
|
|
||||||
|
|
||||||
There's a patch in the wild against the resolver which makes it reload
|
|
||||||
/etc/resolv.conf on change, see
|
|
||||||
http://sources.redhat.com/ml/libc-alpha/2004-09/msg00130.html
|
|
||||||
|
|
||||||
However, this patch actually doesn't work properly for multi-threaded
|
|
||||||
programs, as only one thread will notice the change and refresh its
|
|
||||||
resolver state. I've attached a proper patch. It's for 2.5 but it should
|
|
||||||
work with current versions, too.
|
|
||||||
|
|
||||||
Even though the patch may not be interesting for upstream, I decided to
|
|
||||||
let you know about this problem, since the mentioned patch seems to be
|
|
||||||
used by at least Debian and Ubuntu.
|
|
||||||
|
|
||||||
Regards,
|
|
||||||
Seb.
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
--------------060407080409020101000002
|
|
||||||
Content-Type: text/plain;
|
|
||||||
name="glibc-2.5-resolvconf.patch"
|
|
||||||
Content-Transfer-Encoding: 7bit
|
|
||||||
Content-Disposition: inline;
|
|
||||||
filename="glibc-2.5-resolvconf.patch"
|
|
||||||
|
|
||||||
diff -ur resolv.orig/res_libc.c resolv/res_libc.c
|
|
||||||
--- resolv.orig/res_libc.c 2005-11-01 01:06:40.000000000 +0100
|
|
||||||
+++ resolv/res_libc.c 2010-03-15 14:13:18.000000000 +0100
|
|
||||||
@@ -22,7 +22,7 @@
|
|
||||||
#include <arpa/nameser.h>
|
|
||||||
#include <resolv.h>
|
|
||||||
#include <bits/libc-lock.h>
|
|
||||||
-
|
|
||||||
+#include <sys/stat.h>
|
|
||||||
|
|
||||||
/* The following bit is copied from res_data.c (where it is #ifdef'ed
|
|
||||||
out) since res_init() should go into libc.so but the rest of that
|
|
||||||
@@ -89,12 +89,34 @@
|
|
||||||
return (__res_vinit(&_res, 1));
|
|
||||||
}
|
|
||||||
|
|
||||||
+static time_t resconf_mtime;
|
|
||||||
+__libc_lock_define_initialized (static, resconf_mtime_lock);
|
|
||||||
+
|
|
||||||
+/* Check if the modification time of resolv.conf has changed.
|
|
||||||
+ If so, have all threads re-initialize their resolver states */
|
|
||||||
+static void
|
|
||||||
+__res_check_resconf (void)
|
|
||||||
+{
|
|
||||||
+ struct stat statbuf;
|
|
||||||
+ if (stat (_PATH_RESCONF, &statbuf) == 0) {
|
|
||||||
+ __libc_lock_lock (resconf_mtime_lock);
|
|
||||||
+ if (statbuf.st_mtime != resconf_mtime) {
|
|
||||||
+ resconf_mtime = statbuf.st_mtime;
|
|
||||||
+ atomicinclock (lock);
|
|
||||||
+ atomicinc (__res_initstamp);
|
|
||||||
+ atomicincunlock (lock);
|
|
||||||
+ }
|
|
||||||
+ __libc_lock_unlock (resconf_mtime_lock);
|
|
||||||
+ }
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
/* Initialize resp if RES_INIT is not yet set or if res_init in some other
|
|
||||||
thread requested re-initializing. */
|
|
||||||
int
|
|
||||||
__res_maybe_init (res_state resp, int preinit)
|
|
||||||
{
|
|
||||||
if (resp->options & RES_INIT) {
|
|
||||||
+ __res_check_resconf ();
|
|
||||||
if (__res_initstamp != resp->_u._ext.initstamp) {
|
|
||||||
if (resp->nscount > 0)
|
|
||||||
__res_iclose (resp, true);
|
|
||||||
|
|
||||||
|
|
||||||
--------------060407080409020101000002--
|
|
@ -1,7 +0,0 @@
|
|||||||
Index: glibc-2.10.1/sysdeps/unix/sysv/linux/sparc/sparc64/fxstat.c
|
|
||||||
===================================================================
|
|
||||||
--- glibc-2.10.1.orig/sysdeps/unix/sysv/linux/sparc/sparc64/fxstat.c
|
|
||||||
+++ glibc-2.10.1/sysdeps/unix/sysv/linux/sparc/sparc64/fxstat.c
|
|
||||||
@@ -1 +1 @@
|
|
||||||
-#include "../../fxstat.c"
|
|
||||||
+#include "../../i386/fxstat.c"
|
|
@ -1,12 +0,0 @@
|
|||||||
--- sysdeps/unix/sysv/linux/statfs64.c~ 2010-01-27 02:47:32.884315000 +0100
|
|
||||||
+++ sysdeps/unix/sysv/linux/statfs64.c 2010-01-27 02:49:17.943657000 +0100
|
|
||||||
@@ -24,6 +24,9 @@
|
|
||||||
#include <sysdep.h>
|
|
||||||
#include <kernel-features.h>
|
|
||||||
|
|
||||||
+/* On IA64, ia32el does not provide wrapper for statfs64() for some reason.
|
|
||||||
+ Force the compatibility code to get compiled in. [bnc#534828] */
|
|
||||||
+#undef __ASSUME_STATFS64
|
|
||||||
|
|
||||||
# if __ASSUME_STATFS64 == 0
|
|
||||||
int __no_statfs64 attribute_hidden;
|
|
162
glibc.changes
162
glibc.changes
@ -1,170 +1,8 @@
|
|||||||
-------------------------------------------------------------------
|
|
||||||
Mon Sep 13 14:36:26 UTC 2010 - aj@suse.de
|
|
||||||
|
|
||||||
- Fix build in manual with make 3.82.
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Sun Sep 12 08:00:57 UTC 2010 - aj@suse.de
|
|
||||||
|
|
||||||
- Work around shortest-stem feature in make 3.82+ (patch
|
|
||||||
glibc-make-3.82.patch)
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Wed Jul 7 04:12:05 CEST 2010 - pbaudis@suse.cz
|
|
||||||
|
|
||||||
- Fix NIS-compat initgroups routine to work reliably over multiple
|
|
||||||
invocations [bnc#607064]
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Thu Jul 1 19:52:56 UTC 2010 - jengelh@medozas.de
|
|
||||||
|
|
||||||
- SPARC: restore fxstat functionality in sparc64 mode
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Sat Jun 26 10:26:17 UTC 2010 - jengelh@medozas.de
|
|
||||||
|
|
||||||
- Use %_smp_mflags
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Fri Jun 11 15:41:07 CEST 2010 - pbaudis@suse.cz
|
|
||||||
|
|
||||||
- Upgrade to latest release/2.11/master - glibc-2.11.2-21580967038a
|
|
||||||
- Fix buggy x86 CPU family and model check
|
|
||||||
- Fix sunrpc error condition handling
|
|
||||||
- Fix crash on unresolved weak symbol reference
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Tue Jun 1 03:38:28 CEST 2010 - pbaudis@suse.cz
|
|
||||||
|
|
||||||
- Fix ldconfig -r failing on aux cache [bnc#609345]
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Thu May 20 02:19:28 CEST 2010 - pbaudis@suse.cz
|
|
||||||
|
|
||||||
- Upgrade to glibc-2.11.2 (f2020c64596a)
|
|
||||||
- Virtually no changes since previous revision, just official tag
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Wed May 12 04:24:13 CEST 2010 - pbaudis@suse.cz
|
|
||||||
|
|
||||||
- Upgrade to latest release/2.11/master - glibc-2.11.1-6d270188ef3f
|
|
||||||
- This contains considerable amount of bugfixes cherrypicked from
|
|
||||||
the master branch, slated to become glibc-2.11.2 soon with little
|
|
||||||
further changes
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Mon May 10 23:33:35 CEST 2010 - pbaudis@suse.cz
|
|
||||||
|
|
||||||
- Add a hint about /etc/host.conf mdns option removal to the parser
|
|
||||||
error reporting [bnc#569273]
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Tue May 4 05:47:41 UTC 2010 - aj@suse.de
|
|
||||||
|
|
||||||
- Handle /var/run on tmpfs
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Mon Apr 26 22:09:40 CEST 2010 - pbaudis@suse.cz
|
|
||||||
|
|
||||||
- Remove stale resolv.dynamic.diff patch file
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Thu Apr 22 08:30:50 CEST 2010 - meissner@suse.de
|
|
||||||
|
|
||||||
- for powerpc32 build a generic library and also a power4 library
|
|
||||||
to allow older 32bit powerpc to work. bnc#596271
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Tue Apr 20 13:15:19 CEST 2010 - pbaudis@suse.cz
|
|
||||||
|
|
||||||
- Consider private IPv4 addresses as global-scope in gai.conf [bnc#597616]
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Wed Mar 24 13:04:12 CET 2010 - pbaudis@suse.cz
|
|
||||||
|
|
||||||
- Fix get_nprocs() large CPU count handling [bnc#590665]
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Tue Mar 23 15:09:09 CET 2010 - pbaudis@suse.cz
|
|
||||||
|
|
||||||
- Fix interference of STB_GNU_UNIQUE and prelink [bnc#586979]
|
|
||||||
- Make time() use VDSO on PPC64 [bnc#590216]
|
|
||||||
- Make pthread_cond_timedway() use VDSO on PPC64 [bnc#590517]
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Thu Mar 18 14:45:34 CET 2010 - pbaudis@suse.cz
|
|
||||||
|
|
||||||
- Add PreReq for cat to glibc-locale [bnc#588997]
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Thu Mar 18 14:29:42 CET 2010 - pbaudis@suse.cz
|
|
||||||
|
|
||||||
- Fix /etc/resolv.conf change detection for multi-threaded applications
|
|
||||||
(by Sebastian Kienzl)
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Fri Mar 5 12:59:44 CET 2010 - pbaudis@suse.cz
|
|
||||||
|
|
||||||
- Fix spurious mapping from lowercase sharp s to uppercase sharp S
|
|
||||||
which is less standard and causes problems for ISO encodings [bnc#541773]
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Mon Mar 1 18:55:37 CET 2010 - pbaudis@suse.cz
|
|
||||||
|
|
||||||
- Fix spurious overflow messages on some R_X86_64_PC32 relocations,
|
|
||||||
patch by Richard Guenther [bnc#583019]
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Wed Feb 24 11:53:41 CET 2010 - pbaudis@suse.cz
|
|
||||||
|
|
||||||
- Fix assertion failures within valloc(), patch by Michael Matz
|
|
||||||
[bnc#581391]
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Wed Feb 17 12:02:24 CET 2010 - pbaudis@suse.cz
|
|
||||||
|
|
||||||
- S/390: Disable two UTF conversion instructions due to the hardware
|
|
||||||
mishandling some error conditions in the input stream [bnc#579871]
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Mon Feb 15 22:34:29 CET 2010 - pbaudis@suse.cz
|
|
||||||
|
|
||||||
- Further fix previous power5 fix
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Sun Feb 14 15:33:33 CET 2010 - rguenther@suse.de
|
Sun Feb 14 15:33:33 CET 2010 - rguenther@suse.de
|
||||||
|
|
||||||
- avoid spurious differences in nscd on rebuilds.
|
- avoid spurious differences in nscd on rebuilds.
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Thu Feb 11 21:36:32 CET 2010 - pbaudis@suse.cz
|
|
||||||
|
|
||||||
- Fix another upgrade problem on power5 and older - correctly remove
|
|
||||||
the old optimized libraries; found out by matz@suse.de [bnc#563978]
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Fri Feb 5 21:07:54 CET 2010 - pbaudis@suse.cz
|
|
||||||
|
|
||||||
- Final fix for memchr() overflow on IA64 provided by upstream
|
|
||||||
[bnc#567516]
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Thu Jan 28 17:11:59 CET 2010 - pbaudis@suse.cz
|
|
||||||
|
|
||||||
- Fix another memchr() overflow on IA64; another known one still
|
|
||||||
remains a mystery [bnc#567516]
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Wed Jan 27 02:49:46 CET 2010 - pbaudis@suse.cz
|
|
||||||
|
|
||||||
- Remove now-obsolete powerpc-cpu addon usage [bnc#572819]
|
|
||||||
- Fix statfs64() on IA64 in 32-bit mode ia32el [bnc#534828]
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
|
||||||
Tue Jan 26 03:33:38 CET 2010 - pbaudis@suse.cz
|
|
||||||
|
|
||||||
- Fix upgrade from previous distributions on power5 and older [bnc#563978]
|
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Mon Jan 25 17:35:25 CET 2010 - meissner@suse.de
|
Mon Jan 25 17:35:25 CET 2010 - meissner@suse.de
|
||||||
|
|
||||||
|
105
glibc.spec
105
glibc.spec
@ -1,5 +1,5 @@
|
|||||||
#
|
#
|
||||||
# spec file for package glibc (Version 2.11.2)
|
# spec file for package glibc (Version 2.11.1)
|
||||||
#
|
#
|
||||||
# Copyright (c) 2010 SUSE LINUX Products GmbH, Nuernberg, Germany.
|
# Copyright (c) 2010 SUSE LINUX Products GmbH, Nuernberg, Germany.
|
||||||
#
|
#
|
||||||
@ -28,15 +28,8 @@ BuildRequires: libselinux-devel
|
|||||||
%define enable_stackguard_randomization 1
|
%define enable_stackguard_randomization 1
|
||||||
%ifarch ppc ppc64
|
%ifarch ppc ppc64
|
||||||
%define optimize_power 1
|
%define optimize_power 1
|
||||||
%ifarch ppc
|
|
||||||
%define powerpc_optimize_base power3
|
|
||||||
%define powerpc_optimize_tune power3
|
|
||||||
%define powerpc_optimize_cpu_power4 1
|
|
||||||
%else
|
|
||||||
%define powerpc_optimize_base power4
|
%define powerpc_optimize_base power4
|
||||||
%define powerpc_optimize_tune power5
|
%define powerpc_optimize_tune power5
|
||||||
%define powerpc_optimize_cpu_power4 0
|
|
||||||
%endif
|
|
||||||
# We are not building Power CPU specific optimizations for openSUSE.
|
# We are not building Power CPU specific optimizations for openSUSE.
|
||||||
%define powerpc_optimize_cpu_power6 0
|
%define powerpc_optimize_cpu_power6 0
|
||||||
%define powerpc_optimize_cpu_power7 0
|
%define powerpc_optimize_cpu_power7 0
|
||||||
@ -44,12 +37,11 @@ BuildRequires: libselinux-devel
|
|||||||
%else
|
%else
|
||||||
%define optimize_power 0
|
%define optimize_power 0
|
||||||
%define powerpc_optimize_base 0
|
%define powerpc_optimize_base 0
|
||||||
%define powerpc_optimize_cpu_power4 0
|
|
||||||
%define powerpc_optimize_cpu_power6 0
|
%define powerpc_optimize_cpu_power6 0
|
||||||
%define powerpc_optimize_cpu_power7 0
|
%define powerpc_optimize_cpu_power7 0
|
||||||
%define powerpc_optimize_cpu_cell 0
|
%define powerpc_optimize_cpu_cell 0
|
||||||
%endif # ppc, ppc64
|
%endif # ppc, ppc64
|
||||||
License: GPLv2+
|
License: BSD3c(or similar) ; GPLv2+ ; LGPLv2.1+
|
||||||
Summary: Standard Shared Libraries (from the GNU C Library)
|
Summary: Standard Shared Libraries (from the GNU C Library)
|
||||||
Group: System/Libraries
|
Group: System/Libraries
|
||||||
Obsoletes: ngpt <= 2.2.2 ngpt-devel <= 2.2.2
|
Obsoletes: ngpt <= 2.2.2 ngpt-devel <= 2.2.2
|
||||||
@ -63,12 +55,12 @@ Obsoletes: glibc-32bit
|
|||||||
%endif
|
%endif
|
||||||
Provides: rtld(GNU_HASH)
|
Provides: rtld(GNU_HASH)
|
||||||
AutoReqProv: on
|
AutoReqProv: on
|
||||||
Version: 2.11.2
|
Version: 2.11.1
|
||||||
Release: 6
|
Release: 1
|
||||||
Url: http://www.gnu.org/software/libc/libc.html
|
Url: http://www.gnu.org/software/libc/libc.html
|
||||||
PreReq: filesystem
|
PreReq: filesystem
|
||||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||||
Source: glibc-%{version}-21580967038a.tar.bz2
|
Source: glibc-%{version}-11c19d374bd4.tar.bz2
|
||||||
Source2: glibc-ports-2.10.1-2b2b217196.tar.bz2
|
Source2: glibc-ports-2.10.1-2b2b217196.tar.bz2
|
||||||
Source3: noversion.tar.bz2
|
Source3: noversion.tar.bz2
|
||||||
Source4: manpages.tar.bz2
|
Source4: manpages.tar.bz2
|
||||||
@ -78,6 +70,7 @@ Source9: nscd.init
|
|||||||
Source10: bindresvport.blacklist
|
Source10: bindresvport.blacklist
|
||||||
Source11: ctype_b.c
|
Source11: ctype_b.c
|
||||||
Source12: glibc_post_upgrade.c
|
Source12: glibc_post_upgrade.c
|
||||||
|
Source14: powerpc-cpu.tar.bz2
|
||||||
Source15: glibc.rpmlintrc
|
Source15: glibc.rpmlintrc
|
||||||
Source16: baselibs.conf
|
Source16: baselibs.conf
|
||||||
%if %_target_cpu == "i686"
|
%if %_target_cpu == "i686"
|
||||||
@ -89,7 +82,7 @@ NoSource: 0
|
|||||||
Patch0: glibc-2.3-SuSE.diff
|
Patch0: glibc-2.3-SuSE.diff
|
||||||
Patch1: glibc-2.3.90-noversion.diff
|
Patch1: glibc-2.3.90-noversion.diff
|
||||||
Patch2: glibc-2.3.90-fnmatch.diff
|
Patch2: glibc-2.3.90-fnmatch.diff
|
||||||
Patch3: glibc-resolv-reload.diff
|
Patch3: resolv.dynamic.diff
|
||||||
Patch4: glibc-2.3.locales.diff.bz2
|
Patch4: glibc-2.3.locales.diff.bz2
|
||||||
Patch5: crypt_blowfish-1.0-suse.diff
|
Patch5: crypt_blowfish-1.0-suse.diff
|
||||||
Patch7: glibc-version.diff
|
Patch7: glibc-version.diff
|
||||||
@ -113,6 +106,7 @@ Patch24: glibc-2.3.3-nscd-db-path.diff
|
|||||||
Patch25: glibc-2.3.5-nscd-zeronegtimeout.diff
|
Patch25: glibc-2.3.5-nscd-zeronegtimeout.diff
|
||||||
Patch26: glibc-2.3.90-langpackdir.diff
|
Patch26: glibc-2.3.90-langpackdir.diff
|
||||||
Patch27: glibc-nptl-2.4-nofixsyscallnr.diff
|
Patch27: glibc-nptl-2.4-nofixsyscallnr.diff
|
||||||
|
Patch29: glibc-2.5-ppc-llrintl.diff
|
||||||
Patch30: glibc-2.6-configure.diff
|
Patch30: glibc-2.6-configure.diff
|
||||||
Patch31: glibc-2.2-sunrpc.diff
|
Patch31: glibc-2.2-sunrpc.diff
|
||||||
Patch32: glibc-2.8-getconf.diff
|
Patch32: glibc-2.8-getconf.diff
|
||||||
@ -131,20 +125,10 @@ Patch46: glibc-2.10.99-ia64-include.diff
|
|||||||
Patch47: libm-x86-64-exceptions.diff
|
Patch47: libm-x86-64-exceptions.diff
|
||||||
Patch48: glibc-uio-cell.diff
|
Patch48: glibc-uio-cell.diff
|
||||||
Patch50: glibc-nameserver-localhost.diff
|
Patch50: glibc-nameserver-localhost.diff
|
||||||
Patch54: glibc-statfs64-ia64.diff
|
|
||||||
Patch60: ld-prelink-unique.diff
|
|
||||||
Patch61: glibc-ppc64-vdso-time.diff
|
|
||||||
Patch64: glibc-gai-private4.diff
|
|
||||||
Patch65: glibc-resolv-mdnshint.diff
|
|
||||||
Patch66: glibc-ldconfigr-aux.diff
|
|
||||||
Patch67: glibc-nis-initgroups.diff
|
|
||||||
Patch68: glibc-make-3.82.patch
|
|
||||||
Patch500: ARM_glibc-2.10.1-local-eabi-wchar.diff
|
Patch500: ARM_glibc-2.10.1-local-eabi-wchar.diff
|
||||||
Patch501: ARM_glibc-2.10.1-local-hwcap-updates.diff
|
Patch501: ARM_glibc-2.10.1-local-hwcap-updates.diff
|
||||||
Patch502: ARM_glibc-2.10.1-local-lowlevellock.diff
|
Patch502: ARM_glibc-2.10.1-local-lowlevellock.diff
|
||||||
Patch503: ARM_glibc-2.10.1-local-no-hwcap.diff
|
Patch503: ARM_glibc-2.10.1-local-no-hwcap.diff
|
||||||
# http://sources.redhat.com/bugzilla/show_bug.cgi?id=11155
|
|
||||||
Patch600: glibc-sparc64-fxstat.diff
|
|
||||||
|
|
||||||
%description
|
%description
|
||||||
The GNU C Library provides the most important standard libraries used
|
The GNU C Library provides the most important standard libraries used
|
||||||
@ -200,7 +184,6 @@ License: GPLv2+ ; LGPLv2.1+
|
|||||||
Summary: Locale Data for Localized Programs
|
Summary: Locale Data for Localized Programs
|
||||||
Group: System/Libraries
|
Group: System/Libraries
|
||||||
Requires: glibc = %{version}
|
Requires: glibc = %{version}
|
||||||
PreReq: /bin/cat
|
|
||||||
AutoReqProv: on
|
AutoReqProv: on
|
||||||
# bug437293
|
# bug437293
|
||||||
%ifarch ppc64
|
%ifarch ppc64
|
||||||
@ -295,10 +278,10 @@ versions of your software.
|
|||||||
# add glibc-ports for arm
|
# add glibc-ports for arm
|
||||||
# this is CURRENTLY BROKEN; ARM-interested contributors need to provide
|
# this is CURRENTLY BROKEN; ARM-interested contributors need to provide
|
||||||
# new tested glibc-ports source
|
# new tested glibc-ports source
|
||||||
%setup -n glibc-%{version} -q -a 2 -a 3 -a 4
|
%setup -n glibc-%{version} -q -a 2 -a 3 -a 4 -a 14
|
||||||
%else
|
%else
|
||||||
# any other leave out ports
|
# any other leave out ports
|
||||||
%setup -n glibc-%{version} -q -a 3 -a 4
|
%setup -n glibc-%{version} -q -a 3 -a 4 -a 14
|
||||||
%endif
|
%endif
|
||||||
%patch0
|
%patch0
|
||||||
# libNoVersion part is only active on ix86
|
# libNoVersion part is only active on ix86
|
||||||
@ -337,6 +320,7 @@ touch -r nscd/s-stamp nscd/nscd_stat.c
|
|||||||
rm nscd/s-stamp
|
rm nscd/s-stamp
|
||||||
%patch26
|
%patch26
|
||||||
%patch27
|
%patch27
|
||||||
|
%patch29
|
||||||
%patch30
|
%patch30
|
||||||
%patch31
|
%patch31
|
||||||
%patch32
|
%patch32
|
||||||
@ -355,21 +339,12 @@ rm nscd/s-stamp
|
|||||||
%patch47
|
%patch47
|
||||||
%patch48 -p1
|
%patch48 -p1
|
||||||
%patch50 -p1
|
%patch50 -p1
|
||||||
%patch54
|
|
||||||
%patch60 -p1
|
|
||||||
%patch61 -p1
|
|
||||||
%patch64
|
|
||||||
%patch65 -p1
|
|
||||||
%patch66 -p1
|
|
||||||
%patch67 -p1
|
|
||||||
%patch68 -p1
|
|
||||||
%ifarch %arm armv5tel armv7l
|
%ifarch %arm armv5tel armv7l
|
||||||
%patch500
|
%patch500
|
||||||
%patch501
|
%patch501
|
||||||
%patch502
|
%patch502
|
||||||
%patch503
|
%patch503
|
||||||
%endif
|
%endif
|
||||||
%patch600 -p1
|
|
||||||
#
|
#
|
||||||
# Inconsistency detected by ld.so: dl-close.c: 719: _dl_close: Assertion `map->l_init_called' failed!
|
# Inconsistency detected by ld.so: dl-close.c: 719: _dl_close: Assertion `map->l_init_called' failed!
|
||||||
#
|
#
|
||||||
@ -389,7 +364,6 @@ rm nscd/s-stamp
|
|||||||
#
|
#
|
||||||
rm -fv sysdeps/powerpc/powerpc32/power4/hp-timing.c sysdeps/powerpc/powerpc32/power4/hp-timing.h
|
rm -fv sysdeps/powerpc/powerpc32/power4/hp-timing.c sysdeps/powerpc/powerpc32/power4/hp-timing.h
|
||||||
find . -name configure | xargs touch
|
find . -name configure | xargs touch
|
||||||
|
|
||||||
#######################################################################
|
#######################################################################
|
||||||
###
|
###
|
||||||
### BUILD
|
### BUILD
|
||||||
@ -416,7 +390,7 @@ BuildFlags="$(echo $BuildFlags | sed -e 's#-fstack-protector##' -e 's#-ffortify=
|
|||||||
BuildCC="gcc"
|
BuildCC="gcc"
|
||||||
BuildCCplus="g++"
|
BuildCCplus="g++"
|
||||||
add_ons=",libidn"
|
add_ons=",libidn"
|
||||||
PARALLEL="%{?_smp_mflags}"
|
PARALLEL="%{?jobs:-j%jobs}"
|
||||||
#
|
#
|
||||||
#now overwrite for some architectures
|
#now overwrite for some architectures
|
||||||
#
|
#
|
||||||
@ -467,7 +441,6 @@ PARALLEL="%{?_smp_mflags}"
|
|||||||
# fails to build otherwise - need to recheck and fix
|
# fails to build otherwise - need to recheck and fix
|
||||||
%define enable_stackguard_randomization 0
|
%define enable_stackguard_randomization 0
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
configure_and_build_glibc() {
|
configure_and_build_glibc() {
|
||||||
local dirname="$1"; shift
|
local dirname="$1"; shift
|
||||||
local cflags="$1"; shift
|
local cflags="$1"; shift
|
||||||
@ -491,7 +464,6 @@ configure_and_build_glibc() {
|
|||||||
make $PARALLEL
|
make $PARALLEL
|
||||||
cd ..
|
cd ..
|
||||||
}
|
}
|
||||||
|
|
||||||
%if !%{optimize_power}
|
%if !%{optimize_power}
|
||||||
#
|
#
|
||||||
# Build base glibc
|
# Build base glibc
|
||||||
@ -503,17 +475,9 @@ configure_and_build_glibc() {
|
|||||||
#
|
#
|
||||||
# First, base build:
|
# First, base build:
|
||||||
pBuildFlags="$BuildFlags -mcpu=%{powerpc_optimize_base} -mtune=%{powerpc_optimize_tune}"
|
pBuildFlags="$BuildFlags -mcpu=%{powerpc_optimize_base} -mtune=%{powerpc_optimize_tune}"
|
||||||
%if %{powerpc_optimize_base} != "power3"
|
configure_and_build_glibc base "$pBuildFlags" "$add_ons,powerpc-cpu" --with-cpu=%{powerpc_optimize_base}
|
||||||
configure_and_build_glibc base "$pBuildFlags" "$add_ons" --with-cpu=%{powerpc_optimize_base}
|
|
||||||
%else
|
|
||||||
# Use no default CPU
|
|
||||||
configure_and_build_glibc base "$pBuildFlags" "$add_ons"
|
|
||||||
%endif
|
|
||||||
# Then other power variants:
|
# Then other power variants:
|
||||||
for pcpu in \
|
for pcpu in \
|
||||||
%if %{powerpc_optimize_cpu_power4}
|
|
||||||
power4 \
|
|
||||||
%endif
|
|
||||||
%if %{powerpc_optimize_cpu_power6}
|
%if %{powerpc_optimize_cpu_power6}
|
||||||
power6 \
|
power6 \
|
||||||
%endif
|
%endif
|
||||||
@ -521,7 +485,7 @@ configure_and_build_glibc() {
|
|||||||
power7 \
|
power7 \
|
||||||
%endif
|
%endif
|
||||||
; do
|
; do
|
||||||
configure_and_build_glibc $pcpu "$BuildFlags -mcpu=$pcpu" "$add_ons" \
|
configure_and_build_glibc $pcpu "$BuildFlags -mcpu=$pcpu" "$add_ons,powerpc-cpu" \
|
||||||
--with-cpu=$pcpu --disable-runbinaries
|
--with-cpu=$pcpu --disable-runbinaries
|
||||||
done
|
done
|
||||||
# Eventually, special Cell variant:
|
# Eventually, special Cell variant:
|
||||||
@ -529,22 +493,17 @@ configure_and_build_glibc() {
|
|||||||
configure_and_build_glibc ppc-cell-be "$BuildFlags -mcpu=cell" "$add_ons" --disable-runbinaries
|
configure_and_build_glibc ppc-cell-be "$BuildFlags -mcpu=cell" "$add_ons" --disable-runbinaries
|
||||||
%endif
|
%endif
|
||||||
%endif # optimize_power
|
%endif # optimize_power
|
||||||
|
|
||||||
#
|
#
|
||||||
# Build html documentation
|
# Build html documentation
|
||||||
#
|
#
|
||||||
make -C cc-base html
|
make -C cc-base html
|
||||||
|
|
||||||
#
|
#
|
||||||
# Build glibc_post_upgrade binary
|
# Build glibc_post_upgrade binary
|
||||||
#
|
#
|
||||||
$BuildCC -static -Os -g $RPM_SOURCE_DIR/glibc_post_upgrade.c -o glibc_post_upgrade \
|
$BuildCC -static -Os -g $RPM_SOURCE_DIR/glibc_post_upgrade.c -o glibc_post_upgrade \
|
||||||
-Lcc-base -Bcc-base/csu \
|
-Lcc-base -Bcc-base/csu \
|
||||||
'-DREMOVE_TLS_DIRS' '-DREMOVE_PPC_OPTIMIZE_POWER5' \
|
'-DREMOVE_TLS_DIRS' \
|
||||||
%ifarch ppc ppc64
|
%ifarch ppc ppc64
|
||||||
%if !%{powerpc_optimize_cpu_power4}
|
|
||||||
'-DREMOVE_PPC_OPTIMIZE_POWER4' \
|
|
||||||
%endif
|
|
||||||
%if !%{powerpc_optimize_cpu_power6}
|
%if !%{powerpc_optimize_cpu_power6}
|
||||||
'-DREMOVE_PPC_OPTIMIZE_POWER6' \
|
'-DREMOVE_PPC_OPTIMIZE_POWER6' \
|
||||||
%endif
|
%endif
|
||||||
@ -556,7 +515,6 @@ $BuildCC -static -Os -g $RPM_SOURCE_DIR/glibc_post_upgrade.c -o glibc_post_upgra
|
|||||||
%endif
|
%endif
|
||||||
%endif
|
%endif
|
||||||
'-DLIBDIR="/%{_lib}"' '-DGCONV_MODULES_DIR="%{_prefix}/%{_lib}/gconv"'
|
'-DLIBDIR="/%{_lib}"' '-DGCONV_MODULES_DIR="%{_prefix}/%{_lib}/gconv"'
|
||||||
|
|
||||||
#######################################################################
|
#######################################################################
|
||||||
###
|
###
|
||||||
### CHECK
|
### CHECK
|
||||||
@ -578,7 +536,6 @@ $BuildCC -static -Os -g $RPM_SOURCE_DIR/glibc_post_upgrade.c -o glibc_post_upgra
|
|||||||
%endif
|
%endif
|
||||||
%endif
|
%endif
|
||||||
make -C cc-base check-abi || echo check-abi failed
|
make -C cc-base check-abi || echo check-abi failed
|
||||||
|
|
||||||
#######################################################################
|
#######################################################################
|
||||||
###
|
###
|
||||||
### INSTALL
|
### INSTALL
|
||||||
@ -596,15 +553,12 @@ make -C cc-base check-abi || echo check-abi failed
|
|||||||
# debugging tools currently require these sections directly inside the main
|
# debugging tools currently require these sections directly inside the main
|
||||||
# files - specifically valgrind and PurifyPlus.
|
# files - specifically valgrind and PurifyPlus.
|
||||||
export STRIP_KEEP_SYMTAB=*.so*
|
export STRIP_KEEP_SYMTAB=*.so*
|
||||||
|
|
||||||
# Make sure we will create the gconv-modules.cache
|
# Make sure we will create the gconv-modules.cache
|
||||||
mkdir -p $RPM_BUILD_ROOT%{_libdir}/gconv
|
mkdir -p $RPM_BUILD_ROOT%{_libdir}/gconv
|
||||||
touch $RPM_BUILD_ROOT%{_libdir}/gconv/gconv-modules.cache
|
touch $RPM_BUILD_ROOT%{_libdir}/gconv/gconv-modules.cache
|
||||||
|
|
||||||
# Install base glibc
|
# Install base glibc
|
||||||
# Do not install in parallel, timezone Makefile will fail
|
# Do not install in parallel, timezone Makefile will fail
|
||||||
make install_root=$RPM_BUILD_ROOT install -C cc-base
|
make install_root=$RPM_BUILD_ROOT install -C cc-base
|
||||||
|
|
||||||
# Install power-optimized glibc
|
# Install power-optimized glibc
|
||||||
%if %{optimize_power}
|
%if %{optimize_power}
|
||||||
# run ldconfig to create the library symlinks
|
# run ldconfig to create the library symlinks
|
||||||
@ -612,9 +566,6 @@ make install_root=$RPM_BUILD_ROOT install -C cc-base
|
|||||||
# it may contain instructions not suitable for the cpu on the builhost
|
# it may contain instructions not suitable for the cpu on the builhost
|
||||||
my_ldconfig=/sbin/ldconfig
|
my_ldconfig=/sbin/ldconfig
|
||||||
for pcpu in \
|
for pcpu in \
|
||||||
%if %{powerpc_optimize_cpu_power4}
|
|
||||||
power4 \
|
|
||||||
%endif
|
|
||||||
%if %{powerpc_optimize_cpu_power6}
|
%if %{powerpc_optimize_cpu_power6}
|
||||||
power6 \
|
power6 \
|
||||||
%endif
|
%endif
|
||||||
@ -646,7 +597,6 @@ make install_root=$RPM_BUILD_ROOT install -C cc-base
|
|||||||
fi
|
fi
|
||||||
%endif
|
%endif
|
||||||
%endif # optimize_power
|
%endif # optimize_power
|
||||||
|
|
||||||
# Install locales
|
# Install locales
|
||||||
%if %{build_locales}
|
%if %{build_locales}
|
||||||
# Do not install locales in parallel!
|
# Do not install locales in parallel!
|
||||||
@ -656,43 +606,31 @@ make install_root=$RPM_BUILD_ROOT install -C cc-base
|
|||||||
%endif
|
%endif
|
||||||
# Create file list for glibc-locale package
|
# Create file list for glibc-locale package
|
||||||
%{find_lang} libc
|
%{find_lang} libc
|
||||||
|
|
||||||
# Prepare obsolete/, used only on some architectures:
|
# Prepare obsolete/, used only on some architectures:
|
||||||
export RPM_BUILD_ROOT
|
export RPM_BUILD_ROOT
|
||||||
mkdir -p $RPM_BUILD_ROOT/%{_lib}/obsolete
|
mkdir -p $RPM_BUILD_ROOT/%{_lib}/obsolete
|
||||||
|
|
||||||
# NPTL <bits/stdio-lock.h> is not usable outside of glibc, so include
|
# NPTL <bits/stdio-lock.h> is not usable outside of glibc, so include
|
||||||
# the generic one (RH#162634)
|
# the generic one (RH#162634)
|
||||||
cp -av bits/stdio-lock.h $RPM_BUILD_ROOT%{_prefix}/include/bits/stdio-lock.h
|
cp -av bits/stdio-lock.h $RPM_BUILD_ROOT%{_prefix}/include/bits/stdio-lock.h
|
||||||
|
|
||||||
%ifarch s390x
|
%ifarch s390x
|
||||||
# s390x is different ...
|
# s390x is different ...
|
||||||
mkdir $RPM_BUILD_ROOT/lib
|
mkdir $RPM_BUILD_ROOT/lib
|
||||||
ln -sf ../%{_lib}/ld-%{version}.so $RPM_BUILD_ROOT/lib/ld64.so.1
|
ln -sf ../%{_lib}/ld-%{version}.so $RPM_BUILD_ROOT/lib/ld64.so.1
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
# Miscelanna:
|
# Miscelanna:
|
||||||
|
|
||||||
install -m 0700 glibc_post_upgrade $RPM_BUILD_ROOT%{_sbindir}
|
install -m 0700 glibc_post_upgrade $RPM_BUILD_ROOT%{_sbindir}
|
||||||
|
|
||||||
install -m 644 $RPM_SOURCE_DIR/bindresvport.blacklist $RPM_BUILD_ROOT/etc
|
install -m 644 $RPM_SOURCE_DIR/bindresvport.blacklist $RPM_BUILD_ROOT/etc
|
||||||
install -m 644 $RPM_SOURCE_DIR/nsswitch.conf $RPM_BUILD_ROOT/etc
|
install -m 644 $RPM_SOURCE_DIR/nsswitch.conf $RPM_BUILD_ROOT/etc
|
||||||
install -m 644 posix/gai.conf $RPM_BUILD_ROOT/etc
|
install -m 644 posix/gai.conf $RPM_BUILD_ROOT/etc
|
||||||
|
|
||||||
mkdir -p $RPM_BUILD_ROOT/etc/default
|
mkdir -p $RPM_BUILD_ROOT/etc/default
|
||||||
install -m 644 nis/nss $RPM_BUILD_ROOT/etc/default/
|
install -m 644 nis/nss $RPM_BUILD_ROOT/etc/default/
|
||||||
|
|
||||||
mkdir -p $RPM_BUILD_ROOT/usr/include/resolv
|
mkdir -p $RPM_BUILD_ROOT/usr/include/resolv
|
||||||
install -m 0644 resolv/mapv4v6addr.h $RPM_BUILD_ROOT/usr/include/resolv/
|
install -m 0644 resolv/mapv4v6addr.h $RPM_BUILD_ROOT/usr/include/resolv/
|
||||||
install -m 0644 resolv/mapv4v6hostent.h $RPM_BUILD_ROOT/usr/include/resolv/
|
install -m 0644 resolv/mapv4v6hostent.h $RPM_BUILD_ROOT/usr/include/resolv/
|
||||||
|
|
||||||
mkdir -p $RPM_BUILD_ROOT/usr/share/doc/glibc
|
mkdir -p $RPM_BUILD_ROOT/usr/share/doc/glibc
|
||||||
cp -p manual/libc/*.html $RPM_BUILD_ROOT/usr/share/doc/glibc
|
cp -p manual/libc/*.html $RPM_BUILD_ROOT/usr/share/doc/glibc
|
||||||
|
|
||||||
cd manpages; make install_root=$RPM_BUILD_ROOT install; cd ..
|
cd manpages; make install_root=$RPM_BUILD_ROOT install; cd ..
|
||||||
|
|
||||||
# nscd tools:
|
# nscd tools:
|
||||||
|
|
||||||
cp nscd/nscd.conf $RPM_BUILD_ROOT/etc
|
cp nscd/nscd.conf $RPM_BUILD_ROOT/etc
|
||||||
mkdir -p $RPM_BUILD_ROOT/etc/apparmor.d
|
mkdir -p $RPM_BUILD_ROOT/etc/apparmor.d
|
||||||
cp $RPM_SOURCE_DIR/usr.sbin.nscd $RPM_BUILD_ROOT/etc/apparmor.d
|
cp $RPM_SOURCE_DIR/usr.sbin.nscd $RPM_BUILD_ROOT/etc/apparmor.d
|
||||||
@ -702,7 +640,6 @@ ln -sf /etc/init.d/nscd $RPM_BUILD_ROOT/usr/sbin/rcnscd
|
|||||||
mkdir -p $RPM_BUILD_ROOT/var/run/nscd
|
mkdir -p $RPM_BUILD_ROOT/var/run/nscd
|
||||||
touch $RPM_BUILD_ROOT/var/run/nscd/{passwd,group,hosts}
|
touch $RPM_BUILD_ROOT/var/run/nscd/{passwd,group,hosts}
|
||||||
touch $RPM_BUILD_ROOT/var/run/nscd/{socket,nscd.pid}
|
touch $RPM_BUILD_ROOT/var/run/nscd/{socket,nscd.pid}
|
||||||
|
|
||||||
#
|
#
|
||||||
# Create ld.so.conf
|
# Create ld.so.conf
|
||||||
#
|
#
|
||||||
@ -742,28 +679,23 @@ mkdir -p $RPM_BUILD_ROOT/var/cache/ldconfig
|
|||||||
# Empty the ld.so.cache:
|
# Empty the ld.so.cache:
|
||||||
rm -f $RPM_BUILD_ROOT/etc/ld.so.cache
|
rm -f $RPM_BUILD_ROOT/etc/ld.so.cache
|
||||||
touch $RPM_BUILD_ROOT/etc/ld.so.cache
|
touch $RPM_BUILD_ROOT/etc/ld.so.cache
|
||||||
|
|
||||||
# libNoVersion belongs only to glibc-obsolete:
|
# libNoVersion belongs only to glibc-obsolete:
|
||||||
%ifarch %ix86
|
%ifarch %ix86
|
||||||
rm -f $RPM_BUILD_ROOT%{_libdir}/libNoVersion*
|
rm -f $RPM_BUILD_ROOT%{_libdir}/libNoVersion*
|
||||||
mkdir -p $RPM_BUILD_ROOT/%{_lib}/obsolete/noversion
|
mkdir -p $RPM_BUILD_ROOT/%{_lib}/obsolete/noversion
|
||||||
mv -v $RPM_BUILD_ROOT/%{_lib}/libNoVersion* $RPM_BUILD_ROOT/%{_lib}/obsolete/noversion/
|
mv -v $RPM_BUILD_ROOT/%{_lib}/libNoVersion* $RPM_BUILD_ROOT/%{_lib}/obsolete/noversion/
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
# Don't look at ldd! We don't wish a /bin/sh requires
|
# Don't look at ldd! We don't wish a /bin/sh requires
|
||||||
chmod 644 $RPM_BUILD_ROOT/usr/bin/ldd
|
chmod 644 $RPM_BUILD_ROOT/usr/bin/ldd
|
||||||
|
|
||||||
# Remove timezone data, now coming in standalone package:
|
# Remove timezone data, now coming in standalone package:
|
||||||
for i in sbin/sln usr/bin/tzselect usr/sbin/zic usr/sbin/zdump etc/localtime; do
|
for i in sbin/sln usr/bin/tzselect usr/sbin/zic usr/sbin/zdump etc/localtime; do
|
||||||
rm -f $RPM_BUILD_ROOT/$i
|
rm -f $RPM_BUILD_ROOT/$i
|
||||||
done
|
done
|
||||||
rm -rf $RPM_BUILD_ROOT/usr/share/zoneinfo
|
rm -rf $RPM_BUILD_ROOT/usr/share/zoneinfo
|
||||||
|
|
||||||
# Remove the buildflags tracking section and the build-id
|
# Remove the buildflags tracking section and the build-id
|
||||||
for o in $RPM_BUILD_ROOT/%{_libdir}/crt[1in].o $RPM_BUILD_ROOT/%{_libdir}/lib*_nonshared.a; do
|
for o in $RPM_BUILD_ROOT/%{_libdir}/crt[1in].o $RPM_BUILD_ROOT/%{_libdir}/lib*_nonshared.a; do
|
||||||
objcopy -R ".comment.SUSE.OPTs" -R ".note.gnu.build-id" $o
|
objcopy -R ".comment.SUSE.OPTs" -R ".note.gnu.build-id" $o
|
||||||
done
|
done
|
||||||
|
|
||||||
#######################################################################
|
#######################################################################
|
||||||
###
|
###
|
||||||
### ...
|
### ...
|
||||||
@ -800,13 +732,11 @@ done
|
|||||||
%restart_on_update nscd
|
%restart_on_update nscd
|
||||||
%insserv_cleanup
|
%insserv_cleanup
|
||||||
exit 0
|
exit 0
|
||||||
|
|
||||||
#######################################################################
|
#######################################################################
|
||||||
###
|
###
|
||||||
### FILES
|
### FILES
|
||||||
###
|
###
|
||||||
#######################################################################
|
#######################################################################
|
||||||
|
|
||||||
# glibc
|
# glibc
|
||||||
|
|
||||||
%files
|
%files
|
||||||
@ -903,9 +833,6 @@ exit 0
|
|||||||
/%{_lib}/%1/librt.so.1\
|
/%{_lib}/%1/librt.so.1\
|
||||||
/%{_lib}/%1/libthread_db-1.0.so\
|
/%{_lib}/%1/libthread_db-1.0.so\
|
||||||
/%{_lib}/%1/libthread_db.so.1
|
/%{_lib}/%1/libthread_db.so.1
|
||||||
%if %{powerpc_optimize_cpu_power4}
|
|
||||||
%{optimized_libs power4}
|
|
||||||
%endif
|
|
||||||
%if %{powerpc_optimize_cpu_power6}
|
%if %{powerpc_optimize_cpu_power6}
|
||||||
%{optimized_libs power6}
|
%{optimized_libs power6}
|
||||||
%{optimized_libs power6x}
|
%{optimized_libs power6x}
|
||||||
@ -1014,7 +941,7 @@ exit 0
|
|||||||
%config /etc/init.d/nscd
|
%config /etc/init.d/nscd
|
||||||
/usr/sbin/nscd
|
/usr/sbin/nscd
|
||||||
/usr/sbin/rcnscd
|
/usr/sbin/rcnscd
|
||||||
%dir %attr(0755,root,root) %ghost /var/run/nscd
|
%dir %attr(0755,root,root) /var/run/nscd
|
||||||
%attr(0644,root,root) %verify(not md5 size mtime) %ghost %config(missingok,noreplace) /var/run/nscd/nscd.pid
|
%attr(0644,root,root) %verify(not md5 size mtime) %ghost %config(missingok,noreplace) /var/run/nscd/nscd.pid
|
||||||
%attr(0666,root,root) %verify(not md5 size mtime) %ghost %config(missingok,noreplace) /var/run/nscd/socket
|
%attr(0666,root,root) %verify(not md5 size mtime) %ghost %config(missingok,noreplace) /var/run/nscd/socket
|
||||||
%attr(0600,root,root) %verify(not md5 size mtime) %ghost %config(missingok,noreplace) /var/run/nscd/passwd
|
%attr(0600,root,root) %verify(not md5 size mtime) %ghost %config(missingok,noreplace) /var/run/nscd/passwd
|
||||||
|
@ -34,9 +34,6 @@ main (void)
|
|||||||
char initpath[256];
|
char initpath[256];
|
||||||
struct stat root, init_root;
|
struct stat root, init_root;
|
||||||
|
|
||||||
/* First, get rid of platform-optimized libraries. We remove any we have
|
|
||||||
ever built, since otherwise we might end up using some old leftover
|
|
||||||
libraries when new ones aren't installed in their place anymore. */
|
|
||||||
#ifdef REMOVE_TLS_DIRS
|
#ifdef REMOVE_TLS_DIRS
|
||||||
const char *library[] = {"libc.so.6", "libc.so.6.1", "libm.so.6",
|
const char *library[] = {"libc.so.6", "libc.so.6.1", "libm.so.6",
|
||||||
"libm.so.6.1", "librt.so.1", "librtkaio.so.1",
|
"libm.so.6.1", "librt.so.1", "librtkaio.so.1",
|
||||||
@ -46,14 +43,6 @@ main (void)
|
|||||||
"/lib/i686/",
|
"/lib/i686/",
|
||||||
#endif
|
#endif
|
||||||
#ifdef __powerpc64__
|
#ifdef __powerpc64__
|
||||||
#ifdef REMOVE_PPC_OPTIMIZE_POWER4
|
|
||||||
"/lib64/power4/",
|
|
||||||
"/lib64/ppc970/",
|
|
||||||
#endif
|
|
||||||
#ifdef REMOVE_PPC_OPTIMIZE_POWER5
|
|
||||||
"/lib64/power5/",
|
|
||||||
"/lib64/power5+/",
|
|
||||||
#endif
|
|
||||||
#ifdef REMOVE_PPC_OPTIMIZE_POWER6
|
#ifdef REMOVE_PPC_OPTIMIZE_POWER6
|
||||||
"/lib64/power6/",
|
"/lib64/power6/",
|
||||||
"/lib64/power6x/",
|
"/lib64/power6x/",
|
||||||
@ -66,14 +55,6 @@ main (void)
|
|||||||
#endif
|
#endif
|
||||||
#endif /* __powerpc64__ */
|
#endif /* __powerpc64__ */
|
||||||
#ifdef __powerpc__
|
#ifdef __powerpc__
|
||||||
#ifdef REMOVE_PPC_OPTIMIZE_POWER4
|
|
||||||
"/lib/power4/",
|
|
||||||
"/lib/ppc970/",
|
|
||||||
#endif
|
|
||||||
#ifdef REMOVE_PPC_OPTIMIZE_POWER5
|
|
||||||
"/lib/power5/",
|
|
||||||
"/lib/power5+/",
|
|
||||||
#endif
|
|
||||||
#ifdef REMOVE_PPC_OPTIMIZE_POWER6
|
#ifdef REMOVE_PPC_OPTIMIZE_POWER6
|
||||||
"/lib/power6/",
|
"/lib/power6/",
|
||||||
"/lib/power6x/",
|
"/lib/power6x/",
|
||||||
|
@ -1,57 +0,0 @@
|
|||||||
2010-03-23 Jakub Jelinek <jakub@redhat.com>
|
|
||||||
|
|
||||||
* elf/dl-lookup.c (do_lookup_x): If tab->entries is NULL,
|
|
||||||
but tab->size != 0, just unlock and goto success, without
|
|
||||||
allocating anything or entering anything into the hash table.
|
|
||||||
(_dl_debug_bindings): Temporarily set tab->entries to NULL
|
|
||||||
around do_lookup_x in undef_map->l_local_scope[0].
|
|
||||||
|
|
||||||
--- libc/elf/dl-lookup.c.jj 2009-12-16 00:10:37.000000000 +0100
|
|
||||||
+++ libc/elf/dl-lookup.c 2010-03-23 11:03:45.850560036 +0100
|
|
||||||
@@ -1,5 +1,6 @@
|
|
||||||
/* Look up a symbol in the loaded objects.
|
|
||||||
- Copyright (C) 1995-2005, 2006, 2007, 2009 Free Software Foundation, Inc.
|
|
||||||
+ Copyright (C) 1995-2005, 2006, 2007, 2009, 2010
|
|
||||||
+ 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
|
|
||||||
@@ -414,6 +415,20 @@ do_lookup_x (const char *undef_name, uin
|
|
||||||
assert (!RTLD_CHECK_FOREIGN_CALL);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
+#ifdef SHARED
|
|
||||||
+ /* If tab->entries is NULL, but tab->size is not, it means
|
|
||||||
+ this is the second, conflict finding, lookup for
|
|
||||||
+ LD_TRACE_PRELINKING in _dl_debug_bindings. Don't
|
|
||||||
+ allocate anything and don't enter anything into the
|
|
||||||
+ hash table. */
|
|
||||||
+ if (__builtin_expect (tab->size, 0))
|
|
||||||
+ {
|
|
||||||
+ assert (GLRO(dl_debug_mask) & DL_DEBUG_PRELINK);
|
|
||||||
+ __rtld_lock_unlock_recursive (tab->lock);
|
|
||||||
+ goto success;
|
|
||||||
+ }
|
|
||||||
+#endif
|
|
||||||
+
|
|
||||||
#define INITIAL_NUNIQUE_SYM_TABLE 31
|
|
||||||
size = INITIAL_NUNIQUE_SYM_TABLE;
|
|
||||||
entries = calloc (sizeof (struct unique_sym), size);
|
|
||||||
@@ -917,13 +932,17 @@ _dl_debug_bindings (const char *undef_na
|
|
||||||
{
|
|
||||||
const uint_fast32_t new_hash = dl_new_hash (undef_name);
|
|
||||||
unsigned long int old_hash = 0xffffffff;
|
|
||||||
+ struct unique_sym *saved_entries
|
|
||||||
+ = GL(dl_ns)[LM_ID_BASE]._ns_unique_sym_table.entries;
|
|
||||||
|
|
||||||
+ GL(dl_ns)[LM_ID_BASE]._ns_unique_sym_table.entries = NULL;
|
|
||||||
do_lookup_x (undef_name, new_hash, &old_hash, *ref, &val,
|
|
||||||
undef_map->l_local_scope[0], 0, version, 0, NULL,
|
|
||||||
type_class, undef_map);
|
|
||||||
|
|
||||||
if (val.s != value->s || val.m != value->m)
|
|
||||||
conflict = 1;
|
|
||||||
+ GL(dl_ns)[LM_ID_BASE]._ns_unique_sym_table.entries = saved_entries;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (value->s)
|
|
@ -66,8 +66,6 @@ rc_reset
|
|||||||
case "$1" in
|
case "$1" in
|
||||||
start)
|
start)
|
||||||
echo -n "Starting Name Service Cache Daemon"
|
echo -n "Starting Name Service Cache Daemon"
|
||||||
# /var/run might be on tmpfs
|
|
||||||
[ -d /var/run/nscd ] || mkdir /var/run/nscd
|
|
||||||
/sbin/startproc -p $NSCD_PID $NSCD_BIN
|
/sbin/startproc -p $NSCD_PID $NSCD_BIN
|
||||||
rc_status -v
|
rc_status -v
|
||||||
;;
|
;;
|
||||||
|
3
powerpc-cpu.tar.bz2
Normal file
3
powerpc-cpu.tar.bz2
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:c59f80e38c9f6ad339d72bbfbc454364659686567b7689d33483b9cb4a12bf2a
|
||||||
|
size 36248
|
33
resolv.dynamic.diff
Normal file
33
resolv.dynamic.diff
Normal file
@ -0,0 +1,33 @@
|
|||||||
|
Index: resolv/res_libc.c
|
||||||
|
===================================================================
|
||||||
|
--- resolv/res_libc.c.orig
|
||||||
|
+++ resolv/res_libc.c
|
||||||
|
@@ -22,6 +22,7 @@
|
||||||
|
#include <arpa/nameser.h>
|
||||||
|
#include <resolv.h>
|
||||||
|
#include <bits/libc-lock.h>
|
||||||
|
+#include <sys/stat.h>
|
||||||
|
|
||||||
|
|
||||||
|
/* The following bit is copied from res_data.c (where it is #ifdef'ed
|
||||||
|
@@ -95,6 +96,20 @@ int
|
||||||
|
__res_maybe_init (res_state resp, int preinit)
|
||||||
|
{
|
||||||
|
if (resp->options & RES_INIT) {
|
||||||
|
+ static time_t last_mtime, last_check;
|
||||||
|
+ time_t now;
|
||||||
|
+ struct stat statbuf;
|
||||||
|
+
|
||||||
|
+ time (&now);
|
||||||
|
+ if (now != last_check) {
|
||||||
|
+ last_check = now;
|
||||||
|
+ if (stat (_PATH_RESCONF, &statbuf) == 0 && last_mtime != statbuf.st_mtime) {
|
||||||
|
+ last_mtime = statbuf.st_mtime;
|
||||||
|
+ atomicinclock (lock);
|
||||||
|
+ atomicinc (__res_initstamp);
|
||||||
|
+ atomicincunlock (lock);
|
||||||
|
+ }
|
||||||
|
+ }
|
||||||
|
if (__res_initstamp != resp->_u._ext.initstamp) {
|
||||||
|
if (resp->nscount > 0)
|
||||||
|
__res_iclose (resp, true);
|
Loading…
Reference in New Issue
Block a user