* TODO: Add suggestions for x/s tests.
[deliverable/binutils-gdb.git] / gdb / configure.in
CommitLineData
6a936870 1configdirs="doc testsuite"
912e0732
RP
2srcname="GDB"
3srctrigger=main.c
bc028766 4
0df06ca0
RP
5# per-host:
6
1a0edbc7
FF
7# Map host cpu into the config cpu subdirectory name.
8# The default is $host_cpu.
9
10case "${host_cpu}" in
11
12c[12]) gdb_host_cpu=convex ;;
13hppa*) gdb_host_cpu=pa ;;
14i[34]86) gdb_host_cpu=i386 ;;
15m68*) gdb_host_cpu=m68k ;;
16np1) gdb_host_cpu=gould ;;
17pyramid) gdb_host_cpu=pyr ;;
18*) gdb_host_cpu=$host_cpu ;;
19
20esac
21
6c815bbe
RP
22# map host info into gdb names.
23
19758e9e 24case "${host}" in
6c815bbe 25
19758e9e
JG
26a29k-*-*) gdb_host=ultra3 ;;
27
7ccb1e44
SC
28alpha-*-osf*) gdb_host=alpha-osf1 ;;
29
19758e9e
JG
30arm-*-*) gdb_host=arm ;;
31
32c[12]-*-*) gdb_host=convex ;;
33
e8e13040
JK
34hppa*-*-bsd*) gdb_host=hppabsd ;;
35hppa*-*-hpux*) gdb_host=hppahpux ;;
36hppa*-*-hiux*) gdb_host=hppahpux ;;
6bfd168c 37hppa*-*-osf*) gdb_host=hppabsd ;;
19758e9e 38
19758e9e 39i[34]86-ncr-*) gdb_host=ncr3000 ;;
56eec3c7
JK
40i[34]86-sequent-bsd*) gdb_host=symmetry ;; #dynix
41i[34]86-sequent-sysv*) gdb_host=ptx ;;
19758e9e 42
2c7ab4ca 43i[34]86-*-aix*) gdb_host=i386aix ;;
6d685882 44i[34]86-*-bsd*) gdb_host=i386bsd ;;
a6565079 45i[34]86-*-netbsd*) gdb_host=i386bsd ;;
3b891e0b
JK
46i[34]86-*-go32*) gdb_host=go32 ;;
47i[34]86-*-linux*) gdb_host=linux ;;
9bebe500 48i[34]86-*-lynxos*) gdb_host=i386lynx ;;
5d76c8e6
JK
49# Obsolete I suspect
50# i[34]86-*-mach) gdb_host=i386mach ;;
51i[34]86-*-mach*) gdb_host=i386m3 ;;
52i[34]86-*-osf1mk*) gdb_host=i386mk ;;
117f631e 53i[34]86-*-sco3.2v4*) gdb_host=i386sco4 ;;
cf57ff2a 54i[34]86-*-sco*) gdb_host=i386sco ;;
5c820c19 55i[34]86-*-solaris*) gdb_host=i386sol2 ;;
b1aa08e2 56i[34]86-*-sunos*) gdb_host=sun386 ;;
3b891e0b 57i[34]86-*-sysv3.2*) gdb_host=i386v32 ;;
d9a5e91f 58i[34]86-*-sysv32*) gdb_host=i386v32 ;;
19758e9e 59i[34]86-*-sysv4*) gdb_host=i386v4 ;;
2fa6925b 60i[34]86-*-unixware) gdb_host=i386v4 ;;
19758e9e 61i[34]86-*-sysv*) gdb_host=i386v ;;
e23a6896 62i[34]86-*-isc*) gdb_host=i386v32 ;;
1340861c 63i[34]86-*-os9k) gdb_host=i386os9k ;;
19758e9e 64
358ca35e
JG
65m680[01]0-sun-sunos3*) gdb_host=sun2os3 ;;
66m680[01]0-sun-sunos4*) gdb_host=sun2os4 ;;
ef131e13 67m68030-sony-*) gdb_host=news1000 ;;
19758e9e 68
358ca35e
JG
69m68*-altos-*) gdb_host=altos ;;
70m68*-apollo*-sysv*) gdb_host=apollo68v ;;
71m68*-apollo*-bsd*) gdb_host=apollo68b ;;
72m68*-att-*) gdb_host=3b1 ;;
0a8f1742 73m68*-bull*-sysv*) gdb_host=dpx2 ;;
358ca35e 74m68*-cbm-sysv4*) gdb_host=amix ;;
8f59e92b
FF
75m68*-hp-bsd*) gdb_host=hp300bsd ;;
76m68*-hp-hpux*) gdb_host=hp300hpux ;;
358ca35e 77m68*-isi-*) gdb_host=isi ;;
9bebe500 78m68*-*-lynxos*) gdb_host=m68klynx ;;
c649a7c2 79m68*-motorola-*) gdb_host=delta68 ;;
358ca35e
JG
80m68*-sony-*) gdb_host=news ;;
81m68*-sun-sunos3*) gdb_host=sun3os3 ;;
82m68*-sun-sunos4*) gdb_host=sun3os4 ;;
83m68*-sun-*) gdb_host=sun3os4 ;;
19758e9e 84
304977ab
JK
85m88*-motorola-sysv4*) gdb_host=delta88v4 ;;
86m88*-motorola-sysv*) gdb_host=delta88 ;;
87# I suspect this is just used for DGUX
88m88*-*-*) gdb_host=m88k ;;
19758e9e 89
19758e9e
JG
90mips-dec-*) gdb_host=decstation ;;
91mips-little-*) gdb_host=littlemips ;;
3b891e0b 92mips-sgi-irix3*) gdb_host=irix3 ;;
81029114 93mips-sgi-irix4*) gdb_host=irix4 ;;
e03c0cc6 94mips-sgi-irix5*) gdb_host=irix5 ;;
b487ba2e 95mips-sony-*) gdb_host=news-mips ;;
ee06f230 96mips-*-sysv*) gdb_host=riscos ;;
e8f8e093 97mips-*-riscos*) gdb_host=riscos ;;
5d76c8e6 98mips-*-mach*) gdb_host=mipsm3 ;;
19758e9e
JG
99
100none-*-*) gdb_host=none ;;
ef131e13 101
19758e9e
JG
102np1-*-*) gdb_host=np1 ;;
103
104ns32k-umax-*) gdb_host=umax ;;
3b891e0b 105ns32k-utek-sysv*) gdb_host=merlin ;;
19758e9e 106
19758e9e
JG
107pn-*-*) gdb_host=pn ;;
108
109pyramid-*-*) gdb_host=pyramid ;;
110
111romp-*-*) gdb_host=rtbsd ;;
112
d87d7b10 113rs6000-*-lynxos*) gdb_host=rs6000lynx ;;
19758e9e
JG
114rs6000-*-*) gdb_host=rs6000 ;;
115
9bebe500 116sparc-*-lynxos*) gdb_host=sparclynx ;;
ef131e13 117sparc-*-solaris2*) gdb_host=sun4sol2 ;;
ebb3a1e5 118sparc-*-sunos4*) gdb_host=sun4os4 ;;
b52373a2 119sparc-*-*) gdb_host=sun4os4 ;;
19758e9e
JG
120
121tahoe-*-*) gdb_host=tahoe ;;
122
123vax-*-bsd*) gdb_host=vaxbsd ;;
6985bc54 124vax-*-ultrix2*) gdb_host=vaxult2 ;;
19758e9e 125vax-*-ultrix*) gdb_host=vaxult ;;
7da1e27d 126
6c815bbe
RP
127esac
128
8c7ae4a2 129
1a0edbc7 130if [ ! -f ${srcdir}/config/${gdb_host_cpu}/${gdb_host}.mh ]; then
6c815bbe 131 echo '***' "Gdb does not support host ${host}" 1>&2
912e0732
RP
132 exit 1
133fi
134
bdf3621b 135# We really shouldn't depend on there being a space after XM_FILE= ...
1a0edbc7 136hostfile=`awk '$1 == "XM_FILE=" { print $2 }' <${srcdir}/config/${gdb_host_cpu}/${gdb_host}.mh`
912e0732 137
0df06ca0 138# per-target:
912e0732 139
1a0edbc7
FF
140# Map target cpu into the config cpu subdirectory name.
141# The default is $target_cpu.
142
143case "${target_cpu}" in
144
cef4c2e7 145alpha) gdb_target_cpu=alpha ;;
1a0edbc7
FF
146c[12]) gdb_target_cpu=convex ;;
147hppa*) gdb_target_cpu=pa ;;
148i[34]86) gdb_target_cpu=i386 ;;
149m68*) gdb_target_cpu=m68k ;;
df429798 150m8*) gdb_target_cpu=m88k ;;
b60f6584 151mips*) gdb_target_cpu=mips ;;
1a0edbc7
FF
152np1) gdb_target_cpu=gould ;;
153pn) gdb_target_cpu=gould ;;
154pyramid) gdb_target_cpu=pyr ;;
5fa46c42
SG
155sparclite) gdb_target_cpu=sparc
156 configdirs="${configdirs} sparclite"
157 ;;
0c101d49 158sparc*) gdb_target_cpu=sparc ;;
1a0edbc7
FF
159*) gdb_target_cpu=$target_cpu ;;
160
161esac
162
163# map target info into gdb names.
164
ef131e13
JG
165case "${target}" in
166
3b891e0b
JK
167a29k-*-aout*) gdb_target=a29k ;;
168a29k-*-coff*) gdb_target=a29k ;;
169a29k-*-elf*) gdb_target=a29k ;;
170a29k-*-ebmon*) gdb_target=a29k ;;
171a29k-*-kern*) gdb_target=a29k-kern ;;
172a29k-*-none*) gdb_target=a29k ;;
173a29k-*-sym1*) gdb_target=ultra3 ;;
174a29k-*-udi*) gdb_target=a29k-udi ;;
ef131e13 175
cef4c2e7 176alpha-*-osf*) gdb_target=alpha-osf1 ;;
6aaa61de 177alpha-*-netware*) gdb_target=alpha-nw ;;
cef4c2e7 178
ef131e13
JG
179arm-*-*) gdb_target=arm ;;
180
181c1-*-*) gdb_target=convex ;;
182c2-*-*) gdb_target=convex ;;
183
184h8300-*-*) gdb_target=h8300hms ;;
195e46ea 185h8500-*-*) gdb_target=h8500hms ;;
ef131e13 186
9faacb92
SC
187sh-*-*) gdb_target=sh ;;
188
8f59e92b
FF
189hppa*-*-bsd*) gdb_target=hppabsd ;;
190hppa*-*-hpux*) gdb_target=hppahpux ;;
7079e766 191hppa*-*-hiux*) gdb_target=hppahpux ;;
6bfd168c 192hppa*-*-osf*) gdb_target=hppaosf ;;
ef131e13
JG
193
194i[34]86-sequent-*) gdb_target=symmetry ;;
195i[34]86-ncr-*) gdb_target=ncr3000 ;;
ebb3a1e5 196
3b891e0b
JK
197i[34]86-*-aout*) gdb_target=i386aout ;;
198i[34]86-*-coff*) gdb_target=i386v ;;
199i[34]86-*-elf*) gdb_target=i386v ;;
ebb3a1e5 200
2c7ab4ca 201i[34]86-*-aix*) gdb_target=i386aix ;;
6d685882 202i[34]86-*-bsd*) gdb_target=i386bsd ;;
a6565079 203i[34]86-*-netbsd*) gdb_target=i386bsd ;;
1340861c 204i[34]86-*-os9k) gdb_target=i386os9k ;;
3b891e0b 205i[34]86-*-go32*) gdb_target=i386aout ;;
9bebe500 206i[34]86-*-lynxos*) gdb_target=i386lynx
79f68f0f 207 configdirs="${configdirs} gdbserver"
5fa46c42 208 ;;
5c820c19 209i[34]86-*-solaris*) gdb_target=i386sol2 ;;
ef131e13
JG
210i[34]86-*-sunos*) gdb_target=sun386 ;;
211i[34]86-*-sysv4*) gdb_target=i386v4 ;;
cf57ff2a 212i[34]86-*-sco*) gdb_target=i386v ;;
ef131e13 213i[34]86-*-sysv*) gdb_target=i386v ;;
e23a6896
JK
214i[34]86-*-linux*) gdb_target=linux ;;
215i[34]86-*-isc*) gdb_target=i386v ;;
5d76c8e6 216i[34]86-*-mach*) gdb_target=i386m3 ;;
db85f523 217i[34]86-*-netware*) gdb_target=i386nw ;;
5d76c8e6 218i[34]86-*-osf1mk*) gdb_target=i386mk ;;
ef131e13 219
3b891e0b
JK
220i960-*-bout*) gdb_target=vxworks960 ;;
221i960-*-coff*) gdb_target=nindy960 ;;
222i960-*-elf*) gdb_target=nindy960 ;;
ebb3a1e5 223
3b891e0b
JK
224i960-*-nindy*) gdb_target=nindy960 ;;
225i960-*-vxworks*) gdb_target=vxworks960 ;;
ef131e13 226
ebb3a1e5
JG
227m68000-*-sunos3*) gdb_target=sun2os3 ;;
228m68000-*-sunos4*) gdb_target=sun2os4 ;;
ef131e13 229
358ca35e 230m68*-cbm-sysv4*) gdb_target=amix ;;
0a8f1742 231m68*-bull-sysv*) gdb_target=dpx2 ;;
8f59e92b
FF
232m68*-hp-bsd*) gdb_target=hp300bsd ;;
233m68*-hp-hpux*) gdb_target=hp300hpux ;;
358ca35e
JG
234
235m68*-altos-*) gdb_target=altos ;;
835fe6e6 236m68*-apollo*-bsd*) gdb_target=apollo68b ;;
358ca35e
JG
237m68*-att-*) gdb_target=3b1 ;;
238m68*-ericsson-*) gdb_target=es1800 ;;
239m68*-isi-*) gdb_target=isi ;;
c649a7c2 240m68*-motorola-*) gdb_target=delta68 ;;
358ca35e
JG
241m68*-netx-*) gdb_target=vxworks68 ;;
242m68*-sony-*) gdb_target=news ;;
243m68*-tandem-*) gdb_target=st2000 ;;
244
c1128340
RS
245m68*-rom68k-*) gdb_target=monitor ;;
246m68*-*bug-*) gdb_target=monitor ;;
247m68*-monitor-*) gdb_target=monitor ;;
248
0ffba029
RS
249m68*-*-aout*) gdb_target=monitor ;;
250m68*-*-coff*) gdb_target=monitor ;;
251m68*-*-elf*) gdb_target=monitor ;;
9bebe500
SS
252m68*-*-lynxos*) gdb_target=m68klynx
253 configdirs="${configdirs} gdbserver"
254 ;;
3b891e0b 255m68*-*-os68k*) gdb_target=os68k ;;
358ca35e
JG
256m68*-*-sunos3*) gdb_target=sun3os3 ;;
257m68*-*-sunos4*) gdb_target=sun3os4 ;;
258m68*-*-vxworks*) gdb_target=vxworks68 ;;
ef131e13 259
f9440640 260m88*-motorola-sysv4*) gdb_target=delta88v4 ;;
304977ab
JK
261m88*-motorola-*) gdb_target=delta88 ;;
262m88*-*-*) gdb_target=m88k ;;
ef131e13 263
70126bf9 264mips64*-big-*) gdb_target=bigmips64 ;;
b60f6584
ILT
265mips*-big-*) gdb_target=bigmips ;;
266mips*-dec-*) gdb_target=decstation ;;
70126bf9
KH
267mips64*el-*-ecoff*) gdb_target=idtl64 ;;
268mips64*-idt-ecoff*) gdb_target=idt64 ;;
269mips64*el-*-elf*) gdb_target=idtl64 ;;
270mips64*-*-elf*) gdb_target=idt64 ;;
b60f6584
ILT
271mips*el-*-ecoff*) gdb_target=idtl ;;
272mips*-idt-ecoff*) gdb_target=idt ;;
273mips*el-*-elf*) gdb_target=idtl ;;
274mips*-*-elf*) gdb_target=idt ;;
275mips*-little-*) gdb_target=littlemips ;;
276mips*-sgi-irix5*) gdb_target=irix5 ;;
277mips*-sgi-*) gdb_target=irix3 ;;
278mips*-sony-*) gdb_target=bigmips ;;
279mips*-*-sysv*) gdb_target=bigmips ;;
280mips*-*-riscos*) gdb_target=bigmips ;;
281mips*-*-mach*) gdb_target=mipsm3 ;;
ef131e13
JG
282
283none-*-*) gdb_target=none ;;
284
285np1-*-*) gdb_target=np1 ;;
286
3b891e0b 287ns32k-utek-sysv*) gdb_target=merlin ;;
ef131e13
JG
288ns32k-utek-*) gdb_target=umax ;;
289
290pn-*-*) gdb_target=pn ;;
291
292pyramid-*-*) gdb_target=pyramid ;;
293
d87d7b10 294rs6000-*-lynxos*) gdb_target=rs6000lynx ;;
ef131e13
JG
295rs6000-*-*) gdb_target=rs6000 ;;
296
3b891e0b
JK
297sparc-*-aout*) gdb_target=sparc-em ;;
298sparc-*-coff*) gdb_target=sparc-em ;;
299sparc-*-elf*) gdb_target=sparc-em ;;
9bebe500
SS
300sparc-*-lynxos*) gdb_target=sparclynx
301 configdirs="${configdirs} gdbserver"
302 ;;
ef131e13 303sparc-*-solaris2*) gdb_target=sun4sol2 ;;
ebb3a1e5 304sparc-*-sunos4*) gdb_target=sun4os4 ;;
54d44c8c 305sparc-*-vxworks*) gdb_target=vxsparc ;;
b52373a2 306sparc-*-*) gdb_target=sun4os4 ;;
0c101d49 307sparclite*-*-*) gdb_target=sparclite ;;
bd96254f
DE
308# start-sanitize-v9
309sparc64-*-*) gdb_target_cpu=sparc gdb_target=sp64 ;;
310# end-sanitize-v9
ef131e13
JG
311
312tahoe-*-*) gdb_target=tahoe ;;
313vax-*-*) gdb_target=vax ;;
6c815bbe 314
3b891e0b
JK
315z8k-*-sim*) gdb_target=z8ksim ;;
316z8k-*-coff*) gdb_target=z8ksim ;;
6c815bbe
RP
317esac
318
1a0edbc7 319if [ ! -f ${srcdir}/config/${gdb_target_cpu}/${gdb_target}.mt ]; then
6c815bbe 320 echo '***' "Gdb does not support target ${target}" 1>&2
912e0732
RP
321 exit 1
322fi
323
324if [ -z "${removing}" ] ; then
1a0edbc7 325 cat ${srcdir}/config/${gdb_host_cpu}/${gdb_host}.mh ${srcdir}/config/${gdb_target_cpu}/${gdb_target}.mt | awk '$1 == "#msg" {
912e0732
RP
326 print substr($0,6)}'
327fi
328
bdf3621b 329# We really shouldn't depend on there being a space after TM_FILE= ...
1a0edbc7 330targetfile=`awk '$1 == "TM_FILE=" { print $2 }' <${srcdir}/config/${gdb_target_cpu}/${gdb_target}.mt`
912e0732 331
79f68f0f
DZ
332
333# these really aren't orthogonal true/false values of the same condition,
334# but shells are slow enough that I like to reuse the test conditions
335# whenever possible
336#
d40309c7 337if [ "${target}" = "${host}" ] ; then
1a0edbc7 338 nativefile=`awk '$1 == "NAT_FILE=" { print $2 }' <${srcdir}/config/${gdb_host_cpu}/${gdb_host}.mh`
79f68f0f
DZ
339else
340 # GDBserver is only useful in a "native" enviroment
341 configdirs=`echo $configdirs | sed 's/gdbserver//'`
d40309c7
JG
342fi
343
1a0edbc7
FF
344host_makefile_frag=config/${gdb_host_cpu}/${gdb_host}.mh
345target_makefile_frag=config/${gdb_target_cpu}/${gdb_target}.mt
912e0732 346
d40309c7
JG
347# If hostfile (XM_FILE) and/or targetfile (TM_FILE) and/or nativefile
348# (NAT_FILE) is not set in the ?config/* file, we don't make the
349# corresponding links. But we have to remove the xm.h files and tm.h
350# files anyway, e.g. when switching from "configure host" to
351# "configure none".
352
bdf3621b
JG
353files=
354links=
dc0c3f64 355rm -f xm.h
bdf3621b 356if [ "${hostfile}" != "" ]; then
1a0edbc7
FF
357 if [ -f ${srcdir}/config/${hostfile} ]; then
358 files="${files} config/${hostfile}"
359 else
360 files="${files} config/${gdb_host_cpu}/${hostfile}"
361 fi
bdf3621b
JG
362 links="${links} xm.h"
363fi
dc0c3f64 364rm -f tm.h
bdf3621b 365if [ "${targetfile}" != "" ]; then
1a0edbc7
FF
366 if [ -f ${srcdir}/config/${targetfile} ]; then
367 files="${files} config/${targetfile}"
368 else
369 files="${files} config/${gdb_target_cpu}/${targetfile}"
370 fi
bdf3621b
JG
371 links="${links} tm.h"
372fi
1a0edbc7 373rm -f nm.h
d40309c7 374if [ "${nativefile}" != "" ]; then
1a0edbc7
FF
375 if [ -f ${srcdir}/config/${nativefile} ]; then
376 files="${files} config/${nativefile}"
377 else
378 files="${files} config/${gdb_host_cpu}/${nativefile}"
379 fi
dfc82617 380 links="${links} nm.h"
c9c23412
RP
381# temporary scaffolding until all hosts have the host/target/native
382# split in place.
383else
1a0edbc7 384 files="${files} config/nm-trash.h"
dfc82617 385 links="${links} nm.h"
d40309c7 386fi
bdf3621b
JG
387
388# post-target:
912e0732 389
bdf3621b
JG
390case ${srcdir} in
391 .)
392 ;;
393 *)
e8f8e093 394 grep "source ${srcdir}/.gdbinit" .gdbinit >/dev/null 2>/dev/null || \
bdf3621b
JG
395 echo "source ${srcdir}/.gdbinit" >> .gdbinit
396esac
397
c1ab5dba 398if [ "${nativefile}" = "" ] ; then
41617f8b 399 sed -e '/^NATDEPFILES= /s//# NATDEPFILES= /' \
d40309c7
JG
400 < Makefile > Makefile.tem
401 mv -f Makefile.tem Makefile
402fi
This page took 0.158715 seconds and 4 git commands to generate.