Lines Matching refs:argv
146 static int handle_options(const char ***argv, int *argc, int *envchanged) in handle_options() argument
151 const char *cmd = (*argv)[0]; in handle_options()
188 setenv(PERF_DIR_ENVIRONMENT, (*argv)[1], 1); in handle_options()
191 (*argv)++; in handle_options()
203 setenv(PERF_WORK_TREE_ENVIRONMENT, (*argv)[1], 1); in handle_options()
206 (*argv)++; in handle_options()
217 perf_debugfs_set_path((*argv)[1]); in handle_options()
220 (*argv)++; in handle_options()
227 set_buildid_dir((*argv)[1]); in handle_options()
230 (*argv)++; in handle_options()
260 if (perf_debug_option((*argv)[1])) in handle_options()
263 (*argv)++; in handle_options()
270 (*argv)++; in handle_options()
277 static int handle_alias(int *argcp, const char ***argv) in handle_alias() argument
285 alias_command = (*argv)[0]; in handle_alias()
294 sq_quote_argv(&buf, (*argv) + 1, PATH_MAX); in handle_alias()
326 memcpy(new_argv + count, *argv + 1, sizeof(char *) * *argcp); in handle_alias()
329 *argv = new_argv; in handle_alias()
350 static int run_builtin(struct cmd_struct *p, int argc, const char **argv) in run_builtin() argument
370 status = p->fn(argc, argv, prefix); in run_builtin()
404 static void handle_internal_command(int argc, const char **argv) in handle_internal_command() argument
406 const char *cmd = argv[0]; in handle_internal_command()
411 i = strlen(argv[0]) - strlen(ext); in handle_internal_command()
412 if (i > 0 && !strcmp(argv[0] + i, ext)) { in handle_internal_command()
413 char *argv0 = strdup(argv[0]); in handle_internal_command()
414 argv[0] = cmd = argv0; in handle_internal_command()
420 if (argc > 1 && !strcmp(argv[1], "--help")) { in handle_internal_command()
421 argv[1] = argv[0]; in handle_internal_command()
422 argv[0] = cmd = "help"; in handle_internal_command()
429 exit(run_builtin(p, argc, argv)); in handle_internal_command()
433 static void execv_dashed_external(const char **argv) in execv_dashed_external() argument
439 strbuf_addf(&cmd, "perf-%s", argv[0]); in execv_dashed_external()
447 tmp = argv[0]; in execv_dashed_external()
448 argv[0] = cmd.buf; in execv_dashed_external()
454 status = run_command_v_opt(argv, 0); in execv_dashed_external()
457 die("unable to run '%s'", argv[0]); in execv_dashed_external()
462 argv[0] = tmp; in execv_dashed_external()
467 static int run_argv(int *argcp, const char ***argv) in run_argv() argument
473 handle_internal_command(*argcp, *argv); in run_argv()
476 execv_dashed_external(*argv); in run_argv()
482 if (done_alias || !handle_alias(argcp, argv)) in run_argv()
508 int main(int argc, const char **argv) in main() argument
517 cmd = perf_extract_argv0_path(argv[0]); in main()
534 argv[0] = cmd; in main()
535 handle_internal_command(argc, argv); in main()
543 argv[0] = "trace"; in main()
544 return cmd_trace(argc, argv, NULL); in main()
552 argv++; in main()
554 handle_options(&argv, &argc, NULL); in main()
559 if (!prefixcmp(argv[0], "--")) in main()
560 argv[0] += 2; in main()
568 cmd = argv[0]; in main()
588 int was_alias = run_argv(&argc, &argv); in main()
596 cmd, argv[0]); in main()
600 cmd = argv[0] = help_unknown_cmd(cmd); in main()