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