1*b725ae77Skettenis# Mappings from configuration triplets to gdbserver build options.
2*b725ae77Skettenis# This is invoked from the autoconf-generated configure script, to
3*b725ae77Skettenis# produce the appropriate Makefile substitutions.
4*b725ae77Skettenis
5*b725ae77Skettenis# This file sets the following shell variables:
6*b725ae77Skettenis#   srv_regobj		The register protocol appropriate for this target.
7*b725ae77Skettenis#   srv_tgtobj		Any other target-specific modules appropriate
8*b725ae77Skettenis#			for this target.
9*b725ae77Skettenis#
10*b725ae77Skettenis# In addition, on GNU/Linux the following shell variables will be set:
11*b725ae77Skettenis#   srv_linux_regsets	Set to "yes" if ptrace(PTRACE_GETREGS) and friends
12*b725ae77Skettenis#			may be available on this platform;  unset otherwise.
13*b725ae77Skettenis#			They will only be used if <sys/ptrace.h> defines
14*b725ae77Skettenis#			PTRACE_GETREGS.
15*b725ae77Skettenis#   srv_linux_usrregs	Set to "yes" if we can get at registers via
16*b725ae77Skettenis#			PTRACE_PEEKUSR / PTRACE_POKEUSR.
17*b725ae77Skettenis
18*b725ae77Skettenis# Input is taken from the "${target}" variable.
19*b725ae77Skettenis
20*b725ae77Sketteniscase "${target}" in
21*b725ae77Skettenis  arm*-*-linux*)	srv_regobj=reg-arm.o
22*b725ae77Skettenis			srv_tgtobj="linux-low.o linux-arm-low.o"
23*b725ae77Skettenis			srv_linux_usrregs=yes
24*b725ae77Skettenis			srv_linux_thread_db=yes
25*b725ae77Skettenis			;;
26*b725ae77Skettenis  i[34567]86-*-linux*)	srv_regobj=reg-i386-linux.o
27*b725ae77Skettenis			srv_tgtobj="linux-low.o linux-i386-low.o i387-fp.o"
28*b725ae77Skettenis			srv_linux_usrregs=yes
29*b725ae77Skettenis			srv_linux_regsets=yes
30*b725ae77Skettenis			srv_linux_thread_db=yes
31*b725ae77Skettenis			;;
32*b725ae77Skettenis  ia64-*-linux*)	srv_regobj=reg-ia64.o
33*b725ae77Skettenis			srv_tgtobj="linux-low.o linux-ia64-low.o"
34*b725ae77Skettenis			srv_linux_usrregs=yes
35*b725ae77Skettenis			;;
36*b725ae77Skettenis  m68*-*-linux*)	srv_regobj=reg-m68k.o
37*b725ae77Skettenis			srv_tgtobj="linux-low.o linux-m68k-low.o"
38*b725ae77Skettenis			srv_linux_usrregs=yes
39*b725ae77Skettenis			;;
40*b725ae77Skettenis  mips*-*-linux*)	srv_regobj=reg-mips.o
41*b725ae77Skettenis			srv_tgtobj="linux-low.o linux-mips-low.o"
42*b725ae77Skettenis			srv_linux_usrregs=yes
43*b725ae77Skettenis			srv_linux_thread_db=yes
44*b725ae77Skettenis			;;
45*b725ae77Skettenis  powerpc*-*-linux*)	srv_regobj=reg-ppc.o
46*b725ae77Skettenis			srv_tgtobj="linux-low.o linux-ppc-low.o"
47*b725ae77Skettenis			srv_linux_usrregs=yes
48*b725ae77Skettenis			srv_linux_thread_db=yes
49*b725ae77Skettenis			;;
50*b725ae77Skettenis  s390-*-linux*)	srv_regobj=reg-s390.o
51*b725ae77Skettenis			srv_tgtobj="linux-low.o linux-s390-low.o"
52*b725ae77Skettenis			srv_linux_usrregs=yes
53*b725ae77Skettenis			;;
54*b725ae77Skettenis  s390x-*-linux*)	srv_regobj=reg-s390x.o
55*b725ae77Skettenis			srv_tgtobj="linux-low.o linux-s390-low.o"
56*b725ae77Skettenis			srv_linux_usrregs=yes
57*b725ae77Skettenis			;;
58*b725ae77Skettenis  sh*-*-linux*)		srv_regobj=reg-sh.o
59*b725ae77Skettenis			srv_tgtobj="linux-low.o linux-sh-low.o"
60*b725ae77Skettenis			srv_linux_usrregs=yes
61*b725ae77Skettenis			srv_linux_thread_db=yes
62*b725ae77Skettenis			;;
63*b725ae77Skettenis  x86_64-*-linux*)	srv_regobj=reg-x86-64.o
64*b725ae77Skettenis			srv_tgtobj="linux-low.o linux-x86-64-low.o i387-fp.o"
65*b725ae77Skettenis			srv_linux_regsets=yes
66*b725ae77Skettenis			;;
67*b725ae77Skettenis  xscale*-*-linux*)	srv_regobj=reg-arm.o
68*b725ae77Skettenis			srv_tgtobj="linux-low.o linux-arm-low.o"
69*b725ae77Skettenis			srv_linux_usrregs=yes
70*b725ae77Skettenis			srv_linux_thread_db=yes
71*b725ae77Skettenis			;;
72*b725ae77Skettenis  *)			echo "Error: target not supported by gdbserver."
73*b725ae77Skettenis			exit 1
74*b725ae77Skettenis			;;
75*b725ae77Skettenisesac
76