]> git.pld-linux.org Git - packages/gcc.git/blobdiff - gcc.spec
- rel .3
[packages/gcc.git] / gcc.spec
index debd50012d4885b813f44735c56d8abba9b385c6..b2063febecd6a04c74d22509dcc6ff2bdf7dfbf0 100644 (file)
--- a/gcc.spec
+++ b/gcc.spec
@@ -6,16 +6,11 @@
 %bcond_without java            # build without Java support
 %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_without multilib        # build without 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
@@ -38,18 +33,19 @@ Summary(es):        Colecci
 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:       4.1.0
-#define                _snap   20060218r111233
-%define                _snap   20060223
-Release:       0.%{_snap}.2
+Version:       4.1.2
+%define                _snap   20061201r119386
+#define                _snap   20060517
+Release:       0.%{_snap}.3
+#Release:      1
 Epoch:         5
 License:       GPL v2+
 Group:         Development/Languages
-Source0:       ftp://gcc.gnu.org/pub/gcc/prerelease-%{version}-%{_snap}/gcc-%{version}-%{_snap}.tar.bz2
-# Source0-md5: b6f748cec2eb6765a21b1863d8bc5f5b
+#Source0:      ftp://gcc.gnu.org/pub/gcc/prerelease-%{version}-%{_snap}/gcc-%{version}-%{_snap}.tar.bz2
 #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:       gcc-4.1-%{_snap}.tar.bz2
+# Source0-md5: 7c6dda88021bab6be2abfcfce2577592
 Source1:       %{name}-optimize-la.pl
 Patch0:                %{name}-info.patch
 Patch1:                %{name}-nolocalefiles.patch
@@ -64,33 +60,38 @@ Patch8:             %{name}-pr20218.patch
 
 # PRs
 Patch10:       %{name}-pr7776.patch
-Patch11:       %{name}-pr20297.patch
-Patch12:       %{name}-pr19606.patch
-Patch13:       %{name}-pr24879.patch
-#Patch14:      %{name}-x87-mmx-switch.patch    NEEDS UPDATE
-#Patch15:      %{name}-x87-mmx-eh.patch        NEEDS UPDATE
+Patch11:       %{name}-pr19606.patch
+Patch12:       %{name}-pr24879.patch
+Patch13:       %{name}-pr29512.patch
+Patch14:       %{name}-pr28281.patch
+Patch15:       %{name}-unwind-through-signal-frames.patch
 
-Patch17:       %{name}-pr19505.patch
 Patch18:       %{name}-pr24419.patch
 Patch19:       %{name}-pr24669.patch
 Patch20:       %{name}-pr17390.patch
 Patch21:       %{name}-pr13676.patch
 Patch22:       %{name}-pr25626.patch
 Patch23:       %{name}-libstdcxx-bitset.patch
-Patch24:       %{name}-unexpected_eof.patch
+
 Patch25:       %{name}-libjava-multilib.patch
 Patch26:       %{name}-ppc64-m32-m64-multilib-only.patch
+Patch27:       %{name}-enable-java-awt-qt.patch
 
 # 128-bit long double support for glibc 2.4
 Patch30:       %{name}-ldbl-default-libstdc++.patch
 Patch31:       %{name}-ldbl-default.patch
 
+# Needed too bootstrap with gcc 4.2
+Patch40:       %{name}-ada.patch
+
 URL:           http://gcc.gnu.org/
 BuildRequires: autoconf
 %{?with_tests:BuildRequires:   autogen}
 BuildRequires: automake
-BuildRequires: binutils >= 2:2.15.94.0.1
+# binutils 2.16.91 or newer are required for compiling medium model now
+BuildRequires: binutils >= 2:2.16.91.0.1
 BuildRequires: bison
+BuildRequires: chrpath >= 0.13-2
 %{?with_tests:BuildRequires:   dejagnu}
 BuildRequires: fileutils >= 4.0.41
 BuildRequires: flex
@@ -99,8 +100,8 @@ BuildRequires:       gcc(ada)
 BuildRequires: gcc-ada
 %endif
 BuildRequires: gettext-devel
+BuildRequires: glibc-devel >= 6:2.4-1
 %if %{with multilib}
-BuildRequires: glibc-devel >= 6:2.3.4-1.5
 %ifarch %{x8664}
 BuildRequires: glibc-devel(i686)
 %endif
@@ -113,19 +114,17 @@ BuildRequires:    glibc-devel(s390)
 %ifarch sparc64
 BuildRequires: glibc-devel(sparc)
 %endif
-%else
-BuildRequires: glibc-devel >= 2.2.5-20
 %endif
-BuildRequires: perl-devel
+BuildRequires: perl-base
 BuildRequires: rpmbuild(macros) >= 1.211
 BuildRequires: texinfo >= 4.1
 BuildRequires: zlib-devel
 %if %{with fortran}
 BuildRequires: gmp-devel
-BuildRequires: libmpfr-devel
+BuildRequires: mpfr-devel
 %endif
 %if %{with java}
-#BuildRequires:        QtGui-devel >= 4.0.1
+BuildRequires: QtGui-devel >= 4.0.1
 BuildRequires: alsa-lib-devel
 BuildRequires: cairo-devel >= 0.5.0
 BuildRequires: dssi
@@ -134,8 +133,9 @@ BuildRequires:      gtk+2-devel >= 2:2.4.0
 BuildRequires: libart_lgpl-devel >= 2.1
 BuildRequires: libxslt-devel
 BuildRequires: pango-devel
+BuildRequires: perl-tools-pod
 BuildRequires: pkgconfig
-#BuildRequires:        qt4-build
+BuildRequires: qt4-build
 BuildRequires: xorg-lib-libXtst-devel
 %endif
 # AS_NEEDED directive for dynamic linker
@@ -762,8 +762,8 @@ Statyczne biblioteki Obiektowego C.
 
 %prep
 #setup -q -n gcc-%{version}
-%setup -q -n gcc-%{version}-%{_snap}
-#setup -q -n gcc-4_1-branch
+#setup -q -n gcc-%{version}-%{_snap}
+%setup -q -n gcc-4_1-branch
 
 %patch0 -p1
 %patch1 -p1
@@ -779,29 +779,31 @@ Statyczne biblioteki Obiektowego C.
 
 # PRs
 %patch10 -p1
-%patch11 -p1
+%patch11 -p0
 %patch12 -p0
-%patch13 -p0
+%patch13 -p1
 
-%ifarch %{ix86} %{x8664}
-#patch14 -p1
-#patch15 -p1
+%ifarch %{x8664}
+%patch14 -p1
 %endif
+%patch15 -p0
 
-%patch17 -p1
 %patch18 -p1
 %patch19 -p1
 %patch20 -p1
 %patch21 -p1
 %patch22 -p1
 %patch23 -p1
-%patch24 -p1
+
 %patch25 -p1
 %patch26 -p1
+%patch27 -p1
 
 %patch30 -p0
 %patch31 -p0
 
+%patch40 -p1
+
 # because we distribute modified version of gcc...
 sed -i 's:#define VERSUFFIX.*:#define VERSUFFIX " (PLD-Linux)":' gcc/version.c
 perl -pi -e 's@(bug_report_url.*<URL:).*";@$1http://bugs.pld-linux.org/>";@' gcc/version.c
@@ -814,12 +816,12 @@ cd gcc
 cd ..
 cd libjava
 %{__autoconf}
-cd ..
+cd classpath
+%{__autoconf}
+cd ../..
 cp -f /usr/share/automake/config.sub .
 
-rm -rf obj-%{_target_platform}
-install -d obj-%{_target_platform}
-cd obj-%{_target_platform}
+rm -rf builddir && install -d builddir && cd builddir
 
 CFLAGS="%{rpmcflags}" \
 CXXFLAGS="%{rpmcxxflags}" \
@@ -860,7 +862,7 @@ TEXCONFIG=false \
        --with-gxx-include-dir=%{_includedir}/c++/%{version} \
        --disable-libstdcxx-pch \
        --enable-__cxa_atexit \
-       --enable-libstdcxx-allocator=mt \
+       --enable-libstdcxx-allocator=new \
 %endif
 %if %{with java}
        --with-qt4dir=%{_libdir}/qt4 \
@@ -869,7 +871,7 @@ TEXCONFIG=false \
        --enable-libgcj-multifile \
        --enable-libgcj-database \
        --enable-gtk-cairo \
-       --enable-java-awt=gtk,xlib \
+       --enable-java-awt=qt,gtk,xlib \
        --enable-jni \
        --enable-xmlj \
        --enable-alsa \
@@ -879,7 +881,7 @@ TEXCONFIG=false \
 
 cd ..
 
-%{__make} -C obj-%{_target_platform} \
+%{__make} -C builddir \
        %{?with_bootstrap:%{?with_profiling:profiled}bootstrap} \
        GCJFLAGS="%{rpmcflags}" \
        BOOT_CFLAGS="%{rpmcflags}" \
@@ -889,13 +891,13 @@ cd ..
        mandir=%{_mandir} \
        infodir=%{_infodir}
 
-%{?with_tests:%{__make} -k -C obj-%{_target_platform} check 2>&1 ||:}
+%{?with_tests:%{__make} -k -C builddir check 2>&1 ||:}
 
 %install
 rm -rf $RPM_BUILD_ROOT
 install -d $RPM_BUILD_ROOT{/lib,%{_aclocaldir},%{_datadir},%{_infodir}}
 
-cd obj-%{_target_platform}
+cd builddir
 
 %{__make} -j1 install \
        mandir=%{_mandir} \
@@ -964,11 +966,17 @@ for f in libmudflap.la libmudflapth.la libssp.la \
 do
        %{SOURCE1} $RPM_BUILD_ROOT%{_libdir}/$f %{_libdir} > $RPM_BUILD_ROOT%{_libdir}/$f.fixed
        mv $RPM_BUILD_ROOT%{_libdir}/$f{.fixed,}
+done
 %if %{with multilib}
+for f in libmudflap.la libmudflapth.la libssp.la \
+       %{?with_cxx:libstdc++.la libsupc++.la} \
+       %{?with_fortran:libgfortran.la libgfortranbegin.la} \
+       %{?with_objc:libobjc.la};
+do
        %{SOURCE1} $RPM_BUILD_ROOT%{_libdir32}/$f %{_libdir32} > $RPM_BUILD_ROOT%{_libdir32}/$f.fixed
        mv $RPM_BUILD_ROOT%{_libdir32}/$f{.fixed,}
-%endif
 done
+%endif
 
 # include/ contains install-tools/include/* and headers that were fixed up
 # by fixincludes, we don't want former
@@ -979,17 +987,13 @@ mkdir     $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
+mv $gccdir/include/ssp $gccdir/tmp
 rm -rf $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 %{_slibdir32}/libgcc_s.so.1     $gccdir/32/libgcc_s.so
-%endif
-ln -sf %{_slibdir}/libgcc_s.so.1       $gccdir/libgcc_s.so
-
 %find_lang gcc
 %find_lang cpplib
 cat cpplib.lang >> gcc.lang
@@ -1058,6 +1062,7 @@ rm -rf $RPM_BUILD_ROOT
 %dir %{_libdir}/gcc/*
 %dir %{_libdir}/gcc/*/*
 %dir %{_libdir}/gcc/*/*/include
+%dir %{_libdir}/gcc/*/*/include/ssp
 
 %attr(755,root,root) %{_bindir}/*-gcc*
 %attr(755,root,root) %{_bindir}/gcc
@@ -1066,8 +1071,6 @@ 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*
 %{_mandir}/man1/gcc.1*
@@ -1079,19 +1082,19 @@ rm -rf $RPM_BUILD_ROOT
 %attr(755,root,root) /lib/cpp
 
 %attr(755,root,root) %{_slibdir}/lib*.so
+%{_libdir}/libssp.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}
+%attr(755,root,root) %{_slibdir32}/lib*.so
 %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.a
 %{_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
@@ -1099,7 +1102,6 @@ rm -rf $RPM_BUILD_ROOT
 %{_libdir}/gcc/*/*/libgcov.a
 %{_libdir}/gcc/*/*/libgcc.a
 %{_libdir}/gcc/*/*/libgcc_eh.a
-%{_libdir}/gcc/*/*/libgcc_s.so
 %{_libdir}/gcc/*/*/specs
 %if %{with multilib}
 %{_libdir}/gcc/*/*/32/crt*.o
@@ -1109,6 +1111,7 @@ rm -rf $RPM_BUILD_ROOT
 %attr(755,root,root) %{_libdir}/gcc/*/*/collect2
 
 %{_libdir}/gcc/*/*/include/*.h
+%{_libdir}/gcc/*/*/include/ssp/*.h
 
 %files -n libgcc
 %defattr(644,root,root,755)
@@ -1291,13 +1294,15 @@ rm -rf $RPM_BUILD_ROOT
 %attr(755,root,root) %{_bindir}/addr2name.awk
 %attr(755,root,root) %{_bindir}/gij
 %attr(755,root,root) %{_libdir}/libgcj.so.*.*.*
-# R: lib-gnu-java-awt-peer-gtk (see below)
+# R: lib-gnu-java-awt-peer-gtk/qt (see below)
 %attr(755,root,root) %{_libdir}/libgcjawt.so.*.*.*
 %attr(755,root,root) %{_libdir}/libgij.so.*.*.*
-# R: libX11
+# R: xorg libs
 %attr(755,root,root) %{_libdir}/lib-gnu-awt-xlib.so.*.*.*
 # R: gtk+2
 %attr(755,root,root) %{_libdir}/lib-gnu-java-awt-peer-gtk.so.*.*.*
+# R: QtGui
+%attr(755,root,root) %{_libdir}/lib-gnu-java-awt-peer-qt.so.7.0.0
 %dir %{_libdir}/classpath
 # R: alsa-libs
 %attr(755,root,root) %{_libdir}/classpath/libgjsmalsa.so*
@@ -1333,6 +1338,8 @@ rm -rf $RPM_BUILD_ROOT
 %{_libdir}/lib-gnu-awt-xlib.la
 %attr(755,root,root) %{_libdir}/lib-gnu-java-awt-peer-gtk.so
 %{_libdir}/lib-gnu-java-awt-peer-gtk.la
+%attr(755,root,root) %{_libdir}/lib-gnu-java-awt-peer-qt.so
+%{_libdir}/lib-gnu-java-awt-peer-qt.la
 %{_pkgconfigdir}/libgcj.pc
 
 %files -n libgcj-static
@@ -1342,6 +1349,7 @@ rm -rf $RPM_BUILD_ROOT
 %{_libdir}/libgij.a
 %{_libdir}/lib-gnu-awt-xlib.a
 %{_libdir}/lib-gnu-java-awt-peer-gtk.a
+%{_libdir}/lib-gnu-java-awt-peer-qt.a
 
 %files -n libffi
 %defattr(644,root,root,755)
This page took 0.04584 seconds and 4 git commands to generate.