]> git.pld-linux.org Git - packages/gcc.git/blob - gcc.spec
- it's safer to BR+R binutils 2.14 - gcc chooses its features at build time
[packages/gcc.git] / gcc.spec
1 #
2 # Conditional build:
3 # _without_ada  - build without ADA support
4 # _without_java - build without Java support
5 # _without_objc - build without objc support
6
7 %define         DASHED_SNAP     %{nil}
8 %define         SNAP            %(echo %{DASHED_SNAP} | sed -e "s#-##g")
9 %define         GCC_VERSION     3.3
10 %define         KSI_VERSION     1.1.0.1567
11
12 Summary:        GNU C Compiler
13 Summary(pl):    Kompilator C GNU
14 Summary(pt_BR): C Compilador GNU (GCC)
15 Name:           gcc
16 Version:        %{GCC_VERSION}
17 Release:        3
18 Epoch:          5
19 License:        GPL
20 Group:          Development/Languages
21 Source0:        ftp://gcc.gnu.org/pub/gcc/releases/gcc-%{GCC_VERSION}/%{name}-%{GCC_VERSION}.tar.bz2
22 # Source0-md5:  39147717455d8dba4d43d1b058ea46e2
23 Source1:        ftp://ftp.pld.org.pl/people/malekith/ksi/ksi-%{KSI_VERSION}.tar.gz
24 # Source1-md5: 66f07491b44f06928fd95b0e65bb8cd3
25 Source2:        http://ep09.kernel.pl/~djrzulf/gcc33/%{name}-non-english-man-pages.tar.bz2
26 # Source2-md5: 4736f3422ddfb808423b745629acc321
27 Patch0:         %{name}-info.patch
28 Patch1:         %{name}-paths.patch
29 Patch2:         %{name}-nolocalefiles.patch
30 Patch3:         %{name}-ada-link-new-libgnat.patch
31 Patch4:         %{name}-PR10849.patch
32 # -- stolen patches from RH --
33 Patch10:        gcc32-ada-link.patch
34 Patch11:        gcc32-boehm-gc-libs.patch
35 Patch12:        gcc32-bogus-inline.patch
36 Patch13:        gcc32-c++-nrv-test.patch
37 Patch14:        gcc32-c++-tsubst-asm.patch
38 Patch15:        gcc32-debug-pr7241.patch
39 Patch16:        gcc32-duplicate-decl.patch
40 Patch17:        gcc32-dwarf2-pr6381.patch
41 Patch18:        gcc32-dwarf2-pr6436-test.patch
42 Patch19:        gcc32-fde-merge-compat.patch
43 Patch20:        gcc32-i386-memtest-test.patch
44 Patch21:        gcc32-inline-label.patch
45 Patch22:        gcc32-java-no-rpath.patch
46 Patch23:        gcc32-test-rh65771.patch
47 Patch24:        gcc32-test-rotate.patch
48 BuildRequires:  autoconf
49 BuildRequires:  binutils >= 2.14
50 BuildRequires:  bison
51 BuildRequires:  fileutils >= 4.0.41
52 BuildRequires:  gcc
53 %{!?_without_ada:BuildRequires: gcc-ada}
54 BuildRequires:  glibc-devel >= 2.2.5-20
55 BuildRequires:  perl-devel
56 BuildRequires:  texinfo >= 4.1
57 BuildRequires:  zlib-devel
58 BuildRequires:  gettext-devel
59 Requires:       binutils >= 2.14
60 Requires:       cpp = %{GCC_VERSION}
61 Requires:       libgcc = %{GCC_VERSION}
62 Conflicts:      glibc-devel < 2.2.5-20
63 URL:            http://gcc.gnu.org/
64 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
65
66 %define         _slibdir        /lib
67
68 %description
69 A compiler aimed at integrating all the optimizations and features
70 necessary for a high-performance and stable development environment.
71
72 %description -l pl
73 Kompilator, posiadaj±cy du¿e mo¿liwo¶ci optymalizacyjne niezbêdne do
74 wyprodukowania szybkiego i stablinego kodu wynikowego.
75
76 %description -l pt_BR
77 Este pacote adiciona infraestrutura básica e suporte a linguagem C
78 ao Gnu Compiler Collection.
79
80 %package -n libgcc
81 Summary:        Shared gcc library
82 Summary(pl):    Biblioteka gcc
83 Summary(pt_BR): Biblioteca runtime para o GCC
84 Group:          Libraries
85 Version:        %{GCC_VERSION}
86 Obsoletes:      libgcc1
87
88 %description -n libgcc
89 Shared gcc library.
90
91 %description -n libgcc -l pl
92 Biblioteka dynamiczna gcc.
93
94 %description -n libgcc -l pt_BR
95 Biblioteca runtime para o GCC.
96
97 %package c++
98 Summary:        C++ support for gcc
99 Summary(pl):    Obs³uga C++ dla gcc
100 Summary(pt_BR): Suporte C++ para o gcc
101 Group:          Development/Languages
102 Obsoletes:      egcc-c++
103 Obsoletes:      egcs-c++
104 Requires:       gcc = %{GCC_VERSION}
105
106 %description c++
107 This package adds C++ support to the GNU C compiler. It includes
108 support for most of the current C++ specification, including templates
109 and exception handling. It does not include a standard C++ library,
110 which is available separately.
111
112 %description c++ -l de
113 Dieses Paket enthält die C++-Unterstützung für den GNU-C-Compiler. Es
114 unterstützt die aktuelle C++-Spezifikation, inkl. Templates und
115 Ausnahmeverarbeitung. Eine C++-Standard-Library ist nicht enthalten -
116 sie ist getrennt erhältlich.
117
118 %description c++ -l fr
119 Ce package ajoute un support C++ au compilateur c GNU. Il comprend un
120 support pour la plupart des spécifications actuelles de C++, dont les
121 modéles et la gestion des exceptions. Il ne comprend pas une
122 bibliothéque C++ standard, qui est disponible séparément.
123
124 %description c++ -l pl
125 Ten pakiet dodaje obs³ugê C++ do kompilatora gcc. Ma wsparcie dla
126 du¿ej ilo¶ci obecnych specyfikacji C++, nie zawiera natomiast
127 standardowych bibliotek C++, które s± w oddzielnym pakiecie.
128
129 %description c++ -l pt_BR
130 Este pacote adiciona suporte C++ para o gcc.
131
132 %description c++ -l tr
133 Bu paket, GNU C derleyicisine C++ desteði ekler. 'Template'ler ve
134 aykýrý durum iþleme gibi çoðu güncel C++ tanýmlarýna uyar. Standart
135 C++ kitaplýðý bu pakette yer almaz.
136
137 %package objc
138 Summary:        Objective C support for gcc
139 Summary(de):    Objektive C-Unterstützung für gcc
140 Summary(fr):    Gestion d'Objective C pour gcc
141 Summary(pl):    Obs³uga obiektowego C dla kompilatora gcc
142 Summary(tr):    gcc için Objective C desteði
143 Group:          Development/Languages
144 Obsoletes:      egcc-objc
145 Obsoletes:      egcs-objc
146 Requires:       libobjc = %{GCC_VERSION}
147 Requires:       gcc = %{GCC_VERSION}
148
149 %description objc
150 This package adds Objective C support to the GNU C compiler. Objective
151 C is a object oriented derivative of the C language, mainly used on
152 systems running NeXTSTEP. This package does not include the standard
153 objective C object library.
154
155 %description objc -l de
156 Dieses Paket ergänzt den GNU-C-Compiler durch Objective-C-Support.
157 Objective C ist ein objektorientiertes Derivat von C, das zur
158 Hauptsache auf Systemen mit NeXTSTEP zum Einsatz kommt. Die
159 Standard-Objective-C-Objekt-Library ist nicht Teil des Pakets.
160
161 %description objc -l fr
162 Ce package ajoute un support Objective C au compilateur C GNU.
163 L'Objective C est un langage orienté objetdérivé du langage C,
164 principalement utilisé sur les systèmes NeXTSTEP. Ce package n'inclue
165 pas la bibliothéque Objective C standard.
166
167 %description objc -l pl
168 Ten pakiet dodaje obs³ugê obiektowego C do kompilatora gcc. Obiektowe
169 C (objc) jest zorientowan± obiektowo pochodn± jêzyka C, u¿ywan±
170 g³ównie w systemach u¿ywaj±cych NeXTSTEP. W pakiecie nie ma
171 standardowej biblioteki objc (która znajduje siê w osobnym pakiecie).
172
173 %description objc -l tr
174 Bu paket, GNU C derleyicisine Objective C desteði ekler. Objective C,
175 C dilinin nesne yönelik bir türevidir ve NeXTSTEP altýnda çalýþan
176 sistemlerde yaygýn olarak kullanýlýr. Standart Objective C nesne
177 kitaplýðý bu pakette yer almaz.
178
179 %package -n libobjc
180 Summary:        Objective C Libraries
181 Summary(pl):    Biblioteki Obiektowego C
182 Group:          Libraries
183 Version:        %{GCC_VERSION}
184 Obsoletes:      libobjc1
185
186 %description -n libobjc
187 Objective C Libraries.
188
189 %description -n libobjc -l pl
190 Biblioteki Obiektowego C.
191
192 %package -n libobjc-static
193 Summary:        Static Objective C Libraries
194 Summary(pl):    Statyczne Biblioteki Obiektowego C
195 Group:          Development/Libraries
196 Version:        %{GCC_VERSION}
197 Requires:       libobjc = %{GCC_VERSION}
198
199 %description -n libobjc-static
200 Static Objective C Libraries.
201
202 %description -n libobjc-static -l pl
203 Statyczne biblioteki Obiektowego C.
204
205 %package g77
206 Summary:        Fortran 77 support for gcc
207 Summary(pl):    Obs³uga Fortranu 77 dla gcc
208 Summary(pt_BR): Suporte Fortran 77 para o GCC
209 Group:          Development/Languages/Fortran
210 Version:        %{GCC_VERSION}
211 Obsoletes:      egcs-g77
212 Requires:       libg2c = %{GCC_VERSION}
213
214 %description g77
215 This apckage adds support for compiling Fortran 77 programs with the
216 GNU compiler.
217
218 %description g77 -l pl
219 Ten pakiet dodaje obs³ugê Fortranu 77 do kompilatora gcc. Jest
220 potrzebny do kompilowania programów pisanych w jêzyku Fortran 77.
221
222 %description g77 -l pt_BR
223 Suporte Fortran 77 para o GCC.
224
225 %package -n libg2c
226 Summary:        Fortran 77 Libraries
227 Summary(pl):    Biblioteki Fortranu 77
228 Group:          Libraries
229 Version:        %{GCC_VERSION}
230
231 %description -n libg2c
232 Fortran 77 Libraries.
233
234 %description -n libg2c -l pl
235 Biblioteki Fortranu 77.
236
237 %package -n libg2c-static
238 Summary:        Static Fortran 77 Libraries
239 Summary(pl):    Statyczne Biblioteki Fortranu 77
240 Group:          Development/Libraries
241 Version:        %{GCC_VERSION}
242 Requires:       libg2c = %{GCC_VERSION}
243
244 %description -n libg2c-static
245 Static Fortran 77 Libraries.
246
247 %description -n libg2c-static -l pl
248 Statyczne biblioteki Fortranu 77.
249
250 %package java
251 Summary:        Java support for gcc
252 Summary(pl):    Obs³uga Javy dla gcc
253 Group:          Development/Languages/Java
254 Version:        %{GCC_VERSION}
255 Requires:       %{name} = %{version}
256 Requires:       libgcj >= 3.0.0
257 Requires:       libgcj-devel >= 3.0.0
258 Requires:       java-shared
259 Provides:       gcj = %{epoch}:%{GCC_VERSION}-%{release}
260
261 %description java
262 This package adds experimental support for compiling Java(tm) programs
263 and bytecode into native code. To use this you will also need the
264 libgcj package.
265
266 %description -l pl java
267 Wsparcie dla kompilowania programów Java(tm) zrówno do bajt-kodu jak i
268 do natywnego kodu. Dodatkowo wymagany jest pakiet libgcj, aby mo¿na
269 by³o przeprowadziæ kompilacjê.
270
271 %package java-tools
272 Summary:        Shared java tools
273 Summary(pl):    Wspó³dzielone narzêdzia javy
274 Group:          Development/Languages/Java
275 Version:        %{GCC_VERSION}
276 Provides:       jar = %{epoch}:%{GCC_VERSION}-%{release}
277 Provides:       java-shared
278 Obsoletes:      fastjar
279 Obsoletes:      java-shared
280 Obsoletes:      jar
281
282 %description java-tools
283 This package contains tools that are common for every Java(tm) implementation,
284 such as rmic or jar.
285
286 %description java-tools -l pl
287 Pakiet ten zawiera narzêdzia wspólne dla ka¿dej implementacji Javy(tm), takie
288 jak rmic czy jar.
289
290 %package -n libgcj
291 Summary:        Java Class Libraries
292 Summary(pl):    Biblioteki Klas Javy
293 Group:          Libraries
294 Version:        %{GCC_VERSION}
295 Requires:       zlib
296 Obsoletes:      libgcj3
297
298 %description -n libgcj
299 Java Class Libraries.
300
301 %description -n libgcj -l pl
302 Biblioteki Klas Javy.
303
304 %package -n libgcj-devel
305 Summary:        Development files for Java Class Libraries
306 Summary(pl):    Pliki nag³ówkowe dla Bibliotek Klas Javy
307 Group:          Development/Libraries
308 Version:        %{GCC_VERSION}
309 Requires:       libgcj = %{GCC_VERSION}
310 Requires:       %{name}-java
311 Obsoletes:      libgcj3-devel
312
313 %description -n libgcj-devel
314 Development files for Java Class Libraries.
315
316 %description -n libgcj-devel -l pl
317 Pliki nag³ówkowe dla Bibliotek Klas Javy.
318
319 %package -n libgcj-static
320 Summary:        Static Java Class Libraries
321 Summary(pl):    Statyczne Biblioteki Klas Javy
322 Group:          Development/Libraries
323 Version:        %{GCC_VERSION}
324 Requires:       libstdc++-devel = %{GCC_VERSION}
325 Requires:       libgcj-devel = %{GCC_VERSION}
326
327 %description -n libgcj-static
328 Static Java Class Libraries.
329
330 %description -n libgcj-static -l pl
331 Statyczne Biblioteki Klas Javy.
332
333 %package -n libstdc++
334 Summary:        GNU c++ library
335 Summary(pl):    Biblioteki GNU C++
336 Summary(pt_BR): Biblioteca C++ GNU
337 Group:          Libraries
338 Version:        %{GCC_VERSION}
339 Obsoletes:      libg++
340 Obsoletes:      libstdc++3
341
342 %description -n libstdc++
343 This is the GNU implementation of the standard C++ libraries, along
344 with additional GNU tools. This package includes the shared libraries
345 necessary to run C++ applications.
346
347 %description -n libstdc++ -l de
348 Dies ist die GNU-Implementierung der Standard-C++-Libraries mit
349 weiteren GNU-Tools. Dieses Paket enthält die zum Ausführen von
350 C++-Anwendungen erforderlichen gemeinsam genutzten Libraries.
351
352 %description -n libstdc++ -l es
353 Este es el soporte de las bibliotecas padrón del C++, junto con
354 herramientas GNU adicionales. El paquete incluye las bibliotecas
355 compartidas necesarias para ejecutar aplicaciones C++.
356
357 %description -n libstdc++ -l fr
358 Ceci est l'implémentation GNU des librairies C++ standard, ainsi que
359 des outils GNU supplémentaires. Ce package comprend les librairies
360 partagées nécessaires à l'exécution d'application C++.
361
362 %description -n libstdc++ -l pl
363 Pakiet ten zawiera biblioteki bêd±ce implementacj± standardowych
364 bibliotek C++. Znajduj± siê w nim biblioteki dynamiczne niezbêdne do
365 uruchomienia aplikacji napisanych w C++.
366
367 %description -n libstdc++ -l pt_BR
368 Este pacote é uma implementação da biblioteca padrão C++ v3, um
369 subconjunto do padrão ISO 14882.
370
371 %description -n libstdc++ -l tr
372 Bu paket, standart C++ kitaplýklarýnýn GNU gerçeklemesidir ve C++
373 uygulamalarýnýn koþturulmasý için gerekli kitaplýklarý içerir.
374
375 %package -n libstdc++-devel
376 Summary:        Header files and documentatino for C++ development
377 Summary(de):    Header-Dateien zur Entwicklung mit C++
378 Summary(fr):    Fichiers d'en-tête et biblitothèques pour développer en C++
379 Summary(pl):    Pliki nag³ówkowe i dokumentacja do biblioteki standardowej C++
380 Summary(pt_BR): Arquivos de inclusão e bibliotecas para o desenvolvimento em C++
381 Summary(tr):    C++ ile program geliþtirmek için gerekli dosyalar
382 Group:          Development/Libraries
383 Version:        %{GCC_VERSION}
384 Requires:       libstdc++ = %{GCC_VERSION}
385 Requires:       %{name}-c++ = %{GCC_VERSION}
386 Obsoletes:      libg++-devel
387 Obsoletes:      libstdc++3-devel
388
389 %description -n libstdc++-devel
390 This is the GNU implementation of the standard C++ libraries. This
391 package includes the header files needed for C++ development and
392 library documentation.
393
394 %description -n libstdc++-devel -l es
395 Este es el soporte de las bibliotecas padrón del lenguaje C++. Este paquete
396 incluye los archivos de inclusión y bibliotecas necesarios para desarrollo de
397 programas en lenguaje C++.
398
399 %description -n libstdc++-devel -l pl
400 Pakiet ten zawiera biblioteki bêd±ce implementacj± standardowych
401 bibliotek C++. Znajduj± siê w nim pliki nag³ówkowe wykorzystywane przy
402 programowaniu w jêzyku C++ oraz dokumentacja biblioteki standardowej.
403
404 %description -n libstdc++-devel -l pt_BR
405 Este pacote inclui os arquivos de inclusão e bibliotecas necessárias para
406 desenvolvimento de programas C++.
407
408 %package -n libstdc++-static
409 Summary:        Static C++ standard library
410 Summary(pl):    Statyczna biblioteka standardowa C++
411 Group:          Development/Libraries
412 Version:        %{GCC_VERSION}
413 Requires:       libstdc++-devel = %{GCC_VERSION}
414
415 %description -n libstdc++-static
416 Static C++ standard library.
417
418 %description -n libstdc++-static -l pl
419 Statycza biblioteka standardowa C++.
420
421 %package -n libffi
422 Summary:        Foreign Function Interface library
423 Summary(pl):    Biblioteka zewnêtrznych wywo³añ funkcji
424 Group:          Libraries
425 Version:        %{GCC_VERSION}
426
427 %description -n libffi
428 The libffi library provides a portable, high level programming
429 interface to various calling conventions. This allows a programmer to
430 call any function specified by a call interface description at run
431 time.
432
433 %description -n libffi -l pl
434 Biblioteka libffi dostarcza przno¶nego, wysokopoziomowego miêdzymordzia
435 do ró¿nych konwencji wywo³añ funkcji. Pozwala to programi¶cie wywo³ywaæ
436 dowolne funkcje podaj±c konwencjê wywo³ania w czasie wykonania.
437
438 %package -n libffi-devel
439 Summary:        Development files for Foreign Function Interface library
440 Summary(pl):    Pliki nag³ówkowe dla libffi
441 Group:          Development/Libraries
442 Version:        %{GCC_VERSION}
443 Requires:       libffi = %{GCC_VERSION}
444
445 %description -n libffi-devel
446 Development files for Foreign Function Interface library.
447
448 %description -n libffi-devel -l pl
449 Pliki nag³ówkowe dla libffi.
450
451 %package -n libffi-static
452 Summary:        Static Foreign Function Interface library
453 Summary(pl):    Statyczna biblioteka libffi
454 Group:          Development/Libraries
455 Version:        %{GCC_VERSION}
456 Requires:       libffi-devel = %{GCC_VERSION}
457
458 %description -n libffi-static
459 Static Foreign Function Interface library.
460
461 %description -n libffi-static -l pl
462 Statyczna biblioteka libffi.
463
464 %package ada
465 Summary:        Ada support for gcc
466 Summary(pl):    Obs³uga Ady do gcc
467 Group:          Development/Languages
468 Version:        %{GCC_VERSION}
469 Requires:       libgnat = %{GCC_VERSION}
470 Requires:       gcc = %{GCC_VERSION}
471 Obsoletes:      gcc-gnat
472 Obsoletes:      gnat-devel
473
474 %description ada
475 This package adds experimental support for compiling Ada programs.
476
477 %description -l pl ada
478 Ten pakiet dodaje eksperymentalne wsparcie dla kompilacji programów
479 w Adzie.
480
481 %package -n libgnat
482 Summary:        Ada standard libraries
483 Summary(pl):    Biblioteki standardowe dla Ady
484 Group:          Libraries
485 Version:        %{GCC_VERSION}
486 Obsoletes:      gnat
487 Obsoletes:      libgnat1
488
489 %description -n libgnat
490 This package contains shared libraries needed to run programs written
491 in Ada.
492
493 %description -n libgnat -l pl
494 Ten pakiet zawiera biblioteki potrzebne do uruchamiania programów napisanych
495 w Adzie.
496
497 %package -n libgnat-static
498 Summary:        Static Ada standard libraries
499 Summary(pl):    Statyczne biblioteki standardowe dla Ady
500 Group:          Libraries
501 Version:        %{GCC_VERSION}
502 Obsoletes:      gnat-static
503
504 %description -n libgnat-static
505 This package contains static libraries for programs written in Ada.
506
507 %description -n libgnat-static -l pl
508 Ten pakiet zawiera biblioteki statyczne dla programów napisanych w
509 Adzie.
510
511 %package ksi
512 Summary:        Ksi support for gcc
513 Summary(pl):    Obs³uga Ksi dla gcc
514 Version:        %{GCC_VERSION}.%{KSI_VERSION}
515 Group:          Development/Languages
516 Requires:       gcc = %{GCC_VERSION}
517
518 %description ksi
519 This package adds experimental support for compiling Ksi programs
520 into native code. You proabably don't need it, unless your are going
521 to develop a compiler using Ksi as intermediate representation or
522 you are using such compiler (like Gont).
523
524 %description ksi -l pl
525 Ten pakiet dodaje eksperymentalne wsparcie dla kompilacji programów
526 w Ksi do kodu maszynowego. Prawdopodobnie nie potrzebujesz go, chyba
527 ¿e zamierzasz pisaæ kompilator u¿ywaj±cy Ksi jako reprezentacji
528 po¶rednicz±cej, lub u¿ywasz takiego kompilatora (jak Gont).
529
530 %package -n cpp
531 Summary:        The C Pre Processor
532 Summary(pl):    Preprocesor C
533 Summary(pt_BR): Preprocessador para a linguagem C
534 Group:          Development/Languages
535 Version:        %{GCC_VERSION}
536 Obsoletes:      egcs-cpp
537 Obsoletes:      gcc-cpp
538
539 %description -n cpp
540 The C preprocessor is a "macro processor" that is used automatically
541 by the C compiler to transform your program before actual compilation.
542 It is called a macro processor because it allows you to define
543 "macros", which are brief abbreviations for longer constructs.
544
545 The C preprocessor provides four separate facilities that you can use
546 as you see fit:
547
548 - Inclusion of header files. These are files of declarations that can
549   be substituted into your program.
550 - Macro expansion. You can define "macros", which are abbreviations
551   for arbitrary fragments of C code, and then the C preprocessor will
552   replace the macros with their definitions throughout the program.
553 - Conditional compilation. Using special preprocessing directives, you
554   can include or exclude parts of the program according to various
555   conditions.
556 - Line control. If you use a program to combine or rearrange source
557   files into an intermediate file which is then compiled, you can use
558   line control to inform the compiler of where each source line
559   originally came from.
560
561 %description -n cpp -l es
562 Um preprocessador para a linguagem C.
563
564 %description -n cpp -l pl
565 Przeprocesor C jest "makro procesorem" który jest automatycznie
566 u¿ywany przez kompilator C do obróbki kompilowanego programu przed
567 w³a¶ciw± kompilacj±. Jest on nazywany makroprocesorem, poniewa¿
568 umo¿liwia definiowanie i rozwijanie makr umo¿liwiaj±cych skracanie
569 d³ugich konstrukcji w jêzyku C.
570
571 Preprocesor C umo¿liwia wykonywanie czterech ró¿nych typów operacji:
572
573 - Do³±czanie plików (np. nag³ówkowych). Wstawia pliki w miejscu
574   deklaracji polecenia do³±czenia innego pliku.
575 - Rozwijanie makr. Mo¿na definiowaæ "makra" nadaj±c im identyfikatory,
576   których pó¼niejsze u¿ycie powoduje podczas rozwijania podmienienie
577   indentyfikatora deklarowan± wcze¶niej warto¶ci±.
578 - Kompilacja warunkowa. W zale¿no¶ci od obecno¶ci symboli i dyrektyw w
579   ¶rodowisku preprocesora s± w³±czane warunkowo, b±d¼ nie, pewne
580   fragmenty obrabianego strumienia tekstów.
581 - Kontrola linii ¼ród³a. Niezale¿nie od tego jakim przeobra¿eniom
582   podlega wynikowy strumieñ danych w wyniku rozwijania makr i do³±czania
583   s± zapamiêtywane informacje o tym, której linii pliku ¼ród³owego
584   odpowiada fragment pliku wynikowego.
585
586 %description  -n cpp -l pt_BR
587 O preprocessador C é um "processador de macros", que é utilizado pelo
588 compilador C para fazer algumas modificações no seu programa, antes da
589 compilação em si. Ele é chamado de "processador de macros" porque
590 permite a você definir "macros", que são abreviações para construções
591 mais complicadas.
592
593 O preprocessador C fornece quatro funcionalidades básicas: inclusão de
594 arquivos de cabeçalho; expansão de macros; compilação condicional;
595 e controle da numeração das linhas do programa.
596
597 %prep
598 %setup -q -a1 -n %{name}-%{GCC_VERSION}
599 mv ksi-%{KSI_VERSION} gcc/ksi
600
601 %patch0 -p1
602 %patch1 -p1
603 %patch2 -p1
604 %patch3 -p1
605 %patch4 -p1
606
607 %patch10 -p1
608 %patch11
609 %patch12
610 %patch13
611 %patch14
612 %patch15
613
614 %patch16
615 %patch17
616 %patch18
617 %patch19
618 %patch20
619 %patch21
620 %patch22
621 %patch23
622 %patch24
623
624 # because we distribute modified version of gcc...
625 perl -pi -e 's/(version.*)";/$1 (PLD Linux)";/' gcc/version.c
626 perl -pi -e 's@(bug_report_url.*<URL:).*";@$1http://bugs.pld.org.pl/>";@' gcc/version.c
627
628 %build
629 # cd gcc && autoconf; cd ..
630 # autoconf is not needed!
631 rm -rf obj-%{_target_platform} && install -d obj-%{_target_platform} && cd obj-%{_target_platform}
632
633 CFLAGS="%{rpmcflags}" \
634 CXXFLAGS="%{rpmcflags}" \
635 TEXCONFIG=false ../configure \
636         --prefix=%{_prefix} \
637         --infodir=%{_infodir} \
638         --mandir=%{_mandir} \
639         --enable-shared \
640         --enable-threads=posix \
641         --enable-__cxa_atexit \
642         --enable-languages="c,c++,f77%{!?_without_objc:,objc}%{!?_without_ada:,ada}%{!?_without_java:,java},ksi" \
643         --enable-c99 \
644         --enable-long-long \
645         --enable-multilib \
646         --enable-nls \
647         --with-gnu-as \
648         --with-gnu-ld \
649         --with-system-zlib \
650         --with-slibdir=%{_slibdir} \
651         --without-x \
652         %{_target_platform}
653
654 PATH=$PATH:/sbin:%{_sbindir}
655
656 cd ..
657 %{__make} -C obj-%{_target_platform} bootstrap-lean \
658         LDFLAGS_FOR_TARGET="%{rpmldflags}" \
659         mandir=%{_mandir} \
660         infodir=%{_infodir}
661
662 %if 0%{!?_without_ada:1}
663 %{__make} -C obj-%{_target_platform}/gcc gnatlib gnattools gnatlib-shared \
664         LDFLAGS_FOR_TARGET="%{rpmldflags}" \
665         mandir=%{_mandir} \
666         infodir=%{_infodir}
667 %endif
668
669 %install
670 rm -rf $RPM_BUILD_ROOT
671 install -d $RPM_BUILD_ROOT{/lib,%{_datadir},%{_infodir}}
672
673 cd obj-%{_target_platform}
674 PATH=$PATH:/sbin:%{_sbindir}
675
676 %{__make} install \
677         DESTDIR=$RPM_BUILD_ROOT
678
679 ln -sf gcc $RPM_BUILD_ROOT%{_bindir}/cc
680 echo ".so gcc.1" > $RPM_BUILD_ROOT%{_mandir}/man1/cc.1
681
682 ln -sf g77 $RPM_BUILD_ROOT%{_bindir}/f77
683 echo ".so g77.1" > $RPM_BUILD_ROOT%{_mandir}/man1/f77.1
684
685 %if 0%{!?_without_ada:1}
686 # move ada shared libraries to proper place...
687 mv $RPM_BUILD_ROOT%{_libdir}/gcc-lib/%{_target_cpu}*/*/adalib/*.so.1 \
688         $RPM_BUILD_ROOT%{_libdir}/
689 # check if symlink to be made is valid
690 test -f $RPM_BUILD_ROOT%{_libdir}/libgnat-3.15.so.1
691 ln -sf libgnat-3.15.so.1 $RPM_BUILD_ROOT%{_libdir}/libgnat-3.15.so
692 ln -sf libgnarl-3.15.so.1 $RPM_BUILD_ROOT%{_libdir}/libgnarl-3.15.so
693 ln -sf libgnat-3.15.so $RPM_BUILD_ROOT%{_libdir}/libgnat.so
694 ln -sf libgnarl-3.15.so $RPM_BUILD_ROOT%{_libdir}/libgnarl.so
695 %endif
696
697 ln -sf %{_bindir}/cpp $RPM_BUILD_ROOT/lib/cpp
698
699 cd ..
700
701 %if %{!?_without_java:1}%{?_without_java:0}
702 install -d java-doc
703 cp -f libjava/doc/cni.sgml libjava/READ* java-doc
704 cp -f fastjar/README java-doc/README.fastjar
705 cp -f libffi/README java-doc/README.libffi
706 cp -f libffi/LICENSE java-doc/LICENSE.libffi
707 %endif
708
709 %if %{!?_without_objc:1}0
710 cp -f libobjc/README gcc/objc/README.libobjc
711 %endif
712
713 # avoid -L poisoning in *.la - there should be only -L%{_libdir}/gcc-lib/*/%{version}
714 for f in libstdc++.la libsupc++.la %{!?_without_java:libgcj.la} ; do
715         perl -pi -e 's@-L[^ ]*[acs.] @@g' $RPM_BUILD_ROOT%{_libdir}/$f
716 done
717 # normalize libdir, to avoid propagation of unnecessary RPATHs by libtool
718 for f in libstdc++.la libsupc++.la libg2c.la \
719         %{!?_without_java:libgcj.la lib-org-w3c-dom.la lib-org-xml-sax.la libffi.la} \
720         %{!?_without_objc:libobjc.la}; do
721         perl -pi -e "s@^libdir='.*@libdir='/usr/lib'@" $RPM_BUILD_ROOT%{_libdir}/$f
722 done
723
724 bzip2 -dc %{SOURCE2} | tar xf - -C $RPM_BUILD_ROOT%{_mandir}
725 mv -f $RPM_BUILD_ROOT%{_mandir}/ja/man1/{cccp,cpp}.1
726
727 # include/ contains install-tools/include/* and headers that were fixed up
728 # by fixincludes, we don't want former
729 gccdir=$(echo $RPM_BUILD_ROOT%{_libdir}/gcc-lib/%{_target_cpu}*/*/)
730 mkdir $gccdir/tmp
731 # we have to save these however
732 mv -f $gccdir/include/{%{!?_without_objc:objc,}g2c.h,syslimits.h%{!?_without_java:,gcj}} $gccdir/tmp
733 rm -rf $gccdir/include
734 mv -f $gccdir/tmp $gccdir/include
735 cp $gccdir/install-tools/include/*.h $gccdir/include
736 # but we don't want anything more from install-tools
737 rm -rf $gccdir/install-tools/
738
739 %find_lang %{name}
740 %find_lang libstdc\+\+
741
742 %clean
743 rm -rf $RPM_BUILD_ROOT
744
745 %post
746 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
747
748 %postun
749 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
750
751 %post g77
752 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
753
754 %postun g77
755 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
756
757 %post java
758 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
759
760 %postun java
761 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
762
763 %post ksi
764 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
765
766 %postun ksi
767 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
768
769 %post -n cpp
770 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
771
772 %postun -n cpp
773 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
774
775 %post   -p /sbin/ldconfig -n libgcc
776 %postun -p /sbin/ldconfig -n libgcc
777 %post   -p /sbin/ldconfig -n libstdc++
778 %postun -p /sbin/ldconfig -n libstdc++
779 %post   -p /sbin/ldconfig -n libobjc
780 %postun -p /sbin/ldconfig -n libobjc
781 %post   -p /sbin/ldconfig -n libg2c
782 %postun -p /sbin/ldconfig -n libg2c
783 %post   -p /sbin/ldconfig -n libgcj
784 %postun -p /sbin/ldconfig -n libgcj
785 %post   -p /sbin/ldconfig -n libgnat
786 %postun -p /sbin/ldconfig -n libgnat
787 %post   -p /sbin/ldconfig -n libffi
788 %postun -p /sbin/ldconfig -n libffi
789
790 %files -f %{name}.lang
791 %defattr(644,root,root,755)
792 %doc READ* ChangeLog
793 %dir %{_libdir}/gcc-lib
794 %dir %{_libdir}/gcc-lib/%{_target_cpu}*
795 %dir %{_libdir}/gcc-lib/%{_target_cpu}*/*
796 %dir %{_libdir}/gcc-lib/%{_target_cpu}*/*/include
797 %attr(755,root,root) %{_bindir}/%{_target_cpu}*-gcc
798 %attr(755,root,root) %{_bindir}/gcc
799 %attr(755,root,root) %{_bindir}/gccbug
800 %attr(755,root,root) %{_bindir}/gcov
801 %attr(755,root,root) %{_bindir}/cc
802
803 %{_mandir}/man1/gcc.1*
804 %{_mandir}/man1/cc.1*
805 %{_mandir}/man1/gcov.1*
806 %lang(fr) %{_mandir}/fr/man1/gcc.1*
807 %lang(ja) %{_mandir}/ja/man1/gcc.1*
808 %{_infodir}/gcc*
809
810 %attr(755,root,root) %{_slibdir}/lib*.so
811 %{_libdir}/gcc-lib/%{_target_cpu}*/*/libgcc.a
812 %{_libdir}/gcc-lib/%{_target_cpu}*/*/libgcc_eh.a
813 %{_libdir}/gcc-lib/%{_target_cpu}*/*/specs
814 %attr(644,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/crt*.o
815 %ifarch ppc
816 %attr(644,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/ecrt*.o
817 %attr(644,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/ncrt*.o
818 %{_libdir}/gcc-lib/%{_target_cpu}*/*/nof
819 %dir %{_libdir}/nof
820 %endif
821 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/cc1
822 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/collect2
823
824 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/*.h
825 %exclude %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/g2c.h
826
827 %files -n libgcc
828 %defattr(644,root,root,755)
829 %attr(755,root,root) %{_slibdir}/lib*.so.*
830
831 %files c++
832 %defattr(644,root,root,755)
833 %attr(755,root,root) %{_bindir}/g++
834 %attr(755,root,root) %{_bindir}/%{_target_cpu}*-g++
835 %attr(755,root,root) %{_bindir}/c++
836 %attr(755,root,root) %{_bindir}/%{_target_cpu}*-c++
837 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/cc1plus
838 %{_libdir}/libsupc++.la
839 %ifarch ppc
840 %{_libdir}/nof/libsupc++.la
841 %{_libdir}/nof/libsupc++.a
842 %endif
843 %{_libdir}/libsupc++.a
844 %{_mandir}/man1/g++.1*
845 %lang(ja) %{_mandir}/ja/man1/g++.1*
846
847 %files -n libstdc++ -f libstdc++.lang
848 %defattr(644,root,root,755)
849 %attr(755,root,root) %{_libdir}/libstdc++.so.*.*.*
850 %ifarch ppc
851 %attr(755,root,root) %{_libdir}/nof/libstdc++.so.*.*.*
852 %endif
853
854 %files -n libstdc++-devel
855 %defattr(644,root,root,755)
856 %doc libstdc++-v3/docs/html
857 %dir %{_includedir}/c++
858 %{_includedir}/c++/%{GCC_VERSION}
859 %attr(755,root,root) %{_libdir}/libstdc++.so
860 %{_libdir}/libstdc++.la
861 %ifarch ppc
862 %attr(755,root,root) %{_libdir}/nof/libstdc++.so
863 %{_libdir}/nof/libstdc++.la
864 %endif
865
866 %files -n libstdc++-static
867 %defattr(644,root,root,755)
868 %{_libdir}/libstdc++.a
869 %ifarch ppc
870 %{_libdir}/nof/libstdc++.a
871 %endif
872
873 %if %{!?_without_objc:1}0
874 %files objc
875 %defattr(644,root,root,755)
876 %doc gcc/objc/READ*
877 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/cc1obj
878 %attr(755,root,root) %{_libdir}/libobjc.so
879 %{_libdir}/libobjc.la
880 %ifarch ppc
881 %attr(755,root,root) %{_libdir}/nof/libobjc.so
882 %{_libdir}/nof/libobjc.la
883 %endif
884 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/objc
885
886 %files -n libobjc
887 %defattr(644,root,root,755)
888 %attr(755,root,root) %{_libdir}/libobjc.so.*.*.*
889 %ifarch ppc
890 %attr(755,root,root) %{_libdir}/nof/libobjc.so.*.*.*
891 %endif
892
893 %files -n libobjc-static
894 %defattr(644,root,root,755)
895 %{_libdir}/libobjc.a
896 %ifarch ppc
897 %{_libdir}/nof/libobjc.a
898 %endif
899 %endif
900
901 %files g77
902 %defattr(644,root,root,755)
903 %attr(755,root,root) %{_bindir}/g77
904 %attr(755,root,root) %{_bindir}/f77
905 %{_infodir}/g77*
906 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/f771
907 %{_libdir}/libfrtbegin.a
908 %{_libdir}/libg2c.la
909 %attr(755,root,root) %{_libdir}/libg2c.so
910 %ifarch ppc
911 %{_libdir}/nof/libfrtbegin.a
912 %{_libdir}/nof/libg2c.la
913 %attr(755,root,root) %{_libdir}/nof/libg2c.so
914 %endif
915 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/g2c.h
916 %{_mandir}/man1/g77.1*
917 %{_mandir}/man1/f77.1*
918 %lang(ja) %{_mandir}/ja/man1/g77.1*
919 %lang(ja) %{_mandir}/ja/man1/f77.1*
920
921 %files -n libg2c
922 %defattr(644,root,root,755)
923 %attr(755,root,root) %{_libdir}/libg2c.so.*.*.*
924 %ifarch ppc
925 %attr(755,root,root) %{_libdir}/nof/libg2c.so.*.*.*
926 %endif
927
928 %files -n libg2c-static
929 %defattr(644,root,root,755)
930 %{_libdir}/libg2c.a
931 %ifarch ppc
932 %{_libdir}/nof/libg2c.a
933 %endif
934
935 %if %{!?_without_java:1}%{?_without_java:0}
936 %files java
937 %defattr(644,root,root,755)
938 %doc java-doc/*
939 %attr(755,root,root) %{_bindir}/gcj*
940 %attr(755,root,root) %{_bindir}/gij
941 %attr(755,root,root) %{_bindir}/jcf-dump
942 %attr(755,root,root) %{_bindir}/jv-*
943 %attr(755,root,root) %{_bindir}/grepjar
944 %attr(755,root,root) %{_bindir}/%{_target_cpu}*-gcj
945 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/jc1
946 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/jvgenmain
947 %{_infodir}/gcj*
948 %{_mandir}/man1/jcf-*
949 %{_mandir}/man1/jv-*
950 %{_mandir}/man1/gij*
951 %{_mandir}/man1/gcj*
952 %{_mandir}/man1/grepjar*
953
954 %files java-tools
955 %defattr(644,root,root,755)
956 %attr(755,root,root) %{_bindir}/rmi*
957 %attr(755,root,root) %{_bindir}/jar
958 %{_mandir}/man1/rmi*
959 %{_mandir}/man1/jar*
960 %{_infodir}/fastjar*
961
962 %files -n libgcj
963 %defattr(644,root,root,755)
964 %attr(755,root,root) %{_bindir}/addr2name.awk
965 %attr(755,root,root) %{_libdir}/lib*cj*.so.*.*.*
966 %attr(755,root,root) %{_libdir}/lib-org*.so.*.*.*
967 %ifarch ppc
968 %attr(755,root,root) %{_libdir}/nof/lib*cj*.so.*
969 %endif
970
971 %files -n libgcj-devel
972 %defattr(644,root,root,755)
973 %{_includedir}/java
974 %{_includedir}/javax
975 #%%{_includedir}/org
976 %{_includedir}/gcj
977 %{_includedir}/j*.h
978 %{_includedir}/gnu/*
979 %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/gcj
980 %dir %{_libdir}/security
981 %{_libdir}/security/*
982 %dir %{_datadir}/java
983 %{_datadir}/java/libgcj*.jar
984 %{_libdir}/lib*cj.spec
985 %{_libdir}/lib*cj*.la
986 %attr(755,root,root) %{_libdir}/lib*cj*.so
987 %attr(755,root,root) %{_libdir}/lib-org-*.so
988 %{_libdir}/lib-org-*.la
989 %ifarch ppc
990 %{_libdir}/nof/lib*cj*.la
991 %attr(755,root,root) %{_libdir}/nof/lib*cj*.so
992 %endif
993
994 %files -n libgcj-static
995 %defattr(644,root,root,755)
996 %{_libdir}/lib*cj*.a
997 %{_libdir}/lib-org-*.a
998 %ifarch ppc
999 %{_libdir}/nof/lib*cj*.a
1000 %endif
1001
1002 %files -n libffi
1003 %defattr(644,root,root,755)
1004 %attr(755,root,root) %{_libdir}/libffi-*.so
1005
1006 %files -n libffi-devel
1007 %defattr(644,root,root,755)
1008 %attr(755,root,root) %{_libdir}/libffi.so
1009 %{_libdir}/libffi.la
1010 %{_includedir}/ffi*
1011
1012 %files -n libffi-static
1013 %defattr(644,root,root,755)
1014 %{_libdir}/libffi.a
1015 %endif
1016
1017 %if 0%{!?_without_ada:1}
1018 %files ada
1019 %defattr(644,root,root,755)
1020 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/gnat1
1021 %{_libdir}/gcc-lib/%{_target_cpu}*/*/adainclude
1022 %dir %{_libdir}/gcc-lib/%{_target_cpu}*/*/adalib
1023 %{_libdir}/gcc-lib/%{_target_cpu}*/*/adalib/*.ali
1024 %ifnarch ppc
1025 %{_libdir}/gcc-lib/%{_target_cpu}*/*/adalib/libgmem.a
1026 %endif
1027 %{_libdir}/gcc-lib/%{_target_cpu}*/*/adalib/Makefile.adalib
1028 %attr(755,root,root) %{_bindir}/gnat*
1029 %{_infodir}/gnat*
1030 %attr(755,root,root) %{_libdir}/libgnat*.so
1031 %attr(755,root,root) %{_libdir}/libgnarl*.so
1032
1033 %files -n libgnat
1034 %defattr(644,root,root,755)
1035 %attr(755,root,root) %{_libdir}/libgna*.so.1
1036
1037 %files -n libgnat-static
1038 %defattr(644,root,root,755)
1039 %{_libdir}/gcc-lib/%{_target_cpu}*/*/adalib/libgna*.a
1040 %endif
1041
1042 %files ksi
1043 %defattr(644,root,root,755)
1044 %doc gcc/ksi/README gcc/ksi/NEWS gcc/ksi/t/*.{ksi,c,foo}
1045 %{_infodir}/ksi*
1046 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/ksi1
1047
1048 %files -n cpp
1049 %defattr(644,root,root,755)
1050 %attr(755,root,root) %{_slibdir}/cpp
1051 %attr(755,root,root) %{_bindir}/cpp
1052 %{_mandir}/man1/cpp.1*
1053 %lang(ja) %{_mandir}/ja/man1/cpp.1*
1054 %{_infodir}/cpp*
This page took 0.113949 seconds and 4 git commands to generate.