3 %bcond_without ada # build without ADA support
4 %bcond_without java # build without Java support
5 %bcond_without objc # build without objc support
8 %define GCC_VERSION 3.4
9 %define KSI_VERSION 1.1.0.1567
11 Summary: GNU Compiler Collection: the C compiler and shared files
12 Summary(es): Colección de compiladores GNU: el compilador C y ficheros compartidos
13 Summary(pl): Kolekcja kompilatorów GNU: kompilator C i pliki wspó³dzielone
14 Summary(pt_BR): Coleção dos compiladores GNU: o compilador C e arquivos compartilhados
16 Version: %{GCC_VERSION}
20 Group: Development/Languages
21 #Source0: ftp://gcc.gnu.org/pub/gcc/releases/gcc-%{version}/%{name}-%{version}.tar.bz2
22 ##Source0: ftp://gcc.gnu.org/pub/gcc/snapshots/%{version}-%{snap}/%{name}-%{version}-%{snap}.tar.bz2
23 Source0: %{name}-%{version}-%{snap}.tar.bz2
24 # Source0-md5: d2fe81f5df0f12279e12a05ceea7291c
25 Source1: ftp://ftp.pld-linux.org/people/malekith/ksi/ksi-%{KSI_VERSION}.tar.gz
26 # Source1-md5: 66f07491b44f06928fd95b0e65bb8cd3
27 Source2: http://ep09.pld-linux.org/~djrzulf/gcc33/%{name}-non-english-man-pages.tar.bz2
28 # Source2-md5: 4736f3422ddfb808423b745629acc321
29 Patch0: %{name}-info.patch
30 Patch1: %{name}-nolocalefiles.patch
31 Patch2: %{name}-ada-link-new-libgnat.patch
32 BuildRequires: autoconf
33 BuildRequires: automake
34 BuildRequires: binutils >= 2.14
36 BuildRequires: fileutils >= 4.0.41
38 %{?with_ada:BuildRequires: gcc-ada}
39 BuildRequires: gettext-devel
40 BuildRequires: glibc-devel >= 2.2.5-20
41 BuildRequires: perl-devel
42 BuildRequires: texinfo >= 4.1
43 BuildRequires: zlib-devel
44 Requires: binutils >= 2.14
45 Requires: cpp = %{epoch}:%{version}-%{release}
46 Requires: libgcc = %{epoch}:%{version}-%{release}
47 Conflicts: glibc-devel < 2.2.5-20
48 URL: http://gcc.gnu.org/
49 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
51 %define _slibdir /%{_lib}
53 %define _slibdir64 /lib64
54 %define _libdir /usr/lib
55 %define rpmcflags -O2 -mtune=ultrasparc
59 A compiler aimed at integrating all the optimizations and features
60 necessary for a high-performance and stable development environment.
62 This package contains the C compiler and some files shared by various
63 parts of the GNU Compiler Collection. In order to use another GCC
64 compiler you will need to install the appropriate subpackage.
67 Un compilador destinado a la integración de todas las optimalizaciones
68 y características necesarias para un entorno de desarrollo eficaz y
71 Este paquete contiene el compilador de C y unos ficheros compartidos
72 por varias parted de la colección de compiladores GNU (GCC). Para usar
73 otro compilador de GCC será necesario que instale el subpaquete
77 Kompilator, posiadaj±cy du¿e mo¿liwo¶ci optymalizacyjne niezbêdne do
78 wyprodukowania szybkiego i stablinego kodu wynikowego.
80 Ten pakiet zawiera kompilator C i pliki wspó³dzielone przez ró¿ne
81 czê¶ci kolekcji kompilatorów GNU (GCC). ¯eby u¿ywaæ innego kompilatora
82 z GCC, trzeba zainstalowaæ odpowiedni podpakiet.
85 Este pacote adiciona infraestrutura básica e suporte a linguagem C ao
86 GNU Compiler Collection.
89 Summary: Shared gcc library
90 Summary(es): Biblioteca compartida de gcc
91 Summary(pl): Biblioteka gcc
92 Summary(pt_BR): Biblioteca runtime para o GCC
96 %description -n libgcc
99 %description -n libgcc -l es
100 Biblioteca compartida de gcc.
102 %description -n libgcc -l pl
103 Biblioteka dynamiczna gcc.
105 %description -n libgcc -l pt_BR
106 Biblioteca runtime para o GCC.
109 Summary: C++ support for gcc
110 Summary(es): Soporte de C++ para gcc
111 Summary(pl): Obs³uga C++ dla gcc
112 Summary(pt_BR): Suporte C++ para o gcc
113 Group: Development/Languages
116 Requires: gcc = %{epoch}:%{version}-%{release}
119 This package adds C++ support to the GNU Compiler Collection. It
120 includes support for most of the current C++ specification, including
121 templates and exception handling. It does not include a standard C++
122 library, which is available separately.
124 %description c++ -l de
125 Dieses Paket enthält die C++-Unterstützung für den
126 GNU-Compiler-Collection. Es unterstützt die aktuelle
127 C++-Spezifikation, inkl. Templates und Ausnahmeverarbeitung. Eine
128 C++-Standard-Library ist nicht enthalten - sie ist getrennt
131 %description c++ -l es
132 Este paquete añade soporte de C++ al GCC (colección de compiladores
133 GNU). Ello incluye el soporte para la mayoría de la especificación
134 actual de C++, incluyendo plantillas y manejo de excepciones. No
135 incluye la biblioteca estándar de C++, la que es disponible separada.
137 %description c++ -l fr
138 Ce package ajoute un support C++ a la collection de compilateurs GNU.
139 Il comprend un support pour la plupart des spécifications actuelles de
140 C++, dont les modéles et la gestion des exceptions. Il ne comprend pas
141 une bibliothéque C++ standard, qui est disponible séparément.
143 %description c++ -l pl
144 Ten pakiet dodaje obs³ugê C++ do kompilatora gcc. Ma wsparcie dla
145 du¿ej ilo¶ci obecnych specyfikacji C++, nie zawiera natomiast
146 standardowych bibliotek C++, które s± w oddzielnym pakiecie.
148 %description c++ -l pt_BR
149 Este pacote adiciona suporte C++ para o gcc.
151 %description c++ -l tr
152 Bu paket, GNU C derleyicisine C++ desteði ekler. 'Template'ler ve
153 aykýrý durum iþleme gibi çoðu güncel C++ tanýmlarýna uyar. Standart
154 C++ kitaplýðý bu pakette yer almaz.
157 Summary: Objective C support for gcc
158 Summary(de): Objektive C-Unterstützung für gcc
159 Summary(es): Soporte de Objective C para 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
166 Requires: libobjc = %{epoch}:%{version}-%{release}
167 Requires: gcc = %{epoch}:%{version}-%{release}
170 This package adds Objective C support to the GNU Compiler Collection.
171 Objective C is a object oriented derivative of the C language, mainly
172 used on systems running NeXTSTEP. This package does not include the
173 standard objective C object library.
175 %description objc -l de
176 Dieses Paket ergänzt den GNU-Compiler-Collection durch
177 Objective-C-Support. Objective C ist ein objektorientiertes Derivat
178 von C, das zur Hauptsache auf Systemen mit NeXTSTEP zum Einsatz kommt.
179 Die Standard-Objective-C-Objekt-Library ist nicht Teil des Pakets.
181 %description objc -l es
182 Este paquete añade soporte de Objective C al GCC (colección de
183 compiladores GNU). Objective C es un lenguaje orientado a objetos
184 derivado de C, principalmente usado en sistemas que funcionan bajo
185 NeXTSTEP. El paquete no incluye la biblioteca de objetos estándar de
188 %description objc -l fr
189 Ce package ajoute un support Objective C a la collection de
190 compilateurs GNU. L'Objective C est un langage orienté objetdérivé du
191 langage C, principalement utilisé sur les systèmes NeXTSTEP. Ce
192 package n'inclue pas la bibliothéque Objective C standard.
194 %description objc -l pl
195 Ten pakiet dodaje obs³ugê obiektowego C do kompilatora gcc. Obiektowe
196 C (objc) jest zorientowan± obiektowo pochodn± jêzyka C, u¿ywan±
197 g³ównie w systemach u¿ywaj±cych NeXTSTEP. W pakiecie nie ma
198 standardowej biblioteki objc (która znajduje siê w osobnym pakiecie).
200 %description objc -l tr
201 Bu paket, GNU C derleyicisine Objective C desteði ekler. Objective C,
202 C dilinin nesne yönelik bir türevidir ve NeXTSTEP altýnda çalýþan
203 sistemlerde yaygýn olarak kullanýlýr. Standart Objective C nesne
204 kitaplýðý bu pakette yer almaz.
207 Summary: Objective C Libraries
208 Summary(es): Bibliotecas de Objective C
209 Summary(pl): Biblioteki Obiektowego C
213 %description -n libobjc
214 Objective C Libraries.
216 %description -n libobjc -l es
217 Bibliotecas de Objective C.
219 %description -n libobjc -l pl
220 Biblioteki Obiektowego C.
222 %package -n libobjc-static
223 Summary: Static Objective C Libraries
224 Summary(es): Bibliotecas estáticas de Objective C
225 Summary(pl): Statyczne Biblioteki Obiektowego C
226 Group: Development/Libraries
227 Requires: libobjc = %{epoch}:%{version}-%{release}
229 %description -n libobjc-static
230 Static Objective C Libraries.
232 %description -n libobjc-static -l es
233 Bibliotecas estáticas de Objective C.
235 %description -n libobjc-static -l pl
236 Statyczne biblioteki Obiektowego C.
239 Summary: Fortran 77 support for gcc
240 Summary(es): Soporte de Fortran 77 para gcc
241 Summary(pl): Obs³uga Fortranu 77 dla gcc
242 Summary(pt_BR): Suporte Fortran 77 para o GCC
243 Group: Development/Languages/Fortran
245 Requires: libg2c = %{epoch}:%{version}-%{release}
248 This package adds support for compiling Fortran 77 programs with the
251 %description g77 -l es
252 Este paquete añade soporte para compilar programas escritos en Fortran
253 77 con el compilador GNU.
255 %description g77 -l pl
256 Ten pakiet dodaje obs³ugê Fortranu 77 do kompilatora gcc. Jest
257 potrzebny do kompilowania programów pisanych w jêzyku Fortran 77.
259 %description g77 -l pt_BR
260 Suporte Fortran 77 para o GCC.
263 Summary: Fortran 77 Libraries
264 Summary(es): Bibliotecas de Fortran 77
265 Summary(pl): Biblioteki Fortranu 77
268 %description -n libg2c
269 Fortran 77 Libraries.
271 %description -n libg2c -l es
272 Bibliotecas de Fortran 77.
274 %description -n libg2c -l pl
275 Biblioteki Fortranu 77.
277 %package -n libg2c-static
278 Summary: Static Fortran 77 Libraries
279 Summary(es): Bibliotecas estáticas de Fortran 77
280 Summary(pl): Statyczne Biblioteki Fortranu 77
281 Group: Development/Libraries
282 Requires: libg2c = %{epoch}:%{version}-%{release}
284 %description -n libg2c-static
285 Static Fortran 77 Libraries.
287 %description -n libg2c -l es
288 Bibliotecas estáticas de Fortran 77.
290 %description -n libg2c-static -l pl
291 Statyczne biblioteki Fortranu 77.
294 Summary: Java support for gcc
295 Summary(es): Soporte de Java para gcc
296 Summary(pl): Obs³uga Javy dla gcc
297 Group: Development/Languages/Java
298 Requires: %{name} = %{epoch}:%{version}-%{release}
299 Requires: libgcj >= 3.0.0
300 Requires: libgcj-devel >= 3.0.0
301 Requires: java-shared
302 Provides: gcj = %{epoch}:%{version}-%{release}
305 This package adds experimental support for compiling Java(tm) programs
306 and bytecode into native code. To use this you will also need the
309 %description java -l es
310 Este paquete añade soporte experimental para compilar programas
311 Java(tm) y su bytecode en código nativo. Para usarlo también va a
312 necesitar el paquete libgcj.
314 %description java -l pl
315 Wsparcie dla kompilowania programów Java(tm) zrówno do bajt-kodu jak i
316 do natywnego kodu. Dodatkowo wymagany jest pakiet libgcj, aby mo¿na
317 by³o przeprowadziæ kompilacjê.
320 Summary: Shared java tools
321 Summary(es): Herramientas compartidas de Java
322 Summary(pl): Wspó³dzielone narzêdzia javy
323 Group: Development/Languages/Java
324 Provides: jar = %{epoch}:%{version}-%{release}
325 Provides: java-shared
327 Obsoletes: java-shared
330 %description java-tools
331 This package contains tools that are common for every Java(tm)
332 implementation, such as rmic or jar.
334 %description java-tools -l es
335 Este paquete contiene herramientas que son comunes para cada
336 implementación de Java(tm), como rmic o jar.
338 %description java-tools -l pl
339 Pakiet ten zawiera narzêdzia wspólne dla ka¿dej implementacji
340 Javy(tm), takie jak rmic czy jar.
343 Summary: Java Class Libraries
344 Summary(es): Bibliotecas de clases de Java
345 Summary(pl): Biblioteki Klas Javy
350 %description -n libgcj
351 Java Class Libraries.
353 %description -n libgcj -l es
354 Bibliotecas de clases de Java.
356 %description -n libgcj -l pl
357 Biblioteki Klas Javy.
359 %package -n libgcj-devel
360 Summary: Development files for Java Class Libraries
361 Summary(es): Ficheros de desarrollo para las bibliotecas de clases de Java
362 Summary(pl): Pliki nag³ówkowe dla Bibliotek Klas Javy
363 Group: Development/Libraries
364 Requires: libgcj = %{epoch}:%{version}-%{release}
365 Requires: %{name}-java
367 Obsoletes: libgcj3-devel
369 %description -n libgcj-devel
370 Development files for Java Class Libraries.
372 %description -n libgcj-devel -l es
373 Ficheros de desarrollo para las bibliotecas de clases de Java.
375 %description -n libgcj-devel -l pl
376 Pliki nag³ówkowe dla Bibliotek Klas Javy.
378 %package -n libgcj-static
379 Summary: Static Java Class Libraries
380 Summary(es): Bibliotecas estáticas de clases de Java
381 Summary(pl): Statyczne Biblioteki Klas Javy
382 Group: Development/Libraries
383 Requires: libstdc++-devel = %{epoch}:%{version}-%{release}
384 Requires: libgcj-devel = %{epoch}:%{version}-%{release}
386 %description -n libgcj-static
387 Static Java Class Libraries.
389 %description -n libgcj-static -l es
390 Bibliotecas estáticas de clases de Java.
392 %description -n libgcj-static -l pl
393 Statyczne Biblioteki Klas Javy.
395 %package -n libstdc++
396 Summary: GNU c++ library
397 Summary(es): Biblioteca C++ de GNU
398 Summary(pl): Biblioteki GNU C++
399 Summary(pt_BR): Biblioteca C++ GNU
402 Obsoletes: libstdc++3
404 %description -n libstdc++
405 This is the GNU implementation of the standard C++ libraries, along
406 with additional GNU tools. This package includes the shared libraries
407 necessary to run C++ applications.
409 %description -n libstdc++ -l de
410 Dies ist die GNU-Implementierung der Standard-C++-Libraries mit
411 weiteren GNU-Tools. Dieses Paket enthält die zum Ausführen von
412 C++-Anwendungen erforderlichen gemeinsam genutzten Libraries.
414 %description -n libstdc++ -l es
415 Este es el soporte de las bibliotecas padrón del C++, junto con
416 herramientas GNU adicionales. El paquete incluye las bibliotecas
417 compartidas necesarias para ejecutar aplicaciones C++.
419 %description -n libstdc++ -l fr
420 Ceci est l'implémentation GNU des librairies C++ standard, ainsi que
421 des outils GNU supplémentaires. Ce package comprend les librairies
422 partagées nécessaires à l'exécution d'application C++.
424 %description -n libstdc++ -l pl
425 Pakiet ten zawiera biblioteki bêd±ce implementacj± standardowych
426 bibliotek C++. Znajduj± siê w nim biblioteki dynamiczne niezbêdne do
427 uruchomienia aplikacji napisanych w C++.
429 %description -n libstdc++ -l pt_BR
430 Este pacote é uma implementação da biblioteca padrão C++ v3, um
431 subconjunto do padrão ISO 14882.
433 %description -n libstdc++ -l tr
434 Bu paket, standart C++ kitaplýklarýnýn GNU gerçeklemesidir ve C++
435 uygulamalarýnýn koþturulmasý için gerekli kitaplýklarý içerir.
437 %package -n libstdc++-devel
438 Summary: Header files and documentation for C++ development
439 Summary(de): Header-Dateien zur Entwicklung mit C++
440 Summary(es): Ficheros de cabecera y documentación para desarrollo C++
441 Summary(fr): Fichiers d'en-tête et biblitothèques pour développer en C++
442 Summary(pl): Pliki nag³ówkowe i dokumentacja do biblioteki standardowej C++
443 Summary(pt_BR): Arquivos de inclusão e bibliotecas para o desenvolvimento em C++
444 Summary(tr): C++ ile program geliþtirmek için gerekli dosyalar
445 Group: Development/Libraries
446 Requires: libstdc++ = %{epoch}:%{version}-%{release}
447 Requires: %{name}-c++ = %{epoch}:%{version}-%{release}
448 Obsoletes: libg++-devel
449 Obsoletes: libstdc++3-devel
451 %description -n libstdc++-devel
452 This is the GNU implementation of the standard C++ libraries. This
453 package includes the header files needed for C++ development and
454 library documentation.
456 %description -n libstdc++-devel -l es
457 Este es el soporte de las bibliotecas padrón del lenguaje C++. Este
458 paquete incluye los archivos de inclusión y bibliotecas necesarios
459 para desarrollo de programas en lenguaje C++.
461 %description -n libstdc++-devel -l pl
462 Pakiet ten zawiera biblioteki bêd±ce implementacj± standardowych
463 bibliotek C++. Znajduj± siê w nim pliki nag³ówkowe wykorzystywane przy
464 programowaniu w jêzyku C++ oraz dokumentacja biblioteki standardowej.
466 %description -n libstdc++-devel -l pt_BR
467 Este pacote inclui os arquivos de inclusão e bibliotecas necessárias
468 para desenvolvimento de programas C++.
470 %package -n libstdc++-static
471 Summary: Static C++ standard library
472 Summary(es): Biblioteca estándar estática de C++
473 Summary(pl): Statyczna biblioteka standardowa C++
474 Group: Development/Libraries
475 Requires: libstdc++-devel = %{epoch}:%{version}-%{release}
477 %description -n libstdc++-static
478 Static C++ standard library.
480 %description -n libstdc++-static -l es
481 Biblioteca estándar estática de C++.
483 %description -n libstdc++-static -l pl
484 Statycza biblioteka standardowa C++.
487 Summary: Foreign Function Interface library
488 Summary(es): Biblioteca de interfaz de funciones ajenas
489 Summary(pl): Biblioteka zewnêtrznych wywo³añ funkcji
492 %description -n libffi
493 The libffi library provides a portable, high level programming
494 interface to various calling conventions. This allows a programmer to
495 call any function specified by a call interface description at run
498 %description -n libffi -l es
499 La biblioteca libffi provee una interfaz portable de programación de
500 alto nivel para varias convenciones de llamada. Ello permite que un
501 programador llame una función cualquiera especificada por una
502 descripción de interfaz de llamada en el tiempo de ejecución.
504 %description -n libffi -l pl
505 Biblioteka libffi dostarcza przno¶nego, wysokopoziomowego
506 miêdzymordzia do ró¿nych konwencji wywo³añ funkcji. Pozwala to
507 programi¶cie wywo³ywaæ dowolne funkcje podaj±c konwencjê wywo³ania w
510 %package -n libffi-devel
511 Summary: Development files for Foreign Function Interface library
512 Summary(es): Ficheros de desarrollo para libffi
513 Summary(pl): Pliki nag³ówkowe dla libffi
514 Group: Development/Libraries
515 Requires: libffi = %{epoch}:%{version}-%{release}
517 %description -n libffi-devel
518 Development files for Foreign Function Interface library.
520 %description -n libffi-devel -l es
521 Ficheros de desarrollo para libffi.
523 %description -n libffi-devel -l pl
524 Pliki nag³ówkowe dla libffi.
526 %package -n libffi-static
527 Summary: Static Foreign Function Interface library
528 Summary(es): Biblioteca libffi estática
529 Summary(pl): Statyczna biblioteka libffi
530 Group: Development/Libraries
531 Requires: libffi-devel = %{epoch}:%{version}-%{release}
533 %description -n libffi-static
534 Static Foreign Function Interface library.
536 %description -n libffi-static -l es
537 Biblioteca libffi estática.
539 %description -n libffi-static -l pl
540 Statyczna biblioteka libffi.
543 Summary: Ada support for gcc
544 Summary(es): Soporte de Ada para gcc
545 Summary(pl): Obs³uga Ady do gcc
546 Group: Development/Languages
547 Requires: libgnat = %{epoch}:%{version}-%{release}
548 Requires: gcc = %{epoch}:%{version}-%{release}
550 Obsoletes: gnat-devel
553 This package adds experimental support for compiling Ada programs.
555 %description ada -l es
556 Este paquete añade soporte experimental para compilar programas en
559 %description ada -l pl
560 Ten pakiet dodaje eksperymentalne wsparcie dla kompilacji programów w
564 Summary: Ada standard libraries
565 Summary(es): Bibliotecas estándares de Ada
566 Summary(pl): Biblioteki standardowe dla Ady
571 %description -n libgnat
572 This package contains shared libraries needed to run programs written
575 %description -n libgnat -l es
576 Este paquete contiene las bibliotecas compartidas necesarias para
577 ejecutar programas escritos en Ada.
579 %description -n libgnat -l pl
580 Ten pakiet zawiera biblioteki potrzebne do uruchamiania programów
583 %package -n libgnat-static
584 Summary: Static Ada standard libraries
585 Summary(pl): Statyczne biblioteki standardowe dla Ady
587 Obsoletes: gnat-static
589 %description -n libgnat-static
590 This package contains static libraries for programs written in Ada.
592 %description -n libgnat-static -l pl
593 Ten pakiet zawiera biblioteki statyczne dla programów napisanych w
597 Summary: Ksi support for gcc
598 Summary(es): Soporte de Ksi para gcc
599 Summary(pl): Obs³uga Ksi dla gcc
600 Version: %{GCC_VERSION}.%{KSI_VERSION}
601 Group: Development/Languages
602 Requires: gcc = %{epoch}:%{version}-%{release}
605 This package adds experimental support for compiling Ksi programs into
606 native code. You proabably don't need it, unless your are going to
607 develop a compiler using Ksi as intermediate representation or you are
608 using such compiler (like Gont).
610 %description ksi -l es
611 Este paquete añade soporte experimental para compilar programas de Ksi
612 en código nativo. Probablemento no lo necesitará, a menos que vaya a
613 desarrollar un compilador que use Ksi como representación intermedia o
614 use tal compilador (como Gont).
616 %description ksi -l pl
617 Ten pakiet dodaje eksperymentalne wsparcie dla kompilacji programów w
618 Ksi do kodu maszynowego. Prawdopodobnie nie potrzebujesz go, chyba ¿e
619 zamierzasz pisaæ kompilator u¿ywaj±cy Ksi jako reprezentacji
620 po¶rednicz±cej, lub u¿ywasz takiego kompilatora (jak Gont).
623 Summary: The C Pre Processor
624 Summary(es): El preprocesador de C
625 Summary(pl): Preprocesor C
626 Summary(pt_BR): Preprocessador para a linguagem C
627 Group: Development/Languages
628 Version: %{GCC_VERSION}
633 The C preprocessor is a "macro processor" that is used automatically
634 by the C compiler to transform your program before actual compilation.
635 It is called a macro processor because it allows you to define
636 "macros", which are brief abbreviations for longer constructs.
638 The C preprocessor provides four separate facilities that you can use
641 - Inclusion of header files. These are files of declarations that can
642 be substituted into your program.
643 - Macro expansion. You can define "macros", which are abbreviations
644 for arbitrary fragments of C code, and then the C preprocessor will
645 replace the macros with their definitions throughout the program.
646 - Conditional compilation. Using special preprocessing directives, you
647 can include or exclude parts of the program according to various
649 - Line control. If you use a program to combine or rearrange source
650 files into an intermediate file which is then compiled, you can use
651 line control to inform the compiler of where each source line
652 originally came from.
654 %description -n cpp -l es
655 El preprocesador de C es un "procesador de macros" que es usado
656 automáticamente por el compilador C para transformar su programa antes
657 de que éste se actualmente compile. Se llama procesador de macros
658 porque permite definir "macros", los que son abreviaciones concisas
659 para construcciones más largas.
661 El preprocesador C provee cuatro cualidadedes distintas que puede usar
664 - Inclusión de ficheros de cabecera. Éstos son ficheros de
665 declaraciones que pueden incorporarse a su programa.
666 - Expansión de macros. Puede definir "macros", los que son
667 abreviaciones para fragmentos arbitrarios de código C, y a lo largo
668 del programa el preprocesador sustituirá los macros con sus
670 - Compilación condicional. Usando especiales directivas del preproceso
671 puede incluir o excluir partes del programa según varias condiciones.
672 - Control de líneas. Si usa un programa para combinar o reorganizar el
673 código fuente en un fichero intermedio que luego es compilado, puede
674 usar control de líneas para informar el compilador de dónde origina
677 %description -n cpp -l pl
678 Przeprocesor C jest "makro procesorem" który jest automatycznie
679 u¿ywany przez kompilator C do obróbki kompilowanego programu przed
680 w³a¶ciw± kompilacj±. Jest on nazywany makroprocesorem, poniewa¿
681 umo¿liwia definiowanie i rozwijanie makr umo¿liwiaj±cych skracanie
682 d³ugich konstrukcji w jêzyku C.
684 Preprocesor C umo¿liwia wykonywanie czterech ró¿nych typów operacji:
686 - Do³±czanie plików (np. nag³ówkowych). Wstawia pliki w miejscu
687 deklaracji polecenia do³±czenia innego pliku.
688 - Rozwijanie makr. Mo¿na definiowaæ "makra" nadaj±c im identyfikatory,
689 których pó¼niejsze u¿ycie powoduje podczas rozwijania podmienienie
690 indentyfikatora deklarowan± wcze¶niej warto¶ci±.
691 - Kompilacja warunkowa. W zale¿no¶ci od obecno¶ci symboli i dyrektyw w
692 ¶rodowisku preprocesora s± w³±czane warunkowo, b±d¼ nie, pewne
693 fragmenty obrabianego strumienia tekstów.
694 - Kontrola linii ¼ród³a. Niezale¿nie od tego jakim przeobra¿eniom
695 podlega wynikowy strumieñ danych w wyniku rozwijania makr i do³±czania
696 s± zapamiêtywane informacje o tym, której linii pliku ¼ród³owego
697 odpowiada fragment pliku wynikowego.
699 %description -n cpp -l pt_BR
700 O preprocessador C é um "processador de macros", que é utilizado pelo
701 compilador C para fazer algumas modificações no seu programa, antes da
702 compilação em si. Ele é chamado de "processador de macros" porque
703 permite a você definir "macros", que são abreviações para construções
706 O preprocessador C fornece quatro funcionalidades básicas: inclusão de
707 arquivos de cabeçalho; expansão de macros; compilação condicional; e
708 controle da numeração das linhas do programa.
711 %setup -q -a1 -n %{name}-%{version}-%{snap}
712 mv ksi-%{KSI_VERSION} gcc/ksi
718 # because we distribute modified version of gcc...
719 perl -pi -e 's/(version.*)";/$1 (PLD Linux)";/' gcc/version.c
720 perl -pi -e 's@(bug_report_url.*<URL:).*";@$1http://bugs.pld-linux.org/>";@' gcc/version.c
723 # cd gcc && autoconf; cd ..
724 # autoconf is not needed!
725 cp /usr/share/automake/config.sub .
727 rm -rf obj-%{_target_platform} && install -d obj-%{_target_platform} && cd obj-%{_target_platform}
729 CFLAGS="%{rpmcflags}" \
730 CXXFLAGS="%{rpmcflags}" \
731 TEXCONFIG=false ../configure \
732 --prefix=%{_prefix} \
733 --libdir=%{_libdir} \
734 --libexecdir=%{_libexecdir} \
735 --infodir=%{_infodir} \
736 --mandir=%{_mandir} \
738 --enable-threads=posix \
739 --enable-__cxa_atexit \
740 --enable-languages="c,c++,f77%{?with_objc:,objc}%{?with_ada:,ada}%{?with_java:,java}" \
752 --with-slibdir=%{_slibdir} \
756 PATH=$PATH:/sbin:%{_sbindir}
759 %{__make} -C obj-%{_target_platform} profiledbootstrap \
760 BOOT_CFLAGS="%{rpmcflags}" \
761 STAGE1_CFLAGS="%{rpmcflags}" \
762 LDFLAGS_FOR_TARGET="%{rpmldflags}" \
767 %{__make} -C obj-%{_target_platform}/gcc gnatlib gnattools gnatlib-shared \
768 LDFLAGS_FOR_TARGET="%{rpmldflags}" \
774 rm -rf $RPM_BUILD_ROOT
775 install -d $RPM_BUILD_ROOT{/lib,%{_datadir},%{_infodir}}
777 cd obj-%{_target_platform}
778 PATH=$PATH:/sbin:%{_sbindir}
782 infodir=%{_infodir} \
783 DESTDIR=$RPM_BUILD_ROOT
786 ln -f $RPM_BUILD_ROOT%{_bindir}/sparc64-pld-linux-gcc \
787 $RPM_BUILD_ROOT%{_bindir}/sparc-pld-linux-gcc
790 ln -sf gcc $RPM_BUILD_ROOT%{_bindir}/cc
791 echo ".so gcc.1" > $RPM_BUILD_ROOT%{_mandir}/man1/cc.1
793 ln -sf g77 $RPM_BUILD_ROOT%{_bindir}/f77
794 echo ".so g77.1" > $RPM_BUILD_ROOT%{_mandir}/man1/f77.1
797 # move ada shared libraries to proper place...
798 mv $RPM_BUILD_ROOT%{_libdir}/gcc/*/*/adalib/*.so \
799 $RPM_BUILD_ROOT%{_libdir}/
802 ln -sf %{_bindir}/cpp $RPM_BUILD_ROOT/lib/cpp
808 cp -f libjava/doc/cni.sgml libjava/READ* java-doc
809 cp -f fastjar/README java-doc/README.fastjar
810 cp -f libffi/README java-doc/README.libffi
811 cp -f libffi/LICENSE java-doc/LICENSE.libffi
815 cp -f libobjc/README gcc/objc/README.libobjc
818 # avoid -L poisoning in *.la - there should be only -L%{_libdir}/gcc/*/%{version}
819 for f in libstdc++.la libsupc++.la %{?with_java:libgcj.la} ; do
820 perl -pi -e 's@-L[^ ]*[acs.] @@g' $RPM_BUILD_ROOT%{_libdir}/$f
822 # normalize libdir, to avoid propagation of unnecessary RPATHs by libtool
823 for f in libstdc++.la libsupc++.la libg2c.la \
824 %{?with_java:libgcj.la lib-org-w3c-dom.la lib-org-xml-sax.la libffi.la} \
825 %{?with_objc:libobjc.la}; do
826 perl -pi -e "s@^libdir='.*@libdir='/usr/%{_lib}'@" $RPM_BUILD_ROOT%{_libdir}/$f
829 bzip2 -dc %{SOURCE2} | tar xf - -C $RPM_BUILD_ROOT%{_mandir}
830 mv -f $RPM_BUILD_ROOT%{_mandir}/ja/man1/{cccp,cpp}.1
832 # include/ contains install-tools/include/* and headers that were fixed up
833 # by fixincludes, we don't want former
834 gccdir=$(echo $RPM_BUILD_ROOT%{_libdir}/gcc/*/*/)
836 # we have to save these however
837 mv -f $gccdir/include/{%{?with_objc:objc,}g2c.h,syslimits.h%{?with_java:,gcj}} $gccdir/tmp
838 rm -rf $gccdir/include
839 mv -f $gccdir/tmp $gccdir/include
840 cp $gccdir/install-tools/include/*.h $gccdir/include
841 # but we don't want anything more from install-tools
842 rm -rf $gccdir/install-tools
845 %find_lang libstdc\+\+
848 rm -rf $RPM_BUILD_ROOT
851 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
854 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
857 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
860 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
863 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
866 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
869 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
872 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
875 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
878 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
880 %post -p /sbin/ldconfig -n libgcc
881 %postun -p /sbin/ldconfig -n libgcc
882 %post -p /sbin/ldconfig -n libstdc++
883 %postun -p /sbin/ldconfig -n libstdc++
884 %post -p /sbin/ldconfig -n libobjc
885 %postun -p /sbin/ldconfig -n libobjc
886 %post -p /sbin/ldconfig -n libg2c
887 %postun -p /sbin/ldconfig -n libg2c
888 %post -p /sbin/ldconfig -n libgcj
889 %postun -p /sbin/ldconfig -n libgcj
890 %post -p /sbin/ldconfig -n libgnat
891 %postun -p /sbin/ldconfig -n libgnat
892 %post -p /sbin/ldconfig -n libffi
893 %postun -p /sbin/ldconfig -n libffi
895 %files -f %{name}.lang
896 %defattr(644,root,root,755)
897 %doc ChangeLog MAINTAINERS README gcc/README.Portability
899 %dir %{_libdir}/gcc/*
900 %dir %{_libdir}/gcc/*/*
901 %dir %{_libdir}/gcc/*/*/include
902 %attr(755,root,root) %{_bindir}/*-gcc*
903 %attr(755,root,root) %{_bindir}/gcc
904 %attr(755,root,root) %{_bindir}/gccbug
905 %attr(755,root,root) %{_bindir}/gcov
906 %attr(755,root,root) %{_bindir}/cc
908 %{_mandir}/man1/gcc.1*
909 %{_mandir}/man1/cc.1*
910 %{_mandir}/man1/gcov.1*
911 %lang(fr) %{_mandir}/fr/man1/gcc.1*
912 %lang(ja) %{_mandir}/ja/man1/gcc.1*
915 %attr(755,root,root) %{_slibdir}*/lib*.so
916 %{_libdir}/gcc/*/*/libgcov.a
917 %{_libdir}/gcc/*/*/libgcc.a
918 %{_libdir}/gcc/*/*/libgcc_eh.a
919 %{_libdir}/gcc/*/*/specs
920 %attr(644,root,root) %{_libdir}*/gcc/*/*/crt*.o
922 %{_libdir}/gcc/*/*/*/libgcc.a
923 %{_libdir}/gcc/*/*/*/libgcc_eh.a
924 %attr(644,root,root) %{_libdir}*/gcc/*/*/*/crt*.o
927 %attr(644,root,root) %{_libdir}/gcc/*/*/ecrt*.o
928 %attr(644,root,root) %{_libdir}/gcc/*/*/ncrt*.o
929 %{_libdir}/gcc/*/*/nof
932 %attr(755,root,root) %{_libdir}/gcc/*/*/cc1
933 %attr(755,root,root) %{_libdir}/gcc/*/*/collect2
935 %{_libdir}/gcc/*/*/include/*.h
936 %exclude %{_libdir}/gcc/*/*/include/g2c.h
939 %defattr(644,root,root,755)
940 %attr(755,root,root) %{_slibdir}*/lib*.so.*
943 %defattr(644,root,root,755)
944 %attr(755,root,root) %{_bindir}/g++
945 %attr(755,root,root) %{_bindir}/*-g++
946 %attr(755,root,root) %{_bindir}/c++
947 %attr(755,root,root) %{_bindir}/*-c++
948 %attr(755,root,root) %{_libdir}/gcc/*/*/cc1plus
949 %{_libdir}*/libsupc++.la
951 %{_libdir}/nof/libsupc++.la
952 %{_libdir}/nof/libsupc++.a
954 %{_libdir}*/libsupc++.a
955 %{_mandir}/man1/g++.1*
956 %lang(ja) %{_mandir}/ja/man1/g++.1*
958 %files -n libstdc++ -f libstdc++.lang
959 %defattr(644,root,root,755)
960 %attr(755,root,root) %{_libdir}*/libstdc++.so.*.*.*
962 %attr(755,root,root) %{_libdir}/nof/libstdc++.so.*.*.*
965 %files -n libstdc++-devel
966 %defattr(644,root,root,755)
967 %doc libstdc++-v3/docs/html
968 %dir %{_includedir}/c++
969 %{_includedir}/c++/%{version}.0
970 %exclude %{_includedir}/c++/%{version}.0/*/bits/stdc++.h.gch
971 %attr(755,root,root) %{_libdir}*/libstdc++.so
972 %{_libdir}*/libstdc++.la
974 %attr(755,root,root) %{_libdir}/nof/libstdc++.so
975 %{_libdir}/nof/libstdc++.la
978 %files -n libstdc++-static
979 %defattr(644,root,root,755)
980 %{_libdir}*/libstdc++.a
982 %{_libdir}/nof/libstdc++.a
987 %defattr(644,root,root,755)
989 %attr(755,root,root) %{_libdir}/gcc/*/*/cc1obj
990 %attr(755,root,root) %{_libdir}*/libobjc.so
991 %{_libdir}*/libobjc.la
993 %attr(755,root,root) %{_libdir}/nof/libobjc.so
994 %{_libdir}/nof/libobjc.la
996 %{_libdir}/gcc/*/*/include/objc
999 %defattr(644,root,root,755)
1000 %attr(755,root,root) %{_libdir}*/libobjc.so.*.*.*
1002 %attr(755,root,root) %{_libdir}/nof/libobjc.so.*.*.*
1005 %files -n libobjc-static
1006 %defattr(644,root,root,755)
1007 %{_libdir}*/libobjc.a
1009 %{_libdir}/nof/libobjc.a
1014 %defattr(644,root,root,755)
1015 %attr(755,root,root) %{_bindir}/g77
1016 %attr(755,root,root) %{_bindir}/f77
1018 %attr(755,root,root) %{_libdir}/gcc/*/*/f771
1019 %{_libdir}*/libfrtbegin.a
1020 %{_libdir}*/libg2c.la
1021 %attr(755,root,root) %{_libdir}*/libg2c.so
1023 %{_libdir}/nof/libfrtbegin.a
1024 %{_libdir}/nof/libg2c.la
1025 %attr(755,root,root) %{_libdir}/nof/libg2c.so
1027 %{_libdir}/gcc/*/*/include/g2c.h
1028 %{_mandir}/man1/g77.1*
1029 %{_mandir}/man1/f77.1*
1030 %lang(ja) %{_mandir}/ja/man1/g77.1*
1031 %lang(ja) %{_mandir}/ja/man1/f77.1*
1034 %defattr(644,root,root,755)
1035 %attr(755,root,root) %{_libdir}*/libg2c.so.*.*.*
1037 %attr(755,root,root) %{_libdir}/nof/libg2c.so.*.*.*
1040 %files -n libg2c-static
1041 %defattr(644,root,root,755)
1042 %{_libdir}*/libg2c.a
1044 %{_libdir}/nof/libg2c.a
1049 %defattr(644,root,root,755)
1051 %attr(755,root,root) %{_bindir}/gcj*
1052 %attr(755,root,root) %{_bindir}/gij
1053 %attr(755,root,root) %{_bindir}/jcf-dump
1054 %attr(755,root,root) %{_bindir}/jv-*
1055 %attr(755,root,root) %{_bindir}/grepjar
1056 %attr(755,root,root) %{_bindir}/*-gcj*
1057 %attr(755,root,root) %{_libdir}/gcc/*/*/jc1
1058 %attr(755,root,root) %{_libdir}/gcc/*/*/jvgenmain
1060 %{_mandir}/man1/jcf-*
1061 %{_mandir}/man1/jv-*
1062 %{_mandir}/man1/gij*
1063 %{_mandir}/man1/gcj*
1064 %{_mandir}/man1/grepjar*
1067 %defattr(644,root,root,755)
1068 %attr(755,root,root) %{_bindir}/rmi*
1069 %attr(755,root,root) %{_bindir}/jar
1070 %{_mandir}/man1/rmi*
1071 %{_mandir}/man1/jar*
1072 %{_infodir}/fastjar*
1075 %defattr(644,root,root,755)
1076 %attr(755,root,root) %{_bindir}/addr2name.awk
1077 %attr(755,root,root) %{_libdir}/lib*cj*.so.*.*.*
1078 %attr(755,root,root) %{_libdir}/lib-org*.so.*.*.*
1080 %attr(755,root,root) %{_libdir}/nof/lib*cj*.so.*
1083 %files -n libgcj-devel
1084 %defattr(644,root,root,755)
1086 %{_includedir}/javax
1089 %{_includedir}/gnu/*
1090 %{_libdir}/gcc/*/*/include/gcj
1091 %dir %{_libdir}/security
1092 %{_libdir}/security/*
1093 %dir %{_datadir}/java
1094 %{_datadir}/java/libgcj*.jar
1095 %{_libdir}/lib*cj.spec
1096 %{_libdir}/lib*cj*.la
1097 %attr(755,root,root) %{_libdir}/lib*cj*.so
1098 %attr(755,root,root) %{_libdir}/lib-org-*.so
1099 %{_libdir}/lib-org-*.la
1101 %{_libdir}/nof/lib*cj*.la
1102 %attr(755,root,root) %{_libdir}/nof/lib*cj*.so
1104 %{_pkgconfigdir}/libgcj.pc
1106 %files -n libgcj-static
1107 %defattr(644,root,root,755)
1108 %{_libdir}/lib*cj*.a
1109 %{_libdir}/lib-org-*.a
1111 %{_libdir}/nof/lib*cj*.a
1115 %defattr(644,root,root,755)
1116 %attr(755,root,root) %{_libdir}/libffi-*.so
1118 %files -n libffi-devel
1119 %defattr(644,root,root,755)
1120 %attr(755,root,root) %{_libdir}/libffi.so
1121 %{_libdir}/libffi.la
1124 %files -n libffi-static
1125 %defattr(644,root,root,755)
1131 %defattr(644,root,root,755)
1132 %attr(755,root,root) %{_bindir}/gnat*
1133 %attr(755,root,root) %{_bindir}/gpr*
1134 %attr(755,root,root) %{_libdir}/gcc/*/*/gnat1
1135 %{_libdir}/gcc/*/*/adainclude
1136 %dir %{_libdir}/gcc/*/*/adalib
1137 %{_libdir}/gcc/*/*/adalib/*.ali
1139 %{_libdir}/gcc/*/*/adalib/libgmem.a
1144 %defattr(644,root,root,755)
1145 %attr(755,root,root) %{_libdir}/libgnarl*.so
1146 %attr(755,root,root) %{_libdir}/libgnat*.so
1148 %files -n libgnat-static
1149 %defattr(644,root,root,755)
1150 %{_libdir}/gcc/*/*/adalib/libgnarl.a
1151 %{_libdir}/gcc/*/*/adalib/libgnat.a
1156 %defattr(644,root,root,755)
1157 %doc gcc/ksi/README gcc/ksi/NEWS gcc/ksi/t/*.{ksi,c,foo}
1159 %attr(755,root,root) %{_libdir}/gcc/*/*/ksi1
1163 %defattr(644,root,root,755)
1164 %attr(755,root,root) /lib/cpp
1165 %attr(755,root,root) %{_bindir}/cpp
1166 %{_mandir}/man1/cpp.1*
1167 %lang(ja) %{_mandir}/ja/man1/cpp.1*