From 2653ac737f0df2a41d939e0c36f9b4ae502f5a48 Mon Sep 17 00:00:00 2001 From: Joseph Hunkeler Date: Tue, 12 Nov 2019 16:02:04 -0500 Subject: Implement version --- main.c | 24 +++++++++++++++++++----- 1 file changed, 19 insertions(+), 5 deletions(-) (limited to 'main.c') diff --git a/main.c b/main.c index dadc455..ee3cc0b 100644 --- a/main.c +++ b/main.c @@ -115,6 +115,11 @@ void reloc_replace(RelocMatch *match, const char *rstr) { } +void show_version() { + printf("%s\n", VERSION); +} + + int main(int argc, char *argv[]) { char *program = argv[0]; char *program_relative = strrchr(program, DIRSEP); @@ -122,20 +127,29 @@ int main(int argc, char *argv[]) { program = program_relative + 1; } + for (int i = 0; i < argc; i++) { + if (!strcmp(argv[i], "--version") || !strcmp(argv[i], "-V")) { + show_version(); + exit(0); + } + } + if (argc < 5) { - printf("%s \n" + printf("%s [-V] \n" "\n" "Arguments:\n" - "str1 - Pattern to search for\n" - "str2 - Replace str1 with contents of str2\n" - "input_file - Path to input file\n" - "output_file - Path to output file\n" + "--version (-V) - Display version and exit\n" + "str1 - Pattern to search for\n" + "str2 - Replace str1 with contents of str2\n" + "input_file - Path to input file\n" + "output_file - Path to output file\n" "\n" "Example:\n" "%s /original/path /new/path input.bin output.bin\n" "\n", program, program); exit(1); } + char *needle = strdup(argv[1]); char *replacement = strdup(argv[2]); char *input_file = strdup(argv[3]); -- cgit