From 18408afbc7c4c4e67e91cc8a3a61232d6efadfc0 Mon Sep 17 00:00:00 2001 From: Joel Sherrill Date: Fri, 15 Oct 1999 14:11:02 +0000 Subject: Ralf Corsepius (corsepiu@faw.uni-ulm.de) submitted these scripts to help build RPMs. --- scripts/toolchain.spec.in | 125 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 125 insertions(+) create mode 100644 scripts/toolchain.spec.in (limited to 'scripts/toolchain.spec.in') diff --git a/scripts/toolchain.spec.in b/scripts/toolchain.spec.in new file mode 100644 index 0000000000..a1c04957fc --- /dev/null +++ b/scripts/toolchain.spec.in @@ -0,0 +1,125 @@ +# +# spec file for package rtems +# +# Copyright (c) 1999 OARCorp, Huntsville, AL +# +# please send bugfixes or comments to joel@OARcorp.com +# + +# neededforbuild @target_alias@-binutils @target_alias@-gcc + +Vendor: OAR Corporation +Distribution: Linux +Name: rtems-@target_alias@-tools +Release: @Release@ +Copyright: 1999 OARCorp +Group: unsorted +Provides: rtems-@target_alias@-tools + +Autoreqprov: on +Packager: corsepiu@faw.uni-ulm.de + +Version: @Version@ +Summary: rtems gcc tool chain for target @target_alias@ +Source0: gcc-2.95.1.tar.gz +Source1: newlib-1.8.2.tar.gz +Source2: binutils-2.9.5.tar.gz +Patch0: gcc-2.95.1-rtems-19991014.diff +Patch1: newlib-1.8.2-rtems-19991014.diff +Patch2: binutils-2.9.5-rtems-19991014.diff + +Buildroot: /tmp +# Patch: +%description +RTEMS is a free operating system for embedded systems. + +Authors: +-------- + Joel Sherrill (joel@oarcorp.com) + ... + +%prep +# untar the sources inside rtems-@target_alias@-@bsp@-@Version@ +%setup -c -n rtems-@target_alias@-tools -a 1 -a 2 + +# %setup -c -n rtems-@target_alias@ -a 1 -a 2 +%patch0 -p0 +%patch1 -p0 +%patch2 -p0 + +mkdir src +( cd src + # The configure scripts and share libraries should be taken from + # the tool component with the newest version. + GET_CONFIGURE_SCRIPTS_FROM=gcc-2.95.1 + for f in config config.guess config.sub configure configure.in \ + config-ml.in Makefile.in install-sh move-if-change \ + mkinstalldirs libiberty config.if ltconfig missing + do + ln -s ../${GET_CONFIGURE_SCRIPTS_FROM}/$f . + done + + # Link in GCC or EGCS + for f in gcc libio libstdc++ texinfo xiberty + do + ln -s ../gcc-2.95.1/${f} . + done + + # Get these components from binutils + for f in bfd binutils gas gprof ld opcodes etc + do + ln -s ../binutils-2.9.5/$f . + done + + # Now get the C library + ln -s ../newlib-1.8.2/newlib . +) + +%build +test -d build || mkdir build +( cd build + ../src/configure --target=@target_alias@ \ + --with-gnu-as --with-gnu-ld --verbose \ + --prefix=/opt/rtems \ + --with-sys-includes=$RPM_BUILD_ROOT/opt/rtems/@target_alias@/sys-include + + test -d $RPM_BUILD_ROOT/opt \ + || mkdir $RPM_BUILD_ROOT/opt + test -d $RPM_BUILD_ROOT/opt/rtems \ + || mkdir $RPM_BUILD_ROOT/opt/rtems + test -d $RPM_BUILD_ROOT/opt/rtems/@target_alias@ \ + || mkdir $RPM_BUILD_ROOT/opt/rtems/@target_alias@ + test -d $RPM_BUILD_ROOT/opt/rtems/@target_alias@/include \ + || mkdir $RPM_BUILD_ROOT/opt/rtems/@target_alias@/include + test -d $RPM_BUILD_ROOT/opt/rtems/@target_alias@/sys-include \ + || mkdir $RPM_BUILD_ROOT/opt/rtems/@target_alias@/sys-include + + srclimits=../src/newlib/libc/sys/rtems/include/limits.h + for dir in $RPM_BUILD_ROOT/opt/rtems/@target_alias@/include \ + $RPM_BUILD_ROOT/opt/rtems/@target_alias@/sys-include + do + cp ${srclimits} ${dir} + done + + make LANGUAGES="c c++" all + + cd gcc + rm -f stmp-multilib + find . -name "*.a" -print | xargs -e rm -f + + make LANGUAGES="c c++" all + cd .. +) + +%install +( cd build + make prefix=$RPM_BUILD_ROOT/opt/rtems LANGUAGES="c c++" install +) + +%files +/opt/rtems/@target_alias@/bin +/opt/rtems/@target_alias@/include +/opt/rtems/@target_alias@/lib +/opt/rtems/@target_alias@/sys-include +/opt/rtems/bin/@target_alias@* +/opt/rtems/lib/gcc-lib/@target_alias@/2.95.1 -- cgit v1.2.3