#!/bin/sh
#
# Usage: mkspec CPU
#
RTEMS_DIR=`dirname $0`/@top_srcdir@
CFG=../setup.cache
usage()
{
echo "$0 [options] <target_alias>"
echo " options:"
echo " -cfg <setup.cache>"
echo " -a <alternate specs.in>"
exit 1 ;
}
specsrc=./gccnewlib.spec.in
while test $# -ge 2; do
case $1 in
-cfg)
shift
CFG=$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
if test -n "${gcc_patch_version}"; then
PATCH0="Patch0: gcc-${gcc_version}-rtems-${gcc_patch_version}.diff"
fi
if test -n "${newlib_patch_version}"; then
PATCH50="Patch50: newlib-${newlib_version}-rtems-${newlib_patch_version}.diff"
fi
# note that the variables in the gccnewlib directory are actually the same
sed -e "s,@PATCH0\@,${PATCH0}," \
-e "s,@PATCH50\@,${PATCH50}," \
-e "s,@Release\@,${gccnewlib_rpm_release},g" \
-e "s,@target_alias\@,${target_alias},g" \
-e "s,@prefix\@,@prefix@,g" \
-e "s,@rpmprefix\@,@rpmprefix@,g" \
-e "s,@rpmgroup\@,@rpmgroup@,g" \
-e "s,@osversion\@,@osversion@,g" \
-e "s,@gcc_version\@,${gcc_version},g" \
-e "s,@gcc_patch_version\@,${gcc_patch_version},g" \
-e "s,@gcc_suffix\@,${gcc_suffix},g" \
-e "s,@newlib_version\@,${newlib_version},g" \
-e "s,@newlib_patch_version\@,${newlib_patch_version},g" \
-e "s,@newlib_suffix\@,${newlib_suffix},g" \
< ${specsrc}