X-Git-Url: https://review.openocd.org/gitweb?a=blobdiff_plain;f=src%2Fhelper%2Fcommand.c;h=bb04fb6a0708562b4e70b53be6a1620199fe4d36;hb=76b35638608f26cf7ea10509ecba3032eff90c9d;hp=fb1a709a5dee6f65c4f326e105a6d561a0bdf70e;hpb=39650e2273bcae868d9509fe36515936ce25aacb;p=openocd.git diff --git a/src/helper/command.c b/src/helper/command.c index fb1a709a5d..bb04fb6a07 100644 --- a/src/helper/command.c +++ b/src/helper/command.c @@ -31,7 +31,7 @@ #include "config.h" #endif -/* see Embedder-HOWTO.txt in Jim Tcl project hosted on BerliOS*/ +/* see Embedded-HOWTO.txt in Jim Tcl project hosted on BerliOS*/ #define JIM_EMBEDDED /* @todo the inclusion of target.h here is a layering violation */ @@ -152,6 +152,7 @@ static void script_command_args_free(const char **words, unsigned nwords) free((void *)words[i]); free(words); } + static const char **script_command_args_alloc( unsigned argc, Jim_Obj * const *argv, unsigned *nwords) { @@ -244,6 +245,7 @@ static struct command *command_find(struct command *head, const char *name) } return NULL; } + struct command *command_find_in_context(struct command_context *cmd_ctx, const char *name) { @@ -570,6 +572,7 @@ static char *__command_name(struct command *c, char delim, unsigned extra) } return name; } + char *command_name(struct command *c, char delim) { return __command_name(c, delim, 0); @@ -777,7 +780,7 @@ static int jim_capture(Jim_Interp *interp, int argc, Jim_Obj *const *argv) /* disable polling during capture. This avoids capturing output * from polling. * - * This is necessary in order to avoid accidentially getting a non-empty + * This is necessary in order to avoid accidentally getting a non-empty * string for tcl fn's. */ bool save_poll = jtag_poll_get_enabled(); @@ -847,6 +850,7 @@ static void command_help_show_wrap(const char *str, unsigned n, unsigned n2) n = n2; } } + static COMMAND_HELPER(command_help_show, struct command *c, unsigned n, bool show_help, const char *match) { @@ -911,6 +915,7 @@ static COMMAND_HELPER(command_help_show, struct command *c, unsigned n, return CALL_COMMAND_HANDLER(command_help_show_list, c->children, n, show_help, match); } + COMMAND_HANDLER(handle_help_command) { bool full = strcmp(CMD_NAME, "help") == 0; @@ -927,19 +932,16 @@ COMMAND_HANDLER(handle_help_command) if (NULL != match) { char *prev = match; - match = alloc_printf("%s %s", match, - CMD_ARGV[i]); + match = alloc_printf("%s %s", match, CMD_ARGV[i]); free(prev); if (NULL == match) { - LOG_ERROR("unable to build " - "search string"); + LOG_ERROR("unable to build search string"); return -ENOMEM; } } else { match = alloc_printf("%s", CMD_ARGV[i]); if (NULL == match) { - LOG_ERROR("unable to build " - "search string"); + LOG_ERROR("unable to build search string"); return -ENOMEM; } } @@ -1311,6 +1313,10 @@ struct command_context *command_init(const char *startup_tcl, Jim_Interp *interp HostOs = "ecos"; #elif defined(__FreeBSD__) HostOs = "freebsd"; +#elif defined(__NetBSD__) + HostOs = "netbsd"; +#elif defined(__OpenBSD__) + HostOs = "openbsd"; #else #warning "Unrecognized host OS..." HostOs = "other";