old-cross-binutils/gdb/configure.in

1002 lines
27 KiB
Text
Raw Normal View History

dnl Autoconf configure script for GDB, the GNU debugger.
dnl Copyright 1995, 1996, 1997, 1998, 1999 Free Software Foundation, Inc.
dnl
dnl This file is part of GDB.
dnl
dnl This program is free software; you can redistribute it and/or modify
dnl it under the terms of the GNU General Public License as published by
dnl the Free Software Foundation; either version 2 of the License, or
dnl (at your option) any later version.
dnl
dnl This program is distributed in the hope that it will be useful,
dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
dnl GNU General Public License for more details.
dnl
dnl You should have received a copy of the GNU General Public License
dnl along with this program; if not, write to the Free Software
1996-02-21 17:38:36 +00:00
dnl Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
dnl Process this file with autoconf to produce a configure script.
AC_PREREQ(2.13)dnl
AC_INIT(main.c)
AC_CONFIG_HEADER(config.h:config.in)
AC_PROG_CC
AC_AIX
AC_ISC_POSIX
AM_PROG_CC_STDC
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.
ALL_LINGUAS=
CY_GNU_GETTEXT
dnl List of object files added by configure.
CONFIG_OBS=
* tracepoint.c (set_raw_tracepoint): make sure there's a trailing slash on the directory name * Merge (lots) with foundry-971118-build * Makefile.in (install-only): install the new gdbtk, not the old * top.h: add declaration of get_prompt * top.c (get_prompt): new function * gdbtk.c (gdbtk_call_command): also run idle hooks for class_trace commands (gdbtk_init): add new commands "gdb_get_locals", "gdb_get_args", "gdb_get_function", "gdb_get_line", "gdb_get_file", "gdb_tracepoint_exists", "gdb_get_tracepoint_info", "gdb_actions", and "gdb_prompt" (gdb_get_vars_command): new function (gdb_get_line_command): new function (gdb_get_file_command): new function (gdb_get_function_command): new function (gdb_get_tracepoint_info): new function (gdbtk_create_tracepoint): new function (gdbtk_delete_tracepoint): new function (tracepoint_notify): new function (tracepoint_exists): new function (gdb_actions_command): new function (gdb_tracepoint_exists_command): new function (gdb_prompt_command): new function * main.tcl: initialize gdbtk_state(readline) * console.tcl (invoke): get realine working (activate): add prompt argument for readline (setprompt): add prompt argument for readline * interface.tcl (gdbtk_tcl_readline): hack to get readline working * lots: Merge with foundry-971118-build * console.tcl (setprompt): get prompt from gdb * prefs.tcl (pref_set_defaults): add tracepoint defaults * interface.tcl (gdbtk_tcl_tracepoint): new function * src.tcl (constructor): set default behavior of left click, make a tracepoint dot, too (fill_files): "new" function: ripped out of "location" (location): use fill_files instead (do_bp): add support for tracepoints (bp_line): add support for tracepoints (set_tracepoint): new function (config_win): add "Set tracepoint here" to right-click menu * actiondlg.tcl: new file to help with tracepoint data collection actions * tracedlg.tcl: new file to help with tracepoints
1997-11-26 22:38:10 +00:00
CONFIG_DEPS=
CONFIG_SRCS=
configdirs="doc testsuite"
dnl
changequote(,)dnl
. ${srcdir}/configure.host
. ${srcdir}/configure.tgt
dnl
changequote([,])dnl
AC_PROG_INSTALL
AC_CHECK_TOOL(AR, ar)
AC_CHECK_TOOL(RANLIB, ranlib, :)
1995-10-10 20:19:37 +00:00
AC_PROG_YACC
AC_ARG_PROGRAM
AC_TYPE_SIGNAL
* configure.in: Check for working mmap, ansi headers, string.h, strings.h, and memory.h. * configure: Regenerated. * gdb_stat.h: New file, "portable" <sys/stat.h>. * gdb_string.h: New file, "portable" <string.h>. * altos-xdep.c, arm-tdep.c, arm-xdep.c, convex-tdep.c, convex-xdep.c, coredep.c, cxux-nat.c, dbxread.c, exec.c, gould-xdep.c, hppa-tdep.c, i386aix-nat.c, i386b-nat.c, i386mach-nat.c, i386v-nat.c, infptrace.c, m88k-nat.c, main.c, mdebugread.c, objfiles.c, os9kread.c, procfs.c, pyr-xdep.c, rs6000-nat.c, source.c, standalone.c, stuff.c, sun386-nat.c, symfile.c, symm-nat.c, symm-tdep.c, symtab.c, top.c, ultra3-nat.c, ultra3-xdep.c, umax-xdep.c, xcoffread.c: Include "gdb_stat.h" instead of <sys/stat.h>. * alpha-tdep.c, breakpoint.c, buildsym.c, c-typeprint.c, ch-typeprint.c, coffread.c, command.c, core-sol2.c, core-svr4.c, core.c, corelow.c, cp-valprint.c, dbxread.c, dcache.c, demangle.c, dpx2-nat.c, dstread.c, dwarfread.c, elfread.c, environ.c, eval.c, exec.c, f-lang.c, f-typeprint.c, f-valprint.c, findvar.c, fork-child.c, gdbtypes.c, hpread.c, i386-tdep.c, infcmd.c, inflow.c, infptrace.c, infrun.c, irix5-nat.c, language.c, m2-typeprint.c, main.c, mdebugread.c, minsyms.c, mipsread.c, monitor.c, nlmread.c, objfiles.c, os9kread.c, osfsolib.c, parse.c, printcmd.c, procfs.c, regex.c, remote-adapt.c, remote-arc.c, remote-array.c, remote-bug.c, remote-e7000.c, remote-eb.c, remote-es.c, remote-hms.c, remote-mm.c, remote-os9k.c, remote-pa.c, remote-sim.c, remote-st.c, remote-udi.c, remote-utils.c, remote-vx.c, remote-vx29k.c, remote-vx68.c, remote-vx960.c, remote-vxmips.c, remote-vxsparc.c, remote.c, solib.c, somread.c, source.c, stabsread.c, stack.c, symfile.c, symmisc.c, symtab.c, target.c, top.c, typeprint.c, utils.c, valarith.c, valops.c, valprint.c, values.c, xcoffread.c: Include "gdb_string.h" instead of <string.h>. * gdbtk.c: Likewise. * config/xm-sysv4.h, i386/xm-ptx.h, m68k/xm-sun3os4.h, sparc/xm-sun4os4.h (HAVE_MMAP): Removed. * config/xm-lynx.h, config/i386/xm-ptx.h, config/m68k/nm-apollo68b.h, config/m68k/xm-hp300hpux.h, config/mips/xm-irix3.h, config/mips/xm-mips.h, config/mips/xm-news-mips.h, config/mips/xm-riscos.h, config/pa/hppah.h, config/rs6000/xm-rs6000.h, config/sparc/xm-sun4os4.h, config/sparc/xm-sun4sol2.h, config/vax/xm-vaxbsd.h, config/vax/xm-vaxult.h, config/vax/xm-vaxult2.h (MEM_FNS_DECLARED): Removed. * config/mips/xm-irix3.h, config/mips/xm-mips.h, config/pa/xm-hppah.h (memcpy, memset): Removed declarations.
1995-08-01 20:14:27 +00:00
AC_HEADER_STDC
AC_CHECK_HEADERS(ctype.h curses.h endian.h libintl.h link.h \
memory.h objlist.h ptrace.h sgtty.h stddef.h stdlib.h \
string.h sys/procfs.h sys/ptrace.h sys/reg.h \
term.h termio.h termios.h unistd.h wait.h sys/wait.h \
wchar.h wctype.h asm/debugreg.h)
* configure.in: Check for working mmap, ansi headers, string.h, strings.h, and memory.h. * configure: Regenerated. * gdb_stat.h: New file, "portable" <sys/stat.h>. * gdb_string.h: New file, "portable" <string.h>. * altos-xdep.c, arm-tdep.c, arm-xdep.c, convex-tdep.c, convex-xdep.c, coredep.c, cxux-nat.c, dbxread.c, exec.c, gould-xdep.c, hppa-tdep.c, i386aix-nat.c, i386b-nat.c, i386mach-nat.c, i386v-nat.c, infptrace.c, m88k-nat.c, main.c, mdebugread.c, objfiles.c, os9kread.c, procfs.c, pyr-xdep.c, rs6000-nat.c, source.c, standalone.c, stuff.c, sun386-nat.c, symfile.c, symm-nat.c, symm-tdep.c, symtab.c, top.c, ultra3-nat.c, ultra3-xdep.c, umax-xdep.c, xcoffread.c: Include "gdb_stat.h" instead of <sys/stat.h>. * alpha-tdep.c, breakpoint.c, buildsym.c, c-typeprint.c, ch-typeprint.c, coffread.c, command.c, core-sol2.c, core-svr4.c, core.c, corelow.c, cp-valprint.c, dbxread.c, dcache.c, demangle.c, dpx2-nat.c, dstread.c, dwarfread.c, elfread.c, environ.c, eval.c, exec.c, f-lang.c, f-typeprint.c, f-valprint.c, findvar.c, fork-child.c, gdbtypes.c, hpread.c, i386-tdep.c, infcmd.c, inflow.c, infptrace.c, infrun.c, irix5-nat.c, language.c, m2-typeprint.c, main.c, mdebugread.c, minsyms.c, mipsread.c, monitor.c, nlmread.c, objfiles.c, os9kread.c, osfsolib.c, parse.c, printcmd.c, procfs.c, regex.c, remote-adapt.c, remote-arc.c, remote-array.c, remote-bug.c, remote-e7000.c, remote-eb.c, remote-es.c, remote-hms.c, remote-mm.c, remote-os9k.c, remote-pa.c, remote-sim.c, remote-st.c, remote-udi.c, remote-utils.c, remote-vx.c, remote-vx29k.c, remote-vx68.c, remote-vx960.c, remote-vxmips.c, remote-vxsparc.c, remote.c, solib.c, somread.c, source.c, stabsread.c, stack.c, symfile.c, symmisc.c, symtab.c, target.c, top.c, typeprint.c, utils.c, valarith.c, valops.c, valprint.c, values.c, xcoffread.c: Include "gdb_string.h" instead of <string.h>. * gdbtk.c: Likewise. * config/xm-sysv4.h, i386/xm-ptx.h, m68k/xm-sun3os4.h, sparc/xm-sun4os4.h (HAVE_MMAP): Removed. * config/xm-lynx.h, config/i386/xm-ptx.h, config/m68k/nm-apollo68b.h, config/m68k/xm-hp300hpux.h, config/mips/xm-irix3.h, config/mips/xm-mips.h, config/mips/xm-news-mips.h, config/mips/xm-riscos.h, config/pa/hppah.h, config/rs6000/xm-rs6000.h, config/sparc/xm-sun4os4.h, config/sparc/xm-sun4sol2.h, config/vax/xm-vaxbsd.h, config/vax/xm-vaxult.h, config/vax/xm-vaxult2.h (MEM_FNS_DECLARED): Removed. * config/mips/xm-irix3.h, config/mips/xm-mips.h, config/pa/xm-hppah.h (memcpy, memset): Removed declarations.
1995-08-01 20:14:27 +00:00
AC_HEADER_STAT
* defs.h: Define CONST_PTR as blank if compiling with Microsoft C, else it's `const'. * c-lang.c c-lang.h ch-lang.c f-lang.c language.c m2-lang.c scm-lang.c: Microsoft C can't hack const pointers. Use CONST_PTR macro instead. * configure configure.in defs.h: Use AC_C_CONST to figure out if the compiler supports const. Gets rid of some cruft in defs.h. * dwarf2read.c: <string.h> -> "gdb_string.h" * remote-sim.c: Add prototypes. Fix call to gdbsim_kill. * sparcl-tdep.c (download): Add prototypes to write_routine and start_routine args. * mswin/gdbwin.c: Don't include both varargs.h AND stdarg.h. Get rid of varargs.h Include string.h. * (gdbwin_update gdbwin_fputs regs_changed_f bpt_changed_f update): Fix prototypes, fix calls. * (update): Return value for catch_errors. * (run_execute_command togdb_command_from_tty togdb_command): Cleanup catching of errors from calls to execute_command. Also, dup command string to avoid modifying const strings. * (togdb_breakinfo_i_init togdb_breakinfo_i_next): Use 0 instead of NULL when see if b->address isn't set. * (bi_disable_bpt bi_enable_bpt bi_delete_all bi_delete_breakpoint): Add arg to calls to update. * (gui_command): Add prototype. * (mswin_query): Fix prototype. * (_initialize_gdbwin): Dup string to avoid modifying const. * (info_path togdb_get_info_path): Remove const from decls cuz this can't be const (it points at malloc'ed memory). * (togdb_searchpath): Remove const from path. Dup string to avoid modifying const strings. * rindex -> strrchr. * (gdbwin_list_symbols): Regexp param is const. * Fix lots of refs to psymtabs to deref correct pointers. * (togdb_set_breakpoint_sal): Call set_breakpoint_sal with sal, not &sal. * mswin/gdbwin.h (togdb_searchpath togdb_get_info_path toget_set_info_path): Fix prototypes to match reality. * mswin/gui.cpp: Define _beginthreadex and _endthreadex routines with proper prototypes. * mswin/iface.cpp (gdbwin_fputs): Define with correct number of args. * mswin/ser-win32s.c: Fix defs of min and max. * mswin/serdll32.c (OpenComm16): Make cbInQueue and cbOutQueue be USHORT. * (WriteComm16): Change lpBug from LPVOID to LPCSTR. * mswin/serdll32.h: Fix prototypes for OpenComm16 and WriteComm16.
1996-08-13 00:01:37 +00:00
AC_C_CONST
AC_CHECK_FUNCS(setpgid sbrk sigaction isascii bzero bcopy btowc)
AC_FUNC_ALLOCA
BFD_NEED_DECLARATION(malloc)
BFD_NEED_DECLARATION(realloc)
BFD_NEED_DECLARATION(free)
BFD_NEED_DECLARATION(strerror)
BFD_NEED_DECLARATION(strdup)
# If we are configured native on GNU/Linux, work around problems with sys/procfs.h
if test "${target}" = "${host}"; then
case "${host}" in
i[[3456]]86-*-linux*)
* configure.in (--with-mmalloc): Add new configure arg to use the mmalloc package. Default is to not use it. (START_INFERIOR_TRAPS_EXPECTED): Define to the integer 2, not the string "2". * acconfig.h (USE_MMALLOC, FORCE_MMCHECK): Add #undef. * configure: Regenerated. * config.in: Regenerated. * Makefile.in (MMALLOC_DIR, MMALLOC_SRC): Remove. (MMALLOC): Set using configure. (MMALLOC_CFLAGS): Set using configure. * config/i386/tm-linux.h (sys_quotactl): Define to 1 rather than just defining it. * mpw-make.sed: Undefine USE_MMALLOC rather than defining NO_MMALLOC. * utils.c (NO_MMALLOC): Use USE_MMALLOC instead. * objfiles.c: ditto. * defs.h: ditto. * config/sparc/sun4os4.mh (MMALLOC_CFLAGS): Remove. * config/m68k/sun3os4.mh (MMALLOC_CFLAGS): Remove. * config/i386/cygwin32.mh (MMALLOC_CFLAGS): Remove. * config/alpha/alpha-osf3.mh (MMALLOC_CFLAGS): Remove. * config/alpha/alpha-osf2.mh (MMALLOC_CFLAGS): Remove. * gdbserver/Makefile.in (MMALLOC_*): Remove. * config/rs6000/rs6000.mh (MMALLOC, MMALLOC_CFLAGS): Remove. * config/rs6000/aix4.mh (MMALLOC, MMALLOC_CFLAGS): Remove. * config/powerpc/aix4.mh (MMALLOC, MMALLOC_CFLAGS): Remove. * config/powerpc/aix.mh (MMALLOC, MMALLOC_CFLAGS): Remove. * config/ns32k/ns32km3.mh (MMALLOC, MMALLOC_CFLAGS): Remove. * config/mips/mipsm3.mh (MMALLOC, MMALLOC_CFLAGS): Remove. * config/mips/decstation.mh (MMALLOC, MMALLOC_CFLAGS): Remove. * config/m88k/cxux.mh (MMALLOC, MMALLOC_CFLAGS): Remove. * config/i386/xm-windows.h (NO_MMALLOC, NO_MMCHECK): Remove. * config/i386/i386mk.mh (MMALLOC, MMALLOC_CFLAGS): Remove. * config/i386/i386m3.mh (MMALLOC, MMALLOC_CFLAGS): Remove. * config/i386/i386gnu.mh (MMALLOC, MMALLOC_CFLAGS): Remove. * config/alpha/alpha-osf1.mh (MMALLOC, MMALLOC_CFLAGS): Remove. * config/alpha/alpha-linux.mh (MMALLOC, MMALLOC_CFLAGS): Remove.
1998-01-14 04:28:29 +00:00
AC_DEFINE(START_INFERIOR_TRAPS_EXPECTED,2)
AC_DEFINE(sys_quotactl)
;;
esac
fi
AC_MSG_CHECKING([for gregset_t type])
AC_CACHE_VAL(gdb_cv_have_gregset_t,
[AC_TRY_LINK([#include <sys/procfs.h>],[gregset_t *gregsetp = 0],
gdb_cv_have_gregset_t=yes, gdb_cv_have_gregset_t=no)])
AC_MSG_RESULT($gdb_cv_have_gregset_t)
if test $gdb_cv_have_gregset_t = yes; then
AC_DEFINE(HAVE_GREGSET_T)
fi
AC_MSG_CHECKING([for fpregset_t type])
AC_CACHE_VAL(gdb_cv_have_fpregset_t,
[AC_TRY_LINK([#include <sys/procfs.h>],[fpregset_t *fpregsetp = 0],
gdb_cv_have_fpregset_t=yes, gdb_cv_have_fpregset_t=no)])
AC_MSG_RESULT($gdb_cv_have_fpregset_t)
if test $gdb_cv_have_fpregset_t = yes; then
AC_DEFINE(HAVE_FPREGSET_T)
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))
AC_SUBST(TERM_LIB)
* configure.in: Add test for "long long" support. * configure: Regenerate with autoconf. * acconfig.h: Add CC_HAS_LONG_LONG * config.in: Regenerate with autoheader. * config/mips/tm-mips64.h (FORCE_LONG_LONG): Remove * config/sparc/tm-sp64.h (CC_HAS_LONG_LONG): Remove. * config/mips/tm-vr4300el.h (CC_HAS_LONG_LONG): Remove. * config/mips/tm-vr4300.h (CC_HAS_LONG_LONG): Remove. * config/mips/xm-irix5.h (CC_HAS_LONG_LONG): Remove (PRINTF_HAS_LONG_LONG): Remove. (FORCE_LONG_LONG): Remove. * config/powerpc/xm-aix.h (UINT_MAX): Undef and use gdb's version. * config/convex/xm-convex.h (CC_HAS_LONG_LONG): Remove (PRINTF_HAS_LONG_LONG): Remove. * config/xm-nbsd.h (CC_HAS_LONG_LONG): Remove. (PRINTF_HAS_LONG_LONG): Remove. * config/pa/tm-hppa.h (GET_FIELD): Put parens around subtraction inside shift. Put parens around subtraction in operand of bitwise and. (struct frame_info): Forward declare if __STDC__ defined. (frame_saved_regs): Ditto. (struct value): Ditto. (struct type): Ditto. (struct inferior_status): Ditto. (init_extra_frame_info): Add prototype. (skip_prologue): Ditto. (frameless_function_invocation): Ditto. (frame_chain): Ditto. (frame_chain_valid): Ditto. (saved_pc_after_call): Ditto. (hppa_fix_call_dummy): Ditto. (hppa_push_arguments): Ditto. (pa_do_registers_info): Ditto. (in_solib_call_trampoline): Ditto. (in_solib_return_trampoline): Ditto. (push_dummy_frame): Ditto. * convex-tdep.c (decout): Use print_longest rather than fprintf_filtered. * defs.h: Remove use of FORCE_LONG_LONG and __GNUC__ to set CC_HAS_LONG_LONG. (INT_MIN): Fix so it works correctly when assigned to a long long. * valprint.c (longest_to_int): Rewrite to remove dependence on INT_MIN and INT_MAX. (print_longest): Rewrite the code that falls back to synthesized hex output when LONGEST value is not representable as in a long and printf doesn't support printing long longs. * ch-valprint.c (chill_val_print): Cast 2nd arg of chill_print_type_scalar to LONGEST. chill_print_type_scalar): Make static and add prototype. * hppa-tdep.c (get_field): Ifdef out unused function. (set_field): Ditto. (extract_3): Ditto. (extract_5_store): Ditto. (extract_11): Ditto. (extract_12): Ditto. (deposit_17): Ditto. (extract_14): Convert to static and add prototype. (deposit_14): Ditto. (extract_21): Ditto. (deposit_21): Ditto. (extract_17): Ditto. (extract_5r_store): Ditto. (extract_5R_store): Ditto. (extract_5_load): Ditto. (find_proc_framesize): Ditto. (find_dummy_frame_regs): Ditto. (sign_extend): Ditto. (find_unwind_entry): Add prototype. (find_return_regnum): Ditto. (unwind_command): Ditto. (find_dummy_frame_regs): Add parens around subtraction in operand of bitwise-and. (skip_prologue): Add parens around operands of logical-and inside operand of logical-or. (sign_extend): Add parens around operands of subtraction inside operand of shift. (low_sign_extend): Ditto. * top.c (filename_completer): Convert old style decl of filename_completion_function into prototype. * f-lang.c (patch_common_entries): Ifdef out unused function. * stabsread.c (read_cfront_baseclasses): Remove unused local variable "msg_noterm". (resolve_cfront_continuation): Remove unused local variable "fip". (read_type): Remove unused variable xtypenums. (read_cfront_static_fields): Remove unused variable "i". (read_cfront_static_fields): Remove unused variable "nfields". (read_cfront_member_functions): Add missing comment terminator. (read_cfront_static_fields): Return 1 rather than random value. (read_cfront_baseclasses): Ditto. (read_cfront_baseclasses): Ditto. (read_cfront_baseclasses): Ditto. * somsolib.c (som_solib_create_inferior_hook): Remove unused variable "u". (som_solib_create_inferior_hook): Remove unused variable shadow_contents. (language.h): Add for needed prototypes. (som_solib_sharedlibrary_command): Add prototype. * hpread.c: (hpread_read_array_type): Add prototype. * somread.c (hpread_build_pysmtabs): Add prototype. (hpread_symfile_finish): Ditto. (hpread_symfile_init): Ditto. * hppah-nat.c (fetch_register): Convert old style decl to prototype. (gdbcore.h): Include for needed prototypes. (fetch_register): Remove unused variable "mess". * remote-pa.c (get_offsets): Ifdef out unused function. (remote_start_remote): Remove unused variable "timeout". (boot_board): Add prototype. (reaad_frame): Add prototype. (getpkt): Remove unused variable "bp". (remote_kill): Add prototype. (remote_mourn): Add prototype. (remote_insert_breakpoint): Add prototype. (remote_remove_breakpoint): Add prototype. * valops.c (value_push): Only use if PUSH_ARGUMENTS is not defined. * infcmd.c (do_registers_info): Only need prototype if DO_REGISTERS_INFO is not defined. (breakpoint_auto_delete_contents): Only need if CALL_DUMMY_BREAKPOINT_OFFSET is defined.
1996-07-28 06:32:48 +00:00
dnl See if compiler supports "long long" type.
AC_MSG_CHECKING(for long long support in compiler)
AC_CACHE_VAL(gdb_cv_c_long_long,
[AC_TRY_COMPILE(, [
extern long long foo;
switch (foo & 2) { case 0: return 1; }
],
* configure.in: Add test for "long long" support. * configure: Regenerate with autoconf. * acconfig.h: Add CC_HAS_LONG_LONG * config.in: Regenerate with autoheader. * config/mips/tm-mips64.h (FORCE_LONG_LONG): Remove * config/sparc/tm-sp64.h (CC_HAS_LONG_LONG): Remove. * config/mips/tm-vr4300el.h (CC_HAS_LONG_LONG): Remove. * config/mips/tm-vr4300.h (CC_HAS_LONG_LONG): Remove. * config/mips/xm-irix5.h (CC_HAS_LONG_LONG): Remove (PRINTF_HAS_LONG_LONG): Remove. (FORCE_LONG_LONG): Remove. * config/powerpc/xm-aix.h (UINT_MAX): Undef and use gdb's version. * config/convex/xm-convex.h (CC_HAS_LONG_LONG): Remove (PRINTF_HAS_LONG_LONG): Remove. * config/xm-nbsd.h (CC_HAS_LONG_LONG): Remove. (PRINTF_HAS_LONG_LONG): Remove. * config/pa/tm-hppa.h (GET_FIELD): Put parens around subtraction inside shift. Put parens around subtraction in operand of bitwise and. (struct frame_info): Forward declare if __STDC__ defined. (frame_saved_regs): Ditto. (struct value): Ditto. (struct type): Ditto. (struct inferior_status): Ditto. (init_extra_frame_info): Add prototype. (skip_prologue): Ditto. (frameless_function_invocation): Ditto. (frame_chain): Ditto. (frame_chain_valid): Ditto. (saved_pc_after_call): Ditto. (hppa_fix_call_dummy): Ditto. (hppa_push_arguments): Ditto. (pa_do_registers_info): Ditto. (in_solib_call_trampoline): Ditto. (in_solib_return_trampoline): Ditto. (push_dummy_frame): Ditto. * convex-tdep.c (decout): Use print_longest rather than fprintf_filtered. * defs.h: Remove use of FORCE_LONG_LONG and __GNUC__ to set CC_HAS_LONG_LONG. (INT_MIN): Fix so it works correctly when assigned to a long long. * valprint.c (longest_to_int): Rewrite to remove dependence on INT_MIN and INT_MAX. (print_longest): Rewrite the code that falls back to synthesized hex output when LONGEST value is not representable as in a long and printf doesn't support printing long longs. * ch-valprint.c (chill_val_print): Cast 2nd arg of chill_print_type_scalar to LONGEST. chill_print_type_scalar): Make static and add prototype. * hppa-tdep.c (get_field): Ifdef out unused function. (set_field): Ditto. (extract_3): Ditto. (extract_5_store): Ditto. (extract_11): Ditto. (extract_12): Ditto. (deposit_17): Ditto. (extract_14): Convert to static and add prototype. (deposit_14): Ditto. (extract_21): Ditto. (deposit_21): Ditto. (extract_17): Ditto. (extract_5r_store): Ditto. (extract_5R_store): Ditto. (extract_5_load): Ditto. (find_proc_framesize): Ditto. (find_dummy_frame_regs): Ditto. (sign_extend): Ditto. (find_unwind_entry): Add prototype. (find_return_regnum): Ditto. (unwind_command): Ditto. (find_dummy_frame_regs): Add parens around subtraction in operand of bitwise-and. (skip_prologue): Add parens around operands of logical-and inside operand of logical-or. (sign_extend): Add parens around operands of subtraction inside operand of shift. (low_sign_extend): Ditto. * top.c (filename_completer): Convert old style decl of filename_completion_function into prototype. * f-lang.c (patch_common_entries): Ifdef out unused function. * stabsread.c (read_cfront_baseclasses): Remove unused local variable "msg_noterm". (resolve_cfront_continuation): Remove unused local variable "fip". (read_type): Remove unused variable xtypenums. (read_cfront_static_fields): Remove unused variable "i". (read_cfront_static_fields): Remove unused variable "nfields". (read_cfront_member_functions): Add missing comment terminator. (read_cfront_static_fields): Return 1 rather than random value. (read_cfront_baseclasses): Ditto. (read_cfront_baseclasses): Ditto. (read_cfront_baseclasses): Ditto. * somsolib.c (som_solib_create_inferior_hook): Remove unused variable "u". (som_solib_create_inferior_hook): Remove unused variable shadow_contents. (language.h): Add for needed prototypes. (som_solib_sharedlibrary_command): Add prototype. * hpread.c: (hpread_read_array_type): Add prototype. * somread.c (hpread_build_pysmtabs): Add prototype. (hpread_symfile_finish): Ditto. (hpread_symfile_init): Ditto. * hppah-nat.c (fetch_register): Convert old style decl to prototype. (gdbcore.h): Include for needed prototypes. (fetch_register): Remove unused variable "mess". * remote-pa.c (get_offsets): Ifdef out unused function. (remote_start_remote): Remove unused variable "timeout". (boot_board): Add prototype. (reaad_frame): Add prototype. (getpkt): Remove unused variable "bp". (remote_kill): Add prototype. (remote_mourn): Add prototype. (remote_insert_breakpoint): Add prototype. (remote_remove_breakpoint): Add prototype. * valops.c (value_push): Only use if PUSH_ARGUMENTS is not defined. * infcmd.c (do_registers_info): Only need prototype if DO_REGISTERS_INFO is not defined. (breakpoint_auto_delete_contents): Only need if CALL_DUMMY_BREAKPOINT_OFFSET is defined.
1996-07-28 06:32:48 +00:00
gdb_cv_c_long_long=yes, gdb_cv_c_long_long=no)])
AC_MSG_RESULT($gdb_cv_c_long_long)
if test $gdb_cv_c_long_long = yes; then
AC_DEFINE(CC_HAS_LONG_LONG)
fi
dnl See if the compiler and runtime support printing long long
AC_MSG_CHECKING(for long long support in printf)
AC_CACHE_VAL(gdb_cv_printf_has_long_long,
[AC_TRY_RUN([
int main () {
char buf[32];
long long l = 0;
l = (l << 16) + 0x0123;
l = (l << 16) + 0x4567;
l = (l << 16) + 0x89ab;
l = (l << 16) + 0xcdef;
sprintf (buf, "0x%016llx", l);
return (strcmp ("0x0123456789abcdef", buf));
* configure.in: Add test for "long long" support. * configure: Regenerate with autoconf. * acconfig.h: Add CC_HAS_LONG_LONG * config.in: Regenerate with autoheader. * config/mips/tm-mips64.h (FORCE_LONG_LONG): Remove * config/sparc/tm-sp64.h (CC_HAS_LONG_LONG): Remove. * config/mips/tm-vr4300el.h (CC_HAS_LONG_LONG): Remove. * config/mips/tm-vr4300.h (CC_HAS_LONG_LONG): Remove. * config/mips/xm-irix5.h (CC_HAS_LONG_LONG): Remove (PRINTF_HAS_LONG_LONG): Remove. (FORCE_LONG_LONG): Remove. * config/powerpc/xm-aix.h (UINT_MAX): Undef and use gdb's version. * config/convex/xm-convex.h (CC_HAS_LONG_LONG): Remove (PRINTF_HAS_LONG_LONG): Remove. * config/xm-nbsd.h (CC_HAS_LONG_LONG): Remove. (PRINTF_HAS_LONG_LONG): Remove. * config/pa/tm-hppa.h (GET_FIELD): Put parens around subtraction inside shift. Put parens around subtraction in operand of bitwise and. (struct frame_info): Forward declare if __STDC__ defined. (frame_saved_regs): Ditto. (struct value): Ditto. (struct type): Ditto. (struct inferior_status): Ditto. (init_extra_frame_info): Add prototype. (skip_prologue): Ditto. (frameless_function_invocation): Ditto. (frame_chain): Ditto. (frame_chain_valid): Ditto. (saved_pc_after_call): Ditto. (hppa_fix_call_dummy): Ditto. (hppa_push_arguments): Ditto. (pa_do_registers_info): Ditto. (in_solib_call_trampoline): Ditto. (in_solib_return_trampoline): Ditto. (push_dummy_frame): Ditto. * convex-tdep.c (decout): Use print_longest rather than fprintf_filtered. * defs.h: Remove use of FORCE_LONG_LONG and __GNUC__ to set CC_HAS_LONG_LONG. (INT_MIN): Fix so it works correctly when assigned to a long long. * valprint.c (longest_to_int): Rewrite to remove dependence on INT_MIN and INT_MAX. (print_longest): Rewrite the code that falls back to synthesized hex output when LONGEST value is not representable as in a long and printf doesn't support printing long longs. * ch-valprint.c (chill_val_print): Cast 2nd arg of chill_print_type_scalar to LONGEST. chill_print_type_scalar): Make static and add prototype. * hppa-tdep.c (get_field): Ifdef out unused function. (set_field): Ditto. (extract_3): Ditto. (extract_5_store): Ditto. (extract_11): Ditto. (extract_12): Ditto. (deposit_17): Ditto. (extract_14): Convert to static and add prototype. (deposit_14): Ditto. (extract_21): Ditto. (deposit_21): Ditto. (extract_17): Ditto. (extract_5r_store): Ditto. (extract_5R_store): Ditto. (extract_5_load): Ditto. (find_proc_framesize): Ditto. (find_dummy_frame_regs): Ditto. (sign_extend): Ditto. (find_unwind_entry): Add prototype. (find_return_regnum): Ditto. (unwind_command): Ditto. (find_dummy_frame_regs): Add parens around subtraction in operand of bitwise-and. (skip_prologue): Add parens around operands of logical-and inside operand of logical-or. (sign_extend): Add parens around operands of subtraction inside operand of shift. (low_sign_extend): Ditto. * top.c (filename_completer): Convert old style decl of filename_completion_function into prototype. * f-lang.c (patch_common_entries): Ifdef out unused function. * stabsread.c (read_cfront_baseclasses): Remove unused local variable "msg_noterm". (resolve_cfront_continuation): Remove unused local variable "fip". (read_type): Remove unused variable xtypenums. (read_cfront_static_fields): Remove unused variable "i". (read_cfront_static_fields): Remove unused variable "nfields". (read_cfront_member_functions): Add missing comment terminator. (read_cfront_static_fields): Return 1 rather than random value. (read_cfront_baseclasses): Ditto. (read_cfront_baseclasses): Ditto. (read_cfront_baseclasses): Ditto. * somsolib.c (som_solib_create_inferior_hook): Remove unused variable "u". (som_solib_create_inferior_hook): Remove unused variable shadow_contents. (language.h): Add for needed prototypes. (som_solib_sharedlibrary_command): Add prototype. * hpread.c: (hpread_read_array_type): Add prototype. * somread.c (hpread_build_pysmtabs): Add prototype. (hpread_symfile_finish): Ditto. (hpread_symfile_init): Ditto. * hppah-nat.c (fetch_register): Convert old style decl to prototype. (gdbcore.h): Include for needed prototypes. (fetch_register): Remove unused variable "mess". * remote-pa.c (get_offsets): Ifdef out unused function. (remote_start_remote): Remove unused variable "timeout". (boot_board): Add prototype. (reaad_frame): Add prototype. (getpkt): Remove unused variable "bp". (remote_kill): Add prototype. (remote_mourn): Add prototype. (remote_insert_breakpoint): Add prototype. (remote_remove_breakpoint): Add prototype. * valops.c (value_push): Only use if PUSH_ARGUMENTS is not defined. * infcmd.c (do_registers_info): Only need prototype if DO_REGISTERS_INFO is not defined. (breakpoint_auto_delete_contents): Only need if CALL_DUMMY_BREAKPOINT_OFFSET is defined.
1996-07-28 06:32:48 +00:00
}],
gdb_cv_printf_has_long_long=yes,
gdb_cv_printf_has_long_long=no,
gdb_cv_printf_has_long_long=no)])
if test $gdb_cv_printf_has_long_long = yes; then
AC_DEFINE(PRINTF_HAS_LONG_LONG)
fi
AC_MSG_RESULT($gdb_cv_printf_has_long_long)
* Add native support for long double data type. * c-exp.y (%union): Change dval to typed_val_float. Use DOUBLEST to store actual data. Change types of INT and FLOAT tokens to typed_val_int and typed_val_float respectively. Create new token DOUBLE_KEYWORD to specify the string `double'. Make production for FLOAT use type determined by parse_number. Add production for "long double" data type. * (parse_number): Use sscanf to parse numbers as float, double or long double depending upon the type of typed_val_float.dval. Also allow user to specify `f' or `l' suffix to explicitly specify float or long double constants. Change typed_val to typed_val_int. * (yylex): Change typed_val to typed_val_int. Also, scan for "double" keyword. * coffread.c (decode_base_type): Add support for T_LNGDBL basic type. * configure, configure.in: Add check for long double support in the host compiler. * defs.h: Define DOUBLEST appropriatly depending on whether HAVE_LONG_DOUBLE (from autoconf) is defined. Also, fix prototypes for functions that handle this type. * expression.h (union exp_element): doubleconst is now type DOUBLEST. * m2-exp.y f-exp.y (%union): dval becomes type DOUBLEST. * findvar.c (extract_floating): Make return value be DOUBLEST. Also, add support for numbers with size of long double. * (store_floating): Arg `val' is now type DOUBLEST. Handle all floating types. * parser-defs.h parse.c (write_exp_elt_dblcst): Arg expelt is now DOUBLEST. * valarith.c (value_binop): Change temp variables v1, v2 and v to type DOUBLEST. Coerce type of result to long double if either op was of that type. * valops.c (value_arg_coerce): If argument type is bigger than double, coerce to long double. * (call_function_by_hand): If REG_STRUCT_HAS_ADDR is defined, and arg type is float and > 8 bytes, then use pointer-to-object calling conventions. * valprint.c (print_floating): Arg doub is now type DOUBLEST. Use appropriate format and precision to print out floating point values. * value.h: Fixup prototypes for value_as_double, value_from_double, and unpack_double to use DOUBLEST. * values.c (record_latest_value): Remove check for invalid floats. Allow history to store them so that people may examine them in hex if they want. * (value_as_double unpack_double): Change return value to DOUBLEST. * (value_from_double): Arg `num' is now DOUBLEST. * (using_struct_return): Use RETURN_VALUE_ON_STACK macro (target specific) to expect certain types to always be returned on the stack.
1996-02-17 00:07:35 +00:00
dnl See if compiler supports "long double" type. Can't use AC_C_LONG_DOUBLE
dnl because autoconf complains about cross-compilation issues. However, this
dnl code uses the same variables as the macro for compatibility.
AC_MSG_CHECKING(for long double support in compiler)
* Add native support for long double data type. * c-exp.y (%union): Change dval to typed_val_float. Use DOUBLEST to store actual data. Change types of INT and FLOAT tokens to typed_val_int and typed_val_float respectively. Create new token DOUBLE_KEYWORD to specify the string `double'. Make production for FLOAT use type determined by parse_number. Add production for "long double" data type. * (parse_number): Use sscanf to parse numbers as float, double or long double depending upon the type of typed_val_float.dval. Also allow user to specify `f' or `l' suffix to explicitly specify float or long double constants. Change typed_val to typed_val_int. * (yylex): Change typed_val to typed_val_int. Also, scan for "double" keyword. * coffread.c (decode_base_type): Add support for T_LNGDBL basic type. * configure, configure.in: Add check for long double support in the host compiler. * defs.h: Define DOUBLEST appropriatly depending on whether HAVE_LONG_DOUBLE (from autoconf) is defined. Also, fix prototypes for functions that handle this type. * expression.h (union exp_element): doubleconst is now type DOUBLEST. * m2-exp.y f-exp.y (%union): dval becomes type DOUBLEST. * findvar.c (extract_floating): Make return value be DOUBLEST. Also, add support for numbers with size of long double. * (store_floating): Arg `val' is now type DOUBLEST. Handle all floating types. * parser-defs.h parse.c (write_exp_elt_dblcst): Arg expelt is now DOUBLEST. * valarith.c (value_binop): Change temp variables v1, v2 and v to type DOUBLEST. Coerce type of result to long double if either op was of that type. * valops.c (value_arg_coerce): If argument type is bigger than double, coerce to long double. * (call_function_by_hand): If REG_STRUCT_HAS_ADDR is defined, and arg type is float and > 8 bytes, then use pointer-to-object calling conventions. * valprint.c (print_floating): Arg doub is now type DOUBLEST. Use appropriate format and precision to print out floating point values. * value.h: Fixup prototypes for value_as_double, value_from_double, and unpack_double to use DOUBLEST. * values.c (record_latest_value): Remove check for invalid floats. Allow history to store them so that people may examine them in hex if they want. * (value_as_double unpack_double): Change return value to DOUBLEST. * (value_from_double): Arg `num' is now DOUBLEST. * (using_struct_return): Use RETURN_VALUE_ON_STACK macro (target specific) to expect certain types to always be returned on the stack.
1996-02-17 00:07:35 +00:00
AC_CACHE_VAL(ac_cv_c_long_double,
[AC_TRY_COMPILE(, [long double foo;],
ac_cv_c_long_double=yes, ac_cv_c_long_double=no)])
AC_MSG_RESULT($ac_cv_c_long_double)
if test $ac_cv_c_long_double = yes; then
AC_DEFINE(HAVE_LONG_DOUBLE)
fi
dnl See if the compiler and runtime support printing long doubles
AC_MSG_CHECKING(for long double support in printf)
AC_CACHE_VAL(gdb_cv_printf_has_long_double,
[AC_TRY_RUN([
int main () {
char buf[16];
long double f = 3.141592653;
sprintf (buf, "%Lg", f);
return (strncmp ("3.14159", buf, 7));
}],
gdb_cv_printf_has_long_double=yes,
gdb_cv_printf_has_long_double=no,
gdb_cv_printf_has_long_double=no)])
if test $gdb_cv_printf_has_long_double = yes; then
AC_DEFINE(PRINTF_HAS_LONG_DOUBLE)
fi
AC_MSG_RESULT($gdb_cv_printf_has_long_double)
dnl See if the compiler and runtime support scanning long doubles
AC_MSG_CHECKING(for long double support in scanf)
AC_CACHE_VAL(gdb_cv_scanf_has_long_double,
[AC_TRY_RUN([
int main () {
char *buf = "3.141592653";
long double f = 0;
sscanf (buf, "%Lg", &f);
return !(f > 3.14159 && f < 3.14160);
}],
gdb_cv_scanf_has_long_double=yes,
gdb_cv_scanf_has_long_double=no,
gdb_cv_scanf_has_long_double=no)])
if test $gdb_cv_scanf_has_long_double = yes; then
AC_DEFINE(SCANF_HAS_LONG_DOUBLE)
fi
AC_MSG_RESULT($gdb_cv_scanf_has_long_double)
* configure.in: Check for working mmap, ansi headers, string.h, strings.h, and memory.h. * configure: Regenerated. * gdb_stat.h: New file, "portable" <sys/stat.h>. * gdb_string.h: New file, "portable" <string.h>. * altos-xdep.c, arm-tdep.c, arm-xdep.c, convex-tdep.c, convex-xdep.c, coredep.c, cxux-nat.c, dbxread.c, exec.c, gould-xdep.c, hppa-tdep.c, i386aix-nat.c, i386b-nat.c, i386mach-nat.c, i386v-nat.c, infptrace.c, m88k-nat.c, main.c, mdebugread.c, objfiles.c, os9kread.c, procfs.c, pyr-xdep.c, rs6000-nat.c, source.c, standalone.c, stuff.c, sun386-nat.c, symfile.c, symm-nat.c, symm-tdep.c, symtab.c, top.c, ultra3-nat.c, ultra3-xdep.c, umax-xdep.c, xcoffread.c: Include "gdb_stat.h" instead of <sys/stat.h>. * alpha-tdep.c, breakpoint.c, buildsym.c, c-typeprint.c, ch-typeprint.c, coffread.c, command.c, core-sol2.c, core-svr4.c, core.c, corelow.c, cp-valprint.c, dbxread.c, dcache.c, demangle.c, dpx2-nat.c, dstread.c, dwarfread.c, elfread.c, environ.c, eval.c, exec.c, f-lang.c, f-typeprint.c, f-valprint.c, findvar.c, fork-child.c, gdbtypes.c, hpread.c, i386-tdep.c, infcmd.c, inflow.c, infptrace.c, infrun.c, irix5-nat.c, language.c, m2-typeprint.c, main.c, mdebugread.c, minsyms.c, mipsread.c, monitor.c, nlmread.c, objfiles.c, os9kread.c, osfsolib.c, parse.c, printcmd.c, procfs.c, regex.c, remote-adapt.c, remote-arc.c, remote-array.c, remote-bug.c, remote-e7000.c, remote-eb.c, remote-es.c, remote-hms.c, remote-mm.c, remote-os9k.c, remote-pa.c, remote-sim.c, remote-st.c, remote-udi.c, remote-utils.c, remote-vx.c, remote-vx29k.c, remote-vx68.c, remote-vx960.c, remote-vxmips.c, remote-vxsparc.c, remote.c, solib.c, somread.c, source.c, stabsread.c, stack.c, symfile.c, symmisc.c, symtab.c, target.c, top.c, typeprint.c, utils.c, valarith.c, valops.c, valprint.c, values.c, xcoffread.c: Include "gdb_string.h" instead of <string.h>. * gdbtk.c: Likewise. * config/xm-sysv4.h, i386/xm-ptx.h, m68k/xm-sun3os4.h, sparc/xm-sun4os4.h (HAVE_MMAP): Removed. * config/xm-lynx.h, config/i386/xm-ptx.h, config/m68k/nm-apollo68b.h, config/m68k/xm-hp300hpux.h, config/mips/xm-irix3.h, config/mips/xm-mips.h, config/mips/xm-news-mips.h, config/mips/xm-riscos.h, config/pa/hppah.h, config/rs6000/xm-rs6000.h, config/sparc/xm-sun4os4.h, config/sparc/xm-sun4sol2.h, config/vax/xm-vaxbsd.h, config/vax/xm-vaxult.h, config/vax/xm-vaxult2.h (MEM_FNS_DECLARED): Removed. * config/mips/xm-irix3.h, config/mips/xm-mips.h, config/pa/xm-hppah.h (memcpy, memset): Removed declarations.
1995-08-01 20:14:27 +00:00
AC_FUNC_MMAP
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.
dnl Note that we only want this if we are both native (host == target), and
dnl not doing a canadian cross build (build == host).
if test ${build} = ${host} -a ${host} = ${target} ; then
case ${host_os} in
hpux*)
AC_MSG_CHECKING(for HPUX/OSF thread support)
if test -f /usr/include/dce/cma_config.h ; then
if test "$GCC" = "yes" ; then
AC_MSG_RESULT(yes)
AC_DEFINE(HAVE_HPUX_THREAD_SUPPORT)
CONFIG_OBS="${CONFIG_OJS} hpux-thread.o"
CONFIG_SRCS="${CONFIG_SRCS} hpux-thread.c"
else
AC_MSG_RESULT(no (suppressed because you are not using GCC))
fi
else
AC_MSG_RESULT(no)
fi
;;
solaris*)
AC_MSG_CHECKING(for Solaris thread debugging library)
if test -f /usr/lib/libthread_db.so.1 ; then
AC_MSG_RESULT(yes)
AC_DEFINE(HAVE_THREAD_DB_LIB)
CONFIG_OBS="${CONFIG_OBS} sol-thread.o"
CONFIG_SRCS="${CONFIG_SRCS} sol-thread.c"
AC_CHECK_LIB(dl, dlopen)
if test "$GCC" = "yes" ; then
# The GNU linker requires the -export-dynamic option to make
# all symbols visible in the dynamic symbol table.
hold_ldflags=$LDFLAGS
AC_MSG_CHECKING(for the ld -export-dynamic flag)
LDFLAGS="${LDFLAGS} -Wl,-export-dynamic"
AC_TRY_LINK(, [int i;], found=yes, found=no)
LDFLAGS=$hold_ldflags
AC_MSG_RESULT($found)
if test $found = yes; then
CONFIG_LDFLAGS="${CONFIG_LDFLAGS} -Wl,-export-dynamic"
fi
fi
# Sun randomly tweaked the prototypes in <proc_service.h>
# at one point.
AC_MSG_CHECKING(if <proc_service.h> is old)
AC_CACHE_VAL(gdb_cv_proc_service_is_old,[
AC_TRY_COMPILE([
#include <proc_service.h>
ps_err_e ps_pdwrite
(struct ps_prochandle*, psaddr_t, const void*, size_t);
],, gdb_cv_proc_service_is_old=no,
gdb_cv_proc_service_is_old=yes)
])
AC_MSG_RESULT($gdb_cv_proc_service_is_old)
if test $gdb_cv_proc_service_is_old = yes; then
AC_DEFINE(PROC_SERVICE_IS_OLD)
fi
else
AC_MSG_RESULT(no)
fi
;;
esac
AC_SUBST(CONFIG_LDFLAGS)
fi
dnl Handle optional features that can be enabled.
ENABLE_CFLAGS=
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" )
AC_DEFINE(TUI)
BUILD_TUI=all-tui
TUI_LIBRARY=tui/libtui.a
;;
* )
BUILD_TUI=
TUI_LIBRARY=
;;
esac
AC_SUBST(BUILD_TUI)
AC_SUBST(TUI_LIBRARY)
AC_ARG_ENABLE(netrom,
[ --enable-netrom Enable NetROM support],
[case "${enableval}" in
yes) enable_netrom=yes ;;
no) enable_netrom=no ;;
*) AC_MSG_ERROR(bad value ${enableval} given for netrom option) ;;
esac])
if test "${enable_netrom}" = "yes"; then
* Makefile.in configure configure.in: Remove ENABLE_CLIBS, ENABLE_OBS, and THREAD_DB_OBS. These are consolidated into LIBS and CONFIG_OBS. * configure configure.in: Clean up test cases around thread support. start-sanitize-v850 * configure.tgt (v850-*-*): Include v850ice.o and v850.lib if host is Windows. end-sanitize-v850 * c-valprint.c ch-valprint.c cp-valprint.c eval.c expprint.c printcmd.c valops.c value.h values.c: Add bfd_section arg to value_at and value_at_lazy. * coffread.c dbxread.c elfread.c mdebugread.c minsyms.c symtab.h: Add bfd_section arg to prim_record_minimal_symbol_and_info. * corefile.c gdbcore.h printcmd.c valops.c: Use read_memory_section instead of read_memory. It takes a bfd_section arg. * coffread.c dbxread.c elfread.c gdb-stabs.h objfiles.h: Remove unnecessary cast for assignment of struct dbx_symfile_info. Struct objfile now uses a real pointer instead of PTR for this element. * dbxread.c (dbx_symfile_init): Stash bfd section pointers for text, data and bss into dbx_symfile_info. * exec.c (xfer_memory): Handle transfers for user-specified sections. * findvar.c (read_var_value locate_var_value): Copy bfd section from the symbol to the value. * gdb-stabs.h: Add section pointers for text, data and bss sections. * maint.c (translate address command): Add test code for overlay address translation. * printcmd.c (do_examine do_one_display): Now takes a bfd section arg. * (print_formatted x_command): Record current section along with current address for repeated commands. * sparc-nat.c (fetch_inferior_registers): Change target_xfer_memory to target_{read write}_memory to allow changes to target_xfer_memory interface for section info. * symmisc.c (dump_msymbols print_symbol): Print section assocaited with symbol. * symtab.c (fixup_symbol_section): New routine to add section info to symbols returned by lookup_symbol. * symtab.h (struct general_symbol_info): Add bfd section to symbols. * target.c target.h (target_xfer_memory): Add bfd section to args. * (target_read_memory_section): New routine to read data from a specific section. * (target_memory_bfd_section): New global variable to pass bfd section in to targets. * valarith.c (value_add value_addr value_array): Preserve bfd section when computing new value. * value.h (struct value): Add bfd section to values. * values.c (allocate_value value_copy): Initialize/preserve bfd section. * (unpack_double): Clean up _MSC_VER conditionals to remove duplicate code. start-sanitize-v850 * v850ice.c: New module to support communication with NEC's PC-based ICE. * config/v850/tm-v850.h (REGISTER_NAMES): Replace sp, gp, fp, and ep names with rxx names. sp and fp are renamed via a different mechanism. end-sanitize-v850
1997-01-04 00:25:53 +00:00
CONFIG_OBS="${CONFIG_OBS} remote-nrom.o"
CONFIG_SRCS="${CONFIG_SRCS} remote-nrom.c"
fi
AC_ARG_ENABLE(build-warnings,
[ --enable-build-warnings Enable build-time compiler warnings if gcc is used],
[build_warnings="-Wall -Wpointer-arith -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations"
case "${enableval}" in
yes) ;;
no) build_warnings="-w";;
,*) t=`echo "${enableval}" | sed -e "s/,/ /g"`
build_warnings="${build_warnings} ${t}";;
*,) t=`echo "${enableval}" | sed -e "s/,/ /g"`
build_warnings="${t} ${build_warnings}";;
*) build_warnings=`echo "${enableval}" | sed -e "s/,/ /g"`;;
esac],[build_warnings=""])dnl
if test "x${build_warnings}" != x -a "x$GCC" = xyes
then
WARN_CFLAGS="${build_warnings}"
else
WARN_CFLAGS=""
fi
AC_SUBST(WARN_CFLAGS)
* configure.in (--with-mmalloc): Add new configure arg to use the mmalloc package. Default is to not use it. (START_INFERIOR_TRAPS_EXPECTED): Define to the integer 2, not the string "2". * acconfig.h (USE_MMALLOC, FORCE_MMCHECK): Add #undef. * configure: Regenerated. * config.in: Regenerated. * Makefile.in (MMALLOC_DIR, MMALLOC_SRC): Remove. (MMALLOC): Set using configure. (MMALLOC_CFLAGS): Set using configure. * config/i386/tm-linux.h (sys_quotactl): Define to 1 rather than just defining it. * mpw-make.sed: Undefine USE_MMALLOC rather than defining NO_MMALLOC. * utils.c (NO_MMALLOC): Use USE_MMALLOC instead. * objfiles.c: ditto. * defs.h: ditto. * config/sparc/sun4os4.mh (MMALLOC_CFLAGS): Remove. * config/m68k/sun3os4.mh (MMALLOC_CFLAGS): Remove. * config/i386/cygwin32.mh (MMALLOC_CFLAGS): Remove. * config/alpha/alpha-osf3.mh (MMALLOC_CFLAGS): Remove. * config/alpha/alpha-osf2.mh (MMALLOC_CFLAGS): Remove. * gdbserver/Makefile.in (MMALLOC_*): Remove. * config/rs6000/rs6000.mh (MMALLOC, MMALLOC_CFLAGS): Remove. * config/rs6000/aix4.mh (MMALLOC, MMALLOC_CFLAGS): Remove. * config/powerpc/aix4.mh (MMALLOC, MMALLOC_CFLAGS): Remove. * config/powerpc/aix.mh (MMALLOC, MMALLOC_CFLAGS): Remove. * config/ns32k/ns32km3.mh (MMALLOC, MMALLOC_CFLAGS): Remove. * config/mips/mipsm3.mh (MMALLOC, MMALLOC_CFLAGS): Remove. * config/mips/decstation.mh (MMALLOC, MMALLOC_CFLAGS): Remove. * config/m88k/cxux.mh (MMALLOC, MMALLOC_CFLAGS): Remove. * config/i386/xm-windows.h (NO_MMALLOC, NO_MMCHECK): Remove. * config/i386/i386mk.mh (MMALLOC, MMALLOC_CFLAGS): Remove. * config/i386/i386m3.mh (MMALLOC, MMALLOC_CFLAGS): Remove. * config/i386/i386gnu.mh (MMALLOC, MMALLOC_CFLAGS): Remove. * config/alpha/alpha-osf1.mh (MMALLOC, MMALLOC_CFLAGS): Remove. * config/alpha/alpha-linux.mh (MMALLOC, MMALLOC_CFLAGS): Remove.
1998-01-14 04:28:29 +00:00
MMALLOC_CFLAGS=
MMALLOC=
AC_SUBST(MMALLOC_CFLAGS)
AC_SUBST(MMALLOC)
AC_ARG_WITH(mmalloc,
[ --with-mmalloc Use memory mapped malloc package],
* configure.in (--with-mmalloc): Add new configure arg to use the mmalloc package. Default is to not use it. (START_INFERIOR_TRAPS_EXPECTED): Define to the integer 2, not the string "2". * acconfig.h (USE_MMALLOC, FORCE_MMCHECK): Add #undef. * configure: Regenerated. * config.in: Regenerated. * Makefile.in (MMALLOC_DIR, MMALLOC_SRC): Remove. (MMALLOC): Set using configure. (MMALLOC_CFLAGS): Set using configure. * config/i386/tm-linux.h (sys_quotactl): Define to 1 rather than just defining it. * mpw-make.sed: Undefine USE_MMALLOC rather than defining NO_MMALLOC. * utils.c (NO_MMALLOC): Use USE_MMALLOC instead. * objfiles.c: ditto. * defs.h: ditto. * config/sparc/sun4os4.mh (MMALLOC_CFLAGS): Remove. * config/m68k/sun3os4.mh (MMALLOC_CFLAGS): Remove. * config/i386/cygwin32.mh (MMALLOC_CFLAGS): Remove. * config/alpha/alpha-osf3.mh (MMALLOC_CFLAGS): Remove. * config/alpha/alpha-osf2.mh (MMALLOC_CFLAGS): Remove. * gdbserver/Makefile.in (MMALLOC_*): Remove. * config/rs6000/rs6000.mh (MMALLOC, MMALLOC_CFLAGS): Remove. * config/rs6000/aix4.mh (MMALLOC, MMALLOC_CFLAGS): Remove. * config/powerpc/aix4.mh (MMALLOC, MMALLOC_CFLAGS): Remove. * config/powerpc/aix.mh (MMALLOC, MMALLOC_CFLAGS): Remove. * config/ns32k/ns32km3.mh (MMALLOC, MMALLOC_CFLAGS): Remove. * config/mips/mipsm3.mh (MMALLOC, MMALLOC_CFLAGS): Remove. * config/mips/decstation.mh (MMALLOC, MMALLOC_CFLAGS): Remove. * config/m88k/cxux.mh (MMALLOC, MMALLOC_CFLAGS): Remove. * config/i386/xm-windows.h (NO_MMALLOC, NO_MMCHECK): Remove. * config/i386/i386mk.mh (MMALLOC, MMALLOC_CFLAGS): Remove. * config/i386/i386m3.mh (MMALLOC, MMALLOC_CFLAGS): Remove. * config/i386/i386gnu.mh (MMALLOC, MMALLOC_CFLAGS): Remove. * config/alpha/alpha-osf1.mh (MMALLOC, MMALLOC_CFLAGS): Remove. * config/alpha/alpha-linux.mh (MMALLOC, MMALLOC_CFLAGS): Remove.
1998-01-14 04:28:29 +00:00
[case "${withval}" in
yes) want_mmalloc=true ;;
no) want_mmalloc=false;;
*) AC_MSG_ERROR(bad value ${withval} for GDB with-mmalloc option) ;;
esac],[want_mmalloc=false])dnl
if test x$want_mmalloc = xtrue; then
AC_DEFINE(USE_MMALLOC)
AC_DEFINE(MMCHECK_FORCE)
* configure.in (--with-mmalloc): Add new configure arg to use the mmalloc package. Default is to not use it. (START_INFERIOR_TRAPS_EXPECTED): Define to the integer 2, not the string "2". * acconfig.h (USE_MMALLOC, FORCE_MMCHECK): Add #undef. * configure: Regenerated. * config.in: Regenerated. * Makefile.in (MMALLOC_DIR, MMALLOC_SRC): Remove. (MMALLOC): Set using configure. (MMALLOC_CFLAGS): Set using configure. * config/i386/tm-linux.h (sys_quotactl): Define to 1 rather than just defining it. * mpw-make.sed: Undefine USE_MMALLOC rather than defining NO_MMALLOC. * utils.c (NO_MMALLOC): Use USE_MMALLOC instead. * objfiles.c: ditto. * defs.h: ditto. * config/sparc/sun4os4.mh (MMALLOC_CFLAGS): Remove. * config/m68k/sun3os4.mh (MMALLOC_CFLAGS): Remove. * config/i386/cygwin32.mh (MMALLOC_CFLAGS): Remove. * config/alpha/alpha-osf3.mh (MMALLOC_CFLAGS): Remove. * config/alpha/alpha-osf2.mh (MMALLOC_CFLAGS): Remove. * gdbserver/Makefile.in (MMALLOC_*): Remove. * config/rs6000/rs6000.mh (MMALLOC, MMALLOC_CFLAGS): Remove. * config/rs6000/aix4.mh (MMALLOC, MMALLOC_CFLAGS): Remove. * config/powerpc/aix4.mh (MMALLOC, MMALLOC_CFLAGS): Remove. * config/powerpc/aix.mh (MMALLOC, MMALLOC_CFLAGS): Remove. * config/ns32k/ns32km3.mh (MMALLOC, MMALLOC_CFLAGS): Remove. * config/mips/mipsm3.mh (MMALLOC, MMALLOC_CFLAGS): Remove. * config/mips/decstation.mh (MMALLOC, MMALLOC_CFLAGS): Remove. * config/m88k/cxux.mh (MMALLOC, MMALLOC_CFLAGS): Remove. * config/i386/xm-windows.h (NO_MMALLOC, NO_MMCHECK): Remove. * config/i386/i386mk.mh (MMALLOC, MMALLOC_CFLAGS): Remove. * config/i386/i386m3.mh (MMALLOC, MMALLOC_CFLAGS): Remove. * config/i386/i386gnu.mh (MMALLOC, MMALLOC_CFLAGS): Remove. * config/alpha/alpha-osf1.mh (MMALLOC, MMALLOC_CFLAGS): Remove. * config/alpha/alpha-linux.mh (MMALLOC, MMALLOC_CFLAGS): Remove.
1998-01-14 04:28:29 +00:00
MMALLOC_CFLAGS="-I$srcdir/../mmalloc"
MMALLOC='../mmalloc/libmmalloc.a'
fi
# start-sanitize-carp
# The below takes an educated guess at the targets that
# should be built. It is an interum version that provides
# significant backward compatibility.
AC_ARG_ENABLE(carp,
[ --enable-carp Configure alternative readaptive paradigm ],
[case "${enableval}" in
yes) enable_carp=yes ;;
no) enable_carp=no ;;
*) AC_MSG_ERROR([bad value ${enableval} for carp option]) ;;
esac],[enable_carp=no])dnl
AC_ARG_ENABLE(targets,
[ --enable-targets alternative target configurations],
[case "${enableval}" in
yes | "") AC_ERROR(enable-targets option must specify target names or 'all')
;;
no) enable_targets= ;;
*) enable_targets="$enableval" ;;
esac])dnl
# Canonicalize the secondary target names.
all_targets=false
if test -n "$enable_targets" ; then
if test "$enable_targets" = all ; then
all_targets=true
else
for targ in `echo $enable_targets | sed 's/,/ /g'`
do
result=`${CONFIG_SHELL-/bin/sh} $ac_config_sub $targ 2>/dev/null`
if test -n "$result" ; then
canon_targets="$canon_targets $result"
fi
done
fi
fi
# Convert the target names into GDB [*]-tdep.c names
changequote(,)dnl
selarchs=
for targ in $target $canon_targets
do
if test "x$targ" = "xall" ; then
all_targets=true
else
t_cpu=`echo $targ | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
t_vendor=`echo $targ | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
t_os=`echo $targ | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
mt=`
target=$targ
target_cpu=$t_cpu
target_vendor=$t_vendor
target_os=$t_os
. ${srcdir}/configure.tgt
echo ${srcdir}/config/${gdb_target_cpu}/${gdb_target}.mt`
if test -r ${mt} ; then
# This gets confused over .mt files that have multiple -tdep.o
tdep=`sed -n '
s/^.*[ =]\([^ ]*\)-tdep.o.*/\1/p
' $mt`
selarchs="$selarchs $tdep"
fi
fi
done
changequote([,])dnl
# We don't do any links based on the target system, just makefile config.
if test x${all_targets} = xfalse ; then
# Target architecture .o files.
ta=
for arch in $selarchs
do
archdefs="$archdefs -DARCH_$arch"
ta="$ta ${arch}-tdep.o"
# Special cases
case "$arch" in
dvp) ta="$ta mips-tdep.o dvp-tdep.o" ;;
esac
done
# Weed out duplicate .o files.
f=""
for i in $ta ; do
case " $f " in
*" $i "*) ;;
*) f="$f $i" ;;
esac
done
ta="$f"
# And duplicate -D flags.
f=""
for i in $archdefs ; do
case " $f " in
*" $i "*) ;;
*) f="$f $i" ;;
esac
done
archdefs="$f"
MACHINE_OBS="$ta"
else # all_targets is true
archdefs=-DARCH_all
MACHINE_OBS='$(ALL_MACHINES)'
fi
dnl Don't define an archdefs list
dnl AC_SUBST(archdefs)
dnl XXXX this name will change several more times
if test "${enable_carp}" = yes ; then
gdb_target=carp
gdb_target_cpu=carp
else
MACHINE_OBS="# $MACHINE_OBS"
fi
AC_SUBST(MACHINE_OBS)
# end-sanitize-carp
# start-sanitize-gdbtk
1998-09-21 18:37:32 +00:00
# start-sanitize-ide
ENABLE_IDE=
AC_ARG_ENABLE(ide, [ --enable-ide Enable IDE support])
if test "$enable_ide" = yes; then
enable_ide=yes
ENABLE_IDE=1
else
enable_ide=no
fi
AC_SUBST(ENABLE_IDE)
1998-08-13 20:24:45 +00:00
AC_ARG_WITH(foundry-libs,
[ --with-foundry-libs=DIR Use the Foundry SDK in DIR],
1998-08-13 20:24:45 +00:00
[FOUNDRY_LIB_BASE=${withval}])
AC_SUBST(FOUNDRY_LIB_BASE)
#
# This is the Foundry SDK
#
# These variables are used to determine where the Foundry libs and
# header files are located.
#
if test "$FOUNDRY_LIB_BASE" != ""; then
LIBGUI="${FOUNDRY_LIB_BASE}/lib/libgui.a"
GUI_CFLAGS_X="-I${FOUNDRY_LIB_BASE}/include"
if test x$enable_ide = xyes; then
IDE_CFLAGS_X="-I${FOUNDRY_LIB_BASE}/include -DIDE"
IDE_X="-L${FOUNDRY_LIB_BASE}/lib -lilu-Tk -lilu-c -lilu"
else
IDE_CFLAGS_X="-I${FOUNDRY_LIB_BASE}/include"
fi
LIBIDETCL="${FOUNDRY_LIB_BASE}/lib/libidetcl.a"
LIBIDE="${FOUNDRY_LIB_BASE}/lib/libide.a"
IDE_DEPS="${FOUNDRY_LIB_BASE}/lib/libilu-Tk.a ${FOUNDRY_LIB_BASE}/lib/libilu-c.a ${FOUNDRY_LIB_BASE}/lib/libilu.a"
else
# end-sanitize-ide
1998-08-13 20:24:45 +00:00
LIBGUI="../libgui/src/libgui.a"
GUI_CFLAGS_X="-I${srcdir}/../libgui/src"
# start-sanitize-ide
1998-08-13 20:24:45 +00:00
if test x$enable_ide = xyes; then
IDE_CFLAGS_X="-I${srcdir}/../libidetcl/src -I${srcdir}/../libide/src -DIDE -I${srcdir}/../ilu/runtime/mainloop"
IDE_X="-L../ilu/runtime/mainloop -lilu-Tk -L../ilu/runtime/c -lilu-c -L../ilu/runtime/kernel -lilu"
else
IDE_CFLAGS_X="-I${srcdir}/../libidetcl/src -I${srcdir}/../libide/src"
fi
LIBIDETCL="../libidetcl/src/libidetcl.a"
LIBIDE="../libide/src/libide.a"
IDE_DEPS="../ilu/runtime/mainloop/libilu-Tk.a ../ilu/runtime/c/libilu-c.a ../ilu/runtime/kernel/libilu.a"
fi
# end-sanitize-ide
1998-08-13 20:24:45 +00:00
AC_SUBST(LIBGUI)
AC_SUBST(GUI_CFLAGS_X)
# start-sanitize-ide
1998-08-13 20:24:45 +00:00
AC_SUBST(IDE_CFLAGS_X)
AC_SUBST(IDE_X)
AC_SUBST(LIBIDETCL)
AC_SUBST(LIBIDE)
AC_SUBST(IDE_DEPS)
1998-09-21 18:37:32 +00:00
# end-sanitize-ide
1998-08-13 20:24:45 +00:00
Allow PPC users to select which PPC/RS6000 variant they're debugging at run-time. At the moment, the only thing this affects is the set of registers visible. * config/rs6000/tm-rs6000.h (REGISTER_NAME): Define this as a call to the function rs6000_register_name. (rs6000_register_name): Include extern decl. (NUM_REGS): Bump to 183. What's the right way to do this? (FIRST_UISA_SP_REGNUM, LAST_UISA_SP_REGNUM): Renamed from FIRST_SP_REGNUM, LAST_SP_REGNUM. (REGISTER_BYTES): Recompute this. * rs6000-tdep.c: Renamed all uses of FIRST_SP_REGNUM and LAST_SP_REGNUM to FIRST_UISA_SP_REGNUM and LAST_UISA_SP_REGNUM, with some concomitant formatting changes. #include "gdbcmd.h", so we can define commands here. (struct variant): New structure. (COMMON_UISA_REG_NAMES, PPC_UISA_SPR_NAMES, PPC_SEGMENT_REG_NAMES, PPC_32_OEA_SPR_NAMES, num_registers): New macros. (register_names_rs6000, register_names_uisa, register_names_403, register_names_403GC, register_names_505, register_names_860, register_names_601, register_names_602, register_names_603, register_names_604, register_names_750, variants): New variables. (rs6000_register_name, install_variant, find_variant_by_name, install_variant_by_name, list_variants, show_current_variant, set_processor, show_processor): New functions. (_initialize_rs6000_tdep): Define new commands `set processor' and `show processor', and call install_variant_by_name to set the default variant. * rs6000-nat.c: Renamed all uses of FIRST_SP_REGNUM and LAST_SP_REGNUM to FIRST_UISA_SP_REGNUM and LAST_UISA_SP_REGNUM, with some concomitant formatting changes. * configure.in: Accept the `--with-cpu' flag, to specify a default processor variant. * acconfig.h: Provide a blurb for TARGET_CPU_DEFAULT, which is set by configure's `--with-cpu' flag. * config.in, configure: Regenerated.
1999-02-01 21:17:19 +00:00
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}")
],)
ENABLE_GDBTK=
AC_ARG_ENABLE(gdbtk,
[ --enable-gdbtk Enable GDBTK GUI front end],
[case "${enableval}" in
yes)
case "$host" in
*go32*)
AC_MSG_WARN([GDB does not support GDBtk on host ${host}. GDBtk will be disabled.])
enable_gdbtk=no ;;
*windows*)
AC_MSG_WARN([GDB does not support GDBtk on host ${host}. GDBtk will be disabled.])
enable_gdbtk=no ;;
*)
enable_gdbtk=yes ;;
esac ;;
no)
enable_gdbtk=no ;;
*)
AC_MSG_ERROR(bad value ${enableval} given for gdbtk option) ;;
esac],
[
# Default is on for everything but go32 and Cygwin
case "$host" in
*go32* | *windows*)
;;
*)
enable_gdbtk=yes ;;
esac
])
# In the Cygwin environment, we need some additional flags.
Fri Nov 13 00:15:08 1998 Geoffrey Noer <noer@cygnus.com> Changes to account for name change from cygwin32 to cygwin and clean up Win32-related ifdefs. * configure.tgt: check for cygwin* instead of cygwin32. New cygwin gdb_target variable loses the "32". * configure.host: check for cygwin* instead of cygwin32. New cygwin gdb_host variable loses the "32". * configure.in: test __CYGWIN__ instead of __CYGWIN32__, rename gdb_cv_os_cygwin32 variable to drop the "32". Call AM_EXEEXT instead of AC_EXEEXT since that isn't in a released autoconf yet. * configure: regenerate. * main.c: drop "32" from cygwin_ funcs, include sys/cygwin.h where cygwin path conv protos live, instead of adding a proto here for them here. * {main.c, ser-tcp.c, ser-unix.c, top.c}: check __CYGWIN__ instead of __CYGWIN32__. * source.c: thoughout, check _WIN32 instead of WIN32. * config/i386/cygwin32.mh: delete. * config/i386/cygwin.mh: new file, was cygwin32.mh. * config/i386/cygwin32.mt: delete. * config/i386/cygwin.mt: new file, was cygwin32.mt. * config/i386/tm-cygwin32.h: delete. * config/i386/tm-cygwin.h: new file, was tm-cygwin32.h. * config/i386/xm-cygwin32.h: delete. * config/i386/xm-cygwin.h: new file, was xm-cygwin32.h. * config/i386/xm-windows.h: #include xm-cygwin.h now. * config/powerpc/cygwin32.mh: delete. * config/powerpc/cygwin.mh: new file, was cygwin32.mh. * config/powerpc/cygwin32.mt: delete. * config/powerpc/cygwin.mt: new file, was cygwin32.mt. * config/powerpc/tm-cygwin32.h: delete. * config/powerpc/tm-cygwin.h: new file, was tm-cygwin32.h. * config/powerpc/xm-cygwin32.h: delete. * config/powerpc/xm-cygwin.h: new file, was xm-cygwin32.h. * rdi-share/aclocal.m4: regenerate with aclocal. * rdi-share/configure: regenerate with autoconf. * rdi-share/{host.h, hostchan.c, hostchan.h, serdrv.c, * serpardr.c, unixcomm.c}: check __CYGWIN__ instead of __CYGWIN32__.
1998-11-13 08:16:08 +00:00
AC_CACHE_CHECK([for cygwin], gdb_cv_os_cygwin,
[AC_EGREP_CPP(lose, [
#ifdef __CYGWIN32__
lose
Fri Nov 13 00:15:08 1998 Geoffrey Noer <noer@cygnus.com> Changes to account for name change from cygwin32 to cygwin and clean up Win32-related ifdefs. * configure.tgt: check for cygwin* instead of cygwin32. New cygwin gdb_target variable loses the "32". * configure.host: check for cygwin* instead of cygwin32. New cygwin gdb_host variable loses the "32". * configure.in: test __CYGWIN__ instead of __CYGWIN32__, rename gdb_cv_os_cygwin32 variable to drop the "32". Call AM_EXEEXT instead of AC_EXEEXT since that isn't in a released autoconf yet. * configure: regenerate. * main.c: drop "32" from cygwin_ funcs, include sys/cygwin.h where cygwin path conv protos live, instead of adding a proto here for them here. * {main.c, ser-tcp.c, ser-unix.c, top.c}: check __CYGWIN__ instead of __CYGWIN32__. * source.c: thoughout, check _WIN32 instead of WIN32. * config/i386/cygwin32.mh: delete. * config/i386/cygwin.mh: new file, was cygwin32.mh. * config/i386/cygwin32.mt: delete. * config/i386/cygwin.mt: new file, was cygwin32.mt. * config/i386/tm-cygwin32.h: delete. * config/i386/tm-cygwin.h: new file, was tm-cygwin32.h. * config/i386/xm-cygwin32.h: delete. * config/i386/xm-cygwin.h: new file, was xm-cygwin32.h. * config/i386/xm-windows.h: #include xm-cygwin.h now. * config/powerpc/cygwin32.mh: delete. * config/powerpc/cygwin.mh: new file, was cygwin32.mh. * config/powerpc/cygwin32.mt: delete. * config/powerpc/cygwin.mt: new file, was cygwin32.mt. * config/powerpc/tm-cygwin32.h: delete. * config/powerpc/tm-cygwin.h: new file, was tm-cygwin32.h. * config/powerpc/xm-cygwin32.h: delete. * config/powerpc/xm-cygwin.h: new file, was xm-cygwin32.h. * rdi-share/aclocal.m4: regenerate with aclocal. * rdi-share/configure: regenerate with autoconf. * rdi-share/{host.h, hostchan.c, hostchan.h, serdrv.c, * serpardr.c, unixcomm.c}: check __CYGWIN__ instead of __CYGWIN32__.
1998-11-13 08:16:08 +00:00
#endif],[gdb_cv_os_cygwin=yes],[gdb_cv_os_cygwin=no])])
dnl Figure out which term library to use.
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(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
WIN32LIBS=
WIN32LDAPP=
AC_SUBST(WIN32LIBS)
AC_SUBST(WIN32LDAPP)
DLLTOOL=${DLLTOOL-dlltool}
Sat Mar 21 19:34:49 1998 Elena Zannoni <ezannoni@kwikemart.cygnus.com> merged changes from Foundry (list follows by file/author): - Tom Tromey <tromey@cygnus.com> * Makefile.in (gdbres.o): New target. (WINDRES): New define. * configure: Rebuilt. * configure.in (WINDRES): Define. (CONFIG_OBS): Include gdbres.o on Windows. * gdbtool.ico: New file. * gdb.rc: New file. * ser-unix.c - Keith Seitz <keiths@onions.cygnus.com> (wait_for): Don't reset the timeout_remaining for CYGWIN32, since we now effectively poll the serial port. Don't reset the current_timeout, either, since this member is used by hardwire_readchar to track the timeout and call the ui_loop_hook. (hardwire_readchar): Poll the serial port for Cygwin32. We timeout every second, update the UI, and loop around doing this until we have hit the real timeout or we get data or an error. This will allow the UI to stay active while gdb is "blocked" talking to the target. - Martin M. Hunt <hunt@cygnus.com> (wait_for): Do reset current_timeout because it is only used to keep track of what the current timeout for the scb is. * top.c - Martin M. Hunt <hunt@cygnus.com> (quit_confirm): Change exit message again for GUI. (pc_changed_hook): Add prototype. - Tom Tromey <tromey@cygnus.com> (quit_confirm): Added missing `else'. (quit_confirm): Special-case message if init_ui_hook is set. * symtab.c - Martin M. Hunt <hunt@cygnus.com> (find_pc_sect_line): If no symbol information is found, return correct pc anyway. (find_methods): Comment out an apparently bogus error message because it messes up Foundry. * serial.c - Martin M. Hunt <hunt@cygnus.com> (_initialize_serial): Add a description of "set remotelogbase". * findvar.c - Martin M. Hunt <hunt@cygnus.com> (write_register_gen): Add call to pc_changed_hook if the PC is being changed. * defs.h - Martin M. Hunt <hunt@cygnus.com> (pc_changed_hook): Define. * command.c - Martin M. Hunt <hunt@cygnus.com> (do_setshow_command): If no arguments are supplied, don't dump core, instead print out an error message. * breakpoint.c - Martin M. Hunt <hunt@cygnus.com> Make set_raw_breakpoint, set_breakpoint_count, and breakpoint_count non-static so they are accessible from gdbtk.c. (enable_breakpoint): Enable breakpoint with same disposition instead of changing all breakpoints to donttouch. * annotate.h - Keith Seitz <keiths@onions.cygnus.com> Add declarations for annotation hooks. * annotate.c - Keith Seitz <keiths@onions.cygnus.com> Add hooks: annotate_starting_hook, annotate_stopped_hook, annotate_signalled_hook, annotate_exited_hook. (annotate_starting): If hook exists, call it instead. (annotate_stopped): If hook exists, call it instead. (annotate_exited): If hook exists, call it instead. (annotate_signalled): If hook exists, call it instead. Sat Mar 21 19:34:49 1998 Elena Zannoni <ezannoni@kwikemart.cygnus.com> Merged changes from Foundry: list follows by author: - Tom Tromey <tromey@cygnus.com> * Makefile.in (gdbres.o): New target. (WINDRES): New define. * configure: Rebuilt. * configure.in (WINDRES): Define. (CONFIG_OBS): Include gdbres.o on Windows. * gdbtool.ico: New file. * gdb.rc: New file. * gdbtk.c (gdbtk_init): Call ide_create_messagebox_command. (gdbtk_cleanup): Call ide_interface_deregister_all. (gdbtk_init): Pass event handle to cleanup. (TclDebug): Use Tcl_Merge to construct command. (gdbtk_init): Call ide_create_cygwin_path_command. - Martin M. Hunt <hunt@cygnus.com> * gdbtk.c (gdb_set_bp): Set addr_string for bp. (gdb_get_breakpoint_info): Demangle function names in breakpoint info. Include "demangle.h". (gdb_loc, gdb_listfuncs): Demangle C++ function names. (gdb_set_bp): Properly quote filename to fix problems with spaces. Send pc back as a hex string. (gdb_listfuncs): Remove debugging line. Turn off some debugging lines. (breakpoint_notify): Return correct line number. (gdb_get_breakpoint_info): Return correct line number. (gdb_set_bp): New function to provide a better way to set breakpoints. (gdbtk_readline, gdbtk_readline_begin): Memory allocated by tcl needs to be freed by Tcl_Free(). (find_file_in_dir): Deleted. (gdb_find_file_command): Call full_lookup_symtab(). (gdb_listfuncs): Call full_lookup_symtab(). (full_lookup_symtab): New function. Like lookup_symtab except handles multiple files with the same basename, full pathnames, and always sets symtab->fullname. (gdb_loadfile): Call full_lookup_symtab(). Clear realloc'd memory. (gdb_loadfile): Don't tag lines without source. Tag source lines with source_tag. (gdb_find_file_command, find_file_in_dir): Rewrite. Now searches symtabs and psymtabs for a match on the partial or full filename. Returns the full pathname. (gdb_loadfile): Realloc additional memory if someone loads in a file with more than 160,000 lines. I don't know if this really works because I don't have enough memory to test it. (gdb_sourcelines): Deleted. (gdb_loadfile): New function. Takes a text widget and loads it with the contents of a file. Marks and tags source lines. (pc_changed): New function. (get_pc_register): Returns the value of the PC to GDB. (gdb_loc): If looking on the stack, return real pc along with calling source line. (gdb_loc): Return "" instead of "N/A" if filename is not found. (gdb_get_breakpoint_info): Same. (get_register): For Natural mode, set format to 0. Minor bugfixes from keiths. (TclDebug): New function for debugging use. (gdb_loc): Return correct PC for frames that are not the innermost frame. (gdb_listfiles): Rewritten to use object API. Now takes an optional dirname which will cause only files in that directory or its subdirectories to be returned. Now returns basenames instead of full pathnames. (gdb_cmd): Set/reset load_in_progress flag. (call_wrapper): Don't pop up dialog for errors in downloads; just abort download. (gdbtk_load_hash): Set return value correctly. - Keith Seitz <keiths@onions.cygnus.com> * gdbtk.c (gdbtk_init): Define the ui_loop_hook so that it can be called by routines which might block, allowing us to update the GUI. (gdbtk_wait): Move timer calls to annotation hooks. (gdbtk_init): Define the annotation hooks. (gdbtk_annotate_starting): New function for cygwin32 hosts. (gdbtk_annotate_stopped): New function for cygwin32 hosts. (gdbtk_annotate_exited): New function for cygwin32 hosts. (gdbtk_annotate_signalled): New function. for cygwin32 hosts. (gdbtk_init): Use gdbtk_print_frame_info hook. (gdbtk_print_frame_info): New function which sets current_source_symtab based on the given symtab and line info. (gdb_immediate_command): New function which does not buffer any output. (Contrast to gdb_cmd.) (gdb_prompt_command): New function to return gdb's prompt. (find_file_in_dir): New functon which searches source paths for a given filename. (gdb_find_file): New function which returns path to given file -- uses find_file_in_dir. (gdbtk_init): Install "gdb_immediate", "gdb_find_file", and "gdb_prompt" commands into interpreter. - Ian Lance Taylor <ian@cygnus.com> * gdbtk.c (gdbtk_timer_going): If __CYGWIN32__, new static variable. (gdb_cmd): If __CYGWIN32__, if executing the load command, call gdbtk_start_timer and gdbtk_stop_timer. (call_wrapper): If __CYGWIN32__, if the timer is going, turn it off. Clear load_in_progress. (x_event): If load_in_progress, quit if download_cancel_ok. (gdbtk_start_timer): Set gdbtk_timer_going. (gdbtk_stop_timer): Clear gdbtk_timer_going. (gdbtk_wait): Call x_event. (gdbtk_init): Call ide_create_win_grab_command if __CYGIN32__. (gdb_clear_file): Clear stop_pc.
1998-03-22 23:02:10 +00:00
WINDRES=${WINDRES-windres}
AC_SUBST(DLLTOOL)
Sat Mar 21 19:34:49 1998 Elena Zannoni <ezannoni@kwikemart.cygnus.com> merged changes from Foundry (list follows by file/author): - Tom Tromey <tromey@cygnus.com> * Makefile.in (gdbres.o): New target. (WINDRES): New define. * configure: Rebuilt. * configure.in (WINDRES): Define. (CONFIG_OBS): Include gdbres.o on Windows. * gdbtool.ico: New file. * gdb.rc: New file. * ser-unix.c - Keith Seitz <keiths@onions.cygnus.com> (wait_for): Don't reset the timeout_remaining for CYGWIN32, since we now effectively poll the serial port. Don't reset the current_timeout, either, since this member is used by hardwire_readchar to track the timeout and call the ui_loop_hook. (hardwire_readchar): Poll the serial port for Cygwin32. We timeout every second, update the UI, and loop around doing this until we have hit the real timeout or we get data or an error. This will allow the UI to stay active while gdb is "blocked" talking to the target. - Martin M. Hunt <hunt@cygnus.com> (wait_for): Do reset current_timeout because it is only used to keep track of what the current timeout for the scb is. * top.c - Martin M. Hunt <hunt@cygnus.com> (quit_confirm): Change exit message again for GUI. (pc_changed_hook): Add prototype. - Tom Tromey <tromey@cygnus.com> (quit_confirm): Added missing `else'. (quit_confirm): Special-case message if init_ui_hook is set. * symtab.c - Martin M. Hunt <hunt@cygnus.com> (find_pc_sect_line): If no symbol information is found, return correct pc anyway. (find_methods): Comment out an apparently bogus error message because it messes up Foundry. * serial.c - Martin M. Hunt <hunt@cygnus.com> (_initialize_serial): Add a description of "set remotelogbase". * findvar.c - Martin M. Hunt <hunt@cygnus.com> (write_register_gen): Add call to pc_changed_hook if the PC is being changed. * defs.h - Martin M. Hunt <hunt@cygnus.com> (pc_changed_hook): Define. * command.c - Martin M. Hunt <hunt@cygnus.com> (do_setshow_command): If no arguments are supplied, don't dump core, instead print out an error message. * breakpoint.c - Martin M. Hunt <hunt@cygnus.com> Make set_raw_breakpoint, set_breakpoint_count, and breakpoint_count non-static so they are accessible from gdbtk.c. (enable_breakpoint): Enable breakpoint with same disposition instead of changing all breakpoints to donttouch. * annotate.h - Keith Seitz <keiths@onions.cygnus.com> Add declarations for annotation hooks. * annotate.c - Keith Seitz <keiths@onions.cygnus.com> Add hooks: annotate_starting_hook, annotate_stopped_hook, annotate_signalled_hook, annotate_exited_hook. (annotate_starting): If hook exists, call it instead. (annotate_stopped): If hook exists, call it instead. (annotate_exited): If hook exists, call it instead. (annotate_signalled): If hook exists, call it instead. Sat Mar 21 19:34:49 1998 Elena Zannoni <ezannoni@kwikemart.cygnus.com> Merged changes from Foundry: list follows by author: - Tom Tromey <tromey@cygnus.com> * Makefile.in (gdbres.o): New target. (WINDRES): New define. * configure: Rebuilt. * configure.in (WINDRES): Define. (CONFIG_OBS): Include gdbres.o on Windows. * gdbtool.ico: New file. * gdb.rc: New file. * gdbtk.c (gdbtk_init): Call ide_create_messagebox_command. (gdbtk_cleanup): Call ide_interface_deregister_all. (gdbtk_init): Pass event handle to cleanup. (TclDebug): Use Tcl_Merge to construct command. (gdbtk_init): Call ide_create_cygwin_path_command. - Martin M. Hunt <hunt@cygnus.com> * gdbtk.c (gdb_set_bp): Set addr_string for bp. (gdb_get_breakpoint_info): Demangle function names in breakpoint info. Include "demangle.h". (gdb_loc, gdb_listfuncs): Demangle C++ function names. (gdb_set_bp): Properly quote filename to fix problems with spaces. Send pc back as a hex string. (gdb_listfuncs): Remove debugging line. Turn off some debugging lines. (breakpoint_notify): Return correct line number. (gdb_get_breakpoint_info): Return correct line number. (gdb_set_bp): New function to provide a better way to set breakpoints. (gdbtk_readline, gdbtk_readline_begin): Memory allocated by tcl needs to be freed by Tcl_Free(). (find_file_in_dir): Deleted. (gdb_find_file_command): Call full_lookup_symtab(). (gdb_listfuncs): Call full_lookup_symtab(). (full_lookup_symtab): New function. Like lookup_symtab except handles multiple files with the same basename, full pathnames, and always sets symtab->fullname. (gdb_loadfile): Call full_lookup_symtab(). Clear realloc'd memory. (gdb_loadfile): Don't tag lines without source. Tag source lines with source_tag. (gdb_find_file_command, find_file_in_dir): Rewrite. Now searches symtabs and psymtabs for a match on the partial or full filename. Returns the full pathname. (gdb_loadfile): Realloc additional memory if someone loads in a file with more than 160,000 lines. I don't know if this really works because I don't have enough memory to test it. (gdb_sourcelines): Deleted. (gdb_loadfile): New function. Takes a text widget and loads it with the contents of a file. Marks and tags source lines. (pc_changed): New function. (get_pc_register): Returns the value of the PC to GDB. (gdb_loc): If looking on the stack, return real pc along with calling source line. (gdb_loc): Return "" instead of "N/A" if filename is not found. (gdb_get_breakpoint_info): Same. (get_register): For Natural mode, set format to 0. Minor bugfixes from keiths. (TclDebug): New function for debugging use. (gdb_loc): Return correct PC for frames that are not the innermost frame. (gdb_listfiles): Rewritten to use object API. Now takes an optional dirname which will cause only files in that directory or its subdirectories to be returned. Now returns basenames instead of full pathnames. (gdb_cmd): Set/reset load_in_progress flag. (call_wrapper): Don't pop up dialog for errors in downloads; just abort download. (gdbtk_load_hash): Set return value correctly. - Keith Seitz <keiths@onions.cygnus.com> * gdbtk.c (gdbtk_init): Define the ui_loop_hook so that it can be called by routines which might block, allowing us to update the GUI. (gdbtk_wait): Move timer calls to annotation hooks. (gdbtk_init): Define the annotation hooks. (gdbtk_annotate_starting): New function for cygwin32 hosts. (gdbtk_annotate_stopped): New function for cygwin32 hosts. (gdbtk_annotate_exited): New function for cygwin32 hosts. (gdbtk_annotate_signalled): New function. for cygwin32 hosts. (gdbtk_init): Use gdbtk_print_frame_info hook. (gdbtk_print_frame_info): New function which sets current_source_symtab based on the given symtab and line info. (gdb_immediate_command): New function which does not buffer any output. (Contrast to gdb_cmd.) (gdb_prompt_command): New function to return gdb's prompt. (find_file_in_dir): New functon which searches source paths for a given filename. (gdb_find_file): New function which returns path to given file -- uses find_file_in_dir. (gdbtk_init): Install "gdb_immediate", "gdb_find_file", and "gdb_prompt" commands into interpreter. - Ian Lance Taylor <ian@cygnus.com> * gdbtk.c (gdbtk_timer_going): If __CYGWIN32__, new static variable. (gdb_cmd): If __CYGWIN32__, if executing the load command, call gdbtk_start_timer and gdbtk_stop_timer. (call_wrapper): If __CYGWIN32__, if the timer is going, turn it off. Clear load_in_progress. (x_event): If load_in_progress, quit if download_cancel_ok. (gdbtk_start_timer): Set gdbtk_timer_going. (gdbtk_stop_timer): Clear gdbtk_timer_going. (gdbtk_wait): Call x_event. (gdbtk_init): Call ide_create_win_grab_command if __CYGIN32__. (gdb_clear_file): Clear stop_pc.
1998-03-22 23:02:10 +00:00
AC_SUBST(WINDRES)
Fri Nov 13 00:15:08 1998 Geoffrey Noer <noer@cygnus.com> Changes to account for name change from cygwin32 to cygwin and clean up Win32-related ifdefs. * configure.tgt: check for cygwin* instead of cygwin32. New cygwin gdb_target variable loses the "32". * configure.host: check for cygwin* instead of cygwin32. New cygwin gdb_host variable loses the "32". * configure.in: test __CYGWIN__ instead of __CYGWIN32__, rename gdb_cv_os_cygwin32 variable to drop the "32". Call AM_EXEEXT instead of AC_EXEEXT since that isn't in a released autoconf yet. * configure: regenerate. * main.c: drop "32" from cygwin_ funcs, include sys/cygwin.h where cygwin path conv protos live, instead of adding a proto here for them here. * {main.c, ser-tcp.c, ser-unix.c, top.c}: check __CYGWIN__ instead of __CYGWIN32__. * source.c: thoughout, check _WIN32 instead of WIN32. * config/i386/cygwin32.mh: delete. * config/i386/cygwin.mh: new file, was cygwin32.mh. * config/i386/cygwin32.mt: delete. * config/i386/cygwin.mt: new file, was cygwin32.mt. * config/i386/tm-cygwin32.h: delete. * config/i386/tm-cygwin.h: new file, was tm-cygwin32.h. * config/i386/xm-cygwin32.h: delete. * config/i386/xm-cygwin.h: new file, was xm-cygwin32.h. * config/i386/xm-windows.h: #include xm-cygwin.h now. * config/powerpc/cygwin32.mh: delete. * config/powerpc/cygwin.mh: new file, was cygwin32.mh. * config/powerpc/cygwin32.mt: delete. * config/powerpc/cygwin.mt: new file, was cygwin32.mt. * config/powerpc/tm-cygwin32.h: delete. * config/powerpc/tm-cygwin.h: new file, was tm-cygwin32.h. * config/powerpc/xm-cygwin32.h: delete. * config/powerpc/xm-cygwin.h: new file, was xm-cygwin32.h. * rdi-share/aclocal.m4: regenerate with aclocal. * rdi-share/configure: regenerate with autoconf. * rdi-share/{host.h, hostchan.c, hostchan.h, serdrv.c, * serpardr.c, unixcomm.c}: check __CYGWIN__ instead of __CYGWIN32__.
1998-11-13 08:16:08 +00:00
if test x$gdb_cv_os_cygwin = xyes; then
WIN32LIBS="-luser32"
if test x$enable_ide = xyes; then
WIN32LIBS="$WIN32LIBS -ladvapi32"
fi
fi
configdir="unix"
GDBTKLIBS=
if test "${enable_gdbtk}" = "yes"; then
CY_AC_PATH_TCLCONFIG
if test -z "${no_tcl}"; then
CY_AC_LOAD_TCLCONFIG
CY_AC_PATH_TKCONFIG
# If $no_tk is nonempty, then we can't do Tk, and there is no
# point to doing Tcl.
if test -z "${no_tk}"; then
CY_AC_LOAD_TKCONFIG
CY_AC_PATH_TCLH
CY_AC_PATH_TKH
CY_AC_PATH_ITCLH
CY_AC_PATH_ITKH
CY_AC_PATH_TIXH
# now look for Itcl library stuff
CY_AC_PATH_ITCLCONFIG
if test -z "${no_itcl}"; then
CY_AC_LOAD_ITCLCONFIG
case "${host}" in
*-*-cygwin32*)
itcldir=../itcl/itcl/win/
;;
*)
itcldir=../itcl/itcl/unix/
;;
esac
ITCLLIB="${ITCL_BUILD_LIB_SPEC}"
ITCL_DEPS="${itcldir}${ITCL_LIB_FILE}"
fi
# now look for Itk library stuff
CY_AC_PATH_ITKCONFIG
if test -z "${no_itcl}"; then
CY_AC_LOAD_ITKCONFIG
case "${host}" in
*-*-cygwin32*)
itkdir=../itcl/itk/win/
;;
*)
itkdir=../itcl/itk/unix/
;;
esac
ITKLIB="${ITK_BUILD_LIB_SPEC}"
ITK_DEPS="${itkdir}${ITK_LIB_FILE}"
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_GDBTK=1
ENABLE_CFLAGS="${ENABLE_CFLAGS} -DGDBTK"
# Tcl/Tk 8.1 require -fwritable strings. I don't
# know whether 8.2 will or not, but I bet it will.
# I don't have to worry about 7.x since we don't support it.
GDBTK_CFLAGS=""
if test ${GCC} = "yes"; then
if test ${TCL_VERSION} != "8.0" ; then
GDBTK_CFLAGS="-fwritable-strings"
fi
fi
* Makefile.in configure configure.in: Remove ENABLE_CLIBS, ENABLE_OBS, and THREAD_DB_OBS. These are consolidated into LIBS and CONFIG_OBS. * configure configure.in: Clean up test cases around thread support. start-sanitize-v850 * configure.tgt (v850-*-*): Include v850ice.o and v850.lib if host is Windows. end-sanitize-v850 * c-valprint.c ch-valprint.c cp-valprint.c eval.c expprint.c printcmd.c valops.c value.h values.c: Add bfd_section arg to value_at and value_at_lazy. * coffread.c dbxread.c elfread.c mdebugread.c minsyms.c symtab.h: Add bfd_section arg to prim_record_minimal_symbol_and_info. * corefile.c gdbcore.h printcmd.c valops.c: Use read_memory_section instead of read_memory. It takes a bfd_section arg. * coffread.c dbxread.c elfread.c gdb-stabs.h objfiles.h: Remove unnecessary cast for assignment of struct dbx_symfile_info. Struct objfile now uses a real pointer instead of PTR for this element. * dbxread.c (dbx_symfile_init): Stash bfd section pointers for text, data and bss into dbx_symfile_info. * exec.c (xfer_memory): Handle transfers for user-specified sections. * findvar.c (read_var_value locate_var_value): Copy bfd section from the symbol to the value. * gdb-stabs.h: Add section pointers for text, data and bss sections. * maint.c (translate address command): Add test code for overlay address translation. * printcmd.c (do_examine do_one_display): Now takes a bfd section arg. * (print_formatted x_command): Record current section along with current address for repeated commands. * sparc-nat.c (fetch_inferior_registers): Change target_xfer_memory to target_{read write}_memory to allow changes to target_xfer_memory interface for section info. * symmisc.c (dump_msymbols print_symbol): Print section assocaited with symbol. * symtab.c (fixup_symbol_section): New routine to add section info to symbols returned by lookup_symbol. * symtab.h (struct general_symbol_info): Add bfd section to symbols. * target.c target.h (target_xfer_memory): Add bfd section to args. * (target_read_memory_section): New routine to read data from a specific section. * (target_memory_bfd_section): New global variable to pass bfd section in to targets. * valarith.c (value_add value_addr value_array): Preserve bfd section when computing new value. * value.h (struct value): Add bfd section to values. * values.c (allocate_value value_copy): Initialize/preserve bfd section. * (unpack_double): Clean up _MSC_VER conditionals to remove duplicate code. start-sanitize-v850 * v850ice.c: New module to support communication with NEC's PC-based ICE. * config/v850/tm-v850.h (REGISTER_NAMES): Replace sp, gp, fp, and ep names with rxx names. sp and fp are renamed via a different mechanism. end-sanitize-v850
1997-01-04 00:25:53 +00:00
# Include some libraries that Tcl and Tk want.
if test "${enable_ide}" = "yes"; then
TCL_LIBS='$(LIBIDETCL) $(LIBIDE) $(LIBGUI) $(IDE) $(ITCL) $(ITK) $(TIXLIB) $(TK) $(TCL) $(X11_LDFLAGS) $(X11_LIBS)'
CONFIG_DEPS='$(LIBIDETCL) $(LIBIDE) $(LIBGUI) $(IDE_DEPS) $(ITCL_DEPS) $(TIX_DEPS) $(TK_DEPS) $(TCL_DEPS)'
else
TCL_LIBS='$(LIBGUI) $(ITCL) $(ITK) $(TIX) $(TK) $(TCL) $(X11_LDFLAGS) $(X11_LIBS)'
CONFIG_DEPS='$(LIBGUI) $(ITCL_DEPS) $(ITK_DEPS) $(TIX_DEPS) $(TK_DEPS) $(TCL_DEPS)'
fi
# 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
# were in LIBS then any link tests after this point would
# try to include things like `$(LIBGUI)', which wouldn't work.
GDBTKLIBS="${TCL_LIBS} ${TK_LIBS}"
CONFIG_OBS="${CONFIG_OBS} gdbtk.o gdbtk-cmds.o gdbtk-hooks.o gdbtk-variable.o gdbtk-wrapper.o"
Fri Nov 13 00:15:08 1998 Geoffrey Noer <noer@cygnus.com> Changes to account for name change from cygwin32 to cygwin and clean up Win32-related ifdefs. * configure.tgt: check for cygwin* instead of cygwin32. New cygwin gdb_target variable loses the "32". * configure.host: check for cygwin* instead of cygwin32. New cygwin gdb_host variable loses the "32". * configure.in: test __CYGWIN__ instead of __CYGWIN32__, rename gdb_cv_os_cygwin32 variable to drop the "32". Call AM_EXEEXT instead of AC_EXEEXT since that isn't in a released autoconf yet. * configure: regenerate. * main.c: drop "32" from cygwin_ funcs, include sys/cygwin.h where cygwin path conv protos live, instead of adding a proto here for them here. * {main.c, ser-tcp.c, ser-unix.c, top.c}: check __CYGWIN__ instead of __CYGWIN32__. * source.c: thoughout, check _WIN32 instead of WIN32. * config/i386/cygwin32.mh: delete. * config/i386/cygwin.mh: new file, was cygwin32.mh. * config/i386/cygwin32.mt: delete. * config/i386/cygwin.mt: new file, was cygwin32.mt. * config/i386/tm-cygwin32.h: delete. * config/i386/tm-cygwin.h: new file, was tm-cygwin32.h. * config/i386/xm-cygwin32.h: delete. * config/i386/xm-cygwin.h: new file, was xm-cygwin32.h. * config/i386/xm-windows.h: #include xm-cygwin.h now. * config/powerpc/cygwin32.mh: delete. * config/powerpc/cygwin.mh: new file, was cygwin32.mh. * config/powerpc/cygwin32.mt: delete. * config/powerpc/cygwin.mt: new file, was cygwin32.mt. * config/powerpc/tm-cygwin32.h: delete. * config/powerpc/tm-cygwin.h: new file, was tm-cygwin32.h. * config/powerpc/xm-cygwin32.h: delete. * config/powerpc/xm-cygwin.h: new file, was xm-cygwin32.h. * rdi-share/aclocal.m4: regenerate with aclocal. * rdi-share/configure: regenerate with autoconf. * rdi-share/{host.h, hostchan.c, hostchan.h, serdrv.c, * serpardr.c, unixcomm.c}: check __CYGWIN__ instead of __CYGWIN32__.
1998-11-13 08:16:08 +00:00
if test x$gdb_cv_os_cygwin = xyes; then
WIN32LIBS="${WIN32LIBS} -lshell32 -lgdi32 -lcomdlg32 -ladvapi32"
WIN32LDAPP="-Wl,--subsystem,console"
Sat Mar 21 19:34:49 1998 Elena Zannoni <ezannoni@kwikemart.cygnus.com> merged changes from Foundry (list follows by file/author): - Tom Tromey <tromey@cygnus.com> * Makefile.in (gdbres.o): New target. (WINDRES): New define. * configure: Rebuilt. * configure.in (WINDRES): Define. (CONFIG_OBS): Include gdbres.o on Windows. * gdbtool.ico: New file. * gdb.rc: New file. * ser-unix.c - Keith Seitz <keiths@onions.cygnus.com> (wait_for): Don't reset the timeout_remaining for CYGWIN32, since we now effectively poll the serial port. Don't reset the current_timeout, either, since this member is used by hardwire_readchar to track the timeout and call the ui_loop_hook. (hardwire_readchar): Poll the serial port for Cygwin32. We timeout every second, update the UI, and loop around doing this until we have hit the real timeout or we get data or an error. This will allow the UI to stay active while gdb is "blocked" talking to the target. - Martin M. Hunt <hunt@cygnus.com> (wait_for): Do reset current_timeout because it is only used to keep track of what the current timeout for the scb is. * top.c - Martin M. Hunt <hunt@cygnus.com> (quit_confirm): Change exit message again for GUI. (pc_changed_hook): Add prototype. - Tom Tromey <tromey@cygnus.com> (quit_confirm): Added missing `else'. (quit_confirm): Special-case message if init_ui_hook is set. * symtab.c - Martin M. Hunt <hunt@cygnus.com> (find_pc_sect_line): If no symbol information is found, return correct pc anyway. (find_methods): Comment out an apparently bogus error message because it messes up Foundry. * serial.c - Martin M. Hunt <hunt@cygnus.com> (_initialize_serial): Add a description of "set remotelogbase". * findvar.c - Martin M. Hunt <hunt@cygnus.com> (write_register_gen): Add call to pc_changed_hook if the PC is being changed. * defs.h - Martin M. Hunt <hunt@cygnus.com> (pc_changed_hook): Define. * command.c - Martin M. Hunt <hunt@cygnus.com> (do_setshow_command): If no arguments are supplied, don't dump core, instead print out an error message. * breakpoint.c - Martin M. Hunt <hunt@cygnus.com> Make set_raw_breakpoint, set_breakpoint_count, and breakpoint_count non-static so they are accessible from gdbtk.c. (enable_breakpoint): Enable breakpoint with same disposition instead of changing all breakpoints to donttouch. * annotate.h - Keith Seitz <keiths@onions.cygnus.com> Add declarations for annotation hooks. * annotate.c - Keith Seitz <keiths@onions.cygnus.com> Add hooks: annotate_starting_hook, annotate_stopped_hook, annotate_signalled_hook, annotate_exited_hook. (annotate_starting): If hook exists, call it instead. (annotate_stopped): If hook exists, call it instead. (annotate_exited): If hook exists, call it instead. (annotate_signalled): If hook exists, call it instead. Sat Mar 21 19:34:49 1998 Elena Zannoni <ezannoni@kwikemart.cygnus.com> Merged changes from Foundry: list follows by author: - Tom Tromey <tromey@cygnus.com> * Makefile.in (gdbres.o): New target. (WINDRES): New define. * configure: Rebuilt. * configure.in (WINDRES): Define. (CONFIG_OBS): Include gdbres.o on Windows. * gdbtool.ico: New file. * gdb.rc: New file. * gdbtk.c (gdbtk_init): Call ide_create_messagebox_command. (gdbtk_cleanup): Call ide_interface_deregister_all. (gdbtk_init): Pass event handle to cleanup. (TclDebug): Use Tcl_Merge to construct command. (gdbtk_init): Call ide_create_cygwin_path_command. - Martin M. Hunt <hunt@cygnus.com> * gdbtk.c (gdb_set_bp): Set addr_string for bp. (gdb_get_breakpoint_info): Demangle function names in breakpoint info. Include "demangle.h". (gdb_loc, gdb_listfuncs): Demangle C++ function names. (gdb_set_bp): Properly quote filename to fix problems with spaces. Send pc back as a hex string. (gdb_listfuncs): Remove debugging line. Turn off some debugging lines. (breakpoint_notify): Return correct line number. (gdb_get_breakpoint_info): Return correct line number. (gdb_set_bp): New function to provide a better way to set breakpoints. (gdbtk_readline, gdbtk_readline_begin): Memory allocated by tcl needs to be freed by Tcl_Free(). (find_file_in_dir): Deleted. (gdb_find_file_command): Call full_lookup_symtab(). (gdb_listfuncs): Call full_lookup_symtab(). (full_lookup_symtab): New function. Like lookup_symtab except handles multiple files with the same basename, full pathnames, and always sets symtab->fullname. (gdb_loadfile): Call full_lookup_symtab(). Clear realloc'd memory. (gdb_loadfile): Don't tag lines without source. Tag source lines with source_tag. (gdb_find_file_command, find_file_in_dir): Rewrite. Now searches symtabs and psymtabs for a match on the partial or full filename. Returns the full pathname. (gdb_loadfile): Realloc additional memory if someone loads in a file with more than 160,000 lines. I don't know if this really works because I don't have enough memory to test it. (gdb_sourcelines): Deleted. (gdb_loadfile): New function. Takes a text widget and loads it with the contents of a file. Marks and tags source lines. (pc_changed): New function. (get_pc_register): Returns the value of the PC to GDB. (gdb_loc): If looking on the stack, return real pc along with calling source line. (gdb_loc): Return "" instead of "N/A" if filename is not found. (gdb_get_breakpoint_info): Same. (get_register): For Natural mode, set format to 0. Minor bugfixes from keiths. (TclDebug): New function for debugging use. (gdb_loc): Return correct PC for frames that are not the innermost frame. (gdb_listfiles): Rewritten to use object API. Now takes an optional dirname which will cause only files in that directory or its subdirectories to be returned. Now returns basenames instead of full pathnames. (gdb_cmd): Set/reset load_in_progress flag. (call_wrapper): Don't pop up dialog for errors in downloads; just abort download. (gdbtk_load_hash): Set return value correctly. - Keith Seitz <keiths@onions.cygnus.com> * gdbtk.c (gdbtk_init): Define the ui_loop_hook so that it can be called by routines which might block, allowing us to update the GUI. (gdbtk_wait): Move timer calls to annotation hooks. (gdbtk_init): Define the annotation hooks. (gdbtk_annotate_starting): New function for cygwin32 hosts. (gdbtk_annotate_stopped): New function for cygwin32 hosts. (gdbtk_annotate_exited): New function for cygwin32 hosts. (gdbtk_annotate_signalled): New function. for cygwin32 hosts. (gdbtk_init): Use gdbtk_print_frame_info hook. (gdbtk_print_frame_info): New function which sets current_source_symtab based on the given symtab and line info. (gdb_immediate_command): New function which does not buffer any output. (Contrast to gdb_cmd.) (gdb_prompt_command): New function to return gdb's prompt. (find_file_in_dir): New functon which searches source paths for a given filename. (gdb_find_file): New function which returns path to given file -- uses find_file_in_dir. (gdbtk_init): Install "gdb_immediate", "gdb_find_file", and "gdb_prompt" commands into interpreter. - Ian Lance Taylor <ian@cygnus.com> * gdbtk.c (gdbtk_timer_going): If __CYGWIN32__, new static variable. (gdb_cmd): If __CYGWIN32__, if executing the load command, call gdbtk_start_timer and gdbtk_stop_timer. (call_wrapper): If __CYGWIN32__, if the timer is going, turn it off. Clear load_in_progress. (x_event): If load_in_progress, quit if download_cancel_ok. (gdbtk_start_timer): Set gdbtk_timer_going. (gdbtk_stop_timer): Clear gdbtk_timer_going. (gdbtk_wait): Call x_event. (gdbtk_init): Call ide_create_win_grab_command if __CYGIN32__. (gdb_clear_file): Clear stop_pc.
1998-03-22 23:02:10 +00:00
CONFIG_OBS="${CONFIG_OBS} gdbres.o"
fi
fi
fi
fi
AC_SUBST(ENABLE_GDBTK)
AC_SUBST(X_CFLAGS)
AC_SUBST(X_LDFLAGS)
AC_SUBST(X_LIBS)
AC_SUBST(ITCLLIB)
AC_SUBST(ITCL_DEPS)
AC_SUBST(ITKLIB)
AC_SUBST(ITK_DEPS)
AC_SUBST(TIXLIB)
* tracepoint.c (set_raw_tracepoint): make sure there's a trailing slash on the directory name * Merge (lots) with foundry-971118-build * Makefile.in (install-only): install the new gdbtk, not the old * top.h: add declaration of get_prompt * top.c (get_prompt): new function * gdbtk.c (gdbtk_call_command): also run idle hooks for class_trace commands (gdbtk_init): add new commands "gdb_get_locals", "gdb_get_args", "gdb_get_function", "gdb_get_line", "gdb_get_file", "gdb_tracepoint_exists", "gdb_get_tracepoint_info", "gdb_actions", and "gdb_prompt" (gdb_get_vars_command): new function (gdb_get_line_command): new function (gdb_get_file_command): new function (gdb_get_function_command): new function (gdb_get_tracepoint_info): new function (gdbtk_create_tracepoint): new function (gdbtk_delete_tracepoint): new function (tracepoint_notify): new function (tracepoint_exists): new function (gdb_actions_command): new function (gdb_tracepoint_exists_command): new function (gdb_prompt_command): new function * main.tcl: initialize gdbtk_state(readline) * console.tcl (invoke): get realine working (activate): add prompt argument for readline (setprompt): add prompt argument for readline * interface.tcl (gdbtk_tcl_readline): hack to get readline working * lots: Merge with foundry-971118-build * console.tcl (setprompt): get prompt from gdb * prefs.tcl (pref_set_defaults): add tracepoint defaults * interface.tcl (gdbtk_tcl_tracepoint): new function * src.tcl (constructor): set default behavior of left click, make a tracepoint dot, too (fill_files): "new" function: ripped out of "location" (location): use fill_files instead (do_bp): add support for tracepoints (bp_line): add support for tracepoints (set_tracepoint): new function (config_win): add "Set tracepoint here" to right-click menu * actiondlg.tcl: new file to help with tracepoint data collection actions * tracedlg.tcl: new file to help with tracepoints
1997-11-26 22:38:10 +00:00
AC_SUBST(TIX_DEPS)
AC_SUBST(GDBTKLIBS)
AC_SUBST(GDBTK_CFLAGS)
# end-sanitize-gdbtk
AC_PATH_X
# start-sanitize-sky
# Enable GPU2 library for MIPS simulator
AC_ARG_WITH(sim-gpu2,
[ --with-sim-gpu2=DIR Use GPU2 library under given DIR],
[case "${target}" in
mips*-sky*-*)
if test -d "${withval}"
then
if test x${x_libraries} != x
then
LIBS="${LIBS} -L${withval}/lib -lgpu2 -L${x_libraries} -lX11 -lXext -lm"
else
LIBS="${LIBS} -L${withval}/lib -lgpu2 -lX11 -lXext -lm"
fi
else
AC_MSG_WARN([Directory ${withval} does not exist.])
fi ;;
*) AC_MSG_WARN([--with-sim-gpu2 option invalid for target ${target}])
esac])dnl
# Enable target accurate FP library
AC_ARG_WITH(sim-funit,
[ --with-sim-funit=DIR Use target FP lib under given DIR],
[case "${target}" in
mips*-sky*-*)
if test -d "${withval}"
then
LIBS="${LIBS} -L${withval}/lib -lfunit"
else
AC_MSG_WARN([Directory ${withval} does not exist.])
fi ;;
*) AC_MSG_WARN([--with-sim-funit option invalid for target ${target}])
esac])dnl
# end-sanitize-sky
AC_SUBST(ENABLE_CFLAGS)
* Makefile.in configure configure.in: Remove ENABLE_CLIBS, ENABLE_OBS, and THREAD_DB_OBS. These are consolidated into LIBS and CONFIG_OBS. * configure configure.in: Clean up test cases around thread support. start-sanitize-v850 * configure.tgt (v850-*-*): Include v850ice.o and v850.lib if host is Windows. end-sanitize-v850 * c-valprint.c ch-valprint.c cp-valprint.c eval.c expprint.c printcmd.c valops.c value.h values.c: Add bfd_section arg to value_at and value_at_lazy. * coffread.c dbxread.c elfread.c mdebugread.c minsyms.c symtab.h: Add bfd_section arg to prim_record_minimal_symbol_and_info. * corefile.c gdbcore.h printcmd.c valops.c: Use read_memory_section instead of read_memory. It takes a bfd_section arg. * coffread.c dbxread.c elfread.c gdb-stabs.h objfiles.h: Remove unnecessary cast for assignment of struct dbx_symfile_info. Struct objfile now uses a real pointer instead of PTR for this element. * dbxread.c (dbx_symfile_init): Stash bfd section pointers for text, data and bss into dbx_symfile_info. * exec.c (xfer_memory): Handle transfers for user-specified sections. * findvar.c (read_var_value locate_var_value): Copy bfd section from the symbol to the value. * gdb-stabs.h: Add section pointers for text, data and bss sections. * maint.c (translate address command): Add test code for overlay address translation. * printcmd.c (do_examine do_one_display): Now takes a bfd section arg. * (print_formatted x_command): Record current section along with current address for repeated commands. * sparc-nat.c (fetch_inferior_registers): Change target_xfer_memory to target_{read write}_memory to allow changes to target_xfer_memory interface for section info. * symmisc.c (dump_msymbols print_symbol): Print section assocaited with symbol. * symtab.c (fixup_symbol_section): New routine to add section info to symbols returned by lookup_symbol. * symtab.h (struct general_symbol_info): Add bfd section to symbols. * target.c target.h (target_xfer_memory): Add bfd section to args. * (target_read_memory_section): New routine to read data from a specific section. * (target_memory_bfd_section): New global variable to pass bfd section in to targets. * valarith.c (value_add value_addr value_array): Preserve bfd section when computing new value. * value.h (struct value): Add bfd section to values. * values.c (allocate_value value_copy): Initialize/preserve bfd section. * (unpack_double): Clean up _MSC_VER conditionals to remove duplicate code. start-sanitize-v850 * v850ice.c: New module to support communication with NEC's PC-based ICE. * config/v850/tm-v850.h (REGISTER_NAMES): Replace sp, gp, fp, and ep names with rxx names. sp and fp are renamed via a different mechanism. end-sanitize-v850
1997-01-04 00:25:53 +00:00
AC_SUBST(CONFIG_OBS)
* tracepoint.c (set_raw_tracepoint): make sure there's a trailing slash on the directory name * Merge (lots) with foundry-971118-build * Makefile.in (install-only): install the new gdbtk, not the old * top.h: add declaration of get_prompt * top.c (get_prompt): new function * gdbtk.c (gdbtk_call_command): also run idle hooks for class_trace commands (gdbtk_init): add new commands "gdb_get_locals", "gdb_get_args", "gdb_get_function", "gdb_get_line", "gdb_get_file", "gdb_tracepoint_exists", "gdb_get_tracepoint_info", "gdb_actions", and "gdb_prompt" (gdb_get_vars_command): new function (gdb_get_line_command): new function (gdb_get_file_command): new function (gdb_get_function_command): new function (gdb_get_tracepoint_info): new function (gdbtk_create_tracepoint): new function (gdbtk_delete_tracepoint): new function (tracepoint_notify): new function (tracepoint_exists): new function (gdb_actions_command): new function (gdb_tracepoint_exists_command): new function (gdb_prompt_command): new function * main.tcl: initialize gdbtk_state(readline) * console.tcl (invoke): get realine working (activate): add prompt argument for readline (setprompt): add prompt argument for readline * interface.tcl (gdbtk_tcl_readline): hack to get readline working * lots: Merge with foundry-971118-build * console.tcl (setprompt): get prompt from gdb * prefs.tcl (pref_set_defaults): add tracepoint defaults * interface.tcl (gdbtk_tcl_tracepoint): new function * src.tcl (constructor): set default behavior of left click, make a tracepoint dot, too (fill_files): "new" function: ripped out of "location" (location): use fill_files instead (do_bp): add support for tracepoints (bp_line): add support for tracepoints (set_tracepoint): new function (config_win): add "Set tracepoint here" to right-click menu * actiondlg.tcl: new file to help with tracepoint data collection actions * tracedlg.tcl: new file to help with tracepoints
1997-11-26 22:38:10 +00:00
AC_SUBST(CONFIG_DEPS)
AC_SUBST(CONFIG_SRCS)
# Begin stuff to support --enable-shared
AC_ARG_ENABLE(shared,
[ --enable-shared Use shared libraries],
[case "${enableval}" in
yes) shared=true ;;
no) shared=false ;;
*) shared=true ;;
esac])dnl
HLDFLAGS=
HLDENV=
# If we have shared libraries, try to set rpath reasonably.
if test "${shared}" = "true"; then
case "${host}" in
*-*-hpux*)
HLDFLAGS='-Wl,+s,+b,$(libdir)'
;;
*-*-irix5* | *-*-irix6*)
HLDFLAGS='-Wl,-rpath,$(libdir)'
;;
*-*-linux*aout*)
;;
*-*-linux* | *-pc-linux-gnu)
HLDFLAGS='-Wl,-rpath,$(libdir)'
;;
*-*-solaris*)
HLDFLAGS='-R $(libdir)'
;;
*-*-sysv4*)
HLDENV='if test -z "$${LD_RUN_PATH}"; then LD_RUN_PATH=$(libdir); else LD_RUN_PATH=$${LD_RUN_PATH}:$(libdir); fi; export LD_RUN_PATH;'
;;
esac
fi
# On SunOS, if the linker supports the -rpath option, use it to
# prevent ../bfd and ../opcodes from being included in the run time
# search path.
case "${host}" in
*-*-sunos*)
echo 'main () { }' > conftest.c
${CC} -o conftest -Wl,-rpath= conftest.c >/dev/null 2>conftest.t
if grep 'unrecognized' conftest.t >/dev/null 2>&1; then
:
elif grep 'No such file' conftest.t >/dev/null 2>&1; then
:
elif grep 'do not mix' conftest.t >/dev/null 2>&1; then
:
elif grep 'some text already loaded' conftest.t >/dev/null 2>&1; then
:
elif test "${shared}" = "true"; then
HLDFLAGS='-Wl,-rpath=$(libdir)'
else
HLDFLAGS='-Wl,-rpath='
fi
rm -f conftest.t conftest.c conftest
;;
esac
AC_SUBST(HLDFLAGS)
AC_SUBST(HLDENV)
# End stuff to support --enable-shared
# target_subdir is used by the testsuite to find the target libraries.
target_subdir=
if test "${host}" != "${target}"; then
target_subdir="${target_alias}/"
fi
AC_SUBST(target_subdir)
frags=
host_makefile_frag=${srcdir}/config/${gdb_host_cpu}/${gdb_host}.mh
if test ! -f ${host_makefile_frag}; then
AC_MSG_ERROR("*** Gdb does not support host ${host}")
1991-05-19 00:16:46 +00:00
fi
frags="$frags $host_makefile_frag"
1991-05-19 00:16:46 +00:00
target_makefile_frag=${srcdir}/config/${gdb_target_cpu}/${gdb_target}.mt
if test ! -f ${target_makefile_frag}; then
AC_MSG_ERROR("*** Gdb does not support target ${target}")
1991-05-19 00:16:46 +00:00
fi
frags="$frags $target_makefile_frag"
1991-05-19 00:16:46 +00:00
AC_SUBST_FILE(host_makefile_frag)
AC_SUBST_FILE(target_makefile_frag)
AC_SUBST(frags)
changequote(,)dnl
hostfile=`sed -n '
s/XM_FILE[ ]*=[ ]*\([^ ]*\)/\1/p
' ${host_makefile_frag}`
targetfile=`sed -n '
s/TM_FILE[ ]*=[ ]*\([^ ]*\)/\1/p
' ${target_makefile_frag}`
# these really aren't orthogonal true/false values of the same condition,
# but shells are slow enough that I like to reuse the test conditions
# whenever possible
if test "${target}" = "${host}"; then
nativefile=`sed -n '
s/NAT_FILE[ ]*=[ ]*\([^ ]*\)/\1/p
' ${host_makefile_frag}`
# else
# GDBserver is only useful in a "native" enviroment
# configdirs=`echo $configdirs | sed 's/gdbserver//'`
fi
changequote([,])
# If hostfile (XM_FILE) and/or targetfile (TM_FILE) and/or nativefile
# (NAT_FILE) is not set in config/*/*.m[ht] files, we don't make the
# corresponding links. But we have to remove the xm.h files and tm.h
# files anyway, e.g. when switching from "configure host" to
# "configure none".
files=
links=
1991-07-31 00:34:07 +00:00
rm -f xm.h
if test "${hostfile}" != ""; then
files="${files} config/${gdb_host_cpu}/${hostfile}"
links="${links} xm.h"
fi
1991-07-31 00:34:07 +00:00
rm -f tm.h
if test "${targetfile}" != ""; then
files="${files} config/${gdb_target_cpu}/${targetfile}"
links="${links} tm.h"
fi
* config/{a29k, arm, convex, gould, h8300, i386, i860, i960, m68k, m88k, mips, none, ns32k, pa, pyr, romp, rs6000, sparc, tahoe, vax, z8k}: New directories to hold cpu specific configuration files. Naming follows gcc convention. * config/{*.mt, *.mh}: All target and host makefile fragment config files moved to an appropriate config/<cpu> subdirectory. * nm-*, xm-*, tm-*: All native, host, and target files, which get linked to nm.h, xm.h, and tm.h respectively by configure, moved to appropriate config/<cpu> subdirectory. * nm-sysv4.h, xm-sysv4.h, tm-sysv4.h, tm-sunos.h, nm-trash.h: Native, host, and target files that are common across more than one cpu architecture and included by one of the configured native, host, or target files, get moved to config directory. * Makefile.in (INCLUDE_CFLAGS): Add -I${srcdir}/config to pick up native, host, or target include files moved to one of the config subdirectories, and that are included by other files. * Makefile.in (alldeps.mak): Modify to account for new config directory structure. * alldeps.mak, depend: Update for new config directory structure. * config/*/[ntx]m-*.h: Modify all files that include other [ntx]m-*.h files to use path relative to gdb/config. I.E. "a29k/tm-ultra3.h" includes "a29k/tm-29k.h" rather than just "tm-29k.h". * remote-eb.c (tm-29k.h): Include a29k/tm-29k.h. * mipsread.c (tm-mips.h): Include mips/tm-mips.h. * i860-pinsn.c (tm-i860.h): Include i860/tm-i860.h. * configure.in: Default gdb_host_cpu to host_cpu, and remap the ones where the default is not unique or different than the config subdirectory name. Similarly, handle gdb_target_cpu. Modify configure.in as appropriate to make use of gdb_host_cpu and gdb_target_cpu to find makefile fragments and make links.
1993-03-23 01:01:49 +00:00
rm -f nm.h
if test "${nativefile}" != ""; then
files="${files} config/${gdb_host_cpu}/${nativefile}"
links="${links} nm.h"
else
# A cross-only configuration.
files="${files} config/nm-empty.h"
links="${links} nm.h"
fi
# start-sanitize-gdbtk
AC_PROG_LN_S
# Make it possible to use the GUI without doing a full install
if test "${enable_gdbtk}" = "yes" -a ! -d gdbtcl2 ; then
if test "$LN_S" = "ln -s" -a ! -f gdbtcl2 ; then
echo linking $srcdir/gdbtcl2 to gdbtcl2
$LN_S $srcdir/gdbtcl2 gdbtcl2
else
echo Warning: Unable to link $srcdir/gdbtcl2 to gdbtcl2. You will need to do a
echo " " make install before you are able to run the GUI.
fi
fi
# end-sanitize-gdbtk
AC_LINK_FILES($files, $links)
dnl Check for exe extension set on certain hosts (e.g. Win32)
AC_EXEEXT
AC_CONFIG_SUBDIRS($configdirs)
AC_OUTPUT(Makefile tui/Makefile .gdbinit:gdbinit.in,
[
dnl Autoconf doesn't provide a mechanism for modifying definitions
dnl provided by makefile fragments.
dnl
if test "${nativefile}" = ""; then
sed -e '/^NATDEPFILES[[ ]]*=[[ ]]*/s//# NATDEPFILES=/' \
< Makefile > Makefile.tem
mv -f Makefile.tem Makefile
fi
changequote(,)dnl
sed -e '/^TM_FILE[ ]*=/s,^TM_FILE[ ]*=[ ]*,&config/'"${gdb_target_cpu}"'/,
/^XM_FILE[ ]*=/s,^XM_FILE[ ]*=[ ]*,&config/'"${gdb_host_cpu}"'/,
/^NAT_FILE[ ]*=/s,^NAT_FILE[ ]*=[ ]*,&config/'"${gdb_host_cpu}"'/,' <Makefile >Makefile.tmp
mv -f Makefile.tmp Makefile
changequote([,])dnl
case x$CONFIG_HEADERS in
xconfig.h:config.in)
echo > stamp-h ;;
esac
],
[
gdb_host_cpu=$gdb_host_cpu
gdb_target_cpu=$gdb_target_cpu
nativefile=$nativefile
])
exit 0