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_with pp # build with ProPolice
9 %define DASHED_SNAP %{nil}
10 %define SNAP %(echo %{DASHED_SNAP} | sed -e "s#-##g")
11 %define GCC_VERSION 3.3.2
12 %define KSI_VERSION 1.1.0.1567
14 Summary: GNU Compiler Collection: the C compiler and shared files
15 Summary(es): Colección de compiladores GNU: el compilador C y ficheros compartidos
16 Summary(pl): Kolekcja Kompilatorów GNU: kompilator C i pliki wspó³dzielone
17 Summary(pt_BR): Coleção dos compiladores GNU: o compilador C e arquivos compartilhados
19 Version: %{GCC_VERSION}
23 Group: Development/Languages
24 Source0: ftp://gcc.gnu.org/pub/gcc/releases/gcc-%{GCC_VERSION}/%{name}-%{GCC_VERSION}.tar.bz2
25 # Source0-md5: 65999f654102f5438ac8562d13a6eced
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}-paths.patch
32 Patch2: %{name}-nolocalefiles.patch
33 Patch3: %{name}-ada-link-new-libgnat.patch
34 Patch4: %{name}-pr12965.patch
35 Patch5: %{name}-pr11793.patch
36 # -- stolen patches from RH --
37 Patch10: gcc32-ada-link.patch
38 Patch11: gcc32-boehm-gc-libs.patch
39 Patch12: gcc32-bogus-inline.patch
40 Patch13: gcc32-c++-nrv-test.patch
41 Patch14: gcc32-c++-tsubst-asm.patch
42 Patch15: gcc32-debug-pr7241.patch
43 Patch16: gcc32-duplicate-decl.patch
44 Patch17: gcc32-dwarf2-pr6381.patch
45 Patch18: gcc32-dwarf2-pr6436-test.patch
46 Patch19: gcc32-fde-merge-compat.patch
47 Patch20: gcc32-i386-memtest-test.patch
48 Patch21: gcc32-inline-label.patch
49 Patch22: gcc32-java-no-rpath.patch
50 Patch23: gcc32-test-rh65771.patch
51 Patch24: gcc32-test-rotate.patch
52 Patch25: %{name}-3.3.1-propolice.patch
53 BuildRequires: autoconf
54 BuildRequires: automake
55 BuildRequires: binutils >= 2.14
57 BuildRequires: fileutils >= 4.0.41
58 %{?with_ada:%{!?with_bootstrap:BuildRequires: gcc(ada)}}
59 %{?with_ada:BuildRequires: gcc-ada}
60 BuildRequires: gettext-devel
61 BuildRequires: glibc-devel >= 2.2.5-20
62 BuildRequires: perl-devel
63 BuildRequires: texinfo >= 4.1
64 BuildRequires: zlib-devel
65 Requires: binutils >= 2.14
66 Requires: cpp = %{epoch}:%{GCC_VERSION}
67 Requires: libgcc = %{epoch}:%{GCC_VERSION}
68 %{?with_ada:Provides: gcc(ada)}
69 Conflicts: glibc-devel < 2.2.5-20
70 URL: http://gcc.gnu.org/
71 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
73 %define _slibdir /%{_lib}
75 %define _slibdir64 /lib64
76 %define _libdir /usr/lib
77 %define rpmcflags -O2 -mtune=ultrasparc
81 A compiler aimed at integrating all the optimizations and features
82 necessary for a high-performance and stable development environment.
84 This package contains the C compiler and some files shared by various
85 parts of the GNU Compiler Collection. In order to use another GCC
86 compiler you will need to install the appropriate subpackage.
89 Un compilador destinado a la integración de todas las optimalizaciones
90 y características necesarias para un entorno de desarrollo eficaz y
93 Este paquete contiene el compilador de C y unos ficheros compartidos
94 por varias parted de la colección de compiladores GNU (GCC). Para usar
95 otro compilador de GCC será necesario que instale el subpaquete
99 Kompilator, posiadaj±cy du¿e mo¿liwo¶ci optymalizacyjne niezbêdne do
100 wyprodukowania szybkiego i stablinego kodu wynikowego.
102 Ten pakiet zawiera kompilator C i pliki wspó³dzielone przez ró¿ne
103 czê¶ci kolekcji kompilatorów GNU (GCC). ¯eby u¿ywaæ innego kompilatora
104 z GCC, trzeba zainstalowaæ odpowiedni podpakiet.
106 %description -l pt_BR
107 Este pacote adiciona infraestrutura básica e suporte a linguagem C ao
108 GNU Compiler Collection.
111 Summary: Shared gcc library
112 Summary(es): Biblioteca compartida de gcc
113 Summary(pl): Biblioteka gcc
114 Summary(pt_BR): Biblioteca runtime para o GCC
116 Version: %{GCC_VERSION}
119 %description -n libgcc
122 %description -n libgcc -l es
123 Biblioteca compartida de gcc.
125 %description -n libgcc -l pl
126 Biblioteka dynamiczna gcc.
128 %description -n libgcc -l pt_BR
129 Biblioteca runtime para o GCC.
132 Summary: C++ support for gcc
133 Summary(es): Soporte de C++ para gcc
134 Summary(pl): Obs³uga C++ dla gcc
135 Summary(pt_BR): Suporte C++ para o gcc
136 Group: Development/Languages
139 Requires: gcc = %{epoch}:%{GCC_VERSION}
142 This package adds C++ support to the GNU Compiler Collection. It
143 includes support for most of the current C++ specification, including
144 templates and exception handling. It does not include a standard C++
145 library, which is available separately.
147 %description c++ -l de
148 Dieses Paket enthält die C++-Unterstützung für den
149 GNU-Compiler-Collection. Es unterstützt die aktuelle
150 C++-Spezifikation, inkl. Templates und Ausnahmeverarbeitung. Eine
151 C++-Standard-Library ist nicht enthalten - sie ist getrennt
154 %description c++ -l es
155 Este paquete añade soporte de C++ al GCC (colección de compiladores
156 GNU). Ello incluye el soporte para la mayoría de la especificación
157 actual de C++, incluyendo plantillas y manejo de excepciones. No
158 incluye la biblioteca estándar de C++, la que es disponible separada.
160 %description c++ -l fr
161 Ce package ajoute un support C++ a la collection de compilateurs GNU.
162 Il comprend un support pour la plupart des spécifications actuelles de
163 C++, dont les modéles et la gestion des exceptions. Il ne comprend pas
164 une bibliothéque C++ standard, qui est disponible séparément.
166 %description c++ -l pl
167 Ten pakiet dodaje obs³ugê C++ do kompilatora gcc. Ma wsparcie dla
168 du¿ej ilo¶ci obecnych specyfikacji C++, nie zawiera natomiast
169 standardowych bibliotek C++, które s± w oddzielnym pakiecie.
171 %description c++ -l pt_BR
172 Este pacote adiciona suporte C++ para o gcc.
174 %description c++ -l tr
175 Bu paket, GNU C derleyicisine C++ desteði ekler. 'Template'ler ve
176 aykýrý durum iþleme gibi çoðu güncel C++ tanýmlarýna uyar. Standart
177 C++ kitaplýðý bu pakette yer almaz.
180 Summary: Objective C support for gcc
181 Summary(de): Objektive C-Unterstützung für gcc
182 Summary(es): Soporte de Objective C para gcc
183 Summary(fr): Gestion d'Objective C pour gcc
184 Summary(pl): Obs³uga obiektowego C dla kompilatora gcc
185 Summary(tr): gcc için Objective C desteði
186 Group: Development/Languages
189 Requires: libobjc = %{epoch}:%{GCC_VERSION}
190 Requires: gcc = %{epoch}:%{GCC_VERSION}
193 This package adds Objective C support to the GNU Compiler Collection.
194 Objective C is a object oriented derivative of the C language, mainly
195 used on systems running NeXTSTEP. This package does not include the
196 standard objective C object library.
198 %description objc -l de
199 Dieses Paket ergänzt den GNU-Compiler-Collection durch
200 Objective-C-Support. Objective C ist ein objektorientiertes Derivat
201 von C, das zur Hauptsache auf Systemen mit NeXTSTEP zum Einsatz kommt.
202 Die Standard-Objective-C-Objekt-Library ist nicht Teil des Pakets.
204 %description objc -l es
205 Este paquete añade soporte de Objective C al GCC (colección de
206 compiladores GNU). Objective C es un lenguaje orientado a objetos
207 derivado de C, principalmente usado en sistemas que funcionan bajo
208 NeXTSTEP. El paquete no incluye la biblioteca de objetos estándar de
211 %description objc -l fr
212 Ce package ajoute un support Objective C a la collection de
213 compilateurs GNU. L'Objective C est un langage orienté objetdérivé du
214 langage C, principalement utilisé sur les systèmes NeXTSTEP. Ce
215 package n'inclue pas la bibliothéque Objective C standard.
217 %description objc -l pl
218 Ten pakiet dodaje obs³ugê obiektowego C do kompilatora gcc. Obiektowe
219 C (objc) jest zorientowan± obiektowo pochodn± jêzyka C, u¿ywan±
220 g³ównie w systemach u¿ywaj±cych NeXTSTEP. W pakiecie nie ma
221 standardowej biblioteki objc (która znajduje siê w osobnym pakiecie).
223 %description objc -l tr
224 Bu paket, GNU C derleyicisine Objective C desteði ekler. Objective C,
225 C dilinin nesne yönelik bir türevidir ve NeXTSTEP altýnda çalýþan
226 sistemlerde yaygýn olarak kullanýlýr. Standart Objective C nesne
227 kitaplýðý bu pakette yer almaz.
230 Summary: Objective C Libraries
231 Summary(es): Bibliotecas de Objective C
232 Summary(pl): Biblioteki Obiektowego C
234 Version: %{GCC_VERSION}
237 %description -n libobjc
238 Objective C Libraries.
240 %description -n libobjc -l es
241 Bibliotecas de Objective C.
243 %description -n libobjc -l pl
244 Biblioteki Obiektowego C.
246 %package -n libobjc-static
247 Summary: Static Objective C Libraries
248 Summary(es): Bibliotecas estáticas de Objective C
249 Summary(pl): Statyczne Biblioteki Obiektowego C
250 Group: Development/Libraries
251 Version: %{GCC_VERSION}
252 Requires: libobjc = %{epoch}:%{GCC_VERSION}
254 %description -n libobjc-static
255 Static Objective C Libraries.
257 %description -n libobjc-static -l es
258 Bibliotecas estáticas de Objective C.
260 %description -n libobjc-static -l pl
261 Statyczne biblioteki Obiektowego C.
264 Summary: Fortran 77 support for gcc
265 Summary(es): Soporte de Fortran 77 para gcc
266 Summary(pl): Obs³uga Fortranu 77 dla gcc
267 Summary(pt_BR): Suporte Fortran 77 para o GCC
268 Group: Development/Languages/Fortran
269 Version: %{GCC_VERSION}
271 Requires: libg2c = %{epoch}:%{GCC_VERSION}
274 This package adds support for compiling Fortran 77 programs with the
277 %description g77 -l es
278 Este paquete añade soporte para compilar programas escritos en Fortran
279 77 con el compilador GNU.
281 %description g77 -l pl
282 Ten pakiet dodaje obs³ugê Fortranu 77 do kompilatora gcc. Jest
283 potrzebny do kompilowania programów pisanych w jêzyku Fortran 77.
285 %description g77 -l pt_BR
286 Suporte Fortran 77 para o GCC.
289 Summary: Fortran 77 Libraries
290 Summary(es): Bibliotecas de Fortran 77
291 Summary(pl): Biblioteki Fortranu 77
293 Version: %{GCC_VERSION}
295 %description -n libg2c
296 Fortran 77 Libraries.
298 %description -n libg2c -l es
299 Bibliotecas de Fortran 77.
301 %description -n libg2c -l pl
302 Biblioteki Fortranu 77.
304 %package -n libg2c-static
305 Summary: Static Fortran 77 Libraries
306 Summary(es): Bibliotecas estáticas de Fortran 77
307 Summary(pl): Statyczne Biblioteki Fortranu 77
308 Group: Development/Libraries
309 Version: %{GCC_VERSION}
310 Requires: libg2c = %{epoch}:%{GCC_VERSION}
312 %description -n libg2c-static
313 Static Fortran 77 Libraries.
315 %description -n libg2c -l es
316 Bibliotecas estáticas de Fortran 77.
318 %description -n libg2c-static -l pl
319 Statyczne biblioteki Fortranu 77.
322 Summary: Java support for gcc
323 Summary(es): Soporte de Java para gcc
324 Summary(pl): Obs³uga Javy dla gcc
325 Group: Development/Languages/Java
326 Version: %{GCC_VERSION}
327 Requires: %{name} = %{epoch}:%{version}
328 Requires: libgcj >= 3.0.0
329 Requires: libgcj-devel >= 3.0.0
330 Requires: java-shared
331 Provides: gcj = %{epoch}:%{GCC_VERSION}-%{release}
334 This package adds experimental support for compiling Java(tm) programs
335 and bytecode into native code. To use this you will also need the
338 %description java -l es
339 Este paquete añade soporte experimental para compilar programas
340 Java(tm) y su bytecode en código nativo. Para usarlo también va a
341 necesitar el paquete libgcj.
343 %description java -l pl
344 Wsparcie dla kompilowania programów Java(tm) zrówno do bajt-kodu jak i
345 do natywnego kodu. Dodatkowo wymagany jest pakiet libgcj, aby mo¿na
346 by³o przeprowadziæ kompilacjê.
349 Summary: Shared java tools
350 Summary(es): Herramientas compartidas de Java
351 Summary(pl): Wspó³dzielone narzêdzia javy
352 Group: Development/Languages/Java
353 Version: %{GCC_VERSION}
354 Provides: jar = %{epoch}:%{GCC_VERSION}-%{release}
355 Provides: java-shared
357 Obsoletes: java-shared
360 %description java-tools
361 This package contains tools that are common for every Java(tm)
362 implementation, such as rmic or jar.
364 %description java-tools -l es
365 Este paquete contiene herramientas que son comunes para cada
366 implementación de Java(tm), como rmic o jar.
368 %description java-tools -l pl
369 Pakiet ten zawiera narzêdzia wspólne dla ka¿dej implementacji
370 Javy(tm), takie jak rmic czy jar.
373 Summary: Java Class Libraries
374 Summary(es): Bibliotecas de clases de Java
375 Summary(pl): Biblioteki Klas Javy
377 Version: %{GCC_VERSION}
381 %description -n libgcj
382 Java Class Libraries.
384 %description -n libgcj -l es
385 Bibliotecas de clases de Java.
387 %description -n libgcj -l pl
388 Biblioteki Klas Javy.
390 %package -n libgcj-devel
391 Summary: Development files for Java Class Libraries
392 Summary(es): Ficheros de desarrollo para las bibliotecas de clases de Java
393 Summary(pl): Pliki nag³ówkowe dla Bibliotek Klas Javy
394 Group: Development/Libraries
395 Version: %{GCC_VERSION}
396 Requires: libgcj = %{epoch}:%{GCC_VERSION}
397 Requires: %{name}-java
398 Obsoletes: libgcj3-devel
400 %description -n libgcj-devel
401 Development files for Java Class Libraries.
403 %description -n libgcj-devel -l es
404 Ficheros de desarrollo para las bibliotecas de clases de Java.
406 %description -n libgcj-devel -l pl
407 Pliki nag³ówkowe dla Bibliotek Klas Javy.
409 %package -n libgcj-static
410 Summary: Static Java Class Libraries
411 Summary(es): Bibliotecas estáticas de clases de Java
412 Summary(pl): Statyczne Biblioteki Klas Javy
413 Group: Development/Libraries
414 Version: %{GCC_VERSION}
415 Requires: libstdc++-devel = %{epoch}:%{GCC_VERSION}
416 Requires: libgcj-devel = %{epoch}:%{GCC_VERSION}
418 %description -n libgcj-static
419 Static Java Class Libraries.
421 %description -n libgcj-static -l es
422 Bibliotecas estáticas de clases de Java.
424 %description -n libgcj-static -l pl
425 Statyczne Biblioteki Klas Javy.
427 %package -n libstdc++
428 Summary: GNU c++ library
429 Summary(es): Biblioteca C++ de GNU
430 Summary(pl): Biblioteki GNU C++
431 Summary(pt_BR): Biblioteca C++ GNU
433 Version: %{GCC_VERSION}
435 Obsoletes: libstdc++3
437 %description -n libstdc++
438 This is the GNU implementation of the standard C++ libraries, along
439 with additional GNU tools. This package includes the shared libraries
440 necessary to run C++ applications.
442 %description -n libstdc++ -l de
443 Dies ist die GNU-Implementierung der Standard-C++-Libraries mit
444 weiteren GNU-Tools. Dieses Paket enthält die zum Ausführen von
445 C++-Anwendungen erforderlichen gemeinsam genutzten Libraries.
447 %description -n libstdc++ -l es
448 Este es el soporte de las bibliotecas padrón del C++, junto con
449 herramientas GNU adicionales. El paquete incluye las bibliotecas
450 compartidas necesarias para ejecutar aplicaciones C++.
452 %description -n libstdc++ -l fr
453 Ceci est l'implémentation GNU des librairies C++ standard, ainsi que
454 des outils GNU supplémentaires. Ce package comprend les librairies
455 partagées nécessaires à l'exécution d'application C++.
457 %description -n libstdc++ -l pl
458 Pakiet ten zawiera biblioteki bêd±ce implementacj± standardowych
459 bibliotek C++. Znajduj± siê w nim biblioteki dynamiczne niezbêdne do
460 uruchomienia aplikacji napisanych w C++.
462 %description -n libstdc++ -l pt_BR
463 Este pacote é uma implementação da biblioteca padrão C++ v3, um
464 subconjunto do padrão ISO 14882.
466 %description -n libstdc++ -l tr
467 Bu paket, standart C++ kitaplýklarýnýn GNU gerçeklemesidir ve C++
468 uygulamalarýnýn koþturulmasý için gerekli kitaplýklarý içerir.
470 %package -n libstdc++-devel
471 Summary: Header files and documentation for C++ development
472 Summary(de): Header-Dateien zur Entwicklung mit C++
473 Summary(es): Ficheros de cabecera y documentación para desarrollo C++
474 Summary(fr): Fichiers d'en-tête et biblitothèques pour développer en C++
475 Summary(pl): Pliki nag³ówkowe i dokumentacja do biblioteki standardowej C++
476 Summary(pt_BR): Arquivos de inclusão e bibliotecas para o desenvolvimento em C++
477 Summary(tr): C++ ile program geliþtirmek için gerekli dosyalar
478 Group: Development/Libraries
479 Version: %{GCC_VERSION}
480 Requires: libstdc++ = %{epoch}:%{GCC_VERSION}
481 Requires: %{name}-c++ = %{epoch}:%{GCC_VERSION}
482 Obsoletes: libg++-devel
483 Obsoletes: libstdc++3-devel
485 %description -n libstdc++-devel
486 This is the GNU implementation of the standard C++ libraries. This
487 package includes the header files needed for C++ development and
488 library documentation.
490 %description -n libstdc++-devel -l es
491 Este es el soporte de las bibliotecas padrón del lenguaje C++. Este
492 paquete incluye los archivos de inclusión y bibliotecas necesarios
493 para desarrollo de programas en lenguaje C++.
495 %description -n libstdc++-devel -l pl
496 Pakiet ten zawiera biblioteki bêd±ce implementacj± standardowych
497 bibliotek C++. Znajduj± siê w nim pliki nag³ówkowe wykorzystywane przy
498 programowaniu w jêzyku C++ oraz dokumentacja biblioteki standardowej.
500 %description -n libstdc++-devel -l pt_BR
501 Este pacote inclui os arquivos de inclusão e bibliotecas necessárias
502 para desenvolvimento de programas C++.
504 %package -n libstdc++-static
505 Summary: Static C++ standard library
506 Summary(es): Biblioteca estándar estática de C++
507 Summary(pl): Statyczna biblioteka standardowa C++
508 Group: Development/Libraries
509 Version: %{GCC_VERSION}
510 Requires: libstdc++-devel = %{epoch}:%{GCC_VERSION}
512 %description -n libstdc++-static
513 Static C++ standard library.
515 %description -n libstdc++-static -l es
516 Biblioteca estándar estática de C++.
518 %description -n libstdc++-static -l pl
519 Statycza biblioteka standardowa C++.
522 Summary: Foreign Function Interface library
523 Summary(es): Biblioteca de interfaz de funciones ajenas
524 Summary(pl): Biblioteka zewnêtrznych wywo³añ funkcji
526 Version: %{GCC_VERSION}
528 %description -n libffi
529 The libffi library provides a portable, high level programming
530 interface to various calling conventions. This allows a programmer to
531 call any function specified by a call interface description at run
534 %description -n libffi -l es
535 La biblioteca libffi provee una interfaz portable de programación de
536 alto nivel para varias convenciones de llamada. Ello permite que un
537 programador llame una función cualquiera especificada por una
538 descripción de interfaz de llamada en el tiempo de ejecución.
540 %description -n libffi -l pl
541 Biblioteka libffi dostarcza przno¶nego, wysokopoziomowego
542 miêdzymordzia do ró¿nych konwencji wywo³añ funkcji. Pozwala to
543 programi¶cie wywo³ywaæ dowolne funkcje podaj±c konwencjê wywo³ania w
546 %package -n libffi-devel
547 Summary: Development files for Foreign Function Interface library
548 Summary(es): Ficheros de desarrollo para libffi
549 Summary(pl): Pliki nag³ówkowe dla libffi
550 Group: Development/Libraries
551 Version: %{GCC_VERSION}
552 Requires: libffi = %{epoch}:%{GCC_VERSION}
554 %description -n libffi-devel
555 Development files for Foreign Function Interface library.
557 %description -n libffi-devel -l es
558 Ficheros de desarrollo para libffi.
560 %description -n libffi-devel -l pl
561 Pliki nag³ówkowe dla libffi.
563 %package -n libffi-static
564 Summary: Static Foreign Function Interface library
565 Summary(es): Biblioteca libffi estática
566 Summary(pl): Statyczna biblioteka libffi
567 Group: Development/Libraries
568 Version: %{GCC_VERSION}
569 Requires: libffi-devel = %{epoch}:%{GCC_VERSION}
571 %description -n libffi-static
572 Static Foreign Function Interface library.
574 %description -n libffi-static -l es
575 Biblioteca libffi estática.
577 %description -n libffi-static -l pl
578 Statyczna biblioteka libffi.
581 Summary: Ada support for gcc
582 Summary(es): Soporte de Ada para gcc
583 Summary(pl): Obs³uga Ady do gcc
584 Group: Development/Languages
585 Version: %{GCC_VERSION}
586 Requires: libgnat = %{epoch}:%{GCC_VERSION}
587 Requires: gcc = %{epoch}:%{GCC_VERSION}
589 Obsoletes: gnat-devel
592 This package adds experimental support for compiling Ada programs.
594 %description ada -l es
595 Este paquete añade soporte experimental para compilar programas en
598 %description ada -l pl
599 Ten pakiet dodaje eksperymentalne wsparcie dla kompilacji programów w
603 Summary: Ada standard libraries
604 Summary(es): Bibliotecas estándares de Ada
605 Summary(pl): Biblioteki standardowe dla Ady
607 Version: %{GCC_VERSION}
611 %description -n libgnat
612 This package contains shared libraries needed to run programs written
615 %description -n libgnat -l es
616 Este paquete contiene las bibliotecas compartidas necesarias para
617 ejecutar programas escritos en Ada.
619 %description -n libgnat -l pl
620 Ten pakiet zawiera biblioteki potrzebne do uruchamiania programów
623 %package -n libgnat-static
624 Summary: Static Ada standard libraries
625 Summary(pl): Statyczne biblioteki standardowe dla Ady
627 Version: %{GCC_VERSION}
628 Obsoletes: gnat-static
630 %description -n libgnat-static
631 This package contains static libraries for programs written in Ada.
633 %description -n libgnat-static -l pl
634 Ten pakiet zawiera biblioteki statyczne dla programów napisanych w
638 Summary: Ksi support for gcc
639 Summary(es): Soporte de Ksi para gcc
640 Summary(pl): Obs³uga Ksi dla gcc
641 Version: %{GCC_VERSION}.%{KSI_VERSION}
642 Group: Development/Languages
643 Requires: gcc = %{epoch}:%{GCC_VERSION}
646 This package adds experimental support for compiling Ksi programs into
647 native code. You proabably don't need it, unless your are going to
648 develop a compiler using Ksi as intermediate representation or you are
649 using such compiler (like Gont).
651 %description ksi -l es
652 Este paquete añade soporte experimental para compilar programas de Ksi
653 en código nativo. Probablemento no lo necesitará, a menos que vaya a
654 desarrollar un compilador que use Ksi como representación intermedia o
655 use tal compilador (como Gont).
657 %description ksi -l pl
658 Ten pakiet dodaje eksperymentalne wsparcie dla kompilacji programów w
659 Ksi do kodu maszynowego. Prawdopodobnie nie potrzebujesz go, chyba ¿e
660 zamierzasz pisaæ kompilator u¿ywaj±cy Ksi jako reprezentacji
661 po¶rednicz±cej, lub u¿ywasz takiego kompilatora (jak Gont).
664 Summary: The C Pre Processor
665 Summary(es): El preprocesador de C
666 Summary(pl): Preprocesor C
667 Summary(pt_BR): Preprocessador para a linguagem C
668 Group: Development/Languages
669 Version: %{GCC_VERSION}
674 The C preprocessor is a "macro processor" that is used automatically
675 by the C compiler to transform your program before actual compilation.
676 It is called a macro processor because it allows you to define
677 "macros", which are brief abbreviations for longer constructs.
679 The C preprocessor provides four separate facilities that you can use
682 - Inclusion of header files. These are files of declarations that can
683 be substituted into your program.
684 - Macro expansion. You can define "macros", which are abbreviations
685 for arbitrary fragments of C code, and then the C preprocessor will
686 replace the macros with their definitions throughout the program.
687 - Conditional compilation. Using special preprocessing directives, you
688 can include or exclude parts of the program according to various
690 - Line control. If you use a program to combine or rearrange source
691 files into an intermediate file which is then compiled, you can use
692 line control to inform the compiler of where each source line
693 originally came from.
695 %description -n cpp -l es
696 El preprocesador de C es un "procesador de macros" que es usado
697 automáticamente por el compilador C para transformar su programa antes
698 de que éste se actualmente compile. Se llama procesador de macros
699 porque permite definir "macros", los que son abreviaciones concisas
700 para construcciones más largas.
702 El preprocesador C provee cuatro cualidadedes distintas que puede usar
705 - Inclusión de ficheros de cabecera. Éstos son ficheros de
706 declaraciones que pueden incorporarse a su programa.
707 - Expansión de macros. Puede definir "macros", los que son
708 abreviaciones para fragmentos arbitrarios de código C, y a lo largo
709 del programa el preprocesador sustituirá los macros con sus
711 - Compilación condicional. Usando especiales directivas del preproceso
712 puede incluir o excluir partes del programa según varias condiciones.
713 - Control de líneas. Si usa un programa para combinar o reorganizar el
714 código fuente en un fichero intermedio que luego es compilado, puede
715 usar control de líneas para informar el compilador de dónde origina
718 %description -n cpp -l pl
719 Przeprocesor C jest "makro procesorem" który jest automatycznie
720 u¿ywany przez kompilator C do obróbki kompilowanego programu przed
721 w³a¶ciw± kompilacj±. Jest on nazywany makroprocesorem, poniewa¿
722 umo¿liwia definiowanie i rozwijanie makr umo¿liwiaj±cych skracanie
723 d³ugich konstrukcji w jêzyku C.
725 Preprocesor C umo¿liwia wykonywanie czterech ró¿nych typów operacji:
727 - Do³±czanie plików (np. nag³ówkowych). Wstawia pliki w miejscu
728 deklaracji polecenia do³±czenia innego pliku.
729 - Rozwijanie makr. Mo¿na definiowaæ "makra" nadaj±c im identyfikatory,
730 których pó¼niejsze u¿ycie powoduje podczas rozwijania podmienienie
731 indentyfikatora deklarowan± wcze¶niej warto¶ci±.
732 - Kompilacja warunkowa. W zale¿no¶ci od obecno¶ci symboli i dyrektyw w
733 ¶rodowisku preprocesora s± w³±czane warunkowo, b±d¼ nie, pewne
734 fragmenty obrabianego strumienia tekstów.
735 - Kontrola linii ¼ród³a. Niezale¿nie od tego jakim przeobra¿eniom
736 podlega wynikowy strumieñ danych w wyniku rozwijania makr i do³±czania
737 s± zapamiêtywane informacje o tym, której linii pliku ¼ród³owego
738 odpowiada fragment pliku wynikowego.
740 %description -n cpp -l pt_BR
741 O preprocessador C é um "processador de macros", que é utilizado pelo
742 compilador C para fazer algumas modificações no seu programa, antes da
743 compilação em si. Ele é chamado de "processador de macros" porque
744 permite a você definir "macros", que são abreviações para construções
747 O preprocessador C fornece quatro funcionalidades básicas: inclusão de
748 arquivos de cabeçalho; expansão de macros; compilação condicional; e
749 controle da numeração das linhas do programa.
752 %setup -q -a1 -n %{name}-%{GCC_VERSION}
753 mv ksi-%{KSI_VERSION} gcc/ksi
778 %{?with_pp:%patch25 -p1}
780 # because we distribute modified version of gcc...
781 perl -pi -e 's/(version.*)";/$1 (PLD Linux)";/' gcc/version.c
782 perl -pi -e 's@(bug_report_url.*<URL:).*";@$1http://bugs.pld-linux.org/>";@' gcc/version.c
785 # cd gcc && autoconf; cd ..
786 # autoconf is not needed!
787 cp /usr/share/automake/config.sub .
789 rm -rf obj-%{_target_platform} && install -d obj-%{_target_platform} && cd obj-%{_target_platform}
791 CFLAGS="%{rpmcflags}" \
792 CXXFLAGS="%{rpmcflags}" \
793 TEXCONFIG=false ../configure \
794 --prefix=%{_prefix} \
795 --libdir=%{_libdir} \
796 --libexecdir=%{_libexecdir} \
797 --infodir=%{_infodir} \
798 --mandir=%{_mandir} \
800 --enable-threads=posix \
801 --enable-__cxa_atexit \
802 --enable-languages="c,c++,f77%{?with_objc:,objc}%{?with_ada:,ada}%{?with_java:,java},ksi" \
814 --with-slibdir=%{_slibdir} \
818 PATH=$PATH:/sbin:%{_sbindir}
821 %{__make} -C obj-%{_target_platform} bootstrap-lean \
822 LDFLAGS_FOR_TARGET="%{rpmldflags}" \
827 %{__make} -C obj-%{_target_platform}/gcc gnatlib gnattools gnatlib-shared \
828 LDFLAGS_FOR_TARGET="%{rpmldflags}" \
834 rm -rf $RPM_BUILD_ROOT
835 install -d $RPM_BUILD_ROOT{/lib,%{_datadir},%{_infodir}}
837 cd obj-%{_target_platform}
838 PATH=$PATH:/sbin:%{_sbindir}
842 infodir=%{_infodir} \
843 DESTDIR=$RPM_BUILD_ROOT
846 ln -f $RPM_BUILD_ROOT%{_bindir}/sparc64-pld-linux-gcc \
847 $RPM_BUILD_ROOT%{_bindir}/sparc-pld-linux-gcc
850 ln -sf gcc $RPM_BUILD_ROOT%{_bindir}/cc
851 echo ".so gcc.1" > $RPM_BUILD_ROOT%{_mandir}/man1/cc.1
853 ln -sf g77 $RPM_BUILD_ROOT%{_bindir}/f77
854 echo ".so g77.1" > $RPM_BUILD_ROOT%{_mandir}/man1/f77.1
857 # move ada shared libraries to proper place...
858 mv $RPM_BUILD_ROOT%{_libdir}/gcc-lib/*/*/adalib/*.so.1 \
859 $RPM_BUILD_ROOT%{_libdir}/
860 # check if symlink to be made is valid
861 test -f $RPM_BUILD_ROOT%{_libdir}/libgnat-3.15.so.1
862 ln -sf libgnat-3.15.so.1 $RPM_BUILD_ROOT%{_libdir}/libgnat-3.15.so
863 ln -sf libgnarl-3.15.so.1 $RPM_BUILD_ROOT%{_libdir}/libgnarl-3.15.so
864 ln -sf libgnat-3.15.so $RPM_BUILD_ROOT%{_libdir}/libgnat.so
865 ln -sf libgnarl-3.15.so $RPM_BUILD_ROOT%{_libdir}/libgnarl.so
868 ln -sf %{_bindir}/cpp $RPM_BUILD_ROOT/lib/cpp
874 cp -f libjava/doc/cni.sgml libjava/READ* java-doc
875 cp -f fastjar/README java-doc/README.fastjar
876 cp -f libffi/README java-doc/README.libffi
877 cp -f libffi/LICENSE java-doc/LICENSE.libffi
881 cp -f libobjc/README gcc/objc/README.libobjc
884 # avoid -L poisoning in *.la - there should be only -L%{_libdir}/gcc-lib/*/%{version}
885 for f in libstdc++.la libsupc++.la %{?with_java:libgcj.la} ; do
886 perl -pi -e 's@-L[^ ]*[acs.] @@g' $RPM_BUILD_ROOT%{_libdir}/$f
888 # normalize libdir, to avoid propagation of unnecessary RPATHs by libtool
889 for f in libstdc++.la libsupc++.la libg2c.la \
890 %{?with_java:libgcj.la lib-org-w3c-dom.la lib-org-xml-sax.la libffi.la} \
891 %{?with_objc:libobjc.la}; do
892 perl -pi -e "s@^libdir='.*@libdir='/usr/%{_lib}'@" $RPM_BUILD_ROOT%{_libdir}/$f
895 bzip2 -dc %{SOURCE2} | tar xf - -C $RPM_BUILD_ROOT%{_mandir}
896 mv -f $RPM_BUILD_ROOT%{_mandir}/ja/man1/{cccp,cpp}.1
898 # include/ contains install-tools/include/* and headers that were fixed up
899 # by fixincludes, we don't want former
900 gccdir=$(echo $RPM_BUILD_ROOT%{_libdir}/gcc-lib/*/*/)
902 # we have to save these however
903 mv -f $gccdir/include/{%{?with_objc:objc,}g2c.h,syslimits.h%{?with_java:,gcj}} $gccdir/tmp
904 rm -rf $gccdir/include
905 mv -f $gccdir/tmp $gccdir/include
906 cp $gccdir/install-tools/include/*.h $gccdir/include
907 # but we don't want anything more from install-tools
908 rm -rf $gccdir/install-tools
911 %find_lang libstdc\+\+
914 rm -rf $RPM_BUILD_ROOT
917 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
920 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
923 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
926 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
929 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
932 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
935 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
938 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
941 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
944 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
946 %post -p /sbin/ldconfig -n libgcc
947 %postun -p /sbin/ldconfig -n libgcc
948 %post -p /sbin/ldconfig -n libstdc++
949 %postun -p /sbin/ldconfig -n libstdc++
950 %post -p /sbin/ldconfig -n libobjc
951 %postun -p /sbin/ldconfig -n libobjc
952 %post -p /sbin/ldconfig -n libg2c
953 %postun -p /sbin/ldconfig -n libg2c
954 %post -p /sbin/ldconfig -n libgcj
955 %postun -p /sbin/ldconfig -n libgcj
956 %post -p /sbin/ldconfig -n libgnat
957 %postun -p /sbin/ldconfig -n libgnat
958 %post -p /sbin/ldconfig -n libffi
959 %postun -p /sbin/ldconfig -n libffi
961 %files -f %{name}.lang
962 %defattr(644,root,root,755)
964 %dir %{_libdir}/gcc-lib
965 %dir %{_libdir}/gcc-lib/*
966 %dir %{_libdir}/gcc-lib/*/*
967 %dir %{_libdir}/gcc-lib/*/*/include
968 %attr(755,root,root) %{_bindir}/*-gcc*
969 %attr(755,root,root) %{_bindir}/gcc
970 %attr(755,root,root) %{_bindir}/gccbug
971 %attr(755,root,root) %{_bindir}/gcov
972 %attr(755,root,root) %{_bindir}/cc
974 %{_mandir}/man1/gcc.1*
975 %{_mandir}/man1/cc.1*
976 %{_mandir}/man1/gcov.1*
977 %lang(fr) %{_mandir}/fr/man1/gcc.1*
978 %lang(ja) %{_mandir}/ja/man1/gcc.1*
981 %attr(755,root,root) %{_slibdir}*/lib*.so
982 %{_libdir}/gcc-lib/*/*/libgcc.a
983 %{_libdir}/gcc-lib/*/*/libgcc_eh.a
984 %{_libdir}/gcc-lib/*/*/specs
985 %attr(644,root,root) %{_libdir}*/gcc-lib/*/*/crt*.o
987 %{_libdir}/gcc-lib/*/*/*/libgcc.a
988 %{_libdir}/gcc-lib/*/*/*/libgcc_eh.a
989 %attr(644,root,root) %{_libdir}*/gcc-lib/*/*/*/crt*.o
992 %attr(644,root,root) %{_libdir}/gcc-lib/*/*/ecrt*.o
993 %attr(644,root,root) %{_libdir}/gcc-lib/*/*/ncrt*.o
994 %{_libdir}/gcc-lib/*/*/nof
997 %attr(755,root,root) %{_libdir}/gcc-lib/*/*/cc1
998 %attr(755,root,root) %{_libdir}/gcc-lib/*/*/collect2
1000 %{_libdir}/gcc-lib/*/*/include/*.h
1001 %exclude %{_libdir}/gcc-lib/*/*/include/g2c.h
1004 %defattr(644,root,root,755)
1005 %attr(755,root,root) %{_slibdir}*/lib*.so.*
1008 %defattr(644,root,root,755)
1009 %attr(755,root,root) %{_bindir}/g++
1010 %attr(755,root,root) %{_bindir}/*-g++
1011 %attr(755,root,root) %{_bindir}/c++
1012 %attr(755,root,root) %{_bindir}/*-c++
1013 %attr(755,root,root) %{_libdir}/gcc-lib/*/*/cc1plus
1014 %{_libdir}*/libsupc++.la
1016 %{_libdir}/nof/libsupc++.la
1017 %{_libdir}/nof/libsupc++.a
1019 %{_libdir}*/libsupc++.a
1020 %{_mandir}/man1/g++.1*
1021 %lang(ja) %{_mandir}/ja/man1/g++.1*
1023 %files -n libstdc++ -f libstdc++.lang
1024 %defattr(644,root,root,755)
1025 %attr(755,root,root) %{_libdir}*/libstdc++.so.*.*.*
1027 %attr(755,root,root) %{_libdir}/nof/libstdc++.so.*.*.*
1030 %files -n libstdc++-devel
1031 %defattr(644,root,root,755)
1032 %doc libstdc++-v3/docs/html
1033 %dir %{_includedir}/c++
1034 %{_includedir}/c++/%{GCC_VERSION}
1035 %attr(755,root,root) %{_libdir}*/libstdc++.so
1036 %{_libdir}*/libstdc++.la
1038 %attr(755,root,root) %{_libdir}/nof/libstdc++.so
1039 %{_libdir}/nof/libstdc++.la
1042 %files -n libstdc++-static
1043 %defattr(644,root,root,755)
1044 %{_libdir}*/libstdc++.a
1046 %{_libdir}/nof/libstdc++.a
1051 %defattr(644,root,root,755)
1053 %attr(755,root,root) %{_libdir}/gcc-lib/*/*/cc1obj
1054 %attr(755,root,root) %{_libdir}*/libobjc.so
1055 %{_libdir}*/libobjc.la
1057 %attr(755,root,root) %{_libdir}/nof/libobjc.so
1058 %{_libdir}/nof/libobjc.la
1060 %{_libdir}/gcc-lib/*/*/include/objc
1063 %defattr(644,root,root,755)
1064 %attr(755,root,root) %{_libdir}*/libobjc.so.*.*.*
1066 %attr(755,root,root) %{_libdir}/nof/libobjc.so.*.*.*
1069 %files -n libobjc-static
1070 %defattr(644,root,root,755)
1071 %{_libdir}*/libobjc.a
1073 %{_libdir}/nof/libobjc.a
1078 %defattr(644,root,root,755)
1079 %attr(755,root,root) %{_bindir}/g77
1080 %attr(755,root,root) %{_bindir}/f77
1082 %attr(755,root,root) %{_libdir}/gcc-lib/*/*/f771
1083 %{_libdir}*/libfrtbegin.a
1084 %{_libdir}*/libg2c.la
1085 %attr(755,root,root) %{_libdir}*/libg2c.so
1087 %{_libdir}/nof/libfrtbegin.a
1088 %{_libdir}/nof/libg2c.la
1089 %attr(755,root,root) %{_libdir}/nof/libg2c.so
1091 %{_libdir}/gcc-lib/*/*/include/g2c.h
1092 %{_mandir}/man1/g77.1*
1093 %{_mandir}/man1/f77.1*
1094 %lang(ja) %{_mandir}/ja/man1/g77.1*
1095 %lang(ja) %{_mandir}/ja/man1/f77.1*
1098 %defattr(644,root,root,755)
1099 %attr(755,root,root) %{_libdir}*/libg2c.so.*.*.*
1101 %attr(755,root,root) %{_libdir}/nof/libg2c.so.*.*.*
1104 %files -n libg2c-static
1105 %defattr(644,root,root,755)
1106 %{_libdir}*/libg2c.a
1108 %{_libdir}/nof/libg2c.a
1113 %defattr(644,root,root,755)
1115 %attr(755,root,root) %{_bindir}/gcj*
1116 %attr(755,root,root) %{_bindir}/gij
1117 %attr(755,root,root) %{_bindir}/jcf-dump
1118 %attr(755,root,root) %{_bindir}/jv-*
1119 %attr(755,root,root) %{_bindir}/grepjar
1120 %attr(755,root,root) %{_bindir}/*-gcj
1121 %attr(755,root,root) %{_libdir}/gcc-lib/*/*/jc1
1122 %attr(755,root,root) %{_libdir}/gcc-lib/*/*/jvgenmain
1124 %{_mandir}/man1/jcf-*
1125 %{_mandir}/man1/jv-*
1126 %{_mandir}/man1/gij*
1127 %{_mandir}/man1/gcj*
1128 %{_mandir}/man1/grepjar*
1131 %defattr(644,root,root,755)
1132 %attr(755,root,root) %{_bindir}/rmi*
1133 %attr(755,root,root) %{_bindir}/jar
1134 %{_mandir}/man1/rmi*
1135 %{_mandir}/man1/jar*
1136 %{_infodir}/fastjar*
1139 %defattr(644,root,root,755)
1140 %attr(755,root,root) %{_bindir}/addr2name.awk
1141 %attr(755,root,root) %{_libdir}/lib*cj*.so.*.*.*
1142 %attr(755,root,root) %{_libdir}/lib-org*.so.*.*.*
1144 %attr(755,root,root) %{_libdir}/nof/lib*cj*.so.*
1147 %files -n libgcj-devel
1148 %defattr(644,root,root,755)
1150 %{_includedir}/javax
1151 #%%{_includedir}/org
1154 %{_includedir}/gnu/*
1155 %{_libdir}/gcc-lib/*/*/include/gcj
1156 %dir %{_libdir}/security
1157 %{_libdir}/security/*
1158 %dir %{_datadir}/java
1159 %{_datadir}/java/libgcj*.jar
1160 %{_libdir}/lib*cj.spec
1161 %{_libdir}/lib*cj*.la
1162 %attr(755,root,root) %{_libdir}/lib*cj*.so
1163 %attr(755,root,root) %{_libdir}/lib-org-*.so
1164 %{_libdir}/lib-org-*.la
1166 %{_libdir}/nof/lib*cj*.la
1167 %attr(755,root,root) %{_libdir}/nof/lib*cj*.so
1170 %files -n libgcj-static
1171 %defattr(644,root,root,755)
1172 %{_libdir}/lib*cj*.a
1173 %{_libdir}/lib-org-*.a
1175 %{_libdir}/nof/lib*cj*.a
1179 %defattr(644,root,root,755)
1180 %attr(755,root,root) %{_libdir}/libffi-*.so
1182 %files -n libffi-devel
1183 %defattr(644,root,root,755)
1184 %attr(755,root,root) %{_libdir}/libffi.so
1185 %{_libdir}/libffi.la
1188 %files -n libffi-static
1189 %defattr(644,root,root,755)
1195 %defattr(644,root,root,755)
1196 %attr(755,root,root) %{_libdir}/gcc-lib/*/*/gnat1
1197 %{_libdir}/gcc-lib/*/*/adainclude
1198 %dir %{_libdir}/gcc-lib/*/*/adalib
1199 %{_libdir}/gcc-lib/*/*/adalib/*.ali
1201 %{_libdir}/gcc-lib/*/*/adalib/libgmem.a
1203 %{_libdir}/gcc-lib/*/*/adalib/Makefile.adalib
1204 %attr(755,root,root) %{_bindir}/gnat*
1206 %attr(755,root,root) %{_libdir}/libgnat*.so
1207 %attr(755,root,root) %{_libdir}/libgnarl*.so
1210 %defattr(644,root,root,755)
1211 %attr(755,root,root) %{_libdir}/libgna*.so.1
1213 %files -n libgnat-static
1214 %defattr(644,root,root,755)
1215 %{_libdir}/gcc-lib/*/*/adalib/libgna*.a
1219 %defattr(644,root,root,755)
1220 %doc gcc/ksi/README gcc/ksi/NEWS gcc/ksi/t/*.{ksi,c,foo}
1222 %attr(755,root,root) %{_libdir}/gcc-lib/*/*/ksi1
1225 %defattr(644,root,root,755)
1226 %attr(755,root,root) /lib/cpp
1227 %attr(755,root,root) %{_bindir}/cpp
1228 %{_mandir}/man1/cpp.1*
1229 %lang(ja) %{_mandir}/ja/man1/cpp.1*