mirror of
https://gitlab.rtems.org/rtems/rtos/rtems.git
synced 2025-12-26 14:18:20 +00:00
by all targets and one or more target specific RPMs. This significantly reduces the conflicts between the RPMs whether installing one or multiple targets.
72 lines
1.2 KiB
Bash
72 lines
1.2 KiB
Bash
#!/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}/gccnewlib/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-${gcc_version}-newlib-${newlib_version}.spec
|
|
|
|
sed -e "s%@Release@%${gccnewlib_rpm_release}%g" \
|
|
-e "s%@target_alias@%${target_alias}%g" \
|
|
-e "s%@rpm_build_root@%${rpm_build_root}%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" \
|
|
-e "s%@exe_ext@%${exe_ext}%g" \
|
|
< ${specsrc} \
|
|
> ${specfile}
|
|
|
|
echo Generated ${specfile}.
|