]> git.pld-linux.org Git - packages/gcc4.git/blobdiff - gcc4.spec
- PR libstc++/18185 (delete unhandled exceptions).
[packages/gcc4.git] / gcc4.spec
index 3a8eed4ddd2a47b21da984d00f664759ecfba053..c29f537b5dd94677db68e16d22ead9573012725d 100644 (file)
--- a/gcc4.spec
+++ b/gcc4.spec
-%define        rver            2.95.3
-%define                snap            20010823
-%define                STDC_VERSION 2.10.0
-%define                STDC_RELEASE 30
-Summary:       GNU Compiler Collection
-Summary(pl):   Kolekcja kompilatorów GNU
+#
+# TODO:
+#              - http://gcc.gnu.org/PR11203
+#              - http://gcc.gnu.org/PR14776
+#              - http://gcc.gnu.org/PR18648
+#              - http://gcc.gnu.org/PR18676
+#
+# Conditional build:
+%bcond_without ada             # build without ADA support
+%bcond_without java            # build without Java support
+%bcond_without objc            # build without ObjC support
+%bcond_with    ssp             # build with stack-smashing protector support
+#
+Summary:       GNU Compiler Collection: the C compiler and shared files
+Summary(es):   Colección de compiladores GNU: el compilador C y ficheros compartidos
+Summary(pl):   Kolekcja kompilatorów GNU: kompilator C i pliki wspó³dzielone
+Summary(pt_BR):        Coleção dos compiladores GNU: o compilador C e arquivos compartilhados
 Name:          gcc
-Version:       2.95.4
-Release:       0.%{snap}.2
+Version:       3.4.3
+Release:       3
+Epoch:         5
 License:       GPL
 Group:         Development/Languages
-Group(de):     Entwicklung/Sprachen
-Group(pl):     Programowanie/Jêzyki
-Source0:       ftp://gcc.gnu.org/pub/gcc/releases/gcc-%{rver}/%{name}-%{rver}.tar.gz
-Source1:       gcov.1
-# generated from binutils' info
-Source2:       c++filt.1
-Source3:       %{name}-non-english-man-pages.tar.bz2
+Source0:       ftp://gcc.gnu.org/pub/gcc/releases/gcc-%{version}/%{name}-%{version}.tar.bz2
+# Source0-md5: e744b30c834360fccac41eb7269a3011
+Source1:       http://ep09.pld-linux.org/~djrzulf/gcc33/%{name}-non-english-man-pages.tar.bz2
+# Source1-md5: 4736f3422ddfb808423b745629acc321
+Source2:       http://www.trl.ibm.com/projects/security/ssp/gcc2_95_3/gcc_stack_protect.m4.gz
+# Source2-md5: 07d93ad5fc07ca44cdaba46c658820de
+Source3:       gcc_visibility.m4
 Patch0:                %{name}-info.patch
-Patch1:                %{name}-pld-linux.patch
-Patch2:                %{name}-libstdc++.patch
-Patch3:                %{name}-bootstrap.patch
-Patch4:                %{name}-cpp-macro-doc.patch
-Patch5:                %{name}-default-arch.patch
-Patch6:                %{name}-libstdc++-out-of-mem.patch
-Patch7:                %{name}-libstdc++-wstring.patch
-Patch8:                %{name}-libstdc++-bastring.patch
-Patch9:                %{name}-manpage.patch
-Patch10:       %{name}-cpp-dos-newlines.patch
-Patch11:       %{name}-gpc.patch
-Patch12:       %{name}-m68k-pic.patch
-Patch13:       %{name}-sparc32-rfi.patch
-Patch14:       %{name}-builtin-apply.patch
-Patch15:       %{name}-ppc-ice.patch
-Patch16:       %{name}-ppc-descriptions.patch
-Patch17:       %{name}-alpha-complex-float.patch
-Patch18:       %{name}-gcj-vs-iconv.patch
-Patch19:       %{name}-libobjc.patch
-#Patch20:      %{name}-pointer-arith.patch
-Patch50:       %{name}-%{rver}-%{snap}.patch.bz2
-BuildRequires: bison
-BuildRequires: texinfo
-Requires:      binutils >= 2.9.1.0.25
-Requires:      cpp = %{version}
+Patch1:                %{name}-nolocalefiles.patch
+Patch2:                %{name}-ada-link-new-libgnat.patch
+Patch3:                %{name}-nodebug.patch
+Patch4:                %{name}-ssp.patch
+Patch5:                %{name}-ada-link.patch
+Patch6:                %{name}-pr15666.patch
+Patch7:                %{name}-pr16276.patch
+Patch8:                %{name}-pr18185.patch
+#
+# -fvisibility={default|internal|hidden|protected}
+#
+# Set the default ELF image symbol visibility to the specified option.
+# All symbols will be marked with this unless overrided within the code.
+# Using this feature can very substantially improve linking and load times
+# of shared object libraries, produce more optimised code, provide near-perfect
+# API export and prevent symbol clashes. It is strongly recommended that you
+# use this in any shared objects you distribute.
+#
+# -fvisibility-inlines-hidden
+#
+# Causes all inlined methods to be marked with __attribute__((visibility("hidden")))
+# so that they do not appear in the export table of a DSO and do not require a PLT
+# indirection when used within the DSO. Enabling this option can have a dramatic
+# effect on load and link times of a DSO as it massively reduces the size
+# of the dynamic export table when the library makes heavy use of templates.
+# While it can cause bloating through duplication of code within each DSO
+# where it is used, often the wastage is less than the considerable space
+# occupied by a long symbol name in the export table which is typical when using
+# templates and namespaces.
+#
+# How to Write Shared Libraries: http://people.redhat.com/drepper/dsohowto.pdf
+#
+Patch9:                %{name}-visibility.patch
+#
+Patch20:       %{name}-ada-bootstrap.patch
 URL:           http://gcc.gnu.org/
+BuildRequires: autoconf
+BuildRequires: automake
+BuildRequires: binutils >= 2:2.15.91.0.2
+BuildRequires: bison
+BuildRequires: fileutils >= 4.0.41
+BuildRequires: flex
+%if %{with ada}
+BuildRequires: gcc(ada)
+BuildRequires: gcc-ada
+%endif
+BuildRequires: gettext-devel
+BuildRequires: glibc-devel >= 2.2.5-20
+BuildRequires: perl-devel
+BuildRequires: texinfo >= 4.1
+BuildRequires: zlib-devel
+Requires:      binutils >= 2:2.15.91.0.2
+Requires:      gcc-dirs >= 1.0-3
+Requires:      libgcc = %{epoch}:%{version}-%{release}
+Provides:      cpp = %{epoch}:%{version}-%{release}
+%{?with_ada:Provides:  gcc(ada)}
+%{?with_ssp:Provides:  gcc(ssp)}
+# ksi for gcc > 3.3.x not ready yet
+Obsoletes:     cpp
+Obsoletes:     egcs-cpp
+Obsoletes:     gcc-cpp
+Obsoletes:     gcc-ksi
+Obsoletes:     gont
+Conflicts:     glibc-devel < 2.2.5-20
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
+%define                _slibdir        /%{_lib}
+%ifarch sparc64
+%define                _slibdir64      /lib64
+%define                _libdir         /usr/lib
+%define                rpmcflags       -O2 -mtune=ultrasparc
+%endif
+
 %description
 A compiler aimed at integrating all the optimizations and features
 necessary for a high-performance and stable development environment.
 
+This package contains the C compiler and some files shared by various
+parts of the GNU Compiler Collection. In order to use another GCC
+compiler you will need to install the appropriate subpackage.
+
+%description -l es
+Un compilador destinado a la integración de todas las optimalizaciones
+y características necesarias para un entorno de desarrollo eficaz y
+estable.
+
+Este paquete contiene el compilador de C y unos ficheros compartidos
+por varias parted de la colección de compiladores GNU (GCC). Para usar
+otro compilador de GCC será necesario que instale el subpaquete
+adecuado.
+
 %description -l pl
 Kompilator, posiadaj±cy du¿e mo¿liwo¶ci optymalizacyjne niezbêdne do
 wyprodukowania szybkiego i stabilnego kodu wynikowego.
 
+Ten pakiet zawiera kompilator C i pliki wspó³dzielone przez ró¿ne
+czê¶ci kolekcji kompilatorów GNU (GCC). ¯eby u¿ywaæ innego kompilatora
+z GCC, trzeba zainstalowaæ odpowiedni podpakiet.
+
+%description -l pt_BR
+Este pacote adiciona infraestrutura básica e suporte a linguagem C ao
+GNU Compiler Collection.
+
+%package -n libgcc
+Summary:       Shared gcc library
+Summary(es):   Biblioteca compartida de gcc
+Summary(pl):   Biblioteka gcc
+Summary(pt_BR):        Biblioteca runtime para o GCC
+Group:         Libraries
+Obsoletes:     libgcc1
+
+%description -n libgcc
+Shared gcc library.
+
+%description -n libgcc -l es
+Biblioteca compartida de gcc.
+
+%description -n libgcc -l pl
+Biblioteka dynamiczna gcc.
+
+%description -n libgcc -l pt_BR
+Biblioteca runtime para o GCC.
+
 %package c++
 Summary:       C++ support for gcc
-Summary(fr):   Support C++ pour le compilateur gcc
-Summary(pl):   Wspomaganie C++ dla kompilatora gcc
-Summary(tr):   gcc için C++ desteði
+Summary(es):   Soporte de C++ para gcc
+Summary(pl):   Obs³uga C++ dla gcc
+Summary(pt_BR):        Suporte C++ para o gcc
 Group:         Development/Languages
-Group(de):     Entwicklung/Sprachen
-Group(pl):     Programowanie/Jêzyki
+Requires:      %{name} = %{epoch}:%{version}-%{release}
 Obsoletes:     egcc-c++
 Obsoletes:     egcs-c++
-Requires:      %{name} = %{version}
 
 %description c++
-This package adds C++ support to the GNU C compiler. It includes
-support for most of the current C++ specification, including templates
-and exception handling. It does not include a standard C++ library,
-which is available separately.
-
-%description -l de c++
-Dieses Paket enthält die C++-Unterstützung für den GNU-C-Compiler. Es
-unterstützt die aktuelle C++-Spezifikation, inkl. Templates und
-Ausnahmeverarbeitung. Eine C++-Standard-Library ist nicht enthalten -
-sie ist getrennt erhältlich.
-
-%description -l fr c++
-Ce package ajoute un support C++ au compilateur c GNU. Il comprend un
-support pour la plupart des spécifications actuelles de C++, dont les
-modéles et la gestion des exceptions. Il ne comprend pas une
-bibliothéque C++ standard, qui est disponible séparément.
-
-%description -l pl c++
-Programy z tego pakietu zapewniaj± wsparcie dla C++ do gcc. Posiada
-wspomaganie dla du¿ej ilo¶ci obecnych specyfikacji C++, nie posiada
-natomiast standardowych bibliotek C++, które s± w oddzielnym pakiecie.
-
-%description -l tr c++
+This package adds C++ support to the GNU Compiler Collection. It
+includes support for most of the current C++ specification, including
+templates and exception handling. It does not include a standard C++
+library, which is available separately.
+
+%description c++ -l de
+Dieses Paket enthält die C++-Unterstützung für den
+GNU-Compiler-Collection. Es unterstützt die aktuelle
+C++-Spezifikation, inkl. Templates und Ausnahmeverarbeitung. Eine
+C++-Standard-Library ist nicht enthalten - sie ist getrennt
+erhältlich.
+
+%description c++ -l es
+Este paquete añade soporte de C++ al GCC (colección de compiladores
+GNU). Ello incluye el soporte para la mayoría de la especificación
+actual de C++, incluyendo plantillas y manejo de excepciones. No
+incluye la biblioteca estándar de C++, la que es disponible separada.
+
+%description c++ -l fr
+Ce package ajoute un support C++ a la collection de compilateurs GNU.
+Il comprend un support pour la plupart des spécifications actuelles de
+C++, dont les modéles et la gestion des exceptions. Il ne comprend pas
+une bibliothéque C++ standard, qui est disponible séparément.
+
+%description c++ -l pl
+Ten pakiet dodaje obs³ugê C++ do kompilatora gcc. Ma wsparcie dla
+du¿ej ilo¶ci obecnych specyfikacji C++, nie zawiera natomiast
+standardowych bibliotek C++, które s± w oddzielnym pakiecie.
+
+%description c++ -l pt_BR
+Este pacote adiciona suporte C++ para o gcc.
+
+%description c++ -l tr
 Bu paket, GNU C derleyicisine C++ desteði ekler. 'Template'ler ve
 aykýrý durum iþleme gibi çoðu güncel C++ tanýmlarýna uyar. Standart
 C++ kitaplýðý bu pakette yer almaz.
@@ -96,327 +203,621 @@ C++ kitapl
 %package objc
 Summary:       Objective C support for gcc
 Summary(de):   Objektive C-Unterstützung für gcc
+Summary(es):   Soporte de Objective C para gcc
 Summary(fr):   Gestion d'Objective C pour gcc
-Summary(pl):   Wspomaganie obiektowego C dla kompilatora gcc
+Summary(pl):   Obs³uga obiektowego C dla kompilatora gcc
 Summary(tr):   gcc için Objective C desteði
 Group:         Development/Languages
-Group(de):     Entwicklung/Sprachen
-Group(pl):     Programowanie/Jêzyki
+Requires:      %{name} = %{epoch}:%{version}-%{release}
+Requires:      libobjc = %{epoch}:%{version}-%{release}
 Obsoletes:     egcc-objc
 Obsoletes:     egcs-objc
-Requires:      %{name} = %{version}
 
 %description objc
-This package adds Objective C support to the GNU C compiler. Objective
-C is a object oriented derivative of the C language, mainly used on
-systems running NeXTSTEP. This package does not include the standard
-objective C object library.
-
-%description -l de objc
-Dieses Paket ergänzt den GNU-C-Compiler durch Objective-C-Support.
-Objective C ist ein objektorientiertes Derivat von C, das zur
-Hauptsache auf Systemen mit NeXTSTEP zum Einsatz kommt. Die
-Standard-Objective-C-Objekt-Library ist nicht Teil des Pakets.
-
-%description -l fr objc
-Ce package ajoute un support Objective C au compilateur C GNU.
-L'Objective C est un langage orienté objetdérivé du langage C,
-principalement utilisé sur les systèmes NeXTSTEP. Ce package n'inclue
-pas la bibliothéque Objective C standard.
-
-%description -l pl objc
-Ten pakiet jest wsparciem obiektowego C dla kompilatora gcc. W
-pakiecie nie ma jeszcze bibliotek C-obj.
-
-%description -l tr objc
+This package adds Objective C support to the GNU Compiler Collection.
+Objective C is a object oriented derivative of the C language, mainly
+used on systems running NeXTSTEP. This package does not include the
+standard objective C object library.
+
+%description objc -l de
+Dieses Paket ergänzt den GNU-Compiler-Collection durch
+Objective-C-Support. Objective C ist ein objektorientiertes Derivat
+von C, das zur Hauptsache auf Systemen mit NeXTSTEP zum Einsatz kommt.
+Die Standard-Objective-C-Objekt-Library ist nicht Teil des Pakets.
+
+%description objc -l es
+Este paquete añade soporte de Objective C al GCC (colección de
+compiladores GNU). Objective C es un lenguaje orientado a objetos
+derivado de C, principalmente usado en sistemas que funcionan bajo
+NeXTSTEP. El paquete no incluye la biblioteca de objetos estándar de
+Objective C.
+
+%description objc -l fr
+Ce package ajoute un support Objective C a la collection de
+compilateurs GNU. L'Objective C est un langage orienté objetdérivé du
+langage C, principalement utilisé sur les systèmes NeXTSTEP. Ce
+package n'inclue pas la bibliothéque Objective C standard.
+
+%description objc -l pl
+Ten pakiet dodaje obs³ugê obiektowego C do kompilatora gcc. Obiektowe
+C (objc) jest zorientowan± obiektowo pochodn± jêzyka C, u¿ywan±
+g³ównie w systemach u¿ywaj±cych NeXTSTEP. W pakiecie nie ma
+standardowej biblioteki objc (która znajduje siê w osobnym pakiecie).
+
+%description objc -l tr
 Bu paket, GNU C derleyicisine Objective C desteði ekler. Objective C,
 C dilinin nesne yönelik bir türevidir ve NeXTSTEP altýnda çalýþan
 sistemlerde yaygýn olarak kullanýlýr. Standart Objective C nesne
 kitaplýðý bu pakette yer almaz.
 
+%package -n libobjc
+Summary:       Objective C Libraries
+Summary(es):   Bibliotecas de Objective C
+Summary(pl):   Biblioteki Obiektowego C
+Group:         Libraries
+Obsoletes:     libobjc1
+
+%description -n libobjc
+Objective C Libraries.
+
+%description -n libobjc -l es
+Bibliotecas de Objective C.
+
+%description -n libobjc -l pl
+Biblioteki Obiektowego C.
+
+%package -n libobjc-static
+Summary:       Static Objective C Libraries
+Summary(es):   Bibliotecas estáticas de Objective C
+Summary(pl):   Statyczne Biblioteki Obiektowego C
+Group:         Development/Libraries
+Requires:      libobjc = %{epoch}:%{version}-%{release}
+
+%description -n libobjc-static
+Static Objective C Libraries.
+
+%description -n libobjc-static -l es
+Bibliotecas estáticas de Objective C.
+
+%description -n libobjc-static -l pl
+Statyczne biblioteki Obiektowego C.
+
 %package g77
 Summary:       Fortran 77 support for gcc
-Summary(pl):   Wspomaganie Fortran 77 dla gcc
-Group:         Development/Languages
-Group(de):     Entwicklung/Sprachen
-Group(pl):     Programowanie/Jêzyki
+Summary(es):   Soporte de Fortran 77 para gcc
+Summary(pl):   Obs³uga Fortranu 77 dla gcc
+Summary(pt_BR):        Suporte Fortran 77 para o GCC
+Group:         Development/Languages/Fortran
+Requires:      libg2c = %{epoch}:%{version}-%{release}
 Obsoletes:     egcs-g77
 
 %description g77
-This apckage adds support for compiling Fortran 77 programs with the
+This package adds support for compiling Fortran 77 programs with the
 GNU compiler.
 
-%description -l pl g77
-Ten pakiet jest wsparciem Fortran 77 dla kompilatora gcc. Jest
+%description g77 -l es
+Este paquete añade soporte para compilar programas escritos en Fortran
+77 con el compilador GNU.
+
+%description g77 -l pl
+Ten pakiet dodaje obs³ugê Fortranu 77 do kompilatora gcc. Jest
 potrzebny do kompilowania programów pisanych w jêzyku Fortran 77.
 
-%package chill
-Summary:       CHILL support for gcc
-Summary(pl):   Wspomoganie CHILL dla gcc
-Group:         Development/Languages
-Group(de):     Entwicklung/Sprachen
-Group(pl):     Programowanie/Jêzyki
-Requires:      %{name} = %{version}
+%description g77 -l pt_BR
+Suporte Fortran 77 para o GCC.
+
+%package -n libg2c
+Summary:       Fortran 77 Libraries
+Summary(es):   Bibliotecas de Fortran 77
+Summary(pl):   Biblioteki Fortranu 77
+Group:         Libraries
+
+%description -n libg2c
+Fortran 77 Libraries.
+
+%description -n libg2c -l es
+Bibliotecas de Fortran 77.
+
+%description -n libg2c -l pl
+Biblioteki Fortranu 77.
+
+%package -n libg2c-static
+Summary:       Static Fortran 77 Libraries
+Summary(es):   Bibliotecas estáticas de Fortran 77
+Summary(pl):   Statyczne Biblioteki Fortranu 77
+Group:         Development/Libraries
+Requires:      libg2c = %{epoch}:%{version}-%{release}
 
-%description chill
-This package adds support for compiling CHILL programs with the GNU
-compiler.
+%description -n libg2c-static
+Static Fortran 77 Libraries.
 
-Chill is the "CCITT High-Level Language", where CCITT is the old name
-for what is now ITU, the International Telecommunications Union. It is
-is language in the Modula2 family, and targets many of the same
-applications as Ada (especially large embedded systems). Chill was
-never used much in the United States, but is still being used in
-Europe, Brazil, Korea, and other places.
+%description -n libg2c -l es
+Bibliotecas estáticas de Fortran 77.
 
-%description -l pl chill
-Ten pakiet dodaje do gcc mo¿liwo¶æ kompilowania programów w jêzyku
-CHILL.
+%description -n libg2c-static -l pl
+Statyczne biblioteki Fortranu 77.
 
 %package java
 Summary:       Java support for gcc
-Summary(pl):   Wspomoganie Java dla gcc
-Group:         Development/Languages
-Group(de):     Entwicklung/Sprachen
-Group(pl):     Programowanie/Jêzyki
-Requires:      %{name} = %{version}
-Requires:      libgcj >= 2.95.1
+Summary(es):   Soporte de Java para gcc
+Summary(pl):   Obs³uga Javy dla gcc
+Group:         Development/Languages/Java
+Requires:      %{name} = %{epoch}:%{version}-%{release}
+Requires:      libgcj = %{epoch}:%{version}-%{release}
+Requires:      libgcj-devel = %{epoch}:%{version}-%{release}
+Requires:      java-shared
+Provides:      gcj = %{epoch}:%{version}-%{release}
 
 %description java
 This package adds experimental support for compiling Java(tm) programs
 and bytecode into native code. To use this you will also need the
 libgcj package.
 
-%description -l pl java
-Ten pakiet dodaje do gcc (eksperymentaln±) mo¿liwo¶æ kompilowania
-programów w Javie(tm) i bytecode do kodu procesora. Wymaga pakietu
-libgcj.
+%description java -l es
+Este paquete añade soporte experimental para compilar programas
+Java(tm) y su bytecode en código nativo. Para usarlo también va a
+necesitar el paquete libgcj.
+
+%description java -l pl
+Wsparcie dla kompilowania programów Java(tm) zarówno do bajt-kodu jak i
+do natywnego kodu. Dodatkowo wymagany jest pakiet libgcj, aby mo¿na
+by³o przeprowadziæ kompilacjê.
+
+%package java-tools
+Summary:       Shared java tools
+Summary(es):   Herramientas compartidas de Java
+Summary(pl):   Wspó³dzielone narzêdzia javy
+Group:         Development/Languages/Java
+Provides:      jar = %{epoch}:%{version}-%{release}
+Provides:      java-shared
+Obsoletes:     fastjar
+Obsoletes:     jar
+Obsoletes:     java-shared
+
+%description java-tools
+This package contains tools that are common for every Java(tm)
+implementation, such as rmic or jar.
+
+%description java-tools -l es
+Este paquete contiene herramientas que son comunes para cada
+implementación de Java(tm), como rmic o jar.
+
+%description java-tools -l pl
+Pakiet ten zawiera narzêdzia wspólne dla ka¿dej implementacji
+Javy(tm), takie jak rmic czy jar.
+
+%package -n libgcj
+Summary:       Java Class Libraries
+Summary(es):   Bibliotecas de clases de Java
+Summary(pl):   Biblioteki Klas Javy
+Group:         Libraries
+Requires:      zlib
+Obsoletes:     libgcj3
+
+%description -n libgcj
+Java Class Libraries.
+
+%description -n libgcj -l es
+Bibliotecas de clases de Java.
+
+%description -n libgcj -l pl
+Biblioteki Klas Javy.
+
+%package -n libgcj-devel
+Summary:       Development files for Java Class Libraries
+Summary(es):   Ficheros de desarrollo para las bibliotecas de clases de Java
+Summary(pl):   Pliki nag³ówkowe dla Bibliotek Klas Javy
+Group:         Development/Libraries
+Requires:      %{name}-java = %{epoch}:%{version}-%{release}
+Requires:      libgcj = %{epoch}:%{version}-%{release}
+Obsoletes:     libgcj3-devel
+
+%description -n libgcj-devel
+Development files for Java Class Libraries.
+
+%description -n libgcj-devel -l es
+Ficheros de desarrollo para las bibliotecas de clases de Java.
+
+%description -n libgcj-devel -l pl
+Pliki nag³ówkowe dla Bibliotek Klas Javy.
+
+%package -n libgcj-static
+Summary:       Static Java Class Libraries
+Summary(es):   Bibliotecas estáticas de clases de Java
+Summary(pl):   Statyczne Biblioteki Klas Javy
+Group:         Development/Libraries
+Requires:      libgcj-devel = %{epoch}:%{version}-%{release}
+Requires:      libstdc++-devel = %{epoch}:%{version}-%{release}
+
+%description -n libgcj-static
+Static Java Class Libraries.
+
+%description -n libgcj-static -l es
+Bibliotecas estáticas de clases de Java.
+
+%description -n libgcj-static -l pl
+Statyczne Biblioteki Klas Javy.
 
 %package -n libstdc++
 Summary:       GNU c++ library
+Summary(es):   Biblioteca C++ de GNU
 Summary(pl):   Biblioteki GNU C++
+Summary(pt_BR):        Biblioteca C++ GNU
 Group:         Libraries
-Group(de):     Libraries
-Group(fr):     Librairies
-Group(pl):     Biblioteki
-Version:       %{STDC_VERSION}
-Release:       %{STDC_RELEASE}
 Obsoletes:     libg++
+Obsoletes:     libstdc++3
 
 %description -n libstdc++
 This is the GNU implementation of the standard C++ libraries, along
 with additional GNU tools. This package includes the shared libraries
 necessary to run C++ applications.
 
-%description -l de -n libstdc++
+%description -n libstdc++ -l de
 Dies ist die GNU-Implementierung der Standard-C++-Libraries mit
 weiteren GNU-Tools. Dieses Paket enthält die zum Ausführen von
 C++-Anwendungen erforderlichen gemeinsam genutzten Libraries.
 
-%description -l fr -n libstdc++
+%description -n libstdc++ -l es
+Este es el soporte de las bibliotecas padrón del C++, junto con
+herramientas GNU adicionales. El paquete incluye las bibliotecas
+compartidas necesarias para ejecutar aplicaciones C++.
+
+%description -n libstdc++ -l fr
 Ceci est l'implémentation GNU des librairies C++ standard, ainsi que
 des outils GNU supplémentaires. Ce package comprend les librairies
 partagées nécessaires à l'exécution d'application C++.
 
-%description -l pl -n libstdc++  
+%description -n libstdc++ -l pl
 Pakiet ten zawiera biblioteki bêd±ce implementacj± standardowych
 bibliotek C++. Znajduj± siê w nim biblioteki dynamiczne niezbêdne do
 uruchomienia aplikacji napisanych w C++.
 
-%description -l tr -n libstdc++
+%description -n libstdc++ -l pt_BR
+Este pacote é uma implementação da biblioteca padrão C++ v3, um
+subconjunto do padrão ISO 14882.
+
+%description -n libstdc++ -l tr
 Bu paket, standart C++ kitaplýklarýnýn GNU gerçeklemesidir ve C++
 uygulamalarýnýn koþturulmasý için gerekli kitaplýklarý içerir.
 
 %package -n libstdc++-devel
-Summary:       Header files and libraries for C++ development
-Summary(de):   Header-Dateien und Libraries zur Entwicklung mit C++
+Summary:       Header files and documentation for C++ development
+Summary(de):   Header-Dateien zur Entwicklung mit C++
+Summary(es):   Ficheros de cabecera y documentación para desarrollo C++
 Summary(fr):   Fichiers d'en-tête et biblitothèques pour développer en C++
-Summary(pl):   Pliki nag³ówkowe do programowania z u¿yciem bibliotek C++
+Summary(pl):   Pliki nag³ówkowe i dokumentacja do biblioteki standardowej C++
+Summary(pt_BR):        Arquivos de inclusão e bibliotecas para o desenvolvimento em C++
 Summary(tr):   C++ ile program geliþtirmek için gerekli dosyalar
 Group:         Development/Libraries
-Group(de):     Entwicklung/Libraries
-Group(fr):     Development/Librairies
-Group(pl):     Programowanie/Biblioteki
-Version:       %{STDC_VERSION}
-Release:       %{STDC_RELEASE}
-Requires:      libstdc++ = %{STDC_VERSION}
-Requires:      %{name}-c++
+Requires:      %{name}-c++ = %{epoch}:%{version}-%{release}
+Requires:      libstdc++ = %{epoch}:%{version}-%{release}
 Obsoletes:     libg++-devel
+Obsoletes:     libstdc++3-devel
 
 %description -n libstdc++-devel
 This is the GNU implementation of the standard C++ libraries. This
-package includes the header files and libraries needed for C++
-development.
+package includes the header files needed for C++ development and
+library documentation.
 
-%description -l pl -n libstdc++-devel
+%description -n libstdc++-devel -l es
+Este es el soporte de las bibliotecas padrón del lenguaje C++. Este
+paquete incluye los archivos de inclusión y bibliotecas necesarios
+para desarrollo de programas en lenguaje C++.
+
+%description -n libstdc++-devel -l pl
 Pakiet ten zawiera biblioteki bêd±ce implementacj± standardowych
 bibliotek C++. Znajduj± siê w nim pliki nag³ówkowe wykorzystywane przy
-programowaniu w jêzyku C++.
+programowaniu w jêzyku C++ oraz dokumentacja biblioteki standardowej.
+
+%description -n libstdc++-devel -l pt_BR
+Este pacote inclui os arquivos de inclusão e bibliotecas necessárias
+para desenvolvimento de programas C++.
 
 %package -n libstdc++-static
-Summary:       Static c++ standard library
-Summary(pl):   Biblioteka statyczna c++
+Summary:       Static C++ standard library
+Summary(es):   Biblioteca estándar estática de C++
+Summary(pl):   Statyczna biblioteka standardowa C++
 Group:         Development/Libraries
-Group(de):     Entwicklung/Libraries
-Group(fr):     Development/Librairies
-Group(pl):     Programowanie/Biblioteki
-Version:       %{STDC_VERSION}
-Release:       %{STDC_RELEASE}
-Requires:      libstdc++-devel = %{STDC_VERSION}
+Requires:      libstdc++-devel = %{epoch}:%{version}-%{release}
 
 %description -n libstdc++-static
-Static c++ standard library.
+Static C++ standard library.
+
+%description -n libstdc++-static -l es
+Biblioteca estándar estática de C++.
+
+%description -n libstdc++-static -l pl
+Statyczna biblioteka standardowa C++.
+
+%package -n libffi
+Summary:       Foreign Function Interface library
+Summary(es):   Biblioteca de interfaz de funciones ajenas
+Summary(pl):   Biblioteka zewnêtrznych wywo³añ funkcji
+Group:         Libraries
 
-%description -l pl -n libstdc++-static
-Biblioteka statyczna C++.
+%description -n libffi
+The libffi library provides a portable, high level programming
+interface to various calling conventions. This allows a programmer to
+call any function specified by a call interface description at run
+time.
+
+%description -n libffi -l es
+La biblioteca libffi provee una interfaz portable de programación de
+alto nivel para varias convenciones de llamada. Ello permite que un
+programador llame una función cualquiera especificada por una
+descripción de interfaz de llamada en el tiempo de ejecución.
+
+%description -n libffi -l pl
+Biblioteka libffi dostarcza przeno¶nego, wysokopoziomowego
+miêdzymordzia do ró¿nych konwencji wywo³añ funkcji. Pozwala to
+programi¶cie wywo³ywaæ dowolne funkcje podaj±c konwencjê wywo³ania w
+czasie wykonania.
+
+%package -n libffi-devel
+Summary:       Development files for Foreign Function Interface library
+Summary(es):   Ficheros de desarrollo para libffi
+Summary(pl):   Pliki nag³ówkowe dla libffi
+Group:         Development/Libraries
+Requires:      libffi = %{epoch}:%{version}-%{release}
+
+%description -n libffi-devel
+Development files for Foreign Function Interface library.
+
+%description -n libffi-devel -l es
+Ficheros de desarrollo para libffi.
+
+%description -n libffi-devel -l pl
+Pliki nag³ówkowe dla libffi.
+
+%package -n libffi-static
+Summary:       Static Foreign Function Interface library
+Summary(es):   Biblioteca libffi estática
+Summary(pl):   Statyczna biblioteka libffi
+Group:         Development/Libraries
+Requires:      libffi-devel = %{epoch}:%{version}-%{release}
 
-%package -n cpp
-Summary:       The C Pre Processor
-Summary(pl):   Preprocesor C
+%description -n libffi-static
+Static Foreign Function Interface library.
+
+%description -n libffi-static -l es
+Biblioteca libffi estática.
+
+%description -n libffi-static -l pl
+Statyczna biblioteka libffi.
+
+%package ada
+Summary:       Ada support for gcc
+Summary(es):   Soporte de Ada para gcc
+Summary(pl):   Obs³uga Ady do gcc
 Group:         Development/Languages
-Group(de):     Entwicklung/Sprachen
-Group(pl):     Programowanie/Jêzyki
-Obsoletes:     egcs-cpp
-Obsoletes:     gcc-cpp
+Requires:      %{name} = %{epoch}:%{version}-%{release}
+Requires:      libgnat = %{epoch}:%{version}-%{release}
+Obsoletes:     gcc-gnat
+Obsoletes:     gnat-devel
+
+%description ada
+This package adds experimental support for compiling Ada programs.
+
+%description ada -l es
+Este paquete añade soporte experimental para compilar programas en
+Ada.
+
+%description ada -l pl
+Ten pakiet dodaje eksperymentalne wsparcie dla kompilacji programów w
+Adzie.
+
+%package -n libgnat
+Summary:       Ada standard libraries
+Summary(es):   Bibliotecas estándares de Ada
+Summary(pl):   Biblioteki standardowe dla Ady
+Group:         Libraries
+Obsoletes:     gnat
+Obsoletes:     libgnat1
 
-%description -n cpp
-The C preprocessor is a "macro processor" that is used automatically
-by the C compiler to transform your program before actual compilation.
-It is called a macro processor because it allows you to define
-"macros", which are brief abbreviations for longer constructs.
-
-The C preprocessor provides four separate facilities that you can use
-as you see fit:
-
-- Inclusion of header files. These are files of declarations that can
-  be substituted into your program.
-- Macro expansion. You can define "macros", which are abbreviations
-  for arbitrary fragments of C code, and then the C preprocessor will
-  replace the macros with their definitions throughout the program.
-- Conditional compilation. Using special preprocessing directives, you
-  can include or exclude parts of the program according to various
-  conditions.
-- Line control. If you use a program to combine or rearrange source
-  files into an intermediate file which is then compiled, you can use
-  line control to inform the compiler of where each source line
-  originally came from.
-
-%description -l pl -n cpp
-Preprocesor C jest "makro procesorem" który jest automatycznie
-u¿ywany przez kompilator C do obróbki kompilowanego programu przed
-w³a¶ciw± kompilacj±. Jest on nazywany makroprocesorem, poniewa¿
-umo¿liwia definiowanie i rozwijanie makr umo¿liwiaj±cych skracanie
-d³ugich konstrukcji w jêzyku C.
-
-Preprocesor C umo¿liwia wykonywanie czterech ró¿nych typów operacji:
-
-- Do³±czanie plików (np. nag³ówkowych). Wstawia pliki w miejscu
-  deklaracji polecenia do³±czenia innego pliku.
-- Rozwijanie makr. Mo¿na definiowaæ "makra" nadaj±c im identyfikatory,
-  których pó¼niejsze u¿ycie powoduje podczas rozwijania podmienienie
-  identyfikatora deklarowan± wcze¶niej warto¶ci±.
-- Kompilacja warunkowa. W zale¿no¶ci od obecno¶ci symboli i dyrektyw w
-  ¶rodowisku preprocesora s± w³±czane warunkowo, b±d¼ nie, pewne
-  fragmenty obrabianego strumienia tekstów.
-- Kontrola linii ¼ród³a. Niezale¿nie od tego jakim przeobra¿eniom
-  podlega wynikowy strumieñ danych w wyniku rozwijania makr i do³±czania
-  s± zapamiêtywane informacje o tym, której linii pliku ¼ród³owego
-  odpowiada fragment pliku wynikowego.
+%description -n libgnat
+This package contains shared libraries needed to run programs written
+in Ada.
+
+%description -n libgnat -l es
+Este paquete contiene las bibliotecas compartidas necesarias para
+ejecutar programas escritos en Ada.
+
+%description -n libgnat -l pl
+Ten pakiet zawiera biblioteki potrzebne do uruchamiania programów
+napisanych w Adzie.
+
+%package -n libgnat-static
+Summary:       Static Ada standard libraries
+Summary(pl):   Statyczne biblioteki standardowe dla Ady
+Group:         Libraries
+Obsoletes:     gnat-static
+
+%description -n libgnat-static
+This package contains static libraries for programs written in Ada.
+
+%description -n libgnat-static -l pl
+Ten pakiet zawiera biblioteki statyczne dla programów napisanych w
+Adzie.
 
 %prep
-%setup -q -n %{name}-%{rver}
-%patch50 -p1
+%setup -q -a1
+
 %patch0 -p1
 %patch1 -p1
 %patch2 -p1
-%patch3 -p1
-%patch4 -p0
-%patch5 -p0
+%{!?debug:%patch3 -p1}
+%{?with_ssp:%patch4 -p1}
+%patch5 -p1
 %patch6 -p0
 %patch7 -p0
-%patch8 -p0
-%patch9 -p0
-%patch10 -p0
-%patch11 -p1
-%ifarch m68k
-%patch12 -p0
-%endif
-%ifarch sparc sparc32
-%patch13 -p0
-%patch14 -p0
-%endif
-%ifarch ppc
-%patch15 -p0
-%patch16 -p0
-%endif
-%ifarch alpha
-%patch17 -p1
+%patch8 -p1
+%patch9 -p1
+
+%ifarch alpha ia64
+# needed for bootstrap using gcc 3.3.x on alpha
+# and even using the same 3.4.x(!) (but not Debian's 3.3.x) on ia64
+%patch20 -p2
 %endif
-%patch18 -p0
-%patch19 -p0
-#%patch20 -p0
+
+# because we distribute modified version of gcc...
+perl -pi -e 's/(version.*)";/$1 %{?with_ssp:SSP }(PLD Linux)";/' gcc/version.c
+perl -pi -e 's@(bug_report_url.*<URL:).*";@$1http://bugs.pld-linux.org/>";@' gcc/version.c
+
+mv ChangeLog ChangeLog.general
 
 %build
-(cd gcc; autoconf)
-rm -rf obj-%{_target_platform}
-install -d obj-%{_target_platform} && cd obj-%{_target_platform} 
+# because pr16276 patch modifies configure.ac
+cd gcc
+%{__autoconf}
+cd ..
+cp -f /usr/share/automake/config.sub .
+
+rm -rf obj-%{_target_platform} && install -d obj-%{_target_platform} && cd obj-%{_target_platform}
 
 CFLAGS="%{rpmcflags}" \
 CXXFLAGS="%{rpmcflags}" \
 TEXCONFIG=false ../configure \
        --prefix=%{_prefix} \
+       --libdir=%{_libdir} \
+       --libexecdir=%{_libexecdir} \
        --infodir=%{_infodir} \
+       --mandir=%{_mandir} \
        --enable-shared \
-%ifnarch sparc sparc64
        --enable-threads=posix \
-       --enable-haifa \
+       --enable-__cxa_atexit \
+       --enable-languages="c,c++,f77%{?with_objc:,objc}%{?with_ada:,ada}%{?with_java:,java}" \
+       --enable-c99 \
+       --enable-long-long \
+%ifarch amd64
+       --disable-multilib \
+%else
+       --enable-multilib \
 %endif
+       --enable-nls \
        --with-gnu-as \
        --with-gnu-ld \
-       --with-gxx-include-dir="\$\{prefix\}/include/g++" \
-       --disable-nls \
-       --build=%{_target_platform} \
-       --host=%{_target_platform}
+       --with-system-zlib \
+       --with-slibdir=%{_slibdir} \
+       --without-x \
+       %{_target_platform}
 
 PATH=$PATH:/sbin:%{_sbindir}
-touch  ../gcc/c-gperf.h
 
 cd ..
-%{__make} -C obj-%{_target_platform} bootstrap \
+# - on alpha stage1 needs -O0 for 3.3->3.4 bootstrap (gnat from 3.3 is seriously broken)
+# - on ia64 use bootstrap-lean as profiledbootstrap is broken (PR 13882, 15836, 16108)
+%{__make} -C obj-%{_target_platform} \
+%ifarch ia64
+       bootstrap-lean \
+%else
+       profiledbootstrap \
+%endif
+       GCJFLAGS="%{rpmcflags}" \
+       BOOT_CFLAGS="%{rpmcflags}" \
+%ifarch alpha
+       STAGE1_CFLAGS="%{rpmcflags} -O0" \
+%else
+       STAGE1_CFLAGS="%{rpmcflags}" \
+%endif
        LDFLAGS_FOR_TARGET="%{rpmldflags}" \
        mandir=%{_mandir} \
        infodir=%{_infodir}
 
+%if %{with ada}
+# cannot build it in parallel
+for tgt in gnatlib-shared gnattools gnatlib; do
+%{__make} -C obj-%{_target_platform}/gcc $tgt \
+       BOOT_CFLAGS="%{rpmcflags}" \
+       LDFLAGS_FOR_TARGET="%{rpmldflags}" \
+       mandir=%{_mandir} \
+       infodir=%{_infodir}
+done
+%endif
+
 %install
 rm -rf $RPM_BUILD_ROOT
-install -d $RPM_BUILD_ROOT{/lib,%{_datadir}}
+install -d $RPM_BUILD_ROOT{/lib,%{_aclocaldir},%{_datadir},%{_infodir}}
 
 cd obj-%{_target_platform}
 PATH=$PATH:/sbin:%{_sbindir}
 
-%{__make} install \
-       prefix=$RPM_BUILD_ROOT%{_prefix} \
-       mandir=$RPM_BUILD_ROOT%{_mandir} \
-       infodir=$RPM_BUILD_ROOT%{_infodir}
+%{__make} -j1 install \
+       mandir=%{_mandir} \
+       infodir=%{_infodir} \
+       DESTDIR=$RPM_BUILD_ROOT
 
-%{__make} install \
-       prefix=$RPM_BUILD_ROOT%{_prefix} \
-       mandir=$RPM_BUILD_ROOT%{_mandir} \
-       infodir=$RPM_BUILD_ROOT%{_infodir} -C texinfo
+%ifarch sparc64
+ln -f $RPM_BUILD_ROOT%{_bindir}/sparc64-pld-linux-gcc \
+       $RPM_BUILD_ROOT%{_bindir}/sparc-pld-linux-gcc
+%endif
 
 ln -sf gcc $RPM_BUILD_ROOT%{_bindir}/cc
-
-echo .so g77.1 > $RPM_BUILD_ROOT%{_mandir}/man1/f77.1
-echo .so cccp.1 > $RPM_BUILD_ROOT%{_mandir}/man1/cpp.1
-install %{SOURCE1} $RPM_BUILD_ROOT%{_mandir}/man1
-install %{SOURCE2} $RPM_BUILD_ROOT%{_mandir}/man1
-bzip2 -dc %{SOURCE3} | tar xf - -C $RPM_BUILD_ROOT%{_mandir}
+echo ".so gcc.1" > $RPM_BUILD_ROOT%{_mandir}/man1/cc.1
 
 ln -sf g77 $RPM_BUILD_ROOT%{_bindir}/f77
-(cd $RPM_BUILD_ROOT%{_libdir} ; ln -sf libstdc++.so.*.*.* $RPM_BUILD_ROOT%{_libdir}/libstdc++.so)
+echo ".so g77.1" > $RPM_BUILD_ROOT%{_mandir}/man1/f77.1
+
+%if %{with ada}
+# move ada shared libraries to proper place...
+mv -f $RPM_BUILD_ROOT%{_libdir}/gcc/*/*/adalib/*.so.1 \
+       $RPM_BUILD_ROOT%{_libdir}
+# check if symlink to be made is valid
+test -f $RPM_BUILD_ROOT%{_libdir}/libgnat-3.4.so.1
+ln -sf libgnat-3.4.so.1 $RPM_BUILD_ROOT%{_libdir}/libgnat-3.4.so
+ln -sf libgnarl-3.4.so.1 $RPM_BUILD_ROOT%{_libdir}/libgnarl-3.4.so
+ln -sf libgnat-3.4.so $RPM_BUILD_ROOT%{_libdir}/libgnat.so
+ln -sf libgnarl-3.4.so $RPM_BUILD_ROOT%{_libdir}/libgnarl.so
+%endif
+
 ln -sf %{_bindir}/cpp $RPM_BUILD_ROOT/lib/cpp
 
-gzip -9nf ../READ* ../ChangeLog ../gcc/ch/chill.brochure
+cd ..
+
+%if %{with java}
+install -d java-doc
+cp -f libjava/doc/cni.sgml libjava/READ* java-doc
+cp -f fastjar/README java-doc/README.fastjar
+cp -f libffi/README java-doc/README.libffi
+cp -f libffi/LICENSE java-doc/LICENSE.libffi
+%endif
+
+%if %{with objc}
+cp -f libobjc/README gcc/objc/README.libobjc
+%endif
+
+# avoid -L poisoning in *.la - there should be only -L%{_libdir}/gcc/*/%{version}
+for f in libstdc++.la libsupc++.la %{?with_java:libgcj.la} ; do
+       perl -pi -e 's@-L[^ ]*[acs.] @@g' $RPM_BUILD_ROOT%{_libdir}/$f
+done
+# normalize libdir, to avoid propagation of unnecessary RPATHs by libtool
+for f in libstdc++.la libsupc++.la libg2c.la \
+       %{?with_java:libgcj.la lib-org-w3c-dom.la lib-org-xml-sax.la libffi.la} \
+       %{?with_objc:libobjc.la}; do
+       perl -pi -e "s@^libdir='.*@libdir='/usr/%{_lib}'@" $RPM_BUILD_ROOT%{_libdir}/$f
+done
+
+bzip2 -dc %{SOURCE1} | tar xf - -C $RPM_BUILD_ROOT%{_mandir}
+mv -f $RPM_BUILD_ROOT%{_mandir}/ja/man1/{cccp,cpp}.1
+
+# include/ contains install-tools/include/* and headers that were fixed up
+# by fixincludes, we don't want former
+gccdir=$(echo $RPM_BUILD_ROOT%{_libdir}/gcc/*/*/)
+mkdir $gccdir/tmp
+# we have to save these however
+mv -f $gccdir/include/{%{?with_objc:objc,}g2c.h,syslimits.h%{?with_java:,libffi/ffitarget.h,gcj}} $gccdir/tmp
+rm -rf $gccdir/include
+mv -f $gccdir/tmp $gccdir/include
+cp $gccdir/install-tools/include/*.h $gccdir/include
+# but we don't want anything more from install-tools
+rm -rf $gccdir/install-tools
+
+%find_lang %{name}
+%find_lang libstdc\+\+
+
+%if %{with ssp}
+zcat %{SOURCE2} > $RPM_BUILD_ROOT%{_aclocaldir}/gcc_stack_protect.m4
+%endif
+install %{SOURCE3} $RPM_BUILD_ROOT%{_aclocaldir}/gcc_visibility.m4
 
 %clean
 rm -rf $RPM_BUILD_ROOT
@@ -433,154 +834,309 @@ rm -rf $RPM_BUILD_ROOT
 %postun g77
 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
 
-%post chill
-[ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
-
-%postun chill
+%post java
 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
 
-%post -n cpp
-[ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
-
-%postun -n cpp
+%postun java
 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
 
+%post   -p /sbin/ldconfig -n libgcc
+%postun -p /sbin/ldconfig -n libgcc
 %post   -p /sbin/ldconfig -n libstdc++
 %postun -p /sbin/ldconfig -n libstdc++
-
-%files
+%post   -p /sbin/ldconfig -n libobjc
+%postun -p /sbin/ldconfig -n libobjc
+%post   -p /sbin/ldconfig -n libg2c
+%postun -p /sbin/ldconfig -n libg2c
+%post   -p /sbin/ldconfig -n libgcj
+%postun -p /sbin/ldconfig -n libgcj
+%post   -p /sbin/ldconfig -n libgnat
+%postun -p /sbin/ldconfig -n libgnat
+%post   -p /sbin/ldconfig -n libffi
+%postun -p /sbin/ldconfig -n libffi
+
+%files -f gcc.lang
 %defattr(644,root,root,755)
-%doc READ* ChangeLog.gz
-
-%dir %{_libdir}/gcc-lib
-%dir %{_libdir}/gcc-lib/%{_target_cpu}*
-%dir %{_libdir}/gcc-lib/%{_target_cpu}*/*
-%dir %{_libdir}/gcc-lib/%{_target_cpu}*/*/include
-
-%attr(755,root,root) %{_bindir}/%{_target_cpu}*-gcc
+%doc ChangeLog.general MAINTAINERS NEWS bugs.html faq.html
+%doc gcc/{ChangeLog,ONEWS,README.Portability}
+%dir %{_libdir}/gcc/*/*
+%dir %{_libdir}/gcc/*/*/include
+%{?with_ssp:%{_aclocaldir}/gcc_stack_protect.m4}
+%{_aclocaldir}/gcc_visibility.m4
+
+%attr(755,root,root) %{_bindir}/*-gcc*
 %attr(755,root,root) %{_bindir}/gcc
+%attr(755,root,root) %{_bindir}/gccbug
 %attr(755,root,root) %{_bindir}/gcov
-%attr(755,root,root) %{_bindir}/protoize
-%attr(755,root,root) %{_bindir}/unprotoize
 %attr(755,root,root) %{_bindir}/cc
+%attr(755,root,root) %{_bindir}/cpp
 
+%{_mandir}/man1/cc.1*
+%{_mandir}/man1/cpp.1*
+%lang(ja) %{_mandir}/ja/man1/cpp.1*
 %{_mandir}/man1/gcc.1*
-%{_mandir}/man1/gcov.1*
 %lang(fr) %{_mandir}/fr/man1/gcc.1*
 %lang(ja) %{_mandir}/ja/man1/gcc.1*
+%{_mandir}/man1/gcov.1*
+
+%{_infodir}/cpp*
 %{_infodir}/gcc*
 
-%{_libdir}/gcc-lib/%{_target_cpu}*/*/SYSCALLS.c.X
-%attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/cc1
-%{_libdir}/gcc-lib/%{_target_cpu}*/*/libgcc.a
-%{_libdir}/gcc-lib/%{_target_cpu}*/*/lib*.map
-%{_libdir}/gcc-lib/%{_target_cpu}*/*/specs
+%attr(755,root,root) /lib/cpp
 
-%ifnarch alpha
-%attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/crt*.o
+%attr(755,root,root) %{_slibdir}*/lib*.so
+%ifarch ia64
+%{_slibdir}*/libunwind.a
+%endif
+%{_libdir}/gcc/*/*/libgcov.a
+%{_libdir}/gcc/*/*/libgcc.a
+%{_libdir}/gcc/*/*/libgcc_eh.a
+%{_libdir}/gcc/*/*/specs
+%attr(644,root,root) %{_libdir}*/gcc/*/*/crt*.o
+%ifarch sparc64
+%{_libdir}/gcc/*/*/*/libgcc.a
+%{_libdir}/gcc/*/*/*/libgcc_eh.a
+%attr(644,root,root) %{_libdir}*/gcc/*/*/*/crt*.o
+%endif
+%ifarch ppc
+%attr(644,root,root) %{_libdir}/gcc/*/*/ecrt*.o
+%attr(644,root,root) %{_libdir}/gcc/*/*/ncrt*.o
+%{_libdir}/gcc/*/*/nof
+%dir %{_libdir}/nof
 %endif
+%attr(755,root,root) %{_libdir}/gcc/*/*/cc1
+%attr(755,root,root) %{_libdir}/gcc/*/*/collect2
 
-%attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/collect2
+%{_libdir}/gcc/*/*/include/*.h
+%exclude %{_libdir}/gcc/*/*/include/g2c.h
 
-%{_libdir}/gcc-lib/%{_target_cpu}*/*/include/float.h
-%{_libdir}/gcc-lib/%{_target_cpu}*/*/include/iso646.h
-%{_libdir}/gcc-lib/%{_target_cpu}*/*/include/limits.h
-%{_libdir}/gcc-lib/%{_target_cpu}*/*/include/proto.h
-%{_libdir}/gcc-lib/%{_target_cpu}*/*/include/stdarg.h
-%{_libdir}/gcc-lib/%{_target_cpu}*/*/include/stdbool.h
-%{_libdir}/gcc-lib/%{_target_cpu}*/*/include/stddef.h
-%{_libdir}/gcc-lib/%{_target_cpu}*/*/include/syslimits.h
-%{_libdir}/gcc-lib/%{_target_cpu}*/*/include/va-*.h
-%{_libdir}/gcc-lib/%{_target_cpu}*/*/include/varargs.h
+%files -n libgcc
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_slibdir}*/lib*.so.*
 
 %files c++
 %defattr(644,root,root,755)
-
+%doc gcc/cp/{ChangeLog,NEWS}
+%attr(755,root,root) %{_bindir}/g++
+%attr(755,root,root) %{_bindir}/*-g++
+%attr(755,root,root) %{_bindir}/c++
+%attr(755,root,root) %{_bindir}/*-c++
+%attr(755,root,root) %{_libdir}/gcc/*/*/cc1plus
+%{_libdir}*/libsupc++.la
+%ifarch ppc
+%{_libdir}/nof/libsupc++.la
+%{_libdir}/nof/libsupc++.a
+%endif
+%{_libdir}*/libsupc++.a
 %{_mandir}/man1/g++.1*
-%{_mandir}/man1/c++filt.1*
 %lang(ja) %{_mandir}/ja/man1/g++.1*
-%lang(es) %{_mandir}/es/man1/c++filt*
 
-%attr(755,root,root) %{_bindir}/g++
-%attr(755,root,root) %{_bindir}/c++
-%attr(755,root,root) %{_bindir}/c++filt
-%attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/cc1plus
+%files -n libstdc++ -f libstdc++.lang
+%defattr(644,root,root,755)
+%doc libstdc++-v3/{ChangeLog,README}
+%attr(755,root,root) %{_libdir}*/libstdc++.so.*.*.*
+%ifarch ppc
+%attr(755,root,root) %{_libdir}/nof/libstdc++.so.*.*.*
+%endif
+
+%files -n libstdc++-devel
+%defattr(644,root,root,755)
+%doc libstdc++-v3/docs/html
+%dir %{_includedir}/c++
+%{_includedir}/c++/%{version}
+%exclude %{_includedir}/c++/%{version}/*/bits/stdc++.h.gch
+%attr(755,root,root) %{_libdir}*/libstdc++.so
+%{_libdir}*/libstdc++.la
+%ifarch ppc
+%attr(755,root,root) %{_libdir}/nof/libstdc++.so
+%{_libdir}/nof/libstdc++.la
+%endif
 
-%{_libdir}/gcc-lib/%{_target_cpu}*/*/include/exception
-%{_libdir}/gcc-lib/%{_target_cpu}*/*/include/new
-%{_libdir}/gcc-lib/%{_target_cpu}*/*/include/typeinfo
-%{_libdir}/gcc-lib/%{_target_cpu}*/*/include/new.h
+%files -n libstdc++-static
+%defattr(644,root,root,755)
+%{_libdir}*/libstdc++.a
+%ifarch ppc
+%{_libdir}/nof/libstdc++.a
+%endif
 
+%if %{with objc}
 %files objc
 %defattr(644,root,root,755)
+%doc gcc/objc/README
+%attr(755,root,root) %{_libdir}/gcc/*/*/cc1obj
+%attr(755,root,root) %{_libdir}*/libobjc.so
+%{_libdir}*/libobjc.la
+%ifarch ppc
+%attr(755,root,root) %{_libdir}/nof/libobjc.so
+%{_libdir}/nof/libobjc.la
+%endif
+%{_libdir}/gcc/*/*/include/objc
 
-%attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/cc1obj
+%files -n libobjc
+%defattr(644,root,root,755)
+%doc libobjc/{ChangeLog,README*}
+%attr(755,root,root) %{_libdir}*/libobjc.so.*.*.*
+%ifarch ppc
+%attr(755,root,root) %{_libdir}/nof/libobjc.so.*.*.*
+%endif
 
-%{_libdir}/gcc-lib/%{_target_cpu}*/*/libobjc.a
-%{_libdir}/gcc-lib/%{_target_cpu}*/*/include/objc
+%files -n libobjc-static
+%defattr(644,root,root,755)
+%{_libdir}*/libobjc.a
+%ifarch ppc
+%{_libdir}/nof/libobjc.a
+%endif
+%endif
 
 %files g77
 %defattr(644,root,root,755)
-
+%doc gcc/f/{BUGS,ChangeLog,NEWS}
 %attr(755,root,root) %{_bindir}/g77
 %attr(755,root,root) %{_bindir}/f77
-
 %{_infodir}/g77*
-
-%attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/f771
-%{_libdir}/gcc-lib/%{_target_cpu}*/*/libg2c.a
-
+%attr(755,root,root) %{_libdir}/gcc/*/*/f771
+%{_libdir}*/libfrtbegin.a
+%{_libdir}*/libg2c.la
+%attr(755,root,root) %{_libdir}*/libg2c.so
+%ifarch ppc
+%{_libdir}/nof/libfrtbegin.a
+%{_libdir}/nof/libg2c.la
+%attr(755,root,root) %{_libdir}/nof/libg2c.so
+%endif
+%{_libdir}/gcc/*/*/include/g2c.h
 %{_mandir}/man1/g77.1*
 %{_mandir}/man1/f77.1*
 %lang(ja) %{_mandir}/ja/man1/g77.1*
 %lang(ja) %{_mandir}/ja/man1/f77.1*
 
-%{_libdir}/gcc-lib/%{_target_cpu}*/*/include/g2c.h
-
-%files chill
+%files -n libg2c
 %defattr(644,root,root,755)
-%doc gcc/ch/chill.brochure.gz
+%doc libf2c/{ChangeLog,README,TODO}
+%attr(755,root,root) %{_libdir}*/libg2c.so.*.*.*
+%ifarch ppc
+%attr(755,root,root) %{_libdir}/nof/libg2c.so.*.*.*
+%endif
 
-%attr(755,root,root) %{_bindir}/chill
+%files -n libg2c-static
+%defattr(644,root,root,755)
+%{_libdir}*/libg2c.a
+%ifarch ppc
+%{_libdir}/nof/libg2c.a
+%endif
 
-%{_infodir}/chill*
+%if %{with java}
+%files java
+%defattr(644,root,root,755)
+%doc gcc/java/ChangeLog java-doc/*
+%attr(755,root,root) %{_bindir}/gcj*
+%attr(755,root,root) %{_bindir}/gij
+%attr(755,root,root) %{_bindir}/jcf-dump
+%attr(755,root,root) %{_bindir}/jv-*
+%attr(755,root,root) %{_bindir}/grepjar
+%attr(755,root,root) %{_bindir}/*-gcj*
+%attr(755,root,root) %{_libdir}/gcc/*/*/jc1
+%attr(755,root,root) %{_libdir}/gcc/*/*/jvgenmain
+%{_infodir}/gcj*
+%{_mandir}/man1/jcf-*
+%{_mandir}/man1/jv-*
+%{_mandir}/man1/gij*
+%{_mandir}/man1/gcj*
+%{_mandir}/man1/grepjar*
+
+%files java-tools
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_bindir}/rmi*
+%attr(755,root,root) %{_bindir}/jar
+%{_mandir}/man1/rmi*
+%{_mandir}/man1/jar*
+%{_infodir}/fastjar*
 
-%attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/cc1chill
-%attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/chill*.o
-%{_libdir}/gcc-lib/%{_target_cpu}*/*/libchill.a
+%files -n libgcj
+%defattr(644,root,root,755)
+%doc libjava/{ChangeLog,LIBGCJ_LICENSE,NEWS,README,THANKS}
+%attr(755,root,root) %{_bindir}/addr2name.awk
+%attr(755,root,root) %{_libdir}/lib*cj*.so.*.*.*
+%attr(755,root,root) %{_libdir}/lib-org*.so.*.*.*
+%ifarch ppc
+%attr(755,root,root) %{_libdir}/nof/lib*cj*.so.*
+%endif
+%{_libdir}/logging.properties
 
-%files java
+%files -n libgcj-devel
 %defattr(644,root,root,755)
+%{_includedir}/java
+%{_includedir}/javax
+%{_includedir}/gcj
+%{_includedir}/j*.h
+%{_includedir}/gnu/*
+%{_libdir}/gcc/*/*/include/gcj
+%dir %{_libdir}/security
+%{_libdir}/security/*
+%dir %{_datadir}/java
+%{_datadir}/java/libgcj*.jar
+%{_libdir}/lib*cj.spec
+%{_libdir}/lib*cj*.la
+%attr(755,root,root) %{_libdir}/lib*cj*.so
+%attr(755,root,root) %{_libdir}/lib-org-*.so
+%{_libdir}/lib-org-*.la
+%ifarch ppc
+%{_libdir}/nof/lib*cj*.la
+%attr(755,root,root) %{_libdir}/nof/lib*cj*.so
+%endif
+%{_pkgconfigdir}/libgcj.pc
 
-%attr(755,root,root) %{_bindir}/gcj
-%attr(755,root,root) %{_bindir}/gcjh
-%attr(755,root,root) %{_bindir}/jcf-dump
-%attr(755,root,root) %{_bindir}/jv-scan
+%files -n libgcj-static
+%defattr(644,root,root,755)
+%{_libdir}/lib*cj*.a
+%{_libdir}/lib-org-*.a
+%ifarch ppc
+%{_libdir}/nof/lib*cj*.a
+%endif
 
-%attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/jc1
-%attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/jvgenmain
+%files -n libffi
+%defattr(644,root,root,755)
+%doc libffi/{ChangeLog,ChangeLog.libgcj,LICENSE,README}
+%attr(755,root,root) %{_libdir}/libffi-*.so
 
-%files -n libstdc++
+%files -n libffi-devel
 %defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/libstdc++.so.*.*.*
+%{_libdir}/gcc/*/*/include/ffitarget.h
+%attr(755,root,root) %{_libdir}/libffi.so
+%{_libdir}/libffi.la
+%{_includedir}/ffi.h
 
-%files -n libstdc++-devel
+%files -n libffi-static
 %defattr(644,root,root,755)
-%{_includedir}/g++
-%attr(755,root,root) %{_libdir}/libstdc++.so
+%{_libdir}/libffi.a
+%endif
 
-%files -n libstdc++-static
+%if %{with ada}
+%files ada
 %defattr(644,root,root,755)
-%attr(644,root,root) %{_libdir}/libstdc++.a
+%doc gcc/ada/ChangeLog
+%attr(755,root,root) %{_bindir}/gnat*
+%attr(755,root,root) %{_bindir}/gpr*
+%attr(755,root,root) %{_libdir}/libgnarl*.so
+%attr(755,root,root) %{_libdir}/libgnat*.so
+%attr(755,root,root) %{_libdir}/gcc/*/*/gnat1
+%{_libdir}/gcc/*/*/adainclude
+%dir %{_libdir}/gcc/*/*/adalib
+%{_libdir}/gcc/*/*/adalib/*.ali
+%{_libdir}/gcc/*/*/adalib/g-trasym.o
+%{_libdir}/gcc/*/*/adalib/libgccprefix.a
+%ifarch %{ix86}
+%{_libdir}/gcc/*/*/adalib/libgmem.a
+%endif
+%{_datadir}/gnat
+%{_infodir}/gnat*
 
-%files -n cpp
+%files -n libgnat
 %defattr(644,root,root,755)
-%attr(755,root,root) /lib/cpp
-%attr(755,root,root) %{_bindir}/cpp
-%attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/cpp0
+%attr(755,root,root) %{_libdir}/libgnarl*.so.1
+%attr(755,root,root) %{_libdir}/libgnat*.so.1
 
-%{_mandir}/man1/cpp.1*
-%{_mandir}/man1/cccp.1*
-%lang(ja) %{_mandir}/ja/man1/cpp.1*
-%lang(ja) %{_mandir}/ja/man1/cccp.1*
-%{_infodir}/cpp.info*.gz
+%files -n libgnat-static
+%defattr(644,root,root,755)
+%{_libdir}/gcc/*/*/adalib/libgnarl.a
+%{_libdir}/gcc/*/*/adalib/libgnat.a
+%endif
This page took 0.100183 seconds and 4 git commands to generate.