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)
8 %define DASHED_SNAP %{nil}
9 %define SNAP %(echo %{DASHED_SNAP} | sed -e "s#-##g")
10 %define GCC_VERSION 3.3.3
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-%{GCC_VERSION}/%{name}-%{GCC_VERSION}.tar.bz2
24 # Source0-md5: 3c6cfd9fcd180481063b4058cf6faff2
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}-paths.patch
31 Patch2: %{name}-nolocalefiles.patch
32 Patch3: %{name}-ada-link-new-libgnat.patch
33 Patch4: %{name}-nodebug.patch
34 Patch5: %{name}-cse-find_best_addr.patch
35 # -- stolen patches from RH --
36 Patch10: gcc32-ada-link.patch
37 Patch11: gcc32-boehm-gc-libs.patch
38 Patch12: gcc32-bogus-inline.patch
39 Patch13: gcc32-c++-nrv-test.patch
40 Patch14: gcc32-c++-tsubst-asm.patch
41 Patch15: gcc32-debug-pr7241.patch
42 Patch16: gcc32-duplicate-decl.patch
43 Patch17: gcc32-dwarf2-pr6381.patch
44 Patch18: gcc32-dwarf2-pr6436-test.patch
45 Patch19: gcc32-fde-merge-compat.patch
46 Patch20: gcc32-i386-memtest-test.patch
47 Patch21: gcc32-inline-label.patch
48 Patch22: gcc32-java-no-rpath.patch
49 Patch23: gcc32-test-rh65771.patch
50 Patch24: gcc32-test-rotate.patch
51 BuildRequires: autoconf
52 BuildRequires: automake
53 BuildRequires: binutils >= 2.14
55 BuildRequires: fileutils >= 4.0.41
56 %{?with_ada:%{!?with_bootstrap:BuildRequires: gcc(ada)}}
57 %{?with_ada:BuildRequires: gcc-ada}
58 BuildRequires: gettext-devel
59 BuildRequires: glibc-devel >= 2.2.5-20
60 BuildRequires: perl-devel
61 BuildRequires: texinfo >= 4.1
62 BuildRequires: zlib-devel
63 Requires: binutils >= 2.14
64 Requires: cpp = %{epoch}:%{GCC_VERSION}
65 Requires: libgcc = %{epoch}:%{GCC_VERSION}
66 %{?with_ada:Provides: gcc(ada)}
67 Conflicts: glibc-devel < 2.2.5-20
68 URL: http://gcc.gnu.org/
69 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
71 %define _slibdir /%{_lib}
73 %define _slibdir64 /lib64
74 %define _libdir /usr/lib
75 %define rpmcflags -O2 -mtune=ultrasparc
79 A compiler aimed at integrating all the optimizations and features
80 necessary for a high-performance and stable development environment.
82 This package contains the C compiler and some files shared by various
83 parts of the GNU Compiler Collection. In order to use another GCC
84 compiler you will need to install the appropriate subpackage.
87 Un compilador destinado a la integración de todas las optimalizaciones
88 y características necesarias para un entorno de desarrollo eficaz y
91 Este paquete contiene el compilador de C y unos ficheros compartidos
92 por varias parted de la colección de compiladores GNU (GCC). Para usar
93 otro compilador de GCC será necesario que instale el subpaquete
97 Kompilator, posiadaj±cy du¿e mo¿liwo¶ci optymalizacyjne niezbêdne do
98 wyprodukowania szybkiego i stablinego kodu wynikowego.
100 Ten pakiet zawiera kompilator C i pliki wspó³dzielone przez ró¿ne
101 czê¶ci kolekcji kompilatorów GNU (GCC). ¯eby u¿ywaæ innego kompilatora
102 z GCC, trzeba zainstalowaæ odpowiedni podpakiet.
104 %description -l pt_BR
105 Este pacote adiciona infraestrutura básica e suporte a linguagem C ao
106 GNU Compiler Collection.
109 Summary: Shared gcc library
110 Summary(es): Biblioteca compartida de gcc
111 Summary(pl): Biblioteka gcc
112 Summary(pt_BR): Biblioteca runtime para o GCC
114 Version: %{GCC_VERSION}
117 %description -n libgcc
120 %description -n libgcc -l es
121 Biblioteca compartida de gcc.
123 %description -n libgcc -l pl
124 Biblioteka dynamiczna gcc.
126 %description -n libgcc -l pt_BR
127 Biblioteca runtime para o GCC.
130 Summary: C++ support for gcc
131 Summary(es): Soporte de C++ para gcc
132 Summary(pl): Obs³uga C++ dla gcc
133 Summary(pt_BR): Suporte C++ para o gcc
134 Group: Development/Languages
135 Requires: %{name} = %{epoch}:%{GCC_VERSION}-%{release}
140 This package adds C++ support to the GNU Compiler Collection. It
141 includes support for most of the current C++ specification, including
142 templates and exception handling. It does not include a standard C++
143 library, which is available separately.
145 %description c++ -l de
146 Dieses Paket enthält die C++-Unterstützung für den
147 GNU-Compiler-Collection. Es unterstützt die aktuelle
148 C++-Spezifikation, inkl. Templates und Ausnahmeverarbeitung. Eine
149 C++-Standard-Library ist nicht enthalten - sie ist getrennt
152 %description c++ -l es
153 Este paquete añade soporte de C++ al GCC (colección de compiladores
154 GNU). Ello incluye el soporte para la mayoría de la especificación
155 actual de C++, incluyendo plantillas y manejo de excepciones. No
156 incluye la biblioteca estándar de C++, la que es disponible separada.
158 %description c++ -l fr
159 Ce package ajoute un support C++ a la collection de compilateurs GNU.
160 Il comprend un support pour la plupart des spécifications actuelles de
161 C++, dont les modéles et la gestion des exceptions. Il ne comprend pas
162 une bibliothéque C++ standard, qui est disponible séparément.
164 %description c++ -l pl
165 Ten pakiet dodaje obs³ugê C++ do kompilatora gcc. Ma wsparcie dla
166 du¿ej ilo¶ci obecnych specyfikacji C++, nie zawiera natomiast
167 standardowych bibliotek C++, które s± w oddzielnym pakiecie.
169 %description c++ -l pt_BR
170 Este pacote adiciona suporte C++ para o gcc.
172 %description c++ -l tr
173 Bu paket, GNU C derleyicisine C++ desteði ekler. 'Template'ler ve
174 aykýrý durum iþleme gibi çoðu güncel C++ tanýmlarýna uyar. Standart
175 C++ kitaplýðý bu pakette yer almaz.
178 Summary: Objective C support for gcc
179 Summary(de): Objektive C-Unterstützung für gcc
180 Summary(es): Soporte de Objective C para gcc
181 Summary(fr): Gestion d'Objective C pour gcc
182 Summary(pl): Obs³uga obiektowego C dla kompilatora gcc
183 Summary(tr): gcc için Objective C desteði
184 Group: Development/Languages
185 Requires: %{name} = %{epoch}:%{GCC_VERSION}-%{release}
186 Requires: libobjc = %{epoch}:%{GCC_VERSION}-%{release}
191 This package adds Objective C support to the GNU Compiler Collection.
192 Objective C is a object oriented derivative of the C language, mainly
193 used on systems running NeXTSTEP. This package does not include the
194 standard objective C object library.
196 %description objc -l de
197 Dieses Paket ergänzt den GNU-Compiler-Collection durch
198 Objective-C-Support. Objective C ist ein objektorientiertes Derivat
199 von C, das zur Hauptsache auf Systemen mit NeXTSTEP zum Einsatz kommt.
200 Die Standard-Objective-C-Objekt-Library ist nicht Teil des Pakets.
202 %description objc -l es
203 Este paquete añade soporte de Objective C al GCC (colección de
204 compiladores GNU). Objective C es un lenguaje orientado a objetos
205 derivado de C, principalmente usado en sistemas que funcionan bajo
206 NeXTSTEP. El paquete no incluye la biblioteca de objetos estándar de
209 %description objc -l fr
210 Ce package ajoute un support Objective C a la collection de
211 compilateurs GNU. L'Objective C est un langage orienté objetdérivé du
212 langage C, principalement utilisé sur les systèmes NeXTSTEP. Ce
213 package n'inclue pas la bibliothéque Objective C standard.
215 %description objc -l pl
216 Ten pakiet dodaje obs³ugê obiektowego C do kompilatora gcc. Obiektowe
217 C (objc) jest zorientowan± obiektowo pochodn± jêzyka C, u¿ywan±
218 g³ównie w systemach u¿ywaj±cych NeXTSTEP. W pakiecie nie ma
219 standardowej biblioteki objc (która znajduje siê w osobnym pakiecie).
221 %description objc -l tr
222 Bu paket, GNU C derleyicisine Objective C desteði ekler. Objective C,
223 C dilinin nesne yönelik bir türevidir ve NeXTSTEP altýnda çalýþan
224 sistemlerde yaygýn olarak kullanýlýr. Standart Objective C nesne
225 kitaplýðý bu pakette yer almaz.
228 Summary: Objective C Libraries
229 Summary(es): Bibliotecas de Objective C
230 Summary(pl): Biblioteki Obiektowego C
232 Version: %{GCC_VERSION}
235 %description -n libobjc
236 Objective C Libraries.
238 %description -n libobjc -l es
239 Bibliotecas de Objective C.
241 %description -n libobjc -l pl
242 Biblioteki Obiektowego C.
244 %package -n libobjc-static
245 Summary: Static Objective C Libraries
246 Summary(es): Bibliotecas estáticas de Objective C
247 Summary(pl): Statyczne Biblioteki Obiektowego C
248 Group: Development/Libraries
249 Version: %{GCC_VERSION}
250 Requires: libobjc = %{epoch}:%{GCC_VERSION}-%{release}
252 %description -n libobjc-static
253 Static Objective C Libraries.
255 %description -n libobjc-static -l es
256 Bibliotecas estáticas de Objective C.
258 %description -n libobjc-static -l pl
259 Statyczne biblioteki Obiektowego C.
262 Summary: Fortran 77 support for gcc
263 Summary(es): Soporte de Fortran 77 para gcc
264 Summary(pl): Obs³uga Fortranu 77 dla gcc
265 Summary(pt_BR): Suporte Fortran 77 para o GCC
266 Group: Development/Languages/Fortran
267 Version: %{GCC_VERSION}
268 Requires: %{name} = %{epoch}:%{GCC_VERSION}-%{release}
269 Requires: libg2c = %{epoch}:%{GCC_VERSION}-%{release}
273 This package adds support for compiling Fortran 77 programs with the
276 %description g77 -l es
277 Este paquete añade soporte para compilar programas escritos en Fortran
278 77 con el compilador GNU.
280 %description g77 -l pl
281 Ten pakiet dodaje obs³ugê Fortranu 77 do kompilatora gcc. Jest
282 potrzebny do kompilowania programów pisanych w jêzyku Fortran 77.
284 %description g77 -l pt_BR
285 Suporte Fortran 77 para o GCC.
288 Summary: Fortran 77 Libraries
289 Summary(es): Bibliotecas de Fortran 77
290 Summary(pl): Biblioteki Fortranu 77
292 Version: %{GCC_VERSION}
294 %description -n libg2c
295 Fortran 77 Libraries.
297 %description -n libg2c -l es
298 Bibliotecas de Fortran 77.
300 %description -n libg2c -l pl
301 Biblioteki Fortranu 77.
303 %package -n libg2c-static
304 Summary: Static Fortran 77 Libraries
305 Summary(es): Bibliotecas estáticas de Fortran 77
306 Summary(pl): Statyczne Biblioteki Fortranu 77
307 Group: Development/Libraries
308 Version: %{GCC_VERSION}
309 Requires: libg2c = %{epoch}:%{GCC_VERSION}-%{release}
311 %description -n libg2c-static
312 Static Fortran 77 Libraries.
314 %description -n libg2c -l es
315 Bibliotecas estáticas de Fortran 77.
317 %description -n libg2c-static -l pl
318 Statyczne biblioteki Fortranu 77.
321 Summary: Java support for gcc
322 Summary(es): Soporte de Java para gcc
323 Summary(pl): Obs³uga Javy dla gcc
324 Group: Development/Languages/Java
325 Version: %{GCC_VERSION}
326 Requires: %{name} = %{epoch}:%{GCC_VERSION}-%{release}
327 Requires: libgcj-devel = %{epoch}:%{GCC_VERSION}-%{release}
328 Requires: java-shared
329 Provides: gcj = %{epoch}:%{GCC_VERSION}-%{release}
332 This package adds experimental support for compiling Java(tm) programs
333 and bytecode into native code. To use this you will also need the
336 %description java -l es
337 Este paquete añade soporte experimental para compilar programas
338 Java(tm) y su bytecode en código nativo. Para usarlo también va a
339 necesitar el paquete libgcj.
341 %description java -l pl
342 Wsparcie dla kompilowania programów Java(tm) zrówno do bajt-kodu jak i
343 do natywnego kodu. Dodatkowo wymagany jest pakiet libgcj, aby mo¿na
344 by³o przeprowadziæ kompilacjê.
347 Summary: Shared java tools
348 Summary(es): Herramientas compartidas de Java
349 Summary(pl): Wspó³dzielone narzêdzia javy
350 Group: Development/Languages/Java
351 Version: %{GCC_VERSION}
352 Provides: jar = %{epoch}:%{GCC_VERSION}-%{release}
353 Provides: java-shared
356 Obsoletes: java-shared
358 %description java-tools
359 This package contains tools that are common for every Java(tm)
360 implementation, such as rmic or jar.
362 %description java-tools -l es
363 Este paquete contiene herramientas que son comunes para cada
364 implementación de Java(tm), como rmic o jar.
366 %description java-tools -l pl
367 Pakiet ten zawiera narzêdzia wspólne dla ka¿dej implementacji
368 Javy(tm), takie jak rmic czy jar.
371 Summary: Java Class Libraries
372 Summary(es): Bibliotecas de clases de Java
373 Summary(pl): Biblioteki Klas Javy
375 Version: %{GCC_VERSION}
379 %description -n libgcj
380 Java Class Libraries.
382 %description -n libgcj -l es
383 Bibliotecas de clases de Java.
385 %description -n libgcj -l pl
386 Biblioteki Klas Javy.
388 %package -n libgcj-devel
389 Summary: Development files for Java Class Libraries
390 Summary(es): Ficheros de desarrollo para las bibliotecas de clases de Java
391 Summary(pl): Pliki nag³ówkowe dla Bibliotek Klas Javy
392 Group: Development/Libraries
393 Version: %{GCC_VERSION}
394 Requires: %{name}-java = %{epoch}:%{GCC_VERSION}-%{release}
395 Requires: libgcj = %{epoch}:%{GCC_VERSION}-%{release}
396 Obsoletes: libgcj3-devel
398 %description -n libgcj-devel
399 Development files for Java Class Libraries.
401 %description -n libgcj-devel -l es
402 Ficheros de desarrollo para las bibliotecas de clases de Java.
404 %description -n libgcj-devel -l pl
405 Pliki nag³ówkowe dla Bibliotek Klas Javy.
407 %package -n libgcj-static
408 Summary: Static Java Class Libraries
409 Summary(es): Bibliotecas estáticas de clases de Java
410 Summary(pl): Statyczne Biblioteki Klas Javy
411 Group: Development/Libraries
412 Version: %{GCC_VERSION}
413 Requires: libgcj-devel = %{epoch}:%{GCC_VERSION}-%{release}
414 Requires: libstdc++-devel = %{epoch}:%{GCC_VERSION}-%{release}
416 %description -n libgcj-static
417 Static Java Class Libraries.
419 %description -n libgcj-static -l es
420 Bibliotecas estáticas de clases de Java.
422 %description -n libgcj-static -l pl
423 Statyczne Biblioteki Klas Javy.
425 %package -n libstdc++
426 Summary: GNU c++ library
427 Summary(es): Biblioteca C++ de GNU
428 Summary(pl): Biblioteki GNU C++
429 Summary(pt_BR): Biblioteca C++ GNU
431 Version: %{GCC_VERSION}
433 Obsoletes: libstdc++3
435 %description -n libstdc++
436 This is the GNU implementation of the standard C++ libraries, along
437 with additional GNU tools. This package includes the shared libraries
438 necessary to run C++ applications.
440 %description -n libstdc++ -l de
441 Dies ist die GNU-Implementierung der Standard-C++-Libraries mit
442 weiteren GNU-Tools. Dieses Paket enthält die zum Ausführen von
443 C++-Anwendungen erforderlichen gemeinsam genutzten Libraries.
445 %description -n libstdc++ -l es
446 Este es el soporte de las bibliotecas padrón del C++, junto con
447 herramientas GNU adicionales. El paquete incluye las bibliotecas
448 compartidas necesarias para ejecutar aplicaciones C++.
450 %description -n libstdc++ -l fr
451 Ceci est l'implémentation GNU des librairies C++ standard, ainsi que
452 des outils GNU supplémentaires. Ce package comprend les librairies
453 partagées nécessaires à l'exécution d'application C++.
455 %description -n libstdc++ -l pl
456 Pakiet ten zawiera biblioteki bêd±ce implementacj± standardowych
457 bibliotek C++. Znajduj± siê w nim biblioteki dynamiczne niezbêdne do
458 uruchomienia aplikacji napisanych w C++.
460 %description -n libstdc++ -l pt_BR
461 Este pacote é uma implementação da biblioteca padrão C++ v3, um
462 subconjunto do padrão ISO 14882.
464 %description -n libstdc++ -l tr
465 Bu paket, standart C++ kitaplýklarýnýn GNU gerçeklemesidir ve C++
466 uygulamalarýnýn koþturulmasý için gerekli kitaplýklarý içerir.
468 %package -n libstdc++-devel
469 Summary: Header files and documentation for C++ development
470 Summary(de): Header-Dateien zur Entwicklung mit C++
471 Summary(es): Ficheros de cabecera y documentación para desarrollo C++
472 Summary(fr): Fichiers d'en-tête et biblitothèques pour développer en C++
473 Summary(pl): Pliki nag³ówkowe i dokumentacja do biblioteki standardowej C++
474 Summary(pt_BR): Arquivos de inclusão e bibliotecas para o desenvolvimento em C++
475 Summary(tr): C++ ile program geliþtirmek için gerekli dosyalar
476 Group: Development/Libraries
477 Version: %{GCC_VERSION}
478 Requires: %{name}-c++ = %{epoch}:%{GCC_VERSION}-%{release}
479 Requires: libstdc++ = %{epoch}:%{GCC_VERSION}-%{release}
480 Obsoletes: libg++-devel
481 Obsoletes: libstdc++3-devel
483 %description -n libstdc++-devel
484 This is the GNU implementation of the standard C++ libraries. This
485 package includes the header files needed for C++ development and
486 library documentation.
488 %description -n libstdc++-devel -l es
489 Este es el soporte de las bibliotecas padrón del lenguaje C++. Este
490 paquete incluye los archivos de inclusión y bibliotecas necesarios
491 para desarrollo de programas en lenguaje C++.
493 %description -n libstdc++-devel -l pl
494 Pakiet ten zawiera biblioteki bêd±ce implementacj± standardowych
495 bibliotek C++. Znajduj± siê w nim pliki nag³ówkowe wykorzystywane przy
496 programowaniu w jêzyku C++ oraz dokumentacja biblioteki standardowej.
498 %description -n libstdc++-devel -l pt_BR
499 Este pacote inclui os arquivos de inclusão e bibliotecas necessárias
500 para desenvolvimento de programas C++.
502 %package -n libstdc++-static
503 Summary: Static C++ standard library
504 Summary(es): Biblioteca estándar estática de C++
505 Summary(pl): Statyczna biblioteka standardowa C++
506 Group: Development/Libraries
507 Version: %{GCC_VERSION}
508 Requires: libstdc++-devel = %{epoch}:%{GCC_VERSION}-%{release}
510 %description -n libstdc++-static
511 Static C++ standard library.
513 %description -n libstdc++-static -l es
514 Biblioteca estándar estática de C++.
516 %description -n libstdc++-static -l pl
517 Statycza biblioteka standardowa C++.
520 Summary: Foreign Function Interface library
521 Summary(es): Biblioteca de interfaz de funciones ajenas
522 Summary(pl): Biblioteka zewnêtrznych wywo³añ funkcji
524 Version: %{GCC_VERSION}
526 %description -n libffi
527 The libffi library provides a portable, high level programming
528 interface to various calling conventions. This allows a programmer to
529 call any function specified by a call interface description at run
532 %description -n libffi -l es
533 La biblioteca libffi provee una interfaz portable de programación de
534 alto nivel para varias convenciones de llamada. Ello permite que un
535 programador llame una función cualquiera especificada por una
536 descripción de interfaz de llamada en el tiempo de ejecución.
538 %description -n libffi -l pl
539 Biblioteka libffi dostarcza przno¶nego, wysokopoziomowego
540 miêdzymordzia do ró¿nych konwencji wywo³añ funkcji. Pozwala to
541 programi¶cie wywo³ywaæ dowolne funkcje podaj±c konwencjê wywo³ania w
544 %package -n libffi-devel
545 Summary: Development files for Foreign Function Interface library
546 Summary(es): Ficheros de desarrollo para libffi
547 Summary(pl): Pliki nag³ówkowe dla libffi
548 Group: Development/Libraries
549 Version: %{GCC_VERSION}
550 Requires: libffi = %{epoch}:%{GCC_VERSION}-%{release}
552 %description -n libffi-devel
553 Development files for Foreign Function Interface library.
555 %description -n libffi-devel -l es
556 Ficheros de desarrollo para libffi.
558 %description -n libffi-devel -l pl
559 Pliki nag³ówkowe dla libffi.
561 %package -n libffi-static
562 Summary: Static Foreign Function Interface library
563 Summary(es): Biblioteca libffi estática
564 Summary(pl): Statyczna biblioteka libffi
565 Group: Development/Libraries
566 Version: %{GCC_VERSION}
567 Requires: libffi-devel = %{epoch}:%{GCC_VERSION}-%{release}
569 %description -n libffi-static
570 Static Foreign Function Interface library.
572 %description -n libffi-static -l es
573 Biblioteca libffi estática.
575 %description -n libffi-static -l pl
576 Statyczna biblioteka libffi.
579 Summary: Ada support for gcc
580 Summary(es): Soporte de Ada para gcc
581 Summary(pl): Obs³uga Ady do gcc
582 Group: Development/Languages
583 Version: %{GCC_VERSION}
584 Requires: %{name} = %{epoch}:%{GCC_VERSION}-%{release}
585 Requires: libgnat = %{epoch}:%{GCC_VERSION}-%{release}
587 Obsoletes: gnat-devel
590 This package adds experimental support for compiling Ada programs.
592 %description ada -l es
593 Este paquete añade soporte experimental para compilar programas en
596 %description ada -l pl
597 Ten pakiet dodaje eksperymentalne wsparcie dla kompilacji programów w
601 Summary: Ada standard libraries
602 Summary(es): Bibliotecas estándares de Ada
603 Summary(pl): Biblioteki standardowe dla Ady
605 Version: %{GCC_VERSION}
609 %description -n libgnat
610 This package contains shared libraries needed to run programs written
613 %description -n libgnat -l es
614 Este paquete contiene las bibliotecas compartidas necesarias para
615 ejecutar programas escritos en Ada.
617 %description -n libgnat -l pl
618 Ten pakiet zawiera biblioteki potrzebne do uruchamiania programów
621 %package -n libgnat-static
622 Summary: Static Ada standard libraries
623 Summary(pl): Statyczne biblioteki standardowe dla Ady
625 Version: %{GCC_VERSION}
626 Obsoletes: gnat-static
628 %description -n libgnat-static
629 This package contains static libraries for programs written in Ada.
631 %description -n libgnat-static -l pl
632 Ten pakiet zawiera biblioteki statyczne dla programów napisanych w
636 Summary: Ksi support for gcc
637 Summary(es): Soporte de Ksi para gcc
638 Summary(pl): Obs³uga Ksi dla gcc
639 Version: %{GCC_VERSION}.%{KSI_VERSION}
640 Group: Development/Languages
641 Requires: %{name} = %{epoch}:%{GCC_VERSION}-%{release}
644 This package adds experimental support for compiling Ksi programs into
645 native code. You proabably don't need it, unless your are going to
646 develop a compiler using Ksi as intermediate representation or you are
647 using such compiler (like Gont).
649 %description ksi -l es
650 Este paquete añade soporte experimental para compilar programas de Ksi
651 en código nativo. Probablemento no lo necesitará, a menos que vaya a
652 desarrollar un compilador que use Ksi como representación intermedia o
653 use tal compilador (como Gont).
655 %description ksi -l pl
656 Ten pakiet dodaje eksperymentalne wsparcie dla kompilacji programów w
657 Ksi do kodu maszynowego. Prawdopodobnie nie potrzebujesz go, chyba ¿e
658 zamierzasz pisaæ kompilator u¿ywaj±cy Ksi jako reprezentacji
659 po¶rednicz±cej, lub u¿ywasz takiego kompilatora (jak Gont).
662 Summary: The C Pre Processor
663 Summary(es): El preprocesador de C
664 Summary(pl): Preprocesor C
665 Summary(pt_BR): Preprocessador para a linguagem C
666 Group: Development/Languages
667 Version: %{GCC_VERSION}
672 The C preprocessor is a "macro processor" that is used automatically
673 by the C compiler to transform your program before actual compilation.
674 It is called a macro processor because it allows you to define
675 "macros", which are brief abbreviations for longer constructs.
677 The C preprocessor provides four separate facilities that you can use
680 - Inclusion of header files. These are files of declarations that can
681 be substituted into your program.
682 - Macro expansion. You can define "macros", which are abbreviations
683 for arbitrary fragments of C code, and then the C preprocessor will
684 replace the macros with their definitions throughout the program.
685 - Conditional compilation. Using special preprocessing directives, you
686 can include or exclude parts of the program according to various
688 - Line control. If you use a program to combine or rearrange source
689 files into an intermediate file which is then compiled, you can use
690 line control to inform the compiler of where each source line
691 originally came from.
693 %description -n cpp -l es
694 El preprocesador de C es un "procesador de macros" que es usado
695 automáticamente por el compilador C para transformar su programa antes
696 de que éste se actualmente compile. Se llama procesador de macros
697 porque permite definir "macros", los que son abreviaciones concisas
698 para construcciones más largas.
700 El preprocesador C provee cuatro cualidadedes distintas que puede usar
703 - Inclusión de ficheros de cabecera. Éstos son ficheros de
704 declaraciones que pueden incorporarse a su programa.
705 - Expansión de macros. Puede definir "macros", los que son
706 abreviaciones para fragmentos arbitrarios de código C, y a lo largo
707 del programa el preprocesador sustituirá los macros con sus
709 - Compilación condicional. Usando especiales directivas del preproceso
710 puede incluir o excluir partes del programa según varias condiciones.
711 - Control de líneas. Si usa un programa para combinar o reorganizar el
712 código fuente en un fichero intermedio que luego es compilado, puede
713 usar control de líneas para informar el compilador de dónde origina
716 %description -n cpp -l pl
717 Przeprocesor C jest "makro procesorem" który jest automatycznie
718 u¿ywany przez kompilator C do obróbki kompilowanego programu przed
719 w³a¶ciw± kompilacj±. Jest on nazywany makroprocesorem, poniewa¿
720 umo¿liwia definiowanie i rozwijanie makr umo¿liwiaj±cych skracanie
721 d³ugich konstrukcji w jêzyku C.
723 Preprocesor C umo¿liwia wykonywanie czterech ró¿nych typów operacji:
725 - Do³±czanie plików (np. nag³ówkowych). Wstawia pliki w miejscu
726 deklaracji polecenia do³±czenia innego pliku.
727 - Rozwijanie makr. Mo¿na definiowaæ "makra" nadaj±c im identyfikatory,
728 których pó¼niejsze u¿ycie powoduje podczas rozwijania podmienienie
729 indentyfikatora deklarowan± wcze¶niej warto¶ci±.
730 - Kompilacja warunkowa. W zale¿no¶ci od obecno¶ci symboli i dyrektyw w
731 ¶rodowisku preprocesora s± w³±czane warunkowo, b±d¼ nie, pewne
732 fragmenty obrabianego strumienia tekstów.
733 - Kontrola linii ¼ród³a. Niezale¿nie od tego jakim przeobra¿eniom
734 podlega wynikowy strumieñ danych w wyniku rozwijania makr i do³±czania
735 s± zapamiêtywane informacje o tym, której linii pliku ¼ród³owego
736 odpowiada fragment pliku wynikowego.
738 %description -n cpp -l pt_BR
739 O preprocessador C é um "processador de macros", que é utilizado pelo
740 compilador C para fazer algumas modificações no seu programa, antes da
741 compilação em si. Ele é chamado de "processador de macros" porque
742 permite a você definir "macros", que são abreviações para construções
745 O preprocessador C fornece quatro funcionalidades básicas: inclusão de
746 arquivos de cabeçalho; expansão de macros; compilação condicional; e
747 controle da numeração das linhas do programa.
750 %setup -q -a1 -n %{name}-%{GCC_VERSION}
751 mv ksi-%{KSI_VERSION} gcc/ksi
757 %{!?debug:%patch4 -p1}
777 # because we distribute modified version of gcc...
778 perl -pi -e 's/(version.*)";/$1 (PLD Linux)";/' gcc/version.c
779 perl -pi -e 's@(bug_report_url.*<URL:).*";@$1http://bugs.pld-linux.org/>";@' gcc/version.c
782 # cd gcc && autoconf; cd ..
783 # autoconf is not needed!
784 cp /usr/share/automake/config.sub .
786 rm -rf obj-%{_target_platform} && install -d obj-%{_target_platform} && cd obj-%{_target_platform}
788 CFLAGS="%{rpmcflags}" \
789 CXXFLAGS="%{rpmcflags}" \
790 TEXCONFIG=false ../configure \
791 --prefix=%{_prefix} \
792 --libdir=%{_libdir} \
793 --libexecdir=%{_libexecdir} \
794 --infodir=%{_infodir} \
795 --mandir=%{_mandir} \
797 --enable-threads=posix \
798 --enable-__cxa_atexit \
799 --enable-languages="c,c++,f77%{?with_objc:,objc}%{?with_ada:,ada}%{?with_java:,java},ksi" \
811 --with-slibdir=%{_slibdir} \
815 PATH=$PATH:/sbin:%{_sbindir}
818 %{__make} -C obj-%{_target_platform} bootstrap-lean \
819 GCJFLAGS="%{rpmcflags}" \
820 LDFLAGS_FOR_TARGET="%{rpmldflags}" \
825 for tgt in gnatlib gnattools gnatlib-shared; do
826 %{__make} -C obj-%{_target_platform}/gcc $tgt \
827 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*