SHA256
1
0
forked from pool/glibc

Accepting request 27940 from Base:System

Copy from Base:System/glibc based on submit request 27940 from user dirkmueller

OBS-URL: https://build.opensuse.org/request/show/27940
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/glibc?expand=0&rev=14
This commit is contained in:
OBS User autobuild 2010-01-03 11:31:34 +00:00 committed by Git OBS Bridge
parent 35b77f97b8
commit e29cecdd47
24 changed files with 3025 additions and 1390 deletions

View File

@ -4,8 +4,10 @@
# called by RPC services. This mostly solves the problem, that a # called by RPC services. This mostly solves the problem, that a
# RPC service uses a well known port of another service. # RPC service uses a well known port of another service.
# #
623 # ASF, used by IPMI on some cards
631 # cups 631 # cups
636 # ldaps 636 # ldaps
664 # Secure ASF, used by IPMI on some cards
774 # rpasswd 774 # rpasswd
921 # lwresd 921 # lwresd
993 # imaps 993 # imaps

View File

@ -1,49 +0,0 @@
2009-06-15 Petr Baudis <pasky@suse.cz>
* malloc/hooks.c (free_check): Do not invoke mem2chunk_check()
without main_arena mutex held.
Index: malloc/hooks.c
===================================================================
--- malloc/hooks.c.orig
+++ malloc/hooks.c
@@ -276,25 +276,33 @@ free_check(mem, caller) Void_t* mem; con
mchunkptr p;
if(!mem) return;
+#ifndef ATOMIC_FASTBINS
+ (void)mutex_lock(&main_arena.mutex);
+#endif
p = mem2chunk_check(mem, NULL);
if(!p) {
+#ifndef ATOMIC_FASTBINS
+ (void)mutex_unlock(&main_arena.mutex);
+#endif
malloc_printerr(check_action, "free(): invalid pointer", mem);
return;
}
#if HAVE_MMAP
if (chunk_is_mmapped(p)) {
munmap_chunk(p);
- return;
- }
+ } else
#endif
+ {
#if 0 /* Erase freed memory. */
- memset(mem, 0, chunksize(p) - (SIZE_SZ+1));
+ memset(mem, 0, chunksize(p) - (SIZE_SZ+1));
#endif
#ifdef ATOMIC_FASTBINS
- _int_free(&main_arena, p, 0);
+ _int_free(&main_arena, p, 0);
#else
- (void)mutex_lock(&main_arena.mutex);
- _int_free(&main_arena, p);
+ _int_free(&main_arena, p);
+#endif
+ }
+#ifndef ATOMIC_FASTBINS
(void)mutex_unlock(&main_arena.mutex);
#endif
}

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:e7a101729724f4487592df4011be0f9766992cc6cf70b39b07c45875897ce742
size 15594985

View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:d0ab54f44140cae0caac44045051efa49d7fe663257dd95a47231d1bfec789fd
size 15683806

File diff suppressed because it is too large Load Diff

View File

@ -2,7 +2,7 @@ Index: elf/dl-load.c
=================================================================== ===================================================================
--- elf/dl-load.c.orig --- elf/dl-load.c.orig
+++ elf/dl-load.c +++ elf/dl-load.c
@@ -1204,6 +1204,9 @@ cannot allocate TLS data structures for @@ -1207,6 +1207,9 @@ cannot allocate TLS data structures for
goto call_lose_errno; goto call_lose_errno;
} }
@ -37,7 +37,7 @@ Index: elf/rtld.c
=================================================================== ===================================================================
--- elf/rtld.c.orig --- elf/rtld.c.orig
+++ elf/rtld.c +++ elf/rtld.c
@@ -153,6 +153,7 @@ struct rtld_global_ro _rtld_global_ro at @@ -158,6 +158,7 @@ struct rtld_global_ro _rtld_global_ro at
._dl_lazy = 1, ._dl_lazy = 1,
._dl_fpu_control = _FPU_DEFAULT, ._dl_fpu_control = _FPU_DEFAULT,
._dl_pointer_guard = 1, ._dl_pointer_guard = 1,
@ -45,7 +45,7 @@ Index: elf/rtld.c
/* Function pointers. */ /* Function pointers. */
._dl_debug_printf = _dl_debug_printf, ._dl_debug_printf = _dl_debug_printf,
@@ -2607,6 +2608,14 @@ process_envvars (enum mode *modep) @@ -2612,6 +2613,14 @@ process_envvars (enum mode *modep)
break; break;
case 9: case 9:
@ -64,7 +64,7 @@ Index: sysdeps/generic/ldsodefs.h
=================================================================== ===================================================================
--- sysdeps/generic/ldsodefs.h.orig --- sysdeps/generic/ldsodefs.h.orig
+++ sysdeps/generic/ldsodefs.h +++ sysdeps/generic/ldsodefs.h
@@ -561,6 +561,9 @@ struct rtld_global_ro @@ -580,6 +580,9 @@ struct rtld_global_ro
/* Do we do lazy relocations? */ /* Do we do lazy relocations? */
EXTERN int _dl_lazy; EXTERN int _dl_lazy;

View File

@ -2,7 +2,7 @@ Index: elf/rtld.c
=================================================================== ===================================================================
--- elf/rtld.c.orig --- elf/rtld.c.orig
+++ elf/rtld.c +++ elf/rtld.c
@@ -1756,6 +1756,53 @@ ERROR: ld.so: object '%s' cannot be load @@ -1761,6 +1761,53 @@ ERROR: ld.so: object '%s' cannot be load
} }
} }

View File

@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1 version https://git-lfs.github.com/spec/v1
oid sha256:308f75f9daa64b97485a53420215656b001cc25a9337c34887d2c279efe32bc9 oid sha256:a623420e540731e6b0dca8ce2212fdfe048fa8b38c03eb210a8cf168b63d874e
size 328632 size 328634

View File

@ -89,7 +89,7 @@ Index: localedata/SUPPORTED
=================================================================== ===================================================================
--- localedata/SUPPORTED.orig --- localedata/SUPPORTED.orig
+++ localedata/SUPPORTED +++ localedata/SUPPORTED
@@ -303,6 +303,8 @@ nl_NL/ISO-8859-1 \ @@ -305,6 +305,8 @@ nl_NL/ISO-8859-1 \
nl_NL@euro/ISO-8859-15 \ nl_NL@euro/ISO-8859-15 \
nn_NO.UTF-8/UTF-8 \ nn_NO.UTF-8/UTF-8 \
nn_NO/ISO-8859-1 \ nn_NO/ISO-8859-1 \

View File

@ -40,7 +40,7 @@ Index: nscd/cache.c
+ /* now == 0 means just check for changed files */ + /* now == 0 means just check for changed files */
+ if (now == (time_t)0) + if (now == (time_t)0)
+ return; + return 0;
+ +
/* We run through the table and find values which are not valid anymore. /* We run through the table and find values which are not valid anymore.

View File

@ -2,7 +2,7 @@ Index: configure.in
=================================================================== ===================================================================
--- configure.in.orig --- configure.in.orig
+++ configure.in +++ configure.in
@@ -1360,7 +1360,7 @@ EOF @@ -1395,7 +1395,7 @@ EOF
fi fi
fi fi
fi fi
@ -11,7 +11,7 @@ Index: configure.in
]) ])
if test $libc_cv_visibility_attribute != yes; then if test $libc_cv_visibility_attribute != yes; then
AC_MSG_ERROR(compiler support for visibility attribute is required) AC_MSG_ERROR(compiler support for visibility attribute is required)
@@ -1376,7 +1376,7 @@ EOF @@ -1411,7 +1411,7 @@ EOF
int bar (int x) { return x; } int bar (int x) { return x; }
EOF EOF
libc_cv_broken_visibility_attribute=yes libc_cv_broken_visibility_attribute=yes
@ -24,7 +24,7 @@ Index: configure
=================================================================== ===================================================================
--- configure.orig --- configure.orig
+++ configure +++ configure
@@ -6221,7 +6221,7 @@ EOF @@ -6272,7 +6272,7 @@ EOF
fi fi
fi fi
fi fi
@ -33,7 +33,7 @@ Index: configure
fi fi
{ $as_echo "$as_me:$LINENO: result: $libc_cv_visibility_attribute" >&5 { $as_echo "$as_me:$LINENO: result: $libc_cv_visibility_attribute" >&5
@@ -6245,7 +6245,7 @@ else @@ -6296,7 +6296,7 @@ else
int bar (int x) { return x; } int bar (int x) { return x; }
EOF EOF
libc_cv_broken_visibility_attribute=yes libc_cv_broken_visibility_attribute=yes

View File

@ -11,7 +11,7 @@ Index: config.make.in
=================================================================== ===================================================================
--- config.make.in.orig --- config.make.in.orig
+++ config.make.in +++ config.make.in
@@ -96,6 +96,7 @@ add-ons = @add_ons@ @@ -99,6 +99,7 @@ add-ons = @add_ons@
add-on-subdirs = @add_on_subdirs@ add-on-subdirs = @add_on_subdirs@
sysdeps-add-ons = @sysdeps_add_ons@ sysdeps-add-ons = @sysdeps_add_ons@
cross-compiling = @cross_compiling@ cross-compiling = @cross_compiling@
@ -31,7 +31,7 @@ Index: configure
subdirs= subdirs=
MFLAGS= MFLAGS=
MAKEFLAGS= MAKEFLAGS=
@@ -741,6 +742,7 @@ CXXFLAGS @@ -742,6 +743,7 @@ CXXFLAGS
CXX CXX
CPP CPP
cross_compiling cross_compiling
@ -39,7 +39,7 @@ Index: configure
BUILD_CC BUILD_CC
OBJEXT OBJEXT
ac_ct_CC ac_ct_CC
@@ -1291,6 +1293,13 @@ do @@ -1294,6 +1296,13 @@ do
{ (exit 1); exit 1; }; } { (exit 1); exit 1; }; }
done done
@ -53,7 +53,7 @@ Index: configure
# There might be people who depend on the old broken behavior: `$host' # There might be people who depend on the old broken behavior: `$host'
# used to hold the argument of --host etc. # used to hold the argument of --host etc.
# FIXME: To remove some day. # FIXME: To remove some day.
@@ -1306,6 +1315,7 @@ if test "x$host_alias" != x; then @@ -1309,6 +1318,7 @@ if test "x$host_alias" != x; then
If a cross compiler is detected then cross compile mode will be used." >&2 If a cross compiler is detected then cross compile mode will be used." >&2
elif test "x$build_alias" != "x$host_alias"; then elif test "x$build_alias" != "x$host_alias"; then
cross_compiling=yes cross_compiling=yes
@ -61,7 +61,7 @@ Index: configure
fi fi
fi fi
@@ -1498,6 +1508,9 @@ Optional Features: @@ -1501,6 +1511,9 @@ Optional Features:
enable experimental malloc features enable experimental malloc features
--enable-nss-crypt enable libcrypt to use nss --enable-nss-crypt enable libcrypt to use nss
@ -75,7 +75,7 @@ Index: configure.in
=================================================================== ===================================================================
--- configure.in.orig --- configure.in.orig
+++ configure.in +++ configure.in
@@ -13,6 +13,7 @@ if test $host != $build; then @@ -16,6 +16,7 @@ if test $host != $build; then
AC_CHECK_PROGS(BUILD_CC, gcc cc) AC_CHECK_PROGS(BUILD_CC, gcc cc)
fi fi
AC_SUBST(cross_compiling) AC_SUBST(cross_compiling)

39
glibc-ia64-memchr.diff Normal file
View File

@ -0,0 +1,39 @@
On Mon, Nov 09, 2009 at 11:57:06AM -0800, H.J. Lu wrote:
> When data is shorter than software pipeline, recovery may fail. This
> patch avoids it by using a simple loop on data shorter than software
> pipeline.
>
Here is an updated patch. This one properly handles the shorter read
on speculative load.
H.J.
---
2009-11-09 H.J. Lu <hongjiu.lu@intel.com>
PR libc/10162
* sysdeps/ia64/memchr.S: Properly recover from shorter read.
diff --git a/sysdeps/ia64/memchr.S b/sysdeps/ia64/memchr.S
index cd062b2..cdd71ca 100644
--- a/sysdeps/ia64/memchr.S
+++ b/sysdeps/ia64/memchr.S
@@ -126,7 +126,16 @@ ENTRY(__memchr)
br.ret.sptk.many b0
.recovery:
- adds ret0 = -((MEMLAT + 1) * 8), ret0;;
+#if MEMLAT != 6
+# error "MEMLAT must be 6!"
+#endif
+(p[MEMLAT-6]) add ret0 = -8, ret0;;
+(p[MEMLAT-5]) add ret0 = -8, ret0;;
+(p[MEMLAT-4]) add ret0 = -8, ret0;;
+(p[MEMLAT-3]) add ret0 = -8, ret0;;
+(p[MEMLAT-2]) add ret0 = -8, ret0;;
+(p[MEMLAT-1]) add ret0 = -8, ret0;;
+(p[MEMLAT]) add ret0 = -8, ret0;;
(p[MEMLAT+1]) add ret0 = -8, ret0;;
(p[MEMLAT+2]) add ret0 = -8, ret0;;
.l4:

View File

@ -0,0 +1,29 @@
2009-11-20 Petr Baudis <pasky@suse.cz>
[BZ #10851]
* resolv/res_init.c (__res_vinit): Initialize nscount again to
one so that the default localhost nameserver record is used.
diff --git a/resolv/res_init.c b/resolv/res_init.c
index 40dbe7d..99ef8cf 100644
--- a/resolv/res_init.c
+++ b/resolv/res_init.c
@@ -183,7 +183,7 @@ __res_vinit(res_state statp, int preinit) {
#endif
statp->nsaddr.sin_family = AF_INET;
statp->nsaddr.sin_port = htons(NAMESERVER_PORT);
- statp->nscount = 0;
+ statp->nscount = 1;
statp->ndots = 1;
statp->pfcode = 0;
statp->_vcsock = -1;
@@ -420,7 +420,8 @@ __res_vinit(res_state statp, int preinit) {
continue;
}
}
- statp->nscount = nservall;
+ if (nservall > 0)
+ statp->nscount = nservall;
#ifdef _LIBC
if (nservall - nserv > 0) {
statp->_u._ext.nscount6 = nservall - nserv;

View File

@ -87,7 +87,7 @@ Index: nis/nss_compat/compat-initgroups.c
static service_user *ni; static service_user *ni;
/* Type of the lookup function. */ /* Type of the lookup function. */
static enum nss_status (*nss_initgroups_dyn) (const char *, gid_t, static enum nss_status (*nss_initgroups_dyn) (const char *, gid_t,
@@ -103,7 +106,10 @@ init_nss_interface (void) @@ -107,7 +110,10 @@ init_nss_interface (void)
if (ni == NULL if (ni == NULL
&& __nss_database_lookup ("group_compat", NULL, "nis", &ni) >= 0) && __nss_database_lookup ("group_compat", NULL, "nis", &ni) >= 0)
{ {
@ -98,4 +98,4 @@ Index: nis/nss_compat/compat-initgroups.c
+ nss_initgroups_dyn = __nss_lookup_function (ni, "initgroups_dyn"); + nss_initgroups_dyn = __nss_lookup_function (ni, "initgroups_dyn");
nss_getgrnam_r = __nss_lookup_function (ni, "getgrnam_r"); nss_getgrnam_r = __nss_lookup_function (ni, "getgrnam_r");
nss_getgrgid_r = __nss_lookup_function (ni, "getgrgid_r"); nss_getgrgid_r = __nss_lookup_function (ni, "getgrgid_r");
nss_getgrent_r = __nss_lookup_function (ni, "getgrent_r"); nss_setgrent = __nss_lookup_function (ni, "setgrent");

View File

@ -2,7 +2,7 @@ Index: nptl/pthreadP.h
=================================================================== ===================================================================
--- nptl/pthreadP.h.orig --- nptl/pthreadP.h.orig
+++ nptl/pthreadP.h +++ nptl/pthreadP.h
@@ -575,15 +575,4 @@ extern void __wait_lookup_done (void) at @@ -577,15 +577,4 @@ extern void __wait_lookup_done (void) at
# define PTHREAD_STATIC_FN_REQUIRE(name) __asm (".globl " #name); # define PTHREAD_STATIC_FN_REQUIRE(name) __asm (".globl " #name);
#endif #endif

View File

@ -1,141 +0,0 @@
2009-08-18 Anders Johansson <ajohansson@novell.com>
* nscd/aicache.c: Fix mixing up dataset and dataset->resp
offsets and record sizes in assert()s and response sending.
* nscd/grpcache.c: Likewise.
* nscd/hstcache.c: Likewise.
* nscd/initgrcache.c: Likewise.
* nscd/pwdcache.c: Likewise.
Index: nscd/aicache.c
===================================================================
--- nscd/aicache.c.orig
+++ nscd/aicache.c
@@ -453,13 +453,13 @@ addhstaiX (struct database_dyn *db, int
{
assert (db->wr_fd != -1);
assert ((char *) &dataset->resp > (char *) db->data);
- assert ((char *) &dataset->resp - (char *) db->head + total
+ assert ((char *) dataset - (char *) db->head + total
<= (sizeof (struct database_pers_head)
+ db->head->module * sizeof (ref_t)
+ db->head->data_size));
ssize_t written;
written = sendfileall (fd, db->wr_fd, (char *) &dataset->resp
- - (char *) db->head, total);
+ - (char *) db->head, dataset->head.recsize);
# ifndef __ASSUME_SENDFILE
if (written == -1 && errno == ENOSYS)
goto use_write;
@@ -470,7 +470,7 @@ addhstaiX (struct database_dyn *db, int
use_write:
# endif
#endif
- writeall (fd, &dataset->resp, total);
+ writeall (fd, &dataset->resp, dataset->head.recsize);
}
goto out;
Index: nscd/grpcache.c
===================================================================
--- nscd/grpcache.c.orig
+++ nscd/grpcache.c
@@ -299,14 +299,14 @@ cache_addgr (struct database_dyn *db, in
{
assert (db->wr_fd != -1);
assert ((char *) &dataset->resp > (char *) db->data);
- assert ((char *) &dataset->resp - (char *) db->head
+ assert ((char *) dataset - (char *) db->head
+ total
<= (sizeof (struct database_pers_head)
+ db->head->module * sizeof (ref_t)
+ db->head->data_size));
written = sendfileall (fd, db->wr_fd,
(char *) &dataset->resp
- - (char *) db->head, total);
+ - (char *) db->head, dataset->head.recsize);
# ifndef __ASSUME_SENDFILE
if (written == -1 && errno == ENOSYS)
goto use_write;
@@ -317,7 +317,7 @@ cache_addgr (struct database_dyn *db, in
use_write:
# endif
#endif
- written = writeall (fd, &dataset->resp, total);
+ written = writeall (fd, &dataset->resp, dataset->head.recsize);
}
/* Add the record to the database. But only if it has not been
Index: nscd/hstcache.c
===================================================================
--- nscd/hstcache.c.orig
+++ nscd/hstcache.c
@@ -341,7 +341,7 @@ cache_addhst (struct database_dyn *db, i
{
assert (db->wr_fd != -1);
assert ((char *) &dataset->resp > (char *) db->data);
- assert ((char *) &dataset->resp - (char *) db->head
+ assert ((char *) dataset - (char *) db->head
+ total
<= (sizeof (struct database_pers_head)
+ db->head->module * sizeof (ref_t)
Index: nscd/initgrcache.c
===================================================================
--- nscd/initgrcache.c.orig
+++ nscd/initgrcache.c
@@ -354,14 +354,14 @@ addinitgroupsX (struct database_dyn *db,
{
assert (db->wr_fd != -1);
assert ((char *) &dataset->resp > (char *) db->data);
- assert ((char *) &dataset->resp - (char *) db->head
+ assert ((char *) dataset - (char *) db->head
+ total
<= (sizeof (struct database_pers_head)
+ db->head->module * sizeof (ref_t)
+ db->head->data_size));
written = sendfileall (fd, db->wr_fd,
(char *) &dataset->resp
- - (char *) db->head, total);
+ - (char *) db->head, dataset->head.recsize);
# ifndef __ASSUME_SENDFILE
if (written == -1 && errno == ENOSYS)
goto use_write;
@@ -372,7 +372,7 @@ addinitgroupsX (struct database_dyn *db,
use_write:
# endif
#endif
- written = writeall (fd, &dataset->resp, total);
+ written = writeall (fd, &dataset->resp, dataset->head.recsize);
}
Index: nscd/pwdcache.c
===================================================================
--- nscd/pwdcache.c.orig
+++ nscd/pwdcache.c
@@ -294,14 +294,14 @@ cache_addpw (struct database_dyn *db, in
{
assert (db->wr_fd != -1);
assert ((char *) &dataset->resp > (char *) db->data);
- assert ((char *) &dataset->resp - (char *) db->head
+ assert ((char *) dataset - (char *) db->head
+ total
<= (sizeof (struct database_pers_head)
+ db->head->module * sizeof (ref_t)
+ db->head->data_size));
written = sendfileall (fd, db->wr_fd,
(char *) &dataset->resp
- - (char *) db->head, total);
+ - (char *) db->head, dataset->head.recsize );
# ifndef __ASSUME_SENDFILE
if (written == -1 && errno == ENOSYS)
goto use_write;
@@ -312,7 +312,7 @@ cache_addpw (struct database_dyn *db, in
use_write:
# endif
#endif
- written = writeall (fd, &dataset->resp, total);
+ written = writeall (fd, &dataset->resp, dataset->head.recsize);
}

View File

@ -1,13 +0,0 @@
Index: nscd/cache.c
===================================================================
--- nscd/cache.c.orig
+++ nscd/cache.c
@@ -290,7 +290,7 @@ prune_cache (struct database_dyn *table,
/* now == 0 means just check for changed files */
if (now == (time_t)0)
- return;
+ return 0;
/* We run through the table and find values which are not valid anymore.

26
glibc-uio-cell.diff Normal file
View File

@ -0,0 +1,26 @@
2009-11-06 Petr Baudis <pasky@suse.cz>
* include/sys/uio.h: Change __vector to __iovec to avoid clash
with altivec.
diff --git a/include/sys/uio.h b/include/sys/uio.h
index 8c2b016..bfaec59 100644
--- a/include/sys/uio.h
+++ b/include/sys/uio.h
@@ -2,12 +2,12 @@
#include <misc/sys/uio.h>
/* Now define the internal interfaces. */
-extern ssize_t __readv (int __fd, __const struct iovec *__vector,
+extern ssize_t __readv (int __fd, __const struct iovec *__iovec,
int __count);
-extern ssize_t __libc_readv (int __fd, __const struct iovec *__vector,
+extern ssize_t __libc_readv (int __fd, __const struct iovec *__iovec,
int __count);
-extern ssize_t __writev (int __fd, __const struct iovec *__vector,
+extern ssize_t __writev (int __fd, __const struct iovec *__iovec,
int __count);
-extern ssize_t __libc_writev (int __fd, __const struct iovec *__vector,
+extern ssize_t __libc_writev (int __fd, __const struct iovec *__iovec,
int __count);
#endif

View File

@ -1,18 +0,0 @@
On extremely loaded systems, the default timeout may not be enough and some
entries may not appear in the utmp log. With 30s login delay, the system
should still stay usable for repair in case the utmp locking somehow breaks
down.
Index: login/utmp_file.c
===================================================================
--- login/utmp_file.c.orig
+++ login/utmp_file.c
@@ -45,7 +45,7 @@ static struct utmp last_entry;
/* Locking timeout. */
#ifndef TIMEOUT
-# define TIMEOUT 1
+# define TIMEOUT 30
#endif
/* Do-nothing handler for locking timeout. */

View File

@ -1,3 +1,117 @@
-------------------------------------------------------------------
Mon Dec 14 23:49:33 CET 2009 - jengelh@medozas.de
- add baselibs.conf as a source
-------------------------------------------------------------------
Fri Dec 11 13:13:01 CET 2009 - jengelh@medozas.de
- libnldbl_nonshared is only built for sparc32
-------------------------------------------------------------------
Tue Dec 8 20:50:26 CET 2009 - jengelh@medozas.de
- package libnldbl_nonshared for SPARC
-------------------------------------------------------------------
Fri Nov 20 01:55:16 CET 2009 - pbaudis@suse.cz
- Upgrade to latest release/2.11/master - glibc-2.11-1bc1954c7357:
- This snapshot is slated to become 2.11.1 if all goes well
- Mix of fixes for various recently found out issues
- Retired patches:
glibc-ifunc-dlsym-fixup.diff
- [IA64] Fix memchr() on mmap(MAP_SHARED) boundary [fix lighttpd crashes]
- Again use 127.0.0.1 as default nameserver in case of empty
/etc/resolv.conf [bnc#473308]
-------------------------------------------------------------------
Thu Nov 19 13:15:41 CET 2009 - pbaudis@suse.cz
- Add 623 and 664 to /etc/bindresvport.blacklist to fix problems with
port conflict on some IPMI network cards [bnc#513961]
- Allow external additions to /usr/share/locale/locale.alias and
/usr/lib/gconv/gconv-modules, required for the SAP-locales package.
- Add delimiter in front of external additions to locale/gconv lists
- Remove AMD-provided strlen(), upstream is faster.
- Keep .symtab and .strtab for all glibc-related .so libraries [FATE#307090]
[bnc#545721]
- [ppc,ppc64] Enable optimized builds for power7; no separate power4, power5
builds are generated anymore, instead default glibc is built for power4
at least, tuned for power5 execution [FATE#307021]
- Large clean-up of the specfile
-------------------------------------------------------------------
Fri Nov 13 22:47:47 CET 2009 - pbaudis@suse.cz
- Upgrade to Git HEAD as of 20091105 - glibc-2.11-13f6812ffb5b:
* New interfaces: execvpe, pthread_sigqueue, mkstemps, mkstemps64, mkostemps,
mkostemps64
Implemented by Ulrich Drepper.
* Checking version of longjmp added that fails if an uninitialized stack
frame would be created. Implemented by Ulrich Drepper.
* STT_GNU_IFUNC is now supported in static executables.
Implemented by H.J. Lu.
* STT_GNU_IFUNC implemented for PPC by Alan Modra.
* New optimized string functions for x86-64: strstr, strcasestr, memcmp,
strcspn, strpbrk, strspn, strcpy, stpcpy, strncpy, strcmp (SSE2, SSE4.2),
strncmp (SSE2, SSE4.2), strchr (SSE4.2), strrchr (SSE4.2).
Contributed by H.J. Lu.
strlen, rawmemchr, strcmp (SSSE3), strncmp (SSSE3).
Implemented by Ulrich Drepper.
* New optimized string functions for x86: strlen, strcspn, strspn, strpbrk,
strstr, strcasestr.
Contributed by H.J. Lu.
* Support for fma instruction in AVX on x86-64.
Implemented by H.J. Lu and Ulrich Drepper.
* AVX support in x86-64 auditing support in ld.so.
Implemented by H.J. Lu.
* STB_GNU_UNIQUE support added.
Implemented by Ulrich Drepper.
* Implement second fallback mode for optimized DNS lookup for even more
broken environments. If two requests from the same port are not
handled correctly close the socket and open a new one before sending
the second request. The 'single-request-reopen' option in /etc/resolv.conf
can be used to select this mode right away, instead of rediscovering the
necessity is every process again.
Implemented by Ulrich Drepper.
* New resolver flag RES_USE_DNSSEC to enable use of verified lookup.
Implemented by Adam Tkac.
* Optimized iconv conversions for S390x.
Implemented by Andreas Krebbel.
* Using condvars with PI mutexes is now more efficient due to kernel
support for requeueing to PI futexes. NPTL support added for x86-64.
Implemented by Ulrich Drepper.
* New locales: ps_AF, my_MM
- Retired patches:
glibc-utmp-timeout-raise.diff
glibc-nscd-assert.diff
glibc-2.10-mcheck-free-race.diff
glibc-nscd-prune-ret.diff
- Made ifunc compile on IA64 using patch by H.J.Lu
- Fixed compilation on PPC Cell
- Lowered utmp locking timeout from 30s to 10s to be compatible
with upstream
- Allow external additions to /usr/share/locale/locale.alias and
/usr/lib/gconv/gconv-modules, required for the SAP-locales package.
- Remove AMD-provided strlen(), upstream is faster.
- ARM is currently non-functional
------------------------------------------------------------------- -------------------------------------------------------------------
Fri Nov 13 20:18:27 CET 2009 - pbaudis@suse.cz Fri Nov 13 20:18:27 CET 2009 - pbaudis@suse.cz

View File

@ -1,7 +1,7 @@
# #
# spec file for package glibc (Version 2.10.1) # spec file for package glibc (Version 2.11)
# #
# Copyright (c) 2009 SUSE LINUX Products GmbH, Nuernberg, Germany. # Copyright (c) 2010 SUSE LINUX Products GmbH, Nuernberg, Germany.
# #
# All modifications and additions to the file contributed by third parties # All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed # remain the property of their copyright owners, unless otherwise agreed
@ -27,35 +27,20 @@ BuildRequires: libselinux-devel
%define disable_assert 0 %define disable_assert 0
%define enable_stackguard_randomization 1 %define enable_stackguard_randomization 1
%ifarch ppc ppc64 %ifarch ppc ppc64
%define optimize_power 1 %define optimize_power 1
%define powerpc_optimize_base power4
%define powerpc_optimize_tune power5
%define powerpc_optimize_cpu_power6 1
%define powerpc_optimize_cpu_power7 1
%define powerpc_optimize_cpu_cell 1
%else %else
%define optimize_power 0 %define optimize_power 0
%endif %define powerpc_optimize_base 0
%define powerpc_optimize_base_cpu_power4 0 %define powerpc_optimize_cpu_power6 0
%if %{optimize_power} %define powerpc_optimize_cpu_power7 0
%define powerpc_optimize_cpu_power4 1 %define powerpc_optimize_cpu_cell 0
%ifarch ppc64 %endif # ppc, ppc64
%define powerpc_optimize_base_cpu_power4 1 License: BSD3c(or similar) ; GPLv2+ ; LGPLv2.1+
%define powerpc_optimize_cpu_power4 0
%endif
%ifarch ppc
%define powerpc_optimize_cpu_power5 1
%else
%define powerpc_optimize_cpu_power5 0
%endif
%define powerpc_optimize_cpu_power5_compile 0
%define powerpc_optimize_cpu_power6 1
%define powerpc_optimize_cpu_power7 0
%define powerpc_optimize_cpu_cell 1
%else
%define powerpc_optimize_cpu_power4 0
%define powerpc_optimize_cpu_power5 0
%define powerpc_optimize_cpu_power6 0
%define powerpc_optimize_cpu_power7 0
%define powerpc_optimize_cpu_cell 0
# optimize_power
%endif
License: BSD 3-clause (or similar) ; GPL v2 or later ; LGPL v2.1 or later
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
@ -69,15 +54,13 @@ Obsoletes: glibc-32bit
%endif %endif
Provides: rtld(GNU_HASH) Provides: rtld(GNU_HASH)
AutoReqProv: on AutoReqProv: on
Version: 2.10.1 Version: 2.11
Release: 10 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
# The glibc source comes from http://repo.or.cz/w/glibc/pb-stable.git Source: glibc-%{version}-1bc1954c7357.tar.bz2
# glibc-2.10-branch. Source2: glibc-ports-2.10.1-2b2b217196.tar.bz2
Source: glibc-%{version}-44dbdf3777.tar.bz2
Source2: glibc-ports-%{version}-2b2b217196.tar.bz2
Source3: noversion.tar.bz2 Source3: noversion.tar.bz2
Source4: manpages.tar.bz2 Source4: manpages.tar.bz2
Source5: usr.sbin.nscd Source5: usr.sbin.nscd
@ -88,8 +71,9 @@ Source11: ctype_b.c
Source12: glibc_post_upgrade.c Source12: glibc_post_upgrade.c
Source14: powerpc-cpu.tar.bz2 Source14: powerpc-cpu.tar.bz2
Source15: glibc.rpmlintrc Source15: glibc.rpmlintrc
Source16: baselibs.conf
%if %_target_cpu == "i686" %if %_target_cpu == "i686"
# We need to avoid to have only the srv rpm from i686 on the media, # We need to avoid to have only the src rpm from i686 on the media,
# since it does not work on other architectures. # since it does not work on other architectures.
NoSource: 0 NoSource: 0
%endif %endif
@ -129,7 +113,6 @@ Patch33: getaddrinfo-ipv6-sanity.diff
Patch35: ppc-atomic.diff Patch35: ppc-atomic.diff
Patch36: glibc-2.8-clone.diff Patch36: glibc-2.8-clone.diff
Patch37: glibc-nss-deepbind.diff Patch37: glibc-nss-deepbind.diff
Patch38: glibc-nscd-prune-ret.diff
Patch39: glibc-compiled-binaries.diff Patch39: glibc-compiled-binaries.diff
Patch40: glibc-selinux.diff Patch40: glibc-selinux.diff
Patch41: glibc-check-native-missing-include.diff Patch41: glibc-check-native-missing-include.diff
@ -137,11 +120,11 @@ Patch42: glibc-no-unwind-tables.diff
Patch43: glibc-2.10-nscd-nostack.diff Patch43: glibc-2.10-nscd-nostack.diff
Patch44: glibc-cpusetsize.diff Patch44: glibc-cpusetsize.diff
Patch45: glibc-nis-splitgroups.diff Patch45: glibc-nis-splitgroups.diff
Patch46: glibc-2.10-mcheck-free-race.diff Patch46: glibc-2.10.99-ia64-include.diff
Patch47: glibc-2.10.99-ia64-include.diff Patch47: libm-x86-64-exceptions.diff
Patch48: glibc-utmp-timeout-raise.diff Patch48: glibc-uio-cell.diff
Patch49: glibc-nscd-assert.diff Patch49: glibc-ia64-memchr.diff
Patch50: libm-x86-64-exceptions.diff Patch50: glibc-nameserver-localhost.diff
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
@ -156,7 +139,7 @@ without these libraries.
%package info %package info
License: GPL v2 or later License: GPLv2+
Summary: Info Files for the GNU C Library Summary: Info Files for the GNU C Library
Group: Documentation/Other Group: Documentation/Other
PreReq: %{install_info_prereq} PreReq: %{install_info_prereq}
@ -170,7 +153,7 @@ complete and is partially out of date.
%package html %package html
License: GPL v2 or later ; LGPL v2.1 or later License: GPLv2+ ; LGPLv2.1+
Summary: HTML Documentation for the GNU C Library Summary: HTML Documentation for the GNU C Library
Group: Documentation/HTML Group: Documentation/HTML
AutoReqProv: on AutoReqProv: on
@ -183,7 +166,7 @@ partially out of date.
%package i18ndata %package i18ndata
License: LGPL v2.1 or later License: LGPLv2.1+
Summary: Database Sources for 'locale' Summary: Database Sources for 'locale'
Group: System/Libraries Group: System/Libraries
AutoReqProv: on AutoReqProv: on
@ -197,7 +180,7 @@ created.
%package locale %package locale
License: GPL v2 or later ; LGPL v2.1 or later 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}
@ -216,7 +199,7 @@ Locale data for the internationalisation features of the GNU C library.
%package -n nscd %package -n nscd
License: LGPL v2.1 or later License: LGPLv2.1+
Summary: Name Service Caching Daemon Summary: Name Service Caching Daemon
Group: System/Daemons Group: System/Daemons
Provides: glibc:/usr/sbin/nscd aaa_base:/etc/init.d/nscd Provides: glibc:/usr/sbin/nscd aaa_base:/etc/init.d/nscd
@ -229,7 +212,7 @@ performance with NIS, NIS+, and LDAP.
%package profile %package profile
License: LGPL v2.1 or later License: LGPLv2.1+
Summary: Libc Profiling and Debugging Versions Summary: Libc Profiling and Debugging Versions
Group: Development/Libraries/C and C++ Group: Development/Libraries/C and C++
Requires: glibc = %{version} Requires: glibc = %{version}
@ -249,7 +232,7 @@ necessary for profiling and debugging.
%package devel %package devel
License: BSD 3-clause (or similar) ; GPL v2 or later ; LGPL v2.1 or later License: BSD3c(or similar) ; GPLv2+ ; LGPLv2.1+
Summary: Include Files and Libraries Mandatory for Development Summary: Include Files and Libraries Mandatory for Development
Group: Development/Libraries/C and C++ Group: Development/Libraries/C and C++
Obsoletes: epoll = 1.0 Obsoletes: epoll = 1.0
@ -272,7 +255,7 @@ library.
%package obsolete %package obsolete
License: BSD 3-clause (or similar) ; GPL v2 or later ; LGPL v2.1 or later License: BSD3c(or similar) ; GPLv2+ ; LGPLv2.1+
Summary: Obsolete Shared Libraries from the GNU C Library Summary: Obsolete Shared Libraries from the GNU C Library
Group: System/Libraries Group: System/Libraries
Requires: glibc = %{version} Requires: glibc = %{version}
@ -293,6 +276,8 @@ versions of your software.
%prep %prep
%ifarch %arm armv5tel armv7l %ifarch %arm armv5tel armv7l
# add glibc-ports for arm # add glibc-ports for arm
# this is CURRENTLY BROKEN; ARM-interested contributors need to provide
# new tested glibc-ports source
%setup -n glibc-%{version} -q -a 2 -a 3 -a 4 -a 14 %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
@ -336,7 +321,6 @@ rm sysdeps/x86_64/fpu/s_sincos.S
%patch35 %patch35
%patch36 %patch36
%patch37 %patch37
%patch38
%patch39 %patch39
%patch40 %patch40
%patch41 %patch41
@ -346,9 +330,9 @@ rm sysdeps/x86_64/fpu/s_sincos.S
%patch45 %patch45
%patch46 %patch46
%patch47 %patch47
%patch48 %patch48 -p1
%patch49 %patch49 -p1
%patch50 %patch50 -p1
%ifarch %arm armv5tel armv7l %ifarch %arm armv5tel armv7l
%patch500 %patch500
%patch501 %patch501
@ -374,12 +358,17 @@ rm sysdeps/x86_64/fpu/s_sincos.S
# #
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 %build
if [ -x /bin/uname.bin ]; then if [ -x /bin/uname.bin ]; then
/bin/uname.bin -a /bin/uname.bin -a
else else
uname -a uname -a
fi fi
uptime || : uptime || :
ulimit -a ulimit -a
@ -400,312 +389,242 @@ PARALLEL="%{?jobs:-j%jobs}"
#now overwrite for some architectures #now overwrite for some architectures
# #
%ifarch sparc64 %ifarch sparc64
BuildFlags="-O2 -mcpu=ultrasparc -mvis -fcall-used-g6" BuildFlags="-O2 -mcpu=ultrasparc -mvis -fcall-used-g6"
BuildCC="gcc -m64" BuildCC="gcc -m64"
BuildCCplus="$BuildCCplus -m64" BuildCCplus="$BuildCCplus -m64"
%endif %endif
%ifarch sparc %ifarch sparc
BuildFlags="$BuildFlags -fcall-used-g6" BuildFlags="$BuildFlags -fcall-used-g6"
BuildCC="gcc -m32" BuildCC="gcc -m32"
BuildCCplus="$BuildCCplus -m32" BuildCCplus="$BuildCCplus -m32"
%endif %endif
%ifarch sparcv9 %ifarch sparcv9
BuildFlags="$BuildFlags -mcpu=ultrasparc -fcall-used-g6" BuildFlags="$BuildFlags -mcpu=ultrasparc -fcall-used-g6"
BuildCC="gcc -m32" BuildCC="gcc -m32"
BuildCCplus="$BuildCCplus -m32" BuildCCplus="$BuildCCplus -m32"
%endif %endif
%ifarch alphaev6 %ifarch alphaev6
BuildFlags="-mcpu=ev6" BuildFlags="-mcpu=ev6"
%endif %endif
%ifarch ppc ppc64 %ifarch ppc ppc64
BuildFlags="$(echo $BuildFlags | sed 's#-mminimal-toc##')" BuildFlags="$(echo $BuildFlags | sed 's#-mminimal-toc##')"
%endif %endif
%ifarch ppc64 %ifarch ppc64
BuildCC="$BuildCC -m64" BuildCC="$BuildCC -m64"
BuildCCplus="$BuildCCplus -m64" BuildCCplus="$BuildCCplus -m64"
%endif %endif
%ifarch hppa %ifarch hppa
BuildFlags="$BuildFlags -mpa-risc-1-1 -fstrict-aliasing" BuildFlags="$BuildFlags -mpa-risc-1-1 -fstrict-aliasing"
%endif %endif
%ifarch %ix86 x86_64 %ifarch %ix86 x86_64
BuildFlags="$BuildFlags -mno-tls-direct-seg-refs" BuildFlags="$BuildFlags -mno-tls-direct-seg-refs"
%endif %endif
# Add flags for all plattforms except AXP # Add flags for all plattforms except AXP
%ifnarch alpha %ifnarch alpha
BuildFlags="$BuildFlags -g" BuildFlags="$BuildFlags -g"
%endif %endif
%if %{disable_assert} %if %{disable_assert}
BuildFlags="$BuildFlags -DNDEBUG=1" BuildFlags="$BuildFlags -DNDEBUG=1"
%endif %endif
%ifarch %ix86 %ifarch %ix86
add_ons=$add_ons,noversion add_ons=$add_ons,noversion
%endif %endif
%ifarch %arm armv5tel armv7l %ifarch %arm armv5tel armv7l
add_ons=$add_ons,ports add_ons=$add_ons,ports
BuildFlags="-march=armv5te -O2 -Wall" BuildFlags="-march=armv5te -O2 -Wall"
# 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 cflags="$1" local dirname="$1"; shift
local addons="$2" local cflags="$1"; shift
shift 2 local addons="$1"; shift
mkdir "cc-$dirname"
cd "cc-$dirname"
CFLAGS="$cflags" CC="$BuildCC" CXX="$BuildCCplus" ../configure \ CFLAGS="$cflags" CC="$BuildCC" CXX="$BuildCCplus" ../configure \
--prefix=%{_prefix} \ --prefix=%{_prefix} \
--libexecdir=%{_libdir} --infodir=%{_infodir} \ --libexecdir=%{_libdir} --infodir=%{_infodir} \
--enable-add-ons=nptl$addons --without-cvs --enable-profile \ --enable-add-ons=nptl$addons --without-cvs --enable-profile \
"$@" \ "$@" \
%if %{enable_stackguard_randomization} %if %{enable_stackguard_randomization}
--enable-stackguard-randomization \ --enable-stackguard-randomization \
%endif %endif
%ifarch %arm armv5tel armv7l %ifarch %arm armv5tel armv7l
--build=%{_target_cpu}-suse-linux-gnueabi \ --build=%{_target_cpu}-suse-linux-gnueabi \
%else %else
--build=%{_target_cpu}-suse-linux \ --build=%{_target_cpu}-suse-linux \
%endif %endif
--with-tls --with-__thread --enable-kernel=2.6.4 --with-tls --with-__thread --enable-kernel=2.6.4
make $PARALLEL make $PARALLEL
cd ..
} }
# %if !%{optimize_power}
# Build nptl #
# # Build base glibc
mkdir cc-nptl #
cd cc-nptl configure_and_build_glibc base "$BuildFlags" "$add_ons"
configure_and_build_glibc "$BuildFlags" \
%if %{powerpc_optimize_base_cpu_power4}
"$add_ons,powerpc-cpu" --with-cpu=power4
%else %else
"$add_ons" #
%endif # Build POWER-optimized glibc
cd .. #
%if %{optimize_power} # First, base build:
# pBuildFlags="$BuildFlags -mcpu=%{powerpc_optimize_base} -mtune=%{powerpc_optimize_tune}"
# Build POWER optimized configure_and_build_glibc base "$pBuildFlags" "$add_ons,powerpc-cpu" --with-cpu=%{powerpc_optimize_base}
# # Then other power variants:
for pcpu in \ for pcpu in \
%if %{powerpc_optimize_cpu_power4} %if %{powerpc_optimize_cpu_power6}
power4 \ power6 \
%endif %endif
%if %{powerpc_optimize_cpu_power5} %if %{powerpc_optimize_cpu_power7}
%if %{powerpc_optimize_cpu_power5_compile} power7 \
power5 \ %endif
%endif ; do
%endif configure_and_build_glibc $pcpu "$BuildFlags -mcpu=$pcpu" "$add_ons,powerpc-cpu" \
%if %{powerpc_optimize_cpu_power6} --with-cpu=$pcpu --disable-runbinaries
power6 \ done
%endif # Eventually, special Cell variant:
%if %{powerpc_optimize_cpu_power7} %if %{powerpc_optimize_cpu_cell}
power7 \ configure_and_build_glibc ppc-cell-be "$BuildFlags -mcpu=cell" "$add_ons" --disable-runbinaries
%endif %endif
; do %endif # optimize_power
mkdir cc-$pcpu
cd cc-$pcpu
configure_and_build_glibc "$BuildFlags -mcpu=$pcpu" "$add_ons,powerpc-cpu" --with-cpu=$pcpu --disable-runbinaries
cd ..
done
%if %{powerpc_optimize_cpu_cell}
mkdir cc-ppc-cell-be
cd cc-ppc-cell-be
configure_and_build_glibc "$BuildFlags -mcpu=cell" "$add_ons" --disable-runbinaries
cd ..
%endif
# optimize_power
%endif
# #
# Build html documentation # Build html documentation
# #
make -C cc-nptl 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-nptl -Bcc-nptl/csu \ -Lcc-base -Bcc-base/csu \
'-DREMOVE_TLS_DIRS' \ '-DREMOVE_TLS_DIRS' \
%ifarch ppc ppc64 %ifarch ppc ppc64
%if !%{powerpc_optimize_cpu_power4} %if !%{powerpc_optimize_cpu_power6}
'-DREMOVE_PPC_OPTIMIZE_POWER4' \
%endif
%if !%{powerpc_optimize_cpu_power5}
'-DREMOVE_PPC_OPTIMIZE_POWER5' \
%endif
%if !%{powerpc_optimize_cpu_power6}
'-DREMOVE_PPC_OPTIMIZE_POWER6' \ '-DREMOVE_PPC_OPTIMIZE_POWER6' \
%endif %endif
%if !%{powerpc_optimize_cpu_power7} %if !%{powerpc_optimize_cpu_power7}
'-DREMOVE_PPC_OPTIMIZE_POWER7' \ '-DREMOVE_PPC_OPTIMIZE_POWER7' \
%endif %endif
%if !%{powerpc_optimize_cpu_cell} %if !%{powerpc_optimize_cpu_cell}
'-DREMOVE_PPC_OPTIMIZE_CELL' \ '-DREMOVE_PPC_OPTIMIZE_CELL' \
%endif %endif
%endif %endif
'-DLIBDIR="/%{_lib}"' '-DGCONV_MODULES_DIR="%{_prefix}/%{_lib}/gconv"' '-DLIBDIR="/%{_lib}"' '-DGCONV_MODULES_DIR="%{_prefix}/%{_lib}/gconv"'
#######################################################################
###
### CHECK
###
#######################################################################
%check %check
%if %{run_testsuite} %if %{run_testsuite}
# Increase timeout # Increase timeout
export TIMEOUTFACTOR=16 export TIMEOUTFACTOR=16
%ifarch alpha %ix86 ppc ppc64 ia64 s390 s390x x86_64 %ifarch alpha %ix86 ppc ppc64 ia64 s390 s390x x86_64
# ix86: tst-cputimer? fails # ix86: tst-cputimer? fails
# ia64: tst-timer4 fails # ia64: tst-timer4 fails
# ppc64: tst-pselect, ftwtest fails # ppc64: tst-pselect, ftwtest fails
# s390,s390x: tst-timer* fails # s390,s390x: tst-timer* fails
make -C cc-nptl -k check || echo make check failed make -C cc-base -k check || echo make check failed
%else %else
make -C cc-nptl check make -C cc-base check
%endif
%endif %endif
%endif make -C cc-base check-abi || echo check-abi failed
make -C cc-nptl check-abi || echo check-abi failed #######################################################################
###
### INSTALL
###
#######################################################################
%install %install
# We don't want to strip the .symtab from our libraries in find-debuginfo.sh, # We don't want to strip the .symtab from our libraries in find-debuginfo.sh,
# at least not from libpthread.so.* because it is used by libthread_db to find # certainly not from libpthread.so.* because it is used by libthread_db to find
# some non-exported symbols in order to detect if threading support # some non-exported symbols in order to detect if threading support
# should be enabled. These symbols are _not_ exported, and we can't easily # should be enabled. These symbols are _not_ exported, and we can't easily
# export them retroactively without changing the ABI. So we have to # export them retroactively without changing the ABI. So we have to
# continue to "export" them via .symtab, instead of .dynsym :-( # continue to "export" them via .symtab, instead of .dynsym :-(
export STRIP_KEEP_SYMTAB=libpthread* # But we also want to keep .symtab and .strtab of other libraries since some
# debugging tools currently require these sections directly inside the main
# files - specifically valgrind and PurifyPlus.
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
# 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-nptl make install_root=$RPM_BUILD_ROOT install -C cc-base
# Install power-optimized glibc
%if %{optimize_power} %if %{optimize_power}
# run ldconfig to create the library symlinks # run ldconfig to create the library symlinks
# do not use the new ldconfig from the build directory because # do not use the new ldconfig from the build directory because
# 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_power6}
%if %{powerpc_optimize_cpu_power4} power6 \
power4 \ %endif
%endif %if %{powerpc_optimize_cpu_power7}
%if %{powerpc_optimize_cpu_power5} power7 \
%if %{powerpc_optimize_cpu_power5_compile} %endif
power5 \ %if %{powerpc_optimize_cpu_cell}
%endif ppc-cell-be \
%endif %endif
%if %{powerpc_optimize_cpu_power6} ; do
power6 \ make install_root=${RPM_BUILD_ROOT}/$pcpu install -C cc-$pcpu
%endif mkdir -p $RPM_BUILD_ROOT/%{_lib}/$pcpu
%if %{powerpc_optimize_cpu_power7} for i in libc-%{version} libm-%{version} libpthread-%{version} libthread_db-1.0 librt-%{version}; do
power7 \ mv $RPM_BUILD_ROOT/$pcpu/%{_lib}/$i.so $RPM_BUILD_ROOT/%{_lib}/$pcpu
%endif done
%if %{powerpc_optimize_cpu_cell} $my_ldconfig -n $RPM_BUILD_ROOT/%{_lib}/$pcpu/
ppc-cell-be \ rm -rf $RPM_BUILD_ROOT/$pcpu
%endif
; do
make install_root=${RPM_BUILD_ROOT}/$pcpu install -C cc-$pcpu
mkdir -p $RPM_BUILD_ROOT/%{_lib}/$pcpu
for i in libc-%{version} libm-%{version} libpthread-%{version} libthread_db-1.0 librt-%{version}
do
mv $RPM_BUILD_ROOT/$pcpu/%{_lib}/$i.so $RPM_BUILD_ROOT/%{_lib}/$pcpu
done done
$my_ldconfig -n $RPM_BUILD_ROOT/%{_lib}/$pcpu/ %if %{powerpc_optimize_cpu_power6}
rm -rf $RPM_BUILD_ROOT/$pcpu # power6 is compatible with power6x
done # doing a symlink doesnt work, ldconfig follows them and accepts only the first real dir
%if %{powerpc_optimize_cpu_power4} if test -d $RPM_BUILD_ROOT/%{_lib}/power6; then
# ppc970 is compatible with power4, unless compiled with altivec support mkdir -p $RPM_BUILD_ROOT/%{_lib}/power6x
# doing a symlink doesnt work, ldconfig follows them and accepts only the first real dir for i in $RPM_BUILD_ROOT/%{_lib}/power6/*.so; do
if test -d $RPM_BUILD_ROOT/%{_lib}/power4 b=`basename $i`
then ln -vs ../power6/$b $RPM_BUILD_ROOT/%{_lib}/power6x/$b
mkdir -p $RPM_BUILD_ROOT/%{_lib}/ppc970 done
for i in $RPM_BUILD_ROOT/%{_lib}/power4/*.so ; do $my_ldconfig -n $RPM_BUILD_ROOT/%{_lib}/power6x/
b=`basename $i` fi
ln -vs ../power4/$b \ %endif
$RPM_BUILD_ROOT/%{_lib}/ppc970/$b %endif # optimize_power
done # Install locales
$my_ldconfig -n $RPM_BUILD_ROOT/%{_lib}/ppc970/
fi
%endif
%if %{powerpc_optimize_cpu_power5}
# power5+ is compatible with power5 (adds only a few floating point instructions)
# doing a symlink doesnt work, ldconfig follows them and accepts only the first real dir
# symlink to power4 directory, which is built only on ppc32
%if %{powerpc_optimize_cpu_power5_compile}
if test -d $RPM_BUILD_ROOT/%{_lib}/power5
then
mkdir -p $RPM_BUILD_ROOT/%{_lib}/power5+
for i in $RPM_BUILD_ROOT/%{_lib}/power5/*.so ; do
b=`basename $i`
ln -vs ../power5/$b \
$RPM_BUILD_ROOT/%{_lib}/power5+/$b
done
$my_ldconfig -n $RPM_BUILD_ROOT/%{_lib}/power5+/
fi
%else
if test -d $RPM_BUILD_ROOT/%{_lib}/power4
then
mkdir -p $RPM_BUILD_ROOT/%{_lib}/power5
mkdir -p $RPM_BUILD_ROOT/%{_lib}/power5+
for i in $RPM_BUILD_ROOT/%{_lib}/power4/*.so ; do
b=`basename $i`
ln -vs ../power4/$b \
$RPM_BUILD_ROOT/%{_lib}/power5/$b
ln -vs ../power4/$b \
$RPM_BUILD_ROOT/%{_lib}/power5+/$b
done
$my_ldconfig -n $RPM_BUILD_ROOT/%{_lib}/power5/
$my_ldconfig -n $RPM_BUILD_ROOT/%{_lib}/power5+/
fi
%endif
%endif
%if %{powerpc_optimize_cpu_power6}
# power6 is compatible with power6x
# doing a symlink doesnt work, ldconfig follows them and accepts only the first real dir
if test -d $RPM_BUILD_ROOT/%{_lib}/power6
then
mkdir -p $RPM_BUILD_ROOT/%{_lib}/power6x
for i in $RPM_BUILD_ROOT/%{_lib}/power6/*.so ; do
b=`basename $i`
ln -vs ../power6/$b \
$RPM_BUILD_ROOT/%{_lib}/power6x/$b
done
$my_ldconfig -n $RPM_BUILD_ROOT/%{_lib}/power6x/
fi
%endif
# optimize_power
%endif
%if %{build_locales} %if %{build_locales}
# Do not install locales in parallel! # Do not install locales in parallel!
cd cc-nptl cd cc-base
make install_root=$RPM_BUILD_ROOT install-locales -C ../localedata objdir=`pwd` make install_root=$RPM_BUILD_ROOT install-locales -C ../localedata objdir=`pwd`
cd .. cd ..
%endif %endif
#create file list for glibc-locale package # Create file list for glibc-locale package
%{find_lang} libc %{find_lang} libc
cd manpages; make install_root=$RPM_BUILD_ROOT install; cd .. # 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
# ln -sf ../%{_lib}/ld-%{version}.so $RPM_BUILD_ROOT/lib/ld64.so.1
mkdir $RPM_BUILD_ROOT/lib
ln -sf ../%{_lib}/ld-%{version}.so $RPM_BUILD_ROOT/lib/ld64.so.1
%endif %endif
# # Miscelanna:
# Install glibc_post_upgrade tool
#
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 the mapv4v6* header files install -m 644 $RPM_SOURCE_DIR/nsswitch.conf $RPM_BUILD_ROOT/etc
# install -m 644 posix/gai.conf $RPM_BUILD_ROOT/etc
mkdir -p $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/
#
# glibc documentation in HTML
#
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 ..
# Install 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
@ -715,8 +634,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}
# Install bindresvport.blacklist
install -m 644 $RPM_SOURCE_DIR/bindresvport.blacklist $RPM_BUILD_ROOT/etc
# #
# Create ld.so.conf # Create ld.so.conf
# #
@ -753,44 +670,31 @@ include /etc/ld.so.conf.d/*.conf
EOF EOF
# Add ldconfig cache directory for directory ownership # Add ldconfig cache directory for directory ownership
mkdir -p $RPM_BUILD_ROOT/var/cache/ldconfig mkdir -p $RPM_BUILD_ROOT/var/cache/ldconfig
# # Empty the ld.so.cache:
# install nsswitch.conf
#
install -m 644 $RPM_SOURCE_DIR/nsswitch.conf $RPM_BUILD_ROOT/etc
#
# install /etc/default/nss
#
mkdir -p $RPM_BUILD_ROOT/etc/default
install -m 644 nis/nss $RPM_BUILD_ROOT/etc/default/
#
# install /etc/gai.conf
#
install -m 644 posix/gai.conf $RPM_BUILD_ROOT/etc
%ifarch %ix86
#
# Remove static library and .so symlink, not needed
rm -f $RPM_BUILD_ROOT%{_libdir}/libNoVersion*
# Move to lib/obsolete
mkdir -p $RPM_BUILD_ROOT/%{_lib}/obsolete/noversion
mv -v $RPM_BUILD_ROOT/%{_lib}/libNoVersion* $RPM_BUILD_ROOT/%{_lib}/obsolete/noversion/
%endif
#
# Don't look at it! We don't wish a /bin/sh requires
chmod 644 $RPM_BUILD_ROOT/usr/bin/ldd
#
# Remove not needed files from BuildRoot
# Also, we now take timezone stuff from a separate package
# create empty cache file
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:
%ifarch %ix86
rm -f $RPM_BUILD_ROOT%{_libdir}/libNoVersion*
mkdir -p $RPM_BUILD_ROOT/%{_lib}/obsolete/noversion
mv -v $RPM_BUILD_ROOT/%{_lib}/libNoVersion* $RPM_BUILD_ROOT/%{_lib}/obsolete/noversion/
%endif
# Don't look at ldd! We don't wish a /bin/sh requires
chmod 644 $RPM_BUILD_ROOT/usr/bin/ldd
# 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
#######################################################################
###
### ...
###
#######################################################################
%clean %clean
rm -rf $RPM_BUILD_ROOT rm -rf $RPM_BUILD_ROOT
@ -799,6 +703,13 @@ rm -rf $RPM_BUILD_ROOT
%postun -p /sbin/ldconfig %postun -p /sbin/ldconfig
%post locale
for l in /usr/share/locale/locale.alias %{_libdir}/gconv/gconv-modules; do
[ -d "$l.d" ] || continue
echo "###X# The following is autogenerated from extra files in the .d directory:" >>"$l"
cat "$l.d"/* >>"$l"
done
%post info %post info
%install_info --info-dir=%{_infodir} %{_infodir}/libc.info.gz %install_info --info-dir=%{_infodir} %{_infodir}/libc.info.gz
@ -815,9 +726,12 @@ rm -rf $RPM_BUILD_ROOT
%restart_on_update nscd %restart_on_update nscd
%insserv_cleanup %insserv_cleanup
exit 0 exit 0
# #######################################################################
###
### FILES
###
#######################################################################
# glibc # glibc
#
%files %files
%defattr(-,root,root) %defattr(-,root,root)
@ -836,28 +750,28 @@ exit 0
%doc %{_mandir}/man8/rpcinfo.8.gz %doc %{_mandir}/man8/rpcinfo.8.gz
/%{_lib}/ld-%{version}.so /%{_lib}/ld-%{version}.so
%ifarch ppc s390 mips hppa %ifarch ppc s390 mips hppa
/%{_lib}/ld.so.1 /%{_lib}/ld.so.1
%else %else
%ifarch ia64 %ifarch ia64
/%{_lib}/ld-linux-ia64.so.2 /%{_lib}/ld-linux-ia64.so.2
%else %else
%ifarch s390x ppc64 %ifarch s390x ppc64
/%{_lib}/ld64.so.1 /%{_lib}/ld64.so.1
%ifarch s390x %ifarch s390x
/lib/ld64.so.1 /lib/ld64.so.1
%endif %endif
%else %else
%ifarch x86_64 %ifarch x86_64
/%{_lib}/ld-linux-x86-64.so.2 /%{_lib}/ld-linux-x86-64.so.2
%else %else
%ifarch %arm armv5tel armv7l %ifarch %arm armv5tel armv7l
/%{_lib}/ld-linux.so.3 /%{_lib}/ld-linux.so.3
%else %else
/%{_lib}/ld-linux.so.2 /%{_lib}/ld-linux.so.2
%endif %endif
%endif %endif
%endif %endif
%endif %endif
%endif %endif
/%{_lib}/libBrokenLocale-%{version}.so /%{_lib}/libBrokenLocale-%{version}.so
/%{_lib}/libBrokenLocale.so.1 /%{_lib}/libBrokenLocale.so.1
@ -901,38 +815,29 @@ exit 0
/%{_lib}/libutil-%{version}.so /%{_lib}/libutil-%{version}.so
/%{_lib}/libutil.so.1 /%{_lib}/libutil.so.1
%if %{optimize_power} %if %{optimize_power}
%define optimized_libs() \ %define optimized_libs() \
%dir %attr(0755,root,root) /%{_lib}/%1\ %dir %attr(0755,root,root) /%{_lib}/%1\
/%{_lib}/%1/libc-%{version}.so\ /%{_lib}/%1/libc-%{version}.so\
/%{_lib}/%1/libc.so.6*\ /%{_lib}/%1/libc.so.6*\
/%{_lib}/%1/libm-%{version}.so\ /%{_lib}/%1/libm-%{version}.so\
/%{_lib}/%1/libm.so.6*\ /%{_lib}/%1/libm.so.6*\
/%{_lib}/%1/libpthread-%{version}.so\ /%{_lib}/%1/libpthread-%{version}.so\
/%{_lib}/%1/libpthread.so.0\ /%{_lib}/%1/libpthread.so.0\
/%{_lib}/%1/librt-%{version}.so\ /%{_lib}/%1/librt-%{version}.so\
/%{_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} %if %{powerpc_optimize_cpu_power6}
%{optimized_libs power4} %{optimized_libs power6}
%{optimized_libs ppc970} %{optimized_libs power6x}
%endif %endif
%if %{powerpc_optimize_cpu_power5} %if %{powerpc_optimize_cpu_power7}
%{optimized_libs power5} %{optimized_libs power7}
%{optimized_libs power5+} %endif
%endif %if %{powerpc_optimize_cpu_cell}
%if %{powerpc_optimize_cpu_power6} %{optimized_libs ppc-cell-be}
%{optimized_libs power6} %endif
%{optimized_libs power6x} %endif # optimize_power
%endif
%if %{powerpc_optimize_cpu_power7}
%{optimized_libs power7}
%endif
%if %{powerpc_optimize_cpu_cell}
%{optimized_libs ppc-cell-be}
%endif
# optimize_power
%endif
%dir %attr(0700,root,root) /var/cache/ldconfig %dir %attr(0700,root,root) /var/cache/ldconfig
/sbin/ldconfig /sbin/ldconfig
/usr/bin/gencat /usr/bin/gencat
@ -941,7 +846,7 @@ exit 0
/usr/bin/iconv /usr/bin/iconv
%attr(755,root,root) /usr/bin/ldd %attr(755,root,root) /usr/bin/ldd
%ifarch %ix86 sparc sparcv9 %ifarch %ix86 sparc sparcv9
/usr/bin/lddlibc4 /usr/bin/lddlibc4
%endif %endif
/usr/bin/locale /usr/bin/locale
/usr/bin/localedef /usr/bin/localedef
@ -956,19 +861,16 @@ exit 0
%defattr (755,root,root,755) %defattr (755,root,root,755)
%dir /%{_lib}/obsolete/ %dir /%{_lib}/obsolete/
%ifarch %ix86 %ifarch %ix86
%dir /%{_lib}/obsolete/noversion %dir /%{_lib}/obsolete/noversion
/%{_lib}/obsolete/noversion/libNoVersion-%{version}.so /%{_lib}/obsolete/noversion/libNoVersion-%{version}.so
/%{_lib}/obsolete/noversion/libNoVersion.so.1 /%{_lib}/obsolete/noversion/libNoVersion.so.1
%endif %endif
#
# locale subpackage
#
%files locale -f libc.lang %files locale -f libc.lang
%defattr(-,root,root) %defattr(-,root,root)
/usr/share/locale/locale.alias /usr/share/locale/locale.alias
%if %{build_locales} %if %{build_locales}
/usr/lib/locale /usr/lib/locale
%endif %endif
%{_libdir}/gconv %{_libdir}/gconv
@ -997,8 +899,9 @@ exit 0
%{_libdir}/libdl.a %{_libdir}/libdl.a
%{_libdir}/libg.a %{_libdir}/libg.a
%{_libdir}/libieee.a %{_libdir}/libieee.a
%ifarch ppc ppc64 s390 s390x %ifarch ppc ppc64 s390 s390x sparc sparcv8 sparcv9 sparcv9v
%{_libdir}/libnldbl_nonshared.a # This is not built on sparc64.
%{_libdir}/libnldbl_nonshared.a
%endif %endif
%{_libdir}/libm.a %{_libdir}/libm.a
%{_libdir}/libmcheck.a %{_libdir}/libmcheck.a
@ -1009,32 +912,20 @@ exit 0
%{_libdir}/librpcsvc.a %{_libdir}/librpcsvc.a
%{_libdir}/librt.a %{_libdir}/librt.a
%{_libdir}/libutil.a %{_libdir}/libutil.a
#
# glibc-info
#
%files info %files info
%defattr(-,root,root) %defattr(-,root,root)
%doc %{_infodir}/libc.info.gz %doc %{_infodir}/libc.info.gz
%doc %{_infodir}/libc.info-?.gz %doc %{_infodir}/libc.info-?.gz
%doc %{_infodir}/libc.info-??.gz %doc %{_infodir}/libc.info-??.gz
#
# glibc-html
#
%files html %files html
%defattr(-,root,root) %defattr(-,root,root)
%doc %{_prefix}/share/doc/glibc %doc %{_prefix}/share/doc/glibc
#
# glibc-i18ndata
#
%files i18ndata %files i18ndata
%defattr(-,root,root) %defattr(-,root,root)
%{_prefix}/share/i18n %{_prefix}/share/i18n
#
# nscd
#
%files -n nscd %files -n nscd
%defattr(-,root,root) %defattr(-,root,root)
@ -1050,9 +941,6 @@ exit 0
%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
%attr(0600,root,root) %verify(not md5 size mtime) %ghost %config(missingok,noreplace) /var/run/nscd/group %attr(0600,root,root) %verify(not md5 size mtime) %ghost %config(missingok,noreplace) /var/run/nscd/group
%attr(0600,root,root) %verify(not md5 size mtime) %ghost %config(missingok,noreplace) /var/run/nscd/hosts %attr(0600,root,root) %verify(not md5 size mtime) %ghost %config(missingok,noreplace) /var/run/nscd/hosts
#
# glibc-profile
#
%files profile %files profile
%defattr(-,root,root) %defattr(-,root,root)

View File

@ -43,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/",
@ -63,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/",

View File

@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1 version https://git-lfs.github.com/spec/v1
oid sha256:349cdc0d042ccd828d6906a0e2498bdacfa89e2a3df0e706fc429756caa39895 oid sha256:a64d26aaeef0d9ee062260b5540910b138a6e0df89033dd4fe4b39d905574b19
size 76349 size 76334