]> git.pld-linux.org Git - packages/glibc.git/blob - glibc.spec
fa5da9ecc0595bbd117140839991b0238a502659
[packages/glibc.git] / glibc.spec
1 #
2 # Conditional build:
3 # min_kernel    (default is 2.6.12)
4 %bcond_without  memusage        # don't build memusage utility
5 %bcond_without  selinux         # without SELinux support (in nscd)
6 %bcond_with     tests           # perform "make test"
7 %bcond_without  localedb        # don't build localedb-all (is time consuming)
8 %bcond_with     cross           # build using crossgcc (without libgcc_eh)
9 %bcond_with     pax             # PaX support
10 #
11 # TODO:
12 # - look at locale fixes/updates in bugzilla
13 # - no more chicken-egg problem (postshell is no more dynamically linked with libc), remove SONAME symlinks? see files section.
14 # [OLD]
15 # - localedb-gen man pages(?)
16 # - math/{test-fenv,test-tgmath,test-float,test-ifloat},
17 #   debug/backtrace-tst(SEGV)  fail on alpha
18 # - separate pkg for ldconfig so can run ldconfig in glibc post and hacks not
19 #   needed
20 %{!?min_kernel:%global          min_kernel      2.6.12}
21
22 %ifarch sparc64
23 %undefine       with_memusage
24 %endif
25
26 %define         llh_version     7:2.6.20.4-1
27
28 Summary:        GNU libc
29 Summary(de.UTF-8):      GNU libc
30 Summary(es.UTF-8):      GNU libc
31 Summary(fr.UTF-8):      GNU libc
32 Summary(ja.UTF-8):      GNU libc ライブラリ
33 Summary(pl.UTF-8):      GNU libc
34 Summary(ru.UTF-8):      GNU libc версии
35 Summary(tr.UTF-8):      GNU libc
36 Summary(uk.UTF-8):      GNU libc версії
37 Name:           glibc
38 Version:        2.7
39 Release:        8
40 Epoch:          6
41 License:        LGPL v2.1+
42 Group:          Libraries
43 Source0:        ftp://sources.redhat.com/pub/glibc/releases/%{name}-%{version}.tar.bz2
44 # Source0-md5:  065c5952b439deba40083ccd67bcc8f7
45 Source1:        ftp://sources.redhat.com/pub/glibc/releases/%{name}-libidn-%{version}.tar.bz2
46 # Source1-md5:  226809992fb1f3dc6ea23e0f26952ea4
47 Source2:        nscd.init
48 Source3:        nscd.sysconfig
49 Source4:        nscd.logrotate
50 #Source5:       http://www.mif.pg.gda.pl/homepages/ankry/man-PLD/%{name}-man-pages.tar.bz2
51 Source5:        http://qboosh.pl/man/%{name}-man-pages.tar.bz2
52 # Source5-md5:  f464eadf3cf06761f65639e44a179e6b
53 Source6:        %{name}-localedb-gen
54 Source7:        %{name}-LD-path.c
55 Patch1:         %{name}-pl.po-update.patch
56 Patch2:         %{name}-pld.patch
57 Patch3:         %{name}-crypt-blowfish.patch
58 Patch4:         %{name}-alpha-ev6-opcodes.patch
59 Patch5:         %{name}-sparc-softfp-gcc.patch
60 Patch6:         %{name}-paths.patch
61 Patch7:         %{name}-no_opt_override.patch
62 Patch8:         %{name}-missing-nls.patch
63 Patch9:         %{name}-java-libc-wait.patch
64 Patch10:        %{name}-info.patch
65 Patch11:        %{name}-no_debuggable_objects.patch
66
67 Patch13:        %{name}-awk.patch
68 Patch14:        %{name}-sparc-errno_fix.patch
69 Patch15:        %{name}-memmove.patch
70 Patch17:        %{name}-new-charsets.patch
71 Patch18:        %{name}-i586-build-fix.patch
72
73 Patch20:        %{name}-tzfile-noassert.patch
74 Patch21:        %{name}-morelocales.patch
75 Patch22:        %{name}-locale_fixes.patch
76 Patch23:        %{name}-ZA_collate.patch
77
78 Patch25:        %{name}-cross-gcc_eh.patch
79 Patch26:        %{name}-with-stroke.patch
80 Patch30:        %{name}-pax_dl-execstack.patch
81 Patch31:        %{name}-pt_pax.patch
82 Patch32:        %{name}-tzfile_read.patch
83 Patch33:        %{name}-sparc-lowlevellock.patch
84 URL:            http://www.gnu.org/software/libc/
85 %{?with_selinux:BuildRequires:  audit-libs-devel}
86 BuildRequires:  autoconf
87 BuildRequires:  automake
88 %ifarch alpha
89 BuildRequires:  binutils >= 2:2.17.50.0.7
90 %else
91 BuildRequires:  binutils >= 2:2.15.90.0.3
92 %endif
93 BuildRequires:  gcc >= 5:3.4
94 BuildRequires:  gawk
95 %{?with_memusage:BuildRequires: gd-devel >= 2.0.1}
96 BuildRequires:  gettext-devel >= 0.10.36
97 %{!?with_cross:BuildRequires:   dietlibc-static}
98 %{?with_selinux:BuildRequires:  libselinux-devel >= 1.18}
99 BuildRequires:  linux-libc-headers >= %{llh_version}
100 BuildRequires:  perl-base
101 BuildRequires:  rpm-build >= 4.3-0.20030610.28
102 BuildRequires:  rpm-perlprov
103 BuildRequires:  rpmbuild(macros) >= 1.396
104 BuildRequires:  sed >= 4.0.5
105 BuildRequires:  texinfo
106 AutoReq:        false
107 Requires:       %{name}-misc = %{epoch}:%{version}-%{release}
108 Requires:       basesystem
109 Requires:       uname(release) >= %{min_kernel}
110 Provides:       /sbin/ldconfig
111 Provides:       glibc(nptl)
112 Provides:       glibc(tls)
113 Provides:       ldconfig
114 Provides:       rtld(GNU_HASH)
115 Obsoletes:      glibc-common
116 Obsoletes:      glibc-debug
117 Obsoletes:      ldconfig
118 %ifarch %{x8664} sparc64 ppc64
119 Provides:       glibc64
120 Obsoletes:      glibc64
121 %endif
122 Conflicts:      SysVinit < 2.86-11
123 Conflicts:      kernel < %{min_kernel}
124 Conflicts:      kernel24
125 Conflicts:      kernel24-smp
126 Conflicts:      ld.so < 1.9.9-10
127 Conflicts:      man-pages < 1.43
128 Conflicts:      poldek < 0.18.8-5
129 Conflicts:      rc-scripts < 0.3.1-13
130 Conflicts:      rpm < 4.1
131 ExclusiveArch:  i486 i586 i686 pentium3 pentium4 athlon %{x8664} ia64 alpha s390 s390x sparc sparc64 sparcv9 ppc ppc64
132 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
133
134 # avoid -s here (ld.so must not be stripped to allow any program debugging)
135 %define         filterout_ld            (-Wl,)?-[sS] (-Wl,)?--strip.*
136 %define         specflags_sparc64       -mcpu=ultrasparc -mvis -fcall-used-g6
137
138 # -m from CFLAGS or even LDFLAGS is not propagated to some *.o linking
139 %ifarch sparc sparcv9
140 %{expand:%%define       __cc    %{__cc} -m32}
141 %endif
142
143 # Xen-friendly glibc
144 %define         specflags_ia32          -mno-tls-direct-seg-refs
145 %define         specflags_x86_64        -mno-tls-direct-seg-refs
146 %define         specflags_amd64         -mno-tls-direct-seg-refs
147 %define         specflags_ia32e         -mno-tls-direct-seg-refs
148
149 # we don't want perl dependency in glibc-devel
150 %define         _noautoreqfiles         %{_bindir}/mtrace
151 # hack: don't depend on rpmlib(PartialHardlinkSets) for easier upgrade from Ra
152 # (hardlinks here are unlikely to be "partial"... and rpm 4.0.2 from Ra was
153 # patched not to crash on partial hardlinks too)
154 %define         _hack_dontneed_PartialHardlinkSets      1
155 %define         _noautochrpath          .*\\(ldconfig\\|sln\\)
156
157 %description
158 Contains the standard libraries that are used by multiple programs on
159 the system. In order to save disk space and memory, as well as to ease
160 upgrades, common system code is kept in one place and shared between
161 programs. This package contains the most important sets of shared
162 libraries, the standard C library and the standard math library.
163 Without these, a Linux system will not function. It also contains
164 national language (locale) support.
165
166 Can be used on: Linux kernel >= %{min_kernel}.
167
168 %description -l es.UTF-8
169 Contiene las bibliotecas estándared que son usadas por varios
170 programas del sistema. Para ahorrar el espacio en el disco y la
171 memoria, igual que para facilitar actualizaciones, código común del
172 sistema se guarda en un sitio y es compartido entre los programas.
173 Este paquete contiene las bibliotecas compartidas más importantes, es
174 decir la biblioteca C estándar y la biblioteca estándar de matemática.
175 Sin éstas, un sistema Linux no podrá funcionar. También está incluido
176 soporte de idiomas nacionales (locale).
177
178 Puede usarse con: núcleo Linux >= %{min_kernel}.
179
180 %description -l de.UTF-8
181 Enthält die Standard-Libraries, die von verschiedenen Programmen im
182 System benutzt werden. Um Festplatten- und Arbeitsspeicher zu sparen
183 und zur Vereinfachung von Upgrades ist der gemeinsame Systemcode an
184 einer einzigen Stelle gespeichert und wird von den Programmen
185 gemeinsam genutzt. Dieses Paket enthält die wichtigsten Sets der
186 shared Libraries, die Standard-C-Library und die
187 Standard-Math-Library, ohne die das Linux-System nicht funktioniert.
188 Ferner enthält es den Support für die verschiedenen Sprachgregionen
189 (locale).
190
191 Can be used on: Linux kernel >= %{min_kernel}.
192
193 %description -l fr.UTF-8
194 Contient les bibliothèques standards utilisées par de nombreux
195 programmes du système. Afin d'économiser l'espace disque et mémoire,
196 et de faciliter les mises à jour, le code commun au système est mis à
197 un endroit et partagé entre les programmes. Ce paquetage contient les
198 bibliothèques partagées les plus importantes, la bibliothèque standard
199 du C et la bibliothèque mathématique standard. Sans celles-ci, un
200 système Linux ne peut fonctionner. Il contient aussi la gestion des
201 langues nationales (locales).
202
203 Can be used on: Linux kernel >= %{min_kernel}.
204
205 %description -l ja.UTF-8
206 glibc
207 パッケージはシステム上の複数のプログラムで使われる標準ライブラリを
208 ふくみます。ディスクスペースとメモリを節約したり、アップグレードを
209 用意にするために、共通のシステムコードは一つの場所におかれ、プログラム
210 間で共有されます。この部分的なパッケージはシェアドライブラリのかなり
211 重要なセットをふくみます: 標準 C ライブラリと標準数値ライブラリです。
212 この二つのライブラリ抜きでは、Linux システムは機能しません。 glibc
213 パッケージはまた地域言語 (locale) サポートとタイムゾーンデータベース
214 サポートをふくみます。
215
216 Can be used on: Linux kernel >= %{min_kernel}.
217
218 %description -l pl.UTF-8
219 W pakiecie znajdują się podstawowe biblioteki, używane przez różne
220 programy w Twoim systemie. Używanie przez programy bibliotek z tego
221 pakietu oszczędza miejsce na dysku i pamięć. Większość kodu
222 systemowego jest usytuowane w jednym miejscu i dzielone między wieloma
223 programami. Pakiet ten zawiera bardzo ważny zbiór bibliotek
224 standardowych, współdzielonych (dynamicznych) bibliotek C i
225 matematycznych. Bez glibc system Linux nie jest w stanie funkcjonować.
226 Znajdują się tutaj również definicje różnych informacji dla wielu
227 języków (locale).
228
229 Pakiet jest przeznaczony dla jądra Linuksa >= %{min_kernel}.
230
231 %description -l ru.UTF-8
232 Содержит стандартные библиотеки, используемые многочисленными
233 программами в системе. Для того, чтобы сохранить дисковое пространство
234 и память, а также для простоты обновления, системный код, общий для
235 всех программ, хранится в одном месте и коллективно используется всеми
236 программами. Этот пакет содержит наиболее важные из разделяемых
237 библиотек - стандартную библиотеку C и стандартную библиотеку
238 математики. Без этих библиотек Linux функционировать не будет. Также
239 пакет содержит поддержку национальных языков (locale).
240
241 Can be used on: Linux kernel >= %{min_kernel}.
242
243 %description -l tr.UTF-8
244 Bu paket, birçok programın kullandığı standart kitaplıkları içerir.
245 Disk alanı ve bellek kullanımını azaltmak ve aynı zamanda güncelleme
246 işlemlerini kolaylaştırmak için ortak sistem kodları tek bir yerde
247 tutulup programlar arasında paylaştırılır. Bu paket en önemli ortak
248 kitaplıkları, standart C kitaplığını ve standart matematik kitaplığını
249 içerir. Bu kitaplıklar olmadan Linux sistemi çalışmayacaktır. Yerel
250 dil desteği ve zaman dilimi veri tabanı da bu pakette yer alır.
251
252 Can be used on: Linux kernel >= %{min_kernel}.
253
254 %description -l uk.UTF-8
255 Містить стандартні бібліотеки, котрі використовуються численними
256 програмами в системі. Для того, щоб зберегти дисковий простір та
257 пам'ять, а також для простоти поновлення системи, системний код,
258 спільний для всіх програм, зберігається в одному місці і колективно
259 використовується всіма програмами. Цей пакет містить найбільш важливі
260 з динамічних бібліотек - стандартну бібліотеку С та стандартну
261 бібліотеку математики. Без цих бібліотек Linux функціонувати не буде.
262 Також пакет містить підтримку національних мов (locale).
263
264 Can be used on: Linux kernel >= %{min_kernel}.
265
266 %package misc
267 Summary:        Utilities and data used by glibc
268 Summary(pl.UTF-8):      Narzędzia i dane używane przez glibc
269 Group:          Applications/System
270 AutoReq:        false
271 Requires(pre):  %{name} = %{epoch}:%{version}-%{release}
272 Requires:       %{name} = %{epoch}:%{version}-%{release}
273
274 %description misc
275 Utilities and data used by glibc.
276
277 %description misc -l pl.UTF-8
278 Narzędzia i dane używane przez glibc.
279
280 %package devel
281 Summary:        Additional libraries required to compile
282 Summary(de.UTF-8):      Weitere Libraries zum Kompilieren
283 Summary(es.UTF-8):      Bibliotecas adicionales necesarias para la compilación
284 Summary(fr.UTF-8):      Librairies supplémentaires nécessaires à la compilation
285 Summary(ja.UTF-8):      標準 C ライブラリで使われるヘッダーとオブジェクトファイル
286 Summary(pl.UTF-8):      Dodatkowe biblioteki wymagane podczas kompilacji
287 Summary(ru.UTF-8):      Дополнительные библиотеки, необходимые для компиляции
288 Summary(tr.UTF-8):      Geliştirme için gerekli diğer kitaplıklar
289 Summary(uk.UTF-8):      Додаткові бібліотеки, потрібні для компіляції
290 Group:          Development/Libraries
291 Requires:       %{name} = %{epoch}:%{version}-%{release}
292 Requires:       %{name}-devel-utils = %{epoch}:%{version}-%{release}
293 Requires:       %{name}-headers = %{epoch}:%{version}-%{release}
294 Provides:       %{name}-devel(%{_target_cpu}) = %{epoch}:%{version}-%{release}
295 Obsoletes:      libiconv-devel
296
297 %description devel
298 To develop programs which use the standard C libraries (which nearly
299 all programs do), the system needs to have these standard header files
300 and object files available for creating the executables.
301
302 %description devel -l de.UTF-8
303 Bei der Entwicklung von Programmen, die die Standard-C-Libraries
304 verwenden (also fast alle), benötigt das System diese Standard-Header-
305 und Objektdateien zum Erstellen der ausführbaren Programme.
306
307 %description devel -l es.UTF-8
308 Para desarrollar programas que utilizan las bibliotecas C estándar (lo
309 cual hacen prácticamente todos los programas), el sistema necesita
310 disponer de estos ficheros de cabecera y de objetos para crear los
311 ejecutables.
312
313 %description devel -l fr.UTF-8
314 Pour développer des programmes utilisant les bibliothèques standard du
315 C (ce que presque tous les programmes font), le système doit posséder
316 ces fichiers en-têtes et objets standards pour créer les exécutables.
317
318 %description devel -l ja.UTF-8
319 glibc-devel パッケージは(ほとんどすべてのプログラムで使われる)標準 C
320 ライブラリを使用したプログラムを開発するためのヘッダーとオブジェクト
321 ファイルを含みます。もし標準 C
322 ライブラリを使用するプログラムを開発するなら
323 実行ファイルを作成する目的でこれらの標準ヘッダとオブジェクトファイル
324 が使用できます。
325
326 %description devel -l pl.UTF-8
327 Pakiet ten jest niezbędny przy tworzeniu własnych programów
328 korzystających ze standardowej biblioteki C. Znajdują się tutaj pliki
329 nagłówkowe oraz pliki obiektowe, niezbędne do kompilacji programów
330 wykonywalnych i innych bibliotek.
331
332 %description devel -l ru.UTF-8
333 Для разработки программ, использующих стандартные библиотеки C (а
334 практически все программы их используют), системе НЕОБХОДИМЫ хедеры и
335 объектные файлы, содержащиеся в этом пакете, чтобы создавать
336 исполняемые файлы.
337
338 %description devel -l tr.UTF-8
339 C kitaplığını kullanan (ki hemen hemen hepsi kullanıyor) programlar
340 geliştirmek için gereken standart başlık dosyaları ve statik
341 kitaplıklar.
342
343 %description devel -l uk.UTF-8
344 Для розробки програм, що використовують стандартні бібліотеки C
345 (практично всі програми їх використовують), системі НЕОБХІДНІ хедери
346 та об'єктні файли, що містяться в цьому пакеті, цоб створювати
347 виконувані файли.
348
349 %package headers
350 Summary:        Header files for development using standard C libraries
351 Summary(pl.UTF-8):      Pliki nagłówkowe do tworzenia programów przy użyciu standardowych bibliotek C
352 Group:          Development/Building
353 Provides:       %{name}-headers(%{_target_cpu}) = %{epoch}:%{version}-%{release}
354 %ifarch %{x8664}
355 # If both -m32 and -m64 is to be supported on x86_64, x86_64 package
356 # have to be installed, not ix86 one.
357 Obsoletes:      %{name}-headers(i386)
358 Obsoletes:      %{name}-headers(i486)
359 Obsoletes:      %{name}-headers(i586)
360 Obsoletes:      %{name}-headers(i686)
361 Obsoletes:      %{name}-headers(athlon)
362 Obsoletes:      %{name}-headers(pentium3)
363 Obsoletes:      %{name}-headers(pentium4)
364 %endif
365 %ifarch ppc64
366 Obsoletes:      %{name}-headers(ppc)
367 %endif
368 %ifarch s390x
369 Obsoletes:      %{name}-headers(s390)
370 %endif
371 %ifarch sparc64
372 Obsoletes:      %{name}-headers(sparc)
373 %endif
374 Requires:       linux-libc-headers >= %{llh_version}
375
376 %description headers
377 The glibc-headers package contains the header files necessary for
378 developing programs which use the standard C libraries (which are used
379 by nearly all programs). If you are developing programs which will use
380 the standard C libraries, your system needs to have these standard
381 header files available in order to create the executables.
382
383 Install glibc-headers if you are going to develop programs which will
384 use the standard C libraries.
385
386 %description headers -l pl.UTF-8
387 Pakiet glibc-headers zawiera pliki nagłówkowe niezbędne do rozwijania
388 programów używających standardowych bibliotek C (używanych przez
389 prawie wszystkie programy). Jeśli tworzymy programy korzystające ze
390 standardowych bibliotek C, system wymaga dostępności tych
391 standardowych plików nagłówkowych do tworzenia programów
392 wykonywalnych.
393
394 Ten pakiet należy zainstalować jeśli zamierzamy tworzyć programy
395 korzystające ze standardowych bibliotek C.
396
397 %package devel-utils
398 Summary:        Utilities needed for development using standard C libraries
399 Summary(pl.UTF-8):      Narzędzia do tworzenia programów przy użyciu standardowych bibliotek C
400 Group:          Development/Libraries
401 Provides:       %{name}-devel-utils(%{_target_cpu}) = %{epoch}:%{version}-%{release}
402 %ifarch %{x8664}
403 # If both -m32 and -m64 is to be supported on AMD64, x86_64 package
404 # have to be installed, not ix86 one.
405 Obsoletes:      %{name}-devel-utils(i386)
406 Obsoletes:      %{name}-devel-utils(i486)
407 Obsoletes:      %{name}-devel-utils(i586)
408 Obsoletes:      %{name}-devel-utils(i686)
409 Obsoletes:      %{name}-devel-utils(athlon)
410 Obsoletes:      %{name}-devel-utils(pentium3)
411 Obsoletes:      %{name}-devel-utils(pentium4)
412 %endif
413 %ifarch ppc64
414 Obsoletes:      %{name}-devel-utils(ppc)
415 %endif
416 %ifarch s390x
417 Obsoletes:      %{name}-devel-utils(s390)
418 %endif
419 %ifarch sparc64
420 Obsoletes:      %{name}-devel-utils(sparc)
421 %endif
422
423 %description devel-utils
424 The glibc-devel-utils package contains utilities necessary for
425 developing programs which use the standard C libraries (which are used
426 by nearly all programs). If you are developing programs which will use
427 the standard C libraries, your system needs to have these utilities
428 available.
429
430 Install glibc-devel-utils if you are going to develop programs which
431 will use the standard C libraries.
432
433 %description devel-utils -l pl.UTF-8
434 Pakiet glibc-devel-utils zawiera narzędzia niezbędne do rozwijania
435 programów używających standardowych bibliotek C (używanych przez
436 prawie wszystkie programy). Jeśli tworzymy programy korzystające ze
437 standardowych bibliotek C, system wymaga dostępności tych narzędzi do
438 tworzenia programów wykonywalnych.
439
440 Ten pakiet należy zainstalować jeśli zamierzamy tworzyć programy
441 korzystające ze standardowych bibliotek C.
442
443 %package devel-doc
444 Summary:        Documentation needed for development using standard C libraries
445 Summary(pl.UTF-8):      Dokumentacja do tworzenia programów przy użyciu standardowych bibliotek C
446 Group:          Documentation
447 Provides:       %{name}-devel-doc(%{_target_cpu}) = %{epoch}:%{version}-%{release}
448 %ifarch %{x8664}
449 # If both -m32 and -m64 is to be supported on x86_64, x86_64 package
450 # have to be installed, not ix86 one.
451 Obsoletes:      %{name}-devel-doc(i386)
452 Obsoletes:      %{name}-devel-doc(i486)
453 Obsoletes:      %{name}-devel-doc(i586)
454 Obsoletes:      %{name}-devel-doc(i686)
455 Obsoletes:      %{name}-devel-doc(athlon)
456 Obsoletes:      %{name}-devel-doc(pentium3)
457 Obsoletes:      %{name}-devel-doc(pentium4)
458 %endif
459 %ifarch ppc64
460 Obsoletes:      %{name}-devel-doc(ppc)
461 %endif
462 %ifarch s390x
463 Obsoletes:      %{name}-devel-doc(s390)
464 %endif
465 %ifarch sparc64
466 Obsoletes:      %{name}-devel-doc(sparc)
467 %endif
468
469 %description devel-doc
470 The glibc-devel-doc package contains info and manual pages necessary
471 for developing programs which use the standard C libraries (which are
472 used by nearly all programs).
473
474 Install glibc-devel-doc if you are going to develop programs which
475 will use the standard C libraries.
476
477 %description devel-doc -l pl.UTF-8
478 Pakiet glibc-devel-doc zawiera strony info i manuala przydatne do
479 rozwijania programów używających standardowych bibliotek C (używanych
480 przez prawie wszystkie programy).
481
482 Ten pakiet należy zainstalować jeśli zamierzamy tworzyć programy
483 korzystające ze standardowych bibliotek C.
484
485 %package -n nscd
486 Summary:        Name Service Caching Daemon
487 Summary(es.UTF-8):      Demonio de caché del servicio de nombres
488 Summary(ja.UTF-8):      ネームサービスキャッシングデーモン (nacd)
489 Summary(pl.UTF-8):      Demon zapamiętujący odpowiedzi serwisów nazw
490 Summary(ru.UTF-8):      Кэширующий демон сервисов имен
491 Summary(uk.UTF-8):      Кешуючий демон севісів імен
492 Group:          Networking/Daemons
493 License:        GPL v2
494 Requires(post): fileutils
495 Requires(post,preun):   /sbin/chkconfig
496 Requires(postun):       /usr/sbin/groupdel
497 Requires(postun):       /usr/sbin/userdel
498 Requires(pre):  /bin/id
499 Requires(pre):  /usr/bin/getgid
500 Requires(pre):  /usr/sbin/groupadd
501 Requires(pre):  /usr/sbin/useradd
502 Requires:       %{name} = %{epoch}:%{version}-%{release}
503 %{?with_selinux:Requires:       libselinux >= 1.18}
504 Requires:       rc-scripts >= 0.2.0
505 Provides:       group(nscd)
506 Provides:       user(nscd)
507
508 %description -n nscd
509 nscd caches name service lookups; it can dramatically improve
510 performance with NIS+, and may help with DNS as well.
511
512 %description -n nscd -l es.UTF-8
513 nscd guarda las peticiones del servicio de nombres en una caché; eso
514 puede aumentar drásticamente las prestaciones de NIS+, y también puede
515 ayudar con DNS.
516
517 %description -n nscd -l ja.UTF-8
518 Nscd はネームサービス参照をキャッシュし、NIS+ のパフォーマンスを
519 ドラマティックに改善することができ、DNS を同様に補助します。
520
521 %description -n nscd -l pl.UTF-8
522 nscd zapamiętuje zapytania i odpowiedzi NIS oraz DNS. Pozwala
523 drastycznie poprawić szybkość działania NIS+.
524
525 %description -n nscd -l ru.UTF-8
526 nscd кэширует результаты запросов к сервисам имен; это может резко
527 увеличить производительность работы с NIS+ и, также, может помочь с
528 DNS.
529
530 %description -n nscd -l uk.UTF-8
531 nscd кешує результати запросів до сервісів імен; це може сильно
532 збільшити швидкість роботи з NIS+ і, також, може допомогти з DNS.
533
534 %package -n localedb-src
535 Summary:        locale database source code
536 Summary(es.UTF-8):      Código fuente de la base de datos de los locales
537 Summary(pl.UTF-8):      Kod źródłowy bazy locale
538 Group:          Libraries
539 Requires:       %{name} = %{epoch}:%{version}-%{release}
540 Requires:       gzip
541 Requires:       sed
542
543 %description -n localedb-src
544 This add-on package contains the data needed to build the locale data
545 files to use the internationalization features of the GNU libc.
546
547 %description -n localedb-src -l es.UTF-8
548 Este paquete adicional contiene los datos necesarios para construir
549 los ficheros de locale, imprescindibles para usar las cualidades de
550 internacionalización de GNU libc.
551
552 %description -n localedb-src -l pl.UTF-8
553 Pakiet ten zawiera dane niezbędne do zbudowania binarnych plików
554 lokalizacyjnych, by móc wykorzystać możliwości oferowane przez GNU
555 libc.
556
557 %package localedb-all
558 Summary:        locale database for all locales supported by glibc
559 Summary(es.UTF-8):      Base de datos de todos los locales soportados por glibc
560 Summary(pl.UTF-8):      Baza danych locale dla wszystkich lokalizacji obsługiwanych przez glibc
561 Group:          Libraries
562 Requires:       %{name} = %{epoch}:%{version}-%{release}
563 Requires:       iconv = %{epoch}:%{version}-%{release}
564
565 %description localedb-all
566 This package contains locale database for all locales supported by
567 glibc. In glibc 2.3.x it's one large file (about 39MB) - if you want
568 something smaller with support for chosen locales only, consider
569 installing localedb-src and regenerating database using localedb-gen
570 script (when database is generated, localedb-src can be uninstalled).
571
572 %description localedb-all -l es.UTF-8
573 Este paquete contiene una base de datos de todos los locales
574 soportados por glibc. En glibc 2.3.x ése es un fichero grande (aprox.
575 39 MB) -- si prefiere algo más pequeño, sólo con soporte de unos
576 locales elegidos, considérese instalar localedb-src y regenerar la
577 base de datos usando el escript localedb-gen (una vez que la base de
578 datos esté creada, localedb-src se podrá desinstalar).
579
580 %description localedb-all -l pl.UTF-8
581 Ten pakiet zawiera bazę danych locale dla wszystkich lokalizacji
582 obsługiwanych przez glibc. W glibc 2.3.x jest to jeden duży plik
583 (około 39MB); aby mieć coś mniejszego, z obsługą tylko wybranych
584 lokalizacji, należy zainstalować pakiet localedb-src i przegenerować
585 bazę danych przy użyciu skryptu localedb-gen (po wygenerowaniu bazy
586 pakiet localedb-src można odinstalować).
587
588 %package -n iconv
589 Summary:        Convert encoding of given files from one encoding to another
590 Summary(es.UTF-8):      Convierte entre varias codificaciones de los ficheros dados
591 Summary(pl.UTF-8):      Moduły do konwersji plików tekstowych z jednego kodowania do innego
592 Group:          Libraries
593 Requires:       %{name} = %{epoch}:%{version}-%{release}
594
595 %description -n iconv
596 Convert encoding of given files from one encoding to another. You need
597 this package if you want to convert some document from one encoding to
598 another or if you have installed some programs which use Generic
599 Character Set Conversion Interface.
600
601 %description -n iconv -l es.UTF-8
602 Convierte la codificación de dados ficheros. Necesita este paquete si
603 quiere convertir un documento entre una codificación (juego de
604 caracteres) y otra, o si tiene instalado algún programa que usa el
605 Generic Character Set Conversion Interface (interfaz genérica de
606 conversión de juegos de caracteres).
607
608 %description -n iconv -l pl.UTF-8
609 Moduły do konwersji plików tekstowych z jednego kodowania do innego.
610 Trzeba mieć zainstalowany ten pakiet, aby wykonywać konwersję
611 dokumentów z jednego kodowania do innego lub do używania programów
612 korzystających z Generic Character Set Conversion Interface w glibc,
613 czyli z zestawu funkcji z tej biblioteki, które umożliwiają konwersję
614 kodowania danych z poziomu dowolnego programu.
615
616 %package static
617 Summary:        Static libraries
618 Summary(es.UTF-8):      Bibliotecas estáticas
619 Summary(pl.UTF-8):      Biblioteki statyczne
620 Summary(ru.UTF-8):      Статические библиотеки glibc
621 Summary(uk.UTF-8):      Статичні бібліотеки glibc
622 Group:          Development/Libraries
623 Requires:       %{name}-devel = %{epoch}:%{version}-%{release}
624 Provides:       %{name}-static(%{_target_cpu}) = %{epoch}:%{version}-%{release}
625 Obsoletes:      libiconv-static
626
627 %description static
628 GNU libc static libraries.
629
630 %description static -l es.UTF-8
631 Bibliotecas estáticas de GNU libc.
632
633 %description static -l pl.UTF-8
634 Biblioteki statyczne GNU libc.
635
636 %description static -l ru.UTF-8
637 Это отдельный пакет со статическими библиотеками, которые больше не
638 входят в glibc-devel.
639
640 %description static -l uk.UTF-8
641 Це окремий пакет зі статичними бібліотеками, що більше не входять в
642 склад glibc-devel.
643
644 %package profile
645 Summary:        glibc with profiling support
646 Summary(de.UTF-8):      glibc mit Profil-Unterstützung
647 Summary(es.UTF-8):      glibc con soporte de perfilamiento
648 Summary(fr.UTF-8):      glibc avec support pour profiling
649 Summary(pl.UTF-8):      glibc ze wsparciem dla profilowania
650 Summary(ru.UTF-8):      GNU libc с поддержкой профайлера
651 Summary(tr.UTF-8):      Ölçüm desteği olan glibc
652 Summary(uk.UTF-8):      GNU libc з підтримкою профайлера
653 Group:          Development/Libraries/Libc
654 Requires:       %{name}-devel = %{epoch}:%{version}-%{release}
655 Obsoletes:      libc-profile
656
657 %description profile
658 When programs are being profiled using gprof, they must use these
659 libraries instead of the standard C libraries for gprof to be able to
660 profile them correctly.
661
662 %description profile -l de.UTF-8
663 Damit Programmprofile mit gprof richtig erstellt werden, müssen diese
664 Libraries anstelle der üblichen C-Libraries verwendet werden.
665
666 %description profile -l es.UTF-8
667 Cuando programas son perfilidas usando gprof, tienen que usar estas
668 biblioteces en vez de las estándares para que gprof pueda perfilarlas
669 correctamente.
670
671 %description profile -l pl.UTF-8
672 Programy profilowane za pomocą gprof muszą używać tych bibliotek
673 zamiast standardowych bibliotek C, aby gprof mógł odpowiednio je
674 wyprofilować.
675
676 %description profile -l uk.UTF-8
677 Коли програми досліджуються профайлером gprof, вони повинні
678 використовувати замість стандартних бібліотек бібліотеки, що містяться
679 в цьому пакеті. При використанні стандартних бібліотек gprof замість
680 реальних результатів буде показувати ціни на папайю в Гонолулу в
681 позаминулому році...
682
683 %description profile -l tr.UTF-8
684 gprof kullanılarak ölçülen programlar standart C kitaplığı yerine bu
685 kitaplığı kullanmak zorundadırlar.
686
687 %description profile -l ru.UTF-8
688 Когда программы исследуются профайлером gprof, они должны
689 использовать, вместо стандартных библиотек, библиотеки, включенные в
690 этот пакет. При использовании стандартных библиотек gprof вместо
691 реальных результатов будет показывать цены на папайю в Гонолулу в
692 позапрошлом году...
693
694 %package pic
695 Summary:        glibc PIC archive
696 Summary(es.UTF-8):      Archivo PIC de glibc
697 Summary(pl.UTF-8):      Archiwum PIC glibc
698 Group:          Development/Libraries/Libc
699 Requires:       %{name}-devel = %{epoch}:%{version}-%{release}
700
701 %description pic
702 GNU C Library PIC archive contains an archive library (ar file)
703 composed of individual shared objects. This is used for creating a
704 library which is a smaller subset of the standard libc shared library.
705
706 %description pic -l es.UTF-8
707 El archivo PIC de la biblioteca glibc contiene una biblioteca
708 archivada (un fichero ar) compuesta de individuales objetos
709 compartidos. Es usado para crear una biblioteca que sea un subconjunto
710 más pequeño de la biblioteca libc compartida estándar.
711
712 %description pic -l pl.UTF-8
713 Archiwum PIC biblioteki GNU C zawiera archiwalną bibliotekę (plik ar)
714 złożoną z pojedynczych obiektów współdzielonych. Używana jest do
715 tworzenia biblioteki będącej mniejszym podzestawem standardowej
716 biblioteki współdzielonej libc.
717
718 %package -n nss_compat
719 Summary:        Old style NYS NSS glibc module
720 Summary(es.UTF-8):      El antiguo módulo NYS NSS de glibc
721 Summary(pl.UTF-8):      Stary moduł NYS NSS glibc
722 Group:          Base
723 Requires:       %{name} = %{epoch}:%{version}-%{release}
724
725 %description -n nss_compat
726 Old style NYS NSS glibc module.
727
728 %description -n nss_compat -l es.UTF-8
729 El antiguo módulo NYS NSS de glibc
730
731 %description -n nss_compat -l pl.UTF-8
732 Stary moduł NYS NSS glibc.
733
734 %package -n nss_dns
735 Summary:        BIND NSS glibc module
736 Summary(es.UTF-8):      Módulo BIND NSS de glibc
737 Summary(pl.UTF-8):      Moduł BIND NSS glibc
738 Group:          Base
739 Requires:       %{name} = %{epoch}:%{version}-%{release}
740
741 %description -n nss_dns
742 BIND NSS glibc module.
743
744 %description -n nss_dns -l es.UTF-8
745 Módulo BIND NSS de glibc.
746
747 %description -n nss_dns -l pl.UTF-8
748 Moduł BIND NSS glibc.
749
750 %package -n nss_files
751 Summary:        Traditional files databases NSS glibc module
752 Summary(es.UTF-8):      Módulo de tradicionales bases de datos en ficheros para glibc
753 Summary(pl.UTF-8):      Moduł tradycyjnych plikowych baz danych NSS glibc
754 Group:          Base
755 Requires:       %{name} = %{epoch}:%{version}-%{release}
756
757 %description -n nss_files
758 Traditional files databases NSS glibc module.
759
760 %description -n nss_files -l es.UTF-8
761 Módulo de tradicionales bases de datos en ficheros para glibc.
762
763 %description -n nss_files -l pl.UTF-8
764 Moduł tradycyjnych plikowych baz danych NSS glibc.
765
766 %package -n nss_hesiod
767 Summary:        hesiod NSS glibc module
768 Summary(es.UTF-8):      Módulo hesiod NSS de glibc
769 Summary(pl.UTF-8):      Moduł hesiod NSS glibc
770 Group:          Base
771 Requires:       %{name} = %{epoch}:%{version}-%{release}
772
773 %description -n nss_hesiod
774 glibc NSS (Name Service Switch) module for databases access.
775
776 %description -n nss_hesiod -l es.UTF-8
777 Módulo hesiod NSS de glibc.
778
779 %description -n nss_hesiod -l pl.UTF-8
780 Moduł glibc NSS (Name Service Switch) dostępu do baz danych.
781
782 %package -n nss_nis
783 Summary:        NIS(YP) NSS glibc module
784 Summary(es.UTF-8):      Módulo NIS(YP) NSS de glibc
785 Summary(pl.UTF-8):      Moduł NIS(YP) NSS glibc
786 Group:          Base
787 Requires:       %{name} = %{epoch}:%{version}-%{release}
788
789 %description -n nss_nis
790 glibc NSS (Name Service Switch) module for NIS(YP) databases access.
791
792 %description -n nss_nis -l es.UTF-8
793 Módulo NSS de glibc para acceder las bases de datos NIS(YP).
794
795 %description -n nss_nis -l pl.UTF-8
796 Moduł glibc NSS (Name Service Switch) dostępu do baz danych NIS(YP).
797
798 %package -n nss_nisplus
799 Summary:        NIS+ NSS module
800 Summary(es.UTF-8):      Módulo NIS+ NSS
801 Summary(pl.UTF-8):      Moduł NIS+ NSS
802 Group:          Base
803 Requires:       %{name} = %{epoch}:%{version}-%{release}
804
805 %description -n nss_nisplus
806 glibc NSS (Name Service Switch) module for NIS+ databases access.
807
808 %description -n nss_nisplus -l es.UTF-8
809 Módulo NSS (Name Service Switch) de glibc para acceder las bases de
810 datos NIS+.
811
812 %description -n nss_nisplus -l pl.UTF-8
813 Moduł glibc NSS (Name Service Switch) dostępu do baz danych NIS+.
814
815 %package memusage
816 Summary:        A toy
817 Summary(es.UTF-8):      Un juguete
818 Summary(pl.UTF-8):      Zabawka
819 Group:          Applications
820 Requires:       %{name} = %{epoch}:%{version}-%{release}
821
822 %description memusage
823 A toy.
824
825 %description memusage -l es.UTF-8
826 Un juguete.
827
828 %description memusage -l pl.UTF-8
829 Zabawka.
830
831 %prep
832 %setup -q -a1
833 ln -s glibc-libidn-%{version} libidn
834 %patch1 -p1
835 %patch2 -p1
836 %patch3 -p1
837 %patch4 -p1
838 %patch5 -p1
839 %patch6 -p1
840 %patch7 -p1
841 %patch8 -p1
842 %patch9 -p1
843 %patch10 -p1
844 %patch11 -p1
845 %patch13 -p0
846 %patch14 -p0
847 %patch15 -p1
848 %patch17 -p1
849 %patch18 -p1
850 %patch20 -p1
851 %patch21 -p1
852 %patch22 -p1
853 %patch23 -p1
854 %{?with_cross:%patch25 -p1}
855 %patch26 -p1
856 %{?with_pax:%patch30 -p0}
857 %{?with_pax:%patch31 -p0}
858 %patch32 -p1
859 %patch33 -p1
860
861 # these would be copied to localedb-src
862 rm -f localedata/locales/*{.orig,~}
863
864 chmod +x scripts/cpp
865
866 # i786 (aka pentium4) hack
867 cd nptl/sysdeps/i386 && ln -s i686 i786 && cd -
868 cd nptl/sysdeps/unix/sysv/linux/i386 && ln -s i686 i786 && cd -
869
870 # A lot of programs still misuse memcpy when they have to use
871 # memmove. The memcpy implementation below is not tolerant at
872 # all.
873 rm -f sysdeps/alpha/alphaev6/memcpy.S
874
875 %build
876 # glibc has its own way to remove PLT relocations. / H. J. Lu.
877 unset LD_SYMBOLIC_FUNCTIONS || :
878
879 cp -f /usr/share/automake/config.sub scripts
880 %{__aclocal}
881 %{__autoconf}
882
883 rm -rf builddir
884 install -d builddir
885 cd builddir
886 %ifarch sparc64
887 CC="%{__cc} -m64 -mcpu=ultrasparc -mvis -fcall-used-g6"
888 %endif
889 AWK="gawk" \
890 ../%configure \
891         --enable-kernel="%{min_kernel}" \
892         --enable-omitfp \
893         --with-headers=%{_includedir} \
894         --with%{!?with_selinux:out}-selinux \
895         --with-tls \
896         --enable-add-ons=nptl,libidn \
897         --enable-stackguard-randomization \
898         --enable-hidden-plt \
899         --enable-bind-now \
900         --enable-profile
901
902 %{__make} \
903          sLIBdir=%{_libdir}
904
905 cd ..
906
907 %if %{with tests}
908 for d in builddir; do
909 cd $d
910 env LANGUAGE=C LC_ALL=C \
911 %{__make} tests 2>&1 | awk '
912 BEGIN { file = "" }
913 {
914         if (($0 ~ /\*\*\* \[.*\.out\] Error/) && ($0 !~ /annexc/) && (file == "")) {
915                 file=$0;
916                 gsub(/.*\[/, NIL, file);
917                 gsub(/\].*/, NIL, file);
918         }
919         print $0;
920 }
921 END { if (file != "") { print "ERROR OUTPUT FROM " file; system("cat " file); exit(1); } }'
922 cd ..
923 done
924 %endif
925
926 %if !%{with cross}
927 diet %{__cc} %{SOURCE7} %{rpmcflags} -Os -static -o glibc-postinst
928 %endif
929
930 %install
931 rm -rf $RPM_BUILD_ROOT
932 install -d $RPM_BUILD_ROOT{/etc/{logrotate.d,rc.d/init.d,sysconfig},%{_mandir}/man{3,8},/var/log,/var/{lib,run}/nscd}
933
934 cd builddir
935 env LANGUAGE=C LC_ALL=C \
936 %{__make} install \
937         install_root=$RPM_BUILD_ROOT \
938         infodir=%{_infodir} \
939         mandir=%{_mandir}
940
941 %if %{with localedb}
942 env LANGUAGE=C LC_ALL=C \
943 %{__make} localedata/install-locales \
944         install_root=$RPM_BUILD_ROOT
945 %endif
946
947 PICFILES="libc_pic.a libc.map
948         math/libm_pic.a libm.map
949         resolv/libresolv_pic.a"
950
951 install $PICFILES                               $RPM_BUILD_ROOT%{_libdir}
952 install elf/soinit.os                           $RPM_BUILD_ROOT%{_libdir}/soinit.o
953 install elf/sofini.os                           $RPM_BUILD_ROOT%{_libdir}/sofini.o
954 cd ..
955
956 %if !%{with cross}
957 install glibc-postinst                          $RPM_BUILD_ROOT/sbin
958 %endif
959
960 %{?with_memusage:mv -f $RPM_BUILD_ROOT/%{_lib}/libmemusage.so $RPM_BUILD_ROOT%{_libdir}}
961 mv -f $RPM_BUILD_ROOT/%{_lib}/libpcprofile.so   $RPM_BUILD_ROOT%{_libdir}
962
963 rm -f $RPM_BUILD_ROOT%{_sysconfdir}/localtime
964 # moved to tzdata package
965 rm -rf $RPM_BUILD_ROOT%{_datadir}/zoneinfo
966
967 ln -sf libbsd-compat.a          $RPM_BUILD_ROOT%{_libdir}/libbsd.a
968
969 # make symlinks across top-level directories absolute
970 for l in anl BrokenLocale crypt dl m nsl resolv rt thread_db util ; do
971         rm -f $RPM_BUILD_ROOT%{_libdir}/lib${l}.so
972         ln -sf /%{_lib}/`cd $RPM_BUILD_ROOT/%{_lib} ; echo lib${l}.so.*` $RPM_BUILD_ROOT%{_libdir}/lib${l}.so
973 done
974
975 install %{SOURCE2}              $RPM_BUILD_ROOT/etc/rc.d/init.d/nscd
976 install %{SOURCE3}              $RPM_BUILD_ROOT/etc/sysconfig/nscd
977 install %{SOURCE4}              $RPM_BUILD_ROOT/etc/logrotate.d/nscd
978 install nscd/nscd.conf          $RPM_BUILD_ROOT%{_sysconfdir}
979 sed -e 's#\([ \t]\)db\([ \t]\)#\1#g' nss/nsswitch.conf > $RPM_BUILD_ROOT%{_sysconfdir}/nsswitch.conf
980 install posix/gai.conf          $RPM_BUILD_ROOT%{_sysconfdir}
981
982 bzip2 -dc %{SOURCE5} | tar xf - -C $RPM_BUILD_ROOT%{_mandir}
983 > $RPM_BUILD_ROOT%{_sysconfdir}/ld.so.cache
984 install -d $RPM_BUILD_ROOT%{_sysconfdir}/ld.so.conf.d
985 echo 'include ld.so.conf.d/*.conf' > $RPM_BUILD_ROOT%{_sysconfdir}/ld.so.conf
986 rm -f $RPM_BUILD_ROOT%{_mandir}/hu/man7/man.7
987
988 :> $RPM_BUILD_ROOT/var/log/nscd
989 :> $RPM_BUILD_ROOT/var/lib/nscd/passwd
990 :> $RPM_BUILD_ROOT/var/lib/nscd/group
991 :> $RPM_BUILD_ROOT/var/lib/nscd/hosts
992
993 rm -rf documentation
994 install -d documentation
995
996 for f in ANNOUNCE ChangeLog DESIGN-{barrier,condvar,rwlock,sem}.txt TODO{,-kernel,-testing}; do
997         cp -f nptl/$f documentation/$f.nptl
998 done
999 cp -f crypt/README.ufc-crypt ChangeLog* documentation
1000
1001 rm -f $RPM_BUILD_ROOT%{_libdir}/libnss_*.so
1002
1003 # strip ld.so with --strip-debug only (other ELFs are stripped by rpm):
1004 %{!?debug:strip -g -R .comment -R .note $RPM_BUILD_ROOT/%{_lib}/ld-*.so}
1005
1006 # Collect locale files and mark them with %%lang()
1007 rm -f glibc.lang
1008 echo '%defattr(644,root,root,755)' > glibc.lang
1009 for i in $RPM_BUILD_ROOT%{_datadir}/locale/* $RPM_BUILD_ROOT%{_libdir}/locale/* ; do
1010         if [ -d $i ]; then
1011                 lang=`echo $i | sed -e 's/.*locale\///' -e 's/\/.*//'`
1012                 twochar=1
1013                 # list of long %%lang values we do support
1014                 for j in de_AT de_BE de_CH de_LU es_AR es_MX pt_BR \
1015                          zh_CN zh_CN.gbk zh_HK zh_TW ; do
1016                         if [ $j = "$lang" ]; then
1017                                 twochar=
1018                         fi
1019                 done
1020                 if [ -n "$twochar" ]; then
1021                         if [ `echo $lang | sed "s,_.*,,"` = "zh" ]; then
1022                                 lang=`echo $lang | sed "s,\..*,,"`
1023                         else
1024                                 lang=`echo $lang | sed "s,_.*,,"`
1025                         fi
1026                 fi
1027                 dir=`echo $i | sed "s#$RPM_BUILD_ROOT##"`
1028                 echo "%lang($lang) $dir" >> glibc.lang
1029         fi
1030 done
1031
1032 # NOTES:
1033 # Languages not supported by glibc locales, but usable via $LANGUAGE:
1034 #   ang - Old English (gtk+, gnome)
1035 #   tlh - Klingon (bzflag)
1036 # and variants:
1037 #   sr@ije (use LANGUAGE=sr_ME@ije/sr_RS@ije) (gnome)
1038 #
1039 # To be added when they become supported by glibc:
1040 #   az_IR (gtk+)
1041 #   co (vlc)
1042 #   dv, haw, kok, ps, syr (iso-codes)
1043 #   gn (gn_BR in gnome, maybe gn_PY)
1044 #   my (gaim)
1045 #
1046 # bn is used for bn_BD or bn_IN? Assume bn_IN as nothing for bn_BD appeared
1047 # till now.
1048 #
1049 # Omitted here - already existing (with libc.mo):
1050 #   be ca cs da de el en_GB es fi fr gl hr hu it ja ko nb nl pl pt_BR ru rw sk
1051 #   sv tr zh_CN zh_TW
1052 #
1053 for i in aa aa@saaho af am an ang ar as ast az be@alternative be@latin bg bn \
1054     bn_IN br bs byn csb cy de_AT dz en en@boldquot en@quot en_AU en_CA en_US \
1055     eo es_AR es_CO es_MX es_NI es_PR et eu fa fil fo fr_BE fur fy ga gd gez \
1056     gu gv he hi hsb hy ia id ik is it_CH iu ka kk kl km kn ku kw ky lg li lo \
1057     lt lv mai mg mi mk ml mn mr ms mt nds ne nl_BE nn nr nso oc om or pa pap \
1058     pt rm ro sa sc se si sid sl so sq sr sr@Latn sr@ije sr@latin ss st sw ta \
1059     te tg th ti tig tk tl tlh tn ts tt ug uk ur uz uz@cyrillic ve vi wa wal \
1060     wo xh yi yo zh_HK zu ; do
1061         if [ ! -d $RPM_BUILD_ROOT%{_datadir}/locale/$i/LC_MESSAGES ]; then
1062                 install -d $RPM_BUILD_ROOT%{_datadir}/locale/$i/LC_MESSAGES
1063                 lang=`echo $i | sed -e 's/_.*//'`
1064                 echo "%lang($lang) %{_datadir}/locale/$i" >> glibc.lang
1065         fi
1066 done
1067
1068 # localedb-gen infrastructure
1069 sed -e 's,@localedir@,%{_libdir}/locale,' %{SOURCE6} > $RPM_BUILD_ROOT%{_bindir}/localedb-gen
1070 chmod +x $RPM_BUILD_ROOT%{_bindir}/localedb-gen
1071 install localedata/SUPPORTED $RPM_BUILD_ROOT%{_datadir}/i18n
1072
1073 # shutup check-files
1074 rm -f $RPM_BUILD_ROOT%{_mandir}/README.*
1075 rm -f $RPM_BUILD_ROOT%{_mandir}/diff.*
1076 rm -f $RPM_BUILD_ROOT%{_infodir}/dir
1077 # we don't support kernel without ptys support
1078 rm -f $RPM_BUILD_ROOT%{_libdir}/pt_chown
1079 # rpcbind
1080 rm -f $RPM_BUILD_ROOT%{_mandir}/*/man8/rpcinfo.8
1081 rm -f $RPM_BUILD_ROOT%{_mandir}/man8/rpcinfo.8
1082 rm -f $RPM_BUILD_ROOT%{_sbindir}/rpcinfo
1083
1084 %clean
1085 rm -rf $RPM_BUILD_ROOT
1086
1087 # don't run iconvconfig in %%postun -n iconv because iconvconfig doesn't exist
1088 # when %%postun is run
1089
1090 %if !%{with cross}
1091 %post   -p /sbin/postshell
1092 /sbin/glibc-postinst /%{_lib}/%{_host_cpu} /%{_lib}/tls
1093 /sbin/ldconfig
1094
1095 %postun -p /sbin/postshell
1096 /sbin/ldconfig
1097
1098 %triggerpostun -p /sbin/postshell -- glibc-misc < 6:2.3.5-7.6
1099 -/bin/cp -f /etc/ld.so.conf /etc/ld.so.conf.rpmsave
1100 -/bin/sed -i -e '1iinclude ld.so.conf.d/*.conf' /etc/ld.so.conf
1101 %endif
1102
1103 %post   memusage -p /sbin/ldconfig
1104 %postun memusage -p /sbin/ldconfig
1105
1106 %post -n iconv -p %{_sbindir}/iconvconfig
1107
1108 %post devel
1109 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
1110
1111 %postun devel
1112 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
1113
1114 %pre -n nscd
1115 %groupadd -P nscd -g 144 -r nscd
1116 %useradd -P nscd -u 144 -r -d /tmp -s /bin/false -c "nscd" -g nscd nscd
1117
1118 %post -n nscd
1119 /sbin/chkconfig --add nscd
1120 touch /var/log/nscd
1121 chmod 000 /var/log/nscd
1122 chown root:root /var/log/nscd
1123 chmod 640 /var/log/nscd
1124 %service nscd restart "nscd daemon"
1125
1126 %preun -n nscd
1127 if [ "$1" = "0" ]; then
1128         %service nscd stop
1129         /sbin/chkconfig --del nscd
1130 fi
1131
1132 %postun -n nscd
1133 if [ "$1" = "0" ]; then
1134         %userremove nscd
1135         %groupremove nscd
1136 fi
1137
1138 %files
1139 %defattr(644,root,root,755)
1140 %doc README NEWS FAQ BUGS
1141 %if !%{with cross}
1142 %attr(755,root,root) /sbin/glibc-postinst
1143 %endif
1144 %attr(755,root,root) /sbin/ldconfig
1145 # ld-*.so SONAME is:
1146 #   ld.so.1 on ppc
1147 #   ld64.so.1 on ppc64,s390x
1148 #   ld-linux-ia64.so.2 on ia64
1149 #   ld-linux-x86-64.so.2 on x86_64
1150 #   ld-linux.so.2 on other archs
1151 # TODO: package ldconfig symlinks as %ghost
1152 %attr(755,root,root) /%{_lib}/ld*
1153 %attr(755,root,root) /%{_lib}/libanl*
1154 %attr(755,root,root) /%{_lib}/libdl*
1155 %attr(755,root,root) /%{_lib}/libnsl*
1156 %attr(755,root,root) /%{_lib}/lib[BScmprtu]*
1157 %{?with_localedb:%dir %{_libdir}/locale}
1158 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/ld.so.conf
1159 %dir %{_sysconfdir}/ld.so.conf.d
1160 %ghost %{_sysconfdir}/ld.so.cache
1161
1162 #%files -n nss_dns
1163 %defattr(644,root,root,755)
1164 %attr(755,root,root) /%{_lib}/libnss_dns*.so*
1165
1166 #%files -n nss_files
1167 %defattr(644,root,root,755)
1168 %attr(755,root,root) /%{_lib}/libnss_files*.so*
1169
1170 %files misc -f %{name}.lang
1171 %defattr(644,root,root,755)
1172
1173 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/nsswitch.conf
1174 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/gai.conf
1175
1176 %config %{_sysconfdir}/rpc
1177
1178 %attr(755,root,root) /sbin/sln
1179 %attr(755,root,root) %{_bindir}/catchsegv
1180 %attr(755,root,root) %{_bindir}/getconf
1181 %attr(755,root,root) %{_bindir}/getent
1182 %attr(755,root,root) %{_bindir}/iconv
1183 %attr(755,root,root) %{_bindir}/ldd
1184 %ifarch %{ix86} m68k sparc sparcv9
1185 %attr(755,root,root) %{_bindir}/lddlibc4
1186 %endif
1187 %attr(755,root,root) %{_bindir}/locale
1188 %attr(755,root,root) %{_bindir}/rpcgen
1189 %attr(755,root,root) %{_bindir}/tzselect
1190
1191 %attr(755,root,root) %{_sbindir}/zdump
1192 %attr(755,root,root) %{_sbindir}/zic
1193
1194 %dir %{_libexecdir}/getconf
1195 %attr(755,root,root) %{_libexecdir}/getconf/*
1196
1197 %dir %{_datadir}/locale
1198 %{_datadir}/locale/locale.alias
1199
1200 %{_mandir}/man1/catchsegv.1*
1201 %{_mandir}/man1/getconf.1*
1202 %{_mandir}/man1/getent.1*
1203 %{_mandir}/man1/iconv.1*
1204 %{_mandir}/man1/ldd.1*
1205 %{_mandir}/man1/locale.1*
1206 %{_mandir}/man1/rpcgen.1*
1207 %{_mandir}/man5/locale.5*
1208 %{_mandir}/man5/nsswitch.conf.5*
1209 %{_mandir}/man5/tzfile.5*
1210 %{_mandir}/man7/*
1211 %{_mandir}/man8/ld*.8*
1212 %{_mandir}/man8/sln.8*
1213 %{_mandir}/man8/tzselect.8*
1214 %{_mandir}/man8/zdump.8*
1215 %{_mandir}/man8/zic.8*
1216 %lang(cs) %{_mandir}/cs/man7/*
1217 %lang(de) %{_mandir}/de/man5/tzfile.5*
1218 %lang(de) %{_mandir}/de/man7/*
1219 %lang(es) %{_mandir}/es/man1/ldd.1*
1220 %lang(es) %{_mandir}/es/man5/locale.5*
1221 %lang(es) %{_mandir}/es/man5/nsswitch.conf.5*
1222 %lang(es) %{_mandir}/es/man5/tzfile.5*
1223 %lang(es) %{_mandir}/es/man7/*
1224 %lang(es) %{_mandir}/es/man8/ld*.8*
1225 %lang(es) %{_mandir}/es/man8/tzselect.8*
1226 %lang(es) %{_mandir}/es/man8/zdump.8*
1227 %lang(es) %{_mandir}/es/man8/zic.8*
1228 %lang(fi) %{_mandir}/fi/man1/ldd.1*
1229 %lang(fr) %{_mandir}/fr/man1/ldd.1*
1230 %lang(fr) %{_mandir}/fr/man5/locale.5*
1231 %lang(fr) %{_mandir}/fr/man5/nsswitch.conf.5*
1232 %lang(fr) %{_mandir}/fr/man5/tzfile.5*
1233 %lang(fr) %{_mandir}/fr/man7/*
1234 %lang(fr) %{_mandir}/fr/man8/ld*.8*
1235 %lang(fr) %{_mandir}/fr/man8/tzselect.8*
1236 %lang(fr) %{_mandir}/fr/man8/zdump.8*
1237 %lang(fr) %{_mandir}/fr/man8/zic.8*
1238 %lang(hu) %{_mandir}/hu/man1/ldd.1*
1239 %lang(hu) %{_mandir}/hu/man7/*
1240 %lang(hu) %{_mandir}/hu/man8/ld*.8*
1241 %lang(hu) %{_mandir}/hu/man8/zdump.8*
1242 %lang(it) %{_mandir}/it/man5/locale.5*
1243 %lang(it) %{_mandir}/it/man7/*
1244 %lang(it) %{_mandir}/it/man8/tzselect.8*
1245 %lang(it) %{_mandir}/it/man8/zdump.8*
1246 %lang(ja) %{_mandir}/ja/man1/ldd.1*
1247 %lang(ja) %{_mandir}/ja/man1/rpcgen.1*
1248 %lang(ja) %{_mandir}/ja/man5/locale.5*
1249 %lang(ja) %{_mandir}/ja/man5/nsswitch.conf.5*
1250 %lang(ja) %{_mandir}/ja/man5/tzfile.5*
1251 %lang(ja) %{_mandir}/ja/man7/*
1252 %lang(ja) %{_mandir}/ja/man8/ld*.8*
1253 %lang(ja) %{_mandir}/ja/man8/sln.8*
1254 %lang(ja) %{_mandir}/ja/man8/tzselect.8*
1255 %lang(ja) %{_mandir}/ja/man8/zdump.8*
1256 %lang(ja) %{_mandir}/ja/man8/zic.8*
1257 %lang(ko) %{_mandir}/ko/man1/ldd.1*
1258 %lang(ko) %{_mandir}/ko/man5/nsswitch.conf.5*
1259 %lang(ko) %{_mandir}/ko/man5/tzfile.5*
1260 %lang(ko) %{_mandir}/ko/man7/*
1261 %lang(ko) %{_mandir}/ko/man8/tzselect.8*
1262 %lang(ko) %{_mandir}/ko/man8/zdump.8*
1263 %lang(pl) %{_mandir}/pl/man1/ldd.1*
1264 %lang(pl) %{_mandir}/pl/man5/locale.5*
1265 %lang(pl) %{_mandir}/pl/man7/*
1266 %lang(pl) %{_mandir}/pl/man8/ld*.8*
1267 %lang(pt) %{_mandir}/pt/man5/locale.5*
1268 %lang(pt) %{_mandir}/pt/man5/nsswitch.conf.5*
1269 %lang(pt) %{_mandir}/pt/man5/tzfile.5*
1270 %lang(pt) %{_mandir}/pt/man7/*
1271 %lang(pt) %{_mandir}/pt/man8/ld*.8*
1272 %lang(pt) %{_mandir}/pt/man8/tzselect.8*
1273 %lang(pt) %{_mandir}/pt/man8/zdump.8*
1274 %lang(pt) %{_mandir}/pt/man8/zic.8*
1275 %lang(ru) %{_mandir}/ru/man1/getent.1*
1276 %lang(ru) %{_mandir}/ru/man1/iconv.1*
1277 %lang(ru) %{_mandir}/ru/man1/ldd.1*
1278 %lang(ru) %{_mandir}/ru/man1/locale.1*
1279 %lang(ru) %{_mandir}/ru/man1/rpcgen.1*
1280 %lang(ru) %{_mandir}/ru/man5/locale.5*
1281 %lang(ru) %{_mandir}/ru/man5/nsswitch.conf.5*
1282 %lang(ru) %{_mandir}/ru/man5/tzfile.5*
1283 %lang(ru) %{_mandir}/ru/man7/*
1284 %lang(ru) %{_mandir}/ru/man8/ld*.8*
1285 %lang(ru) %{_mandir}/ru/man8/tzselect.8*
1286 %lang(ru) %{_mandir}/ru/man8/zdump.8*
1287 %lang(ru) %{_mandir}/ru/man8/zic.8*
1288 %lang(tr) %{_mandir}/tr/man1/iconv.1*
1289 %lang(tr) %{_mandir}/tr/man1/ldd.1*
1290 %lang(zh_CN) %{_mandir}/zh_CN/man1/iconv.1*
1291 %lang(zh_CN) %{_mandir}/zh_CN/man1/ldd.1*
1292 %lang(zh_CN) %{_mandir}/zh_CN/man5/locale.5*
1293 %lang(zh_CN) %{_mandir}/zh_CN/man5/tzfile.5*
1294 %lang(zh_CN) %{_mandir}/zh_CN/man7/*
1295 %lang(zh_CN) %{_mandir}/zh_CN/man8/tzselect.8*
1296 %lang(zh_CN) %{_mandir}/zh_CN/man8/zdump.8*
1297 %lang(zh_CN) %{_mandir}/zh_CN/man8/zic.8*
1298
1299 %files -n nss_compat
1300 %defattr(644,root,root,755)
1301 %attr(755,root,root) /%{_lib}/libnss_compat*.so*
1302
1303 %files -n nss_hesiod
1304 %defattr(644,root,root,755)
1305 %attr(755,root,root) /%{_lib}/libnss_hesiod*.so*
1306
1307 %files -n nss_nis
1308 %defattr(644,root,root,755)
1309 %attr(755,root,root) /%{_lib}/libnss_nis.so.*
1310 %attr(755,root,root) /%{_lib}/libnss_nis-*.so
1311
1312 %files -n nss_nisplus
1313 %defattr(644,root,root,755)
1314 %attr(755,root,root) /%{_lib}/libnss_nisplus*.so*
1315
1316 %if %{with memusage}
1317 %files memusage
1318 %defattr(644,root,root,755)
1319 %attr(755,root,root) %{_bindir}/memusage*
1320 %attr(755,root,root) %{_libdir}/libmemusage.so
1321 %endif
1322
1323 %files devel
1324 %defattr(644,root,root,755)
1325 %attr(755,root,root) %{_libdir}/lib[!cmp]*.so
1326 %attr(755,root,root) %{_libdir}/libcrypt.so
1327 %attr(755,root,root) %{_libdir}/libm.so
1328 %attr(755,root,root) %{_libdir}/libpcprofile.so
1329 %attr(755,root,root) %{_libdir}/*crt*.o
1330 # ld scripts
1331 %{_libdir}/libc.so
1332 %{_libdir}/libpthread.so
1333 %{_libdir}/libbsd-compat.a
1334 %{_libdir}/libbsd.a
1335 %{_libdir}/libc_nonshared.a
1336 %{_libdir}/libg.a
1337 %{_libdir}/libieee.a
1338 %ifarch alpha ppc sparc
1339 %{_libdir}/libnldbl_nonshared.a
1340 %endif
1341 %{_libdir}/libpthread_nonshared.a
1342 %{_libdir}/librpcsvc.a
1343 %ifarch %{ix86} %{x8664} ppc ppc64 s390 s390x sparc sparcv9 sparc64
1344 %{_includedir}/gnu/stubs-*.h
1345 %endif
1346
1347 %files headers
1348 %defattr(644,root,root,755)
1349 %{_includedir}/*.h
1350 %ifarch alpha
1351 %{_includedir}/alpha
1352 %endif
1353 %{_includedir}/arpa
1354 %{_includedir}/bits
1355 %dir %{_includedir}/gnu
1356 %{_includedir}/gnu/lib*.h
1357 %{_includedir}/gnu/stubs.h
1358 %{_includedir}/net
1359 %{_includedir}/netash
1360 %{_includedir}/netatalk
1361 %{_includedir}/netax25
1362 %{_includedir}/neteconet
1363 %{_includedir}/netinet
1364 %{_includedir}/netipx
1365 %{_includedir}/netpacket
1366 %{_includedir}/netrom
1367 %{_includedir}/netrose
1368 %{_includedir}/nfs
1369 %{_includedir}/protocols
1370 %{_includedir}/rpc
1371 %{_includedir}/rpcsvc
1372 %{_includedir}/scsi
1373 %{_includedir}/sys
1374
1375 %files devel-utils
1376 %defattr(644,root,root,755)
1377 %attr(755,root,root) %{_bindir}/gencat
1378 %attr(755,root,root) %{_bindir}/*prof*
1379 %attr(755,root,root) %{_bindir}/*trace
1380
1381 %files devel-doc
1382 %defattr(644,root,root,755)
1383 %doc documentation/* NOTES PROJECTS
1384 %{_infodir}/libc.info*
1385
1386 %{_mandir}/man1/sprof.1*
1387 %{_mandir}/man3/*
1388 %lang(cs) %{_mandir}/cs/man3/*
1389 %lang(de) %{_mandir}/de/man3/*
1390 %lang(es) %{_mandir}/es/man3/*
1391 %lang(fr) %{_mandir}/fr/man3/*
1392 %lang(hu) %{_mandir}/hu/man3/*
1393 %lang(it) %{_mandir}/it/man3/*
1394 %lang(ja) %{_mandir}/ja/man3/*
1395 %lang(ko) %{_mandir}/ko/man3/*
1396 %lang(nl) %{_mandir}/nl/man3/*
1397 %lang(pl) %{_mandir}/pl/man3/*
1398 %lang(pt) %{_mandir}/pt/man3/*
1399 %lang(ru) %{_mandir}/ru/man1/sprof.1*
1400 %lang(ru) %{_mandir}/ru/man3/*
1401 %lang(tr) %{_mandir}/tr/man3/*
1402 %lang(uk) %{_mandir}/uk/man3/*
1403 %lang(zh_CN) %{_mandir}/zh_CN/man3/*
1404
1405 %files -n nscd
1406 %defattr(644,root,root,755)
1407 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/nscd
1408 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/nscd.*
1409 %attr(754,root,root) /etc/rc.d/init.d/nscd
1410 %attr(755,root,root) %{_sbindir}/nscd*
1411 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/nscd
1412 %attr(640,root,root) %ghost /var/log/nscd
1413 %dir /var/run/nscd
1414 %dir /var/lib/nscd
1415 %attr(600,root,root) %ghost /var/lib/nscd/passwd
1416 %attr(600,root,root) %ghost /var/lib/nscd/group
1417 %attr(600,root,root) %ghost /var/lib/nscd/hosts
1418 %{_mandir}/man5/nscd.conf.5*
1419 %{_mandir}/man8/nscd.8*
1420 %{_mandir}/man8/nscd_nischeck.8*
1421 %lang(es) %{_mandir}/es/man5/nscd.conf.5*
1422 %lang(es) %{_mandir}/es/man8/nscd.8*
1423 %lang(fr) %{_mandir}/fr/man5/nscd.conf.5*
1424 %lang(fr) %{_mandir}/fr/man8/nscd.8*
1425 %lang(ja) %{_mandir}/ja/man5/nscd.conf.5*
1426 %lang(ja) %{_mandir}/ja/man8/nscd.8*
1427 %lang(pt) %{_mandir}/pt/man5/nscd.conf.5*
1428 %lang(pt) %{_mandir}/pt/man8/nscd.8*
1429 %lang(ru) %{_mandir}/ru/man5/nscd.conf.5*
1430 %lang(ru) %{_mandir}/ru/man8/nscd.8*
1431 %lang(zh_CN) %{_mandir}/zh_CN/man5/nscd.conf.5*
1432
1433 %files -n localedb-src
1434 %defattr(644,root,root,755)
1435 %attr(755,root,root) %{_bindir}/localedef
1436 %attr(755,root,root) %{_bindir}/localedb-gen
1437 %{_datadir}/i18n
1438 %{_mandir}/man1/localedef.1*
1439 %lang(ru) %{_mandir}/ru/man1/localedef.1*
1440
1441 %if %{with localedb}
1442 %files localedb-all
1443 %defattr(644,root,root,755)
1444 %{_libdir}/locale/locale-archive
1445 %endif
1446
1447 %files -n iconv
1448 %defattr(644,root,root,755)
1449 %attr(755,root,root) %{_sbindir}/iconvconfig
1450 %dir %{_libdir}/gconv
1451 %{_libdir}/gconv/gconv-modules
1452 %attr(755,root,root) %{_libdir}/gconv/*.so
1453
1454 %files static
1455 %defattr(644,root,root,755)
1456 %{_libdir}/libanl.a
1457 %{_libdir}/libBrokenLocale.a
1458 %{_libdir}/libc.a
1459 %{_libdir}/libcrypt.a
1460 %{_libdir}/libdl.a
1461 %{_libdir}/libm.a
1462 %{_libdir}/libmcheck.a
1463 %{_libdir}/libnsl.a
1464 %{_libdir}/libpthread.a
1465 %{_libdir}/libresolv.a
1466 %{_libdir}/librt.a
1467 %{_libdir}/libutil.a
1468
1469 %files profile
1470 %defattr(644,root,root,755)
1471 %{_libdir}/lib*_p.a
1472
1473 %files pic
1474 %defattr(644,root,root,755)
1475 %{_libdir}/lib*_pic.a
1476 %{_libdir}/lib*.map
1477 %{_libdir}/soinit.o
1478 %{_libdir}/sofini.o
This page took 0.120029 seconds and 2 git commands to generate.