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 amd64 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 20050507
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: 701f385de867d117f3648165174b254a
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}-pr21237.patch
45 #Patch12: %{name}-pr19664.patch
46 #Patch13: %{name}-pr20218.patch
47 URL: http://gcc.gnu.org/
48 BuildRequires: autoconf
49 BuildRequires: automake
50 BuildRequires: binutils >= 2:2.15.94.0.1
52 %{?with_java:BuildRequires: cairo-devel}
53 BuildRequires: fileutils >= 4.0.41
56 BuildRequires: gcc(ada)
57 BuildRequires: gcc-ada
59 BuildRequires: gettext-devel
60 BuildRequires: glibc-devel >= %{!?with_multilib:2.2.5-20}%{?with_multilib:6:2.3.4-1.5}
61 BuildRequires: gmp-devel
62 BuildRequires: libmpfr-devel
63 %{?with_java:BuildRequires: pango-devel}
64 BuildRequires: perl-devel
65 BuildRequires: texinfo >= 4.1
66 BuildRequires: zlib-devel
67 # AS_NEEDED directive for dynamic linker
68 # http://sources.redhat.com/ml/glibc-cvs/2005-q1/msg00614.html
69 # http://sources.redhat.com/ml/binutils/2005-01/msg00288.html
70 Requires: binutils >= 2:2.16.90.0.1-0.3
71 Requires: libgcc = %{epoch}:%{version}-%{release}
72 Provides: cpp = %{epoch}:%{version}-%{release}
73 %{?with_ada:Provides: gcc(ada)}
74 %{?with_multilib:Provides: gcc(multilib)}
81 Conflicts: glibc-devel < 2.2.5-20
82 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
84 %define _slibdir /%{_lib}
86 # 32-bit environment on amd64,ppc64,s390x,sparc64
87 %define _slibdir32 /lib
88 %define _libdir32 /usr/lib
91 %define rpmcflags -O2 -mtune=ultrasparc
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 Requires: java-shared
461 Provides: gcj = %{epoch}:%{version}-%{release}
464 This package adds experimental support for compiling Java(TM) programs
465 and bytecode into native code. To use this you will also need the
468 %description java -l es
469 Este paquete añade soporte experimental para compilar programas
470 Java(tm) y su bytecode en código nativo. Para usarlo también va a
471 necesitar el paquete libgcj.
473 %description java -l pl
474 Ten pakiet dodaje mo¿liwo¶æ kompilowania programów w jêzyku Java(TM)
475 oraz bajtkodu do kodu natywnego. Do u¿ywania go wymagany jest
476 dodatkowo pakiet libgcj.
479 Summary: Java Class Libraries
480 Summary(es): Bibliotecas de clases de Java
481 Summary(pl): Biblioteki Klas Javy
482 License: GPL with limited linking exception
486 %description -n libgcj
487 Java Class Libraries.
489 %description -n libgcj -l es
490 Bibliotecas de clases de Java.
492 %description -n libgcj -l pl
493 Biblioteki Klas Javy.
495 %package -n libgcj-devel
496 Summary: Development files for Java Class Libraries
497 Summary(es): Ficheros de desarrollo para las bibliotecas de clases de Java
498 Summary(pl): Pliki nag³ówkowe dla Bibliotek Klas Javy
499 License: GPL with limited linking exception
500 Group: Development/Libraries
501 Requires: libgcj = %{epoch}:%{version}-%{release}
503 Obsoletes: libgcj3-devel
505 %description -n libgcj-devel
506 Development files for Java Class Libraries.
508 %description -n libgcj-devel -l es
509 Ficheros de desarrollo para las bibliotecas de clases de Java.
511 %description -n libgcj-devel -l pl
512 Pliki nag³ówkowe dla Bibliotek Klas Javy.
514 %package -n libgcj-static
515 Summary: Static Java Class Libraries
516 Summary(es): Bibliotecas estáticas de clases de Java
517 Summary(pl): Statyczne Biblioteki Klas Javy
518 License: GPL with limited linking exception
519 Group: Development/Libraries
520 Requires: libgcj-devel = %{epoch}:%{version}-%{release}
521 Requires: libstdc++-devel = %{epoch}:%{version}-%{release}
523 %description -n libgcj-static
524 Static Java Class Libraries.
526 %description -n libgcj-static -l es
527 Bibliotecas estáticas de clases de Java.
529 %description -n libgcj-static -l pl
530 Statyczne Biblioteki Klas Javy.
533 Summary: Foreign Function Interface library
534 Summary(es): Biblioteca de interfaz de funciones ajenas
535 Summary(pl): Biblioteka zewnêtrznych wywo³añ funkcji
539 %description -n libffi
540 The libffi library provides a portable, high level programming
541 interface to various calling conventions. This allows a programmer to
542 call any function specified by a call interface description at run
545 %description -n libffi -l es
546 La biblioteca libffi provee una interfaz portable de programación de
547 alto nivel para varias convenciones de llamada. Ello permite que un
548 programador llame una función cualquiera especificada por una
549 descripción de interfaz de llamada en el tiempo de ejecución.
551 %description -n libffi -l pl
552 Biblioteka libffi dostarcza przeno¶nego, wysokopoziomowego
553 miêdzymordzia do ró¿nych konwencji wywo³añ funkcji. Pozwala to
554 programi¶cie wywo³ywaæ dowolne funkcje podaj±c konwencjê wywo³ania w
557 %package -n libffi-devel
558 Summary: Development files for Foreign Function Interface library
559 Summary(es): Ficheros de desarrollo para libffi
560 Summary(pl): Pliki nag³ówkowe dla libffi
562 Group: Development/Libraries
563 Requires: libffi = %{epoch}:%{version}-%{release}
565 %description -n libffi-devel
566 Development files for Foreign Function Interface library.
568 %description -n libffi-devel -l es
569 Ficheros de desarrollo para libffi.
571 %description -n libffi-devel -l pl
572 Pliki nag³ówkowe dla libffi.
574 %package -n libffi-static
575 Summary: Static Foreign Function Interface library
576 Summary(es): Biblioteca libffi estática
577 Summary(pl): Statyczna biblioteka libffi
579 Group: Development/Libraries
580 Requires: libffi-devel = %{epoch}:%{version}-%{release}
582 %description -n libffi-static
583 Static Foreign Function Interface library.
585 %description -n libffi-static -l es
586 Biblioteca libffi estática.
588 %description -n libffi-static -l pl
589 Statyczna biblioteka libffi.
592 Summary: Shared java tools
593 Summary(es): Herramientas compartidas de Java
594 Summary(pl): Wspó³dzielone narzêdzia javy
595 Group: Development/Languages/Java
596 Provides: jar = %{epoch}:%{version}-%{release}
597 Provides: java-shared
600 Obsoletes: java-shared
602 %description java-tools
603 This package contains tools that are common for every Java(tm)
604 implementation, such as rmic or jar.
606 %description java-tools -l es
607 Este paquete contiene herramientas que son comunes para cada
608 implementación de Java(tm), como rmic o jar.
610 %description java-tools -l pl
611 Pakiet ten zawiera narzêdzia wspólne dla ka¿dej implementacji
612 Javy(tm), takie jak rmic czy jar.
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 Libraries
666 Summary(es): Bibliotecas de Objective C
667 Summary(pl): Biblioteki Obiektowego C
668 License: GPL v2+ with linking exception
672 %description -n libobjc
673 Objective C Libraries.
675 %description -n libobjc -l es
676 Bibliotecas de Objective C.
678 %description -n libobjc -l pl
679 Biblioteki Obiektowego C.
681 %package -n libobjc-static
682 Summary: Static Objective C Libraries
683 Summary(es): Bibliotecas estáticas de Objective C
684 Summary(pl): Statyczne Biblioteki Obiektowego C
685 License: GPL v2+ with linking exception
686 Group: Development/Libraries
687 Requires: libobjc = %{epoch}:%{version}-%{release}
689 %description -n libobjc-static
690 Static Objective C Libraries.
692 %description -n libobjc-static -l es
693 Bibliotecas estáticas de Objective C.
695 %description -n libobjc-static -l pl
696 Statyczne biblioteki Obiektowego C.
699 #setup -q -n gcc-%{version}
700 %setup -q -n gcc-4.0-%{_snap}
705 %{!?debug:%patch2 -p1}
713 # because we distribute modified version of gcc...
714 perl -pi -e 's/(version.*)";/$1 (PLD Linux)";/' gcc/version.c
715 perl -pi -e 's@(bug_report_url.*<URL:).*";@$1http://bugs.pld-linux.org/>";@' gcc/version.c
717 mv ChangeLog ChangeLog.general
723 cp -f /usr/share/automake/config.sub .
725 rm -rf obj-%{_target_platform}
726 install -d obj-%{_target_platform}
727 cd obj-%{_target_platform}
729 CFLAGS="%{rpmcflags}" \
730 CXXFLAGS="%{rpmcflags}" \
733 --prefix=%{_prefix} \
734 --libdir=%{_libdir} \
735 --libexecdir=%{_libdir} \
736 --infodir=%{_infodir} \
737 --mandir=%{_mandir} \
739 --enable-threads=posix \
740 --enable-__cxa_atexit \
741 --enable-languages="c,c++%{?with_fortran:,f95}%{?with_objc:,objc}%{?with_ada:,ada}%{?with_java:,java}" \
744 --%{?with_multilib:en}%{!?with_multilib:dis}able-multilib \
748 --with-demangler-in-ld \
750 --with-slibdir=%{_slibdir} \
755 --enable-libgcj-multifile \
756 --enable-libgcj-database \
763 %{__make} -C obj-%{_target_platform} \
764 %{?with_bootstrap:%{?with_profiling:profiled}bootstrap} \
765 GCJFLAGS="%{rpmcflags}" \
766 BOOT_CFLAGS="%{rpmcflags}" \
767 STAGE1_CFLAGS="%{rpmcflags} -O0" \
768 LDFLAGS_FOR_TARGET="%{rpmldflags}" \
773 rm -rf $RPM_BUILD_ROOT
774 install -d $RPM_BUILD_ROOT{/lib,%{_aclocaldir},%{_datadir},%{_infodir}}
776 cd obj-%{_target_platform}
778 %{__make} -j1 install \
780 infodir=%{_infodir} \
781 DESTDIR=$RPM_BUILD_ROOT
783 install gcc/specs $RPM_BUILD_ROOT%{_libdir}/gcc/%{_target_platform}/%{version}
786 ln -sf $RPM_BUILD_ROOT%{_bindir}/sparc64-pld-linux-gcc \
787 $RPM_BUILD_ROOT%{_bindir}/sparc-pld-linux-gcc
790 ln -sf %{_bindir}/cpp $RPM_BUILD_ROOT/lib/cpp
791 ln -sf gcc $RPM_BUILD_ROOT%{_bindir}/cc
792 echo ".so gcc.1" > $RPM_BUILD_ROOT%{_mandir}/man1/cc.1
795 ln -sf gfortran $RPM_BUILD_ROOT%{_bindir}/g95
796 echo ".so gfortran.1" > $RPM_BUILD_ROOT%{_mandir}/man1/g95.1
800 # move ada shared libraries to proper place...
801 mv -f $RPM_BUILD_ROOT%{_libdir}/gcc/*/*/adalib/*.so.1 \
802 $RPM_BUILD_ROOT%{_libdir}
803 # check if symlink to be made is valid
804 test -f $RPM_BUILD_ROOT%{_libdir}/libgnat-4.0.so.1
805 ln -sf libgnat-4.0.so.1 $RPM_BUILD_ROOT%{_libdir}/libgnat-4.0.so
806 ln -sf libgnarl-4.0.so.1 $RPM_BUILD_ROOT%{_libdir}/libgnarl-4.0.so
807 ln -sf libgnat-4.0.so $RPM_BUILD_ROOT%{_libdir}/libgnat.so
808 ln -sf libgnarl-4.0.so $RPM_BUILD_ROOT%{_libdir}/libgnarl.so
815 cp -f libjava/READ* java-doc
816 cp -f fastjar/README java-doc/README.fastjar
817 cp -f libffi/README java-doc/README.libffi
818 cp -f libffi/LICENSE java-doc/LICENSE.libffi
819 ln -sf %{_javadir}/libgcj-%{version}.jar $RPM_BUILD_ROOT%{_javadir}/libgcj.jar
822 cp -f libobjc/README gcc/objc/README.libobjc
825 # avoid -L poisoning in *.la - there should be only -L%{_libdir}/gcc/*/%{version}
826 # normalize libdir, to avoid propagation of unnecessary RPATHs by libtool
827 for f in libmudflap.la libmudflapth.la libstdc++.la libsupc++.la \
828 %{?with_fortran:libgfortran.la libgfortranbegin.la} \
829 %{?with_java:libgcj.la libffi.la} \
830 %{?with_objc:libobjc.la};
832 %{SOURCE1} $RPM_BUILD_ROOT%{_libdir}/$f %{_libdir} > $RPM_BUILD_ROOT%{_libdir}/$f.fixed
833 mv $RPM_BUILD_ROOT%{_libdir}/$f{.fixed,}
835 %{SOURCE1} $RPM_BUILD_ROOT%{_libdir32}/$f %{_libdir32} > $RPM_BUILD_ROOT%{_libdir32}/$f.fixed
836 mv $RPM_BUILD_ROOT%{_libdir32}/$f{.fixed,}
840 # include/ contains install-tools/include/* and headers that were fixed up
841 # by fixincludes, we don't want former
842 gccdir=$(echo $RPM_BUILD_ROOT%{_libdir}/gcc/*/*/)
844 # we have to save these however
845 %{?with_java:mv -f $gccdir/include/{gcj,libffi/ffitarget.h,jawt.h,jawt_md.h,jni.h,jvmpi.h} $gccdir/tmp}
846 %{?with_objc:mv -f $gccdir/include/objc $gccdir/tmp}
847 mv -f $gccdir/include/syslimits.h $gccdir/tmp
848 rm -rf $gccdir/include
849 mv -f $gccdir/tmp $gccdir/include
850 cp -f $gccdir/install-tools/include/*.h $gccdir/include
851 # but we don't want anything more from install-tools
852 rm -rf $gccdir/install-tools
855 ln -sf %{_slibdir32}/libgcc_s.so.1 $gccdir/32/libgcc_s.so
857 ln -sf %{_slibdir}/libgcc_s.so.1 $gccdir/libgcc_s.so
860 %find_lang libstdc\+\+
862 # cvs snap doesn't contain (release does) below files,
863 # so let's create dummy entries to satisfy %%files.
864 [ ! -f NEWS ] && touch NEWS
865 [ ! -f libgfortran/AUTHORS ] && touch libgfortran/AUTHORS
866 [ ! -f libgfortran/README ] && touch libgfortran/README
869 rm -rf $RPM_BUILD_ROOT
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
878 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
881 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
884 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
887 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
890 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
893 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
895 %post -p /sbin/ldconfig -n libgcc
896 %postun -p /sbin/ldconfig -n libgcc
897 %post -p /sbin/ldconfig -n libmudflap
898 %postun -p /sbin/ldconfig -n libmudflap
899 %post -p /sbin/ldconfig -n libgnat
900 %postun -p /sbin/ldconfig -n libgnat
901 %post -p /sbin/ldconfig -n libstdc++
902 %postun -p /sbin/ldconfig -n libstdc++
903 %post -p /sbin/ldconfig -n libgfortran
904 %postun -p /sbin/ldconfig -n libgfortran
905 %post -p /sbin/ldconfig -n libgcj
906 %postun -p /sbin/ldconfig -n libgcj
907 %post -p /sbin/ldconfig -n libffi
908 %postun -p /sbin/ldconfig -n libffi
909 %post -p /sbin/ldconfig -n libobjc
910 %postun -p /sbin/ldconfig -n libobjc
913 %defattr(644,root,root,755)
914 %doc ChangeLog.general MAINTAINERS NEWS bugs.html faq.html
915 %doc gcc/{ChangeLog,ONEWS,README.Portability}
917 %dir %{_libdir}/gcc/*
918 %dir %{_libdir}/gcc/*/*
919 %dir %{_libdir}/gcc/*/*/include
921 %attr(755,root,root) %{_bindir}/*-gcc*
922 %attr(755,root,root) %{_bindir}/gcc
923 %attr(755,root,root) %{_bindir}/gccbug
924 %attr(755,root,root) %{_bindir}/gcov
925 %attr(755,root,root) %{_bindir}/cc
926 %attr(755,root,root) %{_bindir}/cpp
928 %{_mandir}/man1/cc.1*
929 %{_mandir}/man1/cpp.1*
930 %{_mandir}/man1/gcc.1*
931 %{_mandir}/man1/gcov.1*
936 %attr(755,root,root) /lib/cpp
938 %attr(755,root,root) %{_slibdir}/lib*.so
940 %dir %{_libdir}/gcc/*/*/32
941 %{_libdir}/gcc/*/*/32/libgcov.a
942 %{_libdir}/gcc/*/*/32/libgcc.a
943 %{_libdir}/gcc/*/*/32/libgcc_eh.a
944 %{_libdir}/gcc/*/*/32/libgcc_s.so
946 %{_libdir}/gcc/*/*/libgcov.a
947 %{_libdir}/gcc/*/*/libgcc.a
948 %{_libdir}/gcc/*/*/libgcc_eh.a
949 %{_libdir}/gcc/*/*/libgcc_s.so
950 %{_libdir}/gcc/*/*/specs
952 %{_libdir}/gcc/*/*/32/crt*.o
954 %{_libdir}/gcc/*/*/crt*.o
955 %attr(755,root,root) %{_libdir}/gcc/*/*/cc1
956 %attr(755,root,root) %{_libdir}/gcc/*/*/collect2
958 %{_libdir}/gcc/*/*/include/*.h
961 %defattr(644,root,root,755)
963 %attr(755,root,root) %{_slibdir32}/lib*.so.*
965 %attr(755,root,root) %{_slibdir}/lib*.so.*
968 %defattr(644,root,root,755)
970 %attr(755,root,root) %{_libdir32}/libmudflap*.so.*.*.*
972 %attr(755,root,root) %{_libdir}/libmudflap*.so.*.*.*
974 %files -n libmudflap-devel
975 %defattr(644,root,root,755)
976 %{_includedir}/mf-runtime.h
978 %{_libdir32}/libmudflap*.la
979 %attr(755,root,root) %{_libdir32}/libmudflap*.so
981 %{_libdir}/libmudflap*.la
982 %attr(755,root,root) %{_libdir}/libmudflap*.so
984 %files -n libmudflap-static
985 %defattr(644,root,root,755)
987 %{_libdir32}/libmudflap*.a
989 %{_libdir}/libmudflap*.a
993 %defattr(644,root,root,755)
994 %doc gcc/ada/ChangeLog
995 %attr(755,root,root) %{_bindir}/gnat*
996 %attr(755,root,root) %{_bindir}/gpr*
997 %attr(755,root,root) %{_libdir}/libgnarl*.so
998 %attr(755,root,root) %{_libdir}/libgnat*.so
999 %attr(755,root,root) %{_libdir}/gcc/*/*/gnat1
1000 %{_libdir}/gcc/*/*/adainclude
1001 %dir %{_libdir}/gcc/*/*/adalib
1002 %{_libdir}/gcc/*/*/adalib/*.ali
1003 %{_libdir}/gcc/*/*/adalib/g-trasym.o
1004 %{_libdir}/gcc/*/*/adalib/libgccprefix.a
1006 %{_libdir}/gcc/*/*/adalib/libgmem.a
1011 %defattr(644,root,root,755)
1012 %attr(755,root,root) %{_libdir}/libgnarl*.so.1
1013 %attr(755,root,root) %{_libdir}/libgnat*.so.1
1015 %files -n libgnat-static
1016 %defattr(644,root,root,755)
1017 %{_libdir}/gcc/*/*/adalib/libgnarl.a
1018 %{_libdir}/gcc/*/*/adalib/libgnat.a
1022 %defattr(644,root,root,755)
1023 %doc gcc/cp/{ChangeLog,NEWS}
1024 %attr(755,root,root) %{_bindir}/g++
1025 %attr(755,root,root) %{_bindir}/*-g++
1026 %attr(755,root,root) %{_bindir}/c++
1027 %attr(755,root,root) %{_bindir}/*-c++
1028 %attr(755,root,root) %{_libdir}/gcc/*/*/cc1plus
1029 %if %{with multilib}
1030 %{_libdir32}/libsupc++.a
1031 %{_libdir32}/libsupc++.la
1033 %{_libdir}/libsupc++.a
1034 %{_libdir}/libsupc++.la
1035 %{_mandir}/man1/g++.1*
1037 %files -n libstdc++ -f libstdc++.lang
1038 %defattr(644,root,root,755)
1039 %doc libstdc++-v3/{ChangeLog,README}
1040 %if %{with multilib}
1041 %attr(755,root,root) %{_libdir32}/libstdc++.so.*.*.*
1043 %attr(755,root,root) %{_libdir}/libstdc++.so.*.*.*
1045 %files -n libstdc++-devel
1046 %defattr(644,root,root,755)
1047 %doc libstdc++-v3/docs/html
1048 %dir %{_includedir}/c++
1049 %{_includedir}/c++/%{version}
1051 %exclude %{_includedir}/c++/%{version}/java
1052 %exclude %{_includedir}/c++/%{version}/javax
1053 %exclude %{_includedir}/c++/%{version}/gcj
1054 %exclude %{_includedir}/c++/%{version}/gnu
1057 %exclude %{_includedir}/c++/%{version}/*/bits/stdc++.h.gch
1059 %if %{with multilib}
1060 %{_libdir32}/libstdc++.la
1061 %attr(755,root,root) %{_libdir32}/libstdc++.so
1063 %{_libdir}/libstdc++.la
1064 %attr(755,root,root) %{_libdir}/libstdc++.so
1066 %files -n libstdc++-static
1067 %defattr(644,root,root,755)
1068 %if %{with multilib}
1069 %{_libdir32}/libstdc++.a
1071 %{_libdir}/libstdc++.a
1075 %defattr(644,root,root,755)
1076 %doc gcc/fortran/ChangeLog
1077 %attr(755,root,root) %{_bindir}/g95
1078 %attr(755,root,root) %{_bindir}/gfortran
1079 %{_infodir}/gfortran*
1080 %attr(755,root,root) %{_libdir}/gcc/*/*/f951
1081 %if %{with multilib}
1082 %{_libdir32}/libgfortranbegin.a
1083 %{_libdir32}/libgfortranbegin.la
1084 %{_libdir32}/libgfortran.la
1085 %attr(755,root,root) %{_libdir32}/libgfortran.so
1087 %{_libdir}/libgfortranbegin.a
1088 %{_libdir}/libgfortranbegin.la
1089 %{_libdir}/libgfortran.la
1090 %attr(755,root,root) %{_libdir}/libgfortran.so
1091 %{_mandir}/man1/g95.1*
1092 %{_mandir}/man1/gfortran.1*
1094 %files -n libgfortran
1095 %defattr(644,root,root,755)
1096 %doc libgfortran/{AUTHORS,README,ChangeLog}
1097 %if %{with multilib}
1098 %attr(755,root,root) %{_libdir32}/libgfortran.so.*.*.*
1100 %attr(755,root,root) %{_libdir}/libgfortran.so.*.*.*
1102 %files -n libgfortran-static
1103 %defattr(644,root,root,755)
1104 %if %{with multilib}
1105 %{_libdir32}/libgfortran.a
1107 %{_libdir}/libgfortran.a
1112 %defattr(644,root,root,755)
1113 %doc gcc/java/ChangeLog java-doc/*
1114 %attr(755,root,root) %{_bindir}/gcj*
1115 %attr(755,root,root) %{_bindir}/gjnih
1116 %attr(755,root,root) %{_bindir}/grepjar
1117 %attr(755,root,root) %{_bindir}/jcf-dump
1118 %attr(755,root,root) %{_bindir}/jv-*
1119 %attr(755,root,root) %{_bindir}/*-gcj*
1120 %attr(755,root,root) %{_libdir}/gcc/*/*/jc1
1121 %attr(755,root,root) %{_libdir}/gcc/*/*/jvgenmain
1123 %{_mandir}/man1/gcj*
1124 %{_mandir}/man1/gjnih*
1125 %{_mandir}/man1/grepjar*
1126 %{_mandir}/man1/jcf-*
1127 %{_mandir}/man1/jv-*
1130 %defattr(644,root,root,755)
1131 %attr(755,root,root) %{_bindir}/grmi*
1132 %attr(755,root,root) %{_bindir}/fastjar
1133 %{_mandir}/man1/grmi*
1134 %{_mandir}/man1/fastjar*
1135 %{_infodir}/fastjar*
1138 %defattr(644,root,root,755)
1139 %doc libjava/{ChangeLog,LIBGCJ_LICENSE,NEWS,README,THANKS}
1140 %attr(755,root,root) %{_bindir}/addr2name.awk
1141 %attr(755,root,root) %{_bindir}/gij
1142 %dir %{_libdir}/gcj-%{version}
1143 %{_libdir}/gcj-%{version}/classmap.db
1144 %attr(755,root,root) %{_libdir}/lib*cj*.so.*.*.*
1145 %attr(755,root,root) %{_libdir}/libgij.so.*.*.*
1146 %{_libdir}/logging.properties
1147 %{_javadir}/libgcj*.jar
1148 %{_mandir}/man1/gij*
1150 %files -n libgcj-devel
1151 %defattr(644,root,root,755)
1152 %{_includedir}/c++/%{version}/java
1153 %{_includedir}/c++/%{version}/javax
1154 %{_includedir}/c++/%{version}/gcj
1155 %{_includedir}/c++/%{version}/gnu
1156 %{_libdir}/gcc/*/*/include/gcj
1157 %{_libdir}/gcc/*/*/include/jawt.h
1158 %{_libdir}/gcc/*/*/include/jawt_md.h
1159 %{_libdir}/gcc/*/*/include/jni.h
1160 %{_libdir}/gcc/*/*/include/jvmpi.h
1161 %dir %{_libdir}/security
1162 %{_libdir}/security/*
1163 %{_libdir}/lib*cj.spec
1164 %{_libdir}/lib*cj*.la
1165 %attr(755,root,root) %{_libdir}/lib*cj*.so
1166 %{_libdir}/libgij.la
1167 %attr(755,root,root) %{_libdir}/libgij.so
1168 %{_pkgconfigdir}/libgcj.pc
1170 %files -n libgcj-static
1171 %defattr(644,root,root,755)
1172 %{_libdir}/lib*cj*.a
1176 %defattr(644,root,root,755)
1177 %doc libffi/{ChangeLog,ChangeLog.libgcj,LICENSE,README}
1178 %attr(755,root,root) %{_libdir}/libffi.so.*.*.*
1180 %files -n libffi-devel
1181 %defattr(644,root,root,755)
1182 %{_libdir}/gcc/*/*/include/ffitarget.h
1183 %attr(755,root,root) %{_libdir}/libffi.so
1184 %{_libdir}/libffi.la
1185 %{_includedir}/ffi.h
1187 %files -n libffi-static
1188 %defattr(644,root,root,755)
1194 %defattr(644,root,root,755)
1195 %doc gcc/objc/README
1196 %attr(755,root,root) %{_libdir}/gcc/*/*/cc1obj
1197 %if %{with multilib}
1198 %attr(755,root,root) %{_libdir32}/libobjc.so
1199 %{_libdir32}/libobjc.la
1201 %attr(755,root,root) %{_libdir}/libobjc.so
1202 %{_libdir}/libobjc.la
1203 %{_libdir}/gcc/*/*/include/objc
1206 %defattr(644,root,root,755)
1207 %doc libobjc/{ChangeLog,README*}
1208 %if %{with multilib}
1209 %attr(755,root,root) %{_libdir32}/libobjc.so.*.*.*
1211 %attr(755,root,root) %{_libdir}/libobjc.so.*.*.*
1213 %files -n libobjc-static
1214 %defattr(644,root,root,755)
1215 %if %{with multilib}
1216 %{_libdir32}/libobjc.a
1218 %{_libdir}/libobjc.a