/*==============================*/ void parse_commandline(int argc, char **argv) { ini_globs(); if (cmdline_parser (argc, argv, &args_info) != 0) { fprintf(stderr, "error while parsing command-line options\n"); exit(EXIT_FAILURE); } //input file: if (args_info.inputs_num) { char *infile=NULL; to_basename(args_info.inputs[0]); infile = (char *)calloc(strlen(opt.basename)+5, sizeof(char)); strncpy(infile, opt.basename, strlen(opt.basename)); if (opt.method == 'F') strcat(infile, ".sub"); else strcat(infile, ".bar"); opt.INFILE = fopen(infile, "r"); if (opt.INFILE == NULL) { fprintf(stderr, "Error opening input file \"%s\".\n", infile); free(infile); exit(EXIT_FAILURE); } free(infile); } else { opt.INFILE = stdin; } // rate file? if (args_info.ratesfile_given) { opt.RATFILE = fopen(args_info.ratesfile_arg, "r"); if (opt.RATFILE == NULL) { if (!opt.quiet) fprintf(stderr, "Cannot open rate file %s!\n", args_info.ratesfile_arg); } } else { opt.RATFILE = NULL; } set_parameters(); }
void decode_switches(int argc, char *argv[]) { ini_globs(); strcpy(GAV.ProgramName, argv[0]); process_options_gg(argc, argv); }