summaryrefslogtreecommitdiffstats
path: root/scripts/mkgcc3newlibspec.in
diff options
context:
space:
mode:
authorJoel Sherrill <joel.sherrill@OARcorp.com>2002-03-28 18:17:40 +0000
committerJoel Sherrill <joel.sherrill@OARcorp.com>2002-03-28 18:17:40 +0000
commitafe5cac98d9c0ee11555901eca7ec671d98c8ea8 (patch)
tree2d68da68ea0bbc1828183827f5d6146de86f01c5 /scripts/mkgcc3newlibspec.in
parent2001-03-28 Joel Sherrill <joel@OARcorp.com> (diff)
downloadrtems-afe5cac98d9c0ee11555901eca7ec671d98c8ea8.tar.bz2
2001-03-28 Joel Sherrill <joel@OARcorp.com>
* Per PR64 added support for gcc 3.x RPMs * Makefile.am, configure.ac, mkspec, setup, setup.def: Modified. * mkgcc3newlibspec.in: New file. * gcc3newlib: New subdirectory. * base-g77.add, base-gcc.add, base-gcj.add, gccnewlib.add, gccnewlib_c_only.spec.in, gccnewlib.spec.in, HISTORY, Makefile.am, README, target-g77.add, target-gcc.add, target-gcj.add, target-objc.add: New files.
Diffstat (limited to '')
-rw-r--r--scripts/mkgcc3newlibspec.in73
1 files changed, 73 insertions, 0 deletions
diff --git a/scripts/mkgcc3newlibspec.in b/scripts/mkgcc3newlibspec.in
new file mode 100644
index 0000000000..c3bbbed256
--- /dev/null
+++ b/scripts/mkgcc3newlibspec.in
@@ -0,0 +1,73 @@
+#!/bin/sh
+#
+# Usage: mktoolspec CPU
+#
+
+RTEMS_DIR=`dirname $0`/@top_srcdir@
+
+CFG=setup.cache
+dst=@RPM_SPECSdir@
+exe_ext=@EXEEXT@
+
+usage()
+{
+ echo "$0 [options] <target_alias>"
+ echo " options:"
+ echo " -cfg <setup.cache>"
+ echo " -o <rpm-spec-dir>"
+ exit 1 ;
+}
+
+specsrc=${RTEMS_DIR}/gcc3newlib/gccnewlib.spec.in
+
+while test $# -ge 2; do
+case $1 in
+-cfg)
+ shift
+ CFG=$1
+ shift
+ ;;
+-o)
+ shift
+ dst=$1
+ shift
+ ;;
+-a) # alternate specs file
+ shift
+ specsrc=$1
+ shift
+ ;;
+-*)
+ echo "invalid option $1";
+ usage
+ ;;
+esac
+done
+
+if test ! $# -eq 1;
+then
+ echo "Invalid number of arguments"
+ usage
+fi
+
+# target to build for
+target_alias=$1
+
+. ./$CFG
+
+specfile=${dst}/${target_alias}-gcc-${gcc3_version}-newlib-${gcc3newlib_version}.spec
+
+# note that the variables in the gcc3newlib directory are actually the same
+sed -e "s%@Release\@%${gcc3newlib_rpm_release}%g" \
+ -e "s%@target_alias\@%${target_alias}%g" \
+ -e "s%@prefix\@%@prefix@%g" \
+ -e "s%@rpm_build_root\@%${rpm_build_root}%g" \
+ -e "s%@gcc_version\@%${gcc3_version}%g" \
+ -e "s%@gcc_patch_version\@%${gcc3_patch_version}%g" \
+ -e "s%@newlib_version\@%${gcc3newlib_version}%g" \
+ -e "s%@newlib_patch_version\@%${gcc3newlib_patch_version}%g" \
+ -e "s%@exe_ext\@%${exe_ext}%g" \
+< ${specsrc} \
+> ${specfile}
+
+echo Generated ${specfile}.