1 %define min_kernel 2.2.0
15 Source0: ftp://sources.redhat.com/pub/glibc/releases/%{name}-%{version}.tar.gz
16 Source1: ftp://sources.redhat.com/pub/glibc/releases/%{name}-linuxthreads-%{version}.tar.gz
18 Source3: nscd.sysconfig
19 Source4: nscd.logrotate
21 Patch0: %{name}-info.patch
22 Patch1: %{name}-versions.awk_fix.patch
23 Patch2: %{name}-pld.patch
24 Patch3: %{name}-crypt-blowfish.patch
25 Patch4: %{name}-string2-pointer-arith.patch
26 Patch5: %{name}-linuxthreads-lock.patch
27 Patch6: %{name}-pthread_create-manpage.patch
28 Patch7: %{name}-sparc-linux-chown.patch
29 Patch8: %{name}-ldconfig-bklinks.patch
30 Patch9: %{name}-paths.patch
31 Patch10: %{name}-vaargs.patch
32 URL: http://www.gnu.org/software/libc/
33 BuildRequires: gd-devel >= 2.0.1
34 BuildRequires: gettext-devel >= 0.10.36
35 BuildRequires: libpng-devel
37 BuildRequires: rpm-build >= 4.0-11
38 BuildRequires: texinfo
41 Provides: /sbin/ldconfig
42 Obsoletes: %{name}-common
43 Obsoletes: %{name}-debug
47 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
48 Conflicts: kernel < %{min_kernel}
51 Contains the standard libraries that are used by multiple programs on
52 the system. In order to save disk space and memory, as well as to ease
53 upgrades, common system code is kept in one place and shared between
54 programs. This package contains the most important sets of shared
55 libraries, the standard C library and the standard math library.
56 Without these, a Linux system will not function. It also contains
57 national language (locale) support and timezone databases.
60 Enthält die Standard-Libraries, die von verschiedenen Programmen im
61 System benutzt werden. Um Festplatten- und Arbeitsspeicher zu sparen
62 und zur Vereinfachung von Upgrades ist der gemeinsame Systemcode an
63 einer einzigen Stelle gespeichert und wird von den Programmen
64 gemeinsam genutzt. Dieses Paket enthält die wichtigsten Sets der
65 shared Libraries, die Standard-C-Library und die
66 Standard-Math-Library, ohne die das Linux-System nicht funktioniert.
67 Ferner enthält es den Support für die verschiedenen Sprachgregionen
68 (locale) und die Zeitzonen-Datenbank.
71 Contient les bibliothèques standards utilisées par de nombreux
72 programmes du système. Afin d'économiser l'espace disque et mémoire,
73 et de faciliter les mises à jour, le code commun au système est mis à
74 un endroit et partagé entre les programmes. Ce paquetage contient les
75 bibliothèques partagées les plus importantes, la bibliothèque standard
76 du C et la bibliothèque mathématique standard. Sans celles-ci, un
77 système Linux ne peut fonctionner. Il contient aussi la gestion des
78 langues nationales (locales) et les bases de données des zones
82 W pakiecie znajduj± siê podstawowe biblioteki, u¿ywane przez ró¿ne
83 programy w Twoim systemie. U¿ywanie przez programy bibliotek z tego
84 pakietu oszczêdza miejsce na dysku i pamiêæ. Wiekszo¶æ kodu
85 systemowego jest usytuowane w jednym miejscu i dzielone miêdzy wieloma
86 programami. Pakiet ten zawiera bardzo wa¿ny zbiór bibliotek
87 standardowych, wspó³dzielonych (dynamicznych) bibliotek C i
88 matematycznych. Bez glibc system Linux nie jest w stanie funkcjonowaæ.
89 Znajduj± siê tutaj równie¿ definicje ró¿nych informacji dla wielu
90 jêzyków (locale) oraz definicje stref czasowych.
93 Bu paket, birçok programýn kullandýðý standart kitaplýklarý içerir.
94 Disk alaný ve bellek kullanýmýný azaltmak ve ayný zamanda güncelleme
95 iþlemlerini kolaylaþtýrmak için ortak sistem kodlarý tek bir yerde
96 tutulup programlar arasýnda paylaþtýrýlýr. Bu paket en önemli ortak
97 kitaplýklarý, standart C kitaplýðýný ve standart matematik kitaplýðýný
98 içerir. Bu kitaplýklar olmadan Linux sistemi çalýþmayacaktýr. Yerel
99 dil desteði ve zaman dilimi veri tabaný da bu pakette yer alýr.
102 Summary: Additional libraries required to compile
103 Summary(de): Weitere Libraries zum Kompilieren
104 Summary(fr): Librairies supplémentaires nécessaires à la compilation.
105 Summary(pl): Dodatkowe biblioteki wymagane podczas kompilacji
106 Summary(tr): Geliþtirme için gerekli diðer kitaplýklar
107 Group: Development/Libraries
108 Group(de): Entwicklung/Libraries
109 Group(fr): Development/Librairies
110 Group(pl): Programowanie/Biblioteki
111 Requires: %{name} = %{version}
114 To develop programs which use the standard C libraries (which nearly
115 all programs do), the system needs to have these standard header files
116 and object files available for creating the executables.
118 %description devel -l de
119 Bei der Entwicklung von Programmen, die die Standard-C-Libraries
120 verwenden (also fast alle), benötigt das System diese Standard-Header-
121 und Objektdateien zum Erstellen der ausführbaren Programme.
123 %description devel -l fr
124 Pour développer des programmes utilisant les bibliothèques standard du
125 C (ce que presque tous les programmes font), le système doit posséder
126 ces fichiers en-têtes et objets standards pour créer les exécutables.
128 %description devel -l pl
129 Pakiet ten jest niezbêdny przy tworzeniu w³asnych programów
130 korzystaj±cych ze standardowej biblioteki C. Znajduj± siê tutaj pliki
131 nag³ówkowe oraz pliki objektowe, niezbêdne do kompilacji programów
132 wykonywalnych i innych bibliotek.
134 %description devel -l tr
135 C kitaplýðýný kullanan (ki hemen hemen hepsi kullanýyor) programlar
136 geliþtirmek için gereken standart baþlýk dosyalarý ve statik
140 Summary: Name Service Caching Daemon
141 Summary(pl): Name Service Caching Daemon
142 Group: Networking/Daemons
143 Group(de): Netzwerkwesen/Server
144 Group(pl): Sieciowe/Serwery
145 Prereq: /sbin/chkconfig
146 Prereq: rc-scripts >= 0.2.0
147 Requires: %{name} = %{version}
150 nscd caches name service lookups; it can dramatically improve
151 performance with NIS+, and may help with DNS as well. You cannot use
152 nscd with 2.0 kernels, due to bugs in the kernel-side thread support.
153 nscd happens to hit these bugs particularly hard.
155 %description -n nscd -l pl
156 nscd zapmiêtuje zapytania i odpowiedzi NIS oraz DNS. Pozwala
157 drastycznie poprawiæ szybko¶æ dzia³ania NIS+. Nie jest mo¿liwe
158 u¿ywanie nscd z j±drami serii 2.0.x z powodu b³êdów po stronie j±dra
161 %package -n localedb-src
162 Summary: Souce code locale database
163 Summary(pl): Kod ¼ród³owy bazy locale
167 Requires: %{name} = %{version}
169 %description -n localedb-src
170 This add-on package contains the data needed to build the locale data
171 files to use the internationalization features of the GNU libc. glibc
172 package contains standard set of locale binary database and You need
173 this package if want build some non standard locale database.
175 %description -n localedb-src -l pl
176 Pakiet ten kod ¼ród³owy baz locale który jest potrzebny do zbudowania
177 binarnej wersji baz locale potrzebnej do poprawnego wspierania ró¿nych
178 jêzyków przez glibc. Pakiet glibc zawira binarn± wersjê standardowych
179 baz locale i ten pakiet jest potrzebny tylko w sytuacji kiedy potrzeba
180 wygenerowaæ jak±¶ niestandardow± bazê.
183 Summary: Convert encoding of given files from one encoding to another
184 Summary(pl): Program do konwersji plików tekstowych z jednego kodowania do innego
188 Requires: %{name} = %{version}
190 %description -n iconv
191 Convert encoding of given files from one encoding to another. You need
192 this package if You want to convert some documet from one encoding to
193 another or if You have installed some programs which use Generic
194 Character Set Conversion Interface.
196 %description -n iconv -l pl
197 Program do konwersji plików tekstowych z jednego kodowania do innego.
198 Musisz mieæ zainstalowany ten pakiet je¿eli wykonujesz konwersjê
199 dokumentów z jednego kodowania do innego lub je¿eli masz zainstalowane
200 jakie¶ programy, które korzystaj± z Generic Character Set Conversion
201 Interface w glibc, czyli z zestawu funkcji z tej biblioteki, które
202 umo¿liwiaj± konwersjê kodowania danych z poziomu dowolnego programu.
205 Summary: Static libraries
206 Summary(pl): Biblioteki statyczne
207 Group: Development/Libraries
208 Group(de): Entwicklung/Libraries
209 Group(fr): Development/Librairies
210 Group(pl): Programowanie/Biblioteki
211 Requires: %{name}-devel = %{version}
214 GNU libc static libraries.
216 %description static -l pl
217 Biblioteki statyczne GNU libc.
220 Summary: glibc with profiling support
221 Summary(de): glibc mit Profil-Unterstützung
222 Summary(fr): glibc avec support pour profiling
223 Summary(pl): glibc ze wsparciem dla profilowania
224 Summary(tr): Ölçüm desteði olan glibc
225 Group: Development/Libraries/Libc
226 Group(de): Entwicklung/Libraries/Libc
227 Group(pl): Programowanie/Biblioteki/Libc
228 Obsoletes: libc-profile
229 Requires: %{name}-devel = %{version}
232 When programs are being profiled used gprof, they must use these
233 libraries instead of the standard C libraries for gprof to be able to
234 profile them correctly.
236 %description profile -l de
237 Damit Programmprofile mit gprof richtig erstellt werden, müssen diese
238 Libraries anstelle der üblichen C-Libraries verwendet werden.
240 %description profile -l pl
241 Programy profilowane za pomoc± gprof musz± u¿ywaæ tych bibliotek
242 zamiast standardowych bibliotek C, aby gprof móg³ odpowiednio je
245 %description profile -l tr
246 gprof kullanýlarak ölçülen programlar standart C kitaplýðý yerine bu
247 kitaplýðý kullanmak zorundadýrlar.
250 Summary: glibc PIC archive
251 Summary(pl): archiwum PIC glibc
252 Group: Development/Libraries/Libc
253 Group(de): Entwicklung/Libraries/Libc
254 Group(pl): Programowanie/Biblioteki/Libc
255 Requires: %{name}-devel = %{version}
258 GNU C Library PIC archive contains an archive library (ar file)
259 composed of individual shared objects. This is used for creating a
260 library which is a smaller subset of the standard libc shared library.
262 %description pic -l pl
263 Archiwum PIC biblioteki GNU C zawiera archiwaln± bibliotekê (plik ar)
264 z³o¿on± z pojedyñczych obiektów wspó³dzielonych. U¿ywana jest do
265 tworzenia biblioteki bêd±cej mniejszym podzestawem standardowej
266 biblioteki wspó³dzielonej libc.
268 %package -n nss_compat
269 Summary: Old style NYS NSS glibc module
270 Summary(pl): Stary modu³ NYS NSS glibc
272 Group(de): Gründsätzlich
273 Group(pl): Podstawowe
274 Requires: %{name} = %{version}
276 %description -n nss_compat
277 Old style NYS NSS glibc module.
279 %description -n nss_compat -l pl
280 Stary modu³ NYS NSS glibc.
283 Summary: BIND NSS glibc module
284 Summary(pl): Modu³ BIND NSS glibc
286 Group(de): Gründsätzlich
287 Group(pl): Podstawowe
288 Requires: %{name} = %{version}
290 %description -n nss_dns
291 BIND NSS glibc module.
293 %description -n nss_dns -l pl
294 Modu³ BIND NSS glibc.
296 %package -n nss_files
297 Summary: Traditional files databases NSS glibc module
298 Summary(pl): Modu³ tradycyjnych plikowych baz danych NSS glibc
300 Group(de): Gründsätzlich
301 Group(pl): Podstawowe
302 Requires: %{name} = %{version}
304 %description -n nss_files
305 Traditional files databases NSS glibc module.
307 %description -n nss_files -l pl
308 Modu³ tradycyjnych plikowych baz danych NSS glibc.
310 %package -n nss_hesiod
311 Summary: Hesiod NSS glibc module
312 Summary(pl): Modu³ hesiod NSS glibc
314 Group(de): Gründsätzlich
315 Group(pl): Podstawowe
316 Requires: %{name} = %{version}
318 %description -n nss_hesiod
319 glibc NSS (Name Service Switch) module for databases access.
321 %description -n nss_hesiod -l pl
322 Modu³ glibc NSS (Name Service Switch) dostêpu do baz danych.
325 Summary: NIS(YP) NSS glibc module
326 Summary(pl): Modu³ NIS(YP) NSS glibc
328 Group(de): Gründsätzlich
329 Group(pl): Podstawowe
330 Requires: %{name} = %{version}
332 %description -n nss_nis
333 glibc NSS (Name Service Switch) module for NIS(YP) databases access.
335 %description -n nss_nis -l pl
336 Modu³ glibc NSS (Name Service Switch) dostêpu do baz danych NIS(YP).
338 %package -n nss_nisplus
339 Summary: NIS+ NSS module
340 Summary(pl): Modu³ NIS+ NSS
342 Group(de): Gründsätzlich
343 Group(pl): Podstawowe
344 Requires: %{name} = %{version}
346 %description -n nss_nisplus
347 glibc NSS (Name Service Switch) module for NIS+ databases accesa.
349 %description -n nss_nisplus -l pl
350 Modu³ glibc NSS (Name Service Switch) dostêpu do baz danych NIS+.
356 Group(de): Applikationen
358 Requires: %{name} = %{version}
361 %description memusage
364 %description memusage -l pl
382 LDFLAGS=" " ; export LDFLAGS
384 --enable-add-ons=linuxthreads \
385 --enable-kernel="%{?kernel:%{kernel}}%{!?kernel:%{min_kernel}}" \
392 rm -rf $RPM_BUILD_ROOT
393 install -d $RPM_BUILD_ROOT{/etc/{rc.d/init.d,sysconfig,logrotate.d},%{_mandir}/man{3,8},/var/log}
395 env LANGUAGE=C LC_ALL=C \
397 install_root=$RPM_BUILD_ROOT \
398 infodir=%{_infodir} \
401 env LANGUAGE=C LC_ALL=C \
402 %{__make} install-locales -C localedata \
403 install_root=$RPM_BUILD_ROOT
405 PICFILES="libc_pic.a libc.map
406 math/libm_pic.a libm.map
407 resolv/libresolv_pic.a"
409 install $PICFILES $RPM_BUILD_ROOT%{_libdir}
410 install elf/soinit.os $RPM_BUILD_ROOT%{_libdir}/soinit.o
411 install elf/sofini.os $RPM_BUILD_ROOT%{_libdir}/sofini.o
413 mv -f $RPM_BUILD_ROOT/lib/libmemusage.so $RPM_BUILD_ROOT%{_libdir}
414 mv -f $RPM_BUILD_ROOT/lib/libpcprofile.so $RPM_BUILD_ROOT%{_libdir}
416 %{__make} -C linuxthreads/man
417 install linuxthreads/man/*.3thr $RPM_BUILD_ROOT%{_mandir}/man3
419 rm -rf $RPM_BUILD_ROOT%{_datadir}/zoneinfo/{localtime,posixtime,posixrules}
421 ln -sf ../../..%{_sysconfdir}/localtime $RPM_BUILD_ROOT%{_datadir}/zoneinfo/localtime
422 ln -sf localtime $RPM_BUILD_ROOT%{_datadir}/zoneinfo/posixtime
423 ln -sf localtime $RPM_BUILD_ROOT%{_datadir}/zoneinfo/posixrules
424 ln -sf ../..%{_libdir}/libbsd-compat.a $RPM_BUILD_ROOT%{_libdir}/libbsd.a
426 rm -f $RPM_BUILD_ROOT%{_sysconfdir}/localtime
428 install %{SOURCE2} $RPM_BUILD_ROOT/etc/rc.d/init.d/nscd
429 install %{SOURCE3} $RPM_BUILD_ROOT/etc/sysconfig/nscd
430 install %{SOURCE4} $RPM_BUILD_ROOT/etc/logrotate.d/nscd
431 install nscd/nscd.conf $RPM_BUILD_ROOT%{_sysconfdir}
432 install nss/nsswitch.conf $RPM_BUILD_ROOT%{_sysconfdir}
434 install %{SOURCE5} $RPM_BUILD_ROOT%{_mandir}/man8/
435 touch $RPM_BUILD_ROOT%{_sysconfdir}/ld.so.{cache,conf}
437 :> $RPM_BUILD_ROOT/var/log/nscd
440 install -d documentation
442 cp linuxthreads/ChangeLog documentation/ChangeLog.threads
443 cp linuxthreads/Changes documentation/Changes.threads
444 cp linuxthreads/README documentation/README.threads
445 cp crypt/README.ufc-crypt documentation/
447 cp ChangeLog ChangeLog.8 documentation
449 gzip -9nf README NEWS FAQ BUGS NOTES PROJECTS documentation/*
451 # strip ld.so with --strip-debug only (other ELFs are stripped by rpm):
452 %{!?debug:strip -g -R .comment -R .note $RPM_BUILD_ROOT/lib/ld-%{version}.so}
454 # Collect locale files and mark them with %%lang()
456 for i in $RPM_BUILD_ROOT%{_datadir}/locale/* $RPM_BUILD_ROOT%{_libdir}/locale/* ; do
458 lang=`echo $i | sed -e 's/.*locale\///' -e 's/\/.*//'`
459 dir=`echo $i | sed "s#$RPM_BUILD_ROOT##"`
460 echo "%lang($lang) $dir" >> glibc.lang
464 %post -p /sbin/ldconfig
465 %postun -p /sbin/ldconfig
467 %post memusage -p /sbin/ldconfig
468 %postun memusage -p /sbin/ldconfig
471 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
474 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
477 /sbin/chkconfig --add nscd
478 touch /var/log/nscd && (chown root.root /var/log/nscd ; chmod 640 /var/log/nscd)
479 if [ -f /var/lock/subsys/nscd ]; then
480 /etc/rc.d/init.d/nscd restart 1>&2
482 echo "Run \"/etc/rc.d/init.d/nscd start\" to start nscd daemon." 1>&2
486 if [ "$1" = "0" ]; then
487 if [ -f /var/lock/subsys/nscd ]; then
488 /etc/rc.d/init.d/nscd stop 1>&2
490 /sbin/chkconfig --del nscd
494 rm -rf $RPM_BUILD_ROOT
496 %files -f %{name}.lang
497 %defattr(644,root,root,755)
498 %doc {README,NEWS,FAQ,BUGS}.gz
500 %config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/ld.so.conf
501 %config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/nsswitch.conf
502 %config %{_sysconfdir}/rpc
503 %ghost %{_sysconfdir}/ld.so.cache
505 %attr(755,root,root) /sbin/*
506 %attr(755,root,root) %{_bindir}/catchsegv
507 %attr(755,root,root) %{_bindir}/getent
508 %attr(755,root,root) %{_bindir}/glibcbug
509 %attr(755,root,root) %{_bindir}/iconv
510 %attr(755,root,root) %{_bindir}/ldd
512 %attr(755,root,root) %{_bindir}/lddlibc4
514 %attr(755,root,root) %{_bindir}/locale
515 %attr(755,root,root) %{_bindir}/rpcgen
516 %attr(755,root,root) %{_bindir}/tzselect
518 %attr(755,root,root) %{_sbindir}/rpcinfo
519 %attr(755,root,root) %{_sbindir}/zdump
520 %attr(755,root,root) %{_sbindir}/zic
522 %attr(755,root,root) /lib/ld-*
523 %attr(755,root,root) /lib/libdl*
524 %attr(755,root,root) /lib/libnsl*
525 %attr(755,root,root) /lib/lib[BScmprtu]*
527 %dir %{_datadir}/locale
528 %{_datadir}/locale/locale.alias
531 %dir %{_libdir}/locale
533 %{_mandir}/man8/ldconfig*
536 %defattr(644,root,root,755)
537 %attr(755,root,root) /lib/libnss_dns*.so*
540 %defattr(644,root,root,755)
541 %attr(755,root,root) /lib/libnss_files*.so*
544 %defattr(644,root,root,755)
545 %attr(755,root,root) /lib/libnss_compat*.so*
548 %defattr(644,root,root,755)
549 %attr(755,root,root) /lib/libnss_hesiod*.so*
552 %defattr(644,root,root,755)
553 %attr(755,root,root) /lib/libnss_nis.so.*
554 %attr(755,root,root) /lib/libnss_nis-*.so
556 %files -n nss_nisplus
557 %defattr(644,root,root,755)
558 %attr(755,root,root) /lib/libnss_nisplus*.so*
561 %defattr(644,root,root,755)
562 %attr(755,root,root) %{_bindir}/memusage*
563 %attr(755,root,root) %{_libdir}/libmemusage*
566 %defattr(644,root,root,755)
567 %doc documentation/* {NOTES,PROJECTS}.gz
568 %attr(755,root,root) %{_bindir}/gencat
569 %attr(755,root,root) %{_bindir}/getconf
570 %attr(755,root,root) %{_bindir}/*prof*
571 %attr(755,root,root) %{_bindir}/*trace
575 %{_infodir}/libc.info*
577 %attr(755,root,root) %{_libdir}/lib*.so
578 %attr(755,root,root) %{_libdir}/*crt*.o
579 %{_libdir}/libc_nonshared.a
584 %defattr(644,root,root,755)
585 %attr(640,root,root) %config %verify(not size mtime md5) /etc/sysconfig/nscd
586 %attr(640,root,root) %config(noreplace) %verify(not mtime md5 size) %{_sysconfdir}/nscd.*
587 %attr(754,root,root) /etc/rc.d/init.d/nscd
588 %attr(755,root,root) %{_sbindir}/nscd*
589 %attr(640,root,root) /etc/logrotate.d/nscd
590 %attr(640,root,root) %ghost /var/log/nscd
592 %files -n localedb-src
593 %defattr(644,root,root,755)
594 %attr(755,root,root) %{_bindir}/localedef
598 %defattr(644,root,root,755)
599 %dir %{_libdir}/gconv
600 %{_libdir}/gconv/gconv-modules
601 %attr(755,root,root) %{_libdir}/gconv/*.so
604 %defattr(644,root,root,755)
605 %{_libdir}/libBrokenLocale.a
606 %{_libdir}/libbsd-compat.a
609 %{_libdir}/libcrypt.a
614 %{_libdir}/libmcheck.a
616 %{_libdir}/libpthread.a
617 %{_libdir}/libresolv.a
618 %{_libdir}/librpcsvc.a
623 %defattr(644,root,root,755)
627 %defattr(644,root,root,755)
628 %{_libdir}/lib*_pic.a