]> Git Repo - binutils.git/blobdiff - gdb/configure.in
* configure.in: Remove --with-cpu option.
[binutils.git] / gdb / configure.in
index 672f2600579118a8721b1bcb11dd3f5f24db7789..12b5f6b9c131b4c2c33ddd36d5089f614279aa87 100644 (file)
@@ -1,5 +1,5 @@
 dnl Autoconf configure script for GDB, the GNU debugger.
 dnl Autoconf configure script for GDB, the GNU debugger.
-dnl Copyright 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002
+dnl Copyright 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
 dnl Free Software Foundation, Inc.
 dnl
 dnl This file is part of GDB.
 dnl Free Software Foundation, Inc.
 dnl
 dnl This file is part of GDB.
@@ -33,10 +33,19 @@ AM_PROG_CC_STDC
 AC_CONFIG_AUX_DIR(`cd $srcdir;pwd`/..)
 AC_CANONICAL_SYSTEM
 
 AC_CONFIG_AUX_DIR(`cd $srcdir;pwd`/..)
 AC_CANONICAL_SYSTEM
 
-dnl gdb doesn't use gettext, but bfd does.  We call this to ensure we
-dnl link with the correct libraries.
+# FIXME: kettenis/20030102: The AC_PROG_RANLIB from Autoconf 2.13
+# doesn't support cross-compilation, but the one from Autoconf 2.5x
+# does.  Override RANLIB here (i.e. before running AC_PROG_RANLIB) to
+# deal with the lossage.  Note that CY_GNU_GETTEXT currently calls
+# AC_PROG_RANLIB.  This can be removed when we switch to # Autoconf
+# 2.5x.
+AC_CHECK_TOOL(RANLIB, ranlib, :)
+
+dnl Set up for gettext.  PACKAGE is used when we call bindtextdomain.
 ALL_LINGUAS=
 CY_GNU_GETTEXT
 ALL_LINGUAS=
 CY_GNU_GETTEXT
+AC_DEFINE(PACKAGE, "gdb", [Name of this package. ])
+
 
 dnl List of object files added by configure.
 
 
 dnl List of object files added by configure.
 
@@ -51,6 +60,7 @@ CONFIG_CLEAN=
 CONFIG_INSTALL=
 CONFIG_UNINSTALL=
 
 CONFIG_INSTALL=
 CONFIG_UNINSTALL=
 
+SUBDIRS="doc testsuite nlm"
 configdirs="doc testsuite"
 
 AC_ARG_ENABLE(multi-ice,
 configdirs="doc testsuite"
 
 AC_ARG_ENABLE(multi-ice,
@@ -66,75 +76,255 @@ if test "${enable_multi_ice}" = "yes"; then
   configdirs="${configdirs} multi-ice"
 fi
 
   configdirs="${configdirs} multi-ice"
 fi
 
-dnl
-changequote(,)dnl
+. $srcdir/configure.host
 
 
-. ${srcdir}/configure.host
+. $srcdir/configure.tgt
 
 
-. ${srcdir}/configure.tgt
+# Fetch the default architecture and default target vector from BFD.
+targ=$target; . $srcdir/../bfd/config.bfd
 
 
-targ=${target} ; . ${srcdir}/../bfd/config.bfd
+# We only want the first architecture, so strip off the others if
+# there is more than one.
+targ_archs=`echo $targ_archs | sed 's/ .*//'`
 
 
-dnl
-changequote([,])dnl
+if test "x$targ_archs" != x; then
+  AC_DEFINE_UNQUOTED(DEFAULT_BFD_ARCH, $targ_archs,
+    [Define to BFD's default architecture. ])
+fi
+if test "x$targ_defvec" != x; then
+  AC_DEFINE_UNQUOTED(DEFAULT_BFD_VEC, $targ_defvec,
+    [Define to BFD's default target vector. ])
+fi
 
 
-dnl use BFD to determine the default architecture and byte order
-dnl (bfd_vec->byteorder provides the latter).
-targ=${target}
-. ${srcdir}/../bfd/config.bfd
+AC_ARG_PROGRAM
 
 
-dnl We only want the first arch, if there is more than one.
-targ_archs=`echo ${targ_archs} | sed -e 's/ .*//;'`
+# The CLI cannot be disabled yet, but may be in the future.
 
 
-if test x"${targ_archs}" != x ; then
-    AC_DEFINE_UNQUOTED(DEFAULT_BFD_ARCH, ${targ_archs})
+# Enable CLI.
+AC_ARG_ENABLE(gdbcli,
+[  --disable-gdbcli        disable command-line interface (CLI)],
+  [case $enableval in
+    yes)
+      ;;
+    no)
+      AC_MSG_ERROR([the command-line interface cannot be disabled yet]) ;;
+    *)
+      AC_MSG_ERROR([bad value $enableval for --enable-gdbcli]) ;;
+  esac],
+  [enable_gdbcli=yes])
+if test x"$enable_gdbcli" = xyes; then
+  if test -d $srcdir/cli; then
+    CONFIG_OBS="$CONFIG_OBS \$(SUBDIR_CLI_OBS)"
+    CONFIG_DEPS="$CONFIG_DEPS \$(SUBDIR_CLI_DEPS)"
+    CONFIG_SRCS="$CONFIG_SRCS \$(SUBDIR_CLI_SRCS)"
+    CONFIG_INITS="$CONFIG_INITS \$(SUBDIR_CLI_INITS)"
+    ENABLE_CFLAGS="$ENABLE_CFLAGS \$(SUBDIR_CLI_CFLAGS)"
+    CONFIG_ALL="$CONFIG_ALL \$(SUBDIR_CLI_ALL)"
+    CONFIG_CLEAN="$CONFIG_CLEAN \$(SUBDIR_CLI_CLEAN)"
+    CONFIG_INSTALL="$CONFIG_INSTALL \$(SUBDIR_CLI_INSTALL)"
+    CONFIG_UNINSTALL="$CONFIG_UNINSTALL \$(SUBDIR_CLI_UNINSTALL)"
+  fi
 fi
 fi
-if test x"${targ_defvec}" != x ; then
-    AC_DEFINE_UNQUOTED(DEFAULT_BFD_VEC, ${targ_defvec})
+
+# Enable MI.
+AC_ARG_ENABLE(gdbmi,
+[  --disable-gdbmi         disable machine-interface (MI)],
+  [case $enableval in
+    yes | no)
+      ;;
+    *)
+      AC_MSG_ERROR([bad value $enableval for --enable-gdbmi]) ;;
+  esac],
+  [enable_gdbmi=yes])
+if test x"$enable_gdbmi" = xyes; then
+  if test -d $srcdir/mi; then
+    CONFIG_OBS="$CONFIG_OBS \$(SUBDIR_MI_OBS)"
+    CONFIG_DEPS="$CONFIG_DEPS \$(SUBDIR_MI_DEPS)"
+    CONFIG_SRCS="$CONFIG_SRCS \$(SUBDIR_MI_SRCS)"
+    CONFIG_INITS="$CONFIG_INITS \$(SUBDIR_MI_INITS)"
+    ENABLE_CFLAGS="$ENABLE_CFLAGS \$(SUBDIR_MI_CFLAGS)"
+    CONFIG_ALL="$CONFIG_ALL \$(SUBDIR_MI_ALL)"
+    CONFIG_CLEAN="$CONFIG_CLEAN \$(SUBDIR_MI_CLEAN)"
+    CONFIG_INSTALL="$CONFIG_INSTALL \$(SUBDIR_MI_INSTALL)"
+    CONFIG_UNINSTALL="$CONFIG_UNINSTALL \$(SUBDIR_MI_UNINSTALL)"
+  fi
+fi
+
+# Enable TUI.
+AC_ARG_ENABLE(tui,
+[  --enable-tui            enable full-screen terminal user interface (TUI)],
+  [case $enableval in
+    yes | no)
+      ;;
+    *)
+      AC_MSG_ERROR([bad value $enableval for --enable-tui]) ;;
+  esac])
+if test x"$enable_tui" = xyes; then
+  if test -d $srcdir/tui; then
+    CONFIG_OBS="$CONFIG_OBS \$(SUBDIR_TUI_OBS)"
+    CONFIG_DEPS="$CONFIG_DEPS \$(SUBDIR_TUI_DEPS)"
+    CONFIG_SRCS="$CONFIG_SRCS \$(SUBDIR_TUI_SRCS)"
+    CONFIG_INITS="$CONFIG_INITS \$(SUBDIR_TUI_INITS)"
+    ENABLE_CFLAGS="$ENABLE_CFLAGS \$(SUBDIR_TUI_CFLAGS)"
+    CONFIG_ALL="$CONFIG_ALL \$(SUBDIR_TUI_ALL)"
+    CONFIG_CLEAN="$CONFIG_CLEAN \$(SUBDIR_TUI_CLEAN)"
+    CONFIG_INSTALL="$CONFIG_INSTALL \$(SUBDIR_TUI_INSTALL)"
+    CONFIG_UNINSTALL="$CONFIG_UNINSTALL \$(SUBDIR_TUI_UNINSTALL)"
+    need_curses=yes
+  fi
 fi
 
 fi
 
+# --------------------- #
+# Checks for programs.  #
+# --------------------- #
+
 AC_PROG_AWK
 AC_PROG_INSTALL
 AC_PROG_AWK
 AC_PROG_INSTALL
+AC_PROG_LN_S
+AC_PROG_RANLIB
+AC_PROG_YACC
+
 AC_CHECK_TOOL(AR, ar)
 AC_CHECK_TOOL(AR, ar)
-AC_CHECK_TOOL(RANLIB, ranlib, :)
 AC_CHECK_TOOL(DLLTOOL, dlltool)
 AC_CHECK_TOOL(WINDRES, windres)
 AC_CHECK_TOOL(DLLTOOL, dlltool)
 AC_CHECK_TOOL(WINDRES, windres)
-AC_PROG_YACC
 
 
-dnl MiG is needed for the Hurd.
+# Needed for GNU/Hurd.
 AC_CHECK_TOOL(MIG, mig)
 
 AC_CHECK_TOOL(MIG, mig)
 
-AC_ARG_PROGRAM
+# ---------------------- #
+# Checks for libraries.  #
+# ---------------------- #
 
 
-AC_TYPE_SIGNAL
+# We might need to link with -lm; most simulators need it.
+AC_CHECK_LIB(m, main)
 
 
-AC_HEADER_STDC
+# We need to link with -lw to get `wctype' on Solaris before Solaris
+# 2.6.  Solaris 2.6 and beyond have this function in libc, and have a
+# libw that some versions of the GNU linker cannot hanle (GNU ld 2.9.1
+# is known to have this problem).  Therefore we avoid libw if we can.
+AC_CHECK_FUNC(wctype, [],
+  [AC_CHECK_LIB(w, wctype)])
+
+# Some systems (e.g. Solaris) have `socketpair' in libsocket.
+AC_SEARCH_LIBS(socketpair, socket)
 
 
-dnl Solaris 7 needs _MSE_INT_H defined to avoid a clash between <widec.h>
-dnl and <wchar.h> that causes AC_CHECK_HEADERS to think <curses.h> doesn't
-dnl exist.
-
-case $host_os in solaris2.7 | solaris2.8) case "$GCC" in yes)
-    AC_DEFINE(_MSE_INT_H)
-esac; esac
-
-AC_CHECK_HEADERS(ctype.h nlist.h link.h thread_db.h proc_service.h \
-       memory.h objlist.h ptrace.h sgtty.h stddef.h stdlib.h \
-       string.h sys/procfs.h sys/ptrace.h sys/reg.h stdint.h \
-       term.h termio.h termios.h unistd.h wait.h sys/wait.h \
-       wchar.h wctype.h asm/debugreg.h sys/debugreg.h sys/select.h \
-       time.h sys/file.h sys/ioctl.h sys/user.h sys/fault.h sys/syscall.h \
-       dirent.h sys/ndir.h sys/dir.h ndir.h sys/filio.h \
-       curses.h ncurses.h \
-       poll.h sys/poll.h)
+# Since GDB uses Readline, we need termcap functionality, so we need
+# to find a library that provides that.  When GDB is configured with
+# --enable-tui, we need full curses functionality.
+#
+# FIXME: kettenis/20030102: We seem to prefer HP curses (Hcurses) over
+# Xcurses on HP-UX; see the `-D__HP_CURSES' in the relevant host
+# Makefile fragments.  That's why we need to have `Hcurses' before
+# `curses'.  I don't see why we should use HP curses if a more
+# standard curses is available, except that according to HP's
+# documentation one needs to compile `-D_XOPEN_SOURCE_EXTENDED' on
+# HP-UX 10.10 and 10.20.
+
+if test "$need_curses" = yes; then
+  AC_SEARCH_LIBS(initscr, [ncurses Hcurses curses], [],
+    [AC_MSG_ERROR([no curses library found])])
+fi
+
+case $host_os in
+  cygwin*)
+    if test -d $srcdir/libtermcap; then
+      LIBS="../libtermcap/libtermcap.a $LIBS"
+      ac_cv_search_tgetent="../libtermcap/libtermcap.a"
+    fi ;;
+  go32*)
+    # ??? Is this really true?
+    ac_cv_search_tgetent="none required"
+    ;;
+  aix*)
+    # Readline prefers curses over termcap on AIX.
+    # ??? Why?
+    AC_SEARCH_LIBS(tgetent, [tinfo ncurses curses termcap])
+    ;;
+esac
+
+# Note: We used to check for libtermlib and libterminfo too, but
+# Readline doesn't, so I think we're safe with leaving them out.
+AC_SEARCH_LIBS(tgetent, [termcap tinfo ncurses Hcurses curses])
+
+if test "$ac_cv_search_tgetent" = no; then
+  AC_MSG_ERROR([no termcap library found])
+fi
+
+# ------------------------- #
+# Checks for header files.  #
+# ------------------------- #
+
+AC_HEADER_DIRENT
 AC_HEADER_STAT
 AC_HEADER_STAT
+AC_HEADER_STDC
+AC_CHECK_HEADERS(link.h)
+AC_CHECK_HEADERS(nlist.h)
+AC_CHECK_HEADERS(poll.h sys/poll.h)
+AC_CHECK_HEADERS(proc_service.h thread_db.h)
+AC_CHECK_HEADERS(stddef.h)
+AC_CHECK_HEADERS(stdlib.h)
+AC_CHECK_HEADERS(stdint.h)
+AC_CHECK_HEADERS(string.h memory.h strings.h)
+AC_CHECK_HEADERS(sys/fault.h)
+AC_CHECK_HEADERS(sys/file.h)
+AC_CHECK_HEADERS(sys/filio.h)
+AC_CHECK_HEADERS(sys/ioctl.h)
+AC_CHECK_HEADERS(sys/param.h)
+AC_CHECK_HEADERS(sys/proc.h)
+AC_CHECK_HEADERS(sys/procfs.h)
+AC_CHECK_HEADERS(sys/ptrace.h ptrace.h)
+AC_CHECK_HEADERS(sys/reg.h sys/debugreg.h)
+AC_CHECK_HEADERS(sys/select.h)
+AC_CHECK_HEADERS(sys/syscall.h)
+AC_CHECK_HEADERS(sys/user.h)
+AC_CHECK_HEADERS(sys/wait.h wait.h)
+AC_CHECK_HEADERS(termios.h termio.h sgtty.h)
+AC_CHECK_HEADERS(unistd.h)
+
+# On Solaris 2.[78], we need to define _MSE_INT_H to avoid a clash
+# between <widec.h> and <wchar.h> that would cause AC_CHECK_HEADERS to
+# think that we don't have <curses.h> if we're using GCC.
+case $host_os in
+  solaris2.[[78]])
+    if test "$GCC" = yes; then
+      AC_DEFINE(_MSE_INT_H, 1,
+        [[Define to 1 to avoid a clash between <widec.h> and <wchar.h> on
+   Solaris 2.[78] when using GCC. ]])
+    fi ;;
+esac
+AC_CHECK_HEADERS(curses.h ncurses.h term.h)
+
+# FIXME: kettenis/20030102: In most cases we include these
+# unconditionally, so what's the point in checking these?
+AC_CHECK_HEADERS(ctype.h time.h)
+
+# ------------------ #
+# Checks for types.  #
+# ------------------ #
+
+AC_TYPE_SIGNAL
+
+# ------------------------------------- #
+# Checks for compiler characteristics.  #
+# ------------------------------------- #
 
 AC_C_CONST
 
 AC_C_CONST
+AC_C_INLINE
+
+# ------------------------------ #
+# Checks for library functions.  #
+# ------------------------------ #
 
 
-AC_CHECK_FUNCS(bcopy btowc bzero isascii poll realpath sbrk setpgid setpgrp \
-       sigaction sigprocmask sigsetmask)
 AC_FUNC_ALLOCA
 AC_FUNC_ALLOCA
+AC_FUNC_MMAP
 AC_FUNC_VFORK
 AC_FUNC_VFORK
+AC_CHECK_FUNCS(canonicalize_file_name realpath)
+AC_CHECK_FUNCS(poll)
+AC_CHECK_FUNCS(sbrk)
+AC_CHECK_FUNCS(setpgid setpgrp)
+AC_CHECK_FUNCS(sigaction sigprocmask sigsetmask)
+AC_CHECK_FUNCS(socketpair)
+
 dnl AC_FUNC_SETPGRP does not work when cross compiling
 dnl Instead, assume we will have a prototype for setpgrp if cross compiling.
 if test "$cross_compiling" = no; then
 dnl AC_FUNC_SETPGRP does not work when cross compiling
 dnl Instead, assume we will have a prototype for setpgrp if cross compiling.
 if test "$cross_compiling" = no; then
@@ -165,6 +355,37 @@ if test $gdb_cv_func_sigsetjmp = yes; then
   AC_DEFINE(HAVE_SIGSETJMP, 1, [Define if sigsetjmp is available. ])
 fi
 
   AC_DEFINE(HAVE_SIGSETJMP, 1, [Define if sigsetjmp is available. ])
 fi
 
+# Assume we'll default to using the included libiberty regex.
+gdb_use_included_regex=yes
+
+# However, if the system regex is GNU regex, then default to *not*
+# using the included regex.
+AC_CACHE_CHECK(
+  [for GNU regex],
+  [gdb_cv_have_gnu_regex],
+  [AC_TRY_COMPILE(
+    [#include <gnu-versions.h>],
+    [#define REGEX_INTERFACE_VERSION 1
+#if _GNU_REGEX_INTERFACE_VERSION != REGEX_INTERFACE_VERSION
+# error "Version mismatch"
+#endif],
+    gdb_cv_have_gnu_regex=yes,
+    gdb_cv_have_gnu_regex=no)])
+if test $gdb_cv_have_gnu_regex = yes; then
+  gdb_use_included_regex=no
+fi
+
+AC_ARG_WITH(included-regex,
+  [  --without-included-regex don't use included regex; this is the default
+                          on systems with version 2 of the GNU C library
+                          (use with caution on other system)],
+  gdb_with_regex=$withval,
+  gdb_with_regex=$gdb_use_included_regex)
+if test "$gdb_with_regex" = yes; then
+  AC_DEFINE(USE_INCLUDED_REGEX, 1,
+    [Define to 1 if the regex included in libiberty should be used.])
+fi
+
 # See if <machine/reg.h> supports the %fs and %gs i386 segment registers.
 # Older i386 BSD's don't have the r_fs and r_gs members of `struct reg'.
 AC_CACHE_CHECK([for r_fs in struct reg], gdb_cv_struct_reg_r_fs,
 # See if <machine/reg.h> supports the %fs and %gs i386 segment registers.
 # Older i386 BSD's don't have the r_fs and r_gs members of `struct reg'.
 AC_CACHE_CHECK([for r_fs in struct reg], gdb_cv_struct_reg_r_fs,
@@ -231,17 +452,13 @@ if test $gdb_cv_have_pt_getxmmregs = yes; then
 fi
 
 
 fi
 
 
-AC_CHECK_LIB(socket, socketpair)
-AC_CHECK_FUNCS(socketpair)
-
-
 BFD_NEED_DECLARATION(malloc)
 BFD_NEED_DECLARATION(realloc)
 BFD_NEED_DECLARATION(free)
 BFD_NEED_DECLARATION(strerror)
 BFD_NEED_DECLARATION(strdup)
 BFD_NEED_DECLARATION(strstr)
 BFD_NEED_DECLARATION(malloc)
 BFD_NEED_DECLARATION(realloc)
 BFD_NEED_DECLARATION(free)
 BFD_NEED_DECLARATION(strerror)
 BFD_NEED_DECLARATION(strdup)
 BFD_NEED_DECLARATION(strstr)
-
+BFD_NEED_DECLARATION(canonicalize_file_name)
 
 # The following save_state_t checkery is only necessary for HPUX 
 # versions earlier than 10.20.  When those fade from memory, this 
 
 # The following save_state_t checkery is only necessary for HPUX 
 # versions earlier than 10.20.  When those fade from memory, this 
@@ -276,7 +493,7 @@ if test "${target}" = "${host}"; then
   ia64-*-aix*)
       AC_DEFINE(NEW_PROC_API)
       ;;
   ia64-*-aix*)
       AC_DEFINE(NEW_PROC_API)
       ;;
-  *-*-unixware* | *-*-sysv4.2* | *-*-sysv5*)
+  *-*-unixware* | *-*-sysv4.2* | *-*-sysv5* | *-*-interix* )
       AC_DEFINE(NEW_PROC_API)
       ;;
   *-*-solaris2.[[678]])
       AC_DEFINE(NEW_PROC_API)
       ;;
   *-*-solaris2.[[678]])
@@ -307,7 +524,7 @@ if test "$ac_cv_header_sys_procfs_h" = yes; then
   dnl For Linux/i386, glibc 2.1.3 was released with a bogus
   dnl prfpregset_t type (it's a typedef for the pointer to a struct
   dnl instead of the struct itself).  We detect this here, and work
   dnl For Linux/i386, glibc 2.1.3 was released with a bogus
   dnl prfpregset_t type (it's a typedef for the pointer to a struct
   dnl instead of the struct itself).  We detect this here, and work
-  dnl around it in lin-thread.c.
+  dnl around it in gdb_proc_service.h.
 
   if test $bfd_cv_have_sys_procfs_type_prfpregset_t = yes; then
     AC_MSG_CHECKING(whether prfpregset_t type is broken)
 
   if test $bfd_cv_have_sys_procfs_type_prfpregset_t = yes; then
     AC_MSG_CHECKING(whether prfpregset_t type is broken)
@@ -408,19 +625,10 @@ if test ${host} = ${target} ; then
   AC_MSG_RESULT($gdb_cv_have_struct_link_map32)
   if test $gdb_cv_have_struct_link_map32 = yes; then
     AC_DEFINE(HAVE_STRUCT_LINK_MAP32)
   AC_MSG_RESULT($gdb_cv_have_struct_link_map32)
   if test $gdb_cv_have_struct_link_map32 = yes; then
     AC_DEFINE(HAVE_STRUCT_LINK_MAP32)
+    AC_DEFINE(_SYSCALL32)
   fi
 fi
 
   fi
 fi
 
-dnl See if host has libm.  This is usually needed by simulators.
-AC_CHECK_LIB(m, main)
-
-dnl Solaris puts wctype in /usr/lib/libw.a before Solaris 2.6.
-dnl
-dnl A bug in GNU ld 2.9.1 causes a problem if we link in -lw 
-dnl under Solaris 2.6 because it is some funky empty library.
-dnl So only link in libw if we have to.
-AC_CHECK_LIB(c, wctype,: ,AC_CHECK_LIB(w, wctype))
-
 dnl See if compiler supports "long long" type.
 
 AC_MSG_CHECKING(for long long support in compiler)
 dnl See if compiler supports "long long" type.
 
 AC_MSG_CHECKING(for long long support in compiler)
@@ -509,14 +717,29 @@ if test $gdb_cv_scanf_has_long_double = yes; then
 fi
 AC_MSG_RESULT($gdb_cv_scanf_has_long_double)
 
 fi
 AC_MSG_RESULT($gdb_cv_scanf_has_long_double)
 
-AC_FUNC_MMAP
+case ${host_os} in
+aix*)
+  AC_CACHE_CHECK([for -bbigtoc option], [gdb_cv_bigtoc], [
+    SAVE_LDFLAGS=$LDFLAGS
+
+    case $GCC in
+    yes) gdb_cv_bigtoc=-Wl,-bbigtoc ;;
+    *) gdb_cv_bigtoc=-bbigtoc ;;
+    esac
 
 
-dnl See if thread_db library is around for Solaris thread debugging.  Note that
-dnl we must explicitly test for version 1 of the library because version 0
-dnl (present on Solaris 2.4 or earlier) doesn't have the same API.
+    LDFLAGS=$LDFLAGS\ $gdb_cv_bigtoc
+    AC_TRY_LINK([], [int i;], [], [gdb_cv_bigtoc=])
+  ])
+  CONFIG_LDFLAGS="${CONFIG_LDFLAGS} ${gdb_cv_bigtoc}"
+  ;;
+esac
 
 
-dnl Note that we only want this if we are both native (host == target), and
-dnl not doing a canadian cross build (build == host).
+
+dnl For certain native configurations, we need to check whether thread
+dnl support can be built in or not.
+dnl
+dnl Note that we only want this if we are both native (host == target),
+dnl and not doing a canadian cross build (build == host).
 
 if test ${build} = ${host} -a ${host} = ${target} ; then
    case ${host_os} in
 
 if test ${build} = ${host} -a ${host} = ${target} ; then
    case ${host_os} in
@@ -536,6 +759,10 @@ if test ${build} = ${host} -a ${host} = ${target} ; then
       fi
       ;;
    solaris*)
       fi
       ;;
    solaris*)
+      # See if thread_db library is around for Solaris thread debugging.
+      # Note that we must explicitly test for version 1 of the library
+      # because version 0 (present on Solaris 2.4 or earlier) doesn't have
+      # the same API.
       AC_MSG_CHECKING(for Solaris thread debugging library)
       if test -f /usr/lib/libthread_db.so.1 ; then
          AC_MSG_RESULT(yes)
       AC_MSG_CHECKING(for Solaris thread debugging library)
       if test -f /usr/lib/libthread_db.so.1 ; then
          AC_MSG_RESULT(yes)
@@ -575,124 +802,61 @@ if test ${build} = ${host} -a ${host} = ${target} ; then
          AC_MSG_RESULT(no)
       fi
       ;;
          AC_MSG_RESULT(no)
       fi
       ;;
+   aix*)
+      AC_MSG_CHECKING(for AiX thread debugging library)
+      AC_CACHE_VAL(gdb_cv_have_aix_thread_debug,
+                   [AC_TRY_COMPILE([#include <sys/pthdebug.h>],
+                                   [#ifndef PTHDB_VERSION_3
+                                    #error
+                                    #endif],
+                                   gdb_cv_have_aix_thread_debug=yes,
+                                   gdb_cv_have_aix_thread_debug=no)])
+      AC_MSG_RESULT($gdb_cv_have_aix_thread_debug)
+      if test $gdb_cv_have_aix_thread_debug = yes; then
+         CONFIG_SRCS="${CONFIG_SRCS} aix-thread.c"
+         CONFIG_LIB_OBS="${CONFIG_LIB_OBS} aix-thread.o"
+         CONFIG_LDFLAGS="${CONFIG_LDFLAGS} -lpthdebug"
+      fi
+      ;;
    esac
    AC_SUBST(CONFIG_LDFLAGS)
 fi
 
    esac
    AC_SUBST(CONFIG_LDFLAGS)
 fi
 
-dnl The CLI cannot be disabled yet, but may be in the future  
-
-dnl Handle CLI sub-directory configury.
-AC_ARG_ENABLE(gdbcli,
-[  --enable-gdbcli            Enable GDB-CLI interface],
-[
-  case "${enableval}" in
-    yes) enable_gdbcli=yes ;;
-    "") enable_gdbcli=yes ;;
-    no) 
-      AC_MSG_ERROR(The CLI cannot be disabled yet)
-    ;;
-    *)
-      AC_MSG_ERROR(Bad value for --enable-gdbcli: ${enableval})
-    ;;
-  esac
-],
-[enable_gdbcli=yes])
-case ${enable_gdbcli} in
-  "yes" )
-    if test -d "${srcdir}/cli" ; then
-      CONFIG_OBS="${CONFIG_OBS} \$(SUBDIR_CLI_OBS)"
-      CONFIG_DEPS="${CONFIG_DEPS} \$(SUBDIR_CLI_DEPS)"
-      CONFIG_SRCS="${CONFIG_SRCS} \$(SUBDIR_CLI_SRCS)"
-      CONFIG_INITS="${CONFIG_INITS} \$(SUBDIR_CLI_INITS)"
-      ENABLE_CFLAGS="${ENABLE_CFLAGS} \$(SUBDIR_CLI_CFLAGS)"
-      CONFIG_ALL="${CONFIG_ALL} \$(SUBDIR_CLI_ALL)"
-      CONFIG_CLEAN="${CONFIG_CLEAN} \$(SUBDIR_CLI_CLEAN)"
-      CONFIG_INSTALL="${CONFIG_INSTALL} \$(SUBDIR_CLI_INSTALL)"
-      CONFIG_UNINSTALL="${CONFIG_UNINSTALL} \$(SUBDIR_CLI_UNINSTALL)"
-    fi
-    ;;
-esac
-
-dnl Handle optional features that can be enabled.
+dnl See if we have a thread_db header file that has TD_NOTALLOC.
+if test "x$ac_cv_header_thread_db_h" = "xyes"; then
+   AC_CACHE_CHECK([whether <thread_db.h> has TD_NOTALLOC],
+                  gdb_cv_thread_db_h_has_td_notalloc,
+     AC_TRY_COMPILE(
+       [#include <thread_db.h>],
+       [int i = TD_NOTALLOC;],
+       gdb_cv_thread_db_h_has_td_notalloc=yes,
+       gdb_cv_thread_db_h_has_td_notalloc=no
+     )
+   )
+fi
+if test "x$gdb_cv_thread_db_h_has_td_notalloc" = "xyes"; then
+  AC_DEFINE(THREAD_DB_HAS_TD_NOTALLOC, 1,
+            [Define if <thread_db.h> has the TD_NOTALLOC error code.])
+fi
 
 
-dnl Handle MI sub-directory configury.
-AC_ARG_ENABLE(gdbmi,
-[  --enable-gdbmi            Enable GDB-MI interface],
-[
-  case "${enable_gdbmi}" in
-    yes | no) ;;
-    "")  enable_gdbmi=yes ;;
-    *)
-      AC_MSG_ERROR(Bad value for --enable-gdbmi: ${enableval})
-    ;;
+dnl linux-proc.c wants to use pread64, which may require special CFLAGS
+dnl -D_BSD_SOURCE is normally assumed but we have to specify it because of
+dnl -D_XOPEN_SOURCE=500.
+if test $host = $target; then
+  case $target in
+    *-linux*)
+      save_CFLAGS=$CFLAGS
+      CFLAGS="$CFLAGS -D_BSD_SOURCE -D_XOPEN_SOURCE=500 -D_LARGEFILE64_SOURCE"
+      AC_TRY_LINK([#include <unistd.h>],
+                 [pread64 (0, NULL, 0, 0);],
+                 [ENABLE_CFLAGS="$ENABLE_CFLAGS -D_BSD_SOURCE -D_XOPEN_SOURCE=500 -D_LARGEFILE64_SOURCE"
+                  AC_DEFINE(HAVE_PREAD64)], [])
+      CFLAGS=$save_CFLAGS
+      ;;
   esac
   esac
-],
-[enable_gdbmi=yes])
-case ${enable_gdbmi} in
-  "yes" )
-    if test -d "${srcdir}/mi" ; then
-      CONFIG_OBS="${CONFIG_OBS} \$(SUBDIR_MI_OBS)"
-      CONFIG_DEPS="${CONFIG_DEPS} \$(SUBDIR_MI_DEPS)"
-      CONFIG_SRCS="${CONFIG_SRCS} \$(SUBDIR_MI_SRCS)"
-      CONFIG_INITS="${CONFIG_INITS} \$(SUBDIR_MI_INITS)"
-      ENABLE_CFLAGS="${ENABLE_CFLAGS} \$(SUBDIR_MI_CFLAGS)"
-      CONFIG_ALL="${CONFIG_ALL} \$(SUBDIR_MI_ALL)"
-      CONFIG_CLEAN="${CONFIG_CLEAN} \$(SUBDIR_MI_CLEAN)"
-      CONFIG_INSTALL="${CONFIG_INSTALL} \$(SUBDIR_MI_INSTALL)"
-      CONFIG_UNINSTALL="${CONFIG_UNINSTALL} \$(SUBDIR_MI_UNINSTALL)"
-    fi
-    ;;
-esac
-
-# Configure UI_OUT by default (before 5.2 it can be disabled)
-# It must be configured if gdbmi is configured
-
-UIOUT_CFLAGS=
-AC_SUBST(UIOUT_CFLAGS)
-
-AC_ARG_WITH(uiout,
-[  --with-uiout          Use new uiout functions instead of *printf's],
-[case "${withval}" in
-  yes)  want_uiout=true ;;
-  no)   if test $enable_gdbmi = yes; then
-          AC_MSG_ERROR(uiout is needed for MI and cannot be disabled)
-        else
-           want_uiout=false
-        fi ;;
-  *)    AC_MSG_ERROR(bad value ${withval} for GDB with-uiout option) ;;
-esac],
-[want_uiout=true])dnl
-
-if test $want_uiout = true; then
-   UIOUT_CFLAGS="-DUI_OUT=1"
 fi
 
 fi
 
-AC_ARG_ENABLE(tui,
-[  --enable-tui            Enable full-screen terminal user interface],
-[
-  case "${enable_tui}" in
-    yes | no) ;;
-    "")  enable_tui=yes ;;
-    *)
-      AC_MSG_ERROR(Bad value for --enable-tui: ${enableval})
-    ;;
-  esac
-])
-case ${enable_tui} in
-  "yes" )
-    if test -d "${srcdir}/tui" ; then
-      CONFIG_OBS="${CONFIG_OBS} \$(SUBDIR_TUI_OBS)"
-      CONFIG_DEPS="${CONFIG_DEPS} \$(SUBDIR_TUI_DEPS)"
-      CONFIG_SRCS="${CONFIG_SRCS} \$(SUBDIR_TUI_SRCS)"
-      CONFIG_INITS="${CONFIG_INITS} \$(SUBDIR_TUI_INITS)"
-      ENABLE_CFLAGS="${ENABLE_CFLAGS} \$(SUBDIR_TUI_CFLAGS)"
-      CONFIG_ALL="${CONFIG_ALL} \$(SUBDIR_TUI_ALL)"
-      CONFIG_CLEAN="${CONFIG_CLEAN} \$(SUBDIR_TUI_CLEAN)"
-      CONFIG_INSTALL="${CONFIG_INSTALL} \$(SUBDIR_TUI_INSTALL)"
-      CONFIG_UNINSTALL="${CONFIG_UNINSTALL} \$(SUBDIR_TUI_UNINSTALL)"
-    fi
-    ;;
-esac
+dnl Handle optional features that can be enabled.
 
 AC_ARG_ENABLE(netrom,
 [  --enable-netrom         Enable NetROM support],
 
 AC_ARG_ENABLE(netrom,
 [  --enable-netrom         Enable NetROM support],
@@ -790,38 +954,6 @@ if test x$want_mmalloc = xtrue; then
    MMALLOC='../mmalloc/libmmalloc.a'
 fi
 
    MMALLOC='../mmalloc/libmmalloc.a'
 fi
 
-AC_ARG_WITH(included-regex,
-[  --with-included-regex          Use included regex],
-[case "${withval}" in
-  yes)  want_included_regex=true ;;
-  no)   want_included_regex=false;;
-  *)    AC_MSG_ERROR(bad value ${withval} for GDB with-included-regex option) ;;
-esac],[want_included_regex=true])dnl
-
-if test $want_included_regex = false; then
-  AC_MSG_CHECKING(for GNU regex)
-  AC_CACHE_VAL(gdb_cv_have_gnu_regex,
-[AC_TRY_COMPILE([#include <gnu-versions.h>
-#include <sys/types.h>
-#include <regex.h>],
-[#if !defined _GNU_REGEX_INTERFACE_VERSION || !defined __GLIBC__ || __GLIBC__ < 2
-#error No valid GNU regex.
-#endif
-],
-               [gdb_cv_have_gnu_regex=yes],
-               [gdb_cv_have_gnu_regex=no])])
-  AC_MSG_RESULT($gdb_cv_have_gnu_regex)
-  if test $gdb_cv_have_gnu_regex = no; then
-       want_included_regex=true
-  fi
-fi
-
-if test x${want_included_regex} = xtrue; then
-    REGEX="gnu-regex.o"
-    AC_DEFINE(USE_INCLUDED_REGEX)
-fi
-AC_SUBST(REGEX)
-
 # In the Cygwin environment, we need some additional flags.
 AC_CACHE_CHECK([for cygwin], gdb_cv_os_cygwin,
 [AC_EGREP_CPP(lose, [
 # In the Cygwin environment, we need some additional flags.
 AC_CACHE_CHECK([for cygwin], gdb_cv_os_cygwin,
 [AC_EGREP_CPP(lose, [
@@ -838,30 +970,6 @@ case ${host} in
 esac
 AC_SUBST(SER_HARDWIRE)
 
 esac
 AC_SUBST(SER_HARDWIRE)
 
-
-dnl Figure out which term library to use.
-if test x$gdb_host = xgo32; then
-  TERM_LIB=
-else
-if test x$gdb_cv_os_cygwin = xyes; then
-  TERM_LIB='`if test -r ../libtermcap/libtermcap.a; then echo ../libtermcap/libtermcap.a; else echo -ltermcap; fi`'
-else
-  TERM_LIB=
-  AC_CHECK_LIB(ncurses, tgetent, TERM_LIB=-lncurses,
-    AC_CHECK_LIB(Hcurses, tgetent, TERM_LIB=-lHcurses,
-      AC_CHECK_LIB(termlib, tgetent, TERM_LIB=-ltermlib,
-        AC_CHECK_LIB(termcap, tgetent, TERM_LIB=-ltermcap,
-         AC_CHECK_LIB(curses, tgetent, TERM_LIB=-lcurses,
-           AC_CHECK_LIB(terminfo, tgetent, TERM_LIB=-lterminfo))))))
-
-  if test "x$TERM_LIB" = x
-  then
-    AC_MSG_ERROR(Could not find a term library, e.g. termcap or termlib!)
-  fi
-fi
-fi
-AC_SUBST(TERM_LIB)
-
 # libreadline needs libuser32.a in a cygwin environment
 WIN32LIBS=
 if test x$gdb_cv_os_cygwin = xyes; then
 # libreadline needs libuser32.a in a cygwin environment
 WIN32LIBS=
 if test x$gdb_cv_os_cygwin = xyes; then
@@ -878,41 +986,6 @@ GUI_CFLAGS_X="-I${srcdir}/../libgui/src"
 AC_SUBST(LIBGUI)
 AC_SUBST(GUI_CFLAGS_X)
 
 AC_SUBST(LIBGUI)
 AC_SUBST(GUI_CFLAGS_X)
 
-AC_ARG_WITH(cpu,
-[  --with-cpu=CPU          Set the default CPU variant to debug],
-[case "${target}" in
-  powerpc-* | powerpcle-* )
-    ## It would be nice to keep this table in sync with the one in
-    ## gcc/configure.
-    case "${with_cpu}" in
-      ppc-uisa | rs6000 | 403 | 403GC | 505 | 860 | 601 | 602 | 603 \
-      | 604 | 750 )
-        ## Those are all handled in variants in rs6000-tdep.c, so they're fine.
-      ;;
-      common | power | power2 | rios | rios1 | rios2 | rsc | rsc1 ) 
-        ## These are all RS6000 variants, as far as GDB is concerned.
-        with_cpu=rs6000
-      ;;
-      603e | ec603e )
-        with_cpu=603
-      ;;
-      604e )
-       with_cpu=604
-      ;;
-      * )
-        AC_MSG_WARN(GDB: unknown --with-cpu value: \`${with_cpu}'; using \`ppc-uisa'.)
-       with_cpu=ppc-uisa
-      ;;
-    esac
-  ;;
-  * )
-    AC_MSG_WARN(GDB may ignore the --with-cpu flag for ${target} targets)
-  ;;
-esac
-AC_DEFINE_UNQUOTED(TARGET_CPU_DEFAULT, "${with_cpu}")
-],)
-
-
 AC_ARG_ENABLE(gdbtk,
 [  --enable-gdbtk          Enable GDBTK GUI front end],
 [case "${enableval}" in
 AC_ARG_ENABLE(gdbtk,
 [  --enable-gdbtk          Enable GDBTK GUI front end],
 [case "${enableval}" in
@@ -987,7 +1060,6 @@ if test "${enable_gdbtk}" = "yes"; then
           CY_AC_PATH_TKH
           CY_AC_PATH_ITCLH
           CY_AC_PATH_ITKH
           CY_AC_PATH_TKH
           CY_AC_PATH_ITCLH
           CY_AC_PATH_ITKH
-          CY_AC_PATH_TIXH
 
 
           # now look for Tk library stuff
 
 
           # now look for Tk library stuff
@@ -1023,14 +1095,6 @@ if test "${enable_gdbtk}" = "yes"; then
             ITK_DEPS="${ITK_LIB_FULL_PATH}"
            fi
 
             ITK_DEPS="${ITK_LIB_FULL_PATH}"
            fi
 
-          # now look for Tix library stuff
-          CY_AC_PATH_TIXCONFIG
-           if test -z "${no_tix}"; then
-             CY_AC_LOAD_TIXCONFIG
-            TIXLIB="${TIX_BUILD_LIB_SPEC}"
-            TIX_DEPS="${TIX_BUILD_LOCATION}/${TIX_LIB_FILE}"
-           fi
-
            ENABLE_CFLAGS="${ENABLE_CFLAGS} \$(SUBDIR_GDBTK_CFLAGS)"
           # Tcl/Tk 8.1 require -fwritable strings.  I don't
            # know whether 8.2 will or not, but I bet it will.
            ENABLE_CFLAGS="${ENABLE_CFLAGS} \$(SUBDIR_GDBTK_CFLAGS)"
           # Tcl/Tk 8.1 require -fwritable strings.  I don't
            # know whether 8.2 will or not, but I bet it will.
@@ -1043,7 +1107,7 @@ if test "${enable_gdbtk}" = "yes"; then
            fi
 
           # Include some libraries that Tcl and Tk want.
            fi
 
           # Include some libraries that Tcl and Tk want.
-          TCL_LIBS='$(LIBGUI) $(ITCL) $(ITK) $(TIX) $(TK) $(TCL) $(X11_LDFLAGS) $(X11_LIBS)'
+          TCL_LIBS='$(LIBGUI) $(ITCL) $(ITK) $(TK) $(TCL) $(X11_LDFLAGS) $(X11_LIBS)'
           # Yes, the ordering seems wrong here.  But it isn't.
           # TK_LIBS is the list of libraries that need to be linked
           # after Tcl/Tk.  Note that this isn't put into LIBS.  If it
           # Yes, the ordering seems wrong here.  But it isn't.
           # TK_LIBS is the list of libraries that need to be linked
           # after Tcl/Tk.  Note that this isn't put into LIBS.  If it
@@ -1067,6 +1131,9 @@ if test "${enable_gdbtk}" = "yes"; then
           fi
        fi
     fi
           fi
        fi
     fi
+
+    SUBDIRS="${SUBDIRS} gdbtk"
+    configdirs="${configdirs} gdbtk"
 fi
 
 AC_SUBST(X_CFLAGS)
 fi
 
 AC_SUBST(X_CFLAGS)
@@ -1078,8 +1145,6 @@ AC_SUBST(ITCLLIB)
 AC_SUBST(ITCL_DEPS)
 AC_SUBST(ITKLIB)
 AC_SUBST(ITK_DEPS)
 AC_SUBST(ITCL_DEPS)
 AC_SUBST(ITKLIB)
 AC_SUBST(ITK_DEPS)
-AC_SUBST(TIXLIB)
-AC_SUBST(TIX_DEPS)
 AC_SUBST(GDBTKLIBS)
 AC_SUBST(GDBTK_CFLAGS)
 AC_SUBST(GDBTK_SRC_DIR)
 AC_SUBST(GDBTKLIBS)
 AC_SUBST(GDBTK_CFLAGS)
 AC_SUBST(GDBTK_SRC_DIR)
@@ -1273,7 +1338,6 @@ case "${GDB_MULTI_ARCH}" in
     *)  AC_MSG_ERROR("GDB: Unknown GDB_MULTI_ARCH value ${GDB_MULTI_ARCH}");;
 esac
 
     *)  AC_MSG_ERROR("GDB: Unknown GDB_MULTI_ARCH value ${GDB_MULTI_ARCH}");;
 esac
 
-SUBDIRS="doc testsuite nlm"
 if test "${enable_multi_ice}" = "yes"; then
   SUBDIRS="${SUBDIRS} multi-ice"
 fi
 if test "${enable_multi_ice}" = "yes"; then
   SUBDIRS="${SUBDIRS} multi-ice"
 fi
@@ -1332,13 +1396,23 @@ if test "${nativefile}" != ""; then
 fi
 AC_SUBST(nm_h)
 
 fi
 AC_SUBST(nm_h)
 
-AC_PROG_LN_S
-
 AC_LINK_FILES($files, $links)
 
 dnl Check for exe extension set on certain hosts (e.g. Win32)
 AC_EXEEXT
 
 AC_LINK_FILES($files, $links)
 
 dnl Check for exe extension set on certain hosts (e.g. Win32)
 AC_EXEEXT
 
+dnl  Detect the character set used by this host.
+
+dnl  At the moment, we just assume it's ISO-8859-1 (which is a
+dnl  superset of ASCII containing the characters needed for French,
+dnl  German, Spanish, Italian, and possibly others), but if were
+dnl  *were* to support any host character sets other than ISO-8859-1,
+dnl  here's where we'd detect it.
+AC_DEFINE(GDB_DEFAULT_HOST_CHARSET, "ISO-8859-1",
+          [Define to be a string naming the default host character set.])
+
+AM_ICONV
+
 AC_CONFIG_SUBDIRS($configdirs)
 AC_OUTPUT(Makefile .gdbinit:gdbinit.in,
 [
 AC_CONFIG_SUBDIRS($configdirs)
 AC_OUTPUT(Makefile .gdbinit:gdbinit.in,
 [
@@ -1347,7 +1421,8 @@ dnl provided by makefile fragments.
 dnl
 if test "${nativefile}" = ""; then
         < Makefile \
 dnl
 if test "${nativefile}" = ""; then
         < Makefile \
-        sed -e '/^NATDEPFILES[[        ]]*=[[  ]]*/s//# NATDEPFILES=/' \
+        sed -e '/^NATDEPFILES[[        ]]*=.*\\$/,/[[^\\]]$/s/^/# /' \
+            -e '/^NATDEPFILES[[        ]]*=/s/^/# /' \
         | sed -e '/^\(NATDEPFILES[[    ]]*[[+]]=[[     ]]*\)/s//# \1/' \
        > Makefile.tem
 mv -f Makefile.tem Makefile
         | sed -e '/^\(NATDEPFILES[[    ]]*[[+]]=[[     ]]*\)/s//# \1/' \
        > Makefile.tem
 mv -f Makefile.tem Makefile
This page took 0.045579 seconds and 4 git commands to generate.