mirror of
https://github.com/HDFGroup/hdf5.git
synced 2025-03-31 17:10:47 +08:00
Small fixes (#285)
* OESS-98 convert plugin option to FetchContent, add tests * Fixes for pkcfg files because of plugin option * OESS-98 fix tools test for plugins * Keep doxygen comments under 100 chars long - format hint * Whitespace * HDFFV-11144 - Reclassify CMake messages * HDFFV-11099/11100 added help text * Reworked switch statement to compare string instead * Fix typo * Update CDash mode * Correct name of threadsafe * Correct option name * Undo accidental commit * Small changes plus merge of tools arg parse from 1.12
This commit is contained in:
parent
d7bce33123
commit
799ec0fde4
@ -42,7 +42,7 @@ set (CMAKE_IGNORE_EOL "--ignore-eol")
|
||||
if (CMAKE_VERSION VERSION_LESS "3.14.0")
|
||||
set (CMAKE_IGNORE_EOL "")
|
||||
if (WIN32)
|
||||
message (FATAL_ERROR "Windows builds requires a minimum of CMake 3.14")
|
||||
message (FATAL_ERROR "Windows builds require a minimum of CMake 3.14")
|
||||
endif()
|
||||
endif ()
|
||||
|
||||
|
@ -18,7 +18,7 @@
|
||||
set (CTEST_PROJECT_NAME "HDF5")
|
||||
set (CTEST_NIGHTLY_START_TIME "18:00:00 CST")
|
||||
|
||||
set (CTEST_DROP_METHOD "http")
|
||||
set (CTEST_DROP_METHOD "https")
|
||||
if (CTEST_DROP_SITE_INIT)
|
||||
set (CTEST_DROP_SITE "${CTEST_DROP_SITE_INIT}")
|
||||
else ()
|
||||
|
@ -31,6 +31,7 @@ If you have any questions or comments, please send them to the HDF Help Desk:
|
||||
|
||||
|
||||
CONTENTS
|
||||
========
|
||||
|
||||
- New Features
|
||||
- Support for new platforms and languages
|
||||
@ -812,20 +813,17 @@ Bug Fixes since HDF5-1.12.0 release
|
||||
(DER - 2021/01/07, HDFFV-11201)
|
||||
|
||||
|
||||
Performance
|
||||
-------------
|
||||
-
|
||||
|
||||
|
||||
Fortran
|
||||
--------
|
||||
- Corrected INTERFACE INTENT(IN) to INTENT(OUT) for buf_size in h5fget_file_image_f.
|
||||
|
||||
(MSB - 2020/02/18, HDFFV-11029)
|
||||
|
||||
|
||||
Tools
|
||||
-----
|
||||
- Fixed tools argument parsing.
|
||||
|
||||
Tools parsing used the length of the option from the long array to match
|
||||
the option from the command line. This incorrectly matched a shorter long
|
||||
name option that was happened to be a subset of another long option.
|
||||
Changed to match whole names.
|
||||
|
||||
(ADB - 2021/01/19, HDFFV-11106)
|
||||
|
||||
- The tools library was updated by standardizing the error stack process.
|
||||
|
||||
General sequence is:
|
||||
@ -892,7 +890,19 @@ Bug Fixes since HDF5-1.12.0 release
|
||||
(ADB - 2019/12/06, HDFFV-10876 and HDFFV-10877)
|
||||
|
||||
|
||||
High-Level APIs:
|
||||
Performance
|
||||
-------------
|
||||
-
|
||||
|
||||
|
||||
Fortran API
|
||||
--------
|
||||
- Corrected INTERFACE INTENT(IN) to INTENT(OUT) for buf_size in h5fget_file_image_f.
|
||||
|
||||
(MSB - 2020/02/18, HDFFV-11029)
|
||||
|
||||
|
||||
High-Level Library
|
||||
------
|
||||
-
|
||||
|
||||
@ -901,18 +911,22 @@ Bug Fixes since HDF5-1.12.0 release
|
||||
------
|
||||
-
|
||||
|
||||
|
||||
Documentation
|
||||
-------------
|
||||
-
|
||||
|
||||
|
||||
F90 APIs
|
||||
--------
|
||||
-
|
||||
|
||||
|
||||
C++ APIs
|
||||
--------
|
||||
-
|
||||
|
||||
|
||||
Testing
|
||||
-------
|
||||
- Stopped java/test/junit.sh.in installing libs for testing under ${prefix}
|
||||
|
@ -185,7 +185,6 @@ set (H5ES_HDRS
|
||||
IDE_GENERATED_PROPERTIES ("H5ES" "${H5ES_HDRS}" "${H5ES_SOURCES}" )
|
||||
|
||||
|
||||
|
||||
set (H5F_SOURCES
|
||||
${HDF5_SRC_DIR}/H5F.c
|
||||
${HDF5_SRC_DIR}/H5Faccum.c
|
||||
|
@ -194,44 +194,50 @@ get_option(int argc, const char **argv, const char *opts, const struct long_opti
|
||||
|
||||
if (sp == 1 && argv[opt_ind][0] == '-' && argv[opt_ind][1] == '-') {
|
||||
/* long command line option */
|
||||
const char *arg = &argv[opt_ind][2];
|
||||
int i;
|
||||
int i;
|
||||
const char ch = '=';
|
||||
char * arg = &argv[opt_ind][2];
|
||||
size_t arg_len = 0;
|
||||
|
||||
opt_arg = strchr(&argv[opt_ind][2], ch);
|
||||
arg_len = HDstrlen(&argv[opt_ind][2]);
|
||||
if (opt_arg) {
|
||||
arg_len -= HDstrlen(opt_arg);
|
||||
opt_arg++; /* skip the equal sign */
|
||||
}
|
||||
arg[arg_len] = 0;
|
||||
|
||||
for (i = 0; l_opts && l_opts[i].name; i++) {
|
||||
size_t len = HDstrlen(l_opts[i].name);
|
||||
|
||||
if (HDstrncmp(arg, l_opts[i].name, len) == 0) {
|
||||
if (HDstrcmp(arg, l_opts[i].name) == 0) {
|
||||
/* we've found a matching long command line flag */
|
||||
opt_opt = l_opts[i].shortval;
|
||||
|
||||
if (l_opts[i].has_arg != no_arg) {
|
||||
if (arg[len] == '=') {
|
||||
opt_arg = &arg[len + 1];
|
||||
}
|
||||
else if (l_opts[i].has_arg != optional_arg) {
|
||||
if (opt_ind < (argc - 1))
|
||||
if (argv[opt_ind + 1][0] != '-')
|
||||
opt_arg = argv[++opt_ind];
|
||||
}
|
||||
else if (l_opts[i].has_arg == require_arg) {
|
||||
if (opt_err)
|
||||
HDfprintf(rawerrorstream, "%s: option required for \"--%s\" flag\n", argv[0],
|
||||
arg);
|
||||
if (opt_arg == NULL) {
|
||||
if (l_opts[i].has_arg != optional_arg) {
|
||||
if (opt_ind < (argc - 1))
|
||||
if (argv[opt_ind + 1][0] != '-')
|
||||
opt_arg = argv[++opt_ind];
|
||||
}
|
||||
else if (l_opts[i].has_arg == require_arg) {
|
||||
if (opt_err)
|
||||
HDfprintf(rawerrorstream, "%s: option required for \"--%s\" flag\n", argv[0],
|
||||
arg);
|
||||
|
||||
opt_opt = '?';
|
||||
opt_opt = '?';
|
||||
}
|
||||
}
|
||||
else
|
||||
opt_arg = NULL;
|
||||
}
|
||||
else {
|
||||
if (arg[len] == '=') {
|
||||
if (opt_arg) {
|
||||
if (opt_err)
|
||||
HDfprintf(rawerrorstream, "%s: no option required for \"%s\" flag\n", argv[0],
|
||||
arg);
|
||||
|
||||
opt_opt = '?';
|
||||
}
|
||||
opt_arg = NULL;
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
@ -25,7 +25,7 @@ static int check_d_input(const char *);
|
||||
* Command-line options: The user can specify short or long-named
|
||||
* parameters.
|
||||
*/
|
||||
static const char * s_opts = "hVrv:qn:d:p:NcelxE:A:S";
|
||||
static const char * s_opts = "hVrv*qn:d:p:NcelxE:A:S";
|
||||
static struct long_options l_opts[] = {{"help", no_arg, 'h'},
|
||||
{"version", no_arg, 'V'},
|
||||
{"report", no_arg, 'r'},
|
||||
@ -253,33 +253,27 @@ parse_command_line(int argc, const char *argv[], const char **fname1, const char
|
||||
|
||||
case 'v':
|
||||
opts->mode_verbose = 1;
|
||||
/* This for loop is for handling style like
|
||||
* -v, -v1, --verbose, --verbose=1.
|
||||
*/
|
||||
for (i = 1; i < argc; i++) {
|
||||
/*
|
||||
* short opt
|
||||
* special check for short opt
|
||||
*/
|
||||
if (!strcmp(argv[i], "-v")) { /* no arg */
|
||||
opt_ind--;
|
||||
if (!strcmp(argv[i], "-v")) {
|
||||
if (opt_arg != NULL)
|
||||
opt_ind--;
|
||||
opts->mode_verbose_level = 0;
|
||||
break;
|
||||
}
|
||||
else if (!strncmp(argv[i], "-v", (size_t)2)) {
|
||||
if (opt_arg != NULL)
|
||||
opt_ind--;
|
||||
opts->mode_verbose_level = atoi(&argv[i][2]);
|
||||
break;
|
||||
}
|
||||
|
||||
/*
|
||||
* long opt
|
||||
*/
|
||||
if (!strcmp(argv[i], "--verbose")) { /* no arg */
|
||||
opts->mode_verbose_level = 0;
|
||||
break;
|
||||
}
|
||||
else if (!strncmp(argv[i], "--verbose", (size_t)9) && argv[i][9] == '=') {
|
||||
opts->mode_verbose_level = atoi(&argv[i][10]);
|
||||
break;
|
||||
else {
|
||||
if (opt_arg != NULL)
|
||||
opts->mode_verbose_level = HDatoi(opt_arg);
|
||||
else
|
||||
opts->mode_verbose_level = 0;
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
@ -80,39 +80,8 @@ struct handler_t {
|
||||
*/
|
||||
/* The following initialization makes use of C language concatenating */
|
||||
/* "xxx" "yyy" into "xxxyyy". */
|
||||
static const char * s_opts = "hn*peyBHirVa:c:d:f:g:k:l:t:w:xD:uX:o*b*F:s:S:A*q:z:m:RE*CM:O*N:vG:";
|
||||
static struct long_options l_opts[] = {{"help", no_arg, 'h'},
|
||||
{"hel", no_arg, 'h'},
|
||||
{"contents", optional_arg, 'n'},
|
||||
{"properties", no_arg, 'p'},
|
||||
{"superblock", no_arg, 'B'},
|
||||
{"boot-block", no_arg, 'B'},
|
||||
{"boot-bloc", no_arg, 'B'},
|
||||
{"boot-blo", no_arg, 'B'},
|
||||
{"boot-bl", no_arg, 'B'},
|
||||
{"boot-b", no_arg, 'B'},
|
||||
{"boot", no_arg, 'B'},
|
||||
{"boo", no_arg, 'B'},
|
||||
{"bo", no_arg, 'B'},
|
||||
{"header", no_arg, 'H'},
|
||||
{"heade", no_arg, 'H'},
|
||||
{"head", no_arg, 'H'},
|
||||
{"hea", no_arg, 'H'},
|
||||
{"object-ids", no_arg, 'i'},
|
||||
{"object-id", no_arg, 'i'},
|
||||
{"object-i", no_arg, 'i'},
|
||||
{"object", no_arg, 'i'},
|
||||
{"objec", no_arg, 'i'},
|
||||
{"obje", no_arg, 'i'},
|
||||
{"obj", no_arg, 'i'},
|
||||
{"ob", no_arg, 'i'},
|
||||
{"version", no_arg, 'V'},
|
||||
{"versio", no_arg, 'V'},
|
||||
{"versi", no_arg, 'V'},
|
||||
{"vers", no_arg, 'V'},
|
||||
{"ver", no_arg, 'V'},
|
||||
{"ve", no_arg, 'V'},
|
||||
{"attribute", require_arg, 'a'},
|
||||
static const char * s_opts = "a:b*c:d:ef:g:hik:l:m:n*o*pq:rs:t:uvw:xyz:A*BCD:E*F:G:HM:N:O*RS:VX:";
|
||||
static struct long_options l_opts[] = {{"attribute", require_arg, 'a'},
|
||||
{"attribut", require_arg, 'a'},
|
||||
{"attribu", require_arg, 'a'},
|
||||
{"attrib", require_arg, 'a'},
|
||||
@ -120,10 +89,7 @@ static struct long_options l_opts[] = {{"help", no_arg, 'h'},
|
||||
{"attr", require_arg, 'a'},
|
||||
{"att", require_arg, 'a'},
|
||||
{"at", require_arg, 'a'},
|
||||
{"block", require_arg, 'k'},
|
||||
{"bloc", require_arg, 'k'},
|
||||
{"blo", require_arg, 'k'},
|
||||
{"bl", require_arg, 'k'},
|
||||
{"binary", optional_arg, 'b'},
|
||||
{"count", require_arg, 'c'},
|
||||
{"coun", require_arg, 'c'},
|
||||
{"cou", require_arg, 'c'},
|
||||
@ -131,10 +97,7 @@ static struct long_options l_opts[] = {{"help", no_arg, 'h'},
|
||||
{"dataset", require_arg, 'd'},
|
||||
{"datase", require_arg, 'd'},
|
||||
{"datas", require_arg, 'd'},
|
||||
{"datatype", require_arg, 't'},
|
||||
{"datatyp", require_arg, 't'},
|
||||
{"dataty", require_arg, 't'},
|
||||
{"datat", require_arg, 't'},
|
||||
{"escape", no_arg, 'e'},
|
||||
{"filedriver", require_arg, 'f'},
|
||||
{"filedrive", require_arg, 'f'},
|
||||
{"filedriv", require_arg, 'f'},
|
||||
@ -148,24 +111,44 @@ static struct long_options l_opts[] = {{"help", no_arg, 'h'},
|
||||
{"grou", require_arg, 'g'},
|
||||
{"gro", require_arg, 'g'},
|
||||
{"gr", require_arg, 'g'},
|
||||
{"output", optional_arg, 'o'},
|
||||
{"outpu", optional_arg, 'o'},
|
||||
{"outp", optional_arg, 'o'},
|
||||
{"out", optional_arg, 'o'},
|
||||
{"ou", optional_arg, 'o'},
|
||||
{"help", no_arg, 'h'},
|
||||
{"hel", no_arg, 'h'},
|
||||
{"object-ids", no_arg, 'i'},
|
||||
{"object-id", no_arg, 'i'},
|
||||
{"object-i", no_arg, 'i'},
|
||||
{"object", no_arg, 'i'},
|
||||
{"objec", no_arg, 'i'},
|
||||
{"obje", no_arg, 'i'},
|
||||
{"obj", no_arg, 'i'},
|
||||
{"ob", no_arg, 'i'},
|
||||
{"block", require_arg, 'k'},
|
||||
{"bloc", require_arg, 'k'},
|
||||
{"blo", require_arg, 'k'},
|
||||
{"bl", require_arg, 'k'},
|
||||
{"soft-link", require_arg, 'l'},
|
||||
{"soft-lin", require_arg, 'l'},
|
||||
{"soft-li", require_arg, 'l'},
|
||||
{"soft-l", require_arg, 'l'},
|
||||
{"soft", require_arg, 'l'},
|
||||
{"sof", require_arg, 'l'},
|
||||
{"format", require_arg, 'm'},
|
||||
{"contents", optional_arg, 'n'},
|
||||
{"output", optional_arg, 'o'},
|
||||
{"outpu", optional_arg, 'o'},
|
||||
{"outp", optional_arg, 'o'},
|
||||
{"out", optional_arg, 'o'},
|
||||
{"ou", optional_arg, 'o'},
|
||||
{"properties", no_arg, 'p'},
|
||||
{"sort_by", require_arg, 'q'},
|
||||
{"string", no_arg, 'r'},
|
||||
{"strin", no_arg, 'r'},
|
||||
{"start", require_arg, 's'},
|
||||
{"star", require_arg, 's'},
|
||||
{"sta", require_arg, 's'},
|
||||
{"stride", require_arg, 'S'},
|
||||
{"strid", require_arg, 'S'},
|
||||
{"string", no_arg, 'r'},
|
||||
{"strin", no_arg, 'r'},
|
||||
{"datatype", require_arg, 't'},
|
||||
{"datatyp", require_arg, 't'},
|
||||
{"dataty", require_arg, 't'},
|
||||
{"datat", require_arg, 't'},
|
||||
{"use-dtd", no_arg, 'u'},
|
||||
{"use-dt", no_arg, 'u'},
|
||||
{"use-d", no_arg, 'u'},
|
||||
@ -173,33 +156,50 @@ static struct long_options l_opts[] = {{"help", no_arg, 'h'},
|
||||
{"use", no_arg, 'u'},
|
||||
{"us", no_arg, 'u'},
|
||||
{"u", no_arg, 'u'},
|
||||
{"vds-view-first-missing", no_arg, 'v'},
|
||||
{"width", require_arg, 'w'},
|
||||
{"widt", require_arg, 'w'},
|
||||
{"wid", require_arg, 'w'},
|
||||
{"wi", require_arg, 'w'},
|
||||
{"xml", no_arg, 'x'},
|
||||
{"xm", no_arg, 'x'},
|
||||
{"noindex", no_arg, 'y'},
|
||||
{"sort_order", require_arg, 'z'},
|
||||
{"onlyattr", optional_arg, 'A'},
|
||||
{"superblock", no_arg, 'B'},
|
||||
{"boot-block", no_arg, 'B'},
|
||||
{"boot-bloc", no_arg, 'B'},
|
||||
{"boot-blo", no_arg, 'B'},
|
||||
{"boot-bl", no_arg, 'B'},
|
||||
{"boot-b", no_arg, 'B'},
|
||||
{"boot", no_arg, 'B'},
|
||||
{"boo", no_arg, 'B'},
|
||||
{"bo", no_arg, 'B'},
|
||||
{"no-compact-subset", no_arg, 'C'},
|
||||
{"xml-dtd", require_arg, 'D'},
|
||||
{"xml-dt", require_arg, 'D'},
|
||||
{"xml-d", require_arg, 'D'},
|
||||
{"enable-error-stack", optional_arg, 'E'},
|
||||
{"form", require_arg, 'F'},
|
||||
{"vds-gap-size", require_arg, 'G'},
|
||||
{"header", no_arg, 'H'},
|
||||
{"heade", no_arg, 'H'},
|
||||
{"head", no_arg, 'H'},
|
||||
{"hea", no_arg, 'H'},
|
||||
{"packed-bits", require_arg, 'M'},
|
||||
{"any_path", require_arg, 'N'},
|
||||
{"ddl", optional_arg, 'O'},
|
||||
{"region", no_arg, 'R'},
|
||||
{"stride", require_arg, 'S'},
|
||||
{"strid", require_arg, 'S'},
|
||||
{"version", no_arg, 'V'},
|
||||
{"versio", no_arg, 'V'},
|
||||
{"versi", no_arg, 'V'},
|
||||
{"vers", no_arg, 'V'},
|
||||
{"ver", no_arg, 'V'},
|
||||
{"ve", no_arg, 'V'},
|
||||
{"xml-ns", require_arg, 'X'},
|
||||
{"xml-n", require_arg, 'X'},
|
||||
{"xml", no_arg, 'x'},
|
||||
{"xm", no_arg, 'x'},
|
||||
{"onlyattr", optional_arg, 'A'},
|
||||
{"escape", no_arg, 'e'},
|
||||
{"noindex", no_arg, 'y'},
|
||||
{"binary", optional_arg, 'b'},
|
||||
{"form", require_arg, 'F'},
|
||||
{"sort_by", require_arg, 'q'},
|
||||
{"sort_order", require_arg, 'z'},
|
||||
{"format", require_arg, 'm'},
|
||||
{"region", no_arg, 'R'},
|
||||
{"enable-error-stack", optional_arg, 'E'},
|
||||
{"packed-bits", require_arg, 'M'},
|
||||
{"no-compact-subset", no_arg, 'C'},
|
||||
{"ddl", optional_arg, 'O'},
|
||||
{"any_path", require_arg, 'N'},
|
||||
{"vds-view-first-missing", no_arg, 'v'},
|
||||
{"vds-gap-size", require_arg, 'G'},
|
||||
{"s3-cred", require_arg, '$'},
|
||||
{"hdfs-attrs", require_arg, '#'},
|
||||
{"vol-value", require_arg, '1'},
|
||||
|
Loading…
x
Reference in New Issue
Block a user