2002-09-26 Andrew Cagney <ac131313@redhat.com>
From Grace Sainsbury <graces@redhat.com>: * Makefile.in (gdbtk-main.o): New target. (gdb.o): New target. (main_h): Define. (main.o): Update dependencies. (gdb$(EXEEXT)): Add gdb.o. (SUBDIR_GDBTK_SRCS): Add gdbtk-main.c. (SUBDIR_GDBTK_ALL, SUBDIR_GDBTK_UNINSTALL): Set. (SUBDIR_GDBTK_CLEAN): Set. (install-gdbtk): Install the insight binary. (uninstall-gdbtk): New target. (all-gdbtk, clean-gdbtk): New rule. * top.c (use_windows): Default to zero. * main.c: Include "main.h". (main): Delete. (struct captured_main_args): Delete. (gdb_main): New function. * main.h: New file. * gdb.c: New File. 2002-09-26 Andrew Cagney <ac131313@redhat.com> From Grace Sainsbury <graces@redhat.com>: * generic/gdbtk-main.c: New file.
This commit is contained in:
parent
3396de367a
commit
f15ab4a7d1
6 changed files with 163 additions and 38 deletions
|
@ -1,3 +1,25 @@
|
|||
2002-09-26 Andrew Cagney <ac131313@redhat.com>
|
||||
|
||||
From Grace Sainsbury <graces@redhat.com>:
|
||||
* Makefile.in (gdbtk-main.o): New target.
|
||||
(gdb.o): New target.
|
||||
(main_h): Define.
|
||||
(main.o): Update dependencies.
|
||||
(gdb$(EXEEXT)): Add gdb.o.
|
||||
(SUBDIR_GDBTK_SRCS): Add gdbtk-main.c.
|
||||
(SUBDIR_GDBTK_ALL, SUBDIR_GDBTK_UNINSTALL): Set.
|
||||
(SUBDIR_GDBTK_CLEAN): Set.
|
||||
(install-gdbtk): Install the insight binary.
|
||||
(uninstall-gdbtk): New target.
|
||||
(all-gdbtk, clean-gdbtk): New rule.
|
||||
* top.c (use_windows): Default to zero.
|
||||
* main.c: Include "main.h".
|
||||
(main): Delete.
|
||||
(struct captured_main_args): Delete.
|
||||
(gdb_main): New function.
|
||||
* main.h: New file.
|
||||
* gdb.c: New File.
|
||||
|
||||
2002-09-25 Andrew Cagney <cagney@redhat.com>
|
||||
|
||||
* frame.c: Include "gdb_string.h" and "builtin-regs.h".
|
||||
|
|
|
@ -290,16 +290,17 @@ SUBDIR_GDBTK_SRCS = \
|
|||
gdbtk/generic/gdbtk.c gdbtk/generic/gdbtk-bp.c \
|
||||
gdbtk/generic/gdbtk-cmds.c gdbtk/generic/gdbtk-hooks.c \
|
||||
gdbtk/generic/gdbtk-register.c gdbtk/generic/gdbtk-stack.c \
|
||||
gdbtk/generic/gdbtk-varobj.c gdbtk/generic/gdbtk-wrapper.c
|
||||
gdbtk/generic/gdbtk-varobj.c gdbtk/generic/gdbtk-wrapper.c \
|
||||
gdbtk/generic/gdbtk-main.c
|
||||
SUBDIR_GDBTK_DEPS = \
|
||||
$(LIBGUI) $(ITCL_DEPS) $(ITK_DEPS) $(TIX_DEPS) $(TK_DEPS) $(TCL_DEPS)
|
||||
SUBDIR_GDBTK_INITS = gdbtk/generic/gdbtk.c
|
||||
SUBDIR_GDBTK_LDFLAGS=
|
||||
SUBDIR_GDBTK_CFLAGS= -DGDBTK
|
||||
SUBDIR_GDBTK_ALL=
|
||||
SUBDIR_GDBTK_CLEAN=
|
||||
SUBDIR_GDBTK_ALL= all-gdbtk
|
||||
SUBDIR_GDBTK_CLEAN= clean-gdbtk
|
||||
SUBDIR_GDBTK_INSTALL= install-gdbtk
|
||||
SUBDIR_GDBTK_UNINSTALL=
|
||||
SUBDIR_GDBTK_UNINSTALL= uninstall-gdbtk
|
||||
|
||||
CONFIG_OBS= @CONFIG_OBS@
|
||||
CONFIG_LIB_OBS= @CONFIG_LIB_OBS@
|
||||
|
@ -679,6 +680,7 @@ m2_lang_h = m2-lang.h
|
|||
macroexp_h = macroexp.h
|
||||
macroscope_h = macroscope.h $(macrotab_h) $(symtab_h)
|
||||
macrotab_h = macrotab.h
|
||||
main_h = main.h
|
||||
memattr_h = memattr.h
|
||||
minimon_h = minimon.h
|
||||
mipsnbsd_tdep_h = mipsnbsd-tdep.h
|
||||
|
@ -929,25 +931,8 @@ uninstall: force $(CONFIG_UNINSTALL)
|
|||
true ; \
|
||||
fi ; \
|
||||
rm -f $(bindir)/$$transformed_name$(EXEEXT) $(man1dir)/$$transformed_name.1
|
||||
rm -rf $(GDBTK_LIBRARY)
|
||||
@$(MAKE) DO=uninstall "DODIRS=$(SUBDIRS)" $(FLAGS_TO_PASS) subdir_do
|
||||
|
||||
install-gdbtk:
|
||||
$(SHELL) $(srcdir)/../mkinstalldirs $(GDBTK_LIBRARY) ; \
|
||||
$(SHELL) $(srcdir)/../mkinstalldirs $(libdir)/insight$(GDBTK_VERSION) ; \
|
||||
$(INSTALL_DATA) $(srcdir)/gdbtk/plugins/plugins.tcl $(libdir)/insight$(GDBTK_VERSION)/plugins.tcl ; \
|
||||
$(SHELL) $(srcdir)/../mkinstalldirs \
|
||||
$(GDBTK_LIBRARY)/images \
|
||||
$(GDBTK_LIBRARY)/images2 ; \
|
||||
$(SHELL) $(srcdir)/../mkinstalldirs $(GDBTK_LIBRARY)/help \
|
||||
$(GDBTK_LIBRARY)/help/images \
|
||||
$(GDBTK_LIBRARY)/help/trace ; \
|
||||
cd $(srcdir)/gdbtk/library ; \
|
||||
for i in *.tcl *.itcl *.ith *.itb images/*.gif images2/*.gif images/icons.txt images2/icons.txt tclIndex help/*.html help/trace/*.html help/trace/index.toc help/images/*.gif; \
|
||||
do \
|
||||
$(INSTALL_DATA) $$i $(GDBTK_LIBRARY)/$$i ; \
|
||||
done ;
|
||||
|
||||
# We do this by grepping through sources. If that turns out to be too slow,
|
||||
# maybe we could just require every .o file to have an initialization routine
|
||||
# of a given name (top.o -> _initialize_top, etc.).
|
||||
|
@ -1017,11 +1002,11 @@ init.c: $(INIT_FILES)
|
|||
init.o: init.c $(defs_h) $(call_cmds_h)
|
||||
|
||||
# Removing the old gdb first works better if it is running, at least on SunOS.
|
||||
gdb$(EXEEXT): main.o libgdb.a $(CONFIG_OBS) $(ADD_DEPS) $(CDEPS) $(TDEPLIBS)
|
||||
gdb$(EXEEXT): gdb.o main.o libgdb.a $(CONFIG_OBS) $(ADD_DEPS) $(CDEPS) $(TDEPLIBS)
|
||||
rm -f gdb$(EXEEXT)
|
||||
$(HLDENV) $(CC_LD) $(INTERNAL_LDFLAGS) $(WIN32LDAPP) -o gdb$(EXEEXT) \
|
||||
main.o libgdb.a $(CONFIG_OBS) $(TDEPLIBS) $(TUI_LIBRARY) $(CLIBS)\
|
||||
$(LOADLIBES)
|
||||
$(HLDENV) $(CC_LD) $(INTERNAL_LDFLAGS) $(WIN32LDAPP) \
|
||||
-o gdb$(EXEEXT) gdb.o main.o $(CONFIG_OBS) libgdb.a \
|
||||
$(TDEPLIBS) $(TUI_LIBRARY) $(CLIBS) $(LOADLIBES)
|
||||
|
||||
nlm: force
|
||||
rootme=`pwd`; export rootme; $(MAKE) $(TARGET_FLAGS_TO_PASS) DO=all DODIRS=nlm subdir_do
|
||||
|
@ -1691,6 +1676,7 @@ frv-tdep.o: frv-tdep.c $(defs_h) $(inferior_h) $(symfile_h) $(gdbcore_h) \
|
|||
$(arch_utils_h) $(regcache_h)
|
||||
gcore.o: gcore.c $(defs_h) $(cli_decode_h) $(inferior_h) $(gdbcore_h) \
|
||||
$(elf_bfd_h) $(symfile_h) $(objfiles_h)
|
||||
gdb.o: gdb.c $(defs_h) $(main_h) $(gdb_string_h)
|
||||
gdb-events.o: gdb-events.c $(defs_h) $(gdb_events_h) $(gdbcmd_h)
|
||||
gdbarch.o: gdbarch.c $(defs_h) $(arch_utils_h) $(gdbcmd_h) $(inferior_h) \
|
||||
$(gdb_string_h) $(symtab_h) $(frame_h) $(inferior_h) $(breakpoint_h) \
|
||||
|
@ -1884,7 +1870,7 @@ macrotab.o: macrotab.c $(defs_h) $(gdb_obstack_h) $(splay_tree_h) \
|
|||
$(bcache_h) $(complaints_h)
|
||||
main.o: main.c $(defs_h) $(top_h) $(target_h) $(inferior_h) $(symfile_h) \
|
||||
$(gdbcore_h) $(getopt_h) $(gdb_stat_h) $(gdb_string_h) \
|
||||
$(event_loop_h) $(ui_out_h)
|
||||
$(event_loop_h) $(ui_out_h) $(main_h)
|
||||
maint.o: maint.c $(defs_h) $(command_h) $(gdbcmd_h) $(symtab_h) \
|
||||
$(gdbtypes_h) $(demangle_h) $(gdbcore_h) $(expression_h) \
|
||||
$(language_h) $(symfile_h) $(objfiles_h) $(value_h) $(cli_decode_h)
|
||||
|
@ -2341,6 +2327,55 @@ cli-utils.o: $(srcdir)/cli/cli-utils.c $(defs_h) $(cli_utils_h)
|
|||
# Need to explicitly specify the compile rule as make will do nothing
|
||||
# or try to compile the object file into the mi directory.
|
||||
|
||||
all-gdbtk: insight$(EXEEXT)
|
||||
|
||||
install-gdbtk:
|
||||
transformed_name=`t='$(program_transform_name)'; \
|
||||
echo insight | sed -e $$t` ; \
|
||||
if test "x$$transformed_name" = x; then \
|
||||
transformed_name=insight ; \
|
||||
else \
|
||||
true ; \
|
||||
fi ; \
|
||||
$(SHELL) $(srcdir)/../mkinstalldirs $(bindir)
|
||||
$(INSTALL_PROGRAM) insight$(EXEEXT) $(bindir)/$$transformed_name$(EXEEXT) ; \
|
||||
$(SHELL) $(srcdir)/../mkinstalldirs $(GDBTK_LIBRARY) ; \
|
||||
$(SHELL) $(srcdir)/../mkinstalldirs $(libdir)/insight$(GDBTK_VERSION) ; \
|
||||
$(INSTALL_DATA) $(srcdir)/gdbtk/plugins/plugins.tcl $(libdir)/insight$(GDBTK_VERSION)/plugins.tcl ; \
|
||||
$(SHELL) $(srcdir)/../mkinstalldirs \
|
||||
$(GDBTK_LIBRARY)/images \
|
||||
$(GDBTK_LIBRARY)/images2 ; \
|
||||
$(SHELL) $(srcdir)/../mkinstalldirs $(GDBTK_LIBRARY)/help \
|
||||
$(GDBTK_LIBRARY)/help/images \
|
||||
$(GDBTK_LIBRARY)/help/trace ; \
|
||||
cd $(srcdir)/gdbtk/library ; \
|
||||
for i in *.tcl *.itcl *.ith *.itb images/*.gif images2/*.gif images/icons.txt images2/icons.txt tclIndex help/*.html help/trace/*.html help/trace/index.toc help/images/*.gif; \
|
||||
do \
|
||||
$(INSTALL_DATA) $$i $(GDBTK_LIBRARY)/$$i ; \
|
||||
done ;
|
||||
|
||||
uninstall-gdbtk:
|
||||
transformed_name=`t='$(program_transform_name)'; \
|
||||
echo insight | sed -e $$t` ; \
|
||||
if test "x$$transformed_name" = x; then \
|
||||
transformed_name=insight ; \
|
||||
else \
|
||||
true ; \
|
||||
fi ; \
|
||||
rm -f $(bindir)/$$transformed_name$(EXEEXT) ; \
|
||||
rm -rf $(GDBTK_LIBRARY)
|
||||
|
||||
clean-gdbtk:
|
||||
rm -f insight$(EXEEXT)
|
||||
|
||||
# Removing the old gdb first works better if it is running, at least on SunOS.
|
||||
insight$(EXEEXT): gdbtk-main.o main.o libgdb.a $(CONFIG_OBS) $(ADD_DEPS) \
|
||||
$(CDEPS) $(TDEPLIBS)
|
||||
rm -f insight$(EXEEXT)
|
||||
$(HLDENV) $(CC_LD) $(INTERNAL_LDFLAGS) $(WIN32LDAPP) \
|
||||
-o insight$(EXEEXT) gdbtk-main.o main.o libgdb.a $(CONFIG_OBS)\
|
||||
$(TDEPLIBS) $(TUI_LIBRARY) $(CLIBS) $(LOADLIBES)
|
||||
|
||||
gdbres.o: $(srcdir)/gdbtk/gdb.rc $(srcdir)/gdbtk/gdbtool.ico
|
||||
$(WINDRES) --include $(srcdir)/gdbtk $(srcdir)/gdbtk/gdb.rc gdbres.o
|
||||
|
||||
|
@ -2384,6 +2419,12 @@ gdbtk-hooks.o: $(srcdir)/gdbtk/generic/gdbtk-hooks.c \
|
|||
$(TCL_CFLAGS) $(TK_CFLAGS) $(X11_CFLAGS) $(GDBTK_CFLAGS)\
|
||||
$(srcdir)/gdbtk/generic/gdbtk-hooks.c -DGDBTK_LIBRARY=\"$(GDBTK_LIBRARY)\"
|
||||
|
||||
gdbtk-main.o: $(srcdir)/gdbtk/generic/gdbtk-main.c $(defs_h) $(main_h) \
|
||||
$(gdb_string_h)
|
||||
$(CC) -c $(INTERNAL_CFLAGS) $(IDE_CFLAGS) $(ITCL_CFLAGS) $(TIX_CFLAGS) \
|
||||
$(TCL_CFLAGS) $(TK_CFLAGS) $(X11_CFLAGS) $(GDBTK_CFLAGS)\
|
||||
$(srcdir)/gdbtk/generic/gdbtk-main.c -DGDBTK_LIBRARY=\"$(GDBTK_LIBRARY)\"
|
||||
|
||||
gdbtk-register.o: $(srcdir)/gdbtk/generic/gdbtk-register.c \
|
||||
$(srcdir)/gdbtk/generic/gdbtk.h \
|
||||
$(srcdir)/gdbtk/generic/gdbtk-cmds.h \
|
||||
|
|
34
gdb/gdb.c
Normal file
34
gdb/gdb.c
Normal file
|
@ -0,0 +1,34 @@
|
|||
/* Main function for CLI gdb.
|
||||
Copyright 2002 Free Software Foundation, Inc.
|
||||
|
||||
This file is part of GDB.
|
||||
|
||||
This program is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation; either version 2 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program; if not, write to the Free Software
|
||||
Foundation, Inc., 59 Temple Place - Suite 330,
|
||||
Boston, MA 02111-1307, USA. */
|
||||
|
||||
#include "defs.h"
|
||||
#include "main.h"
|
||||
#include "gdb_string.h"
|
||||
|
||||
int
|
||||
main (int argc, char **argv)
|
||||
{
|
||||
struct captured_main_args args;
|
||||
memset (&args, 0, sizeof args);
|
||||
args.argc = argc;
|
||||
args.argv = argv;
|
||||
args.use_windows = 0;
|
||||
return gdb_main (&args);
|
||||
}
|
16
gdb/main.c
16
gdb/main.c
|
@ -37,6 +37,8 @@
|
|||
#include "event-loop.h"
|
||||
#include "ui-out.h"
|
||||
|
||||
#include "main.h"
|
||||
|
||||
/* If nonzero, display time usage both at startup and for each command. */
|
||||
|
||||
int display_time;
|
||||
|
@ -108,12 +110,6 @@ captured_command_loop (void *data)
|
|||
return 1;
|
||||
}
|
||||
|
||||
struct captured_main_args
|
||||
{
|
||||
int argc;
|
||||
char **argv;
|
||||
};
|
||||
|
||||
static int
|
||||
captured_main (void *data)
|
||||
{
|
||||
|
@ -736,12 +732,10 @@ extern int gdbtk_test (char *);
|
|||
}
|
||||
|
||||
int
|
||||
main (int argc, char **argv)
|
||||
gdb_main (struct captured_main_args *args)
|
||||
{
|
||||
struct captured_main_args args;
|
||||
args.argc = argc;
|
||||
args.argv = argv;
|
||||
catch_errors (captured_main, &args, "", RETURN_MASK_ALL);
|
||||
use_windows = args->use_windows;
|
||||
catch_errors (captured_main, args, "", RETURN_MASK_ALL);
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
|
34
gdb/main.h
Normal file
34
gdb/main.h
Normal file
|
@ -0,0 +1,34 @@
|
|||
/* Main interface for GDB, the GNU debugger.
|
||||
|
||||
Copyright 2002 Free Software Foundation, Inc.
|
||||
|
||||
This file is part of GDB.
|
||||
|
||||
This program is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation; either version 2 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program; if not, write to the Free Software
|
||||
Foundation, Inc., 59 Temple Place - Suite 330,
|
||||
Boston, MA 02111-1307, USA. */
|
||||
|
||||
#ifndef MAIN_H
|
||||
#define MAIN_H
|
||||
|
||||
struct captured_main_args
|
||||
{
|
||||
int argc;
|
||||
char **argv;
|
||||
int use_windows;
|
||||
};
|
||||
|
||||
extern int gdb_main (struct captured_main_args *);
|
||||
|
||||
#endif
|
|
@ -82,7 +82,7 @@ int inhibit_gdbinit = 0;
|
|||
/* If nonzero, and GDB has been configured to be able to use windows,
|
||||
attempt to open them upon startup. */
|
||||
|
||||
int use_windows = 1;
|
||||
int use_windows = 0;
|
||||
|
||||
extern char lang_frame_mismatch_warn[]; /* language.c */
|
||||
|
||||
|
|
Loading…
Reference in a new issue