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