1e06a05d4f26714a6fe15684bc61a36cf54c0bc2
[deliverable/binutils-gdb.git] / gdb / gdbserver / configure.in
1 srcname="Remote GDB server"
2 srctrigger=server.c
3 gdb_serial_driver=../ser-unix.c
4
5 # per-host:
6
7 # per-target:
8
9 # Hack alert! We want this directory to be configured only for the target,
10 # which is where it will be running, so we just eliminate the per-host section,
11 # and make the per-target stuff setup host & host_cpu according to the target.
12
13 host_cpu=$target_cpu
14 host=$target
15
16 # Map host cpu into the config cpu subdirectory name.
17 # The default is $host_cpu.
18
19 case "${host_cpu}" in
20
21 c[12]) gdb_host_cpu=convex ;;
22 hppa*) gdb_host_cpu=pa ;;
23 i[345]86) gdb_host_cpu=i386 ;;
24 m68*) gdb_host_cpu=m68k ;;
25 np1) gdb_host_cpu=gould ;;
26 pyramid) gdb_host_cpu=pyr ;;
27 *) gdb_host_cpu=$target_cpu ;;
28
29 esac
30
31 # map host info into gdb names.
32
33 case "${host}" in
34
35 a29k-*-*) gdb_host=ultra3 ;;
36
37 arm-*-*) gdb_host=arm ;;
38
39 c[12]-*-*) gdb_host=convex ;;
40
41 hppa*-hp-bsd*) gdb_host=hppabsd ;;
42 hppa*-hp-hpux*) gdb_host=hppahpux ;;
43
44 i[345]86-ncr-*) gdb_host=ncr3000 ;;
45 i[345]86-sequent-*) gdb_host=symmetry ;;
46
47 i[345]86-*-bsd*) gdb_host=i386bsd ;;
48 i[345]86-*-lynxos*) gdb_host=i386lynx ;;
49 i[345]86-*-go32) gdb_host=go32
50 gdb_serial_driver=ser-go32.c
51 ;;
52 i[345]86-*-linux) gdb_host=linux ;;
53 i[345]86-*-mach) gdb_host=i386mach ;;
54 i[345]86-*-sco3.2v4*) gdb_host=i386sco4 ;;
55 i[345]86-*-sco*) gdb_host=i386sco ;;
56 i[345]86-*-solaris*) gdb_host=i386sol2 ;;
57 i[345]86-*-sunos*) gdb_host=sun386 ;;
58 i[345]86-*-sysv3.2) gdb_host=i386v32 ;;
59 i[345]86-*-sysv4*) gdb_host=i386v4 ;;
60 i[345]86-*-sysv*) gdb_host=i386v ;;
61
62 m680[01]0-sun-sunos3*) gdb_host=sun2os3 ;;
63 m680[01]0-sun-sunos4*) gdb_host=sun2os4 ;;
64 m68030-sony-*) gdb_host=news1000 ;;
65
66 m68*-altos-*) gdb_host=altos ;;
67 m68*-apollo*-sysv*) gdb_host=apollo68v ;;
68 m68*-apollo*-bsd*) gdb_host=apollo68b ;;
69 m68*-att-*) gdb_host=3b1 ;;
70 m68*-cbm-sysv4*) gdb_host=amix ;;
71 m68*-hp-bsd*) gdb_host=hp300bsd ;;
72 m68*-hp-hpux*) gdb_host=hp300hpux ;;
73 m68*-isi-*) gdb_host=isi ;;
74 m68*-*-lynxos*) gdb_host=m68klynx ;;
75 m68*-sony-*) gdb_host=news ;;
76 m68*-sun-sunos3*) gdb_host=sun3os3 ;;
77 m68*-sun-sunos4*) gdb_host=sun3os4 ;;
78 m68*-sun-*) gdb_host=sun3os4 ;;
79
80 m88k-motorola-*) gdb_host=delta88 ;;
81 m88k-*-*) gdb_host=m88k ;;
82
83 mips-dec-*) gdb_host=decstation ;;
84 mips-little-*) gdb_host=littlemips ;;
85 mips-sgi-irix3) gdb_host=irix3 ;;
86 mips-sgi-irix4*) gdb_host=irix4 ;;
87 mips-sony-*) gdb_host=bigmips ;;
88
89 none-*-*) gdb_host=none ;;
90
91 np1-*-*) gdb_host=np1 ;;
92
93 ns32k-umax-*) gdb_host=umax ;;
94 ns32k-utek-sysv) gdb_host=merlin ;;
95
96 pn-*-*) gdb_host=pn ;;
97
98 pyramid-*-*) gdb_host=pyramid ;;
99
100 romp-*-*) gdb_host=rtbsd ;;
101
102 rs6000-*-*) gdb_host=rs6000 ;;
103
104 sparc-*-lynxos*) gdb_host=sparclynx ;;
105 sparc-*-solaris2*) gdb_host=sun4sol2 ;;
106 sparc-*-sunos4*) gdb_host=sun4os4 ;;
107 sparc-*-*) gdb_host=sun4os4 ;;
108
109 tahoe-*-*) gdb_host=tahoe ;;
110
111 vax-*-bsd*) gdb_host=vaxbsd ;;
112 vax-*-ultrix2*) gdb_host=vaxult2 ;;
113 vax-*-ultrix*) gdb_host=vaxult ;;
114
115 esac
116
117 if [ ! -f ${srcdir}/../config/${gdb_host_cpu}/${gdb_host}.mh ]; then
118 echo '***' "GDB remote does not support host ${host}" 1>&2
119 exit 1
120 fi
121
122 # We really shouldn't depend on there being a space after XM_FILE= ...
123 hostfile=`awk '$1 == "XM_FILE=" { print $2 }' <${srcdir}/../config/${gdb_host_cpu}/${gdb_host}.mh`
124
125 # per-target:
126
127 # Map target cpu into the config cpu subdirectory name.
128 # The default is $target_cpu.
129
130 case "${target_cpu}" in
131
132 c[12]) gdb_target_cpu=convex ;;
133 hppa*) gdb_target_cpu=pa ;;
134 i[345]86) gdb_target_cpu=i386 ;;
135 m68*) gdb_target_cpu=m68k ;;
136 np1) gdb_target_cpu=gould ;;
137 pn) gdb_target_cpu=gould ;;
138 pyramid) gdb_target_cpu=pyr ;;
139 sparc*) gdb_target_cpu=sparc ;;
140 *) gdb_target_cpu=$target_cpu ;;
141
142 esac
143
144 # map target info into gdb names.
145
146 case "${target}" in
147
148 a29k-*-aout) gdb_target=a29k ;;
149 a29k-*-coff) gdb_target=a29k ;;
150 a29k-*-elf) gdb_target=a29k ;;
151 a29k-*-ebmon) gdb_target=a29k ;;
152 a29k-*-kern) gdb_target=a29k-kern ;;
153 a29k-*-none) gdb_target=a29k ;;
154 a29k-*-sym1) gdb_target=ultra3 ;;
155 a29k-*-udi) gdb_target=a29k-udi ;;
156
157 arm-*-*) gdb_target=arm ;;
158
159 c1-*-*) gdb_target=convex ;;
160 c2-*-*) gdb_target=convex ;;
161
162 h8300-*-*) gdb_target=h8300hms ;;
163 h8500-*-*) gdb_target=h8500hms ;;
164
165 sh-*-*) gdb_target=sh ;;
166
167 hppa*-*-bsd*) gdb_target=hppabsd ;;
168 hppa*-*-hpux*) gdb_target=hppahpux ;;
169
170 i[345]86-sequent-*) gdb_target=symmetry ;;
171 i[345]86-ncr-*) gdb_target=ncr3000 ;;
172
173 i[345]86-*-aout) gdb_target=i386aout ;;
174 i[345]86-*-coff) gdb_target=i386v ;;
175 i[345]86-*-elf) gdb_target=i386v ;;
176
177 i[345]86-*-bsd*) gdb_target=i386bsd ;;
178 i[345]86-*-lynxos*) gdb_target=i386lynx ;;
179 i[345]86-*-go32) gdb_target=i386aout ;;
180 i[345]86-*-solaris*) gdb_target=i386sol2 ;;
181 i[345]86-*-sunos*) gdb_target=sun386 ;;
182 i[345]86-*-sysv4*) gdb_target=i386v4 ;;
183 i[345]86-*-sco*) gdb_target=i386v ;;
184 i[345]86-*-sysv*) gdb_target=i386v ;;
185 i[345]86-*-linux) gdb_target=linux ;;
186
187 i960-*-bout) gdb_target=vxworks960 ;;
188 i960-*-coff) gdb_target=nindy960 ;;
189 i960-*-elf) gdb_target=nindy960 ;;
190
191 i960-*-nindy) gdb_target=nindy960 ;;
192 i960-*-vxworks) gdb_target=vxworks960 ;;
193
194 m68000-*-aout) gdb_target=m68k-nofp ;;
195 m68000-*-coff) gdb_target=m68k-nofp ;;
196 m68000-*-elf) gdb_target=m68k-nofp ;;
197 m68000-*-sunos3*) gdb_target=sun2os3 ;;
198 m68000-*-sunos4*) gdb_target=sun2os4 ;;
199
200 m68*-cbm-sysv4*) gdb_target=amix ;;
201 m68*-hp-bsd*) gdb_target=hp300bsd ;;
202 m68*-hp-hpux*) gdb_target=hp300hpux ;;
203
204 m68*-altos-*) gdb_target=altos ;;
205 m68*-att-*) gdb_target=3b1 ;;
206 m68*-ericsson-*) gdb_target=es1800 ;;
207 m68*-isi-*) gdb_target=isi ;;
208 m68*-netx-*) gdb_target=vxworks68 ;;
209 m68*-sony-*) gdb_target=news ;;
210 m68*-tandem-*) gdb_target=st2000 ;;
211
212 m68*-*-aout) gdb_target=m68k-fp ;;
213 m68*-*-coff) gdb_target=m68k-fp ;;
214 m68*-*-elf) gdb_target=m68k-fp ;;
215 m68*-*-lynxos*) gdb_target=m68klynx ;;
216 m68*-*-os68k) gdb_target=os68k ;;
217 m68*-*-sunos3*) gdb_target=sun3os3 ;;
218 m68*-*-sunos4*) gdb_target=sun3os4 ;;
219 m68*-*-vxworks*) gdb_target=vxworks68 ;;
220
221 m88k-motorola-*) gdb_target=delta88 ;;
222 m88k-*-*) gdb_target=m88k ;;
223
224 mips-big-*) gdb_target=bigmips ;;
225 mips-dec-*) gdb_target=decstation ;;
226 mips-idt-ecoff) gdb_target=idt ;;
227 mips-little-*) gdb_target=littlemips ;;
228 mips-sgi-*) gdb_target=irix3 ;;
229 mips-sony-*) gdb_target=bigmips ;;
230
231 none-*-*) gdb_target=none ;;
232
233 np1-*-*) gdb_target=np1 ;;
234
235 ns32k-utek-sysv) gdb_target=merlin ;;
236 ns32k-utek-*) gdb_target=umax ;;
237
238 pn-*-*) gdb_target=pn ;;
239
240 pyramid-*-*) gdb_target=pyramid ;;
241
242 rs6000-*-*) gdb_target=rs6000 ;;
243
244 sparc-*-aout) gdb_target=sparc-em ;;
245 sparc-*-coff) gdb_target=sparc-em ;;
246 sparc-*-elf) gdb_target=sparc-em ;;
247 sparc-*-lynxos*) gdb_target=sparclynx ;;
248 sparc-*-solaris2*) gdb_target=sun4sol2 ;;
249 sparc-*-sunos4*) gdb_target=sun4os4 ;;
250 sparc-*-vxworks*) gdb_target=sparc-em ;;
251 sparc-*-*) gdb_target=sun4os4 ;;
252 sparclite*-*-*) gdb_target=sparclite ;;
253
254 tahoe-*-*) gdb_target=tahoe ;;
255 vax-*-*) gdb_target=vax ;;
256
257 z8k-*-sim) gdb_target=z8ksim ;;
258 esac
259
260 if [ ! -f ${srcdir}/../config/${gdb_target_cpu}/${gdb_target}.mt ]; then
261 echo '***' "GDB remote does not support target ${target}" 1>&2
262 exit 1
263 fi
264
265 if [ -z "${removing}" ] ; then
266 cat ${srcdir}/../config/${gdb_host_cpu}/${gdb_host}.mh ${srcdir}/../config/${gdb_target_cpu}/${gdb_target}.mt | awk '$1 == "#msg" {
267 print substr($0,6)}'
268 fi
269
270 # We really shouldn't depend on there being a space after TM_FILE= ...
271 targetfile=`awk '$1 == "TM_FILE=" { print $2 }' <${srcdir}/../config/${gdb_target_cpu}/${gdb_target}.mt`
272
273 if [ "${target}" = "${host}" ] ; then
274 nativefile=`awk '$1 == "NAT_FILE=" { print $2 }' <${srcdir}/../config/${gdb_host_cpu}/${gdb_host}.mh`
275 fi
276
277 host_makefile_frag=../config/${gdb_host_cpu}/${gdb_host}.mh
278 target_makefile_frag=../config/${gdb_target_cpu}/${gdb_target}.mt
279
280 # If hostfile (XM_FILE) and/or targetfile (TM_FILE) and/or nativefile
281 # (NAT_FILE) is not set in the ?config/* file, we don't make the
282 # corresponding links. But we have to remove the xm.h files and tm.h
283 # files anyway, e.g. when switching from "configure host" to
284 # "configure none".
285
286 files=
287 links=
288 rm -f xm.h
289 rm -f ser-hardwire.c
290 if [ "${hostfile}" != "" ]; then
291 if [ -f ${srcdir}/../config/${hostfile} ]; then
292 files="${files} ../config/${hostfile}"
293 else
294 files="${files} ../config/${gdb_host_cpu}/${hostfile}"
295 fi
296 links="${links} xm.h"
297
298 # files="${files} ${gdb_serial_driver}"
299 # links="${links} ser-hardwire.c"
300 fi
301 rm -f tm.h
302 if [ "${targetfile}" != "" ]; then
303 if [ -f ${srcdir}/../config/${targetfile} ]; then
304 files="${files} ../config/${targetfile}"
305 else
306 files="${files} ../config/${gdb_target_cpu}/${targetfile}"
307 fi
308 links="${links} tm.h"
309 fi
310 rm -f nm.h
311 if [ "${nativefile}" != "" ]; then
312 if [ -f ${srcdir}/../config/${nativefile} ]; then
313 files="${files} ../config/${nativefile}"
314 else
315 files="${files} ../config/${gdb_host_cpu}/${nativefile}"
316 fi
317 links="${links} nm.h"
318 # temporary scaffolding until all hosts have the host/target/native
319 # split in place.
320 else
321 files="${files} ../config/nm-trash.h"
322 links="${links} nm.h"
323 fi
324
325 if [ ${target_cpu} = "sparclite" ]; then
326 configdirs="${configdirs} sparclite"
327 fi
328
329 # post-target:
330
331 if [ "${nativefile}" = "" ] ; then
332 sed -e '/^NATDEPFILES= /s//# NATDEPFILES= /' \
333 < Makefile > Makefile.tem
334 mv -f Makefile.tem Makefile
335 fi
This page took 0.035284 seconds and 3 git commands to generate.