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}-memusage.patch
30 URL: http://www.gnu.org/software/libc/
32 BuildRequires: gd-devel
33 BuildRequires: libpng-devel
34 BuildRequires: texinfo
35 BuildRequires: rpm-build >= 4.0-11
38 Provides: /sbin/ldconfig
39 Obsoletes: %{name}-profile
40 Obsoletes: %{name}-debug
44 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
45 Conflicts: kernel < %{min_kernel}
48 Contains the standard libraries that are used by multiple programs on
49 the system. In order to save disk space and memory, as well as to ease
50 upgrades, common system code is kept in one place and shared between
51 programs. This package contains the most important sets of shared
52 libraries, the standard C library and the standard math library.
53 Without these, a Linux system will not function. It also contains
54 national language (locale) support and timezone databases.
57 Enthält die Standard-Libraries, die von verschiedenen Programmen im
58 System benutzt werden. Um Festplatten- und Arbeitsspeicher zu sparen
59 und zur Vereinfachung von Upgrades ist der gemeinsame Systemcode an
60 einer einzigen Stelle gespeichert und wird von den Programmen
61 gemeinsam genutzt. Dieses Paket enthält die wichtigsten Sets der
62 shared Libraries, die Standard-C-Library und die
63 Standard-Math-Library, ohne die das Linux-System nicht funktioniert.
64 Ferner enthält es den Support für die verschiedenen Sprachgregionen
65 (locale) und die Zeitzonen-Datenbank.
68 Contient les bibliothèques standards utilisées par de nombreux
69 programmes du système. Afin d'économiser l'espace disque et mémoire,
70 et de faciliter les mises à jour, le code commun au système est mis à
71 un endroit et partagé entre les programmes. Ce paquetage contient les
72 bibliothèques partagées les plus importantes, la bibliothèque standard
73 du C et la bibliothèque mathématique standard. Sans celles-ci, un
74 système Linux ne peut fonctionner. Il contient aussi la gestion des
75 langues nationales (locales) et les bases de données des zones
79 W pakiecie znajduj± siê podstawowe biblioteki, u¿ywane przez ró¿ne
80 programy w Twoim systemie. U¿ywanie przez programy bibliotek z tego
81 pakietu oszczêdza miejsce na dysku i pamiêæ. Wiekszo¶æ kodu
82 systemowego jest usytuowane w jednym miejscu i dzielone miêdzy wieloma
83 programami. Pakiet ten zawiera bardzo wa¿ny zbiór bibliotek
84 standardowych wspó³dzielonych (dynamicznych) bibliotek C i
85 matematycznych. Bez glibc system Linux nie jest w stanie funkcjonowaæ.
86 Znajduj± siê tutaj równie¿ definicje ró¿nych informacji dla wielu
87 jêzyków (locale) oraz definicje stref czasowych.
90 Bu paket, birçok programýn kullandýðý standart kitaplýklarý içerir.
91 Disk alaný ve bellek kullanýmýný azaltmak ve ayný zamanda güncelleme
92 iþlemlerini kolaylaþtýrmak için ortak sistem kodlarý tek bir yerde
93 tutulup programlar arasýnda paylaþtýrýlýr. Bu paket en önemli ortak
94 kitaplýklarý, standart C kitaplýðýný ve standart matematik kitaplýðýný
95 içerir. Bu kitaplýklar olmadan Linux sistemi çalýþmayacaktýr. Yerel
96 dil desteði ve zaman dilimi veri tabaný da bu pakette yer alýr.
99 Summary: Additional libraries required to compile
100 Summary(de): Weitere Libraries zum Kompilieren
101 Summary(fr): Librairies supplémentaires nécessaires à la compilation.
102 Summary(pl): Dodatkowe biblioteki wymagane podczas kompilacji
103 Summary(tr): Geliþtirme için gerekli diðer kitaplýklar
104 Group: Development/Libraries
105 Group(de): Entwicklung/Libraries
106 Group(fr): Development/Librairies
107 Group(pl): Programowanie/Biblioteki
108 Requires: %{name} = %{version}
111 To develop programs which use the standard C libraries (which nearly
112 all programs do), the system needs to have these standard header files
113 and object files available for creating the executables.
115 %description -l de devel
116 Bei der Entwicklung von Programmen, die die Standard-C-Libraries
117 verwenden (also fast alle), benötigt das System diese Standard-Header-
118 und Objektdateien zum Erstellen der ausführbaren Programme.
120 %description -l fr devel
121 Pour développer des programmes utilisant les bibliothèques standard du
122 C (ce que presque tous les programmes font), le système doit posséder
123 ces fichiers en-têtes et objets standards pour créer les exécutables.
125 %description -l pl devel
126 Pakiet ten jest niezbêdny przy tworzeniu w³asnych programów
127 korzystaj±cych ze standardowej biblioteki C. Znajduj± siê tutaj pliki
128 nag³ówkowe oraz pliki objektowe, niezbêdne do kompilacji programów
129 wykonywalnych i innych bibliotek.
131 %description -l tr devel
132 C kitaplýðýný kullanan (ki hemen hemen hepsi kullanýyor) programlar
133 geliþtirmek için gereken standart baþlýk dosyalarý ve statik
137 Summary: Name Service Caching Daemon
138 Summary(pl): Name Service Caching Daemon
139 Group: Networking/Daemons
140 Group(de): Netzwerkwesen/Server
141 Group(pl): Sieciowe/Serwery
142 Prereq: /sbin/chkconfig
143 Prereq: rc-scripts >= 0.2.0
144 Requires: %{name} = %{version}
147 nscd caches name service lookups; it can dramatically improve
148 performance with NIS+, and may help with DNS as well. You cannot use
149 nscd with 2.0 kernels, due to bugs in the kernel-side thread support.
150 nscd happens to hit these bugs particularly hard.
152 %description -n nscd -l pl
153 nscd zapmiêtuje zapytania i odpowiedzi NIS oraz DNS. Pozwala
154 drastycznie poprawiæ szybko¶æ dzia³ania NIS+. Nie jest mo¿liwe
155 u¿ywanie nscd z j±drami serii 2.0.x z powodu b³adów po stronie j±dra w
158 %package -n localedb-src
159 Summary: Souce code locale database
160 Summary(pl): Kod ¬ród³owy bazy locale
164 Requires: %{name} = %{version}
166 %description -n localedb-src
167 This add-on package contains the data needed to build the locale data
168 files to use the internationalization features of the GNU libc. Glibc
169 package contains standard set of locale binary database and You need
170 this package if want build some non standard locale database.
172 %description -l pl -n localedb-src
173 Pakiet ten kod ¼ród³owy baz locale który jest potrzebny do zbudowania
174 binarnej wersji baz locale potrzebnej do poprawnego wspierania ró¿nych
175 jêzyków przez glibc. Pakiet glibc zawira binarn± wersjê standardowych
176 baz locale i ten pakiet jest potrzebny tylko w sytuacji kiedy potrzeba
177 wygenerowaæ jak±¶ niestandardow± bazê.
180 Summary: Convert encoding of given files from one encoding to another
181 Summary(pl): Program do konwersji plików tekstowych z jednego enkodingu w inny
185 Requires: %{name} = %{version}
187 %description -n iconv
188 Convert encoding of given files from one encoding to another. You need
189 this package if You want to convert some documet from one encoding to
190 another or if You have installed some programs which use Generic
191 Character Set Conversion Interface.
193 %description -l pl -n iconv
194 Program do konwersji plików tekstowych z jednego enkodingu w inny.
195 Potrzebujesz mieæ zainstalowany ten pakiet je¿eli wykonujesz konwersjê
196 dokumentów z jednego enkodingu w inny lub je¿eli masz zainstalowane
197 jakie¶ programy które korzystaj± z Generic Character Set Conversion
198 Interface w glibc, czyli z zestawu funkcji z tej biblioteki, które
199 umo¿liwiaj± konwersjê enkodingu danych z poziomu dowolnego programu.
202 Summary: Static libraries
203 Summary(pl): Biblioteki statyczne
204 Group: Development/Libraries
205 Group(de): Entwicklung/Libraries
206 Group(fr): Development/Librairies
207 Group(pl): Programowanie/Biblioteki
208 Requires: %{name}-devel = %{version}
211 GNU libc static libraries.
213 %description -l pl static
214 Biblioteki statyczne GNU libc.
217 Summary: glibc with profiling support
218 Summary(de): glibc mit Profil-Unterstützung
219 Summary(fr): glibc avec support pour profiling
220 Summary(tr): Ölçüm desteði olan glibc
221 Group: Development/Libraries/Libc
222 Group(de): Entwicklung/Libraries/Libc
223 Group(pl): Programowanie/Biblioteki/Libc
224 Obsoletes: libc-profile
225 Requires: %{name}-devel = %{version}
228 When programs are being profiled used gprof, they must use these
229 libraries instead of the standard C libraries for gprof to be able to
230 profile them correctly.
232 %description -l de profile
233 Damit Programmprofile mit gprof richtig erstellt werden, müssen diese
234 Libraries anstelle der üblichen C-Libraries verwendet werden.
236 %description -l tr profile
237 gprof kullanýlarak ölçülen programlar standart C kitaplýðý yerine bu
238 kitaplýðý kullanmak zorundadýrlar.
241 Summary: glibc PIC archive
242 Group: Development/Libraries/Libc
243 Group(de): Entwicklung/Libraries/Libc
244 Group(pl): Programowanie/Biblioteki/Libc
245 Requires: %{name}-devel = %{version}
248 GNU C Library PIC archive contains an archive library (ar file)
249 composed of individual shared objects. This is used for creating a
250 library which is a smaller subset of the standard libc shared library.
252 %package -n nss_compat
253 Summary: Old style NYS NSS glibc module
255 Group(de): Gründsätzlich
256 Group(pl): Podstawowe
257 Requires: %{name} = %{version}
259 %description -n nss_compat
260 Old style NYS NSS glibc module
263 Summary: BIND NSS glibc module
265 Group(de): Gründsätzlich
266 Group(pl): Podstawowe
267 Requires: %{name} = %{version}
269 %description -n nss_dns
270 BIND NSS glibc module.
272 %package -n nss_files
273 Summary: Traditional files databases NSS glibc module
275 Group(de): Gründsätzlich
276 Group(pl): Podstawowe
277 Requires: %{name} = %{version}
279 %description -n nss_files
280 Traditional files databases NSS glibc module.
282 %package -n nss_hesiod
283 Summary: Hesiod NSS glibc module
285 Group(de): Gründsätzlich
286 Group(pl): Podstawowe
287 Requires: %{name} = %{version}
289 %description -n nss_hesiod
290 Glibc NSS (Name Service Switch) module for databases acces.
293 Summary: NIS(YP) NSS glibc module
295 Group(de): Gründsätzlich
296 Group(pl): Podstawowe
297 Requires: %{name} = %{version}
299 %description -n nss_nis
300 Glibc NSS (Name Service Switch) module for NIS(YP) databases acces.
302 %package -n nss_nisplus
303 Summary: NIS+ NSS module
305 Group(de): Gründsätzlich
306 Group(pl): Podstawowe
307 Requires: %{name} = %{version}
309 %description -n nss_nisplus
310 Glibc NSS (Name Service Switch) module for NIS+ databases acces.
315 Group(de): Applikationen
317 Requires: %{name} = %{version}
320 %description memusage
336 LDFLAGS=" " ; export LDFLAGS
338 --enable-add-ons=linuxthreads \
339 --enable-kernel="%{?kernel:%{kernel}}%{!?kernel:%{min_kernel}}" \
346 rm -rf $RPM_BUILD_ROOT
347 install -d $RPM_BUILD_ROOT/{etc/{rc.d/init.d,sysconfig,logrotate.d},%{_mandir}/man{3,8},var/log}
349 env LANGUAGE=C LC_ALL=C \
351 install_root=$RPM_BUILD_ROOT \
352 infodir=%{_infodir} \
355 env LANGUAGE=C LC_ALL=C \
356 %{__make} install-locales -C localedata \
357 install_root=$RPM_BUILD_ROOT
359 PICFILES="libc_pic.a libc.map
360 math/libm_pic.a libm.map
361 resolv/libresolv_pic.a"
363 install $PICFILES $RPM_BUILD_ROOT/%{_libdir}
364 install elf/soinit.os $RPM_BUILD_ROOT/%{_libdir}/soinit.o
365 install elf/sofini.os $RPM_BUILD_ROOT/%{_libdir}/sofini.o
367 mv -f $RPM_BUILD_ROOT/lib/libmemusage.so $RPM_BUILD_ROOT%{_libdir}
368 mv -f $RPM_BUILD_ROOT/lib/libpcprofile.so $RPM_BUILD_ROOT%{_libdir}
370 %{__make} -C linuxthreads/man
371 install linuxthreads/man/*.3thr $RPM_BUILD_ROOT%{_mandir}/man3
373 rm -rf $RPM_BUILD_ROOT%{_datadir}/zoneinfo/{localtime,posixtime,posixrules}
375 ln -sf ../../..%{_sysconfdir}/localtime $RPM_BUILD_ROOT%{_datadir}/zoneinfo/localtime
376 ln -sf localtime $RPM_BUILD_ROOT%{_datadir}/zoneinfo/posixtime
377 ln -sf localtime $RPM_BUILD_ROOT%{_datadir}/zoneinfo/posixrules
378 ln -sf ../..%{_libdir}/libbsd-compat.a $RPM_BUILD_ROOT%{_libdir}/libbsd.a
380 rm -f $RPM_BUILD_ROOT%{_sysconfdir}/localtime
382 install %{SOURCE2} $RPM_BUILD_ROOT/etc/rc.d/init.d/nscd
383 install %{SOURCE3} $RPM_BUILD_ROOT/etc/sysconfig/nscd
384 install %{SOURCE4} $RPM_BUILD_ROOT/etc/logrotate.d/nscd
385 install nscd/nscd.conf $RPM_BUILD_ROOT%{_sysconfdir}
386 install nss/nsswitch.conf $RPM_BUILD_ROOT%{_sysconfdir}
389 install %{SOURCE5} $RPM_BUILD_ROOT%{_mandir}/man8/
390 touch $RPM_BUILD_ROOT%{_sysconfdir}/ld.so.{cache,conf}
392 :> $RPM_BUILD_ROOT/var/log/nscd
395 install -d documentation
397 cp linuxthreads/ChangeLog documentation/ChangeLog.threads
398 cp linuxthreads/Changes documentation/Changes.threads
399 cp linuxthreads/README documentation/README.threads
400 cp crypt/README.ufc-crypt documentation/
402 cp ChangeLog ChangeLog.8 documentation
404 gzip -9nf README NEWS FAQ BUGS NOTES PROJECTS documentation/*
406 # strip ld.so with --strip-debug only (other ELFs are stripped by rpm):
407 %{!?debug:strip -g -R .comment -R .note $RPM_BUILD_ROOT/lib/ld-%{version}.so}
409 # Collect locale files and mark them with %%lang()
411 for i in $RPM_BUILD_ROOT%{_datadir}/locale/* $RPM_BUILD_ROOT%{_libdir}/locale/* ; do
413 lang=`echo $i | sed -e 's/.*locale\///' -e 's/\/.*//'`
414 dir=`echo $i | sed "s#$RPM_BUILD_ROOT##"`
415 echo "%lang($lang) $dir" >>glibc.lang
420 %post -p /sbin/ldconfig
421 %postun -p /sbin/ldconfig
423 %post memusage -p /sbin/ldconfig
424 %postun memusage -p /sbin/ldconfig
427 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
430 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
433 /sbin/chkconfig --add nscd
434 touch /var/log/nscd && (chown root.root /var/log/nscd ; chmod 640 /var/log/nscd)
435 if [ -f /var/lock/subsys/nscd ]; then
436 /etc/rc.d/init.d/nscd restart 1>&2
438 echo "Run \"/etc/rc.d/init.d/nscd start\" to start nscd daemon." 1>&2
442 if [ "$1" = "0" ]; then
443 if [ -f /var/lock/subsys/nscd ]; then
444 /etc/rc.d/init.d/nscd stop 1>&2
446 /sbin/chkconfig --del nscd
450 rm -rf $RPM_BUILD_ROOT
453 %defattr(644,root,root,755)
454 %doc {README,NEWS,FAQ,BUGS}.gz
456 %config(noreplace) %verify(not mtime md5 size) %{_sysconfdir}/nsswitch.conf
457 %config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/ld.so.conf
458 %config %{_sysconfdir}/rpc
459 %ghost %{_sysconfdir}/ld.so.cache
461 %attr(755,root,root) /sbin/*
462 %attr(755,root,root) %{_bindir}/catchsegv
463 %attr(755,root,root) %{_bindir}/getent
464 %attr(755,root,root) %{_bindir}/glibcbug
465 %attr(755,root,root) %{_bindir}/ldd
467 %attr(755,root,root) %{_bindir}/lddlibc4
469 %attr(755,root,root) %{_bindir}/locale
470 %attr(755,root,root) %{_bindir}/rpcgen
471 %attr(755,root,root) %{_bindir}/tzselect
473 %attr(755,root,root) %{_sbindir}/rpcinfo
474 %attr(755,root,root) %{_sbindir}/zdump
475 %attr(755,root,root) %{_sbindir}/zic
477 %attr(755,root,root) /lib/ld-*
478 %attr(755,root,root) /lib/libdl*
479 %attr(755,root,root) /lib/libnsl*
480 %attr(755,root,root) /lib/lib[BScmprtu]*
482 %dir %{_datadir}/locale
483 %{_datadir}/locale/locale.alias
486 %dir %{_libdir}/locale
488 %{_mandir}/man8/ldconfig*
491 %defattr(644,root,root,755)
492 %attr(755,root,root) /lib/libnss_dns*.so*
495 %defattr(644,root,root,755)
496 %attr(755,root,root) /lib/libnss_files*.so*
499 %defattr(644,root,root,755)
500 %attr(755,root,root) /lib/libnss_compat*.so*
503 %defattr(644,root,root,755)
504 %attr(755,root,root) /lib/libnss_hesiod*.so*
507 %defattr(644,root,root,755)
508 %attr(755,root,root) /lib/libnss_nis.so.*
509 %attr(755,root,root) /lib/libnss_nis-*.so
511 %files -n nss_nisplus
512 %defattr(644,root,root,755)
513 %attr(755,root,root) /lib/libnss_nisplus*.so*
516 %defattr(644,root,root,755)
517 %attr(755,root,root) %{_bindir}/memusage*
518 %attr(755,root,root) %{_libdir}/libmemusage*
521 %defattr(644,root,root,755)
522 %doc documentation/* {NOTES,PROJECTS}.gz
523 %attr(755,root,root) %{_bindir}/gencat
524 %attr(755,root,root) %{_bindir}/getconf
525 %attr(755,root,root) %{_bindir}/*prof*
526 %attr(755,root,root) %{_bindir}/*trace
530 %{_infodir}/libc.info*
532 %attr(755,root,root) %{_libdir}/lib*.so
533 %attr(755,root,root) %{_libdir}/*crt*.o
534 %{_libdir}/libc_nonshared.a
539 %defattr(644,root,root,755)
540 %attr(640,root,root) %config %verify(not size mtime md5) /etc/sysconfig/nscd
541 %attr(640,root,root) %config(noreplace) %verify(not mtime md5 size) %{_sysconfdir}/nscd.*
542 %attr(754,root,root) /etc/rc.d/init.d/nscd
543 %attr(755,root,root) %{_sbindir}/nscd*
544 %attr(640,root,root) /etc/logrotate.d/nscd
545 %attr(640,root,root) %ghost /var/log/nscd
547 %files -n localedb-src
548 %defattr(644,root,root,755)
549 %attr(755,root,root) %{_bindir}/localedef
553 %defattr(644,root,root,755)
554 %attr(755,root,root) %{_bindir}/iconv
555 %dir %{_libdir}/gconv
556 %{_libdir}/gconv/gconv-modules
557 %attr(755,root,root) %{_libdir}/gconv/*.so
560 %defattr(644,root,root,755)
561 %{_libdir}/libBrokenLocale.a
562 %{_libdir}/libbsd-compat.a
565 %{_libdir}/libcrypt.a
570 %{_libdir}/libmcheck.a
572 %{_libdir}/libpthread.a
573 %{_libdir}/libresolv.a
574 %{_libdir}/librpcsvc.a
579 %defattr(644,root,root,755)
583 %defattr(644,root,root,755)
584 %{_libdir}/lib*_pic.a