*** empty log message ***
[deliverable/binutils-gdb.git] / gdb / top.c
index b4475214d42e37ce3752ab1592d559c1c5f58516..1bd22e3706d19b0f700ecd752518d049a6eb7695 100644 (file)
--- a/gdb/top.c
+++ b/gdb/top.c
@@ -1,7 +1,7 @@
 /* Top level stuff for GDB, the GNU debugger.
 
    Copyright 1986, 1987, 1988, 1989, 1990, 1991, 1992, 1993, 1994,
-   1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004
+   1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005
    Free Software Foundation, Inc.
 
    This file is part of GDB.
 
 /* Initialization file name for gdb.  This is overridden in some configs.  */
 
+#ifndef PATH_MAX
+# ifdef FILENAME_MAX
+#  define PATH_MAX FILENAME_MAX
+# else
+#  define PATH_MAX 512
+# endif
+#endif
+
 #ifndef        GDBINIT_FILENAME
 #define        GDBINIT_FILENAME        ".gdbinit"
 #endif
-char gdbinit[] = GDBINIT_FILENAME;
+char gdbinit[PATH_MAX + 1] = GDBINIT_FILENAME;
 
 int inhibit_gdbinit = 0;
 
@@ -88,6 +96,14 @@ extern char lang_frame_mismatch_warn[];              /* language.c */
 /* Flag for whether we want all the "from_tty" gubbish printed.  */
 
 int caution = 1;               /* Default is yes, sigh. */
+static void
+show_caution (struct ui_file *file, int from_tty,
+             struct cmd_list_element *c, const char *value)
+{
+  fprintf_filtered (file, _("\
+Whether to confirm potentially dangerous operations is %s.\n"),
+                   value);
+}
 
 /* stdio stream that command input is being read from.  Set to stdin normally.
    Set by source_command to the file we are sourcing.  Set to NULL if we are
@@ -319,21 +335,6 @@ quit_cover (void *s)
    event-top.c into this file, top.c */
 /* static */ char *source_file_name;
 
-/* Buffer containing the error_pre_print used by the source stuff.
-   Malloc'd.  */
-/* NOTE 1999-04-29: This variable will be static again, once we modify
-   gdb to use the event loop as the default command loop and we merge
-   event-top.c into this file, top.c */
-/* static */ char *source_error;
-static int source_error_allocated;
-
-/* Something to glom on to the start of error_pre_print if source_file_name
-   is set.  */
-/* NOTE 1999-04-29: This variable will be static again, once we modify
-   gdb to use the event loop as the default command loop and we merge
-   event-top.c into this file, top.c */
-/* static */ char *source_pre_error;
-
 /* Clean up on error during a "source" command (or execution of a
    user-defined command).  */
 
@@ -406,7 +407,7 @@ execute_command (char *p, int from_tty)
            && strcmp (c->name, "pwd") != 0
            && strcmp (c->name, "show") != 0
            && strcmp (c->name, "stop") != 0)
-         error ("Cannot execute this command while the target is running.");
+         error (_("Cannot execute this command while the target is running."));
 
       /* Pass null arg rather than an empty one.  */
       arg = *p ? p : 0;
@@ -442,7 +443,7 @@ execute_command (char *p, int from_tty)
       else if (c->type == set_cmd || c->type == show_cmd)
        do_setshow_command (arg, from_tty & caution, c);
       else if (!cmd_func_p (c))
-       error ("That is not a command, just a help topic.");
+       error (_("That is not a command, just a help topic."));
       else if (deprecated_call_command_hook)
        deprecated_call_command_hook (c, arg, from_tty & caution);
       else
@@ -534,7 +535,7 @@ command_loop (void)
        {
          long cmd_time = get_run_time () - time_at_cmd_start;
 
-         printf_unfiltered ("Command execution time: %ld.%06ld\n",
+         printf_unfiltered (_("Command execution time: %ld.%06ld\n"),
                             cmd_time / 1000000, cmd_time % 1000000);
        }
 
@@ -545,7 +546,7 @@ command_loop (void)
          long space_now = lim - lim_at_start;
          long space_diff = space_now - space_at_cmd_start;
 
-         printf_unfiltered ("Space used: %ld (%c%ld for this command)\n",
+         printf_unfiltered (_("Space used: %ld (%c%ld for this command)\n"),
                             space_now,
                             (space_diff >= 0 ? '+' : '-'),
                             space_diff);
@@ -670,13 +671,40 @@ gdb_readline (char *prompt_arg)
    substitution.  These variables are given default values at the end
    of this file.  */
 static int command_editing_p;
+
 /* NOTE 1999-04-29: This variable will be static again, once we modify
    gdb to use the event loop as the default command loop and we merge
    event-top.c into this file, top.c */
+
 /* static */ int history_expansion_p;
+
 static int write_history_p;
+static void
+show_write_history_p (struct ui_file *file, int from_tty,
+                     struct cmd_list_element *c, const char *value)
+{
+  fprintf_filtered (file, _("Saving of the history record on exit is %s.\n"),
+                   value);
+}
+
 static int history_size;
+static void
+show_history_size (struct ui_file *file, int from_tty,
+                  struct cmd_list_element *c, const char *value)
+{
+  fprintf_filtered (file, _("The size of the command history is %s.\n"),
+                   value);
+}
+
 static char *history_filename;
+static void
+show_history_filename (struct ui_file *file, int from_tty,
+                      struct cmd_list_element *c, const char *value)
+{
+  fprintf_filtered (file, _("\
+The filename in which to record the command history is \"%s\".\n"),
+                   value);
+}
 
 /* This is like readline(), but it has some gdb-specific behavior.
    gdb can use readline in both the synchronous and async modes during
@@ -738,7 +766,7 @@ float_handler (int signo)
   /* This message is based on ANSI C, section 4.7.  Note that integer
      divide by zero causes this, so "float" is a misnomer.  */
   signal (SIGFPE, float_handler);
-  error ("Erroneous arithmetic operation.");
+  error (_("Erroneous arithmetic operation."));
 }
 
 static void
@@ -873,15 +901,7 @@ command_line_input (char *prompt_arg, int repeat, char *annotation_suffix)
       gdb_flush (gdb_stderr);
 
       if (source_file_name != NULL)
-       {
-         ++source_line_number;
-         sprintf (source_error,
-                  "%s%s:%d: Error in sourced command file:\n",
-                  source_pre_error,
-                  source_file_name,
-                  source_line_number);
-         error_pre_print = source_error;
-       }
+       ++source_line_number;
 
       if (annotation_level > 1 && instream == stdin)
        {
@@ -1281,14 +1301,14 @@ set_history_size_command (char *args, int from_tty, struct cmd_list_element *c)
   else
     {
       history_size = INT_MAX;
-      error ("History size must be non-negative");
+      error (_("History size must be non-negative"));
     }
 }
 
 void
 set_history (char *args, int from_tty)
 {
-  printf_unfiltered ("\"set history\" must be followed by the name of a history subcommand.\n");
+  printf_unfiltered (_("\"set history\" must be followed by the name of a history subcommand.\n"));
   help_list (sethistlist, "set history ", -1, gdb_stdout);
 }
 
@@ -1358,6 +1378,37 @@ init_history (void)
   read_history (history_filename);
 }
 
+static void
+show_new_async_prompt (struct ui_file *file, int from_tty,
+                      struct cmd_list_element *c, const char *value)
+{
+  fprintf_filtered (file, _("Gdb's prompt is \"%s\".\n"), value);
+}
+
+static void
+show_async_command_editing_p (struct ui_file *file, int from_tty,
+                             struct cmd_list_element *c, const char *value)
+{
+  fprintf_filtered (file, _("\
+Editing of command lines as they are typed is %s.\n"),
+                   value);
+}
+
+static void
+show_annotation_level (struct ui_file *file, int from_tty,
+                      struct cmd_list_element *c, const char *value)
+{
+  fprintf_filtered (file, _("Annotation_level is %s.\n"), value);
+}
+
+static void
+show_exec_done_display_p (struct ui_file *file, int from_tty,
+                         struct cmd_list_element *c, const char *value)
+{
+  fprintf_filtered (file, _("\
+Notification of completion for asynchronous execution commands is %s.\n"),
+                   value);
+}
 static void
 init_main (void)
 {
@@ -1397,65 +1448,79 @@ init_main (void)
      15 is Control-o, the same binding this function has in Bash.  */
   rl_add_defun ("operate-and-get-next", gdb_rl_operate_and_get_next, 15);
 
-  c = add_set_cmd ("prompt", class_support, var_string,
-                  (char *) &new_async_prompt, "Set gdb's prompt",
-                  &setlist);
-  deprecated_add_show_from_set (c, &showlist);
-  set_cmd_sfunc (c, set_async_prompt);
+  add_setshow_string_cmd ("prompt", class_support,
+                         &new_async_prompt, _("\
+Set gdb's prompt"), _("\
+Show gdb's prompt"), NULL,
+                         set_async_prompt,
+                         show_new_async_prompt,
+                         &setlist, &showlist);
 
-  add_com ("dont-repeat", class_support, dont_repeat_command, "Don't repeat this command.\n\
+  add_com ("dont-repeat", class_support, dont_repeat_command, _("\
+Don't repeat this command.\n\
 Primarily used inside of user-defined commands that should not be repeated when\n\
-hitting return.");
+hitting return."));
 
-  c = add_set_cmd ("editing", class_support, var_boolean, (char *) &async_command_editing_p,
-                  "Set editing of command lines as they are typed.\n\
+  add_setshow_boolean_cmd ("editing", class_support,
+                          &async_command_editing_p, _("\
+Set editing of command lines as they are typed."), _("\
+Show editing of command lines as they are typed."), _("\
 Use \"on\" to enable the editing, and \"off\" to disable it.\n\
 Without an argument, command line editing is enabled.  To edit, use\n\
-EMACS-like or VI-like commands like control-P or ESC.", &setlist);
-
-  deprecated_add_show_from_set (c, &showlist);
-  set_cmd_sfunc (c, set_async_editing_command);
-
-  deprecated_add_show_from_set
-    (add_set_cmd ("save", no_class, var_boolean, (char *) &write_history_p,
-                 "Set saving of the history record on exit.\n\
+EMACS-like or VI-like commands like control-P or ESC."),
+                          set_async_editing_command,
+                          show_async_command_editing_p,
+                          &setlist, &showlist);
+
+  add_setshow_boolean_cmd ("save", no_class, &write_history_p, _("\
+Set saving of the history record on exit."), _("\
+Show saving of the history record on exit."), _("\
 Use \"on\" to enable the saving, and \"off\" to disable it.\n\
-Without an argument, saving is enabled.", &sethistlist),
-     &showhistlist);
-
-  c = add_set_cmd ("size", no_class, var_integer, (char *) &history_size,
-                  "Set the size of the command history,\n\
-ie. the number of previous commands to keep a record of.", &sethistlist);
-  deprecated_add_show_from_set (c, &showhistlist);
-  set_cmd_sfunc (c, set_history_size_command);
-
-  c = add_set_cmd ("filename", no_class, var_filename,
-                  (char *) &history_filename,
-                  "Set the filename in which to record the command history\n\
-(the list of previous commands of which a record is kept).", &sethistlist);
-  set_cmd_completer (c, filename_completer);
-  deprecated_add_show_from_set (c, &showhistlist);
-
-  deprecated_add_show_from_set
-    (add_set_cmd ("confirm", class_support, var_boolean,
-                 (char *) &caution,
-                 "Set whether to confirm potentially dangerous operations.",
-                 &setlist),
-     &showlist);
-
-  c = add_set_cmd ("annotate", class_obscure, var_zinteger,
-                  (char *) &annotation_level, "Set annotation_level.\n\
+Without an argument, saving is enabled."),
+                          NULL,
+                          show_write_history_p,
+                          &sethistlist, &showhistlist);
+
+  add_setshow_integer_cmd ("size", no_class, &history_size, _("\
+Set the size of the command history,"), _("\
+Show the size of the command history,"), _("\
+ie. the number of previous commands to keep a record of."),
+                          set_history_size_command,
+                          show_history_size,
+                          &sethistlist, &showhistlist);
+
+  add_setshow_filename_cmd ("filename", no_class, &history_filename, _("\
+Set the filename in which to record the command history"), _("\
+Show the filename in which to record the command history"), _("\
+(the list of previous commands of which a record is kept)."),
+                           NULL,
+                           show_history_filename,
+                           &sethistlist, &showhistlist);
+
+  add_setshow_boolean_cmd ("confirm", class_support, &caution, _("\
+Set whether to confirm potentially dangerous operations."), _("\
+Show whether to confirm potentially dangerous operations."), NULL,
+                          NULL,
+                          show_caution,
+                          &setlist, &showlist);
+
+  add_setshow_zinteger_cmd ("annotate", class_obscure, &annotation_level, _("\
+Set annotation_level."), _("\
+Show annotation_level."), _("\
 0 == normal;     1 == fullname (for use when running under emacs)\n\
-2 == output annotated suitably for use by programs that control GDB.",
-                  &setlist);
-  deprecated_add_show_from_set (c, &showlist);
-  set_cmd_sfunc (c, set_async_annotation_level);
-
-  deprecated_add_show_from_set
-    (add_set_cmd ("exec-done-display", class_support, var_boolean, (char *) &exec_done_display_p,
-                 "Set notification of completion for asynchronous execution commands.\n\
-Use \"on\" to enable the notification, and \"off\" to disable it.", &setlist),
-     &showlist);
+2 == output annotated suitably for use by programs that control GDB."),
+                           set_async_annotation_level,
+                           show_annotation_level,
+                           &setlist, &showlist);
+
+  add_setshow_boolean_cmd ("exec-done-display", class_support,
+                          &exec_done_display_p, _("\
+Set notification of completion for asynchronous execution commands."), _("\
+Show notification of completion for asynchronous execution commands."), _("\
+Use \"on\" to enable the notification, and \"off\" to disable it."),
+                          NULL,
+                          show_exec_done_display_p,
+                          &setlist, &showlist);
 }
 
 void
This page took 0.034098 seconds and 4 git commands to generate.