3 %bcond_without ada # build without ADA support
4 %bcond_without java # build without Java support
5 %bcond_without objc # build without objc support
6 %bcond_with bootstrap # don't BR gcc(ada) (temporary for Ac upgrade bootstrap)
9 %define GCC_VERSION 3.4
10 %define KSI_VERSION 1.1.0.1567
12 Summary: GNU Compiler Collection: the C compiler and shared files
13 Summary(es): Colección de compiladores GNU: el compilador C y ficheros compartidos
14 Summary(pl): Kolekcja kompilatorów GNU: kompilator C i pliki wspó³dzielone
15 Summary(pt_BR): Coleção dos compiladores GNU: o compilador C e arquivos compartilhados
17 Version: %{GCC_VERSION}
21 Group: Development/Languages
22 #Source0: ftp://gcc.gnu.org/pub/gcc/releases/gcc-%{version}/%{name}-%{version}.tar.bz2
23 Source0: ftp://gcc.gnu.org/pub/gcc/snapshots/%{version}-%{snap}/%{name}-%{version}-%{snap}.tar.bz2
24 # Source0-md5: 878b8ec18ac49028e34fc835c82b20d7
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:%{!?with_bootstrap:BuildRequires: gcc(ada)}}
39 %{?with_ada:BuildRequires: gcc-ada}
40 BuildRequires: gettext-devel
41 BuildRequires: glibc-devel >= 2.2.5-20
42 BuildRequires: perl-devel
43 BuildRequires: texinfo >= 4.1
44 BuildRequires: zlib-devel
45 Requires: binutils >= 2.14
46 Requires: cpp = %{epoch}:%{version}-%{release}
47 Requires: libgcc = %{epoch}:%{version}-%{release}
48 %{?with_ada:Provides: gcc(ada)}
49 Conflicts: glibc-devel < 2.2.5-20
50 URL: http://gcc.gnu.org/
51 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
53 %define _slibdir /%{_lib}
55 %define _slibdir64 /lib64
56 %define _libdir /usr/lib
57 %define rpmcflags -O2 -mtune=ultrasparc
61 A compiler aimed at integrating all the optimizations and features
62 necessary for a high-performance and stable development environment.
64 This package contains the C compiler and some files shared by various
65 parts of the GNU Compiler Collection. In order to use another GCC
66 compiler you will need to install the appropriate subpackage.
69 Un compilador destinado a la integración de todas las optimalizaciones
70 y características necesarias para un entorno de desarrollo eficaz y
73 Este paquete contiene el compilador de C y unos ficheros compartidos
74 por varias parted de la colección de compiladores GNU (GCC). Para usar
75 otro compilador de GCC será necesario que instale el subpaquete
79 Kompilator, posiadaj±cy du¿e mo¿liwo¶ci optymalizacyjne niezbêdne do
80 wyprodukowania szybkiego i stablinego kodu wynikowego.
82 Ten pakiet zawiera kompilator C i pliki wspó³dzielone przez ró¿ne
83 czê¶ci kolekcji kompilatorów GNU (GCC). ¯eby u¿ywaæ innego kompilatora
84 z GCC, trzeba zainstalowaæ odpowiedni podpakiet.
87 Este pacote adiciona infraestrutura básica e suporte a linguagem C ao
88 GNU Compiler Collection.
91 Summary: Shared gcc library
92 Summary(es): Biblioteca compartida de gcc
93 Summary(pl): Biblioteka gcc
94 Summary(pt_BR): Biblioteca runtime para o GCC
98 %description -n libgcc
101 %description -n libgcc -l es
102 Biblioteca compartida de gcc.
104 %description -n libgcc -l pl
105 Biblioteka dynamiczna gcc.
107 %description -n libgcc -l pt_BR
108 Biblioteca runtime para o GCC.
111 Summary: C++ support for gcc
112 Summary(es): Soporte de C++ para gcc
113 Summary(pl): Obs³uga C++ dla gcc
114 Summary(pt_BR): Suporte C++ para o gcc
115 Group: Development/Languages
118 Requires: gcc = %{epoch}:%{version}-%{release}
121 This package adds C++ support to the GNU Compiler Collection. It
122 includes support for most of the current C++ specification, including
123 templates and exception handling. It does not include a standard C++
124 library, which is available separately.
126 %description c++ -l de
127 Dieses Paket enthält die C++-Unterstützung für den
128 GNU-Compiler-Collection. Es unterstützt die aktuelle
129 C++-Spezifikation, inkl. Templates und Ausnahmeverarbeitung. Eine
130 C++-Standard-Library ist nicht enthalten - sie ist getrennt
133 %description c++ -l es
134 Este paquete añade soporte de C++ al GCC (colección de compiladores
135 GNU). Ello incluye el soporte para la mayoría de la especificación
136 actual de C++, incluyendo plantillas y manejo de excepciones. No
137 incluye la biblioteca estándar de C++, la que es disponible separada.
139 %description c++ -l fr
140 Ce package ajoute un support C++ a la collection de compilateurs GNU.
141 Il comprend un support pour la plupart des spécifications actuelles de
142 C++, dont les modéles et la gestion des exceptions. Il ne comprend pas
143 une bibliothéque C++ standard, qui est disponible séparément.
145 %description c++ -l pl
146 Ten pakiet dodaje obs³ugê C++ do kompilatora gcc. Ma wsparcie dla
147 du¿ej ilo¶ci obecnych specyfikacji C++, nie zawiera natomiast
148 standardowych bibliotek C++, które s± w oddzielnym pakiecie.
150 %description c++ -l pt_BR
151 Este pacote adiciona suporte C++ para o gcc.
153 %description c++ -l tr
154 Bu paket, GNU C derleyicisine C++ desteði ekler. 'Template'ler ve
155 aykýrý durum iþleme gibi çoðu güncel C++ tanýmlarýna uyar. Standart
156 C++ kitaplýðý bu pakette yer almaz.
159 Summary: Objective C support for gcc
160 Summary(de): Objektive C-Unterstützung für gcc
161 Summary(es): Soporte de Objective C para gcc
162 Summary(fr): Gestion d'Objective C pour gcc
163 Summary(pl): Obs³uga obiektowego C dla kompilatora gcc
164 Summary(tr): gcc için Objective C desteði
165 Group: Development/Languages
168 Requires: libobjc = %{epoch}:%{version}-%{release}
169 Requires: gcc = %{epoch}:%{version}-%{release}
172 This package adds Objective C support to the GNU Compiler Collection.
173 Objective C is a object oriented derivative of the C language, mainly
174 used on systems running NeXTSTEP. This package does not include the
175 standard objective C object library.
177 %description objc -l de
178 Dieses Paket ergänzt den GNU-Compiler-Collection durch
179 Objective-C-Support. Objective C ist ein objektorientiertes Derivat
180 von C, das zur Hauptsache auf Systemen mit NeXTSTEP zum Einsatz kommt.
181 Die Standard-Objective-C-Objekt-Library ist nicht Teil des Pakets.
183 %description objc -l es
184 Este paquete añade soporte de Objective C al GCC (colección de
185 compiladores GNU). Objective C es un lenguaje orientado a objetos
186 derivado de C, principalmente usado en sistemas que funcionan bajo
187 NeXTSTEP. El paquete no incluye la biblioteca de objetos estándar de
190 %description objc -l fr
191 Ce package ajoute un support Objective C a la collection de
192 compilateurs GNU. L'Objective C est un langage orienté objetdérivé du
193 langage C, principalement utilisé sur les systèmes NeXTSTEP. Ce
194 package n'inclue pas la bibliothéque Objective C standard.
196 %description objc -l pl
197 Ten pakiet dodaje obs³ugê obiektowego C do kompilatora gcc. Obiektowe
198 C (objc) jest zorientowan± obiektowo pochodn± jêzyka C, u¿ywan±
199 g³ównie w systemach u¿ywaj±cych NeXTSTEP. W pakiecie nie ma
200 standardowej biblioteki objc (która znajduje siê w osobnym pakiecie).
202 %description objc -l tr
203 Bu paket, GNU C derleyicisine Objective C desteði ekler. Objective C,
204 C dilinin nesne yönelik bir türevidir ve NeXTSTEP altýnda çalýþan
205 sistemlerde yaygýn olarak kullanýlýr. Standart Objective C nesne
206 kitaplýðý bu pakette yer almaz.
209 Summary: Objective C Libraries
210 Summary(es): Bibliotecas de Objective C
211 Summary(pl): Biblioteki Obiektowego C
215 %description -n libobjc
216 Objective C Libraries.
218 %description -n libobjc -l es
219 Bibliotecas de Objective C.
221 %description -n libobjc -l pl
222 Biblioteki Obiektowego C.
224 %package -n libobjc-static
225 Summary: Static Objective C Libraries
226 Summary(es): Bibliotecas estáticas de Objective C
227 Summary(pl): Statyczne Biblioteki Obiektowego C
228 Group: Development/Libraries
229 Requires: libobjc = %{epoch}:%{version}-%{release}
231 %description -n libobjc-static
232 Static Objective C Libraries.
234 %description -n libobjc-static -l es
235 Bibliotecas estáticas de Objective C.
237 %description -n libobjc-static -l pl
238 Statyczne biblioteki Obiektowego C.
241 Summary: Fortran 77 support for gcc
242 Summary(es): Soporte de Fortran 77 para gcc
243 Summary(pl): Obs³uga Fortranu 77 dla gcc
244 Summary(pt_BR): Suporte Fortran 77 para o GCC
245 Group: Development/Languages/Fortran
247 Requires: libg2c = %{epoch}:%{version}-%{release}
250 This package adds support for compiling Fortran 77 programs with the
253 %description g77 -l es
254 Este paquete añade soporte para compilar programas escritos en Fortran
255 77 con el compilador GNU.
257 %description g77 -l pl
258 Ten pakiet dodaje obs³ugê Fortranu 77 do kompilatora gcc. Jest
259 potrzebny do kompilowania programów pisanych w jêzyku Fortran 77.
261 %description g77 -l pt_BR
262 Suporte Fortran 77 para o GCC.
265 Summary: Fortran 77 Libraries
266 Summary(es): Bibliotecas de Fortran 77
267 Summary(pl): Biblioteki Fortranu 77
270 %description -n libg2c
271 Fortran 77 Libraries.
273 %description -n libg2c -l es
274 Bibliotecas de Fortran 77.
276 %description -n libg2c -l pl
277 Biblioteki Fortranu 77.
279 %package -n libg2c-static
280 Summary: Static Fortran 77 Libraries
281 Summary(es): Bibliotecas estáticas de Fortran 77
282 Summary(pl): Statyczne Biblioteki Fortranu 77
283 Group: Development/Libraries
284 Requires: libg2c = %{epoch}:%{version}-%{release}
286 %description -n libg2c-static
287 Static Fortran 77 Libraries.
289 %description -n libg2c -l es
290 Bibliotecas estáticas de Fortran 77.
292 %description -n libg2c-static -l pl
293 Statyczne biblioteki Fortranu 77.
296 Summary: Java support for gcc
297 Summary(es): Soporte de Java para gcc
298 Summary(pl): Obs³uga Javy dla gcc
299 Group: Development/Languages/Java
300 Requires: %{name} = %{epoch}:%{version}-%{release}
301 Requires: libgcj >= 3.0.0
302 Requires: libgcj-devel >= 3.0.0
303 Requires: java-shared
304 Provides: gcj = %{epoch}:%{version}-%{release}
307 This package adds experimental support for compiling Java(tm) programs
308 and bytecode into native code. To use this you will also need the
311 %description java -l es
312 Este paquete añade soporte experimental para compilar programas
313 Java(tm) y su bytecode en código nativo. Para usarlo también va a
314 necesitar el paquete libgcj.
316 %description java -l pl
317 Wsparcie dla kompilowania programów Java(tm) zrówno do bajt-kodu jak i
318 do natywnego kodu. Dodatkowo wymagany jest pakiet libgcj, aby mo¿na
319 by³o przeprowadziæ kompilacjê.
322 Summary: Shared java tools
323 Summary(es): Herramientas compartidas de Java
324 Summary(pl): Wspó³dzielone narzêdzia javy
325 Group: Development/Languages/Java
326 Provides: jar = %{epoch}:%{version}-%{release}
327 Provides: java-shared
329 Obsoletes: java-shared
332 %description java-tools
333 This package contains tools that are common for every Java(tm)
334 implementation, such as rmic or jar.
336 %description java-tools -l es
337 Este paquete contiene herramientas que son comunes para cada
338 implementación de Java(tm), como rmic o jar.
340 %description java-tools -l pl
341 Pakiet ten zawiera narzêdzia wspólne dla ka¿dej implementacji
342 Javy(tm), takie jak rmic czy jar.
345 Summary: Java Class Libraries
346 Summary(es): Bibliotecas de clases de Java
347 Summary(pl): Biblioteki Klas Javy
352 %description -n libgcj
353 Java Class Libraries.
355 %description -n libgcj -l es
356 Bibliotecas de clases de Java.
358 %description -n libgcj -l pl
359 Biblioteki Klas Javy.
361 %package -n libgcj-devel
362 Summary: Development files for Java Class Libraries
363 Summary(es): Ficheros de desarrollo para las bibliotecas de clases de Java
364 Summary(pl): Pliki nag³ówkowe dla Bibliotek Klas Javy
365 Group: Development/Libraries
366 Requires: libgcj = %{epoch}:%{version}-%{release}
367 Requires: %{name}-java
368 Obsoletes: libgcj3-devel
370 %description -n libgcj-devel
371 Development files for Java Class Libraries.
373 %description -n libgcj-devel -l es
374 Ficheros de desarrollo para las bibliotecas de clases de Java.
376 %description -n libgcj-devel -l pl
377 Pliki nag³ówkowe dla Bibliotek Klas Javy.
379 %package -n libgcj-static
380 Summary: Static Java Class Libraries
381 Summary(es): Bibliotecas estáticas de clases de Java
382 Summary(pl): Statyczne Biblioteki Klas Javy
383 Group: Development/Libraries
384 Requires: libstdc++-devel = %{epoch}:%{version}-%{release}
385 Requires: libgcj-devel = %{epoch}:%{version}-%{release}
387 %description -n libgcj-static
388 Static Java Class Libraries.
390 %description -n libgcj-static -l es
391 Bibliotecas estáticas de clases de Java.
393 %description -n libgcj-static -l pl
394 Statyczne Biblioteki Klas Javy.
396 %package -n libstdc++
397 Summary: GNU c++ library
398 Summary(es): Biblioteca C++ de GNU
399 Summary(pl): Biblioteki GNU C++
400 Summary(pt_BR): Biblioteca C++ GNU
403 Obsoletes: libstdc++3
405 %description -n libstdc++
406 This is the GNU implementation of the standard C++ libraries, along
407 with additional GNU tools. This package includes the shared libraries
408 necessary to run C++ applications.
410 %description -n libstdc++ -l de
411 Dies ist die GNU-Implementierung der Standard-C++-Libraries mit
412 weiteren GNU-Tools. Dieses Paket enthält die zum Ausführen von
413 C++-Anwendungen erforderlichen gemeinsam genutzten Libraries.
415 %description -n libstdc++ -l es
416 Este es el soporte de las bibliotecas padrón del C++, junto con
417 herramientas GNU adicionales. El paquete incluye las bibliotecas
418 compartidas necesarias para ejecutar aplicaciones C++.
420 %description -n libstdc++ -l fr
421 Ceci est l'implémentation GNU des librairies C++ standard, ainsi que
422 des outils GNU supplémentaires. Ce package comprend les librairies
423 partagées nécessaires à l'exécution d'application C++.
425 %description -n libstdc++ -l pl
426 Pakiet ten zawiera biblioteki bêd±ce implementacj± standardowych
427 bibliotek C++. Znajduj± siê w nim biblioteki dynamiczne niezbêdne do
428 uruchomienia aplikacji napisanych w C++.
430 %description -n libstdc++ -l pt_BR
431 Este pacote é uma implementação da biblioteca padrão C++ v3, um
432 subconjunto do padrão ISO 14882.
434 %description -n libstdc++ -l tr
435 Bu paket, standart C++ kitaplýklarýnýn GNU gerçeklemesidir ve C++
436 uygulamalarýnýn koþturulmasý için gerekli kitaplýklarý içerir.
438 %package -n libstdc++-devel
439 Summary: Header files and documentation for C++ development
440 Summary(de): Header-Dateien zur Entwicklung mit C++
441 Summary(es): Ficheros de cabecera y documentación para desarrollo C++
442 Summary(fr): Fichiers d'en-tête et biblitothèques pour développer en C++
443 Summary(pl): Pliki nag³ówkowe i dokumentacja do biblioteki standardowej C++
444 Summary(pt_BR): Arquivos de inclusão e bibliotecas para o desenvolvimento em C++
445 Summary(tr): C++ ile program geliþtirmek için gerekli dosyalar
446 Group: Development/Libraries
447 Requires: libstdc++ = %{epoch}:%{version}-%{release}
448 Requires: %{name}-c++ = %{epoch}:%{version}-%{release}
449 Obsoletes: libg++-devel
450 Obsoletes: libstdc++3-devel
452 %description -n libstdc++-devel
453 This is the GNU implementation of the standard C++ libraries. This
454 package includes the header files needed for C++ development and
455 library documentation.
457 %description -n libstdc++-devel -l es
458 Este es el soporte de las bibliotecas padrón del lenguaje C++. Este
459 paquete incluye los archivos de inclusión y bibliotecas necesarios
460 para desarrollo de programas en lenguaje C++.
462 %description -n libstdc++-devel -l pl
463 Pakiet ten zawiera biblioteki bêd±ce implementacj± standardowych
464 bibliotek C++. Znajduj± siê w nim pliki nag³ówkowe wykorzystywane przy
465 programowaniu w jêzyku C++ oraz dokumentacja biblioteki standardowej.
467 %description -n libstdc++-devel -l pt_BR
468 Este pacote inclui os arquivos de inclusão e bibliotecas necessárias
469 para desenvolvimento de programas C++.
471 %package -n libstdc++-static
472 Summary: Static C++ standard library
473 Summary(es): Biblioteca estándar estática de C++
474 Summary(pl): Statyczna biblioteka standardowa C++
475 Group: Development/Libraries
476 Requires: libstdc++-devel = %{epoch}:%{version}-%{release}
478 %description -n libstdc++-static
479 Static C++ standard library.
481 %description -n libstdc++-static -l es
482 Biblioteca estándar estática de C++.
484 %description -n libstdc++-static -l pl
485 Statycza biblioteka standardowa C++.
488 Summary: Foreign Function Interface library
489 Summary(es): Biblioteca de interfaz de funciones ajenas
490 Summary(pl): Biblioteka zewnêtrznych wywo³añ funkcji
493 %description -n libffi
494 The libffi library provides a portable, high level programming
495 interface to various calling conventions. This allows a programmer to
496 call any function specified by a call interface description at run
499 %description -n libffi -l es
500 La biblioteca libffi provee una interfaz portable de programación de
501 alto nivel para varias convenciones de llamada. Ello permite que un
502 programador llame una función cualquiera especificada por una
503 descripción de interfaz de llamada en el tiempo de ejecución.
505 %description -n libffi -l pl
506 Biblioteka libffi dostarcza przno¶nego, wysokopoziomowego
507 miêdzymordzia do ró¿nych konwencji wywo³añ funkcji. Pozwala to
508 programi¶cie wywo³ywaæ dowolne funkcje podaj±c konwencjê wywo³ania w
511 %package -n libffi-devel
512 Summary: Development files for Foreign Function Interface library
513 Summary(es): Ficheros de desarrollo para libffi
514 Summary(pl): Pliki nag³ówkowe dla libffi
515 Group: Development/Libraries
516 Requires: libffi = %{epoch}:%{version}-%{release}
518 %description -n libffi-devel
519 Development files for Foreign Function Interface library.
521 %description -n libffi-devel -l es
522 Ficheros de desarrollo para libffi.
524 %description -n libffi-devel -l pl
525 Pliki nag³ówkowe dla libffi.
527 %package -n libffi-static
528 Summary: Static Foreign Function Interface library
529 Summary(es): Biblioteca libffi estática
530 Summary(pl): Statyczna biblioteka libffi
531 Group: Development/Libraries
532 Requires: libffi-devel = %{epoch}:%{version}-%{release}
534 %description -n libffi-static
535 Static Foreign Function Interface library.
537 %description -n libffi-static -l es
538 Biblioteca libffi estática.
540 %description -n libffi-static -l pl
541 Statyczna biblioteka libffi.
544 Summary: Ada support for gcc
545 Summary(es): Soporte de Ada para gcc
546 Summary(pl): Obs³uga Ady do gcc
547 Group: Development/Languages
548 Requires: libgnat = %{epoch}:%{version}-%{release}
549 Requires: gcc = %{epoch}:%{version}-%{release}
551 Obsoletes: gnat-devel
554 This package adds experimental support for compiling Ada programs.
556 %description ada -l es
557 Este paquete añade soporte experimental para compilar programas en
560 %description ada -l pl
561 Ten pakiet dodaje eksperymentalne wsparcie dla kompilacji programów w
565 Summary: Ada standard libraries
566 Summary(es): Bibliotecas estándares de Ada
567 Summary(pl): Biblioteki standardowe dla Ady
572 %description -n libgnat
573 This package contains shared libraries needed to run programs written
576 %description -n libgnat -l es
577 Este paquete contiene las bibliotecas compartidas necesarias para
578 ejecutar programas escritos en Ada.
580 %description -n libgnat -l pl
581 Ten pakiet zawiera biblioteki potrzebne do uruchamiania programów
584 %package -n libgnat-static
585 Summary: Static Ada standard libraries
586 Summary(pl): Statyczne biblioteki standardowe dla Ady
588 Obsoletes: gnat-static
590 %description -n libgnat-static
591 This package contains static libraries for programs written in Ada.
593 %description -n libgnat-static -l pl
594 Ten pakiet zawiera biblioteki statyczne dla programów napisanych w
598 Summary: Ksi support for gcc
599 Summary(es): Soporte de Ksi para gcc
600 Summary(pl): Obs³uga Ksi dla gcc
601 Version: %{GCC_VERSION}.%{KSI_VERSION}
602 Group: Development/Languages
603 Requires: gcc = %{epoch}:%{version}-%{release}
606 This package adds experimental support for compiling Ksi programs into
607 native code. You proabably don't need it, unless your are going to
608 develop a compiler using Ksi as intermediate representation or you are
609 using such compiler (like Gont).
611 %description ksi -l es
612 Este paquete añade soporte experimental para compilar programas de Ksi
613 en código nativo. Probablemento no lo necesitará, a menos que vaya a
614 desarrollar un compilador que use Ksi como representación intermedia o
615 use tal compilador (como Gont).
617 %description ksi -l pl
618 Ten pakiet dodaje eksperymentalne wsparcie dla kompilacji programów w
619 Ksi do kodu maszynowego. Prawdopodobnie nie potrzebujesz go, chyba ¿e
620 zamierzasz pisaæ kompilator u¿ywaj±cy Ksi jako reprezentacji
621 po¶rednicz±cej, lub u¿ywasz takiego kompilatora (jak Gont).
624 Summary: The C Pre Processor
625 Summary(es): El preprocesador de C
626 Summary(pl): Preprocesor C
627 Summary(pt_BR): Preprocessador para a linguagem C
628 Group: Development/Languages
629 Version: %{GCC_VERSION}
634 The C preprocessor is a "macro processor" that is used automatically
635 by the C compiler to transform your program before actual compilation.
636 It is called a macro processor because it allows you to define
637 "macros", which are brief abbreviations for longer constructs.
639 The C preprocessor provides four separate facilities that you can use
642 - Inclusion of header files. These are files of declarations that can
643 be substituted into your program.
644 - Macro expansion. You can define "macros", which are abbreviations
645 for arbitrary fragments of C code, and then the C preprocessor will
646 replace the macros with their definitions throughout the program.
647 - Conditional compilation. Using special preprocessing directives, you
648 can include or exclude parts of the program according to various
650 - Line control. If you use a program to combine or rearrange source
651 files into an intermediate file which is then compiled, you can use
652 line control to inform the compiler of where each source line
653 originally came from.
655 %description -n cpp -l es
656 El preprocesador de C es un "procesador de macros" que es usado
657 automáticamente por el compilador C para transformar su programa antes
658 de que éste se actualmente compile. Se llama procesador de macros
659 porque permite definir "macros", los que son abreviaciones concisas
660 para construcciones más largas.
662 El preprocesador C provee cuatro cualidadedes distintas que puede usar
665 - Inclusión de ficheros de cabecera. Éstos son ficheros de
666 declaraciones que pueden incorporarse a su programa.
667 - Expansión de macros. Puede definir "macros", los que son
668 abreviaciones para fragmentos arbitrarios de código C, y a lo largo
669 del programa el preprocesador sustituirá los macros con sus
671 - Compilación condicional. Usando especiales directivas del preproceso
672 puede incluir o excluir partes del programa según varias condiciones.
673 - Control de líneas. Si usa un programa para combinar o reorganizar el
674 código fuente en un fichero intermedio que luego es compilado, puede
675 usar control de líneas para informar el compilador de dónde origina
678 %description -n cpp -l pl
679 Przeprocesor C jest "makro procesorem" który jest automatycznie
680 u¿ywany przez kompilator C do obróbki kompilowanego programu przed
681 w³a¶ciw± kompilacj±. Jest on nazywany makroprocesorem, poniewa¿
682 umo¿liwia definiowanie i rozwijanie makr umo¿liwiaj±cych skracanie
683 d³ugich konstrukcji w jêzyku C.
685 Preprocesor C umo¿liwia wykonywanie czterech ró¿nych typów operacji:
687 - Do³±czanie plików (np. nag³ówkowych). Wstawia pliki w miejscu
688 deklaracji polecenia do³±czenia innego pliku.
689 - Rozwijanie makr. Mo¿na definiowaæ "makra" nadaj±c im identyfikatory,
690 których pó¼niejsze u¿ycie powoduje podczas rozwijania podmienienie
691 indentyfikatora deklarowan± wcze¶niej warto¶ci±.
692 - Kompilacja warunkowa. W zale¿no¶ci od obecno¶ci symboli i dyrektyw w
693 ¶rodowisku preprocesora s± w³±czane warunkowo, b±d¼ nie, pewne
694 fragmenty obrabianego strumienia tekstów.
695 - Kontrola linii ¼ród³a. Niezale¿nie od tego jakim przeobra¿eniom
696 podlega wynikowy strumieñ danych w wyniku rozwijania makr i do³±czania
697 s± zapamiêtywane informacje o tym, której linii pliku ¼ród³owego
698 odpowiada fragment pliku wynikowego.
700 %description -n cpp -l pt_BR
701 O preprocessador C é um "processador de macros", que é utilizado pelo
702 compilador C para fazer algumas modificações no seu programa, antes da
703 compilação em si. Ele é chamado de "processador de macros" porque
704 permite a você definir "macros", que são abreviações para construções
707 O preprocessador C fornece quatro funcionalidades básicas: inclusão de
708 arquivos de cabeçalho; expansão de macros; compilação condicional; e
709 controle da numeração das linhas do programa.
712 %setup -q -a1 -n %{name}-%{version}-%{snap}
713 mv ksi-%{KSI_VERSION} gcc/ksi
719 # because we distribute modified version of gcc...
720 perl -pi -e 's/(version.*)";/$1 (PLD Linux)";/' gcc/version.c
721 perl -pi -e 's@(bug_report_url.*<URL:).*";@$1http://bugs.pld-linux.org/>";@' gcc/version.c
724 # cd gcc && autoconf; cd ..
725 # autoconf is not needed!
726 cp /usr/share/automake/config.sub .
728 rm -rf obj-%{_target_platform} && install -d obj-%{_target_platform} && cd obj-%{_target_platform}
730 CFLAGS="%{rpmcflags}" \
731 CXXFLAGS="%{rpmcflags}" \
732 TEXCONFIG=false ../configure \
733 --prefix=%{_prefix} \
734 --libdir=%{_libdir} \
735 --libexecdir=%{_libexecdir} \
736 --infodir=%{_infodir} \
737 --mandir=%{_mandir} \
739 --enable-threads=posix \
740 --enable-__cxa_atexit \
741 --enable-languages="c,c++,f77%{?with_objc:,objc}%{?with_ada:,ada}%{?with_java:,java}" \
753 --with-slibdir=%{_slibdir} \
757 PATH=$PATH:/sbin:%{_sbindir}
760 %{__make} -C obj-%{_target_platform} profiledbootstrap \
761 BOOT_CFLAGS="%{rpmcflags}" \
762 STAGE1_CFLAGS="%{rpmcflags}" \
763 LDFLAGS_FOR_TARGET="%{rpmldflags}" \
768 %{__make} -C obj-%{_target_platform}/gcc gnatlib gnattools gnatlib-shared \
769 LDFLAGS_FOR_TARGET="%{rpmldflags}" \
775 rm -rf $RPM_BUILD_ROOT
776 install -d $RPM_BUILD_ROOT{/lib,%{_datadir},%{_infodir}}
778 cd obj-%{_target_platform}
779 PATH=$PATH:/sbin:%{_sbindir}
783 infodir=%{_infodir} \
784 DESTDIR=$RPM_BUILD_ROOT
787 ln -f $RPM_BUILD_ROOT%{_bindir}/sparc64-pld-linux-gcc \
788 $RPM_BUILD_ROOT%{_bindir}/sparc-pld-linux-gcc
791 ln -sf gcc $RPM_BUILD_ROOT%{_bindir}/cc
792 echo ".so gcc.1" > $RPM_BUILD_ROOT%{_mandir}/man1/cc.1
794 ln -sf g77 $RPM_BUILD_ROOT%{_bindir}/f77
795 echo ".so g77.1" > $RPM_BUILD_ROOT%{_mandir}/man1/f77.1
798 # move ada shared libraries to proper place...
799 mv $RPM_BUILD_ROOT%{_libdir}/gcc/*/*/adalib/*.so \
800 $RPM_BUILD_ROOT%{_libdir}/
801 # check if symlink to be made is valid
802 #test -f $RPM_BUILD_ROOT%{_libdir}/libgnat-3.15.so.1
803 #ln -sf libgnat-3.15.so.1 $RPM_BUILD_ROOT%{_libdir}/libgnat-3.15.so
804 #ln -sf libgnarl-3.15.so.1 $RPM_BUILD_ROOT%{_libdir}/libgnarl-3.15.so
805 #ln -sf libgnat-3.15.so $RPM_BUILD_ROOT%{_libdir}/libgnat.so
806 #ln -sf libgnarl-3.15.so $RPM_BUILD_ROOT%{_libdir}/libgnarl.so
809 ln -sf %{_bindir}/cpp $RPM_BUILD_ROOT/lib/cpp
815 cp -f libjava/doc/cni.sgml libjava/READ* java-doc
816 cp -f fastjar/README java-doc/README.fastjar
817 cp -f libffi/README java-doc/README.libffi
818 cp -f libffi/LICENSE java-doc/LICENSE.libffi
822 cp -f libobjc/README gcc/objc/README.libobjc
825 # avoid -L poisoning in *.la - there should be only -L%{_libdir}/gcc/*/%{version}
826 for f in libstdc++.la libsupc++.la %{?with_java:libgcj.la} ; do
827 perl -pi -e 's@-L[^ ]*[acs.] @@g' $RPM_BUILD_ROOT%{_libdir}/$f
829 # normalize libdir, to avoid propagation of unnecessary RPATHs by libtool
830 for f in libstdc++.la libsupc++.la libg2c.la \
831 %{?with_java:libgcj.la lib-org-w3c-dom.la lib-org-xml-sax.la libffi.la} \
832 %{?with_objc:libobjc.la}; do
833 perl -pi -e "s@^libdir='.*@libdir='/usr/%{_lib}'@" $RPM_BUILD_ROOT%{_libdir}/$f
836 bzip2 -dc %{SOURCE2} | tar xf - -C $RPM_BUILD_ROOT%{_mandir}
837 mv -f $RPM_BUILD_ROOT%{_mandir}/ja/man1/{cccp,cpp}.1
839 # include/ contains install-tools/include/* and headers that were fixed up
840 # by fixincludes, we don't want former
841 gccdir=$(echo $RPM_BUILD_ROOT%{_libdir}/gcc/*/*/)
843 # we have to save these however
844 mv -f $gccdir/include/{%{?with_objc:objc,}g2c.h,syslimits.h%{?with_java:,gcj}} $gccdir/tmp
845 rm -rf $gccdir/include
846 mv -f $gccdir/tmp $gccdir/include
847 cp $gccdir/install-tools/include/*.h $gccdir/include
848 # but we don't want anything more from install-tools
849 rm -rf $gccdir/install-tools
852 %find_lang libstdc\+\+
855 rm -rf $RPM_BUILD_ROOT
858 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
861 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
864 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
867 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
870 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
873 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
876 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
879 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
882 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
885 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
887 %post -p /sbin/ldconfig -n libgcc
888 %postun -p /sbin/ldconfig -n libgcc
889 %post -p /sbin/ldconfig -n libstdc++
890 %postun -p /sbin/ldconfig -n libstdc++
891 %post -p /sbin/ldconfig -n libobjc
892 %postun -p /sbin/ldconfig -n libobjc
893 %post -p /sbin/ldconfig -n libg2c
894 %postun -p /sbin/ldconfig -n libg2c
895 %post -p /sbin/ldconfig -n libgcj
896 %postun -p /sbin/ldconfig -n libgcj
897 %post -p /sbin/ldconfig -n libgnat
898 %postun -p /sbin/ldconfig -n libgnat
899 %post -p /sbin/ldconfig -n libffi
900 %postun -p /sbin/ldconfig -n libffi
902 %files -f %{name}.lang
903 %defattr(644,root,root,755)
904 %doc READ* ChangeLog BUGS FAQ LAST_UPDATED MAINTAINERS gcc/README.Portability
906 %dir %{_libdir}/gcc/*
907 %dir %{_libdir}/gcc/*/*
908 %dir %{_libdir}/gcc/*/*/include
909 %attr(755,root,root) %{_bindir}/*-gcc*
910 %attr(755,root,root) %{_bindir}/gcc
911 %attr(755,root,root) %{_bindir}/gccbug
912 %attr(755,root,root) %{_bindir}/gcov
913 %attr(755,root,root) %{_bindir}/cc
915 %{_mandir}/man1/gcc.1*
916 %{_mandir}/man1/cc.1*
917 %{_mandir}/man1/gcov.1*
918 %lang(fr) %{_mandir}/fr/man1/gcc.1*
919 %lang(ja) %{_mandir}/ja/man1/gcc.1*
922 %attr(755,root,root) %{_slibdir}*/lib*.so
923 %{_libdir}/gcc/*/*/libgcov.a
924 %{_libdir}/gcc/*/*/libgcc.a
925 %{_libdir}/gcc/*/*/libgcc_eh.a
926 %{_libdir}/gcc/*/*/specs
927 %attr(644,root,root) %{_libdir}*/gcc/*/*/crt*.o
929 %{_libdir}/gcc/*/*/*/libgcc.a
930 %{_libdir}/gcc/*/*/*/libgcc_eh.a
931 %attr(644,root,root) %{_libdir}*/gcc/*/*/*/crt*.o
934 %attr(644,root,root) %{_libdir}/gcc/*/*/ecrt*.o
935 %attr(644,root,root) %{_libdir}/gcc/*/*/ncrt*.o
936 %{_libdir}/gcc/*/*/nof
939 %attr(755,root,root) %{_libdir}/gcc/*/*/cc1
940 %attr(755,root,root) %{_libdir}/gcc/*/*/collect2
942 %{_libdir}/gcc/*/*/include/*.h
943 %exclude %{_libdir}/gcc/*/*/include/g2c.h
946 %defattr(644,root,root,755)
947 %attr(755,root,root) %{_slibdir}*/lib*.so.*
950 %defattr(644,root,root,755)
951 %attr(755,root,root) %{_bindir}/g++
952 %attr(755,root,root) %{_bindir}/*-g++
953 %attr(755,root,root) %{_bindir}/c++
954 %attr(755,root,root) %{_bindir}/*-c++
955 %attr(755,root,root) %{_libdir}/gcc/*/*/cc1plus
956 %{_libdir}*/libsupc++.la
958 %{_libdir}/nof/libsupc++.la
959 %{_libdir}/nof/libsupc++.a
961 %{_libdir}*/libsupc++.a
962 %{_mandir}/man1/g++.1*
963 %lang(ja) %{_mandir}/ja/man1/g++.1*
965 %files -n libstdc++ -f libstdc++.lang
966 %defattr(644,root,root,755)
967 %attr(755,root,root) %{_libdir}*/libstdc++.so.*.*.*
969 %attr(755,root,root) %{_libdir}/nof/libstdc++.so.*.*.*
972 %files -n libstdc++-devel
973 %defattr(644,root,root,755)
974 %doc libstdc++-v3/docs/html
975 %dir %{_includedir}/c++
976 %{_includedir}/c++/%{version}.0
977 %exclude %{_includedir}/c++/%{version}.0/*/bits/stdc++.h.gch
978 %attr(755,root,root) %{_libdir}*/libstdc++.so
979 %{_libdir}*/libstdc++.la
981 %attr(755,root,root) %{_libdir}/nof/libstdc++.so
982 %{_libdir}/nof/libstdc++.la
985 %files -n libstdc++-static
986 %defattr(644,root,root,755)
987 %{_libdir}*/libstdc++.a
989 %{_libdir}/nof/libstdc++.a
994 %defattr(644,root,root,755)
996 %attr(755,root,root) %{_libdir}/gcc/*/*/cc1obj
997 %attr(755,root,root) %{_libdir}*/libobjc.so
998 %{_libdir}*/libobjc.la
1000 %attr(755,root,root) %{_libdir}/nof/libobjc.so
1001 %{_libdir}/nof/libobjc.la
1003 %{_libdir}/gcc/*/*/include/objc
1006 %defattr(644,root,root,755)
1007 %attr(755,root,root) %{_libdir}*/libobjc.so.*.*.*
1009 %attr(755,root,root) %{_libdir}/nof/libobjc.so.*.*.*
1012 %files -n libobjc-static
1013 %defattr(644,root,root,755)
1014 %{_libdir}*/libobjc.a
1016 %{_libdir}/nof/libobjc.a
1021 %defattr(644,root,root,755)
1022 %attr(755,root,root) %{_bindir}/g77
1023 %attr(755,root,root) %{_bindir}/f77
1025 %attr(755,root,root) %{_libdir}/gcc/*/*/f771
1026 %{_libdir}*/libfrtbegin.a
1027 %{_libdir}*/libg2c.la
1028 %attr(755,root,root) %{_libdir}*/libg2c.so
1030 %{_libdir}/nof/libfrtbegin.a
1031 %{_libdir}/nof/libg2c.la
1032 %attr(755,root,root) %{_libdir}/nof/libg2c.so
1034 %{_libdir}/gcc/*/*/include/g2c.h
1035 %{_mandir}/man1/g77.1*
1036 %{_mandir}/man1/f77.1*
1037 %lang(ja) %{_mandir}/ja/man1/g77.1*
1038 %lang(ja) %{_mandir}/ja/man1/f77.1*
1041 %defattr(644,root,root,755)
1042 %attr(755,root,root) %{_libdir}*/libg2c.so.*.*.*
1044 %attr(755,root,root) %{_libdir}/nof/libg2c.so.*.*.*
1047 %files -n libg2c-static
1048 %defattr(644,root,root,755)
1049 %{_libdir}*/libg2c.a
1051 %{_libdir}/nof/libg2c.a
1056 %defattr(644,root,root,755)
1058 %attr(755,root,root) %{_bindir}/gcj*
1059 %attr(755,root,root) %{_bindir}/gij
1060 %attr(755,root,root) %{_bindir}/jcf-dump
1061 %attr(755,root,root) %{_bindir}/jv-*
1062 %attr(755,root,root) %{_bindir}/grepjar
1063 %attr(755,root,root) %{_bindir}/*-gcj
1064 %attr(755,root,root) %{_libdir}/gcc/*/*/jc1
1065 %attr(755,root,root) %{_libdir}/gcc/*/*/jvgenmain
1067 %{_mandir}/man1/jcf-*
1068 %{_mandir}/man1/jv-*
1069 %{_mandir}/man1/gij*
1070 %{_mandir}/man1/gcj*
1071 %{_mandir}/man1/grepjar*
1074 %defattr(644,root,root,755)
1075 %attr(755,root,root) %{_bindir}/rmi*
1076 %attr(755,root,root) %{_bindir}/jar
1077 %{_mandir}/man1/rmi*
1078 %{_mandir}/man1/jar*
1079 %{_infodir}/fastjar*
1082 %defattr(644,root,root,755)
1083 %attr(755,root,root) %{_bindir}/addr2name.awk
1084 %attr(755,root,root) %{_libdir}/lib*cj*.so.*.*.*
1085 %attr(755,root,root) %{_libdir}/lib-org*.so.*.*.*
1087 %attr(755,root,root) %{_libdir}/nof/lib*cj*.so.*
1090 %files -n libgcj-devel
1091 %defattr(644,root,root,755)
1093 %{_includedir}/javax
1094 #%%{_includedir}/org
1097 %{_includedir}/gnu/*
1098 %{_libdir}/gcc/*/*/include/gcj
1099 %dir %{_libdir}/security
1100 %{_libdir}/security/*
1101 %dir %{_datadir}/java
1102 %{_datadir}/java/libgcj*.jar
1103 %{_libdir}/lib*cj.spec
1104 %{_libdir}/lib*cj*.la
1105 %attr(755,root,root) %{_libdir}/lib*cj*.so
1106 %attr(755,root,root) %{_libdir}/lib-org-*.so
1107 %{_libdir}/lib-org-*.la
1109 %{_libdir}/nof/lib*cj*.la
1110 %attr(755,root,root) %{_libdir}/nof/lib*cj*.so
1113 %files -n libgcj-static
1114 %defattr(644,root,root,755)
1115 %{_libdir}/lib*cj*.a
1116 %{_libdir}/lib-org-*.a
1118 %{_libdir}/nof/lib*cj*.a
1122 %defattr(644,root,root,755)
1123 %attr(755,root,root) %{_libdir}/libffi-*.so
1125 %files -n libffi-devel
1126 %defattr(644,root,root,755)
1127 %attr(755,root,root) %{_libdir}/libffi.so
1128 %{_libdir}/libffi.la
1131 %files -n libffi-static
1132 %defattr(644,root,root,755)
1138 %defattr(644,root,root,755)
1139 %attr(755,root,root) %{_bindir}/gnat*
1140 %attr(755,root,root) %{_libdir}/gcc/*/*/gnat1
1141 %{_libdir}/gcc/*/*/adainclude
1142 %dir %{_libdir}/gcc/*/*/adalib
1143 %{_libdir}/gcc/*/*/adalib/*.ali
1145 %{_libdir}/gcc/*/*/adalib/libgmem.a
1150 %defattr(644,root,root,755)
1151 %attr(755,root,root) %{_libdir}/libgnarl*.so
1152 %attr(755,root,root) %{_libdir}/libgnat*.so
1154 %files -n libgnat-static
1155 %defattr(644,root,root,755)
1156 %{_libdir}/gcc/*/*/adalib/libgnarl.a
1157 %{_libdir}/gcc/*/*/adalib/libgnat.a
1162 %defattr(644,root,root,755)
1163 %doc gcc/ksi/README gcc/ksi/NEWS gcc/ksi/t/*.{ksi,c,foo}
1165 %attr(755,root,root) %{_libdir}/gcc/*/*/ksi1
1169 %defattr(644,root,root,755)
1170 %attr(755,root,root) /lib/cpp
1171 %attr(755,root,root) %{_bindir}/cpp
1172 %{_mandir}/man1/cpp.1*
1173 %lang(ja) %{_mandir}/ja/man1/cpp.1*