From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 11468 invoked by alias); 26 Sep 2002 02:30:52 -0000 Mailing-List: contact gdb-patches-help@sources.redhat.com; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sources.redhat.com Received: (qmail 11461 invoked from network); 26 Sep 2002 02:30:50 -0000 Received: from unknown (HELO localhost.redhat.com) (216.138.202.10) by sources.redhat.com with SMTP; 26 Sep 2002 02:30:50 -0000 Received: from redhat.com (localhost [127.0.0.1]) by localhost.redhat.com (Postfix) with ESMTP id D16DF3CBF; Wed, 25 Sep 2002 22:30:44 -0400 (EDT) Message-ID: <3D927154.4010801@redhat.com> Date: Wed, 25 Sep 2002 19:30:00 -0000 From: Andrew Cagney User-Agent: Mozilla/5.0 (X11; U; NetBSD macppc; en-US; rv:1.0.0) Gecko/20020824 X-Accept-Language: en-us, en MIME-Version: 1.0 To: Keith Seitz Cc: Andrew Cagney , gdb-patches@sources.redhat.com Subject: Re: 5.3 branch? Was: insight rename patch References: Content-Type: multipart/mixed; boundary="------------040104010609000102030001" X-SW-Source: 2002-09/txt/msg00628.txt.bz2 This is a multi-part message in MIME format. --------------040104010609000102030001 Content-Type: text/plain; charset=US-ASCII; format=flowed Content-Transfer-Encoding: 7bit Content-length: 750 > On Thu, 19 Sep 2002, Andrew Cagney wrote: > > >> Does anyone have any thoughts on this main.c -> gdb.c/insight.c change >> being backported to the 5.3 branch? > > > Nothing more intelligible than, "it's a good idea." > > >> Did you mean s/insight.c/insight-main.c/? I like ``insight.c'' and >> ``gdb.c'' :-) > > > That's okay with me, too. I overlooked the bit about how gdb was getting > gdb.c... But then I noticed that everything else was called gdbtk-* so I called it gdbtk-main.c (I just couldn't bring myself to being the one that added a file that wasn't gdbtk-* :-). So. My plan is to commit the attached to the trunk in ~12 hours and then the day or so after that commit it to the 5.3 branch.... (holds breath). Andrew --------------040104010609000102030001 Content-Type: text/plain; name="diffs" Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="diffs" Content-length: 13179 2002-09-25 Andrew Cagney From Grace Sainsbury : * 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. Index: gdbtk/ChangeLog 2002-09-25 Andrew Cagney From Grace Sainsbury : * generic/gdbtk-main.c: New file. Index: Makefile.in =================================================================== RCS file: /cvs/src/src/gdb/Makefile.in,v retrieving revision 1.263 diff -u -r1.263 Makefile.in --- Makefile.in 20 Sep 2002 18:14:49 -0000 1.263 +++ Makefile.in 26 Sep 2002 02:24:52 -0000 @@ -290,16 +290,17 @@ 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 @@ 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 @@ 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.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 @@ $(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 @@ $(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 @@ # 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 @@ -2383,6 +2418,12 @@ $(CC) -c $(INTERNAL_CFLAGS) $(IDE_CFLAGS) $(ITCL_CFLAGS) $(TIX_CFLAGS) \ $(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 \ Index: gdb.c =================================================================== RCS file: gdb.c diff -N gdb.c --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ gdb.c 26 Sep 2002 02:24:52 -0000 @@ -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); +} Index: main.c =================================================================== RCS file: /cvs/src/src/gdb/main.c,v retrieving revision 1.19 diff -u -r1.19 main.c --- main.c 25 Sep 2002 03:10:26 -0000 1.19 +++ main.c 26 Sep 2002 02:24:52 -0000 @@ -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 @@ return 1; } -struct captured_main_args - { - int argc; - char **argv; - }; - static int captured_main (void *data) { @@ -736,12 +732,10 @@ } 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; } Index: main.h =================================================================== RCS file: main.h diff -N main.h --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ main.h 26 Sep 2002 02:24:52 -0000 @@ -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 Index: top.c =================================================================== RCS file: /cvs/src/src/gdb/top.c,v retrieving revision 1.67 diff -u -r1.67 top.c --- top.c 9 Sep 2002 21:03:26 -0000 1.67 +++ top.c 26 Sep 2002 02:24:52 -0000 @@ -82,7 +82,7 @@ /* 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 */ Index: gdbtk/generic/gdbtk-main.c =================================================================== RCS file: gdbtk/generic/gdbtk-main.c diff -N gdbtk/generic/gdbtk-main.c --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ gdbtk/generic/gdbtk-main.c 26 Sep 2002 02:24:52 -0000 @@ -0,0 +1,36 @@ +/* Main function for gdb with insight. + + 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 = 1; + return gdb_main (&args); +} --------------040104010609000102030001--