summaryrefslogtreecommitdiffstats
path: root/src/progs/ingen/cmdline.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/progs/ingen/cmdline.c')
-rw-r--r--src/progs/ingen/cmdline.c45
1 files changed, 43 insertions, 2 deletions
diff --git a/src/progs/ingen/cmdline.c b/src/progs/ingen/cmdline.c
index 6c37d78e..462c6a3e 100644
--- a/src/progs/ingen/cmdline.c
+++ b/src/progs/ingen/cmdline.c
@@ -1,5 +1,5 @@
/*
- File autogenerated by gengetopt version 2.19.1
+ File autogenerated by gengetopt version 2.20
generated with the following command:
gengetopt
@@ -37,6 +37,7 @@ const char *gengetopt_args_info_help[] = {
" -C, --client-port=INT Client OSC port",
" -l, --load=STRING Load patch",
" -p, --path=STRING Target path for loaded patch",
+ " -r, --run=STRING Run script",
0
};
@@ -64,6 +65,7 @@ void clear_given (struct gengetopt_args_info *args_info)
args_info->client_port_given = 0 ;
args_info->load_given = 0 ;
args_info->path_given = 0 ;
+ args_info->run_given = 0 ;
}
static
@@ -80,6 +82,8 @@ void clear_args (struct gengetopt_args_info *args_info)
args_info->load_orig = NULL;
args_info->path_arg = NULL;
args_info->path_orig = NULL;
+ args_info->run_arg = NULL;
+ args_info->run_orig = NULL;
}
@@ -95,6 +99,7 @@ void init_args_info(struct gengetopt_args_info *args_info)
args_info->client_port_help = gengetopt_args_info_help[6] ;
args_info->load_help = gengetopt_args_info_help[7] ;
args_info->path_help = gengetopt_args_info_help[8] ;
+ args_info->run_help = gengetopt_args_info_help[9] ;
}
@@ -174,6 +179,16 @@ cmdline_parser_release (struct gengetopt_args_info *args_info)
free (args_info->path_orig); /* free previous argument */
args_info->path_orig = 0;
}
+ if (args_info->run_arg)
+ {
+ free (args_info->run_arg); /* free previous argument */
+ args_info->run_arg = 0;
+ }
+ if (args_info->run_orig)
+ {
+ free (args_info->run_orig); /* free previous argument */
+ args_info->run_orig = 0;
+ }
clear_given (args_info);
}
@@ -239,6 +254,13 @@ cmdline_parser_file_save(const char *filename, struct gengetopt_args_info *args_
fprintf(outfile, "%s\n", "path");
}
}
+ if (args_info->run_given) {
+ if (args_info->run_orig) {
+ fprintf(outfile, "%s=\"%s\"\n", "run", args_info->run_orig);
+ } else {
+ fprintf(outfile, "%s\n", "run");
+ }
+ }
fclose (outfile);
@@ -330,11 +352,12 @@ cmdline_parser_internal (int argc, char * const *argv, struct gengetopt_args_inf
{ "client-port", 1, NULL, 'C' },
{ "load", 1, NULL, 'l' },
{ "path", 1, NULL, 'p' },
+ { "run", 1, NULL, 'r' },
{ NULL, 0, NULL, 0 }
};
stop_char = 0;
- c = getopt_long (argc, argv, "hVeE:c:gC:l:p:", long_options, &option_index);
+ c = getopt_long (argc, argv, "hVeE:c:gC:l:p:r:", long_options, &option_index);
if (c == -1) break; /* Exit from `while (1)' loop. */
@@ -470,6 +493,24 @@ cmdline_parser_internal (int argc, char * const *argv, struct gengetopt_args_inf
args_info->path_orig = gengetopt_strdup (optarg);
break;
+ case 'r': /* Run script. */
+ if (local_args_info.run_given)
+ {
+ fprintf (stderr, "%s: `--run' (`-r') option given more than once%s\n", argv[0], (additional_error ? additional_error : ""));
+ goto failure;
+ }
+ if (args_info->run_given && ! override)
+ continue;
+ local_args_info.run_given = 1;
+ args_info->run_given = 1;
+ if (args_info->run_arg)
+ free (args_info->run_arg); /* free previous string */
+ args_info->run_arg = gengetopt_strdup (optarg);
+ if (args_info->run_orig)
+ free (args_info->run_orig); /* free previous string */
+ args_info->run_orig = gengetopt_strdup (optarg);
+ break;
+
case 0: /* Long option with no short option */
case '?': /* Invalid option. */