* top.c (execute_control_command, case while_control): Allow
[deliverable/binutils-gdb.git] / gdb / configure.in
CommitLineData
2f4973f8
SG
1dnl Autoconf configure script for GDB, the GNU debugger.
2dnl Copyright 1995, 1996 Free Software Foundation, Inc.
3dnl
4dnl This file is part of GDB.
5dnl
6dnl This program is free software; you can redistribute it and/or modify
7dnl it under the terms of the GNU General Public License as published by
8dnl the Free Software Foundation; either version 2 of the License, or
9dnl (at your option) any later version.
10dnl
11dnl This program is distributed in the hope that it will be useful,
12dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
13dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14dnl GNU General Public License for more details.
15dnl
16dnl You should have received a copy of the GNU General Public License
17dnl along with this program; if not, write to the Free Software
476a283f 18dnl Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
2f4973f8 19
5436fc65 20dnl Process this file with autoconf to produce a configure script.
2f4973f8 21
5436fc65
C
22AC_PREREQ(2.3)dnl
23AC_INIT(main.c)
18ea4416 24AC_CONFIG_HEADER(config.h:config.in)
5436fc65 25
5436fc65
C
26AC_PROG_CC
27AC_AIX
28AC_MINIX
29AC_ISC_POSIX
30
31AC_PROG_INSTALL
d8efbc66
FF
32AC_CHECK_TOOL(AR, ar)
33AC_CHECK_TOOL(RANLIB, ranlib, :)
1e02f078 34AC_PROG_YACC
d8efbc66 35AC_PROG_AWK
5436fc65
C
36
37AC_CONFIG_AUX_DIR(`cd $srcdir;pwd`/..)
38AC_CANONICAL_SYSTEM
39AC_ARG_PROGRAM
40
2b576293 41AC_HEADER_STDC
d8efbc66 42AC_CHECK_HEADERS(limits.h memory.h string.h strings.h unistd.h termios.h termio.h sgtty.h stddef.h sys/procfs.h link.h endian.h)
2b576293
C
43AC_HEADER_STAT
44
38d715a4 45AC_CHECK_FUNCS(setpgid sbrk)
72ae15f6 46
4708ac65 47AC_MSG_CHECKING([for gregset_t type])
07b77f5c 48AC_CACHE_VAL(gdb_cv_have_gregset_t,
4708ac65 49[AC_TRY_LINK([#include <sys/procfs.h>],[gregset_t *gregsetp = 0],
07b77f5c
FF
50gdb_cv_have_gregset_t=yes, gdb_cv_have_gregset_t=no)])
51AC_MSG_RESULT($gdb_cv_have_gregset_t)
52if test $gdb_cv_have_gregset_t = yes; then
4708ac65
FF
53 AC_DEFINE(HAVE_GREGSET_T)
54fi
55
56AC_MSG_CHECKING([for fpregset_t type])
07b77f5c 57AC_CACHE_VAL(gdb_cv_have_fpregset_t,
4708ac65 58[AC_TRY_LINK([#include <sys/procfs.h>],[fpregset_t *fpregsetp = 0],
07b77f5c
FF
59gdb_cv_have_fpregset_t=yes, gdb_cv_have_fpregset_t=no)])
60AC_MSG_RESULT($gdb_cv_have_fpregset_t)
61if test $gdb_cv_have_fpregset_t = yes; then
4708ac65
FF
62 AC_DEFINE(HAVE_FPREGSET_T)
63fi
64
aa220473
SG
65dnl See if compiler supports "long double" type. Can't use AC_C_LONG_DOUBLE
66dnl because autoconf complains about cross-compilation issues. However, this
67dnl code uses the same variables as the macro for compatibility.
68
07b77f5c 69AC_MSG_CHECKING(for long double support in compiler)
aa220473
SG
70AC_CACHE_VAL(ac_cv_c_long_double,
71[AC_TRY_COMPILE(, [long double foo;],
72ac_cv_c_long_double=yes, ac_cv_c_long_double=no)])
73AC_MSG_RESULT($ac_cv_c_long_double)
74if test $ac_cv_c_long_double = yes; then
75 AC_DEFINE(HAVE_LONG_DOUBLE)
76fi
77
07b77f5c
FF
78dnl See if the compiler and runtime support printing long doubles
79
80AC_MSG_CHECKING(for long double support in printf)
81AC_CACHE_VAL(gdb_cv_printf_has_long_double,
82[AC_TRY_RUN([
83int main () {
84 char buf[16];
85 long double f = 3.141592653;
86 sprintf (buf, "%Lg", f);
87 return (strncmp ("3.14159", buf, 7));
88}],
89gdb_cv_printf_has_long_double=yes,
90gdb_cv_printf_has_long_double=no,
91gdb_cv_printf_has_long_double=no)])
92if test $gdb_cv_printf_has_long_double = yes; then
93 AC_DEFINE(PRINTF_HAS_LONG_DOUBLE)
94fi
95AC_MSG_RESULT($gdb_cv_printf_has_long_double)
96
2b576293 97AC_FUNC_MMAP
5436fc65
C
98
99dnl Handle optional features that can be enabled.
100ENABLE_CFLAGS=
101ENABLE_CLIBS=
102ENABLE_OBS=
103
104AC_ARG_ENABLE(netrom,
105[ --enable-netrom ],
106[case "${enableval}" in
107yes) enable_netrom=yes ;;
108no) enable_netrom=no ;;
109*) AC_MSG_ERROR(bad value ${enableval} given for netrom option) ;;
110esac])
111
112if test "${enable_netrom}" = "yes"; then
113 ENABLE_OBS="${ENABLE_OBS} remote-nrom.o"
114fi
115
188c635f
SG
116# start-sanitize-gm
117ENABLE_GM=
118
119AC_ARG_ENABLE(gm,
120[ --enable-gm ],
121[case "${enableval}" in
640086fd 122yes) ENABLE_OBS="${ENABLE_OBS} gmagic.o"
188c635f
SG
123 ENABLE_CFLAGS=-DGENERAL_MAGIC
124 ;;
125no) ;;
126*) AC_MSG_ERROR(bad value ${enableval} given for gm option) ;;
127esac])
128
129# end-sanitize-gm
130
3c0bf315
MM
131AC_ARG_ENABLE(sim-powerpc,
132[ --enable-sim-powerpc ],
133[case "${enableval}" in
134yes) powerpc_sim=yes ;;
135no) powerpc_sim=no ;;
136*) AC_MSG_ERROR(bad value ${enableval} given for sim-powerpc option) ;;
137esac],[if test x"$GCC" != x""; then powerpc_sim=yes; else powerpc_sim=no; fi])
138
5436fc65
C
139# start-sanitize-gdbtk
140ENABLE_GDBTK=
141
142AC_ARG_ENABLE(gdbtk,
143[ --enable-gdbtk ],
144[case "${enableval}" in
0fe1522a
SG
145 yes)
146 case "$host" in
147 *go32*)
148 AC_MSG_WARN([GDB does not support GDBtk on host ${host}. GDBtk will be disabled.])
149 enable_gdbtk=no ;;
150 *)
151 enable_gdbtk=yes ;;
152 esac ;;
153 no)
154 enable_gdbtk=no ;;
155 *)
156 AC_MSG_ERROR(bad value ${enableval} given for gdbtk option) ;;
157esac],
158[
159# Default is on for everything but go32
160case "$host" in
161 *go32*)
162 ;;
163 *)
164 enable_gdbtk=yes ;;
165 esac
166])
5436fc65
C
167
168if test "${enable_gdbtk}" = "yes"; then
0fe1522a 169
a2b63bbd
JM
170 AC_PATH_X
171 AC_PATH_XTRA
172
4e327047
TT
173 CY_AC_PATH_TCL
174 CY_AC_PATH_TK
a2b63bbd 175
1a57cd09
TT
176 # Look for dynamic linking libraries that Tcl might need. This is
177 # only done for Tcl 7.5 and greater. It would be good to look for and
178 # use the "configInfo" file that Tcl generates, but for now that is
179 # beyond us.
180 if test $tclmajor -ge 7 -a $tclminor -ge 5 ; then
181 AC_CHECK_LIB(dl, main, , AC_CHECK_LIB(dld, main))
182 fi
183
a2b63bbd
JM
184 ENABLE_GDBTK=1
185
186 if test "x$no_x" != "xyes"; then
187 if test "x$x_includes" != "x" ;
188 then
189 X_CFLAGS="-I$x_includes"
190 else
191 X_CFLAGS=""
192 fi
193
194 if test "x$x_libraries" != "x" ;
195 then
196 X_LDFLAGS="-L$x_libraries"
197 else
198 X_LDFLAGS=""
199 fi
200
201 case "$host" in
202#
203# gdb linked statically w/ Solaris iff GCC is used, otherwise dynamic
204#
146ee7db 205 sparc*-sun-solaris2*)
a2b63bbd
JM
206 if test "x$GCC" = "xyes";
207 then
127841e4 208 X_LIBS="-Wl,-Bstatic -lX11 -lXext -lX11 -Wl,-Bdynamic -ldl -lw"
a2b63bbd
JM
209 else
210 if test "x$x_libraries" != "x" ;
211 then
212 X_LDFLAGS="$X_LDFLAGS -R$x_libraries"
213 fi
214 X_LIBS="-lX11 -lXext -lX11"
215 fi ;;
216#
217# gdb linked statically w/ SunOS or HPUX
218#
219 m68k-hp-hpux*|hppa*-hp-hpux*|sparc-sun-sunos*)
220 if test "x$x_libraries" != "x" ;
221 then
222 X_LIBS="$x_libraries/libX11.a"
223 else
224 X_LIBS="/usr/lib/libX11.a"
225 fi ;;
226#
227# default is to link dynamically
228#
229 *)
230 X_LIBS="-lX11" ;;
231 esac
232 else
233 X_LDLAGS=""
234 X_CFLAGS=""
235 X_LIBS=""
236 AC_MSG_WARN([No X based programs will be built])
237 fi
238
239 TCL_LIBS='$(TCL) $(TK) $(X11_LDFLAGS) $(X11_LIBS)'
240 ENABLE_CLIBS="${ENABLE_CLIBS} ${TCL_LIBS} -lm"
241 ENABLE_OBS="${ENABLE_OBS} gdbtk.o"
5436fc65 242fi
a2b63bbd 243
5436fc65 244AC_SUBST(ENABLE_GDBTK)
9c0bc1da 245AC_SUBST(X_CFLAGS)
a2b63bbd
JM
246AC_SUBST(X_LDFLAGS)
247AC_SUBST(X_LIBS)
5436fc65
C
248# end-sanitize-gdbtk
249
250AC_SUBST(ENABLE_CFLAGS)
251AC_SUBST(ENABLE_CLIBS)
252AC_SUBST(ENABLE_OBS)
6ec7e4d3 253
9c0bc1da
DE
254# target_subdir is used by the testsuite to find the target libraries.
255target_subdir=
256if test "${host}" != "${target}"; then
257 target_subdir="${target_alias}/"
258fi
259AC_SUBST(target_subdir)
bc028766 260
6ec7e4d3
SS
261configdirs="doc testsuite"
262
5436fc65
C
263dnl
264changequote(,)dnl
0df06ca0 265
1a0edbc7
FF
266# Map host cpu into the config cpu subdirectory name.
267# The default is $host_cpu.
268
269case "${host_cpu}" in
270
271c[12]) gdb_host_cpu=convex ;;
272hppa*) gdb_host_cpu=pa ;;
3222ff2e 273i[3456]86) gdb_host_cpu=i386 ;;
1a0edbc7 274m68*) gdb_host_cpu=m68k ;;
6ec7e4d3 275m88*) gdb_host_cpu=m88k ;;
1a0edbc7
FF
276np1) gdb_host_cpu=gould ;;
277pyramid) gdb_host_cpu=pyr ;;
c7b44b04 278powerpc*) gdb_host_cpu=powerpc ;;
146ee7db 279sparc64) gdb_host_cpu=sparc ;;
1a0edbc7
FF
280*) gdb_host_cpu=$host_cpu ;;
281
282esac
283
6c815bbe
RP
284# map host info into gdb names.
285
19758e9e 286case "${host}" in
6c815bbe 287
19758e9e
JG
288a29k-*-*) gdb_host=ultra3 ;;
289
2592eef8 290alpha-*-osf1*) gdb_host=alpha-osf1 ;;
b8ea4fec
PS
291alpha-*-osf2*) gdb_host=alpha-osf2 ;;
292alpha-*-osf[3456789]*) gdb_host=alpha-osf3 ;;
7ccb1e44 293
19758e9e
JG
294arm-*-*) gdb_host=arm ;;
295
296c[12]-*-*) gdb_host=convex ;;
297
e8e13040 298hppa*-*-bsd*) gdb_host=hppabsd ;;
e8e13040 299hppa*-*-hiux*) gdb_host=hppahpux ;;
6ec7e4d3 300hppa*-*-hpux*) gdb_host=hppahpux ;;
2d2959e8 301hppa*-*-osf*) gdb_host=hppaosf ;;
19758e9e 302
3222ff2e
MM
303i[3456]86-ncr-*) gdb_host=ncr3000 ;;
304i[3456]86-sequent-bsd*) gdb_host=symmetry ;; # dynix
305i[3456]86-sequent-sysv4*) gdb_host=ptx4 ;;
306i[3456]86-sequent-sysv*) gdb_host=ptx ;;
307i[3456]86-*-aix*) gdb_host=i386aix ;;
308i[3456]86-*-bsd*) gdb_host=i386bsd ;;
309i[3456]86-*-dgux*) gdb_host=i386dgux ;;
310i[3456]86-*-freebsd*) gdb_host=fbsd ;;
311i[3456]86-*-netbsd*) gdb_host=nbsd ;;
312i[3456]86-*-go32*) gdb_host=go32 ;;
313i[3456]86-*-linux*) gdb_host=linux ;;
314i[3456]86-*-lynxos*) gdb_host=i386lynx ;;
315i[3456]86-*-mach3*) gdb_host=i386m3 ;;
316i[3456]86-*-mach*) gdb_host=i386mach ;;
d8efbc66 317i[3456]86-*-gnu*) gdb_host=i386gnu ;;
3222ff2e 318i[3456]86-*-osf1mk*) gdb_host=osf1mk ;;
125c17af 319i[3456]86-*-sco3.2v5*) gdb_host=i386sco5 ;;
3222ff2e
MM
320i[3456]86-*-sco3.2v4*) gdb_host=i386sco4 ;;
321i[3456]86-*-sco*) gdb_host=i386sco ;;
322i[3456]86-*-solaris*) gdb_host=i386sol2 ;;
323i[3456]86-*-sunos*) gdb_host=sun386 ;;
324i[3456]86-*-sysv3.2*) gdb_host=i386v32 ;;
325i[3456]86-*-sysv32*) gdb_host=i386v32 ;;
326i[3456]86-*-sysv4*) gdb_host=i386v4 ;;
327i[3456]86-*-unixware) gdb_host=i386v4 ;;
328i[3456]86-*-sysv*) gdb_host=i386v ;;
329i[3456]86-*-isc*) gdb_host=i386v32 ;;
330i[3456]86-*-os9k) gdb_host=i386os9k ;;
3d78f532 331i[3456]86-*-cygwin32) gdb_host=cygwin32 ;;
358ca35e
JG
332m680[01]0-sun-sunos3*) gdb_host=sun2os3 ;;
333m680[01]0-sun-sunos4*) gdb_host=sun2os4 ;;
ef131e13 334m68030-sony-*) gdb_host=news1000 ;;
19758e9e 335
358ca35e
JG
336m68*-altos-*) gdb_host=altos ;;
337m68*-apollo*-sysv*) gdb_host=apollo68v ;;
338m68*-apollo*-bsd*) gdb_host=apollo68b ;;
339m68*-att-*) gdb_host=3b1 ;;
0a8f1742 340m68*-bull*-sysv*) gdb_host=dpx2 ;;
8f59e92b
FF
341m68*-hp-bsd*) gdb_host=hp300bsd ;;
342m68*-hp-hpux*) gdb_host=hp300hpux ;;
358ca35e 343m68*-isi-*) gdb_host=isi ;;
9bebe500 344m68*-*-lynxos*) gdb_host=m68klynx ;;
b7f3b6d5 345m68*-*-netbsd*) gdb_host=nbsd ;;
670a8e09 346m68*-*-sysv4*) gdb_host=m68kv4 ;;
c649a7c2 347m68*-motorola-*) gdb_host=delta68 ;;
358ca35e
JG
348m68*-sony-*) gdb_host=news ;;
349m68*-sun-sunos3*) gdb_host=sun3os3 ;;
350m68*-sun-sunos4*) gdb_host=sun3os4 ;;
351m68*-sun-*) gdb_host=sun3os4 ;;
19758e9e 352
670a8e09 353m88*-harris-cxux*) gdb_host=cxux ;;
304977ab
JK
354m88*-motorola-sysv4*) gdb_host=delta88v4 ;;
355m88*-motorola-sysv*) gdb_host=delta88 ;;
6ec7e4d3 356m88*-*-mach3*) gdb_host=mach3 ;;
304977ab 357m88*-*-*) gdb_host=m88k ;;
19758e9e 358
6ec7e4d3 359mips-dec-mach3*) gdb_host=mach3 ;;
19758e9e
JG
360mips-dec-*) gdb_host=decstation ;;
361mips-little-*) gdb_host=littlemips ;;
3b891e0b 362mips-sgi-irix3*) gdb_host=irix3 ;;
81029114 363mips-sgi-irix4*) gdb_host=irix4 ;;
e03c0cc6 364mips-sgi-irix5*) gdb_host=irix5 ;;
b487ba2e 365mips-sony-*) gdb_host=news-mips ;;
6ec7e4d3 366mips-*-mach3*) gdb_host=mach3 ;;
2fe3b329 367mips-*-sysv4*) gdb_host=mipsv4 ;;
ee06f230 368mips-*-sysv*) gdb_host=riscos ;;
e8f8e093 369mips-*-riscos*) gdb_host=riscos ;;
19758e9e
JG
370
371none-*-*) gdb_host=none ;;
ef131e13 372
19758e9e
JG
373np1-*-*) gdb_host=np1 ;;
374
6ec7e4d3 375ns32k-*-mach3*) gdb_host=mach3 ;;
84f652b1 376ns32k-*-netbsd*) gdb_host=nbsd ;;
19758e9e 377ns32k-umax-*) gdb_host=umax ;;
3b891e0b 378ns32k-utek-sysv*) gdb_host=merlin ;;
19758e9e 379
fbc3f191 380powerpc-*-aix*) gdb_host=aix ;;
3d78f532 381powerpcle-*-cygwin32) gdb_host=cygwin32 ;;
31ed312c 382powerpcle-*-solaris*) gdb_host=solaris ;;
19758e9e
JG
383pn-*-*) gdb_host=pn ;;
384
385pyramid-*-*) gdb_host=pyramid ;;
386
387romp-*-*) gdb_host=rtbsd ;;
388
d87d7b10 389rs6000-*-lynxos*) gdb_host=rs6000lynx ;;
a1956677 390rs6000-*-aix4*) gdb_host=aix4 ;;
19758e9e
JG
391rs6000-*-*) gdb_host=rs6000 ;;
392
9bebe500 393sparc-*-lynxos*) gdb_host=sparclynx ;;
331d515a 394sparc-*-netbsd*) gdb_host=nbsd ;;
ef131e13 395sparc-*-solaris2*) gdb_host=sun4sol2 ;;
ebb3a1e5 396sparc-*-sunos4*) gdb_host=sun4os4 ;;
1e1dd175 397sparc-*-sunos5*) gdb_host=sun4sol2 ;;
b52373a2 398sparc-*-*) gdb_host=sun4os4 ;;
146ee7db 399sparc64-*-*) gdb_host=sun4sol2 ;;
19758e9e
JG
400
401tahoe-*-*) gdb_host=tahoe ;;
402
403vax-*-bsd*) gdb_host=vaxbsd ;;
6985bc54 404vax-*-ultrix2*) gdb_host=vaxult2 ;;
19758e9e 405vax-*-ultrix*) gdb_host=vaxult ;;
7da1e27d 406
d723ade7
SC
407w65-*-*) gdb_host=w65 ;;
408
6c815bbe
RP
409esac
410
8c7ae4a2 411
1a0edbc7
FF
412# Map target cpu into the config cpu subdirectory name.
413# The default is $target_cpu.
414
415case "${target_cpu}" in
416
cef4c2e7 417alpha) gdb_target_cpu=alpha ;;
1a0edbc7
FF
418c[12]) gdb_target_cpu=convex ;;
419hppa*) gdb_target_cpu=pa ;;
3222ff2e 420i[3456]86) gdb_target_cpu=i386 ;;
1a0edbc7 421m68*) gdb_target_cpu=m68k ;;
6ec7e4d3 422m88*) gdb_target_cpu=m88k ;;
b60f6584 423mips*) gdb_target_cpu=mips ;;
1a0edbc7 424np1) gdb_target_cpu=gould ;;
c7b44b04 425powerpc*) gdb_target_cpu=powerpc ;;
1a0edbc7
FF
426pn) gdb_target_cpu=gould ;;
427pyramid) gdb_target_cpu=pyr ;;
0c101d49 428sparc*) gdb_target_cpu=sparc ;;
1a0edbc7
FF
429*) gdb_target_cpu=$target_cpu ;;
430
431esac
432
433# map target info into gdb names.
434
ef131e13
JG
435case "${target}" in
436
3b891e0b
JK
437a29k-*-aout*) gdb_target=a29k ;;
438a29k-*-coff*) gdb_target=a29k ;;
439a29k-*-elf*) gdb_target=a29k ;;
440a29k-*-ebmon*) gdb_target=a29k ;;
441a29k-*-kern*) gdb_target=a29k-kern ;;
442a29k-*-none*) gdb_target=a29k ;;
443a29k-*-sym1*) gdb_target=ultra3 ;;
444a29k-*-udi*) gdb_target=a29k-udi ;;
83d9bb14 445a29k-*-vxworks*) gdb_target=vx29k ;;
ef131e13 446
cef4c2e7 447alpha-*-osf*) gdb_target=alpha-osf1 ;;
6ec7e4d3 448
c1ac88f9 449# start-sanitize-arc
83d9bb14 450arc-*-*) gdb_target=arc ;;
c1ac88f9
DE
451# end-sanitize-arc
452
ef131e13
JG
453arm-*-*) gdb_target=arm ;;
454
455c1-*-*) gdb_target=convex ;;
456c2-*-*) gdb_target=convex ;;
457
fb506180
SS
458h8300-*-*) gdb_target=h8300 ;;
459h8500-*-*) gdb_target=h8500 ;;
ef131e13 460
9faacb92
SC
461sh-*-*) gdb_target=sh ;;
462
03c4ce2f
MT
463# start-sanitize-r16
464r16-*-*) gdb_target=r16 ;;
465# end-sanitize-r16
466
8f59e92b 467hppa*-*-bsd*) gdb_target=hppabsd ;;
cc5702bd 468hppa*-*-pro*) gdb_target=hppapro ;;
8f59e92b 469hppa*-*-hpux*) gdb_target=hppahpux ;;
7079e766 470hppa*-*-hiux*) gdb_target=hppahpux ;;
6bfd168c 471hppa*-*-osf*) gdb_target=hppaosf ;;
ef131e13 472
3222ff2e
MM
473i[3456]86-sequent-bsd*) gdb_target=symmetry ;;
474i[3456]86-sequent-sysv4*) gdb_target=ptx4 ;;
475i[3456]86-sequent-sysv*) gdb_target=ptx ;;
476i[3456]86-ncr-*) gdb_target=ncr3000 ;;
477i[3456]86-*-aout*) gdb_target=i386aout ;;
478i[3456]86-*-coff*) gdb_target=i386v ;;
479i[3456]86-*-elf*) gdb_target=i386v ;;
480i[3456]86-*-aix*) gdb_target=i386aix ;;
481i[3456]86-*-bsd*) gdb_target=i386bsd ;;
482i[3456]86-*-freebsd*) gdb_target=fbsd ;;
483i[3456]86-*-netbsd*) gdb_target=nbsd ;;
484i[3456]86-*-os9k) gdb_target=i386os9k ;;
485i[3456]86-*-go32*) gdb_target=i386aout ;;
486i[3456]86-*-lynxos*) gdb_target=i386lynx
5436fc65 487 configdirs="${configdirs} gdbserver" ;;
3222ff2e
MM
488i[3456]86-*-solaris*) gdb_target=i386sol2 ;;
489i[3456]86-*-sunos*) gdb_target=sun386 ;;
490i[3456]86-*-sysv4*) gdb_target=i386v4 ;;
491i[3456]86-*-sco*) gdb_target=i386v ;;
492i[3456]86-*-sysv*) gdb_target=i386v ;;
3dedc867
FF
493i[3456]86-*-linux*) gdb_target=linux
494 configdirs="${configdirs} gdbserver" ;;
3222ff2e
MM
495i[3456]86-*-isc*) gdb_target=i386v ;;
496i[3456]86-*-mach3*) gdb_target=i386m3 ;;
497i[3456]86-*-mach*) gdb_target=i386mach ;;
d8efbc66 498i[3456]86-*-gnu*) gdb_target=i386gnu ;;
3222ff2e 499i[3456]86-*-netware*) gdb_target=i386nw
5436fc65 500 configdirs="${configdirs} nlm" ;;
3222ff2e 501i[3456]86-*-osf1mk*) gdb_target=i386mk ;;
3d78f532 502i[3456]86-*-cygwin32) gdb_target=cygwin32 ;;
3b891e0b 503i960-*-bout*) gdb_target=vxworks960 ;;
2e665cd3
DP
504i960-nindy-coff*) gdb_target=nindy960 ;;
505i960-*-coff*) gdb_target=mon960 ;;
506i960-nindy-elf*) gdb_target=nindy960 ;;
507i960-*-elf*) gdb_target=mon960 ;;
ebb3a1e5 508
3b891e0b
JK
509i960-*-nindy*) gdb_target=nindy960 ;;
510i960-*-vxworks*) gdb_target=vxworks960 ;;
ef131e13 511
ebb3a1e5
JG
512m68000-*-sunos3*) gdb_target=sun2os3 ;;
513m68000-*-sunos4*) gdb_target=sun2os4 ;;
ef131e13 514
835fe6e6 515m68*-apollo*-bsd*) gdb_target=apollo68b ;;
6ec7e4d3 516m68*-bull-sysv*) gdb_target=dpx2 ;;
6ec7e4d3
SS
517m68*-hp-bsd*) gdb_target=hp300bsd ;;
518m68*-hp-hpux*) gdb_target=hp300hpux ;;
670a8e09
SS
519m68*-altos-*) gdb_target=altos ;;
520m68*-att-*) gdb_target=3b1 ;;
521m68*-cisco*-*) gdb_target=cisco ;;
522m68*-ericsson-*) gdb_target=es1800 ;;
358ca35e 523m68*-isi-*) gdb_target=isi ;;
c649a7c2 524m68*-motorola-*) gdb_target=delta68 ;;
358ca35e
JG
525m68*-netx-*) gdb_target=vxworks68 ;;
526m68*-sony-*) gdb_target=news ;;
527m68*-tandem-*) gdb_target=st2000 ;;
c1128340
RS
528m68*-rom68k-*) gdb_target=monitor ;;
529m68*-*bug-*) gdb_target=monitor ;;
530m68*-monitor-*) gdb_target=monitor ;;
949e2bbf 531m68*-est-*) gdb_target=monitor ;;
0ffba029
RS
532m68*-*-aout*) gdb_target=monitor ;;
533m68*-*-coff*) gdb_target=monitor ;;
534m68*-*-elf*) gdb_target=monitor ;;
9bebe500 535m68*-*-lynxos*) gdb_target=m68klynx
5436fc65 536 configdirs="${configdirs} gdbserver" ;;
b7f3b6d5 537m68*-*-netbsd*) gdb_target=nbsd ;;
3b891e0b 538m68*-*-os68k*) gdb_target=os68k ;;
358ca35e
JG
539m68*-*-sunos3*) gdb_target=sun3os3 ;;
540m68*-*-sunos4*) gdb_target=sun3os4 ;;
670a8e09 541m68*-*-sysv4*) gdb_target=m68kv4 ;;
358ca35e 542m68*-*-vxworks*) gdb_target=vxworks68 ;;
ef131e13 543
670a8e09 544m88*-harris-cxux*) gdb_target=cxux ;;
f9440640 545m88*-motorola-sysv4*) gdb_target=delta88v4 ;;
6ec7e4d3 546m88*-*-mach3*) gdb_target=mach3 ;;
304977ab
JK
547m88*-motorola-*) gdb_target=delta88 ;;
548m88*-*-*) gdb_target=m88k ;;
ef131e13 549
70126bf9 550mips64*-big-*) gdb_target=bigmips64 ;;
b60f6584 551mips*-big-*) gdb_target=bigmips ;;
6ec7e4d3 552mips*-dec-mach3*) gdb_target=mach3 ;;
b60f6584 553mips*-dec-*) gdb_target=decstation ;;
7bb5e831
RS
554mips64*el-*-ecoff*) gdb_target=embedl64 ;;
555mips64*-*-ecoff*) gdb_target=embed64 ;;
0e3a4b1e
JSC
556mips64*vr4300*el-*-elf*) gdb_target=vr4300el ;;
557mips64*vr4300*-*-elf*) gdb_target=vr4300 ;;
7bb5e831
RS
558mips64*el-*-elf*) gdb_target=embedl64 ;;
559mips64*-*-elf*) gdb_target=embed64 ;;
560mips*el-*-ecoff*) gdb_target=embedl ;;
561mips*-*-ecoff*) gdb_target=embed ;;
cd10c7e3 562# start-sanitize-gm
7bb5e831 563mips*-*-magic*) gdb_target=embed ;;
cd10c7e3 564# end-sanitize-gm
7bb5e831
RS
565mips*el-*-elf*) gdb_target=embedl ;;
566mips*-*-elf*) gdb_target=embed ;;
b60f6584
ILT
567mips*-little-*) gdb_target=littlemips ;;
568mips*-sgi-irix5*) gdb_target=irix5 ;;
569mips*-sgi-*) gdb_target=irix3 ;;
570mips*-sony-*) gdb_target=bigmips ;;
6ec7e4d3 571mips*-*-mach3*) gdb_target=mach3 ;;
2fe3b329 572mips*-*-sysv4*) gdb_target=mipsv4 ;;
b60f6584
ILT
573mips*-*-sysv*) gdb_target=bigmips ;;
574mips*-*-riscos*) gdb_target=bigmips ;;
8fa6fcf8 575mips*-*-vxworks*) gdb_target=vxmips ;;
ef131e13
JG
576
577none-*-*) gdb_target=none ;;
578
579np1-*-*) gdb_target=np1 ;;
580
6ec7e4d3 581ns32k-*-mach3*) gdb_target=mach3 ;;
84f652b1 582ns32k-*-netbsd*) gdb_target=nbsd ;;
3b891e0b 583ns32k-utek-sysv*) gdb_target=merlin ;;
ef131e13
JG
584ns32k-utek-*) gdb_target=umax ;;
585
586pn-*-*) gdb_target=pn ;;
c148ab3c 587powerpc-*-macos*) gdb_target=macos ;;
b7da2494
SG
588powerpc-*-netware*) gdb_target=ppc-nw
589 configdirs="${configdirs} nlm" ;;
ef131e13 590
65eaea27 591powerpc-*-aix4*) gdb_target=aix4 ;;
fbc3f191 592powerpc-*-aix*) gdb_target=aix ;;
3d78f532 593powerpcle-*-cygwin32) gdb_target=cygwin32 ;;
31ed312c 594powerpcle-*-solaris*) gdb_target=solaris ;;
3c0bf315
MM
595powerpc-*-eabi*) if test x"$powerpc_sim" = x"yes"; then
596 gdb_target=ppc-sim
597 else
598 gdb_target=ppc-eabi
599 fi ;;
600powerpcle-*-eabi*) if test x"$powerpc_sim" = x"yes"; then
601 gdb_target=ppcle-sim
602 else
603 gdb_target=ppcle-eabi
604 fi ;;
c7b44b04 605
ef131e13
JG
606pyramid-*-*) gdb_target=pyramid ;;
607
d87d7b10 608rs6000-*-lynxos*) gdb_target=rs6000lynx ;;
65eaea27 609rs6000-*-aix4*) gdb_target=aix4 ;;
ef131e13
JG
610rs6000-*-*) gdb_target=rs6000 ;;
611
3b891e0b
JK
612sparc-*-aout*) gdb_target=sparc-em ;;
613sparc-*-coff*) gdb_target=sparc-em ;;
614sparc-*-elf*) gdb_target=sparc-em ;;
9bebe500 615sparc-*-lynxos*) gdb_target=sparclynx
5436fc65 616 configdirs="${configdirs} gdbserver" ;;
331d515a 617sparc-*-netbsd*) gdb_target=nbsd ;;
ef131e13 618sparc-*-solaris2*) gdb_target=sun4sol2 ;;
ebb3a1e5 619sparc-*-sunos4*) gdb_target=sun4os4 ;;
1e1dd175 620sparc-*-sunos5*) gdb_target=sun4sol2 ;;
54d44c8c 621sparc-*-vxworks*) gdb_target=vxsparc ;;
b52373a2 622sparc-*-*) gdb_target=sun4os4 ;;
229b2c87
DE
623# Use sparc-em for sparclet for now.
624sparclet-*-*) gdb_target=sparc-em ;;
0c101d49 625sparclite*-*-*) gdb_target=sparclite ;;
078aeca4
DE
626# It's not clear what the right solution for "v8plus" systems is yet.
627# For now, stick with sparc-sun-solaris2 since that's what config.guess
628# should return. Work is still needed to get gdb to print the 64 bit
629# regs (some of which are usable in v8plus) so sp64sol.mt hasn't been
630# deleted though presumably it should be eventually.
631#sparc64-*-solaris2*) gdb_target=sp64sol2 ;;
6ec7e4d3 632sparc64-*-*) gdb_target=sp64 ;;
ef131e13
JG
633
634tahoe-*-*) gdb_target=tahoe ;;
6ec7e4d3 635
ef131e13 636vax-*-*) gdb_target=vax ;;
6c815bbe 637
d723ade7
SC
638w65-*-*) gdb_target=w65 ;;
639
fb506180 640z8k-*-coff*) gdb_target=z8k ;;
6ec7e4d3 641
6c815bbe
RP
642esac
643
5436fc65
C
644dnl
645changequote([,])dnl
646
5f107900 647frags=
5436fc65
C
648host_makefile_frag=${srcdir}/config/${gdb_host_cpu}/${gdb_host}.mh
649if test ! -f ${host_makefile_frag}; then
650AC_MSG_ERROR("*** Gdb does not support host ${host}")
912e0732 651fi
5f107900 652frags="$frags $host_makefile_frag"
912e0732 653
5436fc65
C
654target_makefile_frag=${srcdir}/config/${gdb_target_cpu}/${gdb_target}.mt
655if test ! -f ${target_makefile_frag}; then
656AC_MSG_ERROR("*** Gdb does not support target ${target}")
912e0732 657fi
5f107900 658frags="$frags $target_makefile_frag"
912e0732 659
5436fc65
C
660AC_SUBST_FILE(host_makefile_frag)
661AC_SUBST_FILE(target_makefile_frag)
5f107900 662AC_SUBST(frags)
5436fc65 663
094fd4ae
C
664changequote(,)dnl
665hostfile=`sed -n '
666s/XM_FILE[ ]*=[ ]*\([^ ]*\)/\1/p
667' ${host_makefile_frag}`
5436fc65 668
094fd4ae
C
669targetfile=`sed -n '
670s/TM_FILE[ ]*=[ ]*\([^ ]*\)/\1/p
671' ${target_makefile_frag}`
79f68f0f
DZ
672
673# these really aren't orthogonal true/false values of the same condition,
674# but shells are slow enough that I like to reuse the test conditions
675# whenever possible
5436fc65 676if test "${target}" = "${host}"; then
094fd4ae
C
677nativefile=`sed -n '
678s/NAT_FILE[ ]*=[ ]*\([^ ]*\)/\1/p
679' ${host_makefile_frag}`
79f68f0f 680else
5436fc65
C
681# GDBserver is only useful in a "native" enviroment
682configdirs=`echo $configdirs | sed 's/gdbserver//'`
d40309c7 683fi
094fd4ae 684changequote([,])
d40309c7 685
d40309c7 686# If hostfile (XM_FILE) and/or targetfile (TM_FILE) and/or nativefile
6573c898 687# (NAT_FILE) is not set in config/*/*.m[ht] files, we don't make the
d40309c7
JG
688# corresponding links. But we have to remove the xm.h files and tm.h
689# files anyway, e.g. when switching from "configure host" to
690# "configure none".
691
bdf3621b
JG
692files=
693links=
dc0c3f64 694rm -f xm.h
5436fc65
C
695if test "${hostfile}" != ""; then
696files="${files} config/${gdb_host_cpu}/${hostfile}"
697links="${links} xm.h"
bdf3621b 698fi
dc0c3f64 699rm -f tm.h
5436fc65
C
700if test "${targetfile}" != ""; then
701files="${files} config/${gdb_target_cpu}/${targetfile}"
702links="${links} tm.h"
bdf3621b 703fi
1a0edbc7 704rm -f nm.h
5436fc65
C
705if test "${nativefile}" != ""; then
706files="${files} config/${gdb_host_cpu}/${nativefile}"
707links="${links} nm.h"
c9c23412 708else
5436fc65
C
709# A cross-only configuration.
710files="${files} config/nm-empty.h"
711links="${links} nm.h"
d40309c7 712fi
d3d75ec9 713# start-sanitize-gdbtk
912e0732 714
5436fc65
C
715# Make it possible to use the GUI without doing a full install
716if test "${enable_gdbtk}" = "yes" -a ! -f gdbtk.tcl ; then
717files="${files} gdbtk.tcl"
718links="${links} gdbtk.tcl"
754e5da2 719fi
d3d75ec9 720# end-sanitize-gdbtk
754e5da2 721
5436fc65
C
722AC_LINK_FILES($files, $links)
723
724AC_CONFIG_SUBDIRS($configdirs)
725AC_OUTPUT(Makefile,
726[
727dnl Autoconf doesn't provide a mechanism for modifying definitions
728dnl provided by makefile fragments.
729dnl
730if test "${nativefile}" = ""; then
731sed -e '/^NATDEPFILES= /s//# NATDEPFILES= /' \
732 < Makefile > Makefile.tem
733mv -f Makefile.tem Makefile
33bc979d
SS
734fi
735
5436fc65 736changequote(,)dnl
94d4b713
JK
737sed -e '/^TM_FILE[ ]*=/s,^TM_FILE[ ]*=[ ]*,&config/'"${gdb_target_cpu}"'/,
738/^XM_FILE[ ]*=/s,^XM_FILE[ ]*=[ ]*,&config/'"${gdb_host_cpu}"'/,
739/^NAT_FILE[ ]*=/s,^NAT_FILE[ ]*=[ ]*,&config/'"${gdb_host_cpu}"'/,' <Makefile >Makefile.tmp
740mv -f Makefile.tmp Makefile
5436fc65
C
741changequote([,])dnl
742
743case ${srcdir} in
744.)
745;;
746*)
747grep "source ${srcdir}/.gdbinit" .gdbinit >/dev/null 2>/dev/null || \
748echo "source ${srcdir}/.gdbinit" >> .gdbinit
749esac
31520669
FF
750
751case x$CONFIG_HEADERS in
18ea4416 752xconfig.h:config.in)
31520669
FF
753echo > stamp-h ;;
754esac
0a5a1821
C
755],
756[
757gdb_host_cpu=$gdb_host_cpu
758gdb_target_cpu=$gdb_target_cpu
759nativefile=$nativefile
5436fc65 760])
5e711e7f
PS
761
762exit 0
b7f3b6d5 763
This page took 0.268417 seconds and 4 git commands to generate.