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)
7 %bcond_without var_tracking # Disable vartracking in debug, http://gcc.gnu.org/gcc-3.5/changes.html
10 %define GCC_VERSION 3.5
11 %define KSI_VERSION 1.1.0.1567
13 Summary: GNU Compiler Collection: the C compiler and shared files
14 Summary(es): Colección de compiladores GNU: el compilador C y ficheros compartidos
15 Summary(pl): Kolekcja kompilatorów GNU: kompilator C i pliki wspó³dzielone
16 Summary(pt_BR): Coleção dos compiladores GNU: o compilador C e arquivos compartilhados
18 Version: %{GCC_VERSION}
22 Group: Development/Languages
23 #Source0: ftp://gcc.gnu.org/pub/gcc/releases/gcc-%{version}/%{name}-%{version}.tar.bz2
24 Source0: ftp://gcc.gnu.org/pub/gcc/snapshots/%{version}-%{snap}/%{name}-%{version}-%{snap}.tar.bz2
25 # Source0-md5: eab7b638e1b5a2cee161463cf00f1515
26 Source1: ftp://ftp.pld-linux.org/people/malekith/ksi/ksi-%{KSI_VERSION}.tar.gz
27 # Source1-md5: 66f07491b44f06928fd95b0e65bb8cd3
28 Source2: http://ep09.pld-linux.org/~djrzulf/gcc33/%{name}-non-english-man-pages.tar.bz2
29 # Source2-md5: 4736f3422ddfb808423b745629acc321
30 Patch0: %{name}-info.patch
31 Patch1: %{name}-nolocalefiles.patch
32 Patch2: %{name}-ada-link-new-libgnat.patch
33 BuildRequires: autoconf
34 BuildRequires: automake
35 BuildRequires: binutils >= 2.14
37 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 %if %{with var_tracking}
53 URL: http://gcc.gnu.org/
54 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
56 %define _slibdir /%{_lib}
58 %define _slibdir64 /lib64
59 %define _libdir /usr/lib
60 %define rpmcflags -O2 -mtune=ultrasparc
63 %if %{without var_tracking} && %{with debug}
64 %define specflags -fno-var-tracking
68 A compiler aimed at integrating all the optimizations and features
69 necessary for a high-performance and stable development environment.
71 This package contains the C compiler and some files shared by various
72 parts of the GNU Compiler Collection. In order to use another GCC
73 compiler you will need to install the appropriate subpackage.
76 Un compilador destinado a la integración de todas las optimalizaciones
77 y características necesarias para un entorno de desarrollo eficaz y
80 Este paquete contiene el compilador de C y unos ficheros compartidos
81 por varias parted de la colección de compiladores GNU (GCC). Para usar
82 otro compilador de GCC será necesario que instale el subpaquete
86 Kompilator, posiadaj±cy du¿e mo¿liwo¶ci optymalizacyjne niezbêdne do
87 wyprodukowania szybkiego i stablinego kodu wynikowego.
89 Ten pakiet zawiera kompilator C i pliki wspó³dzielone przez ró¿ne
90 czê¶ci kolekcji kompilatorów GNU (GCC). ¯eby u¿ywaæ innego kompilatora
91 z GCC, trzeba zainstalowaæ odpowiedni podpakiet.
94 Este pacote adiciona infraestrutura básica e suporte a linguagem C ao
95 GNU Compiler Collection.
98 Summary: Shared gcc library
99 Summary(es): Biblioteca compartida de gcc
100 Summary(pl): Biblioteka gcc
101 Summary(pt_BR): Biblioteca runtime para o GCC
105 %description -n libgcc
108 %description -n libgcc -l es
109 Biblioteca compartida de gcc.
111 %description -n libgcc -l pl
112 Biblioteka dynamiczna gcc.
114 %description -n libgcc -l pt_BR
115 Biblioteca runtime para o GCC.
118 Summary: C++ support for gcc
119 Summary(es): Soporte de C++ para gcc
120 Summary(pl): Obs³uga C++ dla gcc
121 Summary(pt_BR): Suporte C++ para o gcc
122 Group: Development/Languages
125 Requires: gcc = %{epoch}:%{version}-%{release}
128 This package adds C++ support to the GNU Compiler Collection. It
129 includes support for most of the current C++ specification, including
130 templates and exception handling. It does not include a standard C++
131 library, which is available separately.
133 %description c++ -l de
134 Dieses Paket enthält die C++-Unterstützung für den
135 GNU-Compiler-Collection. Es unterstützt die aktuelle
136 C++-Spezifikation, inkl. Templates und Ausnahmeverarbeitung. Eine
137 C++-Standard-Library ist nicht enthalten - sie ist getrennt
140 %description c++ -l es
141 Este paquete añade soporte de C++ al GCC (colección de compiladores
142 GNU). Ello incluye el soporte para la mayoría de la especificación
143 actual de C++, incluyendo plantillas y manejo de excepciones. No
144 incluye la biblioteca estándar de C++, la que es disponible separada.
146 %description c++ -l fr
147 Ce package ajoute un support C++ a la collection de compilateurs GNU.
148 Il comprend un support pour la plupart des spécifications actuelles de
149 C++, dont les modéles et la gestion des exceptions. Il ne comprend pas
150 une bibliothéque C++ standard, qui est disponible séparément.
152 %description c++ -l pl
153 Ten pakiet dodaje obs³ugê C++ do kompilatora gcc. Ma wsparcie dla
154 du¿ej ilo¶ci obecnych specyfikacji C++, nie zawiera natomiast
155 standardowych bibliotek C++, które s± w oddzielnym pakiecie.
157 %description c++ -l pt_BR
158 Este pacote adiciona suporte C++ para o gcc.
160 %description c++ -l tr
161 Bu paket, GNU C derleyicisine C++ desteði ekler. 'Template'ler ve
162 aykýrý durum iþleme gibi çoðu güncel C++ tanýmlarýna uyar. Standart
163 C++ kitaplýðý bu pakette yer almaz.
166 Summary: Objective C support for gcc
167 Summary(de): Objektive C-Unterstützung für gcc
168 Summary(es): Soporte de Objective C para gcc
169 Summary(fr): Gestion d'Objective C pour gcc
170 Summary(pl): Obs³uga obiektowego C dla kompilatora gcc
171 Summary(tr): gcc için Objective C desteði
172 Group: Development/Languages
175 Requires: libobjc = %{epoch}:%{version}-%{release}
176 Requires: gcc = %{epoch}:%{version}-%{release}
179 This package adds Objective C support to the GNU Compiler Collection.
180 Objective C is a object oriented derivative of the C language, mainly
181 used on systems running NeXTSTEP. This package does not include the
182 standard objective C object library.
184 %description objc -l de
185 Dieses Paket ergänzt den GNU-Compiler-Collection durch
186 Objective-C-Support. Objective C ist ein objektorientiertes Derivat
187 von C, das zur Hauptsache auf Systemen mit NeXTSTEP zum Einsatz kommt.
188 Die Standard-Objective-C-Objekt-Library ist nicht Teil des Pakets.
190 %description objc -l es
191 Este paquete añade soporte de Objective C al GCC (colección de
192 compiladores GNU). Objective C es un lenguaje orientado a objetos
193 derivado de C, principalmente usado en sistemas que funcionan bajo
194 NeXTSTEP. El paquete no incluye la biblioteca de objetos estándar de
197 %description objc -l fr
198 Ce package ajoute un support Objective C a la collection de
199 compilateurs GNU. L'Objective C est un langage orienté objetdérivé du
200 langage C, principalement utilisé sur les systèmes NeXTSTEP. Ce
201 package n'inclue pas la bibliothéque Objective C standard.
203 %description objc -l pl
204 Ten pakiet dodaje obs³ugê obiektowego C do kompilatora gcc. Obiektowe
205 C (objc) jest zorientowan± obiektowo pochodn± jêzyka C, u¿ywan±
206 g³ównie w systemach u¿ywaj±cych NeXTSTEP. W pakiecie nie ma
207 standardowej biblioteki objc (która znajduje siê w osobnym pakiecie).
209 %description objc -l tr
210 Bu paket, GNU C derleyicisine Objective C desteði ekler. Objective C,
211 C dilinin nesne yönelik bir türevidir ve NeXTSTEP altýnda çalýþan
212 sistemlerde yaygýn olarak kullanýlýr. Standart Objective C nesne
213 kitaplýðý bu pakette yer almaz.
216 Summary: Objective C Libraries
217 Summary(es): Bibliotecas de Objective C
218 Summary(pl): Biblioteki Obiektowego C
222 %description -n libobjc
223 Objective C Libraries.
225 %description -n libobjc -l es
226 Bibliotecas de Objective C.
228 %description -n libobjc -l pl
229 Biblioteki Obiektowego C.
231 %package -n libobjc-static
232 Summary: Static Objective C Libraries
233 Summary(es): Bibliotecas estáticas de Objective C
234 Summary(pl): Statyczne Biblioteki Obiektowego C
235 Group: Development/Libraries
236 Requires: libobjc = %{epoch}:%{version}-%{release}
238 %description -n libobjc-static
239 Static Objective C Libraries.
241 %description -n libobjc-static -l es
242 Bibliotecas estáticas de Objective C.
244 %description -n libobjc-static -l pl
245 Statyczne biblioteki Obiektowego C.
248 Summary: Fortran 77 support for gcc
249 Summary(es): Soporte de Fortran 77 para gcc
250 Summary(pl): Obs³uga Fortranu 77 dla gcc
251 Summary(pt_BR): Suporte Fortran 77 para o GCC
252 Group: Development/Languages/Fortran
254 Requires: libg2c = %{epoch}:%{version}-%{release}
257 This package adds support for compiling Fortran 77 programs with the
260 %description g77 -l es
261 Este paquete añade soporte para compilar programas escritos en Fortran
262 77 con el compilador GNU.
264 %description g77 -l pl
265 Ten pakiet dodaje obs³ugê Fortranu 77 do kompilatora gcc. Jest
266 potrzebny do kompilowania programów pisanych w jêzyku Fortran 77.
268 %description g77 -l pt_BR
269 Suporte Fortran 77 para o GCC.
272 Summary: Fortran 77 Libraries
273 Summary(es): Bibliotecas de Fortran 77
274 Summary(pl): Biblioteki Fortranu 77
277 %description -n libg2c
278 Fortran 77 Libraries.
280 %description -n libg2c -l es
281 Bibliotecas de Fortran 77.
283 %description -n libg2c -l pl
284 Biblioteki Fortranu 77.
286 %package -n libg2c-static
287 Summary: Static Fortran 77 Libraries
288 Summary(es): Bibliotecas estáticas de Fortran 77
289 Summary(pl): Statyczne Biblioteki Fortranu 77
290 Group: Development/Libraries
291 Requires: libg2c = %{epoch}:%{version}-%{release}
293 %description -n libg2c-static
294 Static Fortran 77 Libraries.
296 %description -n libg2c -l es
297 Bibliotecas estáticas de Fortran 77.
299 %description -n libg2c-static -l pl
300 Statyczne biblioteki Fortranu 77.
303 Summary: Java support for gcc
304 Summary(es): Soporte de Java para gcc
305 Summary(pl): Obs³uga Javy dla gcc
306 Group: Development/Languages/Java
307 Requires: %{name} = %{epoch}:%{version}-%{release}
308 Requires: libgcj >= 3.0.0
309 Requires: libgcj-devel >= 3.0.0
310 Requires: java-shared
311 Provides: gcj = %{epoch}:%{version}-%{release}
314 This package adds experimental support for compiling Java(tm) programs
315 and bytecode into native code. To use this you will also need the
318 %description java -l es
319 Este paquete añade soporte experimental para compilar programas
320 Java(tm) y su bytecode en código nativo. Para usarlo también va a
321 necesitar el paquete libgcj.
323 %description java -l pl
324 Wsparcie dla kompilowania programów Java(tm) zrówno do bajt-kodu jak i
325 do natywnego kodu. Dodatkowo wymagany jest pakiet libgcj, aby mo¿na
326 by³o przeprowadziæ kompilacjê.
329 Summary: Shared java tools
330 Summary(es): Herramientas compartidas de Java
331 Summary(pl): Wspó³dzielone narzêdzia javy
332 Group: Development/Languages/Java
333 Provides: jar = %{epoch}:%{version}-%{release}
334 Provides: java-shared
336 Obsoletes: java-shared
339 %description java-tools
340 This package contains tools that are common for every Java(tm)
341 implementation, such as rmic or jar.
343 %description java-tools -l es
344 Este paquete contiene herramientas que son comunes para cada
345 implementación de Java(tm), como rmic o jar.
347 %description java-tools -l pl
348 Pakiet ten zawiera narzêdzia wspólne dla ka¿dej implementacji
349 Javy(tm), takie jak rmic czy jar.
352 Summary: Java Class Libraries
353 Summary(es): Bibliotecas de clases de Java
354 Summary(pl): Biblioteki Klas Javy
359 %description -n libgcj
360 Java Class Libraries.
362 %description -n libgcj -l es
363 Bibliotecas de clases de Java.
365 %description -n libgcj -l pl
366 Biblioteki Klas Javy.
368 %package -n libgcj-devel
369 Summary: Development files for Java Class Libraries
370 Summary(es): Ficheros de desarrollo para las bibliotecas de clases de Java
371 Summary(pl): Pliki nag³ówkowe dla Bibliotek Klas Javy
372 Group: Development/Libraries
373 Requires: libgcj = %{epoch}:%{version}-%{release}
374 Requires: %{name}-java
375 Obsoletes: libgcj3-devel
377 %description -n libgcj-devel
378 Development files for Java Class Libraries.
380 %description -n libgcj-devel -l es
381 Ficheros de desarrollo para las bibliotecas de clases de Java.
383 %description -n libgcj-devel -l pl
384 Pliki nag³ówkowe dla Bibliotek Klas Javy.
386 %package -n libgcj-static
387 Summary: Static Java Class Libraries
388 Summary(es): Bibliotecas estáticas de clases de Java
389 Summary(pl): Statyczne Biblioteki Klas Javy
390 Group: Development/Libraries
391 Requires: libstdc++-devel = %{epoch}:%{version}-%{release}
392 Requires: libgcj-devel = %{epoch}:%{version}-%{release}
394 %description -n libgcj-static
395 Static Java Class Libraries.
397 %description -n libgcj-static -l es
398 Bibliotecas estáticas de clases de Java.
400 %description -n libgcj-static -l pl
401 Statyczne Biblioteki Klas Javy.
403 %package -n libstdc++
404 Summary: GNU c++ library
405 Summary(es): Biblioteca C++ de GNU
406 Summary(pl): Biblioteki GNU C++
407 Summary(pt_BR): Biblioteca C++ GNU
410 Obsoletes: libstdc++3
412 %description -n libstdc++
413 This is the GNU implementation of the standard C++ libraries, along
414 with additional GNU tools. This package includes the shared libraries
415 necessary to run C++ applications.
417 %description -n libstdc++ -l de
418 Dies ist die GNU-Implementierung der Standard-C++-Libraries mit
419 weiteren GNU-Tools. Dieses Paket enthält die zum Ausführen von
420 C++-Anwendungen erforderlichen gemeinsam genutzten Libraries.
422 %description -n libstdc++ -l es
423 Este es el soporte de las bibliotecas padrón del C++, junto con
424 herramientas GNU adicionales. El paquete incluye las bibliotecas
425 compartidas necesarias para ejecutar aplicaciones C++.
427 %description -n libstdc++ -l fr
428 Ceci est l'implémentation GNU des librairies C++ standard, ainsi que
429 des outils GNU supplémentaires. Ce package comprend les librairies
430 partagées nécessaires à l'exécution d'application C++.
432 %description -n libstdc++ -l pl
433 Pakiet ten zawiera biblioteki bêd±ce implementacj± standardowych
434 bibliotek C++. Znajduj± siê w nim biblioteki dynamiczne niezbêdne do
435 uruchomienia aplikacji napisanych w C++.
437 %description -n libstdc++ -l pt_BR
438 Este pacote é uma implementação da biblioteca padrão C++ v3, um
439 subconjunto do padrão ISO 14882.
441 %description -n libstdc++ -l tr
442 Bu paket, standart C++ kitaplýklarýnýn GNU gerçeklemesidir ve C++
443 uygulamalarýnýn koþturulmasý için gerekli kitaplýklarý içerir.
445 %package -n libstdc++-devel
446 Summary: Header files and documentation for C++ development
447 Summary(de): Header-Dateien zur Entwicklung mit C++
448 Summary(es): Ficheros de cabecera y documentación para desarrollo C++
449 Summary(fr): Fichiers d'en-tête et biblitothèques pour développer en C++
450 Summary(pl): Pliki nag³ówkowe i dokumentacja do biblioteki standardowej C++
451 Summary(pt_BR): Arquivos de inclusão e bibliotecas para o desenvolvimento em C++
452 Summary(tr): C++ ile program geliþtirmek için gerekli dosyalar
453 Group: Development/Libraries
454 Requires: libstdc++ = %{epoch}:%{version}-%{release}
455 Requires: %{name}-c++ = %{epoch}:%{version}-%{release}
456 Obsoletes: libg++-devel
457 Obsoletes: libstdc++3-devel
459 %description -n libstdc++-devel
460 This is the GNU implementation of the standard C++ libraries. This
461 package includes the header files needed for C++ development and
462 library documentation.
464 %description -n libstdc++-devel -l es
465 Este es el soporte de las bibliotecas padrón del lenguaje C++. Este
466 paquete incluye los archivos de inclusión y bibliotecas necesarios
467 para desarrollo de programas en lenguaje C++.
469 %description -n libstdc++-devel -l pl
470 Pakiet ten zawiera biblioteki bêd±ce implementacj± standardowych
471 bibliotek C++. Znajduj± siê w nim pliki nag³ówkowe wykorzystywane przy
472 programowaniu w jêzyku C++ oraz dokumentacja biblioteki standardowej.
474 %description -n libstdc++-devel -l pt_BR
475 Este pacote inclui os arquivos de inclusão e bibliotecas necessárias
476 para desenvolvimento de programas C++.
478 %package -n libstdc++-static
479 Summary: Static C++ standard library
480 Summary(es): Biblioteca estándar estática de C++
481 Summary(pl): Statyczna biblioteka standardowa C++
482 Group: Development/Libraries
483 Requires: libstdc++-devel = %{epoch}:%{version}-%{release}
485 %description -n libstdc++-static
486 Static C++ standard library.
488 %description -n libstdc++-static -l es
489 Biblioteca estándar estática de C++.
491 %description -n libstdc++-static -l pl
492 Statycza biblioteka standardowa C++.
495 Summary: Foreign Function Interface library
496 Summary(es): Biblioteca de interfaz de funciones ajenas
497 Summary(pl): Biblioteka zewnêtrznych wywo³añ funkcji
500 %description -n libffi
501 The libffi library provides a portable, high level programming
502 interface to various calling conventions. This allows a programmer to
503 call any function specified by a call interface description at run
506 %description -n libffi -l es
507 La biblioteca libffi provee una interfaz portable de programación de
508 alto nivel para varias convenciones de llamada. Ello permite que un
509 programador llame una función cualquiera especificada por una
510 descripción de interfaz de llamada en el tiempo de ejecución.
512 %description -n libffi -l pl
513 Biblioteka libffi dostarcza przno¶nego, wysokopoziomowego
514 miêdzymordzia do ró¿nych konwencji wywo³añ funkcji. Pozwala to
515 programi¶cie wywo³ywaæ dowolne funkcje podaj±c konwencjê wywo³ania w
518 %package -n libffi-devel
519 Summary: Development files for Foreign Function Interface library
520 Summary(es): Ficheros de desarrollo para libffi
521 Summary(pl): Pliki nag³ówkowe dla libffi
522 Group: Development/Libraries
523 Requires: libffi = %{epoch}:%{version}-%{release}
525 %description -n libffi-devel
526 Development files for Foreign Function Interface library.
528 %description -n libffi-devel -l es
529 Ficheros de desarrollo para libffi.
531 %description -n libffi-devel -l pl
532 Pliki nag³ówkowe dla libffi.
534 %package -n libffi-static
535 Summary: Static Foreign Function Interface library
536 Summary(es): Biblioteca libffi estática
537 Summary(pl): Statyczna biblioteka libffi
538 Group: Development/Libraries
539 Requires: libffi-devel = %{epoch}:%{version}-%{release}
541 %description -n libffi-static
542 Static Foreign Function Interface library.
544 %description -n libffi-static -l es
545 Biblioteca libffi estática.
547 %description -n libffi-static -l pl
548 Statyczna biblioteka libffi.
551 Summary: Ada support for gcc
552 Summary(es): Soporte de Ada para gcc
553 Summary(pl): Obs³uga Ady do gcc
554 Group: Development/Languages
555 Requires: libgnat = %{epoch}:%{version}-%{release}
556 Requires: gcc = %{epoch}:%{version}-%{release}
558 Obsoletes: gnat-devel
561 This package adds experimental support for compiling Ada programs.
563 %description ada -l es
564 Este paquete añade soporte experimental para compilar programas en
567 %description ada -l pl
568 Ten pakiet dodaje eksperymentalne wsparcie dla kompilacji programów w
572 Summary: Ada standard libraries
573 Summary(es): Bibliotecas estándares de Ada
574 Summary(pl): Biblioteki standardowe dla Ady
579 %description -n libgnat
580 This package contains shared libraries needed to run programs written
583 %description -n libgnat -l es
584 Este paquete contiene las bibliotecas compartidas necesarias para
585 ejecutar programas escritos en Ada.
587 %description -n libgnat -l pl
588 Ten pakiet zawiera biblioteki potrzebne do uruchamiania programów
591 %package -n libgnat-static
592 Summary: Static Ada standard libraries
593 Summary(pl): Statyczne biblioteki standardowe dla Ady
595 Obsoletes: gnat-static
597 %description -n libgnat-static
598 This package contains static libraries for programs written in Ada.
600 %description -n libgnat-static -l pl
601 Ten pakiet zawiera biblioteki statyczne dla programów napisanych w
605 Summary: Ksi support for gcc
606 Summary(es): Soporte de Ksi para gcc
607 Summary(pl): Obs³uga Ksi dla gcc
608 Version: %{GCC_VERSION}.%{KSI_VERSION}
609 Group: Development/Languages
610 Requires: gcc = %{epoch}:%{version}-%{release}
613 This package adds experimental support for compiling Ksi programs into
614 native code. You proabably don't need it, unless your are going to
615 develop a compiler using Ksi as intermediate representation or you are
616 using such compiler (like Gont).
618 %description ksi -l es
619 Este paquete añade soporte experimental para compilar programas de Ksi
620 en código nativo. Probablemento no lo necesitará, a menos que vaya a
621 desarrollar un compilador que use Ksi como representación intermedia o
622 use tal compilador (como Gont).
624 %description ksi -l pl
625 Ten pakiet dodaje eksperymentalne wsparcie dla kompilacji programów w
626 Ksi do kodu maszynowego. Prawdopodobnie nie potrzebujesz go, chyba ¿e
627 zamierzasz pisaæ kompilator u¿ywaj±cy Ksi jako reprezentacji
628 po¶rednicz±cej, lub u¿ywasz takiego kompilatora (jak Gont).
631 Summary: The C Pre Processor
632 Summary(es): El preprocesador de C
633 Summary(pl): Preprocesor C
634 Summary(pt_BR): Preprocessador para a linguagem C
635 Group: Development/Languages
636 Version: %{GCC_VERSION}
641 The C preprocessor is a "macro processor" that is used automatically
642 by the C compiler to transform your program before actual compilation.
643 It is called a macro processor because it allows you to define
644 "macros", which are brief abbreviations for longer constructs.
646 The C preprocessor provides four separate facilities that you can use
649 - Inclusion of header files. These are files of declarations that can
650 be substituted into your program.
651 - Macro expansion. You can define "macros", which are abbreviations
652 for arbitrary fragments of C code, and then the C preprocessor will
653 replace the macros with their definitions throughout the program.
654 - Conditional compilation. Using special preprocessing directives, you
655 can include or exclude parts of the program according to various
657 - Line control. If you use a program to combine or rearrange source
658 files into an intermediate file which is then compiled, you can use
659 line control to inform the compiler of where each source line
660 originally came from.
662 %description -n cpp -l es
663 El preprocesador de C es un "procesador de macros" que es usado
664 automáticamente por el compilador C para transformar su programa antes
665 de que éste se actualmente compile. Se llama procesador de macros
666 porque permite definir "macros", los que son abreviaciones concisas
667 para construcciones más largas.
669 El preprocesador C provee cuatro cualidadedes distintas que puede usar
672 - Inclusión de ficheros de cabecera. Éstos son ficheros de
673 declaraciones que pueden incorporarse a su programa.
674 - Expansión de macros. Puede definir "macros", los que son
675 abreviaciones para fragmentos arbitrarios de código C, y a lo largo
676 del programa el preprocesador sustituirá los macros con sus
678 - Compilación condicional. Usando especiales directivas del preproceso
679 puede incluir o excluir partes del programa según varias condiciones.
680 - Control de líneas. Si usa un programa para combinar o reorganizar el
681 código fuente en un fichero intermedio que luego es compilado, puede
682 usar control de líneas para informar el compilador de dónde origina
685 %description -n cpp -l pl
686 Przeprocesor C jest "makro procesorem" który jest automatycznie
687 u¿ywany przez kompilator C do obróbki kompilowanego programu przed
688 w³a¶ciw± kompilacj±. Jest on nazywany makroprocesorem, poniewa¿
689 umo¿liwia definiowanie i rozwijanie makr umo¿liwiaj±cych skracanie
690 d³ugich konstrukcji w jêzyku C.
692 Preprocesor C umo¿liwia wykonywanie czterech ró¿nych typów operacji:
694 - Do³±czanie plików (np. nag³ówkowych). Wstawia pliki w miejscu
695 deklaracji polecenia do³±czenia innego pliku.
696 - Rozwijanie makr. Mo¿na definiowaæ "makra" nadaj±c im identyfikatory,
697 których pó¼niejsze u¿ycie powoduje podczas rozwijania podmienienie
698 indentyfikatora deklarowan± wcze¶niej warto¶ci±.
699 - Kompilacja warunkowa. W zale¿no¶ci od obecno¶ci symboli i dyrektyw w
700 ¶rodowisku preprocesora s± w³±czane warunkowo, b±d¼ nie, pewne
701 fragmenty obrabianego strumienia tekstów.
702 - Kontrola linii ¼ród³a. Niezale¿nie od tego jakim przeobra¿eniom
703 podlega wynikowy strumieñ danych w wyniku rozwijania makr i do³±czania
704 s± zapamiêtywane informacje o tym, której linii pliku ¼ród³owego
705 odpowiada fragment pliku wynikowego.
707 %description -n cpp -l pt_BR
708 O preprocessador C é um "processador de macros", que é utilizado pelo
709 compilador C para fazer algumas modificações no seu programa, antes da
710 compilação em si. Ele é chamado de "processador de macros" porque
711 permite a você definir "macros", que são abreviações para construções
714 O preprocessador C fornece quatro funcionalidades básicas: inclusão de
715 arquivos de cabeçalho; expansão de macros; compilação condicional; e
716 controle da numeração das linhas do programa.
719 %setup -q -a1 -n %{name}-%{version}-%{snap}
720 mv ksi-%{KSI_VERSION} gcc/ksi
726 # because we distribute modified version of gcc...
727 perl -pi -e 's/(version.*)";/$1 (PLD Linux)";/' gcc/version.c
728 perl -pi -e 's@(bug_report_url.*<URL:).*";@$1http://bugs.pld-linux.org/>";@' gcc/version.c
731 # cd gcc && autoconf; cd ..
732 # autoconf is not needed!
733 cp /usr/share/automake/config.sub .
735 rm -rf obj-%{_target_platform} && install -d obj-%{_target_platform} && cd obj-%{_target_platform}
737 CFLAGS="%{rpmcflags}" \
738 CXXFLAGS="%{rpmcflags}" \
739 TEXCONFIG=false ../configure \
740 --prefix=%{_prefix} \
741 --libdir=%{_libdir} \
742 --libexecdir=%{_libexecdir} \
743 --infodir=%{_infodir} \
744 --mandir=%{_mandir} \
746 --enable-threads=posix \
747 --enable-__cxa_atexit \
748 --enable-languages="c,c++,f77%{?with_objc:,objc}%{?with_ada:,ada}%{?with_java:,java}" \
760 --with-slibdir=%{_slibdir} \
764 PATH=$PATH:/sbin:%{_sbindir}
767 %{__make} -C obj-%{_target_platform} profiledbootstrap \
768 BOOT_CFLAGS="%{rpmcflags}" \
769 STAGE1_CFLAGS="%{rpmcflags}" \
770 LDFLAGS_FOR_TARGET="%{rpmldflags}" \
775 %{__make} -C obj-%{_target_platform}/gcc gnatlib gnattools gnatlib-shared \
776 LDFLAGS_FOR_TARGET="%{rpmldflags}" \
782 rm -rf $RPM_BUILD_ROOT
783 install -d $RPM_BUILD_ROOT{/lib,%{_datadir},%{_infodir}}
785 cd obj-%{_target_platform}
786 PATH=$PATH:/sbin:%{_sbindir}
790 infodir=%{_infodir} \
791 DESTDIR=$RPM_BUILD_ROOT
794 ln -f $RPM_BUILD_ROOT%{_bindir}/sparc64-pld-linux-gcc \
795 $RPM_BUILD_ROOT%{_bindir}/sparc-pld-linux-gcc
798 ln -sf gcc $RPM_BUILD_ROOT%{_bindir}/cc
799 echo ".so gcc.1" > $RPM_BUILD_ROOT%{_mandir}/man1/cc.1
801 ln -sf g77 $RPM_BUILD_ROOT%{_bindir}/f77
802 echo ".so g77.1" > $RPM_BUILD_ROOT%{_mandir}/man1/f77.1
805 # move ada shared libraries to proper place...
806 mv $RPM_BUILD_ROOT%{_libdir}/gcc/*/*/adalib/*.so.1 \
807 $RPM_BUILD_ROOT%{_libdir}/
808 # check if symlink to be made is valid
809 test -f $RPM_BUILD_ROOT%{_libdir}/libgnat-3.15.so.1
810 ln -sf libgnat-3.15.so.1 $RPM_BUILD_ROOT%{_libdir}/libgnat-3.15.so
811 ln -sf libgnarl-3.15.so.1 $RPM_BUILD_ROOT%{_libdir}/libgnarl-3.15.so
812 ln -sf libgnat-3.15.so $RPM_BUILD_ROOT%{_libdir}/libgnat.so
813 ln -sf libgnarl-3.15.so $RPM_BUILD_ROOT%{_libdir}/libgnarl.so
816 ln -sf %{_bindir}/cpp $RPM_BUILD_ROOT/lib/cpp
822 cp -f libjava/doc/cni.sgml libjava/READ* java-doc
823 cp -f fastjar/README java-doc/README.fastjar
824 cp -f libffi/README java-doc/README.libffi
825 cp -f libffi/LICENSE java-doc/LICENSE.libffi
829 cp -f libobjc/README gcc/objc/README.libobjc
832 # avoid -L poisoning in *.la - there should be only -L%{_libdir}/gcc/*/%{version}
833 for f in libstdc++.la libsupc++.la %{?with_java:libgcj.la} ; do
834 perl -pi -e 's@-L[^ ]*[acs.] @@g' $RPM_BUILD_ROOT%{_libdir}/$f
836 # normalize libdir, to avoid propagation of unnecessary RPATHs by libtool
837 for f in libstdc++.la libsupc++.la libg2c.la \
838 %{?with_java:libgcj.la lib-org-w3c-dom.la lib-org-xml-sax.la libffi.la} \
839 %{?with_objc:libobjc.la}; do
840 perl -pi -e "s@^libdir='.*@libdir='/usr/%{_lib}'@" $RPM_BUILD_ROOT%{_libdir}/$f
843 bzip2 -dc %{SOURCE2} | tar xf - -C $RPM_BUILD_ROOT%{_mandir}
844 mv -f $RPM_BUILD_ROOT%{_mandir}/ja/man1/{cccp,cpp}.1
846 # include/ contains install-tools/include/* and headers that were fixed up
847 # by fixincludes, we don't want former
848 gccdir=$(echo $RPM_BUILD_ROOT%{_libdir}/gcc/*/*/)
850 # we have to save these however
851 mv -f $gccdir/include/{%{?with_objc:objc,}g2c.h,syslimits.h%{?with_java:,gcj}} $gccdir/tmp
852 rm -rf $gccdir/include
853 mv -f $gccdir/tmp $gccdir/include
854 cp $gccdir/install-tools/include/*.h $gccdir/include
855 # but we don't want anything more from install-tools
856 rm -rf $gccdir/install-tools
859 %find_lang libstdc\+\+
862 rm -rf $RPM_BUILD_ROOT
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
880 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
883 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
886 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
889 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
892 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
894 %post -p /sbin/ldconfig -n libgcc
895 %postun -p /sbin/ldconfig -n libgcc
896 %post -p /sbin/ldconfig -n libstdc++
897 %postun -p /sbin/ldconfig -n libstdc++
898 %post -p /sbin/ldconfig -n libobjc
899 %postun -p /sbin/ldconfig -n libobjc
900 %post -p /sbin/ldconfig -n libg2c
901 %postun -p /sbin/ldconfig -n libg2c
902 %post -p /sbin/ldconfig -n libgcj
903 %postun -p /sbin/ldconfig -n libgcj
904 %post -p /sbin/ldconfig -n libgnat
905 %postun -p /sbin/ldconfig -n libgnat
906 %post -p /sbin/ldconfig -n libffi
907 %postun -p /sbin/ldconfig -n libffi
909 %files -f %{name}.lang
910 %defattr(644,root,root,755)
911 %doc READ* ChangeLog BUGS FAQ LAST_UPDATED MAINTAINERS gcc/README.Portability
913 %dir %{_libdir}/gcc/*
914 %dir %{_libdir}/gcc/*/*
915 %dir %{_libdir}/gcc/*/*/include
916 %attr(755,root,root) %{_bindir}/*-gcc*
917 %attr(755,root,root) %{_bindir}/gcc
918 %attr(755,root,root) %{_bindir}/gccbug
919 %attr(755,root,root) %{_bindir}/gcov
920 %attr(755,root,root) %{_bindir}/cc
922 %{_mandir}/man1/gcc.1*
923 %{_mandir}/man1/cc.1*
924 %{_mandir}/man1/gcov.1*
925 %lang(fr) %{_mandir}/fr/man1/gcc.1*
926 %lang(ja) %{_mandir}/ja/man1/gcc.1*
929 %attr(755,root,root) %{_slibdir}*/lib*.so
930 %{_libdir}/gcc/*/*/libgcov.a
931 %{_libdir}/gcc/*/*/libgcc.a
932 %{_libdir}/gcc/*/*/libgcc_eh.a
933 %{_libdir}/gcc/*/*/specs
934 %attr(644,root,root) %{_libdir}*/gcc/*/*/crt*.o
936 %{_libdir}/gcc/*/*/*/libgcc.a
937 %{_libdir}/gcc/*/*/*/libgcc_eh.a
938 %attr(644,root,root) %{_libdir}*/gcc/*/*/*/crt*.o
941 %attr(644,root,root) %{_libdir}/gcc/*/*/ecrt*.o
942 %attr(644,root,root) %{_libdir}/gcc/*/*/ncrt*.o
943 %{_libdir}/gcc/*/*/nof
946 %attr(755,root,root) %{_libdir}/gcc/*/*/cc1
947 %attr(755,root,root) %{_libdir}/gcc/*/*/collect2
949 %{_libdir}/gcc/*/*/include/*.h
950 %exclude %{_libdir}/gcc/*/*/include/g2c.h
953 %defattr(644,root,root,755)
954 %attr(755,root,root) %{_slibdir}*/lib*.so.*
957 %defattr(644,root,root,755)
958 %attr(755,root,root) %{_bindir}/g++
959 %attr(755,root,root) %{_bindir}/*-g++
960 %attr(755,root,root) %{_bindir}/c++
961 %attr(755,root,root) %{_bindir}/*-c++
962 %attr(755,root,root) %{_libdir}/gcc/*/*/cc1plus
963 %{_libdir}*/libsupc++.la
965 %{_libdir}/nof/libsupc++.la
966 %{_libdir}/nof/libsupc++.a
968 %{_libdir}*/libsupc++.a
969 %{_mandir}/man1/g++.1*
970 %lang(ja) %{_mandir}/ja/man1/g++.1*
972 %files -n libstdc++ -f libstdc++.lang
973 %defattr(644,root,root,755)
974 %attr(755,root,root) %{_libdir}*/libstdc++.so.*.*.*
976 %attr(755,root,root) %{_libdir}/nof/libstdc++.so.*.*.*
979 %files -n libstdc++-devel
980 %defattr(644,root,root,755)
981 %doc libstdc++-v3/docs/html
982 %dir %{_includedir}/c++
983 %{_includedir}/c++/%{version}.0
984 %exclude %{_includedir}/c++/%{version}.0/*/bits/stdc++.h.gch
985 %attr(755,root,root) %{_libdir}*/libstdc++.so
986 %{_libdir}*/libstdc++.la
988 %attr(755,root,root) %{_libdir}/nof/libstdc++.so
989 %{_libdir}/nof/libstdc++.la
992 %files -n libstdc++-static
993 %defattr(644,root,root,755)
994 %{_libdir}*/libstdc++.a
996 %{_libdir}/nof/libstdc++.a
1001 %defattr(644,root,root,755)
1003 %attr(755,root,root) %{_libdir}/gcc/*/*/cc1obj
1004 %attr(755,root,root) %{_libdir}*/libobjc.so
1005 %{_libdir}*/libobjc.la
1007 %attr(755,root,root) %{_libdir}/nof/libobjc.so
1008 %{_libdir}/nof/libobjc.la
1010 %{_libdir}/gcc/*/*/include/objc
1013 %defattr(644,root,root,755)
1014 %attr(755,root,root) %{_libdir}*/libobjc.so.*.*.*
1016 %attr(755,root,root) %{_libdir}/nof/libobjc.so.*.*.*
1019 %files -n libobjc-static
1020 %defattr(644,root,root,755)
1021 %{_libdir}*/libobjc.a
1023 %{_libdir}/nof/libobjc.a
1028 %defattr(644,root,root,755)
1029 %attr(755,root,root) %{_bindir}/g77
1030 %attr(755,root,root) %{_bindir}/f77
1032 %attr(755,root,root) %{_libdir}/gcc/*/*/f771
1033 %{_libdir}*/libfrtbegin.a
1034 %{_libdir}*/libg2c.la
1035 %attr(755,root,root) %{_libdir}*/libg2c.so
1037 %{_libdir}/nof/libfrtbegin.a
1038 %{_libdir}/nof/libg2c.la
1039 %attr(755,root,root) %{_libdir}/nof/libg2c.so
1041 %{_libdir}/gcc/*/*/include/g2c.h
1042 %{_mandir}/man1/g77.1*
1043 %{_mandir}/man1/f77.1*
1044 %lang(ja) %{_mandir}/ja/man1/g77.1*
1045 %lang(ja) %{_mandir}/ja/man1/f77.1*
1048 %defattr(644,root,root,755)
1049 %attr(755,root,root) %{_libdir}*/libg2c.so.*.*.*
1051 %attr(755,root,root) %{_libdir}/nof/libg2c.so.*.*.*
1054 %files -n libg2c-static
1055 %defattr(644,root,root,755)
1056 %{_libdir}*/libg2c.a
1058 %{_libdir}/nof/libg2c.a
1063 %defattr(644,root,root,755)
1065 %attr(755,root,root) %{_bindir}/gcj*
1066 %attr(755,root,root) %{_bindir}/gij
1067 %attr(755,root,root) %{_bindir}/jcf-dump
1068 %attr(755,root,root) %{_bindir}/jv-*
1069 %attr(755,root,root) %{_bindir}/grepjar
1070 %attr(755,root,root) %{_bindir}/*-gcj
1071 %attr(755,root,root) %{_libdir}/gcc/*/*/jc1
1072 %attr(755,root,root) %{_libdir}/gcc/*/*/jvgenmain
1074 %{_mandir}/man1/jcf-*
1075 %{_mandir}/man1/jv-*
1076 %{_mandir}/man1/gij*
1077 %{_mandir}/man1/gcj*
1078 %{_mandir}/man1/grepjar*
1081 %defattr(644,root,root,755)
1082 %attr(755,root,root) %{_bindir}/rmi*
1083 %attr(755,root,root) %{_bindir}/jar
1084 %{_mandir}/man1/rmi*
1085 %{_mandir}/man1/jar*
1086 %{_infodir}/fastjar*
1089 %defattr(644,root,root,755)
1090 %attr(755,root,root) %{_bindir}/addr2name.awk
1091 %attr(755,root,root) %{_libdir}/lib*cj*.so.*.*.*
1092 %attr(755,root,root) %{_libdir}/lib-org*.so.*.*.*
1094 %attr(755,root,root) %{_libdir}/nof/lib*cj*.so.*
1097 %files -n libgcj-devel
1098 %defattr(644,root,root,755)
1100 %{_includedir}/javax
1101 #%%{_includedir}/org
1104 %{_includedir}/gnu/*
1105 %{_libdir}/gcc/*/*/include/gcj
1106 %dir %{_libdir}/security
1107 %{_libdir}/security/*
1108 %dir %{_datadir}/java
1109 %{_datadir}/java/libgcj*.jar
1110 %{_libdir}/lib*cj.spec
1111 %{_libdir}/lib*cj*.la
1112 %attr(755,root,root) %{_libdir}/lib*cj*.so
1113 %attr(755,root,root) %{_libdir}/lib-org-*.so
1114 %{_libdir}/lib-org-*.la
1116 %{_libdir}/nof/lib*cj*.la
1117 %attr(755,root,root) %{_libdir}/nof/lib*cj*.so
1120 %files -n libgcj-static
1121 %defattr(644,root,root,755)
1122 %{_libdir}/lib*cj*.a
1123 %{_libdir}/lib-org-*.a
1125 %{_libdir}/nof/lib*cj*.a
1129 %defattr(644,root,root,755)
1130 %attr(755,root,root) %{_libdir}/libffi-*.so
1132 %files -n libffi-devel
1133 %defattr(644,root,root,755)
1134 %attr(755,root,root) %{_libdir}/libffi.so
1135 %{_libdir}/libffi.la
1138 %files -n libffi-static
1139 %defattr(644,root,root,755)
1145 %defattr(644,root,root,755)
1146 %attr(755,root,root) %{_libdir}/gcc/*/*/gnat1
1147 %{_libdir}/gcc/*/*/adainclude
1148 %dir %{_libdir}/gcc/*/*/adalib
1149 %{_libdir}/gcc/*/*/adalib/*.ali
1151 %{_libdir}/gcc/*/*/adalib/libgmem.a
1153 %{_libdir}/gcc/*/*/adalib/Makefile.adalib
1154 %attr(755,root,root) %{_bindir}/gnat*
1156 %attr(755,root,root) %{_libdir}/libgnat*.so
1157 %attr(755,root,root) %{_libdir}/libgnarl*.so
1160 %defattr(644,root,root,755)
1161 %attr(755,root,root) %{_libdir}/libgna*.so.1
1163 %files -n libgnat-static
1164 %defattr(644,root,root,755)
1165 %{_libdir}/gcc/*/*/adalib/libgna*.a
1170 %defattr(644,root,root,755)
1171 %doc gcc/ksi/README gcc/ksi/NEWS gcc/ksi/t/*.{ksi,c,foo}
1173 %attr(755,root,root) %{_libdir}/gcc/*/*/ksi1
1177 %defattr(644,root,root,755)
1178 %attr(755,root,root) /lib/cpp
1179 %attr(755,root,root) %{_bindir}/cpp
1180 %{_mandir}/man1/cpp.1*
1181 %lang(ja) %{_mandir}/ja/man1/cpp.1*