3 # - http://gcc.gnu.org/PR11203 (inline-asm)
4 # - http://gcc.gnu.org/PR17640 (empty loop not removed after optimization)
5 # - http://gcc.gnu.org/PR20128 (ice with mudflap + profile generate)
8 %bcond_without ada # build without ADA support
9 %bcond_without fortran # build without Fortran support
10 %bcond_without java # build without Java support
11 %bcond_without objc # build without Objective-C support
12 %bcond_without objcxx # build without Objective-C++ support
13 %bcond_with multilib # build with multilib support (it needs glibc[32&64]-devel)
14 %bcond_without profiling # build without profiling
15 %bcond_without bootstrap # omit 3-stage bootstrap
16 %bcond_with tests # torture gcc
18 # debuginfo not needed for devel snaps.
19 %define _enable_debug_packages 0
25 %if %{without bootstrap}
26 %undefine with_profiling
29 %ifnarch %{x8664} ppc64 s390x sparc64
30 %undefine with_multilib
33 Summary: GNU Compiler Collection: the C compiler and shared files
34 Summary(es): Colección de compiladores GNU: el compilador C y ficheros compartidos
35 Summary(pl): Kolekcja kompilatorów GNU: kompilator C i pliki wspó³dzielone
36 Summary(pt_BR): Coleção dos compiladores GNU: o compilador C e arquivos compartilhados
39 %define _snap 20050701T1908UTC
43 Group: Development/Languages
44 #Source0: ftp://gcc.gnu.org/pub/gcc/releases/gcc-%{version}/%{name}-%{version}.tar.bz2
45 #Source0: ftp://gcc.gnu.org/pub/gcc/snapshots/4.1-%{_snap}/gcc-4.1-%{_snap}.tar.bz2
46 Source0: gcc-4.1-%{_snap}.tar.bz2
47 # Source0-md5: 40fb5ac23af0b2b92550b22561ead27d
48 Source1: %{name}-optimize-la.pl
49 Patch0: %{name}-info.patch
50 Patch1: %{name}-nolocalefiles.patch
51 Patch2: %{name}-nodebug.patch
52 Patch3: %{name}-ada-link-new-libgnat.patch
53 Patch4: %{name}-ada-link.patch
54 Patch5: %{name}-alpha-ada_fix.patch
55 Patch6: %{name}-ada-fwrapv.patch
57 Patch10: %{name}-pr7776.patch
58 Patch11: %{name}-pr20218.patch
59 Patch12: %{name}-pr20297.patch
60 Patch13: %{name}-push-pop-visibility.patch
61 Patch14: %{name}-pr21704.patch
62 Patch15: %{name}-pr22051.patch
63 Patch16: %{name}-pr22071.patch
64 Patch17: %{name}-pr17640.patch
65 URL: http://gcc.gnu.org/
66 BuildRequires: autoconf
67 %{?with_tests:BuildRequires: autogen}
68 BuildRequires: automake
69 BuildRequires: binutils >= 2:2.15.94.0.1
71 %{?with_java:BuildRequires: cairo-devel}
72 %{?with_tests:BuildRequires: dejagnu}
73 BuildRequires: fileutils >= 4.0.41
76 BuildRequires: gcc(ada)
77 BuildRequires: gcc-ada
79 BuildRequires: gettext-devel
80 BuildRequires: glibc-devel >= %{!?with_multilib:2.2.5-20}%{?with_multilib:6:2.3.4-1.5}
82 BuildRequires: gmp-devel
83 BuildRequires: libmpfr-devel
85 %{?with_java:BuildRequires: pango-devel}
86 BuildRequires: perl-devel
87 %{?with_java:BuildRequires: pkgconfig}
88 BuildRequires: rpmbuild(macros) >= 1.211
89 BuildRequires: texinfo >= 4.1
90 BuildRequires: zlib-devel
91 # AS_NEEDED directive for dynamic linker
92 # http://sources.redhat.com/ml/glibc-cvs/2005-q1/msg00614.html
93 # http://sources.redhat.com/ml/binutils/2005-01/msg00288.html
94 Requires: binutils >= 2:2.16.90.0.1-0.3
95 Requires: libgcc = %{epoch}:%{version}-%{release}
96 Provides: cpp = %{epoch}:%{version}-%{release}
97 %{?with_ada:Provides: gcc(ada)}
98 %{?with_multilib:Provides: gcc(multilib)}
105 Conflicts: glibc-devel < 2.2.5-20
106 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
108 %define _slibdir /%{_lib}
110 # 32-bit environment on x86-64,ppc64,s390x,sparc64
111 %define _slibdir32 /lib
112 %define _libdir32 /usr/lib
116 A compiler aimed at integrating all the optimizations and features
117 necessary for a high-performance and stable development environment.
119 This package contains the C compiler and some files shared by various
120 parts of the GNU Compiler Collection. In order to use another GCC
121 compiler you will need to install the appropriate subpackage.
124 Un compilador que intenta integrar todas las optimalizaciones y
125 características necesarias para un entorno de desarrollo eficaz y
128 Este paquete contiene el compilador de C y unos ficheros compartidos
129 por varias partes de la colección de compiladores GNU (GCC). Para usar
130 otro compilador de GCC será necesario que instale el subpaquete
134 Kompilator, posiadaj±cy du¿e mo¿liwo¶ci optymalizacyjne niezbêdne do
135 wyprodukowania szybkiego i stabilnego kodu wynikowego.
137 Ten pakiet zawiera kompilator C i pliki wspó³dzielone przez ró¿ne
138 czê¶ci kolekcji kompilatorów GNU (GCC). ¯eby u¿ywaæ innego kompilatora
139 z GCC, trzeba zainstalowaæ odpowiedni podpakiet.
141 %description -l pt_BR
142 Este pacote adiciona infraestrutura básica e suporte a linguagem C ao
143 GNU Compiler Collection.
146 Summary: Shared gcc library
147 Summary(es): Biblioteca compartida de gcc
148 Summary(pl): Biblioteka gcc
149 Summary(pt_BR): Biblioteca runtime para o GCC
150 License: GPL with unlimited link permission
154 %description -n libgcc
157 %description -n libgcc -l es
158 Biblioteca compartida de gcc.
160 %description -n libgcc -l pl
161 Biblioteka dynamiczna gcc.
163 %description -n libgcc -l pt_BR
164 Biblioteca runtime para o GCC.
166 %package -n libmudflap
167 Summary: GCC mudflap shared support library
168 Summary(pl): Wspó³dzielona biblioteka wspomagaj±ca GCC mudflap
169 License: GPL v2+ with unlimited link permission
172 %description -n libmudflap
173 The libmudflap libraries are used by GCC for instrumenting pointer and
174 array dereferencing operations.
176 %description -n libmudflap -l pl
177 Biblioteki libmudflap s± u¿ywane przez GCC do obs³ugi operacji
178 dereferencji wspa¼ników i tablic.
180 %package -n libmudflap-devel
181 Summary: Development files for GCC mudflap library
182 Summary(pl): Pliki programistyczne biblioteki GCC mudflap
183 License: GPL v2+ with unlimited link permission
184 Group: Development/Libraries
185 Requires: libmudflap = %{epoch}:%{version}-%{release}
187 %description -n libmudflap-devel
188 The libmudflap libraries are used by GCC for instrumenting pointer and
189 array dereferencing operations. This package contains development
192 %description -n libmudflap-devel -l pl
193 Biblioteki libmudflap s± u¿ywane przez GCC do obs³ugi operacji
194 dereferencji wspa¼ników i tablic. Ten pakiet zawiera pliki
197 %package -n libmudflap-static
198 Summary: Static GCC mudflap library
199 Summary(pl): Statyczna biblioteka GCC mudflap
200 License: GPL v2+ with unlimited link permission
201 Group: Development/Libraries
202 Requires: libmudflap-devel = %{epoch}:%{version}-%{release}
204 %description -n libmudflap-static
205 The libmudflap libraries are used by GCC for instrumenting pointer and
206 array dereferencing operations. This package contains static
209 %description -n libmudflap-static -l pl
210 Biblioteki libmudflap s± u¿ywane przez GCC do obs³ugi operacji
211 dereferencji wspa¼ników i tablic. Ten pakiet zawiera biblioteki
215 Summary: Ada support for gcc
216 Summary(es): Soporte de Ada para gcc
217 Summary(pl): Obs³uga Ady do gcc
218 Group: Development/Languages
219 Requires: %{name} = %{epoch}:%{version}-%{release}
220 Requires: libgnat = %{epoch}:%{version}-%{release}
222 Obsoletes: gnat-devel
225 This package adds experimental support for compiling Ada programs.
227 %description ada -l es
228 Este paquete añade soporte experimental para compilar programas en
231 %description ada -l pl
232 Ten pakiet dodaje eksperymentalne wsparcie dla kompilacji programów w
236 Summary: Ada standard libraries
237 Summary(es): Bibliotecas estándares de Ada
238 Summary(pl): Biblioteki standardowe dla Ady
239 License: GPL v2+ with linking exception
244 %description -n libgnat
245 This package contains shared libraries needed to run programs written
248 %description -n libgnat -l es
249 Este paquete contiene las bibliotecas compartidas necesarias para
250 ejecutar programas escritos en Ada.
252 %description -n libgnat -l pl
253 Ten pakiet zawiera biblioteki potrzebne do uruchamiania programów
256 %package -n libgnat-static
257 Summary: Static Ada standard libraries
258 Summary(pl): Statyczne biblioteki standardowe dla Ady
259 License: GPL v2+ with linking exception
260 Group: Development/Libraries
261 Obsoletes: gnat-static
263 %description -n libgnat-static
264 This package contains static libraries for programs written in Ada.
266 %description -n libgnat-static -l pl
267 Ten pakiet zawiera biblioteki statyczne dla programów napisanych w
271 Summary: C++ support for gcc
272 Summary(es): Soporte de C++ para gcc
273 Summary(pl): Obs³uga C++ dla gcc
274 Summary(pt_BR): Suporte C++ para o gcc
275 Group: Development/Languages
276 Requires: %{name} = %{epoch}:%{version}-%{release}
281 This package adds C++ support to the GNU Compiler Collection. It
282 includes support for most of the current C++ specification, including
283 templates and exception handling. It does not include a standard C++
284 library, which is available separately.
286 %description c++ -l de
287 Dieses Paket enthält die C++-Unterstützung für den
288 GNU-Compiler-Collection. Es unterstützt die aktuelle
289 C++-Spezifikation, inkl. Templates und Ausnahmeverarbeitung. Eine
290 C++-Standard-Library ist nicht enthalten - sie ist getrennt
293 %description c++ -l es
294 Este paquete añade soporte de C++ al GCC (colección de compiladores
295 GNU). Ello incluye el soporte para la mayoría de la especificación
296 actual de C++, incluyendo plantillas y manejo de excepciones. No
297 incluye la biblioteca estándar de C++, la que es disponible separada.
299 %description c++ -l fr
300 Ce package ajoute un support C++ a la collection de compilateurs GNU.
301 Il comprend un support pour la plupart des spécifications actuelles de
302 C++, dont les modéles et la gestion des exceptions. Il ne comprend pas
303 une bibliothéque C++ standard, qui est disponible séparément.
305 %description c++ -l pl
306 Ten pakiet dodaje obs³ugê C++ do kompilatora gcc. Ma wsparcie dla
307 du¿ej ilo¶ci obecnych specyfikacji C++, nie zawiera natomiast
308 standardowych bibliotek C++, które s± w oddzielnym pakiecie.
310 %description c++ -l pt_BR
311 Este pacote adiciona suporte C++ para o gcc.
313 %description c++ -l tr
314 Bu paket, GNU C derleyicisine C++ desteði ekler. 'Template'ler ve
315 aykýrý durum iþleme gibi çoðu güncel C++ tanýmlarýna uyar. Standart
316 C++ kitaplýðý bu pakette yer almaz.
318 %package -n libstdc++
319 Summary: GNU C++ library
320 Summary(es): Biblioteca C++ de GNU
321 Summary(pl): Biblioteki GNU C++
322 Summary(pt_BR): Biblioteca C++ GNU
323 License: GPL v2+ with free software exception
326 Obsoletes: libstdc++3
328 %description -n libstdc++
329 This is the GNU implementation of the standard C++ libraries, along
330 with additional GNU tools. This package includes the shared libraries
331 necessary to run C++ applications.
333 %description -n libstdc++ -l de
334 Dies ist die GNU-Implementierung der Standard-C++-Libraries mit
335 weiteren GNU-Tools. Dieses Paket enthält die zum Ausführen von
336 C++-Anwendungen erforderlichen gemeinsam genutzten Libraries.
338 %description -n libstdc++ -l es
339 Este es el soporte de las bibliotecas padrón del C++, junto con
340 herramientas GNU adicionales. El paquete incluye las bibliotecas
341 compartidas necesarias para ejecutar aplicaciones C++.
343 %description -n libstdc++ -l fr
344 Ceci est l'implémentation GNU des librairies C++ standard, ainsi que
345 des outils GNU supplémentaires. Ce package comprend les librairies
346 partagées nécessaires à l'exécution d'application C++.
348 %description -n libstdc++ -l pl
349 Pakiet ten zawiera biblioteki bêd±ce implementacj± standardowych
350 bibliotek C++. Znajduj± siê w nim biblioteki dynamiczne niezbêdne do
351 uruchomienia aplikacji napisanych w C++.
353 %description -n libstdc++ -l pt_BR
354 Este pacote é uma implementação da biblioteca padrão C++ v3, um
355 subconjunto do padrão ISO 14882.
357 %description -n libstdc++ -l tr
358 Bu paket, standart C++ kitaplýklarýnýn GNU gerçeklemesidir ve C++
359 uygulamalarýnýn koþturulmasý için gerekli kitaplýklarý içerir.
361 %package -n libstdc++-devel
362 Summary: Header files and documentation for C++ development
363 Summary(de): Header-Dateien zur Entwicklung mit C++
364 Summary(es): Ficheros de cabecera y documentación para desarrollo C++
365 Summary(fr): Fichiers d'en-tête et biblitothèques pour développer en C++
366 Summary(pl): Pliki nag³ówkowe i dokumentacja do biblioteki standardowej C++
367 Summary(pt_BR): Arquivos de inclusão e bibliotecas para o desenvolvimento em C++
368 Summary(tr): C++ ile program geliþtirmek için gerekli dosyalar
369 License: GPL v2+ with free software exception
370 Group: Development/Libraries
371 Requires: %{name}-c++ = %{epoch}:%{version}-%{release}
372 Requires: libstdc++ = %{epoch}:%{version}-%{release}
373 Requires: glibc-devel
374 Obsoletes: libg++-devel
375 Obsoletes: libstdc++3-devel
377 %description -n libstdc++-devel
378 This is the GNU implementation of the standard C++ libraries. This
379 package includes the header files needed for C++ development and
380 library documentation.
382 %description -n libstdc++-devel -l es
383 Este es el soporte de las bibliotecas padrón del lenguaje C++. Este
384 paquete incluye los archivos de inclusión y bibliotecas necesarios
385 para desarrollo de programas en lenguaje C++.
387 %description -n libstdc++-devel -l pl
388 Pakiet ten zawiera biblioteki bêd±ce implementacj± standardowych
389 bibliotek C++. Znajduj± siê w nim pliki nag³ówkowe wykorzystywane przy
390 programowaniu w jêzyku C++ oraz dokumentacja biblioteki standardowej.
392 %description -n libstdc++-devel -l pt_BR
393 Este pacote inclui os arquivos de inclusão e bibliotecas necessárias
394 para desenvolvimento de programas C++.
396 %package -n libstdc++-static
397 Summary: Static C++ standard library
398 Summary(es): Biblioteca estándar estática de C++
399 Summary(pl): Statyczna biblioteka standardowa C++
400 License: GPL v2+ with free software exception
401 Group: Development/Libraries
402 Requires: libstdc++-devel = %{epoch}:%{version}-%{release}
404 %description -n libstdc++-static
405 Static C++ standard library.
407 %description -n libstdc++-static -l es
408 Biblioteca estándar estática de C++.
410 %description -n libstdc++-static -l pl
411 Statyczna biblioteka standardowa C++.
414 Summary: Fortran 95 support for gcc
415 Summary(es): Soporte de Fortran 95 para gcc
416 Summary(pl): Obs³uga Fortranu 95 dla gcc
417 Summary(pt_BR): Suporte Fortran 95 para o GCC
418 Group: Development/Languages/Fortran
419 Requires: libgfortran = %{epoch}:%{version}-%{release}
420 Provides: gcc-g77 = %{epoch}:%{version}-%{release}
425 This package adds support for compiling Fortran 95 programs with the
428 %description fortran -l es
429 Este paquete añade soporte para compilar programas escritos en Fortran
430 95 con el compilador GNU.
432 %description fortran -l pl
433 Ten pakiet dodaje obs³ugê Fortranu 95 do kompilatora gcc. Jest
434 potrzebny do kompilowania programów pisanych w jêzyku Fortran 95.
436 %description fortran -l pt_BR
437 Suporte Fortran 95 para o GCC.
439 %package -n libgfortran
440 Summary: Fortran 95 Libraries
441 Summary(es): Bibliotecas de Fortran 95
442 Summary(pl): Biblioteki Fortranu 95
447 %description -n libgfortran
448 Fortran 95 Libraries.
450 %description -n libgfortran -l es
451 Bibliotecas de Fortran 95.
453 %description -n libgfortran -l pl
454 Biblioteki Fortranu 95.
456 %package -n libgfortran-static
457 Summary: Static Fortran 95 Libraries
458 Summary(es): Bibliotecas estáticas de Fortran 95
459 Summary(pl): Statyczne Biblioteki Fortranu 95
461 Group: Development/Libraries
462 Requires: libgfortran = %{epoch}:%{version}-%{release}
463 Obsoletes: libg2c-static
465 %description -n libgfortran-static
466 Static Fortran 95 Libraries.
468 %description -n libgfortran-static -l es
469 Bibliotecas estáticas de Fortran 95.
471 %description -n libgfortran-static -l pl
472 Statyczne biblioteki Fortranu 95.
475 Summary: Java support for gcc
476 Summary(es): Soporte de Java para gcc
477 Summary(pl): Obs³uga Javy dla gcc
478 Group: Development/Languages/Java
479 Requires: %{name} = %{epoch}:%{version}-%{release}
480 Requires: libgcj-devel = %{epoch}:%{version}-%{release}
481 Provides: gcj = %{epoch}:%{version}-%{release}
482 Provides: gcc-java-tools
484 Obsoletes: gcc-java-tools
487 This package adds experimental support for compiling Java(TM) programs
488 and bytecode into native code. To use this you will also need the
491 %description java -l es
492 Este paquete añade soporte experimental para compilar programas
493 Java(tm) y su bytecode en código nativo. Para usarlo también va a
494 necesitar el paquete libgcj.
496 %description java -l pl
497 Ten pakiet dodaje mo¿liwo¶æ kompilowania programów w jêzyku Java(TM)
498 oraz bajtkodu do kodu natywnego. Do u¿ywania go wymagany jest
499 dodatkowo pakiet libgcj.
502 Summary: Java Class Libraries
503 Summary(es): Bibliotecas de clases de Java
504 Summary(pl): Biblioteki Klas Javy
505 License: GPL with limited linking exception
509 %description -n libgcj
510 Java Class Libraries.
512 %description -n libgcj -l es
513 Bibliotecas de clases de Java.
515 %description -n libgcj -l pl
516 Biblioteki Klas Javy.
518 %package -n libgcj-devel
519 Summary: Development files for Java Class Libraries
520 Summary(es): Ficheros de desarrollo para las bibliotecas de clases de Java
521 Summary(pl): Pliki nag³ówkowe dla Bibliotek Klas Javy
522 License: GPL with limited linking exception
523 Group: Development/Libraries
524 Requires: libgcj = %{epoch}:%{version}-%{release}
526 Obsoletes: libgcj3-devel
528 %description -n libgcj-devel
529 Development files for Java Class Libraries.
531 %description -n libgcj-devel -l es
532 Ficheros de desarrollo para las bibliotecas de clases de Java.
534 %description -n libgcj-devel -l pl
535 Pliki nag³ówkowe dla Bibliotek Klas Javy.
537 %package -n libgcj-static
538 Summary: Static Java Class Libraries
539 Summary(es): Bibliotecas estáticas de clases de Java
540 Summary(pl): Statyczne Biblioteki Klas Javy
541 License: GPL with limited linking exception
542 Group: Development/Libraries
543 Requires: libgcj-devel = %{epoch}:%{version}-%{release}
544 Requires: libstdc++-devel = %{epoch}:%{version}-%{release}
546 %description -n libgcj-static
547 Static Java Class Libraries.
549 %description -n libgcj-static -l es
550 Bibliotecas estáticas de clases de Java.
552 %description -n libgcj-static -l pl
553 Statyczne Biblioteki Klas Javy.
556 Summary: Foreign Function Interface library
557 Summary(es): Biblioteca de interfaz de funciones ajenas
558 Summary(pl): Biblioteka zewnêtrznych wywo³añ funkcji
562 %description -n libffi
563 The libffi library provides a portable, high level programming
564 interface to various calling conventions. This allows a programmer to
565 call any function specified by a call interface description at run
568 %description -n libffi -l es
569 La biblioteca libffi provee una interfaz portable de programación de
570 alto nivel para varias convenciones de llamada. Ello permite que un
571 programador llame una función cualquiera especificada por una
572 descripción de interfaz de llamada en el tiempo de ejecución.
574 %description -n libffi -l pl
575 Biblioteka libffi dostarcza przeno¶nego, wysokopoziomowego
576 miêdzymordzia do ró¿nych konwencji wywo³añ funkcji. Pozwala to
577 programi¶cie wywo³ywaæ dowolne funkcje podaj±c konwencjê wywo³ania w
580 %package -n libffi-devel
581 Summary: Development files for Foreign Function Interface library
582 Summary(es): Ficheros de desarrollo para libffi
583 Summary(pl): Pliki nag³ówkowe dla libffi
585 Group: Development/Libraries
586 Requires: libffi = %{epoch}:%{version}-%{release}
588 %description -n libffi-devel
589 Development files for Foreign Function Interface library.
591 %description -n libffi-devel -l es
592 Ficheros de desarrollo para libffi.
594 %description -n libffi-devel -l pl
595 Pliki nag³ówkowe dla libffi.
597 %package -n libffi-static
598 Summary: Static Foreign Function Interface library
599 Summary(es): Biblioteca libffi estática
600 Summary(pl): Statyczna biblioteka libffi
602 Group: Development/Libraries
603 Requires: libffi-devel = %{epoch}:%{version}-%{release}
605 %description -n libffi-static
606 Static Foreign Function Interface library.
608 %description -n libffi-static -l es
609 Biblioteca libffi estática.
611 %description -n libffi-static -l pl
612 Statyczna biblioteka libffi.
615 Summary: Objective C support for gcc
616 Summary(de): Objektive C-Unterstützung für gcc
617 Summary(es): Soporte de Objective C para gcc
618 Summary(fr): Gestion d'Objective C pour gcc
619 Summary(pl): Obs³uga obiektowego C dla kompilatora gcc
620 Summary(tr): gcc için Objective C desteði
621 Group: Development/Languages
622 Requires: %{name} = %{epoch}:%{version}-%{release}
623 Requires: libobjc = %{epoch}:%{version}-%{release}
628 This package adds Objective C support to the GNU Compiler Collection.
629 Objective C is a object oriented derivative of the C language, mainly
630 used on systems running NeXTSTEP. This package does not include the
631 standard objective C object library.
633 %description objc -l de
634 Dieses Paket ergänzt den GNU-Compiler-Collection durch
635 Objective-C-Support. Objective C ist ein objektorientiertes Derivat
636 von C, das zur Hauptsache auf Systemen mit NeXTSTEP zum Einsatz kommt.
637 Die Standard-Objective-C-Objekt-Library ist nicht Teil des Pakets.
639 %description objc -l es
640 Este paquete añade soporte de Objective C al GCC (colección de
641 compiladores GNU). Objective C es un lenguaje orientado a objetos
642 derivado de C, principalmente usado en sistemas que funcionan bajo
643 NeXTSTEP. El paquete no incluye la biblioteca de objetos estándar de
646 %description objc -l fr
647 Ce package ajoute un support Objective C a la collection de
648 compilateurs GNU. L'Objective C est un langage orienté objetdérivé du
649 langage C, principalement utilisé sur les systèmes NeXTSTEP. Ce
650 package n'inclue pas la bibliothéque Objective C standard.
652 %description objc -l pl
653 Ten pakiet dodaje obs³ugê obiektowego C do kompilatora gcc. Obiektowe
654 C (objc) jest zorientowan± obiektowo pochodn± jêzyka C, u¿ywan±
655 g³ównie w systemach u¿ywaj±cych NeXTSTEP. W pakiecie nie ma
656 standardowej biblioteki objc (która znajduje siê w osobnym pakiecie).
658 %description objc -l tr
659 Bu paket, GNU C derleyicisine Objective C desteði ekler. Objective C,
660 C dilinin nesne yönelik bir türevidir ve NeXTSTEP altýnda çalýþan
661 sistemlerde yaygýn olarak kullanýlýr. Standart Objective C nesne
662 kitaplýðý bu pakette yer almaz.
665 Summary: Objective C++ support for gcc
666 Summary(pl): Obs³uga jêzyka Objective C++ dla gcc
667 Group: Development/Languages
668 Requires: %{name}-c++ = %{epoch}:%{version}-%{release}
669 Requires: %{name}-objc = %{epoch}:%{version}-%{release}
672 This package adds Objective C++ support to the GNU Compiler
675 %description objc++ -l pl
676 Ten pakiet dodaje obs³ugê jêzyka Objective C++ do zestawu
677 kompilatorów GNU Compiler Collection.
680 Summary: Objective C Libraries
681 Summary(es): Bibliotecas de Objective C
682 Summary(pl): Biblioteki Obiektowego C
683 License: GPL v2+ with linking exception
687 %description -n libobjc
688 Objective C Libraries.
690 %description -n libobjc -l es
691 Bibliotecas de Objective C.
693 %description -n libobjc -l pl
694 Biblioteki Obiektowego C.
696 %package -n libobjc-static
697 Summary: Static Objective C Libraries
698 Summary(es): Bibliotecas estáticas de Objective C
699 Summary(pl): Statyczne Biblioteki Obiektowego C
700 License: GPL v2+ with linking exception
701 Group: Development/Libraries
702 Requires: libobjc = %{epoch}:%{version}-%{release}
704 %description -n libobjc-static
705 Static Objective C Libraries.
707 %description -n libobjc-static -l es
708 Bibliotecas estáticas de Objective C.
710 %description -n libobjc-static -l pl
711 Statyczne biblioteki Obiektowego C.
714 #setup -q -n gcc-%{version}
715 %setup -q -n gcc-4.1-%{_snap}
719 %{!?debug:%patch2 -p1}
735 # because we distribute modified version of gcc...
736 perl -pi -e 's/(version.*)";/$1 (PLD Linux)";/' gcc/version.c
737 perl -pi -e 's@(bug_report_url.*<URL:).*";@$1http://bugs.pld-linux.org/>";@' gcc/version.c
739 mv ChangeLog ChangeLog.general
746 cp -f /usr/share/automake/config.sub .
748 rm -rf obj-%{_target_platform}
749 install -d obj-%{_target_platform}
750 cd obj-%{_target_platform}
752 CFLAGS="%{rpmcflags}" \
753 CXXFLAGS="%{rpmcxxflags}" \
756 --prefix=%{_prefix} \
757 --libdir=%{_libdir} \
758 --libexecdir=%{_libdir} \
759 --infodir=%{_infodir} \
760 --mandir=%{_mandir} \
762 --enable-threads=posix \
763 --enable-__cxa_atexit \
764 --enable-languages="c,c++%{?with_fortran:,f95}%{?with_objc:,objc}%{?with_objcxx:,obj-c++}%{?with_ada:,ada}%{?with_java:,java}" \
767 --%{?with_multilib:en}%{!?with_multilib:dis}able-multilib \
772 --with-demangler-in-ld \
774 --with-slibdir=%{_slibdir} \
776 %{?with_fortran:--enable-cmath} \
779 --enable-libgcj-multifile \
780 --enable-libgcj-database \
788 %{__make} -C obj-%{_target_platform} \
789 %{?with_bootstrap:%{?with_profiling:profiled}bootstrap} \
790 GCJFLAGS="%{rpmcflags}" \
791 BOOT_CFLAGS="%{rpmcflags}" \
792 STAGE1_CFLAGS="%{rpmcflags} -O0" \
793 LDFLAGS_FOR_TARGET="%{rpmldflags}" \
797 %{?with_tests:%{__make} -k -C obj-%{_target_platform} check}
800 rm -rf $RPM_BUILD_ROOT
801 install -d $RPM_BUILD_ROOT{/lib,%{_aclocaldir},%{_datadir},%{_infodir}}
803 cd obj-%{_target_platform}
805 %{__make} -j1 install \
807 infodir=%{_infodir} \
808 DESTDIR=$RPM_BUILD_ROOT
810 install gcc/specs $RPM_BUILD_ROOT%{_libdir}/gcc/%{_target_platform}/%{version}
813 ln -sf %{_bindir}/sparc64-pld-linux-gcc \
814 $RPM_BUILD_ROOT%{_bindir}/sparc-pld-linux-gcc
817 ln -sf %{_bindir}/cpp $RPM_BUILD_ROOT/lib/cpp
818 ln -sf gcc $RPM_BUILD_ROOT%{_bindir}/cc
819 echo ".so gcc.1" > $RPM_BUILD_ROOT%{_mandir}/man1/cc.1
822 ln -sf gfortran $RPM_BUILD_ROOT%{_bindir}/g95
823 echo ".so gfortran.1" > $RPM_BUILD_ROOT%{_mandir}/man1/g95.1
827 # move ada shared libraries to proper place...
828 mv -f $RPM_BUILD_ROOT%{_libdir}/gcc/*/*/adalib/*.so.1 \
829 $RPM_BUILD_ROOT%{_libdir}
830 # check if symlink to be made is valid
831 test -f $RPM_BUILD_ROOT%{_libdir}/libgnat-4.0.so.1
832 ln -sf libgnat-4.0.so.1 $RPM_BUILD_ROOT%{_libdir}/libgnat-4.0.so
833 ln -sf libgnarl-4.0.so.1 $RPM_BUILD_ROOT%{_libdir}/libgnarl-4.0.so
834 ln -sf libgnat-4.0.so $RPM_BUILD_ROOT%{_libdir}/libgnat.so
835 ln -sf libgnarl-4.0.so $RPM_BUILD_ROOT%{_libdir}/libgnarl.so
842 cp -f libjava/READ* java-doc
843 cp -f fastjar/README java-doc/README.fastjar
844 cp -f libffi/README java-doc/README.libffi
845 cp -f libffi/LICENSE java-doc/LICENSE.libffi
846 ln -sf %{_javadir}/libgcj-%{version}.jar $RPM_BUILD_ROOT%{_javadir}/libgcj.jar
849 cp -f libobjc/README gcc/objc/README.libobjc
852 # avoid -L poisoning in *.la - there should be only -L%{_libdir}/gcc/*/%{version}
853 # normalize libdir, to avoid propagation of unnecessary RPATHs by libtool
854 for f in libmudflap.la libmudflapth.la libstdc++.la libsupc++.la \
855 %{?with_fortran:libgfortran.la libgfortranbegin.la} \
856 %{?with_java:libgcj.la libffi.la} \
857 %{?with_objc:libobjc.la};
859 %{SOURCE1} $RPM_BUILD_ROOT%{_libdir}/$f %{_libdir} > $RPM_BUILD_ROOT%{_libdir}/$f.fixed
860 mv $RPM_BUILD_ROOT%{_libdir}/$f{.fixed,}
862 %{SOURCE1} $RPM_BUILD_ROOT%{_libdir32}/$f %{_libdir32} > $RPM_BUILD_ROOT%{_libdir32}/$f.fixed
863 mv $RPM_BUILD_ROOT%{_libdir32}/$f{.fixed,}
867 # include/ contains install-tools/include/* and headers that were fixed up
868 # by fixincludes, we don't want former
869 gccdir=$(echo $RPM_BUILD_ROOT%{_libdir}/gcc/*/*/)
871 # we have to save these however
872 %{?with_java:mv -f $gccdir/include/{gcj,libffi/ffitarget.h,jawt.h,jawt_md.h,jni.h,jvmpi.h} $gccdir/tmp}
873 %{?with_objc:mv -f $gccdir/include/objc $gccdir/tmp}
874 mv -f $gccdir/include/syslimits.h $gccdir/tmp
875 rm -rf $gccdir/include
876 mv -f $gccdir/tmp $gccdir/include
877 cp -f $gccdir/install-tools/include/*.h $gccdir/include
878 # but we don't want anything more from install-tools
879 rm -rf $gccdir/install-tools
882 ln -sf %{_slibdir32}/libgcc_s.so.1 $gccdir/32/libgcc_s.so
884 ln -sf %{_slibdir}/libgcc_s.so.1 $gccdir/libgcc_s.so
887 %find_lang libstdc\+\+
889 # cvs snap doesn't contain (release does) below files,
890 # so let's create dummy entries to satisfy %%files.
891 [ ! -f NEWS ] && touch NEWS
892 [ ! -f libgfortran/AUTHORS ] && touch libgfortran/AUTHORS
893 [ ! -f libgfortran/README ] && touch libgfortran/README
896 rm -rf $RPM_BUILD_ROOT
899 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
902 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
905 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
908 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
911 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
914 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
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
922 %post -p /sbin/ldconfig -n libgcc
923 %postun -p /sbin/ldconfig -n libgcc
924 %post -p /sbin/ldconfig -n libmudflap
925 %postun -p /sbin/ldconfig -n libmudflap
926 %post -p /sbin/ldconfig -n libgnat
927 %postun -p /sbin/ldconfig -n libgnat
928 %post -p /sbin/ldconfig -n libstdc++
929 %postun -p /sbin/ldconfig -n libstdc++
930 %post -p /sbin/ldconfig -n libgfortran
931 %postun -p /sbin/ldconfig -n libgfortran
932 %post -p /sbin/ldconfig -n libgcj
933 %postun -p /sbin/ldconfig -n libgcj
934 %post -p /sbin/ldconfig -n libffi
935 %postun -p /sbin/ldconfig -n libffi
936 %post -p /sbin/ldconfig -n libobjc
937 %postun -p /sbin/ldconfig -n libobjc
940 %defattr(644,root,root,755)
941 %doc ChangeLog.general MAINTAINERS NEWS
943 %doc gcc/{ChangeLog,ONEWS,README.Portability}
945 %dir %{_libdir}/gcc/*
946 %dir %{_libdir}/gcc/*/*
947 %dir %{_libdir}/gcc/*/*/include
949 %attr(755,root,root) %{_bindir}/*-gcc*
950 %attr(755,root,root) %{_bindir}/gcc
951 %attr(755,root,root) %{_bindir}/gccbug
952 %attr(755,root,root) %{_bindir}/gcov
953 %attr(755,root,root) %{_bindir}/cc
954 %attr(755,root,root) %{_bindir}/cpp
956 %{_mandir}/man1/cc.1*
957 %{_mandir}/man1/cpp.1*
958 %{_mandir}/man1/gcc.1*
959 %{_mandir}/man1/gcov.1*
964 %attr(755,root,root) /lib/cpp
966 %attr(755,root,root) %{_slibdir}/lib*.so
968 %dir %{_libdir}/gcc/*/*/32
969 %{_libdir}/gcc/*/*/32/libgcov.a
970 %{_libdir}/gcc/*/*/32/libgcc.a
971 %{_libdir}/gcc/*/*/32/libgcc_eh.a
972 %{_libdir}/gcc/*/*/32/libgcc_s.so
974 %{_libdir}/gcc/*/*/libgcov.a
975 %{_libdir}/gcc/*/*/libgcc.a
976 %{_libdir}/gcc/*/*/libgcc_eh.a
977 %{_libdir}/gcc/*/*/libgcc_s.so
978 %{_libdir}/gcc/*/*/specs
980 %{_libdir}/gcc/*/*/32/crt*.o
982 %{_libdir}/gcc/*/*/crt*.o
983 %attr(755,root,root) %{_libdir}/gcc/*/*/cc1
984 %attr(755,root,root) %{_libdir}/gcc/*/*/collect2
986 %{_libdir}/gcc/*/*/include/*.h
989 %defattr(644,root,root,755)
991 %attr(755,root,root) %{_slibdir32}/lib*.so.*
993 %attr(755,root,root) %{_slibdir}/lib*.so.*
996 %defattr(644,root,root,755)
998 %attr(755,root,root) %{_libdir32}/libmudflap*.so.*.*.*
1000 %attr(755,root,root) %{_libdir}/libmudflap*.so.*.*.*
1002 %files -n libmudflap-devel
1003 %defattr(644,root,root,755)
1004 %{_includedir}/mf-runtime.h
1005 %if %{with multilib}
1006 %{_libdir32}/libmudflap*.la
1007 %attr(755,root,root) %{_libdir32}/libmudflap*.so
1009 %{_libdir}/libmudflap*.la
1010 %attr(755,root,root) %{_libdir}/libmudflap*.so
1012 %files -n libmudflap-static
1013 %defattr(644,root,root,755)
1014 %if %{with multilib}
1015 %{_libdir32}/libmudflap*.a
1017 %{_libdir}/libmudflap*.a
1021 %defattr(644,root,root,755)
1022 %doc gcc/ada/ChangeLog
1023 %attr(755,root,root) %{_bindir}/gnat*
1024 %attr(755,root,root) %{_bindir}/gpr*
1025 %attr(755,root,root) %{_libdir}/libgnarl*.so
1026 %attr(755,root,root) %{_libdir}/libgnat*.so
1027 %attr(755,root,root) %{_libdir}/gcc/*/*/gnat1
1028 %{_libdir}/gcc/*/*/adainclude
1029 %dir %{_libdir}/gcc/*/*/adalib
1030 %{_libdir}/gcc/*/*/adalib/*.ali
1031 %{_libdir}/gcc/*/*/adalib/g-trasym.o
1032 %{_libdir}/gcc/*/*/adalib/libgccprefix.a
1034 %{_libdir}/gcc/*/*/adalib/libgmem.a
1039 %defattr(644,root,root,755)
1040 %attr(755,root,root) %{_libdir}/libgnarl*.so.1
1041 %attr(755,root,root) %{_libdir}/libgnat*.so.1
1043 %files -n libgnat-static
1044 %defattr(644,root,root,755)
1045 %{_libdir}/gcc/*/*/adalib/libgnarl.a
1046 %{_libdir}/gcc/*/*/adalib/libgnat.a
1050 %defattr(644,root,root,755)
1051 %doc gcc/cp/{ChangeLog,NEWS}
1052 %attr(755,root,root) %{_bindir}/g++
1053 %attr(755,root,root) %{_bindir}/*-g++
1054 %attr(755,root,root) %{_bindir}/c++
1055 %attr(755,root,root) %{_bindir}/*-c++
1056 %attr(755,root,root) %{_libdir}/gcc/*/*/cc1plus
1057 %if %{with multilib}
1058 %{_libdir32}/libsupc++.a
1059 %{_libdir32}/libsupc++.la
1061 %{_libdir}/libsupc++.a
1062 %{_libdir}/libsupc++.la
1063 %{_mandir}/man1/g++.1*
1065 %files -n libstdc++ -f libstdc++.lang
1066 %defattr(644,root,root,755)
1067 %doc libstdc++-v3/{ChangeLog,README}
1068 %if %{with multilib}
1069 %attr(755,root,root) %{_libdir32}/libstdc++.so.*.*.*
1071 %attr(755,root,root) %{_libdir}/libstdc++.so.*.*.*
1073 %files -n libstdc++-devel
1074 %defattr(644,root,root,755)
1075 %doc libstdc++-v3/docs/html
1076 %dir %{_includedir}/c++
1077 %{_includedir}/c++/%{version}
1079 %exclude %{_includedir}/c++/%{version}/java
1080 %exclude %{_includedir}/c++/%{version}/javax
1081 %exclude %{_includedir}/c++/%{version}/gcj
1082 %exclude %{_includedir}/c++/%{version}/gnu
1085 %exclude %{_includedir}/c++/%{version}/*/bits/stdc++.h.gch
1087 %if %{with multilib}
1088 %{_libdir32}/libstdc++.la
1089 %attr(755,root,root) %{_libdir32}/libstdc++.so
1091 %{_libdir}/libstdc++.la
1092 %attr(755,root,root) %{_libdir}/libstdc++.so
1094 %files -n libstdc++-static
1095 %defattr(644,root,root,755)
1096 %if %{with multilib}
1097 %{_libdir32}/libstdc++.a
1099 %{_libdir}/libstdc++.a
1103 %defattr(644,root,root,755)
1104 %doc gcc/fortran/ChangeLog
1105 %attr(755,root,root) %{_bindir}/g95
1106 %attr(755,root,root) %{_bindir}/gfortran
1107 %{_infodir}/gfortran*
1108 %attr(755,root,root) %{_libdir}/gcc/*/*/f951
1109 %if %{with multilib}
1110 %{_libdir32}/libgfortranbegin.a
1111 %{_libdir32}/libgfortranbegin.la
1112 %{_libdir32}/libgfortran.la
1113 %attr(755,root,root) %{_libdir32}/libgfortran.so
1115 %{_libdir}/libgfortranbegin.a
1116 %{_libdir}/libgfortranbegin.la
1117 %{_libdir}/libgfortran.la
1118 %attr(755,root,root) %{_libdir}/libgfortran.so
1119 %{_mandir}/man1/g95.1*
1120 %{_mandir}/man1/gfortran.1*
1122 %files -n libgfortran
1123 %defattr(644,root,root,755)
1124 %doc libgfortran/{AUTHORS,README,ChangeLog}
1125 %if %{with multilib}
1126 %attr(755,root,root) %{_libdir32}/libgfortran.so.*.*.*
1128 %attr(755,root,root) %{_libdir}/libgfortran.so.*.*.*
1130 %files -n libgfortran-static
1131 %defattr(644,root,root,755)
1132 %if %{with multilib}
1133 %{_libdir32}/libgfortran.a
1135 %{_libdir}/libgfortran.a
1140 %defattr(644,root,root,755)
1141 %doc gcc/java/ChangeLog java-doc/*
1142 %attr(755,root,root) %{_bindir}/fastjar
1143 %attr(755,root,root) %{_bindir}/gcj*
1144 %attr(755,root,root) %{_bindir}/gjnih
1145 %attr(755,root,root) %{_bindir}/grepjar
1146 %attr(755,root,root) %{_bindir}/grmi*
1147 %attr(755,root,root) %{_bindir}/jcf-dump
1148 %attr(755,root,root) %{_bindir}/jv-*
1149 %attr(755,root,root) %{_bindir}/*-gcj*
1150 %attr(755,root,root) %{_libdir}/gcc/*/*/jc1
1151 %attr(755,root,root) %{_libdir}/gcc/*/*/jvgenmain
1152 %{_infodir}/fastjar*
1154 %{_mandir}/man1/fastjar*
1155 %{_mandir}/man1/gcj*
1156 %{_mandir}/man1/gjnih*
1157 %{_mandir}/man1/grepjar*
1158 %{_mandir}/man1/grmi*
1159 %{_mandir}/man1/jcf-*
1160 %{_mandir}/man1/jv-*
1163 %defattr(644,root,root,755)
1164 %doc libjava/{ChangeLog,LIBGCJ_LICENSE,NEWS,README,THANKS}
1165 %attr(755,root,root) %{_bindir}/addr2name.awk
1166 %attr(755,root,root) %{_bindir}/gij
1167 %dir %{_libdir}/gcj-%{version}
1168 %{_libdir}/gcj-%{version}/classmap.db
1169 %attr(755,root,root) %{_libdir}/lib*cj*.so.*.*.*
1170 %attr(755,root,root) %{_libdir}/libgij.so.*.*.*
1171 %{_libdir}/logging.properties
1172 %{_javadir}/libgcj*.jar
1173 %{_mandir}/man1/gij*
1175 %files -n libgcj-devel
1176 %defattr(644,root,root,755)
1177 %{_includedir}/c++/%{version}/java
1178 %{_includedir}/c++/%{version}/javax
1179 %{_includedir}/c++/%{version}/gcj
1180 %{_includedir}/c++/%{version}/gnu
1181 %{_libdir}/gcc/*/*/include/gcj
1182 %{_libdir}/gcc/*/*/include/jawt.h
1183 %{_libdir}/gcc/*/*/include/jawt_md.h
1184 %{_libdir}/gcc/*/*/include/jni.h
1185 %{_libdir}/gcc/*/*/include/jvmpi.h
1186 %dir %{_libdir}/security
1187 %{_libdir}/security/*
1188 %{_libdir}/lib*cj.spec
1189 %{_libdir}/lib*cj*.la
1190 %attr(755,root,root) %{_libdir}/lib*cj*.so
1191 %{_libdir}/libgij.la
1192 %attr(755,root,root) %{_libdir}/libgij.so
1193 %{_pkgconfigdir}/libgcj.pc
1195 %files -n libgcj-static
1196 %defattr(644,root,root,755)
1197 %{_libdir}/lib*cj*.a
1201 %defattr(644,root,root,755)
1202 %doc libffi/{ChangeLog,ChangeLog.libgcj,LICENSE,README}
1203 %attr(755,root,root) %{_libdir}/libffi.so.*.*.*
1205 %files -n libffi-devel
1206 %defattr(644,root,root,755)
1207 %{_libdir}/gcc/*/*/include/ffitarget.h
1208 %attr(755,root,root) %{_libdir}/libffi.so
1209 %{_libdir}/libffi.la
1210 %{_includedir}/ffi.h
1212 %files -n libffi-static
1213 %defattr(644,root,root,755)
1219 %defattr(644,root,root,755)
1220 %doc gcc/objc/README
1221 %attr(755,root,root) %{_libdir}/gcc/*/*/cc1obj
1222 %if %{with multilib}
1223 %attr(755,root,root) %{_libdir32}/libobjc.so
1224 %{_libdir32}/libobjc.la
1226 %attr(755,root,root) %{_libdir}/libobjc.so
1227 %{_libdir}/libobjc.la
1228 %{_libdir}/gcc/*/*/include/objc
1231 %defattr(644,root,root,755)
1232 %doc libobjc/{ChangeLog,README*}
1233 %if %{with multilib}
1234 %attr(755,root,root) %{_libdir32}/libobjc.so.*.*.*
1236 %attr(755,root,root) %{_libdir}/libobjc.so.*.*.*
1238 %files -n libobjc-static
1239 %defattr(644,root,root,755)
1240 %if %{with multilib}
1241 %{_libdir32}/libobjc.a
1243 %{_libdir}/libobjc.a
1248 %defattr(644,root,root,755)
1249 %doc gcc/objcp/ChangeLog
1250 %attr(755,root,root) %{_libdir}/gcc/*/*/cc1objplus