From: Andrew Cagney <cagney@gnu.org>
To: gdb-patches@sources.redhat.com
Subject: Re: [patch/rfc] "tui"
Date: Wed, 18 Feb 2004 18:53:00 -0000 [thread overview]
Message-ID: <4033B481.7080308@gnu.org> (raw)
In-Reply-To: <402923AD.7060104@gnu.org>
[-- Attachment #1: Type: text/plain, Size: 737 bytes --]
> Hello,
>
> This modifies the build machinery so that the program "tui" is built. "tui" starts up GDB's TUI (or Text User Interface). Alternative program names include "tgdb", "gdbtui", ...
>
> Comments? Otherwize look to commit it round 16th Feb.
Here's the revised version, with the name "gdbtui", that I've committed.
This just leaves doco ...
Andrew
> 2004-02-10 Andrew Cagney <cagney@redhat.com>
>
> * configure.in: Add TUI target to CONFIG_ALL, CONFIG_CLEAN,
> CONFIG_INSTALL and CONFIG_UNINSTALL.
> * configure: Re-generate.
> * interps.h (INTERP_TUI): Define.
> * Makefile.in (tui-main.o): Specify dependencies.
> (install-tui, uninstall-tui, clean-tui, all-tui): New rules.
> * tui/tui-main.c: New file.
>
[-- Attachment #2: diffs --]
[-- Type: text/plain, Size: 7736 bytes --]
2004-02-18 Andrew Cagney <cagney@redhat.com>
* configure.in: Add a TUI target to CONFIG_ALL, CONFIG_CLEAN,
CONFIG_INSTALL and CONFIG_UNINSTALL.
* configure: Re-generate.
* interps.h (INTERP_TUI): Define.
* Makefile.in: Update dependencies.
(TUI): New macro.
(tui-main.o): Specify dependencies.
(install-tui, uninstall-tui, clean-tui, all-tui): New rules.
* tui/tui-main.c: New file.
Index: Makefile.in
===================================================================
RCS file: /cvs/src/src/gdb/Makefile.in,v
retrieving revision 1.507
diff -u -r1.507 Makefile.in
--- Makefile.in 18 Feb 2004 04:17:34 -0000 1.507
+++ Makefile.in 18 Feb 2004 18:49:07 -0000
@@ -179,6 +179,10 @@
#
# TUI sub directory definitions
#
+
+# Name of the TUI program
+TUI=gdbtui
+
SUBDIR_TUI_OBS = \
tui-command.o \
tui-data.o \
@@ -638,8 +642,8 @@
cp_support_h = cp-support.h $(symtab_h)
dcache_h = dcache.h
defs_h = defs.h $(config_h) $(ansidecl_h) $(gdb_locale_h) $(gdb_signals_h) \
- $(libiberty_h) $(bfd_h) $(ui_file_h) $(xm_h) $(nm_h) \
- $(tm_h) $(fopen_same_h) $(gdbarch_h)
+ $(libiberty_h) $(bfd_h) $(ui_file_h) $(xm_h) $(nm_h) $(tm_h) \
+ $(fopen_same_h) $(gdbarch_h)
dictionary_h = dictionary.h
disasm_h = disasm.h
doublest_h = doublest.h $(floatformat_h)
@@ -932,6 +936,8 @@
all: gdb$(EXEEXT) $(CONFIG_ALL)
@$(MAKE) $(FLAGS_TO_PASS) DO=all "DODIRS=`echo $(SUBDIRS) | sed 's/testsuite//'`" subdir_do
+.PHONY: all-tui
+all-tui: $(TUI)$(EXEEXT)
installcheck:
@@ -975,6 +981,23 @@
$(INSTALL_DATA) $(srcdir)/gdb.1 \
$(DESTDIR)$(man1dir)/$$transformed_name.1
@$(MAKE) DO=install "DODIRS=$(SUBDIRS)" $(FLAGS_TO_PASS) subdir_do
+.PHONY: install-tui
+install-tui:
+ transformed_name=`t='$(program_transform_name)'; \
+ echo $(TUI) | sed -e "$$t"` ; \
+ if test "x$$transformed_name" = x; then \
+ transformed_name=$(TUI) ; \
+ else \
+ true ; \
+ fi ; \
+ $(SHELL) $(srcdir)/../mkinstalldirs $(DESTDIR)$(bindir) ; \
+ $(INSTALL_PROGRAM) $(TUI)$(EXEEXT) \
+ $(DESTDIR)$(bindir)/$$transformed_name$(EXEEXT) ; \
+ $(SHELL) $(srcdir)/../mkinstalldirs \
+ $(DESTDIR)$(man1dir) ; \
+ $(INSTALL_DATA) $(srcdir)/gdb.1 \
+ $(DESTDIR)$(man1dir)/$$transformed_name.1
+
uninstall: force $(CONFIG_UNINSTALL)
transformed_name=`t='$(program_transform_name)'; \
@@ -987,6 +1010,17 @@
rm -f $(DESTDIR)$(bindir)/$$transformed_name$(EXEEXT) \
$(DESTDIR)$(man1dir)/$$transformed_name.1
@$(MAKE) DO=uninstall "DODIRS=$(SUBDIRS)" $(FLAGS_TO_PASS) subdir_do
+.PHONY: uninstall-tui
+uninstall-tui:
+ transformed_name=`t='$(program_transform_name)'; \
+ echo $(TUI) | sed -e $$t` ; \
+ if test "x$$transformed_name" = x; then \
+ transformed_name=$(TUI) ; \
+ else \
+ true ; \
+ fi ; \
+ rm -f $(DESTDIR)$(bindir)/$$transformed_name$(EXEEXT) \
+ $(DESTDIR)$(man1dir)/$$transformed_name.1
# 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
@@ -1081,6 +1115,12 @@
-o gdb$(EXEEXT) gdb.o libgdb.a \
$(TDEPLIBS) $(TUI_LIBRARY) $(CLIBS) $(LOADLIBES)
+$(TUI)$(EXEEXT): tui-main.o libgdb.a $(ADD_DEPS) $(CDEPS) $(TDEPLIBS)
+ rm -f $(TUI)$(EXEEXT)
+ $(CC_LD) $(INTERNAL_LDFLAGS) $(WIN32LDAPP) \
+ -o $(TUI)$(EXEEXT) tui-main.o libgdb.a \
+ $(TDEPLIBS) $(TUI_LIBRARY) $(CLIBS) $(LOADLIBES)
+
nlm: force
rootme=`pwd`; export rootme; $(MAKE) $(TARGET_FLAGS_TO_PASS) DO=all DODIRS=nlm subdir_do
@@ -1145,6 +1185,9 @@
rm -f init.c version.c
rm -f gdb$(EXEEXT) core make.log
rm -f gdb[0-9]$(EXEEXT)
+.PHONY: clean-tui
+clean-tui:
+ rm -f $(TUI)$(EXEEXT)
# This used to depend on c-exp.c m2-exp.c TAGS
# I believe this is wrong; the makefile standards for distclean just
@@ -2179,11 +2222,11 @@
s390-nat.o: s390-nat.c $(defs_h) $(tm_h) $(regcache_h) $(inferior_h) \
$(s390_tdep_h)
s390-tdep.o: s390-tdep.c $(defs_h) $(arch_utils_h) $(frame_h) $(inferior_h) \
- $(symtab_h) $(target_h) $(gdbcore_h) $(gdbcmd_h) $(symfile_h) \
- $(objfiles_h) $(tm_h) $(__bfd_bfd_h) $(floatformat_h) $(regcache_h) \
- $(trad_frame_h) $(frame_base_h) $(frame_unwind_h) \
- $(reggroups_h) $(regset_h) $(value_h) $(gdb_assert_h) $(dis_asm_h) \
- $(solib_svr4_h) $(s390_tdep_h)
+ $(symtab_h) $(target_h) $(gdbcore_h) $(gdbcmd_h) $(objfiles_h) \
+ $(tm_h) $(__bfd_bfd_h) $(floatformat_h) $(regcache_h) \
+ $(trad_frame_h) $(frame_base_h) $(frame_unwind_h) $(reggroups_h) \
+ $(regset_h) $(value_h) $(gdb_assert_h) $(dis_asm_h) $(solib_svr4_h) \
+ $(s390_tdep_h)
scm-exp.o: scm-exp.c $(defs_h) $(symtab_h) $(gdbtypes_h) $(expression_h) \
$(parser_defs_h) $(language_h) $(value_h) $(c_lang_h) $(scm_lang_h) \
$(scm_tags_h)
@@ -2764,6 +2807,9 @@
$(tui_wingeneral_h) $(tui_stack_h) $(tui_regs_h) $(tui_win_h) \
$(tui_winsource_h) $(tui_disasm_h) $(gdb_string_h) $(gdb_curses_h)
$(CC) -c $(INTERNAL_CFLAGS) $(srcdir)/tui/tui-layout.c
+tui-main.o: $(srcdir)/tui/tui-main.c $(defs_h) $(main_h) $(gdb_string_h) \
+ $(interps_h)
+ $(CC) -c $(INTERNAL_CFLAGS) $(srcdir)/tui/tui-main.c
tui-out.o: $(srcdir)/tui/tui-out.c $(defs_h) $(ui_out_h) $(tui_h) \
$(gdb_string_h) $(gdb_assert_h)
$(CC) -c $(INTERNAL_CFLAGS) $(srcdir)/tui/tui-out.c
Index: configure.in
===================================================================
RCS file: /cvs/src/src/gdb/configure.in,v
retrieving revision 1.146
diff -u -r1.146 configure.in
--- configure.in 16 Feb 2004 19:33:42 -0000 1.146
+++ configure.in 18 Feb 2004 18:49:21 -0000
@@ -163,6 +163,10 @@
CONFIG_SRCS="$CONFIG_SRCS \$(SUBDIR_TUI_SRCS)"
CONFIG_INITS="$CONFIG_INITS \$(SUBDIR_TUI_INITS)"
ENABLE_CFLAGS="$ENABLE_CFLAGS \$(SUBDIR_TUI_CFLAGS)"
+ CONFIG_ALL="${CONFIG_ALL} all-tui"
+ CONFIG_CLEAN="${CONFIG_CLEAN} clean-tui"
+ CONFIG_INSTALL="${CONFIG_INSTALL} install-tui"
+ CONFIG_UNINSTALL="${CONFIG_UNINSTALL} uninstall-tui"
fi
fi
fi
Index: interps.h
===================================================================
RCS file: /cvs/src/src/gdb/interps.h,v
retrieving revision 1.5
diff -u -r1.5 interps.h
--- interps.h 7 Aug 2003 17:47:41 -0000 1.5
+++ interps.h 18 Feb 2004 18:49:23 -0000
@@ -71,5 +71,6 @@
#define INTERP_MI2 "mi2"
#define INTERP_MI3 "mi3"
#define INTERP_MI "mi"
+#define INTERP_TUI "tui"
#endif
Index: tui/tui-main.c
===================================================================
RCS file: tui/tui-main.c
diff -N tui/tui-main.c
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ tui/tui-main.c 18 Feb 2004 18:49:29 -0000
@@ -0,0 +1,37 @@
+/* Main function for TUI gdb.
+
+ Copyright 2002, 2004 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"
+#include "interps.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;
+ args.interpreter_p = INTERP_TUI;
+ return gdb_main (&args);
+}
prev parent reply other threads:[~2004-02-18 18:53 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2004-02-10 18:32 Andrew Cagney
2004-02-10 18:40 ` Daniel Jacobowitz
2004-02-10 19:53 ` Kevin Buettner
2004-02-11 13:11 ` Bob Rossi
2004-02-11 14:47 ` Andrew Cagney
2004-02-11 15:00 ` Bob Rossi
2004-02-12 4:34 ` Christopher Faylor
2004-02-10 19:11 ` Eli Zaretskii
2004-02-10 20:47 ` Andrew Cagney
2004-02-11 6:27 ` Eli Zaretskii
2004-02-18 18:53 ` Andrew Cagney [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4033B481.7080308@gnu.org \
--to=cagney@gnu.org \
--cc=gdb-patches@sources.redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox