* configure.ac (DEBUGDIR_RELOCATABLE): Define for debugdir inside
[deliverable/binutils-gdb.git] / gdb / configure.ac
1 dnl Autoconf configure script for GDB, the GNU debugger.
2 dnl Copyright (C) 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
3 dnl 2005, 2006
4 dnl Free Software Foundation, Inc.
5 dnl
6 dnl This file is part of GDB.
7 dnl
8 dnl This program is free software; you can redistribute it and/or modify
9 dnl it under the terms of the GNU General Public License as published by
10 dnl the Free Software Foundation; either version 2 of the License, or
11 dnl (at your option) any later version.
12 dnl
13 dnl This program is distributed in the hope that it will be useful,
14 dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
15 dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 dnl GNU General Public License for more details.
17 dnl
18 dnl You should have received a copy of the GNU General Public License
19 dnl along with this program; if not, write to the Free Software
20 dnl Foundation, Inc., 51 Franklin Street, Fifth Floor,
21 dnl Boston, MA 02110-1301, USA.
22
23 dnl Process this file with autoconf to produce a configure script.
24
25 AC_PREREQ(2.59)dnl
26 AC_INIT(main.c)
27 AC_CONFIG_HEADER(config.h:config.in)
28 AM_MAINTAINER_MODE
29
30 AC_PROG_CC
31 AC_GNU_SOURCE
32 AC_AIX
33 AC_ISC_POSIX
34 AM_PROG_CC_STDC
35
36 AC_CONFIG_AUX_DIR(`cd $srcdir;pwd`/..)
37 AC_CANONICAL_SYSTEM
38
39 dnl List of object files and targets accumulated by configure.
40
41 CONFIG_OBS=
42 CONFIG_DEPS=
43 CONFIG_SRCS=
44 ENABLE_CFLAGS=
45
46 CONFIG_ALL=
47 CONFIG_CLEAN=
48 CONFIG_INSTALL=
49 CONFIG_UNINSTALL=
50
51 dnl Set up for gettext.
52 ZW_GNU_GETTEXT_SISTER_DIR
53
54 localedir='${datadir}/locale'
55 AC_SUBST(localedir)
56
57 if test x"$USE_NLS" = xyes; then
58 CONFIG_ALL="$CONFIG_ALL all-po"
59 CONFIG_CLEAN="$CONFIG_CLEAN clean-po"
60 CONFIG_INSTALL="$CONFIG_INSTALL install-po"
61 CONFIG_UNINSTALL="$CONFIG_UNINSTALL uninstall-po"
62 fi
63
64 PACKAGE=gdb
65 AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Name of this package. ])
66 AC_SUBST(PACKAGE)
67
68 debugdir=${libdir}/debug
69
70 AC_ARG_WITH(separate-debug-dir,
71 [ --with-separate-debug-dir=path Look for global separate debug info in this path [LIBDIR/debug]],
72 [debugdir="${withval}"])
73
74 AC_DEFINE_DIR(DEBUGDIR, debugdir,
75 [Global directory for separate debug files. ])
76 #AC_DEFINE_UNQUOTED(DEBUGDIR, "$debugdir"),
77
78 if test "x$exec_prefix" = xNONE || test "x$exec_prefix" = 'x${prefix}'; then
79 if test "x$prefix" = xNONE; then
80 test_prefix=/usr/local
81 else
82 test_prefix=$prefix
83 fi
84 else
85 test_prefix=$exec_prefix
86 fi
87 case ${debugdir} in
88 "${test_prefix}"|"${test_prefix}/"*|\
89 '${exec_prefix}'|'${exec_prefix}/'*)
90 AC_DEFINE(DEBUGDIR_RELOCATABLE, 1, [Define if the debug directory should be relocated when GDB is moved.])
91 ;;
92 esac
93
94 AC_CONFIG_SUBDIRS(doc testsuite)
95
96 # Provide defaults for some variables set by the per-host and per-target
97 # configuration.
98 gdb_host_obs=posix-hdep.o
99
100 if test "${target}" = "${host}"; then
101 gdb_native=yes
102 else
103 gdb_native=no
104 fi
105
106 . $srcdir/configure.host
107
108 . $srcdir/configure.tgt
109
110 # Fetch the default architecture and default target vector from BFD.
111 targ=$target; . $srcdir/../bfd/config.bfd
112
113 # We only want the first architecture, so strip off the others if
114 # there is more than one.
115 targ_archs=`echo $targ_archs | sed 's/ .*//'`
116
117 if test "x$targ_archs" != x; then
118 AC_DEFINE_UNQUOTED(DEFAULT_BFD_ARCH, $targ_archs,
119 [Define to BFD's default architecture. ])
120 fi
121 if test "x$targ_defvec" != x; then
122 AC_DEFINE_UNQUOTED(DEFAULT_BFD_VEC, $targ_defvec,
123 [Define to BFD's default target vector. ])
124 fi
125
126 AC_ARG_PROGRAM
127
128 # The CLI cannot be disabled yet, but may be in the future.
129
130 # Enable CLI.
131 AC_ARG_ENABLE(gdbcli,
132 [ --disable-gdbcli disable command-line interface (CLI)],
133 [case $enableval in
134 yes)
135 ;;
136 no)
137 AC_MSG_ERROR([the command-line interface cannot be disabled yet]) ;;
138 *)
139 AC_MSG_ERROR([bad value $enableval for --enable-gdbcli]) ;;
140 esac],
141 [enable_gdbcli=yes])
142 if test x"$enable_gdbcli" = xyes; then
143 if test -d $srcdir/cli; then
144 CONFIG_OBS="$CONFIG_OBS \$(SUBDIR_CLI_OBS)"
145 CONFIG_DEPS="$CONFIG_DEPS \$(SUBDIR_CLI_DEPS)"
146 CONFIG_SRCS="$CONFIG_SRCS \$(SUBDIR_CLI_SRCS)"
147 ENABLE_CFLAGS="$ENABLE_CFLAGS \$(SUBDIR_CLI_CFLAGS)"
148 fi
149 fi
150
151 # Enable MI.
152 AC_ARG_ENABLE(gdbmi,
153 [ --disable-gdbmi disable machine-interface (MI)],
154 [case $enableval in
155 yes | no)
156 ;;
157 *)
158 AC_MSG_ERROR([bad value $enableval for --enable-gdbmi]) ;;
159 esac],
160 [enable_gdbmi=yes])
161 if test x"$enable_gdbmi" = xyes; then
162 if test -d $srcdir/mi; then
163 CONFIG_OBS="$CONFIG_OBS \$(SUBDIR_MI_OBS)"
164 CONFIG_DEPS="$CONFIG_DEPS \$(SUBDIR_MI_DEPS)"
165 CONFIG_SRCS="$CONFIG_SRCS \$(SUBDIR_MI_SRCS)"
166 ENABLE_CFLAGS="$ENABLE_CFLAGS \$(SUBDIR_MI_CFLAGS)"
167 fi
168 fi
169
170 # Enable TUI.
171 AC_ARG_ENABLE(tui,
172 [ --enable-tui enable full-screen terminal user interface (TUI)],
173 [case $enableval in
174 yes | no)
175 ;;
176 *)
177 AC_MSG_ERROR([bad value $enableval for --enable-tui]) ;;
178 esac],enable_tui=yes)
179
180 # Enable gdbtk.
181 AC_ARG_ENABLE(gdbtk,
182 [ --enable-gdbtk enable gdbtk graphical user interface (GUI)],
183 [case $enableval in
184 yes | no)
185 ;;
186 *)
187 AC_MSG_ERROR([bad value $enableval for --enable-gdbtk]) ;;
188 esac],
189 [if test -d $srcdir/gdbtk -a -d $srcdir/../itcl; then
190 enable_gdbtk=yes
191 else
192 enable_gdbtk=no
193 fi])
194 # We unconditionally disable gdbtk tests on selected platforms.
195 case $host_os in
196 go32* | windows*)
197 AC_MSG_WARN([gdbtk isn't supported on $host; disabling])
198 enable_gdbtk=no ;;
199 esac
200
201 # Libunwind support.
202 AC_ARG_WITH(libunwind,
203 [ --with-libunwind Use libunwind frame unwinding support],
204 [case "${withval}" in
205 yes) enable_libunwind=yes ;;
206 no) enable_libunwind=no ;;
207 *) AC_MSG_ERROR(bad value ${withval} for GDB with-libunwind option) ;;
208 esac],[
209 AC_CHECK_HEADERS(libunwind.h)
210 AC_CHECK_HEADERS(libunwind-ia64.h)
211 if test x"$ac_cv_header_libunwind_h" = xyes -a x"$ac_cv_header_libunwind_ia64_h" = xyes; then
212 enable_libunwind=yes;
213 fi
214 ])
215
216 if test x"$enable_libunwind" = xyes; then
217 AC_CHECK_HEADERS(libunwind.h)
218 AC_CHECK_HEADERS(libunwind-ia64.h)
219 AC_DEFINE(HAVE_LIBUNWIND, 1, [Define if libunwind library is being used.])
220 CONFIG_OBS="$CONFIG_OBS libunwind-frame.o"
221 CONFIG_DEPS="$CONFIG_DEPS libunwind-frame.o"
222 CONFIG_SRCS="$CONFIG_SRCS libunwind-frame.c"
223 fi
224
225 # Profiling support.
226 AC_ARG_ENABLE(profiling,
227 [ --enable-profiling enable profiling of GDB],
228 [case $enableval in
229 yes | no)
230 ;;
231 *)
232 AC_MSG_ERROR([bad value $enableval for --enable-profile]) ;;
233 esac],
234 [enable_profiling=no])
235
236 AC_CHECK_FUNCS(monstartup _mcleanup)
237 AC_CACHE_CHECK([for _etext], ac_cv_var__etext,
238 [AC_TRY_LINK(
239 [#include <stdlib.h>
240 extern char _etext;
241 ],
242 [free (&_etext);], ac_cv_var__etext=yes, ac_cv_var__etext=no)])
243 if test $ac_cv_var__etext = yes; then
244 AC_DEFINE(HAVE__ETEXT, 1,
245 [Define to 1 if your system has the _etext variable. ])
246 fi
247 if test "$enable_profiling" = yes ; then
248 if test $ac_cv_func_monstartup = no || test $ac_cv_func__mcleanup = no; then
249 AC_MSG_ERROR(--enable-profiling requires monstartup and _mcleanup)
250 fi
251 PROFILE_CFLAGS=-pg
252 OLD_CFLAGS="$CFLAGS"
253 CFLAGS="$CFLAGS $PROFILE_CFLAGS"
254
255 AC_CACHE_CHECK([whether $CC supports -pg], ac_cv_cc_supports_pg,
256 [AC_TRY_COMPILE([], [int x;], ac_cv_cc_supports_pg=yes,
257 ac_cv_cc_supports_pg=no)])
258
259 if test $ac_cv_cc_supports_pg = no; then
260 AC_MSG_ERROR(--enable-profiling requires a compiler which supports -pg)
261 fi
262
263 CFLAGS="$OLD_CFLAGS"
264 fi
265
266 # --------------------- #
267 # Checks for programs. #
268 # --------------------- #
269
270 AC_PROG_AWK
271 AC_PROG_INSTALL
272 AC_PROG_LN_S
273 AC_PROG_RANLIB
274 AC_PROG_YACC
275
276 AC_CHECK_TOOL(AR, ar)
277 AC_CHECK_TOOL(DLLTOOL, dlltool)
278 AC_CHECK_TOOL(WINDRES, windres)
279
280 # Needed for GNU/Hurd.
281 AC_CHECK_TOOL(MIG, mig)
282
283 # ---------------------- #
284 # Checks for libraries. #
285 # ---------------------- #
286
287 # We might need to link with -lm; most simulators need it.
288 AC_CHECK_LIB(m, main)
289
290 # We need to link with -lw to get `wctype' on Solaris before Solaris
291 # 2.6. Solaris 2.6 and beyond have this function in libc, and have a
292 # libw that some versions of the GNU linker cannot hanle (GNU ld 2.9.1
293 # is known to have this problem). Therefore we avoid libw if we can.
294 AC_CHECK_FUNC(wctype, [],
295 [AC_CHECK_LIB(w, wctype)])
296
297 # Some systems (e.g. Solaris) have `gethostbyname' in libnsl.
298 AC_SEARCH_LIBS(gethostbyname, nsl)
299
300 # Some systems (e.g. Solaris) have `socketpair' in libsocket.
301 AC_SEARCH_LIBS(socketpair, socket)
302
303 # For the TUI, we need enhanced curses functionality.
304 #
305 # FIXME: kettenis/20040905: We prefer ncurses over the vendor-supplied
306 # curses library because the latter might not provide all the
307 # functionality we need. However, this leads to problems on systems
308 # where the linker searches /usr/local/lib, but the compiler doesn't
309 # search /usr/local/include, if ncurses is installed in /usr/local. A
310 # default installation of ncurses on alpha*-dec-osf* will lead to such
311 # a situation.
312 AC_SEARCH_LIBS(waddstr, [ncurses cursesX curses])
313
314 # Since GDB uses Readline, we need termcap functionality. In many
315 # cases this will be provided by the curses library, but some systems
316 # have a seperate termcap library, or no curses library at all.
317
318 case $host_os in
319 cygwin*)
320 if test -d $srcdir/libtermcap; then
321 LIBS="../libtermcap/libtermcap.a $LIBS"
322 ac_cv_search_tgetent="../libtermcap/libtermcap.a"
323 fi ;;
324 go32* | *djgpp*)
325 ac_cv_search_tgetent="none required"
326 ;;
327 *mingw32*)
328 ac_cv_search_tgetent="none required"
329 CONFIG_OBS="$CONFIG_OBS win32-termcap.o"
330 ;;
331 esac
332
333 # These are the libraries checked by Readline.
334 AC_SEARCH_LIBS(tgetent, [termcap tinfo curses ncurses])
335
336 if test "$ac_cv_search_tgetent" = no; then
337 AC_MSG_ERROR([no termcap library found])
338 fi
339
340 AC_LIB_HAVE_LINKFLAGS([expat], [], [#include "expat.h"],
341 [XML_Parser p = XML_ParserCreate (0);])
342 if test "$HAVE_LIBEXPAT" != yes; then
343 AC_MSG_WARN([expat is missing or unusable; some features may be disabled.])
344 else
345 save_LIBS=$LIBS
346 LIBS="$LIBS $LIBEXPAT"
347 AC_CHECK_FUNCS(XML_StopParser)
348 LIBS=$save_LIBS
349 fi
350
351 # ------------------------- #
352 # Checks for header files. #
353 # ------------------------- #
354
355 AC_HEADER_DIRENT
356 AC_HEADER_STAT
357 AC_HEADER_STDC
358 AC_CHECK_HEADERS(nlist.h)
359 AC_CHECK_HEADERS(link.h, [], [],
360 [#if HAVE_SYS_TYPES_H
361 # include <sys/types.h>
362 #endif
363 #if HAVE_NLIST_H
364 # include <nlist.h>
365 #endif
366 ])
367 AC_CHECK_HEADERS(machine/reg.h)
368 AC_CHECK_HEADERS(poll.h sys/poll.h)
369 AC_CHECK_HEADERS(proc_service.h thread_db.h gnu/libc-version.h)
370 AC_CHECK_HEADERS(stddef.h)
371 AC_CHECK_HEADERS(stdlib.h)
372 AC_CHECK_HEADERS(stdint.h)
373 AC_CHECK_HEADERS(string.h memory.h strings.h)
374 AC_CHECK_HEADERS(sys/fault.h)
375 AC_CHECK_HEADERS(sys/file.h)
376 AC_CHECK_HEADERS(sys/filio.h)
377 AC_CHECK_HEADERS(sys/ioctl.h)
378 AC_CHECK_HEADERS(sys/param.h)
379 AC_CHECK_HEADERS(sys/proc.h, [], [],
380 [#if HAVE_SYS_PARAM_H
381 # include <sys/param.h>
382 #endif
383 ])
384 AC_CHECK_HEADERS(sys/procfs.h)
385 AC_CHECK_HEADERS(sys/ptrace.h ptrace.h)
386 AC_CHECK_HEADERS(sys/reg.h sys/debugreg.h)
387 AC_CHECK_HEADERS(sys/select.h)
388 AC_CHECK_HEADERS(sys/syscall.h)
389 AC_CHECK_HEADERS(sys/types.h)
390 AC_CHECK_HEADERS(sys/user.h, [], [],
391 [#if HAVE_SYS_PARAM_H
392 # include <sys/param.h>
393 #endif
394 ])
395 AC_CHECK_HEADERS(sys/wait.h wait.h)
396 AC_CHECK_HEADERS(termios.h termio.h sgtty.h)
397 AC_CHECK_HEADERS(unistd.h)
398
399 # On Solaris 2.[789], we need to define _MSE_INT_H to avoid a clash
400 # between <widec.h> and <wchar.h> that would cause AC_CHECK_HEADERS to
401 # think that we don't have <curses.h> if we're using GCC.
402 case $host_os in
403 solaris2.[[789]])
404 if test "$GCC" = yes; then
405 AC_DEFINE(_MSE_INT_H, 1,
406 [Define to 1 to avoid a clash between <widec.h> and <wchar.h> on
407 Solaris 2.[789] when using GCC. ])
408 fi ;;
409 esac
410 AC_CHECK_HEADERS(curses.h cursesX.h ncurses.h ncurses/ncurses.h)
411 AC_CHECK_HEADERS(ncurses/term.h)
412 AC_CHECK_HEADERS(term.h, [], [],
413 [#if HAVE_CURSES_H
414 # include <curses.h>
415 #endif
416 ])
417
418 # FIXME: kettenis/20030102: In most cases we include these
419 # unconditionally, so what's the point in checking these?
420 AC_CHECK_HEADERS(ctype.h time.h)
421
422 # Create a header we can use portably to get the standard integer types.
423 GCC_HEADER_STDINT(gdb_stdint.h)
424
425 # ------------------------- #
426 # Checks for declarations. #
427 # ------------------------- #
428
429 AC_CHECK_DECLS([free, malloc, realloc])
430 AC_CHECK_DECLS([strerror, strstr])
431 AC_CHECK_DECLS([getopt, snprintf, vsnprintf])
432
433 # ----------------------- #
434 # Checks for structures. #
435 # ----------------------- #
436
437 AC_CHECK_MEMBERS([struct stat.st_blocks])
438 AC_CHECK_MEMBERS([struct stat.st_blksize])
439
440 # ------------------ #
441 # Checks for types. #
442 # ------------------ #
443
444 AC_TYPE_SIGNAL
445 AC_CHECK_TYPES(socklen_t, [], [],
446 [#include <sys/types.h>
447 #include <sys/socket.h>
448 ])
449 AC_CHECK_TYPES(uintptr_t, [], [], [#include <stdint.h>])
450
451 # ------------------------------------- #
452 # Checks for compiler characteristics. #
453 # ------------------------------------- #
454
455 AC_C_CONST
456 AC_C_INLINE
457
458 # ------------------------------ #
459 # Checks for library functions. #
460 # ------------------------------ #
461
462 AC_FUNC_ALLOCA
463 AC_FUNC_MMAP
464 AC_FUNC_VFORK
465 AC_CHECK_FUNCS(canonicalize_file_name realpath)
466 AC_CHECK_FUNCS(getuid getgid)
467 AC_CHECK_FUNCS(poll)
468 AC_CHECK_FUNCS(pread64)
469 AC_CHECK_FUNCS(sbrk)
470 AC_CHECK_FUNCS(setpgid setpgrp)
471 AC_CHECK_FUNCS(sigaction sigprocmask sigsetmask)
472 AC_CHECK_FUNCS(socketpair)
473 AC_CHECK_FUNCS(syscall)
474 AC_CHECK_FUNCS(ttrace)
475 AC_CHECK_FUNCS(wborder)
476
477 # Check the return and argument types of ptrace. No canned test for
478 # this, so roll our own.
479 gdb_ptrace_headers='
480 #if HAVE_SYS_TYPES_H
481 # include <sys/types.h>
482 #endif
483 #if HAVE_SYS_PTRACE_H
484 # include <sys/ptrace.h>
485 #endif
486 #if HAVE_UNISTD_H
487 # include <unistd.h>
488 #endif
489 '
490 # There is no point in checking if we don't have a prototype.
491 AC_CHECK_DECLS(ptrace, [], [
492 : ${gdb_cv_func_ptrace_ret='int'}
493 : ${gdb_cv_func_ptrace_args='int,int,long,long'}
494 ], $gdb_ptrace_headers)
495 # Check return type.
496 AC_CACHE_CHECK([return type of ptrace], gdb_cv_func_ptrace_ret,
497 AC_TRY_COMPILE($gdb_ptrace_headers,
498 [extern int ptrace ();],
499 gdb_cv_func_ptrace_ret='int',
500 gdb_cv_func_ptrace_ret='long'))
501 AC_DEFINE_UNQUOTED(PTRACE_TYPE_RET, $gdb_cv_func_ptrace_ret,
502 [Define as the return type of ptrace.])
503 # Check argument types.
504 AC_CACHE_CHECK([types of arguments for ptrace], gdb_cv_func_ptrace_args, [
505 for gdb_arg1 in 'int' 'long'; do
506 for gdb_arg2 in 'pid_t' 'int' 'long'; do
507 for gdb_arg3 in 'int *' 'caddr_t' 'int' 'long'; do
508 for gdb_arg4 in 'int' 'long'; do
509 AC_TRY_COMPILE($gdb_ptrace_headers, [
510 extern $gdb_cv_func_ptrace_ret
511 ptrace ($gdb_arg1, $gdb_arg2, $gdb_arg3, $gdb_arg4);
512 ], [gdb_cv_func_ptrace_args="$gdb_arg1,$gdb_arg2,$gdb_arg3,$gdb_arg4";
513 break 4;])
514 for gdb_arg5 in 'int *' 'int' 'long'; do
515 AC_TRY_COMPILE($gdb_ptrace_headers, [
516 extern $gdb_cv_func_ptrace_ret
517 ptrace ($gdb_arg1, $gdb_arg2, $gdb_arg3, $gdb_arg4, $gdb_arg5);
518 ], [
519 gdb_cv_func_ptrace_args="$gdb_arg1,$gdb_arg2,$gdb_arg3,$gdb_arg4,$gdb_arg5";
520 break 5;])
521 done
522 done
523 done
524 done
525 done
526 # Provide a safe default value.
527 : ${gdb_cv_func_ptrace_args='int,int,long,long'}
528 ])
529 ac_save_IFS=$IFS; IFS=','
530 set dummy `echo "$gdb_cv_func_ptrace_args" | sed 's/\*/\*/g'`
531 IFS=$ac_save_IFS
532 shift
533 AC_DEFINE_UNQUOTED(PTRACE_TYPE_ARG3, $[3],
534 [Define to the type of arg 3 for ptrace.])
535 if test -n "$[5]"; then
536 AC_DEFINE_UNQUOTED(PTRACE_TYPE_ARG5, $[5],
537 [Define to the type of arg 5 for ptrace.])
538 fi
539
540 dnl AC_FUNC_SETPGRP does not work when cross compiling
541 dnl Instead, assume we will have a prototype for setpgrp if cross compiling.
542 if test "$cross_compiling" = no; then
543 AC_FUNC_SETPGRP
544 else
545 AC_CACHE_CHECK([whether setpgrp takes no argument], ac_cv_func_setpgrp_void,
546 [AC_TRY_COMPILE([
547 #include <unistd.h>
548 ], [
549 if (setpgrp(1,1) == -1)
550 exit (0);
551 else
552 exit (1);
553 ], ac_cv_func_setpgrp_void=no, ac_cv_func_setpgrp_void=yes)])
554 if test $ac_cv_func_setpgrp_void = yes; then
555 AC_DEFINE(SETPGRP_VOID, 1)
556 fi
557 fi
558
559 # Check if sigsetjmp is available. Using AC_CHECK_FUNCS won't do
560 # since sigsetjmp might only be defined as a macro.
561 AC_CACHE_CHECK([for sigsetjmp], gdb_cv_func_sigsetjmp,
562 [AC_TRY_COMPILE([
563 #include <setjmp.h>
564 ], [sigjmp_buf env; while (! sigsetjmp (env, 1)) siglongjmp (env, 1);],
565 gdb_cv_func_sigsetjmp=yes, gdb_cv_func_sigsetjmp=no)])
566 if test $gdb_cv_func_sigsetjmp = yes; then
567 AC_DEFINE(HAVE_SIGSETJMP, 1, [Define if sigsetjmp is available. ])
568 fi
569
570 # Assume we'll default to using the included libiberty regex.
571 gdb_use_included_regex=yes
572
573 # However, if the system regex is GNU regex, then default to *not*
574 # using the included regex.
575 AC_CACHE_CHECK(
576 [for GNU regex],
577 [gdb_cv_have_gnu_regex],
578 [AC_TRY_COMPILE(
579 [#include <gnu-versions.h>],
580 [#define REGEX_INTERFACE_VERSION 1
581 #if _GNU_REGEX_INTERFACE_VERSION != REGEX_INTERFACE_VERSION
582 # error "Version mismatch"
583 #endif],
584 gdb_cv_have_gnu_regex=yes,
585 gdb_cv_have_gnu_regex=no)])
586 if test $gdb_cv_have_gnu_regex = yes; then
587 gdb_use_included_regex=no
588 fi
589
590 AC_ARG_WITH(included-regex,
591 [ --without-included-regex don't use included regex; this is the default
592 on systems with version 2 of the GNU C library
593 (use with caution on other system)],
594 gdb_with_regex=$withval,
595 gdb_with_regex=$gdb_use_included_regex)
596 if test "$gdb_with_regex" = yes; then
597 AC_DEFINE(USE_INCLUDED_REGEX, 1,
598 [Define to 1 if the regex included in libiberty should be used.])
599 fi
600
601 # Check if <sys/proc.h> defines `struct thread' with a td_pcb member.
602 AC_CHECK_MEMBERS([struct thread.td_pcb], [], [],
603 [#include <sys/param.h>
604 #include <sys/proc.h>
605 ])
606
607 # See if <sys/lwp.h> defines `struct lwp`.
608 AC_CACHE_CHECK([for struct lwp], gdb_cv_struct_lwp,
609 [AC_TRY_COMPILE([#include <sys/param.h>
610 #include <sys/lwp.h>], [struct lwp l;],
611 gdb_cv_struct_lwp=yes, gdb_cv_struct_lwp=no)])
612 if test $gdb_cv_struct_lwp = yes; then
613 AC_DEFINE(HAVE_STRUCT_LWP, 1,
614 [Define to 1 if your system has struct lwp.])
615 fi
616
617 # See if <machine/reg.h> degines `struct reg'.
618 AC_CACHE_CHECK([for struct reg in machine/reg.h], gdb_cv_struct_reg,
619 [AC_TRY_COMPILE([#include <sys/types.h>
620 #include <machine/reg.h>], [struct reg r;],
621 gdb_cv_struct_reg=yes, gdb_cv_struct_reg=no)])
622 if test $gdb_cv_struct_reg = yes; then
623 AC_DEFINE(HAVE_STRUCT_REG, 1,
624 [Define to 1 if your system has struct reg in <machine/reg.h>.])
625 fi
626
627 # See if <machine/reg.h> supports the %fs and %gs i386 segment registers.
628 # Older i386 BSD's don't have the r_fs and r_gs members of `struct reg'.
629 AC_CHECK_MEMBERS([struct reg.r_fs, struct reg.r_gs], [], [],
630 [#include <machine/reg.h>])
631
632 # See if <sys/ptrace.h> provides the PTRACE_GETREGS request.
633 AC_MSG_CHECKING(for PTRACE_GETREGS)
634 AC_CACHE_VAL(gdb_cv_have_ptrace_getregs,
635 [AC_TRY_COMPILE([#include <sys/ptrace.h>],
636 [PTRACE_GETREGS;],
637 [gdb_cv_have_ptrace_getregs=yes],
638 [gdb_cv_have_ptrace_getregs=no])])
639 AC_MSG_RESULT($gdb_cv_have_ptrace_getregs)
640 if test $gdb_cv_have_ptrace_getregs = yes; then
641 AC_DEFINE(HAVE_PTRACE_GETREGS, 1,
642 [Define if sys/ptrace.h defines the PTRACE_GETREGS request.])
643 fi
644
645 # See if <sys/ptrace.h> provides the PTRACE_GETFPXREGS request.
646 AC_MSG_CHECKING(for PTRACE_GETFPXREGS)
647 AC_CACHE_VAL(gdb_cv_have_ptrace_getfpxregs,
648 [AC_TRY_COMPILE([#include <sys/ptrace.h>],
649 [PTRACE_GETFPXREGS;],
650 [gdb_cv_have_ptrace_getfpxregs=yes],
651 [gdb_cv_have_ptrace_getfpxregs=no])])
652 AC_MSG_RESULT($gdb_cv_have_ptrace_getfpxregs)
653 if test $gdb_cv_have_ptrace_getfpxregs = yes; then
654 AC_DEFINE(HAVE_PTRACE_GETFPXREGS, 1,
655 [Define if sys/ptrace.h defines the PTRACE_GETFPXREGS request.])
656 fi
657
658 # See if <sys/ptrace.h> provides the PT_GETDBREGS request.
659 AC_MSG_CHECKING(for PT_GETDBREGS)
660 AC_CACHE_VAL(gdb_cv_have_pt_getdbregs,
661 [AC_TRY_COMPILE([#include <sys/types.h>
662 #include <sys/ptrace.h>],
663 [PT_GETDBREGS;],
664 [gdb_cv_have_pt_getdbregs=yes],
665 [gdb_cv_have_pt_getdbregs=no])])
666 AC_MSG_RESULT($gdb_cv_have_pt_getdbregs)
667 if test $gdb_cv_have_pt_getdbregs = yes; then
668 AC_DEFINE(HAVE_PT_GETDBREGS, 1,
669 [Define if sys/ptrace.h defines the PT_GETDBREGS request.])
670 fi
671
672 # See if <sys/ptrace.h> provides the PT_GETXMMREGS request.
673 AC_MSG_CHECKING(for PT_GETXMMREGS)
674 AC_CACHE_VAL(gdb_cv_have_pt_getxmmregs,
675 [AC_TRY_COMPILE([#include <sys/types.h>
676 #include <sys/ptrace.h>],
677 [PT_GETXMMREGS;],
678 [gdb_cv_have_pt_getxmmregs=yes],
679 [gdb_cv_have_pt_getxmmregs=no])])
680 AC_MSG_RESULT($gdb_cv_have_pt_getxmmregs)
681 if test $gdb_cv_have_pt_getxmmregs = yes; then
682 AC_DEFINE(HAVE_PT_GETXMMREGS, 1,
683 [Define if sys/ptrace.h defines the PT_GETXMMREGS request.])
684 fi
685
686 # If we are configured native on GNU/Linux, work around problems with
687 # sys/procfs.h
688 # Also detect which type of /proc is in use, such as for Unixware or Solaris.
689
690 if test "${target}" = "${host}"; then
691 case "${host}" in
692 i[[3456]]86-*-linux*)
693 AC_DEFINE(START_INFERIOR_TRAPS_EXPECTED, 2,
694 [Define on a GNU/Linux system to work around problems in sys/procfs.h.])
695 AC_DEFINE(sys_quotactl, 1,
696 [Define on a GNU/Linux system to work around problems in sys/procfs.h.])
697 ;;
698 *-*-unixware* | *-*-sysv4.2* | *-*-sysv5* | *-*-interix* )
699 AC_DEFINE(NEW_PROC_API, 1,
700 [Define if you want to use new multi-fd /proc interface
701 (replaces HAVE_MULTIPLE_PROC_FDS as well as other macros).])
702 ;;
703 *-*-solaris2.[[6789]] | *-*-solaris2.1[[0-9]])
704 AC_DEFINE(NEW_PROC_API, 1,
705 [Define if you want to use new multi-fd /proc interface
706 (replaces HAVE_MULTIPLE_PROC_FDS as well as other macros).])
707 ;;
708 mips-sgi-irix5*)
709 # Work around <sys/proc.h> needing _KMEMUSER problem on IRIX 5.
710 AC_DEFINE([_KMEMUSER], 1,
711 [Define to 1 so <sys/proc.h> gets a definition of anon_hdl. Works
712 around a <sys/proc.h> problem on IRIX 5.])
713 ;;
714 esac
715 fi
716
717 if test "$ac_cv_header_sys_procfs_h" = yes; then
718 BFD_HAVE_SYS_PROCFS_TYPE(pstatus_t)
719 BFD_HAVE_SYS_PROCFS_TYPE(prrun_t)
720 BFD_HAVE_SYS_PROCFS_TYPE(gregset_t)
721 BFD_HAVE_SYS_PROCFS_TYPE(fpregset_t)
722 BFD_HAVE_SYS_PROCFS_TYPE(prgregset_t)
723 BFD_HAVE_SYS_PROCFS_TYPE(prfpregset_t)
724 BFD_HAVE_SYS_PROCFS_TYPE(prgregset32_t)
725 BFD_HAVE_SYS_PROCFS_TYPE(prfpregset32_t)
726 BFD_HAVE_SYS_PROCFS_TYPE(lwpid_t)
727 BFD_HAVE_SYS_PROCFS_TYPE(psaddr_t)
728 BFD_HAVE_SYS_PROCFS_TYPE(prsysent_t)
729 BFD_HAVE_SYS_PROCFS_TYPE(pr_sigset_t)
730 BFD_HAVE_SYS_PROCFS_TYPE(pr_sigaction64_t)
731 BFD_HAVE_SYS_PROCFS_TYPE(pr_siginfo64_t)
732
733
734 dnl Check for broken prfpregset_t type
735
736 dnl For Linux/i386, glibc 2.1.3 was released with a bogus
737 dnl prfpregset_t type (it's a typedef for the pointer to a struct
738 dnl instead of the struct itself). We detect this here, and work
739 dnl around it in gdb_proc_service.h.
740
741 if test $bfd_cv_have_sys_procfs_type_prfpregset_t = yes; then
742 AC_MSG_CHECKING(whether prfpregset_t type is broken)
743 AC_CACHE_VAL(gdb_cv_prfpregset_t_broken,
744 [AC_TRY_RUN([#include <sys/procfs.h>
745 int main ()
746 {
747 if (sizeof (prfpregset_t) == sizeof (void *))
748 return 1;
749 return 0;
750 }],
751 gdb_cv_prfpregset_t_broken=no,
752 gdb_cv_prfpregset_t_broken=yes,
753 gdb_cv_prfpregset_t_broken=yes)])
754 AC_MSG_RESULT($gdb_cv_prfpregset_t_broken)
755 if test $gdb_cv_prfpregset_t_broken = yes; then
756 AC_DEFINE(PRFPREGSET_T_BROKEN, 1,
757 [Define if the prfpregset_t type is broken.])
758 fi
759 fi
760
761 dnl Check for PIOCSET ioctl entry
762
763 AC_MSG_CHECKING(for PIOCSET ioctl entry in sys/procfs.h)
764 AC_CACHE_VAL(gdb_cv_have_procfs_piocset,
765 [AC_TRY_COMPILE([#include <unistd.h>
766 #include <sys/types.h>
767 #include <sys/procfs.h>
768 ], [
769 int dummy;;
770 dummy = ioctl(0, PIOCSET, &dummy);
771 ],
772 gdb_cv_have_procfs_piocset=yes, gdb_cv_have_procfs_piocset=no)])
773 AC_MSG_RESULT($gdb_cv_have_procfs_piocset)
774 if test $gdb_cv_have_procfs_piocset = yes; then
775 AC_DEFINE(HAVE_PROCFS_PIOCSET, 1,
776 [Define if ioctl argument PIOCSET is available.])
777 fi
778 fi
779
780 dnl For native ports (host == target), check to see what kind of
781 dnl legacy link.h support is needed. (See solib-legacy.c.)
782 if test ${host} = ${target} ; then
783 dnl Check for struct link_map with l_ members which are indicative
784 dnl of SVR4-like shared libraries
785
786 AC_MSG_CHECKING(for member l_addr in struct link_map)
787 AC_CACHE_VAL(gdb_cv_have_struct_link_map_with_l_members,
788 [AC_TRY_COMPILE([#include <link.h>],
789 [struct link_map lm; (void) lm.l_addr;],
790 gdb_cv_have_struct_link_map_with_l_members=yes,
791 gdb_cv_have_struct_link_map_with_l_members=no)])
792 AC_MSG_RESULT($gdb_cv_have_struct_link_map_with_l_members)
793 if test $gdb_cv_have_struct_link_map_with_l_members = yes; then
794 AC_DEFINE(HAVE_STRUCT_LINK_MAP_WITH_L_MEMBERS,1,
795 [Define if <link.h> exists and defines struct link_map which has
796 members with an ``l_'' prefix. (For Solaris, SVR4, and
797 SVR4-like systems.)])
798 fi
799
800 dnl Check for struct link_map with lm_ members which are indicative
801 dnl of SunOS-like shared libraries
802
803 AC_MSG_CHECKING(for member lm_addr in struct link_map)
804 AC_CACHE_VAL(gdb_cv_have_struct_link_map_with_lm_members,
805 [AC_TRY_COMPILE([#include <sys/types.h>
806 #include <link.h>],
807 [struct link_map lm; (void) lm.lm_addr;],
808 gdb_cv_have_struct_link_map_with_lm_members=yes,
809 gdb_cv_have_struct_link_map_with_lm_members=no)])
810 AC_MSG_RESULT($gdb_cv_have_struct_link_map_with_lm_members)
811 if test $gdb_cv_have_struct_link_map_with_lm_members = yes; then
812 AC_DEFINE(HAVE_STRUCT_LINK_MAP_WITH_LM_MEMBERS, 1,
813 [Define if <link.h> exists and defines struct link_map which has
814 members with an ``lm_'' prefix. (For SunOS.)])
815 fi
816
817 dnl Check for struct so_map with som_ members which are found on
818 dnl some *BSD systems.
819
820 AC_MSG_CHECKING(for member som_addr in struct so_map)
821 AC_CACHE_VAL(gdb_cv_have_struct_so_map_with_som_members,
822 [AC_TRY_COMPILE([#include <sys/types.h>
823 #ifdef HAVE_NLIST_H
824 #include <nlist.h>
825 #endif
826 #include <link.h>],
827 [struct so_map lm; (void) lm.som_addr;],
828 gdb_cv_have_struct_so_map_with_som_members=yes,
829 gdb_cv_have_struct_so_map_with_som_members=no)])
830 AC_MSG_RESULT($gdb_cv_have_struct_so_map_with_som_members)
831 if test $gdb_cv_have_struct_so_map_with_som_members = yes; then
832 AC_DEFINE(HAVE_STRUCT_SO_MAP_WITH_SOM_MEMBERS, 1,
833 [Define if <link.h> exists and defines a struct so_map which has
834 members with an ``som_'' prefix. (Found on older *BSD systems.)])
835 fi
836
837 dnl Check for struct link_map32 type, which allows a 64-bit Solaris
838 dnl debugger to debug a 32-bit Solaris app with 32-bit shared libraries.
839
840 AC_MSG_CHECKING(for struct link_map32 in sys/link.h)
841 AC_CACHE_VAL(gdb_cv_have_struct_link_map32,
842 [AC_TRY_COMPILE([#define _SYSCALL32
843 #include <sys/link.h>], [struct link_map32 l;],
844 gdb_cv_have_struct_link_map32=yes,
845 gdb_cv_have_struct_link_map32=no)])
846 AC_MSG_RESULT($gdb_cv_have_struct_link_map32)
847 if test $gdb_cv_have_struct_link_map32 = yes; then
848 AC_DEFINE(HAVE_STRUCT_LINK_MAP32, 1,
849 [Define if <sys/link.h> has struct link_map32])
850 AC_DEFINE(_SYSCALL32, 1,
851 [Define if <sys/link.h> has link_map32 (solaris sparc-64 target)])
852 fi
853 fi
854
855 # Check if the compiler supports the `long long' type.
856
857 AC_CACHE_CHECK([for long long support in compiler], gdb_cv_c_long_long,
858 [AC_COMPILE_IFELSE([AC_LANG_PROGRAM(
859 [[extern long long foo;]],
860 [[switch (foo & 2) { case 0: return 1; }]])],
861 gdb_cv_c_long_long=yes,
862 gdb_cv_c_long_long=no)])
863 if test $gdb_cv_c_long_long = yes; then
864 AC_DEFINE(CC_HAS_LONG_LONG, 1,
865 [Define to 1 if the compiler supports long long.])
866 fi
867
868 # Check if the compiler and runtime support printing long longs.
869
870 AC_CACHE_CHECK([for long long support in printf],
871 gdb_cv_printf_has_long_long,
872 [AC_RUN_IFELSE([AC_LANG_PROGRAM([AC_INCLUDES_DEFAULT],
873 [[char buf[32];
874 long long l = 0;
875 l = (l << 16) + 0x0123;
876 l = (l << 16) + 0x4567;
877 l = (l << 16) + 0x89ab;
878 l = (l << 16) + 0xcdef;
879 sprintf (buf, "0x%016llx", l);
880 return (strcmp ("0x0123456789abcdef", buf));]])],
881 gdb_cv_printf_has_long_long=yes,
882 gdb_cv_printf_has_long_long=no,
883 gdb_cv_printf_has_long_long=no)])
884 if test $gdb_cv_printf_has_long_long = yes; then
885 AC_DEFINE(PRINTF_HAS_LONG_LONG, 1,
886 [Define to 1 if the "%ll" format works to print long longs.])
887 fi
888
889 # Check if the compiler supports the `long double' type. We can't use
890 # AC_C_LONG_DOUBLE because that one does additional checks on the
891 # constants defined in <float.h> that fail on some systems,
892 # e.g. FreeBSD/i386 4.7 and OpenBSD/i386 3.6.
893
894 AC_CACHE_CHECK([for long double support in compiler], gdb_cv_c_long_double,
895 [AC_COMPILE_IFELSE([AC_LANG_SOURCE([[long double foo;]])],
896 gdb_cv_c_long_double=yes,
897 gdb_cv_c_long_double=no)])
898 if test $gdb_cv_c_long_double = yes; then
899 AC_DEFINE(HAVE_LONG_DOUBLE, 1,
900 [Define to 1 if the compiler supports long double.])
901 fi
902
903 # Check if the compiler and runtime support printing long doubles.
904
905 AC_CACHE_CHECK([for long double support in printf],
906 gdb_cv_printf_has_long_double,
907 [AC_RUN_IFELSE([AC_LANG_PROGRAM([AC_INCLUDES_DEFAULT],
908 [[char buf[16];
909 long double f = 3.141592653;
910 sprintf (buf, "%Lg", f);
911 return (strncmp ("3.14159", buf, 7));]])],
912 gdb_cv_printf_has_long_double=yes,
913 gdb_cv_printf_has_long_double=no,
914 gdb_cv_printf_has_long_double=no)])
915 if test $gdb_cv_printf_has_long_double = yes; then
916 AC_DEFINE(PRINTF_HAS_LONG_DOUBLE, 1,
917 [Define to 1 if the "%Lg" format works to print long doubles.])
918 fi
919
920 # Check if the compiler and runtime support scanning long doubles.
921
922 AC_CACHE_CHECK([for long double support in scanf],
923 gdb_cv_scanf_has_long_double,
924 [AC_RUN_IFELSE([AC_LANG_PROGRAM(
925 [[#include <stdio.h>]],
926 [[char *buf = "3.141592653";
927 long double f = 0;
928 sscanf (buf, "%Lg", &f);
929 return !(f > 3.14159 && f < 3.14160);]])],
930 gdb_cv_scanf_has_long_double=yes,
931 gdb_cv_scanf_has_long_double=no,
932 gdb_cv_scanf_has_long_double=no)])
933 if test $gdb_cv_scanf_has_long_double = yes; then
934 AC_DEFINE(SCANF_HAS_LONG_DOUBLE, 1,
935 [Define to 1 if the "%Lg" format works to scan long doubles.])
936 fi
937
938 case ${host_os} in
939 aix*)
940 AC_CACHE_CHECK([for -bbigtoc option], [gdb_cv_bigtoc], [
941 SAVE_LDFLAGS=$LDFLAGS
942
943 case $GCC in
944 yes) gdb_cv_bigtoc=-Wl,-bbigtoc ;;
945 *) gdb_cv_bigtoc=-bbigtoc ;;
946 esac
947
948 LDFLAGS=$LDFLAGS\ $gdb_cv_bigtoc
949 AC_TRY_LINK([], [int i;], [], [gdb_cv_bigtoc=])
950 LDFLAGS="${SAVE_LDFLAGS}"
951 ])
952 CONFIG_LDFLAGS="${CONFIG_LDFLAGS} ${gdb_cv_bigtoc}"
953 ;;
954 esac
955
956
957 dnl For certain native configurations, we need to check whether thread
958 dnl support can be built in or not.
959 dnl
960 dnl Note that we only want this if we are both native (host == target),
961 dnl and not doing a canadian cross build (build == host).
962
963 if test ${build} = ${host} -a ${host} = ${target} ; then
964 case ${host_os} in
965 hpux*)
966 AC_MSG_CHECKING(for HPUX/OSF thread support)
967 if test -f /usr/include/dce/cma_config.h ; then
968 if test "$GCC" = "yes" ; then
969 AC_MSG_RESULT(yes)
970 AC_DEFINE(HAVE_HPUX_THREAD_SUPPORT, 1,
971 [Define if you have HPUX threads])
972 CONFIG_OBS="${CONFIG_OBS} hpux-thread.o"
973 CONFIG_SRCS="${CONFIG_SRCS} hpux-thread.c"
974 else
975 AC_MSG_RESULT(no (suppressed because you are not using GCC))
976 fi
977 else
978 AC_MSG_RESULT(no)
979 fi
980 ;;
981 solaris*)
982 # See if thread_db library is around for Solaris thread debugging.
983 # Note that we must explicitly test for version 1 of the library
984 # because version 0 (present on Solaris 2.4 or earlier) doesn't have
985 # the same API.
986 AC_MSG_CHECKING(for Solaris thread debugging library)
987 if test -f /usr/lib/libthread_db.so.1 ; then
988 AC_MSG_RESULT(yes)
989 AC_DEFINE(HAVE_THREAD_DB_LIB, 1,
990 [Define if using Solaris thread debugging.])
991 CONFIG_OBS="${CONFIG_OBS} sol-thread.o"
992 CONFIG_SRCS="${CONFIG_SRCS} sol-thread.c"
993 AC_CHECK_LIB(dl, dlopen)
994 if test "$GCC" = "yes" ; then
995 # The GNU linker requires the -export-dynamic option to make
996 # all symbols visible in the dynamic symbol table.
997 hold_ldflags=$LDFLAGS
998 AC_MSG_CHECKING(for the ld -export-dynamic flag)
999 LDFLAGS="${LDFLAGS} -Wl,-export-dynamic"
1000 AC_TRY_LINK(, [int i;], found=yes, found=no)
1001 LDFLAGS=$hold_ldflags
1002 AC_MSG_RESULT($found)
1003 if test $found = yes; then
1004 CONFIG_LDFLAGS="${CONFIG_LDFLAGS} -Wl,-export-dynamic"
1005 fi
1006 fi
1007 # Sun randomly tweaked the prototypes in <proc_service.h>
1008 # at one point.
1009 AC_MSG_CHECKING(if <proc_service.h> is old)
1010 AC_CACHE_VAL(gdb_cv_proc_service_is_old,[
1011 AC_TRY_COMPILE([
1012 #include <proc_service.h>
1013 ps_err_e ps_pdwrite
1014 (struct ps_prochandle*, psaddr_t, const void*, size_t);
1015 ],, gdb_cv_proc_service_is_old=no,
1016 gdb_cv_proc_service_is_old=yes)
1017 ])
1018 AC_MSG_RESULT($gdb_cv_proc_service_is_old)
1019 if test $gdb_cv_proc_service_is_old = yes; then
1020 AC_DEFINE(PROC_SERVICE_IS_OLD, 1,
1021 [Define if <proc_service.h> on solaris uses int instead of
1022 size_t, and assorted other type changes.])
1023 fi
1024 else
1025 AC_MSG_RESULT(no)
1026 fi
1027 ;;
1028 aix*)
1029 AC_MSG_CHECKING(for AiX thread debugging library)
1030 AC_CACHE_VAL(gdb_cv_have_aix_thread_debug,
1031 [AC_TRY_COMPILE([#include <sys/pthdebug.h>],
1032 [#ifndef PTHDB_VERSION_3
1033 #error
1034 #endif],
1035 gdb_cv_have_aix_thread_debug=yes,
1036 gdb_cv_have_aix_thread_debug=no)])
1037 AC_MSG_RESULT($gdb_cv_have_aix_thread_debug)
1038 if test $gdb_cv_have_aix_thread_debug = yes; then
1039 CONFIG_SRCS="${CONFIG_SRCS} aix-thread.c"
1040 CONFIG_OBS="${CONFIG_OBS} aix-thread.o"
1041 CONFIG_LDFLAGS="${CONFIG_LDFLAGS} -lpthdebug"
1042 fi
1043 ;;
1044 esac
1045 AC_SUBST(CONFIG_LDFLAGS)
1046 fi
1047
1048 dnl See if we have a thread_db header file that has TD_NOTALLOC and
1049 dnl other error codes.
1050 if test "x$ac_cv_header_thread_db_h" = "xyes"; then
1051 AC_CACHE_CHECK([whether <thread_db.h> has TD_NOTALLOC],
1052 gdb_cv_thread_db_h_has_td_notalloc,
1053 AC_TRY_COMPILE(
1054 [#include <thread_db.h>],
1055 [int i = TD_NOTALLOC;],
1056 gdb_cv_thread_db_h_has_td_notalloc=yes,
1057 gdb_cv_thread_db_h_has_td_notalloc=no
1058 )
1059 )
1060 AC_CACHE_CHECK([whether <thread_db.h> has TD_VERSION],
1061 gdb_cv_thread_db_h_has_td_version,
1062 AC_TRY_COMPILE(
1063 [#include <thread_db.h>],
1064 [int i = TD_VERSION;],
1065 gdb_cv_thread_db_h_has_td_version=yes,
1066 gdb_cv_thread_db_h_has_td_version=no
1067 )
1068 )
1069 AC_CACHE_CHECK([whether <thread_db.h> has TD_NOTLS],
1070 gdb_cv_thread_db_h_has_td_notls,
1071 AC_TRY_COMPILE(
1072 [#include <thread_db.h>],
1073 [int i = TD_NOTLS;],
1074 gdb_cv_thread_db_h_has_td_notls=yes,
1075 gdb_cv_thread_db_h_has_td_notls=no
1076 )
1077 )
1078 fi
1079 if test "x$gdb_cv_thread_db_h_has_td_notalloc" = "xyes"; then
1080 AC_DEFINE(THREAD_DB_HAS_TD_NOTALLOC, 1,
1081 [Define if <thread_db.h> has the TD_NOTALLOC error code.])
1082 fi
1083 if test "x$gdb_cv_thread_db_h_has_td_version" = "xyes"; then
1084 AC_DEFINE(THREAD_DB_HAS_TD_VERSION, 1,
1085 [Define if <thread_db.h> has the TD_VERSION error code.])
1086 fi
1087 if test "x$gdb_cv_thread_db_h_has_td_notls" = "xyes"; then
1088 AC_DEFINE(THREAD_DB_HAS_TD_NOTLS, 1,
1089 [Define if <thread_db.h> has the TD_NOTLS error code.])
1090 fi
1091
1092 dnl See if we have a sys/syscall header file that has __NR_tkill.
1093 if test "x$ac_cv_header_sys_syscall_h" = "xyes"; then
1094 AC_CACHE_CHECK([whether <sys/syscall.h> has __NR_tkill],
1095 gdb_cv_sys_syscall_h_has_tkill,
1096 AC_TRY_COMPILE(
1097 [#include <sys/syscall.h>],
1098 [int i = __NR_tkill;],
1099 gdb_cv_sys_syscall_h_has_tkill=yes,
1100 gdb_cv_sys_syscall_h_has_tkill=no
1101 )
1102 )
1103 fi
1104 dnl See if we can issue tkill syscall.
1105 if test "x$gdb_cv_sys_syscall_h_has_tkill" = "xyes" && test "x$ac_cv_func_syscall" = "xyes"; then
1106 AC_DEFINE(HAVE_TKILL_SYSCALL, 1, [Define if you support the tkill syscall.])
1107 fi
1108
1109 dnl Handle optional features that can be enabled.
1110
1111 AC_ARG_WITH(sysroot,
1112 [ --with-sysroot[=DIR] Search for usr/lib et al within DIR.],
1113 [
1114 case ${with_sysroot} in
1115 yes) TARGET_SYSTEM_ROOT='${exec_prefix}/${target_alias}/sys-root' ;;
1116 *) TARGET_SYSTEM_ROOT=$with_sysroot ;;
1117 esac
1118
1119 TARGET_SYSTEM_ROOT_DEFINE='-DTARGET_SYSTEM_ROOT=\"$(TARGET_SYSTEM_ROOT)\"'
1120
1121 if test "x$exec_prefix" = xNONE || test "x$exec_prefix" = 'x${prefix}'; then
1122 if test "x$prefix" = xNONE; then
1123 test_prefix=/usr/local
1124 else
1125 test_prefix=$prefix
1126 fi
1127 else
1128 test_prefix=$exec_prefix
1129 fi
1130 case ${TARGET_SYSTEM_ROOT} in
1131 "${test_prefix}"|"${test_prefix}/"*|\
1132 '${exec_prefix}'|'${exec_prefix}/'*)
1133 t="$TARGET_SYSTEM_ROOT_DEFINE -DTARGET_SYSTEM_ROOT_RELOCATABLE"
1134 TARGET_SYSTEM_ROOT_DEFINE="$t"
1135 ;;
1136 esac
1137 ], [
1138 TARGET_SYSTEM_ROOT=
1139 TARGET_SYSTEM_ROOT_DEFINE='-DTARGET_SYSTEM_ROOT=\"\"'
1140 ])
1141 AC_SUBST(TARGET_SYSTEM_ROOT)
1142 AC_SUBST(TARGET_SYSTEM_ROOT_DEFINE)
1143
1144 AC_ARG_ENABLE(werror,
1145 [ --enable-werror treat compile warnings as errors],
1146 [case "${enableval}" in
1147 yes | y) ERROR_ON_WARNING="yes" ;;
1148 no | n) ERROR_ON_WARNING="no" ;;
1149 *) AC_MSG_ERROR(bad value ${enableval} for --enable-werror) ;;
1150 esac])
1151
1152 # Enable -Werror by default when using gcc
1153 if test "${GCC}" = yes -a -z "${ERROR_ON_WARNING}" ; then
1154 ERROR_ON_WARNING=yes
1155 fi
1156
1157 WERROR_CFLAGS=""
1158 if test "${ERROR_ON_WARNING}" = yes ; then
1159 WERROR_CFLAGS="-Werror"
1160 fi
1161
1162 # The entries after -Wno-pointer-sign are disabled warnings which may
1163 # be enabled in the future, which can not currently be used to build
1164 # GDB.
1165 # NOTE: If you change this list, remember to update
1166 # gdb/doc/gdbint.texinfo.
1167 build_warnings="-Wall -Wdeclaration-after-statement -Wpointer-arith \
1168 -Wformat-nonliteral -Wno-pointer-sign \
1169 -Wno-unused -Wno-switch"
1170
1171 AC_ARG_ENABLE(build-warnings,
1172 [ --enable-build-warnings Enable build-time compiler warnings if gcc is used],
1173 [case "${enableval}" in
1174 yes) ;;
1175 no) build_warnings="-w";;
1176 ,*) t=`echo "${enableval}" | sed -e "s/,/ /g"`
1177 build_warnings="${build_warnings} ${t}";;
1178 *,) t=`echo "${enableval}" | sed -e "s/,/ /g"`
1179 build_warnings="${t} ${build_warnings}";;
1180 *) build_warnings=`echo "${enableval}" | sed -e "s/,/ /g"`;;
1181 esac
1182 if test x"$silent" != x"yes" && test x"$build_warnings" != x""; then
1183 echo "Setting compiler warning flags = $build_warnings" 6>&1
1184 fi])dnl
1185 AC_ARG_ENABLE(gdb-build-warnings,
1186 [ --enable-gdb-build-warnings Enable GDB specific build-time compiler warnings if gcc is used],
1187 [case "${enableval}" in
1188 yes) ;;
1189 no) build_warnings="-w";;
1190 ,*) t=`echo "${enableval}" | sed -e "s/,/ /g"`
1191 build_warnings="${build_warnings} ${t}";;
1192 *,) t=`echo "${enableval}" | sed -e "s/,/ /g"`
1193 build_warnings="${t} ${build_warnings}";;
1194 *) build_warnings=`echo "${enableval}" | sed -e "s/,/ /g"`;;
1195 esac
1196 if test x"$silent" != x"yes" && test x"$build_warnings" != x""; then
1197 echo "Setting GDB specific compiler warning flags = $build_warnings" 6>&1
1198 fi])dnl
1199 WARN_CFLAGS=""
1200 if test "x${build_warnings}" != x -a "x$GCC" = xyes
1201 then
1202 AC_MSG_CHECKING(compiler warning flags)
1203 # Separate out the -Werror flag as some files just cannot be
1204 # compiled with it enabled.
1205 for w in ${build_warnings}; do
1206 case $w in
1207 -Werr*) WERROR_CFLAGS=-Werror ;;
1208 *) # Check that GCC accepts it
1209 saved_CFLAGS="$CFLAGS"
1210 CFLAGS="$CFLAGS $w"
1211 AC_TRY_COMPILE([],[],WARN_CFLAGS="${WARN_CFLAGS} $w",)
1212 CFLAGS="$saved_CFLAGS"
1213 esac
1214 done
1215 AC_MSG_RESULT(${WARN_CFLAGS} ${WERROR_CFLAGS})
1216 fi
1217 AC_SUBST(WARN_CFLAGS)
1218 AC_SUBST(WERROR_CFLAGS)
1219
1220 # In the Cygwin environment, we need some additional flags.
1221 AC_CACHE_CHECK([for cygwin], gdb_cv_os_cygwin,
1222 [AC_EGREP_CPP(lose, [
1223 #if defined (__CYGWIN__) || defined (__CYGWIN32__)
1224 lose
1225 #endif],[gdb_cv_os_cygwin=yes],[gdb_cv_os_cygwin=no])])
1226
1227
1228 dnl Figure out which of the many generic ser-*.c files the _host_ supports.
1229 SER_HARDWIRE="ser-base.o ser-unix.o ser-pipe.o ser-tcp.o"
1230 case ${host} in
1231 *go32* ) SER_HARDWIRE=ser-go32.o ;;
1232 *djgpp* ) SER_HARDWIRE=ser-go32.o ;;
1233 *mingw32*) SER_HARDWIRE="ser-base.o ser-tcp.o ser-mingw.o" ;;
1234 esac
1235 AC_SUBST(SER_HARDWIRE)
1236
1237 # libreadline needs libuser32.a in a cygwin environment
1238 WIN32LIBS=
1239 if test x$gdb_cv_os_cygwin = xyes; then
1240 WIN32LIBS="-luser32"
1241 case "${target}" in
1242 *cygwin*) WIN32LIBS="$WIN32LIBS -limagehlp"
1243 ;;
1244 esac
1245 fi
1246
1247 # The ser-tcp.c module requires sockets.
1248 case ${host} in
1249 *mingw32*)
1250 AC_DEFINE(USE_WIN32API, 1,
1251 [Define if we should use the Windows API, instead of the
1252 POSIX API. On Windows, we use the Windows API when
1253 building for MinGW, but the POSIX API when building
1254 for Cygwin.])
1255 WIN32LIBS="$WIN32LIBS -lws2_32"
1256 ;;
1257 esac
1258 AC_SUBST(WIN32LIBS)
1259
1260 # Add any host-specific objects to GDB.
1261 CONFIG_OBS="${CONFIG_OBS} ${gdb_host_obs}"
1262
1263 LIBGUI="../libgui/src/libgui.a"
1264 GUI_CFLAGS_X="-I${srcdir}/../libgui/src"
1265 AC_SUBST(LIBGUI)
1266 AC_SUBST(GUI_CFLAGS_X)
1267
1268 WIN32LDAPP=
1269 AC_SUBST(WIN32LIBS)
1270 AC_SUBST(WIN32LDAPP)
1271
1272 case "${host}" in
1273 *-*-cygwin*)
1274 configdir="win"
1275 ;;
1276 *)
1277 configdir="unix"
1278 ;;
1279 esac
1280
1281 GDBTKLIBS=
1282 if test "${enable_gdbtk}" = "yes"; then
1283
1284 # Gdbtk must have an absolute path to srcdir in order to run
1285 # properly when not installed.
1286 here=`pwd`
1287 cd ${srcdir}
1288 GDBTK_SRC_DIR=`pwd`
1289 cd $here
1290
1291 CY_AC_PATH_TCLCONFIG
1292 if test -z "${no_tcl}"; then
1293 CY_AC_LOAD_TCLCONFIG
1294 CY_AC_PATH_TKCONFIG
1295
1296 # now look for Tcl library stuff
1297
1298 tcldir="../tcl/${configdir}/"
1299
1300 TCL_DEPS="${tcldir}${TCL_LIB_FILE}"
1301
1302 # If $no_tk is nonempty, then we can't do Tk, and there is no
1303 # point to doing Tcl.
1304 if test -z "${no_tk}"; then
1305 CY_AC_LOAD_TKCONFIG
1306 CY_AC_PATH_TCLH
1307 CY_AC_PATH_TKH
1308 CY_AC_PATH_ITCLH
1309 CY_AC_PATH_ITKH
1310
1311
1312 # now look for Tk library stuff
1313
1314 tkdir="../tk/${configdir}/"
1315
1316 TK_DEPS="${tkdir}${TK_LIB_FILE}"
1317
1318 # now look for Itcl library stuff
1319
1320 CY_AC_PATH_ITCLCONFIG
1321 if test -z "${no_itcl}"; then
1322 CY_AC_LOAD_ITCLCONFIG
1323
1324 ITCLLIB="${ITCL_BUILD_LIB_SPEC}"
1325 ITCL_DEPS="${ITCL_LIB_FULL_PATH}"
1326 fi
1327
1328
1329 # now look for Itk library stuff
1330 CY_AC_PATH_ITKCONFIG
1331 if test -z "${no_itcl}"; then
1332 CY_AC_LOAD_ITKCONFIG
1333
1334 ITKLIB="${ITK_BUILD_LIB_SPEC}"
1335 ITK_DEPS="${ITK_LIB_FULL_PATH}"
1336 fi
1337
1338 ENABLE_CFLAGS="${ENABLE_CFLAGS} \$(SUBDIR_GDBTK_CFLAGS)"
1339
1340 # Include some libraries that Tcl and Tk want.
1341 TCL_LIBS='$(LIBGUI) $(ITCL) $(ITK) $(TK) $(TCL) $(X11_LDFLAGS) $(X11_LIBS)'
1342 # Yes, the ordering seems wrong here. But it isn't.
1343 # TK_LIBS is the list of libraries that need to be linked
1344 # after Tcl/Tk. Note that this isn't put into LIBS. If it
1345 # were in LIBS then any link tests after this point would
1346 # try to include things like `$(LIBGUI)', which wouldn't work.
1347 GDBTKLIBS="${TCL_LIBS} ${TK_LIBS}"
1348
1349 CONFIG_OBS="${CONFIG_OBS} \$(SUBDIR_GDBTK_OBS)"
1350 CONFIG_DEPS="${CONFIG_DEPS} \$(SUBDIR_GDBTK_DEPS)"
1351 CONFIG_SRCS="${CONFIG_SRCS} \$(SUBDIR_GDBTK_SRCS)"
1352 CONFIG_ALL="${CONFIG_ALL} all-gdbtk"
1353 CONFIG_CLEAN="${CONFIG_CLEAN} clean-gdbtk"
1354 CONFIG_INSTALL="${CONFIG_INSTALL} install-gdbtk"
1355 CONFIG_UNINSTALL="${CONFIG_UNINSTALL} uninstall-gdbtk"
1356
1357 if test x$gdb_cv_os_cygwin = xyes; then
1358 WIN32LIBS="${WIN32LIBS} -lshell32 -lgdi32 -lcomdlg32 -ladvapi32"
1359 WIN32LDAPP="-Wl,--subsystem,console"
1360 CONFIG_OBS="${CONFIG_OBS} gdbres.o"
1361 fi
1362 fi
1363 fi
1364
1365 AC_CONFIG_SUBDIRS(gdbtk)
1366 fi
1367
1368 AC_SUBST(X_CFLAGS)
1369 AC_SUBST(X_LDFLAGS)
1370 AC_SUBST(X_LIBS)
1371 AC_SUBST(TCL_DEPS)
1372 AC_SUBST(TK_DEPS)
1373 AC_SUBST(ITCLLIB)
1374 AC_SUBST(ITCL_DEPS)
1375 AC_SUBST(ITKLIB)
1376 AC_SUBST(ITK_DEPS)
1377 AC_SUBST(GDBTKLIBS)
1378 AC_SUBST(GDBTK_CFLAGS)
1379 AC_SUBST(GDBTK_SRC_DIR)
1380
1381 AC_PATH_X
1382
1383 # Check whether we should enable the TUI, but only do so if we really
1384 # can.
1385 if test x"$enable_tui" = xyes; then
1386 if test -d $srcdir/tui; then
1387 if test "$ac_cv_search_waddstr" != no; then
1388 CONFIG_OBS="$CONFIG_OBS \$(SUBDIR_TUI_OBS)"
1389 CONFIG_DEPS="$CONFIG_DEPS \$(SUBDIR_TUI_DEPS)"
1390 CONFIG_SRCS="$CONFIG_SRCS \$(SUBDIR_TUI_SRCS)"
1391 CONFIG_INITS="$CONFIG_INITS \$(SUBDIR_TUI_INITS)"
1392 ENABLE_CFLAGS="$ENABLE_CFLAGS \$(SUBDIR_TUI_CFLAGS)"
1393 CONFIG_ALL="${CONFIG_ALL} all-tui"
1394 CONFIG_CLEAN="${CONFIG_CLEAN} clean-tui"
1395 CONFIG_INSTALL="${CONFIG_INSTALL} install-tui"
1396 CONFIG_UNINSTALL="${CONFIG_UNINSTALL} uninstall-tui"
1397 else
1398 AC_MSG_WARN([no enhanced curses library found; disabling TUI])
1399 fi
1400 fi
1401 fi
1402
1403 # Unlike the sim directory, whether a simulator is linked is controlled by
1404 # presence of a SIM= and a SIM_OBS= definition in the target '.mt' file.
1405 # This code just checks for a few cases where we'd like to ignore those
1406 # definitions, even when they're present in the '.mt' file. These cases
1407 # are when --disable-sim is specified, or if the simulator directory is
1408 # not part of the source tree.
1409 #
1410 AC_ARG_ENABLE(sim,
1411 [ --enable-sim Link gdb with simulator],
1412 [echo "enable_sim = $enable_sim";
1413 echo "enableval = ${enableval}";
1414 case "${enableval}" in
1415 yes) ignore_sim=false ;;
1416 no) ignore_sim=true ;;
1417 *) ignore_sim=false ;;
1418 esac],
1419 [ignore_sim=false])
1420
1421 if test ! -d "${srcdir}/../sim"; then
1422 ignore_sim=true
1423 fi
1424
1425 if test "${ignore_sim}" = "true"; then
1426 IGNORE_SIM="SIM="
1427 IGNORE_SIM_OBS="SIM_OBS="
1428 else
1429 IGNORE_SIM=""
1430 IGNORE_SIM_OBS=""
1431 AC_DEFINE(WITH_SIM, 1, [Define if the simulator is being linked in.])
1432 fi
1433 AC_SUBST(IGNORE_SIM)
1434 AC_SUBST(IGNORE_SIM_OBS)
1435
1436 AC_SUBST(ENABLE_CFLAGS)
1437 AC_SUBST(PROFILE_CFLAGS)
1438
1439 AC_SUBST(CONFIG_OBS)
1440 AC_SUBST(CONFIG_DEPS)
1441 AC_SUBST(CONFIG_SRCS)
1442 AC_SUBST(CONFIG_ALL)
1443 AC_SUBST(CONFIG_CLEAN)
1444 AC_SUBST(CONFIG_INSTALL)
1445 AC_SUBST(CONFIG_UNINSTALL)
1446
1447 # List of host floatformats.
1448 AC_DEFINE_UNQUOTED(GDB_HOST_FLOAT_FORMAT,$gdb_host_float_format,[Host float floatformat])
1449 AC_DEFINE_UNQUOTED(GDB_HOST_DOUBLE_FORMAT,$gdb_host_double_format,[Host double floatformat])
1450 AC_DEFINE_UNQUOTED(GDB_HOST_LONG_DOUBLE_FORMAT,$gdb_host_long_double_format,[Host long double floatformat])
1451
1452 # target_subdir is used by the testsuite to find the target libraries.
1453 target_subdir=
1454 if test "${host}" != "${target}"; then
1455 target_subdir="${target_alias}/"
1456 fi
1457 AC_SUBST(target_subdir)
1458
1459 frags=
1460 if test "${gdb_native}" = "yes"; then
1461 host_makefile_frag=${srcdir}/config/${gdb_host_cpu}/${gdb_host}.mh
1462 if test ! -f ${host_makefile_frag}; then
1463 AC_MSG_ERROR("*** Gdb does not support native target ${host}")
1464 fi
1465 frags="$frags $host_makefile_frag"
1466 else
1467 host_makefile_frag=/dev/null
1468 fi
1469
1470 target_makefile_frag=${srcdir}/config/${gdb_target_cpu}/${gdb_target}.mt
1471 if test ! -f ${target_makefile_frag}; then
1472 AC_MSG_ERROR("*** Gdb does not support target ${target}")
1473 fi
1474 frags="$frags $target_makefile_frag"
1475
1476 AC_SUBST_FILE(host_makefile_frag)
1477 AC_SUBST_FILE(target_makefile_frag)
1478 AC_SUBST(frags)
1479
1480 changequote(,)dnl
1481 hostfile=`sed -n '
1482 s/XM_FILE[ ]*=[ ]*\([^ ]*\)/\1/p
1483 ' ${host_makefile_frag}`
1484
1485 targetfile=`sed -n '
1486 s/^[ ]*DEPRECATED_TM_FILE[ ]*=[ ]*\([^ ]*\)/\1/p
1487 ' ${target_makefile_frag}`
1488
1489 if test "${gdb_native}" = "yes"; then
1490 # We pick this up from the host configuration file (.mh) because we
1491 # do not have a native configuration Makefile fragment.
1492 nativefile=`sed -n '
1493 s/NAT_FILE[ ]*=[ ]*\([^ ]*\)/\1/p
1494 ' ${host_makefile_frag}`
1495 fi
1496 changequote([,])
1497
1498 if test x"${gdb_osabi}" != x ; then
1499 AC_DEFINE_UNQUOTED(GDB_OSABI_DEFAULT, $gdb_osabi,
1500 [Define to the default OS ABI for this configuration.])
1501 fi
1502
1503 # Enable multi-ice-gdb-server.
1504 AC_ARG_ENABLE(multi-ice,
1505 [ --enable-multi-ice build the multi-ice-gdb-server],
1506 [case $enableval in
1507 yes | no)
1508 ;;
1509 *) AC_MSG_ERROR([bad value $enableval for --enable-multi-ice]) ;;
1510 esac])
1511 if test "x$enable_multi_ice" = xyes; then
1512 AC_CONFIG_SUBDIRS(multi-ice)
1513 fi
1514
1515 # We only build gdbserver automatically in a native configuration.
1516 if test "$gdb_native" = "yes"; then
1517 AC_MSG_CHECKING(whether gdbserver is supported on this host)
1518 if test "x$build_gdbserver" = xyes; then
1519 AC_MSG_RESULT(yes)
1520 AC_CONFIG_SUBDIRS(gdbserver)
1521 else
1522 AC_MSG_RESULT(no)
1523 fi
1524 fi
1525
1526 # If hostfile (XM_FILE) and/or targetfile (DEPRECATED_TM_FILE) and/or
1527 # nativefile (NAT_FILE) is not set in config/*/*.m[ht] files, we link
1528 # to an empty version.
1529
1530 files=
1531 links=
1532
1533 rm -f xm.h
1534 xm_h=""
1535 if test "${hostfile}" != ""; then
1536 xm_h=xm.h
1537 case "${hostfile}" in
1538 xm-*.h ) GDB_XM_FILE="config/${gdb_host_cpu}/${hostfile}" ;;
1539 * ) GDB_XM_FILE="${hostfile}"
1540 esac
1541 files="${files} ${GDB_XM_FILE}"
1542 links="${links} xm.h"
1543 AC_DEFINE_UNQUOTED(GDB_XM_FILE, "${GDB_XM_FILE}", [hostfile])
1544 fi
1545 AC_SUBST(xm_h)
1546
1547 rm -f tm.h
1548 tm_h=""
1549 if test "${targetfile}" != ""; then
1550 tm_h=tm.h
1551 case "${targetfile}" in
1552 tm-*.h ) GDB_TM_FILE="config/${gdb_target_cpu}/${targetfile}" ;;
1553 * ) GDB_TM_FILE="${targetfile}"
1554 esac
1555 files="${files} ${GDB_TM_FILE}"
1556 links="${links} tm.h"
1557 AC_DEFINE_UNQUOTED(GDB_TM_FILE, "${GDB_TM_FILE}", [targetfile])
1558 fi
1559 AC_SUBST(tm_h)
1560
1561 rm -f nm.h
1562 nm_h=""
1563 if test "${nativefile}" != ""; then
1564 nm_h=nm.h
1565 case "${nativefile}" in
1566 nm-*.h ) GDB_NM_FILE="config/${gdb_host_cpu}/${nativefile}" ;;
1567 * ) GDB_NM_FILE="${nativefile}"
1568 esac
1569 files="${files} ${GDB_NM_FILE}"
1570 links="${links} nm.h"
1571 AC_DEFINE_UNQUOTED(GDB_NM_FILE, "${GDB_NM_FILE}", [nativefile])
1572 fi
1573 AC_SUBST(nm_h)
1574
1575 AC_LINK_FILES($files, $links)
1576
1577 dnl Check for exe extension set on certain hosts (e.g. Win32)
1578 AC_EXEEXT
1579
1580 dnl Detect the character set used by this host.
1581
1582 dnl At the moment, we just assume it's ISO-8859-1 (which is a
1583 dnl superset of ASCII containing the characters needed for French,
1584 dnl German, Spanish, Italian, and possibly others), but if were
1585 dnl *were* to support any host character sets other than ISO-8859-1,
1586 dnl here's where we'd detect it.
1587 AC_DEFINE(GDB_DEFAULT_HOST_CHARSET, "ISO-8859-1",
1588 [Define to be a string naming the default host character set.])
1589
1590 AM_ICONV
1591
1592 AC_OUTPUT(Makefile .gdbinit:gdbinit.in,
1593 [
1594 dnl Autoconf doesn't provide a mechanism for modifying definitions
1595 dnl provided by makefile fragments.
1596 dnl
1597
1598 changequote(,)dnl
1599 sed -e '/^DEPRECATED_TM_FILE[ ]*=/s,^DEPRECATED_TM_FILE[ ]*=[ ]*,&config/'"${gdb_target_cpu}"'/,
1600 /^XM_FILE[ ]*=/s,^XM_FILE[ ]*=[ ]*,&config/'"${gdb_host_cpu}"'/,
1601 /^NAT_FILE[ ]*=/s,^NAT_FILE[ ]*=[ ]*,&config/'"${gdb_host_cpu}"'/,' <Makefile >Makefile.tmp
1602 mv -f Makefile.tmp Makefile
1603 changequote([,])dnl
1604
1605
1606 case x$CONFIG_HEADERS in
1607 xconfig.h:config.in)
1608 echo > stamp-h ;;
1609 esac
1610 ],
1611 [
1612 gdb_host_cpu=$gdb_host_cpu
1613 gdb_target_cpu=$gdb_target_cpu
1614 nativefile=$nativefile
1615 ])
1616
1617 exit 0
This page took 0.070533 seconds and 4 git commands to generate.