diff options
-rw-r--r-- | gdb/ChangeLog | 5 | ||||
-rw-r--r-- | gdb/target.c | 15 | ||||
-rw-r--r-- | gdb/target.h | 5 |
3 files changed, 25 insertions, 0 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 0691d64..8655973 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,5 +1,10 @@ 2013-03-11 Markus Metzger <markus.t.metzger@intel.com> + * target.h (add_deprecated_target_alias): New. + * target.c (add_deprecated_target_alias): New. + +2013-03-11 Markus Metzger <markus.t.metzger@intel.com> + * common/linux-btrace.c: Include sys/ptrace, sys/types, sys/wait.h, and signal.h. (linux_supports_btrace): Add kernel and diff --git a/gdb/target.c b/gdb/target.c index 524caec..dd20184 100644 --- a/gdb/target.c +++ b/gdb/target.c @@ -434,6 +434,21 @@ information on the arguments for a particular protocol, type\n\ add_cmd (t->to_shortname, no_class, t->to_open, t->to_doc, &targetlist); } +/* See target.h. */ + +void +add_deprecated_target_alias (struct target_ops *t, char *alias) +{ + struct cmd_list_element *c; + char *alt; + + /* If we use add_alias_cmd, here, we do not get the deprecated warning, + see PR cli/15104. */ + c = add_cmd (alias, no_class, t->to_open, t->to_doc, &targetlist); + alt = xstrprintf ("target %s", t->to_shortname); + deprecate_cmd (c, alt); +} + /* Stub functions */ void diff --git a/gdb/target.h b/gdb/target.h index ceecca4..e98095e 100644 --- a/gdb/target.h +++ b/gdb/target.h @@ -1788,6 +1788,11 @@ int target_verify_memory (const gdb_byte *data, extern void add_target (struct target_ops *); +/* Adds a command ALIAS for target T and marks it deprecated. This is useful + for maintaining backwards compatibility when renaming targets. */ + +extern void add_deprecated_target_alias (struct target_ops *t, char *alias); + extern void push_target (struct target_ops *); extern int unpush_target (struct target_ops *); |