]> git.pld-linux.org Git - packages/gcc.git/blobdiff - gcc.spec
- massive attack, adding Source-md5
[packages/gcc.git] / gcc.spec
index 91bbe9ec1ba61fd3effe04465fe7229b59489d43..5fe36b7d7c48bd2053115a2ef146dfeb1ca0daa9 100644 (file)
--- a/gcc.spec
+++ b/gcc.spec
@@ -1,76 +1,53 @@
 #
 # Conditional build:
-# _without_ada - build without ADA support
+# _with_ada    - build with ADA support
 # _without_java        - build without Java support
-#
+# _without_objc        - build without objc support
+
 %define                DASHED_SNAP     %{nil}
 %define                SNAP            %(echo %{DASHED_SNAP} | sed -e "s#-##g")
-%define                GCC_VERSION     3.2.1
-%define                KSI_VERSION     pre55
-%define                EPOCH           5
+%define                GCC_VERSION     3.3
+%define                KSI_VERSION     1.1.0.1567
 
-Summary:       GNU Compiler Collection
-Summary(pl):   Kolekcja kompilatorów GNU
+Summary:       GNU C Compiler
+Summary(pl):   Kompilator C GNU
+Summary(pt_BR):        C Compilador GNU (GCC)
 Name:          gcc
 Version:       %{GCC_VERSION}
-Release:       2
-Epoch:         %{EPOCH}
+Release:       1
+Epoch:         5
 License:       GPL
 Group:         Development/Languages
 Source0:       ftp://gcc.gnu.org/pub/gcc/releases/gcc-%{GCC_VERSION}/%{name}-%{GCC_VERSION}.tar.bz2
 Source1:       ftp://ftp.pld.org.pl/people/malekith/ksi/ksi-%{KSI_VERSION}.tar.gz
+# Source1-md5: 66f07491b44f06928fd95b0e65bb8cd3
 Source2:       %{name}-non-english-man-pages.tar.bz2
-Patch0:                %{name}-slibdir.patch
+# Source2-md5: 4736f3422ddfb808423b745629acc321
+Patch0:                %{name}-info.patch
 Patch1:                %{name}-paths.patch
-Patch2:                %{name}-ada-no-addr2line.patch
-Patch3:                %{name}-ada-no-prefix.o.patch
-Patch4:                %{name}-nolocalefiles.patch
-
-Patch6:                %{name}-info.patch
+Patch2:                %{name}-nolocalefiles.patch
+Patch3:                %{name}-ada-link-new-libgnat.patch
 # -- stolen patches from RH --
 Patch10:       gcc32-ada-link.patch
-Patch11:       gcc32-attr-visibility.patch
-Patch12:       gcc32-attr-visibility2.patch
-Patch13:       gcc32-attr-visibility3.patch
-Patch14:       gcc32-attr-visibility4.patch
-Patch15:       gcc32-attr-visibility5.patch
-Patch16:       gcc32-boehm-gc-libs.patch
-Patch17:       gcc32-bogus-inline.patch
-Patch18:       gcc32-c++-nrv-test.patch
-Patch19:       gcc32-c++-pretty_function.patch
-Patch20:       gcc32-c++-tsubst-asm.patch
-Patch21:       gcc32-cfg-eh.patch
-Patch22:       gcc32-debug-pr7241.patch
-
-Patch24:       gcc32-duplicate-decl.patch
-Patch25:       gcc32-dwarf2-pr6381.patch
-Patch26:       gcc32-dwarf2-pr6436-test.patch
-Patch27:       gcc32-fde-merge-compat.patch
-Patch28:       gcc32-fold-const-associate.patch
-Patch29:       gcc32-hard-reg-sharing.patch
-Patch30:       gcc32-hard-reg-sharing2.patch
-Patch31:       gcc32-i386-default-momit-leaf-frame-pointer.patch
-Patch32:       gcc32-i386-memtest-test.patch
-Patch33:       gcc32-i386-no-default-momit-leaf-frame-pointer.patch
-Patch34:       gcc32-i386-pic-label-thunk.patch
-Patch35:       gcc32-i386-profile-olfp.patch
-Patch36:       gcc32-inline-label.patch
-Patch37:       gcc32-java-no-rpath.patch
-Patch38:       gcc32-pr6842.patch
-Patch39:       gcc32-sparc-sll1.patch
-Patch40:       gcc32-test-rh65771.patch
-Patch41:       gcc32-test-rotate.patch
-Patch42:       gcc32-tls-dwarf2.patch
-Patch43:       gcc32-tls.patch
-Patch44:       gcc32-tls2.patch
-Patch45:       gcc32-tls3.patch
-Patch46:       gcc32-tls4.patch
-Patch47:       gcc32-tls5.patch
+Patch11:       gcc32-boehm-gc-libs.patch
+Patch12:       gcc32-bogus-inline.patch
+Patch13:       gcc32-c++-nrv-test.patch
+Patch14:       gcc32-c++-tsubst-asm.patch
+Patch15:       gcc32-debug-pr7241.patch
+Patch16:       gcc32-duplicate-decl.patch
+Patch17:       gcc32-dwarf2-pr6381.patch
+Patch18:       gcc32-dwarf2-pr6436-test.patch
+Patch19:       gcc32-fde-merge-compat.patch
+Patch20:       gcc32-i386-memtest-test.patch
+Patch21:       gcc32-inline-label.patch
+Patch22:       gcc32-java-no-rpath.patch
+Patch23:       gcc32-test-rh65771.patch
+Patch24:       gcc32-test-rotate.patch
 BuildRequires: autoconf
 BuildRequires: bison
 BuildRequires: fileutils >= 4.0.41
 BuildRequires: gcc
-%{!?_without_ada:BuildRequires:        gcc-ada}
+%{?_with_ada:BuildRequires:    gcc-ada}
 BuildRequires: glibc-devel >= 2.2.5-20
 BuildRequires: perl-devel
 BuildRequires: texinfo >= 4.1
@@ -93,11 +70,17 @@ necessary for a high-performance and stable development environment.
 Kompilator, posiadaj±cy du¿e mo¿liwo¶ci optymalizacyjne niezbêdne do
 wyprodukowania szybkiego i stablinego kodu wynikowego.
 
+%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(pl):   Biblioteka gcc
+Summary(pt_BR):        Biblioteca runtime para o GCC
 Group:         Libraries
-Version:        %{GCC_VERSION}
+Version:       %{GCC_VERSION}
+Obsoletes:     libgcc1
 
 %description -n libgcc
 Shared gcc library.
@@ -105,9 +88,13 @@ Shared gcc library.
 %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(pl):   Obs³uga C++ dla gcc
+Summary(pt_BR):        Suporte C++ para o gcc
 Group:         Development/Languages
 Obsoletes:     egcc-c++
 Obsoletes:     egcs-c++
@@ -136,6 +123,9 @@ Ten pakiet dodaje obs
 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
@@ -188,6 +178,7 @@ Summary:    Objective C Libraries
 Summary(pl):   Biblioteki Obiektowego C
 Group:         Libraries
 Version:       %{GCC_VERSION}
+Obsoletes:     libobjc1
 
 %description -n libobjc
 Objective C Libraries.
@@ -211,7 +202,8 @@ Statyczne biblioteki Obiektowego C.
 %package g77
 Summary:       Fortran 77 support for gcc
 Summary(pl):   Obs³uga Fortranu 77 dla gcc
-Group:         Development/Languages
+Summary(pt_BR):        Suporte Fortran 77 para o GCC
+Group:         Development/Languages/Fortran
 Version:       %{GCC_VERSION}
 Obsoletes:     egcs-g77
 Requires:      libg2c = %{GCC_VERSION}
@@ -224,11 +216,14 @@ GNU compiler.
 Ten pakiet dodaje obs³ugê Fortranu 77 do kompilatora gcc. Jest
 potrzebny do kompilowania programów pisanych w jêzyku Fortran 77.
 
+%description g77 -l pt_BR
+Suporte Fortran 77 para o GCC.
+
 %package -n libg2c
 Summary:       Fortran 77 Libraries
 Summary(pl):   Biblioteki Fortranu 77
 Group:         Libraries
-Version:        %{GCC_VERSION}
+Version:       %{GCC_VERSION}
 
 %description -n libg2c
 Fortran 77 Libraries.
@@ -240,7 +235,7 @@ Biblioteki Fortranu 77.
 Summary:       Static Fortran 77 Libraries
 Summary(pl):   Statyczne Biblioteki Fortranu 77
 Group:         Development/Libraries
-Version:        %{GCC_VERSION}
+Version:       %{GCC_VERSION}
 Requires:      libg2c = %{GCC_VERSION}
 
 %description -n libg2c-static
@@ -252,14 +247,13 @@ Statyczne biblioteki Fortranu 77.
 %package java
 Summary:       Java support for gcc
 Summary(pl):   Obs³uga Javy dla gcc
-Group:         Development/Languages
-Version:        %{GCC_VERSION}
+Group:         Development/Languages/Java
+Version:       %{GCC_VERSION}
 Requires:      %{name} = %{version}
 Requires:      libgcj >= 3.0.0
 Requires:      libgcj-devel >= 3.0.0
+Requires:      java-shared
 Provides:      gcj = %{epoch}:%{GCC_VERSION}-%{release}
-Provides:      jar = %{epoch}:%{GCC_VERSION}-%{release}
-Obsoletes:     fastjar
 
 %description java
 This package adds experimental support for compiling Java(tm) programs
@@ -271,12 +265,32 @@ Wsparcie dla kompilowania program
 do natywnego kodu. Dodatkowo wymagany jest pakiet libgcj, aby mo¿na
 by³o przeprowadziæ kompilacjê.
 
+%package java-tools
+Summary:       Shared java tools
+Summary(pl):   Wspó³dzielone narzêdzia javy
+Group:         Development/Languages/Java
+Version:       %{GCC_VERSION}
+Provides:      jar = %{epoch}:%{GCC_VERSION}-%{release}
+Provides:      java-shared
+Obsoletes:     fastjar
+Obsoletes:     java-shared
+Obsoletes:     jar
+
+%description java-tools
+This package contains tools that are common for every Java(tm) implementation,
+such as rmic or 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(pl):   Biblioteki Klas Javy
 Group:         Libraries
 Version:       %{GCC_VERSION}
 Requires:      zlib
+Obsoletes:     libgcj3
 
 %description -n libgcj
 Java Class Libraries.
@@ -291,6 +305,7 @@ Group:              Development/Libraries
 Version:       %{GCC_VERSION}
 Requires:      libgcj = %{GCC_VERSION}
 Requires:      %{name}-java
+Obsoletes:     libgcj3-devel
 
 %description -n libgcj-devel
 Development files for Java Class Libraries.
@@ -315,9 +330,11 @@ Statyczne Biblioteki Klas Javy.
 %package -n libstdc++
 Summary:       GNU c++ library
 Summary(pl):   Biblioteki GNU C++
+Summary(pt_BR):        Biblioteca C++ GNU
 Group:         Libraries
 Version:       %{GCC_VERSION}
 Obsoletes:     libg++
+Obsoletes:     libstdc++3
 
 %description -n libstdc++
 This is the GNU implementation of the standard C++ libraries, along
@@ -329,6 +346,11 @@ 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
@@ -339,6 +361,10 @@ Pakiet ten zawiera biblioteki b
 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.
@@ -348,23 +374,34 @@ Summary:  Header files and documentatino for C++ development
 Summary(de):   Header-Dateien zur Entwicklung mit 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
 Group:         Development/Libraries
 Version:       %{GCC_VERSION}
 Requires:      libstdc++ = %{GCC_VERSION}
-Requires:      %{name}-c++
+Requires:      %{name}-c++ = %{GCC_VERSION}
 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(pl):   Statyczna biblioteka standardowa C++
@@ -378,11 +415,54 @@ Static C++ standard library.
 %description -n libstdc++-static -l pl
 Statycza biblioteka standardowa C++.
 
+%package -n libffi
+Summary:       Foreign Function Interface library
+Summary(pl):   Biblioteka zewnêtrznych wywo³añ funkcji
+Group:         Libraries
+Version:       %{GCC_VERSION}
+
+%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 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.
+
+%package -n libffi-devel
+Summary:       Development files for Foreign Function Interface library
+Summary(pl):   Pliki nag³ówkowe dla libffi
+Group:         Development/Libraries
+Version:       %{GCC_VERSION}
+Requires:      libffi = %{GCC_VERSION}
+
+%description -n libffi-devel
+Development files for Foreign Function Interface library.
+
+%description -n libffi-devel -l pl
+Pliki nag³ówkowe dla libffi.
+
+%package -n libffi-static
+Summary:       Static Foreign Function Interface library
+Summary(pl):   Statyczna biblioteka libffi
+Group:         Development/Libraries
+Version:       %{GCC_VERSION}
+Requires:      libffi-devel = %{GCC_VERSION}
+
+%description -n libffi-static
+Static Foreign Function Interface library.
+
+%description -n libffi-static -l pl
+Statyczna biblioteka libffi.
+
 %package ada
 Summary:       Ada support for gcc
 Summary(pl):   Obs³uga Ady do gcc
 Group:         Development/Languages
-Version:        %{GCC_VERSION}
+Version:       %{GCC_VERSION}
 Requires:      libgnat = %{GCC_VERSION}
 Requires:      gcc = %{GCC_VERSION}
 Obsoletes:     gcc-gnat
@@ -399,8 +479,9 @@ w Adzie.
 Summary:       Ada standard libraries
 Summary(pl):   Biblioteki standardowe dla Ady
 Group:         Libraries
-Version:        %{GCC_VERSION}
+Version:       %{GCC_VERSION}
 Obsoletes:     gnat
+Obsoletes:     libgnat1
 
 %description -n libgnat
 This package contains shared libraries needed to run programs written
@@ -414,7 +495,7 @@ w Adzie.
 Summary:       Static Ada standard libraries
 Summary(pl):   Statyczne biblioteki standardowe dla Ady
 Group:         Libraries
-Version:        %{GCC_VERSION}
+Version:       %{GCC_VERSION}
 Obsoletes:     gnat-static
 
 %description -n libgnat-static
@@ -446,6 +527,7 @@ po
 %package -n cpp
 Summary:       The C Pre Processor
 Summary(pl):   Preprocesor C
+Summary(pt_BR):        Preprocessador para a linguagem C
 Group:         Development/Languages
 Version:       %{GCC_VERSION}
 Obsoletes:     egcs-cpp
@@ -473,6 +555,9 @@ as you see fit:
   line control to inform the compiler of where each source line
   originally came from.
 
+%description -n cpp -l es
+Um preprocessador para a linguagem C.
+
 %description -n cpp -l pl
 Przeprocesor C jest "makro procesorem" który jest automatycznie
 u¿ywany przez kompilator C do obróbki kompilowanego programu przed
@@ -495,6 +580,17 @@ Preprocesor C umo
   s± zapamiêtywane informacje o tym, której linii pliku ¼ród³owego
   odpowiada fragment pliku wynikowego.
 
+%description  -n cpp -l pt_BR
+O preprocessador C é um "processador de macros", que é utilizado pelo
+compilador C para fazer algumas modificações no seu programa, antes da
+compilação em si. Ele é chamado de "processador de macros" porque
+permite a você definir "macros", que são abreviações para construções
+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.
+
 %prep
 %setup -q -a1 -n %{name}-%{GCC_VERSION}
 mv ksi-%{KSI_VERSION} gcc/ksi
@@ -503,14 +599,14 @@ mv ksi-%{KSI_VERSION} gcc/ksi
 %patch1 -p1
 %patch2 -p1
 %patch3 -p1
-%patch4 -p1
 
-%patch10
-%patch11
-%patch12
+%patch10 -p1
+#%patch11
+#%patch12
 %patch13
 %patch14
 %patch15
+
 %patch16
 %patch17
 %patch18
@@ -518,35 +614,12 @@ mv ksi-%{KSI_VERSION} gcc/ksi
 %patch20
 %patch21
 %patch22
-
+%patch23
 %patch24
-%patch25
-%patch26
-%patch27
-%patch28
-%patch29
-%patch30
-%patch31
-%patch32
-%patch33
-%patch34
-%patch35
-%patch36
-%patch37
-%patch38
-%patch39
-%patch40
-%patch41
-%patch42
-%patch43
-%patch44
-%patch45
-%patch46
-%patch47
-
-%patch6 -p1
-
-perl -p -i -e 's/";/ (PLD Linux)";/' gcc/version.c
+
+# because we distribute modified version of gcc...
+perl -pi -e 's/(version.*)";/$1 (PLD Linux)";/' gcc/version.c
+perl -pi -e 's@(bug_report_url.*<URL:).*";@$1http://bugs.pld.org.pl/>";@' gcc/version.c
 
 %build
 # cd gcc && autoconf; cd ..
@@ -562,7 +635,7 @@ TEXCONFIG=false ../configure \
        --enable-shared \
        --enable-threads=posix \
        --enable-__cxa_atexit \
-        --enable-languages="c,c++,f77,gcov,objc,ksi%{!?_without_ada:,ada}%{!?_without_java:,java}" \
+       --enable-languages="c,c++,f77%{?!_without_objc:,objc}%{?_with_ada:,ada}%{!?_without_java:,java},ksi" \
        --enable-c99 \
        --enable-long-long \
        --enable-multilib \
@@ -577,7 +650,7 @@ TEXCONFIG=false ../configure \
 PATH=$PATH:/sbin:%{_sbindir}
 
 # this dirty hack is relict of setting, where objdir is subdir of srcdir
-%if %{!?_without_ada:1}%{?_without_ada:0}
+%if 0%{?_with_ada:1}
 sed -e 's/srcdir=\$(fsrcdir)/srcdir=\$(fsrcdir) VPATH=\$(fsrcdir)/' \
        gcc/ada/Makefile > makefile.tmp
 mv -f makefile.tmp gcc/ada/Makefile
@@ -589,14 +662,11 @@ cd ..
        mandir=%{_mandir} \
        infodir=%{_infodir}
 
-%if %{!?_without_ada:1}%{?_without_ada:0}
+%if 0%{?_with_ada:1}
 %{__make} -C obj-%{_target_platform}/gcc gnatlib gnattools gnatlib-shared \
        LDFLAGS_FOR_TARGET="%{rpmldflags}" \
        mandir=%{_mandir} \
        infodir=%{_infodir}
-
-# make Gnat Reference Manual
-%{__make} -C obj-%{_target_platform}/gcc/ada doc
 %endif
 
 %install
@@ -607,54 +677,68 @@ 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} \
-       slibdir=$RPM_BUILD_ROOT/lib
+       DESTDIR=$RPM_BUILD_ROOT
 
 ln -sf gcc $RPM_BUILD_ROOT%{_bindir}/cc
-echo .so gcc.1 > $RPM_BUILD_ROOT%{_mandir}/man1/cc.1
+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
+echo ".so g77.1" > $RPM_BUILD_ROOT%{_mandir}/man1/f77.1
 
-%if %{!?_without_ada:1}%{?_without_ada:0}
+%if 0%{?_with_ada:1}
 # move ada shared libraries to proper place...
-mv $RPM_BUILD_ROOT%{_libdir}/gcc-lib/%{_target_cpu}*/*/adalib/*-*so.1 \
-       $RPM_BUILD_ROOT%{_libdir}
-rm -f $RPM_BUILD_ROOT%{_libdir}/gcc-lib/%{_target_cpu}*/*/adalib/*.so.1
-(cd $RPM_BUILD_ROOT%{_libdir} && \
- ln -s libgnat-*so.1 libgnat.so.1   && ln -s libgnat-*so.1 libgnat.so && \
- ln -s libgnarl-*so.1 libgnarl.so.1 && ln -s libgnarl-*so.1 libgnarl.so)
+mv $RPM_BUILD_ROOT%{_libdir}/gcc-lib/%{_target_cpu}*/*/adalib/*.so.1 \
+       $RPM_BUILD_ROOT%{_libdir}/
+# check if symlink to be made is valid
+test -f $RPM_BUILD_ROOT%{_libdir}/libgnat-3.15.so.1
+ln -sf libgnat-3.15.so.1 $RPM_BUILD_ROOT%{_libdir}/libgnat-3.15.so
+ln -sf libgnarl-3.15.so.1 $RPM_BUILD_ROOT%{_libdir}/libgnarl-3.15.so
+ln -sf libgnat-3.15.so $RPM_BUILD_ROOT%{_libdir}/libgnat.so
+ln -sf libgnarl-3.15.so $RPM_BUILD_ROOT%{_libdir}/libgnarl.so
 %endif
 
 ln -sf %{_bindir}/cpp $RPM_BUILD_ROOT/lib/cpp
 
 cd ..
 
-%if %{!?_without_ada:1}%{?_without_ada:0}
-install obj-%{_target_platform}/gcc/ada/gnat_rm.info* $RPM_BUILD_ROOT%{_infodir}
-install obj-%{_target_platform}/gcc/ada/gnat_ug_unx.info* $RPM_BUILD_ROOT%{_infodir}
-%endif
-
 %if %{!?_without_java:1}%{?_without_java:0}
 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 %{?!_without_objc:1}0
 cp -f libobjc/README gcc/objc/README.libobjc
 %endif
 
 # avoid -L poisoning in *.la - there should be only -L%{_libdir}/gcc-lib/*/%{version}
-for f in libstdc++.la %{!?_without_java:libgcj.la} ; do
+for f in libstdc++.la libsupc++.la %{!?_without_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 \
+       %{!?_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
+done
 
 bzip2 -dc %{SOURCE2} | 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-lib/%{_target_cpu}*/*/)
+mkdir $gccdir/tmp
+# we have to save these however
+mv -f $gccdir/include/{%{?!_without_objc:objc,}g2c.h,syslimits.h%{?!_without_java:,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\+\+
 
@@ -703,6 +787,8 @@ rm -rf $RPM_BUILD_ROOT
 %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 %{name}.lang
 %defattr(644,root,root,755)
@@ -724,6 +810,7 @@ rm -rf $RPM_BUILD_ROOT
 %lang(ja) %{_mandir}/ja/man1/gcc.1*
 %{_infodir}/gcc*
 
+%attr(755,root,root) %{_slibdir}/lib*.so
 %{_libdir}/gcc-lib/%{_target_cpu}*/*/libgcc.a
 %{_libdir}/gcc-lib/%{_target_cpu}*/*/libgcc_eh.a
 %{_libdir}/gcc-lib/%{_target_cpu}*/*/specs
@@ -737,26 +824,12 @@ rm -rf $RPM_BUILD_ROOT
 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/cc1
 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/collect2
 
-%{_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/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/varargs.h
-%ifarch %{ix86}
-%{_libdir}/gcc-lib/%{_target_cpu}*/*/include/mmintrin.h
-%{_libdir}/gcc-lib/%{_target_cpu}*/*/include/xmmintrin.h
-%endif
-%ifarch ppc
-%{_libdir}/gcc-lib/%{_target_cpu}*/*/include/altivec.h
-%{_libdir}/gcc-lib/%{_target_cpu}*/*/include/ppc-asm.h
-%endif
+%{_libdir}/gcc-lib/%{_target_cpu}*/*/include/*.h
+%exclude %{_libdir}/gcc-lib/%{_target_cpu}*/*/include/g2c.h
 
 %files -n libgcc
 %defattr(644,root,root,755)
-%attr(755,root,root) %{_slibdir}/lib*.so*
+%attr(755,root,root) %{_slibdir}/lib*.so.*
 
 %files c++
 %defattr(644,root,root,755)
@@ -764,7 +837,6 @@ rm -rf $RPM_BUILD_ROOT
 %attr(755,root,root) %{_bindir}/%{_target_cpu}*-g++
 %attr(755,root,root) %{_bindir}/c++
 %attr(755,root,root) %{_bindir}/%{_target_cpu}*-c++
-%attr(755,root,root) %{_bindir}/c++filt
 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/cc1plus
 %{_libdir}/libsupc++.la
 %ifarch ppc
@@ -773,7 +845,6 @@ rm -rf $RPM_BUILD_ROOT
 %endif
 %{_libdir}/libsupc++.a
 %{_mandir}/man1/g++.1*
-%lang(es) %{_mandir}/es/man1/c++filt.1*
 %lang(ja) %{_mandir}/ja/man1/g++.1*
 
 %files -n libstdc++ -f libstdc++.lang
@@ -802,6 +873,7 @@ rm -rf $RPM_BUILD_ROOT
 %{_libdir}/nof/libstdc++.a
 %endif
 
+%if %{?!_without_objc:1}0
 %files objc
 %defattr(644,root,root,755)
 %doc gcc/objc/READ*
@@ -827,6 +899,7 @@ rm -rf $RPM_BUILD_ROOT
 %ifarch ppc
 %{_libdir}/nof/libobjc.a
 %endif
+%endif
 
 %files g77
 %defattr(644,root,root,755)
@@ -870,9 +943,8 @@ rm -rf $RPM_BUILD_ROOT
 %attr(755,root,root) %{_bindir}/gij
 %attr(755,root,root) %{_bindir}/jcf-dump
 %attr(755,root,root) %{_bindir}/jv-*
-%attr(755,root,root) %{_bindir}/rmi*
-%attr(755,root,root) %{_bindir}/jar
 %attr(755,root,root) %{_bindir}/grepjar
+%attr(755,root,root) %{_bindir}/%{_target_cpu}*-gcj
 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/jc1
 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/jvgenmain
 %{_infodir}/gcj*
@@ -880,12 +952,21 @@ rm -rf $RPM_BUILD_ROOT
 %{_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*
 
 %files -n libgcj
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_bindir}/addr2name.awk
-%attr(755,root,root) %{_libdir}/lib*cj*.so.*
+%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
@@ -894,7 +975,7 @@ rm -rf $RPM_BUILD_ROOT
 %defattr(644,root,root,755)
 %{_includedir}/java
 %{_includedir}/javax
-%{_includedir}/org
+#%%{_includedir}/org
 %{_includedir}/gcj
 %{_includedir}/j*.h
 %{_includedir}/gnu/*
@@ -906,8 +987,9 @@ rm -rf $RPM_BUILD_ROOT
 %{_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.spec
 %{_libdir}/nof/lib*cj*.la
 %attr(755,root,root) %{_libdir}/nof/lib*cj*.so
 %endif
@@ -915,12 +997,27 @@ rm -rf $RPM_BUILD_ROOT
 %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
+
+%files -n libffi
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/libffi-*.so
+
+%files -n libffi-devel
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/libffi.so
+%{_libdir}/libffi.la
+%{_includedir}/ffi*
+
+%files -n libffi-static
+%defattr(644,root,root,755)
+%{_libdir}/libffi.a
 %endif
 
-%if %{!?_without_ada:1}%{?_without_ada:0}
+%if 0%{?_with_ada:1}
 %files ada
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/gnat1
@@ -933,12 +1030,12 @@ rm -rf $RPM_BUILD_ROOT
 %{_libdir}/gcc-lib/%{_target_cpu}*/*/adalib/Makefile.adalib
 %attr(755,root,root) %{_bindir}/gnat*
 %{_infodir}/gnat*
-%attr(755,root,root) %{_libdir}/libgnat.so*
-%attr(755,root,root) %{_libdir}/libgnarl.so*
+%attr(755,root,root) %{_libdir}/libgnat*.so
+%attr(755,root,root) %{_libdir}/libgnarl*.so
 
 %files -n libgnat
 %defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/libgna*-*so.1
+%attr(755,root,root) %{_libdir}/libgna*.so.1
 
 %files -n libgnat-static
 %defattr(644,root,root,755)
@@ -955,8 +1052,6 @@ rm -rf $RPM_BUILD_ROOT
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_slibdir}/cpp
 %attr(755,root,root) %{_bindir}/cpp
-%attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/cpp0
-%attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/tradcpp0
 %{_mandir}/man1/cpp.1*
 %lang(ja) %{_mandir}/ja/man1/cpp.1*
 %{_infodir}/cpp*
This page took 0.06156 seconds and 4 git commands to generate.