#
# Conditional build:
-# _without_ada - build without ADA support
-# _without_java - build without Java support
-# _without_objc - build without objc support
-# _with_pp - build with ProPolice
-
+# _without_ada - build without ADA support
+# _without_java - build without Java support
+# _without_objc - build without objc support
+# _with_bootstrap - don't BR gcc(ada) (temporary for Ac upgrade bootstrap)
+# _with_pp - build with ProPolice
+#
%define DASHED_SNAP %{nil}
%define SNAP %(echo %{DASHED_SNAP} | sed -e "s#-##g")
-%define GCC_VERSION 3.3.1
+%define GCC_VERSION 3.3.2
%define KSI_VERSION 1.1.0.1567
-Summary: GNU C Compiler
-Summary(pl): Kompilator C GNU
-Summary(pt_BR): C Compilador GNU (GCC)
+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: %{GCC_VERSION}
-Release: 1.2
+Release: 0.3
Epoch: 5
License: GPL
Group: Development/Languages
Source0: ftp://gcc.gnu.org/pub/gcc/releases/gcc-%{GCC_VERSION}/%{name}-%{GCC_VERSION}.tar.bz2
-# Source0-md5: 1135a104e9fa36fdf7c663598fab5c40
+# Source0-md5: 65999f654102f5438ac8562d13a6eced
Source1: ftp://ftp.pld-linux.org/people/malekith/ksi/ksi-%{KSI_VERSION}.tar.gz
# Source1-md5: 66f07491b44f06928fd95b0e65bb8cd3
Source2: http://ep09.kernel.pl/~djrzulf/gcc33/%{name}-non-english-man-pages.tar.bz2
-# Source2-md5: 4736f3422ddfb808423b745629acc321
+# Source2-md5: 4736f3422ddfb808423b745629acc321
Patch0: %{name}-info.patch
Patch1: %{name}-paths.patch
Patch2: %{name}-nolocalefiles.patch
Patch3: %{name}-ada-link-new-libgnat.patch
+Patch4: %{name}-pr12965.patch
# -- stolen patches from RH --
Patch10: gcc32-ada-link.patch
Patch11: gcc32-boehm-gc-libs.patch
BuildRequires: binutils >= 2.14
BuildRequires: bison
BuildRequires: fileutils >= 4.0.41
-BuildRequires: gcc
-%{!?_without_ada:BuildRequires: gcc-ada}
+%{!?_without_ada:%{!?_with_bootstrap:BuildRequires: gcc(ada)}}
+%{!?_without_ada:BuildRequires: gcc-ada}
+BuildRequires: gettext-devel
BuildRequires: glibc-devel >= 2.2.5-20
BuildRequires: perl-devel
BuildRequires: texinfo >= 4.1
BuildRequires: zlib-devel
-BuildRequires: gettext-devel
Requires: binutils >= 2.14
Requires: cpp = %{epoch}:%{GCC_VERSION}
Requires: libgcc = %{epoch}:%{GCC_VERSION}
+%{!?_without_ada:Provides: gcc(ada)}
Conflicts: glibc-devel < 2.2.5-20
URL: http://gcc.gnu.org/
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
-%define _slibdir /lib
+%define _slibdir /%{_lib}
%ifarch sparc64
-%define _slibdir64 /lib64
%define _libdir /usr/lib
%define rpmcflags -O2 -mtune=ultrasparc
%endif
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 stablinego 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.
+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
%description -n libgcc
Shared gcc library.
+%description -n libgcc -l es
+Biblioteca compartida de gcc.
+
%description -n libgcc -l pl
Biblioteka dynamiczna gcc.
%package c++
Summary: C++ support for gcc
+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
Requires: gcc = %{epoch}:%{GCC_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.
+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-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.
+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++ 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.
+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
%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
Requires: gcc = %{epoch}:%{GCC_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.
+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-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.
+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 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.
+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
%package -n libobjc
Summary: Objective C Libraries
+Summary(es): Bibliotecas de Objective C
Summary(pl): Biblioteki Obiektowego C
Group: Libraries
Version: %{GCC_VERSION}
%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
Version: %{GCC_VERSION}
%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(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}:%{GCC_VERSION}
%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 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 -n libg2c
Summary: Fortran 77 Libraries
+Summary(es): Bibliotecas de Fortran 77
Summary(pl): Biblioteki Fortranu 77
Group: Libraries
Version: %{GCC_VERSION}
%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
Version: %{GCC_VERSION}
%description -n libg2c-static
Static Fortran 77 Libraries.
+%description -n libg2c -l es
+Bibliotecas estáticas de Fortran 77.
+
%description -n libg2c-static -l pl
Statyczne biblioteki Fortranu 77.
%package java
Summary: Java support for gcc
+Summary(es): Soporte de Java para gcc
Summary(pl): Obs³uga Javy dla gcc
Group: Development/Languages/Java
Version: %{GCC_VERSION}
and bytecode into native code. To use this you will also need the
libgcj package.
-%description -l pl java
+%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) zró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
Version: %{GCC_VERSION}
Obsoletes: jar
%description java-tools
-This package contains tools that are common for every Java(tm) implementation,
-such as rmic or jar.
+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.
+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
Version: %{GCC_VERSION}
%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
Version: %{GCC_VERSION}
%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
Version: %{GCC_VERSION}
%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
uygulamalarýnýn koþturulmasý için gerekli kitaplýklarý içerir.
%package -n libstdc++-devel
-Summary: Header files and documentatino for C++ development
+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++
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++.
+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
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++.
+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++
Group: Development/Libraries
Version: %{GCC_VERSION}
%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
Statycza 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
Version: %{GCC_VERSION}
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 przno¶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.
+Biblioteka libffi dostarcza przno¶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
Version: %{GCC_VERSION}
%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
Version: %{GCC_VERSION}
%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
Version: %{GCC_VERSION}
%description ada
This package adds experimental support for compiling Ada programs.
-%description -l pl ada
-Ten pakiet dodaje eksperymentalne wsparcie dla kompilacji programów
-w Adzie.
+%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
Version: %{GCC_VERSION}
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.
+Ten pakiet zawiera biblioteki potrzebne do uruchamiania programów
+napisanych w Adzie.
%package -n libgnat-static
Summary: Static Ada standard libraries
%package ksi
Summary: Ksi support for gcc
+Summary(es): Soporte de Ksi para gcc
Summary(pl): Obs³uga Ksi dla gcc
Version: %{GCC_VERSION}.%{KSI_VERSION}
Group: Development/Languages
Requires: gcc = %{epoch}:%{GCC_VERSION}
%description ksi
-This package adds experimental support for compiling Ksi programs
-into native code. You proabably don't need it, unless your are going
-to develop a compiler using Ksi as intermediate representation or
-you are using such compiler (like Gont).
+This package adds experimental support for compiling Ksi programs into
+native code. You proabably don't need it, unless your are going to
+develop a compiler using Ksi as intermediate representation or you are
+using such compiler (like Gont).
+
+%description ksi -l es
+Este paquete añade soporte experimental para compilar programas de Ksi
+en código nativo. Probablemento no lo necesitará, a menos que vaya a
+desarrollar un compilador que use Ksi como representación intermedia o
+use tal compilador (como Gont).
%description ksi -l pl
-Ten pakiet dodaje eksperymentalne wsparcie dla kompilacji programów
-w Ksi do kodu maszynowego. Prawdopodobnie nie potrzebujesz go, chyba
-¿e zamierzasz pisaæ kompilator u¿ywaj±cy Ksi jako reprezentacji
+Ten pakiet dodaje eksperymentalne wsparcie dla kompilacji programów w
+Ksi do kodu maszynowego. Prawdopodobnie nie potrzebujesz go, chyba ¿e
+zamierzasz pisaæ kompilator u¿ywaj±cy Ksi jako reprezentacji
po¶rednicz±cej, lub u¿ywasz takiego kompilatora (jak Gont).
%package -n cpp
Summary: The C Pre Processor
+Summary(es): El preprocesador de C
Summary(pl): Preprocesor C
Summary(pt_BR): Preprocessador para a linguagem C
Group: Development/Languages
originally came from.
%description -n cpp -l es
-Um preprocessador para a linguagem C.
+El preprocesador de C es un "procesador de macros" que es usado
+automáticamente por el compilador C para transformar su programa antes
+de que éste se actualmente compile. Se llama procesador de macros
+porque permite definir "macros", los que son abreviaciones concisas
+para construcciones más largas.
+
+El preprocesador C provee cuatro cualidadedes distintas que puede usar
+como le convenga:
+
+- Inclusión de ficheros de cabecera. Éstos son ficheros de
+ declaraciones que pueden incorporarse a su programa.
+- Expansión de macros. Puede definir "macros", los que son
+ abreviaciones para fragmentos arbitrarios de código C, y a lo largo
+ del programa el preprocesador sustituirá los macros con sus
+ definiciones.
+- Compilación condicional. Usando especiales directivas del preproceso
+ puede incluir o excluir partes del programa según varias condiciones.
+- Control de líneas. Si usa un programa para combinar o reorganizar el
+ código fuente en un fichero intermedio que luego es compilado, puede
+ usar control de líneas para informar el compilador de dónde origina
+ cada línea.
%description -n cpp -l pl
Przeprocesor C jest "makro procesorem" który jest automatycznie
mais complicadas.
O preprocessador C fornece quatro funcionalidades básicas: inclusão de
-arquivos de cabeçalho; expansão de macros; compilação condicional;
-e controle da numeração das linhas do programa.
+arquivos de cabeçalho; expansão de macros; compilação condicional; e
+controle da numeração das linhas do programa.
%prep
%setup -q -a1 -n %{name}-%{GCC_VERSION}
%patch1 -p1
%patch2 -p1
%patch3 -p1
+%patch4 -p1
%patch10 -p1
%patch11
CXXFLAGS="%{rpmcflags}" \
TEXCONFIG=false ../configure \
--prefix=%{_prefix} \
+ --libdir=%{_libdir} \
--infodir=%{_infodir} \
--mandir=%{_mandir} \
--enable-shared \
cd ..
+# dual archs
+%ifarch x86_64
+mv -f $RPM_BUILD_ROOT%{_libdir}/32/* $RPM_BUILD_ROOT%{_prefix}/lib
+rm -rf $RPM_BUILD_ROOT%{_libdir}/lib/32
+ln -s ../lib $RPM_BUILD_ROOT%{_libdir}/32
+ln -s ../lib $RPM_BUILD_ROOT/%{_lib}/32
+%endif
+
%if %{!?_without_java:1}%{?_without_java:0}
install -d java-doc
cp -f libjava/doc/cni.sgml libjava/READ* java-doc
for f in libstdc++.la libsupc++.la libg2c.la \
%{!?_without_java:libgcj.la lib-org-w3c-dom.la lib-org-xml-sax.la libffi.la} \
%{!?_without_objc:libobjc.la}; do
- perl -pi -e "s@^libdir='.*@libdir='/usr/lib'@" $RPM_BUILD_ROOT%{_libdir}/$f
+ perl -pi -e "s@^libdir='.*@libdir='%{_libdir}'@" $RPM_BUILD_ROOT%{_libdir}/$f
done
bzip2 -dc %{SOURCE2} | tar xf - -C $RPM_BUILD_ROOT%{_mandir}
%{_libdir}/gcc-lib/%{_target_cpu}*/*/include/*.h
%exclude %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/g2c.h
+%ifarch x86_64
+/%{_lib}/32
+%{_libdir}/32
+%{_libdir}/gcc-lib/%{_target_cpu}*/*/32
+%endif
+
%files -n libgcc
%defattr(644,root,root,755)
%attr(755,root,root) %{_slibdir}*/lib*.so.*
+%ifarch x86_64
+%attr(755,root,root) /lib/lib*.so.*
+%endif
%files c++
%defattr(644,root,root,755)
%attr(755,root,root) %{_bindir}/c++
%attr(755,root,root) %{_bindir}/%{_target_cpu}*-c++
%attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/cc1plus
-%{_libdir}*/libsupc++.la
+%{_prefix}/lib*/libsupc++.la
%ifarch ppc
%{_libdir}/nof/libsupc++.la
%{_libdir}/nof/libsupc++.a
%endif
-%{_libdir}*/libsupc++.a
+%{_prefix}/lib*/libsupc++.a
%{_mandir}/man1/g++.1*
%lang(ja) %{_mandir}/ja/man1/g++.1*
%files -n libstdc++ -f libstdc++.lang
%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}*/libstdc++.so.*.*.*
+%attr(755,root,root) %{_prefix}/lib*/libstdc++.so.*.*.*
%ifarch ppc
%attr(755,root,root) %{_libdir}/nof/libstdc++.so.*.*.*
%endif
%doc libstdc++-v3/docs/html
%dir %{_includedir}/c++
%{_includedir}/c++/%{GCC_VERSION}
-%attr(755,root,root) %{_libdir}*/libstdc++.so
-%{_libdir}*/libstdc++.la
+%attr(755,root,root) %{_prefix}/lib*/libstdc++.so
+%{_prefix}/lib*/libstdc++.la
%ifarch ppc
%attr(755,root,root) %{_libdir}/nof/libstdc++.so
%{_libdir}/nof/libstdc++.la
%files -n libstdc++-static
%defattr(644,root,root,755)
-%{_libdir}*/libstdc++.a
+%{_prefix}/lib*/libstdc++.a
%ifarch ppc
%{_libdir}/nof/libstdc++.a
%endif
%defattr(644,root,root,755)
%doc gcc/objc/READ*
%attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/cc1obj
-%attr(755,root,root) %{_libdir}*/libobjc.so
-%{_libdir}*/libobjc.la
+%attr(755,root,root) %{_prefix}/lib*/libobjc.so
+%{_prefix}/lib*/libobjc.la
%ifarch ppc
%attr(755,root,root) %{_libdir}/nof/libobjc.so
%{_libdir}/nof/libobjc.la
%files -n libobjc
%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}*/libobjc.so.*.*.*
+%attr(755,root,root) %{_prefix}/lib*/libobjc.so.*.*.*
%ifarch ppc
%attr(755,root,root) %{_libdir}/nof/libobjc.so.*.*.*
%endif
%files -n libobjc-static
%defattr(644,root,root,755)
-%{_libdir}*/libobjc.a
+%{_prefix}/lib*/libobjc.a
%ifarch ppc
%{_libdir}/nof/libobjc.a
%endif
%attr(755,root,root) %{_bindir}/f77
%{_infodir}/g77*
%attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/f771
-%{_libdir}*/libfrtbegin.a
-%{_libdir}*/libg2c.la
-%attr(755,root,root) %{_libdir}*/libg2c.so
+%{_prefix}/lib*/libfrtbegin.a
+%{_prefix}/lib*/libg2c.la
+%attr(755,root,root) %{_prefix}/lib*/libg2c.so
%ifarch ppc
%{_libdir}/nof/libfrtbegin.a
%{_libdir}/nof/libg2c.la
%files -n libg2c
%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}*/libg2c.so.*.*.*
+%attr(755,root,root) %{_prefix}/lib*/libg2c.so.*.*.*
%ifarch ppc
%attr(755,root,root) %{_libdir}/nof/libg2c.so.*.*.*
%endif
%files -n libg2c-static
%defattr(644,root,root,755)
-%{_libdir}*/libg2c.a
+%{_prefix}/lib*/libg2c.a
%ifarch ppc
%{_libdir}/nof/libg2c.a
%endif
%ifarch ppc
%attr(755,root,root) %{_libdir}/nof/lib*cj*.so.*
%endif
+%ifarch x86_64
+%attr(755,root,root) %{_prefix}/lib/lib*cj*.so.*.*.*
+%endif
%files -n libgcj-devel
%defattr(644,root,root,755)
%{_libdir}/nof/lib*cj*.la
%attr(755,root,root) %{_libdir}/nof/lib*cj*.so
%endif
+%ifarch x86_64
+%{_prefix}/lib/lib*cj*.la
+%attr(755,root,root) %{_prefix}/lib/lib*cj*.so
+%endif
+
%files -n libgcj-static
%defattr(644,root,root,755)
-%{_libdir}/lib*cj*.a
+%{_prefix}/lib*/lib*cj*.a
%{_libdir}/lib-org-*.a
%ifarch ppc
%{_libdir}/nof/lib*cj*.a
%files -n libffi
%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/libffi-*.so
+%attr(755,root,root) %{_prefix}/lib*/libffi-*.so
%files -n libffi-devel
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir}/libffi.so
-%{_libdir}/libffi.la
+%{_prefix}/lib*/libffi.la
%{_includedir}/ffi*
%files -n libffi-static
%defattr(644,root,root,755)
-%{_libdir}/libffi.a
+%{_prefix}/lib*/libffi.a
%endif
%if 0%{!?_without_ada:1}
%files -n cpp
%defattr(644,root,root,755)
-%attr(755,root,root) %{_slibdir}/cpp
+%attr(755,root,root) /lib/cpp
%attr(755,root,root) %{_bindir}/cpp
%{_mandir}/man1/cpp.1*
%lang(ja) %{_mandir}/ja/man1/cpp.1*