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)
7 # - http://gcc.gnu.org/PR19664, PR20218 (visibility issues)
10 %bcond_without ada # build without ADA support
11 %bcond_without fortran # build without Fortran support
12 %bcond_without java # build without Java support
13 %bcond_without objc # build without ObjC support
14 %bcond_with multilib # build with multilib support (it needs glibc[32&64]-devel)
15 %bcond_without profiling # build without profiling
16 %bcond_without bootstrap # omit 3-stage bootstrap
18 %ifnarch %{x8664} ppc64 s390x sparc64
19 %undefine with_multilib
22 Summary: GNU Compiler Collection: the C compiler and shared files
23 Summary(es): Colección de compiladores GNU: el compilador C y ficheros compartidos
24 Summary(pl): Kolekcja kompilatorów GNU: kompilator C i pliki wspó³dzielone
25 Summary(pt_BR): Coleção dos compiladores GNU: o compilador C e arquivos compartilhados
28 %define _snap 20050514
29 Release: 0.%{_snap}.1.1
32 Group: Development/Languages
33 #Source0: ftp://gcc.gnu.org/pub/gcc/releases/gcc-%{version}/%{name}-%{version}.tar.bz2
34 Source0: ftp://gcc.gnu.org/pub/gcc/snapshots/4.0-%{_snap}/gcc-4.0-%{_snap}.tar.bz2
35 # Source0-md5: 25e147473b14c4bb43cdc53299c3524c
36 Source1: %{name}-optimize-la.pl
37 Patch0: %{name}-info.patch
38 Patch1: %{name}-nolocalefiles.patch
39 Patch2: %{name}-nodebug.patch
40 Patch3: %{name}-ada-link-new-libgnat.patch
41 Patch4: %{name}-ada-link.patch
42 Patch5: %{name}-alpha-ada_fix.patch
44 Patch10: %{name}-pr19664.patch
45 Patch11: %{name}-pr20218.patch
46 Patch12: %{name}-pr21454.patch
47 Patch13: %{name}-pr21519.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 BuildRequires: rpmbuild(macros) >= 1.211
67 BuildRequires: texinfo >= 4.1
68 BuildRequires: zlib-devel
69 # AS_NEEDED directive for dynamic linker
70 # http://sources.redhat.com/ml/glibc-cvs/2005-q1/msg00614.html
71 # http://sources.redhat.com/ml/binutils/2005-01/msg00288.html
72 Requires: binutils >= 2:2.16.90.0.1-0.3
73 Requires: libgcc = %{epoch}:%{version}-%{release}
74 Provides: cpp = %{epoch}:%{version}-%{release}
75 %{?with_ada:Provides: gcc(ada)}
76 %{?with_multilib:Provides: gcc(multilib)}
83 Conflicts: glibc-devel < 2.2.5-20
84 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
86 %define _slibdir /%{_lib}
88 # 32-bit environment on x86-64,ppc64,s390x,sparc64
89 %define _slibdir32 /lib
90 %define _libdir32 /usr/lib
93 %define rpmcflags -O2 -mtune=ultrasparc
97 A compiler aimed at integrating all the optimizations and features
98 necessary for a high-performance and stable development environment.
100 This package contains the C compiler and some files shared by various
101 parts of the GNU Compiler Collection. In order to use another GCC
102 compiler you will need to install the appropriate subpackage.
105 Un compilador que intenta integrar todas las optimalizaciones y
106 características necesarias para un entorno de desarrollo eficaz y
109 Este paquete contiene el compilador de C y unos ficheros compartidos
110 por varias partes de la colección de compiladores GNU (GCC). Para usar
111 otro compilador de GCC será necesario que instale el subpaquete
115 Kompilator, posiadaj±cy du¿e mo¿liwo¶ci optymalizacyjne niezbêdne do
116 wyprodukowania szybkiego i stabilnego kodu wynikowego.
118 Ten pakiet zawiera kompilator C i pliki wspó³dzielone przez ró¿ne
119 czê¶ci kolekcji kompilatorów GNU (GCC). ¯eby u¿ywaæ innego kompilatora
120 z GCC, trzeba zainstalowaæ odpowiedni podpakiet.
122 %description -l pt_BR
123 Este pacote adiciona infraestrutura básica e suporte a linguagem C ao
124 GNU Compiler Collection.
127 Summary: Shared gcc library
128 Summary(es): Biblioteca compartida de gcc
129 Summary(pl): Biblioteka gcc
130 Summary(pt_BR): Biblioteca runtime para o GCC
131 License: GPL with unlimited link permission
135 %description -n libgcc
138 %description -n libgcc -l es
139 Biblioteca compartida de gcc.
141 %description -n libgcc -l pl
142 Biblioteka dynamiczna gcc.
144 %description -n libgcc -l pt_BR
145 Biblioteca runtime para o GCC.
147 %package -n libmudflap
148 Summary: GCC mudflap shared support library
149 Summary(pl): Wspó³dzielona biblioteka wspomagaj±ca GCC mudflap
150 License: GPL v2+ with unlimited link permission
153 %description -n libmudflap
154 The libmudflap libraries are used by GCC for instrumenting pointer and
155 array dereferencing operations.
157 %description -n libmudflap -l pl
158 Biblioteki libmudflap s± u¿ywane przez GCC do obs³ugi operacji
159 dereferencji wspa¼ników i tablic.
161 %package -n libmudflap-devel
162 Summary: Development files for GCC mudflap library
163 Summary(pl): Pliki programistyczne biblioteki GCC mudflap
164 License: GPL v2+ with unlimited link permission
165 Group: Development/Libraries
166 Requires: libmudflap = %{epoch}:%{version}-%{release}
168 %description -n libmudflap-devel
169 The libmudflap libraries are used by GCC for instrumenting pointer and
170 array dereferencing operations. This package contains development
173 %description -n libmudflap-devel -l pl
174 Biblioteki libmudflap s± u¿ywane przez GCC do obs³ugi operacji
175 dereferencji wspa¼ników i tablic. Ten pakiet zawiera pliki
178 %package -n libmudflap-static
179 Summary: Static GCC mudflap library
180 Summary(pl): Statyczna biblioteka GCC mudflap
181 License: GPL v2+ with unlimited link permission
182 Group: Development/Libraries
183 Requires: libmudflap-devel = %{epoch}:%{version}-%{release}
185 %description -n libmudflap-static
186 The libmudflap libraries are used by GCC for instrumenting pointer and
187 array dereferencing operations. This package contains static
190 %description -n libmudflap-static -l pl
191 Biblioteki libmudflap s± u¿ywane przez GCC do obs³ugi operacji
192 dereferencji wspa¼ników i tablic. Ten pakiet zawiera biblioteki
196 Summary: Ada support for gcc
197 Summary(es): Soporte de Ada para gcc
198 Summary(pl): Obs³uga Ady do gcc
199 Group: Development/Languages
200 Requires: %{name} = %{epoch}:%{version}-%{release}
201 Requires: libgnat = %{epoch}:%{version}-%{release}
203 Obsoletes: gnat-devel
206 This package adds experimental support for compiling Ada programs.
208 %description ada -l es
209 Este paquete añade soporte experimental para compilar programas en
212 %description ada -l pl
213 Ten pakiet dodaje eksperymentalne wsparcie dla kompilacji programów w
217 Summary: Ada standard libraries
218 Summary(es): Bibliotecas estándares de Ada
219 Summary(pl): Biblioteki standardowe dla Ady
220 License: GPL v2+ with linking exception
225 %description -n libgnat
226 This package contains shared libraries needed to run programs written
229 %description -n libgnat -l es
230 Este paquete contiene las bibliotecas compartidas necesarias para
231 ejecutar programas escritos en Ada.
233 %description -n libgnat -l pl
234 Ten pakiet zawiera biblioteki potrzebne do uruchamiania programów
237 %package -n libgnat-static
238 Summary: Static Ada standard libraries
239 Summary(pl): Statyczne biblioteki standardowe dla Ady
240 License: GPL v2+ with linking exception
241 Group: Development/Libraries
242 Obsoletes: gnat-static
244 %description -n libgnat-static
245 This package contains static libraries for programs written in Ada.
247 %description -n libgnat-static -l pl
248 Ten pakiet zawiera biblioteki statyczne dla programów napisanych w
252 Summary: C++ support for gcc
253 Summary(es): Soporte de C++ para gcc
254 Summary(pl): Obs³uga C++ dla gcc
255 Summary(pt_BR): Suporte C++ para o gcc
256 Group: Development/Languages
257 Requires: %{name} = %{epoch}:%{version}-%{release}
262 This package adds C++ support to the GNU Compiler Collection. It
263 includes support for most of the current C++ specification, including
264 templates and exception handling. It does not include a standard C++
265 library, which is available separately.
267 %description c++ -l de
268 Dieses Paket enthält die C++-Unterstützung für den
269 GNU-Compiler-Collection. Es unterstützt die aktuelle
270 C++-Spezifikation, inkl. Templates und Ausnahmeverarbeitung. Eine
271 C++-Standard-Library ist nicht enthalten - sie ist getrennt
274 %description c++ -l es
275 Este paquete añade soporte de C++ al GCC (colección de compiladores
276 GNU). Ello incluye el soporte para la mayoría de la especificación
277 actual de C++, incluyendo plantillas y manejo de excepciones. No
278 incluye la biblioteca estándar de C++, la que es disponible separada.
280 %description c++ -l fr
281 Ce package ajoute un support C++ a la collection de compilateurs GNU.
282 Il comprend un support pour la plupart des spécifications actuelles de
283 C++, dont les modéles et la gestion des exceptions. Il ne comprend pas
284 une bibliothéque C++ standard, qui est disponible séparément.
286 %description c++ -l pl
287 Ten pakiet dodaje obs³ugê C++ do kompilatora gcc. Ma wsparcie dla
288 du¿ej ilo¶ci obecnych specyfikacji C++, nie zawiera natomiast
289 standardowych bibliotek C++, które s± w oddzielnym pakiecie.
291 %description c++ -l pt_BR
292 Este pacote adiciona suporte C++ para o gcc.
294 %description c++ -l tr
295 Bu paket, GNU C derleyicisine C++ desteði ekler. 'Template'ler ve
296 aykýrý durum iþleme gibi çoðu güncel C++ tanýmlarýna uyar. Standart
297 C++ kitaplýðý bu pakette yer almaz.
299 %package -n libstdc++
300 Summary: GNU C++ library
301 Summary(es): Biblioteca C++ de GNU
302 Summary(pl): Biblioteki GNU C++
303 Summary(pt_BR): Biblioteca C++ GNU
304 License: GPL v2+ with free software exception
307 Obsoletes: libstdc++3
309 %description -n libstdc++
310 This is the GNU implementation of the standard C++ libraries, along
311 with additional GNU tools. This package includes the shared libraries
312 necessary to run C++ applications.
314 %description -n libstdc++ -l de
315 Dies ist die GNU-Implementierung der Standard-C++-Libraries mit
316 weiteren GNU-Tools. Dieses Paket enthält die zum Ausführen von
317 C++-Anwendungen erforderlichen gemeinsam genutzten Libraries.
319 %description -n libstdc++ -l es
320 Este es el soporte de las bibliotecas padrón del C++, junto con
321 herramientas GNU adicionales. El paquete incluye las bibliotecas
322 compartidas necesarias para ejecutar aplicaciones C++.
324 %description -n libstdc++ -l fr
325 Ceci est l'implémentation GNU des librairies C++ standard, ainsi que
326 des outils GNU supplémentaires. Ce package comprend les librairies
327 partagées nécessaires à l'exécution d'application C++.
329 %description -n libstdc++ -l pl
330 Pakiet ten zawiera biblioteki bêd±ce implementacj± standardowych
331 bibliotek C++. Znajduj± siê w nim biblioteki dynamiczne niezbêdne do
332 uruchomienia aplikacji napisanych w C++.
334 %description -n libstdc++ -l pt_BR
335 Este pacote é uma implementação da biblioteca padrão C++ v3, um
336 subconjunto do padrão ISO 14882.
338 %description -n libstdc++ -l tr
339 Bu paket, standart C++ kitaplýklarýnýn GNU gerçeklemesidir ve C++
340 uygulamalarýnýn koþturulmasý için gerekli kitaplýklarý içerir.
342 %package -n libstdc++-devel
343 Summary: Header files and documentation for C++ development
344 Summary(de): Header-Dateien zur Entwicklung mit C++
345 Summary(es): Ficheros de cabecera y documentación para desarrollo C++
346 Summary(fr): Fichiers d'en-tête et biblitothèques pour développer en C++
347 Summary(pl): Pliki nag³ówkowe i dokumentacja do biblioteki standardowej C++
348 Summary(pt_BR): Arquivos de inclusão e bibliotecas para o desenvolvimento em C++
349 Summary(tr): C++ ile program geliþtirmek için gerekli dosyalar
350 License: GPL v2+ with free software exception
351 Group: Development/Libraries
352 Requires: %{name}-c++ = %{epoch}:%{version}-%{release}
353 Requires: libstdc++ = %{epoch}:%{version}-%{release}
354 Requires: glibc-devel
355 Obsoletes: libg++-devel
356 Obsoletes: libstdc++3-devel
358 %description -n libstdc++-devel
359 This is the GNU implementation of the standard C++ libraries. This
360 package includes the header files needed for C++ development and
361 library documentation.
363 %description -n libstdc++-devel -l es
364 Este es el soporte de las bibliotecas padrón del lenguaje C++. Este
365 paquete incluye los archivos de inclusión y bibliotecas necesarios
366 para desarrollo de programas en lenguaje C++.
368 %description -n libstdc++-devel -l pl
369 Pakiet ten zawiera biblioteki bêd±ce implementacj± standardowych
370 bibliotek C++. Znajduj± siê w nim pliki nag³ówkowe wykorzystywane przy
371 programowaniu w jêzyku C++ oraz dokumentacja biblioteki standardowej.
373 %description -n libstdc++-devel -l pt_BR
374 Este pacote inclui os arquivos de inclusão e bibliotecas necessárias
375 para desenvolvimento de programas C++.
377 %package -n libstdc++-static
378 Summary: Static C++ standard library
379 Summary(es): Biblioteca estándar estática de C++
380 Summary(pl): Statyczna biblioteka standardowa C++
381 License: GPL v2+ with free software exception
382 Group: Development/Libraries
383 Requires: libstdc++-devel = %{epoch}:%{version}-%{release}
385 %description -n libstdc++-static
386 Static C++ standard library.
388 %description -n libstdc++-static -l es
389 Biblioteca estándar estática de C++.
391 %description -n libstdc++-static -l pl
392 Statyczna biblioteka standardowa C++.
395 Summary: Fortran 95 support for gcc
396 Summary(es): Soporte de Fortran 95 para gcc
397 Summary(pl): Obs³uga Fortranu 95 dla gcc
398 Summary(pt_BR): Suporte Fortran 95 para o GCC
399 Group: Development/Languages/Fortran
400 Requires: libgfortran = %{epoch}:%{version}-%{release}
401 Provides: gcc-g77 = %{epoch}:%{version}-%{release}
406 This package adds support for compiling Fortran 95 programs with the
409 %description fortran -l es
410 Este paquete añade soporte para compilar programas escritos en Fortran
411 95 con el compilador GNU.
413 %description fortran -l pl
414 Ten pakiet dodaje obs³ugê Fortranu 95 do kompilatora gcc. Jest
415 potrzebny do kompilowania programów pisanych w jêzyku Fortran 95.
417 %description fortran -l pt_BR
418 Suporte Fortran 95 para o GCC.
420 %package -n libgfortran
421 Summary: Fortran 95 Libraries
422 Summary(es): Bibliotecas de Fortran 95
423 Summary(pl): Biblioteki Fortranu 95
428 %description -n libgfortran
429 Fortran 95 Libraries.
431 %description -n libgfortran -l es
432 Bibliotecas de Fortran 95.
434 %description -n libgfortran -l pl
435 Biblioteki Fortranu 95.
437 %package -n libgfortran-static
438 Summary: Static Fortran 95 Libraries
439 Summary(es): Bibliotecas estáticas de Fortran 95
440 Summary(pl): Statyczne Biblioteki Fortranu 95
442 Group: Development/Libraries
443 Requires: libgfortran = %{epoch}:%{version}-%{release}
444 Obsoletes: libg2c-static
446 %description -n libgfortran-static
447 Static Fortran 95 Libraries.
449 %description -n libgfortran-static -l es
450 Bibliotecas estáticas de Fortran 95.
452 %description -n libgfortran-static -l pl
453 Statyczne biblioteki Fortranu 95.
456 Summary: Java support for gcc
457 Summary(es): Soporte de Java para gcc
458 Summary(pl): Obs³uga Javy dla gcc
459 Group: Development/Languages/Java
460 Requires: %{name} = %{epoch}:%{version}-%{release}
461 Requires: libgcj-devel = %{epoch}:%{version}-%{release}
462 Provides: gcj = %{epoch}:%{version}-%{release}
464 Obsoletes: gcc-java-tools
467 This package adds experimental support for compiling Java(TM) programs
468 and bytecode into native code. To use this you will also need the
471 %description java -l es
472 Este paquete añade soporte experimental para compilar programas
473 Java(tm) y su bytecode en código nativo. Para usarlo también va a
474 necesitar el paquete libgcj.
476 %description java -l pl
477 Ten pakiet dodaje mo¿liwo¶æ kompilowania programów w jêzyku Java(TM)
478 oraz bajtkodu do kodu natywnego. Do u¿ywania go wymagany jest
479 dodatkowo pakiet libgcj.
482 Summary: Java Class Libraries
483 Summary(es): Bibliotecas de clases de Java
484 Summary(pl): Biblioteki Klas Javy
485 License: GPL with limited linking exception
489 %description -n libgcj
490 Java Class Libraries.
492 %description -n libgcj -l es
493 Bibliotecas de clases de Java.
495 %description -n libgcj -l pl
496 Biblioteki Klas Javy.
498 %package -n libgcj-devel
499 Summary: Development files for Java Class Libraries
500 Summary(es): Ficheros de desarrollo para las bibliotecas de clases de Java
501 Summary(pl): Pliki nag³ówkowe dla Bibliotek Klas Javy
502 License: GPL with limited linking exception
503 Group: Development/Libraries
504 Requires: libgcj = %{epoch}:%{version}-%{release}
506 Obsoletes: libgcj3-devel
508 %description -n libgcj-devel
509 Development files for Java Class Libraries.
511 %description -n libgcj-devel -l es
512 Ficheros de desarrollo para las bibliotecas de clases de Java.
514 %description -n libgcj-devel -l pl
515 Pliki nag³ówkowe dla Bibliotek Klas Javy.
517 %package -n libgcj-static
518 Summary: Static Java Class Libraries
519 Summary(es): Bibliotecas estáticas de clases de Java
520 Summary(pl): Statyczne Biblioteki Klas Javy
521 License: GPL with limited linking exception
522 Group: Development/Libraries
523 Requires: libgcj-devel = %{epoch}:%{version}-%{release}
524 Requires: libstdc++-devel = %{epoch}:%{version}-%{release}
526 %description -n libgcj-static
527 Static Java Class Libraries.
529 %description -n libgcj-static -l es
530 Bibliotecas estáticas de clases de Java.
532 %description -n libgcj-static -l pl
533 Statyczne Biblioteki Klas Javy.
536 Summary: Foreign Function Interface library
537 Summary(es): Biblioteca de interfaz de funciones ajenas
538 Summary(pl): Biblioteka zewnêtrznych wywo³añ funkcji
542 %description -n libffi
543 The libffi library provides a portable, high level programming
544 interface to various calling conventions. This allows a programmer to
545 call any function specified by a call interface description at run
548 %description -n libffi -l es
549 La biblioteca libffi provee una interfaz portable de programación de
550 alto nivel para varias convenciones de llamada. Ello permite que un
551 programador llame una función cualquiera especificada por una
552 descripción de interfaz de llamada en el tiempo de ejecución.
554 %description -n libffi -l pl
555 Biblioteka libffi dostarcza przeno¶nego, wysokopoziomowego
556 miêdzymordzia do ró¿nych konwencji wywo³añ funkcji. Pozwala to
557 programi¶cie wywo³ywaæ dowolne funkcje podaj±c konwencjê wywo³ania w
560 %package -n libffi-devel
561 Summary: Development files for Foreign Function Interface library
562 Summary(es): Ficheros de desarrollo para libffi
563 Summary(pl): Pliki nag³ówkowe dla libffi
565 Group: Development/Libraries
566 Requires: libffi = %{epoch}:%{version}-%{release}
568 %description -n libffi-devel
569 Development files for Foreign Function Interface library.
571 %description -n libffi-devel -l es
572 Ficheros de desarrollo para libffi.
574 %description -n libffi-devel -l pl
575 Pliki nag³ówkowe dla libffi.
577 %package -n libffi-static
578 Summary: Static Foreign Function Interface library
579 Summary(es): Biblioteca libffi estática
580 Summary(pl): Statyczna biblioteka libffi
582 Group: Development/Libraries
583 Requires: libffi-devel = %{epoch}:%{version}-%{release}
585 %description -n libffi-static
586 Static Foreign Function Interface library.
588 %description -n libffi-static -l es
589 Biblioteca libffi estática.
591 %description -n libffi-static -l pl
592 Statyczna biblioteka libffi.
595 Summary: Objective C support for gcc
596 Summary(de): Objektive C-Unterstützung für gcc
597 Summary(es): Soporte de Objective C para gcc
598 Summary(fr): Gestion d'Objective C pour gcc
599 Summary(pl): Obs³uga obiektowego C dla kompilatora gcc
600 Summary(tr): gcc için Objective C desteði
601 Group: Development/Languages
602 Requires: %{name} = %{epoch}:%{version}-%{release}
603 Requires: libobjc = %{epoch}:%{version}-%{release}
608 This package adds Objective C support to the GNU Compiler Collection.
609 Objective C is a object oriented derivative of the C language, mainly
610 used on systems running NeXTSTEP. This package does not include the
611 standard objective C object library.
613 %description objc -l de
614 Dieses Paket ergänzt den GNU-Compiler-Collection durch
615 Objective-C-Support. Objective C ist ein objektorientiertes Derivat
616 von C, das zur Hauptsache auf Systemen mit NeXTSTEP zum Einsatz kommt.
617 Die Standard-Objective-C-Objekt-Library ist nicht Teil des Pakets.
619 %description objc -l es
620 Este paquete añade soporte de Objective C al GCC (colección de
621 compiladores GNU). Objective C es un lenguaje orientado a objetos
622 derivado de C, principalmente usado en sistemas que funcionan bajo
623 NeXTSTEP. El paquete no incluye la biblioteca de objetos estándar de
626 %description objc -l fr
627 Ce package ajoute un support Objective C a la collection de
628 compilateurs GNU. L'Objective C est un langage orienté objetdérivé du
629 langage C, principalement utilisé sur les systèmes NeXTSTEP. Ce
630 package n'inclue pas la bibliothéque Objective C standard.
632 %description objc -l pl
633 Ten pakiet dodaje obs³ugê obiektowego C do kompilatora gcc. Obiektowe
634 C (objc) jest zorientowan± obiektowo pochodn± jêzyka C, u¿ywan±
635 g³ównie w systemach u¿ywaj±cych NeXTSTEP. W pakiecie nie ma
636 standardowej biblioteki objc (która znajduje siê w osobnym pakiecie).
638 %description objc -l tr
639 Bu paket, GNU C derleyicisine Objective C desteði ekler. Objective C,
640 C dilinin nesne yönelik bir türevidir ve NeXTSTEP altýnda çalýþan
641 sistemlerde yaygýn olarak kullanýlýr. Standart Objective C nesne
642 kitaplýðý bu pakette yer almaz.
645 Summary: Objective C Libraries
646 Summary(es): Bibliotecas de Objective C
647 Summary(pl): Biblioteki Obiektowego C
648 License: GPL v2+ with linking exception
652 %description -n libobjc
653 Objective C Libraries.
655 %description -n libobjc -l es
656 Bibliotecas de Objective C.
658 %description -n libobjc -l pl
659 Biblioteki Obiektowego C.
661 %package -n libobjc-static
662 Summary: Static Objective C Libraries
663 Summary(es): Bibliotecas estáticas de Objective C
664 Summary(pl): Statyczne Biblioteki Obiektowego C
665 License: GPL v2+ with linking exception
666 Group: Development/Libraries
667 Requires: libobjc = %{epoch}:%{version}-%{release}
669 %description -n libobjc-static
670 Static Objective C Libraries.
672 %description -n libobjc-static -l es
673 Bibliotecas estáticas de Objective C.
675 %description -n libobjc-static -l pl
676 Statyczne biblioteki Obiektowego C.
679 #setup -q -n gcc-%{version}
680 %setup -q -n gcc-4.0-%{_snap}
684 %{!?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="%{rpmcflags}" \
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 $RPM_BUILD_ROOT%{_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