]> git.pld-linux.org Git - packages/gcc4.git/blobdiff - gcc4.spec
- updated to 4.1.0-20051005T0949UTC.
[packages/gcc4.git] / gcc4.spec
index a257316f21c2f7ee288bbd1cad20f947f2509ce8..9a453975b824ea7510f7e3b206ca28709a03c6a6 100644 (file)
--- a/gcc4.spec
+++ b/gcc4.spec
@@ -1,81 +1,79 @@
 #
-# TODO:
-#              - http://gcc.gnu.org/PR11203 (inline-asm)
-#              - http://gcc.gnu.org/PR14776 (target / wrong SSE-code)
-#              - http://gcc.gnu.org/PR18378 (regression)
-# - fix build on ac-i586: (it`s strange because other builders are OK) 
-# (File not found by glob: /tmp/B.e501ff/gcc-3.4.3-root-builder/usr/include/c++/3.4.3/*/bits/stdc++.h.gch)
-# 
-#
 # Conditional build:
 %bcond_without ada             # build without ADA support
+%bcond_without cxx             # build without C++ support
+%bcond_without fortran         # build without Fortran support
 %bcond_without java            # build without Java support
-%bcond_without objc            # build without ObjC support
-%bcond_with    ssp             # build with stack-smashing protector support
-%bcond_with    multilib        # build with multilib support
-%ifnarch amd64 ppc64 s390x sparc64
+%bcond_without objc            # build without Objective-C support
+%bcond_without objcxx          # build without Objective-C++ support
+%bcond_with    multilib        # build with multilib support (it needs glibc[32&64]-devel)
+%bcond_with    profiling       # build with profiling
+%bcond_without bootstrap       # omit 3-stage bootstrap
+%bcond_with    tests           # torture gcc
+
+%if %{with multilib}
+# the latest chrpath(64) can't handle 32-bit binaries :/
+%define                _noautochrpath  .*/lib/.*\\.so.*
+%endif
+
+%if %{without cxx}
+%undefine      with_java
+%undefine      with_objcxx
+%endif
+
+%if %{without objc}
+%undefine      with_objcxx
+%endif
+
+%if %{without bootstrap}
+%undefine      with_profiling
+%endif
+
+%ifnarch %{x8664} ppc64 s390x sparc64
 %undefine      with_multilib
 %endif
-#
+
 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:       3.4.3
-Release:       5
+Version:       4.1.0
+%define                _snap   20051005T0949UTC
+Release:       0.%{_snap}.1
 Epoch:         5
 License:       GPL v2+
 Group:         Development/Languages
-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
+#Source0:      ftp://gcc.gnu.org/pub/gcc/releases/gcc-%{version}/%{name}-%{version}.tar.bz2
+#Source0:      ftp://gcc.gnu.org/pub/gcc/snapshots/4.1-%{_snap}/gcc-4.1-%{_snap}.tar.bz2
+Source0:       gcc-4.1-%{_snap}.tar.bz2
+# Source0-md5: 19b30d36af9aaa6216af104b77714cad
+Source1:       %{name}-optimize-la.pl
 Patch0:                %{name}-info.patch
 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
-Patch10:       %{name}-pr13470.patch
-#
-Patch20:       %{name}-ada-bootstrap.patch
+Patch2:                %{name}-nodebug.patch
+Patch3:                %{name}-ada-link-new-libgnat.patch
+Patch4:                %{name}-ada-link.patch
+Patch5:                %{name}-alpha-ada_fix.patch
+Patch6:                %{name}-keep-volatile-sematics.patch
+# PRs
+Patch10:       %{name}-pr7776.patch
+Patch11:       %{name}-pr20297.patch
+
+Patch13:       %{name}-pr22533.patch
+Patch14:       %{name}-x87-mmx-switch.patch
+Patch15:       %{name}-x87-mmx-eh.patch
+Patch16:       %{name}-pr23948.patch
+Patch17:       %{name}-pr19505.patch
+Patch18:       %{name}-pr20606_pr24069.patch
 URL:           http://gcc.gnu.org/
 BuildRequires: autoconf
+%{?with_tests:BuildRequires:   autogen}
 BuildRequires: automake
-BuildRequires: binutils >= 2:2.15.91.0.2
+BuildRequires: binutils >= 2:2.15.94.0.1
 BuildRequires: bison
+%{?with_java:BuildRequires:    cairo-devel >= 0.5.0}
+%{?with_tests:BuildRequires:   dejagnu}
 BuildRequires: fileutils >= 4.0.41
 BuildRequires: flex
 %if %{with ada}
@@ -83,19 +81,28 @@ BuildRequires:      gcc(ada)
 BuildRequires: gcc-ada
 %endif
 BuildRequires: gettext-devel
-BuildRequires: glibc-devel >= 2.2.5-20
+BuildRequires: glibc-devel >= %{!?with_multilib:2.2.5-20}%{?with_multilib:6:2.3.4-1.5}
+%if %{with fortran}
+BuildRequires: gmp-devel
+BuildRequires: libmpfr-devel
+%endif
+%{?with_java:BuildRequires:    pango-devel}
 BuildRequires: perl-devel
+%{?with_java:BuildRequires:    pkgconfig}
+BuildRequires: rpmbuild(macros) >= 1.211
 BuildRequires: texinfo >= 4.1
 BuildRequires: zlib-devel
-Requires:      binutils >= 2:2.15.91.0.2
-Requires:      gcc-dirs >= 1.0-3
+# AS_NEEDED directive for dynamic linker
+# http://sources.redhat.com/ml/glibc-cvs/2005-q1/msg00614.html
+# http://sources.redhat.com/ml/binutils/2005-01/msg00288.html
+Requires:      binutils >= 2:2.16.90.0.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
+%{?with_multilib:Provides:     gcc(multilib)}
 Obsoletes:     cpp
 Obsoletes:     egcs-cpp
+Obsoletes:     gcc-chill
 Obsoletes:     gcc-cpp
 Obsoletes:     gcc-ksi
 Obsoletes:     gont
@@ -103,13 +110,11 @@ Conflicts:        glibc-devel < 2.2.5-20
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
 %define                _slibdir        /%{_lib}
-%ifarch amd64 ppc64 s390x sparc64
+%if %{with multilib}
+# 32-bit environment on x86-64,ppc64,s390x,sparc64
 %define                _slibdir32      /lib
 %define                _libdir32       /usr/lib
 %endif
-%ifarch sparc64
-%define                rpmcflags       -O2 -mtune=ultrasparc
-%endif
 
 %description
 A compiler aimed at integrating all the optimizations and features
@@ -162,6 +167,110 @@ Biblioteka dynamiczna gcc.
 %description -n libgcc -l pt_BR
 Biblioteca runtime para o GCC.
 
+%package -n libmudflap
+Summary:       GCC mudflap shared support library
+Summary(pl):   Wspó³dzielona biblioteka wspomagaj±ca GCC mudflap
+License:       GPL v2+ with unlimited link permission
+Group:         Libraries
+
+%description -n libmudflap
+The libmudflap libraries are used by GCC for instrumenting pointer and
+array dereferencing operations.
+
+%description -n libmudflap -l pl
+Biblioteki libmudflap s± u¿ywane przez GCC do obs³ugi operacji
+dereferencji wspa¼ników i tablic.
+
+%package -n libmudflap-devel
+Summary:       Development files for GCC mudflap library
+Summary(pl):   Pliki programistyczne biblioteki GCC mudflap
+License:       GPL v2+ with unlimited link permission
+Group:         Development/Libraries
+Requires:      libmudflap = %{epoch}:%{version}-%{release}
+
+%description -n libmudflap-devel
+The libmudflap libraries are used by GCC for instrumenting pointer and
+array dereferencing operations. This package contains development
+files.
+
+%description -n libmudflap-devel -l pl
+Biblioteki libmudflap s± u¿ywane przez GCC do obs³ugi operacji
+dereferencji wspa¼ników i tablic. Ten pakiet zawiera pliki
+programistyczne.
+
+%package -n libmudflap-static
+Summary:       Static GCC mudflap library
+Summary(pl):   Statyczna biblioteka GCC mudflap
+License:       GPL v2+ with unlimited link permission
+Group:         Development/Libraries
+Requires:      libmudflap-devel = %{epoch}:%{version}-%{release}
+
+%description -n libmudflap-static
+The libmudflap libraries are used by GCC for instrumenting pointer and
+array dereferencing operations. This package contains static
+libraries.
+
+%description -n libmudflap-static -l pl
+Biblioteki libmudflap s± u¿ywane przez GCC do obs³ugi operacji
+dereferencji wspa¼ników i tablic. Ten pakiet zawiera biblioteki
+statyczne.
+
+%package ada
+Summary:       Ada support for gcc
+Summary(es):   Soporte de Ada para gcc
+Summary(pl):   Obs³uga Ady do gcc
+Group:         Development/Languages
+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
+License:       GPL v2+ with linking exception
+Group:         Libraries
+Obsoletes:     gnat
+Obsoletes:     libgnat1
+
+%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
+License:       GPL v2+ with linking exception
+Group:         Development/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.
+
 %package c++
 Summary:       C++ support for gcc
 Summary(es):   Soporte de C++ para gcc
@@ -210,146 +319,161 @@ Bu paket, GNU C derleyicisine C++ deste
 aykýrý durum iþleme gibi çoðu güncel C++ tanýmlarýna uyar. Standart
 C++ kitaplýðý bu pakette yer almaz.
 
-%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):   Obs³uga obiektowego C dla kompilatora gcc
-Summary(tr):   gcc için Objective C desteði
-Group:         Development/Languages
-Requires:      %{name} = %{epoch}:%{version}-%{release}
-Requires:      libobjc = %{epoch}:%{version}-%{release}
-Obsoletes:     egcc-objc
-Obsoletes:     egcs-objc
+%package -n libstdc++
+Summary:       GNU C++ library
+Summary(es):   Biblioteca C++ de GNU
+Summary(pl):   Biblioteki GNU C++
+Summary(pt_BR):        Biblioteca C++ GNU
+License:       GPL v2+ with free software exception
+Group:         Libraries
+Obsoletes:     libg++
+Obsoletes:     libstdc++3
 
-%description 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 -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 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 -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 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 -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 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 -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 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 -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 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.
+%description -n libstdc++ -l pt_BR
+Este pacote é uma implementação da biblioteca padrão C++ v3, um
+subconjunto do padrão ISO 14882.
 
-%package -n libobjc
-Summary:       Objective C Libraries
-Summary(es):   Bibliotecas de Objective C
-Summary(pl):   Biblioteki Obiektowego C
-License:       GPL v2+ with linking exception
-Group:         Libraries
-Obsoletes:     libobjc1
+%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.
 
-%description -n libobjc
-Objective C Libraries.
+%package -n libstdc++-devel
+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 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
+License:       GPL v2+ with free software exception
+Group:         Development/Libraries
+Requires:      %{name}-c++ = %{epoch}:%{version}-%{release}
+Requires:      libstdc++ = %{epoch}:%{version}-%{release}
+Requires:      glibc-devel
+Obsoletes:     libg++-devel
+Obsoletes:     libstdc++3-devel
 
-%description -n libobjc -l es
-Bibliotecas de Objective C.
+%description -n libstdc++-devel
+This is the GNU implementation of the standard C++ libraries. This
+package includes the header files needed for C++ development and
+library documentation.
 
-%description -n libobjc -l pl
-Biblioteki Obiektowego C.
+%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++.
 
-%package -n libobjc-static
-Summary:       Static Objective C Libraries
-Summary(es):   Bibliotecas estáticas de Objective C
-Summary(pl):   Statyczne Biblioteki Obiektowego C
-License:       GPL v2+ with linking exception
+%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++ 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(es):   Biblioteca estándar estática de C++
+Summary(pl):   Statyczna biblioteka standardowa C++
+License:       GPL v2+ with free software exception
 Group:         Development/Libraries
-Requires:      libobjc = %{epoch}:%{version}-%{release}
+Requires:      libstdc++-devel = %{epoch}:%{version}-%{release}
 
-%description -n libobjc-static
-Static Objective C Libraries.
+%description -n libstdc++-static
+Static C++ standard library.
 
-%description -n libobjc-static -l es
-Bibliotecas estáticas de Objective C.
+%description -n libstdc++-static -l es
+Biblioteca estándar estática de C++.
 
-%description -n libobjc-static -l pl
-Statyczne biblioteki Obiektowego C.
+%description -n libstdc++-static -l pl
+Statyczna biblioteka standardowa C++.
 
-%package g77
-Summary:       Fortran 77 support for gcc
-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
+%package fortran
+Summary:       Fortran 95 support for gcc
+Summary(es):   Soporte de Fortran 95 para gcc
+Summary(pl):   Obs³uga Fortranu 95 dla gcc
+Summary(pt_BR):        Suporte Fortran 95 para o GCC
 Group:         Development/Languages/Fortran
-Requires:      libg2c = %{epoch}:%{version}-%{release}
+Requires:      libgfortran = %{epoch}:%{version}-%{release}
+Provides:      gcc-g77 = %{epoch}:%{version}-%{release}
 Obsoletes:     egcs-g77
+Obsoletes:     gcc-g77
 
-%description g77
-This package adds support for compiling Fortran 77 programs with the
+%description fortran
+This package adds support for compiling Fortran 95 programs with the
 GNU compiler.
 
-%description g77 -l es
+%description fortran -l es
 Este paquete añade soporte para compilar programas escritos en Fortran
-77 con el compilador GNU.
+95 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.
+%description fortran -l pl
+Ten pakiet dodaje obs³ugê Fortranu 95 do kompilatora gcc. Jest
+potrzebny do kompilowania programów pisanych w jêzyku Fortran 95.
 
-%description g77 -l pt_BR
-Suporte Fortran 77 para o GCC.
+%description fortran -l pt_BR
+Suporte Fortran 95 para o GCC.
 
-%package -n libg2c
-Summary:       Fortran 77 Libraries
-Summary(es):   Bibliotecas de Fortran 77
-Summary(pl):   Biblioteki Fortranu 77
+%package -n libgfortran
+Summary:       Fortran 95 Libraries
+Summary(es):   Bibliotecas de Fortran 95
+Summary(pl):   Biblioteki Fortranu 95
 License:       LGPL v2+
 Group:         Libraries
+Obsoletes:     libg2c
 
-%description -n libg2c
-Fortran 77 Libraries.
+%description -n libgfortran
+Fortran 95 Libraries.
 
-%description -n libg2c -l es
-Bibliotecas de Fortran 77.
+%description -n libgfortran -l es
+Bibliotecas de Fortran 95.
 
-%description -n libg2c -l pl
-Biblioteki Fortranu 77.
+%description -n libgfortran -l pl
+Biblioteki Fortranu 95.
 
-%package -n libg2c-static
-Summary:       Static Fortran 77 Libraries
-Summary(es):   Bibliotecas estáticas de Fortran 77
-Summary(pl):   Statyczne Biblioteki Fortranu 77
+%package -n libgfortran-static
+Summary:       Static Fortran 95 Libraries
+Summary(es):   Bibliotecas estáticas de Fortran 95
+Summary(pl):   Statyczne Biblioteki Fortranu 95
 License:       LGPL v2+
 Group:         Development/Libraries
-Requires:      libg2c = %{epoch}:%{version}-%{release}
+Requires:      libgfortran = %{epoch}:%{version}-%{release}
+Obsoletes:     libg2c-static
 
-%description -n libg2c-static
-Static Fortran 77 Libraries.
+%description -n libgfortran-static
+Static Fortran 95 Libraries.
 
-%description -n libg2c -l es
-Bibliotecas estáticas de Fortran 77.
+%description -n libgfortran-static -l es
+Bibliotecas estáticas de Fortran 95.
 
-%description -n libg2c-static -l pl
-Statyczne biblioteki Fortranu 77.
+%description -n libgfortran-static -l pl
+Statyczne biblioteki Fortranu 95.
 
 %package java
 Summary:       Java support for gcc
@@ -357,13 +481,14 @@ 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}
+Provides:      gcc-java-tools
+Obsoletes:     fastjar
+Obsoletes:     gcc-java-tools
 
 %description java
-This package adds experimental support for compiling Java(tm) programs
+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.
 
@@ -373,32 +498,9 @@ Java(tm) y su bytecode en c
 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.
+Ten pakiet dodaje mo¿liwo¶æ kompilowania programów w jêzyku Java(TM)
+oraz bajtkodu do kodu natywnego. Do u¿ywania go wymagany jest
+dodatkowo pakiet libgcj.
 
 %package -n libgcj
 Summary:       Java Class Libraries
@@ -406,7 +508,6 @@ Summary(es):        Bibliotecas de clases de Java
 Summary(pl):   Biblioteki Klas Javy
 License:       GPL with limited linking exception
 Group:         Libraries
-Requires:      zlib
 Obsoletes:     libgcj3
 
 %description -n libgcj
@@ -424,8 +525,8 @@ Summary(es):        Ficheros de desarrollo para las bibliotecas de clases de Java
 Summary(pl):   Pliki nag³ówkowe dla Bibliotek Klas Javy
 License:       GPL with limited linking exception
 Group:         Development/Libraries
-Requires:      %{name}-java = %{epoch}:%{version}-%{release}
 Requires:      libgcj = %{epoch}:%{version}-%{release}
+Requires:      zlib-devel
 Obsoletes:     libgcj3-devel
 
 %description -n libgcj-devel
@@ -455,101 +556,6 @@ Bibliotecas est
 %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
-License:       GPL v2+ with free software exception
-Group:         Libraries
-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 -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 -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 -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 -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 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 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
-License:       GPL v2+ with free software exception
-Group:         Development/Libraries
-Requires:      %{name}-c++ = %{epoch}:%{version}-%{release}
-Requires:      libstdc++ = %{epoch}:%{version}-%{release}
-Requires:      glibc-devel
-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 needed for C++ development and
-library documentation.
-
-%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++ 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(es):   Biblioteca estándar estática de C++
-Summary(pl):   Statyczna biblioteka standardowa C++
-License:       GPL v2+ with free software exception
-Group:         Development/Libraries
-Requires:      libstdc++-devel = %{epoch}:%{version}-%{release}
-
-%description -n libstdc++-static
-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
@@ -609,112 +615,146 @@ Biblioteca libffi est
 %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
+%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):   Obs³uga obiektowego C dla kompilatora gcc
+Summary(tr):   gcc için Objective C desteði
 Group:         Development/Languages
 Requires:      %{name} = %{epoch}:%{version}-%{release}
-Requires:      libgnat = %{epoch}:%{version}-%{release}
-Obsoletes:     gcc-gnat
-Obsoletes:     gnat-devel
+Requires:      libobjc = %{epoch}:%{version}-%{release}
+Obsoletes:     egcc-objc
+Obsoletes:     egcs-objc
 
-%description ada
-This package adds experimental support for compiling Ada programs.
+%description 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 ada -l es
-Este paquete añade soporte experimental para compilar programas en
-Ada.
+%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 ada -l pl
-Ten pakiet dodaje eksperymentalne wsparcie dla kompilacji programów w
-Adzie.
+%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.
 
-%package -n libgnat
-Summary:       Ada standard libraries
-Summary(es):   Bibliotecas estándares de Ada
-Summary(pl):   Biblioteki standardowe dla Ady
+%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 objc++
+Summary:       Objective C++ support for gcc
+Summary(pl):   Obs³uga jêzyka Objective C++ dla gcc
+Group:         Development/Languages
+Requires:      %{name}-c++ = %{epoch}:%{version}-%{release}
+Requires:      %{name}-objc = %{epoch}:%{version}-%{release}
+
+%description objc++
+This package adds Objective C++ support to the GNU Compiler
+Collection.
+
+%description objc++ -l pl
+Ten pakiet dodaje obs³ugê jêzyka Objective C++ do zestawu
+kompilatorów GNU Compiler Collection.
+
+%package -n libobjc
+Summary:       Objective C Libraries
+Summary(es):   Bibliotecas de Objective C
+Summary(pl):   Biblioteki Obiektowego C
 License:       GPL v2+ with linking exception
 Group:         Libraries
-Obsoletes:     gnat
-Obsoletes:     libgnat1
+Obsoletes:     libobjc1
 
-%description -n libgnat
-This package contains shared libraries needed to run programs written
-in Ada.
+%description -n libobjc
+Objective C Libraries.
 
-%description -n libgnat -l es
-Este paquete contiene las bibliotecas compartidas necesarias para
-ejecutar programas escritos en Ada.
+%description -n libobjc -l es
+Bibliotecas de Objective C.
 
-%description -n libgnat -l pl
-Ten pakiet zawiera biblioteki potrzebne do uruchamiania programów
-napisanych w Adzie.
+%description -n libobjc -l pl
+Biblioteki Obiektowego C.
 
-%package -n libgnat-static
-Summary:       Static Ada standard libraries
-Summary(pl):   Statyczne biblioteki standardowe dla Ady
+%package -n libobjc-static
+Summary:       Static Objective C Libraries
+Summary(es):   Bibliotecas estáticas de Objective C
+Summary(pl):   Statyczne Biblioteki Obiektowego C
 License:       GPL v2+ with linking exception
-Group:         Libraries
-Obsoletes:     gnat-static
+Group:         Development/Libraries
+Requires:      libobjc = %{epoch}:%{version}-%{release}
 
-%description -n libgnat-static
-This package contains static libraries for programs written in Ada.
+%description -n libobjc-static
+Static Objective C Libraries.
 
-%description -n libgnat-static -l pl
-Ten pakiet zawiera biblioteki statyczne dla programów napisanych w
-Adzie.
+%description -n libobjc-static -l es
+Bibliotecas estáticas de Objective C.
+
+%description -n libobjc-static -l pl
+Statyczne biblioteki Obiektowego C.
 
 %prep
-%setup -q -a1
+#setup -q -n gcc-%{version}
+%setup -q -n gcc-4.1-%{_snap}
 
 %patch0 -p1
 %patch1 -p1
-%patch2 -p1
-%{!?debug:%patch3 -p1}
-%{?with_ssp:%patch4 -p1}
+%{!?debug:%patch2 -p1}
+%patch3 -p1
+%patch4 -p1
 %patch5 -p1
-%patch6 -p0
-#%patch7 -p0
-%patch8 -p1
-%patch9 -p1
+%patch6 -p1
+
+# PRs
 %patch10 -p1
+%patch11 -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
+%patch13 -p1
+#patch14 -p1   NEEDS UPDATE
+#patch15 -p1
+%patch16 -p1
+%patch17 -p1
+%patch18 -p1
 
 # 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/(version.*)";/$1 (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
-# 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}
-
-CC="%{__cc}"
-
-%if %{with multilib}
-cat > gcc64 <<"EOF"
-#!/bin/sh
-exec /usr/bin/gcc -m64 "$@"
-EOF
-chmod +x gcc64
-CC=`pwd`/gcc64
-%endif
+rm -rf obj-%{_target_platform}
+install -d obj-%{_target_platform}
+cd obj-%{_target_platform}
 
 CFLAGS="%{rpmcflags}" \
-CXXFLAGS="%{rpmcflags}" \
-CC="$CC" \
+CXXFLAGS="%{rpmcxxflags}" \
 TEXCONFIG=false \
 ../configure \
        --prefix=%{_prefix} \
@@ -725,144 +765,146 @@ TEXCONFIG=false \
        --enable-shared \
        --enable-threads=posix \
        --enable-__cxa_atexit \
-       --enable-languages="c,c++,f77%{?with_objc:,objc}%{?with_ada:,ada}%{?with_java:,java}" \
+       --enable-languages="c%{?with_cxx:,c++}%{?with_fortran:,f95}%{?with_objc:,objc}%{?with_objcxx:,obj-c++}%{?with_ada:,ada}%{?with_java:,java}" \
        --enable-c99 \
        --enable-long-long \
-%ifnarch ppc
-%if %{without multilib}
-       --disable-multilib \
-%endif
-%endif
+       --%{?with_multilib:en}%{!?with_multilib:dis}able-multilib \
        --enable-nls \
+       --disable-werror \
        --with-gnu-as \
        --with-gnu-ld \
+       --with-demangler-in-ld \
        --with-system-zlib \
        --with-slibdir=%{_slibdir} \
        --without-x \
+       %{?with_fortran:--enable-cmath} \
+%if %{with java}
+       --enable-libgcj \
+       --enable-libgcj-multifile \
+       --enable-libgcj-database \
+       --enable-gtk-cairo \
+%endif
        %{_target_platform}
 
-PATH=$PATH:/sbin:%{_sbindir}
-
 cd ..
-# - 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
+       %{?with_bootstrap:%{?with_profiling:profiled}bootstrap} \
        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
+%{?with_tests:%{__make} -k -C obj-%{_target_platform} check 2>&1 ||:}
 
 %install
 rm -rf $RPM_BUILD_ROOT
 install -d $RPM_BUILD_ROOT{/lib,%{_aclocaldir},%{_datadir},%{_infodir}}
 
 cd obj-%{_target_platform}
-PATH=$PATH:/sbin:%{_sbindir}
 
 %{__make} -j1 install \
        mandir=%{_mandir} \
        infodir=%{_infodir} \
        DESTDIR=$RPM_BUILD_ROOT
 
+install gcc/specs $RPM_BUILD_ROOT%{_libdir}/gcc/%{_target_platform}/%{version}
+
 %ifarch sparc64
-ln -f $RPM_BUILD_ROOT%{_bindir}/sparc64-pld-linux-gcc \
+ln -sf %{_bindir}/sparc64-pld-linux-gcc \
        $RPM_BUILD_ROOT%{_bindir}/sparc-pld-linux-gcc
 %endif
 
+ln -sf %{_bindir}/cpp $RPM_BUILD_ROOT/lib/cpp
 ln -sf gcc $RPM_BUILD_ROOT%{_bindir}/cc
 echo ".so gcc.1" > $RPM_BUILD_ROOT%{_mandir}/man1/cc.1
 
-ln -sf g77 $RPM_BUILD_ROOT%{_bindir}/f77
-echo ".so g77.1" > $RPM_BUILD_ROOT%{_mandir}/man1/f77.1
+libssp=$(cd $RPM_BUILD_ROOT%{_libdir}; echo libssp.so.*.*.*)
+mv $RPM_BUILD_ROOT{%{_libdir}/$libssp,%{_slibdir}}
+ln -sf %{_slibdir}/$libssp $RPM_BUILD_ROOT%{_libdir}/libssp.so
+%if %{with multilib}
+libssp=$($RPM_BUILD_ROOT%{_libdir32}; echo libssp.so.*.*.*`)
+mv $RPM_BUILD_ROOT{%{_libdir32}/$libssp,%{_slibdir32}}
+ln -sf %{_slibdir32}/$libssp $RPM_BUILD_ROOT%{_libdir32}/libssp.so
+%endif
+
+%if %{with fortran}
+ln -sf gfortran $RPM_BUILD_ROOT%{_bindir}/g95
+echo ".so gfortran.1" > $RPM_BUILD_ROOT%{_mandir}/man1/g95.1
+%endif
 
 %if %{with ada}
 # move ada shared libraries to proper place...
-mv -f $RPM_BUILD_ROOT%{_libdir}/gcc/*/*/adalib/*.so.1 \
+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
+test -f        $RPM_BUILD_ROOT%{_libdir}/libgnat-4.0.so.1
+ln -sf libgnat-4.0.so.1 $RPM_BUILD_ROOT%{_libdir}/libgnat-4.0.so
+ln -sf libgnarl-4.0.so.1 $RPM_BUILD_ROOT%{_libdir}/libgnarl-4.0.so
+ln -sf libgnat-4.0.so $RPM_BUILD_ROOT%{_libdir}/libgnat.so
+ln -sf libgnarl-4.0.so $RPM_BUILD_ROOT%{_libdir}/libgnarl.so
 %endif
 
-ln -sf %{_bindir}/cpp $RPM_BUILD_ROOT/lib/cpp
-
 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
+cp -f  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
+ln -sf %{_javadir}/libgcj-%{version}.jar $RPM_BUILD_ROOT%{_javadir}/libgcj.jar
 %endif
-
 %if %{with objc}
-cp -f libobjc/README gcc/objc/README.libobjc
+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
+for f in libmudflap.la libmudflapth.la libssp.la \
+       %{?with_cxx:libstdc++.la libsupc++.la} \
+       %{?with_fortran:libgfortran.la libgfortranbegin.la} \
+       %{?with_java:libgcj.la libffi.la} \
+       %{?with_objc:libobjc.la};
+do
+       %{SOURCE1} $RPM_BUILD_ROOT%{_libdir}/$f %{_libdir} > $RPM_BUILD_ROOT%{_libdir}/$f.fixed
+       mv $RPM_BUILD_ROOT%{_libdir}/$f{.fixed,}
+%if %{with multilib}
+       %{SOURCE1} $RPM_BUILD_ROOT%{_libdir32}/$f %{_libdir32} > $RPM_BUILD_ROOT%{_libdir32}/$f.fixed
+       mv $RPM_BUILD_ROOT%{_libdir32}/$f{.fixed,}
+%endif
 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
+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
+%{?with_java:mv $gccdir/include/{gcj,libffi/ffitarget.h,jawt.h,jawt_md.h,jni.h,jni_md.h,jvmpi.h} $gccdir/tmp}
+%{?with_objc:mv $gccdir/include/objc $gccdir/tmp}
+mv $gccdir/include/syslimits.h $gccdir/tmp
 rm -rf $gccdir/include
-mv -f $gccdir/tmp $gccdir/include
+mv $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
 
 %if %{with multilib}
-ln -sf %{_slibdir}/libgcc_s.so.1 $gccdir/libgcc_s.so
-ln -sf %{_slibdir32}/libgcc_s.so.1 $gccdir/libgcc_s_32.so
+ln -sf %{_slibdir32}/libgcc_s.so.1     $gccdir/32/libgcc_s.so
 %endif
+ln -sf %{_slibdir}/libgcc_s.so.1       $gccdir/libgcc_s.so
 
-%find_lang %{name}
-%find_lang libstdc\+\+
+%find_lang gcc
+%{?with_cxx:%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
+# cvs snap doesn't contain (release does) below files,
+# so let's create dummy entries to satisfy %%files.
+[ ! -f NEWS ] && touch NEWS
+[ ! -f libgfortran/AUTHORS ] && touch libgfortran/AUTHORS
+[ ! -f libgfortran/README ] && touch libgfortran/README
 
 %clean
 rm -rf $RPM_BUILD_ROOT
@@ -873,10 +915,16 @@ rm -rf $RPM_BUILD_ROOT
 %postun
 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
 
-%post g77
+%post ada
+[ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
+
+%postun ada
+[ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
+
+%post fortran
 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
 
-%postun g77
+%postun fortran
 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
 
 %post java
@@ -885,29 +933,32 @@ rm -rf $RPM_BUILD_ROOT
 %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++
-%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
+%post  -p /sbin/ldconfig -n libgcc
+%postun        -p /sbin/ldconfig -n libgcc
+%post  -p /sbin/ldconfig -n libmudflap
+%postun        -p /sbin/ldconfig -n libmudflap
+%post  -p /sbin/ldconfig -n libgnat
+%postun        -p /sbin/ldconfig -n libgnat
+%post  -p /sbin/ldconfig -n libstdc++
+%postun        -p /sbin/ldconfig -n libstdc++
+%post  -p /sbin/ldconfig -n libgfortran
+%postun        -p /sbin/ldconfig -n libgfortran
+%post  -p /sbin/ldconfig -n libgcj
+%postun        -p /sbin/ldconfig -n libgcj
+%post  -p /sbin/ldconfig -n libffi
+%postun        -p /sbin/ldconfig -n libffi
+%post  -p /sbin/ldconfig -n libobjc
+%postun        -p /sbin/ldconfig -n libobjc
 
 %files -f gcc.lang
 %defattr(644,root,root,755)
-%doc ChangeLog.general MAINTAINERS NEWS bugs.html faq.html
+%doc ChangeLog.general MAINTAINERS NEWS
+# bugs.html faq.html
 %doc gcc/{ChangeLog,ONEWS,README.Portability}
+%dir %{_libdir}/gcc
+%dir %{_libdir}/gcc/*
 %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
@@ -916,12 +967,11 @@ rm -rf $RPM_BUILD_ROOT
 %attr(755,root,root) %{_bindir}/cc
 %attr(755,root,root) %{_bindir}/cpp
 
+%{_includedir}/ssp
+
 %{_mandir}/man1/cc.1*
 %{_mandir}/man1/cpp.1*
-%lang(ja) %{_mandir}/ja/man1/cpp.1*
 %{_mandir}/man1/gcc.1*
-%lang(fr) %{_mandir}/fr/man1/gcc.1*
-%lang(ja) %{_mandir}/ja/man1/gcc.1*
 %{_mandir}/man1/gcov.1*
 
 %{_infodir}/cpp*
@@ -930,40 +980,99 @@ rm -rf $RPM_BUILD_ROOT
 %attr(755,root,root) /lib/cpp
 
 %attr(755,root,root) %{_slibdir}/lib*.so
-%ifarch ia64
-%{_slibdir}/libunwind.a
+%{_libdir}/libssp.la
+%attr(755,root,root) %{_libdir}/libssp.a
+%attr(755,root,root) %{_libdir}/libssp.so
+%{_libdir}/libssp_nonshared.a
+%{_libdir}/libssp_nonshared.la
+%if %{with multilib}
+%dir %{_libdir}/gcc/*/*/32
+%{_libdir}/gcc/*/*/32/libgcov.a
+%{_libdir}/gcc/*/*/32/libgcc.a
+%{_libdir}/gcc/*/*/32/libgcc_eh.a
+%{_libdir}/gcc/*/*/32/libgcc_s.so
+%{_libdir32}/libssp.la
+%attr(755,root,root) %{_libdir32}/libssp.a
+%attr(755,root,root) %{_libdir32}/libssp.so
+%{_libdir32}/libssp_nonshared.a
+%{_libdir32}/libssp_nonshared.la
 %endif
 %{_libdir}/gcc/*/*/libgcov.a
 %{_libdir}/gcc/*/*/libgcc.a
 %{_libdir}/gcc/*/*/libgcc_eh.a
+%{_libdir}/gcc/*/*/libgcc_s.so
 %{_libdir}/gcc/*/*/specs
-%{_libdir}/gcc/*/*/crt*.o
 %if %{with multilib}
-%attr(755,root,root) %{_libdir}/gcc/*/*/libgcc_s*.so
-%{_libdir}/gcc/*/*/32/libgcc.a
-%{_libdir}/gcc/*/*/32/libgcc_eh.a
-%{_libdir}/gcc/*/*/32/libgcov.a
 %{_libdir}/gcc/*/*/32/crt*.o
 %endif
-%ifarch ppc
-%{_libdir}/gcc/*/*/ecrt*.o
-%{_libdir}/gcc/*/*/ncrt*.o
-%{_libdir}/gcc/*/*/nof
-%dir %{_libdir}/nof
-%endif
+%{_libdir}/gcc/*/*/crt*.o
 %attr(755,root,root) %{_libdir}/gcc/*/*/cc1
 %attr(755,root,root) %{_libdir}/gcc/*/*/collect2
 
 %{_libdir}/gcc/*/*/include/*.h
-%exclude %{_libdir}/gcc/*/*/include/g2c.h
 
 %files -n libgcc
 %defattr(644,root,root,755)
-%attr(755,root,root) %{_slibdir}*/lib*.so.*
 %if %{with multilib}
 %attr(755,root,root) %{_slibdir32}/lib*.so.*
 %endif
+%attr(755,root,root) %{_slibdir}/lib*.so.*
+
+%files -n libmudflap
+%defattr(644,root,root,755)
+%if %{with multilib}
+%attr(755,root,root) %{_libdir32}/libmudflap*.so.*.*.*
+%endif
+%attr(755,root,root) %{_libdir}/libmudflap*.so.*.*.*
+
+%files -n libmudflap-devel
+%defattr(644,root,root,755)
+%{_includedir}/mf-runtime.h
+%if %{with multilib}
+%{_libdir32}/libmudflap*.la
+%attr(755,root,root) %{_libdir32}/libmudflap*.so
+%endif
+%{_libdir}/libmudflap*.la
+%attr(755,root,root) %{_libdir}/libmudflap*.so
+
+%files -n libmudflap-static
+%defattr(644,root,root,755)
+%if %{with multilib}
+%{_libdir32}/libmudflap*.a
+%endif
+%{_libdir}/libmudflap*.a
+
+%if %{with ada}
+%files ada
+%defattr(644,root,root,755)
+%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
+%{_infodir}/gnat*
+
+%files -n libgnat
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/libgnarl*.so.1
+%attr(755,root,root) %{_libdir}/libgnat*.so.1
+
+%files -n libgnat-static
+%defattr(644,root,root,755)
+%{_libdir}/gcc/*/*/adalib/libgnarl.a
+%{_libdir}/gcc/*/*/adalib/libgnat.a
+%endif
 
+%if %{with cxx}
 %files c++
 %defattr(644,root,root,755)
 %doc gcc/cp/{ChangeLog,NEWS}
@@ -972,216 +1081,154 @@ rm -rf $RPM_BUILD_ROOT
 %attr(755,root,root) %{_bindir}/c++
 %attr(755,root,root) %{_bindir}/*-c++
 %attr(755,root,root) %{_libdir}/gcc/*/*/cc1plus
-%{_libdir}/libsupc++.la
-%{_libdir}/libsupc++.a
-%ifarch ppc
-%{_libdir}/nof/libsupc++.la
-%{_libdir}/nof/libsupc++.a
-%endif
 %if %{with multilib}
-%{_libdir32}/libsupc++.la
 %{_libdir32}/libsupc++.a
+%{_libdir32}/libsupc++.la
 %endif
+%{_libdir}/libsupc++.a
+%{_libdir}/libsupc++.la
 %{_mandir}/man1/g++.1*
-%lang(ja) %{_mandir}/ja/man1/g++.1*
 
 %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
 %if %{with multilib}
 %attr(755,root,root) %{_libdir32}/libstdc++.so.*.*.*
 %endif
+%attr(755,root,root) %{_libdir}/libstdc++.so.*.*.*
 
 %files -n libstdc++-devel
 %defattr(644,root,root,755)
 %doc libstdc++-v3/docs/html
 %dir %{_includedir}/c++
 %{_includedir}/c++/%{version}
+%if %{with java}
+%exclude %{_includedir}/c++/%{version}/java
+%exclude %{_includedir}/c++/%{version}/javax
+%exclude %{_includedir}/c++/%{version}/gcj
+%exclude %{_includedir}/c++/%{version}/gnu
+%endif
+%ifnarch sparc
 %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
 %if %{with multilib}
-%attr(755,root,root) %{_libdir32}/libstdc++.so
 %{_libdir32}/libstdc++.la
+%attr(755,root,root) %{_libdir32}/libstdc++.so
 %endif
+%{_libdir}/libstdc++.la
+%attr(755,root,root) %{_libdir}/libstdc++.so
 
 %files -n libstdc++-static
 %defattr(644,root,root,755)
-%{_libdir}/libstdc++.a
-%ifarch ppc
-%{_libdir}/nof/libstdc++.a
-%endif
 %if %{with multilib}
 %{_libdir32}/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
-%if %{with multilib}
-%attr(755,root,root) %{_libdir32}/libobjc.so
-%{_libdir32}/libobjc.la
-%endif
-%{_libdir}/gcc/*/*/include/objc
-
-%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
-%if %{with multilib}
-%attr(755,root,root) %{_libdir32}/libobjc.so.*.*.*
+%{_libdir}/libstdc++.a
 %endif
 
-%files -n libobjc-static
+%if %{with fortran}
+%files fortran
 %defattr(644,root,root,755)
-%{_libdir}/libobjc.a
-%ifarch ppc
-%{_libdir}/nof/libobjc.a
-%endif
+%doc gcc/fortran/ChangeLog
+%attr(755,root,root) %{_bindir}/g95
+%attr(755,root,root) %{_bindir}/gfortran
+%{_infodir}/gfortran*
+%attr(755,root,root) %{_libdir}/gcc/*/*/f951
 %if %{with multilib}
-%{_libdir32}/libobjc.a
-%endif
+%{_libdir32}/libgfortranbegin.a
+%{_libdir32}/libgfortranbegin.la
+%{_libdir32}/libgfortran.la
+%attr(755,root,root) %{_libdir32}/libgfortran.so
 %endif
-
-%files g77
+%{_libdir}/libgfortranbegin.a
+%{_libdir}/libgfortranbegin.la
+%{_libdir}/libgfortran.la
+%attr(755,root,root) %{_libdir}/libgfortran.so
+%{_mandir}/man1/g95.1*
+%{_mandir}/man1/gfortran.1*
+
+%files -n libgfortran
 %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/*/*/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
+%doc libgfortran/{AUTHORS,README,ChangeLog}
 %if %{with multilib}
-%{_libdir32}/libfrtbegin.a
-%{_libdir32}/libg2c.la
-%attr(755,root,root) %{_libdir32}/libg2c.so
+%attr(755,root,root) %{_libdir32}/libgfortran.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*
+%attr(755,root,root) %{_libdir}/libgfortran.so.*.*.*
 
-%files -n libg2c
+%files -n libgfortran-static
 %defattr(644,root,root,755)
-%doc libf2c/{ChangeLog,README,TODO}
-%attr(755,root,root) %{_libdir}/libg2c.so.*.*.*
-%ifarch ppc
-%attr(755,root,root) %{_libdir}/nof/libg2c.so.*.*.*
-%endif
 %if %{with multilib}
-%attr(755,root,root) %{_libdir32}/libg2c.so.*.*.*
-%endif
-
-%files -n libg2c-static
-%defattr(644,root,root,755)
-%{_libdir}/libg2c.a
-%ifarch ppc
-%{_libdir}/nof/libg2c.a
+%{_libdir32}/libgfortran.a
 %endif
-%if %{with multilib}
-%{_libdir32}/libg2c.a
+%{_libdir}/libgfortran.a
 %endif
 
 %if %{with java}
 %files java
 %defattr(644,root,root,755)
 %doc gcc/java/ChangeLog java-doc/*
+%attr(755,root,root) %{_bindir}/fastjar
 %attr(755,root,root) %{_bindir}/gcj*
-%attr(755,root,root) %{_bindir}/gij
+%attr(755,root,root) %{_bindir}/gjnih
+%attr(755,root,root) %{_bindir}/grepjar
+%attr(755,root,root) %{_bindir}/grmi*
 %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}/fastjar*
 %{_infodir}/gcj*
-%{_mandir}/man1/jcf-*
-%{_mandir}/man1/jv-*
-%{_mandir}/man1/gij*
+%{_mandir}/man1/fastjar*
 %{_mandir}/man1/gcj*
+%{_mandir}/man1/gjnih*
 %{_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*
+%{_mandir}/man1/grmi*
+%{_mandir}/man1/jcf-*
+%{_mandir}/man1/jv-*
 
 %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) %{_bindir}/gij
+%dir %{_libdir}/gcj-%{version}
+%{_libdir}/gcj-%{version}/classmap.db
 %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
+%attr(755,root,root) %{_libdir}/libgij.so.*.*.*
 %{_libdir}/logging.properties
+%{_javadir}/libgcj*.jar
+%{_mandir}/man1/gij*
 
 %files -n libgcj-devel
 %defattr(644,root,root,755)
-%{_includedir}/java
-%{_includedir}/javax
-%{_includedir}/gcj
-%{_includedir}/j*.h
-%{_includedir}/gnu/*
+%{_includedir}/c++/%{version}/java
+%{_includedir}/c++/%{version}/javax
+%{_includedir}/c++/%{version}/gcj
+%{_includedir}/c++/%{version}/gnu
 %{_libdir}/gcc/*/*/include/gcj
+%{_libdir}/gcc/*/*/include/jawt.h
+%{_libdir}/gcc/*/*/include/jawt_md.h
+%{_libdir}/gcc/*/*/include/jni.h
+%{_libdir}/gcc/*/*/include/jvmpi.h
 %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
+%{_libdir}/libgij.la
+%attr(755,root,root) %{_libdir}/libgij.so
 %{_pkgconfigdir}/libgcj.pc
 
 %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
+%{_libdir}/libgij.a
 
 %files -n libffi
 %defattr(644,root,root,755)
 %doc libffi/{ChangeLog,ChangeLog.libgcj,LICENSE,README}
-%attr(755,root,root) %{_libdir}/libffi-*.so
+%attr(755,root,root) %{_libdir}/libffi.so.*.*.*
 
 %files -n libffi-devel
 %defattr(644,root,root,755)
@@ -1195,33 +1242,38 @@ rm -rf $RPM_BUILD_ROOT
 %{_libdir}/libffi.a
 %endif
 
-%if %{with ada}
-%files ada
+%if %{with objc}
+%files objc
 %defattr(644,root,root,755)
-%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
+%doc gcc/objc/README
+%attr(755,root,root) %{_libdir}/gcc/*/*/cc1obj
+%if %{with multilib}
+%attr(755,root,root) %{_libdir32}/libobjc.so
+%{_libdir32}/libobjc.la
 %endif
-%{_datadir}/gnat
-%{_infodir}/gnat*
+%attr(755,root,root) %{_libdir}/libobjc.so
+%{_libdir}/libobjc.la
+%{_libdir}/gcc/*/*/include/objc
 
-%files -n libgnat
+%files -n libobjc
 %defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/libgnarl*.so.1
-%attr(755,root,root) %{_libdir}/libgnat*.so.1
+%doc libobjc/{ChangeLog,README*}
+%if %{with multilib}
+%attr(755,root,root) %{_libdir32}/libobjc.so.*.*.*
+%endif
+%attr(755,root,root) %{_libdir}/libobjc.so.*.*.*
 
-%files -n libgnat-static
+%files -n libobjc-static
 %defattr(644,root,root,755)
-%{_libdir}/gcc/*/*/adalib/libgnarl.a
-%{_libdir}/gcc/*/*/adalib/libgnat.a
+%if %{with multilib}
+%{_libdir32}/libobjc.a
+%endif
+%{_libdir}/libobjc.a
+%endif
+
+%if %{with objcxx}
+%files objc++
+%defattr(644,root,root,755)
+%doc gcc/objcp/ChangeLog
+%attr(755,root,root) %{_libdir}/gcc/*/*/cc1objplus
 %endif
This page took 0.241941 seconds and 4 git commands to generate.