#
-# You can define min_kernel macro by "rpm --define 'min_kernel version'"
-# default is 2.4.6
-#
# Conditional build:
-%bcond_with omitfp # build without frame pointer (pass \--enable-omitfp)
+# min_kernel (default is 2.6.12)
%bcond_without memusage # don't build memusage utility
-%bcond_with kernelheaders # use headers from kernel-headers instead of
- # linux-libc-headers (evil, breakage etc., don't use)
-%bcond_without dist_kernel # for above, allow non-distribution kernel
-%bcond_without nptl # don't use NPTL (implies using linuxthreads)
-%bcond_without tls # don't use tls (implies no NPTL)
+%bcond_without selinux # without SELinux support (in nscd)
%bcond_with tests # perform "make test"
%bcond_without localedb # don't build localedb-all (is time consuming)
-
+%bcond_with cross # build using crossgcc (without libgcc_eh)
#
# TODO:
+# - look at locale fixes/updates in bugzilla
+# - no more chicken-egg problem (postshell is no more dynamically linked with libc), remove SONAME symlinks? see files section.
+# [OLD]
# - localedb-gen man pages(?)
-# - fix what trojan broke while upgreading (getaddrinfo-workaround)
# - math/{test-fenv,test-tgmath,test-float,test-ifloat},
-# linuxthreads/tst-cancel8, debug/backtrace-tst(SEGV) fail on alpha
-#
-
-%{!?min_kernel:%global min_kernel 2.4.6}
-
-%if %{with nptl}
-# it seems that nptl uses cmpxchgl (available since i486) on x86
-%ifarch i486 i586 i686 pentium3 pentium4 athlon amd64 ia64 alpha s390 s390x sparcv9 ppc ppc64
-%if "%{min_kernel}" < "2.6.0"
-%global min_kernel 2.6.0
-%endif
-%endif
-%endif
-
-%if %{with tls}
-%ifnarch %{ix86} amd64 ia64 alpha s390 s390x sparc sparcv9 ppc ppc64
-%undefine with_tls
-%endif
-%endif
-
-%if %{without tls}
-# NPTL requires TLS
-%undefine with_nptl
-%endif
+# debug/backtrace-tst(SEGV) fail on alpha
+%{!?min_kernel:%global min_kernel 2.6.12}
%ifarch sparc64
%undefine with_memusage
%endif
-%ifarch sparc
-# broken
-%undefine with_tls
-%endif
-
-%define llh_version 7:2.6.6.0
-%define _snap 20041122
+%define llh_version 7:2.6.12.0-10
Summary: GNU libc
Summary(de): GNU libc
Summary(tr): GNU libc
Summary(uk): GNU libc ×ÅÒÓ¦§ 2.3
Name: glibc
-Version: 2.3.4
-Release: 0.%{_snap}.1%{!?with_nptl:+nonptl}%{!?with_nptl:%{!?with_tls:+notls}}
+Version: 2.4
+Release: 4
Epoch: 6
License: LGPL
Group: Libraries
-#Source0: ftp://sources.redhat.com/pub/glibc/releases/%{name}-%{version}.tar.bz2
-Source0: %{name}-%{_snap}.tar.bz2
-# Source0-md5: f001b42f639d5030d2c4dd16803b393d
-#Source1: ftp://sources.redhat.com/pub/glibc/releases/%{name}-linuxthreads-%{version}.tar.bz2
-#Source1: %{name}-linuxthreads-2.3.3.tar.bz2
+Source0: ftp://sources.redhat.com/pub/glibc/releases/%{name}-%{version}.tar.bz2
+# Source0-md5: 7e9a88dcd41fbc53801dbe5bdacaf245
+Source1: ftp://sources.redhat.com/pub/glibc/releases/%{name}-libidn-%{version}.tar.bz2
+# Source1-md5: e2d892b40d654c523ab26a26b7dd86a1
Source2: nscd.init
Source3: nscd.sysconfig
Source4: nscd.logrotate
#Source5: http://www.mif.pg.gda.pl/homepages/ankry/man-PLD/%{name}-man-pages.tar.bz2
-Source5: %{name}-man-pages.tar.bz2
-# Source5-md5: 03bee93e9786b3e7dad2570ccb0cbc5c
-#Source6: http://www.mif.pg.gda.pl/homepages/ankry/man-PLD/%{name}-non-english-man-pages.tar.bz2
-Source6: %{name}-non-english-man-pages.tar.bz2
-# Source6-md5: 6159f0a9b6426b5f6fc1b0d8d21b9b76
-# borrowed from util-linux
-Source7: %{name}-localedb-gen
+Source5: http://qboosh.cs.net.pl/man/%{name}-man-pages.tar.bz2
+# Source5-md5: f464eadf3cf06761f65639e44a179e6b
+Source6: %{name}-localedb-gen
+Source7: %{name}-LD-path.c
+Source8: postshell.c
Patch0: %{name}-info.patch
Patch1: %{name}-pl.po-update.patch
Patch2: %{name}-pld.patch
Patch3: %{name}-crypt-blowfish.patch
-Patch4: %{name}-linuxthreads-lock.patch
-Patch5: %{name}-pthread_create-manpage.patch
+Patch4: %{name}-alpha-ev6-opcodes.patch
+
Patch6: %{name}-paths.patch
-Patch7: %{name}-postshell.patch
+
Patch8: %{name}-missing-nls.patch
Patch9: %{name}-java-libc-wait.patch
-Patch10: %{name}-lthrds_noomit.patch
+
Patch11: %{name}-no_opt_override.patch
-# this is broken (hardcoded /usr/src/linux)
-Patch12: %{name}-kernel_includes.patch
-Patch13: %{name}-includes.patch
-Patch14: %{name}-soinit-EH_FRAME.patch
-Patch15: %{name}-sparc-errno_fix.patch
-Patch16: %{name}-csu-quotes.patch
-Patch17: %{name}-tests-noproc.patch
-Patch18: %{name}-new-charsets.patch
-Patch19: %{name}-sr_CS.patch
-Patch20: %{name}-sparc64-dl-machine.patch
-Patch21: %{name}-tzfile-noassert.patch
-Patch22: %{name}-morelocales.patch
-Patch23: %{name}-locale_ZA.patch
-Patch24: %{name}-locale_fixes.patch
-Patch25: %{name}-LD_DEBUG.patch
-# PaX
-Patch26: %{name}-pax_iconvconfig.patch
-Patch27: %{name}-pax_dl-execstack.patch
-Patch28: %{name}-sparc_comdat.patch
-Patch29: %{name}-ia64_unwind.patch
-Patch30: %{name}-ZA_collate.patch
+Patch12: %{name}-includes.patch
+Patch14: %{name}-sparc-errno_fix.patch
+
+Patch17: %{name}-new-charsets.patch
+Patch18: %{name}-sr_CS.patch
+
+Patch20: %{name}-tzfile-noassert.patch
+Patch21: %{name}-morelocales.patch
+Patch22: %{name}-locale_fixes.patch
+Patch23: %{name}-ZA_collate.patch
+Patch24: %{name}-iconvconfig-nxstack.patch
+Patch25: %{name}-cross-gcc_eh.patch
+# PaX hack (dropped)
+#Patch30: %{name}-pax_dl-execstack.patch
URL: http://www.gnu.org/software/libc/
+%{?with_selinux:BuildRequires: audit-libs-devel}
+BuildRequires: autoconf
BuildRequires: automake
BuildRequires: binutils >= 2:2.15.90.0.3
-BuildRequires: gcc >= 3.2
+BuildRequires: gcc >= 5:3.4
+BuildRequires: gawk
%{?with_memusage:BuildRequires: gd-devel >= 2.0.1}
BuildRequires: gettext-devel >= 0.10.36
-%if %{with kernelheaders}
-%{?with_dist_kernel:BuildRequires: kernel-headers < 2.5}
-%else
+%{?without_cross:BuildRequires: dietlibc-static}
+%{?with_selinux:BuildRequires: libselinux-devel >= 1.18}
BuildRequires: linux-libc-headers >= %{llh_version}
-%endif
-BuildRequires: libselinux-devel
BuildRequires: perl-base
BuildRequires: rpm-build >= 4.3-0.20030610.28
BuildRequires: rpm-perlprov
+BuildRequires: rpmbuild(macros) >= 1.268
BuildRequires: sed >= 4.0.5
BuildRequires: texinfo
AutoReq: false
-PreReq: basesystem
-Requires: glibc-misc = %{epoch}:%{version}-%{release}
-%{?with_tls:Provides: glibc(tls)}
-Provides: ld.so.2
-Provides: ldconfig
+Requires: %{name}-misc = %{epoch}:%{version}-%{release}
+Requires: basesystem
+Requires: uname(release) >= %{min_kernel}
Provides: /sbin/ldconfig
-Obsoletes: %{name}-common
-Obsoletes: %{name}-debug
+Provides: glibc(nptl)
+Provides: glibc(tls)
+Provides: glibc64
+Provides: ldconfig
+Obsoletes: glibc-common
+Obsoletes: glibc-debug
+Obsoletes: glibc64
Obsoletes: ldconfig
Conflicts: kernel < %{min_kernel}
+Conflicts: kernel24
+Conflicts: kernel24-smp
Conflicts: ld.so < 1.9.9-10
Conflicts: man-pages < 1.43
+Conflicts: poldek < 0.18.8-5
Conflicts: rc-scripts < 0.3.1-13
Conflicts: rpm < 4.1
+ExclusiveArch: i486 i586 i686 pentium3 pentium4 athlon %{x8664} ia64 alpha s390 s390x sparc sparc64 sparcv9 ppc ppc64
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
-%define debugcflags -O1 -g
-%ifarch sparc64
-%define specflags_sparc64 -mvis -fcall-used-g6
-%define _libdir /usr/lib64
-%endif
+# avoid -s here (ld.so must not be stripped to allow any program debugging)
+%define filterout_ld (-Wl,)?-[sS] (-Wl,)?--strip.*
+%define specflags_sparc64 -mcpu=ultrasparc -mvis -fcall-used-g6
+
+# Xen-friendly glibc
+%define specflags_ia32 -mno-tls-direct-seg-refs
+%define specflags_x86_64 -mno-tls-direct-seg-refs
+%define specflags_amd64 -mno-tls-direct-seg-refs
+%define specflags_ia32e -mno-tls-direct-seg-refs
+
# we don't want perl dependency in glibc-devel
%define _noautoreqfiles %{_bindir}/mtrace
# hack: don't depend on rpmlib(PartialHardlinkSets) for easier upgrade from Ra
programs. This package contains the most important sets of shared
libraries, the standard C library and the standard math library.
Without these, a Linux system will not function. It also contains
-national language (locale) support and timezone databases.
+national language (locale) support.
Can be used on: Linux kernel >= %{min_kernel}.
Este paquete contiene las bibliotecas compartidas más importantes, es
decir la biblioteca C estándar y la biblioteca estándar de matemática.
Sin éstas, un sistema Linux no podrá funcionar. También está incluido
-soporte de idiomas nacionales (locale) y bases de datos de zona de
-tiempo.
+soporte de idiomas nacionales (locale).
Puede usarse con: núcleo Linux >= %{min_kernel}.
shared Libraries, die Standard-C-Library und die
Standard-Math-Library, ohne die das Linux-System nicht funktioniert.
Ferner enthält es den Support für die verschiedenen Sprachgregionen
-(locale) und die Zeitzonen-Datenbank.
+(locale).
Can be used on: Linux kernel >= %{min_kernel}.
bibliothèques partagées les plus importantes, la bibliothèque standard
du C et la bibliothèque mathématique standard. Sans celles-ci, un
système Linux ne peut fonctionner. Il contient aussi la gestion des
-langues nationales (locales) et les bases de données des zones
-horaires.
+langues nationales (locales).
Can be used on: Linux kernel >= %{min_kernel}.
standardowych, wspó³dzielonych (dynamicznych) bibliotek C i
matematycznych. Bez glibc system Linux nie jest w stanie funkcjonowaæ.
Znajduj± siê tutaj równie¿ definicje ró¿nych informacji dla wielu
-jêzyków (locale) oraz definicje stref czasowych.
+jêzyków (locale).
-Przeznaczony dla j±dra Linux >= %{min_kernel}.
+Pakiet jest przeznaczony dla j±dra Linuksa >= %{min_kernel}.
%description -l ru
óÏÄÅÒÖÉÔ ÓÔÁÎÄÁÒÔÎÙÅ ÂÉÂÌÉÏÔÅËÉ, ÉÓÐÏÌØÚÕÅÍÙÅ ÍÎÏÇÏÞÉÓÌÅÎÎÙÍÉ
ÐÒÏÇÒÁÍÍÁÍÉ. üÔÏÔ ÐÁËÅÔ ÓÏÄÅÒÖÉÔ ÎÁÉÂÏÌÅÅ ×ÁÖÎÙÅ ÉÚ ÒÁÚÄÅÌÑÅÍÙÈ
ÂÉÂÌÉÏÔÅË - ÓÔÁÎÄÁÒÔÎÕÀ ÂÉÂÌÉÏÔÅËÕ C É ÓÔÁÎÄÁÒÔÎÕÀ ÂÉÂÌÉÏÔÅËÕ
ÍÁÔÅÍÁÔÉËÉ. âÅÚ ÜÔÉÈ ÂÉÂÌÉÏÔÅË Linux ÆÕÎËÃÉÏÎÉÒÏ×ÁÔØ ÎÅ ÂÕÄÅÔ. ôÁËÖÅ
-ÐÁËÅÔ ÓÏÄÅÒÖÉÔ ÐÏÄÄÅÒÖËÕ ÎÁÃÉÏÎÁÌØÎÙÈ ÑÚÙËÏ× (locale) É ÂÁÚÙ ÄÁÎÎÙÈ
-×ÒÅÍÅÎÎÙÈ ÚÏÎ (timezone databases).
+ÐÁËÅÔ ÓÏÄÅÒÖÉÔ ÐÏÄÄÅÒÖËÕ ÎÁÃÉÏÎÁÌØÎÙÈ ÑÚÙËÏ× (locale).
Can be used on: Linux kernel >= %{min_kernel}.
×ÉËÏÒÉÓÔÏ×Õ¤ÔØÓÑ ×Ó¦ÍÁ ÐÒÏÇÒÁÍÁÍÉ. ãÅÊ ÐÁËÅÔ Í¦ÓÔÉÔØ ÎÁʦÌØÛ ×ÁÖÌÉצ
Ú ÄÉÎÁͦÞÎÉÈ Â¦Â̦ÏÔÅË - ÓÔÁÎÄÁÒÔÎÕ Â¦Â̦ÏÔÅËÕ ó ÔÁ ÓÔÁÎÄÁÒÔÎÕ
¦Â̦ÏÔÅËÕ ÍÁÔÅÍÁÔÉËÉ. âÅÚ ÃÉÈ Â¦Â̦ÏÔÅË Linux ÆÕÎËæÏÎÕ×ÁÔÉ ÎÅ ÂÕÄÅ.
-ôÁËÏÖ ÐÁËÅÔ Í¦ÓÔÉÔØ Ð¦ÄÔÒÉÍËÕ ÎÁæÏÎÁÌØÎÉÈ ÍÏ× (locale) ÔÁ ÂÁÚÉ ÄÁÎÎÉÈ
-ÞÁÓÏ×ÉÈ ÚÏÎ (timezone databases).
+ôÁËÏÖ ÐÁËÅÔ Í¦ÓÔÉÔØ Ð¦ÄÔÒÉÍËÕ ÎÁæÏÎÁÌØÎÉÈ ÍÏ× (locale).
Can be used on: Linux kernel >= %{min_kernel}.
%package misc
Summary: Utilities and data used by glibc
Summary(pl): Narzêdzia i dane u¿ywane przez glibc
-Group: Development/Libraries
+Group: Applications/System
AutoReq: false
-PreReq: %{name} = %{epoch}:%{version}-%{release}
+Requires(pre): %{name} = %{epoch}:%{version}-%{release}
+Requires: %{name} = %{epoch}:%{version}-%{release}
+Requires: tzdata >= 2006g-2
%description misc
Utilities and data used by glibc.
Summary(uk): äÏÄÁÔËÏצ ¦Â̦ÏÔÅËÉ, ÐÏÔÒ¦ÂΦ ÄÌÑ ËÏÍЦÌÑæ§
Group: Development/Libraries
Requires: %{name} = %{epoch}:%{version}-%{release}
-%{!?with_kernelheaders:Requires: linux-libc-headers >= %{llh_version}}
+Requires: %{name}-devel-utils = %{epoch}:%{version}-%{release}
+Requires: %{name}-headers = %{epoch}:%{version}-%{release}
+Provides: %{name}-devel(%{_target_cpu}) = %{epoch}:%{version}-%{release}
Obsoletes: libiconv-devel
%description devel
ÔÁ ÏÂ'¤ËÔΦ ÆÁÊÌÉ, ÝÏ Í¦ÓÔÑÔØÓÑ × ÃØÏÍÕ ÐÁËÅÔ¦, ÃÏ ÓÔ×ÏÒÀ×ÁÔÉ
×ÉËÏÎÕ×ÁΦ ÆÁÊÌÉ.
+%package headers
+Summary: Header files for development using standard C libraries
+Summary(pl): Pliki nag³ówkowe do tworzenia programów przy u¿yciu standardowych bibliotek C
+Group: Development/Building
+Provides: %{name}-headers(%{_target_cpu}) = %{epoch}:%{version}-%{release}
+%ifarch %{x8664}
+# If both -m32 and -m64 is to be supported on x86_64, x86_64 package
+# have to be installed, not ix86 one.
+Obsoletes: %{name}-headers(i386)
+Obsoletes: %{name}-headers(i486)
+Obsoletes: %{name}-headers(i586)
+Obsoletes: %{name}-headers(i686)
+Obsoletes: %{name}-headers(athlon)
+Obsoletes: %{name}-headers(pentium3)
+Obsoletes: %{name}-headers(pentium4)
+%endif
+%ifarch ppc64
+Obsoletes: %{name}-headers(ppc)
+%endif
+%ifarch s390x
+Obsoletes: %{name}-headers(s390)
+%endif
+%ifarch sparc64
+Obsoletes: %{name}-headers(sparc)
+%endif
+Requires: linux-libc-headers >= %{llh_version}
+
+%description headers
+The glibc-headers package contains the header files necessary for
+developing programs which use the standard C libraries (which are used
+by nearly all programs). If you are developing programs which will use
+the standard C libraries, your system needs to have these standard
+header files available in order to create the executables.
+
+Install glibc-headers if you are going to develop programs which will
+use the standard C libraries.
+
+%description headers -l pl
+Pakiet glibc-headers zawiera pliki nag³ówkowe niezbêdne do rozwijania
+programów u¿ywaj±cych standardowych bibliotek C (u¿ywanych przez
+prawie wszystkie programy). Je¶li tworzymy programy korzystaj±ce ze
+standardowych bibliotek C, system wymaga dostêpno¶ci tych
+standardowych plików nag³ówkowych do tworzenia programów
+wykonywalnych.
+
+Ten pakiet nale¿y zainstalowaæ je¶li zamierzamy tworzyæ programy
+korzystaj±ce ze standardowych bibliotek C.
+
+%package devel-utils
+Summary: Utilities needed for development using standard C libraries
+Summary(pl): Narzêdzia do tworzenia programów przy u¿yciu standardowych bibliotek C
+Group: Development/Libraries
+Provides: %{name}-devel-utils(%{_target_cpu}) = %{epoch}:%{version}-%{release}
+%ifarch %{x8664}
+# If both -m32 and -m64 is to be supported on AMD64, x86_64 package
+# have to be installed, not ix86 one.
+Obsoletes: %{name}-devel-utils(i386)
+Obsoletes: %{name}-devel-utils(i486)
+Obsoletes: %{name}-devel-utils(i586)
+Obsoletes: %{name}-devel-utils(i686)
+Obsoletes: %{name}-devel-utils(athlon)
+Obsoletes: %{name}-devel-utils(pentium3)
+Obsoletes: %{name}-devel-utils(pentium4)
+%endif
+%ifarch ppc64
+Obsoletes: %{name}-devel-utils(ppc)
+%endif
+%ifarch s390x
+Obsoletes: %{name}-devel-utils(s390)
+%endif
+%ifarch sparc64
+Obsoletes: %{name}-devel-utils(sparc)
+%endif
+
+%description devel-utils
+The glibc-devel-utils package contains utilities necessary for
+developing programs which use the standard C libraries (which are used
+by nearly all programs). If you are developing programs which will use
+the standard C libraries, your system needs to have these utilities
+available.
+
+Install glibc-devel-utils if you are going to develop programs which
+will use the standard C libraries.
+
+%description devel-utils -l pl
+Pakiet glibc-devel-utils zawiera narzêdzia niezbêdne do rozwijania
+programów u¿ywaj±cych standardowych bibliotek C (u¿ywanych przez
+prawie wszystkie programy). Je¶li tworzymy programy korzystaj±ce ze
+standardowych bibliotek C, system wymaga dostêpno¶ci tych narzêdzi do
+tworzenia programów wykonywalnych.
+
+Ten pakiet nale¿y zainstalowaæ je¶li zamierzamy tworzyæ programy
+korzystaj±ce ze standardowych bibliotek C.
+
+%package devel-doc
+Summary: Documentation needed for development using standard C libraries
+Summary(pl): Dokumentacja do tworzenia programów przy u¿yciu standardowych bibliotek C
+Group: Documentation
+Provides: %{name}-devel-doc(%{_target_cpu}) = %{epoch}:%{version}-%{release}
+%ifarch %{x8664}
+# If both -m32 and -m64 is to be supported on x86_64, x86_64 package
+# have to be installed, not ix86 one.
+Obsoletes: %{name}-devel-doc(i386)
+Obsoletes: %{name}-devel-doc(i486)
+Obsoletes: %{name}-devel-doc(i586)
+Obsoletes: %{name}-devel-doc(i686)
+Obsoletes: %{name}-devel-doc(athlon)
+Obsoletes: %{name}-devel-doc(pentium3)
+Obsoletes: %{name}-devel-doc(pentium4)
+%endif
+%ifarch ppc64
+Obsoletes: %{name}-devel-doc(ppc)
+%endif
+%ifarch s390x
+Obsoletes: %{name}-devel-doc(s390)
+%endif
+%ifarch sparc64
+Obsoletes: %{name}-devel-doc(sparc)
+%endif
+
+%description devel-doc
+The glibc-devel-doc package contains info and manual pages necessary
+for developing programs which use the standard C libraries (which are
+used by nearly all programs).
+
+Install glibc-devel-doc if you are going to develop programs which
+will use the standard C libraries.
+
+%description devel-doc -l pl
+Pakiet glibc-devel-doc zawiera strony info i manuala przydatne do
+rozwijania programów u¿ywaj±cych standardowych bibliotek C (u¿ywanych
+przez prawie wszystkie programy).
+
+Ten pakiet nale¿y zainstalowaæ je¶li zamierzamy tworzyæ programy
+korzystaj±ce ze standardowych bibliotek C.
+
%package -n nscd
Summary: Name Service Caching Daemon
Summary(es): Demonio de caché del servicio de nombres
Summary(ru): ëÜÛÉÒÕÀÝÉÊ ÄÅÍÏÎ ÓÅÒ×ÉÓÏ× ÉÍÅÎ
Summary(uk): ëÅÛÕÀÞÉÊ ÄÅÍÏÎ ÓÅ×¦Ó¦× ¦ÍÅÎ
Group: Networking/Daemons
-PreReq: rc-scripts >= 0.2.0
-Requires(post,preun): /sbin/chkconfig
Requires(post): fileutils
+Requires(post,preun): /sbin/chkconfig
+Requires(postun): /usr/sbin/groupdel
+Requires(postun): /usr/sbin/userdel
+Requires(pre): /bin/id
+Requires(pre): /usr/bin/getgid
+Requires(pre): /usr/sbin/groupadd
+Requires(pre): /usr/sbin/useradd
Requires: %{name} = %{epoch}:%{version}-%{release}
+%{?with_selinux:Requires: libselinux >= 1.18}
+Requires: rc-scripts >= 0.2.0
+Provides: group(nscd)
+Provides: user(nscd)
%description -n nscd
nscd caches name service lookups; it can dramatically improve
-performance with NIS+, and may help with DNS as well. You cannot use
-nscd with 2.0 kernels, due to bugs in the kernel-side thread support.
-nscd happens to hit these bugs particularly hard.
+performance with NIS+, and may help with DNS as well.
%description -n nscd -l es
nscd guarda las peticiones del servicio de nombres en una caché; eso
puede aumentar drásticamente las prestaciones de NIS+, y también puede
-ayudar con DNS. No puede usar nscd con núcleos 2.0, por contener éstos
-errores en el soporte de hilos. Resulta que estos errores impactan el
-nscd de manera realmente grave.
+ayudar con DNS.
%description -n nscd -l ja
Nscd ¤Ï¥Í¡¼¥à¥µ¡¼¥Ó¥¹»²¾È¤ò¥¥ã¥Ã¥·¥å¤·¡¢NIS+ ¤Î¥Ñ¥Õ¥©¡¼¥Þ¥ó¥¹¤ò
-¥É¥é¥Þ¥Æ¥£¥Ã¥¯¤Ë²þÁ±¤¹¤ë¤³¤È¤¬¤Ç¤¡¢DNS ¤òƱÍͤËÊä½õ¤·¤Þ¤¹¡£ 2.0
-¥«¡¼¥Í¥ë¤Ç nscd ¤ò»ÈÍѤ¹¤ë¤³¤È¤Ï¤Ç¤¤Ê¤¤¤³¤È¤ËÃí°Õ¤·¤Æ¤¯¤À¤µ¤¤¡£
-¤½¤ì¤Ï¡¢¥«¡¼¥Í¥ë¦¤Î¥¹¥ì¥Ã¥É¥µ¥Ý¡¼¥È¤Ë¥Ð¥°¤¬¤¢¤ë¤«¤é¤Ç¤¹¡£ÉÔ¹¬¤Ê¤³¤È¤Ë¡¢
-nscd ¤Ï¤³¤ì¤é¤Î¥Ð¥°¤ËÆäˤϤ²¤·¤¯¤¢¤¿¤Ã¤Æ¤·¤Þ¤¤¤Þ¤¹¡£
+¥É¥é¥Þ¥Æ¥£¥Ã¥¯¤Ë²þÁ±¤¹¤ë¤³¤È¤¬¤Ç¤¡¢DNS ¤òƱÍͤËÊä½õ¤·¤Þ¤¹¡£
%description -n nscd -l pl
nscd zapamiêtuje zapytania i odpowiedzi NIS oraz DNS. Pozwala
-drastycznie poprawiæ szybko¶æ dzia³ania NIS+. Nie jest mo¿liwe
-u¿ywanie nscd z j±drami serii 2.0.x z powodu b³êdów po stronie j±dra w
-obs³udze w±tków.
+drastycznie poprawiæ szybko¶æ dzia³ania NIS+.
%description -n nscd -l ru
nscd ËÜÛÉÒÕÅÔ ÒÅÚÕÌØÔÁÔÙ ÚÁÐÒÏÓÏ× Ë ÓÅÒ×ÉÓÁÍ ÉÍÅÎ; ÜÔÏ ÍÏÖÅÔ ÒÅÚËÏ
Summary: locale database source code
Summary(es): Código fuente de la base de datos de los locales
Summary(pl): Kod ¼ród³owy bazy locale
-Group: Daemons
+Group: Libraries
Requires: %{name} = %{epoch}:%{version}-%{release}
Requires: gzip
Requires: sed
Summary(es): Base de datos de todos los locales soportados por glibc
Summary(pl): Baza danych locale dla wszystkich lokalizacji obs³ugiwanych przez glibc
Group: Libraries
-Requires: iconv = %{epoch}:%{version}-%{release}
Requires: %{name} = %{epoch}:%{version}-%{release}
+Requires: iconv = %{epoch}:%{version}-%{release}
%description localedb-all
This package contains locale database for all locales supported by
%package -n iconv
Summary: Convert encoding of given files from one encoding to another
Summary(es): Convierte entre varias codificaciones de los ficheros dados
-Summary(pl): Program do konwersji plików tekstowych z jednego kodowania do innego
-Group: Applications/Text
+Summary(pl): Modu³y do konwersji plików tekstowych z jednego kodowania do innego
+Group: Libraries
Requires: %{name} = %{epoch}:%{version}-%{release}
%description -n iconv
conversión de juegos de caracteres).
%description -n iconv -l pl
-Program do konwersji plików tekstowych z jednego kodowania do innego.
-Musisz mieæ zainstalowany ten pakiet je¿eli wykonujesz konwersjê
-dokumentów z jednego kodowania do innego lub je¿eli masz zainstalowane
-jakie¶ programy, które korzystaj± z Generic Character Set Conversion
-Interface w glibc, czyli z zestawu funkcji z tej biblioteki, które
-umo¿liwiaj± konwersjê kodowania danych z poziomu dowolnego programu.
+Modu³y do konwersji plików tekstowych z jednego kodowania do innego.
+Trzeba mieæ zainstalowany ten pakiet, aby wykonywaæ konwersjê
+dokumentów z jednego kodowania do innego lub do u¿ywania programów
+korzystaj±cych z Generic Character Set Conversion Interface w glibc,
+czyli z zestawu funkcji z tej biblioteki, które umo¿liwiaj± konwersjê
+kodowania danych z poziomu dowolnego programu.
%package static
Summary: Static libraries
Summary(uk): óÔÁÔÉÞΦ ¦Â̦ÏÔÅËÉ glibc
Group: Development/Libraries
Requires: %{name}-devel = %{epoch}:%{version}-%{release}
+Provides: %{name}-static(%{_target_cpu}) = %{epoch}:%{version}-%{release}
Obsoletes: libiconv-static
%description static
Summary(pl): Zabawka
Group: Applications
Requires: %{name} = %{epoch}:%{version}-%{release}
-Requires: gd
%description memusage
A toy.
%description memusage -l pl
Zabawka.
-%package zoneinfo_right
-Summary: Non-POSIX (real) time zones
-Summary(es): Zonas de tiempo reales (no de POSIX)
-Summary(pl): Nie-POSIX-owe (prawdziwe) strefy czasowe
-Group: Libraries
-Requires: %{name} = %{epoch}:%{version}-%{release}
-
-%description zoneinfo_right
-You don't want this. Details at:
-http://sources.redhat.com/ml/libc-alpha/2000-12/msg00068.html
-
-%description zoneinfo_right -l es
-No lo necesita. Encontrará los detalles en:
-http://sources.redhat.com/ml/libc-alpha/2000-12/msg00068.html
-
-%description zoneinfo_right -l pl
-Nie potrzebujesz tego. Szczegó³y pod:
-http://sources.redhat.com/ml/libc-alpha/2000-12/msg00068.html
-
-%package -n %{name}64
-Summary: GNU libc - 64-bit libraries
-Summary(es): GNU libc - bibliotecas de 64 bits
-Summary(pl): GNU libc - biblioteki 64-bitowe
-Group: Libraries
-%ifarch amd64
-Provides: glibc = %{epoch}:%{version}-%{release}
-Requires: glibc-misc = %{epoch}:%{version}-%{release}
-%else
-Requires: %{name} = %{epoch}:%{version}-%{release}
-%endif
-
-%description -n %{name}64
-64-bit GNU libc libraries for 64bit architecture.
-
-%description -n %{name}64 -l es
-Bibliotecas GNU libc de 64 bits para la arquitectura 64bit.
-
-%description -n %{name}64 -l pl
-Biblioteki 64-bitowe GNU libc dla architektury 64bit.
-
-%package -n %{name}64-devel
-Summary: Development files for 64-bit GNU libc libraries
-Summary(es): Ficheros de desarrollo para bibliotecas GNU libc de 64 bits
-Summary(pl): Pliki do programowania z u¿yciem 64-bitowych bibliotek GNU libc
-Group: Development/Libraries
-Requires: %{name}-devel = %{epoch}:%{version}-%{release}
-
-%description -n %{name}64-devel
-Development files for 64-bit GNU libc libraries for 64bit
-architecture.
-
-%description -n %{name}64-devel -l es
-Ficheros de desarrollo para las bibliotecas GNU libc de 64 bits para
-la arquitectura 64bit.
-
-%description -n %{name}64-devel -l pl
-Pliki do programowania z u¿yciem 64-bitowych bibliotek GNU libc dla
-architektury 64bit.
-
-%package -n %{name}64-static
-Summary: Static 64-bit GNU libc libraries
-Summary(es): Bibliotecas estáticas GNU libc de 64 bits
-Summary(pl): Statyczne 64-bitowe biblioteki GNU libc
-Group: Development/Libraries
-Requires: %{name}64-devel = %{epoch}:%{version}-%{release}
-
-%description -n %{name}64-static
-Static 64-bit GNU libc libraries.
-
-%description -n %{name}64-static -l es
-Bibliotecas estáticas GNU libc de 64 bits.
-
-%description -n %{name}64-static -l pl
-Statyczne 64-bitowe biblioteki GNU libc.
-
%prep
-#setup -q -a 1 -n libc
-%setup -q -n libc
+%setup -q -a1
+ln -s glibc-libidn-%{version} libidn
%patch0 -p1
%patch1 -p1
%patch2 -p1
%patch3 -p1
%patch4 -p1
-%patch5 -p1
+
%patch6 -p1
-%patch7 -p1
+
%patch8 -p1
%patch9 -p1
-%patch10 -p1
-# don't know, if it is good idea, for brave ones
-#%patch11 -p1
-%{?with_kernelheaders:%patch12}
-%{?!with_kernelheaders:%patch13 -p1}
-%patch14 -p1
-%patch15 -p0
-%patch16 -p1
+
+%patch11 -p1
+%patch12 -p1
+%patch14 -p0
+
%patch17 -p1
%patch18 -p1
-%patch19 -p1
+
%patch20 -p1
%patch21 -p1
%patch22 -p1
%patch23 -p1
%patch24 -p1
-# UPDATEME/DROPME
-# %patch25 -p0
-# DROP
-#%patch26 -p1
-# DROP
-#%patch27 -p1
-%patch28 -p1
-%patch29 -p1
-%patch30 -p1
+%{?with_cross:%patch25 -p1}
chmod +x scripts/cpp
+# i786 (aka pentium4) hack
+cd nptl/sysdeps/i386 && ln -s i686 i786 && cd -
+cd nptl/sysdeps/unix/sysv/linux/i386 && ln -s i686 i786 && cd -
+
%build
-# Build glibc
cp -f /usr/share/automake/config.sub scripts
%{__aclocal}
%{__autoconf}
-# i786 (aka pentium4) hack
-cd nptl/sysdeps/i386 && ln -s i686 i786 && cd -
-cd nptl/sysdeps/unix/sysv/linux/i386 && ln -s i686 i786 && cd -
-#
-[ -d builddir ] || mkdir builddir
+
+rm -rf builddir
+install -d builddir
cd builddir
-# avoid stripping ld.so by -s in rpmldflags
-LDFLAGS=" " ; export LDFLAGS
+%ifarch sparc64
+CC="%{__cc} -m64 -mcpu=ultrasparc -mvis -fcall-used-g6"
+%endif
+AWK="gawk" \
../%configure \
--enable-kernel="%{min_kernel}" \
- --%{?with_omitfp:en}%{!?with_omitfp:dis}able-omitfp \
- --with%{!?with_tls:out}-tls \
- --with-selinux \
-%if %{with nptl}
- --enable-add-ons=nptl \
- --disable-profile \
-%else
- --enable-add-ons=linuxthreads \
- --enable-profile \
-%endif
-%if %{with kernelheaders}
- CPPFLAGS="-I%{_kernelsrcdir}/include" \
- --with-headers=%{_kernelsrcdir}/include
-%else
- CPPFLAGS="-I%{_includedir}" \
- --with-headers=%{_includedir}
-%endif
-
-# problem compiling with --enable-bounded (must be reported to libc-alpha)
-
-%{__make} %{?parallelmkflags}
+ --enable-omitfp \
+ --with-headers=%{_includedir} \
+ --with%{!?with_selinux:out}-selinux \
+ --with-tls \
+ --enable-add-ons=nptl,libidn \
+ --enable-stackguard-randomization \
+ --enable-hidden-plt \
+ --enable-profile
+
+%{__make}
+cd ..
%if %{with tests}
+for d in builddir; do
+cd $d
env LANGUAGE=C LC_ALL=C \
%{__make} tests 2>&1 | awk '
BEGIN { file = "" }
print $0;
}
END { if (file != "") { print "ERROR OUTPUT FROM " file; system("cat " file); exit(1); } }'
+cd ..
+done
+%endif
+
+%if %{without cross}
+# create 5.4k postshell binary (7k unstripped) with diet instead of 412k glibc static binary (467k unstripped)
+diet -Os %{__cc} %{SOURCE8} %{rpmcflags} -static -o postshell
+diet -Os %{__cc} %{SOURCE7} %{rpmcflags} -static -o glibc-postinst
%endif
%install
rm -rf $RPM_BUILD_ROOT
-install -d $RPM_BUILD_ROOT{/etc/{logrotate.d,rc.d/init.d,sysconfig},%{_mandir}/man{3,8},/var/log,/var/run/nscd}
+install -d $RPM_BUILD_ROOT{/etc/{logrotate.d,rc.d/init.d,sysconfig},%{_mandir}/man{3,8},/var/log,/var/{lib,run}/nscd}
cd builddir
-
env LANGUAGE=C LC_ALL=C \
%{__make} install \
- %{?parallelmkflags} \
install_root=$RPM_BUILD_ROOT \
infodir=%{_infodir} \
mandir=%{_mandir}
%if %{with localedb}
env LANGUAGE=C LC_ALL=C \
%{__make} localedata/install-locales \
- %{?parallelmkflags} \
install_root=$RPM_BUILD_ROOT
%endif
install $PICFILES $RPM_BUILD_ROOT%{_libdir}
install elf/soinit.os $RPM_BUILD_ROOT%{_libdir}/soinit.o
install elf/sofini.os $RPM_BUILD_ROOT%{_libdir}/sofini.o
+cd ..
-install elf/postshell $RPM_BUILD_ROOT/sbin
-
-%{?with_memusage:mv -f $RPM_BUILD_ROOT/%{_lib}/libmemusage.so $RPM_BUILD_ROOT%{_libdir}}
-%ifnarch sparc64
-mv -f $RPM_BUILD_ROOT/%{_lib}/libpcprofile.so $RPM_BUILD_ROOT%{_libdir}
+%if %{without cross}
+install postshell $RPM_BUILD_ROOT/sbin
+install glibc-postinst $RPM_BUILD_ROOT/sbin
%endif
-%if %{without nptl}
-%{__make} -C ../linuxthreads/man
-install ../linuxthreads/man/*.3thr $RPM_BUILD_ROOT%{_mandir}/man3
-%endif
-
-rm -rf $RPM_BUILD_ROOT%{_datadir}/zoneinfo/{localtime,posixtime,posixrules,posix/*}
+%{?with_memusage:mv -f $RPM_BUILD_ROOT/%{_lib}/libmemusage.so $RPM_BUILD_ROOT%{_libdir}}
+mv -f $RPM_BUILD_ROOT/%{_lib}/libpcprofile.so $RPM_BUILD_ROOT%{_libdir}
-#cd $RPM_BUILD_ROOT%{_datadir}/zoneinfo
-#for i in [A-Z]*; do
-# ln -s ../$i posix
-#done
-#cd -
+rm -f $RPM_BUILD_ROOT%{_sysconfdir}/localtime
+# moved to tzdata package
+rm -rf $RPM_BUILD_ROOT%{_datadir}/zoneinfo
-ln -sf %{_sysconfdir}/localtime $RPM_BUILD_ROOT%{_datadir}/zoneinfo/localtime
-ln -sf localtime $RPM_BUILD_ROOT%{_datadir}/zoneinfo/posixtime
-ln -sf localtime $RPM_BUILD_ROOT%{_datadir}/zoneinfo/posixrules
ln -sf libbsd-compat.a $RPM_BUILD_ROOT%{_libdir}/libbsd.a
-rm -f $RPM_BUILD_ROOT%{_sysconfdir}/localtime
-
# make symlinks across top-level directories absolute
-for l in anl BrokenLocale crypt dl m nsl pthread resolv rt thread_db util ; do
+for l in anl BrokenLocale crypt dl m nsl resolv rt thread_db util ; do
rm -f $RPM_BUILD_ROOT%{_libdir}/lib${l}.so
ln -sf /%{_lib}/`cd $RPM_BUILD_ROOT/%{_lib} ; echo lib${l}.so.*` $RPM_BUILD_ROOT%{_libdir}/lib${l}.so
done
install %{SOURCE2} $RPM_BUILD_ROOT/etc/rc.d/init.d/nscd
install %{SOURCE3} $RPM_BUILD_ROOT/etc/sysconfig/nscd
install %{SOURCE4} $RPM_BUILD_ROOT/etc/logrotate.d/nscd
-install ../nscd/nscd.conf $RPM_BUILD_ROOT%{_sysconfdir}
-install ../nss/nsswitch.conf $RPM_BUILD_ROOT%{_sysconfdir}
+install nscd/nscd.conf $RPM_BUILD_ROOT%{_sysconfdir}
+install nss/nsswitch.conf $RPM_BUILD_ROOT%{_sysconfdir}
bzip2 -dc %{SOURCE5} | tar xf - -C $RPM_BUILD_ROOT%{_mandir}
-bzip2 -dc %{SOURCE6} | tar xf - -C $RPM_BUILD_ROOT%{_mandir}
> $RPM_BUILD_ROOT%{_sysconfdir}/ld.so.cache
-> $RPM_BUILD_ROOT%{_sysconfdir}/ld.so.conf
+install -d $RPM_BUILD_ROOT%{_sysconfdir}/ld.so.conf.d
+echo 'include ld.so.conf.d/*.conf' > $RPM_BUILD_ROOT%{_sysconfdir}/ld.so.conf
rm -f $RPM_BUILD_ROOT%{_mandir}/hu/man7/man.7
:> $RPM_BUILD_ROOT/var/log/nscd
+:> $RPM_BUILD_ROOT/var/lib/nscd/passwd
+:> $RPM_BUILD_ROOT/var/lib/nscd/group
+:> $RPM_BUILD_ROOT/var/lib/nscd/hosts
-rm -rf ../documentation
-install -d ../documentation
+rm -rf documentation
+install -d documentation
-%if %{without nptl}
-cp -f ../linuxthreads/ChangeLog ../documentation/ChangeLog.threads
-cp -f ../linuxthreads/Changes ../documentation/Changes.threads
-cp -f ../linuxthreads/README ../documentation/README.threads
-%endif
-cp -f ../crypt/README.ufc-crypt ../documentation/
-
-cp -f ../ChangeLog* ../documentation
+for f in ANNOUNCE ChangeLog DESIGN-{barrier,condvar,rwlock,sem}.txt TODO{,-kernel,-testing}; do
+ cp -f nptl/$f documentation/$f.nptl
+done
+cp -f crypt/README.ufc-crypt ChangeLog* documentation
rm -f $RPM_BUILD_ROOT%{_libdir}/libnss_*.so
# strip ld.so with --strip-debug only (other ELFs are stripped by rpm):
-%ifnarch sparc64
%{!?debug:strip -g -R .comment -R .note $RPM_BUILD_ROOT/%{_lib}/ld-*.so}
-%endif
# Collect locale files and mark them with %%lang()
-rm -f ../glibc.lang
-echo '%defattr(644,root,root,755)' > ../glibc.lang
+rm -f glibc.lang
+echo '%defattr(644,root,root,755)' > glibc.lang
for i in $RPM_BUILD_ROOT%{_datadir}/locale/* $RPM_BUILD_ROOT%{_libdir}/locale/* ; do
if [ -d $i ]; then
lang=`echo $i | sed -e 's/.*locale\///' -e 's/\/.*//'`
fi
fi
dir=`echo $i | sed "s#$RPM_BUILD_ROOT##"`
- echo "%lang($lang) $dir" >> ../glibc.lang
+ echo "%lang($lang) $dir" >> glibc.lang
fi
done
# XXX: to be added when become supported by glibc
-# tk, yo (used by GNOME)
-# ven -> ve (used by KDE)
+# as (atk, gail)
+# az_IR (gtk+)
+# dv, haw, kok, ps (iso-codes)
+# my (gaim)
+# tk, ug, yo (used by GNOME)
+#
# NOTES:
-# bn is used for bn_BD or bn_IN?
+# bn is used for bn_BD or bn_IN? Assume bn_IN as nothing for bn_BD appeared
+# till now
+#
# omitted here - already existing (with libc.mo):
-# be,ca,cs,da,de,el,en_GB,es,fi,fr,gl,hr,hu,it,ja,ko,nb,nl,pl,pt_BR,sk,sv,tr,zh_CN,zh_TW
-for i in af am ang ar az bg bn br bs cy de_AT en en@boldquot en@quot en_AU \
- en_CA en_US eo es_AR es_MX et eu fa fo ga gu he hi hsb ia id is ka kn \
- leet lg li lo lt lv mi mk ml mn mr ms mt nds ne nn nso or pa pt ro ru se \
- sl sq sr sr@Latn sr@ije ss ta tg th tlh uk uz ve vi wa xh yi zu ; do
+# be,ca,cs,da,de,el,en_GB,es,fi,fr,gl,hr,hu,it,ja,ko,nb,nl,pl,pt_BR,sk,sv,
+# tr,zh_CN,zh_TW
+#
+for i in aa af am ang ar az bg bn bn_IN br bs byn cy de_AT dz en en@boldquot \
+ en@quot en_AU en_CA en_US eo es_AR es_MX es_NI et eu fa fo fr_BE fy ga \
+ gez gu gv he hi hsb hy ia id is it_CH iu ka kk kl km kn ku kw ky leet lg li \
+ lo lt lv mg mi mk ml mn mr ms mt nds ne nl_BE nn nso oc om or pa pt rm ro \
+ ru rw sa se sid sl so sq sr sr@Latn sr@ije ss syr sw ta te tg th ti tig \
+ tl tlh tt uk ur uz ve vi wa wal xh yi zh_HK zu ; do
if [ ! -d $RPM_BUILD_ROOT%{_datadir}/locale/$i/LC_MESSAGES ]; then
install -d $RPM_BUILD_ROOT%{_datadir}/locale/$i/LC_MESSAGES
lang=`echo $i | sed -e 's/_.*//'`
- echo "%lang($lang) %{_datadir}/locale/$i" >> ../glibc.lang
+ echo "%lang($lang) %{_datadir}/locale/$i" >> glibc.lang
fi
done
-cd $RPM_BUILD_ROOT%{_datadir}/locale
-ln -s zh_CN zh_SG
-ln -s zh_CN zh_HK
-cd -
# localedb-gen infrastructure
-install %{SOURCE7} $RPM_BUILD_ROOT%{_bindir}/localedb-gen
-install ../localedata/SUPPORTED $RPM_BUILD_ROOT%{_datadir}/i18n
+install %{SOURCE6} $RPM_BUILD_ROOT%{_bindir}/localedb-gen
+install localedata/SUPPORTED $RPM_BUILD_ROOT%{_datadir}/i18n
# shutup check-files
rm -f $RPM_BUILD_ROOT%{_mandir}/README.*
# we don't support kernel without ptys support
rm -f $RPM_BUILD_ROOT%{_libdir}/pt_chown
-# no longer supported (/dev/null has the same, but expected behaviour)
-rm -f $RPM_BUILD_ROOT%{_bindir}/glibcbug
-
%clean
rm -rf $RPM_BUILD_ROOT
# don't run iconvconfig in %%postun -n iconv because iconvconfig doesn't exist
# when %%postun is run
-%ifnarch sparc64
-%ifarch amd64
-%post -n %{name}64 -p /sbin/postshell
-%else
+%if %{without cross}
%post -p /sbin/postshell
-%endif
+/sbin/glibc-postinst /%{_lib}/%{_host_cpu}
/sbin/ldconfig
-/sbin/telinit u
-%ifarch amd64
-%postun -n %{name}64 -p /sbin/postshell
-%else
%postun -p /sbin/postshell
-%endif
/sbin/ldconfig
-/sbin/telinit u
-%ifarch amd64
-%triggerpostun -n %{name}64 -p /sbin/postshell -- glibc-misc < 6:2.3.4-0.20040505.1
-%else
-%triggerpostun -p /sbin/postshell -- glibc-misc < 6:2.3.4-0.20040505.1
+%triggerpostun -p /sbin/postshell -- glibc-misc < 6:2.3.5-7.6
+-/bin/cp -f /etc/ld.so.conf /etc/ld.so.conf.rpmsave
+-/bin/sed -i -e '1iinclude ld.so.conf.d/*.conf' /etc/ld.so.conf
%endif
--/bin/mv %{_sysconfdir}/ld.so.conf.rpmsave %{_sysconfdir}/ld.so.conf
%post memusage -p /sbin/ldconfig
-%postun memusage -p /sbin/ldconfig
+%postun memusage -p /sbin/ldconfig
%post -n iconv -p %{_sbindir}/iconvconfig
%postun devel
[ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
+%pre -n nscd
+%groupadd -P nscd -g 144 -r nscd
+%useradd -P nscd -u 144 -r -d /tmp -s /bin/false -c "nscd" -g nscd nscd
+
%post -n nscd
/sbin/chkconfig --add nscd
touch /var/log/nscd
chmod 000 /var/log/nscd
chown root:root /var/log/nscd
chmod 640 /var/log/nscd
-if [ -f /var/lock/subsys/nscd ]; then
- /etc/rc.d/init.d/nscd restart 1>&2
-else
- echo "Run \"/etc/rc.d/init.d/nscd start\" to start nscd daemon." 1>&2
-fi
+%service nscd restart "nscd daemon"
%preun -n nscd
if [ "$1" = "0" ]; then
- if [ -f /var/lock/subsys/nscd ]; then
- /etc/rc.d/init.d/nscd stop 1>&2
- fi
+ %service nscd stop
/sbin/chkconfig --del nscd
fi
-%endif
-%ifnarch sparc64
-%ifarch amd64
-%files -n glibc64
-%defattr(644,root,root,755)
-%else
+%postun -n nscd
+if [ "$1" = "0" ]; then
+ %userremove nscd
+ %groupremove nscd
+fi
+
%files
%defattr(644,root,root,755)
-%endif
-%defattr(644,root,root,755)
%doc README NEWS FAQ BUGS
+%if %{without cross}
%attr(755,root,root) /sbin/postshell
+%attr(755,root,root) /sbin/glibc-postinst
+%endif
%attr(755,root,root) /sbin/ldconfig
# ld* and libc.so.6 SONAME symlinks must be in package because of
# chicken-egg problem (postshell is dynamically linked with libc);
+# NOTE: postshell is now linked statically with diet
# ld-*.so SONAME is:
# ld.so.1 on ppc
# ld64.so.1 on ppc64,s390x
# ld-linux-ia64.so.2 on ia64
-# ld-linux-x86-64.so.2 on amd64
+# ld-linux-x86-64.so.2 on x86_64
# ld-linux.so.2 on other archs
%attr(755,root,root) /%{_lib}/ld*
%attr(755,root,root) /%{_lib}/libanl*
%attr(755,root,root) /%{_lib}/libnsl*
%attr(755,root,root) /%{_lib}/lib[BScmprtu]*
%{?with_localedb:%dir %{_libdir}/locale}
-%config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/ld.so.conf
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/ld.so.conf
+%dir %{_sysconfdir}/ld.so.conf.d
%ghost %{_sysconfdir}/ld.so.cache
#%files -n nss_dns
%defattr(644,root,root,755)
%attr(755,root,root) /%{_lib}/libnss_files*.so*
-
%files misc -f %{name}.lang
%defattr(644,root,root,755)
-%config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/nsswitch.conf
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/nsswitch.conf
%config %{_sysconfdir}/rpc
%attr(755,root,root) /sbin/sln
%attr(755,root,root) %{_bindir}/catchsegv
+%attr(755,root,root) %{_bindir}/getconf
%attr(755,root,root) %{_bindir}/getent
%attr(755,root,root) %{_bindir}/iconv
%attr(755,root,root) %{_bindir}/ldd
-%ifnarch alpha amd64 ia64 ppc sparc64
+%ifarch %{ix86} m68k sparc sparcv9
%attr(755,root,root) %{_bindir}/lddlibc4
%endif
%attr(755,root,root) %{_bindir}/locale
%attr(755,root,root) %{_sbindir}/zdump
%attr(755,root,root) %{_sbindir}/zic
+%dir %{_libexecdir}/getconf
+%attr(755,root,root) %{_libexecdir}/getconf/*
+
%dir %{_datadir}/locale
%{_datadir}/locale/locale.alias
-%{_datadir}/zoneinfo
-%exclude %{_datadir}/zoneinfo/right
%{_mandir}/man1/catchsegv.1*
+%{_mandir}/man1/getconf.1*
%{_mandir}/man1/getent.1*
%{_mandir}/man1/iconv.1*
%{_mandir}/man1/ldd.1*
%lang(cs) %{_mandir}/cs/man7/*
%lang(de) %{_mandir}/de/man5/tzfile.5*
%lang(de) %{_mandir}/de/man7/*
+%lang(es) %{_mandir}/es/man1/ldd.1*
%lang(es) %{_mandir}/es/man5/locale.5*
%lang(es) %{_mandir}/es/man5/nsswitch.conf.5*
%lang(es) %{_mandir}/es/man5/tzfile.5*
%lang(ja) %{_mandir}/ja/man8/tzselect.8*
%lang(ja) %{_mandir}/ja/man8/zdump.8*
%lang(ja) %{_mandir}/ja/man8/zic.8*
+%lang(ko) %{_mandir}/ko/man1/ldd.1*
%lang(ko) %{_mandir}/ko/man5/nsswitch.conf.5*
%lang(ko) %{_mandir}/ko/man5/tzfile.5*
%lang(ko) %{_mandir}/ko/man7/*
%lang(pt) %{_mandir}/pt/man8/tzselect.8*
%lang(pt) %{_mandir}/pt/man8/zdump.8*
%lang(pt) %{_mandir}/pt/man8/zic.8*
+%lang(ru) %{_mandir}/ru/man1/getent.1*
+%lang(ru) %{_mandir}/ru/man1/iconv.1*
+%lang(ru) %{_mandir}/ru/man1/ldd.1*
+%lang(ru) %{_mandir}/ru/man1/locale.1*
+%lang(ru) %{_mandir}/ru/man1/rpcgen.1*
+%lang(ru) %{_mandir}/ru/man5/locale.5*
%lang(ru) %{_mandir}/ru/man5/nsswitch.conf.5*
%lang(ru) %{_mandir}/ru/man5/tzfile.5*
%lang(ru) %{_mandir}/ru/man7/*
+%lang(ru) %{_mandir}/ru/man8/ld*.8*
+%lang(ru) %{_mandir}/ru/man8/rpcinfo.8*
%lang(ru) %{_mandir}/ru/man8/tzselect.8*
%lang(ru) %{_mandir}/ru/man8/zdump.8*
%lang(ru) %{_mandir}/ru/man8/zic.8*
+%lang(tr) %{_mandir}/tr/man1/iconv.1*
+%lang(tr) %{_mandir}/tr/man1/ldd.1*
%lang(zh_CN) %{_mandir}/zh_CN/man1/iconv.1*
%lang(zh_CN) %{_mandir}/zh_CN/man1/ldd.1*
%lang(zh_CN) %{_mandir}/zh_CN/man5/locale.5*
%lang(zh_CN) %{_mandir}/zh_CN/man8/zdump.8*
%lang(zh_CN) %{_mandir}/zh_CN/man8/zic.8*
-%files zoneinfo_right
-%defattr(644,root,root,755)
-%{_datadir}/zoneinfo/right
-
%files -n nss_compat
%defattr(644,root,root,755)
%attr(755,root,root) /%{_lib}/libnss_compat*.so*
%files devel
%defattr(644,root,root,755)
-%doc documentation/* NOTES PROJECTS
-%attr(755,root,root) %{_bindir}/gencat
-%attr(755,root,root) %{_bindir}/getconf
-%attr(755,root,root) %{_bindir}/*prof*
-%attr(755,root,root) %{_bindir}/*trace
+%attr(755,root,root) %{_libdir}/lib[!cmp]*.so
+%attr(755,root,root) %{_libdir}/libcrypt.so
+%attr(755,root,root) %{_libdir}/libm.so
+%attr(755,root,root) %{_libdir}/libpcprofile.so
+%attr(755,root,root) %{_libdir}/*crt*.o
+# ld scripts
+%{_libdir}/libc.so
+%{_libdir}/libpthread.so
+%{_libdir}/libbsd-compat.a
+%{_libdir}/libbsd.a
+%{_libdir}/libc_nonshared.a
+%{_libdir}/libg.a
+%{_libdir}/libieee.a
+%ifarch alpha ppc sparc
+%{_libdir}/libnldbl_nonshared.a
+%endif
+%{_libdir}/libpthread_nonshared.a
+%{_libdir}/librpcsvc.a
+%ifarch %{ix86} %{x8664} ppc ppc64 s390 s390x sparc sparcv9 sparc64
+%{_includedir}/gnu/stubs-*.h
+%endif
+%files headers
+%defattr(644,root,root,755)
%{_includedir}/*.h
%ifarch alpha
%{_includedir}/alpha
%endif
%{_includedir}/arpa
%{_includedir}/bits
-%{_includedir}/gnu
+%dir %{_includedir}/gnu
+%{_includedir}/gnu/lib*.h
+%{_includedir}/gnu/stubs.h
%{_includedir}/net
%{_includedir}/netash
%{_includedir}/netatalk
%{_includedir}/scsi
%{_includedir}/sys
-%{_infodir}/libc.info*
+%files devel-utils
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_bindir}/gencat
+%attr(755,root,root) %{_bindir}/*prof*
+%attr(755,root,root) %{_bindir}/*trace
-%attr(755,root,root) %{_libdir}/lib[!m]*.so
-%attr(755,root,root) %{_libdir}/libm.so
-%attr(755,root,root) %{_libdir}/*crt*.o
-%{_libdir}/libbsd-compat.a
-%{_libdir}/libbsd.a
-%{_libdir}/libc_nonshared.a
-%{_libdir}/libg.a
-%{_libdir}/libieee.a
-%{_libdir}/libpthread_nonshared.a
-%{_libdir}/librpcsvc.a
+%files devel-doc
+%defattr(644,root,root,755)
+%doc documentation/* NOTES PROJECTS
+%{_infodir}/libc.info*
-%{_mandir}/man1/getconf.1*
%{_mandir}/man1/sprof.1*
%{_mandir}/man3/*
%lang(cs) %{_mandir}/cs/man3/*
%lang(nl) %{_mandir}/nl/man3/*
%lang(pl) %{_mandir}/pl/man3/*
%lang(pt) %{_mandir}/pt/man3/*
+%lang(ru) %{_mandir}/ru/man1/sprof.1*
%lang(ru) %{_mandir}/ru/man3/*
+%lang(tr) %{_mandir}/tr/man3/*
%lang(uk) %{_mandir}/uk/man3/*
%lang(zh_CN) %{_mandir}/zh_CN/man3/*
%files -n nscd
%defattr(644,root,root,755)
-%attr(640,root,root) %config %verify(not md5 size mtime) /etc/sysconfig/nscd
-%attr(640,root,root) %config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/nscd.*
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/nscd
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/nscd.*
%attr(754,root,root) /etc/rc.d/init.d/nscd
%attr(755,root,root) %{_sbindir}/nscd*
-%attr(640,root,root) %config(noreplace) %verify(not size mtime md5) /etc/logrotate.d/nscd
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/nscd
%attr(640,root,root) %ghost /var/log/nscd
%dir /var/run/nscd
+%dir /var/lib/nscd
+%attr(600,root,root) %ghost /var/lib/nscd/passwd
+%attr(600,root,root) %ghost /var/lib/nscd/group
+%attr(600,root,root) %ghost /var/lib/nscd/hosts
%{_mandir}/man5/nscd.conf.5*
%{_mandir}/man8/nscd.8*
%{_mandir}/man8/nscd_nischeck.8*
+%lang(es) %{_mandir}/es/man5/nscd.conf.5*
+%lang(es) %{_mandir}/es/man8/nscd.8*
%lang(fr) %{_mandir}/fr/man5/nscd.conf.5*
%lang(fr) %{_mandir}/fr/man8/nscd.8*
%lang(ja) %{_mandir}/ja/man5/nscd.conf.5*
%lang(ja) %{_mandir}/ja/man8/nscd.8*
%lang(pt) %{_mandir}/pt/man5/nscd.conf.5*
%lang(pt) %{_mandir}/pt/man8/nscd.8*
+%lang(ru) %{_mandir}/ru/man5/nscd.conf.5*
+%lang(ru) %{_mandir}/ru/man8/nscd.8*
+%lang(zh_CN) %{_mandir}/zh_CN/man5/nscd.conf.5*
%files -n localedb-src
%defattr(644,root,root,755)
%attr(755,root,root) %{_bindir}/localedb-gen
%{_datadir}/i18n
%{_mandir}/man1/localedef.1*
+%lang(ru) %{_mandir}/ru/man1/localedef.1*
%if %{with localedb}
%files localedb-all
%{_libdir}/librt.a
%{_libdir}/libutil.a
-%if %{without nptl}
%files profile
%defattr(644,root,root,755)
%{_libdir}/lib*_p.a
-%endif
%files pic
%defattr(644,root,root,755)
%{_libdir}/lib*.map
%{_libdir}/soinit.o
%{_libdir}/sofini.o
-
-%else
-
-%files -n glibc64
-%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/ld-*
-%attr(755,root,root) %{_libdir}/libanl*
-%attr(755,root,root) %{_libdir}/libdl*
-%attr(755,root,root) %{_libdir}/libnsl*
-%attr(755,root,root) %{_libdir}/lib[BScmprtu]*
-%attr(755,root,root) %{_libdir}/libnss_dns*.so*
-%attr(755,root,root) %{_libdir}/libnss_files*.so*
-
-%files -n glibc64-devel
-%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/lib[!m]*.so
-%attr(755,root,root) %{_libdir}/libm.so
-%attr(755,root,root) %{_libdir}/*crt*.o
-%{_libdir}/libbsd-compat.a
-%{_libdir}/libbsd.a
-%{_libdir}/libc_nonshared.a
-%{_libdir}/libg.a
-%{_libdir}/libieee.a
-%{_libdir}/libpthread_nonshared.a
-%{_libdir}/librpcsvc.a
-
-%files -n glibc64-static
-%defattr(644,root,root,755)
-%{_libdir}/libanl.a
-%{_libdir}/libBrokenLocale.a
-%{_libdir}/libc.a
-%{_libdir}/libcrypt.a
-%{_libdir}/libdl.a
-%{_libdir}/libm.a
-%{_libdir}/libmcheck.a
-%{_libdir}/libnsl.a
-%{_libdir}/libpthread.a
-%{_libdir}/libresolv.a
-%{_libdir}/librt.a
-%{_libdir}/libutil.a
-%endif