-%define min_kernel 2.2.0
+#
+# You can define min_kernel macro by "rpm --define 'min_kernel version'"
+# default is 2.2.0 (no changes up to 2.3.25)
+
+%{!?min_kernel:%define min_kernel 2.2.0}
+
Summary: GNU libc
Summary(de): GNU libc
Summary(fr): GNU libc
Summary(pl): GNU libc
+Summary(ru): GNU libc ×ÅÒÓÉÉ 2.3
Summary(tr): GNU libc
+Summary(uk): GNU libc ×ÅÒÓ¦§ 2.3
Name: glibc
-Version: 2.2.4
-Release: 4
+Version: 2.3.1
+Release: 2
+Epoch: 6
License: LGPL
Group: Libraries
-Group(de): Libraries
-Group(fr): Librairies
-Group(pl): Biblioteki
-Source0: ftp://sources.redhat.com/pub/glibc/releases/%{name}-%{version}.tar.gz
-Source1: ftp://sources.redhat.com/pub/glibc/releases/%{name}-linuxthreads-%{version}.tar.gz
+Source0: ftp://sources.redhat.com/pub/glibc/releases/%{name}-%{version}.tar.bz2
+Source1: ftp://sources.redhat.com/pub/glibc/releases/%{name}-linuxthreads-%{version}.tar.bz2
Source2: nscd.init
Source3: nscd.sysconfig
Source4: nscd.logrotate
-Source5: ldconfig.8
-Source6: %{name}-man-pages.tar.gz
-Source7: %{name}-non-english-man-pages.tar.gz
+Source5: http://www.mif.pg.gda.pl/homepages/ankry/man-PLD/%{name}-man-pages.tar.bz2
+Source6: http://www.mif.pg.gda.pl/homepages/ankry/man-PLD/%{name}-non-english-man-pages.tar.bz2
+# borrowed from util-linux
+Source7: sln.8
Patch0: %{name}-info.patch
Patch1: %{name}-versions.awk_fix.patch
Patch2: %{name}-pld.patch
Patch4: %{name}-string2-pointer-arith.patch
Patch5: %{name}-linuxthreads-lock.patch
Patch6: %{name}-pthread_create-manpage.patch
-Patch7: %{name}-sparc-linux-chown.patch
-Patch8: %{name}-ldconfig-bklinks.patch
Patch9: %{name}-paths.patch
Patch10: %{name}-vaargs.patch
-# Patch11: %{name}-malloc.patch
+Patch11: %{name}-getaddrinfo-workaround.patch
+Patch12: %{name}-postshell.patch
+Patch13: %{name}-pl.po-update.patch
+Patch14: %{name}-missing-nls.patch
URL: http://www.gnu.org/software/libc/
+BuildRequires: binutils >= 2.13.90.0.2
+BuildRequires: gcc >= 3.2
BuildRequires: gd-devel >= 2.0.1
BuildRequires: gettext-devel >= 0.10.36
BuildRequires: libpng-devel
BuildRequires: perl
-BuildRequires: rpm-build >= 4.0-11
+BuildRequires: rpm-build >= 4.0.2-46
BuildRequires: texinfo
Provides: ld.so.2
Provides: ldconfig
Obsoletes: %{name}-debug
Obsoletes: ldconfig
Autoreq: false
-Prereq: basesystem
+PreReq: basesystem
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
Conflicts: kernel < %{min_kernel}
+Conflicts: man-pages < 1.43
+Conflicts: ld.so < 1.9.9-10
+
+%define debugcflags -O1 -g
+%define configuredir %{u2p:%{_builddir}}/%{name}-%{version}/
+#define parallelmkflags PARALLELMFLAGS="-j 4"
+%define parallelmkflags %{nil}
%description
Contains the standard libraries that are used by multiple programs on
Znajduj± siê tutaj równie¿ definicje ró¿nych informacji dla wielu
jêzyków (locale) oraz definicje stref czasowych.
+%description -l ru
+óÏÄÅÒÖÉÔ ÓÔÁÎÄÁÒÔÎÙÅ ÂÉÂÌÉÏÔÅËÉ, ÉÓÐÏÌØÚÕÅÍÙÅ ÍÎÏÇÏÞÉÓÌÅÎÎÙÍÉ
+ÐÒÏÇÒÁÍÍÁÍÉ × ÓÉÓÔÅÍÅ. äÌÑ ÔÏÇÏ, ÞÔÏÂÙ ÓÏÈÒÁÎÉÔØ ÄÉÓËÏ×ÏÅ ÐÒÏÓÔÒÁÎÓÔ×Ï
+É ÐÁÍÑÔØ, Á ÔÁËÖÅ ÄÌÑ ÐÒÏÓÔÏÔÙ ÏÂÎÏ×ÌÅÎÉÑ, ÓÉÓÔÅÍÎÙÊ ËÏÄ, ÏÂÝÉÊ ÄÌÑ
+×ÓÅÈ ÐÒÏÇÒÁÍÍ, ÈÒÁÎÉÔÓÑ × ÏÄÎÏÍ ÍÅÓÔÅ É ËÏÌÌÅËÔÉ×ÎÏ ÉÓÐÏÌØÚÕÅÔÓÑ ×ÓÅÍÉ
+ÐÒÏÇÒÁÍÍÁÍÉ. üÔÏÔ ÐÁËÅÔ ÓÏÄÅÒÖÉÔ ÎÁÉÂÏÌÅÅ ×ÁÖÎÙÅ ÉÚ ÒÁÚÄÅÌÑÅÍÙÈ
+ÂÉÂÌÉÏÔÅË - ÓÔÁÎÄÁÒÔÎÕÀ ÂÉÂÌÉÏÔÅËÕ C É ÓÔÁÎÄÁÒÔÎÕÀ ÂÉÂÌÉÏÔÅËÕ
+ÍÁÔÅÍÁÔÉËÉ. âÅÚ ÜÔÉÈ ÂÉÂÌÉÏÔÅË Linux ÆÕÎËÃÉÏÎÉÒÏ×ÁÔØ ÎÅ ÂÕÄÅÔ. ôÁËÖÅ
+ÐÁËÅÔ ÓÏÄÅÒÖÉÔ ÐÏÄÄÅÒÖËÕ ÎÁÃÉÏÎÁÌØÎÙÈ ÑÚÙËÏ× (locale) É ÂÁÚÙ ÄÁÎÎÙÈ
+×ÒÅÍÅÎÎÙÈ ÚÏÎ (timezone databases).
+
%description -l tr
Bu paket, birçok programýn kullandýðý standart kitaplýklarý içerir.
Disk alaný ve bellek kullanýmýný azaltmak ve ayný zamanda güncelleme
içerir. Bu kitaplýklar olmadan Linux sistemi çalýþmayacaktýr. Yerel
dil desteði ve zaman dilimi veri tabaný da bu pakette yer alýr.
+%description -l uk
+í¦ÓÔÉÔØ ÓÔÁÎÄÁÒÔΦ ¦Â̦ÏÔÅËÉ, ËÏÔÒ¦ ×ÉËÏÒÉÓÔÏ×ÕÀÔØÓÑ ÞÉÓÌÅÎÎÉÍÉ
+ÐÒÏÇÒÁÍÁÍÉ × ÓÉÓÔÅͦ. äÌÑ ÔÏÇÏ, ÝÏ ÚÂÅÒÅÇÔÉ ÄÉÓËÏ×ÉÊ ÐÒÏÓÔ¦Ò ÔÁ
+ÐÁÍ'ÑÔØ, Á ÔÁËÏÖ ÄÌÑ ÐÒÏÓÔÏÔÉ ÐÏÎÏ×ÌÅÎÎÑ ÓÉÓÔÅÍÉ, ÓÉÓÔÅÍÎÉÊ ËÏÄ,
+ÓЦÌØÎÉÊ ÄÌÑ ×Ó¦È ÐÒÏÇÒÁÍ, ÚÂÅÒ¦ÇÁ¤ÔØÓÑ × ÏÄÎÏÍÕ Í¦Óæ ¦ ËÏÌÅËÔÉ×ÎÏ
+×ÉËÏÒÉÓÔÏ×Õ¤ÔØÓÑ ×Ó¦ÍÁ ÐÒÏÇÒÁÍÁÍÉ. ãÅÊ ÐÁËÅÔ Í¦ÓÔÉÔØ ÎÁʦÌØÛ ×ÁÖÌÉצ
+Ú ÄÉÎÁͦÞÎÉÈ Â¦Â̦ÏÔÅË - ÓÔÁÎÄÁÒÔÎÕ Â¦Â̦ÏÔÅËÕ ó ÔÁ ÓÔÁÎÄÁÒÔÎÕ
+¦Â̦ÏÔÅËÕ ÍÁÔÅÍÁÔÉËÉ. âÅÚ ÃÉÈ Â¦Â̦ÏÔÅË Linux ÆÕÎËæÏÎÕ×ÁÔÉ ÎÅ ÂÕÄÅ.
+ôÁËÏÖ ÐÁËÅÔ Í¦ÓÔÉÔØ Ð¦ÄÔÒÉÍËÕ ÎÁæÏÎÁÌØÎÉÈ ÍÏ× (locale) ÔÁ ÂÁÚÉ ÄÁÎÎÉÈ
+ÞÁÓÏ×ÉÈ ÚÏÎ (timezone databases).
+
%package devel
Summary: Additional libraries required to compile
Summary(de): Weitere Libraries zum Kompilieren
Summary(fr): Librairies supplémentaires nécessaires à la compilation.
Summary(pl): Dodatkowe biblioteki wymagane podczas kompilacji
+Summary(ru): äÏÐÏÌÎÉÔÅÌØÎÙÅ ÂÉÂÌÉÏÔÅËÉ, ÎÅÏÂÈÏÄÉÍÙÅ ÄÌÑ ËÏÍÐÉÌÑÃÉÉ
Summary(tr): Geliþtirme için gerekli diðer kitaplýklar
+Summary(uk): äÏÄÁÔËÏצ ¦Â̦ÏÔÅËÉ, ÐÏÔÒ¦ÂΦ ÄÌÑ ËÏÍЦÌÑæ§
Group: Development/Libraries
-Group(de): Entwicklung/Libraries
-Group(fr): Development/Librairies
-Group(pl): Programowanie/Biblioteki
Requires: %{name} = %{version}
%description devel
nag³ówkowe oraz pliki objektowe, niezbêdne do kompilacji programów
wykonywalnych i innych bibliotek.
+%description devel -l ru
+äÌÑ ÒÁÚÒÁÂÏÔËÉ ÐÒÏÇÒÁÍÍ, ÉÓÐÏÌØÚÕÀÝÉÈ ÓÔÁÎÄÁÒÔÎÙÅ ÂÉÂÌÉÏÔÅËÉ C (Á
+ÐÒÁËÔÉÞÅÓËÉ ×ÓÅ ÐÒÏÇÒÁÍÍÙ ÉÈ ÉÓÐÏÌØÚÕÀÔ), ÓÉÓÔÅÍÅ îåïâèïäéíù ÈÅÄÅÒÙ É
+ÏÂßÅËÔÎÙÅ ÆÁÊÌÙ, ÓÏÄÅÒÖÁÝÉÅÓÑ × ÜÔÏÍ ÐÁËÅÔÅ, ÞÔÏÂÙ ÓÏÚÄÁ×ÁÔØ
+ÉÓÐÏÌÎÑÅÍÙÅ ÆÁÊÌÙ.
+
%description devel -l tr
C kitaplýðýný kullanan (ki hemen hemen hepsi kullanýyor) programlar
geliþtirmek için gereken standart baþlýk dosyalarý ve statik
kitaplýklar.
+%description devel -l uk
+äÌÑ ÒÏÚÒÏÂËÉ ÐÒÏÇÒÁÍ, ÝÏ ×ÉËÏÒÉÓÔÏ×ÕÀÔØ ÓÔÁÎÄÁÒÔΦ ¦Â̦ÏÔÅËÉ C
+(ÐÒÁËÔÉÞÎÏ ×Ó¦ ÐÒÏÇÒÁÍÉ §È ×ÉËÏÒÉÓÔÏ×ÕÀÔØ), ÓÉÓÔÅͦ îåïâè¶äî¶ ÈÅÄÅÒÉ
+ÔÁ ÏÂ'¤ËÔΦ ÆÁÊÌÉ, ÝÏ Í¦ÓÔÑÔØÓÑ × ÃØÏÍÕ ÐÁËÅÔ¦, ÃÏ ÓÔ×ÏÒÀ×ÁÔÉ
+×ÉËÏÎÕ×ÁΦ ÆÁÊÌÉ.
+
%package -n nscd
Summary: Name Service Caching Daemon
-Summary(pl): Name Service Caching Daemon
+Summary(pl): Demon zapamiêtuj±cy odpowiedzi serwisów nazw
+Summary(ru): ëÜÛÉÒÕÀÝÉÊ ÄÅÍÏÎ ÓÅÒ×ÉÓÏ× ÉÍÅÎ
+Summary(uk): ëÅÛÕÀÞÉÊ ÄÅÍÏÎ ÓÅ×¦Ó¦× ¦ÍÅÎ
Group: Networking/Daemons
-Group(de): Netzwerkwesen/Server
-Group(pl): Sieciowe/Serwery
-Prereq: /sbin/chkconfig
-Prereq: rc-scripts >= 0.2.0
+PreReq: /sbin/chkconfig
+PreReq: rc-scripts >= 0.2.0
Requires: %{name} = %{version}
+Requires(post): fileutils
%description -n nscd
nscd caches name service lookups; it can dramatically improve
nscd happens to hit these bugs particularly hard.
%description -n nscd -l pl
-nscd zapmiêtuje zapytania i odpowiedzi NIS oraz DNS. Pozwala
+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 ods³udze w±tków.
+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.
+
+%description -n nscd -l ru
+nscd ËÜÛÉÒÕÅÔ ÒÅÚÕÌØÔÁÔÙ ÚÁÐÒÏÓÏ× Ë ÓÅÒ×ÉÓÁÍ ÉÍÅÎ; ÜÔÏ ÍÏÖÅÔ ÒÅÚËÏ
+Õ×ÅÌÉÞÉÔØ ÐÒÏÉÚ×ÏÄÉÔÅÌØÎÏÓÔØ ÒÁÂÏÔÙ Ó NIS+ É, ÔÁËÖÅ, ÍÏÖÅÔ ÐÏÍÏÞØ Ó
+DNS.
+
+%description -n nscd -l uk
+nscd ËÅÛÕ¤ ÒÅÚÕÌØÔÁÔÉ ÚÁÐÒÏÓ¦× ÄÏ ÓÅÒ×¦Ó¦× ¦ÍÅÎ; ÃÅ ÍÏÖÅ ÓÉÌØÎÏ
+Ú¦ÌØÛÉÔÉ Û×ÉÄ˦ÓÔØ ÒÏÂÏÔÉ Ú NIS+ ¦, ÔÁËÏÖ, ÍÏÖÅ ÄÏÐÏÍÏÇÔÉ Ú DNS.
%package -n localedb-src
-Summary: Souce code locale database
+Summary: locale database source code
Summary(pl): Kod ¼ród³owy bazy locale
Group: Daemons
-Group(de): Server
-Group(pl): Serwery
Requires: %{name} = %{version}
%description -n localedb-src
This add-on package contains the data needed to build the locale data
files to use the internationalization features of the GNU libc. glibc
-package contains standard set of locale binary database and You need
-this package if want build some non standard locale database.
+package contains standard set of locale binary database so you need
+this package only when you want to build some non-standard locale
+database.
%description -n localedb-src -l pl
-Pakiet ten kod ¼ród³owy baz locale który jest potrzebny do zbudowania
-binarnej wersji baz locale potrzebnej do poprawnego wspierania ró¿nych
-jêzyków przez glibc. Pakiet glibc zawira binarn± wersjê standardowych
-baz locale i ten pakiet jest potrzebny tylko w sytuacji kiedy potrzeba
-wygenerowaæ jak±¶ niestandardow± bazê.
+Pakiet ten zawiera dane niezbêdne do zbudowania binarnych plików
+lokalizacyjnych, by móc wykorzystaæ mo¿liwo¶ci oferowane przez GNU
+libc. glibc zawiera standardowy zestaw binarnych baz lokalizacyjnych,
+w zwi±zku z czym ten pakiet jest potrzebny tylko w sytuacji budowania
+jakiej¶ niestandardowej bazy.
%package -n iconv
Summary: Convert encoding of given files from one encoding to another
Summary(pl): Program do konwersji plików tekstowych z jednego kodowania do innego
-Group: Daemons
-Group(de): Server
-Group(pl): Serwery
+Group: Applications/Text
Requires: %{name} = %{version}
%description -n iconv
Convert encoding of given files from one encoding to another. You need
-this package if You want to convert some documet from one encoding to
-another or if You have installed some programs which use Generic
+this package if you want to convert some documet from one encoding to
+another or if you have installed some programs which use Generic
Character Set Conversion Interface.
%description -n iconv -l pl
%package static
Summary: Static libraries
Summary(pl): Biblioteki statyczne
+Summary(ru): óÔÁÔÉÞÅÓËÉÅ ÂÉÂÌÉÏÔÅËÉ glibc
+Summary(uk): óÔÁÔÉÞΦ ¦Â̦ÏÔÅËÉ glibc
Group: Development/Libraries
-Group(de): Entwicklung/Libraries
-Group(fr): Development/Librairies
-Group(pl): Programowanie/Biblioteki
Requires: %{name}-devel = %{version}
%description static
%description static -l pl
Biblioteki statyczne GNU libc.
+%description static -l ru
+üÔÏ ÏÔÄÅÌØÎÙÊ ÐÁËÅÔ ÓÏ ÓÔÁÔÉÞÅÓËÉÍÉ ÂÉÂÌÉÏÔÅËÁÍÉ, ËÏÔÏÒÙÅ ÂÏÌØÛÅ ÎÅ
+×ÈÏÄÑÔ × glibc-devel.
+
+%description static -l uk
+ãÅ ÏËÒÅÍÉÊ ÐÁËÅÔ Ú¦ ÓÔÁÔÉÞÎÉÍÉ Â¦Â̦ÏÔÅËÁÍÉ, ÝÏ Â¦ÌØÛÅ ÎÅ ×ÈÏÄÑÔØ ×
+ÓËÌÁÄ glibc-devel.
+
%package profile
Summary: glibc with profiling support
Summary(de): glibc mit Profil-Unterstützung
Summary(fr): glibc avec support pour profiling
Summary(pl): glibc ze wsparciem dla profilowania
+Summary(ru): GNU libc Ó ÐÏÄÄÅÒÖËÏÊ ÐÒÏÆÁÊÌÅÒÁ
Summary(tr): Ölçüm desteði olan glibc
+Summary(uk): GNU libc Ú Ð¦ÄÔÒÉÍËÏÀ ÐÒÏÆÁÊÌÅÒÁ
Group: Development/Libraries/Libc
-Group(de): Entwicklung/Libraries/Libc
-Group(pl): Programowanie/Biblioteki/Libc
Obsoletes: libc-profile
Requires: %{name}-devel = %{version}
zamiast standardowych bibliotek C, aby gprof móg³ odpowiednio je
wyprofilowaæ.
+%description profile -l uk
+ëÏÌÉ ÐÒÏÇÒÁÍÉ ÄÏÓ̦ÄÖÕÀÔØÓÑ ÐÒÏÆÁÊÌÅÒÏÍ gprof, ×ÏÎÉ ÐÏ×ÉÎΦ
+×ÉËÏÒÉÓÔÏ×Õ×ÁÔÉ ÚÁͦÓÔØ ÓÔÁÎÄÁÒÔÎÉÈ Â¦Â̦ÏÔÅË Â¦Â̦ÏÔÅËÉ, ÝÏ Í¦ÓÔÑÔØÓÑ
+× ÃØÏÍÕ ÐÁËÅÔ¦. ðÒÉ ×ÉËÏÒÉÓÔÁÎΦ ÓÔÁÎÄÁÒÔÎÉÈ Â¦Â̦ÏÔÅË gprof ÚÁͦÓÔØ
+ÒÅÁÌØÎÉÈ ÒÅÚÕÌØÔÁÔ¦× ÂÕÄÅ ÐÏËÁÚÕ×ÁÔÉ Ã¦ÎÉ ÎÁ ÐÁÐÁÊÀ × çÏÎÏÌÕÌÕ ×
+ÐÏÚÁÍÉÎÕÌÏÍÕ ÒÏæ...
+
%description profile -l tr
gprof kullanýlarak ölçülen programlar standart C kitaplýðý yerine bu
kitaplýðý kullanmak zorundadýrlar.
+%description profile -l ru
+ëÏÇÄÁ ÐÒÏÇÒÁÍÍÙ ÉÓÓÌÅÄÕÀÔÓÑ ÐÒÏÆÁÊÌÅÒÏÍ gprof, ÏÎÉ ÄÏÌÖÎÙ
+ÉÓÐÏÌØÚÏ×ÁÔØ, ×ÍÅÓÔÏ ÓÔÁÎÄÁÒÔÎÙÈ ÂÉÂÌÉÏÔÅË, ÂÉÂÌÉÏÔÅËÉ, ×ËÌÀÞÅÎÎÙÅ ×
+ÜÔÏÔ ÐÁËÅÔ. ðÒÉ ÉÓÐÏÌØÚÏ×ÁÎÉÉ ÓÔÁÎÄÁÒÔÎÙÈ ÂÉÂÌÉÏÔÅË gprof ×ÍÅÓÔÏ
+ÒÅÁÌØÎÙÈ ÒÅÚÕÌØÔÁÔÏ× ÂÕÄÅÔ ÐÏËÁÚÙ×ÁÔØ ÃÅÎÙ ÎÁ ÐÁÐÁÊÀ × çÏÎÏÌÕÌÕ ×
+ÐÏÚÁÐÒÏÛÌÏÍ ÇÏÄÕ...
+
%package pic
Summary: glibc PIC archive
Summary(pl): archiwum PIC glibc
Group: Development/Libraries/Libc
-Group(de): Entwicklung/Libraries/Libc
-Group(pl): Programowanie/Biblioteki/Libc
Requires: %{name}-devel = %{version}
%description pic
Summary: Old style NYS NSS glibc module
Summary(pl): Stary modu³ NYS NSS glibc
Group: Base
-Group(de): Gründsätzlich
-Group(pl): Podstawowe
Requires: %{name} = %{version}
%description -n nss_compat
Summary: BIND NSS glibc module
Summary(pl): Modu³ BIND NSS glibc
Group: Base
-Group(de): Gründsätzlich
-Group(pl): Podstawowe
Requires: %{name} = %{version}
%description -n nss_dns
Summary: Traditional files databases NSS glibc module
Summary(pl): Modu³ tradycyjnych plikowych baz danych NSS glibc
Group: Base
-Group(de): Gründsätzlich
-Group(pl): Podstawowe
Requires: %{name} = %{version}
%description -n nss_files
Summary: Hesiod NSS glibc module
Summary(pl): Modu³ hesiod NSS glibc
Group: Base
-Group(de): Gründsätzlich
-Group(pl): Podstawowe
Requires: %{name} = %{version}
%description -n nss_hesiod
Summary: NIS(YP) NSS glibc module
Summary(pl): Modu³ NIS(YP) NSS glibc
Group: Base
-Group(de): Gründsätzlich
-Group(pl): Podstawowe
Requires: %{name} = %{version}
%description -n nss_nis
Summary: NIS+ NSS module
Summary(pl): Modu³ NIS+ NSS
Group: Base
-Group(de): Gründsätzlich
-Group(pl): Podstawowe
Requires: %{name} = %{version}
%description -n nss_nisplus
Summary: A toy
Summary(pl): Zabawka
Group: Applications
-Group(de): Applikationen
-Group(pl): Aplikacje
Requires: %{name} = %{version}
Requires: gd
%patch4 -p1
%patch5 -p1
%patch6 -p1
-%patch7 -p1
-%patch8 -p1
%patch9 -p1
%patch10 -p1
-# %patch11 -p1
+%patch11 -p1
+%patch12 -p1
+%patch13 -p1
+%patch14 -p1
+
+chmod +x scripts/cpp
%build
+mkdir builddir
+cd builddir
+# avoid stripping ld.so by -s in rpmldflags
LDFLAGS=" " ; export LDFLAGS
%configure2_13 \
--enable-add-ons=linuxthreads \
--enable-kernel="%{?kernel:%{kernel}}%{!?kernel:%{min_kernel}}" \
--enable-profile \
--disable-omitfp
+# problem compiling with --enable-bounded (must be reported to libc-alpha)
-%{__make}
+%{__make} %{parallelmkflags}
%install
rm -rf $RPM_BUILD_ROOT
-install -d $RPM_BUILD_ROOT{/etc/{rc.d/init.d,sysconfig,logrotate.d},%{_mandir}/man{3,8},/var/log}
+install -d $RPM_BUILD_ROOT{/etc/{logrotate.d,rc.d/init.d,sysconfig},%{_mandir}/man{3,8},/var/log}
+
+cd builddir
env LANGUAGE=C LC_ALL=C \
%{__make} install \
+ %{parallelmkflags} \
install_root=$RPM_BUILD_ROOT \
infodir=%{_infodir} \
mandir=%{_mandir}
env LANGUAGE=C LC_ALL=C \
-%{__make} install-locales -C localedata \
+%{__make} localedata/install-locales \
+ %{parallelmkflags} \
install_root=$RPM_BUILD_ROOT
PICFILES="libc_pic.a libc.map
install elf/soinit.os $RPM_BUILD_ROOT%{_libdir}/soinit.o
install elf/sofini.os $RPM_BUILD_ROOT%{_libdir}/sofini.o
+install elf/postshell $RPM_BUILD_ROOT/sbin
+
mv -f $RPM_BUILD_ROOT/lib/libmemusage.so $RPM_BUILD_ROOT%{_libdir}
mv -f $RPM_BUILD_ROOT/lib/libpcprofile.so $RPM_BUILD_ROOT%{_libdir}
-%{__make} -C linuxthreads/man
-install linuxthreads/man/*.3thr $RPM_BUILD_ROOT%{_mandir}/man3
+%{__make} -C ../linuxthreads/man
+install ../linuxthreads/man/*.3thr $RPM_BUILD_ROOT%{_mandir}/man3
rm -rf $RPM_BUILD_ROOT%{_datadir}/zoneinfo/{localtime,posixtime,posixrules}
-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 ../..%{_libdir}/libbsd-compat.a $RPM_BUILD_ROOT%{_libdir}/libbsd.a
+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
+ 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}
-install %{SOURCE5} $RPM_BUILD_ROOT%{_mandir}/man8/
-tar xzvf %{SOURCE6} -C $RPM_BUILD_ROOT%{_mandir}/
-tar xzvf %{SOURCE7} -C $RPM_BUILD_ROOT%{_mandir}/
-touch $RPM_BUILD_ROOT%{_sysconfdir}/ld.so.{cache,conf}
+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
+rm -f $RPM_BUILD_ROOT%{_mandir}/hu/man7/man.7
:> $RPM_BUILD_ROOT/var/log/nscd
-rm -rf documentation
-install -d documentation
+rm -rf ../documentation
+install -d ../documentation
-cp linuxthreads/ChangeLog documentation/ChangeLog.threads
-cp linuxthreads/Changes documentation/Changes.threads
-cp linuxthreads/README documentation/README.threads
-cp crypt/README.ufc-crypt documentation/
+cp -f ../linuxthreads/ChangeLog ../documentation/ChangeLog.threads
+cp -f ../linuxthreads/Changes ../documentation/Changes.threads
+cp -f ../linuxthreads/README ../documentation/README.threads
+cp -f ../crypt/README.ufc-crypt ../documentation/
-cp ChangeLog ChangeLog.8 documentation
+cp -f ../ChangeLog* ../documentation
-gzip -9nf README NEWS FAQ BUGS NOTES PROJECTS documentation/*
+rm -f $RPM_BUILD_ROOT%{_libdir}/libnss_*.so
# strip ld.so with --strip-debug only (other ELFs are stripped by rpm):
%{!?debug:strip -g -R .comment -R .note $RPM_BUILD_ROOT/lib/ld-%{version}.so}
# Collect locale files and mark them with %%lang()
-rm -f glibc.lang
+rm -f ../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/\/.*//'`
+ twochar=1
+ # list of long %%lang values we do support
+ for j in de_AT de_BE de_CH de_LU ja_JP.SJIS ko_KR.utf8 pt_BR \
+ zh_CN zh_CN.gbk zh_HK zh_TW ; do
+ if [ $j = "$lang" ]; then
+ twochar=
+ fi
+ done
+ if [ -n "$twochar" ]; then
+ if [ `echo $lang | sed "s,_.*,,"` = "zh" ]; then
+ lang=`echo $lang | sed "s,\..*,,"`
+ else
+ lang=`echo $lang | sed "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
+for i in af az bg de_AT el en eo es_ES et eu fi gr he hr hu id is ja_JP.SJIS \
+ lt lv ms nn pt ro ru sl sr ta uk wa zh_CN ; 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
fi
done
+install %{SOURCE7} $RPM_BUILD_ROOT%{_mandir}/man8
-%post -p /sbin/ldconfig
-%postun -p /sbin/ldconfig
+# shutup check-files
+rm -f $RPM_BUILD_ROOT/%{_mandir}/README.*
+rm -f $RPM_BUILD_ROOT/%{_mandir}/diff.*
+rm -f $RPM_BUILD_ROOT/%{_infodir}/dir
+# we don't support kernel without ptys support
+rm -f $RPM_BUILD_ROOT/%{_libdir}/pt_chown
+
+%clean
+rm -rf $RPM_BUILD_ROOT
+
+# don't run iconvconfig in %%postun -n iconv because iconvconfig doesn't exist
+# when %%postun is run
+
+%post -p /sbin/postshell
+/sbin/ldconfig
+-/sbin/telinit u
+
+%postun -p /sbin/postshell
+/sbin/ldconfig
+-/sbin/telinit u
%post memusage -p /sbin/ldconfig
%postun memusage -p /sbin/ldconfig
+%post -n iconv -p %{_sbindir}/iconvconfig
+
%post devel
[ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
%post -n nscd
/sbin/chkconfig --add nscd
-touch /var/log/nscd && (chown root.root /var/log/nscd ; chmod 640 /var/log/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
/sbin/chkconfig --del nscd
fi
-%clean
-rm -rf $RPM_BUILD_ROOT
-
%files -f %{name}.lang
%defattr(644,root,root,755)
-%doc {README,NEWS,FAQ,BUGS}.gz
+%doc README NEWS FAQ BUGS
%config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/ld.so.conf
%config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/nsswitch.conf
%attr(755,root,root) %{_bindir}/glibcbug
%attr(755,root,root) %{_bindir}/iconv
%attr(755,root,root) %{_bindir}/ldd
-%ifnarch alpha
+%ifnarch alpha sparc sparc64 ppc
%attr(755,root,root) %{_bindir}/lddlibc4
%endif
%attr(755,root,root) %{_bindir}/locale
%attr(755,root,root) %{_sbindir}/zic
%attr(755,root,root) /lib/ld-*
+%attr(755,root,root) /lib/libanl*
%attr(755,root,root) /lib/libdl*
%attr(755,root,root) /lib/libnsl*
%attr(755,root,root) /lib/lib[BScmprtu]*
%{_datadir}/zoneinfo
%dir %{_libdir}/locale
-
-%{_mandir}/man[578]/*
+%{_libdir}/locale/locale-archive
+
+%{_mandir}/man1/[^lsg]*
+%{_mandir}/man1/getent.1*
+%{_mandir}/man1/locale.1*
+%{_mandir}/man1/ldd.1*
+%{_mandir}/man5/???[^d]*
+%{_mandir}/man7/*
+%{_mandir}/man8/[^n]*
%lang(cs) %{_mandir}/cs/man[578]/*
%lang(de) %{_mandir}/de/man[578]/*
%lang(es) %{_mandir}/es/man[578]/*
+%lang(fi) %{_mandir}/fi/man1/ldd.1*
+%lang(fr) %{_mandir}/fr/man1/ldd.1*
%lang(fr) %{_mandir}/fr/man[578]/*
+%lang(hu) %{_mandir}/hu/man1/ldd.1*
%lang(hu) %{_mandir}/hu/man[578]/*
%lang(it) %{_mandir}/it/man[578]/*
-%lang(ja) %{_mandir}/ja/man[578]/*
+%lang(ja) %{_mandir}/ja/man1/[^lsg]*
+%lang(ja) %{_mandir}/ja/man1/ldd.1*
+%lang(ja) %{_mandir}/ja/man5/???[^d]*
+%lang(ja) %{_mandir}/ja/man7/*
+%lang(ja) %{_mandir}/ja/man8/[^n]*
%lang(ko) %{_mandir}/ko/man[578]/*
-# %lang(nl) %{_mandir}/pl/man[578]/*
+# %lang(nl) %{_mandir}/nl/man[578]/*
+%lang(pl) %{_mandir}/pl/man1/ldd.1*
%lang(pl) %{_mandir}/pl/man[578]/*
-%lang(pt) %{_mandir}/pt/man[578]/*
-%lang(pt_BR) %{_mandir}/pt_BR/man[578]/*
+%lang(pt) %{_mandir}/pt/man5/???[^d]*
+%lang(pt) %{_mandir}/pt/man7/*
+%lang(pt) %{_mandir}/pt/man8/[^n]*
+%lang(pt_BR) %{_mandir}/pt_BR/man5/???[^d]*
+%lang(pt_BR) %{_mandir}/pt_BR/man7/*
+%lang(pt_BR) %{_mandir}/pt_BR/man8/[^n]*
%lang(ru) %{_mandir}/ru/man[578]/*
#%files -n nss_dns
%files devel
%defattr(644,root,root,755)
-%doc documentation/* {NOTES,PROJECTS}.gz
+%doc documentation/* NOTES PROJECTS
%attr(755,root,root) %{_bindir}/gencat
%attr(755,root,root) %{_bindir}/getconf
%attr(755,root,root) %{_bindir}/*prof*
%{_infodir}/libc.info*
-%attr(755,root,root) %{_libdir}/lib*.so
+%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}/librpcsvc.a
+%{_mandir}/man1/getconf*
+%{_mandir}/man1/sprof*
%{_mandir}/man3/*
%lang(cs) %{_mandir}/cs/man3/*
%lang(de) %{_mandir}/de/man3/*
%files -n nscd
%defattr(644,root,root,755)
-%attr(640,root,root) %config %verify(not size mtime md5) /etc/sysconfig/nscd
-%attr(640,root,root) %config(noreplace) %verify(not mtime md5 size) %{_sysconfdir}/nscd.*
+%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(754,root,root) /etc/rc.d/init.d/nscd
%attr(755,root,root) %{_sbindir}/nscd*
%attr(640,root,root) /etc/logrotate.d/nscd
%attr(640,root,root) %ghost /var/log/nscd
+%{_mandir}/man5/nscd.conf*
+%{_mandir}/man8/nscd*
+%lang(ja) %{_mandir}/ja/man5/nscd.conf*
+%lang(ja) %{_mandir}/ja/man8/nscd*
+%lang(pt) %{_mandir}/pt/man5/nscd.conf*
+%lang(pt) %{_mandir}/pt/man8/nscd*
+%lang(pt_BR) %{_mandir}/pt_BR/man5/nscd.conf*
+%lang(pt_BR) %{_mandir}/pt_BR/man8/nscd*
%files -n localedb-src
%defattr(644,root,root,755)
%attr(755,root,root) %{_bindir}/localedef
%{_datadir}/i18n
+%{_mandir}/man1/localedef*
%files -n iconv
%defattr(644,root,root,755)
+%attr(755,root,root) %{_sbindir}/iconvconfig
%dir %{_libdir}/gconv
%{_libdir}/gconv/gconv-modules
%attr(755,root,root) %{_libdir}/gconv/*.so
%files static
%defattr(644,root,root,755)
+%{_libdir}/libanl.a
%{_libdir}/libBrokenLocale.a
-%{_libdir}/libbsd-compat.a
-%{_libdir}/libbsd.a
%{_libdir}/libc.a
%{_libdir}/libcrypt.a
%{_libdir}/libdl.a
-%{_libdir}/libg.a
-%{_libdir}/libieee.a
%{_libdir}/libm.a
%{_libdir}/libmcheck.a
%{_libdir}/libnsl.a
%{_libdir}/libpthread.a
%{_libdir}/libresolv.a
-%{_libdir}/librpcsvc.a
%{_libdir}/librt.a
%{_libdir}/libutil.a