diff options
Diffstat (limited to 'scripts/mkgccnewlibspec')
-rw-r--r-- | scripts/mkgccnewlibspec | 63 |
1 files changed, 41 insertions, 22 deletions
diff --git a/scripts/mkgccnewlibspec b/scripts/mkgccnewlibspec index 172d905ca6..9b1c1bf747 100644 --- a/scripts/mkgccnewlibspec +++ b/scripts/mkgccnewlibspec @@ -5,41 +5,60 @@ RTEMS_DIR=`dirname $0` -target_alias=$1 - -# RPM release number -rpm_release=0 +CFG=user.cfg +dst=/usr/src/packages/SPECS -# gcc version number -gcc_version=2.95.1 -gcc_patch_version=19991015 +usage() +{ + echo "$0 [options] <target_alias>" + echo " options:" + echo " -cfg <user.cfg>" + echo " -o <rpm-spec-dir>" + exit 1 ; +} -# newlib version number -newlib_version=1.8.2 -newlib_patch_version=19991015 +while test $# -ge 2; do +case $1 in +-cfg) + shift + CFG=$1 + shift + ;; +-o) + shift + dst=$1 + shift + ;; +-*) + echo "invalid option $1"; + usage + ;; +esac +done -# Some linux distributions use /usr/src/packages -# redhat uses /usr/src/redhat -# others might use /usr/src -if test -d /usr/src/packages/SPECS; -then -dst=/usr/src/packages/SPECS; -elif test -d /usr/src/redhat/SPECS; - then -dst=/usr/src/redhat/SPECS; -elif test -d /usr/src/SPECS/; +if test ! $# -eq 1; then -dst=/usr/src/SPECS; + echo "Invalid number of arguments" + usage fi +# target to build for +target_alias=$1 + +# RPM release number +rpm_release=0 + +. ./$CFG + specfile=${dst}/$target_alias-gcc-${gcc_version}-newlib-${newlib_version}.spec + sed -e "s%@Release@%${rpm_release}%g" \ -e "s%@target_alias@%${target_alias}%g" \ -e "s%@gcc_version@%${gcc_version}%g" \ -e "s%@gcc_patch_version@%${gcc_patch_version}%g" \ -e "s%@newlib_version@%${newlib_version}%g" \ -e "s%@newlib_patch_version@%${newlib_patch_version}%g" \ -< ${RTEMS_DIR}/gccnewlib.spec.in \ +< ${RTEMS_DIR}/gccnewlib/gccnewlib.spec.in \ > ${specfile} echo Generated ${specfile}. |