1dnl Autoconf configure script for GDB, the GNU debugger.
2dnl Copyright (C) 1995-2021 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 3 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, see <http://www.gnu.org/licenses/>.
18
19dnl Process this file with autoconf to produce a configure script.
20
21AC_INIT
22AC_CONFIG_MACRO_DIRS([../config])
23AC_CONFIG_SRCDIR([main.c])
24AC_CONFIG_HEADERS(config.h:config.in, [echo > stamp-h])
25AM_MAINTAINER_MODE
26
27AC_PROG_CC
28AC_PROG_CXX
29
30AC_USE_SYSTEM_EXTENSIONS
31ACX_LARGEFILE
32AM_PROG_INSTALL_STRIP
33
34AC_CONFIG_AUX_DIR(..)
35
36# Set build, build_cpu, build_vendor and build_os.
37AC_CANONICAL_BUILD
38
39# Set host, host_cpu, host_vendor, and host_os.
40AC_CANONICAL_HOST
41
42# Set target, target_cpu, target_vendor, and target_os.
43AC_CANONICAL_TARGET
44
45ACX_NONCANONICAL_TARGET
46
47AC_ARG_PROGRAM
48
49# We require a C++11 compiler.  Check if one is available, and if
50# necessary, set CXX_DIALECT to some -std=xxx switch.
51AX_CXX_COMPILE_STDCXX(11, , mandatory)
52
53# Dependency checking.
54ZW_CREATE_DEPDIR
55ZW_PROG_COMPILER_DEPENDENCIES([CC])
56
57dnl List of object files and targets accumulated by configure.
58
59CONFIG_OBS=
60CONFIG_DEPS=
61CONFIG_SRCS=
62ENABLE_CFLAGS=
63
64CONFIG_ALL=
65CONFIG_CLEAN=
66CONFIG_INSTALL=
67CONFIG_UNINSTALL=
68
69dnl Set up for gettext.
70ZW_GNU_GETTEXT_SISTER_DIR
71
72localedir='${datadir}/locale'
73AC_SUBST(localedir)
74
75if test x"$USE_NLS" = xyes; then
76   CONFIG_ALL="$CONFIG_ALL all-po"
77   CONFIG_CLEAN="$CONFIG_CLEAN clean-po"
78   CONFIG_INSTALL="$CONFIG_INSTALL install-po"
79   CONFIG_UNINSTALL="$CONFIG_UNINSTALL uninstall-po"
80fi
81
82PACKAGE=gdb
83AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Name of this package. ])
84AC_SUBST(PACKAGE)
85
86# We never need to detect it in this sub-configure.
87# But preserve it for config.status --recheck.
88AC_ARG_VAR(MAKEINFO,
89  [Parent configure detects if it is of sufficient version.])
90AC_ARG_VAR(MAKEINFOFLAGS,
91  [Parameters for MAKEINFO.])
92
93MAKEINFO_EXTRA_FLAGS=""
94AC_CACHE_CHECK([whether $MAKEINFO supports @click], gdb_cv_have_makeinfo_click,
95  [echo '@clicksequence{a @click{} b}' >conftest.texinfo
96  if eval "$MAKEINFO conftest.texinfo >&5 2>&5"; then
97    gdb_cv_have_makeinfo_click=yes
98  else
99    gdb_cv_have_makeinfo_click=no
100  fi])
101if test x"$gdb_cv_have_makeinfo_click" = xyes; then
102  MAKEINFO_EXTRA_FLAGS="$MAKEINFO_EXTRA_FLAGS -DHAVE_MAKEINFO_CLICK"
103fi
104AC_SUBST(MAKEINFO_EXTRA_FLAGS)
105
106GDB_AC_WITH_DIR(DEBUGDIR, separate-debug-dir,
107    [look for global separate debug info in this path @<:@LIBDIR/debug@:>@],
108    [${libdir}/debug])
109
110# We can't pass paths as command line arguments.
111# Mingw32 tries to be clever and will convert the paths for us.
112# For example -DBINDIR="/usr/local/bin" passed on the command line may get
113# converted to -DBINDIR="E:/msys/mingw32/msys/1.0/local/bin".
114# This breaks GDB's relocatable path conversions since paths passed in
115# config.h would not get so translated, the path prefixes no longer match.
116AC_DEFINE_DIR(BINDIR, bindir, [Directory of programs.])
117
118# GDB's datadir relocation
119
120GDB_AC_WITH_DIR(GDB_DATADIR, gdb-datadir,
121    [look for global separate data files in this path @<:@DATADIR/gdb@:>@],
122    [${datadir}/gdb])
123
124AC_ARG_WITH(relocated-sources,
125AS_HELP_STRING([--with-relocated-sources=PATH], [automatically relocate this path for source files]),
126[reloc_srcdir="${withval}"
127 AC_DEFINE_DIR(RELOC_SRCDIR, reloc_srcdir,
128              [Relocated directory for source files. ])
129])
130
131AC_MSG_CHECKING([for default auto-load directory])
132AC_ARG_WITH(auto-load-dir,
133AS_HELP_STRING([--with-auto-load-dir=PATH],
134  [directories from which to load auto-loaded scripts @<:@$debugdir:$datadir/auto-load@:>@]),,
135  [with_auto_load_dir='$debugdir:$datadir/auto-load'])
136escape_dir=`echo $with_auto_load_dir | sed -e 's/[[$]]datadir\>/\\\\\\\\\\\\&/g' -e 's/[[$]]debugdir\>/\\\\\\\\\\\\&/g'`
137AC_DEFINE_DIR(AUTO_LOAD_DIR, escape_dir,
138	      [Directories from which to load auto-loaded scripts.])
139AC_MSG_RESULT([$with_auto_load_dir])
140
141AC_MSG_CHECKING([for default auto-load safe-path])
142AC_ARG_WITH(auto-load-safe-path,
143AS_HELP_STRING([--with-auto-load-safe-path=PATH],
144  [directories safe to hold auto-loaded files @<:@--with-auto-load-dir@:>@])
145AS_HELP_STRING([--without-auto-load-safe-path],
146               [do not restrict auto-loaded files locations]),
147    [if test "$with_auto_load_safe_path" = "no"; then
148     with_auto_load_safe_path="/"
149     fi],
150[with_auto_load_safe_path="$with_auto_load_dir"])
151escape_dir=`echo $with_auto_load_safe_path | sed -e 's/[[$]]datadir\>/\\\\\\\\\\\\&/g' -e 's/[[$]]debugdir\>/\\\\\\\\\\\\&/g'`
152AC_DEFINE_DIR(AUTO_LOAD_SAFE_PATH, escape_dir,
153	      [Directories safe to hold auto-loaded files.])
154AC_MSG_RESULT([$with_auto_load_safe_path])
155
156AC_CONFIG_SUBDIRS(testsuite)
157
158# Check whether to support alternative target configurations
159AC_ARG_ENABLE(targets,
160AS_HELP_STRING([--enable-targets=TARGETS], [alternative target configurations]),
161[case "${enableval}" in
162  yes | "") AC_MSG_ERROR(enable-targets option must specify target names or 'all')
163            ;;
164  no)       enable_targets= ;;
165  *)        enable_targets=$enableval ;;
166esac])
167
168# Check whether to enable 64-bit support on 32-bit hosts
169AC_ARG_ENABLE(64-bit-bfd,
170AS_HELP_STRING([--enable-64-bit-bfd], [64-bit support (on hosts with narrower word sizes)]),
171[case "${enableval}" in
172  yes)  want64=true  ;;
173  no)   want64=false ;;
174  *)    AC_MSG_ERROR(bad value ${enableval} for 64-bit-bfd option) ;;
175esac],[want64=false])dnl
176
177# Provide defaults for some variables set by the per-host and per-target
178# configuration.
179gdb_host_obs=posix-hdep.o
180
181if test "${target}" = "${host}"; then
182  gdb_native=yes
183else
184  gdb_native=no
185fi
186
187. $srcdir/configure.host
188
189# Accumulate some settings from configure.tgt over all enabled targets
190
191TARGET_OBS=
192all_targets=
193HAVE_NATIVE_GCORE_TARGET=
194
195for targ_alias in `echo $target_alias $enable_targets | sed 's/,/ /g'`
196do
197  if test "$targ_alias" = "all"; then
198    all_targets=true
199  else
200    # Canonicalize the secondary target names.
201    result=`$ac_config_sub $targ_alias 2>/dev/null`
202    if test -n "$result"; then
203        targ=$result
204    else
205        targ=$targ_alias
206    fi
207
208    . ${srcdir}/configure.tgt
209
210    AS_IF([test -z "${gdb_target_obs}"],
211      [AC_MSG_ERROR([configuration ${targ} is unsupported.])])
212
213    # Target-specific object files
214    for i in ${gdb_target_obs}; do
215        case " $TARGET_OBS " in
216        *" ${i} "*) ;;
217        *)
218          TARGET_OBS="$TARGET_OBS ${i}"
219          ;;
220        esac
221    done
222
223    # Check whether this target needs 64-bit CORE_ADDR
224    if test x${want64} = xfalse; then
225      . ${srcdir}/../bfd/config.bfd
226    fi
227
228    # Check whether this target is native and supports gcore.
229    if test $gdb_native = yes -a "$targ_alias" = "$target_alias" \
230       && $gdb_have_gcore; then
231      HAVE_NATIVE_GCORE_TARGET=1
232    fi
233  fi
234done
235
236if test x${all_targets} = xtrue; then
237
238  # We want all 64-bit targets if we either:
239  #  - run on a 64-bit host  or
240  #  - already require 64-bit support for some other target  or
241  #  - the --enable-64-bit-bfd option was supplied
242  # Otherwise we only support all 32-bit targets.
243  #
244  # NOTE: This test must be in sync with the corresponding
245  #       tests in BFD!
246
247  if test x${want64} = xfalse; then
248    AC_CHECK_SIZEOF(long)
249    if test "x${ac_cv_sizeof_long}" = "x8"; then
250      want64=true
251    fi
252  fi
253  if test x${want64} = xtrue; then
254    TARGET_OBS='$(ALL_TARGET_OBS) $(ALL_64_TARGET_OBS)'
255  else
256    TARGET_OBS='$(ALL_TARGET_OBS)'
257  fi
258fi
259
260AC_SUBST(TARGET_OBS)
261AC_SUBST(HAVE_NATIVE_GCORE_TARGET)
262
263# For other settings, only the main target counts.
264gdb_sim=
265gdb_osabi=
266targ=$target; . ${srcdir}/configure.tgt
267
268# Fetch the default architecture and default target vector from BFD.
269targ=$target; . $srcdir/../bfd/config.bfd
270
271# We only want the first architecture, so strip off the others if
272# there is more than one.
273targ_archs=`echo $targ_archs | sed 's/ .*//'`
274
275if test "x$targ_archs" != x; then
276  AC_DEFINE_UNQUOTED(DEFAULT_BFD_ARCH, $targ_archs,
277    [Define to BFD's default architecture. ])
278fi
279if test "x$targ_defvec" != x; then
280  AC_DEFINE_UNQUOTED(DEFAULT_BFD_VEC, $targ_defvec,
281    [Define to BFD's default target vector. ])
282fi
283
284# Enable MI.
285AC_ARG_ENABLE(gdbmi,
286AS_HELP_STRING([--disable-gdbmi], [disable machine-interface (MI)]),
287  [case $enableval in
288    yes | no)
289      ;;
290    *)
291      AC_MSG_ERROR([bad value $enableval for --enable-gdbmi]) ;;
292  esac],
293  [enable_gdbmi=yes])
294if test x"$enable_gdbmi" = xyes; then
295  if test -d "$srcdir/mi"; then
296    CONFIG_OBS="$CONFIG_OBS \$(SUBDIR_MI_OBS)"
297    CONFIG_DEPS="$CONFIG_DEPS \$(SUBDIR_MI_DEPS)"
298    CONFIG_SRCS="$CONFIG_SRCS \$(SUBDIR_MI_SRCS)"
299    ENABLE_CFLAGS="$ENABLE_CFLAGS \$(SUBDIR_MI_CFLAGS)"
300  fi
301fi
302
303# Enable TUI.
304AC_ARG_ENABLE(tui,
305AS_HELP_STRING([--enable-tui], [enable full-screen terminal user interface (TUI)]),
306  [case $enableval in
307    yes | no | auto)
308      ;;
309    *)
310      AC_MSG_ERROR([bad value $enableval for --enable-tui]) ;;
311  esac],enable_tui=auto)
312
313# Enable gdbtk.
314AC_ARG_ENABLE(gdbtk,
315AS_HELP_STRING([--enable-gdbtk], [enable gdbtk graphical user interface (GUI)]),
316  [case $enableval in
317    yes | no)
318      ;;
319    *)
320      AC_MSG_ERROR([bad value $enableval for --enable-gdbtk]) ;;
321  esac],
322  [if test -d "$srcdir/gdbtk"; then
323    enable_gdbtk=yes
324  else
325    enable_gdbtk=no
326  fi])
327# We unconditionally disable gdbtk tests on selected platforms.
328case $host_os in
329  go32* | windows*)
330    AC_MSG_WARN([gdbtk isn't supported on $host; disabling])
331    enable_gdbtk=no ;;
332esac
333
334# Handle optional debuginfod support
335AC_DEBUGINFOD
336
337# Libunwind support for ia64.
338AC_ARG_WITH(libunwind-ia64,
339AS_HELP_STRING([--with-libunwind-ia64],
340	       [use libunwind frame unwinding for ia64 targets]),,
341	    [with_libunwind_ia64=auto])
342
343# Backward compatibility option.
344if test "${with_libunwind+set}" = set; then
345  if test x"$with_libunwind_ia64" != xauto; then
346    AC_MSG_ERROR(
347      [option --with-libunwind is deprecated, use --with-libunwind-ia64])
348  fi
349  AC_MSG_WARN([option --with-libunwind is deprecated, use --with-libunwind-ia64])
350  with_libunwind_ia64="$with_libunwind"
351fi
352
353case "$with_libunwind_ia64" in
354  yes | no)
355    ;;
356  auto)
357    AC_CHECK_HEADERS(libunwind-ia64.h)
358    with_libunwind_ia64=$ac_cv_header_libunwind_ia64_h
359    ;;
360  *)
361    AC_MSG_ERROR(
362      [bad value $with_libunwind_ia64 for GDB --with-libunwind-ia64 option])
363    ;;
364esac
365
366if test x"$with_libunwind_ia64" = xyes; then
367  AC_CHECK_HEADERS(libunwind-ia64.h)
368  if test x"$ac_cv_header_libunwind_ia64_h" != xyes; then
369    AC_MSG_ERROR([GDB option --with-libunwind-ia64 requires libunwind-ia64.h])
370  fi
371  CONFIG_OBS="$CONFIG_OBS ia64-libunwind-tdep.o"
372  CONFIG_DEPS="$CONFIG_DEPS ia64-libunwind-tdep.o"
373  CONFIG_SRCS="$CONFIG_SRCS ia64-libunwind-tdep.c"
374fi
375
376opt_curses=no
377AC_ARG_WITH(curses, AS_HELP_STRING([--with-curses], [use the curses library instead of the termcap library]), opt_curses=$withval)
378
379prefer_curses=no
380if test "$opt_curses" = "yes"; then
381  prefer_curses=yes
382fi
383
384# Profiling support.
385AC_ARG_ENABLE(profiling,
386AS_HELP_STRING([--enable-profiling], [enable profiling of GDB]),
387  [case $enableval in
388    yes | no)
389      ;;
390    *)
391      AC_MSG_ERROR([bad value $enableval for --enable-profile]) ;;
392  esac],
393 [enable_profiling=no])
394
395AC_CHECK_FUNCS(monstartup _mcleanup)
396AC_CACHE_CHECK(
397  [for _etext],
398  [ac_cv_var__etext],
399  [AC_LINK_IFELSE(
400     [AC_LANG_PROGRAM(
401	[#include <stdlib.h>
402	 extern char _etext;],
403	[free (&_etext);]
404      )],
405     [ac_cv_var__etext=yes],
406     [ac_cv_var__etext=no]
407   )]
408)
409if test "$ac_cv_var__etext" = yes; then
410  AC_DEFINE(HAVE__ETEXT, 1,
411            [Define to 1 if your system has the _etext variable. ])
412fi
413AC_CACHE_CHECK(
414  [for etext],
415  [ac_cv_var_etext],
416  [AC_LINK_IFELSE(
417     [AC_LANG_PROGRAM(
418	[#include <stdlib.h>
419	 extern char etext;],
420	[free (&etext);]
421      )],
422     [ac_cv_var_etext=yes],
423     [ac_cv_var_etext=no]
424   )]
425)
426if test "$ac_cv_var_etext" = yes; then
427  AC_DEFINE(HAVE_ETEXT, 1,
428            [Define to 1 if your system has the etext variable. ])
429fi
430if test "$enable_profiling" = yes ; then
431  if test "$ac_cv_func_monstartup" = no || test "$ac_cv_func__mcleanup" = no; then
432    AC_MSG_ERROR(--enable-profiling requires monstartup and _mcleanup)
433  fi
434  PROFILE_CFLAGS=-pg
435  OLD_CFLAGS="$CFLAGS"
436  CFLAGS="$CFLAGS $PROFILE_CFLAGS"
437
438  AC_CACHE_CHECK(
439    [whether $CC supports -pg],
440    [ac_cv_cc_supports_pg],
441    [AC_COMPILE_IFELSE(
442       [AC_LANG_PROGRAM([], [int x;])],
443       [ac_cv_cc_supports_pg=yes],
444       [ac_cv_cc_supports_pg=no]
445     )]
446  )
447
448  if test "$ac_cv_cc_supports_pg" = no; then
449    AC_MSG_ERROR(--enable-profiling requires a compiler which supports -pg)
450  fi
451
452  CFLAGS="$OLD_CFLAGS"
453fi
454
455CODESIGN_CERT=
456AC_ARG_ENABLE([codesign],
457  AS_HELP_STRING([--enable-codesign=CERT],
458                 [sign gdb with 'codesign -s CERT']),
459  [CODESIGN_CERT=$enableval])
460AC_SUBST([CODESIGN_CERT])
461
462ACX_PKGVERSION([GDB])
463ACX_BUGURL([https://www.gnu.org/software/gdb/bugs/])
464AC_DEFINE_UNQUOTED([PKGVERSION], ["$PKGVERSION"], [Additional package description])
465AC_DEFINE_UNQUOTED([REPORT_BUGS_TO], ["$REPORT_BUGS_TO"], [Bug reporting address])
466
467# --------------------- #
468# Checks for programs.  #
469# --------------------- #
470
471AC_PROG_AWK
472AC_PROG_INSTALL
473AC_PROG_LN_S
474AC_PROG_RANLIB
475AC_PROG_YACC
476
477AC_CHECK_TOOL(AR, ar)
478AC_CHECK_TOOL(DLLTOOL, dlltool)
479AC_CHECK_TOOL(WINDRES, windres)
480
481case $host_os in
482  gnu*)
483    # Needed for GNU Hurd hosts.
484    AC_CHECK_TOOL(MIG, mig)
485    if test x"$MIG" = x; then
486      AC_MSG_ERROR([MIG not found but required for $host hosts])
487    fi
488    ;;
489esac
490
491# ---------------------- #
492# Checks for libraries.  #
493# ---------------------- #
494
495# We might need to link with -lm; most simulators need it.
496AC_CHECK_LIB(m, main)
497
498# Some systems (e.g. Solaris) have `gethostbyname' in libnsl.
499AC_SEARCH_LIBS(gethostbyname, nsl)
500
501# Some systems (e.g. Solaris) have `socketpair' in libsocket.
502AC_SEARCH_LIBS(socketpair, socket)
503
504# Link in zlib if we can.  This allows us to read compressed debug sections.
505AM_ZLIB
506
507AM_ICONV
508
509# GDB may fork/exec the iconv program to get the list of supported character
510# sets.  Allow the user to specify where to find it.
511# There are several factors affecting the choice of option name:
512# - There is already --with-libiconv-prefix but we can't use it, it specifies
513#   the build-time location of libiconv files.
514# - The program we need to find is iconv, which comes with glibc.  The user
515#   doesn't necessarily have libiconv installed.  Therefore naming this
516#   --with-libiconv-foo feels wrong.
517# - We want the path to be relocatable, but GDB_AC_DEFINE_RELOCATABLE is
518#   defined to work on directories not files (though it really doesn't know
519#   the difference).
520# - Calling this --with-iconv-prefix is perceived to cause too much confusion
521#   with --with-libiconv-prefix.
522# Putting these together is why the option name is --with-iconv-bin.
523
524AC_ARG_WITH(iconv-bin,
525AS_HELP_STRING([--with-iconv-bin=PATH], [specify where to find the iconv program]),
526[iconv_bin="${withval}"
527 AC_DEFINE_UNQUOTED([ICONV_BIN], ["${iconv_bin}"],
528                    [Path of directory of iconv program.])
529 GDB_AC_DEFINE_RELOCATABLE(ICONV_BIN, iconv, ${iconv_bin})
530])
531
532# For the TUI, we need enhanced curses functionality.
533if test x"$enable_tui" != xno; then
534  prefer_curses=yes
535fi
536
537curses_found=no
538if test x"$prefer_curses" = xyes; then
539  # FIXME: kettenis/20040905: We prefer ncurses over the vendor-supplied
540  # curses library because the latter might not provide all the
541  # functionality we need.  However, this leads to problems on systems
542  # where the linker searches /usr/local/lib, but the compiler doesn't
543  # search /usr/local/include, if ncurses is installed in /usr/local.  A
544  # default installation of ncurses on alpha*-dec-osf* will lead to such
545  # a situation.
546  AC_SEARCH_LIBS(waddstr, [ncursesw ncurses cursesX curses])
547
548  if test "$ac_cv_search_waddstr" != no; then
549    curses_found=yes
550  fi
551fi
552
553# Check whether we should enable the TUI, but only do so if we really
554# can.
555if test x"$enable_tui" != xno; then
556  if test -d "$srcdir/tui"; then
557    if test "$curses_found" != no; then
558      CONFIG_OBS="$CONFIG_OBS \$(SUBDIR_TUI_OBS)"
559      CONFIG_DEPS="$CONFIG_DEPS \$(SUBDIR_TUI_DEPS)"
560      CONFIG_SRCS="$CONFIG_SRCS \$(SUBDIR_TUI_SRCS)"
561      ENABLE_CFLAGS="$ENABLE_CFLAGS \$(SUBDIR_TUI_CFLAGS)"
562    else
563      if test x"$enable_tui" = xyes; then
564	AC_MSG_ERROR([no enhanced curses library found; disable TUI])
565      else
566	AC_MSG_WARN([no enhanced curses library found; disabling TUI])
567      fi
568    fi
569  fi
570fi
571
572# Since GDB uses Readline, we need termcap functionality.  In many
573# cases this will be provided by the curses library, but some systems
574# have a separate termcap library, or no curses library at all.
575
576case $host_os in
577  cygwin*)
578    if test -d "$srcdir/libtermcap"; then
579      LIBS="../libtermcap/libtermcap.a $LIBS"
580      ac_cv_search_tgetent="../libtermcap/libtermcap.a"
581    fi ;;
582  go32* | *djgpp*)
583    ac_cv_search_tgetent="none required"
584    ;;
585esac
586
587# These are the libraries checked by Readline.
588AC_SEARCH_LIBS(tgetent, [termcap tinfow tinfo curses ncursesw ncurses])
589
590if test "$ac_cv_search_tgetent" = no; then
591  CONFIG_OBS="$CONFIG_OBS stub-termcap.o"
592fi
593
594AC_ARG_WITH([system-readline],
595  [AS_HELP_STRING([--with-system-readline],
596                  [use installed readline library])])
597
598if test "$with_system_readline" = yes; then
599  AC_CACHE_CHECK(
600    [whether system readline is new enough],
601    [gdb_cv_readline_ok],
602    [AC_COMPILE_IFELSE(
603       [AC_LANG_PROGRAM(
604	  [#include <stdio.h>
605	   #include <readline/readline.h>],
606	  [#if RL_VERSION_MAJOR < 7
607	   # error "readline version 7 required"
608	   #endif]
609	)],
610       [gdb_cv_readline_ok=yes],
611       [gdb_cv_readline_ok=no]
612     )]
613  )
614  if test "$gdb_cv_readline_ok" != yes; then
615    AC_MSG_ERROR([system readline is not new enough])
616  fi
617
618  READLINE=-lreadline
619  READLINE_DEPS=
620  READLINE_CFLAGS=
621  READLINE_TEXI_INCFLAG=
622else
623  READLINE='$(READLINE_DIR)/libreadline.a'
624  READLINE_DEPS='$(READLINE)'
625  READLINE_CFLAGS='-I$(READLINE_SRC)/..'
626  READLINE_TEXI_INCFLAG='-I $(READLINE_DIR)'
627fi
628AC_SUBST(READLINE)
629AC_SUBST(READLINE_DEPS)
630AC_SUBST(READLINE_CFLAGS)
631AC_SUBST(READLINE_TEXI_INCFLAG)
632
633# Generate jit-reader.h
634
635# This is typedeffed to GDB_CORE_ADDR in jit-reader.h
636TARGET_PTR=
637
638AC_CHECK_SIZEOF(unsigned long long)
639AC_CHECK_SIZEOF(unsigned long)
640AC_CHECK_SIZEOF(unsigned __int128)
641
642if test "x${ac_cv_sizeof_unsigned_long}" = "x8"; then
643  TARGET_PTR="unsigned long"
644elif test "x${ac_cv_sizeof_unsigned_long_long}" = "x8"; then
645  TARGET_PTR="unsigned long long"
646elif test "x${ac_cv_sizeof_unsigned___int128}" = "x16"; then
647  TARGET_PTR="unsigned __int128"
648else
649  TARGET_PTR="unsigned long"
650fi
651
652AC_SUBST(TARGET_PTR)
653AC_CONFIG_FILES([jit-reader.h:jit-reader.in])
654
655AC_SEARCH_LIBS(dlopen, dl)
656
657GDB_AC_WITH_DIR([JIT_READER_DIR], [jit-reader-dir],
658                [directory to load the JIT readers from],
659                [${libdir}/gdb])
660
661AC_ARG_WITH(expat,
662  AS_HELP_STRING([--with-expat], [include expat support (auto/yes/no)]),
663  [], [with_expat=auto])
664AC_MSG_CHECKING([whether to use expat])
665AC_MSG_RESULT([$with_expat])
666
667if test "${with_expat}" = no; then
668  AC_MSG_WARN([expat support disabled; some features may be unavailable.])
669  HAVE_LIBEXPAT=no
670else
671  AC_LIB_HAVE_LINKFLAGS([expat], [], [#include "expat.h"],
672			[XML_Parser p = XML_ParserCreate (0);])
673  if test "$HAVE_LIBEXPAT" != yes; then
674    if test "$with_expat" = yes; then
675      AC_MSG_ERROR([expat is missing or unusable])
676    else
677      AC_MSG_WARN([expat is missing or unusable; some features may be unavailable.])
678    fi
679  else
680    save_LIBS=$LIBS
681    LIBS="$LIBS $LIBEXPAT"
682    AC_CHECK_FUNCS(XML_StopParser)
683    LIBS=$save_LIBS
684  fi
685fi
686
687# Verify that we have a usable GMP library.
688AC_LIB_HAVE_LINKFLAGS([gmp], [], [#include <gmp.h>],
689                      [mpz_t n;
690                       mpz_init (n);])
691if test "$HAVE_LIBGMP" != yes; then
692  AC_MSG_ERROR([GMP is missing or unusable])
693fi
694
695AC_ARG_WITH(mpfr,
696  AS_HELP_STRING([--with-mpfr], [include MPFR support (auto/yes/no)]),
697  [], [with_mpfr=auto])
698AC_MSG_CHECKING([whether to use MPFR])
699AC_MSG_RESULT([$with_mpfr])
700
701if test "${with_mpfr}" = no; then
702  AC_MSG_WARN([MPFR support disabled; some features may be unavailable.])
703  HAVE_LIBMPFR=no
704else
705  AC_LIB_HAVE_LINKFLAGS([mpfr], [gmp], [#include <mpfr.h>],
706			[mpfr_exp_t exp; mpfr_t x;
707			 mpfr_frexp (&exp, x, x, MPFR_RNDN);])
708  if test "$HAVE_LIBMPFR" != yes; then
709    if test "$with_mpfr" = yes; then
710      AC_MSG_ERROR([MPFR is missing or unusable])
711    else
712      AC_MSG_WARN([MPFR is missing or unusable; some features may be unavailable.])
713    fi
714  fi
715fi
716
717# --------------------- #
718# Check for libpython.  #
719# --------------------- #
720
721dnl Utility to simplify finding libpython.
722dnl $1 = the shell variable to assign the result to
723dnl      If libpython is found we store $version here.
724dnl $2 = additional flags to add to CPPFLAGS
725dnl $3 = additional flags to add to LIBS
726
727AC_DEFUN([AC_TRY_LIBPYTHON],
728[
729  define([have_libpython_var],$1)
730  new_CPPFLAGS=$2
731  new_LIBS=$3
732  AC_MSG_CHECKING([for python])
733  save_CPPFLAGS=$CPPFLAGS
734  save_LIBS=$LIBS
735  CPPFLAGS="$CPPFLAGS $new_CPPFLAGS"
736  LIBS="$new_LIBS $LIBS"
737  found_usable_python=no
738  AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include "Python.h"]],
739                                 [[Py_Initialize ();]])],
740                 [have_libpython_var=yes
741                  found_usable_python=yes
742                  PYTHON_CPPFLAGS=$new_CPPFLAGS
743                  PYTHON_LIBS=$new_LIBS])
744  CPPFLAGS=$save_CPPFLAGS
745  LIBS=$save_LIBS
746  AC_MSG_RESULT([${found_usable_python}])
747])
748
749dnl There are several different values for --with-python:
750dnl
751dnl no -   Don't include python support.
752dnl yes -  Include python support, error if it's missing.
753dnl        If we find python in $PATH, use it to fetch configure options,
754dnl        otherwise assume the compiler can find it with no help from us.
755dnl        Python 2.7 and 2.6 are tried in turn.
756dnl auto - Same as "yes", but if python is missing from the system,
757dnl        fall back to "no".
758dnl /path/to/python/exec-prefix -
759dnl        Use the python located in this directory.
760dnl        If /path/to/python/exec-prefix/bin/python exists, use it to find
761dnl        the compilation parameters.  Otherwise use
762dnl        -I/path/to/python/exec-prefix/include,
763dnl        -L/path/to/python/exec-prefix/lib.
764dnl        Python 2.7 and 2.6 are tried in turn.
765dnl        NOTE: This case is historical.  It is what was done for 7.0/7.1
766dnl        but is deprecated.
767dnl /path/to/python/executable -
768dnl        Run python-config.py with this version of python to fetch the
769dnl        compilation parameters.
770dnl        NOTE: This needn't be the real python executable.
771dnl        In a cross-compilation scenario (build != host), this could be
772dnl        a shell script that provides what python-config.py provides for
773dnl        --ldflags, --includes, --exec-prefix.
774dnl python-executable -
775dnl        Find python-executable in $PATH, and then handle the same as
776dnl        /path/to/python/executable.
777dnl
778dnl If a python program is specified, it is used to run python-config.py and
779dnl is passed --ldflags, --includes, --exec-prefix.
780
781AC_ARG_WITH(python,
782  AS_HELP_STRING([--with-python@<:@=PYTHON@:>@], [include python support (auto/yes/no/<python-program>)]),
783  [], [with_python=auto])
784AC_MSG_CHECKING([whether to use python])
785AC_MSG_RESULT([$with_python])
786
787if test "${with_python}" = no; then
788  AC_MSG_WARN([python support disabled; some features may be unavailable.])
789  have_libpython=no
790else
791  case "${with_python}" in
792  [[\\/]]* | ?:[[\\/]]*)
793    if test -d "${with_python}"; then
794      # Assume the python binary is ${with_python}/bin/python.
795      python_prog="${with_python}/bin/python"
796      python_prefix=
797      # If python does not exit ${with_python}/bin, then try in
798      # ${with_python}.  On Windows/MinGW, this is where the Python
799      # executable is.
800      if test ! -x "${python_prog}"; then
801        python_prog="${with_python}/python"
802        python_prefix=
803      fi
804      if test ! -x "${python_prog}"; then
805        # Fall back to gdb 7.0/7.1 behaviour.
806        python_prog=missing
807        python_prefix=${with_python}
808      fi
809    elif test -x "${with_python}"; then
810      # While we can't run python compiled for $host (unless host == build),
811      # the user could write a script that provides the needed information,
812      # so we support that.
813      python_prog=${with_python}
814      python_prefix=
815    else
816      AC_MSG_ERROR(invalid value for --with-python)
817    fi
818    ;;
819  */*)
820    # Disallow --with-python=foo/bar.
821    AC_MSG_ERROR(invalid value for --with-python)
822    ;;
823  *)
824    # The user has either specified auto, yes, or the name of the python
825    # program assumed to be in $PATH.
826    python_prefix=
827    case "${with_python}" in
828    yes | auto)
829      if test "${build}" = "${host}"; then
830        AC_PATH_PROG(python_prog_path, python, missing)
831        if test "${python_prog_path}" = missing; then
832          python_prog=missing
833        else
834          python_prog=${python_prog_path}
835        fi
836      else
837        # Not much we can do except assume the cross-compiler will find the
838        # right files.
839        python_prog=missing
840      fi
841      ;;
842    *)
843      # While we can't run python compiled for $host (unless host == build),
844      # the user could write a script that provides the needed information,
845      # so we support that.
846      python_prog="${with_python}"
847      AC_PATH_PROG(python_prog_path, ${python_prog}, missing)
848      if test "${python_prog_path}" = missing; then
849	AC_MSG_ERROR(unable to find python program ${python_prog})
850      fi
851      ;;
852    esac
853  esac
854
855  if test "${python_prog}" != missing; then
856    # We have a python program to use, but it may be too old.
857    # Don't flag an error for --with-python=auto (the default).
858    have_python_config=yes
859    python_includes=`${python_prog} ${srcdir}/python/python-config.py --includes`
860    if test $? != 0; then
861      have_python_config=failed
862      if test "${with_python}" != auto; then
863	AC_MSG_ERROR(failure running python-config --includes)
864      fi
865    fi
866    python_libs=`${python_prog} ${srcdir}/python/python-config.py --ldflags`
867    if test $? != 0; then
868      have_python_config=failed
869      if test "${with_python}" != auto; then
870	AC_MSG_ERROR(failure running python-config --ldflags)
871      fi
872    fi
873    python_prefix=`${python_prog} ${srcdir}/python/python-config.py --exec-prefix`
874    if test $? != 0; then
875      have_python_config=failed
876      if test "${with_python}" != auto; then
877	AC_MSG_ERROR(failure running python-config --exec-prefix)
878      fi
879    fi
880  else
881    # We do not have a python executable we can use to determine where
882    # to find the Python headers and libs.  We cannot guess the include
883    # path from the python_prefix either, because that include path
884    # depends on the Python version.  So, there is nothing much we can
885    # do except assume that the compiler will be able to find those files.
886    python_includes=
887    python_libs=
888    have_python_config=no
889  fi
890
891  # If we have python-config, only try the configuration it provides.
892  # Otherwise fallback on the old way of trying different versions of
893  # python in turn.
894
895  have_libpython=no
896  if test "${have_python_config}" = yes; then
897    AC_TRY_LIBPYTHON(have_libpython,
898                     ${python_includes}, ${python_libs})
899  elif test "${have_python_config}" != failed; then
900    if test "${have_libpython}" = no; then
901      AC_TRY_LIBPYTHON(have_libpython,
902                       ${python_includes}, "-lpython2.7 ${python_libs}")
903    fi
904    if test "${have_libpython}" = no; then
905      AC_TRY_LIBPYTHON(have_libpython,
906                       ${python_includes}, "-lpython2.6 ${python_libs}")
907    fi
908  fi
909
910  if test "${have_libpython}" = no; then
911    case "${with_python}" in
912    yes)
913      AC_MSG_ERROR([python is missing or unusable])
914      ;;
915    auto)
916      AC_MSG_WARN([python is missing or unusable; some features may be unavailable.])
917      ;;
918    *)
919      AC_MSG_ERROR([no usable python found at ${with_python}])
920      ;;
921    esac
922  else
923    if test -n "${python_prefix}"; then
924      AC_DEFINE_UNQUOTED(WITH_PYTHON_PATH, "${python_prefix}",
925                         [Define if --with-python provides a path, either directly or via python-config.py --exec-prefix.])
926      GDB_AC_DEFINE_RELOCATABLE(PYTHON_PATH, python, ${python_prefix})
927    fi
928  fi
929fi
930
931dnl Use --with-python-libdir to control where GDB looks for the Python
932dnl libraries.
933dnl
934dnl If this is not given then the default will be based on the value
935dnl passed to --with-python, which is in the python_prefix variable.
936dnl If the --with-python option wasn't given then the default value in
937dnl python_prefix is based on running the 'gdb/python/python-config
938dnl --exec-prefix' script.
939AC_ARG_WITH(python-libdir,
940  AS_HELP_STRING([--with-python-libdir@<:@=DIR@:>@], [search for python's libraries in DIR]),
941  [],[
942    # If no python libdir is specified then select one based on
943    # python's prefix path.
944    if test -n "${python_prefix}"; then
945      with_python_libdir=${python_prefix}/lib
946    fi
947  ])
948
949if test "${have_libpython}" != no; then
950  AC_DEFINE(HAVE_PYTHON, 1, [Define if Python interpreter is being linked in.])
951  CONFIG_OBS="$CONFIG_OBS \$(SUBDIR_PYTHON_OBS)"
952  CONFIG_DEPS="$CONFIG_DEPS \$(SUBDIR_PYTHON_DEPS)"
953  CONFIG_SRCS="$CONFIG_SRCS \$(SUBDIR_PYTHON_SRCS)"
954  CONFIG_INSTALL="$CONFIG_INSTALL install-python"
955  ENABLE_CFLAGS="$ENABLE_CFLAGS \$(SUBDIR_PYTHON_CFLAGS)"
956
957  if test -n "${with_python_libdir}"; then
958    AC_DEFINE_UNQUOTED(WITH_PYTHON_LIBDIR, "${with_python_libdir}",
959		       [Directory containing Python's standard libraries from --with-python-libdir.])
960    GDB_AC_DEFINE_RELOCATABLE(PYTHON_LIBDIR, [python lib], ${with_python_libdir})
961  fi
962
963  # Flags needed to compile Python code (taken from python-config --cflags).
964  # We cannot call python-config directly because it will output whatever was
965  # used when compiling the Python interpreter itself, including flags which
966  # would make the python-related objects be compiled differently from the
967  # rest of GDB (e.g., -O2 and -fPIC).
968  if test "${GCC}" = yes; then
969    tentative_python_cflags="-fno-strict-aliasing -fwrapv"
970    # Python headers recommend -DNDEBUG, but it's unclear if that just
971    # refers to building Python itself.  In release mode, though, it
972    # doesn't hurt for the Python code in gdb to follow.
973    $development || tentative_python_cflags="$tentative_python_cflags -DNDEBUG"
974  fi
975
976  if test "x${tentative_python_cflags}" != x; then
977    AC_MSG_CHECKING(compiler flags for python code)
978    for flag in ${tentative_python_cflags}; do
979      # Check that the compiler accepts it
980      saved_CFLAGS="$CFLAGS"
981      CFLAGS="$CFLAGS $flag"
982      AC_COMPILE_IFELSE(
983	[AC_LANG_PROGRAM([], [])],
984	[PYTHON_CFLAGS="${PYTHON_CFLAGS} $flag"],
985	[]
986      )
987      CFLAGS="$saved_CFLAGS"
988    done
989    AC_MSG_RESULT(${PYTHON_CFLAGS})
990  fi
991
992  # On x64 Windows, Python's include headers, and pyconfig.h in
993  # particular, rely on MS_WIN64 macro to detect that it's a 64bit
994  # version of Windows.  Unfortunately, MS_WIN64 is only defined if
995  # _MSC_VER, a Microsoft-specific macro, is defined.  So, when
996  # building on x64 Windows with GCC, we define MS_WIN64 ourselves.
997  # The issue was reported to the Python community, but still isn't
998  # solved as of 2012-10-02 (http://bugs.python.org/issue4709).
999
1000  case "$gdb_host" in
1001    mingw64)
1002           if test "${GCC}" = yes; then
1003             CPPFLAGS="$CPPFLAGS -DMS_WIN64"
1004           fi
1005           ;;
1006  esac
1007else
1008  # Even if Python support is not compiled in, we need to have this file
1009  # included so that the "python" command, et.al., still exists.
1010  CONFIG_OBS="$CONFIG_OBS python/python.o"
1011  CONFIG_SRCS="$CONFIG_SRCS python/python.c"
1012fi
1013
1014# Work around Python http://bugs.python.org/issue10112.  See also
1015# http://bugs.python.org/issue11410, otherwise -Wl,--dynamic-list has
1016# no effect.  Note that the only test after this that uses Python is
1017# the -rdynamic/-Wl,--dynamic-list test, and we do want that one to be
1018# run without -export-dynamic too.
1019PYTHON_LIBS=`echo $PYTHON_LIBS | sed -e 's/-Xlinker -export-dynamic//'`
1020
1021AC_SUBST(PYTHON_CFLAGS)
1022AC_SUBST(PYTHON_CPPFLAGS)
1023AC_SUBST(PYTHON_LIBS)
1024AM_CONDITIONAL(HAVE_PYTHON, test "${have_libpython}" != no)
1025
1026# -------------------- #
1027# Check for libguile.  #
1028# -------------------- #
1029
1030dnl Utility to simplify finding libguile.
1031dnl $1 = pkg-config-program
1032dnl $2 = space-separate list of guile versions to try
1033dnl $3 = yes|no, indicating whether to flag errors or ignore them
1034dnl $4 = the shell variable to assign the result to
1035dnl      If libguile is found we store "yes" here.
1036
1037AC_DEFUN([AC_TRY_LIBGUILE],
1038[
1039  pkg_config=$1
1040  guile_version_list=$2
1041  flag_errors=$3
1042  define([have_libguile_var],$4)
1043  found_usable_guile=checking
1044  AC_MSG_CHECKING([for usable guile from ${pkg_config}])
1045  for guile_version in ${guile_version_list}; do
1046    ${pkg_config} --exists ${guile_version} 2>/dev/null
1047    if test $? != 0; then
1048      continue
1049    fi
1050    dnl pkg-config says the package exists, so if we get an error now,
1051    dnl that's bad.
1052    new_CPPFLAGS=`${pkg_config} --cflags ${guile_version}`
1053    if test $? != 0; then
1054      AC_MSG_ERROR([failure running pkg-config --cflags ${guile_version}])
1055    fi
1056    new_LIBS=`${pkg_config} --libs ${guile_version}`
1057    if test $? != 0; then
1058      AC_MSG_ERROR([failure running pkg-config --libs ${guile_version}])
1059    fi
1060    dnl If we get this far, great.
1061    found_usable_guile=${guile_version}
1062    break
1063  done
1064  if test "${found_usable_guile}" = "checking"; then
1065    if test "${flag_errors}" = "yes"; then
1066      AC_MSG_ERROR([unable to find usable guile version from "${guile_version_list}"])
1067    else
1068      found_usable_guile=no
1069    fi
1070  fi
1071  dnl One final sanity check.
1072  dnl The user could have said --with-guile=python-2.7.
1073  if test "${found_usable_guile}" != no; then
1074    save_CPPFLAGS=$CPPFLAGS
1075    save_LIBS=$LIBS
1076    CPPFLAGS="$CPPFLAGS $new_CPPFLAGS"
1077    LIBS="$LIBS $new_LIBS"
1078    AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include "libguile.h"]],
1079                                   [[scm_init_guile ();]])],
1080                   [have_libguile_var=yes
1081                    GUILE_CPPFLAGS=$new_CPPFLAGS
1082                    GUILE_LIBS=$new_LIBS],
1083                   [found_usable_guile=no])
1084    dnl scm_set_automatic_finalization_enabled added in Guile 2.2.
1085    AC_CHECK_FUNC(scm_set_automatic_finalization_enabled,
1086      AC_DEFINE(HAVE_GUILE_MANUAL_FINALIZATION, 1,
1087                [Define if Guile supports manual finalization.])
1088    )
1089    CPPFLAGS=$save_CPPFLAGS
1090    LIBS=$save_LIBS
1091    if test "${found_usable_guile}" = no; then
1092      if test "${flag_errors}" = yes; then
1093        AC_MSG_FAILURE([linking guile version ${guile_version} test program failed])
1094      fi
1095    fi
1096  fi
1097  AC_MSG_RESULT([${found_usable_guile}])
1098])
1099
1100dnl There are several different values for --with-guile:
1101dnl
1102dnl no -   Don't include guile support.
1103dnl yes -  Include guile support, error if it's missing.
1104dnl        The pkg-config program must be in $PATH.
1105dnl auto - Same as "yes", but if guile is missing from the system,
1106dnl        fall back to "no".
1107dnl guile-version [guile-version-choice-2 ...] -
1108dnl        A space-separated list of guile package versions to try.
1109dnl        These are passed to pkg-config as-is.
1110dnl        E.g., guile-2.0 or guile-2.2-uninstalled
1111dnl        This requires making sure PKG_CONFIG_PATH is set appropriately.
1112dnl /path/to/pkg-config -
1113dnl        Use this pkg-config program.
1114dnl        NOTE: This needn't be the "real" pkg-config program.
1115dnl        It could be a shell script.  It is invoked as:
1116dnl        pkg-config --exists $version
1117dnl        pkg-config --cflags $version
1118dnl        pkg-config --libs $version
1119dnl        pkg-config --variable guild $version
1120dnl        The script will be called with $version having each value in
1121dnl        $try_guile_versions until --exists indicates success.
1122
1123AC_ARG_WITH(guile,
1124  AS_HELP_STRING([--with-guile@<:@=GUILE@:>@], [include guile support (auto/yes/no/<guile-version>/<pkg-config-program>)]),
1125  [], [with_guile=auto])
1126AC_MSG_CHECKING([whether to use guile])
1127AC_MSG_RESULT([$with_guile])
1128
1129dnl We check guile with pkg-config.
1130AC_PATH_PROG(pkg_config_prog_path, pkg-config, missing)
1131
1132try_guile_versions="guile-3.0 guile-2.2 guile-2.0"
1133have_libguile=no
1134case "${with_guile}" in
1135no)
1136  AC_MSG_WARN([guile support disabled; some features will be unavailable.])
1137  ;;
1138auto)
1139  if test "${pkg_config_prog_path}" = "missing"; then
1140    AC_MSG_WARN([pkg-config not found, guile support disabled])
1141  else
1142    AC_TRY_LIBGUILE(${pkg_config_prog_path}, ${try_guile_versions}, no, have_libguile)
1143  fi
1144  ;;
1145yes)
1146  if test "${pkg_config_prog_path}" = "missing"; then
1147    AC_MSG_ERROR([pkg-config not found])
1148  fi
1149  AC_TRY_LIBGUILE(${pkg_config_prog_path}, ${try_guile_versions}, yes, have_libguile)
1150  ;;
1151[[\\/]]* | ?:[[\\/]]*)
1152  if test -x "${with_guile}"; then
1153    AC_TRY_LIBGUILE(${with_guile}, ${try_guile_versions}, yes, have_libguile)
1154  else
1155    AC_MSG_ERROR([Guile config program not executable: ${with_guile}])
1156  fi
1157  ;;
1158"" | */*)
1159  # Disallow --with=guile="" and --with-guile=foo/bar.
1160  AC_MSG_ERROR([invalid value for --with-guile])
1161  ;;
1162*)
1163  # A space separate list of guile versions to try, in order.
1164  if test "${pkg_config_prog_path}" = "missing"; then
1165    AC_MSG_ERROR([pkg-config not found])
1166  fi
1167  AC_TRY_LIBGUILE(${pkg_config_prog_path}, ${with_guile}, yes, have_libguile)
1168  ;;
1169esac
1170
1171if test "${have_libguile}" != no; then
1172  dnl Get the name of the 'guild' program.
1173  case "${with_guile}" in
1174  [[\\/]]* | ?:[[\\/]]*)
1175    GDB_GUILE_PROGRAM_NAMES(["${with_guile}"], ["${guile_version}"])
1176    ;;
1177  *)
1178    GDB_GUILE_PROGRAM_NAMES(["${pkg_config_prog_path}"], ["${guile_version}"])
1179    ;;
1180  esac
1181
1182  dnl Make sure guild can handle this host.
1183  GDB_TRY_GUILD([$srcdir/guile/lib/gdb/support.scm])
1184  dnl If not, disable guile support.
1185  if test "$ac_cv_guild_ok" = no; then
1186    have_libguile=no
1187    AC_MSG_WARN(disabling guile support, $GUILD fails compiling for $host)
1188  fi
1189fi
1190
1191if test "${have_libguile}" != no; then
1192  AC_DEFINE(HAVE_GUILE, 1, [Define if Guile interpreter is being linked in.])
1193  CONFIG_OBS="$CONFIG_OBS \$(SUBDIR_GUILE_OBS)"
1194  CONFIG_DEPS="$CONFIG_DEPS \$(SUBDIR_GUILE_DEPS)"
1195  CONFIG_SRCS="$CONFIG_SRCS \$(SUBDIR_GUILE_SRCS)"
1196  CONFIG_INSTALL="$CONFIG_INSTALL install-guile"
1197  ENABLE_CFLAGS="$ENABLE_CFLAGS \$(SUBDIR_GUILE_CFLAGS)"
1198
1199  dnl The 'scm_new_smob' function appeared in Guile 2.0.6.
1200  save_LIBS="$LIBS"
1201  save_CPPFLAGS="$CPPFLAGS"
1202  LIBS="$GUILE_LIBS"
1203  CPPFLAGS="$GUILE_CPPFLAGS"
1204  AC_CHECK_FUNCS([scm_new_smob])
1205  LIBS="$save_LIBS"
1206  CPPFLAGS="$save_CPPFLAGS"
1207else
1208  # Even if Guile support is not compiled in, we need to have these files
1209  # included.
1210  CONFIG_OBS="$CONFIG_OBS guile/guile.o"
1211  CONFIG_SRCS="$CONFIG_SRCS guile/guile.c"
1212fi
1213AC_SUBST(GUILE_CPPFLAGS)
1214AC_SUBST(GUILE_LIBS)
1215AM_CONDITIONAL(HAVE_GUILE, test "${have_libguile}" != no)
1216
1217# ---------------------------- #
1218# Check for source highlight.  #
1219# ---------------------------- #
1220
1221SRCHIGH_LIBS=
1222SRCHIGH_CFLAGS=
1223
1224AC_ARG_ENABLE(source-highlight,
1225  AS_HELP_STRING([--enable-source-highlight],
1226    [enable source-highlight for source listings]),
1227  [case "${enableval}" in
1228  yes)  enable_source_highlight=yes ;;
1229  no)   enable_source_highlight=no  ;;
1230  *)    AC_MSG_ERROR(bad value ${enableval} for source-highlight option) ;;
1231esac],
1232[enable_source_highlight=auto])
1233
1234if test "${enable_source_highlight}" != "no"; then
1235  AC_MSG_CHECKING([for the source-highlight library])
1236  if test "${pkg_config_prog_path}" = "missing"; then
1237    AC_MSG_RESULT([no - pkg-config not found])
1238    if test "${enable_source_highlight}" = "yes"; then
1239      AC_MSG_ERROR([pkg-config was not found in your system])
1240    fi
1241  else
1242    if ${pkg_config_prog_path} --exists source-highlight; then
1243      case "$LDFLAGS" in
1244        *static-libstdc*)
1245          AC_MSG_ERROR([source highlight is incompatible with -static-libstdc++; dnl
1246either use --disable-source-highlight or dnl
1247--without-static-standard-libraries])
1248          ;;
1249      esac
1250
1251      SRCHIGH_CFLAGS=`${pkg_config_prog_path} --cflags source-highlight`
1252      SRCHIGH_LIBS=`${pkg_config_prog_path} --libs source-highlight`
1253      AC_DEFINE([HAVE_SOURCE_HIGHLIGHT], 1,
1254                [Define to 1 if the source-highlight library is available])
1255      AC_MSG_RESULT([yes])
1256    else
1257      AC_MSG_RESULT([no])
1258      if test "${enable_source_highlight}" = "yes"; then
1259        AC_MSG_ERROR([source-highlight was not found in your system])
1260      fi
1261    fi
1262  fi
1263fi
1264AC_SUBST(SRCHIGH_LIBS)
1265AC_SUBST(SRCHIGH_CFLAGS)
1266
1267# ------------------------- #
1268# Checks for header files.  #
1269# ------------------------- #
1270
1271AC_HEADER_STDC
1272# elf_hp.h is for HP/UX 64-bit shared library support.
1273AC_CHECK_HEADERS([nlist.h machine/reg.h \
1274                  thread_db.h \
1275		  sys/file.h sys/filio.h sys/ioctl.h sys/param.h \
1276		  sys/procctl.h sys/resource.h sys/ptrace.h ptrace.h \
1277		  sys/reg.h sys/debugreg.h \
1278		  termios.h elf_hp.h])
1279AC_CHECK_HEADERS(sys/user.h, [], [],
1280[#if HAVE_SYS_PARAM_H
1281# include <sys/param.h>
1282#endif
1283])
1284
1285AC_CHECK_HEADERS(curses.h cursesX.h ncurses.h ncursesw/ncurses.h ncurses/ncurses.h ncurses/term.h)
1286AC_CHECK_HEADERS(term.h, [], [],
1287[#if HAVE_CURSES_H
1288# include <curses.h>
1289#endif
1290])
1291
1292AC_CHECK_HEADERS([sys/socket.h])
1293AC_CHECK_HEADERS([ws2tcpip.h])
1294
1295# ------------------------- #
1296# Checks for declarations.  #
1297# ------------------------- #
1298
1299libiberty_INIT
1300
1301AC_CHECK_DECLS([snprintf])
1302AM_LC_MESSAGES
1303
1304# ------------------ #
1305# Checks for types.  #
1306# ------------------ #
1307
1308AC_CHECK_TYPES(socklen_t, [], [],
1309[#include <sys/types.h>
1310#if HAVE_SYS_SOCKET_H
1311# include <sys/socket.h>
1312#elif HAVE_WS2TCPIP_H
1313# include <ws2tcpip.h>
1314#endif
1315])
1316
1317# ------------------------------------- #
1318# Checks for compiler characteristics.  #
1319# ------------------------------------- #
1320
1321AC_C_CONST
1322AC_C_INLINE
1323AC_C_BIGENDIAN
1324
1325# ------------------------------ #
1326# Checks for library functions.  #
1327# ------------------------------ #
1328
1329AC_CHECK_FUNCS([getuid getgid \
1330		pipe pread pread64 pwrite resize_term \
1331		getpgid setsid \
1332		sigaction sigsetmask socketpair \
1333		ttrace wborder wresize setlocale iconvlist libiconvlist btowc \
1334		setrlimit getrlimit posix_madvise waitpid \
1335		use_default_colors])
1336AM_LANGINFO_CODESET
1337GDB_AC_COMMON
1338
1339# Check the return and argument types of ptrace.
1340GDB_AC_PTRACE
1341
1342dnl AC_FUNC_SETPGRP does not work when cross compiling
1343dnl Instead, assume we will have a prototype for setpgrp if cross compiling.
1344if test "$cross_compiling" = no; then
1345  AC_FUNC_SETPGRP
1346else
1347  AC_CACHE_CHECK(
1348    [whether setpgrp takes no argument],
1349    [ac_cv_func_setpgrp_void],
1350    [AC_COMPILE_IFELSE(
1351       [AC_LANG_PROGRAM(
1352	  [#include <unistd.h>],
1353	  [if (setpgrp(1,1) == -1)
1354	     exit (0);
1355	   else
1356	     exit (1);]
1357	)],
1358       [ac_cv_func_setpgrp_void=no],
1359       [ac_cv_func_setpgrp_void=yes]
1360     )]
1361  )
1362if test "$ac_cv_func_setpgrp_void" = yes; then
1363  AC_DEFINE(SETPGRP_VOID, 1)
1364fi
1365fi
1366
1367# Check if <sys/proc.h> defines `struct thread' with a td_pcb member.
1368AC_CHECK_MEMBERS([struct thread.td_pcb], [], [],
1369[#include <sys/param.h>
1370#include <sys/proc.h>
1371])
1372
1373# See if <sys/lwp.h> defines `struct lwp`.
1374AC_CACHE_CHECK(
1375  [for struct lwp],
1376  [gdb_cv_struct_lwp],
1377  [AC_COMPILE_IFELSE(
1378     [AC_LANG_PROGRAM(
1379	[#include <sys/param.h>
1380	 #define _KMEMUSER
1381	 #include <sys/lwp.h>],
1382	[struct lwp l;]
1383      )],
1384     [gdb_cv_struct_lwp=yes],
1385     [gdb_cv_struct_lwp=no]
1386   )]
1387)
1388if test "$gdb_cv_struct_lwp" = yes; then
1389  AC_DEFINE(HAVE_STRUCT_LWP, 1,
1390            [Define to 1 if your system has struct lwp.])
1391fi
1392
1393# See if <machine/reg.h> degines `struct reg'.
1394AC_CACHE_CHECK(
1395  [for struct reg in machine/reg.h],
1396  [gdb_cv_struct_reg],
1397  [AC_COMPILE_IFELSE(
1398     [AC_LANG_PROGRAM(
1399	[#include <sys/types.h>
1400	 #include <machine/reg.h>],
1401	[struct reg r;]
1402      )],
1403     [gdb_cv_struct_reg=yes],
1404     [gdb_cv_struct_reg=no]
1405   )]
1406)
1407if test "$gdb_cv_struct_reg" = yes; then
1408  AC_DEFINE(HAVE_STRUCT_REG, 1,
1409            [Define to 1 if your system has struct reg in <machine/reg.h>.])
1410fi
1411
1412# See if <machine/reg.h> supports the %fs and %gs i386 segment registers.
1413# Older i386 BSD's don't have the r_fs and r_gs members of `struct reg'.
1414AC_CHECK_MEMBERS([struct reg.r_fs, struct reg.r_gs], [], [],
1415                 [#include <sys/types.h>
1416#include <machine/reg.h>])
1417
1418# See if <sys/ptrace.h> provides the PTRACE_GETREGS request.
1419AC_MSG_CHECKING(for PTRACE_GETREGS)
1420AC_CACHE_VAL(
1421  [gdb_cv_have_ptrace_getregs],
1422  [AC_COMPILE_IFELSE(
1423    [AC_LANG_PROGRAM([#include <sys/ptrace.h>], [PTRACE_GETREGS;])],
1424    [gdb_cv_have_ptrace_getregs=yes],
1425    [gdb_cv_have_ptrace_getregs=no]
1426   )]
1427)
1428AC_MSG_RESULT($gdb_cv_have_ptrace_getregs)
1429if test "$gdb_cv_have_ptrace_getregs" = yes; then
1430  AC_DEFINE(HAVE_PTRACE_GETREGS, 1,
1431  [Define if sys/ptrace.h defines the PTRACE_GETREGS request.])
1432fi
1433
1434# See if <sys/ptrace.h> provides the PTRACE_GETFPXREGS request.
1435AC_MSG_CHECKING(for PTRACE_GETFPXREGS)
1436AC_CACHE_VAL(
1437  [gdb_cv_have_ptrace_getfpxregs],
1438  [AC_COMPILE_IFELSE(
1439     [AC_LANG_PROGRAM([#include <sys/ptrace.h>], [PTRACE_GETFPXREGS;])],
1440     [gdb_cv_have_ptrace_getfpxregs=yes],
1441     [gdb_cv_have_ptrace_getfpxregs=no]
1442   )]
1443)
1444AC_MSG_RESULT($gdb_cv_have_ptrace_getfpxregs)
1445if test "$gdb_cv_have_ptrace_getfpxregs" = yes; then
1446  AC_DEFINE(HAVE_PTRACE_GETFPXREGS, 1,
1447  [Define if sys/ptrace.h defines the PTRACE_GETFPXREGS request.])
1448fi
1449
1450# See if <sys/ptrace.h> provides the PT_GETDBREGS request.
1451AC_MSG_CHECKING(for PT_GETDBREGS)
1452AC_CACHE_VAL(
1453  [gdb_cv_have_pt_getdbregs],
1454  [AC_COMPILE_IFELSE(
1455     [AC_LANG_PROGRAM(
1456	[#include <sys/types.h>
1457	 #include <sys/ptrace.h>],
1458	[PT_GETDBREGS;]
1459      )],
1460     [gdb_cv_have_pt_getdbregs=yes],
1461     [gdb_cv_have_pt_getdbregs=no]
1462   )]
1463)
1464AC_MSG_RESULT($gdb_cv_have_pt_getdbregs)
1465if test "$gdb_cv_have_pt_getdbregs" = yes; then
1466  AC_DEFINE(HAVE_PT_GETDBREGS, 1,
1467  [Define if sys/ptrace.h defines the PT_GETDBREGS request.])
1468fi
1469
1470# See if <sys/ptrace.h> provides the PT_GETXMMREGS request.
1471AC_MSG_CHECKING(for PT_GETXMMREGS)
1472AC_CACHE_VAL(
1473  [gdb_cv_have_pt_getxmmregs],
1474  [AC_COMPILE_IFELSE(
1475     [AC_LANG_PROGRAM(
1476	[#include <sys/types.h>
1477	 #include <sys/ptrace.h>],
1478	[PT_GETXMMREGS;]
1479      )],
1480     [gdb_cv_have_pt_getxmmregs=yes],
1481     [gdb_cv_have_pt_getxmmregs=no]
1482   )]
1483)
1484AC_MSG_RESULT($gdb_cv_have_pt_getxmmregs)
1485if test "$gdb_cv_have_pt_getxmmregs" = yes; then
1486  AC_DEFINE(HAVE_PT_GETXMMREGS, 1,
1487  [Define if sys/ptrace.h defines the PT_GETXMMREGS request.])
1488fi
1489
1490# See if <sys/ptrace.h> supports LWP names on FreeBSD
1491# Older FreeBSD versions don't have the pl_tdname member of
1492# `struct ptrace_lwpinfo'.
1493AC_CHECK_MEMBERS([struct ptrace_lwpinfo.pl_tdname], [], [],
1494                 [#include <sys/ptrace.h>])
1495
1496# See if <sys/ptrace.h> supports syscall fields on FreeBSD.  The
1497# pl_syscall_code member of `struct ptrace_lwpinfo' was added in
1498# FreeBSD 10.3.
1499AC_CHECK_MEMBERS([struct ptrace_lwpinfo.pl_syscall_code], [], [],
1500                 [#include <sys/ptrace.h>])
1501
1502# Check if the compiler supports the `long long' type.
1503
1504AC_CACHE_CHECK([for long long support in compiler], gdb_cv_c_long_long,
1505               [AC_COMPILE_IFELSE([AC_LANG_PROGRAM(
1506[[extern long long foo;]],
1507[[switch (foo & 2) { case 0: return 1; }]])],
1508                                  gdb_cv_c_long_long=yes,
1509                                  gdb_cv_c_long_long=no)])
1510if test "$gdb_cv_c_long_long" != yes; then
1511  # libdecnumber requires long long.
1512  AC_MSG_ERROR([Compiler must support long long for GDB.])
1513fi
1514
1515# Check if the compiler and runtime support printing long longs.
1516
1517AC_CACHE_CHECK([for long long support in printf],
1518               gdb_cv_printf_has_long_long,
1519               [AC_RUN_IFELSE([AC_LANG_PROGRAM([AC_INCLUDES_DEFAULT],
1520[[char buf[32];
1521  long long l = 0;
1522  l = (l << 16) + 0x0123;
1523  l = (l << 16) + 0x4567;
1524  l = (l << 16) + 0x89ab;
1525  l = (l << 16) + 0xcdef;
1526  sprintf (buf, "0x%016llx", l);
1527  return (strcmp ("0x0123456789abcdef", buf));]])],
1528                              gdb_cv_printf_has_long_long=yes,
1529                              gdb_cv_printf_has_long_long=no,
1530                              gdb_cv_printf_has_long_long=no)])
1531if test "$gdb_cv_printf_has_long_long" = yes; then
1532  AC_DEFINE(PRINTF_HAS_LONG_LONG, 1,
1533            [Define to 1 if the "%ll" format works to print long longs.])
1534fi
1535
1536# Check if the compiler and runtime support printing decfloats.
1537
1538AC_CACHE_CHECK([for decfloat support in printf],
1539               gdb_cv_printf_has_decfloat,
1540               [AC_RUN_IFELSE([AC_LANG_PROGRAM([AC_INCLUDES_DEFAULT],
1541[[char buf[64];
1542  _Decimal32 d32 = 1.2345df;
1543  _Decimal64 d64 = 1.2345dd;
1544  _Decimal128 d128 = 1.2345dl;
1545  sprintf (buf, "Decimal32: %H\nDecimal64: %D\nDecimal128: %DD", d32, d64, d128);
1546  return (strcmp ("Decimal32: 1.2345\nDecimal64: 1.2345\nDecimal128: 1.2345", buf));]])],
1547                              gdb_cv_printf_has_decfloat=yes,
1548                              gdb_cv_printf_has_decfloat=no,
1549                              gdb_cv_printf_has_decfloat=no)])
1550if test "$gdb_cv_printf_has_decfloat" = yes; then
1551  AC_DEFINE(PRINTF_HAS_DECFLOAT, 1,
1552            [Define to 1 if the "%H, %D and %DD" formats work to print decfloats.])
1553fi
1554
1555# Check if the compiler supports the `long double' type.  We can't use
1556# AC_C_LONG_DOUBLE because that one does additional checks on the
1557# constants defined in <float.h> that fail on some systems,
1558# e.g. FreeBSD/i386 4.7 and OpenBSD/i386 3.6.
1559
1560AC_CACHE_CHECK([for long double support in compiler], gdb_cv_c_long_double,
1561               [AC_COMPILE_IFELSE([AC_LANG_SOURCE([[long double foo;]])],
1562                                  gdb_cv_c_long_double=yes,
1563                                  gdb_cv_c_long_double=no)])
1564if test "$gdb_cv_c_long_double" = yes; then
1565  AC_DEFINE(HAVE_LONG_DOUBLE, 1,
1566           [Define to 1 if the compiler supports long double.])
1567fi
1568
1569# Check if the compiler and runtime support printing long doubles.
1570
1571AC_CACHE_CHECK([for long double support in printf],
1572               gdb_cv_printf_has_long_double,
1573               [AC_RUN_IFELSE([AC_LANG_PROGRAM([AC_INCLUDES_DEFAULT],
1574[[char buf[16];
1575  long double f = 3.141592653;
1576  sprintf (buf, "%Lg", f);
1577  return (strncmp ("3.14159", buf, 7));]])],
1578                              gdb_cv_printf_has_long_double=yes,
1579                              gdb_cv_printf_has_long_double=no,
1580                              gdb_cv_printf_has_long_double=no)])
1581if test "$gdb_cv_printf_has_long_double" = yes; then
1582  AC_DEFINE(PRINTF_HAS_LONG_DOUBLE, 1,
1583            [Define to 1 if the "%Lg" format works to print long doubles.])
1584fi
1585
1586# Check if the compiler and runtime support scanning long doubles.
1587
1588AC_CACHE_CHECK([for long double support in scanf],
1589               gdb_cv_scanf_has_long_double,
1590               [AC_RUN_IFELSE([AC_LANG_PROGRAM(
1591[[#include <stdio.h>]],
1592[[char *buf = "3.141592653";
1593  long double f = 0;
1594  sscanf (buf, "%Lg", &f);
1595  return !(f > 3.14159 && f < 3.14160);]])],
1596                              gdb_cv_scanf_has_long_double=yes,
1597                              gdb_cv_scanf_has_long_double=no,
1598                              gdb_cv_scanf_has_long_double=no)])
1599if test "$gdb_cv_scanf_has_long_double" = yes; then
1600  AC_DEFINE(SCANF_HAS_LONG_DOUBLE, 1,
1601            [Define to 1 if the "%Lg" format works to scan long doubles.])
1602fi
1603
1604case ${host_os} in
1605aix*)
1606  AC_CACHE_CHECK(
1607    [for -bbigtoc option], [gdb_cv_bigtoc],
1608    [SAVE_LDFLAGS=$LDFLAGS
1609
1610     case $GCC in
1611       yes) gdb_cv_bigtoc=-Wl,-bbigtoc ;;
1612       *) gdb_cv_bigtoc=-bbigtoc ;;
1613     esac
1614
1615     LDFLAGS=$LDFLAGS\ $gdb_cv_bigtoc
1616     AC_LINK_IFELSE(
1617       [AC_LANG_PROGRAM([], [int i;])],
1618       [],
1619       [gdb_cv_bigtoc=]
1620     )
1621     LDFLAGS="${SAVE_LDFLAGS}"]
1622  )
1623  CONFIG_LDFLAGS="${CONFIG_LDFLAGS} ${gdb_cv_bigtoc}"
1624  ;;
1625esac
1626
1627AC_MSG_CHECKING(for the dynamic export flag)
1628dynamic_list=false
1629if test "${gdb_native}" = yes; then
1630   # The dynamically loaded libthread_db needs access to symbols in the gdb
1631   # executable.  Older GNU ld supports --export-dynamic but --dynamic-list
1632   # may not be supported there.
1633   old_LDFLAGS="$LDFLAGS"
1634   # Older GNU ld supports --export-dynamic but --dynamic-list it does not.
1635   RDYNAMIC="-Wl,--dynamic-list=${srcdir}/proc-service.list"
1636   LDFLAGS="$LDFLAGS $RDYNAMIC"
1637   if test "${have_libpython}" = no; then
1638     AC_LINK_IFELSE(
1639       [AC_LANG_PROGRAM([], [])],
1640       [dynamic_list=true],
1641       []
1642     )
1643   else
1644     # Workaround http://bugs.python.org/issue4434 where static
1645     # libpythonX.Y.a would get its symbols required for
1646     # pythonX.Y/lib-dynload/*.so modules hidden by -Wl,--dynamic-list.
1647     # Problem does not happen for the recommended libpythonX.Y.so linkage.
1648
1649     # Note the workaround for Python
1650     # http://bugs.python.org/issue10112 earlier has removed
1651     # -export-dynamic from PYTHON_LIBS.  That's exactly what we want
1652     # here too, as otherwise it'd make this -Wl,--dynamic-list test
1653     # always pass.
1654     old_CFLAGS="$CFLAGS"
1655     CFLAGS="$CFLAGS $PYTHON_CFLAGS"
1656     old_LIBS="$LIBS"
1657     LIBS="$LIBS $PYTHON_LIBS"
1658     old_CPPFLAGS="$CPPFLAGS"
1659     CPPFLAGS="$CPPFLAGS $PYTHON_CPPFLAGS"
1660     AC_RUN_IFELSE(
1661       [AC_LANG_PROGRAM(
1662         [#include "Python.h"],
1663         [int err;
1664          Py_Initialize ();
1665          err = PyRun_SimpleString ("import ctypes\n");
1666          Py_Finalize ();
1667          return err == 0 ? 0 : 1;])],
1668       [dynamic_list=true], [], [true])
1669     LIBS="$old_LIBS"
1670     CFLAGS="$old_CFLAGS"
1671     CPPFLAGS="$old_CPPFLAGS"
1672   fi
1673   LDFLAGS="$old_LDFLAGS"
1674fi
1675if $dynamic_list; then
1676  found="-Wl,--dynamic-list"
1677  RDYNAMIC='-Wl,--dynamic-list=$(srcdir)/proc-service.list'
1678else
1679  found="-rdynamic"
1680  RDYNAMIC="-rdynamic"
1681fi
1682AC_SUBST(RDYNAMIC)
1683AC_MSG_RESULT($found)
1684
1685dnl For certain native configurations, we need to check whether thread
1686dnl support can be built in or not.
1687dnl
1688dnl Note that we only want this if we are both native (host == target),
1689dnl and not doing a canadian cross build (build == host).
1690
1691if test "${build}" = "${host}" -a "${host}" = "${target}" ; then
1692   case ${host_os} in
1693   aix*)
1694      AC_MSG_CHECKING(for AiX thread debugging library)
1695      AC_CACHE_VAL(
1696	[gdb_cv_have_aix_thread_debug],
1697	[AC_COMPILE_IFELSE(
1698	   [AC_LANG_PROGRAM(
1699	      [#include <sys/pthdebug.h>],
1700	      [#ifndef PTHDB_VERSION_3
1701	       #error
1702	       #endif]
1703	    )],
1704	   [gdb_cv_have_aix_thread_debug=yes],
1705	   [gdb_cv_have_aix_thread_debug=no]
1706	 )]
1707      )
1708      AC_MSG_RESULT($gdb_cv_have_aix_thread_debug)
1709      if test "$gdb_cv_have_aix_thread_debug" = yes; then
1710         CONFIG_SRCS="${CONFIG_SRCS} aix-thread.c"
1711         CONFIG_OBS="${CONFIG_OBS} aix-thread.o"
1712         LIBS="$LIBS -lpthdebug"
1713
1714         # Older versions of AIX do not provide the declaration for
1715         # the getthrds function (it appears that it was introduced
1716         # with AIX 6.x).
1717         AC_CHECK_DECLS(getthrds, [], [], [[#include <procinfo.h>]])
1718      fi
1719      ;;
1720   esac
1721   AC_SUBST(CONFIG_LDFLAGS)
1722fi
1723
1724dnl See if we have a thread_db header file that has TD_NOTALLOC and
1725dnl other error codes.
1726if test "x$ac_cv_header_thread_db_h" = "xyes"; then
1727  AC_CACHE_CHECK(
1728    [whether <thread_db.h> has TD_NOTALLOC],
1729    [gdb_cv_thread_db_h_has_td_notalloc],
1730    [AC_COMPILE_IFELSE(
1731       [AC_LANG_PROGRAM(
1732	  [#include <thread_db.h>],
1733	  [int i = TD_NOTALLOC;]
1734	)],
1735       [gdb_cv_thread_db_h_has_td_notalloc=yes],
1736       [gdb_cv_thread_db_h_has_td_notalloc=no]
1737     )]
1738  )
1739
1740  AC_CACHE_CHECK(
1741    [whether <thread_db.h> has TD_VERSION],
1742    [gdb_cv_thread_db_h_has_td_version],
1743    [AC_COMPILE_IFELSE(
1744       [AC_LANG_PROGRAM(
1745	  [#include <thread_db.h>],
1746	  [int i = TD_VERSION;]
1747	)],
1748       [gdb_cv_thread_db_h_has_td_version=yes],
1749       [gdb_cv_thread_db_h_has_td_version=no]
1750     )]
1751  )
1752
1753  AC_CACHE_CHECK(
1754    [whether <thread_db.h> has TD_NOTLS],
1755    [gdb_cv_thread_db_h_has_td_notls],
1756    [AC_COMPILE_IFELSE(
1757       [AC_LANG_PROGRAM(
1758	  [#include <thread_db.h>],
1759	  [int i = TD_NOTLS;]
1760	)],
1761       [gdb_cv_thread_db_h_has_td_notls=yes],
1762       [gdb_cv_thread_db_h_has_td_notls=no]
1763     )]
1764  )
1765fi
1766if test "x$gdb_cv_thread_db_h_has_td_notalloc" = "xyes"; then
1767  AC_DEFINE(THREAD_DB_HAS_TD_NOTALLOC, 1,
1768            [Define if <thread_db.h> has the TD_NOTALLOC error code.])
1769fi
1770if test "x$gdb_cv_thread_db_h_has_td_version" = "xyes"; then
1771  AC_DEFINE(THREAD_DB_HAS_TD_VERSION, 1,
1772            [Define if <thread_db.h> has the TD_VERSION error code.])
1773fi
1774if test "x$gdb_cv_thread_db_h_has_td_notls" = "xyes"; then
1775  AC_DEFINE(THREAD_DB_HAS_TD_NOTLS, 1,
1776            [Define if <thread_db.h> has the TD_NOTLS error code.])
1777fi
1778
1779dnl Set the host's .gdbinit filename.
1780case $host_os in
1781  go32* | *djgpp*)
1782    gdbinit=gdb.ini
1783    ;;
1784  *)
1785    gdbinit=.gdbinit
1786    ;;
1787esac
1788AC_DEFINE_UNQUOTED(GDBINIT,"$gdbinit",[The .gdbinit filename.])
1789
1790dnl Set the host's .gdbearlyinit filename
1791AC_DEFINE_UNQUOTED(GDBEARLYINIT,".gdbearlyinit",[The .gdbearlyinit filename.])
1792
1793dnl Handle optional features that can be enabled.
1794
1795# Support for --with-sysroot is a copy of GDB_AC_WITH_DIR,
1796# except that the argument to --with-sysroot is optional.
1797# --with-sysroot (or --with-sysroot=yes) sets the default sysroot path.
1798if test "x$with_sysroot" = xyes; then
1799  with_sysroot="${exec_prefix}/${target_alias}/sys-root"
1800fi
1801AC_ARG_WITH(sysroot,
1802  AS_HELP_STRING([--with-sysroot@<:@=DIR@:>@],
1803                 [search for usr/lib et al within DIR]),
1804  [TARGET_SYSTEM_ROOT=$withval], [TARGET_SYSTEM_ROOT=])
1805AC_DEFINE_DIR(TARGET_SYSTEM_ROOT, TARGET_SYSTEM_ROOT,
1806              [search for usr/lib et al within DIR])
1807AC_SUBST(TARGET_SYSTEM_ROOT)
1808GDB_AC_DEFINE_RELOCATABLE(TARGET_SYSTEM_ROOT, sysroot, ${ac_define_dir})
1809
1810GDB_AC_WITH_DIR(SYSTEM_GDBINIT, system-gdbinit,
1811    [automatically load a system-wide gdbinit file],
1812    [])
1813GDB_AC_WITH_DIR(SYSTEM_GDBINIT_DIR, system-gdbinit-dir,
1814    [automatically load system-wide gdbinit files from this directory],
1815    [])
1816
1817AM_GDB_WARNINGS
1818AM_GDB_UBSAN
1819
1820# In the Cygwin environment, we need some additional flags.
1821AC_CACHE_CHECK([for cygwin], gdb_cv_os_cygwin,
1822[AC_EGREP_CPP(^lose$, [
1823#if defined (__CYGWIN__) || defined (__CYGWIN32__)
1824lose
1825#endif],[gdb_cv_os_cygwin=yes],[gdb_cv_os_cygwin=no])])
1826
1827
1828dnl Figure out which of the many generic ser-*.c files the _host_ supports.
1829SER_HARDWIRE="ser-base.o ser-unix.o ser-pipe.o ser-tcp.o"
1830case ${host} in
1831  *go32* ) SER_HARDWIRE=ser-go32.o ;;
1832  *djgpp* ) SER_HARDWIRE=ser-go32.o ;;
1833  *mingw32*) SER_HARDWIRE="ser-base.o ser-tcp.o ser-mingw.o" ;;
1834  *) SER_HARDWIRE="$SER_HARDWIRE ser-uds.o" ;;
1835esac
1836AC_SUBST(SER_HARDWIRE)
1837
1838# libreadline needs libuser32.a in a cygwin environment
1839WIN32LIBS=
1840if test x"$gdb_cv_os_cygwin" = xyes; then
1841    WIN32LIBS="-luser32"
1842    case "${target}" in
1843	*cygwin*) WIN32LIBS="$WIN32LIBS -limagehlp"
1844	;;
1845    esac
1846fi
1847
1848# The ser-tcp.c module requires sockets.
1849# Note that WIN32APILIBS is set by GDB_AC_COMMON.
1850WIN32LIBS="$WIN32LIBS $WIN32APILIBS"
1851
1852# Add ELF support to GDB, but only if BFD includes ELF support.
1853GDB_AC_CHECK_BFD([for ELF support in BFD], gdb_cv_var_elf,
1854                 [bfd_get_elf_phdr_upper_bound (NULL)], elf-bfd.h)
1855if test "$gdb_cv_var_elf" = yes; then
1856  CONFIG_OBS="$CONFIG_OBS elfread.o stap-probe.o dtrace-probe.o \
1857		gcore-elf.o elf-none-tdep.o"
1858  AC_DEFINE(HAVE_ELF, 1,
1859	    [Define if ELF support should be included.])
1860  # -ldl is provided by bfd/Makfile.am (LIBDL) <PLUGINS>.
1861  if test "$plugins" = "yes"; then
1862    AC_SEARCH_LIBS(dlopen, dl)
1863  fi
1864fi
1865
1866# Add macho support to GDB, but only if BFD includes it.
1867GDB_AC_CHECK_BFD([for Mach-O support in BFD], gdb_cv_var_macho,
1868                 [bfd_mach_o_lookup_command (NULL, 0, NULL)], mach-o.h)
1869if test "$gdb_cv_var_macho" = yes; then
1870  CONFIG_OBS="$CONFIG_OBS machoread.o"
1871fi
1872
1873# Add any host-specific objects to GDB.
1874CONFIG_OBS="${CONFIG_OBS} ${gdb_host_obs}"
1875
1876# If building on ELF, look for lzma support for embedded compressed debug info.
1877if test "$gdb_cv_var_elf" = yes; then
1878  AC_ARG_WITH(lzma,
1879    AS_HELP_STRING([--with-lzma], [support lzma compression (auto/yes/no)]),
1880    [], [with_lzma=auto])
1881  AC_MSG_CHECKING([whether to use lzma])
1882  AC_MSG_RESULT([$with_lzma])
1883
1884  if test "${with_lzma}" != no; then
1885    AC_LIB_HAVE_LINKFLAGS([lzma], [], [#include "lzma.h"],
1886			  [lzma_index_iter iter;
1887			   lzma_index_iter_init (&iter, 0);
1888			   lzma_mf_is_supported (LZMA_MF_HC3);])
1889    if test "$HAVE_LIBLZMA" != yes; then
1890      if test "$with_lzma" = yes; then
1891        AC_MSG_ERROR([missing liblzma for --with-lzma])
1892      fi
1893    fi
1894  fi
1895fi
1896
1897LIBGUI="../libgui/src/libgui.a"
1898GUI_CFLAGS_X="-I${srcdir}/../libgui/src"
1899AC_SUBST(LIBGUI)
1900AC_SUBST(GUI_CFLAGS_X)
1901
1902WIN32LDAPP=
1903AC_SUBST(WIN32LIBS)
1904AC_SUBST(WIN32LDAPP)
1905
1906case "${host}" in
1907*-*-cygwin* | *-*-mingw* )
1908    configdir="win"
1909    ;;
1910*)
1911    configdir="unix"
1912    ;;
1913esac
1914
1915GDBTKLIBS=
1916if test "${enable_gdbtk}" = "yes"; then
1917
1918    # Gdbtk must have an absolute path to srcdir in order to run
1919    # properly when not installed.
1920    here=`pwd`
1921    cd ${srcdir}
1922    GDBTK_SRC_DIR=`pwd`
1923    cd $here
1924
1925    SC_PATH_TCLCONFIG
1926
1927    # If $no_tk is nonempty, then we can't do Tk, and there is no
1928    # point to doing Tcl.
1929    SC_PATH_TKCONFIG
1930
1931    if test -z "${no_tcl}" -a -z "${no_tk}"; then
1932	SC_LOAD_TCLCONFIG
1933
1934        # Check for in-tree tcl
1935        here=`pwd`
1936        cd ${srcdir}/..
1937        topdir=`pwd`
1938        cd ${here}
1939
1940        intree="no"
1941        if test "${TCL_SRC_DIR}" = "${topdir}/tcl"; then
1942          intree="yes"
1943        fi
1944
1945        # Find Tcl private headers
1946        if test x"${intree}" = xno; then
1947          CY_AC_TCL_PRIVATE_HEADERS
1948	  TCL_INCLUDE="${TCL_INCLUDE_SPEC} ${TCL_PRIVATE_INCLUDE}"
1949          TCL_LIBRARY="${TCL_LIB_SPEC}"
1950          TCL_DEPS=""
1951        else
1952          # If building tcl in the same src tree, private headers
1953          # are not needed, but we need to be sure to use the right
1954          # headers library
1955	  TCL_INCLUDE="-I${TCL_SRC_DIR}/generic"
1956          TCL_LIBRARY="${TCL_BUILD_LIB_SPEC}"
1957          TCL_DEPS="../tcl/${configdir}${TCL_LIB_FILE}"
1958        fi
1959	AC_SUBST(TCL_INCLUDE)
1960	AC_SUBST(TCL_LIBRARY)
1961        AC_SUBST(TCL_DEPS)
1962
1963	SC_LOAD_TKCONFIG
1964
1965        # Check for in-tree Tk
1966        intree="no"
1967        if test "${TK_SRC_DIR}" = "${topdir}/tk"; then
1968          intree="yes"
1969        fi
1970
1971        # Find Tk private headers
1972        if test x"${intree}" = xno; then
1973          CY_AC_TK_PRIVATE_HEADERS
1974	  TK_INCLUDE="${TK_INCLUDE_SPEC} ${TK_PRIVATE_INCLUDE}"
1975	  TK_LIBRARY=${TK_LIB_SPEC}
1976          TK_DEPS=""
1977        else
1978          TK_INCLUDE="-I${TK_SRC_DIR}/generic"
1979          TK_LIBRARY="${TK_BUILD_LIB_SPEC}"
1980          TK_DEPS="../tk/${configdir}/${TK_LIB_FILE}"
1981        fi
1982	AC_SUBST(TK_INCLUDE)
1983	AC_SUBST(TK_LIBRARY)
1984	AC_SUBST(TK_DEPS)
1985	AC_SUBST(TK_XINCLUDES)
1986
1987        ENABLE_CFLAGS="${ENABLE_CFLAGS} \$(SUBDIR_GDBTK_CFLAGS)"
1988
1989	# Include some libraries that Tcl and Tk want.
1990	TCL_LIBS='$(LIBGUI) $(TK) $(TCL) $(X11_LDFLAGS) $(X11_LIBS)'
1991	# Yes, the ordering seems wrong here.  But it isn't.
1992	# TK_LIBS is the list of libraries that need to be linked
1993	# after Tcl/Tk.  Note that this isn't put into LIBS.  If it
1994	# were in LIBS then any link tests after this point would
1995	# try to include things like `$(LIBGUI)', which wouldn't work.
1996	GDBTKLIBS="${TCL_LIBS} ${TK_LIBS}"
1997
1998        CONFIG_OBS="${CONFIG_OBS} \$(SUBDIR_GDBTK_OBS)"
1999        CONFIG_DEPS="${CONFIG_DEPS} \$(SUBDIR_GDBTK_DEPS)"
2000        CONFIG_SRCS="${CONFIG_SRCS} \$(SUBDIR_GDBTK_SRCS)"
2001	CONFIG_ALL="${CONFIG_ALL} all-gdbtk"
2002	CONFIG_CLEAN="${CONFIG_CLEAN} clean-gdbtk"
2003	CONFIG_INSTALL="${CONFIG_INSTALL} install-gdbtk"
2004	CONFIG_UNINSTALL="${CONFIG_UNINSTALL} uninstall-gdbtk"
2005
2006	if test x"$gdb_cv_os_cygwin" = xyes; then
2007	  WIN32LIBS="${WIN32LIBS} -lshell32 -lgdi32 -lcomdlg32 -ladvapi32"
2008	  WIN32LDAPP="-Wl,--subsystem,console"
2009	  CONFIG_OBS="${CONFIG_OBS} gdbres.o"
2010	fi
2011
2012        AC_CONFIG_SUBDIRS(gdbtk)
2013    fi
2014fi
2015
2016AC_SUBST(X_CFLAGS)
2017AC_SUBST(X_LDFLAGS)
2018AC_SUBST(X_LIBS)
2019AC_SUBST(GDBTKLIBS)
2020AC_SUBST(GDBTK_CFLAGS)
2021AC_SUBST(GDBTK_SRC_DIR)
2022
2023AC_PATH_X
2024
2025# Unlike the sim directory, whether a simulator is linked is controlled by
2026# presence of a gdb_sim definition in the target configure.tgt entry.
2027# This code just checks for a few cases where we'd like to ignore those
2028# definitions, even when they're present in the '.mt' file.  These cases
2029# are when --disable-sim is specified, or if the simulator directory is
2030# not part of the source tree.
2031#
2032AC_ARG_ENABLE(sim,
2033AS_HELP_STRING([--enable-sim], [link gdb with simulator]),
2034[echo "enable_sim = $enable_sim";
2035 echo "enableval = ${enableval}";
2036 case "${enableval}" in
2037  yes) ignore_sim=false ;;
2038  no)  ignore_sim=true ;;
2039  *)   ignore_sim=false ;;
2040 esac],
2041[ignore_sim=false])
2042
2043if test ! -d "${srcdir}/../sim"; then
2044  ignore_sim=true
2045fi
2046
2047SIM=
2048SIM_OBS=
2049if test "${ignore_sim}" = "false"; then
2050  if test x"${gdb_sim}" != x ; then
2051    SIM="${gdb_sim}"
2052    SIM_OBS="remote-sim.o"
2053    AC_DEFINE(WITH_SIM, 1, [Define if the simulator is being linked in.])
2054
2055    # Some tdep code should only be compiled in when the ppc sim is
2056    # built.  PR sim/13418.
2057    case $target in
2058      powerpc*-*-*)
2059	AC_DEFINE(WITH_PPC_SIM, 1, [Define if the PPC simulator is being linked in.])
2060	;;
2061    esac
2062  fi
2063fi
2064AC_SUBST(SIM)
2065AC_SUBST(SIM_OBS)
2066
2067AC_SUBST(ENABLE_CFLAGS)
2068AC_SUBST(PROFILE_CFLAGS)
2069
2070AC_SUBST(CONFIG_OBS)
2071AC_SUBST(CONFIG_DEPS)
2072AC_SUBST(CONFIG_SRCS)
2073AC_SUBST(CONFIG_ALL)
2074AC_SUBST(CONFIG_CLEAN)
2075AC_SUBST(CONFIG_INSTALL)
2076AC_SUBST(CONFIG_UNINSTALL)
2077
2078# List of host floatformats.
2079AC_DEFINE_UNQUOTED(GDB_HOST_FLOAT_FORMAT,$gdb_host_float_format,[Host float floatformat])
2080AC_DEFINE_UNQUOTED(GDB_HOST_DOUBLE_FORMAT,$gdb_host_double_format,[Host double floatformat])
2081AC_DEFINE_UNQUOTED(GDB_HOST_LONG_DOUBLE_FORMAT,$gdb_host_long_double_format,[Host long double floatformat])
2082
2083# target_subdir is used by the testsuite to find the target libraries.
2084target_subdir=
2085if test "${host}" != "${target}"; then
2086    target_subdir="${target_alias}/"
2087fi
2088AC_SUBST(target_subdir)
2089
2090# Import nat definitions.
2091nat_makefile_frag=/dev/null
2092if test "${gdb_native}" = "yes"; then
2093  . ${srcdir}/configure.nat
2094  nativefile=$NAT_FILE
2095fi
2096
2097AC_SUBST(NAT_FILE)
2098AC_SUBST(NATDEPFILES)
2099AC_SUBST(NAT_CDEPS)
2100AC_SUBST(LOADLIBES)
2101AC_SUBST(MH_CFLAGS)
2102AC_SUBST(XM_CLIBS)
2103AC_SUBST(NAT_GENERATED_FILES)
2104AC_SUBST(HAVE_NATIVE_GCORE_HOST)
2105AC_SUBST_FILE(nat_makefile_frag)
2106
2107if test x"${gdb_osabi}" != x ; then
2108    AC_DEFINE_UNQUOTED(GDB_OSABI_DEFAULT, $gdb_osabi,
2109		       [Define to the default OS ABI for this configuration.])
2110fi
2111
2112# Check for babeltrace and babeltrace-ctf
2113AC_ARG_WITH(babeltrace,
2114  AS_HELP_STRING([--with-babeltrace], [include babeltrace support (auto/yes/no)]),
2115  [], [with_babeltrace=auto])
2116AC_MSG_CHECKING([whether to use babeltrace])
2117AC_MSG_RESULT([$with_babeltrace])
2118
2119if test "x$with_babeltrace" = "xno"; then
2120  AC_MSG_WARN([babletrace support disabled; GDB is unable to read CTF data.])
2121else
2122  # Append -Werror to CFLAGS so that configure can catch the warning
2123  # "assignment from incompatible pointer type", which is related to
2124  # the babeltrace change from 1.0.3 to 1.1.0.  Babeltrace 1.1.0 works
2125  # in GDB, while babeltrace 1.0.3 is broken.
2126  # AC_LIB_HAVE_LINKFLAGS may modify CPPFLAGS in it, so it should be
2127  # safe to save and restore CFLAGS here.
2128  saved_CFLAGS=$CFLAGS
2129  CFLAGS="$CFLAGS -Werror"
2130  AC_LIB_HAVE_LINKFLAGS([babeltrace], [babeltrace-ctf],
2131			[#include <babeltrace/babeltrace.h>
2132			 #include <babeltrace/ctf/events.h>
2133			 #include <babeltrace/ctf/iterator.h>],
2134			[struct bt_iter_pos *pos = bt_iter_get_pos (bt_ctf_get_iter (NULL));
2135			struct bt_ctf_event *event = NULL;
2136			const struct bt_definition *scope;
2137
2138			pos->type = BT_SEEK_BEGIN;
2139			bt_iter_set_pos (bt_ctf_get_iter (NULL), pos);
2140			scope = bt_ctf_get_top_level_scope (event,
2141			      				   BT_STREAM_EVENT_HEADER);
2142		        bt_ctf_get_uint64 (bt_ctf_get_field (event, scope, "id"));
2143			])
2144  CFLAGS=$saved_CFLAGS
2145
2146  if test "$HAVE_LIBBABELTRACE" != yes; then
2147     if test "$with_babeltrace" = yes; then
2148       AC_MSG_ERROR([babeltrace is missing or unusable])
2149     else
2150       AC_MSG_WARN([babeltrace is missing or unusable; GDB is unable to read CTF data.])
2151     fi
2152  fi
2153fi
2154
2155# Check for xxhash
2156AC_ARG_WITH(xxhash,
2157  AS_HELP_STRING([--with-xxhash], [use libxxhash for hashing (faster) (auto/yes/no)]),
2158  [], [with_xxhash=auto])
2159
2160GCC_ENABLE([libctf], [yes], [], [Handle .ctf type-info sections])
2161if test x${enable_static} = xno; then
2162  LIBCTF="-Wl,--rpath,../libctf/.libs ../libctf/.libs/libctf.so"
2163  CTF_DEPS="../libctf/.libs/libctf.so"
2164else
2165  LIBCTF="../libctf/.libs/libctf.a"
2166  CTF_DEPS="$LIBCTF"
2167fi
2168if test "${enable_libctf}" = yes; then
2169  AC_DEFINE(ENABLE_LIBCTF, 1, [Handle .ctf type-info sections])
2170else
2171  LIBCTF=
2172  CTF_DEPS=
2173fi
2174AC_SUBST(LIBCTF)
2175AC_SUBST(CTF_DEPS)
2176
2177# If nativefile (NAT_FILE) is not set in configure.nat, we link to an
2178# empty version.
2179
2180if test "x$with_xxhash" != "xno"; then
2181  AC_LIB_HAVE_LINKFLAGS([xxhash], [],
2182			[#include <xxhash.h>],
2183			[XXH32("foo", 3, 0);
2184			])
2185  if test "$HAVE_LIBXXHASH" != yes; then
2186    if test "$with_xxhash" = yes; then
2187      AC_MSG_ERROR([xxhash is missing or unusable])
2188    fi
2189  fi
2190  if test "x$with_xxhash" = "xauto"; then
2191    with_xxhash="$HAVE_LIBXXHASH"
2192  fi
2193fi
2194
2195AC_MSG_CHECKING([whether to use xxhash])
2196AC_MSG_RESULT([$with_xxhash])
2197
2198NM_H=
2199rm -f nm.h
2200if test "${nativefile}" != ""; then
2201    case "${nativefile}" in
2202      nm-*.h ) GDB_NM_FILE="config/${gdb_host_cpu}/${nativefile}" ;;
2203      * ) GDB_NM_FILE="${nativefile}"
2204    esac
2205    AC_CONFIG_LINKS([nm.h:$GDB_NM_FILE], [echo > stamp-nmh],
2206                    [GDB_NM_FILE=$GDB_NM_FILE])
2207    AC_DEFINE_UNQUOTED(GDB_NM_FILE, "${GDB_NM_FILE}", [nativefile])
2208    NM_H=nm.h
2209fi
2210AC_SUBST(GDB_NM_FILE)
2211AC_SUBST(NM_H)
2212
2213dnl Add dependency for xsltproc if building with maintainer-mode enabled.
2214AC_PATH_PROGS(XSLTPROC, xsltproc, missing)
2215if test "x$USE_MAINTAINER_MODE" = xyes; then
2216  if test "${XSLTPROC}" = missing; then
2217    AC_MSG_ERROR(unable to find xsltproc.  maintainer-mode requires xsltproc.)
2218  fi
2219fi
2220AC_SUBST(XSLTPROC)
2221
2222dnl Check for exe extension set on certain hosts (e.g. Win32)
2223AC_EXEEXT
2224
2225dnl  Detect the character set used by this host.
2226dnl  At the moment, we just assume it's UTF-8.
2227AC_DEFINE(GDB_DEFAULT_HOST_CHARSET, "UTF-8",
2228          [Define to be a string naming the default host character set.])
2229
2230GDB_AC_SELFTEST([
2231  CONFIG_OBS="$CONFIG_OBS \$(SELFTESTS_OBS)"
2232  CONFIG_SRCS="$CONFIG_SRCS \$(SELFTESTS_SRCS)"
2233])
2234
2235GDB_AC_TRANSFORM([gdb], [GDB_TRANSFORM_NAME])
2236GDB_AC_TRANSFORM([gcore], [GCORE_TRANSFORM_NAME])
2237AC_CONFIG_FILES([gcore], [chmod +x gcore])
2238AC_CONFIG_FILES([Makefile gdb-gdb.gdb gdb-gdb.py doc/Makefile data-directory/Makefile])
2239
2240AC_OUTPUT
2241