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