Re: [patch/rfc] Add `interpreter-exec command'

Andrew Cagney
2003-02-06T01:20:10Z

I've checked this in.

Andrew

2003-02-04 Jim Ingham <jingham@apple.com>
Keith Seitz <keiths@redhat.com>
Elena Zannoni <ezannoni@redhat.com>
Andrew Cagney <ac131313@redhat.com>

* Makefile.in (SUBDIR_CLI_OBS): Add "cli-interp.o".
(SUBDIR_CLI_SRCS): Add "cli/cli-interp.c".
(SUBDIR_MI_OBS): Add "mi-interp.o".
(SUBDIR_MI_SRCS): Add "mi/mi-interp.c".
(SFILES): Add "interps.c".
(COMMON_OBS): Add "interps.o".
(interps_h, mi_main_h): Define.
(interps.o, cli-interp.o, mi-interp.o): Add dependencies.
(mi-main.o, main.o, event-top.o): Update dependencies.
* cli/cli-interp.c: New file.
* interps.h, interps.c: New files.
* top.c: (gdb_init): Don't install the default interpreter, handed
by captured_main.
* main.c: Include "interps.h".
(interpreter_p): Note that it should malloc'ed.
(captured_command_loop): Call current_interp_command_loop.
(captured_main): Initialize interpreter_p to INTERP_CONSOLE. Use
xfree and xstrdup when updating interpreter_p. Install the
default interpreter. Add hack to stop mi1's copyright notice
being encoded.
* event-top.h (gdb_setup_readline): Declare.
(gdb_disable_readline): Declare.
* event-top.c: Include "interps.h".
(display_gdb_prompt): Call current_interp_display_prompt_p.
(gdb_setup_readline): Initialize gdb_stdout, gdb_stderr,
gdb_stdlog, and gdb_stdtarg.
(_initialize_event_loop): Don't call gdb_setup_readline.
* cli-out.c (cli_out_set_stream): New function.
* cli-out.h (cli_out_set_stream): Declare.

Index: mi/ChangeLog
2003-02-04 Jim Ingham <jingham@apple.com>
Keith Seitz <keiths@redhat.com>
Elena Zannoni <ezannoni@redhat.com>
Andrew Cagney <ac131313@redhat.com>

* mi-main.h: New file.
* mi-interp.c: New file.
* mi-main.c: Include "interps.h".
(mi_error_message): Make global.
(mi_input): Delete static function, moved to "mi-interp.c".
(mi_execute_command, mi_execute_command_wrapper): Ditto.
(mi_command_loop, mi1_command_loop, mi2_command_loop): Ditto.
(mi_load_progress): Make non-static.
(mi_error_last_message): New function.
(captured_mi_execute_command): If the interpreter changed, don't
print anything.
(mi_load_progress): Use current_interp_named_p.
(mi_init_ui): Delete function.
(_initialize_mi_main): Don't install the mi interpreter, handled
by "mi-interp.c".
(mi_exec_async_cli_cmd_continuation): Make static.
* mi-console.h (mi_console_file_new): Add `quote' parameter.
* mi-console.c (struct mi_console_file): Add `quote'.
(mi_console_file_new): Add `quote' parameter. Initialize `quote'.
(mi_console_raw_packet): Only quote the output when `quote'.
* mi-cmds.h (mi_cmd_interpreter_exec): Declare.
(mi_error_message, mi_error_last_message): Declare.
(mi_execute_command): Declare.
* mi-cmds.c: Add `interpreter-exec' command.