diff options
author | Dana Robinson <43805+derobins@users.noreply.github.com> | 2021-06-29 20:06:48 (GMT) |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-06-29 20:06:48 (GMT) |
commit | 2090a527c13a13c0ea5b59b319b3402d2ef8f578 (patch) | |
tree | b9d6a7744894956cba1e99630f1803c42d2298e4 /tools/test/perform/pio_standalone.c | |
parent | 4ff544f9977da3bd54eac03cc124961eea7c4daf (diff) | |
download | hdf5-2090a527c13a13c0ea5b59b319b3402d2ef8f578.zip hdf5-2090a527c13a13c0ea5b59b319b3402d2ef8f578.tar.gz hdf5-2090a527c13a13c0ea5b59b319b3402d2ef8f578.tar.bz2 |
Brings the tools getopt(3) replacement into the main library (#803)
* Moves get_option from the tools library to the C library
* Adds H5 prefix to get_option call and variables
* Renames the H5_get_option long options struct and enum
Diffstat (limited to 'tools/test/perform/pio_standalone.c')
-rw-r--r-- | tools/test/perform/pio_standalone.c | 58 |
1 files changed, 29 insertions, 29 deletions
diff --git a/tools/test/perform/pio_standalone.c b/tools/test/perform/pio_standalone.c index 0a9bfc0..db8633e 100644 --- a/tools/test/perform/pio_standalone.c +++ b/tools/test/perform/pio_standalone.c @@ -27,30 +27,30 @@ MPI_Info h5_io_info_g = MPI_INFO_NULL; /* MPI INFO object for IO */ int nCols = 80; /* ``get_option'' variables */ -int opt_err = 1; /*get_option prints errors if this is on */ -int opt_ind = 1; /*token pointer */ -const char *opt_arg; /*flag argument (or value) */ +int H5_opterr = 1; /*get_option prints errors if this is on */ +int H5_optind = 1; /*token pointer */ +const char *H5_optarg; /*flag argument (or value) */ int -get_option(int argc, const char **argv, const char *opts, const struct long_options *l_opts) +get_option(int argc, const char **argv, const char *opts, const struct h5_long_options *l_opts) { static int sp = 1; /* character index in current token */ int opt_opt = '?'; /* option character passed back to user */ if (sp == 1) { /* check for more flag-like tokens */ - if (opt_ind >= argc || argv[opt_ind][0] != '-' || argv[opt_ind][1] == '\0') { + if (H5_optind >= argc || argv[H5_optind][0] != '-' || argv[H5_optind][1] == '\0') { return EOF; } - else if (HDstrcmp(argv[opt_ind], "--") == 0) { - opt_ind++; + else if (HDstrcmp(argv[H5_optind], "--") == 0) { + H5_optind++; return EOF; } } - if (sp == 1 && argv[opt_ind][0] == '-' && argv[opt_ind][1] == '-') { + if (sp == 1 && argv[H5_optind][0] == '-' && argv[H5_optind][1] == '-') { /* long command line option */ - const char *arg = &argv[opt_ind][2]; + const char *arg = &argv[H5_optind][2]; int i; for (i = 0; l_opts && l_opts[i].name; i++) { @@ -62,13 +62,13 @@ get_option(int argc, const char **argv, const char *opts, const struct long_opti if (l_opts[i].has_arg != no_arg) { if (arg[len] == '=') { - opt_arg = &arg[len + 1]; + H5_optarg = &arg[len + 1]; } - else if (opt_ind < (argc - 1) && argv[opt_ind + 1][0] != '-') { - opt_arg = argv[++opt_ind]; + else if (H5_optind < (argc - 1) && argv[H5_optind + 1][0] != '-') { + H5_optarg = argv[++H5_optind]; } else if (l_opts[i].has_arg == require_arg) { - if (opt_err) + if (H5_opterr) HDfprintf(stderr, "%s: option required for \"--%s\" flag\n", argv[0], arg); opt_opt = '?'; @@ -76,13 +76,13 @@ get_option(int argc, const char **argv, const char *opts, const struct long_opti } else { if (arg[len] == '=') { - if (opt_err) + if (H5_opterr) HDfprintf(stderr, "%s: no option required for \"%s\" flag\n", argv[0], arg); opt_opt = '?'; } - opt_arg = NULL; + H5_optarg = NULL; } break; @@ -91,29 +91,29 @@ get_option(int argc, const char **argv, const char *opts, const struct long_opti if (l_opts[i].name == NULL) { /* exhausted all of the l_opts we have and still didn't match */ - if (opt_err) + if (H5_opterr) HDfprintf(stderr, "%s: unknown option \"%s\"\n", argv[0], arg); opt_opt = '?'; } - opt_ind++; + H5_optind++; sp = 1; } else { register char *cp; /* pointer into current token */ /* short command line option */ - opt_opt = argv[opt_ind][sp]; + opt_opt = argv[H5_optind][sp]; if (opt_opt == ':' || (cp = strchr(opts, opt_opt)) == 0) { - if (opt_err) + if (H5_opterr) HDfprintf(stderr, "%s: unknown option \"%c\"\n", argv[0], opt_opt); /* if no chars left in this token, move to next token */ - if (argv[opt_ind][++sp] == '\0') { - opt_ind++; + if (argv[H5_optind][++sp] == '\0') { + H5_optind++; sp = 1; } @@ -122,32 +122,32 @@ get_option(int argc, const char **argv, const char *opts, const struct long_opti if (*++cp == ':') { /* if a value is expected, get it */ - if (argv[opt_ind][sp + 1] != '\0') { + if (argv[H5_optind][sp + 1] != '\0') { /* flag value is rest of current token */ - opt_arg = &argv[opt_ind++][sp + 1]; + H5_optarg = &argv[H5_optind++][sp + 1]; } - else if (++opt_ind >= argc) { - if (opt_err) + else if (++H5_optind >= argc) { + if (H5_opterr) HDfprintf(stderr, "%s: value expected for option \"%c\"\n", argv[0], opt_opt); opt_opt = '?'; } else { /* flag value is next token */ - opt_arg = argv[opt_ind++]; + H5_optarg = argv[H5_optind++]; } sp = 1; } else { /* set up to look at next char in token, next time */ - if (argv[opt_ind][++sp] == '\0') { + if (argv[H5_optind][++sp] == '\0') { /* no more in current token, so setup next token */ - opt_ind++; + H5_optind++; sp = 1; } - opt_arg = NULL; + H5_optarg = NULL; } } |