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/PR19317 (removing a temporary return value when we cannot)
6 # - http://gcc.gnu.org/PR20128 (ice with mudflap + profile generate)
9 %bcond_without ada # build without ADA support
10 %bcond_without fortran # build without Fortran support
11 %bcond_without java # build without Java support
12 %bcond_without objc # build without ObjC 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
17 %ifnarch %{x8664} ppc64 s390x sparc64
18 %undefine with_multilib
21 Summary: GNU Compiler Collection: the C compiler and shared files
22 Summary(es): Colección de compiladores GNU: el compilador C y ficheros compartidos
23 Summary(pl): Kolekcja kompilatorów GNU: kompilator C i pliki wspó³dzielone
24 Summary(pt_BR): Coleção dos compiladores GNU: o compilador C e arquivos compartilhados
27 %define _snap 20050521
31 Group: Development/Languages
32 #Source0: ftp://gcc.gnu.org/pub/gcc/releases/gcc-%{version}/%{name}-%{version}.tar.bz2
33 Source0: ftp://gcc.gnu.org/pub/gcc/snapshots/4.0-%{_snap}/gcc-4.0-%{_snap}.tar.bz2
34 # Source0-md5: 7f45e29a00590ce57a001a9294e8184e
35 Source1: %{name}-optimize-la.pl
36 Patch0: %{name}-info.patch
37 Patch1: %{name}-nolocalefiles.patch
38 Patch2: %{name}-nodebug.patch
39 Patch3: %{name}-ada-link-new-libgnat.patch
40 Patch4: %{name}-ada-link.patch
41 Patch5: %{name}-alpha-ada_fix.patch
43 Patch10: %{name}-pr19664.patch
44 Patch11: %{name}-pr20218.patch
45 Patch12: %{name}-pr20297.patch
46 Patch14: %{name}-push-pop-visibility.patch
47 Patch15: %{name}-pr21704.patch
48 URL: http://gcc.gnu.org/
49 BuildRequires: autoconf
50 BuildRequires: automake
51 BuildRequires: binutils >= 2:2.15.94.0.1
53 %{?with_java:BuildRequires: cairo-devel}
54 BuildRequires: fileutils >= 4.0.41
57 BuildRequires: gcc(ada)
58 BuildRequires: gcc-ada
60 BuildRequires: gettext-devel
61 BuildRequires: glibc-devel >= %{!?with_multilib:2.2.5-20}%{?with_multilib:6:2.3.4-1.5}
62 BuildRequires: gmp-devel
63 BuildRequires: libmpfr-devel
64 %{?with_java:BuildRequires: pango-devel}
65 BuildRequires: perl-devel
66 %{?with_java:BuildRequires: pkgconfig}
67 BuildRequires: rpmbuild(macros) >= 1.211
68 BuildRequires: texinfo >= 4.1
69 BuildRequires: zlib-devel
70 # AS_NEEDED directive for dynamic linker
71 # http://sources.redhat.com/ml/glibc-cvs/2005-q1/msg00614.html
72 # http://sources.redhat.com/ml/binutils/2005-01/msg00288.html
73 Requires: binutils >= 2:2.16.90.0.1-0.3
74 Requires: libgcc = %{epoch}:%{version}-%{release}
75 Provides: cpp = %{epoch}:%{version}-%{release}
76 %{?with_ada:Provides: gcc(ada)}
77 %{?with_multilib:Provides: gcc(multilib)}
84 Conflicts: glibc-devel < 2.2.5-20
85 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
87 %define _slibdir /%{_lib}
89 # 32-bit environment on x86-64,ppc64,s390x,sparc64
90 %define _slibdir32 /lib
91 %define _libdir32 /usr/lib
95 A compiler aimed at integrating all the optimizations and features
96 necessary for a high-performance and stable development environment.
98 This package contains the C compiler and some files shared by various
99 parts of the GNU Compiler Collection. In order to use another GCC
100 compiler you will need to install the appropriate subpackage.
103 Un compilador que intenta integrar todas las optimalizaciones y
104 características necesarias para un entorno de desarrollo eficaz y
107 Este paquete contiene el compilador de C y unos ficheros compartidos
108 por varias partes de la colección de compiladores GNU (GCC). Para usar
109 otro compilador de GCC será necesario que instale el subpaquete
113 Kompilator, posiadaj±cy du¿e mo¿liwo¶ci optymalizacyjne niezbêdne do
114 wyprodukowania szybkiego i stabilnego kodu wynikowego.
116 Ten pakiet zawiera kompilator C i pliki wspó³dzielone przez ró¿ne
117 czê¶ci kolekcji kompilatorów GNU (GCC). ¯eby u¿ywaæ innego kompilatora
118 z GCC, trzeba zainstalowaæ odpowiedni podpakiet.
120 %description -l pt_BR
121 Este pacote adiciona infraestrutura básica e suporte a linguagem C ao
122 GNU Compiler Collection.
125 Summary: Shared gcc library
126 Summary(es): Biblioteca compartida de gcc
127 Summary(pl): Biblioteka gcc
128 Summary(pt_BR): Biblioteca runtime para o GCC
129 License: GPL with unlimited link permission
133 %description -n libgcc
136 %description -n libgcc -l es
137 Biblioteca compartida de gcc.
139 %description -n libgcc -l pl
140 Biblioteka dynamiczna gcc.
142 %description -n libgcc -l pt_BR
143 Biblioteca runtime para o GCC.
145 %package -n libmudflap
146 Summary: GCC mudflap shared support library
147 Summary(pl): Wspó³dzielona biblioteka wspomagaj±ca GCC mudflap
148 License: GPL v2+ with unlimited link permission
151 %description -n libmudflap
152 The libmudflap libraries are used by GCC for instrumenting pointer and
153 array dereferencing operations.
155 %description -n libmudflap -l pl
156 Biblioteki libmudflap s± u¿ywane przez GCC do obs³ugi operacji
157 dereferencji wspa¼ników i tablic.
159 %package -n libmudflap-devel
160 Summary: Development files for GCC mudflap library
161 Summary(pl): Pliki programistyczne biblioteki GCC mudflap
162 License: GPL v2+ with unlimited link permission
163 Group: Development/Libraries
164 Requires: libmudflap = %{epoch}:%{version}-%{release}
166 %description -n libmudflap-devel
167 The libmudflap libraries are used by GCC for instrumenting pointer and
168 array dereferencing operations. This package contains development
171 %description -n libmudflap-devel -l pl
172 Biblioteki libmudflap s± u¿ywane przez GCC do obs³ugi operacji
173 dereferencji wspa¼ników i tablic. Ten pakiet zawiera pliki
176 %package -n libmudflap-static
177 Summary: Static GCC mudflap library
178 Summary(pl): Statyczna biblioteka GCC mudflap
179 License: GPL v2+ with unlimited link permission
180 Group: Development/Libraries
181 Requires: libmudflap-devel = %{epoch}:%{version}-%{release}
183 %description -n libmudflap-static
184 The libmudflap libraries are used by GCC for instrumenting pointer and
185 array dereferencing operations. This package contains static
188 %description -n libmudflap-static -l pl
189 Biblioteki libmudflap s± u¿ywane przez GCC do obs³ugi operacji
190 dereferencji wspa¼ników i tablic. Ten pakiet zawiera biblioteki
194 Summary: Ada support for gcc
195 Summary(es): Soporte de Ada para gcc
196 Summary(pl): Obs³uga Ady do gcc
197 Group: Development/Languages
198 Requires: %{name} = %{epoch}:%{version}-%{release}
199 Requires: libgnat = %{epoch}:%{version}-%{release}
201 Obsoletes: gnat-devel
204 This package adds experimental support for compiling Ada programs.
206 %description ada -l es
207 Este paquete añade soporte experimental para compilar programas en
210 %description ada -l pl
211 Ten pakiet dodaje eksperymentalne wsparcie dla kompilacji programów w
215 Summary: Ada standard libraries
216 Summary(es): Bibliotecas estándares de Ada
217 Summary(pl): Biblioteki standardowe dla Ady
218 License: GPL v2+ with linking exception
223 %description -n libgnat
224 This package contains shared libraries needed to run programs written
227 %description -n libgnat -l es
228 Este paquete contiene las bibliotecas compartidas necesarias para
229 ejecutar programas escritos en Ada.
231 %description -n libgnat -l pl
232 Ten pakiet zawiera biblioteki potrzebne do uruchamiania programów
235 %package -n libgnat-static
236 Summary: Static Ada standard libraries
237 Summary(pl): Statyczne biblioteki standardowe dla Ady
238 License: GPL v2+ with linking exception
239 Group: Development/Libraries
240 Obsoletes: gnat-static
242 %description -n libgnat-static
243 This package contains static libraries for programs written in Ada.
245 %description -n libgnat-static -l pl
246 Ten pakiet zawiera biblioteki statyczne dla programów napisanych w
250 Summary: C++ support for gcc
251 Summary(es): Soporte de C++ para gcc
252 Summary(pl): Obs³uga C++ dla gcc
253 Summary(pt_BR): Suporte C++ para o gcc
254 Group: Development/Languages
255 Requires: %{name} = %{epoch}:%{version}-%{release}
260 This package adds C++ support to the GNU Compiler Collection. It
261 includes support for most of the current C++ specification, including
262 templates and exception handling. It does not include a standard C++
263 library, which is available separately.
265 %description c++ -l de
266 Dieses Paket enthält die C++-Unterstützung für den
267 GNU-Compiler-Collection. Es unterstützt die aktuelle
268 C++-Spezifikation, inkl. Templates und Ausnahmeverarbeitung. Eine
269 C++-Standard-Library ist nicht enthalten - sie ist getrennt
272 %description c++ -l es
273 Este paquete añade soporte de C++ al GCC (colección de compiladores
274 GNU). Ello incluye el soporte para la mayoría de la especificación
275 actual de C++, incluyendo plantillas y manejo de excepciones. No
276 incluye la biblioteca estándar de C++, la que es disponible separada.
278 %description c++ -l fr
279 Ce package ajoute un support C++ a la collection de compilateurs GNU.
280 Il comprend un support pour la plupart des spécifications actuelles de
281 C++, dont les modéles et la gestion des exceptions. Il ne comprend pas
282 une bibliothéque C++ standard, qui est disponible séparément.
284 %description c++ -l pl
285 Ten pakiet dodaje obs³ugê C++ do kompilatora gcc. Ma wsparcie dla
286 du¿ej ilo¶ci obecnych specyfikacji C++, nie zawiera natomiast
287 standardowych bibliotek C++, które s± w oddzielnym pakiecie.
289 %description c++ -l pt_BR
290 Este pacote adiciona suporte C++ para o gcc.
292 %description c++ -l tr
293 Bu paket, GNU C derleyicisine C++ desteði ekler. 'Template'ler ve
294 aykýrý durum iþleme gibi çoðu güncel C++ tanýmlarýna uyar. Standart
295 C++ kitaplýðý bu pakette yer almaz.
297 %package -n libstdc++
298 Summary: GNU C++ library
299 Summary(es): Biblioteca C++ de GNU
300 Summary(pl): Biblioteki GNU C++
301 Summary(pt_BR): Biblioteca C++ GNU
302 License: GPL v2+ with free software exception
305 Obsoletes: libstdc++3
307 %description -n libstdc++
308 This is the GNU implementation of the standard C++ libraries, along
309 with additional GNU tools. This package includes the shared libraries
310 necessary to run C++ applications.
312 %description -n libstdc++ -l de
313 Dies ist die GNU-Implementierung der Standard-C++-Libraries mit
314 weiteren GNU-Tools. Dieses Paket enthält die zum Ausführen von
315 C++-Anwendungen erforderlichen gemeinsam genutzten Libraries.
317 %description -n libstdc++ -l es
318 Este es el soporte de las bibliotecas padrón del C++, junto con
319 herramientas GNU adicionales. El paquete incluye las bibliotecas
320 compartidas necesarias para ejecutar aplicaciones C++.
322 %description -n libstdc++ -l fr
323 Ceci est l'implémentation GNU des librairies C++ standard, ainsi que
324 des outils GNU supplémentaires. Ce package comprend les librairies
325 partagées nécessaires à l'exécution d'application C++.
327 %description -n libstdc++ -l pl
328 Pakiet ten zawiera biblioteki bêd±ce implementacj± standardowych
329 bibliotek C++. Znajduj± siê w nim biblioteki dynamiczne niezbêdne do
330 uruchomienia aplikacji napisanych w C++.
332 %description -n libstdc++ -l pt_BR
333 Este pacote é uma implementação da biblioteca padrão C++ v3, um
334 subconjunto do padrão ISO 14882.
336 %description -n libstdc++ -l tr
337 Bu paket, standart C++ kitaplýklarýnýn GNU gerçeklemesidir ve C++
338 uygulamalarýnýn koþturulmasý için gerekli kitaplýklarý içerir.
340 %package -n libstdc++-devel
341 Summary: Header files and documentation for C++ development
342 Summary(de): Header-Dateien zur Entwicklung mit C++
343 Summary(es): Ficheros de cabecera y documentación para desarrollo C++
344 Summary(fr): Fichiers d'en-tête et biblitothèques pour développer en C++
345 Summary(pl): Pliki nag³ówkowe i dokumentacja do biblioteki standardowej C++
346 Summary(pt_BR): Arquivos de inclusão e bibliotecas para o desenvolvimento em C++
347 Summary(tr): C++ ile program geliþtirmek için gerekli dosyalar
348 License: GPL v2+ with free software exception
349 Group: Development/Libraries
350 Requires: %{name}-c++ = %{epoch}:%{version}-%{release}
351 Requires: libstdc++ = %{epoch}:%{version}-%{release}
352 Requires: glibc-devel
353 Obsoletes: libg++-devel
354 Obsoletes: libstdc++3-devel
356 %description -n libstdc++-devel
357 This is the GNU implementation of the standard C++ libraries. This
358 package includes the header files needed for C++ development and
359 library documentation.
361 %description -n libstdc++-devel -l es
362 Este es el soporte de las bibliotecas padrón del lenguaje C++. Este
363 paquete incluye los archivos de inclusión y bibliotecas necesarios
364 para desarrollo de programas en lenguaje C++.
366 %description -n libstdc++-devel -l pl
367 Pakiet ten zawiera biblioteki bêd±ce implementacj± standardowych
368 bibliotek C++. Znajduj± siê w nim pliki nag³ówkowe wykorzystywane przy
369 programowaniu w jêzyku C++ oraz dokumentacja biblioteki standardowej.
371 %description -n libstdc++-devel -l pt_BR
372 Este pacote inclui os arquivos de inclusão e bibliotecas necessárias
373 para desenvolvimento de programas C++.
375 %package -n libstdc++-static
376 Summary: Static C++ standard library
377 Summary(es): Biblioteca estándar estática de C++
378 Summary(pl): Statyczna biblioteka standardowa C++
379 License: GPL v2+ with free software exception
380 Group: Development/Libraries
381 Requires: libstdc++-devel = %{epoch}:%{version}-%{release}
383 %description -n libstdc++-static
384 Static C++ standard library.
386 %description -n libstdc++-static -l es
387 Biblioteca estándar estática de C++.
389 %description -n libstdc++-static -l pl
390 Statyczna biblioteka standardowa C++.
393 Summary: Fortran 95 support for gcc
394 Summary(es): Soporte de Fortran 95 para gcc
395 Summary(pl): Obs³uga Fortranu 95 dla gcc
396 Summary(pt_BR): Suporte Fortran 95 para o GCC
397 Group: Development/Languages/Fortran
398 Requires: libgfortran = %{epoch}:%{version}-%{release}
399 Provides: gcc-g77 = %{epoch}:%{version}-%{release}
404 This package adds support for compiling Fortran 95 programs with the
407 %description fortran -l es
408 Este paquete añade soporte para compilar programas escritos en Fortran
409 95 con el compilador GNU.
411 %description fortran -l pl
412 Ten pakiet dodaje obs³ugê Fortranu 95 do kompilatora gcc. Jest
413 potrzebny do kompilowania programów pisanych w jêzyku Fortran 95.
415 %description fortran -l pt_BR
416 Suporte Fortran 95 para o GCC.
418 %package -n libgfortran
419 Summary: Fortran 95 Libraries
420 Summary(es): Bibliotecas de Fortran 95
421 Summary(pl): Biblioteki Fortranu 95
426 %description -n libgfortran
427 Fortran 95 Libraries.
429 %description -n libgfortran -l es
430 Bibliotecas de Fortran 95.
432 %description -n libgfortran -l pl
433 Biblioteki Fortranu 95.
435 %package -n libgfortran-static
436 Summary: Static Fortran 95 Libraries
437 Summary(es): Bibliotecas estáticas de Fortran 95
438 Summary(pl): Statyczne Biblioteki Fortranu 95
440 Group: Development/Libraries
441 Requires: libgfortran = %{epoch}:%{version}-%{release}
442 Obsoletes: libg2c-static
444 %description -n libgfortran-static
445 Static Fortran 95 Libraries.
447 %description -n libgfortran-static -l es
448 Bibliotecas estáticas de Fortran 95.
450 %description -n libgfortran-static -l pl
451 Statyczne biblioteki Fortranu 95.
454 Summary: Java support for gcc
455 Summary(es): Soporte de Java para gcc
456 Summary(pl): Obs³uga Javy dla gcc
457 Group: Development/Languages/Java
458 Requires: %{name} = %{epoch}:%{version}-%{release}
459 Requires: libgcj-devel = %{epoch}:%{version}-%{release}
460 Provides: gcj = %{epoch}:%{version}-%{release}
461 Provides: gcc-java-tools
463 Obsoletes: gcc-java-tools
466 This package adds experimental support for compiling Java(TM) programs
467 and bytecode into native code. To use this you will also need the
470 %description java -l es
471 Este paquete añade soporte experimental para compilar programas
472 Java(tm) y su bytecode en código nativo. Para usarlo también va a
473 necesitar el paquete libgcj.
475 %description java -l pl
476 Ten pakiet dodaje mo¿liwo¶æ kompilowania programów w jêzyku Java(TM)
477 oraz bajtkodu do kodu natywnego. Do u¿ywania go wymagany jest
478 dodatkowo pakiet libgcj.
481 Summary: Java Class Libraries
482 Summary(es): Bibliotecas de clases de Java
483 Summary(pl): Biblioteki Klas Javy
484 License: GPL with limited linking exception
488 %description -n libgcj
489 Java Class Libraries.
491 %description -n libgcj -l es
492 Bibliotecas de clases de Java.
494 %description -n libgcj -l pl
495 Biblioteki Klas Javy.
497 %package -n libgcj-devel
498 Summary: Development files for Java Class Libraries
499 Summary(es): Ficheros de desarrollo para las bibliotecas de clases de Java
500 Summary(pl): Pliki nag³ówkowe dla Bibliotek Klas Javy
501 License: GPL with limited linking exception
502 Group: Development/Libraries
503 Requires: libgcj = %{epoch}:%{version}-%{release}
505 Obsoletes: libgcj3-devel
507 %description -n libgcj-devel
508 Development files for Java Class Libraries.
510 %description -n libgcj-devel -l es
511 Ficheros de desarrollo para las bibliotecas de clases de Java.
513 %description -n libgcj-devel -l pl
514 Pliki nag³ówkowe dla Bibliotek Klas Javy.
516 %package -n libgcj-static
517 Summary: Static Java Class Libraries
518 Summary(es): Bibliotecas estáticas de clases de Java
519 Summary(pl): Statyczne Biblioteki Klas Javy
520 License: GPL with limited linking exception
521 Group: Development/Libraries
522 Requires: libgcj-devel = %{epoch}:%{version}-%{release}
523 Requires: libstdc++-devel = %{epoch}:%{version}-%{release}
525 %description -n libgcj-static
526 Static Java Class Libraries.
528 %description -n libgcj-static -l es
529 Bibliotecas estáticas de clases de Java.
531 %description -n libgcj-static -l pl
532 Statyczne Biblioteki Klas Javy.
535 Summary: Foreign Function Interface library
536 Summary(es): Biblioteca de interfaz de funciones ajenas
537 Summary(pl): Biblioteka zewnêtrznych wywo³añ funkcji
541 %description -n libffi
542 The libffi library provides a portable, high level programming
543 interface to various calling conventions. This allows a programmer to
544 call any function specified by a call interface description at run
547 %description -n libffi -l es
548 La biblioteca libffi provee una interfaz portable de programación de
549 alto nivel para varias convenciones de llamada. Ello permite que un
550 programador llame una función cualquiera especificada por una
551 descripción de interfaz de llamada en el tiempo de ejecución.
553 %description -n libffi -l pl
554 Biblioteka libffi dostarcza przeno¶nego, wysokopoziomowego
555 miêdzymordzia do ró¿nych konwencji wywo³añ funkcji. Pozwala to
556 programi¶cie wywo³ywaæ dowolne funkcje podaj±c konwencjê wywo³ania w
559 %package -n libffi-devel
560 Summary: Development files for Foreign Function Interface library
561 Summary(es): Ficheros de desarrollo para libffi
562 Summary(pl): Pliki nag³ówkowe dla libffi
564 Group: Development/Libraries
565 Requires: libffi = %{epoch}:%{version}-%{release}
567 %description -n libffi-devel
568 Development files for Foreign Function Interface library.
570 %description -n libffi-devel -l es
571 Ficheros de desarrollo para libffi.
573 %description -n libffi-devel -l pl
574 Pliki nag³ówkowe dla libffi.
576 %package -n libffi-static
577 Summary: Static Foreign Function Interface library
578 Summary(es): Biblioteca libffi estática
579 Summary(pl): Statyczna biblioteka libffi
581 Group: Development/Libraries
582 Requires: libffi-devel = %{epoch}:%{version}-%{release}
584 %description -n libffi-static
585 Static Foreign Function Interface library.
587 %description -n libffi-static -l es
588 Biblioteca libffi estática.
590 %description -n libffi-static -l pl
591 Statyczna biblioteka libffi.
594 Summary: Objective C support for gcc
595 Summary(de): Objektive C-Unterstützung für gcc
596 Summary(es): Soporte de Objective C para gcc
597 Summary(fr): Gestion d'Objective C pour gcc
598 Summary(pl): Obs³uga obiektowego C dla kompilatora gcc
599 Summary(tr): gcc için Objective C desteði
600 Group: Development/Languages
601 Requires: %{name} = %{epoch}:%{version}-%{release}
602 Requires: libobjc = %{epoch}:%{version}-%{release}
607 This package adds Objective C support to the GNU Compiler Collection.
608 Objective C is a object oriented derivative of the C language, mainly
609 used on systems running NeXTSTEP. This package does not include the
610 standard objective C object library.
612 %description objc -l de
613 Dieses Paket ergänzt den GNU-Compiler-Collection durch
614 Objective-C-Support. Objective C ist ein objektorientiertes Derivat
615 von C, das zur Hauptsache auf Systemen mit NeXTSTEP zum Einsatz kommt.
616 Die Standard-Objective-C-Objekt-Library ist nicht Teil des Pakets.
618 %description objc -l es
619 Este paquete añade soporte de Objective C al GCC (colección de
620 compiladores GNU). Objective C es un lenguaje orientado a objetos
621 derivado de C, principalmente usado en sistemas que funcionan bajo
622 NeXTSTEP. El paquete no incluye la biblioteca de objetos estándar de
625 %description objc -l fr
626 Ce package ajoute un support Objective C a la collection de
627 compilateurs GNU. L'Objective C est un langage orienté objetdérivé du
628 langage C, principalement utilisé sur les systèmes NeXTSTEP. Ce
629 package n'inclue pas la bibliothéque Objective C standard.
631 %description objc -l pl
632 Ten pakiet dodaje obs³ugê obiektowego C do kompilatora gcc. Obiektowe
633 C (objc) jest zorientowan± obiektowo pochodn± jêzyka C, u¿ywan±
634 g³ównie w systemach u¿ywaj±cych NeXTSTEP. W pakiecie nie ma
635 standardowej biblioteki objc (która znajduje siê w osobnym pakiecie).
637 %description objc -l tr
638 Bu paket, GNU C derleyicisine Objective C desteði ekler. Objective C,
639 C dilinin nesne yönelik bir türevidir ve NeXTSTEP altýnda çalýþan
640 sistemlerde yaygýn olarak kullanýlýr. Standart Objective C nesne
641 kitaplýðý bu pakette yer almaz.
644 Summary: Objective C Libraries
645 Summary(es): Bibliotecas de Objective C
646 Summary(pl): Biblioteki Obiektowego C
647 License: GPL v2+ with linking exception
651 %description -n libobjc
652 Objective C Libraries.
654 %description -n libobjc -l es
655 Bibliotecas de Objective C.
657 %description -n libobjc -l pl
658 Biblioteki Obiektowego C.
660 %package -n libobjc-static
661 Summary: Static Objective C Libraries
662 Summary(es): Bibliotecas estáticas de Objective C
663 Summary(pl): Statyczne Biblioteki Obiektowego C
664 License: GPL v2+ with linking exception
665 Group: Development/Libraries
666 Requires: libobjc = %{epoch}:%{version}-%{release}
668 %description -n libobjc-static
669 Static Objective C Libraries.
671 %description -n libobjc-static -l es
672 Bibliotecas estáticas de Objective C.
674 %description -n libobjc-static -l pl
675 Statyczne biblioteki Obiektowego C.
678 #setup -q -n gcc-%{version}
679 %setup -q -n gcc-4.0-%{_snap}
683 %{!?debug:%patch2 -p1}
695 # because we distribute modified version of gcc...
696 perl -pi -e 's/(version.*)";/$1 (PLD Linux)";/' gcc/version.c
697 perl -pi -e 's@(bug_report_url.*<URL:).*";@$1http://bugs.pld-linux.org/>";@' gcc/version.c
699 mv ChangeLog ChangeLog.general
705 cp -f /usr/share/automake/config.sub .
707 rm -rf obj-%{_target_platform}
708 install -d obj-%{_target_platform}
709 cd obj-%{_target_platform}
711 CFLAGS="%{rpmcflags}" \
712 CXXFLAGS="%{rpmcxxflags}" \
715 --prefix=%{_prefix} \
716 --libdir=%{_libdir} \
717 --libexecdir=%{_libdir} \
718 --infodir=%{_infodir} \
719 --mandir=%{_mandir} \
721 --enable-threads=posix \
722 --enable-__cxa_atexit \
723 --enable-languages="c,c++%{?with_fortran:,f95}%{?with_objc:,objc}%{?with_ada:,ada}%{?with_java:,java}" \
726 --%{?with_multilib:en}%{!?with_multilib:dis}able-multilib \
730 --with-demangler-in-ld \
732 --with-slibdir=%{_slibdir} \
737 --enable-libgcj-multifile \
738 --enable-libgcj-database \
745 %{__make} -C obj-%{_target_platform} \
746 %{?with_bootstrap:%{?with_profiling:profiled}bootstrap} \
747 GCJFLAGS="%{rpmcflags}" \
748 BOOT_CFLAGS="%{rpmcflags}" \
749 STAGE1_CFLAGS="%{rpmcflags} -O0" \
750 LDFLAGS_FOR_TARGET="%{rpmldflags}" \
755 rm -rf $RPM_BUILD_ROOT
756 install -d $RPM_BUILD_ROOT{/lib,%{_aclocaldir},%{_datadir},%{_infodir}}
758 cd obj-%{_target_platform}
760 %{__make} -j1 install \
762 infodir=%{_infodir} \
763 DESTDIR=$RPM_BUILD_ROOT
765 install gcc/specs $RPM_BUILD_ROOT%{_libdir}/gcc/%{_target_platform}/%{version}
768 ln -sf %{_bindir}/sparc64-pld-linux-gcc \
769 $RPM_BUILD_ROOT%{_bindir}/sparc-pld-linux-gcc
772 ln -sf %{_bindir}/cpp $RPM_BUILD_ROOT/lib/cpp
773 ln -sf gcc $RPM_BUILD_ROOT%{_bindir}/cc
774 echo ".so gcc.1" > $RPM_BUILD_ROOT%{_mandir}/man1/cc.1
777 ln -sf gfortran $RPM_BUILD_ROOT%{_bindir}/g95
778 echo ".so gfortran.1" > $RPM_BUILD_ROOT%{_mandir}/man1/g95.1
782 # move ada shared libraries to proper place...
783 mv -f $RPM_BUILD_ROOT%{_libdir}/gcc/*/*/adalib/*.so.1 \
784 $RPM_BUILD_ROOT%{_libdir}
785 # check if symlink to be made is valid
786 test -f $RPM_BUILD_ROOT%{_libdir}/libgnat-4.0.so.1
787 ln -sf libgnat-4.0.so.1 $RPM_BUILD_ROOT%{_libdir}/libgnat-4.0.so
788 ln -sf libgnarl-4.0.so.1 $RPM_BUILD_ROOT%{_libdir}/libgnarl-4.0.so
789 ln -sf libgnat-4.0.so $RPM_BUILD_ROOT%{_libdir}/libgnat.so
790 ln -sf libgnarl-4.0.so $RPM_BUILD_ROOT%{_libdir}/libgnarl.so
797 cp -f libjava/READ* java-doc
798 cp -f fastjar/README java-doc/README.fastjar
799 cp -f libffi/README java-doc/README.libffi
800 cp -f libffi/LICENSE java-doc/LICENSE.libffi
801 ln -sf %{_javadir}/libgcj-%{version}.jar $RPM_BUILD_ROOT%{_javadir}/libgcj.jar
804 cp -f libobjc/README gcc/objc/README.libobjc
807 # avoid -L poisoning in *.la - there should be only -L%{_libdir}/gcc/*/%{version}
808 # normalize libdir, to avoid propagation of unnecessary RPATHs by libtool
809 for f in libmudflap.la libmudflapth.la libstdc++.la libsupc++.la \
810 %{?with_fortran:libgfortran.la libgfortranbegin.la} \
811 %{?with_java:libgcj.la libffi.la} \
812 %{?with_objc:libobjc.la};
814 %{SOURCE1} $RPM_BUILD_ROOT%{_libdir}/$f %{_libdir} > $RPM_BUILD_ROOT%{_libdir}/$f.fixed
815 mv $RPM_BUILD_ROOT%{_libdir}/$f{.fixed,}
817 %{SOURCE1} $RPM_BUILD_ROOT%{_libdir32}/$f %{_libdir32} > $RPM_BUILD_ROOT%{_libdir32}/$f.fixed
818 mv $RPM_BUILD_ROOT%{_libdir32}/$f{.fixed,}
822 # include/ contains install-tools/include/* and headers that were fixed up
823 # by fixincludes, we don't want former
824 gccdir=$(echo $RPM_BUILD_ROOT%{_libdir}/gcc/*/*/)
826 # we have to save these however
827 %{?with_java:mv -f $gccdir/include/{gcj,libffi/ffitarget.h,jawt.h,jawt_md.h,jni.h,jvmpi.h} $gccdir/tmp}
828 %{?with_objc:mv -f $gccdir/include/objc $gccdir/tmp}
829 mv -f $gccdir/include/syslimits.h $gccdir/tmp
830 rm -rf $gccdir/include
831 mv -f $gccdir/tmp $gccdir/include
832 cp -f $gccdir/install-tools/include/*.h $gccdir/include
833 # but we don't want anything more from install-tools
834 rm -rf $gccdir/install-tools
837 ln -sf %{_slibdir32}/libgcc_s.so.1 $gccdir/32/libgcc_s.so
839 ln -sf %{_slibdir}/libgcc_s.so.1 $gccdir/libgcc_s.so
842 %find_lang libstdc\+\+
844 # cvs snap doesn't contain (release does) below files,
845 # so let's create dummy entries to satisfy %%files.
846 [ ! -f NEWS ] && touch NEWS
847 [ ! -f libgfortran/AUTHORS ] && touch libgfortran/AUTHORS
848 [ ! -f libgfortran/README ] && touch libgfortran/README
851 rm -rf $RPM_BUILD_ROOT
854 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
857 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
860 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
863 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
866 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
869 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
872 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
875 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
877 %post -p /sbin/ldconfig -n libgcc
878 %postun -p /sbin/ldconfig -n libgcc
879 %post -p /sbin/ldconfig -n libmudflap
880 %postun -p /sbin/ldconfig -n libmudflap
881 %post -p /sbin/ldconfig -n libgnat
882 %postun -p /sbin/ldconfig -n libgnat
883 %post -p /sbin/ldconfig -n libstdc++
884 %postun -p /sbin/ldconfig -n libstdc++
885 %post -p /sbin/ldconfig -n libgfortran
886 %postun -p /sbin/ldconfig -n libgfortran
887 %post -p /sbin/ldconfig -n libgcj
888 %postun -p /sbin/ldconfig -n libgcj
889 %post -p /sbin/ldconfig -n libffi
890 %postun -p /sbin/ldconfig -n libffi
891 %post -p /sbin/ldconfig -n libobjc
892 %postun -p /sbin/ldconfig -n libobjc
895 %defattr(644,root,root,755)
896 %doc ChangeLog.general MAINTAINERS NEWS bugs.html faq.html
897 %doc gcc/{ChangeLog,ONEWS,README.Portability}
899 %dir %{_libdir}/gcc/*
900 %dir %{_libdir}/gcc/*/*
901 %dir %{_libdir}/gcc/*/*/include
903 %attr(755,root,root) %{_bindir}/*-gcc*
904 %attr(755,root,root) %{_bindir}/gcc
905 %attr(755,root,root) %{_bindir}/gccbug
906 %attr(755,root,root) %{_bindir}/gcov
907 %attr(755,root,root) %{_bindir}/cc
908 %attr(755,root,root) %{_bindir}/cpp
910 %{_mandir}/man1/cc.1*
911 %{_mandir}/man1/cpp.1*
912 %{_mandir}/man1/gcc.1*
913 %{_mandir}/man1/gcov.1*
918 %attr(755,root,root) /lib/cpp
920 %attr(755,root,root) %{_slibdir}/lib*.so
922 %dir %{_libdir}/gcc/*/*/32
923 %{_libdir}/gcc/*/*/32/libgcov.a
924 %{_libdir}/gcc/*/*/32/libgcc.a
925 %{_libdir}/gcc/*/*/32/libgcc_eh.a
926 %{_libdir}/gcc/*/*/32/libgcc_s.so
928 %{_libdir}/gcc/*/*/libgcov.a
929 %{_libdir}/gcc/*/*/libgcc.a
930 %{_libdir}/gcc/*/*/libgcc_eh.a
931 %{_libdir}/gcc/*/*/libgcc_s.so
932 %{_libdir}/gcc/*/*/specs
934 %{_libdir}/gcc/*/*/32/crt*.o
936 %{_libdir}/gcc/*/*/crt*.o
937 %attr(755,root,root) %{_libdir}/gcc/*/*/cc1
938 %attr(755,root,root) %{_libdir}/gcc/*/*/collect2
940 %{_libdir}/gcc/*/*/include/*.h
943 %defattr(644,root,root,755)
945 %attr(755,root,root) %{_slibdir32}/lib*.so.*
947 %attr(755,root,root) %{_slibdir}/lib*.so.*
950 %defattr(644,root,root,755)
952 %attr(755,root,root) %{_libdir32}/libmudflap*.so.*.*.*
954 %attr(755,root,root) %{_libdir}/libmudflap*.so.*.*.*
956 %files -n libmudflap-devel
957 %defattr(644,root,root,755)
958 %{_includedir}/mf-runtime.h
960 %{_libdir32}/libmudflap*.la
961 %attr(755,root,root) %{_libdir32}/libmudflap*.so
963 %{_libdir}/libmudflap*.la
964 %attr(755,root,root) %{_libdir}/libmudflap*.so
966 %files -n libmudflap-static
967 %defattr(644,root,root,755)
969 %{_libdir32}/libmudflap*.a
971 %{_libdir}/libmudflap*.a
975 %defattr(644,root,root,755)
976 %doc gcc/ada/ChangeLog
977 %attr(755,root,root) %{_bindir}/gnat*
978 %attr(755,root,root) %{_bindir}/gpr*
979 %attr(755,root,root) %{_libdir}/libgnarl*.so
980 %attr(755,root,root) %{_libdir}/libgnat*.so
981 %attr(755,root,root) %{_libdir}/gcc/*/*/gnat1
982 %{_libdir}/gcc/*/*/adainclude
983 %dir %{_libdir}/gcc/*/*/adalib
984 %{_libdir}/gcc/*/*/adalib/*.ali
985 %{_libdir}/gcc/*/*/adalib/g-trasym.o
986 %{_libdir}/gcc/*/*/adalib/libgccprefix.a
988 %{_libdir}/gcc/*/*/adalib/libgmem.a
993 %defattr(644,root,root,755)
994 %attr(755,root,root) %{_libdir}/libgnarl*.so.1
995 %attr(755,root,root) %{_libdir}/libgnat*.so.1
997 %files -n libgnat-static
998 %defattr(644,root,root,755)
999 %{_libdir}/gcc/*/*/adalib/libgnarl.a
1000 %{_libdir}/gcc/*/*/adalib/libgnat.a
1004 %defattr(644,root,root,755)
1005 %doc gcc/cp/{ChangeLog,NEWS}
1006 %attr(755,root,root) %{_bindir}/g++
1007 %attr(755,root,root) %{_bindir}/*-g++
1008 %attr(755,root,root) %{_bindir}/c++
1009 %attr(755,root,root) %{_bindir}/*-c++
1010 %attr(755,root,root) %{_libdir}/gcc/*/*/cc1plus
1011 %if %{with multilib}
1012 %{_libdir32}/libsupc++.a
1013 %{_libdir32}/libsupc++.la
1015 %{_libdir}/libsupc++.a
1016 %{_libdir}/libsupc++.la
1017 %{_mandir}/man1/g++.1*
1019 %files -n libstdc++ -f libstdc++.lang
1020 %defattr(644,root,root,755)
1021 %doc libstdc++-v3/{ChangeLog,README}
1022 %if %{with multilib}
1023 %attr(755,root,root) %{_libdir32}/libstdc++.so.*.*.*
1025 %attr(755,root,root) %{_libdir}/libstdc++.so.*.*.*
1027 %files -n libstdc++-devel
1028 %defattr(644,root,root,755)
1029 %doc libstdc++-v3/docs/html
1030 %dir %{_includedir}/c++
1031 %{_includedir}/c++/%{version}
1033 %exclude %{_includedir}/c++/%{version}/java
1034 %exclude %{_includedir}/c++/%{version}/javax
1035 %exclude %{_includedir}/c++/%{version}/gcj
1036 %exclude %{_includedir}/c++/%{version}/gnu
1039 %exclude %{_includedir}/c++/%{version}/*/bits/stdc++.h.gch
1041 %if %{with multilib}
1042 %{_libdir32}/libstdc++.la
1043 %attr(755,root,root) %{_libdir32}/libstdc++.so
1045 %{_libdir}/libstdc++.la
1046 %attr(755,root,root) %{_libdir}/libstdc++.so
1048 %files -n libstdc++-static
1049 %defattr(644,root,root,755)
1050 %if %{with multilib}
1051 %{_libdir32}/libstdc++.a
1053 %{_libdir}/libstdc++.a
1057 %defattr(644,root,root,755)
1058 %doc gcc/fortran/ChangeLog
1059 %attr(755,root,root) %{_bindir}/g95
1060 %attr(755,root,root) %{_bindir}/gfortran
1061 %{_infodir}/gfortran*
1062 %attr(755,root,root) %{_libdir}/gcc/*/*/f951
1063 %if %{with multilib}
1064 %{_libdir32}/libgfortranbegin.a
1065 %{_libdir32}/libgfortranbegin.la
1066 %{_libdir32}/libgfortran.la
1067 %attr(755,root,root) %{_libdir32}/libgfortran.so
1069 %{_libdir}/libgfortranbegin.a
1070 %{_libdir}/libgfortranbegin.la
1071 %{_libdir}/libgfortran.la
1072 %attr(755,root,root) %{_libdir}/libgfortran.so
1073 %{_mandir}/man1/g95.1*
1074 %{_mandir}/man1/gfortran.1*
1076 %files -n libgfortran
1077 %defattr(644,root,root,755)
1078 %doc libgfortran/{AUTHORS,README,ChangeLog}
1079 %if %{with multilib}
1080 %attr(755,root,root) %{_libdir32}/libgfortran.so.*.*.*
1082 %attr(755,root,root) %{_libdir}/libgfortran.so.*.*.*
1084 %files -n libgfortran-static
1085 %defattr(644,root,root,755)
1086 %if %{with multilib}
1087 %{_libdir32}/libgfortran.a
1089 %{_libdir}/libgfortran.a
1094 %defattr(644,root,root,755)
1095 %doc gcc/java/ChangeLog java-doc/*
1096 %attr(755,root,root) %{_bindir}/fastjar
1097 %attr(755,root,root) %{_bindir}/gcj*
1098 %attr(755,root,root) %{_bindir}/gjnih
1099 %attr(755,root,root) %{_bindir}/grepjar
1100 %attr(755,root,root) %{_bindir}/grmi*
1101 %attr(755,root,root) %{_bindir}/jcf-dump
1102 %attr(755,root,root) %{_bindir}/jv-*
1103 %attr(755,root,root) %{_bindir}/*-gcj*
1104 %attr(755,root,root) %{_libdir}/gcc/*/*/jc1
1105 %attr(755,root,root) %{_libdir}/gcc/*/*/jvgenmain
1106 %{_infodir}/fastjar*
1108 %{_mandir}/man1/fastjar*
1109 %{_mandir}/man1/gcj*
1110 %{_mandir}/man1/gjnih*
1111 %{_mandir}/man1/grepjar*
1112 %{_mandir}/man1/grmi*
1113 %{_mandir}/man1/jcf-*
1114 %{_mandir}/man1/jv-*
1117 %defattr(644,root,root,755)
1118 %doc libjava/{ChangeLog,LIBGCJ_LICENSE,NEWS,README,THANKS}
1119 %attr(755,root,root) %{_bindir}/addr2name.awk
1120 %attr(755,root,root) %{_bindir}/gij
1121 %dir %{_libdir}/gcj-%{version}
1122 %{_libdir}/gcj-%{version}/classmap.db
1123 %attr(755,root,root) %{_libdir}/lib*cj*.so.*.*.*
1124 %attr(755,root,root) %{_libdir}/libgij.so.*.*.*
1125 %{_libdir}/logging.properties
1126 %{_javadir}/libgcj*.jar
1127 %{_mandir}/man1/gij*
1129 %files -n libgcj-devel
1130 %defattr(644,root,root,755)
1131 %{_includedir}/c++/%{version}/java
1132 %{_includedir}/c++/%{version}/javax
1133 %{_includedir}/c++/%{version}/gcj
1134 %{_includedir}/c++/%{version}/gnu
1135 %{_libdir}/gcc/*/*/include/gcj
1136 %{_libdir}/gcc/*/*/include/jawt.h
1137 %{_libdir}/gcc/*/*/include/jawt_md.h
1138 %{_libdir}/gcc/*/*/include/jni.h
1139 %{_libdir}/gcc/*/*/include/jvmpi.h
1140 %dir %{_libdir}/security
1141 %{_libdir}/security/*
1142 %{_libdir}/lib*cj.spec
1143 %{_libdir}/lib*cj*.la
1144 %attr(755,root,root) %{_libdir}/lib*cj*.so
1145 %{_libdir}/libgij.la
1146 %attr(755,root,root) %{_libdir}/libgij.so
1147 %{_pkgconfigdir}/libgcj.pc
1149 %files -n libgcj-static
1150 %defattr(644,root,root,755)
1151 %{_libdir}/lib*cj*.a
1155 %defattr(644,root,root,755)
1156 %doc libffi/{ChangeLog,ChangeLog.libgcj,LICENSE,README}
1157 %attr(755,root,root) %{_libdir}/libffi.so.*.*.*
1159 %files -n libffi-devel
1160 %defattr(644,root,root,755)
1161 %{_libdir}/gcc/*/*/include/ffitarget.h
1162 %attr(755,root,root) %{_libdir}/libffi.so
1163 %{_libdir}/libffi.la
1164 %{_includedir}/ffi.h
1166 %files -n libffi-static
1167 %defattr(644,root,root,755)
1173 %defattr(644,root,root,755)
1174 %doc gcc/objc/README
1175 %attr(755,root,root) %{_libdir}/gcc/*/*/cc1obj
1176 %if %{with multilib}
1177 %attr(755,root,root) %{_libdir32}/libobjc.so
1178 %{_libdir32}/libobjc.la
1180 %attr(755,root,root) %{_libdir}/libobjc.so
1181 %{_libdir}/libobjc.la
1182 %{_libdir}/gcc/*/*/include/objc
1185 %defattr(644,root,root,755)
1186 %doc libobjc/{ChangeLog,README*}
1187 %if %{with multilib}
1188 %attr(755,root,root) %{_libdir32}/libobjc.so.*.*.*
1190 %attr(755,root,root) %{_libdir}/libobjc.so.*.*.*
1192 %files -n libobjc-static
1193 %defattr(644,root,root,755)
1194 %if %{with multilib}
1195 %{_libdir32}/libobjc.a
1197 %{_libdir}/libobjc.a