]> git.pld-linux.org Git - packages/gcc.git/blobdiff - gcc.spec
- added temporary hack for alpha
[packages/gcc.git] / gcc.spec
index 095f0051a6443eecd9a7e555edb2be12d614b884..9c74f3da4e88d80f7ee400e328cdf966d161736a 100644 (file)
--- a/gcc.spec
+++ b/gcc.spec
@@ -1,37 +1,38 @@
 #
 # Conditional build:
-# _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
+%bcond_without ada             # build without ADA support
+%bcond_without java            # build without Java support
+%bcond_without objc            # build without objc support
+%bcond_with    bootstrap       # don't BR gcc(ada) (temporary for Ac upgrade bootstrap)
 #
 %define                DASHED_SNAP     %{nil}
 %define                SNAP            %(echo %{DASHED_SNAP} | sed -e "s#-##g")
-%define                GCC_VERSION     3.3.2
+%define                GCC_VERSION     3.3.4
 %define                KSI_VERSION     1.1.0.1567
 
 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(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:       0.4
+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
-# Source0-md5: 65999f654102f5438ac8562d13a6eced
+# Source0-md5: a1c267b34f05c8660b24251865614d8b
 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:       http://ep09.pld-linux.org/~djrzulf/gcc33/%{name}-non-english-man-pages.tar.bz2
 # 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
+Patch4:                %{name}-nodebug.patch
+Patch5:                %{name}-cse-find_best_addr.patch
+Patch6:                %{name}-alpha-regno-mode.patch
 # -- stolen patches from RH --
 Patch10:       gcc32-ada-link.patch
 Patch11:       gcc32-boehm-gc-libs.patch
@@ -48,23 +49,22 @@ Patch21:    gcc32-inline-label.patch
 Patch22:       gcc32-java-no-rpath.patch
 Patch23:       gcc32-test-rh65771.patch
 Patch24:       gcc32-test-rotate.patch
-Patch25:       %{name}-3.3.1-propolice.patch
 BuildRequires: autoconf
 BuildRequires: automake
-BuildRequires: binutils >= 2.14
+BuildRequires: binutils >= 2.15.90.0.3
 BuildRequires: bison
 BuildRequires: fileutils >= 4.0.41
-%{!?_without_ada:%{!?_with_bootstrap:BuildRequires:    gcc(ada)}}
-%{!?_without_ada:BuildRequires: gcc-ada}
+%{?with_ada:%{!?with_bootstrap:BuildRequires:  gcc(ada)}}
+%{?with_ada:BuildRequires: gcc-ada}
 BuildRequires: gettext-devel
 BuildRequires: glibc-devel >= 2.2.5-20
 BuildRequires: perl-devel
 BuildRequires: texinfo >= 4.1
 BuildRequires: zlib-devel
-Requires:      binutils >= 2.14
+Requires:      binutils >= 2.15.90.0.3
 Requires:      cpp = %{epoch}:%{GCC_VERSION}
 Requires:      libgcc = %{epoch}:%{GCC_VERSION}
-%{!?_without_ada:Provides: gcc(ada)}
+%{?with_ada:Provides: gcc(ada)}
 Conflicts:     glibc-devel < 2.2.5-20
 URL:           http://gcc.gnu.org/
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
@@ -133,9 +133,9 @@ 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:      %{name} = %{epoch}:%{GCC_VERSION}-%{release}
 Obsoletes:     egcc-c++
 Obsoletes:     egcs-c++
-Requires:      gcc = %{epoch}:%{GCC_VERSION}
 
 %description c++
 This package adds C++ support to the GNU Compiler Collection. It
@@ -183,10 +183,10 @@ 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}:%{GCC_VERSION}-%{release}
+Requires:      libobjc = %{epoch}:%{GCC_VERSION}-%{release}
 Obsoletes:     egcc-objc
 Obsoletes:     egcs-objc
-Requires:      libobjc = %{epoch}:%{GCC_VERSION}
-Requires:      gcc = %{epoch}:%{GCC_VERSION}
 
 %description objc
 This package adds Objective C support to the GNU Compiler Collection.
@@ -248,7 +248,7 @@ Summary(es):        Bibliotecas est
 Summary(pl):   Statyczne Biblioteki Obiektowego C
 Group:         Development/Libraries
 Version:       %{GCC_VERSION}
-Requires:      libobjc = %{epoch}:%{GCC_VERSION}
+Requires:      libobjc = %{epoch}:%{GCC_VERSION}-%{release}
 
 %description -n libobjc-static
 Static Objective C Libraries.
@@ -266,8 +266,9 @@ Summary(pl):        Obs
 Summary(pt_BR):        Suporte Fortran 77 para o GCC
 Group:         Development/Languages/Fortran
 Version:       %{GCC_VERSION}
+Requires:      %{name} = %{epoch}:%{GCC_VERSION}-%{release}
+Requires:      libg2c = %{epoch}:%{GCC_VERSION}-%{release}
 Obsoletes:     egcs-g77
-Requires:      libg2c = %{epoch}:%{GCC_VERSION}
 
 %description g77
 This package adds support for compiling Fortran 77 programs with the
@@ -306,7 +307,7 @@ Summary(es):        Bibliotecas est
 Summary(pl):   Statyczne Biblioteki Fortranu 77
 Group:         Development/Libraries
 Version:       %{GCC_VERSION}
-Requires:      libg2c = %{epoch}:%{GCC_VERSION}
+Requires:      libg2c = %{epoch}:%{GCC_VERSION}-%{release}
 
 %description -n libg2c-static
 Static Fortran 77 Libraries.
@@ -323,9 +324,8 @@ Summary(es):        Soporte de Java para gcc
 Summary(pl):   Obs³uga Javy dla gcc
 Group:         Development/Languages/Java
 Version:       %{GCC_VERSION}
-Requires:      %{name} = %{epoch}:%{version}
-Requires:      libgcj >= 3.0.0
-Requires:      libgcj-devel >= 3.0.0
+Requires:      %{name} = %{epoch}:%{GCC_VERSION}-%{release}
+Requires:      libgcj-devel = %{epoch}:%{GCC_VERSION}-%{release}
 Requires:      java-shared
 Provides:      gcj = %{epoch}:%{GCC_VERSION}-%{release}
 
@@ -353,8 +353,8 @@ Version:    %{GCC_VERSION}
 Provides:      jar = %{epoch}:%{GCC_VERSION}-%{release}
 Provides:      java-shared
 Obsoletes:     fastjar
-Obsoletes:     java-shared
 Obsoletes:     jar
+Obsoletes:     java-shared
 
 %description java-tools
 This package contains tools that are common for every Java(tm)
@@ -392,8 +392,8 @@ 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}
-Requires:      libgcj = %{epoch}:%{GCC_VERSION}
-Requires:      %{name}-java
+Requires:      %{name}-java = %{epoch}:%{GCC_VERSION}-%{release}
+Requires:      libgcj = %{epoch}:%{GCC_VERSION}-%{release}
 Obsoletes:     libgcj3-devel
 
 %description -n libgcj-devel
@@ -411,8 +411,8 @@ Summary(es):        Bibliotecas est
 Summary(pl):   Statyczne Biblioteki Klas Javy
 Group:         Development/Libraries
 Version:       %{GCC_VERSION}
-Requires:      libstdc++-devel = %{epoch}:%{GCC_VERSION}
-Requires:      libgcj-devel = %{epoch}:%{GCC_VERSION}
+Requires:      libgcj-devel = %{epoch}:%{GCC_VERSION}-%{release}
+Requires:      libstdc++-devel = %{epoch}:%{GCC_VERSION}-%{release}
 
 %description -n libgcj-static
 Static Java Class Libraries.
@@ -476,8 +476,8 @@ Summary(pt_BR):     Arquivos de inclus
 Summary(tr):   C++ ile program geliþtirmek için gerekli dosyalar
 Group:         Development/Libraries
 Version:       %{GCC_VERSION}
-Requires:      libstdc++ = %{epoch}:%{GCC_VERSION}
-Requires:      %{name}-c++ = %{epoch}:%{GCC_VERSION}
+Requires:      %{name}-c++ = %{epoch}:%{GCC_VERSION}-%{release}
+Requires:      libstdc++ = %{epoch}:%{GCC_VERSION}-%{release}
 Obsoletes:     libg++-devel
 Obsoletes:     libstdc++3-devel
 
@@ -506,7 +506,7 @@ Summary(es):        Biblioteca est
 Summary(pl):   Statyczna biblioteka standardowa C++
 Group:         Development/Libraries
 Version:       %{GCC_VERSION}
-Requires:      libstdc++-devel = %{epoch}:%{GCC_VERSION}
+Requires:      libstdc++-devel = %{epoch}:%{GCC_VERSION}-%{release}
 
 %description -n libstdc++-static
 Static C++ standard library.
@@ -548,7 +548,7 @@ Summary(es):        Ficheros de desarrollo para libffi
 Summary(pl):   Pliki nag³ówkowe dla libffi
 Group:         Development/Libraries
 Version:       %{GCC_VERSION}
-Requires:      libffi = %{epoch}:%{GCC_VERSION}
+Requires:      libffi = %{epoch}:%{GCC_VERSION}-%{release}
 
 %description -n libffi-devel
 Development files for Foreign Function Interface library.
@@ -565,7 +565,7 @@ Summary(es):        Biblioteca libffi est
 Summary(pl):   Statyczna biblioteka libffi
 Group:         Development/Libraries
 Version:       %{GCC_VERSION}
-Requires:      libffi-devel = %{epoch}:%{GCC_VERSION}
+Requires:      libffi-devel = %{epoch}:%{GCC_VERSION}-%{release}
 
 %description -n libffi-static
 Static Foreign Function Interface library.
@@ -582,8 +582,8 @@ Summary(es):        Soporte de Ada para gcc
 Summary(pl):   Obs³uga Ady do gcc
 Group:         Development/Languages
 Version:       %{GCC_VERSION}
-Requires:      libgnat = %{epoch}:%{GCC_VERSION}
-Requires:      gcc = %{epoch}:%{GCC_VERSION}
+Requires:      %{name} = %{epoch}:%{GCC_VERSION}-%{release}
+Requires:      libgnat = %{epoch}:%{GCC_VERSION}-%{release}
 Obsoletes:     gcc-gnat
 Obsoletes:     gnat-devel
 
@@ -639,7 +639,7 @@ 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}
+Requires:      %{name} = %{epoch}:%{GCC_VERSION}-%{release}
 
 %description ksi
 This package adds experimental support for compiling Ksi programs into
@@ -755,7 +755,11 @@ mv ksi-%{KSI_VERSION} gcc/ksi
 %patch1 -p1
 %patch2 -p1
 %patch3 -p1
-%patch4 -p1
+%{!?debug:%patch4 -p1}
+%patch5 -p1
+%ifarch alpha
+%patch6 -p1
+%endif
 
 %patch10 -p1
 %patch11
@@ -773,7 +777,6 @@ mv ksi-%{KSI_VERSION} gcc/ksi
 %patch22
 %patch23
 %patch24
-%{?_with_pp:%patch25 -p1}
 
 # because we distribute modified version of gcc...
 perl -pi -e 's/(version.*)";/$1 (PLD Linux)";/' gcc/version.c
@@ -797,7 +800,7 @@ TEXCONFIG=false ../configure \
        --enable-shared \
        --enable-threads=posix \
        --enable-__cxa_atexit \
-       --enable-languages="c,c++,f77%{!?_without_objc:,objc}%{!?_without_ada:,ada}%{!?_without_java:,java},ksi" \
+       --enable-languages="c,c++,f77%{?with_objc:,objc}%{?with_ada:,ada}%{?with_java:,java},ksi" \
        --enable-c99 \
        --enable-long-long \
 %ifarch amd64
@@ -817,15 +820,18 @@ PATH=$PATH:/sbin:%{_sbindir}
 
 cd ..
 %{__make} -C obj-%{_target_platform} bootstrap-lean \
+       GCJFLAGS="%{rpmcflags}" \
        LDFLAGS_FOR_TARGET="%{rpmldflags}" \
        mandir=%{_mandir} \
        infodir=%{_infodir}
 
-%if 0%{!?_without_ada:1}
-%{__make} -C obj-%{_target_platform}/gcc gnatlib gnattools gnatlib-shared \
+%if %{with ada}
+for tgt in gnatlib gnattools gnatlib-shared; do
+%{__make} -C obj-%{_target_platform}/gcc $tgt \
        LDFLAGS_FOR_TARGET="%{rpmldflags}" \
        mandir=%{_mandir} \
        infodir=%{_infodir}
+done
 %endif
 
 %install
@@ -851,10 +857,10 @@ 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
 
-%if 0%{!?_without_ada:1}
+%if %{with ada}
 # move ada shared libraries to proper place...
 mv $RPM_BUILD_ROOT%{_libdir}/gcc-lib/*/*/adalib/*.so.1 \
-       $RPM_BUILD_ROOT%{_libdir}/
+       $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
@@ -863,11 +869,11 @@ 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
+ln -sf %{_bindir}/cpp $RPM_BUILD_ROOT/lib/cpp
 
 cd ..
 
-%if %{!?_without_java:1}%{?_without_java:0}
+%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
@@ -875,18 +881,18 @@ cp -f libffi/README java-doc/README.libffi
 cp -f libffi/LICENSE java-doc/LICENSE.libffi
 %endif
 
-%if %{!?_without_objc:1}0
+%if %{with objc}
 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 libsupc++.la %{!?_without_java:libgcj.la} ; do
+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 \
-       %{!?_without_java:libgcj.la lib-org-w3c-dom.la lib-org-xml-sax.la libffi.la} \
-       %{!?_without_objc:libobjc.la}; do
+       %{?with_java:libgcj.la lib-org-w3c-dom.la lib-org-xml-sax.la libffi.la} \
+       %{?with_objc:libobjc.la}; do
        perl -pi -e "s@^libdir='.*@libdir='/usr/%{_lib}'@" $RPM_BUILD_ROOT%{_libdir}/$f
 done
 
@@ -898,12 +904,12 @@ mv -f $RPM_BUILD_ROOT%{_mandir}/ja/man1/{cccp,cpp}.1
 gccdir=$(echo $RPM_BUILD_ROOT%{_libdir}/gcc-lib/*/*/)
 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
+mv -f $gccdir/include/{%{?with_objc:objc,}g2c.h,syslimits.h%{?with_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/
+rm -rf $gccdir/install-tools
 
 %find_lang %{name}
 %find_lang libstdc\+\+
@@ -1044,7 +1050,7 @@ rm -rf $RPM_BUILD_ROOT
 %{_libdir}/nof/libstdc++.a
 %endif
 
-%if %{!?_without_objc:1}0
+%if %{with objc}
 %files objc
 %defattr(644,root,root,755)
 %doc gcc/objc/READ*
@@ -1106,7 +1112,7 @@ rm -rf $RPM_BUILD_ROOT
 %{_libdir}/nof/libg2c.a
 %endif
 
-%if %{!?_without_java:1}%{?_without_java:0}
+%if %{with java}
 %files java
 %defattr(644,root,root,755)
 %doc java-doc/*
@@ -1188,7 +1194,7 @@ rm -rf $RPM_BUILD_ROOT
 %{_libdir}/libffi.a
 %endif
 
-%if 0%{!?_without_ada:1}
+%if %{with ada}
 %files ada
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_libdir}/gcc-lib/*/*/gnat1
@@ -1221,7 +1227,7 @@ rm -rf $RPM_BUILD_ROOT
 
 %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*
This page took 0.054152 seconds and 4 git commands to generate.