Index: contrib/crossrpms/gcc/build.add
===================================================================
--- contrib/crossrpms/gcc/build.add	(revision 2b29f934cec865ab5918aa91df4d6bb245f5850b)
+++ contrib/crossrpms/gcc/build.add	(revision b66f71f339dd4fdaf02cadae6cdfab1be2354335)
@@ -19,7 +19,4 @@
 %if %build_gnat
   languages="$languages,ada"
-%endif
-%if %build_libgcj
-  optargs="--enable-libgcj"
 %endif
 %if "%{_prefix}" != "/usr"
Index: contrib/crossrpms/gcc/gccnewlib.add
===================================================================
--- contrib/crossrpms/gcc/gccnewlib.add	(revision 2b29f934cec865ab5918aa91df4d6bb245f5850b)
+++ contrib/crossrpms/gcc/gccnewlib.add	(revision b66f71f339dd4fdaf02cadae6cdfab1be2354335)
@@ -8,6 +8,4 @@
 %define newlib_version		@NEWLIB_VERS@
 %endif
-
-%define mpfr_version	2.3.1
 
 Name:         	@rpmprefix@@tool_target@-gcc
Index: contrib/crossrpms/gcc/prep.add
===================================================================
--- contrib/crossrpms/gcc/prep.add	(revision 2b29f934cec865ab5918aa91df4d6bb245f5850b)
+++ contrib/crossrpms/gcc/prep.add	(revision b66f71f339dd4fdaf02cadae6cdfab1be2354335)
@@ -53,4 +53,25 @@
 %endif
 
+%if 0%{?_build_mpc}
+%setup -q -T -D -n %{name}-%{version} -a61
+%{?PATCH61:%patch61 -p1}
+  # Build mpc one-tree style
+  ln -s ../mpc-%{mpc_version} gcc-%{gcc_pkgvers}/mpc
+%endif
+
+%if 0%{?_build_gmp}
+%setup -q -T -D -n %{name}-%{version} -a62
+%{?PATCH62:%patch62 -p1}
+  # Build gmp one-tree style
+  ln -s ../gmp-%{gmp_version} gcc-%{gcc_pkgvers}/gmp
+%endif
+
+%if 0%{?_build_libelf}
+%setup -q -T -D -n %{name}-%{version} -a63
+%{?PATCH63:%patch63 -p1}
+  # Build libelf one-tree style
+  ln -s ../libelf-%{libelf_version} gcc-%{gcc_pkgvers}/libelf
+%endif
+
 @PREP@
 
Index: contrib/crossrpms/gcc/target-c++.add
===================================================================
--- contrib/crossrpms/gcc/target-c++.add	(revision 2b29f934cec865ab5918aa91df4d6bb245f5850b)
+++ contrib/crossrpms/gcc/target-c++.add	(revision b66f71f339dd4fdaf02cadae6cdfab1be2354335)
@@ -8,4 +8,5 @@
 Version:        %{gcc_rpmvers}
 License:	GPL
+Requires:       @rpmprefix@@tool_target@-gcc-libstdc++ = %{gcc_rpmvers}-%{release}
 
 %if "%{_build}" != "%{_host}"
@@ -21,11 +22,29 @@
 GCC c++ compiler for @tool_target@.
 
-%files -n @rpmprefix@@tool_target@-gcc-c++ -f build/files.g++
+
+%package -n @rpmprefix@@tool_target@-gcc-libstdc++
+Summary:	libstdc++ for @tool_target@
+Group:		Development/Tools
+Version:        %{gcc_rpmvers}
+%{?_with_noarch_subpackages:BuildArch: noarch}
+License:	GPL
+
+%description -n @rpmprefix@@tool_target@-gcc-libstdc++
+%{summary}
+
+
+%files -n @rpmprefix@@tool_target@-gcc-c++
 %defattr(-,root,root)
+%sysdir %{_prefix}
+
+%sysdir %{_mandir}
+%sysdir %{_mandir}/man1
 %{_mandir}/man1/@tool_target@-g++.1*
 
+%sysdir %{_bindir}
 %{_bindir}/@tool_target@-c++%{_exeext}
 %{_bindir}/@tool_target@-g++%{_exeext}
 
+%sysdir %{_libexecdir}
 %dir %{_libexecdir}/gcc
 %dir %{_libexecdir}/gcc/@tool_target@
@@ -33,4 +52,12 @@
 %{_libexecdir}/gcc/@tool_target@/%{gcc_version}/cc1plus%{_exeext}
 
+
+%files -n @rpmprefix@@tool_target@-gcc-libstdc++ -f build/files.g++
+%defattr(-,root,root)
+%sysdir %{_prefix}
+%sysdir %{_gcclibdir}
+%dir %{_gcclibdir}/gcc
+%dir %{_gcclibdir}/gcc/@tool_target@
+%dir %{_gcclibdir}/gcc/@tool_target@/%{gcc_version}
 %dir %{_gcclibdir}/gcc/@tool_target@/%{gcc_version}/include
 %{_gcclibdir}/gcc/@tool_target@/%{gcc_version}/include/c++
Index: contrib/crossrpms/gcc/target-gcc.add
===================================================================
--- contrib/crossrpms/gcc/target-gcc.add	(revision 2b29f934cec865ab5918aa91df4d6bb245f5850b)
+++ contrib/crossrpms/gcc/target-gcc.add	(revision b66f71f339dd4fdaf02cadae6cdfab1be2354335)
@@ -17,6 +17,23 @@
 GNU cc compiler for @tool_target@.
 
-%files -n @rpmprefix@@tool_target@-gcc -f build/files.gcc
+# ==============================================================
+# @rpmprefix@@tool_target@-gcc-libgcc
+# ==============================================================
+%package -n @rpmprefix@@tool_target@-gcc-libgcc
+Summary:        libgcc for @tool_target@-gcc
+Group:          Development/Tools
+Version:        %{gcc_rpmvers}
+%{?_with_noarch_subpackages:BuildArch: noarch}
+Requires:       @rpmprefix@@tool_target@-newlib = %{newlib_version}-@NEWLIB_RPMREL@
+License:	GPL
+
+%description -n @rpmprefix@@tool_target@-gcc-libgcc
+libgcc @tool_target@-gcc.
+
+
+%files -n @rpmprefix@@tool_target@-gcc
 %defattr(-,root,root)
+%sysdir %{_prefix}
+
 %sysdir %{_mandir}
 %sysdir %{_mandir}/man1
@@ -30,7 +47,28 @@
 %{_bindir}/@tool_target@-gcc-%{gcc_version}%{_exeext}
 %{_bindir}/@tool_target@-gcov%{_exeext}
+%if "%{gcc_version}" < "4.6.0"
 %{_bindir}/@tool_target@-gccbug
+%endif
 
+%sysdir %{_libexecdir}
+%dir %{_libexecdir}/gcc
+%dir %{_libexecdir}/gcc/@tool_target@
+%dir %{_libexecdir}/gcc/@tool_target@/%{gcc_version}
+%{_libexecdir}/gcc/@tool_target@/%{gcc_version}/cc1%{_exeext}
+%{_libexecdir}/gcc/@tool_target@/%{gcc_version}/collect2%{_exeext}
+%if "%{gcc_version}" >= "4.5.0"
+%{?with_lto:%{_libexecdir}/gcc/@tool_target@/%{gcc_version}/lto%{_exeext}}
+%{_libexecdir}/gcc/@tool_target@/%{gcc_version}/lto-wrapper%{_exeext}
+%endif
+
+%files -n @rpmprefix@@tool_target@-gcc-libgcc -f build/files.gcc
+%defattr(-,root,root)
+%sysdir %{_prefix}
+%sysdir %{_gcclibdir}
+%dir %{_gcclibdir}/gcc
+%dir %{_gcclibdir}/gcc/@tool_target@
+%dir %{_gcclibdir}/gcc/@tool_target@/%{gcc_version}
 %dir %{_gcclibdir}/gcc/@tool_target@/%{gcc_version}/include
+
 %if "%{gcc_version}" > "4.0.3"
 %if "@tool_target@" != "bfin-rtems@rtems_api@"
@@ -42,11 +80,5 @@
 
 %if "%{gcc_version}" >= "4.3.0"
-%dir %{_gcclibdir}/gcc/@tool_target@/%{gcc_version}/include-fixed
+%{_gcclibdir}/gcc/@tool_target@/%{gcc_version}/include-fixed
 %endif
 
-%dir %{_libexecdir}/gcc
-%dir %{_libexecdir}/gcc/@tool_target@
-%dir %{_libexecdir}/gcc/@tool_target@/%{gcc_version}
-%{_libexecdir}/gcc/@tool_target@/%{gcc_version}/cc1%{_exeext}
-%{_libexecdir}/gcc/@tool_target@/%{gcc_version}/collect2%{_exeext}
-
Index: contrib/crossrpms/gcc/target-gfortran.add
===================================================================
--- contrib/crossrpms/gcc/target-gfortran.add	(revision 2b29f934cec865ab5918aa91df4d6bb245f5850b)
+++ contrib/crossrpms/gcc/target-gfortran.add	(revision b66f71f339dd4fdaf02cadae6cdfab1be2354335)
@@ -12,4 +12,5 @@
 Requires:       @rpmprefix@gcc-gfortran-common
 %endif
+Requires:       @rpmprefix@@tool_target@-gcc = %{gcc_rpmvers}-%{release}
 Requires:       @rpmprefix@@tool_target@-gcc-libgfortran = %{gcc_rpmvers}-%{release}
 
@@ -17,14 +18,43 @@
 GCC fortran compiler for @tool_target@.
 
-%files -n @rpmprefix@@tool_target@-gcc-gfortran -f build/files.gfortran
+%files -n @rpmprefix@@tool_target@-gcc-gfortran
 %defattr(-,root,root)
+%sysdir %{_prefix}
+%sysdir %{_bindir}
 %{_bindir}/@tool_target@-gfortran%{_exeext}
 
+%sysdir %{_mandir}
+%sysdir %{_mandir}/man1
 %{_mandir}/man1/@tool_target@-gfortran.1*
 
+%sysdir %{_libexecdir}
 %dir %{_libexecdir}/gcc
 %dir %{_libexecdir}/gcc/@tool_target@
 %dir %{_libexecdir}/gcc/@tool_target@/%{gcc_version}
 %{_libexecdir}/gcc/@tool_target@/%{gcc_version}/f951%{_exeext}
+
+# ==============================================================
+# @rpmprefix@@tool_target@-gcc-libgfortran
+# ==============================================================
+%package -n @rpmprefix@@tool_target@-gcc-libgfortran
+Summary:	Fortran 95 support libraries for @tool_target@-gcc
+Group:          Development/Tools
+Version:        %{gcc_rpmvers}
+%{?_with_noarch_subpackages:BuildArch: noarch}
+License:	GPL
+
+%description -n @rpmprefix@@tool_target@-gcc-libgfortran
+%{summary}
+
+%files -n @rpmprefix@@tool_target@-gcc-libgfortran -f build/files.gfortran
+%defattr(-,root,root)
+%sysdir %{_prefix}
+%sysdir %{_gcclibdir}
+%dir %{_gcclibdir}/gcc
+%dir %{_gcclibdir}/gcc/@tool_target@
+%dir %{_gcclibdir}/gcc/@tool_target@/%{gcc_version}
+%if "%{gcc_version}" >= "4.2.0"
+%{_gcclibdir}/gcc/@tool_target@/%{gcc_version}/finclude
+%endif
 %endif
 
Index: contrib/crossrpms/gcc/target-gnat.add
===================================================================
--- contrib/crossrpms/gcc/target-gnat.add	(revision 2b29f934cec865ab5918aa91df4d6bb245f5850b)
+++ contrib/crossrpms/gcc/target-gnat.add	(revision b66f71f339dd4fdaf02cadae6cdfab1be2354335)
@@ -8,5 +8,4 @@
 Version:        %{gcc_rpmvers}
 License:	GPL
-Provides:	@rpmprefix@@tool_target@-gcc-gnat = %{gcc_rpmvers}-%{release}
 
 %if %_build_infos
@@ -22,7 +21,11 @@
 %files -n @rpmprefix@@tool_target@-gcc-gnat
 %defattr(-,root,root)
+%sysdir %{_prefix}
+
+%sysdir %{_bindir}
 %{_bindir}/@tool_target@-gnat*
 %{_bindir}/@tool_target@-gprmake%{_exeext}
 
+%sysdir %{_libexecdir}
 %dir %{_libexecdir}/gcc
 %dir %{_libexecdir}/gcc/@tool_target@
@@ -30,4 +33,8 @@
 %{_libexecdir}/gcc/@tool_target@/%{gcc_version}/gnat1%{_exeext}
 
+%sysdir %{_gcclibdir}
+%dir %{_gcclibdir}/gcc
+%dir %{_gcclibdir}/gcc/@tool_target@
+%dir %{_gcclibdir}/gcc/@tool_target@/%{gcc_version}
 %{_gcclibdir}/gcc/@tool_target@/%{gcc_version}/adalib
 %{_gcclibdir}/gcc/@tool_target@/%{gcc_version}/adainclude
Index: contrib/crossrpms/gcc/target-newlib.add
===================================================================
--- contrib/crossrpms/gcc/target-newlib.add	(revision 2b29f934cec865ab5918aa91df4d6bb245f5850b)
+++ contrib/crossrpms/gcc/target-newlib.add	(revision b66f71f339dd4fdaf02cadae6cdfab1be2354335)
@@ -9,4 +9,5 @@
 Version:	%{newlib_version}
 Release:        @NEWLIB_RPMREL@
+%{?_with_noarch_subpackages:BuildArch: noarch}
 
 %if %build_infos
@@ -19,5 +20,5 @@
 %files -n @rpmprefix@@tool_target@-newlib -f build/files.newlib
 %defattr(-,root,root)
-%sysdir %{_prefix}
+%sysdir %{_exec_prefix}
 %dir %{_exec_prefix}/@tool_target@
 %{_exec_prefix}/@tool_target@/include
Index: contrib/crossrpms/gcc/target-objc.add
===================================================================
--- contrib/crossrpms/gcc/target-objc.add	(revision 2b29f934cec865ab5918aa91df4d6bb245f5850b)
+++ contrib/crossrpms/gcc/target-objc.add	(revision b66f71f339dd4fdaf02cadae6cdfab1be2354335)
@@ -10,11 +10,13 @@
 
 Requires:       @rpmprefix@@tool_target@-gcc = %{gcc_rpmvers}-%{release}
+Requires:       @rpmprefix@@tool_target@-gcc-libobjc = %{gcc_rpmvers}-%{release}
 
 %description -n @rpmprefix@@tool_target@-gcc-objc
 GCC objc compiler for @tool_target@.
 
-%files -n @rpmprefix@@tool_target@-gcc-objc -f build/files.objc
+%files -n @rpmprefix@@tool_target@-gcc-objc
 %defattr(-,root,root)
-
+%sysdir %{_exec_prefix}
+%sysdir %{_libexecdir}
 %dir %{_libexecdir}/gcc
 %dir %{_libexecdir}/gcc/@tool_target@
@@ -22,4 +24,25 @@
 %{_libexecdir}/gcc/@tool_target@/%{gcc_version}/cc1obj%{_exeext}
 
+# ==============================================================
+# @rpmprefix@@tool_target@-gcc-libobjc
+# ==============================================================
+%package -n @rpmprefix@@tool_target@-gcc-libobjc
+Summary:        Objective C support for @tool_target@-gcc
+Group:          Development/Tools
+Version:        %{gcc_rpmvers}
+%{?_with_noarch_subpackages:BuildArch: noarch}
+License:	GPL
+
+%description -n @rpmprefix@@tool_target@-gcc-libobjc
+Support libraries for GCC's objc compiler for @tool_target@.
+
+%files -n @rpmprefix@@tool_target@-gcc-libobjc -f build/files.objc
+%defattr(-,root,root)
+%sysdir %{_prefix}
+%sysdir %{_gcclibdir}
+%dir %{_gcclibdir}/gcc
+%dir %{_gcclibdir}/gcc/@tool_target@
+%dir %{_gcclibdir}/gcc/@tool_target@/%{gcc_version}
+%dir %{_gcclibdir}/gcc/@tool_target@/%{gcc_version}/include
 %{_gcclibdir}/gcc/@tool_target@/%{gcc_version}/include/objc
 %endif
