[PATCH v4 06/15] tools/gputop: find program name from command line
Jeevaka Prabu Badrappan
jeevaka.badrappan at intel.com
Wed May 7 16:01:39 UTC 2025
program_invocation_short_name is global variable provided by glibc.
Inorder to get the igt built for Android(without glibc), find the
program from command line without using program_invocation_short_name.
Signed-off-by: Jeevaka Prabu Badrappan <jeevaka.badrappan at intel.com>
---
tools/gputop.c | 13 ++++++++++---
1 file changed, 10 insertions(+), 3 deletions(-)
diff --git a/tools/gputop.c b/tools/gputop.c
index 43b01f566..457a31969 100644
--- a/tools/gputop.c
+++ b/tools/gputop.c
@@ -335,15 +335,22 @@ struct gputop_args {
unsigned long delay_usec;
};
-static void help(void)
+static void help(char* full_path)
{
+ const char *short_program_name = strrchr(full_path, '/');
+ if (short_program_name) {
+ short_program_name++;
+ } else {
+ short_program_name = full_path;
+ }
+
printf("Usage:\n"
"\t%s [options]\n\n"
"Options:\n"
"\t-h, --help show this help\n"
"\t-d, --delay =SEC[.TENTHS] iterative delay as SECS [.TENTHS]\n"
"\t-n, --iterations =NUMBER number of executions\n"
- , program_invocation_short_name);
+ , short_program_name);
}
static int parse_args(int argc, char * const argv[], struct gputop_args *args)
@@ -384,7 +391,7 @@ static int parse_args(int argc, char * const argv[], struct gputop_args *args)
}
break;
case 'h':
- help();
+ help(argv[0]);
return 0;
default:
fprintf(stderr, "Unkonwn option '%c'.\n", c);
--
2.34.1
More information about the igt-dev
mailing list