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 Source6: %{name}-man-pages.tar.gz
22 Source7: %{name}-non-english-man-pages.tar.gz
23 Patch0: %{name}-info.patch
24 Patch1: %{name}-versions.awk_fix.patch
25 Patch2: %{name}-pld.patch
26 Patch3: %{name}-crypt-blowfish.patch
27 Patch4: %{name}-string2-pointer-arith.patch
28 Patch5: %{name}-linuxthreads-lock.patch
29 Patch6: %{name}-pthread_create-manpage.patch
30 Patch7: %{name}-sparc-linux-chown.patch
31 Patch8: %{name}-ldconfig-bklinks.patch
32 Patch9: %{name}-paths.patch
33 Patch10: %{name}-vaargs.patch
34 URL: http://www.gnu.org/software/libc/
35 BuildRequires: gd-devel >= 2.0.1
36 BuildRequires: gettext-devel >= 0.10.36
37 BuildRequires: libpng-devel
39 BuildRequires: rpm-build >= 4.0-11
40 BuildRequires: texinfo
43 Provides: /sbin/ldconfig
44 Obsoletes: %{name}-common
45 Obsoletes: %{name}-debug
49 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
50 Conflicts: kernel < %{min_kernel}
53 Contains the standard libraries that are used by multiple programs on
54 the system. In order to save disk space and memory, as well as to ease
55 upgrades, common system code is kept in one place and shared between
56 programs. This package contains the most important sets of shared
57 libraries, the standard C library and the standard math library.
58 Without these, a Linux system will not function. It also contains
59 national language (locale) support and timezone databases.
62 Enthält die Standard-Libraries, die von verschiedenen Programmen im
63 System benutzt werden. Um Festplatten- und Arbeitsspeicher zu sparen
64 und zur Vereinfachung von Upgrades ist der gemeinsame Systemcode an
65 einer einzigen Stelle gespeichert und wird von den Programmen
66 gemeinsam genutzt. Dieses Paket enthält die wichtigsten Sets der
67 shared Libraries, die Standard-C-Library und die
68 Standard-Math-Library, ohne die das Linux-System nicht funktioniert.
69 Ferner enthält es den Support für die verschiedenen Sprachgregionen
70 (locale) und die Zeitzonen-Datenbank.
73 Contient les bibliothèques standards utilisées par de nombreux
74 programmes du système. Afin d'économiser l'espace disque et mémoire,
75 et de faciliter les mises à jour, le code commun au système est mis à
76 un endroit et partagé entre les programmes. Ce paquetage contient les
77 bibliothèques partagées les plus importantes, la bibliothèque standard
78 du C et la bibliothèque mathématique standard. Sans celles-ci, un
79 système Linux ne peut fonctionner. Il contient aussi la gestion des
80 langues nationales (locales) et les bases de données des zones
84 W pakiecie znajduj± siê podstawowe biblioteki, u¿ywane przez ró¿ne
85 programy w Twoim systemie. U¿ywanie przez programy bibliotek z tego
86 pakietu oszczêdza miejsce na dysku i pamiêæ. Wiekszo¶æ kodu
87 systemowego jest usytuowane w jednym miejscu i dzielone miêdzy wieloma
88 programami. Pakiet ten zawiera bardzo wa¿ny zbiór bibliotek
89 standardowych, wspó³dzielonych (dynamicznych) bibliotek C i
90 matematycznych. Bez glibc system Linux nie jest w stanie funkcjonowaæ.
91 Znajduj± siê tutaj równie¿ definicje ró¿nych informacji dla wielu
92 jêzyków (locale) oraz definicje stref czasowych.
95 Bu paket, birçok programýn kullandýðý standart kitaplýklarý içerir.
96 Disk alaný ve bellek kullanýmýný azaltmak ve ayný zamanda güncelleme
97 iþlemlerini kolaylaþtýrmak için ortak sistem kodlarý tek bir yerde
98 tutulup programlar arasýnda paylaþtýrýlýr. Bu paket en önemli ortak
99 kitaplýklarý, standart C kitaplýðýný ve standart matematik kitaplýðýný
100 içerir. Bu kitaplýklar olmadan Linux sistemi çalýþmayacaktýr. Yerel
101 dil desteði ve zaman dilimi veri tabaný da bu pakette yer alýr.
104 Summary: Additional libraries required to compile
105 Summary(de): Weitere Libraries zum Kompilieren
106 Summary(fr): Librairies supplémentaires nécessaires à la compilation.
107 Summary(pl): Dodatkowe biblioteki wymagane podczas kompilacji
108 Summary(tr): Geliþtirme için gerekli diðer kitaplýklar
109 Group: Development/Libraries
110 Group(de): Entwicklung/Libraries
111 Group(fr): Development/Librairies
112 Group(pl): Programowanie/Biblioteki
113 Requires: %{name} = %{version}
116 To develop programs which use the standard C libraries (which nearly
117 all programs do), the system needs to have these standard header files
118 and object files available for creating the executables.
120 %description devel -l de
121 Bei der Entwicklung von Programmen, die die Standard-C-Libraries
122 verwenden (also fast alle), benötigt das System diese Standard-Header-
123 und Objektdateien zum Erstellen der ausführbaren Programme.
125 %description devel -l fr
126 Pour développer des programmes utilisant les bibliothèques standard du
127 C (ce que presque tous les programmes font), le système doit posséder
128 ces fichiers en-têtes et objets standards pour créer les exécutables.
130 %description devel -l pl
131 Pakiet ten jest niezbêdny przy tworzeniu w³asnych programów
132 korzystaj±cych ze standardowej biblioteki C. Znajduj± siê tutaj pliki
133 nag³ówkowe oraz pliki objektowe, niezbêdne do kompilacji programów
134 wykonywalnych i innych bibliotek.
136 %description devel -l tr
137 C kitaplýðýný kullanan (ki hemen hemen hepsi kullanýyor) programlar
138 geliþtirmek için gereken standart baþlýk dosyalarý ve statik
142 Summary: Name Service Caching Daemon
143 Summary(pl): Name Service Caching Daemon
144 Group: Networking/Daemons
145 Group(de): Netzwerkwesen/Server
146 Group(pl): Sieciowe/Serwery
147 Prereq: /sbin/chkconfig
148 Prereq: rc-scripts >= 0.2.0
149 Requires: %{name} = %{version}
152 nscd caches name service lookups; it can dramatically improve
153 performance with NIS+, and may help with DNS as well. You cannot use
154 nscd with 2.0 kernels, due to bugs in the kernel-side thread support.
155 nscd happens to hit these bugs particularly hard.
157 %description -n nscd -l pl
158 nscd zapmiêtuje zapytania i odpowiedzi NIS oraz DNS. Pozwala
159 drastycznie poprawiæ szybko¶æ dzia³ania NIS+. Nie jest mo¿liwe
160 u¿ywanie nscd z j±drami serii 2.0.x z powodu b³êdów po stronie j±dra
163 %package -n localedb-src
164 Summary: Souce code locale database
165 Summary(pl): Kod ¼ród³owy bazy locale
169 Requires: %{name} = %{version}
171 %description -n localedb-src
172 This add-on package contains the data needed to build the locale data
173 files to use the internationalization features of the GNU libc. glibc
174 package contains standard set of locale binary database and You need
175 this package if want build some non standard locale database.
177 %description -n localedb-src -l pl
178 Pakiet ten kod ¼ród³owy baz locale który jest potrzebny do zbudowania
179 binarnej wersji baz locale potrzebnej do poprawnego wspierania ró¿nych
180 jêzyków przez glibc. Pakiet glibc zawira binarn± wersjê standardowych
181 baz locale i ten pakiet jest potrzebny tylko w sytuacji kiedy potrzeba
182 wygenerowaæ jak±¶ niestandardow± bazê.
185 Summary: Convert encoding of given files from one encoding to another
186 Summary(pl): Program do konwersji plików tekstowych z jednego kodowania do innego
190 Requires: %{name} = %{version}
192 %description -n iconv
193 Convert encoding of given files from one encoding to another. You need
194 this package if You want to convert some documet from one encoding to
195 another or if You have installed some programs which use Generic
196 Character Set Conversion Interface.
198 %description -n iconv -l pl
199 Program do konwersji plików tekstowych z jednego kodowania do innego.
200 Musisz mieæ zainstalowany ten pakiet je¿eli wykonujesz konwersjê
201 dokumentów z jednego kodowania do innego lub je¿eli masz zainstalowane
202 jakie¶ programy, które korzystaj± z Generic Character Set Conversion
203 Interface w glibc, czyli z zestawu funkcji z tej biblioteki, które
204 umo¿liwiaj± konwersjê kodowania danych z poziomu dowolnego programu.
207 Summary: Static libraries
208 Summary(pl): Biblioteki statyczne
209 Group: Development/Libraries
210 Group(de): Entwicklung/Libraries
211 Group(fr): Development/Librairies
212 Group(pl): Programowanie/Biblioteki
213 Requires: %{name}-devel = %{version}
216 GNU libc static libraries.
218 %description static -l pl
219 Biblioteki statyczne GNU libc.
222 Summary: glibc with profiling support
223 Summary(de): glibc mit Profil-Unterstützung
224 Summary(fr): glibc avec support pour profiling
225 Summary(pl): glibc ze wsparciem dla profilowania
226 Summary(tr): Ölçüm desteði olan glibc
227 Group: Development/Libraries/Libc
228 Group(de): Entwicklung/Libraries/Libc
229 Group(pl): Programowanie/Biblioteki/Libc
230 Obsoletes: libc-profile
231 Requires: %{name}-devel = %{version}
234 When programs are being profiled used gprof, they must use these
235 libraries instead of the standard C libraries for gprof to be able to
236 profile them correctly.
238 %description profile -l de
239 Damit Programmprofile mit gprof richtig erstellt werden, müssen diese
240 Libraries anstelle der üblichen C-Libraries verwendet werden.
242 %description profile -l pl
243 Programy profilowane za pomoc± gprof musz± u¿ywaæ tych bibliotek
244 zamiast standardowych bibliotek C, aby gprof móg³ odpowiednio je
247 %description profile -l tr
248 gprof kullanýlarak ölçülen programlar standart C kitaplýðý yerine bu
249 kitaplýðý kullanmak zorundadýrlar.
252 Summary: glibc PIC archive
253 Summary(pl): archiwum PIC glibc
254 Group: Development/Libraries/Libc
255 Group(de): Entwicklung/Libraries/Libc
256 Group(pl): Programowanie/Biblioteki/Libc
257 Requires: %{name}-devel = %{version}
260 GNU C Library PIC archive contains an archive library (ar file)
261 composed of individual shared objects. This is used for creating a
262 library which is a smaller subset of the standard libc shared library.
264 %description pic -l pl
265 Archiwum PIC biblioteki GNU C zawiera archiwaln± bibliotekê (plik ar)
266 z³o¿on± z pojedyñczych obiektów wspó³dzielonych. U¿ywana jest do
267 tworzenia biblioteki bêd±cej mniejszym podzestawem standardowej
268 biblioteki wspó³dzielonej libc.
270 %package -n nss_compat
271 Summary: Old style NYS NSS glibc module
272 Summary(pl): Stary modu³ NYS NSS glibc
274 Group(de): Gründsätzlich
275 Group(pl): Podstawowe
276 Requires: %{name} = %{version}
278 %description -n nss_compat
279 Old style NYS NSS glibc module.
281 %description -n nss_compat -l pl
282 Stary modu³ NYS NSS glibc.
285 Summary: BIND NSS glibc module
286 Summary(pl): Modu³ BIND NSS glibc
288 Group(de): Gründsätzlich
289 Group(pl): Podstawowe
290 Requires: %{name} = %{version}
292 %description -n nss_dns
293 BIND NSS glibc module.
295 %description -n nss_dns -l pl
296 Modu³ BIND NSS glibc.
298 %package -n nss_files
299 Summary: Traditional files databases NSS glibc module
300 Summary(pl): Modu³ tradycyjnych plikowych baz danych NSS glibc
302 Group(de): Gründsätzlich
303 Group(pl): Podstawowe
304 Requires: %{name} = %{version}
306 %description -n nss_files
307 Traditional files databases NSS glibc module.
309 %description -n nss_files -l pl
310 Modu³ tradycyjnych plikowych baz danych NSS glibc.
312 %package -n nss_hesiod
313 Summary: Hesiod NSS glibc module
314 Summary(pl): Modu³ hesiod NSS glibc
316 Group(de): Gründsätzlich
317 Group(pl): Podstawowe
318 Requires: %{name} = %{version}
320 %description -n nss_hesiod
321 glibc NSS (Name Service Switch) module for databases access.
323 %description -n nss_hesiod -l pl
324 Modu³ glibc NSS (Name Service Switch) dostêpu do baz danych.
327 Summary: NIS(YP) NSS glibc module
328 Summary(pl): Modu³ NIS(YP) NSS glibc
330 Group(de): Gründsätzlich
331 Group(pl): Podstawowe
332 Requires: %{name} = %{version}
334 %description -n nss_nis
335 glibc NSS (Name Service Switch) module for NIS(YP) databases access.
337 %description -n nss_nis -l pl
338 Modu³ glibc NSS (Name Service Switch) dostêpu do baz danych NIS(YP).
340 %package -n nss_nisplus
341 Summary: NIS+ NSS module
342 Summary(pl): Modu³ NIS+ NSS
344 Group(de): Gründsätzlich
345 Group(pl): Podstawowe
346 Requires: %{name} = %{version}
348 %description -n nss_nisplus
349 glibc NSS (Name Service Switch) module for NIS+ databases accesa.
351 %description -n nss_nisplus -l pl
352 Modu³ glibc NSS (Name Service Switch) dostêpu do baz danych NIS+.
358 Group(de): Applikationen
360 Requires: %{name} = %{version}
363 %description memusage
366 %description memusage -l pl
384 LDFLAGS=" " ; export LDFLAGS
386 --enable-add-ons=linuxthreads \
387 --enable-kernel="%{?kernel:%{kernel}}%{!?kernel:%{min_kernel}}" \
394 rm -rf $RPM_BUILD_ROOT
395 install -d $RPM_BUILD_ROOT{/etc/{rc.d/init.d,sysconfig,logrotate.d},%{_mandir}/man{3,8},/var/log}
397 env LANGUAGE=C LC_ALL=C \
399 install_root=$RPM_BUILD_ROOT \
400 infodir=%{_infodir} \
403 env LANGUAGE=C LC_ALL=C \
404 %{__make} install-locales -C localedata \
405 install_root=$RPM_BUILD_ROOT
407 PICFILES="libc_pic.a libc.map
408 math/libm_pic.a libm.map
409 resolv/libresolv_pic.a"
411 install $PICFILES $RPM_BUILD_ROOT%{_libdir}
412 install elf/soinit.os $RPM_BUILD_ROOT%{_libdir}/soinit.o
413 install elf/sofini.os $RPM_BUILD_ROOT%{_libdir}/sofini.o
415 mv -f $RPM_BUILD_ROOT/lib/libmemusage.so $RPM_BUILD_ROOT%{_libdir}
416 mv -f $RPM_BUILD_ROOT/lib/libpcprofile.so $RPM_BUILD_ROOT%{_libdir}
418 %{__make} -C linuxthreads/man
419 install linuxthreads/man/*.3thr $RPM_BUILD_ROOT%{_mandir}/man3
421 rm -rf $RPM_BUILD_ROOT%{_datadir}/zoneinfo/{localtime,posixtime,posixrules}
423 ln -sf ../../..%{_sysconfdir}/localtime $RPM_BUILD_ROOT%{_datadir}/zoneinfo/localtime
424 ln -sf localtime $RPM_BUILD_ROOT%{_datadir}/zoneinfo/posixtime
425 ln -sf localtime $RPM_BUILD_ROOT%{_datadir}/zoneinfo/posixrules
426 ln -sf ../..%{_libdir}/libbsd-compat.a $RPM_BUILD_ROOT%{_libdir}/libbsd.a
428 rm -f $RPM_BUILD_ROOT%{_sysconfdir}/localtime
430 install %{SOURCE2} $RPM_BUILD_ROOT/etc/rc.d/init.d/nscd
431 install %{SOURCE3} $RPM_BUILD_ROOT/etc/sysconfig/nscd
432 install %{SOURCE4} $RPM_BUILD_ROOT/etc/logrotate.d/nscd
433 install nscd/nscd.conf $RPM_BUILD_ROOT%{_sysconfdir}
434 install nss/nsswitch.conf $RPM_BUILD_ROOT%{_sysconfdir}
436 install %{SOURCE5} $RPM_BUILD_ROOT%{_mandir}/man8/
437 tar xzvf %{SOURCE6} -C $RPM_BUILD_ROOT%{_mandir}/
438 tar xzvf %{SOURCE7} -C $RPM_BUILD_ROOT%{_mandir}/
439 touch $RPM_BUILD_ROOT%{_sysconfdir}/ld.so.{cache,conf}
441 :> $RPM_BUILD_ROOT/var/log/nscd
444 install -d documentation
446 cp linuxthreads/ChangeLog documentation/ChangeLog.threads
447 cp linuxthreads/Changes documentation/Changes.threads
448 cp linuxthreads/README documentation/README.threads
449 cp crypt/README.ufc-crypt documentation/
451 cp ChangeLog ChangeLog.8 documentation
453 gzip -9nf README NEWS FAQ BUGS NOTES PROJECTS documentation/*
455 # strip ld.so with --strip-debug only (other ELFs are stripped by rpm):
456 %{!?debug:strip -g -R .comment -R .note $RPM_BUILD_ROOT/lib/ld-%{version}.so}
458 # Collect locale files and mark them with %%lang()
460 for i in $RPM_BUILD_ROOT%{_datadir}/locale/* $RPM_BUILD_ROOT%{_libdir}/locale/* ; do
462 lang=`echo $i | sed -e 's/.*locale\///' -e 's/\/.*//'`
463 dir=`echo $i | sed "s#$RPM_BUILD_ROOT##"`
464 echo "%lang($lang) $dir" >> glibc.lang
468 %post -p /sbin/ldconfig
469 %postun -p /sbin/ldconfig
471 %post memusage -p /sbin/ldconfig
472 %postun memusage -p /sbin/ldconfig
475 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
478 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
481 /sbin/chkconfig --add nscd
482 touch /var/log/nscd && (chown root.root /var/log/nscd ; chmod 640 /var/log/nscd)
483 if [ -f /var/lock/subsys/nscd ]; then
484 /etc/rc.d/init.d/nscd restart 1>&2
486 echo "Run \"/etc/rc.d/init.d/nscd start\" to start nscd daemon." 1>&2
490 if [ "$1" = "0" ]; then
491 if [ -f /var/lock/subsys/nscd ]; then
492 /etc/rc.d/init.d/nscd stop 1>&2
494 /sbin/chkconfig --del nscd
498 rm -rf $RPM_BUILD_ROOT
500 %files -f %{name}.lang
501 %defattr(644,root,root,755)
502 %doc {README,NEWS,FAQ,BUGS}.gz
504 %config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/ld.so.conf
505 %config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/nsswitch.conf
506 %config %{_sysconfdir}/rpc
507 %ghost %{_sysconfdir}/ld.so.cache
509 %attr(755,root,root) /sbin/*
510 %attr(755,root,root) %{_bindir}/catchsegv
511 %attr(755,root,root) %{_bindir}/getent
512 %attr(755,root,root) %{_bindir}/glibcbug
513 %attr(755,root,root) %{_bindir}/iconv
514 %attr(755,root,root) %{_bindir}/ldd
516 %attr(755,root,root) %{_bindir}/lddlibc4
518 %attr(755,root,root) %{_bindir}/locale
519 %attr(755,root,root) %{_bindir}/rpcgen
520 %attr(755,root,root) %{_bindir}/tzselect
522 %attr(755,root,root) %{_sbindir}/rpcinfo
523 %attr(755,root,root) %{_sbindir}/zdump
524 %attr(755,root,root) %{_sbindir}/zic
526 %attr(755,root,root) /lib/ld-*
527 %attr(755,root,root) /lib/libdl*
528 %attr(755,root,root) /lib/libnsl*
529 %attr(755,root,root) /lib/lib[BScmprtu]*
531 %dir %{_datadir}/locale
532 %{_datadir}/locale/locale.alias
535 %dir %{_libdir}/locale
537 %{_mandir}/man[578]/*
538 %lang(cs) %{_mandir}/cs/man[578]/*
539 %lang(de) %{_mandir}/de/man[578]/*
540 %lang(es) %{_mandir}/es/man[578]/*
541 %lang(fr) %{_mandir}/fr/man[578]/*
542 %lang(hu) %{_mandir}/hu/man[578]/*
543 %lang(it) %{_mandir}/it/man[578]/*
544 %lang(ja) %{_mandir}/ja/man[578]/*
545 %lang(ko) %{_mandir}/ko/man[578]/*
546 %lang(pl) %{_mandir}/pl/man[578]/*
547 %lang(pt) %{_mandir}/pt/man[578]/*
548 %lang(ru) %{_mandir}/ru/man[578]/*
551 %defattr(644,root,root,755)
552 %attr(755,root,root) /lib/libnss_dns*.so*
555 %defattr(644,root,root,755)
556 %attr(755,root,root) /lib/libnss_files*.so*
559 %defattr(644,root,root,755)
560 %attr(755,root,root) /lib/libnss_compat*.so*
563 %defattr(644,root,root,755)
564 %attr(755,root,root) /lib/libnss_hesiod*.so*
567 %defattr(644,root,root,755)
568 %attr(755,root,root) /lib/libnss_nis.so.*
569 %attr(755,root,root) /lib/libnss_nis-*.so
571 %files -n nss_nisplus
572 %defattr(644,root,root,755)
573 %attr(755,root,root) /lib/libnss_nisplus*.so*
576 %defattr(644,root,root,755)
577 %attr(755,root,root) %{_bindir}/memusage*
578 %attr(755,root,root) %{_libdir}/libmemusage*
581 %defattr(644,root,root,755)
582 %doc documentation/* {NOTES,PROJECTS}.gz
583 %attr(755,root,root) %{_bindir}/gencat
584 %attr(755,root,root) %{_bindir}/getconf
585 %attr(755,root,root) %{_bindir}/*prof*
586 %attr(755,root,root) %{_bindir}/*trace
590 %{_infodir}/libc.info*
592 %attr(755,root,root) %{_libdir}/lib*.so
593 %attr(755,root,root) %{_libdir}/*crt*.o
594 %{_libdir}/libc_nonshared.a
599 %defattr(644,root,root,755)
600 %attr(640,root,root) %config %verify(not size mtime md5) /etc/sysconfig/nscd
601 %attr(640,root,root) %config(noreplace) %verify(not mtime md5 size) %{_sysconfdir}/nscd.*
602 %attr(754,root,root) /etc/rc.d/init.d/nscd
603 %attr(755,root,root) %{_sbindir}/nscd*
604 %attr(640,root,root) /etc/logrotate.d/nscd
605 %attr(640,root,root) %ghost /var/log/nscd
607 %files -n localedb-src
608 %defattr(644,root,root,755)
609 %attr(755,root,root) %{_bindir}/localedef
613 %defattr(644,root,root,755)
614 %dir %{_libdir}/gconv
615 %{_libdir}/gconv/gconv-modules
616 %attr(755,root,root) %{_libdir}/gconv/*.so
619 %defattr(644,root,root,755)
620 %{_libdir}/libBrokenLocale.a
621 %{_libdir}/libbsd-compat.a
624 %{_libdir}/libcrypt.a
629 %{_libdir}/libmcheck.a
631 %{_libdir}/libpthread.a
632 %{_libdir}/libresolv.a
633 %{_libdir}/librpcsvc.a
638 %defattr(644,root,root,755)
642 %defattr(644,root,root,755)
643 %{_libdir}/lib*_pic.a