summaryrefslogtreecommitdiffstats
path: root/scripts/mkgdbspec.in
blob: fc4329bc1375716a3760f2e46d26e6f42a16de4c (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
#!/bin/sh 
#
#  Usage: mkgdbspec 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 ;
}

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

if test ! $# -eq 1;
then
  echo "Invalid number of arguments"
  usage
fi

# target to build for
target_alias=$1

. ./$CFG

specfile=${dst}/$target_alias-gdb-${gdb_version}.spec

case ${target_alias} in
  arm* | d10v* | d30v* | erc32* | fr30* | h8300* | h8500* | i960* | m32r* | \
  mcore* | mips* | mn10200* | mn10300* | sh* | sparc*| v850* | w65* | z8k*)
    extra_configure_arguments="--enable-sim"
    ;;
  powerpc*)
    extra_configure_arguments="--enable-sim --enable-sim-powerpc --enable-sim-timebase --enable-sim-hardware"
    #  Enabling this causes the program image to be huge and causes
    #  some gcc/hosts combinations to run out of memory.
    #          --enable-sim-inline
    ;;
  *)
    ;;
esac

sed -e "s%@Release@%${gdb_rpm_release}%g" \
    -e "s%@rpm_build_root@%${rpm_build_root}%g" \
    -e "s%@target_alias@%${target_alias}%g" \
    -e "s%@gdb_version@%${gdb_version}%g" \
    -e "s%@gdb_patch_version@%${gdb_patch_version}%g" \
    -e "s%@extra_configure_arguments@%${extra_configure_arguments}%g" \
    -e "s%@exe_ext@%${exe_ext}%g" \
< ${RTEMS_DIR}/gdb/gdb.spec.in \
> ${specfile}

case ${target_alias} in
  arm* | d10v* | d30v* | erc32* | fr30* | h8300* | h8500* | i960* | m32r* | \
  mcore* | mips* | mn10200* | mn10300* | powerpc* | sh* | v850* | w65* | z8k*)
     echo "/opt/rtems/bin/${target_alias}-run${exe_ext}" 
     ;;
  sparc*)
     echo "/opt/rtems/bin/${target_alias}-run${exe_ext}" 
     echo "/opt/rtems/bin/${target_alias}-sis${exe_ext}" 
     ;;
  *) ;;
esac >> ${specfile}

echo Generated ${specfile}