void (*deprecated_file_changed_hook) (const char *);
+static const target_info exec_target_info = {
+ "exec",
+ N_("Local exec file"),
+ N_("Use an executable file as a target.\n\
+Specify the filename of the executable file.")
+};
+
/* The target vector for executable files. */
struct exec_target final : public target_ops
exec_target ()
{ to_stratum = file_stratum; }
- const char *shortname () override
- { return "exec"; }
-
- const char *longname () override
- { return _("Local exec file"); }
-
- const char *doc () override
- {
- return _("\
-Use an executable file as a target.\n\
-Specify the filename of the executable file.");
- }
+ const target_info &info () const override
+ { return exec_target_info; }
- void open (const char *, int) override;
void close () override;
enum target_xfer_status xfer_partial (enum target_object object,
const char *annex,
struct target_section_table *get_section_table () override;
void files_info () override;
- int has_memory () override;
+ bool has_memory () override;
char *make_corefile_notes (bfd *, int *) override;
int find_memory_regions (find_memory_region_ftype func, void *data) override;
};
}
-void
-exec_target::open (const char *args, int from_tty)
+static void
+exec_target_open (const char *args, int from_tty)
{
target_preopen (from_tty);
exec_file_attach (args, from_tty);
}
}
-int
+bool
exec_target::has_memory ()
{
/* We can provide memory if we have any file/target sections to read
show_write_files,
&setlist, &showlist);
- add_target_with_completer (&exec_ops, filename_completer);
+ add_target (exec_target_info, exec_target_open, filename_completer);
}