edbafffc815e8085732eb049b3f776dc9e2d21ff
[platform/upstream/binutils.git] / gdb / configure.in
1 configdirs="doc"
2 srcname="GDB"
3 srctrigger=main.c
4 target_dependent=true
5
6 # per-host:
7
8 # map host info into gdb names.
9
10 case "${host_cpu}" in
11
12 m68k)
13         case "${host_vendor}" in
14         apollo*)
15                 case "${host_os}" in
16                 sysv*)  gdb_host=apollo68v ;;
17                 esac
18                 ;;
19         att)    gdb_host=3b1 ;;
20         altos)
21                 case "${host_os}" in
22                 gas)    gdb_host=altosgas ;;
23                 *)      gdb_host=altos ;;       
24                 esac
25                 ;;
26
27         cbm)
28                 case ${host_os} in
29                 amigados)       gdb_host=amigados ;;
30                 sysv4*)         gdb_host=amix ;;
31                 esac
32                 ;;
33
34         hp)
35                 case ${host_os} in
36                 hpux)   gdb_host=hp300hpux ;;
37                 bsd)    gdb_host=hp300bsd ;;
38                 esac
39                 ;;
40
41         isi)    gdb_host=isi ;;
42         sony)   gdb_host=news ;;
43         sun)
44                 case "${host_os}" in
45                 sunos3) gdb_host=sun3os3 ;;
46                 sunos4) gdb_host=sun3os4 ;;
47                 *)      gdb_host=sun3 ;;
48                 esac
49                 ;;
50         esac
51         ;;
52
53 m68000)
54         case "${host_vendor}" in
55         sun)
56                 case "${host_os}" in
57                 sunos3) gdb_host=sun2os3 ;;
58                 sunos4) gdb_host=sun2os4 ;;
59                 *)      gdb_host=sun2 ;;
60                 esac
61         esac
62         ;;
63
64 sparc)
65         case "${host_os}" in
66         sunos3)         gdb_host=sun4os3 ;;
67         sunos4)         gdb_host=sun4os4 ;;
68         solaris2*)      gdb_host=sun4sol2 ;;
69         *)              gdb_host=sun4 ;;
70         esac
71         ;;
72
73 m68030)
74         case "${host_vendor}" in
75         sony)   gdb_host=news1000 ;;
76         esac
77         ;;
78
79 mips)
80         case "${host_vendor}" in
81         sony)   gdb_host=bigmips ;;
82         dec)    gdb_host=decstation ;;
83         little) gdb_host=littlemips ;;
84         sgi)
85                 case "${host_os}" in
86                 irix3)  gdb_host=irix3 ;;
87                 irix4)  gdb_host=irix4 ;;
88                 esac
89                 ;;
90         esac
91         ;;
92
93 i860)
94         gdb_host=stratus
95         ;;
96
97 i386)
98         case "${host_vendor}" in
99         sun)    gdb_host=sun386 ;;
100         sco)    gdb_host=i386sco ;;
101         sequent)        gdb_host=symmetry ;;
102         ncr)    gdb_host=ncr3000 ;;
103         *)
104                 case "${host_os}" in
105                 go32)   gdb_host=go32 ;;
106                 sysv32) gdb_host=i386v32 ;;
107                 sysv4*) gdb_host=i386v4 ;;
108                 sysv*)  gdb_host=i386v ;;
109                 scosysv*) gdb_host=i386sco ;;
110                 mach)   gdb_host=i386mach ;;
111                 linux)  gdb_host=linux ;;
112                 esac
113                 ;;
114         esac
115         ;;
116
117 c1 | c2)        gdb_host=convex ;;
118
119 ns32k)
120         case "${host_vendor}" in
121         umax)   gdb_host=umax ;;
122         esac
123         ;;
124
125 romp)
126         gdb_host=rtbsd
127         ;;
128
129 rs6000)
130         gdb_host=rs6000
131         ;;
132
133 a29k)
134         gdb_host=ultra3
135         ;;
136
137 m88k)
138         case "${host_vendor}" in
139         motorola)
140                 gdb_host=delta88 ;;
141         *)      
142                 gdb_host=m88k ;;
143         esac
144         ;;
145
146 vax)
147         case "${host_os}" in
148         bsd*)
149                 gdb_host=vaxbsd ;;
150         ultrix*)
151                 gdb_host=vaxult ;;
152         esac
153         ;;
154
155 arm | merlin | none | np1 | pn | pyramid | tahoe)
156         gdb_host=${host_cpu}
157         ;;
158
159 hppa)
160         case "${host_vendor}" in
161         hp)
162                 case "${host_os}" in
163                 hpux)   gdb_host=hppahpux ;;
164                 bsd)    gdb_host=hppabsd ;;
165                 esac
166                 ;;
167         esac
168         ;;
169
170 ### unhandled hosts
171 #altosgas
172 #i386v-g
173 #i386v32-g
174
175 esac
176
177
178 if [ ! -f ${srcdir}/config/${gdb_host}.mh ]; then
179         echo '***' "Gdb does not support host ${host}" 1>&2
180         exit 1
181 fi
182
183 #  We really shouldn't depend on there being a space after XM_FILE= ...
184 hostfile=`awk '$1 == "XM_FILE=" { print $2 }' <${srcdir}/config/${gdb_host}.mh`
185
186 # per-target:
187
188 case "${target_cpu}" in
189
190 m68k)
191         case "${target_vendor}" in
192         att)    gdb_target=3b1 ;;
193         altos)  gdb_target=altos ;;
194         cbm)
195                 case ${target_os} in
196                 amigados)       gdb_host=amigados ;;
197                 sysv4*)         gdb_target=amix ;;
198                 esac
199                 ;;
200         ericsson) gdb_target=es1800 ;;
201         hp)
202                 case "${target_os}" in
203                 bsd)    gdb_target=hp300bsd ;;
204                 hpux)   gdb_target=hp300hpux ;;
205                 esac
206                 ;;
207         sun)
208                 case "${target_os}" in
209                 sunos3) gdb_target=sun3os3 ;;
210                 sunos4) gdb_target=sun3os4 ;;
211                 *)      gdb_target=sun3 ;;
212                 esac
213                 ;;
214         wrs)    gdb_target=vxworks68 ;;
215         isi)    gdb_target=isi ;;
216         sony)   gdb_target=news ;;
217         esac
218         case "${target_os}" in
219         os68k)  gdb_target=os68k ;;
220         esac
221         ;;
222
223 m68000)
224         case "${target_vendor}" in
225         sun)
226                 case "${target_os}" in
227                 sunos3) gdb_target=sun2os3 ;;
228                 sunos4) gdb_target=sun2os4 ;;
229                 *)      gdb_target=sun2 ;;
230                 esac
231                 ;;
232         wrs)    gdb_target=vxworks68 ;;
233         esac
234         ;;
235
236 m680[124]0)
237         case "${target_vendor}" in
238         wrs)    gdb_target=vxworks68 ;;
239         esac
240         ;;
241
242 m68030)
243         case "${target_vendor}" in
244         sony)   gdb_target=news1000 ;;
245         wrs)    gdb_target=vxworks68 ;;
246         esac
247         ;;
248
249 m68kmote)
250         case "${target_vendor}" in
251         tandem) gdb_target=st2000 ;;
252         esac
253         ;;
254
255 none | arm | tahoe | vax | np1 | pn | np1 | pn | pyramid | merlin)
256         gdb_target=${target_cpu} ;;
257
258 m88k)
259         case "${target_vendor}" in
260         motorola) gdb_target=delta88 ;;
261         *) gdb_target=dgux ;;
262         esac
263         ;;
264 a29k)
265         case "${target_os}" in
266         none|aout|coff) gdb_target=a29k ;;
267         sym1)   gdb_target=ultra3 ;;
268         kern)   gdb_target=a29k-kern ;;
269         ebmon)  gdb_target=a29k;;
270         udi)    gdb_target=a29k-udi;;
271         esac
272         ;;
273         
274 mips)
275         case "${target_vendor}" in
276         sony)   gdb_target=bigmips ;;
277         big)    gdb_target=bigmips ;;
278         dec)    gdb_target=decstation ;;
279         little) gdb_target=littlemips ;;
280         sgi)    gdb_target=irix3 ;;
281         esac
282         ;;
283
284 c1 | c2)        gdb_target=convex ;;
285
286 sparc)
287         case "${target_vendor}" in
288         sun)
289                 case "${target_os}" in
290                 sunos3)         gdb_target=sun4os3 ;;
291                 sunos4)         gdb_target=sun4os4 ;;
292                 solaris2*)      gdb_target=sun4sol2 ;;
293                 *)              gdb_target=sun4 ;;
294                 esac
295                 ;;
296         esac
297         ;;
298
299 h8300)
300         gdb_target=h8300hms 
301         ;;
302
303 i860)   gdb_target=stratus
304         ;;
305
306 i386)
307         case "${target_vendor}" in
308         sco)    gdb_target=i386sco ;;
309         sun)    gdb_target=sun386 ;;
310         sequent)        gdb_target=symmetry ;;
311         ncr)    gdb_target=ncr3000 ;;
312         *)
313                 case "${target_os}" in
314                 sysv32) gdb_target=i386v32 ;;
315                 scosysv3*) gdb_target=i386v32 ;;
316                 sysv4*) gdb_target=i386v4 ;;
317                 sysv*)  gdb_target=i386v ;;
318                 mach)   gdb_target=i386mach ;;
319                 coff)   gdb_target=i386v ;;
320                 aout)   gdb_target=i386aout ;;
321                 linux)  gdb_target=linux ;;
322                 esac
323         esac
324         ;;
325
326 i960)
327         case "${target_vendor}" in
328         bout | wrs)     gdb_target=vxworks960 ;;
329         coff | intel)   gdb_target=nindy960 ;;
330         esac
331         ;;
332
333 ns32k)
334         case "${target_vendor}" in
335         utek)   gdb_target=umax ;;
336         esac
337         ;;
338
339 rs6000)
340         gdb_target=rs6000
341         ;;
342
343 hppa)
344         case "${target_vendor}" in
345         hp)
346                 case "${target_os}" in
347                 hpux)   gdb_target=hppahpux ;;
348                 bsd)    gdb_target=hppabsd ;;
349                 esac
350                 ;;
351         esac
352         ;;
353
354 ### unhandled targets
355 # altosgas
356 # i386v-g
357 # i386v32-g
358
359 esac
360
361 if [ ! -f ${srcdir}/config/${gdb_target}.mt ]; then
362         echo '***' "Gdb does not support target ${target}" 1>&2
363         exit 1
364 fi
365
366 if [ -z "${removing}" ] ; then
367         cat ${srcdir}/config/${gdb_host}.mh ${srcdir}/config/${gdb_target}.mt | awk '$1 == "#msg" {
368                 print substr($0,6)}'
369 fi
370
371 #  We really shouldn't depend on there being a space after TM_FILE= ...
372 targetfile=`awk '$1 == "TM_FILE=" { print $2 }' <${srcdir}/config/${gdb_target}.mt`
373
374 host_makefile_frag=config/${gdb_host}.mh
375 target_makefile_frag=config/${gdb_target}.mt
376
377 # If hostfile (XM_FILE) and/or targetfile (TM_FILE) is not set in the
378 # ?config/* file, we don't make the corresponding links.  But we have
379 # to remove the xm.h files and tm.h files anyway, e.g. when switching
380 # from "configure host" to "configure none".
381 files=
382 links=
383 rm -f xm.h
384 if [ "${hostfile}" != "" ]; then
385         files="${files} ${hostfile}"
386         links="${links} xm.h"
387 fi
388 rm -f tm.h
389 if [ "${targetfile}" != "" ]; then
390         files="${files} ${targetfile}"
391         links="${links} tm.h"
392 fi
393
394 # post-target:
395
396 case ${srcdir} in
397   .)
398     ;;
399   *)
400     grep -s "source ${srcdir}/.gdbinit" .gdbinit 2>/dev/null || \
401       echo "source ${srcdir}/.gdbinit" >> .gdbinit
402 esac
403
404 cat ${srcdir}/alldeps.mak ${srcdir}/depend >>Makefile