1 dnl Autoconf configure script for GDB, the GNU debugger.
2 dnl Copyright 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002
3 dnl Free Software Foundation, Inc.
5 dnl This file is part of GDB.
7 dnl This program is free software; you can redistribute it and/or modify
8 dnl it under the terms of the GNU General Public License as published by
9 dnl the Free Software Foundation; either version 2 of the License, or
10 dnl (at your option) any later version.
12 dnl This program is distributed in the hope that it will be useful,
13 dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
14 dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 dnl GNU General Public License for more details.
17 dnl You should have received a copy of the GNU General Public License
18 dnl along with this program; if not, write to the Free Software
19 dnl Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
21 dnl Process this file with autoconf to produce a configure script.
25 AC_CONFIG_HEADER(config.h:config.in)
33 AC_CONFIG_AUX_DIR(`cd $srcdir;pwd`/..)
36 dnl gdb doesn't use gettext, but bfd does. We call this to ensure we
37 dnl link with the correct libraries.
41 dnl List of object files added by configure.
54 configdirs="doc testsuite"
56 AC_ARG_ENABLE(multi-ice,
57 [ --enable-multi-ice Build the multi-ice-gdb-server],
58 [case "${enableval}" in
59 yes ) enable_multi_ice="yes" ;;
60 no) enable_multi_ice="no" ;;
61 *) AC_MSG_ERROR(Bad value for --enable-multi-ice: ${enableval}) ;;
65 if test "${enable_multi_ice}" = "yes"; then
66 configdirs="${configdirs} multi-ice"
72 . ${srcdir}/configure.host
74 . ${srcdir}/configure.tgt
76 targ=${target} ; . ${srcdir}/../bfd/config.bfd
81 dnl use BFD to determine the default architecture and byte order
82 dnl (bfd_vec->byteorder provides the latter).
84 . ${srcdir}/../bfd/config.bfd
86 dnl We only want the first arch, if there is more than one.
87 targ_archs=`echo ${targ_archs} | sed -e 's/ .*//;'`
89 if test x"${targ_archs}" != x ; then
90 AC_DEFINE_UNQUOTED(DEFAULT_BFD_ARCH, ${targ_archs})
92 if test x"${targ_defvec}" != x ; then
93 AC_DEFINE_UNQUOTED(DEFAULT_BFD_VEC, ${targ_defvec})
99 AC_CHECK_TOOL(RANLIB, ranlib, :)
100 AC_CHECK_TOOL(DLLTOOL, dlltool)
101 AC_CHECK_TOOL(WINDRES, windres)
104 dnl MiG is needed for the Hurd.
105 AC_CHECK_TOOL(MIG, mig)
113 dnl Solaris 7 needs _MSE_INT_H defined to avoid a clash between <widec.h>
114 dnl and <wchar.h> that causes AC_CHECK_HEADERS to think <curses.h> doesn't
117 case $host_os in solaris2.7 | solaris2.8) case "$GCC" in yes)
118 AC_DEFINE(_MSE_INT_H)
121 AC_CHECK_HEADERS(ctype.h nlist.h link.h thread_db.h proc_service.h \
122 memory.h objlist.h ptrace.h sgtty.h stddef.h stdlib.h \
123 string.h sys/procfs.h sys/ptrace.h sys/reg.h stdint.h \
124 term.h termio.h termios.h unistd.h wait.h sys/wait.h \
125 wchar.h wctype.h asm/debugreg.h sys/debugreg.h sys/select.h \
126 time.h sys/file.h sys/ioctl.h sys/user.h sys/fault.h sys/syscall.h \
127 dirent.h sys/ndir.h sys/dir.h ndir.h sys/filio.h \
134 AC_CHECK_FUNCS(bcopy btowc bzero canonicalize_file_name isascii poll \
135 realpath sbrk setpgid setpgrp sigaction sigprocmask sigsetmask )
138 dnl AC_FUNC_SETPGRP does not work when cross compiling
139 dnl Instead, assume we will have a prototype for setpgrp if cross compiling.
140 if test "$cross_compiling" = no; then
143 AC_CACHE_CHECK([whether setpgrp takes no argument], ac_cv_func_setpgrp_void,
147 if (setpgrp(1,1) == -1)
151 ], ac_cv_func_setpgrp_void=no, ac_cv_func_setpgrp_void=yes)])
152 if test $ac_cv_func_setpgrp_void = yes; then
153 AC_DEFINE(SETPGRP_VOID, 1)
157 # Check if sigsetjmp is available. Using AC_CHECK_FUNCS won't do
158 # since sigsetjmp might only be defined as a macro.
159 AC_CACHE_CHECK([for sigsetjmp], gdb_cv_func_sigsetjmp,
162 ], [sigjmp_buf env; while (! sigsetjmp (env, 1)) siglongjmp (env, 1);],
163 gdb_cv_func_sigsetjmp=yes, gdb_cv_func_sigsetjmp=no)])
164 if test $gdb_cv_func_sigsetjmp = yes; then
165 AC_DEFINE(HAVE_SIGSETJMP, 1, [Define if sigsetjmp is available. ])
168 # See if <machine/reg.h> supports the %fs and %gs i386 segment registers.
169 # Older i386 BSD's don't have the r_fs and r_gs members of `struct reg'.
170 AC_CACHE_CHECK([for r_fs in struct reg], gdb_cv_struct_reg_r_fs,
171 [AC_TRY_COMPILE([#include <machine/reg.h>], [struct reg r; r.r_fs;],
172 gdb_cv_struct_reg_r_fs=yes, gdb_cv_struct_reg_r_fs=no)])
173 if test $gdb_cv_struct_reg_r_fs = yes; then
174 AC_DEFINE(HAVE_STRUCT_REG_R_FS)
176 AC_CACHE_CHECK([for r_gs in struct reg], gdb_cv_struct_reg_r_gs,
177 [AC_TRY_COMPILE([#include <machine/reg.h>], [struct reg r; r.r_gs;],
178 gdb_cv_struct_reg_r_gs=yes, gdb_cv_struct_reg_r_gs=no)])
179 if test $gdb_cv_struct_reg_r_gs = yes; then
180 AC_DEFINE(HAVE_STRUCT_REG_R_GS)
183 # See if <sys/ptrace.h> provides the PTRACE_GETREGS request.
184 AC_MSG_CHECKING(for PTRACE_GETREGS)
185 AC_CACHE_VAL(gdb_cv_have_ptrace_getregs,
186 [AC_TRY_COMPILE([#include <sys/ptrace.h>],
188 [gdb_cv_have_ptrace_getregs=yes],
189 [gdb_cv_have_ptrace_getregs=no])])
190 AC_MSG_RESULT($gdb_cv_have_ptrace_getregs)
191 if test $gdb_cv_have_ptrace_getregs = yes; then
192 AC_DEFINE(HAVE_PTRACE_GETREGS)
195 # See if <sys/ptrace.h> provides the PTRACE_GETFPXREGS request.
196 AC_MSG_CHECKING(for PTRACE_GETFPXREGS)
197 AC_CACHE_VAL(gdb_cv_have_ptrace_getfpxregs,
198 [AC_TRY_COMPILE([#include <sys/ptrace.h>],
199 [PTRACE_GETFPXREGS;],
200 [gdb_cv_have_ptrace_getfpxregs=yes],
201 [gdb_cv_have_ptrace_getfpxregs=no])])
202 AC_MSG_RESULT($gdb_cv_have_ptrace_getfpxregs)
203 if test $gdb_cv_have_ptrace_getfpxregs = yes; then
204 AC_DEFINE(HAVE_PTRACE_GETFPXREGS)
207 # See if <sys/ptrace.h> provides the PT_GETDBREGS request.
208 AC_MSG_CHECKING(for PT_GETDBREGS)
209 AC_CACHE_VAL(gdb_cv_have_pt_getdbregs,
210 [AC_TRY_COMPILE([#include <sys/types.h>
211 #include <sys/ptrace.h>],
213 [gdb_cv_have_pt_getdbregs=yes],
214 [gdb_cv_have_pt_getdbregs=no])])
215 AC_MSG_RESULT($gdb_cv_have_pt_getdbregs)
216 if test $gdb_cv_have_pt_getdbregs = yes; then
217 AC_DEFINE(HAVE_PT_GETDBREGS)
220 # See if <sys/ptrace.h> provides the PT_GETXMMREGS request.
221 AC_MSG_CHECKING(for PT_GETXMMREGS)
222 AC_CACHE_VAL(gdb_cv_have_pt_getxmmregs,
223 [AC_TRY_COMPILE([#include <sys/types.h>
224 #include <sys/ptrace.h>],
226 [gdb_cv_have_pt_getxmmregs=yes],
227 [gdb_cv_have_pt_getxmmregs=no])])
228 AC_MSG_RESULT($gdb_cv_have_pt_getxmmregs)
229 if test $gdb_cv_have_pt_getxmmregs = yes; then
230 AC_DEFINE(HAVE_PT_GETXMMREGS)
234 AC_CHECK_LIB(socket, socketpair)
235 AC_CHECK_FUNCS(socketpair)
238 BFD_NEED_DECLARATION(malloc)
239 BFD_NEED_DECLARATION(realloc)
240 BFD_NEED_DECLARATION(free)
241 BFD_NEED_DECLARATION(strerror)
242 BFD_NEED_DECLARATION(strdup)
243 BFD_NEED_DECLARATION(strstr)
244 BFD_NEED_DECLARATION(canonicalize_file_name)
246 # The following save_state_t checkery is only necessary for HPUX
247 # versions earlier than 10.20. When those fade from memory, this
248 # could be expunged. --jsm 1999-03-22
250 AC_MSG_CHECKING(for HPUX save_state structure)
251 AC_EGREP_HEADER(save_state_t, machine/save_state.h,
252 gdb_cv_hpux_savestate=yes, gdb_cv_hpux_savestate=no)
253 AC_EGREP_HEADER(ss_wide, machine/save_state.h, gdb_cv_hpux_sswide=yes,
254 gdb_cv_hpux_sswide=no)
255 if test $gdb_cv_hpux_savestate = yes
257 AC_DEFINE(HAVE_STRUCT_SAVE_STATE_T, 1)
259 if test $gdb_cv_hpux_sswide = yes
261 AC_DEFINE(HAVE_STRUCT_MEMBER_SS_WIDE, 1)
263 AC_MSG_RESULT($gdb_cv_hpux_sswide)
266 # If we are configured native on GNU/Linux, work around problems with
268 # Also detect which type of /proc is in use, such as for Unixware or Solaris.
270 if test "${target}" = "${host}"; then
272 i[[3456]]86-*-linux*)
273 AC_DEFINE(START_INFERIOR_TRAPS_EXPECTED,2)
274 AC_DEFINE(sys_quotactl)
277 AC_DEFINE(NEW_PROC_API)
279 *-*-unixware* | *-*-sysv4.2* | *-*-sysv5*)
280 AC_DEFINE(NEW_PROC_API)
282 *-*-solaris2.[[678]])
283 AC_DEFINE(NEW_PROC_API)
288 if test "$ac_cv_header_sys_procfs_h" = yes; then
289 BFD_HAVE_SYS_PROCFS_TYPE(pstatus_t)
290 BFD_HAVE_SYS_PROCFS_TYPE(prrun_t)
291 BFD_HAVE_SYS_PROCFS_TYPE(gregset_t)
292 BFD_HAVE_SYS_PROCFS_TYPE(fpregset_t)
293 BFD_HAVE_SYS_PROCFS_TYPE(prgregset_t)
294 BFD_HAVE_SYS_PROCFS_TYPE(prfpregset_t)
295 BFD_HAVE_SYS_PROCFS_TYPE(prgregset32_t)
296 BFD_HAVE_SYS_PROCFS_TYPE(prfpregset32_t)
297 BFD_HAVE_SYS_PROCFS_TYPE(lwpid_t)
298 BFD_HAVE_SYS_PROCFS_TYPE(psaddr_t)
299 BFD_HAVE_SYS_PROCFS_TYPE(prsysent_t)
300 BFD_HAVE_SYS_PROCFS_TYPE(pr_sigset_t)
301 BFD_HAVE_SYS_PROCFS_TYPE(pr_sigaction64_t)
302 BFD_HAVE_SYS_PROCFS_TYPE(pr_siginfo64_t)
305 dnl Check for broken prfpregset_t type
307 dnl For Linux/i386, glibc 2.1.3 was released with a bogus
308 dnl prfpregset_t type (it's a typedef for the pointer to a struct
309 dnl instead of the struct itself). We detect this here, and work
310 dnl around it in gdb_proc_service.h.
312 if test $bfd_cv_have_sys_procfs_type_prfpregset_t = yes; then
313 AC_MSG_CHECKING(whether prfpregset_t type is broken)
314 AC_CACHE_VAL(gdb_cv_prfpregset_t_broken,
315 [AC_TRY_RUN([#include <sys/procfs.h>
318 if (sizeof (prfpregset_t) == sizeof (void *))
322 gdb_cv_prfpregset_t_broken=no,
323 gdb_cv_prfpregset_t_broken=yes,
324 gdb_cv_prfpregset_t_broken=yes)])
325 AC_MSG_RESULT($gdb_cv_prfpregset_t_broken)
326 if test $gdb_cv_prfpregset_t_broken = yes; then
327 AC_DEFINE(PRFPREGSET_T_BROKEN)
331 dnl Check for PIOCSET ioctl entry
333 AC_MSG_CHECKING(for PIOCSET ioctl entry in sys/procfs.h)
334 AC_CACHE_VAL(gdb_cv_have_procfs_piocset,
335 [AC_TRY_COMPILE([#include <unistd.h>
336 #include <sys/types.h>
337 #include <sys/procfs.h>
340 dummy = ioctl(0, PIOCSET, &dummy);
342 gdb_cv_have_procfs_piocset=yes, gdb_cv_have_procfs_piocset=no)])
343 AC_MSG_RESULT($gdb_cv_have_procfs_piocset)
344 if test $gdb_cv_have_procfs_piocset = yes; then
345 AC_DEFINE(HAVE_PROCFS_PIOCSET)
349 dnl For native ports (host == target), check to see what kind of
350 dnl legacy link.h support is needed. (See solib-legacy.c.)
351 if test ${host} = ${target} ; then
352 dnl Check for struct link_map with l_ members which are indicative
353 dnl of SVR4-like shared libraries
355 AC_MSG_CHECKING(for member l_addr in struct link_map)
356 AC_CACHE_VAL(gdb_cv_have_struct_link_map_with_l_members,
357 [AC_TRY_COMPILE([#include <link.h>],
358 [struct link_map lm; (void) lm.l_addr;],
359 gdb_cv_have_struct_link_map_with_l_members=yes,
360 gdb_cv_have_struct_link_map_with_l_members=no)])
361 AC_MSG_RESULT($gdb_cv_have_struct_link_map_with_l_members)
362 if test $gdb_cv_have_struct_link_map_with_l_members = yes; then
363 AC_DEFINE(HAVE_STRUCT_LINK_MAP_WITH_L_MEMBERS)
366 dnl Check for struct link_map with lm_ members which are indicative
367 dnl of SunOS-like shared libraries
369 AC_MSG_CHECKING(for member lm_addr in struct link_map)
370 AC_CACHE_VAL(gdb_cv_have_struct_link_map_with_lm_members,
371 [AC_TRY_COMPILE([#include <sys/types.h>
373 [struct link_map lm; (void) lm.lm_addr;],
374 gdb_cv_have_struct_link_map_with_lm_members=yes,
375 gdb_cv_have_struct_link_map_with_lm_members=no)])
376 AC_MSG_RESULT($gdb_cv_have_struct_link_map_with_lm_members)
377 if test $gdb_cv_have_struct_link_map_with_lm_members = yes; then
378 AC_DEFINE(HAVE_STRUCT_LINK_MAP_WITH_LM_MEMBERS)
381 dnl Check for struct so_map with som_ members which are found on
382 dnl some *BSD systems.
384 AC_MSG_CHECKING(for member som_addr in struct so_map)
385 AC_CACHE_VAL(gdb_cv_have_struct_so_map_with_som_members,
386 [AC_TRY_COMPILE([#include <sys/types.h>
391 [struct so_map lm; (void) lm.som_addr;],
392 gdb_cv_have_struct_so_map_with_som_members=yes,
393 gdb_cv_have_struct_so_map_with_som_members=no)])
394 AC_MSG_RESULT($gdb_cv_have_struct_so_map_with_som_members)
395 if test $gdb_cv_have_struct_so_map_with_som_members = yes; then
396 AC_DEFINE(HAVE_STRUCT_SO_MAP_WITH_SOM_MEMBERS)
399 dnl Check for struct link_map32 type, which allows a 64-bit Solaris
400 dnl debugger to debug a 32-bit Solaris app with 32-bit shared libraries.
402 AC_MSG_CHECKING(for struct link_map32 in sys/link.h)
403 AC_CACHE_VAL(gdb_cv_have_struct_link_map32,
404 [AC_TRY_COMPILE([#define _SYSCALL32
405 #include <sys/link.h>], [struct link_map32 l;],
406 gdb_cv_have_struct_link_map32=yes,
407 gdb_cv_have_struct_link_map32=no)])
408 AC_MSG_RESULT($gdb_cv_have_struct_link_map32)
409 if test $gdb_cv_have_struct_link_map32 = yes; then
410 AC_DEFINE(HAVE_STRUCT_LINK_MAP32)
414 dnl See if host has libm. This is usually needed by simulators.
415 AC_CHECK_LIB(m, main)
417 dnl Solaris puts wctype in /usr/lib/libw.a before Solaris 2.6.
419 dnl A bug in GNU ld 2.9.1 causes a problem if we link in -lw
420 dnl under Solaris 2.6 because it is some funky empty library.
421 dnl So only link in libw if we have to.
422 AC_CHECK_LIB(c, wctype,: ,AC_CHECK_LIB(w, wctype))
424 dnl See if compiler supports "long long" type.
426 AC_MSG_CHECKING(for long long support in compiler)
427 AC_CACHE_VAL(gdb_cv_c_long_long,
429 extern long long foo;
430 switch (foo & 2) { case 0: return 1; }
432 gdb_cv_c_long_long=yes, gdb_cv_c_long_long=no)])
433 AC_MSG_RESULT($gdb_cv_c_long_long)
434 if test $gdb_cv_c_long_long = yes; then
435 AC_DEFINE(CC_HAS_LONG_LONG)
438 dnl See if the compiler and runtime support printing long long
440 AC_MSG_CHECKING(for long long support in printf)
441 AC_CACHE_VAL(gdb_cv_printf_has_long_long,
446 l = (l << 16) + 0x0123;
447 l = (l << 16) + 0x4567;
448 l = (l << 16) + 0x89ab;
449 l = (l << 16) + 0xcdef;
450 sprintf (buf, "0x%016llx", l);
451 return (strcmp ("0x0123456789abcdef", buf));
453 gdb_cv_printf_has_long_long=yes,
454 gdb_cv_printf_has_long_long=no,
455 gdb_cv_printf_has_long_long=no)])
456 if test $gdb_cv_printf_has_long_long = yes; then
457 AC_DEFINE(PRINTF_HAS_LONG_LONG)
459 AC_MSG_RESULT($gdb_cv_printf_has_long_long)
461 dnl See if compiler supports "long double" type. Can't use AC_C_LONG_DOUBLE
462 dnl because autoconf complains about cross-compilation issues. However, this
463 dnl code uses the same variables as the macro for compatibility.
465 AC_MSG_CHECKING(for long double support in compiler)
466 AC_CACHE_VAL(ac_cv_c_long_double,
467 [AC_TRY_COMPILE(, [long double foo;],
468 ac_cv_c_long_double=yes, ac_cv_c_long_double=no)])
469 AC_MSG_RESULT($ac_cv_c_long_double)
470 if test $ac_cv_c_long_double = yes; then
471 AC_DEFINE(HAVE_LONG_DOUBLE)
474 dnl See if the compiler and runtime support printing long doubles
476 AC_MSG_CHECKING(for long double support in printf)
477 AC_CACHE_VAL(gdb_cv_printf_has_long_double,
481 long double f = 3.141592653;
482 sprintf (buf, "%Lg", f);
483 return (strncmp ("3.14159", buf, 7));
485 gdb_cv_printf_has_long_double=yes,
486 gdb_cv_printf_has_long_double=no,
487 gdb_cv_printf_has_long_double=no)])
488 if test $gdb_cv_printf_has_long_double = yes; then
489 AC_DEFINE(PRINTF_HAS_LONG_DOUBLE)
491 AC_MSG_RESULT($gdb_cv_printf_has_long_double)
493 dnl See if the compiler and runtime support scanning long doubles
495 AC_MSG_CHECKING(for long double support in scanf)
496 AC_CACHE_VAL(gdb_cv_scanf_has_long_double,
499 char *buf = "3.141592653";
501 sscanf (buf, "%Lg", &f);
502 return !(f > 3.14159 && f < 3.14160);
504 gdb_cv_scanf_has_long_double=yes,
505 gdb_cv_scanf_has_long_double=no,
506 gdb_cv_scanf_has_long_double=no)])
507 if test $gdb_cv_scanf_has_long_double = yes; then
508 AC_DEFINE(SCANF_HAS_LONG_DOUBLE)
510 AC_MSG_RESULT($gdb_cv_scanf_has_long_double)
516 AC_CACHE_CHECK([for -bbigtoc option], [gdb_cv_bigtoc], [
517 SAVE_LDFLAGS=$LDFLAGS
520 yes) gdb_cv_bigtoc=-Wl,-bbigtoc ;;
521 *) gdb_cv_bigtoc=-bbigtoc ;;
524 LDFLAGS=$LDFLAGS\ $gdb_cv_bigtoc
525 AC_TRY_LINK([], [int i;], [], [gdb_cv_bigtoc=])
527 CONFIG_LDFLAGS="${CONFIG_LDFLAGS} ${gdb_cv_bigtoc}"
531 dnl See if thread_db library is around for Solaris thread debugging. Note that
532 dnl we must explicitly test for version 1 of the library because version 0
533 dnl (present on Solaris 2.4 or earlier) doesn't have the same API.
535 dnl Note that we only want this if we are both native (host == target), and
536 dnl not doing a canadian cross build (build == host).
538 if test ${build} = ${host} -a ${host} = ${target} ; then
541 AC_MSG_CHECKING(for HPUX/OSF thread support)
542 if test -f /usr/include/dce/cma_config.h ; then
543 if test "$GCC" = "yes" ; then
545 AC_DEFINE(HAVE_HPUX_THREAD_SUPPORT)
546 CONFIG_LIB_OBS="${CONFIG_LIB_OBS} hpux-thread.o"
547 CONFIG_SRCS="${CONFIG_SRCS} hpux-thread.c"
549 AC_MSG_RESULT(no (suppressed because you are not using GCC))
556 AC_MSG_CHECKING(for Solaris thread debugging library)
557 if test -f /usr/lib/libthread_db.so.1 ; then
559 AC_DEFINE(HAVE_THREAD_DB_LIB)
560 CONFIG_LIB_OBS="${CONFIG_LIB_OBS} sol-thread.o"
561 CONFIG_SRCS="${CONFIG_SRCS} sol-thread.c"
562 AC_CHECK_LIB(dl, dlopen)
563 if test "$GCC" = "yes" ; then
564 # The GNU linker requires the -export-dynamic option to make
565 # all symbols visible in the dynamic symbol table.
566 hold_ldflags=$LDFLAGS
567 AC_MSG_CHECKING(for the ld -export-dynamic flag)
568 LDFLAGS="${LDFLAGS} -Wl,-export-dynamic"
569 AC_TRY_LINK(, [int i;], found=yes, found=no)
570 LDFLAGS=$hold_ldflags
571 AC_MSG_RESULT($found)
572 if test $found = yes; then
573 CONFIG_LDFLAGS="${CONFIG_LDFLAGS} -Wl,-export-dynamic"
576 # Sun randomly tweaked the prototypes in <proc_service.h>
578 AC_MSG_CHECKING(if <proc_service.h> is old)
579 AC_CACHE_VAL(gdb_cv_proc_service_is_old,[
581 #include <proc_service.h>
583 (struct ps_prochandle*, psaddr_t, const void*, size_t);
584 ],, gdb_cv_proc_service_is_old=no,
585 gdb_cv_proc_service_is_old=yes)
587 AC_MSG_RESULT($gdb_cv_proc_service_is_old)
588 if test $gdb_cv_proc_service_is_old = yes; then
589 AC_DEFINE(PROC_SERVICE_IS_OLD)
596 AC_SUBST(CONFIG_LDFLAGS)
599 dnl The CLI cannot be disabled yet, but may be in the future
601 dnl Handle CLI sub-directory configury.
602 AC_ARG_ENABLE(gdbcli,
603 [ --enable-gdbcli Enable GDB-CLI interface],
605 case "${enableval}" in
606 yes) enable_gdbcli=yes ;;
607 "") enable_gdbcli=yes ;;
609 AC_MSG_ERROR(The CLI cannot be disabled yet)
612 AC_MSG_ERROR(Bad value for --enable-gdbcli: ${enableval})
617 case ${enable_gdbcli} in
619 if test -d "${srcdir}/cli" ; then
620 CONFIG_OBS="${CONFIG_OBS} \$(SUBDIR_CLI_OBS)"
621 CONFIG_DEPS="${CONFIG_DEPS} \$(SUBDIR_CLI_DEPS)"
622 CONFIG_SRCS="${CONFIG_SRCS} \$(SUBDIR_CLI_SRCS)"
623 CONFIG_INITS="${CONFIG_INITS} \$(SUBDIR_CLI_INITS)"
624 ENABLE_CFLAGS="${ENABLE_CFLAGS} \$(SUBDIR_CLI_CFLAGS)"
625 CONFIG_ALL="${CONFIG_ALL} \$(SUBDIR_CLI_ALL)"
626 CONFIG_CLEAN="${CONFIG_CLEAN} \$(SUBDIR_CLI_CLEAN)"
627 CONFIG_INSTALL="${CONFIG_INSTALL} \$(SUBDIR_CLI_INSTALL)"
628 CONFIG_UNINSTALL="${CONFIG_UNINSTALL} \$(SUBDIR_CLI_UNINSTALL)"
633 dnl Handle optional features that can be enabled.
635 dnl Handle MI sub-directory configury.
637 [ --enable-gdbmi Enable GDB-MI interface],
639 case "${enable_gdbmi}" in
641 "") enable_gdbmi=yes ;;
643 AC_MSG_ERROR(Bad value for --enable-gdbmi: ${enableval})
648 case ${enable_gdbmi} in
650 if test -d "${srcdir}/mi" ; then
651 CONFIG_OBS="${CONFIG_OBS} \$(SUBDIR_MI_OBS)"
652 CONFIG_DEPS="${CONFIG_DEPS} \$(SUBDIR_MI_DEPS)"
653 CONFIG_SRCS="${CONFIG_SRCS} \$(SUBDIR_MI_SRCS)"
654 CONFIG_INITS="${CONFIG_INITS} \$(SUBDIR_MI_INITS)"
655 ENABLE_CFLAGS="${ENABLE_CFLAGS} \$(SUBDIR_MI_CFLAGS)"
656 CONFIG_ALL="${CONFIG_ALL} \$(SUBDIR_MI_ALL)"
657 CONFIG_CLEAN="${CONFIG_CLEAN} \$(SUBDIR_MI_CLEAN)"
658 CONFIG_INSTALL="${CONFIG_INSTALL} \$(SUBDIR_MI_INSTALL)"
659 CONFIG_UNINSTALL="${CONFIG_UNINSTALL} \$(SUBDIR_MI_UNINSTALL)"
664 # Configure UI_OUT by default (before 5.2 it can be disabled)
665 # It must be configured if gdbmi is configured
668 AC_SUBST(UIOUT_CFLAGS)
671 [ --with-uiout Use new uiout functions instead of *printf's],
672 [case "${withval}" in
673 yes) want_uiout=true ;;
674 no) if test $enable_gdbmi = yes; then
675 AC_MSG_ERROR(uiout is needed for MI and cannot be disabled)
679 *) AC_MSG_ERROR(bad value ${withval} for GDB with-uiout option) ;;
681 [want_uiout=true])dnl
683 if test $want_uiout = true; then
684 UIOUT_CFLAGS="-DUI_OUT=1"
688 [ --enable-tui Enable full-screen terminal user interface],
690 case "${enable_tui}" in
692 "") enable_tui=yes ;;
694 AC_MSG_ERROR(Bad value for --enable-tui: ${enableval})
698 case ${enable_tui} in
700 if test -d "${srcdir}/tui" ; then
701 CONFIG_OBS="${CONFIG_OBS} \$(SUBDIR_TUI_OBS)"
702 CONFIG_DEPS="${CONFIG_DEPS} \$(SUBDIR_TUI_DEPS)"
703 CONFIG_SRCS="${CONFIG_SRCS} \$(SUBDIR_TUI_SRCS)"
704 CONFIG_INITS="${CONFIG_INITS} \$(SUBDIR_TUI_INITS)"
705 ENABLE_CFLAGS="${ENABLE_CFLAGS} \$(SUBDIR_TUI_CFLAGS)"
706 CONFIG_ALL="${CONFIG_ALL} \$(SUBDIR_TUI_ALL)"
707 CONFIG_CLEAN="${CONFIG_CLEAN} \$(SUBDIR_TUI_CLEAN)"
708 CONFIG_INSTALL="${CONFIG_INSTALL} \$(SUBDIR_TUI_INSTALL)"
709 CONFIG_UNINSTALL="${CONFIG_UNINSTALL} \$(SUBDIR_TUI_UNINSTALL)"
714 AC_ARG_ENABLE(netrom,
715 [ --enable-netrom Enable NetROM support],
716 [case "${enableval}" in
717 yes) enable_netrom=yes ;;
718 no) enable_netrom=no ;;
719 *) AC_MSG_ERROR(bad value ${enableval} given for netrom option) ;;
722 if test "${enable_netrom}" = "yes"; then
723 CONFIG_LIB_OBS="${CONFIG_LIB_OBS} remote-nrom.o"
724 CONFIG_SRCS="${CONFIG_SRCS} remote-nrom.c"
728 # NOTE: Don't add -Wall or -Wunused, they both include
729 # -Wunused-parameter which reports bogus warnings.
730 # NOTE: If you add to this list, remember to update
731 # gdb/doc/gdbint.texinfo.
732 build_warnings="-Wimplicit -Wreturn-type -Wcomment -Wtrigraphs \
733 -Wformat -Wparentheses -Wpointer-arith -Wuninitialized"
734 # Up for debate: -Wswitch -Wcomment -trigraphs -Wtrigraphs
735 # -Wunused-function -Wunused-label -Wunused-variable -Wunused-value
736 # -Wchar-subscripts -Wtraditional -Wshadow -Wcast-qual
737 # -Wcast-align -Wwrite-strings -Wconversion -Wstrict-prototypes
738 # -Wmissing-prototypes -Wmissing-declarations -Wredundant-decls
739 # -Woverloaded-virtual -Winline -Werror"
740 AC_ARG_ENABLE(build-warnings,
741 [ --enable-build-warnings Enable build-time compiler warnings if gcc is used],
742 [case "${enableval}" in
744 no) build_warnings="-w";;
745 ,*) t=`echo "${enableval}" | sed -e "s/,/ /g"`
746 build_warnings="${build_warnings} ${t}";;
747 *,) t=`echo "${enableval}" | sed -e "s/,/ /g"`
748 build_warnings="${t} ${build_warnings}";;
749 *) build_warnings=`echo "${enableval}" | sed -e "s/,/ /g"`;;
751 if test x"$silent" != x"yes" && test x"$build_warnings" != x""; then
752 echo "Setting compiler warning flags = $build_warnings" 6>&1
754 AC_ARG_ENABLE(gdb-build-warnings,
755 [ --enable-gdb-build-warnings Enable GDB specific build-time compiler warnings if gcc is used],
756 [case "${enableval}" in
758 no) build_warnings="-w";;
759 ,*) t=`echo "${enableval}" | sed -e "s/,/ /g"`
760 build_warnings="${build_warnings} ${t}";;
761 *,) t=`echo "${enableval}" | sed -e "s/,/ /g"`
762 build_warnings="${t} ${build_warnings}";;
763 *) build_warnings=`echo "${enableval}" | sed -e "s/,/ /g"`;;
765 if test x"$silent" != x"yes" && test x"$build_warnings" != x""; then
766 echo "Setting GDB specific compiler warning flags = $build_warnings" 6>&1
770 if test "x${build_warnings}" != x -a "x$GCC" = xyes
772 AC_MSG_CHECKING(compiler warning flags)
773 # Separate out the -Werror flag as some files just cannot be
774 # compiled with it enabled.
775 for w in ${build_warnings}; do
777 -Werr*) WERROR_CFLAGS=-Werror ;;
778 *) # Check that GCC accepts it
779 saved_CFLAGS="$CFLAGS"
781 AC_TRY_COMPILE([],[],WARN_CFLAGS="${WARN_CFLAGS} $w",)
782 CFLAGS="$saved_CFLAGS"
785 AC_MSG_RESULT(${WARN_CFLAGS}${WERROR_CFLAGS})
787 AC_SUBST(WARN_CFLAGS)
788 AC_SUBST(WERROR_CFLAGS)
792 AC_SUBST(MMALLOC_CFLAGS)
796 [ --with-mmalloc Use memory mapped malloc package],
797 [case "${withval}" in
798 yes) want_mmalloc=true ;;
799 no) want_mmalloc=false;;
800 *) AC_MSG_ERROR(bad value ${withval} for GDB with-mmalloc option) ;;
801 esac],[want_mmalloc=false])dnl
803 if test x$want_mmalloc = xtrue; then
804 AC_DEFINE(USE_MMALLOC)
805 AC_DEFINE(MMCHECK_FORCE)
806 MMALLOC_CFLAGS="-I$srcdir/../mmalloc"
807 MMALLOC='../mmalloc/libmmalloc.a'
810 AC_ARG_WITH(included-regex,
811 [ --with-included-regex Use included regex],
812 [case "${withval}" in
813 yes) want_included_regex=true ;;
814 no) want_included_regex=false;;
815 *) AC_MSG_ERROR(bad value ${withval} for GDB with-included-regex option) ;;
816 esac],[want_included_regex=true])dnl
818 if test $want_included_regex = false; then
819 AC_MSG_CHECKING(for GNU regex)
820 AC_CACHE_VAL(gdb_cv_have_gnu_regex,
821 [AC_TRY_COMPILE([#include <gnu-versions.h>
822 #include <sys/types.h>
824 [#if !defined _GNU_REGEX_INTERFACE_VERSION || !defined __GLIBC__ || __GLIBC__ < 2
825 #error No valid GNU regex.
828 [gdb_cv_have_gnu_regex=yes],
829 [gdb_cv_have_gnu_regex=no])])
830 AC_MSG_RESULT($gdb_cv_have_gnu_regex)
831 if test $gdb_cv_have_gnu_regex = no; then
832 want_included_regex=true
836 if test x${want_included_regex} = xtrue; then
838 AC_DEFINE(USE_INCLUDED_REGEX)
842 # In the Cygwin environment, we need some additional flags.
843 AC_CACHE_CHECK([for cygwin], gdb_cv_os_cygwin,
844 [AC_EGREP_CPP(lose, [
845 #if defined (__CYGWIN__) || defined (__CYGWIN32__)
847 #endif],[gdb_cv_os_cygwin=yes],[gdb_cv_os_cygwin=no])])
850 dnl Figure out which of the many generic ser-*.c files the _host_ supports.
851 SER_HARDWIRE="ser-unix.o ser-pipe.o ser-tcp.o"
853 *go32* ) SER_HARDWIRE=ser-go32.o ;;
854 *djgpp* ) SER_HARDWIRE=ser-go32.o ;;
856 AC_SUBST(SER_HARDWIRE)
859 dnl Figure out which term library to use.
860 if test x$gdb_host = xgo32; then
863 if test x$gdb_cv_os_cygwin = xyes; then
864 TERM_LIB='`if test -r ../libtermcap/libtermcap.a; then echo ../libtermcap/libtermcap.a; else echo -ltermcap; fi`'
867 AC_CHECK_LIB(ncurses, tgetent, TERM_LIB=-lncurses,
868 AC_CHECK_LIB(Hcurses, tgetent, TERM_LIB=-lHcurses,
869 AC_CHECK_LIB(termlib, tgetent, TERM_LIB=-ltermlib,
870 AC_CHECK_LIB(termcap, tgetent, TERM_LIB=-ltermcap,
871 AC_CHECK_LIB(curses, tgetent, TERM_LIB=-lcurses,
872 AC_CHECK_LIB(terminfo, tgetent, TERM_LIB=-lterminfo))))))
874 if test "x$TERM_LIB" = x
876 AC_MSG_ERROR(Could not find a term library, e.g. termcap or termlib!)
882 # libreadline needs libuser32.a in a cygwin environment
884 if test x$gdb_cv_os_cygwin = xyes; then
887 *cygwin*) WIN32LIBS="$WIN32LIBS -limagehlp"
893 LIBGUI="../libgui/src/libgui.a"
894 GUI_CFLAGS_X="-I${srcdir}/../libgui/src"
896 AC_SUBST(GUI_CFLAGS_X)
899 [ --with-cpu=CPU Set the default CPU variant to debug],
901 powerpc-* | powerpcle-* )
902 ## It would be nice to keep this table in sync with the one in
904 case "${with_cpu}" in
905 ppc-uisa | rs6000 | 403 | 403GC | 505 | 860 | 601 | 602 | 603 \
907 ## Those are all handled in variants in rs6000-tdep.c, so they're fine.
909 common | power | power2 | rios | rios1 | rios2 | rsc | rsc1 )
910 ## These are all RS6000 variants, as far as GDB is concerned.
920 AC_MSG_WARN(GDB: unknown --with-cpu value: \`${with_cpu}'; using \`ppc-uisa'.)
926 AC_MSG_WARN(GDB may ignore the --with-cpu flag for ${target} targets)
929 AC_DEFINE_UNQUOTED(TARGET_CPU_DEFAULT, "${with_cpu}")
934 [ --enable-gdbtk Enable GDBTK GUI front end],
935 [case "${enableval}" in
939 AC_MSG_WARN([GDB does not support GDBtk on host ${host}. GDBtk will be disabled.])
942 AC_MSG_WARN([GDB does not support GDBtk on host ${host}. GDBtk will be disabled.])
950 AC_MSG_ERROR(bad value ${enableval} given for gdbtk option) ;;
953 # Default is on for everything but go32 and Cygwin
958 if test -d "${srcdir}/gdbtk" ; then
972 if test "${enable_gdbtk}" = "yes"; then
974 # Gdbtk must have an absolute path to srcdir in order to run
975 # properly when not installed.
982 if test -z "${no_tcl}"; then
986 # now look for Tcl library stuff
997 TCL_DEPS="${tcldir}${TCL_LIB_FILE}"
999 # If $no_tk is nonempty, then we can't do Tk, and there is no
1000 # point to doing Tcl.
1001 if test -z "${no_tk}"; then
1010 # now look for Tk library stuff
1021 TK_DEPS="${tkdir}${TK_LIB_FILE}"
1023 # now look for Itcl library stuff
1025 CY_AC_PATH_ITCLCONFIG
1026 if test -z "${no_itcl}"; then
1027 CY_AC_LOAD_ITCLCONFIG
1029 ITCLLIB="${ITCL_BUILD_LIB_SPEC}"
1030 ITCL_DEPS="${ITCL_LIB_FULL_PATH}"
1034 # now look for Itk library stuff
1035 CY_AC_PATH_ITKCONFIG
1036 if test -z "${no_itcl}"; then
1037 CY_AC_LOAD_ITKCONFIG
1039 ITKLIB="${ITK_BUILD_LIB_SPEC}"
1040 ITK_DEPS="${ITK_LIB_FULL_PATH}"
1043 # now look for Tix library stuff
1044 CY_AC_PATH_TIXCONFIG
1045 if test -z "${no_tix}"; then
1046 CY_AC_LOAD_TIXCONFIG
1047 TIXLIB="${TIX_BUILD_LIB_SPEC}"
1048 TIX_DEPS="${TIX_BUILD_LOCATION}/${TIX_LIB_FILE}"
1051 ENABLE_CFLAGS="${ENABLE_CFLAGS} \$(SUBDIR_GDBTK_CFLAGS)"
1052 # Tcl/Tk 8.1 require -fwritable strings. I don't
1053 # know whether 8.2 will or not, but I bet it will.
1054 # I don't have to worry about 7.x since we don't support it.
1056 if test "$GCC" = "yes"; then
1057 if test "$TCL_VERSION" != "8.0" ; then
1058 GDBTK_CFLAGS="-fwritable-strings"
1062 # Include some libraries that Tcl and Tk want.
1063 TCL_LIBS='$(LIBGUI) $(ITCL) $(ITK) $(TIX) $(TK) $(TCL) $(X11_LDFLAGS) $(X11_LIBS)'
1064 # Yes, the ordering seems wrong here. But it isn't.
1065 # TK_LIBS is the list of libraries that need to be linked
1066 # after Tcl/Tk. Note that this isn't put into LIBS. If it
1067 # were in LIBS then any link tests after this point would
1068 # try to include things like `$(LIBGUI)', which wouldn't work.
1069 GDBTKLIBS="${TCL_LIBS} ${TK_LIBS}"
1071 CONFIG_OBS="${CONFIG_OBS} \$(SUBDIR_GDBTK_OBS)"
1072 CONFIG_DEPS="${CONFIG_DEPS} \$(SUBDIR_GDBTK_DEPS)"
1073 CONFIG_SRCS="${CONFIG_SRCS} \$(SUBDIR_GDBTK_SRCS)"
1074 CONFIG_INITS="${CONFIG_INITS} \$(SUBDIR_GDBTK_INITS)"
1075 CONFIG_ALL="${CONFIG_ALL} \$(SUBDIR_GDBTK_ALL)"
1076 CONFIG_CLEAN="${CONFIG_CLEAN} \$(SUBDIR_GDBTK_CLEAN)"
1077 CONFIG_INSTALL="${CONFIG_INSTALL} \$(SUBDIR_GDBTK_INSTALL)"
1078 CONFIG_UNINSTALL="${CONFIG_UNINSTALL} \$(SUBDIR_GDBTK_UNINSTALL)"
1080 if test x$gdb_cv_os_cygwin = xyes; then
1081 WIN32LIBS="${WIN32LIBS} -lshell32 -lgdi32 -lcomdlg32 -ladvapi32"
1082 WIN32LDAPP="-Wl,--subsystem,console"
1083 CONFIG_OBS="${CONFIG_OBS} gdbres.o"
1101 AC_SUBST(GDBTK_CFLAGS)
1102 AC_SUBST(GDBTK_SRC_DIR)
1107 # Unlike the sim directory, whether a simulator is linked is controlled by
1108 # presence of a SIM= and a SIM_OBS= definition in the target '.mt' file.
1109 # This code just checks for a few cases where we'd like to ignore those
1110 # definitions, even when they're present in the '.mt' file. These cases
1111 # are when --disable-sim is specified, or if the simulator directory is
1112 # not part of the source tree.
1115 [ --enable-sim Link gdb with simulator],
1116 [echo "enable_sim = $enable_sim";
1117 echo "enableval = ${enableval}";
1118 case "${enableval}" in
1119 yes) ignore_sim=false ;;
1120 no) ignore_sim=true ;;
1121 *) ignore_sim=false ;;
1125 if test ! -d "${srcdir}/../sim"; then
1129 if test "${ignore_sim}" = "true"; then
1131 IGNORE_SIM_OBS="SIM_OBS="
1137 AC_SUBST(IGNORE_SIM)
1138 AC_SUBST(IGNORE_SIM_OBS)
1140 AC_SUBST(ENABLE_CFLAGS)
1142 AC_SUBST(CONFIG_OBS)
1143 AC_SUBST(CONFIG_LIB_OBS)
1144 AC_SUBST(CONFIG_DEPS)
1145 AC_SUBST(CONFIG_SRCS)
1146 AC_SUBST(CONFIG_INITS)
1147 AC_SUBST(CONFIG_ALL)
1148 AC_SUBST(CONFIG_CLEAN)
1149 AC_SUBST(CONFIG_INSTALL)
1150 AC_SUBST(CONFIG_UNINSTALL)
1152 # Begin stuff to support --enable-shared
1153 AC_ARG_ENABLE(shared,
1154 [ --enable-shared Use shared libraries],
1155 [case "${enableval}" in
1163 # If we have shared libraries, try to set rpath reasonably.
1164 if test "${shared}" = "true"; then
1167 HLDFLAGS='-Wl,+s,+b,$(libdir)'
1169 *-*-irix5* | *-*-irix6*)
1170 HLDFLAGS='-Wl,-rpath,$(libdir)'
1174 *-*-linux* | *-pc-linux-gnu*)
1175 HLDFLAGS='-Wl,-rpath,$(libdir)'
1178 HLDFLAGS='-R $(libdir)'
1181 HLDENV='if test -z "$${LD_RUN_PATH}"; then LD_RUN_PATH=$(libdir); else LD_RUN_PATH=$${LD_RUN_PATH}:$(libdir); fi; export LD_RUN_PATH;'
1186 # On SunOS, if the linker supports the -rpath option, use it to
1187 # prevent ../bfd and ../opcodes from being included in the run time
1191 echo 'main () { }' > conftest.c
1192 ${CC} -o conftest -Wl,-rpath= conftest.c >/dev/null 2>conftest.t
1193 if grep 'unrecognized' conftest.t >/dev/null 2>&1; then
1195 elif grep 'No such file' conftest.t >/dev/null 2>&1; then
1197 elif grep 'do not mix' conftest.t >/dev/null 2>&1; then
1199 elif grep 'some text already loaded' conftest.t >/dev/null 2>&1; then
1201 elif test "${shared}" = "true"; then
1202 HLDFLAGS='-Wl,-rpath=$(libdir)'
1204 HLDFLAGS='-Wl,-rpath='
1206 rm -f conftest.t conftest.c conftest
1211 # End stuff to support --enable-shared
1213 # target_subdir is used by the testsuite to find the target libraries.
1215 if test "${host}" != "${target}"; then
1216 target_subdir="${target_alias}/"
1218 AC_SUBST(target_subdir)
1221 host_makefile_frag=${srcdir}/config/${gdb_host_cpu}/${gdb_host}.mh
1222 if test ! -f ${host_makefile_frag}; then
1223 # When building a native debuger the .mh file containing things
1224 # like NATDEPFILES is needed. Cross debuggers don't need .mh
1225 # since it no longer contains anything useful.
1226 if test "${target}" = "${host}"; then
1227 AC_MSG_ERROR("*** Gdb does not support native target ${host}")
1229 host_makefile_frag=/dev/null
1232 frags="$frags $host_makefile_frag"
1234 target_makefile_frag=${srcdir}/config/${gdb_target_cpu}/${gdb_target}.mt
1235 if test ! -f ${target_makefile_frag}; then
1236 AC_MSG_ERROR("*** Gdb does not support target ${target}")
1238 frags="$frags $target_makefile_frag"
1240 AC_SUBST_FILE(host_makefile_frag)
1241 AC_SUBST_FILE(target_makefile_frag)
1246 s/XM_FILE[ ]*=[ ]*\([^ ]*\)/\1/p
1247 ' ${host_makefile_frag}`
1249 targetfile=`sed -n '
1250 s/TM_FILE[ ]*=[ ]*\([^ ]*\)/\1/p
1251 ' ${target_makefile_frag}`
1253 GDB_MULTI_ARCH=`sed -n '
1254 s/GDB_MULTI_ARCH[ ]*=[ ]*\([^ ]*\)[ ]*/\1/p
1255 ' ${target_makefile_frag}`
1257 if test "${target}" = "${host}"; then
1258 # We pick this up from the host configuration file (.mh) because we
1259 # do not have a native configuration Makefile fragment.
1260 nativefile=`sed -n '
1261 s/NAT_FILE[ ]*=[ ]*\([^ ]*\)/\1/p
1262 ' ${host_makefile_frag}`
1266 # New targets should just set gdb_multi_arch=yes in configure.tgt.
1267 # Old targets being converted can either do that or set GDB_MULTI_ARCH
1268 # in the target specific makefile frag. Eventually gdb_multi_arch=yes
1269 # will be the default.
1270 if test x"${GDB_MULTI_ARCH}" = x ; then
1271 case "${gdb_multi_arch}" in
1272 yes ) GDB_MULTI_ARCH=GDB_MULTI_ARCH_PURE ;;
1273 no ) GDB_MULTI_ARCH=0 ;;
1274 0|1|2 ) GDB_MULTI_ARCH=${gdb_multi_arch} ;;
1277 if test x"${GDB_MULTI_ARCH}" != x ; then
1278 AC_DEFINE_UNQUOTED(GDB_MULTI_ARCH, ${GDB_MULTI_ARCH})
1280 # Warn the user when they use an old practice
1281 case "${GDB_MULTI_ARCH}" in
1283 0 | GDB_MULTI_ARCH_PARTIAL | 1 | GDB_MULTI_ARCH_TM | 2 )
1284 AC_MSG_WARN("GDB: Target is not pure multi-arch") ;;
1285 GDB_MULTI_ARCH_PURE )
1286 if test x"${targetfile}" != x ; then
1287 AC_MSG_WARN("GDB: Ignoring TM_FILE in ${target_makefile_frag}")
1290 *) AC_MSG_ERROR("GDB: Unknown GDB_MULTI_ARCH value ${GDB_MULTI_ARCH}");;
1293 SUBDIRS="doc testsuite nlm"
1294 if test "${enable_multi_ice}" = "yes"; then
1295 SUBDIRS="${SUBDIRS} multi-ice"
1298 # ``gdbserver'' can only be built in a native configuration.
1299 if test x"${target}" = x"${host}"; then
1300 AC_MSG_CHECKING(whether gdbserver is supported on this host)
1301 if test x"${build_gdbserver}" = xyes ; then
1302 configdirs="${configdirs} gdbserver"
1303 SUBDIRS="${SUBDIRS} gdbserver"
1312 # If hostfile (XM_FILE) and/or targetfile (TM_FILE) and/or nativefile
1313 # (NAT_FILE) is not set in config/*/*.m[ht] files, we link to an empty
1321 if test "${hostfile}" != ""; then
1323 GDB_XM_FILE="config/${gdb_host_cpu}/${hostfile}"
1324 files="${files} ${GDB_XM_FILE}"
1325 links="${links} xm.h"
1326 AC_DEFINE_UNQUOTED(GDB_XM_FILE, ${GDB_XM_FILE})
1332 if test "${targetfile}" != ""; then
1334 GDB_TM_FILE="config/${gdb_target_cpu}/${targetfile}"
1335 files="${files} ${GDB_TM_FILE}"
1336 links="${links} tm.h"
1337 AC_DEFINE_UNQUOTED(GDB_TM_FILE, ${GDB_TM_FILE})
1343 if test "${nativefile}" != ""; then
1345 GDB_NM_FILE="config/${gdb_host_cpu}/${nativefile}"
1346 files="${files} ${GDB_NM_FILE}"
1347 links="${links} nm.h"
1348 AC_DEFINE_UNQUOTED(GDB_NM_FILE, ${GDB_NM_FILE})
1354 AC_LINK_FILES($files, $links)
1356 dnl Check for exe extension set on certain hosts (e.g. Win32)
1359 AC_CONFIG_SUBDIRS($configdirs)
1360 AC_OUTPUT(Makefile .gdbinit:gdbinit.in,
1362 dnl Autoconf doesn't provide a mechanism for modifying definitions
1363 dnl provided by makefile fragments.
1365 if test "${nativefile}" = ""; then
1367 sed -e '/^NATDEPFILES[[ ]]*=[[ ]]*/s//# NATDEPFILES=/' \
1368 | sed -e '/^\(NATDEPFILES[[ ]]*[[+]]=[[ ]]*\)/s//# \1/' \
1370 mv -f Makefile.tem Makefile
1374 sed -e '/^TM_FILE[ ]*=/s,^TM_FILE[ ]*=[ ]*,&config/'"${gdb_target_cpu}"'/,
1375 /^XM_FILE[ ]*=/s,^XM_FILE[ ]*=[ ]*,&config/'"${gdb_host_cpu}"'/,
1376 /^NAT_FILE[ ]*=/s,^NAT_FILE[ ]*=[ ]*,&config/'"${gdb_host_cpu}"'/,' <Makefile >Makefile.tmp
1377 mv -f Makefile.tmp Makefile
1381 case x$CONFIG_HEADERS in
1382 xconfig.h:config.in)
1387 gdb_host_cpu=$gdb_host_cpu
1388 gdb_target_cpu=$gdb_target_cpu
1389 nativefile=$nativefile