summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRalf Corsepius <ralf.corsepius@rtems.org>2006-02-15 15:04:03 +0000
committerRalf Corsepius <ralf.corsepius@rtems.org>2006-02-15 15:04:03 +0000
commitc0b13f02d8ce3f4c381d7bbcba91d94d01e92a15 (patch)
tree39fcbe26e8c2453e8e977630ecf8c82c04e72ba0
parentNew. Use FSF sources. (diff)
downloadrtems-c0b13f02d8ce3f4c381d7bbcba91d94d01e92a15.tar.bz2
New.
-rw-r--r--contrib/crossrpms/.cvsignore6
-rw-r--r--contrib/crossrpms/binutils/.cvsignore6
-rw-r--r--contrib/crossrpms/freebsd5.2/binutils-sources.add2
-rw-r--r--contrib/crossrpms/freebsd5.2/gcc-sources.add33
-rw-r--r--contrib/crossrpms/freebsd6.0/binutils-sources.add2
-rw-r--r--contrib/crossrpms/freebsd6.0/gcc-sources.add33
-rw-r--r--contrib/crossrpms/mingw32/libs.add48
-rw-r--r--contrib/crossrpms/mingw32/target-libs.add24
-rw-r--r--contrib/crossrpms/mingw32/target-w32api.add24
-rw-r--r--contrib/crossrpms/mingw32/w32api.add48
-rw-r--r--contrib/crossrpms/rtems/.cvsignore4
-rw-r--r--contrib/crossrpms/rtems/Makefile.am83
-rw-r--r--contrib/crossrpms/rtems/binutils-sources.add3
-rw-r--r--contrib/crossrpms/rtems/gcc-sources.add39
-rw-r--r--contrib/crossrpms/solaris2.7/Makefile.am69
-rw-r--r--contrib/crossrpms/solaris2.7/binutils-sources.add2
-rw-r--r--contrib/crossrpms/solaris2.7/gcc-sources.add33
17 files changed, 454 insertions, 5 deletions
diff --git a/contrib/crossrpms/.cvsignore b/contrib/crossrpms/.cvsignore
new file mode 100644
index 0000000000..5119ca8078
--- /dev/null
+++ b/contrib/crossrpms/.cvsignore
@@ -0,0 +1,6 @@
+Makefile
+Makefile.in
+aclocal.m4
+configure
+config.*
+autom4te*
diff --git a/contrib/crossrpms/binutils/.cvsignore b/contrib/crossrpms/binutils/.cvsignore
new file mode 100644
index 0000000000..75693ef12c
--- /dev/null
+++ b/contrib/crossrpms/binutils/.cvsignore
@@ -0,0 +1,6 @@
+*.spec
+Makefile
+Makefile.in
+binutils.spec
+binutils.spec.in
+mkspec
diff --git a/contrib/crossrpms/freebsd5.2/binutils-sources.add b/contrib/crossrpms/freebsd5.2/binutils-sources.add
index 27a778ea60..02c71c1b3e 100644
--- a/contrib/crossrpms/freebsd5.2/binutils-sources.add
+++ b/contrib/crossrpms/freebsd5.2/binutils-sources.add
@@ -1,3 +1,3 @@
Source0: ftp://ftp.gnu.org/pub/binutils/binutils-%{binutils_version}.tar.bz2
%{?!_with_sources:NoSource: 0}
-@PATCH0@
+Patch0: binutils-2.16.1-rtems-20050708.diff
diff --git a/contrib/crossrpms/freebsd5.2/gcc-sources.add b/contrib/crossrpms/freebsd5.2/gcc-sources.add
new file mode 100644
index 0000000000..c2f8c16e45
--- /dev/null
+++ b/contrib/crossrpms/freebsd5.2/gcc-sources.add
@@ -0,0 +1,33 @@
+Source0: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_version}/gcc-core-%{gcc_pkgvers}.tar.bz2
+@PATCH0@
+%{?!_with_sources:NoSource: 0}
+
+%if %build_cxx
+Source1: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_version}/gcc-g++-%{gcc_pkgvers}.tar.bz2
+@PATCH1@
+%{?!_with_sources:NoSource: 1}
+%endif
+
+%if %build_f95
+Source2: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_version}/gcc-fortran-%{gcc_pkgvers}.tar.bz2
+@PATCH2@
+%{?!_with_sources:NoSource: 2}
+%endif
+
+%if %build_gcj
+Source3: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_version}/gcc-java-%{gcc_pkgvers}.tar.bz2
+@PATCH3@
+%{?!_with_sources:NoSource: 3}
+%endif
+
+%if %build_gnat
+Source4: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_version}/gcc-ada-%{gcc_pkgvers}.tar.bz2
+@PATCH4@
+%{?!_with_sources:NoSource: 4}
+%endif
+
+%if %build_objc
+Source5: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_version}/gcc-objc-%{gcc_pkgvers}.tar.bz2
+@PATCH5@
+%{?!_with_sources:NoSource: 5}
+%endif
diff --git a/contrib/crossrpms/freebsd6.0/binutils-sources.add b/contrib/crossrpms/freebsd6.0/binutils-sources.add
index 27a778ea60..02c71c1b3e 100644
--- a/contrib/crossrpms/freebsd6.0/binutils-sources.add
+++ b/contrib/crossrpms/freebsd6.0/binutils-sources.add
@@ -1,3 +1,3 @@
Source0: ftp://ftp.gnu.org/pub/binutils/binutils-%{binutils_version}.tar.bz2
%{?!_with_sources:NoSource: 0}
-@PATCH0@
+Patch0: binutils-2.16.1-rtems-20050708.diff
diff --git a/contrib/crossrpms/freebsd6.0/gcc-sources.add b/contrib/crossrpms/freebsd6.0/gcc-sources.add
new file mode 100644
index 0000000000..023fa6b712
--- /dev/null
+++ b/contrib/crossrpms/freebsd6.0/gcc-sources.add
@@ -0,0 +1,33 @@
+Source0: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_version}/gcc-core-%{gcc_pkgvers}.tar.bz2
+@PATCH0@
+%{?!_with_sources:NoSource: 0}
+
+%if %build_cxx
+Source1: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_version}/gcc-g++-%{gcc_pkgvers}.tar.bz2
+@PATCH1@
+%{?!_with_sources:NoSource: 1}
+%endif
+
+%if %build_f95
+Source2: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_version}/gcc-fortran-%{gcc_pkgvers}.tar.bz2
+@PATCH2@
+%{?!_with_sources:NoSource: 2}
+%endif
+
+%if %build_gcj
+Source3: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_version}/gcc-java-%{gcc_pkgvers}.tar.bz2
+@PATCH3@
+%{?!_with_sources:NoSource: 3}
+%endif
+
+%if %build_gnat
+Source4: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_version}/gcc-ada-%{gcc_pkgvers}.tar.bz2
+@PATCH4@
+%{?!_with_sources:NoSource: 4}
+%endif
+
+%if %build_objc
+Source5: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_version}/gcc-objc-%{gcc_pkgvers}.tar.bz2
+@PATCH5@
+%{?!_with_sources:NoSource: 5}
+%endif
diff --git a/contrib/crossrpms/mingw32/libs.add b/contrib/crossrpms/mingw32/libs.add
new file mode 100644
index 0000000000..0e86782965
--- /dev/null
+++ b/contrib/crossrpms/mingw32/libs.add
@@ -0,0 +1,48 @@
+#
+# spec file for package @tool_target@
+#
+
+%define mingw32_version @MINGW32_VERS@
+%define mingw32_rpmvers %{expand: %(echo @MINGW32_VERS@ | tr - _)}
+
+%define _use_internal_dependency_generator 0
+%define __debug_install_post %{nil}
+
+Name: @tool_target@
+Release: @MINGW32_RPMREL@%{?dist}
+License: GPL
+Group: Development/Tools
+
+BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
+BuildArch: noarch
+
+Version: %mingw32_rpmvers
+Summary: MinGW Libraries
+
+Source0: http://dl.sourceforge.net/sourceforge/mingw/mingw-runtime-%{mingw32_version}.tar.gz
+NoSource: 0
+
+%description
+Mingw libraries.
+
+%prep
+%setup -c -q
+
+%build
+ rm -rf @tool_target@
+
+ # Setup sys-root (Usable for gcc >= 3.4)
+ mkdir -p @tool_target@/sys-root/usr
+ cp -a include lib @tool_target@/sys-root/usr
+
+ # Setup sys-lib and sys-include (Required by gcc < 3.4)
+ mkdir -p @tool_target@/lib
+ cp -a @tool_target@/sys-root/usr/lib/* @tool_target@/lib
+ mkdir -p @tool_target@/include
+ cp -a @tool_target@/sys-root/usr/include/* @tool_target@/include
+
+%install
+ rm -rf $RPM_BUILD_ROOT
+ mkdir -p $RPM_BUILD_ROOT%{_prefix}
+ cp -a @tool_target@ $RPM_BUILD_ROOT%{_prefix}
+
diff --git a/contrib/crossrpms/mingw32/target-libs.add b/contrib/crossrpms/mingw32/target-libs.add
new file mode 100644
index 0000000000..b3d73c8b79
--- /dev/null
+++ b/contrib/crossrpms/mingw32/target-libs.add
@@ -0,0 +1,24 @@
+%package libs
+Group: Development/Tools
+Summary: @tool_target@ target files for gcc < 3.4
+
+%description libs
+MinGW target files or gcc < 3.4
+
+%files libs
+%defattr(-,root,root,-)
+%dir %{_prefix}/@tool_target@
+%{_prefix}/@tool_target@/include
+%{_prefix}/@tool_target@/lib
+
+%package sys-root
+Group: Development/Tools
+Summary: @tool_target@ target files for gcc >= 3.4
+
+%description sys-root
+MinGW target files for gcc >= 3.4
+
+%files sys-root
+%defattr(-,root,root,-)
+%dir %{_prefix}/@tool_target@
+%{_prefix}/@tool_target@/sys-root
diff --git a/contrib/crossrpms/mingw32/target-w32api.add b/contrib/crossrpms/mingw32/target-w32api.add
new file mode 100644
index 0000000000..b3d73c8b79
--- /dev/null
+++ b/contrib/crossrpms/mingw32/target-w32api.add
@@ -0,0 +1,24 @@
+%package libs
+Group: Development/Tools
+Summary: @tool_target@ target files for gcc < 3.4
+
+%description libs
+MinGW target files or gcc < 3.4
+
+%files libs
+%defattr(-,root,root,-)
+%dir %{_prefix}/@tool_target@
+%{_prefix}/@tool_target@/include
+%{_prefix}/@tool_target@/lib
+
+%package sys-root
+Group: Development/Tools
+Summary: @tool_target@ target files for gcc >= 3.4
+
+%description sys-root
+MinGW target files for gcc >= 3.4
+
+%files sys-root
+%defattr(-,root,root,-)
+%dir %{_prefix}/@tool_target@
+%{_prefix}/@tool_target@/sys-root
diff --git a/contrib/crossrpms/mingw32/w32api.add b/contrib/crossrpms/mingw32/w32api.add
new file mode 100644
index 0000000000..c989d58075
--- /dev/null
+++ b/contrib/crossrpms/mingw32/w32api.add
@@ -0,0 +1,48 @@
+#
+# spec file for package @tool_target@
+#
+
+%define w32api_version @W32API_VERS@
+%define w32api_rpmvers %{expand: %(echo @W32API_VERS@ | tr - _)}
+
+%define _use_internal_dependency_generator 0
+%define __debug_install_post %{nil}
+
+Name: @tool_target@-w32api
+Release: @W32API_RPMREL@%{?dist}
+License: GPL
+Group: Development/Tools
+
+BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
+BuildArch: noarch
+
+Version: %w32api_rpmvers
+Summary: MinGW Libraries
+
+Source0: http://dl.sourceforge.net/sourceforge/mingw/w32api-%{w32api_version}.tar.gz
+NoSource: 0
+
+%description
+Mingw libraries.
+
+%prep
+%setup -c -q
+
+%build
+ rm -rf @tool_target@
+
+ # Setup sys-root (Usable for gcc >= 3.4)
+ mkdir -p @tool_target@/sys-root/usr
+ cp -a include lib @tool_target@/sys-root/usr
+
+ # Setup sys-lib and sys-include (Required by gcc < 3.4)
+ mkdir -p @tool_target@/lib
+ cp -a @tool_target@/sys-root/usr/lib/* @tool_target@/lib
+ mkdir -p @tool_target@/include
+ cp -a @tool_target@/sys-root/usr/include/* @tool_target@/include
+
+%install
+ rm -rf $RPM_BUILD_ROOT
+ mkdir -p $RPM_BUILD_ROOT%{_prefix}
+ cp -a @tool_target@ $RPM_BUILD_ROOT%{_prefix}
+
diff --git a/contrib/crossrpms/rtems/.cvsignore b/contrib/crossrpms/rtems/.cvsignore
new file mode 100644
index 0000000000..91993472f0
--- /dev/null
+++ b/contrib/crossrpms/rtems/.cvsignore
@@ -0,0 +1,4 @@
+*.spec
+*.spec.in
+Makefile
+Makefile.in
diff --git a/contrib/crossrpms/rtems/Makefile.am b/contrib/crossrpms/rtems/Makefile.am
new file mode 100644
index 0000000000..a318c85324
--- /dev/null
+++ b/contrib/crossrpms/rtems/Makefile.am
@@ -0,0 +1,83 @@
+# $Id$
+
+# Just testing
+TARGET = sparc-rtems4.7
+
+noinst_DATA =
+CLEANFILES =
+
+BINUTILS_VERS = 2.16.1
+BINUTILS_RPMREL = 0.20060215.0
+
+BINUTILS_SUBPACKAGES = $(top_builddir)/common/common.add
+BINUTILS_SUBPACKAGES += ../binutils/binutils.add
+BINUTILS_SUBPACKAGES += ../binutils/rpm-install.add
+BINUTILS_SUBPACKAGES += $(top_builddir)/common/clean.add
+BINUTILS_SUBPACKAGES += ../binutils/target-binutils.add
+BINUTILS_SUBPACKAGES += ../binutils/base-binutils.add
+
+$(TARGET)-binutils.spec.in: $(BINUTILS_SUBPACKAGES) binutils-sources.add
+ cat $(BINUTILS_SUBPACKAGES) | sed \
+ -e "/[@]SOURCES[@]/r ./binutils-sources.add" \
+ -e "/[@]SOURCES[@]/d" \
+ -e '/^%define _prefix.*$$/d' \
+ -e '/^%define rpmgroup.*$$/d' \
+ -e '/^%define binutils_target.*$$/d' \
+ -e "s,[@]rpmprefix[@],,g" \
+ -e "s,rtems[@]osversion[@],rtems,g" \
+ -e "s,%{rpmgroup},Development/Tools,g" \
+ > $(TARGET)-binutils.spec.in
+CLEANFILES += $(TARGET)-binutils.spec.in
+
+
+$(TARGET)-binutils.spec: $(TARGET)-binutils.spec.in
+ sed \
+ -e "s/[@]tool_target[@]/$(TARGET)/g" \
+ -e "s/[@]BINUTILS_VERS[@]/$(BINUTILS_VERS)/g" \
+ -e "s/[@]BINUTILS_RPMREL[@]/$(BINUTILS_RPMREL)/g" \
+ $(srcdir)/$(TARGET)-binutils.spec.in > $@
+CLEANFILES += $(TARGET)-binutils.spec
+noinst_DATA += $(TARGET)-binutils.spec
+
+
+GCC_VERS = 4.0.2
+GCC_RPMREL = 0.20060215.0
+
+GCC_SUBPACKAGES = $(top_builddir)/common/common.add
+GCC_SUBPACKAGES += ../gccnewlib/gccnewlib.add
+GCC_SUBPACKAGES += ../gccnewlib/install.add
+GCC_SUBPACKAGES += ../gccnewlib/rpm-install.add
+GCC_SUBPACKAGES += $(top_builddir)/common/clean.add
+GCC_SUBPACKAGES += ../gccnewlib/target-gcc.add
+GCC_SUBPACKAGES += ../gccnewlib/base-gcc.add
+GCC_SUBPACKAGES += ../gccnewlib/target-c++.add
+
+$(TARGET)-gcc.spec.in: $(GCC_SUBPACKAGES) gcc-sources.add
+ cat $(GCC_SUBPACKAGES) | sed \
+ -e "/[@]SOURCES[@]/r ./gcc-sources.add" \
+ -e "/[@]SOURCES[@]/d" \
+ -e '/^%define _prefix.*$$/d' \
+ -e '/^%define rpmgroup.*$$/d' \
+ -e '/^%define gcc_target.*$$/d' \
+ -e "s,[@]rpmprefix[@],,g" \
+ -e "s,rtems[@]osversion[@],rtems,g" \
+ -e "s,%{rpmgroup},Development/Tools,g" \
+ -e "/^%package -n @tool_target@-gcc/d" \
+ -e 's,^%define build_newlib.*$$,%define build_newlib 1,' \
+ > $(TARGET)-gcc.spec.in
+CLEANFILES += $(TARGET)-gcc.spec.in
+
+$(TARGET)-gcc.spec: $(TARGET)-gcc.spec.in
+ sed \
+ -e "s/[@]tool_target[@]/$(TARGET)/g" \
+ -e "s/[@]GCC_VERS[@]/$(GCC_VERS)/g" \
+ -e "s/[@]GCC_RPMREL[@]/$(GCC_RPMREL)/g" \
+ -e "/@PATCH0@/d" \
+ -e "/@PATCH1@/d" \
+ -e "/@PATCH2@/d" \
+ -e "/@PATCH3@/d" \
+ -e "/@PATCH4@/d" \
+ -e "/@PATCH5@/d" \
+ $(srcdir)/$(TARGET)-gcc.spec.in > $@
+CLEANFILES += $(TARGET)-gcc.spec
+noinst_DATA += $(TARGET)-gcc.spec
diff --git a/contrib/crossrpms/rtems/binutils-sources.add b/contrib/crossrpms/rtems/binutils-sources.add
new file mode 100644
index 0000000000..02c71c1b3e
--- /dev/null
+++ b/contrib/crossrpms/rtems/binutils-sources.add
@@ -0,0 +1,3 @@
+Source0: ftp://ftp.gnu.org/pub/binutils/binutils-%{binutils_version}.tar.bz2
+%{?!_with_sources:NoSource: 0}
+Patch0: binutils-2.16.1-rtems-20050708.diff
diff --git a/contrib/crossrpms/rtems/gcc-sources.add b/contrib/crossrpms/rtems/gcc-sources.add
new file mode 100644
index 0000000000..5ae69c1356
--- /dev/null
+++ b/contrib/crossrpms/rtems/gcc-sources.add
@@ -0,0 +1,39 @@
+Source0: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_version}/gcc-core-%{gcc_pkgvers}.tar.bz2
+@PATCH0@
+%{?!_with_sources:NoSource: 0}
+
+%if %build_cxx
+Source1: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_version}/gcc-g++-%{gcc_pkgvers}.tar.bz2
+@PATCH1@
+%{?!_with_sources:NoSource: 1}
+%endif
+
+%if %build_f95
+Source2: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_version}/gcc-fortran-%{gcc_pkgvers}.tar.bz2
+@PATCH2@
+%{?!_with_sources:NoSource: 2}
+%endif
+
+%if %build_gcj
+Source3: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_version}/gcc-java-%{gcc_pkgvers}.tar.bz2
+@PATCH3@
+%{?!_with_sources:NoSource: 3}
+%endif
+
+%if %build_gnat
+Source4: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_version}/gcc-ada-%{gcc_pkgvers}.tar.bz2
+@PATCH4@
+%{?!_with_sources:NoSource: 4}
+%endif
+
+%if %build_objc
+Source5: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_version}/gcc-objc-%{gcc_pkgvers}.tar.bz2
+@PATCH5@
+%{?!_with_sources:NoSource: 5}
+%endif
+
+%if %build_newlib
+Source50: ftp://sources.redhat.com/pub/newlib/newlib-%{newlib_version}.tar.gz
+@PATCH50@
+%{?!_with_sources:NoSource: 50}
+%endif
diff --git a/contrib/crossrpms/solaris2.7/Makefile.am b/contrib/crossrpms/solaris2.7/Makefile.am
index 297790bf9e..49ed2cd0bb 100644
--- a/contrib/crossrpms/solaris2.7/Makefile.am
+++ b/contrib/crossrpms/solaris2.7/Makefile.am
@@ -2,6 +2,25 @@
TARGET = sparc-sun-solaris2.7
+noinst_DATA =
+CLEANFILES =
+
+SOLARIS_VERS = 2.7
+SOLARIS_RPMREL = 0.20060213.0
+
+$(TARGET)-libs.spec: libs.spec.in
+ sed -e "/[@]INSTALL_POST[@]/r ../common/installpost.add" \
+ -e "/[@]INSTALL_POST[@]/d" \
+ -e "/[@]FIND_REQPROV[@]/r ../common/find-reqprov.add" \
+ -e "/[@]FIND_REQPROV[@]/d" \
+ -e "s/[@]tool_target[@]/$(TARGET)/g" \
+ -e "s/[@]SOLARIS_VERS[@]/$(SOLARIS_VERS)/g" \
+ -e "s/[@]SOLARIS_RPMREL[@]/$(SOLARIS_RPMREL)/g" \
+ $(srcdir)/libs.spec.in > $@
+CLEANFILES += $(TARGET)-libs.spec
+noinst_DATA += $(TARGET)-libs.spec
+
+
BINUTILS_VERS = 2.16.1
BINUTILS_RPMREL = 0.20060214.0
@@ -12,8 +31,8 @@ BINUTILS_SUBPACKAGES += $(top_builddir)/common/clean.add
BINUTILS_SUBPACKAGES += ../binutils/target-binutils.add
BINUTILS_SUBPACKAGES += ../binutils/base-binutils.add
-$(TARGET)-binutils.spec.in: $(BINUTILS_SUBPACKAGES)
- cat $^ | sed \
+$(TARGET)-binutils.spec.in: $(BINUTILS_SUBPACKAGES) binutils-sources.add
+ cat $(BINUTILS_SUBPACKAGES) | sed \
-e "/[@]SOURCES[@]/r ./binutils-sources.add" \
-e "/[@]SOURCES[@]/d" \
-e '/^%define _prefix.*$$/d' \
@@ -35,3 +54,49 @@ $(TARGET)-binutils.spec: $(TARGET)-binutils.spec.in
$(srcdir)/$(TARGET)-binutils.spec.in > $@
CLEANFILES += $(TARGET)-binutils.spec
noinst_DATA += $(TARGET)-binutils.spec
+
+
+GCC_VERS = 4.0.2
+GCC_RPMREL = 0.20060213.0
+
+GCC_SUBPACKAGES = $(top_builddir)/common/common.add
+GCC_SUBPACKAGES += ../gccnewlib/gccnewlib.add
+GCC_SUBPACKAGES += ../gccnewlib/install.add
+GCC_SUBPACKAGES += ../gccnewlib/rpm-install.add
+GCC_SUBPACKAGES += $(top_builddir)/common/clean.add
+GCC_SUBPACKAGES += ../gccnewlib/target-gcc.add
+GCC_SUBPACKAGES += ../gccnewlib/base-gcc.add
+GCC_SUBPACKAGES += ../gccnewlib/target-c++.add
+
+$(TARGET)-gcc.spec.in: $(GCC_SUBPACKAGES) gcc-sources.add
+ cat $(GCC_SUBPACKAGES) | sed \
+ -e "/[@]SOURCES[@]/r ./gcc-sources.add" \
+ -e "/[@]SOURCES[@]/d" \
+ -e '/^%define _prefix.*$$/d' \
+ -e '/^%define rpmgroup.*$$/d' \
+ -e '/^%define gcc_target.*$$/d' \
+ -e "s,[@]rpmprefix[@],,g" \
+ -e "s,rtems[@]osversion[@],rtems,g" \
+ -e "s,%{rpmgroup},Development/Tools,g" \
+ -e "s,[@]tool_target[@]-libc,@tool_target@-sys-root,g" \
+ -e "s,= %{newlib_version}-%{release},," \
+ -e "/--with-newlib/d" \
+ -e "/^%package -n @tool_target@-gcc/d" \
+ -e 's,^%define build_newlib.*$$,%define build_newlib 0,' \
+ > $(TARGET)-gcc.spec.in
+CLEANFILES += $(TARGET)-gcc.spec.in
+
+$(TARGET)-gcc.spec: $(TARGET)-gcc.spec.in
+ sed \
+ -e "s/[@]tool_target[@]/$(TARGET)/g" \
+ -e "s/[@]GCC_VERS[@]/$(GCC_VERS)/g" \
+ -e "s/[@]GCC_RPMREL[@]/$(GCC_RPMREL)/g" \
+ -e "/@PATCH0@/d" \
+ -e "/@PATCH1@/d" \
+ -e "/@PATCH2@/d" \
+ -e "/@PATCH3@/d" \
+ -e "/@PATCH4@/d" \
+ -e "/@PATCH5@/d" \
+ $(srcdir)/$(TARGET)-gcc.spec.in > $@
+CLEANFILES += $(TARGET)-gcc.spec
+noinst_DATA += $(TARGET)-gcc.spec
diff --git a/contrib/crossrpms/solaris2.7/binutils-sources.add b/contrib/crossrpms/solaris2.7/binutils-sources.add
index 27a778ea60..02c71c1b3e 100644
--- a/contrib/crossrpms/solaris2.7/binutils-sources.add
+++ b/contrib/crossrpms/solaris2.7/binutils-sources.add
@@ -1,3 +1,3 @@
Source0: ftp://ftp.gnu.org/pub/binutils/binutils-%{binutils_version}.tar.bz2
%{?!_with_sources:NoSource: 0}
-@PATCH0@
+Patch0: binutils-2.16.1-rtems-20050708.diff
diff --git a/contrib/crossrpms/solaris2.7/gcc-sources.add b/contrib/crossrpms/solaris2.7/gcc-sources.add
new file mode 100644
index 0000000000..5232da9347
--- /dev/null
+++ b/contrib/crossrpms/solaris2.7/gcc-sources.add
@@ -0,0 +1,33 @@
+Source0: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_version}/gcc-core-%{gcc_pkgvers}.tar.bz2
+@PATCH0@
+%{?!_with_sources:NoSource: 0}
+
+%if %build_cxx
+Source1: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_version}/gcc-g++-%{gcc_pkgvers}.tar.bz2
+@PATCH1@
+%{?!_with_sources:NoSource: 1}
+%endif
+
+%if %build_f95
+Source2: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_version}/gcc-fortran-%{gcc_pkgvers}.tar.bz2
+@PATCH2@
+%{?!_with_sources:NoSource: 2}
+%endif
+
+%if %build_gcj
+Source3: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_version}/gcc-java-%{gcc_pkgvers}.tar.bz2
+@PATCH3@
+%{?!_with_sources:NoSource: 3}
+%endif
+
+%if %build_gnat
+Source4: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_version}/gcc-ada-%{gcc_pkgvers}.tar.bz2
+@PATCH4@
+%{?!_with_sources:NoSource: 4}
+%endif
+
+%if %build_objc
+Source5: ftp://ftp.gnu.org/gnu/gcc/gcc-%{gcc_version}/gcc-objc-%{gcc_pkgvers}.tar.bz2
+@PATCH5@
+%{?!_with_sources:NoSource: 5}
+%endif