Lines Matching refs:argv
93 static int handle_options(const char ***argv, int *argc, int *envchanged)
98 const char *cmd = (*argv)[0];
135 setenv(PERF_DIR_ENVIRONMENT, (*argv)[1], 1);
138 (*argv)++;
150 setenv(PERF_WORK_TREE_ENVIRONMENT, (*argv)[1], 1);
153 (*argv)++;
164 strncpy(debugfs_mntpt, (*argv)[1], MAXPATHLEN);
168 (*argv)++;
180 (*argv)++;
187 static int handle_alias(int *argcp, const char ***argv)
195 alias_command = (*argv)[0];
204 sq_quote_argv(&buf, (*argv) + 1, PATH_MAX);
236 memcpy(new_argv + count, *argv + 1, sizeof(char *) * *argcp);
239 *argv = new_argv;
266 static int run_builtin(struct cmd_struct *p, int argc, const char **argv)
286 status = p->fn(argc, argv, prefix);
309 static void handle_internal_command(int argc, const char **argv)
311 const char *cmd = argv[0];
348 i = strlen(argv[0]) - strlen(ext);
349 if (i > 0 && !strcmp(argv[0] + i, ext)) {
350 char *argv0 = strdup(argv[0]);
351 argv[0] = cmd = argv0;
357 if (argc > 1 && !strcmp(argv[1], "--help")) {
358 argv[1] = argv[0];
359 argv[0] = cmd = "help";
366 exit(run_builtin(p, argc, argv));
370 static void execv_dashed_external(const char **argv)
376 strbuf_addf(&cmd, "perf-%s", argv[0]);
379 * argv[0] must be the perf command, but the argv array
381 * subsequent loop iterations. Save argv[0] and
384 tmp = argv[0];
385 argv[0] = cmd.buf;
391 status = run_command_v_opt(argv, 0);
394 die("unable to run '%s'", argv[0]);
399 argv[0] = tmp;
404 static int run_argv(int *argcp, const char ***argv)
410 handle_internal_command(*argcp, *argv);
413 execv_dashed_external(*argv);
419 if (done_alias || !handle_alias(argcp, argv))
438 int main(int argc, const char **argv)
442 cmd = perf_extract_argv0_path(argv[0]);
459 argv[0] = cmd;
460 handle_internal_command(argc, argv);
465 argv++;
467 handle_options(&argv, &argc, NULL);
473 if (!prefixcmp(argv[0], "--"))
474 argv[0] += 2;
482 cmd = argv[0];
496 was_alias = run_argv(&argc, &argv);
503 cmd, argv[0]);
507 cmd = argv[0] = help_unknown_cmd(cmd);