Summary(pt_BR.UTF-8): Utilitários para desenvolvimento de binários da GNU - MinGW32 gcc
Summary(tr.UTF-8): GNU geliştirme araçları - MinGW32 gcc
Name: crossmingw32-gcc
-Version: 4.5.2
+Version: 4.8.2
Release: 2
Epoch: 1
License: GPL v3+
Group: Development/Languages
Source0: ftp://gcc.gnu.org/pub/gcc/releases/gcc-%{version}/gcc-%{version}.tar.bz2
-# Source0-md5: d6559145853fbaaa0fd7556ed93bce9a
-%define apiver 3.15
-Source1: http://downloads.sourceforge.net/mingw/w32api-%{apiver}-1-mingw32-dev.tar.lzma
-# Source1-md5: efcbcadd0299a6413d95b9ce919ede9f
-%define runver 3.18
-Source2: http://downloads.sourceforge.net/mingw/mingwrt-%{runver}-mingw32-dev.tar.gz
-# Source2-md5: e49803d8c14b1ffa6e24e5b5fee31a3d
-# svn diff -x --ignore-eol-style svn://gcc.gnu.org/svn/gcc/tags/gcc_4_5_2_release svn://gcc.gnu.org/svn/gcc/branches/gcc-4_5-branch > gcc-branch.diff
+# Source0-md5: a3d7d63b9cb6b6ea049469a0c4a43c9d
+%define mingw32_ver 4.0.3
+Source1: http://downloads.sourceforge.net/mingw/mingwrt-%{mingw32_ver}-1-mingw32-dev.tar.lzma
+# Source1-md5: c2c9aa82e0cb47abac01760525684858
+# svn diff -x --ignore-eol-style --force svn://gcc.gnu.org/svn/gcc/tags/gcc_4_8_2_release svn://gcc.gnu.org/svn/gcc/branches/gcc-4_8-branch > gcc-branch.diff
Patch100: gcc-branch.diff
+# Patch100-md5: d63540a52bfd83b772e310fde995ad65
Patch0: %{name}-buildsystem1.patch
Patch1: %{name}-buildsystem2.patch
Patch2: %{name}-lfs.patch
-BuildRequires: autoconf
-BuildRequires: automake
+BuildRequires: autoconf >= 2.64
+BuildRequires: automake >= 1:1.9.3
BuildRequires: bison
BuildRequires: crossmingw32-binutils >= 2.15.91.0.2-2
BuildRequires: flex
%endif
BuildRequires: mpfr-devel
BuildRequires: perl-tools-pod
+BuildRequires: ppl-devel >= 0.11
BuildRequires: texinfo >= 4.2
%if %{with booststrap}
BuildRequires: tar >= 1:1.22
%define _enable_debug_packages 0
+# functions with printf format attribute but with special parser and also
+# receiving non constant format strings
+%define Werror_cflags %{nil}
+
+%define _ssp_cflags %{nil}
+
%description
crossmingw32 is a complete cross-compiling development system for
building stand-alone Microsoft Windows applications under Linux using
Summary(pl.UTF-8): Zestaw narzędzi MinGW32 - Fortran
Group: Development/Languages
Requires: %{name} = %{epoch}:%{version}-%{release}
+Requires: crossmingw32-libquadmath = %{epoch}:%{version}-%{release}
Obsoletes: crossmingw32-gcc-g77
%description fortran
%package -n crossmingw32-libgfortran-static
Summary: Static Fortran library - cross MinGW32 version
-Summary(pl.UTF-8): Statyczna biblioteka Fortrana - wersja skrośna MinGW32
+Summary(pl.UTF-8): Statyczna biblioteka Fortranu - wersja skrośna MinGW32
Group: Development/Libraries
Requires: %{name}-fortran = %{epoch}:%{version}-%{release}
Static Fortran library - cross MinGW32 version.
%description -n crossmingw32-libgfortran-static -l pl.UTF-8
-Statyczna biblioteka Fortrana - wersja skrośna MinGW32.
+Statyczna biblioteka Fortranu - wersja skrośna MinGW32.
%package -n crossmingw32-libgfortran-dll
Summary: libgfortran DLL library for Windows
Summary(pl.UTF-8): Biblioteka DLL libgfortran dla Windows
Group: Applications/Emulators
-Requires: wine
+Requires: crossmingw32-libquadmath-dll
%description -n crossmingw32-libgfortran-dll
libgfortran DLL library for Windows.
%description -n crossmingw32-libgfortran-dll -l pl.UTF-8
Biblioteka DLL libgfortran dla Windows.
+%package -n crossmingw32-libquadmath
+Summary: GCC __float128 support library - cross MinGW32 version
+Summary(pl.UTF-8): Biblioteka do obsługi typu __float128 - wersja skrośna MinGW32
+License: GPL v2+ with linking exception
+Group: Development/Libraries
+Requires: %{name} = %{epoch}:%{version}-%{release}
+
+%description -n crossmingw32-libquadmath
+This package contains cross MinGW32 version of GCC support library
+which is needed for __float128 math support and for Fortran REAL*16
+support.
+
+%description -n crossmingw32-libquadmath -l pl.UTF-8
+Ten pakiet zawiera wersję skrośną MinGW32 biblioteki GCC do obsługi
+operacji matematycznych na zmiennych typu __float128 oraz typu REAL*16
+w Fortranie.
+
+%package -n crossmingw32-libquadmath-static
+Summary: Static GCC __float128 support library - cross MinGW32 version
+Summary(pl.UTF-8): Biblioteka statyczna GCC do obsługi typu __float128 - wersja skrośna MinGW32
+License: GPL v2+ with linking exception
+Group: Development/Libraries
+Requires: crossmingw32-libquadmath = %{epoch}:%{version}-%{release}
+
+%description -n crossmingw32-libquadmath-static
+Static GCC __float128 support library - cross MinGW32 version.
+
+%description -n crossmingw32-libquadmath-static -l pl.UTF-8
+Biblioteka statyczna GCC do obsługi typu __float128 - wersja skrośna
+MinGW32.
+
+%package -n crossmingw32-libquadmath-dll
+Summary: DLL GCC __float128 support library for Windows
+Summary(pl.UTF-8): Biblioteka DLL GCC do obsługi typu __float128 dla Windows
+License: GPL v2+ with linking exception
+Group: Applications/Emulators
+Requires: wine
+
+%description -n crossmingw32-libquadmath-dll
+DLL GCC __float128 support library for Windows.
+
+%description -n crossmingw32-libquadmath-dll -l pl.UTF-8
+Biblioteka DLL GCC do obsługi typu __float128 dla Windows.
+
%package java
Summary: MinGW32 binary utility development utilities - Java
Summary(pl.UTF-8): Zestaw narzędzi MinGW32 - Java
%patch2 -p1
%if %{with bootstrap}
-# note: "winsup" dirs below are special, handled by gcc's configure
-install -d winsup/{mingw,w32api}
-tar xf %{SOURCE1} -C winsup/w32api
-tar xf %{SOURCE2} -C winsup/mingw
+# note: "winsup" dir is special, handled by gcc's configure
+install -d winsup/mingw
+tar xf %{SOURCE1} -C winsup/mingw
%endif
# override snapshot version.
%if %{with bootstrap}
install -d %{target}/winsup
ln -sf ../../../winsup/mingw/lib %{target}/winsup/mingw
-ln -sf ../../../winsup/w32api %{target}/winsup/w32api
+ln -sf ../../../winsup/mingw/include %{target}/winsup/w32api
WINSUPDIR=$(cd ..; pwd)/winsup
%endif
--with-gnu-ld \
--with-mangler-in-ld \
--with-long-double-128 \
+ --with-ppl \
+ --disable-ppl-version-check \
--enable-threads \
--enable-languages="c,c++,fortran,java,objc" \
--enable-c99 \
# DLLs
install -d $RPM_BUILD_ROOT%{_dlldir}
-mv -f $RPM_BUILD_ROOT%{arch}/bin/*.dll $RPM_BUILD_ROOT%{_dlldir}
+mv -f $RPM_BUILD_ROOT%{gccarchdir}/*.dll $RPM_BUILD_ROOT%{_dlldir}
+mv -f $RPM_BUILD_ROOT%{gcclibdir}/*.dll $RPM_BUILD_ROOT%{_dlldir}
if [ ! -f $RPM_BUILD_ROOT%{_dlldir}/libgcc_s_dw2-1.dll ]; then
echo "libgcc DLL not installed?"
install builddir/i386-mingw32/libgcc/shlib/libgcc_s_dw2-1.dll $RPM_BUILD_ROOT%{_dlldir}
%if 0%{!?debug:1}
%{target}-strip --strip-unneeded -R.comment -R.note $RPM_BUILD_ROOT%{_dlldir}/*.dll
-%{target}-strip -g -R.comment -R.note $RPM_BUILD_ROOT%{gcclibdir}/lib*.a \
- $RPM_BUILD_ROOT%{arch}/lib/lib*.a
+%{target}-strip -g -R.comment -R.note $RPM_BUILD_ROOT%{gcclibdir}/lib*.a
%endif
+# for pretty-printers see native gcc
+%{__rm} $RPM_BUILD_ROOT%{gcclibdir}/libstdc++.dll.a-gdb.py
+%{__rm} -r $RPM_BUILD_ROOT%{_datadir}/gcc-%{version}/python/libstdcxx
+# no plugin development for mingw32 (at least for now)
+%{__rm} $RPM_BUILD_ROOT%{gcclibdir}/liblto_plugin.la
+%{__rm} -r $RPM_BUILD_ROOT%{gcclibdir}/plugin
# already in native gcc
%{__rm} -r $RPM_BUILD_ROOT%{_infodir}
# common FSF man pages
%attr(755,root,root) %{_bindir}/%{target}-gcov
%attr(755,root,root) %{arch}/bin/%{target}-gcc
%attr(755,root,root) %{arch}/bin/%{target}-gcc-%{version}
-%attr(755,root,root) %{arch}/bin/%{target}-gccbug
+%attr(755,root,root) %{arch}/bin/%{target}-gcc-ar
+%attr(755,root,root) %{arch}/bin/%{target}-gcc-nm
+%attr(755,root,root) %{arch}/bin/%{target}-gcc-ranlib
%attr(755,root,root) %{arch}/bin/%{target}-cpp
%attr(755,root,root) %{arch}/bin/%{target}-gcov
%attr(755,root,root) %{arch}/bin/gcc
-%{arch}/lib/libiberty.a
%dir %{gccarchdir}
%dir %{gcclibdir}
%attr(755,root,root) %{gcclibdir}/cc1
%attr(755,root,root) %{gcclibdir}/collect2
%attr(755,root,root) %{gcclibdir}/lto-wrapper
+%attr(755,root,root) %{gcclibdir}/lto1
+%attr(755,root,root) %{gcclibdir}/liblto_plugin.so*
%{gcclibdir}/libgcc.a
%{gcclibdir}/libgcc_eh.a
%{gcclibdir}/libgcc_s.a
%files -n crossmingw32-libobjc-dll
%defattr(644,root,root,755)
-%{_dlldir}/libobjc-2.dll
+%{_dlldir}/libobjc-4.dll
%files fortran
%defattr(644,root,root,755)
%attr(755,root,root) %{arch}/bin/gfortran
%attr(755,root,root) %{gcclibdir}/f951
%{gcclibdir}/finclude
+%{gcclibdir}/libcaf_single.a
+%{gcclibdir}/libcaf_single.la
%{gcclibdir}/libgfortran.dll.a
%{gcclibdir}/libgfortran.la
+%{gcclibdir}/libgfortran.spec
%{gcclibdir}/libgfortranbegin.a
%{gcclibdir}/libgfortranbegin.la
%{_mandir}/man1/%{target}-gfortran.1*
%defattr(644,root,root,755)
%{_dlldir}/libgfortran-3.dll
+%files -n crossmingw32-libquadmath
+%defattr(644,root,root,755)
+%{gcclibdir}/libquadmath.dll.a
+%{gcclibdir}/libquadmath.la
+
+%files -n crossmingw32-libquadmath-static
+%defattr(644,root,root,755)
+%{gcclibdir}/libquadmath.a
+
+%files -n crossmingw32-libquadmath-dll
+%defattr(644,root,root,755)
+%{_dlldir}/libquadmath-0.dll
+
%files java
%defattr(644,root,root,755)
%attr(755,root,root) %{_bindir}/%{target}-gcj