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-md5: 878b8ec18ac49028e34fc835c82b20d7
24 Source1: ftp://ftp.pld-linux.org/people/malekith/ksi/ksi-%{KSI_VERSION}.tar.gz
25 # Source1-md5: 66f07491b44f06928fd95b0e65bb8cd3
26 Source2: http://ep09.pld-linux.org/~djrzulf/gcc33/%{name}-non-english-man-pages.tar.bz2
27 # Source2-md5: 4736f3422ddfb808423b745629acc321
28 Patch0: %{name}-info.patch
29 Patch1: %{name}-nolocalefiles.patch
30 Patch2: %{name}-ada-link-new-libgnat.patch
31 BuildRequires: autoconf
32 BuildRequires: automake
33 BuildRequires: binutils >= 2.14
35 BuildRequires: fileutils >= 4.0.41
37 %{?with_ada:BuildRequires: gcc-ada}
38 BuildRequires: gettext-devel
39 BuildRequires: glibc-devel >= 2.2.5-20
40 BuildRequires: perl-devel
41 BuildRequires: texinfo >= 4.1
42 BuildRequires: zlib-devel
43 Requires: binutils >= 2.14
44 Requires: cpp = %{epoch}:%{version}-%{release}
45 Requires: libgcc = %{epoch}:%{version}-%{release}
46 Conflicts: glibc-devel < 2.2.5-20
47 URL: http://gcc.gnu.org/
48 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
50 %define _slibdir /%{_lib}
52 %define _slibdir64 /lib64
53 %define _libdir /usr/lib
54 %define rpmcflags -O2 -mtune=ultrasparc
58 A compiler aimed at integrating all the optimizations and features
59 necessary for a high-performance and stable development environment.
61 This package contains the C compiler and some files shared by various
62 parts of the GNU Compiler Collection. In order to use another GCC
63 compiler you will need to install the appropriate subpackage.
66 Un compilador destinado a la integración de todas las optimalizaciones
67 y características necesarias para un entorno de desarrollo eficaz y
70 Este paquete contiene el compilador de C y unos ficheros compartidos
71 por varias parted de la colección de compiladores GNU (GCC). Para usar
72 otro compilador de GCC será necesario que instale el subpaquete
76 Kompilator, posiadaj±cy du¿e mo¿liwo¶ci optymalizacyjne niezbêdne do
77 wyprodukowania szybkiego i stablinego kodu wynikowego.
79 Ten pakiet zawiera kompilator C i pliki wspó³dzielone przez ró¿ne
80 czê¶ci kolekcji kompilatorów GNU (GCC). ¯eby u¿ywaæ innego kompilatora
81 z GCC, trzeba zainstalowaæ odpowiedni podpakiet.
84 Este pacote adiciona infraestrutura básica e suporte a linguagem C ao
85 GNU Compiler Collection.
88 Summary: Shared gcc library
89 Summary(es): Biblioteca compartida de gcc
90 Summary(pl): Biblioteka gcc
91 Summary(pt_BR): Biblioteca runtime para o GCC
95 %description -n libgcc
98 %description -n libgcc -l es
99 Biblioteca compartida de gcc.
101 %description -n libgcc -l pl
102 Biblioteka dynamiczna gcc.
104 %description -n libgcc -l pt_BR
105 Biblioteca runtime para o GCC.
108 Summary: C++ support for gcc
109 Summary(es): Soporte de C++ para gcc
110 Summary(pl): Obs³uga C++ dla gcc
111 Summary(pt_BR): Suporte C++ para o gcc
112 Group: Development/Languages
115 Requires: gcc = %{epoch}:%{version}-%{release}
118 This package adds C++ support to the GNU Compiler Collection. It
119 includes support for most of the current C++ specification, including
120 templates and exception handling. It does not include a standard C++
121 library, which is available separately.
123 %description c++ -l de
124 Dieses Paket enthält die C++-Unterstützung für den
125 GNU-Compiler-Collection. Es unterstützt die aktuelle
126 C++-Spezifikation, inkl. Templates und Ausnahmeverarbeitung. Eine
127 C++-Standard-Library ist nicht enthalten - sie ist getrennt
130 %description c++ -l es
131 Este paquete añade soporte de C++ al GCC (colección de compiladores
132 GNU). Ello incluye el soporte para la mayoría de la especificación
133 actual de C++, incluyendo plantillas y manejo de excepciones. No
134 incluye la biblioteca estándar de C++, la que es disponible separada.
136 %description c++ -l fr
137 Ce package ajoute un support C++ a la collection de compilateurs GNU.
138 Il comprend un support pour la plupart des spécifications actuelles de
139 C++, dont les modéles et la gestion des exceptions. Il ne comprend pas
140 une bibliothéque C++ standard, qui est disponible séparément.
142 %description c++ -l pl
143 Ten pakiet dodaje obs³ugê C++ do kompilatora gcc. Ma wsparcie dla
144 du¿ej ilo¶ci obecnych specyfikacji C++, nie zawiera natomiast
145 standardowych bibliotek C++, które s± w oddzielnym pakiecie.
147 %description c++ -l pt_BR
148 Este pacote adiciona suporte C++ para o gcc.
150 %description c++ -l tr
151 Bu paket, GNU C derleyicisine C++ desteði ekler. 'Template'ler ve
152 aykýrý durum iþleme gibi çoðu güncel C++ tanýmlarýna uyar. Standart
153 C++ kitaplýðý bu pakette yer almaz.
156 Summary: Objective C support for gcc
157 Summary(de): Objektive C-Unterstützung für gcc
158 Summary(es): Soporte de Objective C para gcc
159 Summary(fr): Gestion d'Objective C pour gcc
160 Summary(pl): Obs³uga obiektowego C dla kompilatora gcc
161 Summary(tr): gcc için Objective C desteði
162 Group: Development/Languages
165 Requires: libobjc = %{epoch}:%{version}-%{release}
166 Requires: gcc = %{epoch}:%{version}-%{release}
169 This package adds Objective C support to the GNU Compiler Collection.
170 Objective C is a object oriented derivative of the C language, mainly
171 used on systems running NeXTSTEP. This package does not include the
172 standard objective C object library.
174 %description objc -l de
175 Dieses Paket ergänzt den GNU-Compiler-Collection durch
176 Objective-C-Support. Objective C ist ein objektorientiertes Derivat
177 von C, das zur Hauptsache auf Systemen mit NeXTSTEP zum Einsatz kommt.
178 Die Standard-Objective-C-Objekt-Library ist nicht Teil des Pakets.
180 %description objc -l es
181 Este paquete añade soporte de Objective C al GCC (colección de
182 compiladores GNU). Objective C es un lenguaje orientado a objetos
183 derivado de C, principalmente usado en sistemas que funcionan bajo
184 NeXTSTEP. El paquete no incluye la biblioteca de objetos estándar de
187 %description objc -l fr
188 Ce package ajoute un support Objective C a la collection de
189 compilateurs GNU. L'Objective C est un langage orienté objetdérivé du
190 langage C, principalement utilisé sur les systèmes NeXTSTEP. Ce
191 package n'inclue pas la bibliothéque Objective C standard.
193 %description objc -l pl
194 Ten pakiet dodaje obs³ugê obiektowego C do kompilatora gcc. Obiektowe
195 C (objc) jest zorientowan± obiektowo pochodn± jêzyka C, u¿ywan±
196 g³ównie w systemach u¿ywaj±cych NeXTSTEP. W pakiecie nie ma
197 standardowej biblioteki objc (która znajduje siê w osobnym pakiecie).
199 %description objc -l tr
200 Bu paket, GNU C derleyicisine Objective C desteði ekler. Objective C,
201 C dilinin nesne yönelik bir türevidir ve NeXTSTEP altýnda çalýþan
202 sistemlerde yaygýn olarak kullanýlýr. Standart Objective C nesne
203 kitaplýðý bu pakette yer almaz.
206 Summary: Objective C Libraries
207 Summary(es): Bibliotecas de Objective C
208 Summary(pl): Biblioteki Obiektowego C
212 %description -n libobjc
213 Objective C Libraries.
215 %description -n libobjc -l es
216 Bibliotecas de Objective C.
218 %description -n libobjc -l pl
219 Biblioteki Obiektowego C.
221 %package -n libobjc-static
222 Summary: Static Objective C Libraries
223 Summary(es): Bibliotecas estáticas de Objective C
224 Summary(pl): Statyczne Biblioteki Obiektowego C
225 Group: Development/Libraries
226 Requires: libobjc = %{epoch}:%{version}-%{release}
228 %description -n libobjc-static
229 Static Objective C Libraries.
231 %description -n libobjc-static -l es
232 Bibliotecas estáticas de Objective C.
234 %description -n libobjc-static -l pl
235 Statyczne biblioteki Obiektowego C.
238 Summary: Fortran 77 support for gcc
239 Summary(es): Soporte de Fortran 77 para gcc
240 Summary(pl): Obs³uga Fortranu 77 dla gcc
241 Summary(pt_BR): Suporte Fortran 77 para o GCC
242 Group: Development/Languages/Fortran
244 Requires: libg2c = %{epoch}:%{version}-%{release}
247 This package adds support for compiling Fortran 77 programs with the
250 %description g77 -l es
251 Este paquete añade soporte para compilar programas escritos en Fortran
252 77 con el compilador GNU.
254 %description g77 -l pl
255 Ten pakiet dodaje obs³ugê Fortranu 77 do kompilatora gcc. Jest
256 potrzebny do kompilowania programów pisanych w jêzyku Fortran 77.
258 %description g77 -l pt_BR
259 Suporte Fortran 77 para o GCC.
262 Summary: Fortran 77 Libraries
263 Summary(es): Bibliotecas de Fortran 77
264 Summary(pl): Biblioteki Fortranu 77
267 %description -n libg2c
268 Fortran 77 Libraries.
270 %description -n libg2c -l es
271 Bibliotecas de Fortran 77.
273 %description -n libg2c -l pl
274 Biblioteki Fortranu 77.
276 %package -n libg2c-static
277 Summary: Static Fortran 77 Libraries
278 Summary(es): Bibliotecas estáticas de Fortran 77
279 Summary(pl): Statyczne Biblioteki Fortranu 77
280 Group: Development/Libraries
281 Requires: libg2c = %{epoch}:%{version}-%{release}
283 %description -n libg2c-static
284 Static Fortran 77 Libraries.
286 %description -n libg2c -l es
287 Bibliotecas estáticas de Fortran 77.
289 %description -n libg2c-static -l pl
290 Statyczne biblioteki Fortranu 77.
293 Summary: Java support for gcc
294 Summary(es): Soporte de Java para gcc
295 Summary(pl): Obs³uga Javy dla gcc
296 Group: Development/Languages/Java
297 Requires: %{name} = %{epoch}:%{version}-%{release}
298 Requires: libgcj >= 3.0.0
299 Requires: libgcj-devel >= 3.0.0
300 Requires: java-shared
301 Provides: gcj = %{epoch}:%{version}-%{release}
304 This package adds experimental support for compiling Java(tm) programs
305 and bytecode into native code. To use this you will also need the
308 %description java -l es
309 Este paquete añade soporte experimental para compilar programas
310 Java(tm) y su bytecode en código nativo. Para usarlo también va a
311 necesitar el paquete libgcj.
313 %description java -l pl
314 Wsparcie dla kompilowania programów Java(tm) zrówno do bajt-kodu jak i
315 do natywnego kodu. Dodatkowo wymagany jest pakiet libgcj, aby mo¿na
316 by³o przeprowadziæ kompilacjê.
319 Summary: Shared java tools
320 Summary(es): Herramientas compartidas de Java
321 Summary(pl): Wspó³dzielone narzêdzia javy
322 Group: Development/Languages/Java
323 Provides: jar = %{epoch}:%{version}-%{release}
324 Provides: java-shared
326 Obsoletes: java-shared
329 %description java-tools
330 This package contains tools that are common for every Java(tm)
331 implementation, such as rmic or jar.
333 %description java-tools -l es
334 Este paquete contiene herramientas que son comunes para cada
335 implementación de Java(tm), como rmic o jar.
337 %description java-tools -l pl
338 Pakiet ten zawiera narzêdzia wspólne dla ka¿dej implementacji
339 Javy(tm), takie jak rmic czy jar.
342 Summary: Java Class Libraries
343 Summary(es): Bibliotecas de clases de Java
344 Summary(pl): Biblioteki Klas Javy
349 %description -n libgcj
350 Java Class Libraries.
352 %description -n libgcj -l es
353 Bibliotecas de clases de Java.
355 %description -n libgcj -l pl
356 Biblioteki Klas Javy.
358 %package -n libgcj-devel
359 Summary: Development files for Java Class Libraries
360 Summary(es): Ficheros de desarrollo para las bibliotecas de clases de Java
361 Summary(pl): Pliki nag³ówkowe dla Bibliotek Klas Javy
362 Group: Development/Libraries
363 Requires: libgcj = %{epoch}:%{version}-%{release}
364 Requires: %{name}-java
366 Obsoletes: libgcj3-devel
368 %description -n libgcj-devel
369 Development files for Java Class Libraries.
371 %description -n libgcj-devel -l es
372 Ficheros de desarrollo para las bibliotecas de clases de Java.
374 %description -n libgcj-devel -l pl
375 Pliki nag³ówkowe dla Bibliotek Klas Javy.
377 %package -n libgcj-static
378 Summary: Static Java Class Libraries
379 Summary(es): Bibliotecas estáticas de clases de Java
380 Summary(pl): Statyczne Biblioteki Klas Javy
381 Group: Development/Libraries
382 Requires: libstdc++-devel = %{epoch}:%{version}-%{release}
383 Requires: libgcj-devel = %{epoch}:%{version}-%{release}
385 %description -n libgcj-static
386 Static Java Class Libraries.
388 %description -n libgcj-static -l es
389 Bibliotecas estáticas de clases de Java.
391 %description -n libgcj-static -l pl
392 Statyczne Biblioteki Klas Javy.
394 %package -n libstdc++
395 Summary: GNU c++ library
396 Summary(es): Biblioteca C++ de GNU
397 Summary(pl): Biblioteki GNU C++
398 Summary(pt_BR): Biblioteca C++ GNU
401 Obsoletes: libstdc++3
403 %description -n libstdc++
404 This is the GNU implementation of the standard C++ libraries, along
405 with additional GNU tools. This package includes the shared libraries
406 necessary to run C++ applications.
408 %description -n libstdc++ -l de
409 Dies ist die GNU-Implementierung der Standard-C++-Libraries mit
410 weiteren GNU-Tools. Dieses Paket enthält die zum Ausführen von
411 C++-Anwendungen erforderlichen gemeinsam genutzten Libraries.
413 %description -n libstdc++ -l es
414 Este es el soporte de las bibliotecas padrón del C++, junto con
415 herramientas GNU adicionales. El paquete incluye las bibliotecas
416 compartidas necesarias para ejecutar aplicaciones C++.
418 %description -n libstdc++ -l fr
419 Ceci est l'implémentation GNU des librairies C++ standard, ainsi que
420 des outils GNU supplémentaires. Ce package comprend les librairies
421 partagées nécessaires à l'exécution d'application C++.
423 %description -n libstdc++ -l pl
424 Pakiet ten zawiera biblioteki bêd±ce implementacj± standardowych
425 bibliotek C++. Znajduj± siê w nim biblioteki dynamiczne niezbêdne do
426 uruchomienia aplikacji napisanych w C++.
428 %description -n libstdc++ -l pt_BR
429 Este pacote é uma implementação da biblioteca padrão C++ v3, um
430 subconjunto do padrão ISO 14882.
432 %description -n libstdc++ -l tr
433 Bu paket, standart C++ kitaplýklarýnýn GNU gerçeklemesidir ve C++
434 uygulamalarýnýn koþturulmasý için gerekli kitaplýklarý içerir.
436 %package -n libstdc++-devel
437 Summary: Header files and documentation for C++ development
438 Summary(de): Header-Dateien zur Entwicklung mit C++
439 Summary(es): Ficheros de cabecera y documentación para desarrollo C++
440 Summary(fr): Fichiers d'en-tête et biblitothèques pour développer en C++
441 Summary(pl): Pliki nag³ówkowe i dokumentacja do biblioteki standardowej C++
442 Summary(pt_BR): Arquivos de inclusão e bibliotecas para o desenvolvimento em C++
443 Summary(tr): C++ ile program geliþtirmek için gerekli dosyalar
444 Group: Development/Libraries
445 Requires: libstdc++ = %{epoch}:%{version}-%{release}
446 Requires: %{name}-c++ = %{epoch}:%{version}-%{release}
447 Obsoletes: libg++-devel
448 Obsoletes: libstdc++3-devel
450 %description -n libstdc++-devel
451 This is the GNU implementation of the standard C++ libraries. This
452 package includes the header files needed for C++ development and
453 library documentation.
455 %description -n libstdc++-devel -l es
456 Este es el soporte de las bibliotecas padrón del lenguaje C++. Este
457 paquete incluye los archivos de inclusión y bibliotecas necesarios
458 para desarrollo de programas en lenguaje C++.
460 %description -n libstdc++-devel -l pl
461 Pakiet ten zawiera biblioteki bêd±ce implementacj± standardowych
462 bibliotek C++. Znajduj± siê w nim pliki nag³ówkowe wykorzystywane przy
463 programowaniu w jêzyku C++ oraz dokumentacja biblioteki standardowej.
465 %description -n libstdc++-devel -l pt_BR
466 Este pacote inclui os arquivos de inclusão e bibliotecas necessárias
467 para desenvolvimento de programas C++.
469 %package -n libstdc++-static
470 Summary: Static C++ standard library
471 Summary(es): Biblioteca estándar estática de C++
472 Summary(pl): Statyczna biblioteka standardowa C++
473 Group: Development/Libraries
474 Requires: libstdc++-devel = %{epoch}:%{version}-%{release}
476 %description -n libstdc++-static
477 Static C++ standard library.
479 %description -n libstdc++-static -l es
480 Biblioteca estándar estática de C++.
482 %description -n libstdc++-static -l pl
483 Statycza biblioteka standardowa C++.
486 Summary: Foreign Function Interface library
487 Summary(es): Biblioteca de interfaz de funciones ajenas
488 Summary(pl): Biblioteka zewnêtrznych wywo³añ funkcji
491 %description -n libffi
492 The libffi library provides a portable, high level programming
493 interface to various calling conventions. This allows a programmer to
494 call any function specified by a call interface description at run
497 %description -n libffi -l es
498 La biblioteca libffi provee una interfaz portable de programación de
499 alto nivel para varias convenciones de llamada. Ello permite que un
500 programador llame una función cualquiera especificada por una
501 descripción de interfaz de llamada en el tiempo de ejecución.
503 %description -n libffi -l pl
504 Biblioteka libffi dostarcza przno¶nego, wysokopoziomowego
505 miêdzymordzia do ró¿nych konwencji wywo³añ funkcji. Pozwala to
506 programi¶cie wywo³ywaæ dowolne funkcje podaj±c konwencjê wywo³ania w
509 %package -n libffi-devel
510 Summary: Development files for Foreign Function Interface library
511 Summary(es): Ficheros de desarrollo para libffi
512 Summary(pl): Pliki nag³ówkowe dla libffi
513 Group: Development/Libraries
514 Requires: libffi = %{epoch}:%{version}-%{release}
516 %description -n libffi-devel
517 Development files for Foreign Function Interface library.
519 %description -n libffi-devel -l es
520 Ficheros de desarrollo para libffi.
522 %description -n libffi-devel -l pl
523 Pliki nag³ówkowe dla libffi.
525 %package -n libffi-static
526 Summary: Static Foreign Function Interface library
527 Summary(es): Biblioteca libffi estática
528 Summary(pl): Statyczna biblioteka libffi
529 Group: Development/Libraries
530 Requires: libffi-devel = %{epoch}:%{version}-%{release}
532 %description -n libffi-static
533 Static Foreign Function Interface library.
535 %description -n libffi-static -l es
536 Biblioteca libffi estática.
538 %description -n libffi-static -l pl
539 Statyczna biblioteka libffi.
542 Summary: Ada support for gcc
543 Summary(es): Soporte de Ada para gcc
544 Summary(pl): Obs³uga Ady do gcc
545 Group: Development/Languages
546 Requires: libgnat = %{epoch}:%{version}-%{release}
547 Requires: gcc = %{epoch}:%{version}-%{release}
549 Obsoletes: gnat-devel
552 This package adds experimental support for compiling Ada programs.
554 %description ada -l es
555 Este paquete añade soporte experimental para compilar programas en
558 %description ada -l pl
559 Ten pakiet dodaje eksperymentalne wsparcie dla kompilacji programów w
563 Summary: Ada standard libraries
564 Summary(es): Bibliotecas estándares de Ada
565 Summary(pl): Biblioteki standardowe dla Ady
570 %description -n libgnat
571 This package contains shared libraries needed to run programs written
574 %description -n libgnat -l es
575 Este paquete contiene las bibliotecas compartidas necesarias para
576 ejecutar programas escritos en Ada.
578 %description -n libgnat -l pl
579 Ten pakiet zawiera biblioteki potrzebne do uruchamiania programów
582 %package -n libgnat-static
583 Summary: Static Ada standard libraries
584 Summary(pl): Statyczne biblioteki standardowe dla Ady
586 Obsoletes: gnat-static
588 %description -n libgnat-static
589 This package contains static libraries for programs written in Ada.
591 %description -n libgnat-static -l pl
592 Ten pakiet zawiera biblioteki statyczne dla programów napisanych w
596 Summary: Ksi support for gcc
597 Summary(es): Soporte de Ksi para gcc
598 Summary(pl): Obs³uga Ksi dla gcc
599 Version: %{GCC_VERSION}.%{KSI_VERSION}
600 Group: Development/Languages
601 Requires: gcc = %{epoch}:%{version}-%{release}
604 This package adds experimental support for compiling Ksi programs into
605 native code. You proabably don't need it, unless your are going to
606 develop a compiler using Ksi as intermediate representation or you are
607 using such compiler (like Gont).
609 %description ksi -l es
610 Este paquete añade soporte experimental para compilar programas de Ksi
611 en código nativo. Probablemento no lo necesitará, a menos que vaya a
612 desarrollar un compilador que use Ksi como representación intermedia o
613 use tal compilador (como Gont).
615 %description ksi -l pl
616 Ten pakiet dodaje eksperymentalne wsparcie dla kompilacji programów w
617 Ksi do kodu maszynowego. Prawdopodobnie nie potrzebujesz go, chyba ¿e
618 zamierzasz pisaæ kompilator u¿ywaj±cy Ksi jako reprezentacji
619 po¶rednicz±cej, lub u¿ywasz takiego kompilatora (jak Gont).
622 Summary: The C Pre Processor
623 Summary(es): El preprocesador de C
624 Summary(pl): Preprocesor C
625 Summary(pt_BR): Preprocessador para a linguagem C
626 Group: Development/Languages
627 Version: %{GCC_VERSION}
632 The C preprocessor is a "macro processor" that is used automatically
633 by the C compiler to transform your program before actual compilation.
634 It is called a macro processor because it allows you to define
635 "macros", which are brief abbreviations for longer constructs.
637 The C preprocessor provides four separate facilities that you can use
640 - Inclusion of header files. These are files of declarations that can
641 be substituted into your program.
642 - Macro expansion. You can define "macros", which are abbreviations
643 for arbitrary fragments of C code, and then the C preprocessor will
644 replace the macros with their definitions throughout the program.
645 - Conditional compilation. Using special preprocessing directives, you
646 can include or exclude parts of the program according to various
648 - Line control. If you use a program to combine or rearrange source
649 files into an intermediate file which is then compiled, you can use
650 line control to inform the compiler of where each source line
651 originally came from.
653 %description -n cpp -l es
654 El preprocesador de C es un "procesador de macros" que es usado
655 automáticamente por el compilador C para transformar su programa antes
656 de que éste se actualmente compile. Se llama procesador de macros
657 porque permite definir "macros", los que son abreviaciones concisas
658 para construcciones más largas.
660 El preprocesador C provee cuatro cualidadedes distintas que puede usar
663 - Inclusión de ficheros de cabecera. Éstos son ficheros de
664 declaraciones que pueden incorporarse a su programa.
665 - Expansión de macros. Puede definir "macros", los que son
666 abreviaciones para fragmentos arbitrarios de código C, y a lo largo
667 del programa el preprocesador sustituirá los macros con sus
669 - Compilación condicional. Usando especiales directivas del preproceso
670 puede incluir o excluir partes del programa según varias condiciones.
671 - Control de líneas. Si usa un programa para combinar o reorganizar el
672 código fuente en un fichero intermedio que luego es compilado, puede
673 usar control de líneas para informar el compilador de dónde origina
676 %description -n cpp -l pl
677 Przeprocesor C jest "makro procesorem" który jest automatycznie
678 u¿ywany przez kompilator C do obróbki kompilowanego programu przed
679 w³a¶ciw± kompilacj±. Jest on nazywany makroprocesorem, poniewa¿
680 umo¿liwia definiowanie i rozwijanie makr umo¿liwiaj±cych skracanie
681 d³ugich konstrukcji w jêzyku C.
683 Preprocesor C umo¿liwia wykonywanie czterech ró¿nych typów operacji:
685 - Do³±czanie plików (np. nag³ówkowych). Wstawia pliki w miejscu
686 deklaracji polecenia do³±czenia innego pliku.
687 - Rozwijanie makr. Mo¿na definiowaæ "makra" nadaj±c im identyfikatory,
688 których pó¼niejsze u¿ycie powoduje podczas rozwijania podmienienie
689 indentyfikatora deklarowan± wcze¶niej warto¶ci±.
690 - Kompilacja warunkowa. W zale¿no¶ci od obecno¶ci symboli i dyrektyw w
691 ¶rodowisku preprocesora s± w³±czane warunkowo, b±d¼ nie, pewne
692 fragmenty obrabianego strumienia tekstów.
693 - Kontrola linii ¼ród³a. Niezale¿nie od tego jakim przeobra¿eniom
694 podlega wynikowy strumieñ danych w wyniku rozwijania makr i do³±czania
695 s± zapamiêtywane informacje o tym, której linii pliku ¼ród³owego
696 odpowiada fragment pliku wynikowego.
698 %description -n cpp -l pt_BR
699 O preprocessador C é um "processador de macros", que é utilizado pelo
700 compilador C para fazer algumas modificações no seu programa, antes da
701 compilação em si. Ele é chamado de "processador de macros" porque
702 permite a você definir "macros", que são abreviações para construções
705 O preprocessador C fornece quatro funcionalidades básicas: inclusão de
706 arquivos de cabeçalho; expansão de macros; compilação condicional; e
707 controle da numeração das linhas do programa.
710 %setup -q -a1 -n %{name}-%{version}-%{snap}
711 mv ksi-%{KSI_VERSION} gcc/ksi
717 # because we distribute modified version of gcc...
718 perl -pi -e 's/(version.*)";/$1 (PLD Linux)";/' gcc/version.c
719 perl -pi -e 's@(bug_report_url.*<URL:).*";@$1http://bugs.pld-linux.org/>";@' gcc/version.c
722 # cd gcc && autoconf; cd ..
723 # autoconf is not needed!
724 cp /usr/share/automake/config.sub .
726 rm -rf obj-%{_target_platform} && install -d obj-%{_target_platform} && cd obj-%{_target_platform}
728 CFLAGS="%{rpmcflags}" \
729 CXXFLAGS="%{rpmcflags}" \
730 TEXCONFIG=false ../configure \
731 --prefix=%{_prefix} \
732 --libdir=%{_libdir} \
733 --libexecdir=%{_libexecdir} \
734 --infodir=%{_infodir} \
735 --mandir=%{_mandir} \
737 --enable-threads=posix \
738 --enable-__cxa_atexit \
739 --enable-languages="c,c++,f77%{?with_objc:,objc}%{?with_ada:,ada}%{?with_java:,java}" \
751 --with-slibdir=%{_slibdir} \
755 PATH=$PATH:/sbin:%{_sbindir}
758 %{__make} -C obj-%{_target_platform} profiledbootstrap \
759 BOOT_CFLAGS="%{rpmcflags}" \
760 STAGE1_CFLAGS="%{rpmcflags}" \
761 LDFLAGS_FOR_TARGET="%{rpmldflags}" \
766 %{__make} -C obj-%{_target_platform}/gcc gnatlib gnattools gnatlib-shared \
767 LDFLAGS_FOR_TARGET="%{rpmldflags}" \
773 rm -rf $RPM_BUILD_ROOT
774 install -d $RPM_BUILD_ROOT{/lib,%{_datadir},%{_infodir}}
776 cd obj-%{_target_platform}
777 PATH=$PATH:/sbin:%{_sbindir}
781 infodir=%{_infodir} \
782 DESTDIR=$RPM_BUILD_ROOT
785 ln -f $RPM_BUILD_ROOT%{_bindir}/sparc64-pld-linux-gcc \
786 $RPM_BUILD_ROOT%{_bindir}/sparc-pld-linux-gcc
789 ln -sf gcc $RPM_BUILD_ROOT%{_bindir}/cc
790 echo ".so gcc.1" > $RPM_BUILD_ROOT%{_mandir}/man1/cc.1
792 ln -sf g77 $RPM_BUILD_ROOT%{_bindir}/f77
793 echo ".so g77.1" > $RPM_BUILD_ROOT%{_mandir}/man1/f77.1
796 # move ada shared libraries to proper place...
797 mv $RPM_BUILD_ROOT%{_libdir}/gcc/*/*/adalib/*.so \
798 $RPM_BUILD_ROOT%{_libdir}/
801 ln -sf %{_bindir}/cpp $RPM_BUILD_ROOT/lib/cpp
807 cp -f libjava/doc/cni.sgml libjava/READ* java-doc
808 cp -f fastjar/README java-doc/README.fastjar
809 cp -f libffi/README java-doc/README.libffi
810 cp -f libffi/LICENSE java-doc/LICENSE.libffi
814 cp -f libobjc/README gcc/objc/README.libobjc
817 # avoid -L poisoning in *.la - there should be only -L%{_libdir}/gcc/*/%{version}
818 for f in libstdc++.la libsupc++.la %{?with_java:libgcj.la} ; do
819 perl -pi -e 's@-L[^ ]*[acs.] @@g' $RPM_BUILD_ROOT%{_libdir}/$f
821 # normalize libdir, to avoid propagation of unnecessary RPATHs by libtool
822 for f in libstdc++.la libsupc++.la libg2c.la \
823 %{?with_java:libgcj.la lib-org-w3c-dom.la lib-org-xml-sax.la libffi.la} \
824 %{?with_objc:libobjc.la}; do
825 perl -pi -e "s@^libdir='.*@libdir='/usr/%{_lib}'@" $RPM_BUILD_ROOT%{_libdir}/$f
828 bzip2 -dc %{SOURCE2} | tar xf - -C $RPM_BUILD_ROOT%{_mandir}
829 mv -f $RPM_BUILD_ROOT%{_mandir}/ja/man1/{cccp,cpp}.1
831 # include/ contains install-tools/include/* and headers that were fixed up
832 # by fixincludes, we don't want former
833 gccdir=$(echo $RPM_BUILD_ROOT%{_libdir}/gcc/*/*/)
835 # we have to save these however
836 mv -f $gccdir/include/{%{?with_objc:objc,}g2c.h,syslimits.h%{?with_java:,gcj}} $gccdir/tmp
837 rm -rf $gccdir/include
838 mv -f $gccdir/tmp $gccdir/include
839 cp $gccdir/install-tools/include/*.h $gccdir/include
840 # but we don't want anything more from install-tools
841 rm -rf $gccdir/install-tools
844 %find_lang libstdc\+\+
847 rm -rf $RPM_BUILD_ROOT
850 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
853 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
856 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
859 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
862 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
865 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
868 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
871 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
874 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
877 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
879 %post -p /sbin/ldconfig -n libgcc
880 %postun -p /sbin/ldconfig -n libgcc
881 %post -p /sbin/ldconfig -n libstdc++
882 %postun -p /sbin/ldconfig -n libstdc++
883 %post -p /sbin/ldconfig -n libobjc
884 %postun -p /sbin/ldconfig -n libobjc
885 %post -p /sbin/ldconfig -n libg2c
886 %postun -p /sbin/ldconfig -n libg2c
887 %post -p /sbin/ldconfig -n libgcj
888 %postun -p /sbin/ldconfig -n libgcj
889 %post -p /sbin/ldconfig -n libgnat
890 %postun -p /sbin/ldconfig -n libgnat
891 %post -p /sbin/ldconfig -n libffi
892 %postun -p /sbin/ldconfig -n libffi
894 %files -f %{name}.lang
895 %defattr(644,root,root,755)
896 %doc READ* ChangeLog BUGS FAQ LAST_UPDATED MAINTAINERS gcc/README.Portability
898 %dir %{_libdir}/gcc/*
899 %dir %{_libdir}/gcc/*/*
900 %dir %{_libdir}/gcc/*/*/include
901 %attr(755,root,root) %{_bindir}/*-gcc*
902 %attr(755,root,root) %{_bindir}/gcc
903 %attr(755,root,root) %{_bindir}/gccbug
904 %attr(755,root,root) %{_bindir}/gcov
905 %attr(755,root,root) %{_bindir}/cc
907 %{_mandir}/man1/gcc.1*
908 %{_mandir}/man1/cc.1*
909 %{_mandir}/man1/gcov.1*
910 %lang(fr) %{_mandir}/fr/man1/gcc.1*
911 %lang(ja) %{_mandir}/ja/man1/gcc.1*
914 %attr(755,root,root) %{_slibdir}*/lib*.so
915 %{_libdir}/gcc/*/*/libgcov.a
916 %{_libdir}/gcc/*/*/libgcc.a
917 %{_libdir}/gcc/*/*/libgcc_eh.a
918 %{_libdir}/gcc/*/*/specs
919 %attr(644,root,root) %{_libdir}*/gcc/*/*/crt*.o
921 %{_libdir}/gcc/*/*/*/libgcc.a
922 %{_libdir}/gcc/*/*/*/libgcc_eh.a
923 %attr(644,root,root) %{_libdir}*/gcc/*/*/*/crt*.o
926 %attr(644,root,root) %{_libdir}/gcc/*/*/ecrt*.o
927 %attr(644,root,root) %{_libdir}/gcc/*/*/ncrt*.o
928 %{_libdir}/gcc/*/*/nof
931 %attr(755,root,root) %{_libdir}/gcc/*/*/cc1
932 %attr(755,root,root) %{_libdir}/gcc/*/*/collect2
934 %{_libdir}/gcc/*/*/include/*.h
935 %exclude %{_libdir}/gcc/*/*/include/g2c.h
938 %defattr(644,root,root,755)
939 %attr(755,root,root) %{_slibdir}*/lib*.so.*
942 %defattr(644,root,root,755)
943 %attr(755,root,root) %{_bindir}/g++
944 %attr(755,root,root) %{_bindir}/*-g++
945 %attr(755,root,root) %{_bindir}/c++
946 %attr(755,root,root) %{_bindir}/*-c++
947 %attr(755,root,root) %{_libdir}/gcc/*/*/cc1plus
948 %{_libdir}*/libsupc++.la
950 %{_libdir}/nof/libsupc++.la
951 %{_libdir}/nof/libsupc++.a
953 %{_libdir}*/libsupc++.a
954 %{_mandir}/man1/g++.1*
955 %lang(ja) %{_mandir}/ja/man1/g++.1*
957 %files -n libstdc++ -f libstdc++.lang
958 %defattr(644,root,root,755)
959 %attr(755,root,root) %{_libdir}*/libstdc++.so.*.*.*
961 %attr(755,root,root) %{_libdir}/nof/libstdc++.so.*.*.*
964 %files -n libstdc++-devel
965 %defattr(644,root,root,755)
966 %doc libstdc++-v3/docs/html
967 %dir %{_includedir}/c++
968 %{_includedir}/c++/%{version}.0
969 %exclude %{_includedir}/c++/%{version}.0/*/bits/stdc++.h.gch
970 %attr(755,root,root) %{_libdir}*/libstdc++.so
971 %{_libdir}*/libstdc++.la
973 %attr(755,root,root) %{_libdir}/nof/libstdc++.so
974 %{_libdir}/nof/libstdc++.la
977 %files -n libstdc++-static
978 %defattr(644,root,root,755)
979 %{_libdir}*/libstdc++.a
981 %{_libdir}/nof/libstdc++.a
986 %defattr(644,root,root,755)
988 %attr(755,root,root) %{_libdir}/gcc/*/*/cc1obj
989 %attr(755,root,root) %{_libdir}*/libobjc.so
990 %{_libdir}*/libobjc.la
992 %attr(755,root,root) %{_libdir}/nof/libobjc.so
993 %{_libdir}/nof/libobjc.la
995 %{_libdir}/gcc/*/*/include/objc
998 %defattr(644,root,root,755)
999 %attr(755,root,root) %{_libdir}*/libobjc.so.*.*.*
1001 %attr(755,root,root) %{_libdir}/nof/libobjc.so.*.*.*
1004 %files -n libobjc-static
1005 %defattr(644,root,root,755)
1006 %{_libdir}*/libobjc.a
1008 %{_libdir}/nof/libobjc.a
1013 %defattr(644,root,root,755)
1014 %attr(755,root,root) %{_bindir}/g77
1015 %attr(755,root,root) %{_bindir}/f77
1017 %attr(755,root,root) %{_libdir}/gcc/*/*/f771
1018 %{_libdir}*/libfrtbegin.a
1019 %{_libdir}*/libg2c.la
1020 %attr(755,root,root) %{_libdir}*/libg2c.so
1022 %{_libdir}/nof/libfrtbegin.a
1023 %{_libdir}/nof/libg2c.la
1024 %attr(755,root,root) %{_libdir}/nof/libg2c.so
1026 %{_libdir}/gcc/*/*/include/g2c.h
1027 %{_mandir}/man1/g77.1*
1028 %{_mandir}/man1/f77.1*
1029 %lang(ja) %{_mandir}/ja/man1/g77.1*
1030 %lang(ja) %{_mandir}/ja/man1/f77.1*
1033 %defattr(644,root,root,755)
1034 %attr(755,root,root) %{_libdir}*/libg2c.so.*.*.*
1036 %attr(755,root,root) %{_libdir}/nof/libg2c.so.*.*.*
1039 %files -n libg2c-static
1040 %defattr(644,root,root,755)
1041 %{_libdir}*/libg2c.a
1043 %{_libdir}/nof/libg2c.a
1048 %defattr(644,root,root,755)
1050 %attr(755,root,root) %{_bindir}/gcj*
1051 %attr(755,root,root) %{_bindir}/gij
1052 %attr(755,root,root) %{_bindir}/jcf-dump
1053 %attr(755,root,root) %{_bindir}/jv-*
1054 %attr(755,root,root) %{_bindir}/grepjar
1055 %attr(755,root,root) %{_bindir}/*-gcj*
1056 %attr(755,root,root) %{_libdir}/gcc/*/*/jc1
1057 %attr(755,root,root) %{_libdir}/gcc/*/*/jvgenmain
1059 %{_mandir}/man1/jcf-*
1060 %{_mandir}/man1/jv-*
1061 %{_mandir}/man1/gij*
1062 %{_mandir}/man1/gcj*
1063 %{_mandir}/man1/grepjar*
1066 %defattr(644,root,root,755)
1067 %attr(755,root,root) %{_bindir}/rmi*
1068 %attr(755,root,root) %{_bindir}/jar
1069 %{_mandir}/man1/rmi*
1070 %{_mandir}/man1/jar*
1071 %{_infodir}/fastjar*
1074 %defattr(644,root,root,755)
1075 %attr(755,root,root) %{_bindir}/addr2name.awk
1076 %attr(755,root,root) %{_libdir}/lib*cj*.so.*.*.*
1077 %attr(755,root,root) %{_libdir}/lib-org*.so.*.*.*
1079 %attr(755,root,root) %{_libdir}/nof/lib*cj*.so.*
1082 %files -n libgcj-devel
1083 %defattr(644,root,root,755)
1085 %{_includedir}/javax
1088 %{_includedir}/gnu/*
1089 %{_libdir}/gcc/*/*/include/gcj
1090 %dir %{_libdir}/security
1091 %{_libdir}/security/*
1092 %dir %{_datadir}/java
1093 %{_datadir}/java/libgcj*.jar
1094 %{_libdir}/lib*cj.spec
1095 %{_libdir}/lib*cj*.la
1096 %attr(755,root,root) %{_libdir}/lib*cj*.so
1097 %attr(755,root,root) %{_libdir}/lib-org-*.so
1098 %{_libdir}/lib-org-*.la
1100 %{_libdir}/nof/lib*cj*.la
1101 %attr(755,root,root) %{_libdir}/nof/lib*cj*.so
1103 %{_pkgconfigdir}/libgcj.pc
1105 %files -n libgcj-static
1106 %defattr(644,root,root,755)
1107 %{_libdir}/lib*cj*.a
1108 %{_libdir}/lib-org-*.a
1110 %{_libdir}/nof/lib*cj*.a
1114 %defattr(644,root,root,755)
1115 %attr(755,root,root) %{_libdir}/libffi-*.so
1117 %files -n libffi-devel
1118 %defattr(644,root,root,755)
1119 %attr(755,root,root) %{_libdir}/libffi.so
1120 %{_libdir}/libffi.la
1123 %files -n libffi-static
1124 %defattr(644,root,root,755)
1130 %defattr(644,root,root,755)
1131 %attr(755,root,root) %{_bindir}/gnat*
1132 %attr(755,root,root) %{_bindir}/gpr*
1133 %attr(755,root,root) %{_libdir}/gcc/*/*/gnat1
1134 %{_libdir}/gcc/*/*/adainclude
1135 %dir %{_libdir}/gcc/*/*/adalib
1136 %{_libdir}/gcc/*/*/adalib/*.ali
1138 %{_libdir}/gcc/*/*/adalib/libgmem.a
1143 %defattr(644,root,root,755)
1144 %attr(755,root,root) %{_libdir}/libgnarl*.so
1145 %attr(755,root,root) %{_libdir}/libgnat*.so
1147 %files -n libgnat-static
1148 %defattr(644,root,root,755)
1149 %{_libdir}/gcc/*/*/adalib/libgnarl.a
1150 %{_libdir}/gcc/*/*/adalib/libgnat.a
1155 %defattr(644,root,root,755)
1156 %doc gcc/ksi/README gcc/ksi/NEWS gcc/ksi/t/*.{ksi,c,foo}
1158 %attr(755,root,root) %{_libdir}/gcc/*/*/ksi1
1162 %defattr(644,root,root,755)
1163 %attr(755,root,root) /lib/cpp
1164 %attr(755,root,root) %{_bindir}/cpp
1165 %{_mandir}/man1/cpp.1*
1166 %lang(ja) %{_mandir}/ja/man1/cpp.1*