%define DASHED_SNAP %{nil}
%define SNAP %(echo %{DASHED_SNAP} | sed -e "s#-##g")
-%define GCC_VERSION 3.2.1
-%define STDC_VERSION 4.0.0
-%define OBJC_VERSION 1.0.0
-%define GCJ_VERSION 3.2
+%define GCC_VERSION 3.2.2
Summary: Mingw32 Binary Utility Development Utilities - gcc
Summary(pl): Zestaw narzêdzi mingw32 - gcc
Name: crossmingw32-gcc
ExclusiveArch: %{ix86}
Source0: ftp://gcc.gnu.org/pub/gcc/releases/gcc-%{GCC_VERSION}/gcc-%{GCC_VERSION}.tar.bz2
Patch0: gcc-slibdir.patch
-BuildRequires: crossmingw32-platform
+BuildRequires: autoconf
+BuildRequires: bison
BuildRequires: crossmingw32-binutils
+BuildRequires: crossmingw32-w32api
BuildRequires: flex
-BuildRequires: bison
-BuildRequires: autoconf
Requires: crossmingw32-binutils
-Requires: crossmingw32-platform
+Requires: crossmingw32-w32api
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
%define no_install_post_strip 1
+
%define target i386-mingw32
%define target_platform i386-pc-mingw32
-%define _prefix /usr
%define arch %{_prefix}/%{target}
%define gccarch %{_prefix}/lib/gcc-lib/%{target}
%define gcclib %{_prefix}/lib/gcc-lib/%{target}/%{version}
--with-gnu-as \
--with-gnu-ld \
--with-gxx-include-dir=%{arch}/include/g++ \
+ --enable-threads \
--target=%{target}
-# to nie dzia³a bo kto¶ ukrad³ gthr-win32.h i nie wiem co tam wpisaæ
-# --enable-threads \
-
#touch ../gcc/c-gperf.h
%{__make} \
install -d $RPM_BUILD_ROOT%{_bindir}
install -d $RPM_BUILD_ROOT%{_datadir}
-(cd obj-%{target_platform}
+cd obj-%{target_platform}
%{__make} install \
- prefix=$RPM_BUILD_ROOT%{_prefix} \
- bindir=$RPM_BUILD_ROOT%{arch}/bin \
- mandir=$RPM_BUILD_ROOT%{_mandir} \
- infodir=$RPM_BUILD_ROOT%{_infodir} \
- gxx_include_dir=$RPM_BUILD_ROOT%{arch}/include/g++
+ DESTDIR=$RPM_BUILD_ROOT
cd gcc
install specs.msvcrt specs.msvcrt20 specs.msvcrt40 $RPM_BUILD_ROOT%{gcclib}
-)
+cd ../..
mv -f $RPM_BUILD_ROOT%{arch}/bin/%{target}-* $RPM_BUILD_ROOT%{_bindir}
# c++filt is provided by binutils
rm -f $RPM_BUILD_ROOT%{_bindir}/i386-mingw32-c++filt
-# what is this there for???
+# already in arch/lib, shouldn't be here
rm -f $RPM_BUILD_ROOT%{_libdir}/libiberty.a
+%if 0%{!?debug:1}
+# strip linux binaries
+strip -R .comment -R .note \
+ `echo $RPM_BUILD_ROOT{%{_bindir}/*,%{arch}/bin/*} | grep -v gccbug` \
+ $RPM_BUILD_ROOT%{gcclib}/{cc1*,cpp0,f771,jc1,jvgenmain,tradcpp0}
+
+# strip mingw32 libraries
+%{target}-strip -g \
+ $RPM_BUILD_ROOT%{gcclib}/libgcc.a \
+ $RPM_BUILD_ROOT%{arch}/lib/lib*.a
+%endif
+
+# restore hardlinks
+ln -f $RPM_BUILD_ROOT%{_bindir}/%{target}-{g++,c++}
+ln -f $RPM_BUILD_ROOT%{arch}/bin/{g++,c++}
+
# the same... make hardlink
ln -f $RPM_BUILD_ROOT%{arch}/bin/gcc $RPM_BUILD_ROOT%{_bindir}/%{target}-gcc
-%{target}-strip -g $RPM_BUILD_ROOT%{gcclib}/libgcc.a
-
%clean
rm -rf $RPM_BUILD_ROOT
%attr(755,root,root) %{_bindir}/%{target}-gcc*
%attr(755,root,root) %{_bindir}/%{target}-cpp
%attr(755,root,root) %{_bindir}/%{target}-gcov
-
-%dir %{arch}/bin
%attr(755,root,root) %{arch}/bin/gcc
+%{arch}/lib/libiberty.a
%dir %{gccarch}
%dir %{gcclib}
%attr(755,root,root) %{gcclib}/cpp0
%attr(755,root,root) %{gcclib}/tradcpp0
%{gcclib}/libgcc.a
+%{gcclib}/libgcc.a
%{gcclib}/specs*
%{gcclib}/include
%attr(755,root,root) %{_bindir}/%{target}-[cg]++
%attr(755,root,root) %{arch}/bin/[cg]++
%attr(755,root,root) %{gcclib}/cc1plus
+%{arch}/lib/libstdc++.a
+%{arch}/lib/libstdc++.la
+%{arch}/lib/libsupc++.a
+%{arch}/lib/libsupc++.la
+%{arch}/include/g++
%{_mandir}/man1/%{target}-g++.1*
%files objc
%defattr(644,root,root,755)
%attr(755,root,root) %{gcclib}/cc1obj
+%{arch}/lib/libobjc.a
+%{arch}/lib/libobjc.la
%files g77
%defattr(644,root,root,755)
%attr(755,root,root) %{_bindir}/%{target}-g77
%attr(755,root,root) %{gcclib}/f771
+%{arch}/lib/libfrtbegin.a
+%{arch}/lib/libg2c.a
+%{arch}/lib/libg2c.la
%{_mandir}/man1/%{target}-g77.1*
%files java
%attr(755,root,root) %{arch}/bin/jar
%attr(755,root,root) %{gcclib}/jc1
%attr(755,root,root) %{gcclib}/jvgenmain
+%{_mandir}/man1/%{target}-gcj.1*