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.4
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: a1c267b34f05c8660b24251865614d8b
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 Patch6: %{name}-alpha-regno-mode.patch
36 Patch7: %{name}-amd64-thunk.patch
37 # -- stolen patches from RH --
38 Patch10: gcc32-ada-link.patch
39 Patch11: gcc32-boehm-gc-libs.patch
40 Patch12: gcc32-bogus-inline.patch
41 Patch13: gcc32-c++-nrv-test.patch
42 Patch14: gcc32-c++-tsubst-asm.patch
43 Patch15: gcc32-debug-pr7241.patch
44 Patch16: gcc32-duplicate-decl.patch
45 Patch17: gcc32-dwarf2-pr6381.patch
46 Patch18: gcc32-dwarf2-pr6436-test.patch
47 Patch19: gcc32-fde-merge-compat.patch
48 Patch20: gcc32-i386-memtest-test.patch
49 Patch21: gcc32-inline-label.patch
50 Patch22: gcc32-java-no-rpath.patch
51 Patch23: gcc32-test-rh65771.patch
52 Patch24: gcc32-test-rotate.patch
53 BuildRequires: autoconf
54 BuildRequires: automake
55 BuildRequires: binutils >= 2:2.15.90.0.3
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:2.15.90.0.3
66 Requires: cpp = %{epoch}:%{GCC_VERSION}-%{release}
68 Requires: libgcc = %{epoch}:%{GCC_VERSION}-%{release}
69 %{?with_ada:Provides: gcc(ada)}
70 Conflicts: glibc-devel < 2.2.5-20
71 URL: http://gcc.gnu.org/
72 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
74 %define _slibdir /%{_lib}
76 %define _slibdir64 /lib64
77 %define _libdir /usr/lib
78 %define rpmcflags -O2 -mtune=ultrasparc
82 A compiler aimed at integrating all the optimizations and features
83 necessary for a high-performance and stable development environment.
85 This package contains the C compiler and some files shared by various
86 parts of the GNU Compiler Collection. In order to use another GCC
87 compiler you will need to install the appropriate subpackage.
90 Un compilador destinado a la integración de todas las optimalizaciones
91 y características necesarias para un entorno de desarrollo eficaz y
94 Este paquete contiene el compilador de C y unos ficheros compartidos
95 por varias parted de la colección de compiladores GNU (GCC). Para usar
96 otro compilador de GCC será necesario que instale el subpaquete
100 Kompilator, posiadaj±cy du¿e mo¿liwo¶ci optymalizacyjne niezbêdne do
101 wyprodukowania szybkiego i stabilnego kodu wynikowego.
103 Ten pakiet zawiera kompilator C i pliki wspó³dzielone przez ró¿ne
104 czê¶ci kolekcji kompilatorów GNU (GCC). ¯eby u¿ywaæ innego kompilatora
105 z GCC, trzeba zainstalowaæ odpowiedni podpakiet.
107 %description -l pt_BR
108 Este pacote adiciona infraestrutura básica e suporte a linguagem C ao
109 GNU Compiler Collection.
112 Summary: Shared gcc library
113 Summary(es): Biblioteca compartida de gcc
114 Summary(pl): Biblioteka gcc
115 Summary(pt_BR): Biblioteca runtime para o GCC
117 Version: %{GCC_VERSION}
120 %description -n libgcc
123 %description -n libgcc -l es
124 Biblioteca compartida de gcc.
126 %description -n libgcc -l pl
127 Biblioteka dynamiczna gcc.
129 %description -n libgcc -l pt_BR
130 Biblioteca runtime para o GCC.
133 Summary: C++ support for gcc
134 Summary(es): Soporte de C++ para gcc
135 Summary(pl): Obs³uga C++ dla gcc
136 Summary(pt_BR): Suporte C++ para o gcc
137 Group: Development/Languages
138 Requires: %{name} = %{epoch}:%{GCC_VERSION}-%{release}
143 This package adds C++ support to the GNU Compiler Collection. It
144 includes support for most of the current C++ specification, including
145 templates and exception handling. It does not include a standard C++
146 library, which is available separately.
148 %description c++ -l de
149 Dieses Paket enthält die C++-Unterstützung für den
150 GNU-Compiler-Collection. Es unterstützt die aktuelle
151 C++-Spezifikation, inkl. Templates und Ausnahmeverarbeitung. Eine
152 C++-Standard-Library ist nicht enthalten - sie ist getrennt
155 %description c++ -l es
156 Este paquete añade soporte de C++ al GCC (colección de compiladores
157 GNU). Ello incluye el soporte para la mayoría de la especificación
158 actual de C++, incluyendo plantillas y manejo de excepciones. No
159 incluye la biblioteca estándar de C++, la que es disponible separada.
161 %description c++ -l fr
162 Ce package ajoute un support C++ a la collection de compilateurs GNU.
163 Il comprend un support pour la plupart des spécifications actuelles de
164 C++, dont les modéles et la gestion des exceptions. Il ne comprend pas
165 une bibliothéque C++ standard, qui est disponible séparément.
167 %description c++ -l pl
168 Ten pakiet dodaje obs³ugê C++ do kompilatora gcc. Ma wsparcie dla
169 du¿ej ilo¶ci obecnych specyfikacji C++, nie zawiera natomiast
170 standardowych bibliotek C++, które s± w oddzielnym pakiecie.
172 %description c++ -l pt_BR
173 Este pacote adiciona suporte C++ para o gcc.
175 %description c++ -l tr
176 Bu paket, GNU C derleyicisine C++ desteði ekler. 'Template'ler ve
177 aykýrý durum iþleme gibi çoðu güncel C++ tanýmlarýna uyar. Standart
178 C++ kitaplýðý bu pakette yer almaz.
181 Summary: Objective C support for gcc
182 Summary(de): Objektive C-Unterstützung für gcc
183 Summary(es): Soporte de Objective C para gcc
184 Summary(fr): Gestion d'Objective C pour gcc
185 Summary(pl): Obs³uga obiektowego C dla kompilatora gcc
186 Summary(tr): gcc için Objective C desteði
187 Group: Development/Languages
188 Requires: %{name} = %{epoch}:%{GCC_VERSION}-%{release}
189 Requires: libobjc = %{epoch}:%{GCC_VERSION}-%{release}
194 This package adds Objective C support to the GNU Compiler Collection.
195 Objective C is a object oriented derivative of the C language, mainly
196 used on systems running NeXTSTEP. This package does not include the
197 standard objective C object library.
199 %description objc -l de
200 Dieses Paket ergänzt den GNU-Compiler-Collection durch
201 Objective-C-Support. Objective C ist ein objektorientiertes Derivat
202 von C, das zur Hauptsache auf Systemen mit NeXTSTEP zum Einsatz kommt.
203 Die Standard-Objective-C-Objekt-Library ist nicht Teil des Pakets.
205 %description objc -l es
206 Este paquete añade soporte de Objective C al GCC (colección de
207 compiladores GNU). Objective C es un lenguaje orientado a objetos
208 derivado de C, principalmente usado en sistemas que funcionan bajo
209 NeXTSTEP. El paquete no incluye la biblioteca de objetos estándar de
212 %description objc -l fr
213 Ce package ajoute un support Objective C a la collection de
214 compilateurs GNU. L'Objective C est un langage orienté objetdérivé du
215 langage C, principalement utilisé sur les systèmes NeXTSTEP. Ce
216 package n'inclue pas la bibliothéque Objective C standard.
218 %description objc -l pl
219 Ten pakiet dodaje obs³ugê obiektowego C do kompilatora gcc. Obiektowe
220 C (objc) jest zorientowan± obiektowo pochodn± jêzyka C, u¿ywan±
221 g³ównie w systemach u¿ywaj±cych NeXTSTEP. W pakiecie nie ma
222 standardowej biblioteki objc (która znajduje siê w osobnym pakiecie).
224 %description objc -l tr
225 Bu paket, GNU C derleyicisine Objective C desteði ekler. Objective C,
226 C dilinin nesne yönelik bir türevidir ve NeXTSTEP altýnda çalýþan
227 sistemlerde yaygýn olarak kullanýlýr. Standart Objective C nesne
228 kitaplýðý bu pakette yer almaz.
231 Summary: Objective C Libraries
232 Summary(es): Bibliotecas de Objective C
233 Summary(pl): Biblioteki Obiektowego C
235 Version: %{GCC_VERSION}
238 %description -n libobjc
239 Objective C Libraries.
241 %description -n libobjc -l es
242 Bibliotecas de Objective C.
244 %description -n libobjc -l pl
245 Biblioteki Obiektowego C.
247 %package -n libobjc-static
248 Summary: Static Objective C Libraries
249 Summary(es): Bibliotecas estáticas de Objective C
250 Summary(pl): Statyczne Biblioteki Obiektowego C
251 Group: Development/Libraries
252 Version: %{GCC_VERSION}
253 Requires: libobjc = %{epoch}:%{GCC_VERSION}-%{release}
255 %description -n libobjc-static
256 Static Objective C Libraries.
258 %description -n libobjc-static -l es
259 Bibliotecas estáticas de Objective C.
261 %description -n libobjc-static -l pl
262 Statyczne biblioteki Obiektowego C.
265 Summary: Fortran 77 support for gcc
266 Summary(es): Soporte de Fortran 77 para gcc
267 Summary(pl): Obs³uga Fortranu 77 dla gcc
268 Summary(pt_BR): Suporte Fortran 77 para o GCC
269 Group: Development/Languages/Fortran
270 Version: %{GCC_VERSION}
271 Requires: %{name} = %{epoch}:%{GCC_VERSION}-%{release}
272 Requires: libg2c = %{epoch}:%{GCC_VERSION}-%{release}
276 This package adds support for compiling Fortran 77 programs with the
279 %description g77 -l es
280 Este paquete añade soporte para compilar programas escritos en Fortran
281 77 con el compilador GNU.
283 %description g77 -l pl
284 Ten pakiet dodaje obs³ugê Fortranu 77 do kompilatora gcc. Jest
285 potrzebny do kompilowania programów pisanych w jêzyku Fortran 77.
287 %description g77 -l pt_BR
288 Suporte Fortran 77 para o GCC.
291 Summary: Fortran 77 Libraries
292 Summary(es): Bibliotecas de Fortran 77
293 Summary(pl): Biblioteki Fortranu 77
295 Version: %{GCC_VERSION}
297 %description -n libg2c
298 Fortran 77 Libraries.
300 %description -n libg2c -l es
301 Bibliotecas de Fortran 77.
303 %description -n libg2c -l pl
304 Biblioteki Fortranu 77.
306 %package -n libg2c-static
307 Summary: Static Fortran 77 Libraries
308 Summary(es): Bibliotecas estáticas de Fortran 77
309 Summary(pl): Statyczne Biblioteki Fortranu 77
310 Group: Development/Libraries
311 Version: %{GCC_VERSION}
312 Requires: libg2c = %{epoch}:%{GCC_VERSION}-%{release}
314 %description -n libg2c-static
315 Static Fortran 77 Libraries.
317 %description -n libg2c -l es
318 Bibliotecas estáticas de Fortran 77.
320 %description -n libg2c-static -l pl
321 Statyczne biblioteki Fortranu 77.
324 Summary: Java support for gcc
325 Summary(es): Soporte de Java para gcc
326 Summary(pl): Obs³uga Javy dla gcc
327 Group: Development/Languages/Java
328 Version: %{GCC_VERSION}
329 Requires: %{name} = %{epoch}:%{GCC_VERSION}-%{release}
330 Requires: libgcj-devel = %{epoch}:%{GCC_VERSION}-%{release}
331 Requires: java-shared
332 Provides: gcj = %{epoch}:%{GCC_VERSION}-%{release}
335 This package adds experimental support for compiling Java(tm) programs
336 and bytecode into native code. To use this you will also need the
339 %description java -l es
340 Este paquete añade soporte experimental para compilar programas
341 Java(tm) y su bytecode en código nativo. Para usarlo también va a
342 necesitar el paquete libgcj.
344 %description java -l pl
345 Wsparcie dla kompilowania programów Java(tm) zarówno do bajt-kodu jak i
346 do natywnego kodu. Dodatkowo wymagany jest pakiet libgcj, aby mo¿na
347 by³o przeprowadziæ kompilacjê.
350 Summary: Shared java tools
351 Summary(es): Herramientas compartidas de Java
352 Summary(pl): Wspó³dzielone narzêdzia javy
353 Group: Development/Languages/Java
354 Version: %{GCC_VERSION}
355 Provides: jar = %{epoch}:%{GCC_VERSION}-%{release}
356 Provides: java-shared
359 Obsoletes: java-shared
361 %description java-tools
362 This package contains tools that are common for every Java(tm)
363 implementation, such as rmic or jar.
365 %description java-tools -l es
366 Este paquete contiene herramientas que son comunes para cada
367 implementación de Java(tm), como rmic o jar.
369 %description java-tools -l pl
370 Pakiet ten zawiera narzêdzia wspólne dla ka¿dej implementacji
371 Javy(tm), takie jak rmic czy jar.
374 Summary: Java Class Libraries
375 Summary(es): Bibliotecas de clases de Java
376 Summary(pl): Biblioteki Klas Javy
378 Version: %{GCC_VERSION}
382 %description -n libgcj
383 Java Class Libraries.
385 %description -n libgcj -l es
386 Bibliotecas de clases de Java.
388 %description -n libgcj -l pl
389 Biblioteki Klas Javy.
391 %package -n libgcj-devel
392 Summary: Development files for Java Class Libraries
393 Summary(es): Ficheros de desarrollo para las bibliotecas de clases de Java
394 Summary(pl): Pliki nag³ówkowe dla Bibliotek Klas Javy
395 Group: Development/Libraries
396 Version: %{GCC_VERSION}
397 Requires: %{name}-java = %{epoch}:%{GCC_VERSION}-%{release}
398 Requires: libgcj = %{epoch}:%{GCC_VERSION}-%{release}
399 Obsoletes: libgcj3-devel
401 %description -n libgcj-devel
402 Development files for Java Class Libraries.
404 %description -n libgcj-devel -l es
405 Ficheros de desarrollo para las bibliotecas de clases de Java.
407 %description -n libgcj-devel -l pl
408 Pliki nag³ówkowe dla Bibliotek Klas Javy.
410 %package -n libgcj-static
411 Summary: Static Java Class Libraries
412 Summary(es): Bibliotecas estáticas de clases de Java
413 Summary(pl): Statyczne Biblioteki Klas Javy
414 Group: Development/Libraries
415 Version: %{GCC_VERSION}
416 Requires: libgcj-devel = %{epoch}:%{GCC_VERSION}-%{release}
417 Requires: libstdc++-devel = %{epoch}:%{GCC_VERSION}-%{release}
419 %description -n libgcj-static
420 Static Java Class Libraries.
422 %description -n libgcj-static -l es
423 Bibliotecas estáticas de clases de Java.
425 %description -n libgcj-static -l pl
426 Statyczne Biblioteki Klas Javy.
428 %package -n libstdc++
429 Summary: GNU c++ library
430 Summary(es): Biblioteca C++ de GNU
431 Summary(pl): Biblioteki GNU C++
432 Summary(pt_BR): Biblioteca C++ GNU
434 Version: %{GCC_VERSION}
436 Obsoletes: libstdc++3
438 %description -n libstdc++
439 This is the GNU implementation of the standard C++ libraries, along
440 with additional GNU tools. This package includes the shared libraries
441 necessary to run C++ applications.
443 %description -n libstdc++ -l de
444 Dies ist die GNU-Implementierung der Standard-C++-Libraries mit
445 weiteren GNU-Tools. Dieses Paket enthält die zum Ausführen von
446 C++-Anwendungen erforderlichen gemeinsam genutzten Libraries.
448 %description -n libstdc++ -l es
449 Este es el soporte de las bibliotecas padrón del C++, junto con
450 herramientas GNU adicionales. El paquete incluye las bibliotecas
451 compartidas necesarias para ejecutar aplicaciones C++.
453 %description -n libstdc++ -l fr
454 Ceci est l'implémentation GNU des librairies C++ standard, ainsi que
455 des outils GNU supplémentaires. Ce package comprend les librairies
456 partagées nécessaires à l'exécution d'application C++.
458 %description -n libstdc++ -l pl
459 Pakiet ten zawiera biblioteki bêd±ce implementacj± standardowych
460 bibliotek C++. Znajduj± siê w nim biblioteki dynamiczne niezbêdne do
461 uruchomienia aplikacji napisanych w C++.
463 %description -n libstdc++ -l pt_BR
464 Este pacote é uma implementação da biblioteca padrão C++ v3, um
465 subconjunto do padrão ISO 14882.
467 %description -n libstdc++ -l tr
468 Bu paket, standart C++ kitaplýklarýnýn GNU gerçeklemesidir ve C++
469 uygulamalarýnýn koþturulmasý için gerekli kitaplýklarý içerir.
471 %package -n libstdc++-devel
472 Summary: Header files and documentation for C++ development
473 Summary(de): Header-Dateien zur Entwicklung mit C++
474 Summary(es): Ficheros de cabecera y documentación para desarrollo C++
475 Summary(fr): Fichiers d'en-tête et biblitothèques pour développer en C++
476 Summary(pl): Pliki nag³ówkowe i dokumentacja do biblioteki standardowej C++
477 Summary(pt_BR): Arquivos de inclusão e bibliotecas para o desenvolvimento em C++
478 Summary(tr): C++ ile program geliþtirmek için gerekli dosyalar
479 Group: Development/Libraries
480 Version: %{GCC_VERSION}
481 Requires: %{name}-c++ = %{epoch}:%{GCC_VERSION}-%{release}
482 Requires: libstdc++ = %{epoch}:%{GCC_VERSION}-%{release}
483 Obsoletes: libg++-devel
484 Obsoletes: libstdc++3-devel
486 %description -n libstdc++-devel
487 This is the GNU implementation of the standard C++ libraries. This
488 package includes the header files needed for C++ development and
489 library documentation.
491 %description -n libstdc++-devel -l es
492 Este es el soporte de las bibliotecas padrón del lenguaje C++. Este
493 paquete incluye los archivos de inclusión y bibliotecas necesarios
494 para desarrollo de programas en lenguaje C++.
496 %description -n libstdc++-devel -l pl
497 Pakiet ten zawiera biblioteki bêd±ce implementacj± standardowych
498 bibliotek C++. Znajduj± siê w nim pliki nag³ówkowe wykorzystywane przy
499 programowaniu w jêzyku C++ oraz dokumentacja biblioteki standardowej.
501 %description -n libstdc++-devel -l pt_BR
502 Este pacote inclui os arquivos de inclusão e bibliotecas necessárias
503 para desenvolvimento de programas C++.
505 %package -n libstdc++-static
506 Summary: Static C++ standard library
507 Summary(es): Biblioteca estándar estática de C++
508 Summary(pl): Statyczna biblioteka standardowa C++
509 Group: Development/Libraries
510 Version: %{GCC_VERSION}
511 Requires: libstdc++-devel = %{epoch}:%{GCC_VERSION}-%{release}
513 %description -n libstdc++-static
514 Static C++ standard library.
516 %description -n libstdc++-static -l es
517 Biblioteca estándar estática de C++.
519 %description -n libstdc++-static -l pl
520 Statyczna biblioteka standardowa C++.
523 Summary: Foreign Function Interface library
524 Summary(es): Biblioteca de interfaz de funciones ajenas
525 Summary(pl): Biblioteka zewnêtrznych wywo³añ funkcji
527 Version: %{GCC_VERSION}
529 %description -n libffi
530 The libffi library provides a portable, high level programming
531 interface to various calling conventions. This allows a programmer to
532 call any function specified by a call interface description at run
535 %description -n libffi -l es
536 La biblioteca libffi provee una interfaz portable de programación de
537 alto nivel para varias convenciones de llamada. Ello permite que un
538 programador llame una función cualquiera especificada por una
539 descripción de interfaz de llamada en el tiempo de ejecución.
541 %description -n libffi -l pl
542 Biblioteka libffi dostarcza przeno¶nego, wysokopoziomowego
543 miêdzymordzia do ró¿nych konwencji wywo³añ funkcji. Pozwala to
544 programi¶cie wywo³ywaæ dowolne funkcje podaj±c konwencjê wywo³ania w
547 %package -n libffi-devel
548 Summary: Development files for Foreign Function Interface library
549 Summary(es): Ficheros de desarrollo para libffi
550 Summary(pl): Pliki nag³ówkowe dla libffi
551 Group: Development/Libraries
552 Version: %{GCC_VERSION}
553 Requires: libffi = %{epoch}:%{GCC_VERSION}-%{release}
555 %description -n libffi-devel
556 Development files for Foreign Function Interface library.
558 %description -n libffi-devel -l es
559 Ficheros de desarrollo para libffi.
561 %description -n libffi-devel -l pl
562 Pliki nag³ówkowe dla libffi.
564 %package -n libffi-static
565 Summary: Static Foreign Function Interface library
566 Summary(es): Biblioteca libffi estática
567 Summary(pl): Statyczna biblioteka libffi
568 Group: Development/Libraries
569 Version: %{GCC_VERSION}
570 Requires: libffi-devel = %{epoch}:%{GCC_VERSION}-%{release}
572 %description -n libffi-static
573 Static Foreign Function Interface library.
575 %description -n libffi-static -l es
576 Biblioteca libffi estática.
578 %description -n libffi-static -l pl
579 Statyczna biblioteka libffi.
582 Summary: Ada support for gcc
583 Summary(es): Soporte de Ada para gcc
584 Summary(pl): Obs³uga Ady do gcc
585 Group: Development/Languages
586 Version: %{GCC_VERSION}
587 Requires: %{name} = %{epoch}:%{GCC_VERSION}-%{release}
588 Requires: libgnat = %{epoch}:%{GCC_VERSION}-%{release}
590 Obsoletes: gnat-devel
593 This package adds experimental support for compiling Ada programs.
595 %description ada -l es
596 Este paquete añade soporte experimental para compilar programas en
599 %description ada -l pl
600 Ten pakiet dodaje eksperymentalne wsparcie dla kompilacji programów w
604 Summary: Ada standard libraries
605 Summary(es): Bibliotecas estándares de Ada
606 Summary(pl): Biblioteki standardowe dla Ady
608 Version: %{GCC_VERSION}
612 %description -n libgnat
613 This package contains shared libraries needed to run programs written
616 %description -n libgnat -l es
617 Este paquete contiene las bibliotecas compartidas necesarias para
618 ejecutar programas escritos en Ada.
620 %description -n libgnat -l pl
621 Ten pakiet zawiera biblioteki potrzebne do uruchamiania programów
624 %package -n libgnat-static
625 Summary: Static Ada standard libraries
626 Summary(pl): Statyczne biblioteki standardowe dla Ady
628 Version: %{GCC_VERSION}
629 Obsoletes: gnat-static
631 %description -n libgnat-static
632 This package contains static libraries for programs written in Ada.
634 %description -n libgnat-static -l pl
635 Ten pakiet zawiera biblioteki statyczne dla programów napisanych w
639 Summary: Ksi support for gcc
640 Summary(es): Soporte de Ksi para gcc
641 Summary(pl): Obs³uga Ksi dla gcc
642 Version: %{GCC_VERSION}.%{KSI_VERSION}
643 Group: Development/Languages
644 Requires: %{name} = %{epoch}:%{GCC_VERSION}-%{release}
647 This package adds experimental support for compiling Ksi programs into
648 native code. You proabably don't need it, unless your are going to
649 develop a compiler using Ksi as intermediate representation or you are
650 using such compiler (like Gont).
652 %description ksi -l es
653 Este paquete añade soporte experimental para compilar programas de Ksi
654 en código nativo. Probablemento no lo necesitará, a menos que vaya a
655 desarrollar un compilador que use Ksi como representación intermedia o
656 use tal compilador (como Gont).
658 %description ksi -l pl
659 Ten pakiet dodaje eksperymentalne wsparcie dla kompilacji programów w
660 Ksi do kodu maszynowego. Prawdopodobnie nie potrzebujesz go, chyba ¿e
661 zamierzasz pisaæ kompilator u¿ywaj±cy Ksi jako reprezentacji
662 po¶rednicz±cej, lub u¿ywasz takiego kompilatora (jak Gont).
665 Summary: The C Pre Processor
666 Summary(es): El preprocesador de C
667 Summary(pl): Preprocesor C
668 Summary(pt_BR): Preprocessador para a linguagem C
669 Group: Development/Languages
670 Version: %{GCC_VERSION}
675 The C preprocessor is a "macro processor" that is used automatically
676 by the C compiler to transform your program before actual compilation.
677 It is called a macro processor because it allows you to define
678 "macros", which are brief abbreviations for longer constructs.
680 The C preprocessor provides four separate facilities that you can use
683 - Inclusion of header files. These are files of declarations that can
684 be substituted into your program.
685 - Macro expansion. You can define "macros", which are abbreviations
686 for arbitrary fragments of C code, and then the C preprocessor will
687 replace the macros with their definitions throughout the program.
688 - Conditional compilation. Using special preprocessing directives, you
689 can include or exclude parts of the program according to various
691 - Line control. If you use a program to combine or rearrange source
692 files into an intermediate file which is then compiled, you can use
693 line control to inform the compiler of where each source line
694 originally came from.
696 %description -n cpp -l es
697 El preprocesador de C es un "procesador de macros" que es usado
698 automáticamente por el compilador C para transformar su programa antes
699 de que éste se actualmente compile. Se llama procesador de macros
700 porque permite definir "macros", los que son abreviaciones concisas
701 para construcciones más largas.
703 El preprocesador C provee cuatro cualidadedes distintas que puede usar
706 - Inclusión de ficheros de cabecera. Éstos son ficheros de
707 declaraciones que pueden incorporarse a su programa.
708 - Expansión de macros. Puede definir "macros", los que son
709 abreviaciones para fragmentos arbitrarios de código C, y a lo largo
710 del programa el preprocesador sustituirá los macros con sus
712 - Compilación condicional. Usando especiales directivas del preproceso
713 puede incluir o excluir partes del programa según varias condiciones.
714 - Control de líneas. Si usa un programa para combinar o reorganizar el
715 código fuente en un fichero intermedio que luego es compilado, puede
716 usar control de líneas para informar el compilador de dónde origina
719 %description -n cpp -l pl
720 Preprocesor C jest "makro procesorem" który jest automatycznie
721 u¿ywany przez kompilator C do obróbki kompilowanego programu przed
722 w³a¶ciw± kompilacj±. Jest on nazywany makroprocesorem, poniewa¿
723 umo¿liwia definiowanie i rozwijanie makr umo¿liwiaj±cych skracanie
724 d³ugich konstrukcji w jêzyku C.
726 Preprocesor C umo¿liwia wykonywanie czterech ró¿nych typów operacji:
728 - Do³±czanie plików (np. nag³ówkowych). Wstawia pliki w miejscu
729 deklaracji polecenia do³±czenia innego pliku.
730 - Rozwijanie makr. Mo¿na definiowaæ "makra" nadaj±c im identyfikatory,
731 których pó¼niejsze u¿ycie powoduje podczas rozwijania podmienienie
732 indentyfikatora deklarowan± wcze¶niej warto¶ci±.
733 - Kompilacja warunkowa. W zale¿no¶ci od obecno¶ci symboli i dyrektyw w
734 ¶rodowisku preprocesora s± w³±czane warunkowo, b±d¼ nie, pewne
735 fragmenty obrabianego strumienia tekstów.
736 - Kontrola linii ¼ród³a. Niezale¿nie od tego jakim przeobra¿eniom
737 podlega wynikowy strumieñ danych w wyniku rozwijania makr i do³±czania
738 s± zapamiêtywane informacje o tym, której linii pliku ¼ród³owego
739 odpowiada fragment pliku wynikowego.
741 %description -n cpp -l pt_BR
742 O preprocessador C é um "processador de macros", que é utilizado pelo
743 compilador C para fazer algumas modificações no seu programa, antes da
744 compilação em si. Ele é chamado de "processador de macros" porque
745 permite a você definir "macros", que são abreviações para construções
748 O preprocessador C fornece quatro funcionalidades básicas: inclusão de
749 arquivos de cabeçalho; expansão de macros; compilação condicional; e
750 controle da numeração das linhas do programa.
753 %setup -q -a1 -n %{name}-%{GCC_VERSION}
754 mv ksi-%{KSI_VERSION} gcc/ksi
760 %{!?debug:%patch4 -p1}
766 # not sure if it wouldn't break x86 (it shouldn't, but better safe than sorry)
787 # because we distribute modified version of gcc...
788 perl -pi -e 's/(version.*)";/$1 (PLD Linux)";/' gcc/version.c
789 perl -pi -e 's@(bug_report_url.*<URL:).*";@$1http://bugs.pld-linux.org/>";@' gcc/version.c
792 # cd gcc && autoconf; cd ..
793 # autoconf is not needed!
794 cp /usr/share/automake/config.sub .
796 rm -rf obj-%{_target_platform} && install -d obj-%{_target_platform} && cd obj-%{_target_platform}
798 CFLAGS="%{rpmcflags}" \
799 CXXFLAGS="%{rpmcflags}" \
800 TEXCONFIG=false ../configure \
801 --prefix=%{_prefix} \
802 --libdir=%{_libdir} \
803 --libexecdir=%{_libexecdir} \
804 --infodir=%{_infodir} \
805 --mandir=%{_mandir} \
807 --enable-threads=posix \
808 --enable-__cxa_atexit \
809 --enable-languages="c,c++,f77%{?with_objc:,objc}%{?with_ada:,ada}%{?with_java:,java},ksi" \
821 --with-slibdir=%{_slibdir} \
825 PATH=$PATH:/sbin:%{_sbindir}
828 %{__make} -C obj-%{_target_platform} bootstrap-lean \
829 GCJFLAGS="%{rpmcflags}" \
830 LDFLAGS_FOR_TARGET="%{rpmldflags}" \
835 for tgt in gnatlib gnattools gnatlib-shared; do
836 %{__make} -C obj-%{_target_platform}/gcc $tgt \
837 LDFLAGS_FOR_TARGET="%{rpmldflags}" \
844 rm -rf $RPM_BUILD_ROOT
845 install -d $RPM_BUILD_ROOT{/lib,%{_datadir},%{_infodir}}
847 cd obj-%{_target_platform}
848 PATH=$PATH:/sbin:%{_sbindir}
852 infodir=%{_infodir} \
853 DESTDIR=$RPM_BUILD_ROOT
856 ln -f $RPM_BUILD_ROOT%{_bindir}/sparc64-pld-linux-gcc \
857 $RPM_BUILD_ROOT%{_bindir}/sparc-pld-linux-gcc
860 ln -sf gcc $RPM_BUILD_ROOT%{_bindir}/cc
861 echo ".so gcc.1" > $RPM_BUILD_ROOT%{_mandir}/man1/cc.1
863 ln -sf g77 $RPM_BUILD_ROOT%{_bindir}/f77
864 echo ".so g77.1" > $RPM_BUILD_ROOT%{_mandir}/man1/f77.1
867 # move ada shared libraries to proper place...
868 mv $RPM_BUILD_ROOT%{_libdir}/gcc-lib/*/*/adalib/*.so.1 \
869 $RPM_BUILD_ROOT%{_libdir}
870 # check if symlink to be made is valid
871 test -f $RPM_BUILD_ROOT%{_libdir}/libgnat-3.15.so.1
872 ln -sf libgnat-3.15.so.1 $RPM_BUILD_ROOT%{_libdir}/libgnat-3.15.so
873 ln -sf libgnarl-3.15.so.1 $RPM_BUILD_ROOT%{_libdir}/libgnarl-3.15.so
874 ln -sf libgnat-3.15.so $RPM_BUILD_ROOT%{_libdir}/libgnat.so
875 ln -sf libgnarl-3.15.so $RPM_BUILD_ROOT%{_libdir}/libgnarl.so
878 ln -sf %{_bindir}/cpp $RPM_BUILD_ROOT/lib/cpp
884 cp -f libjava/doc/cni.sgml libjava/READ* java-doc
885 cp -f fastjar/README java-doc/README.fastjar
886 cp -f libffi/README java-doc/README.libffi
887 cp -f libffi/LICENSE java-doc/LICENSE.libffi
891 cp -f libobjc/README gcc/objc/README.libobjc
894 # avoid -L poisoning in *.la - there should be only -L%{_libdir}/gcc-lib/*/%{version}
895 for f in libstdc++.la libsupc++.la %{?with_java:libgcj.la} ; do
896 perl -pi -e 's@-L[^ ]*[acs.] @@g' $RPM_BUILD_ROOT%{_libdir}/$f
898 # normalize libdir, to avoid propagation of unnecessary RPATHs by libtool
899 for f in libstdc++.la libsupc++.la libg2c.la \
900 %{?with_java:libgcj.la lib-org-w3c-dom.la lib-org-xml-sax.la libffi.la} \
901 %{?with_objc:libobjc.la}; do
902 perl -pi -e "s@^libdir='.*@libdir='/usr/%{_lib}'@" $RPM_BUILD_ROOT%{_libdir}/$f
905 bzip2 -dc %{SOURCE2} | tar xf - -C $RPM_BUILD_ROOT%{_mandir}
906 mv -f $RPM_BUILD_ROOT%{_mandir}/ja/man1/{cccp,cpp}.1
908 # include/ contains install-tools/include/* and headers that were fixed up
909 # by fixincludes, we don't want former
910 gccdir=$(echo $RPM_BUILD_ROOT%{_libdir}/gcc-lib/*/*/)
912 # we have to save these however
913 mv -f $gccdir/include/{%{?with_objc:objc,}g2c.h,syslimits.h%{?with_java:,gcj}} $gccdir/tmp
914 rm -rf $gccdir/include
915 mv -f $gccdir/tmp $gccdir/include
916 cp $gccdir/install-tools/include/*.h $gccdir/include
917 # but we don't want anything more from install-tools
918 rm -rf $gccdir/install-tools
921 %find_lang libstdc\+\+
924 rm -rf $RPM_BUILD_ROOT
927 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
930 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
933 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
936 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
939 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
942 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
945 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
948 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
951 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
954 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
956 %post -p /sbin/ldconfig -n libgcc
957 %postun -p /sbin/ldconfig -n libgcc
958 %post -p /sbin/ldconfig -n libstdc++
959 %postun -p /sbin/ldconfig -n libstdc++
960 %post -p /sbin/ldconfig -n libobjc
961 %postun -p /sbin/ldconfig -n libobjc
962 %post -p /sbin/ldconfig -n libg2c
963 %postun -p /sbin/ldconfig -n libg2c
964 %post -p /sbin/ldconfig -n libgcj
965 %postun -p /sbin/ldconfig -n libgcj
966 %post -p /sbin/ldconfig -n libgnat
967 %postun -p /sbin/ldconfig -n libgnat
968 %post -p /sbin/ldconfig -n libffi
969 %postun -p /sbin/ldconfig -n libffi
971 %files -f %{name}.lang
972 %defattr(644,root,root,755)
974 %dir %{_libdir}/gcc-lib/*/*
975 %dir %{_libdir}/gcc-lib/*/*/include
976 %attr(755,root,root) %{_bindir}/*-gcc*
977 %attr(755,root,root) %{_bindir}/gcc
978 %attr(755,root,root) %{_bindir}/gccbug
979 %attr(755,root,root) %{_bindir}/gcov
980 %attr(755,root,root) %{_bindir}/cc
982 %{_mandir}/man1/gcc.1*
983 %{_mandir}/man1/cc.1*
984 %{_mandir}/man1/gcov.1*
985 %lang(fr) %{_mandir}/fr/man1/gcc.1*
986 %lang(ja) %{_mandir}/ja/man1/gcc.1*
989 %attr(755,root,root) %{_slibdir}*/lib*.so
990 %{_libdir}/gcc-lib/*/*/libgcc.a
991 %{_libdir}/gcc-lib/*/*/libgcc_eh.a
992 %{_libdir}/gcc-lib/*/*/specs
993 %{_libdir}*/gcc-lib/*/*/crt*.o
995 %{_libdir}/gcc-lib/*/*/*/libgcc.a
996 %{_libdir}/gcc-lib/*/*/*/libgcc_eh.a
997 %{_libdir}*/gcc-lib/*/*/*/crt*.o
1000 %{_libdir}/gcc-lib/*/*/ecrt*.o
1001 %{_libdir}/gcc-lib/*/*/ncrt*.o
1002 %{_libdir}/gcc-lib/*/*/nof
1005 %attr(755,root,root) %{_libdir}/gcc-lib/*/*/cc1
1006 %attr(755,root,root) %{_libdir}/gcc-lib/*/*/collect2
1008 %{_libdir}/gcc-lib/*/*/include/*.h
1009 %exclude %{_libdir}/gcc-lib/*/*/include/g2c.h
1012 %defattr(644,root,root,755)
1013 %attr(755,root,root) %{_slibdir}*/lib*.so.*
1016 %defattr(644,root,root,755)
1017 %attr(755,root,root) %{_bindir}/g++
1018 %attr(755,root,root) %{_bindir}/*-g++
1019 %attr(755,root,root) %{_bindir}/c++
1020 %attr(755,root,root) %{_bindir}/*-c++
1021 %attr(755,root,root) %{_libdir}/gcc-lib/*/*/cc1plus
1022 %{_libdir}*/libsupc++.la
1024 %{_libdir}/nof/libsupc++.la
1025 %{_libdir}/nof/libsupc++.a
1027 %{_libdir}*/libsupc++.a
1028 %{_mandir}/man1/g++.1*
1029 %lang(ja) %{_mandir}/ja/man1/g++.1*
1031 %files -n libstdc++ -f libstdc++.lang
1032 %defattr(644,root,root,755)
1033 %attr(755,root,root) %{_libdir}*/libstdc++.so.*.*.*
1035 %attr(755,root,root) %{_libdir}/nof/libstdc++.so.*.*.*
1038 %files -n libstdc++-devel
1039 %defattr(644,root,root,755)
1040 %doc libstdc++-v3/docs/html
1041 %dir %{_includedir}/c++
1042 %{_includedir}/c++/%{GCC_VERSION}
1043 %attr(755,root,root) %{_libdir}*/libstdc++.so
1044 %{_libdir}*/libstdc++.la
1046 %attr(755,root,root) %{_libdir}/nof/libstdc++.so
1047 %{_libdir}/nof/libstdc++.la
1050 %files -n libstdc++-static
1051 %defattr(644,root,root,755)
1052 %{_libdir}*/libstdc++.a
1054 %{_libdir}/nof/libstdc++.a
1059 %defattr(644,root,root,755)
1061 %attr(755,root,root) %{_libdir}/gcc-lib/*/*/cc1obj
1062 %attr(755,root,root) %{_libdir}*/libobjc.so
1063 %{_libdir}*/libobjc.la
1065 %attr(755,root,root) %{_libdir}/nof/libobjc.so
1066 %{_libdir}/nof/libobjc.la
1068 %{_libdir}/gcc-lib/*/*/include/objc
1071 %defattr(644,root,root,755)
1072 %attr(755,root,root) %{_libdir}*/libobjc.so.*.*.*
1074 %attr(755,root,root) %{_libdir}/nof/libobjc.so.*.*.*
1077 %files -n libobjc-static
1078 %defattr(644,root,root,755)
1079 %{_libdir}*/libobjc.a
1081 %{_libdir}/nof/libobjc.a
1086 %defattr(644,root,root,755)
1087 %attr(755,root,root) %{_bindir}/g77
1088 %attr(755,root,root) %{_bindir}/f77
1090 %attr(755,root,root) %{_libdir}/gcc-lib/*/*/f771
1091 %{_libdir}*/libfrtbegin.a
1092 %{_libdir}*/libg2c.la
1093 %attr(755,root,root) %{_libdir}*/libg2c.so
1095 %{_libdir}/nof/libfrtbegin.a
1096 %{_libdir}/nof/libg2c.la
1097 %attr(755,root,root) %{_libdir}/nof/libg2c.so
1099 %{_libdir}/gcc-lib/*/*/include/g2c.h
1100 %{_mandir}/man1/g77.1*
1101 %{_mandir}/man1/f77.1*
1102 %lang(ja) %{_mandir}/ja/man1/g77.1*
1103 %lang(ja) %{_mandir}/ja/man1/f77.1*
1106 %defattr(644,root,root,755)
1107 %attr(755,root,root) %{_libdir}*/libg2c.so.*.*.*
1109 %attr(755,root,root) %{_libdir}/nof/libg2c.so.*.*.*
1112 %files -n libg2c-static
1113 %defattr(644,root,root,755)
1114 %{_libdir}*/libg2c.a
1116 %{_libdir}/nof/libg2c.a
1121 %defattr(644,root,root,755)
1123 %attr(755,root,root) %{_bindir}/gcj*
1124 %attr(755,root,root) %{_bindir}/gij
1125 %attr(755,root,root) %{_bindir}/jcf-dump
1126 %attr(755,root,root) %{_bindir}/jv-*
1127 %attr(755,root,root) %{_bindir}/*-gcj
1128 %attr(755,root,root) %{_libdir}/gcc-lib/*/*/jc1
1129 %attr(755,root,root) %{_libdir}/gcc-lib/*/*/jvgenmain
1131 %{_mandir}/man1/jcf-*
1132 %{_mandir}/man1/jv-*
1133 %{_mandir}/man1/gij*
1134 %{_mandir}/man1/gcj*
1137 %defattr(644,root,root,755)
1138 %attr(755,root,root) %{_bindir}/rmi*
1139 %attr(755,root,root) %{_bindir}/jar
1140 %attr(755,root,root) %{_bindir}/grepjar
1141 %{_mandir}/man1/rmi*
1142 %{_mandir}/man1/jar*
1143 %{_mandir}/man1/grepjar*
1144 %{_infodir}/fastjar*
1147 %defattr(644,root,root,755)
1148 %attr(755,root,root) %{_bindir}/addr2name.awk
1149 %attr(755,root,root) %{_libdir}/lib*cj*.so.*.*.*
1150 %attr(755,root,root) %{_libdir}/lib-org*.so.*.*.*
1152 %attr(755,root,root) %{_libdir}/nof/lib*cj*.so.*
1153 %attr(755,root,root) %{_libdir}/nof/lib-org*.so.*
1156 %files -n libgcj-devel
1157 %defattr(644,root,root,755)
1159 %{_includedir}/javax
1160 #%%{_includedir}/org
1163 %{_includedir}/gnu/*
1164 %{_libdir}/gcc-lib/*/*/include/gcj
1165 %dir %{_libdir}/security
1166 %{_libdir}/security/*
1167 %dir %{_datadir}/java
1168 %{_datadir}/java/libgcj*.jar
1169 %{_libdir}/lib*cj.spec
1170 %attr(755,root,root) %{_libdir}/lib*cj*.so
1171 %attr(755,root,root) %{_libdir}/lib-org-*.so
1172 %{_libdir}/lib*cj*.la
1173 %{_libdir}/lib-org-*.la
1175 %attr(755,root,root) %{_libdir}/nof/lib*cj*.so
1176 %attr(755,root,root) %{_libdir}/nof/lib-org-*.so
1177 %{_libdir}/nof/lib*cj*.la
1178 %{_libdir}/nof/lib-org-*.la
1181 %files -n libgcj-static
1182 %defattr(644,root,root,755)
1183 %{_libdir}/lib*cj*.a
1184 %{_libdir}/lib-org-*.a
1186 %{_libdir}/nof/lib*cj*.a
1187 %{_libdir}/nof/lib-org-*.a
1191 %defattr(644,root,root,755)
1192 %attr(755,root,root) %{_libdir}/libffi-*.so
1194 %attr(755,root,root) %{_libdir}/nof/libffi-*.so
1197 %files -n libffi-devel
1198 %defattr(644,root,root,755)
1199 %attr(755,root,root) %{_libdir}/libffi.so
1200 %{_libdir}/libffi.la
1202 %attr(755,root,root) %{_libdir}/nof/libffi.so
1203 %{_libdir}/nof/libffi.la
1207 %files -n libffi-static
1208 %defattr(644,root,root,755)
1211 %{_libdir}/nof/libffi.a
1217 %defattr(644,root,root,755)
1218 %attr(755,root,root) %{_libdir}/gcc-lib/*/*/gnat1
1219 %{_libdir}/gcc-lib/*/*/adainclude
1220 %dir %{_libdir}/gcc-lib/*/*/adalib
1221 %{_libdir}/gcc-lib/*/*/adalib/*.ali
1223 %{_libdir}/gcc-lib/*/*/adalib/libgmem.a
1225 %{_libdir}/gcc-lib/*/*/adalib/Makefile.adalib
1226 %attr(755,root,root) %{_bindir}/gnat*
1228 %attr(755,root,root) %{_libdir}/libgnat*.so
1229 %attr(755,root,root) %{_libdir}/libgnarl*.so
1232 %defattr(644,root,root,755)
1233 %attr(755,root,root) %{_libdir}/libgna*.so.1
1235 %files -n libgnat-static
1236 %defattr(644,root,root,755)
1237 %{_libdir}/gcc-lib/*/*/adalib/libgna*.a
1241 %defattr(644,root,root,755)
1242 %doc gcc/ksi/README gcc/ksi/NEWS gcc/ksi/t/*.{ksi,c,foo}
1244 %attr(755,root,root) %{_libdir}/gcc-lib/*/*/ksi1
1247 %defattr(644,root,root,755)
1248 %attr(755,root,root) /lib/cpp
1249 %attr(755,root,root) %{_bindir}/cpp
1250 %{_mandir}/man1/cpp.1*
1251 %lang(ja) %{_mandir}/ja/man1/cpp.1*