Compare commits

...

4011 Commits

Author SHA1 Message Date
Scot Breitenfeld
9d596b4a59 corrected/added note about closing creation property list identifier (#2425)
* corrected/added note about closing creation property list identifier

* removed immaterial \see APIs

* added details to H5Literate
2023-02-11 08:34:58 -06:00
Dana Robinson
2e8ea68d97 Update CODEOWNERS given personnel changes (#2453) 2023-02-11 04:50:30 -08:00
Larry Knox
48a3d92d04 Remove duplicated "help@hdfgroup.org" lines in file headers. (#2441) 2023-02-10 19:28:57 -08:00
Dana Robinson
d61fd4aba7 Add szip/libaec to GitHub CI and fix warnings (#2438)
szip (or libaec) is currently not tested in CI. This adds szip to the
the Autotools GitHub CI actions on Linux when building with the
Autotools.

This PR also cleans up a few warnings that remained in the szip-
related code so the -Werror check will pass.
2023-02-09 05:46:16 -08:00
kwryankrattiger
509fe962d4 CMake: Find MPI in HDF5 CMake config (#2400) 2023-01-18 16:26:35 -06:00
Allen Byrne
2c9de7a9ae Port VOL connector Guide to doxygen (#2333)
* Port VOL connector Guide to doxygen

* Fix spelling

* Updated VOL UG ref and added release note
2023-01-18 01:04:41 -08:00
Mark Kittisopikul
720e04e196 Include shlwapi.h explicitly on Windows (#2407)
* Include shlwapi.h explicitly

* Add shlwapi library to LINK_LIB when header is detected

Looking for StrStrIA in the shlwapi library is not reliable due
to stdcall on mingw32.
2023-01-17 07:27:25 -08:00
raylu-hdf
5543d6eb36 HDFFV-11208 (OESS-320): H5VLquery_optional had an assertion failure with a committed datatype (#2398)
* HDFFV-11208 (OESS-320): H5VLquery_optional had an assertion failure with a committed datatype.  Added a test case for the fix that Quincey checked in.

* Committing clang-format changes

* Fixed a typo in a comment.

* Fixed a typo in a comment.

* Minor change: changed H5Tcommit to H5Tcommit2.

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2023-01-10 09:29:54 -08:00
Quincey Koziol
06c12f97cd Pass-through connector testing flexibility (#2399)
* Correct concurrency bugs when running tests, along with a bugfix & small
warning cleanup.

* Committing clang-format changes

* Allow spaces (and tabs) in VOL connector info string from environment variable.

* Parse connector name from HDF5_PLUGIN_PATH environment variable better

* Correct H5VLquery_optional to use H5VL routine instead of H5I.  Also add an
error message to the failure return value from not finding a plugin.

* Play nice with existing plugin paths

* Use API routine to determine if native connector is terminal.

* Committing clang-format changes

* Make string size larger, to allow for connectors with longer names.

* Be more flexible about testing external pass through connectors, especially if
they have registered new optional operations.

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: AWS ParallelCluster user <ec2-user@ip-10-0-0-65.us-east-2.compute.internal>
Co-authored-by: Koziol <qkoziol@88665a374c70.ant.amazon.com>
2023-01-09 17:18:28 -06:00
Quincey Koziol
90d20764f4 Determine if native connector is terminal (#2397)
* Correct concurrency bugs when running tests, along with a bugfix & small
warning cleanup.

* Committing clang-format changes

* Allow spaces (and tabs) in VOL connector info string from environment variable.

* Parse connector name from HDF5_PLUGIN_PATH environment variable better

* Correct H5VLquery_optional to use H5VL routine instead of H5I.  Also add an
error message to the failure return value from not finding a plugin.

* Play nice with existing plugin paths

* Use API routine to determine if native connector is terminal.

* Committing clang-format changes

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: AWS ParallelCluster user <ec2-user@ip-10-0-0-65.us-east-2.compute.internal>
Co-authored-by: Koziol <qkoziol@88665a374c70.ant.amazon.com>
2023-01-09 13:49:29 -08:00
Quincey Koziol
54590f3ebd Play nice with existing plugin paths (#2394)
* Correct concurrency bugs when running tests, along with a bugfix & small
warning cleanup.

* Committing clang-format changes

* Allow spaces (and tabs) in VOL connector info string from environment variable.

* Parse connector name from HDF5_PLUGIN_PATH environment variable better

* Correct H5VLquery_optional to use H5VL routine instead of H5I.  Also add an
error message to the failure return value from not finding a plugin.

* Play nice with existing plugin paths

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: AWS ParallelCluster user <ec2-user@ip-10-0-0-65.us-east-2.compute.internal>
Co-authored-by: Koziol <qkoziol@88665a374c70.ant.amazon.com>
2023-01-06 09:08:16 -08:00
Quincey Koziol
337a882af8 Update FORTRAN VOL connector test for external pass-through testing (#2393)
* Correct concurrency bugs when running tests, along with a bugfix & small
warning cleanup.

* Committing clang-format changes

* Allow spaces (and tabs) in VOL connector info string from environment variable.

* Parse connector name from HDF5_PLUGIN_PATH environment variable better

* Correct H5VLquery_optional to use H5VL routine instead of H5I.  Also add an
error message to the failure return value from not finding a plugin.

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: AWS ParallelCluster user <ec2-user@ip-10-0-0-65.us-east-2.compute.internal>
Co-authored-by: Koziol <qkoziol@88665a374c70.ant.amazon.com>
2023-01-05 15:42:33 -08:00
Dana Robinson
423ee69c1e Updates README.md (#2387)
* Updates release schedule for 2023

* Fixes broken build badge

* Another build badge tweak

* Even more badge tweaking

* More branch tweaking

* More badge tweaking

* More badge tweaks

* Even more badge tweaking

* Adds badges for other branches
2023-01-04 12:44:51 -08:00
Quincey Koziol
c2e3c732f0 Correct VOL connector env string parsing issue (#2350)
* Correct concurrency bugs when running tests, along with a bugfix & small
warning cleanup.

* Committing clang-format changes

* Allow spaces (and tabs) in VOL connector info string from environment variable.

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: AWS ParallelCluster user <ec2-user@ip-10-0-0-65.us-east-2.compute.internal>
Co-authored-by: Koziol <qkoziol@88665a374c70.ant.amazon.com>
2023-01-04 13:04:07 -06:00
Dana Robinson
83f81a6422 Adds -Warray-temporaries to the developer warnings (#2385)
These generate a LOT of noise that we are not going to address anytime
soon.
2023-01-03 06:18:48 -08:00
Dana Robinson
d326f6fae8 Adds 'make install' and 'make check-install' to the CI (Autotools only) (#2381) 2023-01-03 06:17:56 -08:00
Dana Robinson
c0b3646193 Adds RELEASE.txt notes and updates Doxygen (#2377) (#2379) 2022-12-29 12:58:54 -08:00
Dana Robinson
3da2551adb Adds Doxygen markup for H5FDdriver_query() (#2376) 2022-12-28 13:07:39 -08:00
Larry Knox
d261272ffa Restore line 264 of main.yml: "thread_safety:" (#2374) 2022-12-28 10:30:57 -08:00
Dana Robinson
23ccd7ee3b Purged references to HDF5 1.13.x from the Doxygen documentation (#2365) 2022-12-27 12:33:14 -08:00
Dana Robinson
298c7efe76 Adds missing Doxygen for H5ESpublic.h (#2364)
* Adds missing Doxygen for H5ESpublic.h

* Committing clang-format changes

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-12-27 11:42:31 -08:00
Dana Robinson
1cf9ecccf5 Fix for Autotools --disable-deprecated-symbols (#2363)
* Fix for Autotools --disable-deprecated-symbols

When we added v116 as a valid option, we left the default as v114 so
using --disable-deprecated-symbols leads configure to complain that you
can't set a default API that was deprecated.

The GitHub action didn't catch this because it explicitly specifies v116

This only affects develop w/ the Autotools when
--disable-deprecated-symbols is requested.

* Added v116 & default to the --with-default-api-version help string

The Autotools --with-default-api-version help string was missing v116.
This has been added, as well as a "default" target so the CI can catch
version problems when we forget to update the defaults upon creating
a new major version.

The GitHub CI also now uses "default" as the target for the deprecated
symbols build.

* Fixes the 1.14 API GitHub CI threadsafe/build_mode

This action still had the bug we fixed where we set the build mode
and threadsafety using an array of size one instead of an object.
2022-12-24 11:36:38 -08:00
Dana Robinson
cfd5059e77 HL GIF tools changes (#2360)
* Fixes the broken Autotools option
* Removes the "build HL tools" option
2022-12-23 16:05:31 -08:00
Larry Knox
9a694db450 Update testh5cc.sh.in for new major version 1.14. (#2349)
* Update testh5cc.sh.in for new major version 1.14.

* iFix sha256sum commands in release script.
2022-12-22 13:38:51 -06:00
Dana Robinson
ab0a778593 Adds Doxygen VOL flag markup (#2340)
* Initial doxygen markup

* Committing clang-format changes

* Adds Doxygen comments to VOL flags

* Committing clang-format changes

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-12-21 13:44:50 -08:00
Dana Robinson
57af2ff798 Onion VFD header cleanup (#2337)
* Partial work towards cleaning up the onion VFD code

* Committing clang-format changes

* A few minor tweaks to the onion VFD public header

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-12-21 10:46:05 -08:00
Allen Byrne
9f5cf0a457 H5F_LIBVER_LATEST changes for move to 1.15 (#2288)
* H5F_LIBVER_LATEST changes for move to 1.15

* Add new default api check

* Format fixes

* Fix default configure

* fix lib version tests

* Fix another version variable

* Add 1.14 doc link
2022-12-21 10:07:25 -08:00
vchoi-hdfgroup
976e8c9750 Fix up the H5Pencode2 test for virtual layout. (#2325)
* Fix up the H5Pencode2 test for virtual layout.

* Committing clang-format changes

* Remove VERIFY and use TEST_ERROR.

Co-authored-by: vchoi <vchoi@jelly.ad.hdfgroup.org>
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-12-20 16:48:56 -08:00
Allen Byrne
c1e44d32e6 Fix doxygen warnings and remove javadocs (#2324)
* Fix doxygen warnings and remove javadocs

* fix typo
2022-12-20 16:59:40 -06:00
Mark Kittisopikul
b9244a85d9 Align arg types of H5D_chunk_iter_op_t with H5Dget_chunk_info (#2074)
* Align arg types of H5D_chunk_iter_op_t with H5Dget_chunk_info

* Modify chunk_info test to for unsigned / hsize_t types

* Fix types in test
2022-12-19 15:13:43 -08:00
Scot Breitenfeld
70cf2c390b Removed idioms and misc. text clean-up (#2320)
* removed idioms and misc. text clean-up, Issue #2135

* removed idioms and misc. text clean-up, Issue #2135
2022-12-16 19:56:52 -08:00
Allen Byrne
149b8e9769 Disable hl tools by default (#2313)
* Disable hl tools by default

* identify the tools

* Only GIF tools are depecated

* Add new option

* Update autotools
2022-12-16 19:56:07 -08:00
Scot Breitenfeld
8102fa8c97 Only document Fortran functions (#2319)
* Only document Fortran functions

* Only document Fortran functions

* Only document Fortran functions

* Only document Fortran functions
2022-12-16 19:52:08 -08:00
Scot Breitenfeld
784061b15e moved onion VFD to FAPL group (#2321) 2022-12-16 19:51:52 -08:00
vchoi-hdfgroup
6b6bcdead6 Hdffv 11052 (#2315)
* Fix for HDFFV-11052: h5debug fails on a corrupted file (h5_nrefs_POC) producing a core dump.
When h5debug closes the corrupted file, the library calls H5F__dest() which performs all the
closing operations for the file "f" (H5F_t *) but just keeping note of errors in "ret_value"
all the way till the end of the routine.  The user-provided corrupted file has an illegal
file size causing failure when reading the image during the closing process.
At the end of this routine it sets f->shared to NULL and then frees "f".
This is done whether there is error or not in "ret_value".
Due to the failure in reading the file earlier, the routine then returns error.
The error return from H5F__dest() causes the file object "f" not being removed from the
ID node table.  When the library finally exits, it will try to close the
file objects in the table.  This causes assert failure when H5F_ID_EXISTS(f) or H5F_NREFS(f).
Fix:
a) H5F_dest(): free the f only when there is no error in "ret_value" at the end of the routine.
b) H5VL__native_file_close(): if f->shared is NULL, free "f"; otherwise, perform closing on "f" as before.
c) h5debug.c main(): track error return from H5Fclose().

* Committing clang-format changes

* Add test and release note info for fix to HDFFV-11052 which is merged via PR#2291.

* Committing clang-format changes

* Add the test file to Cmake.

* Skip test_misc37() for drivers that is not default compatible as it is using a pre-generated file.

* Committing clang-format changes

Co-authored-by: vchoi <vchoi@jelly.ad.hdfgroup.org>
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-12-16 13:47:29 -08:00
Dana Robinson
0e76abaf64 Removes duplicated build mode from -Werror GitHub actions (#2314) 2022-12-16 12:05:01 -08:00
Dana Robinson
4bbda3038a Converts the YAML build mode arrays to objects in special runs (#2308)
* Converts the YAML build mode arrays to objects in special runs

* Adds a dump of the matrix context for each test

This would have made it a LOT easier to debug the build_mode issues...

* Disable the mirror VFD in the -Werror checks

We can re-enable this after we fix the warnings, but I don't want to
conflate code and GitHub changes, so this is a better way to get the
CI to pass for now.
2022-12-15 23:03:02 -08:00
Gerd Heber
138daa8846 Merge pull request #2304 from gheber/develop
Update hdf5_header.html
2022-12-15 13:25:18 -06:00
Gerd Heber
10c693a04f Update hdf5_header.html
Use less awkward language.
2022-12-15 08:49:19 -06:00
vchoi-hdfgroup
0cb5808087 Hdffv 11052 (#2303)
* Fix for HDFFV-11052: h5debug fails on a corrupted file (h5_nrefs_POC) producing a core dump.
When h5debug closes the corrupted file, the library calls H5F__dest() which performs all the
closing operations for the file "f" (H5F_t *) but just keeping note of errors in "ret_value"
all the way till the end of the routine.  The user-provided corrupted file has an illegal
file size causing failure when reading the image during the closing process.
At the end of this routine it sets f->shared to NULL and then frees "f".
This is done whether there is error or not in "ret_value".
Due to the failure in reading the file earlier, the routine then returns error.
The error return from H5F__dest() causes the file object "f" not being removed from the
ID node table.  When the library finally exits, it will try to close the
file objects in the table.  This causes assert failure when H5F_ID_EXISTS(f) or H5F_NREFS(f).
Fix:
a) H5F_dest(): free the f only when there is no error in "ret_value" at the end of the routine.
b) H5VL__native_file_close(): if f->shared is NULL, free "f"; otherwise, perform closing on "f" as before.
c) h5debug.c main(): track error return from H5Fclose().

* Committing clang-format changes

* Add test and release note info for fix to HDFFV-11052 which is merged via PR#2291.

* Committing clang-format changes

* Add the test file to Cmake.

Co-authored-by: vchoi <vchoi@jelly.ad.hdfgroup.org>
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-12-15 05:32:23 -08:00
Dana Robinson
1b06e868fd Fixes broken CI matrix actions involving -Werror and API versions (#2302) 2022-12-14 18:05:15 -06:00
Dana Robinson
93938b3a8d Adds 'unused' hints for MDS io_info parameters (#2301)
* Adds 'unused' hints for MDS io_info parameters

* Committing clang-format changes

* Fix issue with formatter

* Committing clang-format changes

* Final fix for formatter

* Committing clang-format changes

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-12-14 14:54:51 -08:00
Scot Breitenfeld
a1c81eda20 added doc. warning for H5Literate_async return value (#2295) 2022-12-14 15:22:37 -06:00
Allen Byrne
b7511c19d0 Update windows worker compilers (#2286)
* Update windows worker compilers

* Update bin and test issues

* Update script and revert java test
2022-12-14 08:58:20 -06:00
Scot Breitenfeld
502b32b0f2 Updated H5ES documenation (#2293) 2022-12-13 10:56:48 -08:00
vchoi-hdfgroup
a9036005c3 Fix for HDFFV-11052: h5debug fails on a corrupted file (h5_nrefs_POC)… (#2291)
* Fix for HDFFV-11052: h5debug fails on a corrupted file (h5_nrefs_POC) producing a core dump.
When h5debug closes the corrupted file, the library calls H5F__dest() which performs all the
closing operations for the file "f" (H5F_t *) but just keeping note of errors in "ret_value"
all the way till the end of the routine.  The user-provided corrupted file has an illegal
file size causing failure when reading the image during the closing process.
At the end of this routine it sets f->shared to NULL and then frees "f".
This is done whether there is error or not in "ret_value".
Due to the failure in reading the file earlier, the routine then returns error.
The error return from H5F__dest() causes the file object "f" not being removed from the
ID node table.  When the library finally exits, it will try to close the
file objects in the table.  This causes assert failure when H5F_ID_EXISTS(f) or H5F_NREFS(f).
Fix:
a) H5F_dest(): free the f only when there is no error in "ret_value" at the end of the routine.
b) H5VL__native_file_close(): if f->shared is NULL, free "f"; otherwise, perform closing on "f" as before.
c) h5debug.c main(): track error return from H5Fclose().

* Committing clang-format changes

Co-authored-by: vchoi <vchoi@jelly.ad.hdfgroup.org>
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-12-13 09:40:59 -08:00
Scot Breitenfeld
b9f4c001ad added doc. warning for H5Oflush in parallel (#2289) 2022-12-09 21:31:13 -06:00
Scot Breitenfeld
4a8be219e0 fixed unclosed objects in test (#2290) 2022-12-09 21:30:42 -06:00
Neil Fortner
ef4f1f2bd4 Check for size==0 for all datatypes read from disk, not just compound (#2287)
members
2022-12-08 10:30:29 -06:00
Egbert Eich
0b4e9cf976 Compound datatypes may not have members of size 0 (#2243)
* Compound datatypes may not have members of size 0

A member size of 0 may lead to an FPE later on as reported in
CVE-2021-46244. To avoid this, check for this as soon as the
member is decoded.
This should probably be done in H5O_dtype_decode_helper() already,
however it is not clear whether all sizes are expected to be != 0.

This fixes CVE-2021-46244 / Bug #2242.

Signed-off-by: Egbert Eich <eich@suse.com>

* Rework error recovery code in H5O__dtype_decode_helper() and
H5O__dtype_decode().

* Format changes for src/H5Odtype.c.

Signed-off-by: Egbert Eich <eich@suse.com>
Co-authored-by: Neil Fortner <nfortne2@hdfgroup.org>
Co-authored-by: Larry Knox <lrknox@hdfgroup.org>
2022-12-07 16:14:40 -06:00
Allen Byrne
dcccc35526 Correct requires setting for pkgconfig files (#2280)
* Correct requires setting for pkgconfig files

* Add issue number
2022-12-07 16:05:51 -06:00
Dana Robinson
64514392fb Fixes warnings in H5Opline.c error messages (#2281)
* Fixes warnings in H5Opline.c error messages

* Committing clang-format changes

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-12-06 11:32:39 -08:00
Allen Byrne
0a2006d9c6 Add text about release notes (#2246) 2022-12-06 06:02:21 -08:00
Allen Byrne
2376723d4a Develop jni trans (#2266)
* Add compound and refactor out atomic types

* Add Array String tests back

* Convert Attribute version of compound example

* Update transfer atom8ic read to return object
2022-12-05 22:29:42 -06:00
V. Armando Solé
281984b3e3 H5E_ERR_CLS_g symbol missing when compiling C++ plugins (#2269)
C++ HDF5 filter plugin SZ3 fails to build under windows with failure at linking time unless that extern "C" block is added.
2022-12-05 19:19:53 -06:00
Scot Breitenfeld
c1c131260a return error message related to calling API (#2276) 2022-12-02 14:24:43 -06:00
Egbert Eich
24700e8f06 CVE 2021 46242 develop (#2255)
* When evicting driver info block, NULL the corresponding entry

Since H5C_expunge_entry() called (from H5AC_expunge_entry()) sets the  flag
H5C__FLUSH_INVALIDATE_FLAG, the driver info block will be freed. NULLing the
pointer in  f->shared->drvinfo will prevent use-after-free  when it is used in other
functions (like  H5F__dest()) - as other places will check whether the pointer is
initialized before using its value.

This fixes CVE-2021-46242 / Bug #2254

Signed-off-by: Egbert Eich <eich@suse.com>

* When evicting the superblock, NULL the corresponding entry

The call to H5AC_expunge_entry() will free the corresonding structure,
to avoid a use-after-free, the corrsponding pointer entry will be NULLed.

Signed-off-by: Egbert Eich <eich@suse.com>

Signed-off-by: Egbert Eich <eich@suse.com>
2022-12-02 14:24:14 -06:00
Allen Byrne
88b24c258b Output should only be printed if verbose. (#2273)
* Output should only be printed if verbose.

* Add note
2022-12-02 09:39:49 -08:00
Egbert Eich
4e0277c35a Report error if dimensions of chunked storage in data layout < 2 (#2241)
For Data Layout Messages version 1 & 2 the specification state
that the value stored in the data field is 1 greater than the
number of dimensions in the dataspace. For version 3 this is
not explicitly stated but the implementation suggests it to be
the case.
Thus the set value needs to be at least 2. For dimensionality
< 2 an out-of-bounds access occurs as in CVE-2021-45833.

This fixes CVE-2021-45833 / Bug #2240.

Signed-off-by: Egbert Eich <eich@suse.com>

Signed-off-by: Egbert Eich <eich@suse.com>
Co-authored-by: Larry Knox <lrknox@hdfgroup.org>
2022-12-01 23:04:42 -06:00
Allen Byrne
96a4e10102 Add aarch64 toolchain and change dump test to long opt (#2271) 2022-12-01 14:32:34 -08:00
Larry Knox
cf232a757f Develop fix ubuntu 22.04 openmpi install on github (#2268)
* Update install openmpi-bin to also install mpi-default-dev instead of
libopenmpi-dev.  This according to
https://bugs.launchpad.net/ubuntu/+source/openmpi/+bug/1870780.
2022-11-28 13:20:24 -06:00
Egbert Eich
158dff6b50 Make sure testsuite can handle multiple dependent scripts (#2256)
Commit afc54d75a1 to the test suite to eliminate a separate
shell script did not take into account that there may be
multiple dependent test scripts which resulted in the
message:
`/bin/sh: line 7: [: too many arguments`.
when running the test suite.

Beware that this new version still makes use of non-posix GNU
extensions to `test`.

Signed-off-by: Egbert Eich <eich@suse.com>

Signed-off-by: Egbert Eich <eich@suse.com>
2022-11-28 13:19:31 -06:00
Larry Knox
eac2cd54e2 Develop ubuntu 20.04 (#2267)
* Use ubuntu-20.04 for github autotools  parallel tests until parallel
configure is fixed on  ubuntu 22.04.

* Remove inactive developers from CODEOWNERS.

* Temporarily cat config.log for autotools build in github actions.

* Try ubuntu-latest.

* Attempt to cat config.log even when configure fails.

* Fix syntax.

* Try again

* Try again

* Try again.

* Back to original temporary fix.

* Install libopenmpi-dev with openmpi-bin, which was installed as a
dependency prior to ubuntu-22.04.
2022-11-23 12:00:00 -08:00
Larry Knox
3e762b07aa Use ubuntu-20.04 for github autotools parallel tests until parallel (#2264)
* Use ubuntu-20.04 for github autotools  parallel tests until parallel
configure is fixed on  ubuntu 22.04.
2022-11-18 17:30:29 -06:00
raylu-hdf
ee4d92e01b Bug Fix: Segfault in H5CX_get_vol_wrap_ctx when H5VLwrap_register is called from an application (#2248)
* Jira HDFFV-10881: Segfault in H5CX_get_vol_wrap_ctx when H5VLwrap_register is called from an application.  A quick and simple fix to make it fail with a relevant error message.

* Format changes.

* Committing clang-format changes

* Minor change: split one condition check into two for clarity.

* Adding doxygen comment for H5VLwrap_register.

* Minor change: adding a little more detail to the Doxygen comment for H5VLwrap_register.
2022-11-17 16:29:21 -06:00
Ryan Schmidt
9dd36f016a Simplify & fix check for szlib encoder (#2263)
Return the result rather than setting the exit code. "return" is a
language keyword whereas "exit" is a function for which the <stdlib.h>
header has to be included which it wasn't in this test, therefore the
test would previously fail to identify that the encoder was enabled if
"-Werror=implicit-function-declaration" was used, which it is by default
with clang from Xcode 12 and later.

Fixes #2262
2022-11-17 16:28:44 -06:00
Allen Byrne
169896aedb Remove hard-coded version text (#2260)
* Remove hard-coded version text

* Use macOS 11 until accum test is fixed see #2261
2022-11-16 15:13:46 -06:00
Allen Byrne
719d800499 Refactor JNI translate functions to a recursive switch on datatype (#2232) 2022-11-15 22:44:33 -06:00
Scot Breitenfeld
03cc221016 moved quad precision checks (#2252)
* Only check quad sizes if fortran is enabled

* fixed if struct
2022-11-12 12:53:35 -06:00
Egbert Eich
0f94940f1a H5O_dtype_decode_helper: Parent of enum needs to have same size as enum itself (#2237)
The size of the enumeration values is determined by the size of the parent.
Functions accessing the enumeration values use the size of the enumeration
to determine the size of each element and how much data to copy. Thus the
size of the enumeration and its parent need to match.
Check here to avoid unpleasant surprises later.

This fixes CVE-2018-14031 / Bug #2236.

Signed-off-by: Egbert Eich <eich@suse.com>
2022-11-11 00:05:00 -06:00
Egbert Eich
34ec3bb7bc Make sure info block for external links has at least 3 bytes (#2234)
According to the specification, the information block for external links
contains 1 byte of version/flag information and two 0 terminated strings
for the object linked to and the full path.
Although not very useful, the minimum string length for each (with
terminating 0) would be one byte.
Checking this will help to avoid SEGVs triggered by bogus files.

This fixes CVE-2018-16438 / Bug #2233.

Signed-off-by: Egbert Eich <eich@suse.com>
2022-11-10 23:41:53 -06:00
Egbert Eich
1750b4b0af Validate location (offset) of the accumulated metadata when comparing (#2231)
Initially, the accumulated metadata location is initialized to HADDR_UNDEF
- the highest available address. Bogus input files may provide a location
or size matching this value. Comparing this address against such bogus
values may provide false positives. This make sure, the value has been
initilized or fail the comparison early and let other parts of the
code deal with the bogus address/size.
Note: To avoid unnecessary checks, we have assumed that if the 'dirty'
member in the same structure is true the location is valid.

This fixes CVE-2018-13867 / Bug #2230.

Signed-off-by: Egbert Eich <eich@suse.com>
2022-11-10 23:24:56 -06:00
Egbert Eich
659bc99fd1 Make H5O__fsinfo_decode() more resilient to out-of-bound reads. (#2229)
When decoding a file space info message in H5O__fsinfo_decode() make
sure each element to be decoded is still within the message. Malformed
hdf5 files may have trunkated content which does not match the
expected size. Checking this will prevent attempting to decode
unrelated data and heap overflows. So far, only free space manager
address data was checked before decoding.

This fixes CVE-2021-45830 / Bug #2228.

Signed-off-by: Egbert Eich <eich@suse.com>

Additions

Co-authored-by: Larry Knox <lrknox@hdfgroup.org>
2022-11-10 23:20:09 -06:00
Egbert Eich
99487d9e45 H5IMget_image_info(): Make sure to not exceed local array size (#2227)
Malformed hdf5 files may provide more dimensions than the array dim[] in
H5IMget_image_info() is able to hold. Check number of elements first by calling
H5Sget_simple_extent_dims() with NULL for both 'dims' and 'maxdims' arguments.
This will cause the function to return only the number of dimensions.
The fix addresse a stack overflow on write.

This fixes CVE-2018-17439 / HDFFV-10589 / Bug #2226.

Signed-off-by: Egbert Eich <eich@suse.com>

Signed-off-by: Egbert Eich <eich@suse.com>
2022-11-10 23:01:45 -06:00
Scot Breitenfeld
5985d0e0b1 removed uninterpretable line (#2249) 2022-11-10 22:56:53 -06:00
Dana Robinson
a8942c7413 Adds a release note for PR #2210 (CVE-2019-8396) (#2247)
* Adds a release note for PR #2210 (CVE-2019-8396)

* Capitalization issue fixed
2022-11-09 17:03:55 -08:00
Dana Robinson
d93c6fae43 Removes MPE instrumentation support. (#2245)
* Removes MPE instrumentation support.

The Autotools will no longer accept --with-mpe= and the logging commands
have been removed from the FUNC_ENTER macros. CMake has never supported
instrumenting for MPE.

* Committing clang-format changes

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-11-09 11:06:26 -08:00
Egbert Eich
18c438bdf0 H5O__pline_decode() Make more resilient to out-of-bounds read (#2210)
Malformed hdf5 files may have trunkated content which does not match
the expected size. When this function attempts to decode these it may
read past the end of the allocated space leading to heap overflows
as bounds checking is incomplete.
Make sure each element is within bounds before reading.

This fixes CVE-2019-8396 / HDFFV-10712 / github bug #2209.

Signed-off-by: Egbert Eich <eich@suse.com>

Signed-off-by: Egbert Eich <eich@suse.com>
2022-11-09 10:25:11 -08:00
Dana Robinson
adc467992e Moved the contributing.md document to the project root (#2244) 2022-11-09 09:58:32 -08:00
Dana Robinson
0f30852242 Removes dmalloc support (#2239)
This has not been used to debug the library in a very long time. Most
developers use valgrind, -fsanitize=address, or some other memory checker
instead of this library.

This removes:
    * dmalloc.h include from H5private.h
    * --with-dmalloc= Autotools configure option
    * HDF5_ENABLE_USING_DMALLOC CMake option
2022-11-09 09:22:14 -08:00
Gerd Heber
2025d047e2 Multidataset RFC updates (#2238) 2022-11-08 17:46:52 -08:00
raylu-hdf
81a6f6874f Bug fix: the previous checkin only supported the native connector (#2211)
* Bug fix: make sure the test case supports the pass_through connector.

* Committing clang-format changes

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-11-05 15:24:42 -07:00
Dana Robinson
018f093c09 Removes the memory allocation sanity checks feature (#2218)
* Removes the memory allocation sanity checks feature

* Committing clang-format changes

* Removes zero size checks for H5MM_(c|m)alloc()

* Explicitly return NULL when size == 0 in H5allocate_memory()

* Committing clang-format changes

* Format fix

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-11-03 16:30:08 -07:00
Scot Breitenfeld
40a0e3c7b5 correct H5Ropen_object_reference (#2212) 2022-11-03 09:56:53 -07:00
Dana Robinson
55e3f667d4 Fixed a Doxygen param in H5EScancel (#2213) 2022-11-03 09:55:59 -07:00
Larry Knox
6924d590cc Use ctest_test and APPEND to correctly report passed and failed test numbers in CDash (#2208)
* Change how HPC tests are executed

* Move ctest_test commands for serial and parallel tests into cmake files.

* Update checks for uploading Test.xml to CDash.

* Correct cmake scripots.

* Remove extraneous characters.

* Add ctest_start (APPEND).

* Add binary directories to scripts running ctest_test.

* Correct parameters for appending Test.xml.

* Set CTEST_SITE and CTEST_BUILD_NAME.

* Try to pass site and build_name to ctest_test sripts.

* Add site name and build name for ctest_test commands vi environment.

* Revert "Try to pass site and build_name to ctest_test sripts."

This reverts commit d364aaf0fa.

* Correct typo in src/CMakeLists.txt.

* Update batch scripts to run ctest_test scripts.

Co-authored-by: Allen Byrne <byrn@hdfgroup.org>
2022-11-02 09:02:47 -07:00
Larry Knox
e4fb9aa96e Update link for Software Changes in RELEASE.txt. (#2205)
* Update link for Software Changes in RELEASE.txt.
Add RELEASE.txt contents from 1.13.3 release to HISTORY-1_13.txt.

* Reverse order of entries in HISTORY-1_13.txt to match the order in previous HISTORY
files.
2022-11-01 16:14:52 -05:00
Allen Byrne
94119211a7 Correct the CMake link for MPI (#2198) 2022-11-01 16:03:13 -05:00
Larry Knox
11dfa25910 Update copyright headers (#2184)
* Updated source file copyright headers to remove "Copyright by the Board of Trustees
of the University of Illinois", which is kept in the top-level COPYING file.
2022-11-01 16:02:27 -05:00
raylu-hdf
71595e9ea3 Added a test case for H5VLget_connector_name (#2195)
* Added a test case for H5VLget_connector_name.

* Committing clang-format changes

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-10-28 13:36:49 -07:00
Scot Breitenfeld
2b8139f34c added issue with Perlmutter and subfiling (#2202)
Co-authored-by: Dana Robinson <43805+derobins@users.noreply.github.com>
2022-10-28 09:01:06 -07:00
Larry Knox
9acd203041 Update release.txt (#2201)
* Some Javadoc warning fixes

* Updated javadoc fixes

* # WARNING: head commit changed in the meantime

HDFFV-11229 Fix long double usage in tools and java

Changed h5dump and h5ls to just print 128-bit for long double type.
Added test and file for dataset and attributes with all three float
types.

* Committing clang-format changes

* HDFFV-11229 Add release note

* HDFFV-11229 windows testfile needed

* fix typo

* Remove non supported message text

* HDFFV-11229 - change ldouble test to check both native and general

* HDFFV-11229 add second file compare

* HDFFV-11229 fix reference file

* HDFFV-11229 autotools check two refs

* HDFFV-11229 revert back to removal of NATIVE_LDOUBLE in tools output

* Committing clang-format changes

* Update release note

* Update attribute type of ref file

* Change source of ninja for macs

* try port instead of brew

* Recommended is to use brew.

* Undo non long double changes

* remove unneeded file

* Fix perl and doxygen CMake code

* Add "option" command for clang options

* Rework CMake add_custom to use the BYPRODUCTS argument

* Add stamp files to BYPRODUCTS

* Only one copy of file exists

* Fix custom cmmand depends targets

* Fix fortran custom command DEPENDS

* Add LD_LIBRARY_PATH to tests

* Add custom target for DEPENDS

* Add h5detect conditionaly to generated target DEPENDS

* Correct DEPENDS targets

* Parallel builds need the mpi compiler for pkgconfig scripts.

* install only if MPI build

* Fortran target depends

* Remove incorrect source attribute

* doxygen adjustments

* doxygen build updates

* Correct version

* Correct function version - function has been merged to 1.12

* Correct version string for map functions

* Cleanup warnings for tools debug builds

* TRILAB-227 - fix indexing for h5diff selections

* Correct location of pos to index function call

* TRILAB-227 Enable test

* Quote subset args

* Use MATCHES because of AppleClang

* if blocks needed for build modes

* Update list of DT platforms

* VS2019 correctly displays float values

* revert VS2019 change

* Issue #669 remove version from pkgcfg filename

* remove version from h5cc script

* Java reference functions updated

enabled fortran in cmake gcc action yaml file
java reference test changed to correctly test refs
jni reference functions that create ids changed to use jni id logging

* Correct BYPRODUCTS argument

* Correct more genereated files BYPRODUCTS

* BYPRODUCTS must have unique locations

* Fix typo

* Fix fortran configure checks

* Rework H5_PAC_C_MAX_REAL_PRECISION setting logic

* Add note about fortran configure change

* Adds a quick for for some egregious chunk_info badness (#722)

* Fixes issue with ccmake that prevents building Fortran (#723)

ccmake runs iteratively, and the check_fortran_source_runs
macros were clobbering a single output file that did not
get updated on further configure iterations

* Fix conflicts with merge

* Move MAX_PRECISION back to HDF5UseFortran.cmake

* Use STREQUAL to test macro argument

* Move C language test to ConfigureChecks from HDF5UseFortran

* MAX_PRECISION defines must be defined

* Organize flags and align autotools and cmake

* Fix comment in no-error-general warnings files.

* Flag cleanup and fix typos

* Add comment

* Correct VAR used to find configure time file

* Set the path correctly

* Update missing release note info.

* Update code owners

* Correct JIRA note

* add known problem.

* Use only core library for testing dynamic plugins.

* Committing clang-format changes

* Update main.yml

* Update HISTORY-1_13.txt

Missing release note added for changed location of CMake configuration files.

* Update HISTORY-1_13.txt

Fix typo

* Update main.yml

revert change

* Updated version to 1.13.4-1 after creating hdf5_1_13_3 branch for 1.13.3
release.
Added new version to exceptions in lines 74-5 of src/H5.c

* Cleared RELEASE.txt entries following HDF5 1.13.3 release.

Co-authored-by: Allen Byrne <byrn@hdfgroup.org>
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Allen Byrne <50328838+byrnHDF@users.noreply.github.com>
Co-authored-by: Dana Robinson <43805+derobins@users.noreply.github.com>
2022-10-28 08:10:02 -07:00
Allen Byrne
4d0501f48c Fix for documentation misunderstanding on m1 Intel builds (#2188) 2022-10-26 09:24:51 -07:00
Scot Breitenfeld
a6c1dff09a running on node-16 insteas of Node.js 12 (#2190) 2022-10-26 09:24:12 -07:00
Larry Knox
0173706826 Update develop branch version to 1.13.4-1 (#2189)
* Updated version to 1.13.4-1 after creating hdf5_1_13_3 branch for 1.13.3
release.
Added new version to exceptions in lines 74-5 of src/H5.c
2022-10-26 11:07:17 -05:00
Allen Byrne
9c61f7b1e1 JNI: Improve varlen datatype handling in H5A/H5D read/write functions (#2156)
* Improve JNI VL datatype read/write to handle complex combinations

* Implement VL of VL JNI writes and reads

* Add Java VLofVL test for attributtes

* Changes to address review issues

* Fix H5Aread vl blocks
2022-10-25 23:33:30 -05:00
Neil Fortner
ad2d77397a Add RELEASE.txt note for multi dataset feature (#2187) 2022-10-25 22:13:01 -05:00
Scot Breitenfeld
ba1fe3d1df converted from ISO-8859-1 to UTF-8 (#2185) 2022-10-25 12:29:36 -07:00
Scot Breitenfeld
7d1997ff7b Removed the file, func, line args in the _async APIs fpr doxygen (#2179)
* Removed the: file, func, line args in the _async APIs from the doxygen arguments. Documented H5ESclean.

* format fixes

* fixed DOXYGEN_PREDEFINED

* Fixed the #ifdet logic for doxygen, added missing multi-dataset va_args

* format fixes

* Use H5_DOXYGEN instead of H5_DOXYGEN_FORTRAN

* reordered multidataset declarations

* alt. for H5Aclose_async and H5Acreate_async

* made doxgyen API into seperate blocks

* updated codespell

* Committing clang-format changes

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-10-25 10:41:38 -07:00
Allen Byrne
23e237e728 Port VOL User Guide to doxygen (#2165)
* Port VOL User Guide to doxygen

* Fix spelling

* Committing clang-format changes

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-10-25 08:51:08 -07:00
Allen Byrne
ea902f9ace Implement option for using CMake GNUInstallDirs (#2175)
* Implement option for using CMake GNUInstallDirs

* Add release notes
2022-10-25 08:50:43 -07:00
raylu-hdf
f98c93ab19 Added a test case to verify the VOL capacity flags work correctly. (#2178)
* Added a test case to verify the VOL capacity flags work correctly.

* Committing clang-format changes

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-10-25 07:59:03 -05:00
Scot Breitenfeld
4e4c7cf66d fixed error code returned for H5Aexits (#2180) 2022-10-25 07:58:23 -05:00
Neil Fortner
7997b53589 Fix problem with variable length attributes being accessed through multiple file handles (#2181)
* Fix bug with variable length attributes being accessed through multiple
file handles.

* Committing clang-format changes

Co-authored-by: Neil Fortner <nfortne2@localhost.localdomain>
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-10-25 07:46:15 -05:00
Neil Fortner
93754cae33 Multi Dataset (#2120)
* Fix bug with cross platform compatibility of references within vlens.
No testing yet.

* Merge from multi_rd_wd_coll_io to a more recent branch from develop.
Untested, probably does not work yet.

* Committing clang-format changes

* Committing clang-format changes

* Fix many bugs in multi dataset branch.  Mostly works, some issues in
SWMR tests.

* Committing clang-format changes

* Disable test in swmr.c that was failing due to bug in HDF5 unrelated to
multi dataset.

* Committing clang-format changes

* Fixed fortran multi-dataset tests

* Fixed xlf errors

* Added benchmark code for multi-datasets

* loops over datasets

* added missing error arg.

* Added gnuplot formatting

* Jonathan Kim original MD benchmarking code

* updated MD benchmarking code

* code clean-up

* Only make files in feature test mode

* misc clean-up

* removed TEST_MDSET_NO_LAST_DSET_2ND_PROC option

* Committing clang-format changes

* Change multi dataset API to use arrays of individual parameters instead
of the parameter struct.

* Committing clang-format changes

* Update to new multi dataset Fortran API and tests. (#1724)

* Update to new multi dataset Fortran API and tests.
* Sync Fortran with develop.
* skipping h5pget_mpio_actual_io_mode_f for now

* Fixed issue with dxpl_id, changed to variable size dim. (#1770)

* Remove "is_coll_broken" field from H5D_io_info_t struct

* Committing clang-format changes

* Minor cleanup in multi dataset code.

* Committing clang-format changes

* Clean up in multi dataset code.

* Committing clang-format changes

* Committing clang-format changes

* Fix speeling

* Fix bug in parallel compression. Switch base_maddr in io_info to be a
union.

* Committing clang-format changes

* Implement selection I/O support with multi dataset.  Will be broken in
parallel until PR 1803 is merged to develop then the MDS branch.

* Committing clang-format changes

* Spelling

* Fix bug in multi dataset that could cause errors when only some of the
datasets in the multi dataset I/O used type conversion.

* Committing clang-format changes

* Integrate multi dataset APIs with VOL layer.  Add async versions of
multi dataset APIs.

* Committing clang-format changes

* Spelling fixes

* Fix bug in non-parallel HDF5 compilation.

* Committing clang-format changes

* Fix potential memory/free list error. Minor performance fix. Other minor
changes.

* Committing clang-format changes

* Fix memory leak with memory dataspace for I/O.

* Committing clang-format changes

* Fix stack variables too large.  Rename H5D_dset_info_t to
H5D_dset_io_info_t.

* Committing clang-format changes

* Remove mem_space_alloc field from H5D_dset_io_info_t.  Each function is
now responsible for freeing any spaces it adds to dset_info.

* Committing clang-format changes

* fixed _multi Fortran declaration

* Refactor various things in (mostly) the serial I/O code path to make
things more maintainable.

* Committing clang-format changes

* updated to array based, doxygen, and examples

* Reinstate H5D_chunk_map_t, stored (via pointer) inside
H5D_dset_io_info_t.

* Change from calloc to malloc for H5D_dset_io_info_t and H5D_chunk_map_t.
Switch temporary dset_infos to be local stack variables.

* Committing clang-format changes

* format cleanup

* format cleanup

* added coll and ind

* Modify all parallel I/O paths to take dset_info instead of assuming
dset_info[0].

* Committing clang-format changes

* fixed output

* Rework parallel I/O code to work properly with multi dataset in more
cases.  Fix bug in parallel compression.

* Committing clang-format changes

* Prevent H5D__multi_chunk_collective_io() from messing up collective opt
property for other datasets in I/O.  Other minor cleanup.  Add new test
case to t_pmulti_dset.c for H5FD_MPIO_INDIVIDUAL_IO, disabled for now
due to failures apparently unrelated to multi dataset code.

* Fix spelling

* Committing clang-format changes

* Replace N log N algorithm for finding chunk in
H5D__multi_chunk_collective_io() with O(N) algorithm, and remove use of
io_info->sel_pieces in that function.

* Committing clang-format changes

* Replace sel_pieces skiplist in io_info with flat array of pointers, use
qsort in I/O routine only when necessary.

* Committing clang-format changes

* Add new test case to mdset.c

* Committing clang-format changes

* Fix spelling

* Very minor fix in H5VL__native_dataset_read()

* Fix bug that could affect filtered parallel multi-dataset I/O.

* Add RM entries for H5Dread_multi(), H5Dread_multi_async(),
H5Dwrite_multi(), and H5Dwrite_multi_async()

* Unskip test in swmr.c

* Committing clang-format changes

* Eliminate H5D__pre_read and H5D__pre_write

* Remove examples/ph5mdsettest.c. Will fix and re-add as a test.

* Enable hyperslab combinations in mdset test

* Committing clang-format changes

* Clarify H5Dread/write_multi documentation.

* Fix bugs in multi-dataset I/O.  Expand serial multi dataset test.
Update macro in parallel multi dataset test.

* Committing clang-format changes

* Spelling

* Remove obsolete entry in bin/trace

* Rework type conversion buffer allocation. Only one buffer is shared
between datasets in mdset mode, and it is malloced instead of calloced.

* Committing clang-format changes

* Fix bug in error handling in H5D__read/write

* added multi-dataset fortran check with optional dataset creation id (#2150)

* removed dup. dll entry

* Address comments from code review.

* Remove spurious changes in H5Fmpi.c

* Fix issue with reading unallocated datasets in multi-dataset mode.
Address other comments from code review.

* Committing clang-format changes

* Delay chunk index lookup from io_init to mdio_init so it doesn't add
overhead to single dataset I/O.

* Committing clang-format changes

* Fix inappropriate use of piece_count

* updated copyright on new file, removed benchmark from testing dir.

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: M. Scot Breitenfeld <brtnfld@hdfgroup.org>
Co-authored-by: Dana Robinson <43805+derobins@users.noreply.github.com>
2022-10-19 09:13:15 -07:00
Pierce Brooks
a898cef6c2 make sure to match the debug library postfix with external cmake projects and allow for zlib link name to be manually overridden (#2166) 2022-10-19 09:06:51 -05:00
Scot Breitenfeld
889dc1e9a7 address test failing when default real and integers are 8 bytes (#2173) 2022-10-19 08:55:06 -05:00
Scot Breitenfeld
0fd867390a changed to referencing C APIs by empty brackets (Fortran) (#2167) 2022-10-17 15:37:19 -05:00
Scot Breitenfeld
afb92a3e22 Fix H5Dfill_f test (#2162)
* change to integer for legacy H5Dfill_f testing

* fixed H5Dfill testing issues with promoted real and integer

* updated build fortran dependencies
2022-10-14 11:35:52 -07:00
vchoi-hdfgroup
5021fd9d4d Fix for HDFFV-10840: Instead of using fill->buf for datatype conversion (#2153)
* Fix for HDFFV-10840: Instead of using fill->buf for datatype conversion
if it is large enough, a buffer is allocated regardless so that the element
in fill->buf can later be reclaimed.
Valgrind is run on test/set_extent.c and there is no memory leak.

* Add information of this fix to release notes.

Co-authored-by: vchoi <vchoi@jelly.ad.hdfgroup.org>
2022-10-14 11:05:14 -07:00
Dana Robinson
80f80d61db Cleans final production mode warnings from H5Shyper.c (#2163)
* H5S__hyper_free_span_info() returns herr_t (not checked)

* Set up H5S__hyper_free_span_info() error handling

* Set up H5S__hyper_free_span() error handling

* Added error handling to H5S_HYPER_ADVANCE_SPAN

* Handled errors in H5S__hyper_iter_get_seq_list_gen()

* Added a production mode build target for -Werror

* Committing clang-format changes

* Updated names for -Werror checks

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-10-14 06:15:33 -07:00
Scot Breitenfeld
edc3790f5c renamed H5_FORTRAN_C_LONG_DOUBLE_IS_UNIQUE DLL (#2158)
* changed DLL define to a unique name
2022-10-13 11:41:33 -05:00
Scot Breitenfeld
cffaf47c15 Fix for missing h5dfill_c_long_double in dll (#2155)
* added conditionally include h5dfill_c_long_double in dll
2022-10-12 07:38:27 -05:00
Scot Breitenfeld
64e69d9291 Implemented C matching (and general) H5Dfill Fortran wrappers (#2152) 2022-10-11 07:25:05 -05:00
Scot Breitenfeld
306db409d4 Avoid calling H5FD_subfiling_init from h5open_f. (#2149)
* Only call H5FD_SUBFILING if subfiling conditions are met

* clang format
2022-10-07 09:01:42 -07:00
Scot Breitenfeld
e80079fd21 Subfiling Fortran wrapper work. (#2143)
* added C ref. for Fortran constants

* added C ref. for Fortran constants

* move constant paramters to H5* module listing

* added back comment

* Fortran subfiling and ioc FD with tests. H5Pset/get_mpi_params wrappers with tests, misc.. parallel test clean-up.

* misc. fixes

* fixed CMake testpar issues, formatted, misc. updates

* updated tests
2022-10-06 09:08:56 -07:00
Allen Byrne
a322eb6147 Fix static-cast format (#2141)
* Fix static-cast format

* clang format fix
2022-10-04 08:31:46 -05:00
Allen Byrne
c114bd64b0 Fix mostly java warnings, and cpp cast (#2134) 2022-10-03 13:31:32 -05:00
Scot Breitenfeld
1fb83da215 Grouped the Fortran constants in Doxygen (#2136) 2022-10-03 11:13:00 -05:00
Dana Robinson
ce67e4eb05 Adds a first cut at a "getting started with HDF5 development" guide (#2137)
* Added empty "getting started" markdown file

* Added title and brief tour of source code

* Moved platform-independence text to markdown

* Added anatomy of a function documentation

* Adds information on public/private/package calls and macros

* Adds much getting started guide text

* Fixed typos

* Fixed codespell issues
2022-09-30 21:44:39 -07:00
jhendersonHDF
79bdc6183e Subfiling testing fix and documentation (#2132)
* Fix a sporadic failure in Subfiling VFD tests

* Subfiling VFD - add note to H5Pget_fapl_subfiling documentation

Adds note about how H5Pget_fapl_subfiling only returns the original
settings on a FAPL and those settings could have been modified by the
Subfiling VFD's environment variables
2022-09-29 21:06:17 -05:00
Scot Breitenfeld
1bec0ce2d7 Misc. Fortran Doxygen updates (#2129) 2022-09-28 10:52:19 -05:00
Neil Fortner
4184bac2ec Fixed an issue that could occur when combining hyperslab selections (#2122) 2022-09-26 22:51:52 -05:00
Scot Breitenfeld
1c26386c38 Added C references to Fortran constants. (#2126)
* added C references for Fortran APIs
2022-09-26 22:50:09 -05:00
Allen Byrne
dcd332d231 Restructure ref manual presentation (#2123) 2022-09-26 22:49:29 -05:00
Allen Byrne
853a592d2d Add missing windows include/lib configure for StrStrIA (#2114) 2022-09-22 13:52:31 -05:00
Frank Berghaus
100b22e6c2 Use case-insensitive comparison for headers fix #2100 (#2101)
* Use case-inseneitive comparison for headers

HTTP headers should be case-insensitive. Use case-insensitive string
comparisons when working with HTTP header responses to ensure
compatibility.

* Revert "Use case-inseneitive comparison for headers"

This reverts commit a02f591723506b62b7208449be6eef7122120398

* Ignore case when searching HTTP header responses

Looking up the Content-Length in the header returned by S3 storage
endpoints should ignore case. To guarantee portability implement a
function for case-insensitive string search, because it is non-standard.

* Add an _ after H5 for the strcasestr implementation

It is a private function and should sport that underscore.

* Remove author comment from the doc comment

* Use search function defined by system if available

Check whether the system provides a function implementing case
insensitive string searches. Only use the custom implementation if the
system does not provide the functionality.

* Add tests for case-insensitive search

Basic tests:
  - Search for empty string
  - Search with exact match
  - Search with case-insensitive match
  - search with no match

* Enforce clang-format style

Some variable definitions in the th5_system tests did not conform to
clang-format's expectations. Updated the offending lines.

* Correct comment describing test case

* Added some spaces to please clang-format

* Ignore discarding const

Ask the compiler to ignore discarding the const when retunring a match from H5_strcasestr

Co-authored-by: Frank Berghaus <frank.berghaus@mpcdf.mpg.de>
2022-09-21 11:50:17 -05:00
Allen Byrne
d491c33a72 Update examples reference to single-source version 2.0.1 (#2107) 2022-09-20 17:21:15 -05:00
Dana Robinson
6d89634445 Updates VOL capabilities flags (#2105)
* Added feature/vol_cap_flags branch to GitHub actions

* Convert unsigned cap flag field to uint64_t and add flags

* Committing clang-format changes

* Convert unsigned cap flag field to uint64_t and add flags

* Committing clang-format changes

* Updates the VOL struct version number

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-09-17 09:49:38 -07:00
Allen Byrne
a9d8b469f4 Use doxygen snippets for common tables (#2104) 2022-09-16 12:45:06 -05:00
jhendersonHDF
16aa2dbaa0 Subfiling VFD updates (#2106) 2022-09-16 11:17:30 -05:00
Allen Byrne
45178c87a3 develop Merge doxygen from 1.12 branch (#2095) 2022-09-14 15:44:24 -05:00
Scot Breitenfeld
dcf3b54b6e removed H5R interface definition (#2090) 2022-09-14 15:43:27 -05:00
Neil Fortner
b5598575bb Fix memory bug in selection I/O (#2096)
* Fix memory bug in selection I/O

* Change error messages for calls to H5I_remove() in
H5FD_read/write_selection()
2022-09-14 11:10:05 -05:00
Dana Robinson
fe9c07fd90 Adds file locking documentation (#2084)
* Added initial (partial) file locking document

* Almost done with file locking document

* Fix intro

* Cleaned up text

* Updated environment variable verion info

* Fix typo

* Fix typos
2022-09-14 05:53:35 -07:00
Allen Byrne
05a0411140 Remove bitbucket.hdfgroup.org dependency. #2082 (#2086)
*
2022-09-07 17:12:55 -05:00
H. Joe Lee
2d4a96b32c Change test to example. (#2087)
* Remove the commented line.
2022-09-07 17:12:19 -05:00
H. Joe Lee
ecc687c4ff Fix grammar and spelling in comment block. (#2089) 2022-09-07 17:11:40 -05:00
Scot Breitenfeld
99f17c7271 Doxygen Fortran (#2062) 2022-09-07 17:11:20 -05:00
Dana Robinson
1804e0e0c4 Updates release schedule for 2023 (#2085)
* Updates release schedule for 2023

* Updates figure to put 1.13 and 1.14 on the same line
2022-09-04 04:42:25 -07:00
Allen Byrne
c8fdd92cd4 Update CMake code to 3.18 minimum version (#2080)
* Update CMake code to 3.18 minimum version

* Updated release note
2022-09-02 17:31:29 -07:00
Dana Robinson
6e8aaab1b4 Minor changes to CMake comments, etc. (#2078) 2022-08-31 11:03:37 -05:00
Dana Robinson
ccdcec273a Updates onion VFD major error codes (#2076) 2022-08-31 11:01:52 -05:00
Neil Fortner
5de9d63ff4 Address review comments from downstream merge of #2016 (#2073) 2022-08-31 11:01:05 -05:00
jhendersonHDF
5719187a34 Fix Java tests for Developer build modes (#2079) 2022-08-29 09:00:42 -07:00
Dana Robinson
5097ff016f Tidying of configure check C code (#2077)
* Tidying of configure check C code

* Fixed missing endif removal
2022-08-29 08:59:15 -07:00
Dana Robinson
08aebb6d1a Adds documentation for config directory (#2065)
* Adds documentation for config directory

* Fix spelling error
2022-08-24 23:05:28 -07:00
Gerd Heber
e1d6157c5d Added VOL connector feature flag RFC. (#2064) 2022-08-24 10:30:15 -05:00
Dana Robinson
ee55dd777b Fortran module directory improvements (#2060)
* Removes the module directory from the Automake flags as this
  generated a large number of "missing include directory" warnings
  and is unecessary
* Adds the module path to libhdf5.settings
2022-08-23 12:25:07 -07:00
Scot Breitenfeld
88ed5b69d4 removed h5rget_object_type_f module interface (#2057) 2022-08-23 09:09:08 -07:00
Dana Robinson
f020d129b2 Corrects more Fortran warnings (#2059)
* Moves -Wunused-dummy-arguments to the developer warnings since this
  generates a lot of spurious, unfixable noise due to things like
  callback wrappers
* Changes the return cast in h5fget_fileno_c, fixes a comment, and comment
  on potential badness
* Initializes a variable in tH5L_F03.F90 to quiet a 'maybe
  uninitialized' warning
2022-08-23 08:48:14 -07:00
Neil Fortner
21ec337855 Fix inappropriate use of HGOTO_ERROR (#2055) 2022-08-22 11:39:49 -05:00
Dana Robinson
801edb4f52 Quiets Fortran warnings about large arrays (#2053) 2022-08-22 08:28:48 -07:00
Dana Robinson
ec3737ab69 GitHub workflow cleanup (#2047)
* Cleans up main GitHub workflow(s)

* Combines main.yml and pr-check.yml, which differed trivially
* Reduces config redundancy via proper use of the matrix scheme
* Adds build-only configs for:
    - Version 1.6 default API
    - No deprecated symbols
    - Parallel HDF5
* The -Werror config was converted to build-only
* Makes the naming scheme more uniform
* Spaces out the code and adds comments

* Typo fix

* Fix mirror VFD CMake configure typo

* Debugging hack

* Undo debug hack and fix CMake build mode

* Set CC=mpicc for parallel builds

* Another attempt to fix parallel builds

* Updates comments in main.yml

* Fixes a v16 API bug in the mirror VFD test code

* Committing clang-format changes

* Added checks for v1.8 - 1.12 APIs

* Manually specify Windows configs

Java debug builds time out when running tests on Windows. We'll disable
them in debub mode while we investigate.

* Revert "Manually specify Windows configs"

This reverts commit d710d8d219.

* Skip Debug Windows configs while we investigate Java H5L timeouts

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-08-22 08:21:27 -07:00
Dana Robinson
f24dff5157 Quiets Fortran Autotools builds (#2052) 2022-08-22 08:21:06 -07:00
Dana Robinson
3015e3d7ab Quiets Automake rules in src directory (#2051)
* Quiets Automake rules in src directory

* Fix whitespace
2022-08-22 06:25:17 -07:00
Dana Robinson
10eb43d0c2 Removes ST from the list of debug packages (Autotools only) (#2045)
* Removes ST from the list of debug packages

The ST package (ternary search trees) was removed from the library a while ago

* Replaced B2 package

I did some crude timing with and without the B2 debug code enabled
and it doesn't seem to make much of a difference.
2022-08-22 04:12:12 -07:00
Dana Robinson
3e38a001a1 Simplify the CODEOWNERS file (#2049)
Simplify the CODEOWNERS file
2022-08-22 03:01:00 -07:00
jhendersonHDF
2b786ffe5a [WIP] Add Developer build mode to CMake (#1659)
* Add Developer build mode to CMake

* Set a few CMake variables for Developer build modes

* Refactor enabling of debug and developer-level compile definitions

* Convert cache debugging macros to normal ifdef style

Normal ifdef-style instead of if-style allows build system to define macros
without warning about redefining macros with different values (0 vs. 1)

* Add HDF5 Developer compile definitions to testing files

* Temporarily disable -fanalyzer flag for GCC 12+ Developer builds
2022-08-19 17:18:30 -07:00
jhendersonHDF
281db5876e Cleanup some warnings in Java JNI code (#2034) 2022-08-19 09:05:43 -07:00
Dana Robinson
7f6261a677 Removes cmake_ext_mod (files moved to cmake) (#2041)
At one time this content was a git submodule shared between several
projects but that time has long passed.
2022-08-19 07:54:42 -07:00
Dana Robinson
de46019a86 Removes bin/deploy, which just calls h5redeploy under the hood (#2027) 2022-08-19 09:11:22 -05:00
Dana Robinson
8cd97c4793 Updates the warnist script to report gfortran generic warnings (#2040)
These are not associated with a file and line number, like specifying
a non-existant include directory on the compile line.
2022-08-19 09:09:59 -05:00
Larry Knox
9dfcca0bbb Release updates (#2033)
* Update HISTORy-1_13.txt and clean RELEASE.txt entries after 1.13.2 release.
2022-08-18 08:35:21 -05:00
Neil Fortner
a3fd350483 Add note to RELEASE.txt for GitHub #2016 (#2030)
* Fix bug in attribute type conversion where the background buffer would
not be initialized with the destination contents when necessary.  Other
minor simplification.

* Committing clang-format changes

* Fix warnings.

* Address review comments.

* Add RELEASE.txt note for PR #2016

* Add GitHub number to release note

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-08-17 22:08:43 -05:00
Dana Robinson
e6f16c0ec2 Fixes codespell issues (#2032)
* Fixes codespell issues

* Fixed another typo
2022-08-17 16:31:54 -07:00
Neil Fortner
9304f277e8 Add note to RELEASE.txt for HDFFV-11308 (#2029)
* Add note to RELEASE.txt for HDFFV-11308

* Fix formatting error in RELEASE.txt
2022-08-17 13:35:48 -07:00
Dana Robinson
cf482563cc Remove unused dependency files (#2025) 2022-08-17 11:21:03 -07:00
Dana Robinson
d201907a4b Update bin/README.md
Correct missing space after # and ##
2022-08-17 10:46:21 -07:00
Dana Robinson
e4de06057a Adds a TODO section to bin/README.md (#2028)
Mainly to address the semi-broken state of chkcopyright
2022-08-17 10:45:05 -07:00
jhendersonHDF
07efecd9f4 Adjustments to t_bigio.c for >2GiB I/O test (#1992) 2022-08-17 10:44:00 -07:00
Dana Robinson
ecc9bbe4b6 Adds a README.md file to bin that indicates script usage (#2024)
* Adds a README.md file to bin that indicates script usage

* Forgot header row
2022-08-17 09:34:45 -07:00
Dana Robinson
b54d01fcb5 Removes bin/chkconfigure (#2023)
We check autoconf in configure.ac and can check for anything else in
autogen.sh
2022-08-17 09:22:39 -07:00
Dana Robinson
1483eeef34 Removes bin/format_source_patch (#2022)
This differs only trivially from bin/format_source
2022-08-17 09:22:13 -07:00
Dana Robinson
dc9562ee77 Removes the bin/gcov_script file (#2021)
We don't need fragile scripts to run basic profiling programs
2022-08-17 09:21:38 -07:00
Dana Robinson
afc54d75a1 Replaces bin/newer with -nt comparison in Makefiles (#2020) 2022-08-17 09:21:24 -07:00
Dana Robinson
2bba853375 Removes the bin/yodconfigure script which appears unused (#2019) 2022-08-17 08:03:14 -07:00
Dana Robinson
d6927e49c0 Replaced bin/mkdirs w/ mkdir -p -m 755, which is POSIX (#2018) 2022-08-17 08:02:39 -07:00
Dana Robinson
191c27c0a9 Removes the broken bin/errors script (#2017) 2022-08-16 15:42:55 -07:00
bmribler
951566a4ad Fix cpp comment (#2011)
* Fix test failure

Description:
    - Added two H5File constructors to open file with non-default fapl
    - Added non-default fapl to test functions
    - Commented certain renaming attribute tests because of the unexpected
      behavior in renaming an attribute (HDFFV-11327)

Platform tested:
    Linux/64 (jelly)

* Committing clang-format changes

* Update H5File.cpp

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-08-16 14:06:55 -07:00
Neil Fortner
75f4d9b042 Fix bug in attribute type conversion wiith compound types (#2016)
* Fix bug in attribute type conversion where the background buffer would
not be initialized with the destination contents when necessary.  Other
minor simplification.

* Committing clang-format changes

* Fix warnings.

* Address review comments.

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-08-16 14:04:48 -07:00
bmribler
10e4dd4ef1 Fix c++ test failure (#2005)
* Fix test failure

Description:
    - Added two H5File constructors to open file with non-default fapl
    - Added non-default fapl to test functions
    - Commented certain renaming attribute tests because of the unexpected
      behavior in renaming an attribute (HDFFV-11327)

Platform tested:
    Linux/64 (jelly)

* Committing clang-format changes

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-08-12 13:33:30 -05:00
Larry Knox
25ef534039 Update version to 1.13.3-1 after creating hdf5_1_13_2 branch for 1.13.2 (#2004)
release.
Added new version to exceptions in line 75 of src/H5.c.
2022-08-12 08:17:25 -05:00
Larry Knox
029cde6111 Revert "Increment version to 1.13.3-1 after creating hdf5_1_13_2 branch for release"
This reverts commit c58558e872.

H5TEST-tcheck_version-release failed.
2022-08-11 22:45:43 -05:00
Larry Knox
c58558e872 Increment version to 1.13.3-1 after creating hdf5_1_13_2 branch for release
of HDF5 1.13.2.
2022-08-11 22:15:46 -05:00
Allen Byrne
8d5fcbcdce Correct target name for szaec lib (#2000) 2022-08-11 15:35:14 -07:00
jhendersonHDF
b745b54a09 Only use Subfiling VFD in tools if MPI was initialized previously (#1998) 2022-08-11 15:52:25 -05:00
Allen Byrne
ec5100bf26 Fix Cmake depends prop (#1995) 2022-08-11 09:23:16 -07:00
Allen Byrne
29c8937f60 Remove misnamed java vol clear test (#1990) 2022-08-10 14:20:41 -07:00
jhendersonHDF
a3e37c587b Only include and run Subfiling example when Subfiling is enabled (#1991) 2022-08-10 14:20:28 -07:00
luzpaz
174505ca3c Fix typos found in the rest of the hdf5 code-base (#1985)
* Fix typos found in the rest of the hdf5 code-base

* Typo in tool.cmake

* Revert "Typo in tool.cmake"

This reverts commit 06b8403d99.

* Fix clang-format styling
2022-08-10 13:57:26 -07:00
Allen Byrne
e794dc5ec4 Fix CMake macro code commands (#1989) 2022-08-10 12:20:16 -07:00
luzpaz
f04312a792 Fix bug in cppcheck in tool.cmake (#1988)
Ref: https://github.com/HDFGroup/hdf5/pull/1985#issuecomment-1211046328
2022-08-10 12:19:26 -07:00
Gerd Heber
4c73c284e0 Fix4 readme (#1986)
* Update README.md

* Update README.md
2022-08-10 11:17:56 -07:00
Dana Robinson
9777d05848 Move VFD SWMR release version to 1.13.3 in README.md (#1987) 2022-08-10 11:17:43 -07:00
luzpaz
36ae75fb93 Fix typos found in src/ subdirectory (#1983)
Found via `codespell -q 3 -S ./release_docs,./bin/trace,./hl/tools/h5watch/h5watch.c,./tools/test/h5jam/tellub.c -L isnt,inout,nd,parms,parm,ba,offsetP,ser,ois,had,fiter,fo,clude,refere,minnum,offsetp,creat,ans:,eiter,lastr,ans,isn\'t,ifset,sur,trun,dne,tthe,hda,filname,te,htmp,minnum,ake,gord,numer,ro,oce`
2022-08-10 09:03:22 -07:00
jhendersonHDF
6c5b5e0759 Remove usage of libgen.h (#1984) 2022-08-10 09:00:45 -07:00
jhendersonHDF
95ceec786a Add documentation for parallel compression feature (#1981) 2022-08-09 16:08:13 -07:00
jhendersonHDF
ef33ac8bac Subfiling VFD - tidying up and fixing a few new testing failures (#1977)
* Rename Subfiling IOC "thread_pool_count" field to "thread_pool_size"

* Add simple HDF5 example for Subfiling VFD

* Subfiling VFD - never cache app topology as it may change

* Subfiling VFD - cleanup unused funtionality and tidy up some TODOs

* Subfiling VFD - tidy up subfiling error handling in H5subfiling_common.c

* Subfiling VFD - show number of failed I/O requests on close

* Subfiling VFD - Update file cmp callback after switching to MPI I/O VFD

* Amend RELEASE.txt with info about h5fuse.sh and Subfiling limitations

* Subfiling VFD - switch to using H5_basename and H5_dirname
2022-08-09 16:05:37 -07:00
Allen Byrne
b84241e57a Remove stray files, incorrect vds and mpi clean files (#1979) 2022-08-09 08:29:58 -07:00
Allen Byrne
60ba2356de Revert for older cmake versions (#1974)
* Revert for older cmake versions

* Remove unneeded clear/clean tests because of changes to test macro
2022-08-08 13:01:06 -07:00
Dana Robinson
5d63aca604 Turns off clang optimizations on a couple of onion VFD functions (#1976)
Ancient clang (7.7.3 on OS X) emits problematic code with -O2 or -O3
2022-08-08 12:04:01 -07:00
Dana Robinson
57926d549e Fixes some badness in the onion VFD revision comment code (#1975)
* Fixes some badness in the revision comment code

* Committing clang-format changes

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-08-08 11:00:13 -07:00
Allen Byrne
956282fa6f Develop cmake clean (#1971) 2022-08-06 23:59:31 -05:00
Mark Kittisopikul
7127d8912c H5Dchunk_iter now passes offsets in units of dataset elements, fix #1419 (#1969)
* H5Dchunk_iter now passes chunk dimension scaled offsets, fix #1419

* Update docs for H5Dchunk_iter, H5Dget_chunk_info*

Modified description for `H5Dchunk_iter`, `H5Dget_chunk_info`, and `H5Dget_chunk_info_by_coord` to the following

 * offset          Logical position of the chunk’s first element in units of dataset elements
 * filter_mask  Bitmask indicating the filters used when the chunk was written
 * size             Chunk size in bytes, 0 if the chunk does not exist
2022-08-06 23:57:41 -05:00
jhendersonHDF
043f66afd2 Set entry pointer mem type for vector I/O in collective metadata writes (#1961) 2022-08-06 23:56:32 -05:00
jhendersonHDF
597ce3cdbf Fix issues in tools code after Subfiling VFD updates (#1973) 2022-08-05 22:17:16 -05:00
Dana Robinson
b22984600a Adds platform-independent basename and dirname (#1951)
* Adds platform-independent basename and dirname

* Tidy up H5_dirname and H5_basename implementations and add tests

* Committing clang-format changes

* Fix misspelling

* Several fixes for H5_dirname/H5_basename from review

* Committing clang-format changes

* Add reason to VERIFY_STR macros in th5_system.c

* Use H5MM_free instead of HDfree in H5_dirname/H5_basename tests

Co-authored-by: Jordan Henderson <jhenderson@hdfgroup.org>
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-08-05 16:11:13 -07:00
raylu-hdf
54f116b42d Sanity checks for H5Xcreate_anon functions to make sure the IDs passed in are valid (#1967)
* Sanity checks for H5Xcreate_anon functions to make sure the IDs passed in are valid.

* Removed unnecessary sanity checks.

Co-authored-by: songyulu <songyulu@jelly.ad.hdfgroup.org>
2022-08-05 09:05:07 -07:00
jhendersonHDF
bf07e0f2c9 Subfiling updates for release (#1963)
* Remove generated file h5fuse.sh

* Link pthreads library when Subfiling VFD is built

* Switch to MPI I/O driver for Subfiling HDF5 stub file

* Rough first implementation for Subfiling file deletion

* Subfiling VFD - get file dirname for file deletion

* Subfiling VFD - set lock callback to NULL for now to avoid performance
issues

* Committing clang-format changes

* Minor tidying up of Subfiling testing

* Fixups for Subfiling VFD support in tools

* Tidy up Subfiling public interface and add Doxygen

* Respect Subfiling configuration settings from application

* Add release note for Subfiling VFD

* Committing clang-format changes

* Committing clang-format changes

* Shorten some Subfiling environment variable names

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-08-04 10:56:48 -07:00
Dana Robinson
a71534fcc2 Corrects some bad format strings in the tools (#1964) 2022-08-03 07:46:33 -05:00
Dana Robinson
fcf41b3cd6 Onion VFD (#1953)
* Onion VFD feature

* Fixes onion VFD errors with non-sec2 backing store VFDs

* Disables the onion VFD tests w/ ph5diff

* Disables non-sec2 VFDs as onion VFD backing stores

* Committing clang-format changes

* Formatted source

* Typo

* Adds onion VFD tools tests to CMake

* Fixes for v16 API compatibility

* Memset structs to avoid bad frees on errors

* H5Dwrite() calls now use H5T_NATIVE_INT as the memory type vs LE

* Properly decodes checksums on BE machines

* Be more careful about uint64_t to haddr_t/hsize_t conversions

* Another fix for BE data comparison

* Removed double underscores from onion constants

* Replace hard-coded onion header string w/ constant

* Fixes cleanup paths in H5FD__onion_ingest_history()

* Fixed use of size_t revision numbers

* Fix h5dump revision count format string

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-08-02 12:54:40 -07:00
Dana Robinson
ea13de1bb0 Removes the Win32 macro for strdup (#1960)
Windows has strdup() so there's no need for this. We already ignore all
the other "underscore" string functions.
2022-08-01 11:45:04 -07:00
Dana Robinson
ecab3d9c2a Removes Windows getlogin() equivalents (#1958)
This function is no longer used in the library
2022-08-01 09:55:54 -07:00
Dana Robinson
47fee5bfd7 Removes (void *) cast from memset on Windows (#1957)
The comments claim this fixes an MSVC warning. Let's see if that's
still true.
2022-08-01 09:55:36 -07:00
Dana Robinson
76bc0a77b1 Fixes clang warnings in H5Tconv.c (long) double macros (#1956) 2022-07-31 10:39:45 -07:00
Dana Robinson
9c21d38ab8 Fixes format string warnings in tselect w/ clang 14 (#1955) 2022-07-31 10:39:29 -07:00
Dana Robinson
0b3220636d Reverts the autogen.sh changes from e3800e1 (#1906) (#1954)
This is causing issues with the NAG Fortran compiler in our daily
testing due to -shared getting inappropriately added. Reverting while
we investigate.
2022-07-30 10:30:15 -07:00
Dana Robinson
8ed84bf4f0 Cleanup of mirror VFD test code (#1949) 2022-07-30 10:29:51 -07:00
Dana Robinson
ce4c41f89f Created a pull request template 2022-07-29 08:26:32 -07:00
Dana Robinson
ab948ff9f9 Update issue templates 2022-07-29 07:57:36 -07:00
Gerd Heber
33f6ade6e7 Fixes #1946 (#1947) 2022-07-29 05:20:55 -07:00
Dana Robinson
05077d3784 H5Tconv: fix H5T_CONV_INTERNAL_ checks (#1936)
Other locations check if it is defined and in cases where it is not
available, it is undefined, not 0.
2022-07-27 09:47:06 -07:00
Dana Robinson
21aca4f380 Misc clang production warning fixes (#1932)
* Misc clang production warning fixes

* Committing clang-format changes

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-07-26 17:42:40 -07:00
Allen Byrne
ae414872f5 Develop clang 13 format (#1933)
* Update format source to clang 13

* More format changes
2022-07-26 14:45:46 -07:00
jhendersonHDF
213eac2588 Subfiling VFD misc fixes (#1938)
* Remove generated file h5fuse.sh

* Link pthreads library when Subfiling VFD is built
2022-07-26 14:20:16 -07:00
Dana Robinson
96edaa304c Removes padding-right from Doxygen href tags (#1934) 2022-07-26 09:23:11 -07:00
Allen Byrne
0636395851 Implement improved CMake fortran module folder from GH#1411 (#1922)
* Implement improved CMake fortran module folder from GH#1411

* Update docs

* Fix whitespace

* Fix name case
2022-07-26 09:02:40 -07:00
Dana Robinson
b0240030f5 Updates uthash and makes some tweaks (#1928)
* Updates uthash from 2.1.0 to 2.3.0

* Moves uthash include and related to H5private.h

* Defines HASH_NONFATAL_OOM so that out-of-memory doesn't abort()

* Committing clang-format changes

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-07-25 10:38:57 -07:00
Dana Robinson
df1ce61f1b Switches the tagged metadata list from a skip list to a hash table (#1925) 2022-07-25 11:51:09 -05:00
jhendersonHDF
b49c284718 Avoid allocating chunk map for contiguous and compact dataset I/O (#1927) 2022-07-25 07:59:11 -07:00
Dana Robinson
a4a8e1d23f Removes the CodeQL action as it mainly outputs noise (#1926) 2022-07-23 09:06:40 -07:00
jhendersonHDF
7983a584a0 Switch to vector I/O for collective metadata writes (#1911)
* Switch to vector I/O for collective metadata writes

* Committing clang-format changes

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-07-22 13:03:44 -07:00
jhendersonHDF
27bb358f7a Subfiling VFD (#1883)
* Added support for vector I/O calls to the VFD layer, and
associated test code.  Note that this includes the optimization
to allow shortened sizes and types arrays to allow more space
efficient representations of vectors in which all entries are
of the same size and/or type.  See the Selection I/o RFC for
further details.

Tested serial and parallel, debug and production on Charis.
       serial and parallel debug only on Jelly.

* ran code formatter

quick serial build and test on jelly

* Add H5FD_read_selection() and H5FD_write_selection().  Currently only
translate to scalar calls.  Fix const buf in H5FD_write_vector().

* Format source

* Fix comments

* Add selection I/O to chunk code, used when: not using chunk cache, no
datatype conversion, no I/O filters, no page buffer, not using collective
I/O.  Requires global variable H5_use_selection_io_g be set to TRUE.
Implemented selection to vector I/O transaltion at the file driver
layer.

* Fix formatting unrelated to previous change to stop github from
complaining.

* Add full API support for selection I/O.  Add tests for this.

* Implement selection I/O for contiguous datasets.  Fix bug in selection
I/O translation.  Add const qualifiers to some internal selection I/O
routines to maintain const-correctness while avoiding memcpys.

* Added vector read / write support to the MPIO VFD, with associated
test code (see testpar/t_vfd.c).

Note that this implementation does NOT support vector entries of
size greater than 2 GB.  This must be repaired before release,
but it should be good enough for correctness testing.

As MPIO requires vector I/O requests to be sorted in increasing
address order, also added a vector sort utility in H5FDint.c  This
function is tested in passing by the MPIO vector I/O extension.

In passing, repaired a bug in size / type vector extension management
in H5FD_read/write_vector()

Tested parallel debug and production on charis and Jelly.

* Ran source code formatter

* Add support for independent parallel I/O with selection I/O.  Add
HDF5_USE_SELECTION_IO env var to control selection I/O (default off).

* Implement parallel collective support for selection I/O.

* Fix comments and run formatter.

* Update selection IO branch with develop (#1215)

Merged branch 'develop' into selection_io

* Sync with develop (#1262)

Updated the branch with develop changes.

* Implement big I/O support for vector I/O requests in the MPIO file
driver.

* Free arrays in H5FD__mpio_read/write_vector() as soon as they're not
needed, to cut down on memory usage during I/O.

* Address comments from code review.  Fix const warnings with
H5S_SEL_ITER_INIT().

* Committing clang-format changes

* Feature/subfiling (#1464)

* Initial checkin of merged sub-filing VFD.

Passes regression tests (debug/shared/paralle) on Jelly.
However, bugs and many compiler warnings remain -- not suitable
for merge to develop.

* Minor mods to src/H5FDsubfile_mpi.c to address errors reported by autogen.sh

* Code formatting run -- no test

* Merged my subfiling code fixes into the new selection_io_branch

* Forgot to add the FindMERCURY.cmake file. This will probably disappear soon

* attempting to make a more reliable subfile file open which doesn't return errors. For some unknown reason, the regular posix open will occasionally fail to create a subfile.  Some better error handling for file close has been added.

* added NULL option for H5FD_subfiling_config_t in H5Pset_fapl_subfiling (#1034)

* NULL option automatically stacks IOC VFD for subfiling and returns a valid fapl.
* added doxygen subfiling APIs

* Various fixes which allow the IOR benchmark to run correctly

* Lots of updates including the packaging up of the mercury_util source files to enable easier builds for our Benchmarking

* Interim checkin of selection_io_with_subfiling_vfd branch

    Moddified testpar/t_vfd.c to test the subfiling vfd with default configuration.
    Must update this code to run with a variety of configurations -- most particularly
    multiple IO concentrators, and stripe depth small enough to test the other IO
    concentrators.

    testpar/t_vfd.c exposed a large number of race condidtions -- symtoms included:

      1) Crashes (usually seg faults)

      2) Heap corruption

      3) Stack corruption

      4) Double frees of heap space

      5) Hangs

      6) Out of order execution of I/O requests / violations of POSIX semantics

      7) Swapped write requests

        Items 1 - 4 turned out to be primarily caused by file close issues --
    specifically, the main I/O concentrator thread and its pool of worker threads
    were not being shut down properly on file close.  Addressing this issue in
    combination with some other minor fixes seems to have addressed these issues.

        Items 5 & 6 appear to have been caused by issue of I/O requests to the
    thread pool in an order that did not maintain POSIX semantics.  A rewrite of
    the I/O request dispatch code appears to have solved these issues.

        Item 7 seems to have been caused by multiple write requests from a given
    rank being read by the wrong worker thread.  Code to issue "unique" tags for
    each write request via the ACK message appears to have cleaned this up.

        Note that the code is still in poor condtition.  A partial list of known
    defects includes:

     a) Race condiditon on file close that allows superblock writes to arrive
        at the I/O concentrator after it has been shutdown.  This defect is
        most evident when testpar/t_subfiling_vfd is run with 8 ranks.

     b) No error reporting from I/O concentrators -- must design and implement
        this.  For now, mostly just asserts, which suggests that it should be
        run in debug mode.

     c) Much commented out and/or un-used code.

     d) Code orgnaization

     e) Build system with bits of Mercury is awkward -- think of shifting
        to pthreads with our own thread pool code.

     f) Need to add native support for vector and selection I/O to the subfiling
        VFD.

     g) Need to review, and posibly rework configuration code.

     h) Need to store subfile configuration data in a superblock extension message,
        and add code to use this data on file open.

     i) Test code is inadequate -- expect more issues as it is extended.

        In particular, there is no unit test code for the I/O request dispatch code.
        While I think it is correct at present, we need test code to verify this.

        Similarly, we need to test with multiple I/O concentrators and much smaller
        stripe depth.

    My actual code changes were limited to:

          src/H5FDioc.c
          src/H5FDioc_threads.c
          src/H5FDsubfile_int.c
          src/H5FDsubfile_mpi.c
          src/H5FDsubfiling.c
          src/H5FDsubfiling.h
          src/H5FDsubfiling_priv.h
          testpar/t_subfiling_vfd.c
          testpar/t_vfd.c

    I'm not sure what is going on with the deletions in src/mercury/src/util.

    Tested parallel/debug on Charis and Jelly

* subfiling with selection IO (#1219)

Merged branch 'selection_io' into subfiling branch.

* Subfile name fixes (#1250)

* fixed subfiling naming convention, and added leading zero to rank names.

* Merge branch 'selection_io' into selection_io_with_subfiling_vfd (#1265)

* Added script to join subfiles into a single HDF5 file (#1350)

* Modified  H5FD__subfiling_query() to report that the sub-filing VFD supports MPI
This exposed issues with truncate and get EOF in the sub-filing VFD.
I believe I have addressed these issues (get EOF not as fully tested as it should be), howeer,
it exposed race conditions resulting in hangs.  As of this writing, I have not been able
to chase these down.

Note that the tests that expose these race conditions are in testpar/t_subfiling_vfd.c, and
are currently skipped.  Unskip these tests to reproduce the race conditions.

tested (to the extent possible) debug/parallel on charis and jelly.

* Committing clang-format changes

* fixed H5MM_free

Co-authored-by: mainzer <mainzer#hdfgroup.org>
Co-authored-by: jrmainzer <72230804+jrmainzer@users.noreply.github.com>
Co-authored-by: Richard Warren <Richard.Warren@hdfgroup.org>
Co-authored-by: Richard.Warren <richard.warren@jelly.ad.hdfgroup.org>
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>

* Move Subfiling VFD components into H5FDsubfiling source directory

* Update Autotools build and add H5_HAVE_SUBFILING_VFD macro to H5pubconf.h

* Tidy up CMake build of subfiling sources

* Merge branch 'develop' into feature/subfiling (#1539)

Merge branch 'develop' into feature/subfiling

* Add VFD interface version field to Subfiling and IOC VFDs

* Merge branch 'develop' into feature/subfiling (#1557)

Merge branch 'develop' into feature/subfiling

* Merge branch 'develop' into feature/subfiling (#1563)

Merge branch 'develop' into feature/subfiling

* Tidy up merge artifacts after rebase on develop

* Fix incorrect variable in mirror VFD utils CMake

* Ensure VFD values are always defined

* Add subfiling to CMake VFD_LIST if built

* Mark MPI I/O driver self-initialization global as static

* Add Subfiling VFD to predefined VFDs for HDF5_DRIVER env. variable

* Initial progress towards separating private vs. public subfiling code

* include libgen.h in t_vfd tests for correct dirname/basename

* Committing clang-format changes

* removed mercury option, included subfiling header path (#1577)

Added subfiling status to configure output, installed h5fuse.sh to build directory for use in future tests.

* added check for stdatomic.h (#1578)

* added check for stdatomic.h with subfiling
* added H5_HAVE_SUBFILING_VFD for cmake

* fix old-style-definition warning (#1582)

* fix old-style-definition warning

* added test for enable parallel with subfiling VFD (#1586)

Fails if subfiling VFD is not used with parallel support.

* Subfiling/IOC VFD fixes and tidying (#1619)

* Rename CMake option for Subfiling VFD to be consistent with other VFDs

* Miscellaneous Subfiling fixes

Add error message for unset MPI communicator

Support dynamic loading of subfiling VFD with default configuration

* Temporary fix for subfile name issue

* Added subfile checks (#1634)

* added subfile checks

* Feature/subfiling (#1655)

* Subfiling/IOC VFD cleanup

Fix misuse of MPI_COMM_WORLD in IOC VFD

Propagate Subfiling FAPL MPI settings down to IOC FAPL in default
configuration case

Cleanup IOC VFD debugging code

Change sprintf to snprintf in a few places

* Major work on separating Subfiling and IOC VFDs from each other

* Re-write async_completion func to not overuse stack

* Replace usage of MPI_COMM_WORLD with file's actual MPI communicator

* Refactor H5FDsubfile_mpi.c

* Remove empty file H5FDsubfile_mpi.c

* Separate IOC VFD errors to its own error stack

* Committing clang-format changes

* Remove H5TRACE macros from H5FDioc.c

* Integrate H5FDioc_threads.c with IOC error stack

* Fix for subfile name generation

Use number of I/O concentrators from existing subfiling configuration file, if one exists

* Add temporary barrier in "Get EOF" operation to prevent races on EOF

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>

* Fix for retrieval of machine Host ID

* Default to MPI_COMM_WORLD if no MPI params set

* added libs rt and pthreads (#1673)

* added libs rt and pthreads

* Feature/subfiling (#1689)

* More tidying of IOC VFD and subfiling debug code

* Remove old unused log file code

* Clear FID from active file map on failure

* Fix bug in generation of subfile names when truncating file

* Change subfile names to start from 1 instead of 0

* Use long long for user-specified stripe size from environment variable

* Skip 0-sized I/Os in low-level IOC I/O routines

* Don't update EOF on read

* Convert printed warning about data size mismatch to assertion

* Don't add base file address to I/O addresses twice

Base address should already be applied as part of H5FDwrite/read_vector calls

* Account for 0-sized I/O vector entries in subfile write/read functions

* Rewrite init_indep_io for clarity

* Correction for IOC wraparound calculations

* Some corrections to iovec calculations

* Remove temporary barrier on EOF retrieval

* Complete work request queue entry on error instead of skipping over

* Account for stripe size wraparound for sf_col_offset calculation

* Committing clang-format changes

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>

* Re-write and fix bugs in I/O vector filling routines (#1703)

* Rewrite I/O vector filling routines for clarity

* Fix bug with iovec_fill_last when last I/O size is 0

* added subfiling_dir line read (#1714)

* added subfiling_dir line read and use it
* shellcheck fixes

* I/O request dispatch logic update (#1731)

Short-circuit I/O request dispatch when head of I/O queue is an
in-progress get EOF or truncate operation. This prevents an issue where
a write operation can be dispatched alongside a get EOF/truncate
operation, whereas all I/O requests are supposed to be ineligible for
dispatch until the get EOF/truncate is completed

* h5fuse.sh.in clean-up (#1757)

* Added command-line options

* Committing clang-format changes

* Align with changes from develop

* Mimic MPI I/O VFD for EOF handling

* Initialize context_id field for work request objects

* Use logfile for some debugging information

* Use atomic store to set IOC ready flag

* Use separate communicator for sending file EOF data

Minor IOC cleanup

* Use H5_subfile_fid_to_context to get context ID for file in Subfiling
VFD

* IOVEC calculation fixes

* Updates for debugging code

* Minor fixes for threaded code

* Committing clang-format changes

* Use separate MPI communicator for barrier operations

* Committing clang-format changes

* Rewrite EOF routine to use nonblocking MPI communication

* Committing clang-format changes

* Always dispatch I/O work requests in IOC main loop

* Return distinct MPI communicator to library when requested

* Minor warning cleanup

* Committing clang-format changes

* Generate h5fuse.sh from h5fuse.sh.in in CMake

* Send truncate messages to correct IOC rank

* Committing clang-format changes

* Miscellaneous cleanup

Post some MPI receives before sends

Free some duplicated MPI communicator/Info objects

Remove unnecessary extra MPI_Barrier

* Warning cleanup

* Fix for leaked MPI communicator

* Retrieve file EOF on single rank and bcast it

* Fixes for a few failure paths

* Cleanup of IOC file opens

* Committing clang-format changes

* Use plan MPI_Send for send of EOF messages

* Always check MPI thread support level during Subfiling init

* Committing clang-format changes

* Handle a hang on failure when IOCs can't open subfiles

* Committing clang-format changes

* Refactor file open status consensus check

* Committing clang-format changes

* Fix for MPI_Comm_free being called after MPI_Finalize

* Fix VFD test by setting MPI params before setting subfiling on FAPL

* Update Subfiling VFD error handling and error stack usage

* Improvements for Subfiling logfiles

* Remove prototypes for currently unused routines

* Disable I/O queue stat collecting by default

* Remove unused serialization mutex variable

* Update VFD testing to take subfiling VFD into account

* Fix usage of global subfiling application layout object

* Minor fixes for failure pathways

* Keep track of the number of failures in an IOC I/O queue

* Make sure not to exceed MPI_TAG_UB value for data communication messages

* Committing clang-format changes

* Update for rename of some H5FD 'ctl' opcodes

* Always include Subfiling's public header files in hdf5.h

* Remove old unused code and comments

* Implement support for per-file I/O queues

Allows the subfiling VFD to have multiple HDF5 files open simultaneously

* Use simple MPI_Iprobe over unnecessary MPI_Improbe

* Committing clang-format changes

* Update HDF5 testing to query driver for H5FD_FEAT_DEFAULT_VFD_COMPATIBLE
flag

* Fix a few bugs related to file multi-opens

* Avoid calling MPI routines if subfiling gets reinitialized

* Fix issue when files are closed in a random order

* Update HDF5 testing to query VFD for "using MPI" feature flag

* Register atexit handler in subfiling VFD to call MPI_Finalize after HDF5
closes

* Fail for collective I/O requests until support is implemented

* Correct VOL test function prototypes

* Minor cleanup of old code and comments

* Update mercury dependency

* Cleanup of subfiling configuration structure

* Committing clang-format changes

* Build system updates for Subfiling VFD

* Fix possible hang on failure in t_vfd tests caused by mismatched
MPI_Barrier calls

* Copy subfiling IOC fapl in "fapl get" method

* Mirror subfiling superblock writes to stub file for legacy POSIX-y HDF5
applications

* Allow collective I/O for MPI_BYTE types and rank 0 bcast strategy

* Committing clang-format changes

* Use different scheme for subfiling write message MPI tag calculations

* Committing clang-format changes

* Avoid performing fstat calls on all MPI ranks

* Add MPI_Barrier before finalizing IOC threads

* Use try_lock in I/O queue dispatch to minimize contention from worker threads

* Use simple Waitall for nonblocking I/O waits

* Add configurable IOC main thread delay and try_lock option to I/O queue dispatch

* Fix bug that could cause serialization of non-overlapping I/O requests

* Temporarily treat collective subfiling vector I/O calls as independent

* Removed unused mercury bits

* Add stubs for subfiling and IOC file delete callback

* Update VFD testing for Subfiling VFD

* Work around HDF5 metadata cache bug for Subfiling VFD when MPI Comm size
= 1

* Committing clang-format changes

Co-authored-by: mainzer <mainzer#hdfgroup.org>
Co-authored-by: Neil Fortner <nfortne2@hdfgroup.org>
Co-authored-by: Scot Breitenfeld <brtnfld@hdfgroup.org>
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: jrmainzer <72230804+jrmainzer@users.noreply.github.com>
Co-authored-by: Richard Warren <Richard.Warren@hdfgroup.org>
Co-authored-by: Richard.Warren <richard.warren@jelly.ad.hdfgroup.org>
2022-07-22 13:03:12 -07:00
Dana Robinson
32caa567a2 Updates the release schedule (#1923)
1.13.2 moved to August
Subfiling moved to 1.13.2 from 1.13.3
2022-07-22 05:12:27 -07:00
Dana Robinson
1cfca8fd93 Fixes an incorrect brief description for H5Dopen2() (#1920) 2022-07-21 06:39:05 -07:00
Dana Robinson
eb2cf08bac Fix for MSVC compile failures in h5dumpgentest due to VLA use (#1916) 2022-07-21 01:34:41 -07:00
Dana Robinson
363e3ecef8 Removes the ability to build h5perf and h5perf_serial in standalone mode (#1897)
This feature has been broken for some time and lacks a clear use case.
2022-07-20 05:38:07 -07:00
Neil Fortner
4461678fb5 Fix bug in swmr.c introduced with recent merge (double_t) (#1913)
* Fix HDFFV-11308 - dataset access properties disappear when using
H5Fstart_swmr_write.

* Committing clang-format changes

* Add test for H5Fstart_swmr_write() persisting DAPL settings.  Fix bugs
in the library exposed by this test.

* Committing clang-format changes

* Replace accidental use of double_t in swmr.c with double.

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-07-19 14:19:02 -07:00
Dana Robinson
96c4e0521c Marks H5Fformat_convert as internal in Doxygen (#1910) 2022-07-19 09:30:07 -07:00
Dana Robinson
8225778fae Updates H5Zdevelop.h with better memory alloc/free advice (#1909)
* Updates H5Zdevelop.h with better memory alloc/free advice

Addresses GitHub #348

* Updates the filter memory calloc/free docs
2022-07-19 08:08:20 -07:00
Neil Fortner
5c39998224 Persist dataset access properties when using H5Fstart_swmr_write (#1862)
* Fix HDFFV-11308 - dataset access properties disappear when using
H5Fstart_swmr_write.

* Committing clang-format changes

* Add test for H5Fstart_swmr_write() persisting DAPL settings.  Fix bugs
in the library exposed by this test.

* Committing clang-format changes

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-07-18 18:15:48 -07:00
Dana Robinson
e3800e1235 Greatly simplifies Autotools bits of autogen.sh (#1906) 2022-07-18 14:23:29 -05:00
jhendersonHDF
43f052352c Remove perf tool from CMakeTests file (#1907) 2022-07-18 14:23:10 -05:00
jhendersonHDF
ba5385ffc2 Fix some hard-coded MPI I/O VFD checks (#1898) 2022-07-18 10:32:09 -07:00
Scot Breitenfeld
69ddcd02f1 Removed compiler messages for language elements that are not standard in Fortran 2003, #1344 (#1905) 2022-07-18 09:42:56 -07:00
Dana Robinson
f4c9931abd Updates comments in the gcc 4.8 warnings files (#1902) 2022-07-18 07:36:26 -07:00
Dana Robinson
079df9d216 Fixes a stack overflow in the h5dump test generator (#1903)
* Fixes a stack overflow in the h5dump test generator

The opaque type size was declared to be the size of the "buffer of two
opaque elements", causing a memcpy call in H5Dwrite to read outside
the buffer, dumping garbage into the file.

Note that this only affected the test generator and not h5dump itself.

* Committing clang-format changes

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-07-18 07:35:43 -07:00
Dana Robinson
08b797de73 Fixes warnings when the deflate filter is not built (#1904)
* Fixes warnings when the deflate filter is not built

* Committing clang-format changes

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-07-18 07:35:21 -07:00
Dana Robinson
9b53b2f6ca Adds Autotools dependencies to CodeQL workflow 2022-07-17 04:14:59 -07:00
Dana Robinson
c9785cc5fc Set up CodeQL analysis for develop
This will be reverted if it causes problems
2022-07-17 04:09:40 -07:00
Dana Robinson
8c6a3ce1d7 Removes the small perf tool (#1896)
* Removes the small perf tool

This tool doesn't really do anything special and installed, which
conflicts with gnu's perf tool.

* Adds suggestions from code review
2022-07-16 22:21:18 -07:00
Dana Robinson
65a24325af Updates branches-explained.md (#1900) 2022-07-15 16:26:50 -07:00
Dana Robinson
7c9e725134 Create CODE_OF_CONDUCT.md
Taken directly from GitHub's suggested CoC document. We may modify this in the future.
2022-07-14 09:37:57 -07:00
Allen Byrne
6be07134de Add utility JNI function for 1.10 style references (#1888)
* Add utility JNI function for 1.10 style references

* Clarify text

* Correct signature

* Committing clang-format changes

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-07-14 09:33:35 -07:00
vchoi-hdfgroup
c835d16a59 Remove superfluous dot from hl doxygen. (#1891)
Co-authored-by: vchoi <vchoi@jelly.ad.hdfgroup.org>
2022-07-14 09:32:09 -07:00
Allen Byrne
385ae6ac5b Eliminate unnecessary error output (#1879)
* Eliminate unnecessary error output

* Committing clang-format changes

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-07-14 09:07:53 -07:00
Dana Robinson
b0d9fa058a Fix for a tools compile issue when deprecated symbols are disabled (#1884)
* Fix for a tools compile issue when deprecated symbols are disabled

Introduced in #1811, also uses VOL token instead of addr

* Fix for similar compile issues in java when deprecated symbols are
disabled.

* Committing clang-format changes

Co-authored-by: Larry Knox <lrknox@hdfgroup.org>
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-07-13 08:53:00 -07:00
raylu-hdf
b2363a8195 H5Oflush fails for parallel (#1876)
* H5Oflush causes H5Fclose to trigger an assertion failure in metadata cache for parallel.  This commit makes sure H5Oflush fails for parallel until this problem is solved in the future.

* Committing clang-format changes

* Changed the use of H5F_get_driver_id to H5F_HAS_FEATURE.

Co-authored-by: songyulu <songyulu@jelly.ad.hdfgroup.org>
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-07-12 08:55:34 -07:00
Dana Robinson
c62b026609 Moves -Wstrict-overflow=5 to the developer warnings (#1878) 2022-07-11 18:25:57 -07:00
Dana Robinson
af014fa61c Removes definitions for (U)LLONG_MAX and (S)SIZET_MAX (#1877)
LLONG_MAX and ULLONG_MAX are defined in limits.h in C99. SIZET_MAX
should be SIZE_MAX, which has been around forever. SSIZET_MAX should
be SSIZE_MAX, which is defined whereever ssize_t is found. I've kept
the definition for SSIZE_MAX (renamed from SSIZET_MAX) for platforms
where ssize_T is not present (e.g., Windows).
2022-07-11 15:48:51 -07:00
Dana Robinson
dae6064103 Fixes for warnings identified by MSVC (#1874)
* Fixes for warnings identified by MSVC

* Committing clang-format changes

* Moves the casts in H5Binternal.c to the other side

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-07-11 14:01:08 -07:00
Allen Byrne
b9d1d66ab8 Develop HDFFV-11310 (#1811)
* Rework java vl check in read/write. Handle old refs in h5dump

* Committing clang-format changes

* Java changes allow default VL reads

* Fix JNI utility for old refs

* HDFFV-11310 - implement vlen read/write for atomic types.

* format check fix

* Mostly format fixes

* More format issues

* Two format changes

* Use JNI names for sizeof

* format change

* fix size typo

* Change to older method to initialize list

* remove unused var

* format fix

* switch writeVL functions to use datatype instead of java type

* Add VL option to generic read/write check

* Correct function name typo

* Add JIRA issue

* Correct note to match change in code.

* HDFFV-11318 add VL references as byte arrays

* Add release note and format changes

* Another format update

* Fix unreleased allocations

* Fix format

* format correction

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-07-11 13:59:52 -07:00
Houjun Tang
663321087a Support for UnifyFS with MPI_File_sync (#1801)
* Initial implementation for supporting UnifyFS in HDF5 with MPI_File_sync after write

* Committing clang-format changes

* Fix format

* Fix env variable and return value check

* Fix flag retrieve

* Fix issues with getting/setting the flag

* Fix merge conflicts

* Update

* Committing clang-format changes

* Update based on suggestions

* Committing clang-format changes

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-07-11 13:59:19 -07:00
Dana Robinson
63ce6839b5 Reduce -Wstrict-overflow= from 5 to 2 (#1872)
The signal-to-noise ratio of the higher warning level is very low
and the noise obscures things we should fix
2022-07-11 11:26:03 -07:00
Dana Robinson
e269f90364 Misc clang warning fixes (#1869)
* Minor clang warning fixes in src and test

* Fixes clang warnings in high-level library

* clang format-nonliteral warning fixes

* Committing clang-format changes

* Fixed int -> float clang cast warnings in h5diff

* Quiets some warnings in flex/bison generated code

* Suppress overlong string warning for libinfo on clang

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-07-11 10:28:02 -07:00
Dana Robinson
0412d3f292 Fixes for production mode gcc warnings (#1873)
* Fixes for production mode gcc warnings

With the strict-overflow changes, this brings the number of warnings
in the C library w/ gcc 12 to zero.

* Fix typo

* Committing clang-format changes

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-07-11 10:27:40 -07:00
Dana Robinson
fa7caf8435 Fixes C++ sign-conversion warnings w/ clang 14 (#1870)
* Fixes sign-conversion warnings w/ clang 14

* Committing clang-format changes

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-07-11 08:59:51 -07:00
Dana Robinson
f599e2ac7f Adds the mirror and direct VFDs to GitHub actions (#1871)
Both Autotools and CMake
2022-07-11 08:58:06 -07:00
Dana Robinson
460ee73a64 Adds format attribute to additional functions (#1868)
* Adds format attribute to (s|p)io_perf code

* Added gcc format attribute to additional test code

* Committing clang-format changes

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-07-11 08:29:46 -07:00
Dana Robinson
be5de999a9 Adds explicit indices to drivernames array in the tools (#1867)
Will help keep the drivernames and driver_idx enum in sync.
2022-07-11 08:28:52 -07:00
Dana Robinson
e0c2443179 Adds the malloc attribute to appropriate functions (gcc only) (#1866) 2022-07-11 08:27:44 -07:00
Dana Robinson
ff089f8e36 Updates the patterns in Doxyfile.in to accept H5*develop.h (#1865) 2022-07-11 06:35:46 -07:00
Gerd Heber
7e1bde1cb5 Merge pull request #1857 from gheber/fix-doxy-warnings-and-cosmetics
Fix Doxygen warnings and cosmetics
2022-07-08 20:16:43 -05:00
jhendersonHDF
aa688c68c4 Convert assertion on (possibly corrupt) file contents to normal error check (#1861)
* Convert assertion on (possibly corrupt) file contents to normal error check

* Committing clang-format changes

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-07-08 13:04:23 -07:00
Dana Robinson
a45ade8886 Fix for memory allocation issue identified by fuzzer (#732) (#1860)
GitHub issue #732 claims that mallocing a particular buffer can
trigger undefined behavior and that callocing the buffer fixes
the issue.

I did not confirm this, but the fix is trivial and better anyway.
2022-07-08 12:10:29 -07:00
Gerd Heber
6bc41fb11c Resolve Allen's comment. 2022-07-08 12:48:48 -05:00
Gerd Heber
74c80f0bbf Fix Doxygen warnings 2022-07-08 06:08:46 -05:00
Gerd Heber
52d6626254 Cosmetic changes to RM front 2022-07-08 06:06:47 -05:00
Gerd Heber
fe413fc6ff Updated vfd swmr and reference rfcs (#1854)
* Add PDFs

* Update RFC table
2022-07-07 15:59:48 -07:00
Dana Robinson
0c0d3bf736 Suppress the "obsolete" category of Autoconf warnings (#1853)
Very new versions of Autoconf complain about our Java macros. Since they
work well enough and there is no obvious upgrade path, we're suppressing
the category for now.
2022-07-06 14:56:26 -07:00
Dana Robinson
424bbd16eb Updates messages in cache sanity checks (#1851)
Previous messages were numbered, which was a maintenance burden,
and non-specific
2022-07-06 13:12:48 -07:00
Dana Robinson
a7f1ce46b9 Minor tweaks to the test_swmr.sh script (#1852) 2022-07-06 13:12:31 -07:00
Gerd Heber
9cd0d042f0 Update Doxyfile.in (#1849) 2022-07-06 13:01:36 -07:00
jhendersonHDF
8937054d5a Fix invalid comment about character encoding in H5Fint.c (#1845) 2022-07-01 15:49:23 -07:00
Dana Robinson
6aa7aeeda4 Fixes a bug in h5perf that causes file open failures (#1846)
When the filename was flipped from being a static array to being
dynamically allocated, the sizeof(filename) call wasn't updated.
This always returns the size of the pointer, truncating the
filename.
2022-07-01 12:53:45 -07:00
vchoi-hdfgroup
9e97a22b8b Add doxygen for high level modules. (#1839)
* Add doxygen for high level modules.

* Committing clang-format changes

* Correct spelling based on spelling check.

* Committing clang-format changes

Co-authored-by: vchoi <vchoi@jelly.ad.hdfgroup.org>
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-07-01 08:42:15 -07:00
Dana Robinson
3ed53d17fb Removes workaround for platforms that lack C99 stuct initializers (#1842) 2022-06-30 19:50:42 -07:00
Dana Robinson
41526f68f3 Adds a -Werror debug Autotools test and updates build modes (#1833)
* Adds a -Werror debug Autotools test and updates build modes

* Un-excludes the workflow files

* Strip out -Werror from CFLAGS when running configure tests

This causes spurious test failures when the configuration test
programs raise warnings.
2022-06-30 15:38:18 -07:00
Dana Robinson
015240e790 Minor configure comment tweaks from autoupdate (#1838)
The autoupdate script identified some cruft that was unchanged
in the comments
2022-06-30 12:26:38 -07:00
Dana Robinson
552833213c Fix for gcc-12 warning about string truncation in H5Opline.c (#1835) 2022-06-30 07:47:34 -07:00
Dana Robinson
72db748dd9 Updates the MinGW configure.ac check for the Winsock library (#1837)
Ubuntu 22.04 complains about AC_HAVE_LIBRARY being deprecated. This
updates the macro to AC_CHECK_LIB, where the specified function
is GetUserName().

This change only affects MinGW
2022-06-30 06:59:03 -07:00
Dana Robinson
89fae896ae Set Autotools build mode correctly in GitHub workflows (#1834)
* Sets build mode correctly w/ Autotools

* Updates GitHub gcc and installs OpenMPI
2022-06-30 06:58:37 -07:00
Dana Robinson
03ed7a3d79 Fixes a few minor parallel warnings (#1832) 2022-06-29 13:02:38 -07:00
Scot Breitenfeld
cb424b2c45 remove superfluous initialization, fixes issue with Cray compiler (Crusher) (#1828) 2022-06-29 10:44:21 -05:00
Dana Robinson
9e00089307 Quiets const warnings (#1831) 2022-06-29 10:41:45 -05:00
Dana Robinson
57a850f897 Documents Windows badness in H5Pget_external() (#1821)
* Documents Windows badness in H5Pget_external()

* Added a cast for off_t
2022-06-24 06:14:29 -07:00
Dana Robinson
249008d4ce Converts testhdf5 macros to h5test macros in chunk_info.c (#1820)
The two macro schemes were not designed to work together. Also
quiets some MSVC warnings about comparing pointers and integers.
2022-06-23 09:11:30 -07:00
Dana Robinson
1a0fe1f6b7 Set a constant in H5SM to UINT_MAX instead of -1U (#1822) 2022-06-23 09:11:04 -07:00
Dana Robinson
896304d2da Work-around for MSVC issue with flex-generated code (#1823) 2022-06-23 07:45:47 -07:00
Dana Robinson
9e55d51f46 Quiets size warning in large library setting string (#1818)
* Quiets size warning in large library setting string

If the size of this string is a problem, people can build with the
embedded library info disabled.

* Committing clang-format changes

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-06-22 12:44:34 -07:00
Sean McBride
c064d3481b sprintf to snprintf (#1815)
* Straightforward conversion of sprintf to the safer snprintf

* Trickier conversion of sprintf to safer snprintf

This involved minor changes to private function signatures to take the size of the buffer.

* Committing clang-format changes

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-06-22 11:58:18 -07:00
Dana Robinson
d6f05069c1 Adds notes about off_t sizes on Windows (#1817) 2022-06-22 11:21:51 -07:00
Dana Robinson
8bfed8aae4 Converts __int64 to LONGLONG in LARGE_INTEGER union members on Windows (#1816) 2022-06-22 10:48:51 -07:00
Sean McBride
8b2e7b32b5 Various warning fixes (#1812)
* Fixed -Wreserved-id-macro warnings from header include guards

* Removed all __int64 and LL suffix stuff now that C99 is minimum requirement

* Rename `H5FD_CTL__` to `H5FD_CTL_` to fix -Wreserved-id-macro warnings

Double underscore is reserved in C++ and this public header should be C++ compatible.

* Never define __STDC_FORMAT_MACROS anymore

Defining it causes a -Wreserved-id-macro.

Happily, according to the C++11 standard:

"The macros defined by <stdint> are provided unconditionally. In particular, the symbols __STDC_LIMIT_MACROS and __STDC_CONSTANT_MACROS (mentioned in C99 footnotes 219, 220, and 222) play no role in C++."

https://cplusplus.github.io/LWG/issue984

So looks like it's not necessary to define it with reasonably new toolchains.

* Fixed some -Wunused-macros warnings, removed dead code

* Fixed all -Wdouble-promotion warnings in C++ files

* Fixed remaining -Wsuggest-destructor-override warnings

* Committing clang-format changes

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-06-22 09:16:30 -07:00
Neil Fortner
55f4cc0caa Fix bugs in parallel selection I/O (#1803) 2022-06-09 16:01:47 -05:00
Allen Byrne
8b54201509 Develop sync (#1793)
* Synch update

* Branch sync changes
2022-06-09 08:35:33 -05:00
Dana Robinson
acb6e2da30 Updates the release schedule (#1796) 2022-06-06 09:31:41 -05:00
Allen Byrne
a124f02f2c Update windows VS2019 and fix comments (#1781) 2022-05-20 16:41:39 -07:00
Larry Knox
ca9bbc1908 Remove extra ')'. (#1779)
Add configure help text for TestExpress.
2022-05-19 09:49:08 -05:00
Allen Byrne
081b3902bf Set default level to minimum time (#1722) 2022-05-17 11:54:05 -05:00
Allen Byrne
e7b184e79e Replace obsolete docver arg with arg to supply branch name (#1771) 2022-05-13 18:00:46 -05:00
Dana Robinson
a30342e1d7 Allows parallel + thread-safe combination in Autotools and CMake (#1760) 2022-05-12 21:53:45 -05:00
Allen Byrne
b9dc83934d Use windows ENV var for default install dir setting (#1763)
* Use windows ENV var for default install dir setting

* Change variable name
2022-05-12 09:03:32 -05:00
Dana Robinson
d0ea8a1d8c Revert "Cleanup and shellcheck fixes in the SWMR test script (#1741)" (#1758)
This reverts commit cea0dc4565.
2022-05-10 09:42:22 -07:00
David Young
110f6a1c7d Add a workaround for buggy PGI C Compiler version 19.10, which quits (#1705)
with the unhelpful and misleading error message `PGC-S-0053-Illegal use
of void type` when I put a `static` qualifier on my tables.
2022-05-07 19:04:33 -07:00
Allen Byrne
01b7165df5 Use git command to get branch name (#1748) 2022-05-07 18:19:21 -05:00
Dana Robinson
cea0dc4565 Cleanup and shellcheck fixes in the SWMR test script (#1741) 2022-05-07 12:52:41 -07:00
David Young
779ab44aa0 Re-promote some GNU warnings to errors (#1508)
* Promote some GCC warnings back to errors and deal with build breakage.
I tested configuring and building with GCC 8.3.0 with

`.../configure --prefix=$HOME/wrk/install/manydsets --enable-build-mode=production --enable-symbols=-gdwarf-4 --enable-warnings-as-errors --enable-java --enable-hl --enable-fortran --enable-cxx --enable-mirror-vfd --enable-ros3-vfd --enable-direct-vfd`

and with the same options but `--enable-build-mode=debug`.

* Promote -Wrestrict to -Werror=restrict to help catch overlapping
arguments to strcpy, memcpy, et cetera, at compile time.

* NFCI: sort lines.

* Committing clang-format changes

* NFCI: remove whitespace at EOL.

* Re-use temporary variable `shared`.

* Remove merge oopsie.

* Mention that no op codes are understood per review comment.

* Change this back to the develop branch's way, since this change isn't
integral to the PR.

* Committing clang-format changes

* NFCI: reduce differences with `develop` branch in the hope that that
also kicks off CI.

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Dana Robinson <43805+derobins@users.noreply.github.com>
2022-05-06 16:26:48 -07:00
Allen Byrne
ca737ece9a Change order of naming commands (#1742) 2022-05-06 13:42:05 -07:00
Dana Robinson
1b413fe61a Minor things noticed while merging to 1.10 (#1739)
* Minor things noticed while merging to 1.10

* Set HDF5_DRIVER back in string
2022-05-06 11:06:52 -07:00
jhendersonHDF
13985a7f52 Fixes for S3 and HDFS VFDs with tools (#1740) 2022-05-06 11:06:07 -07:00
jhendersonHDF
cdf837d0a1 Fix a few Clang sanitizer warnings (#1727) 2022-05-05 13:32:49 -07:00
Scot Breitenfeld
c4cd250408 changes parallel tests to .F90 ext. and fixes the CALL check strings (#1725) 2022-05-04 16:29:49 -07:00
Dana Robinson
838d050a63 h5test.h testing macros get enclosed in do..while loops (#1721)
* h5test.h testing macros get enclosed in do..while loops

* Adds missed macro in hl C++ code

* Fixes macro in Windows code
2022-05-04 08:49:01 -07:00
Dana Robinson
19a59c29b9 Fixes a bug where t_cache fails due to a string size being too small (#1720)
* Fixes a bug where t_cache fails due to a string size being too small

Recent warning reductions led to an incorrect string size being passed
to h5_fileaccess, causing the test to silently fail. In addition to
fixing the bug, the test will now fail noisily on setup failures.

* Updates the t_cache test to fail noisily on setup errors
2022-05-04 07:53:13 -07:00
Dana Robinson
08861aa903 Fixes unused/unset variable warnings from aocc (#1712)
* Fixes unused/unset variable warnings from aocc

* Committing clang-format changes

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-05-02 19:25:57 -05:00
Dana Robinson
dad94a100e Updates warnhist script to deal with AMD Optimizing Compiler messages (#1713) 2022-05-02 19:22:07 -05:00
Ben Boeckel
b3ef8044cf test/dt_arith: use isnan instead of self comparison (#1709)
It is more obvious what is being asked this way.

Also include a `clang-format` fix.
2022-05-02 19:20:51 -05:00
jhendersonHDF
2ba7a01bff Fix some const cast and stack/static object size warnings (#1700)
* Fix various warnings

* Move HDfree_const to H5private.h for wider use

* Print output from all ranks in parallel tests on allocation failure

* Move const pointer freeing macro to h5test.h for now
2022-05-01 15:54:41 -05:00
jhendersonHDF
5eba258d90 Fix object size warnings in cache.c test (#1701) 2022-05-01 15:54:22 -05:00
jhendersonHDF
7e586e0e44 Fix SWMR/refresh bug hidden by library free lists (#1702) 2022-04-30 08:35:45 -05:00
David Young
c4d70e3571 Be a bit safer with signed arithmetic, thus quieting some signed-overflow warnings from GCC (#1706)
* Avoid a signed overflow: check the range of `entry_ptr->age` before
increasing it instead of increasing it and then checking the range.
This quiets a GCC warning.

* Avoid the potential for signed overflow by rewriting expressions
`MAX(0, fwidth - n)` as `MAX(n, fwidth) - n` for various `n`.
This change quiets some GCC warnings.

* Change some local variables that cannot take sensible negative values
from signed to unsigned.  This quiets GCC warnings about potential
signed overflow.

* In a handful of instances, check the range of a signed integer before
increasing/decreasing it, just in case the increase/decrease overflows.
This quiets a handful of GCC signed-overflow warnings.

* Committing clang-format changes

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-04-29 22:29:20 -05:00
Dana Robinson
ffd311cf36 Fixes stack size warnings in set_extent test (#1698) 2022-04-28 16:04:23 -07:00
Dana Robinson
180a7f9c71 Fixes stack size warnings in dtransform (#1696) 2022-04-26 21:52:00 -05:00
Dana Robinson
0ea3be4dc1 Fixes stack size warnings in ntypes (#1695) 2022-04-26 13:18:52 -05:00
jhendersonHDF
d7565f316d Address some warnings from casting away of const (#1684) 2022-04-26 13:18:18 -05:00
Quincey Koziol
417ee1393b Correct concurrency bugs when running tests, along with a bugfix & small warning cleanup (#1683)
* Correct concurrency bugs when running tests, along with a bugfix & small
warning cleanup.

* Committing clang-format changes

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-04-26 11:07:15 -05:00
Dana Robinson
0fffb26c01 Minor things noticed while bringing VFD SWMR in line with develop (#1691) 2022-04-25 16:29:00 -05:00
Dana Robinson
0fba6cbcda Fixes stack size warnings in tcoords.c (#1688) 2022-04-25 12:17:48 -05:00
Dana Robinson
336ead720e Clean stack size warnings in sio_engine (#1687) 2022-04-25 12:17:33 -05:00
jhendersonHDF
2b323159a7 Warnings fixes (#1680) 2022-04-25 12:16:18 -05:00
Quincey Koziol
c8b87fa320 Improve handling of copying of dynamic libraries and clean them up after (#1681)
test finishes.
2022-04-24 09:59:12 -05:00
David Young
a6876a9745 Replace H5detect's build-time detection of C99 integer properties with a (#1400)
* Replace H5detect's build-time detection of C99 integer properties with a
table-driven routine, `H5T__init_native_int()`, that is run at library
initialization time.
2022-04-22 08:52:01 -05:00
Dana Robinson
ac9c21dd6f Changes Github action hdf5 dev CI to PR hdf5 dev CI (#1666)
So the PR action name is not the same as the one in main.yml
2022-04-20 18:43:07 -05:00
Dana Robinson
2fcfc42d67 Adds paths-ignore to the Github pull request workflow (#1663) 2022-04-20 18:42:25 -05:00
Dana Robinson
822fa43b12 Adds the -q flag to all swmr test programs, quieting noisy output (#1665) 2022-04-20 14:51:52 -07:00
Scot Breitenfeld
823bc7381c added HDFFV-11306 entry (#1662) 2022-04-19 16:31:09 -07:00
Allen Byrne
03c3a54695 Develop clang format java (#1653) 2022-04-19 13:08:09 -05:00
Scot Breitenfeld
32ef796e47 HDFFV-11306 Fixed (#1657)
* HDFFV-11306,
 * Fixed it so both h5open_f and h5close_f can be called multiple times.
 * Fixed an issue with open objects remaining after h5close_f was called.
 * Added additional tests.

* comments clean-up
2022-04-19 13:05:54 -05:00
Dana Robinson
14da68ebff Removes HDF Group paths, adds shellcheck fixes (#1656)
For more information:
  https://www.shellcheck.net/wiki/SC2086 -- Double quote to prevent globbing ...
  https://www.shellcheck.net/wiki/SC2230 -- which is non-standard. Use builti...
  https://www.shellcheck.net/wiki/SC2006 -- Use $(...) notation instead of le...
2022-04-19 07:44:41 -05:00
Quincey Koziol
f875a73711 Mirror vfd test fixes (#1629)
* Use the FAPL that was created earlier in the test (and delete an unused
variable).   This allows 'make check-vfd' to pass with --enable-mirror-vfd.

* Check for testing directory before creating, to avoid warning from bash.
Clean out .libs directory before re-using it (after a failed test), to
remove any files generated by libtool.

* Committing clang-format changes

* Increment error count on failed file open and skip tests for VFDs that need
modified filenames.

* Skip the mirror VFD for 'make check-vfd' - the mirror VFD requires networking
configuration parameters and can't be provided for an automated test that
is configured with an environment variable.

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-04-18 15:28:20 -05:00
Dana Robinson
17be6c2574 Cleans up some HL library code that inappropriately returns htri_t values cast to herr_t (#1651)
* Cleans up some HL library code that inappropriately returns
htri_t values cast to herr_t

* Committing clang-format changes

* Formatted source

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-04-18 07:29:00 -05:00
David Young
a80897ee49 Remove H5_NO_ALIGNMENT_RESTRICTIONS (#1426)
* Do not conditionally compile code that uses a pointer dereference
and assignment to copy a potentially unaligned variable to aligned
automatic storage, or vice versa.  Instead, always use naked `memcpy(3)`s.
Disassembling the generated code reveals that the `memcpy(3)`s optimize
(`-O3`) to a single `mov` instruction for x86_64, which is not strict
about alignment.

This change reduces the size of code and scripts by 143 lines, eases
our way to cross-compilation, and avoids invoking undefined behavior.

* Committing clang-format changes

* Per discussion, use HD and add comments.

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-04-16 10:21:18 -05:00
H. Joe Lee
463ef39bc7 OESS-168: Remove clang warnings. (#1376) 2022-04-15 13:19:21 -07:00
H. Joe Lee
9131d5289c OESS-168: Remove clang warnings. (#1309)
* OESS-168: Remove clang warnings.

* OESS-168: Address @lrknox review.
2022-04-15 13:16:37 -07:00
Wei-keng Liao
aaa6614c48 Retrieve MPI-IO hints used by MPI library after file open (#1636)
H5Pget_fapl_mpio() should return an MPI info object containing all the
MPI-IO hints used by the MPI library underneath, after the file is
opened. Some hints, such as cb_nodes (number of I/O aggregators), are
useful for HDF5 applications and I/O libraries built on top of HDF5.
2022-04-15 08:24:46 -07:00
Wei-keng Liao
b793e5005c free MPI datatypes previously created (#1637) 2022-04-15 08:23:12 -07:00
Wei-keng Liao
ea26955d18 not depend on doIO to free an MPI_Comm object (#1642) 2022-04-15 08:22:01 -07:00
Dana Robinson
852ed69f4f Adds build and license shields to README.md (#1641)
* First stab at a Github status bar

* Adds a .tokeignore file for counting lines of code accurately

* Yanks lines of code calculation since it wildly overcounts
2022-04-15 08:20:59 -07:00
Wei-keng Liao
f2a8ac16d7 free MPI_Group/MPI_Comm/MPI_Datatype objects (#1638)
* free MPI_Group/MPI_Comm/MPI_Datatype objects

* fix clang-format style
2022-04-15 08:20:23 -07:00
Dana Robinson
6a4d37f189 Fixes a typo in H5.c (#1639) 2022-04-14 10:35:54 -07:00
Allen Byrne
ab69f5df77 Fix these Doxygen warnings #1581 (#1589) 2022-04-13 14:16:44 -05:00
Dana Robinson
29de83ab8e Removes unused definitions from module headers (#1624) 2022-04-11 13:06:37 -05:00
Dana Robinson
d433f0f7a6 Removes the STATIC flavor of FUNC_ENTER macros (#1622)
* Removes the STATIC flavor of FUNC_ENTER macros
2022-04-08 14:32:40 -05:00
Dana Robinson
95909be9c3 Minor things discovered while preparing 1.12.2 (#1620) 2022-04-08 09:50:20 -05:00
Dana Robinson
41936183d7 Updates bin/restore.sh to clean up src/H5config.h.in (#1605) 2022-04-07 09:14:47 -05:00
Dana Robinson
fe6b2b8e55 Minor C++ changes noticed while normalizing with 1.12 (#1606) 2022-04-07 06:03:15 -07:00
Dana Robinson
ead0f95877 Removes bin/README (#1602)
This README file refers to scripts that were removed when the MANIFEST
went away.
2022-04-07 05:36:43 -07:00
Dana Robinson
a0aeb114e9 Adds additional files/paths to ignore for github actions (#1585) 2022-04-05 17:26:35 -05:00
Dana Robinson
a2b2148e73 Adds release timeline to README.md (#1584) 2022-04-05 17:26:00 -05:00
Allen Byrne
da562164ce Add missing release note for h5repack timing (#1572) 2022-04-04 22:51:17 -05:00
Allen Byrne
b6398dd60e Move error-stack text to top of usage display (#1564)
* Move error-stack text to top of usage display

* Add optional tag ti list

* format changes

* Revert incorrect change
2022-04-01 15:55:22 -05:00
Dana Robinson
f15afef6b3 Fix for unexported global variable on Windows (#1568) 2022-04-01 15:42:22 -05:00
Scot Breitenfeld
e8ea850004 spelling fixes (#1561) 2022-03-31 10:42:30 -05:00
Allen Byrne
870ee8feee Update command format, avoid policy warning (#1550) 2022-03-30 18:01:22 -05:00
jhendersonHDF
ab48ed6df0 Add H5_CHECK_MPI_VERSION macro to check for at least MPI version of (version, subversion) (#1556)
* Fix MPI version check for MPI_Aint_diff usage

* Add H5_CHECK_MPI_VERSION macro

Adds new H5_CHECK_MPI_VERSION macro to check for MPI library version/subversion pair of at least the specified pair
2022-03-30 17:58:55 -05:00
Quincey Koziol
82bf2e97f7 Update MacOS configure, bringing it closer to Linux configure (#1554) 2022-03-30 17:02:18 -05:00
jhendersonHDF
9ed2613789 Add missing H5FL_TRACK debug parameters to free list array routines (#1555) 2022-03-30 16:42:11 -05:00
Allen Byrne
3a906eb3e5 Minor comment corrections (#1544) 2022-03-29 20:57:32 -05:00
Dana Robinson
23ab623955 Removes unused H5HP (private heap) package (#1548) 2022-03-29 20:56:37 -05:00
Dana Robinson
b86be5df35 Removes unused memory pool (H5MP) package (#1547) 2022-03-29 20:54:02 -05:00
Dana Robinson
71af37d38f Removes cruft from a few header files (#1534)
* Unnecessary extern C guards in cache headers
* Non-existent H5Xpublic.h includes hidden behind NOT_YET symbols
2022-03-29 07:11:56 -05:00
Neil Fortner
0d3182c7da Fix bugs in test/vfd.c (#1538)
* Added support for vector I/O calls to the VFD layer, and
associated test code.  Note that this includes the optimization
to allow shortened sizes and types arrays to allow more space
efficient representations of vectors in which all entries are
of the same size and/or type.  See the Selection I/o RFC for
further details.

Tested serial and parallel, debug and production on Charis.
       serial and parallel debug only on Jelly.

* ran code formatter

quick serial build and test on jelly

* Add H5FD_read_selection() and H5FD_write_selection().  Currently only
translate to scalar calls.  Fix const buf in H5FD_write_vector().

* Format source

* Fix comments

* Added vector read / write support to the MPIO VFD, with associated
test code (see testpar/t_vfd.c).

Note that this implementation does NOT support vector entries of
size greater than 2 GB.  This must be repaired before release,
but it should be good enough for correctness testing.

As MPIO requires vector I/O requests to be sorted in increasing
address order, also added a vector sort utility in H5FDint.c  This
function is tested in passing by the MPIO vector I/O extension.

In passing, repaired a bug in size / type vector extension management
in H5FD_read/write_vector()

Tested parallel debug and production on charis and Jelly.

* Ran source code formatter

* Minor optimization to vector I/O request sort routine.

Tested parallel / debug on Jelly.

* Add selection I/O to chunk code, used when: not using chunk cache, no
datatype conversion, no I/O filters, no page buffer, not using collective
I/O.  Requires global variable H5_use_selection_io_g be set to TRUE.
Implemented selection to vector I/O transaltion at the file driver
layer.

* Fix formatting unrelated to previous change to stop github from
complaining.

* Add full API support for selection I/O.  Add tests for this.

* Added "ctl" callback to the VFD interfance, and the associated
H5FDctl() and H5FD_ctl() calls.

Modified the MPIO VFD accordingly -- specifically:

Added ctl() call with op-code support to expose rank, size,
and communicator.

Modified H5FD_mpi_get_rank(), H5FD_mpi_get_size(),
and H5FD_mpi_get_comm() to use the new ctl() callback.  In passing
removed the const qualifier from the file parameter of these
functions, as the file parameter of the ctl callback is not
const.

Deleted the old  H5FD__mpio_mpi_rank(), H5FD__mpio_mpi_size(), and
H5FD__mpio_communicator() calls from the MPIO VFD.

Deleted H5FD_class_mpi_t from H5FDprivate.h, and modified the
MPIO VFD accordingly.  Note that all VFDs now use H5FD_class_t,
with no special class for VFDs that that support MPI.

Some minor touch ups to the Neil's selection I/O mods in passing.

Tested serial and parallel, debug and production on charis and
jelly.

* Implement selection I/O for contiguous datasets.  Fix bug in selection
I/O translation.  Add const qualifiers to some internal selection I/O
routines to maintain const-correctness while avoiding memcpys.

* Add support for independent parallel I/O with selection I/O.  Add
HDF5_USE_SELECTION_IO env var to control selection I/O (default off).

* Implement parallel collective support for selection I/O.

* Fix comments and run formatter.

* Committing clang-format changes

* Run formatter

* Update selection IO branch with develop (#1215)

Merged branch 'develop' into selection_io

* Sync with develop (#1262)

Updated the branch with develop changes.

* Committing clang-format changes

* fixed spelling (#1353)

* Implement big I/O support for vector I/O requests in the MPIO file
driver.

* Committing clang-format changes

* Update dummy file driver in h5test.c to match new struct.

* Fix another outdated H5FD_class_t struct.

* Free arrays in H5FD__mpio_read/write_vector() as soon as they're not
needed, to cut down on memory usage during I/O.

* Committing clang-format changes

* Address comments from code review.  Fix const warnings with
H5S_SEL_ITER_INIT().

* Committing clang-format changes

* Fix warnings in selection I/O code

* Refactor H5FD__mpio_read/write_vector() to bring common code for
constructing MPI Datatype into a shared function.

* Committing clang-format changes

* Fix bugs in selection I/O code.

* Fix bugs in selection I/O code

* Address comments from review.  Add "version" field to H5FD_class_t
struct and accompanying H5FD_CLASS_VERSION macro.

* Committing clang-format changes

* Committing clang-format changes

* Address comments from selection I/O PR

* Committing clang-format changes

* Fix spelling

* Fix bugs int test/vfd.c

Co-authored-by: mainzer <mainzer#hdfgroup.org>
Co-authored-by: jrmainzer <72230804+jrmainzer@users.noreply.github.com>
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Scot Breitenfeld <brtnfld@hdfgroup.org>
2022-03-28 22:34:18 -05:00
Wei-keng Liao
80f9af144c Use AC_MSG_RESULT/AC_MSG_ERROR/AC_MSG_WARN instead of echo (#1532) 2022-03-28 07:32:17 -05:00
Neil Fortner
42b767fc67 Merge initial version of selection I/O feature into develop (#1367) 2022-03-26 14:30:53 -05:00
Allen Byrne
25ef608e2f Change ENV to CMake var (#1520)
* Change ENV to CMake var

* Fix typo deletion

* Fix typo
2022-03-24 16:56:06 -05:00
Allen Byrne
7d9b850574 Windows and *nix use different forms for warnings (#1515) 2022-03-24 08:27:29 -05:00
Orion Poplawski
be36ac1d33 Mark minusone as a PARAMETER in tH5A_1_8.F90. Resolves #1379. (#1412) 2022-03-18 11:09:29 -05:00
Dana Robinson
abad1f320a Removes HD prefix from pthreads calls (#1507) 2022-03-17 20:24:53 -05:00
Dana Robinson
fb29cd77ad Fixes a bug in the FSM section merge code exposed by VFD SWMR (#1505)
From Vailin:

    Fix the FSM bug when setting the FSM threshold to a non-default value.
    Check for smaller or larger section size after merging and shrinking a
    section, for this case is the section that is smaller than threshold
    (see H5MF_xfree() in H5MF.c). It is possible for the section to be
    smaller after merging/shrinking (see H5MF__sect_large_shrink() in
    H5MFsection.c).
2022-03-17 10:39:55 -05:00
Dana Robinson
96398e47af Misc fixes highlighted by the checkposix script (#1499) 2022-03-17 09:53:19 -05:00
Wei-keng Liao
34442f3740 free an MPI communicator (#1503) 2022-03-17 09:52:20 -05:00
Dana Robinson
b9846d1749 Removes the MANIFEST file and unused release files (#1497)
* Removes the MANIFEST file and unused release files

* Updated tar command
2022-03-14 22:47:32 -05:00
Allen Byrne
872b87d5d6 Update release note (#1485)
* Flip inits to correct ifdef section

* rework ifdef to be simpler

* format issue

* Reformat ifdef inits

* remove static attribute

* format compliance

* Update names

* Revert because logic relies on float not being int

* Changes noticed from creating merge of #412

* Double underscore change

* Correct compiler version variable used

* Remove header guard underscores

* Whitespace cleanup

* Split format source and commit changes on repo push

* remove pre-split setting

* Change windows TS to use older VS.

* correct window os name

* HDFFV-11212 JNI export util and Javadoc

* Suggested review changes

* Another change found

* Committing clang-format changes

* HDFFV-11113 long double in tools

* HDFFV-11113 add note

* Disable long double tests for now

* HDFFV-11228 remove arbitrary CMake warning groups.

* Make each flag a string

* Some Javadoc warning fixes

* Updated javadoc fixes

* # WARNING: head commit changed in the meantime

HDFFV-11229 Fix long double usage in tools and java

Changed h5dump and h5ls to just print 128-bit for long double type.
Added test and file for dataset and attributes with all three float
types.

* Committing clang-format changes

* HDFFV-11229 Add release note

* HDFFV-11229 windows testfile needed

* fix typo

* Remove non supported message text

* HDFFV-11229 - change ldouble test to check both native and general

* HDFFV-11229 add second file compare

* HDFFV-11229 fix reference file

* HDFFV-11229 autotools check two refs

* HDFFV-11229 revert back to removal of NATIVE_LDOUBLE in tools output

* Committing clang-format changes

* Update release note

* Update attribute type of ref file

* Change source of ninja for macs

* try port instead of brew

* Recommended is to use brew.

* Undo non long double changes

* remove unneeded file

* Fix perl and doxygen CMake code

* Add "option" command for clang options

* Rework CMake add_custom to use the BYPRODUCTS argument

* Add stamp files to BYPRODUCTS

* Only one copy of file exists

* Fix custom cmmand depends targets

* Fix fortran custom command DEPENDS

* Add LD_LIBRARY_PATH to tests

* Add custom target for DEPENDS

* Add h5detect conditionaly to generated target DEPENDS

* Correct DEPENDS targets

* Parallel builds need the mpi compiler for pkgconfig scripts.

* install only if MPI build

* Fortran target depends

* Remove incorrect source attribute

* doxygen adjustments

* doxygen build updates

* Correct version

* Correct function version - function has been merged to 1.12

* Correct version string for map functions

* Cleanup warnings for tools debug builds

* TRILAB-227 - fix indexing for h5diff selections

* Correct location of pos to index function call

* TRILAB-227 Enable test

* Quote subset args

* Use MATCHES because of AppleClang

* if blocks needed for build modes

* Update list of DT platforms

* VS2019 correctly displays float values

* revert VS2019 change

* Issue #669 remove version from pkgcfg filename

* remove version from h5cc script

* Java reference functions updated

enabled fortran in cmake gcc action yaml file
java reference test changed to correctly test refs
jni reference functions that create ids changed to use jni id logging

* Correct BYPRODUCTS argument

* Correct more genereated files BYPRODUCTS

* BYPRODUCTS must have unique locations

* Fix typo

* Fix fortran configure checks

* Rework H5_PAC_C_MAX_REAL_PRECISION setting logic

* Add note about fortran configure change

* Adds a quick for for some egregious chunk_info badness (#722)

* Fixes issue with ccmake that prevents building Fortran (#723)

ccmake runs iteratively, and the check_fortran_source_runs
macros were clobbering a single output file that did not
get updated on further configure iterations

* Fix conflicts with merge

* Move MAX_PRECISION back to HDF5UseFortran.cmake

* Use STREQUAL to test macro argument

* Move C language test to ConfigureChecks from HDF5UseFortran

* MAX_PRECISION defines must be defined

* Organize flags and align autotools and cmake

* Fix comment in no-error-general warnings files.

* Flag cleanup and fix typos

* Add comment

* Correct VAR used to find configure time file

* Set the path correctly

* Update missing release note info.

* Update code owners

* Correct JIRA note

* add known problem.

* Use only core library for testing dynamic plugins.

* Committing clang-format changes

* Update main.yml

* Update HISTORY-1_13.txt

Missing release note added for changed location of CMake configuration files.

* Update HISTORY-1_13.txt

Fix typo

* Update main.yml

revert change

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Dana Robinson <43805+derobins@users.noreply.github.com>
2022-03-11 13:17:26 -06:00
Dana Robinson
1f9228316c Fixes for format string warnings raised by -Wformat=2/-Wformat-security (#1489) 2022-03-11 13:10:20 -06:00
Dana Robinson
01209d2777 Removes remaining register keywords (#1481) 2022-03-10 16:14:05 -06:00
David Young
1fb3743f04 Fix JNI bug, fix warnings noticed in MSVC CI, be modern & portable (#1480) 2022-03-10 13:54:20 -06:00
Dana Robinson
b9470be379 Plugin test cleanup (#1479)
* Autotools plugin test cleanup

* Combines filter, VFD, and VOL plugin tests
* Adds VFD plugin tests to the Autotools
* Implements a uniform shell script naming scheme in test/

* codespell fix

* Changes after code review
2022-03-10 12:22:16 -06:00
Dana Robinson
d5ddf61803 Minor tweaks from VFD SWMR normalization (#1474) 2022-03-09 14:07:54 -06:00
Allen Byrne
16f482de8f Remove addition of non-standalone use of H5_ATTR_FORMAT (#1470) 2022-03-07 08:32:45 -06:00
Larry Knox
44d9926840 Update HISTORY-1_13.txt and clean RELEASE.txt (#1471)
* Committing clang-format changes

* Spelling of preceed was corrected to proceed, but should have been
corrected to precede.

* Correct spelling correction of 'preceed' incorrectly to 'proceed'.  It should be 'precede'.

* Update version to 1.13.2-1 after 1.13.1 release.
Add Makefile.in to MANIFEST for addition of utils/tools and h5dwalk.

* Update VERS_RELEASE_EXCEPTIONS with new incompatible release version.

* Add HDF5 1.13.1 RELEASE.txt to HISTORY-1_13.txt contents to
HISTORY-1_13.txt.
Clean entries from RELEASE.txt.

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-03-07 08:31:58 -06:00
jhendersonHDF
ba032bb28b Disable memory alloc sanity checks by default for Autotools debug builds (#1468) 2022-03-03 09:46:18 -06:00
Larry Knox
7c18723404 Create HISTORY-1_13.txt and update release.txt (#1466) 2022-03-01 14:48:12 -06:00
Larry Knox
94d01f5377 Update version to 1.13.2-1 after 1.13.1 release; add new Makefile.in files to MANIFEST (#1460) 2022-03-01 14:20:34 -06:00
Allen Byrne
ebf89bb231 Fix install config and java test name conflict (#1467) 2022-03-01 14:19:43 -06:00
Scot Breitenfeld
c72904c6b3 fixed buf definition in h5dfill_f (#1465)
* H5Lexists docs: Removed reference to 1.8.16 since the change is the 1.8.x releases, HDFFV-11289

* H5Oget_info_by_name, name can be any object, not just a group

* fixed buf definition in h5dfill_f
2022-03-01 14:19:15 -06:00
Allen Byrne
b7d8177404 Remove targets PERMISSIONS setting (#1462) 2022-03-01 13:33:18 -06:00
jhendersonHDF
8e0b427bf2 Fix metadata cache bug when resizing a pinned/protected entry (v2) (#1463) 2022-03-01 12:30:49 -06:00
jhendersonHDF
80954e8272 Fix for parallel compression examples on Windows (#1459) 2022-02-27 23:15:38 -06:00
jhendersonHDF
f46e5db184 Amend RELEASE.txt with note about parallel compression testing assertion failure (#1458) 2022-02-25 14:36:34 -06:00
Allen Byrne
e19e7e3faa Add release note for #1438 (#1457)
* Add release note for #1438

* fix typos.
2022-02-25 14:31:55 -06:00
Allen Byrne
2db4c770f8 Fix release check version logic (#1438) 2022-02-24 10:59:15 -06:00
jhendersonHDF
758e97c1e5 Parallel Compression improvements (#1302) 2022-02-24 10:04:59 -06:00
Allen Byrne
5a5a770402 Enable creation of RPM/DEB binaries GH#1394 (#1398)
Co-authored-by: Larry Knox <lrknox@hdfgroup.org>
2022-02-22 08:36:28 -06:00
Larry Knox
3107fafa2c Oess 168 utils mirror vfd (#1444)
* Committing clang-format changes

* Spelling of preceed was corrected to proceed, but should have been
corrected to precede.

* Correct spelling correction of 'preceed' incorrectly to 'proceed'.  It should be 'precede'.

* OESS-168: Remove clang warnings.

* OESS-168: Address @lrknox and @gnuoyd reviews.

* Eliminate clang warnings listed in PR #1310 without adding new ssize_t
variables.

* Committing clang-format changes

* Add H5_ATTR_UNUSED to wait_for_child call.
Remove unneeded casts in mirror_log calls.

* Keep ssize_t in mirror_server.c line 479.

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Hyo-Kyung Lee <hyoklee@hdfgroup.org>
2022-02-21 15:32:29 -06:00
David Young
c302773438 Sprinkle H5_ATTR_FORMAT over printf(3)-like functions in tools and fix issues (#1423)
* Correct some conversion specifications.

* Replace many "%lld" occurrences with "%" PRIuHSIZE except for a few
instances where PRIdHSIZE was appropriate.  Remove a couple of casts and
use correct format strings, instead.

* Copy values from a possibly unaligned buffer to aligned local variables
instead of casting and dereferencing pointers into the buffer.

* Committing clang-format changes

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-02-21 15:31:57 -06:00
jhendersonHDF
705ba09e76 Fix cache sanity checking code by moving functions to wider scope (#1435) 2022-02-21 12:36:29 -06:00
Neil Fortner
42c419e266 Fix issue with copying null new references (#1440)
* Fix issue with copying null new references. Fix assertion failure when
reference copying fails.

* Committing clang-format changes

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-02-18 09:28:21 -06:00
Neil Fortner
feda52b084 Implement support for big I/O for independent reads (#1446)
* Implement big I/O support for independent reads. Add test for this.

* Committing clang-format changes

* Update big I/O code in H5FD__mpio_write() to match that in
H5FD__mpio_read().

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-02-18 09:27:05 -06:00
Gerd Heber
cfe4198b6c Updated reference for Multi Dataset RFC. (#1442) 2022-02-18 08:02:10 -06:00
Allen Byrne
08ec5b45a5 Add SZ filter and adjust compression file names to avoid conflicts (#1434)
* Updated plugins project required adjustments

* Updated plugins need to distinguish external libs

* Fix missed rename

* Use same name for windows as linux - avoid name clash
2022-02-17 10:05:08 -06:00
myd7349
bbb0acf353 Fixed AbstractDs::getVarLenType documentation (#1441) 2022-02-16 14:58:35 -06:00
loricooperhdf
d25d05d740 Creating FUNDING.yml (#1427)
* Creating FUNDING.yml

Will add sponsor this project widget to the repo's page.

* Correct file name

Add sponsor widget; filename typo fixed.

* Update MANIFEST
2022-02-16 07:46:19 -06:00
Larry Knox
97b8fad8ed Revert "Fix metadata cache bug when resizing a pinned/protected entry (#1358)" (#1437)
This reverts commit 01092658a3.
2022-02-11 22:34:16 -06:00
Allen Byrne
96cf19499b Add -showconfig to h5cc scripts to dump libhdf5.settings file (#1391)
* Add -showconfig to h5cc scripts to dump libhdf5.settings file

* Added note
2022-02-11 07:46:09 -06:00
David Young
4ce6373a0b Make a buffer bigger: GCC 8.3.0 warned that a snprintf may be (#1403)
truncated because the recipient buffer was too small, and the warning is
one that we promote to an error.  Now there is a warning that the buffer
is too big (-Wlarger-than=), but we don't promote those to errors, yet.
2022-02-11 07:39:52 -06:00
Scot Breitenfeld
7bfa873983 Fixed H5Dget_storage_size_f for zero sized datasets (#1430)
* H5Lexists docs: Removed reference to 1.8.16 since the change is the 1.8.x releases, HDFFV-11289

* H5Oget_info_by_name, name can be any object, not just a group

* fixed handling size 0 datasets

* fixed handling size 0 datasets

* format
2022-02-11 06:56:33 -06:00
Neil Fortner
0f847f30bc Fix issue with H5_now_usec() with 32 bit systems (#1416)
* Implement H5ESget_requests() to retrieve request pointers and
corresponding connector IDs from an event set.  Add tests for this
function.

* Add "order" parameter to H5ESget_requests, to allow the user to specify
the order in which requests are returned.

* Fix bugs with H5ESinsert_request()

* Change H5ESget_requests() API to have separate input and output
parameters for the allocated array length(s) (in) and the number of events in
the event set (out).

* Fix issue with H5_now_usec() with 32 bit systems.  Also improve event
set test.

* Committing clang-format changes

* Add comments to H5_now_usec() explaining rationale for uint64_t casts.

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-02-10 17:23:26 -06:00
jhendersonHDF
01092658a3 Fix metadata cache bug when resizing a pinned/protected entry (#1358)
When resizing a pinned/protected cache entry, the metadata
cache code previously would wait until after resizing the
entry to attempt to log the newly-dirtied entry. This would
cause H5C_resize_entry to mark the entry as dirty and make
H5AC_resize_entry think that it doesn't need to add the
newly-dirtied entry to the dirty entries skiplist.

Thus, a subsequent H5AC__log_moved_entry would think it
needs to allocate a new entry for insertion into the dirty
entry skip list, since the entry doesn't exist on that list.
This causes an assertion failure, as the code to allocate a
new entry assumes that the entry is not dirty.
2022-02-07 22:04:41 -06:00
Allen Byrne
c9347450c1 Implemented suggestion in #1381 for dtransform test (#1415)
* Implemented suggestion in #1380

* fix typo

* Use differently named files in tests

* format fix

* Revise comments

* fic typos

* Change test display and file name
2022-02-04 16:50:45 -06:00
jhendersonHDF
36d9a165e4 Fix a few issues noted by LGTM (#1421) 2022-02-04 10:53:55 -06:00
David Young
856de93673 Don't use a nonliteral format string in test/fheap.c:begin_test(). (#1401)
* Avoid using a non-literal formatting string with sprintf in begin_test.
Use snprintf.  Don't duplicate a string on the heap unnecessarily.

* Do not deactivate -Wformat-nonliteral: we don't use a nonliteral format
string any more.

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-02-03 10:41:41 -06:00
Allen Byrne
1d598182d6 Update doc with HDF5_ROOT usage. (#1414) 2022-02-02 13:45:59 -06:00
jhendersonHDF
86ef00fd67 Unify handling of collective metadata reads status (#1206) 2022-01-29 14:22:30 -06:00
Sean McBride
bcf9565535 Added another missing override keyword on a dtor (#1384) 2022-01-29 14:21:30 -06:00
David Young
2b3bb3659c Fix some spelling. (#1402) 2022-01-28 16:44:47 -06:00
Sean McBride
4ac6ccc021 Snprintf2 (#1399)
* Replaced many uses of sprintf with safer snprintf

Many very straightforward, but in a few cases added a length parameter to some private functions, because buffer length was otherwise unknowable.

* Removed unnecessary use of static on small buffers

This improves thread safety.

* Committing clang-format changes

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-01-28 16:43:48 -06:00
Allen Byrne
ad71539d30 Remove const from the argv tools/tests main sig. (#1390)
* Remove const from the argv tools/tests main sig.

* also remove const from H5_get_option and parse_command_line.

* Committing clang-format changes

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-01-28 16:30:33 -06:00
Sean McBride
b5eed1b563 Replaced several uses of sprintf with safer snprintf (#1383)
* Replaced several uses of sprintf with safer snprintf

* Committing clang-format changes

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-01-28 10:34:57 -06:00
Sean McBride
44de59b642 Used clang-tidy to change all floating point f suffixes to F (#1359) 2022-01-28 08:31:26 -06:00
Larry Knox
5fb634ca26 Revert 61464d7e (#1396)
Commit 61464d7e was a fix for a compiler error on OpenBSD where
int_fast8_t is in fact larger than 1 byte. However, the changes broke
H5detect.c generation of H5Tinit.c on Power8 big-endian, and probably on
all big-endian machines.  Switching DETECT_BYTE to DETECT_I for 8 byte types doesn't work on our big-endian Power8 machine because switching the last parameter of DETECT_I_BYTE_CORE from "int" to the 8 byte type incorrectly sets dt->shared->u.atomic.order = H5T_ORDER_LE on a big-endian machine.  A different fix to accomodate both big-endian and OpenBSD is needed.  See commit 61464d7e for OpenBSD info.

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-01-26 16:58:49 -06:00
Allen Byrne
5222abdd19 Update code owners file with more names (#1386) 2022-01-26 09:05:25 -06:00
Allen Byrne
4d45d05078 Fix cmake dynamic analysis on windows (#1373)
* Fix sanitizer flag form on windows

* Add search paths to windows code-coverage
2022-01-24 07:46:17 -06:00
jhendersonHDF
99d3962a83 Parallel rank0 deadlock fixes (#1183)
* Fix several places where rank 0 can skip past collective MPI operations on failure

* Committing clang-format changes

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-01-22 08:40:33 -06:00
Sean McBride
d45124d708 Open bsd fixes (#1195) 2022-01-20 08:38:56 -06:00
Neil Fortner
dd6ad33c75 Implement H5ESget requests function to retrieve requests from an event set (#1355)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-01-20 07:34:43 -06:00
jhendersonHDF
6c184e28d8 Fix documentation for H5D_space_status_t enum values (#1372) 2022-01-19 14:29:37 -06:00
Matt McCormick
1a9662e04c Do not set CMAKE_INSTALL_PREFIX when built externally (#1380) 2022-01-18 22:28:27 -06:00
Allen Byrne
bd37363332 various cleanup java test, test files, comments (#1363) 2022-01-18 15:52:01 -06:00
Allen Byrne
8dc72928b8 Develop java newrefs fixes for obj ref datasets (#1354)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Dana Robinson <43805+derobins@users.noreply.github.com>
2022-01-18 14:02:53 -06:00
Allen Byrne
2f34c433dc Update the java slf4j logging jars to latest 1.7.33 (#1369) 2022-01-18 07:44:11 -06:00
Scot Breitenfeld
8b3c09f780 Updated README.txt to README.md (#1375)
* H5Lexists docs: Removed reference to 1.8.16 since the change is the 1.8.x releases, HDFFV-11289

* H5Oget_info_by_name, name can be any object, not just a group

* Converted README.txt to README.md and updated files referring to README.txt to README.md.

* removed references to README.txt

* updated MANIFEST
2022-01-14 17:28:04 -06:00
Gerd Heber
e56b0a3d50 Documentation fixes right in time for the holidays (#1321)
* Sketch of the H5S life cycle.

* Committing clang-format changes

* Fix H5S_UNLIMITED snafu.

* Updated RM template and RM page.

* Added H5S life cycle.

* Committing clang-format changes

* Added H5T life cycle.

* Committing clang-format changes

* Cleaner layout (?)

* Cleaned the H5F life cycle. Called out unfinished biz.

* Committing clang-format changes

* Remaining life cycle skeletons.

* Committing clang-format changes

* Committing clang-format changes

* Added H5Z life cycle.

* Committing clang-format changes

* Added H5G life cycle.

* Committing clang-format changes

* H5 and H5I life cycle updates.

* Committing clang-format changes

* Added H5PL life cycle.

* Committing clang-format changes

* Added H5L life cycle.

* Committing clang-format changes

* Fix for Chris' comment.

* Add a variable for Doxygen pre-processor definitions.

* Forgot to add the H5M API.

* Clarify the H5Z life cycle.

* Committing clang-format changes

* Add H5Zdevelop.h to Doxygen.in. Added H5I life cycle.

* Committing clang-format changes

* Clarified introduction and fixed missing label declaration.

* Added H5O life cycle.

* Committing clang-format changes

* H5O cleanup, part 1.

* Committing clang-format changes

* Cleaned up some of the endless repetition in H5O.

* Committing clang-format changes

* Cookbook & RFC draft layouts.

* Updated manifest.

* Updated the manifest, the example paths, and sketched the 1st recipe.

* Committing clang-format changes

* Outlined two more recipes.

* Committing clang-format changes

* More recipes and RFCs.

* Committing clang-format changes

* Draft of templatized RFC references.

* Another batch of RFC changes.

* Another batch of RFCs.

* Fixed reference.

* RFCs in reverse chronological order.

* First cut of RFCs.

* Fixed reference.

* Updated recipes.

* Updated recipes.

* More RFCs.

* Updated D*PL comments.

* Added H5P descriptions.

* Committing clang-format changes

* H5R life-cycle snapshot.

* Committing clang-format changes

* H5R life-cycle. Added line numbers to life-cycle examples.

* Committing clang-format changes

* Fixed formatting for H5Dchunk_iter().

* Added comment on collective mode requirement w/ compression.

* Simplified API compat. macro dox.

* More API vers. updates.

* Hide the async macro entrails.

* Latest VFD SWMR RFC.

* Create a tag file for permalinks.

* Added TODOs for metadoc.

* Removed duplication.

* Revised RM landing page.

* Trimmed more duplication.

* Committing clang-format changes

* Revised H5D.

* Committing clang-format changes

* Updated survey link.

* Added Doxygen RM entry template link.

* Added the "Multi-Thread HDF5" RFC.

* Added DOXYGEN_TAG_FILE.

* Added selection I/O RFC.

* Added the VFD Sub-filing RFC.

* Updated meta-documentation and added two old presentations.

* Added a few more RFCs (4).

* Fixed MANIFEST.

* Updated meta-documentation.

* Added Filters technical note.

* Fixed MANIFEST.

* Restore the path stripper.

* Experimental full-text search via Google.

* Better full-text search integration.

* Whoops. Forgot this one.

* Oh boy.

* Make CMake happy.

* Added "Debugging HDF5 Applications" technical note.

* Another batch of RFCs.

* Fixes for #1221.

* Updated overview.

* Fixed image dependencies.

* CMake updates.

* Fixed SET.

* Better?

* Update doxygen/dox/Overview.dox

* Fixed documentation errors. Added missing version info.

* Callback documentation updates.

* Fixed indexing errors in the outline.

* Doxygen-ized the HDF5 glossary.

* Fix a few minor typos
.

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Larry Knox <lrknox@hdfgroup.org>
2022-01-13 22:11:39 -06:00
jhendersonHDF
166ce5b027 Fix H5ACmpio dirty bytes creation debugging (#1357) 2022-01-12 16:58:45 -06:00
Allen Byrne
5fffd563de cmake custom command fix (#1356)
* From gitlab.kitware.com/third-party/hdf5 rework custom commands

 commit/757aa42ebff8c9819c054f5e00559143c60f653d

* Correct stamp file generation

* Needs to support pregenerated H5Tinit.c file

* Adjust custom command for all build systems types

* Custom target only depends on OUTPUT of custom command
2022-01-12 14:27:56 -06:00
Scot Breitenfeld
4aabac62f8 Corrected H5Oget_info parameter description (#1349)
* H5Lexists docs: Removed reference to 1.8.16 since the change is the 1.8.x releases, HDFFV-11289

* H5Oget_info_by_name, name can be any object, not just a group
2022-01-11 12:17:05 -06:00
jhendersonHDF
a13bf24a39 Use appropriate printf format specifiers for haddr_t and hsize_t types directly (#1340) 2022-01-11 12:16:10 -06:00
Scot Breitenfeld
80017cba4f fixed off-by-one error in h5fget_name_f, HDFFV-11290 (#1345)
* fixed off-by-one error in h5fget_name_f, HDFFV-11290

* fixed typo
2022-01-10 19:01:14 -06:00
Scot Breitenfeld
54237d777a H5Lexists docs: Removed reference to 1.8.16 since the change is the 1.8.x releases, HDFFV-11289 (#1335) 2022-01-10 18:47:57 -06:00
Allen Byrne
f8f1fefe53 sort out/ref files for line compare (#1337) 2022-01-08 11:10:59 -06:00
Allen Byrne
03217eca81 Add tests for H5Ocopy of new object refs (#1338)
* Add tests for H5Ocopy of new object refs

* Correct class name

* Skip test because of issue with debug assertions

* Update reference file

* Fix object examples for new refs
2022-01-08 08:19:52 -06:00
Baljak
8430e3d661 Fix compilation issues with Mingw (#1342) 2022-01-07 22:29:25 -06:00
H. Joe Lee
bf27121b5d OESS-168: Remove clang warnings. (#1308) 2022-01-07 16:30:18 -06:00
H. Joe Lee
58e2157c7e OESS-168: Remove clang warnings. (#1305) 2022-01-07 16:29:56 -06:00
H. Joe Lee
a564ec39af OESS-168: Remove clang warnings. (#1304) 2022-01-07 16:29:30 -06:00
jhendersonHDF
9e6de287e7 Fix usage of several HDfprintf format specifiers after HDfprintf removal (#1324) 2022-01-04 11:00:55 -06:00
H. Joe Lee
86b8062699 Fix typo. (#1303)
chksum -> checksum
2022-01-04 11:00:14 -06:00
H. Joe Lee
227d7d927b Fix typo. (#1301)
If the are -> If they are
2022-01-04 10:59:54 -06:00
H. Joe Lee
6fc53b39a2 OESS-168: Remove clang warnings. (#1300) 2022-01-04 10:58:58 -06:00
Scot Breitenfeld
cf1aab28fb Changed to correct return datatype for H5Lexists (#1330)
* changed to correct return datatype for H5Lexists

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-01-04 09:12:11 -06:00
H. Joe Lee
db61a888e6 OESS-168: Remove clang warnings. (#1295) 2021-12-15 16:22:04 -06:00
H. Joe Lee
c60bc0a07c OESS-168: Remove clang warnings. (#1294) 2021-12-15 16:21:42 -06:00
H. Joe Lee
69251f58aa OESS-168: Remove clang warnings. (#1297) 2021-12-15 16:21:15 -06:00
H. Joe Lee
10450e0491 OESS-168: Remove clang warnings. (#1280) 2021-12-13 17:33:49 -06:00
H. Joe Lee
63687f1a12 OESS-168: Remove clang warnings. (#1283) 2021-12-13 17:33:32 -06:00
H. Joe Lee
be856f5ad1 OESS-168: Remove clang warnings. (#1284) 2021-12-13 17:33:09 -06:00
jhendersonHDF
300a4e2478 Call FUNC_ENTER immediately in H5_init_library (#1287) 2021-12-13 17:31:02 -06:00
jhendersonHDF
ca28e3e631 Fix free list tracking and cleanup cast alignment warnings (#1288)
* Fix free list tracking and cleanup cast alignment warnings

* Add free list tracking code to H5FL 'arr' routines
2021-12-13 17:30:22 -06:00
Gerd Heber
c88aed84ec Make it easier to find version specific docs. (#1260)
* Sketch of the H5S life cycle.

* Committing clang-format changes

* Fix H5S_UNLIMITED snafu.

* Updated RM template and RM page.

* Added H5S life cycle.

* Committing clang-format changes

* Added H5T life cycle.

* Committing clang-format changes

* Cleaner layout (?)

* Cleaned the H5F life cycle. Called out unfinished biz.

* Committing clang-format changes

* Remaining life cycle skeletons.

* Committing clang-format changes

* Committing clang-format changes

* Added H5Z life cycle.

* Committing clang-format changes

* Added H5G life cycle.

* Committing clang-format changes

* H5 and H5I life cycle updates.

* Committing clang-format changes

* Added H5PL life cycle.

* Committing clang-format changes

* Added H5L life cycle.

* Committing clang-format changes

* Fix for Chris' comment.

* Add a variable for Doxygen pre-processor definitions.

* Forgot to add the H5M API.

* Clarify the H5Z life cycle.

* Committing clang-format changes

* Add H5Zdevelop.h to Doxygen.in. Added H5I life cycle.

* Committing clang-format changes

* Clarified introduction and fixed missing label declaration.

* Added H5O life cycle.

* Committing clang-format changes

* H5O cleanup, part 1.

* Committing clang-format changes

* Cleaned up some of the endless repetition in H5O.

* Committing clang-format changes

* Cookbook & RFC draft layouts.

* Updated manifest.

* Updated the manifest, the example paths, and sketched the 1st recipe.

* Committing clang-format changes

* Outlined two more recipes.

* Committing clang-format changes

* More recipes and RFCs.

* Committing clang-format changes

* Draft of templatized RFC references.

* Another batch of RFC changes.

* Another batch of RFCs.

* Fixed reference.

* RFCs in reverse chronological order.

* First cut of RFCs.

* Fixed reference.

* Updated recipes.

* Updated recipes.

* More RFCs.

* Updated D*PL comments.

* Added H5P descriptions.

* Committing clang-format changes

* H5R life-cycle snapshot.

* Committing clang-format changes

* H5R life-cycle. Added line numbers to life-cycle examples.

* Committing clang-format changes

* Fixed formatting for H5Dchunk_iter().

* Added comment on collective mode requirement w/ compression.

* Simplified API compat. macro dox.

* More API vers. updates.

* Hide the async macro entrails.

* Latest VFD SWMR RFC.

* Create a tag file for permalinks.

* Added TODOs for metadoc.

* Removed duplication.

* Revised RM landing page.

* Trimmed more duplication.

* Committing clang-format changes

* Revised H5D.

* Committing clang-format changes

* Updated survey link.

* Added Doxygen RM entry template link.

* Added the "Multi-Thread HDF5" RFC.

* Added DOXYGEN_TAG_FILE.

* Added selection I/O RFC.

* Added the VFD Sub-filing RFC.

* Updated meta-documentation and added two old presentations.

* Added a few more RFCs (4).

* Fixed MANIFEST.

* Updated meta-documentation.

* Added Filters technical note.

* Fixed MANIFEST.

* Restore the path stripper.

* Experimental full-text search via Google.

* Better full-text search integration.

* Whoops. Forgot this one.

* Oh boy.

* Make CMake happy.

* Added "Debugging HDF5 Applications" technical note.

* Another batch of RFCs.

* Fixes for #1221.

* Updated overview.

* Fixed image dependencies.

* CMake updates.

* Fixed SET.

* Better?

* Update doxygen/dox/Overview.dox

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Larry Knox <lrknox@hdfgroup.org>
2021-12-13 15:13:42 -06:00
jhendersonHDF
dd3c61c384 Fixes for async operations (#1272)
Setup VOL wrapping context for each "request" callback

Set H5ES_event_t "next" pointer to NULL when appending to event list
2021-12-10 22:48:50 -06:00
jhendersonHDF
c0a13fd9d8 Remove duplicate memcpy in chunk_file_cb (#1285) 2021-12-10 20:22:49 -06:00
H. Joe Lee
b54c738822 OESS-168: Remove clang warnings. (#1282)
* OESS-168: Remove clang warnings.

* OESS-168: Remove commented-out code.

* OESS-168: Address @gnuoyd review.
2021-12-10 16:01:25 -06:00
H. Joe Lee
70e70002c3 Remove extra space. (#1274) 2021-12-10 09:45:59 -06:00
H. Joe Lee
8c592a2f64 OESS-168: Remove clang warnings. (#1277) 2021-12-10 09:45:14 -06:00
Allen Byrne
5580d7ec81 Fix directory variable in shell scripts (#1273)
* Fix testswmr scripts with utils/test variable

* Change format of configure var assignment

* quote the variable value in configure

* Use sh.in expected var pattern

* Only ref builddir in script

* Create vars for utils/test and test as H5_<path>_BUILDDIR

* Use abs_top_builddir in test scripts

* Change script var to make it easier to read.

* Use @abs_top_builddir@ directly in paths

* Correct typos/comment
2021-12-09 23:06:53 -06:00
jhendersonHDF
364d8cc3e7 Initialize filter mask and chunk nbytes for 'Single' chunk index (#1261) 2021-12-09 15:28:52 -06:00
H. Joe Lee
e36aa06950 OESS-168: Remove clang warnings. (#1269) 2021-12-08 16:00:19 -06:00
Allen Byrne
83cf2cb15b Convert vds swmr test script to powershell (#1245)
* Convert SWMR shell scripts to Windows powershell.

* Use $LastExitCode instead of $? in script

* Prevent execution in a different window

* Github #969 Use stdout instead of file for configure check (#1089)

* Use stdout instead of file for configure check

* Make change requested by #1157

* Change fortran to use stderr for configure

* Correct typo

* remove obsolete file check

* Fortran statement fix

* Don't allow H5Pset(get)_all_coll_metadata_ops for DXPLs (#1201)

* Fixes const warnings in H5ES package (#1211)

* Quiets a 'set but not used' warning in h5diff_array.c (#1210)

* Convert vds swmr test script to powershell

* Enable vdsswmr powershell test

* Add configure vdsswmr statement

* Correct powershell script vars

* Convert SWMR shell scripts to Windows powershell.

* Use $LastExitCode instead of $? in script

* Prevent execution in a different window

* Github #969 Use stdout instead of file for configure check (#1089)

* Use stdout instead of file for configure check

* Make change requested by #1157

* Change fortran to use stderr for configure

* Correct typo

* remove obsolete file check

* Fortran statement fix

* Convert vds swmr test script to powershell

* Enable vdsswmr powershell test

* Add configure vdsswmr statement

* Correct powershell script vars

* Cleanup review issues

* Fix variable assignment

* Change the wait function to pass in the path

* Disable actual test execution until programs fixed

* Adjust copyright text

* Fix spelling

Co-authored-by: jhendersonHDF <jhenderson@hdfgroup.org>
Co-authored-by: Dana Robinson <43805+derobins@users.noreply.github.com>
2021-12-08 11:21:15 -06:00
H. Joe Lee
abb05bce6e OESS-168: Remove clang warnings. (#1263) 2021-12-08 08:38:40 -06:00
Larry Knox
40a23b67ea Correct spelling correction of preceed incorrectly to proceed. Should (#1268)
* Correct spelling correction of 'preceed' incorrectly to 'proceed'.  It should be 'precede'.
2021-12-07 15:07:15 -06:00
Scot Breitenfeld
f859cb732b Fixed Spelling Errors (#1166)
* fixed missed closing of a dataset

* fixed missed closing of a dataset

* fixed typo in error return

* Committing clang-format changes

* minor edits

* code format

* Committing clang-format changes

* code format

* minor edit

* switched from using MPI_count, to actual bytes written for H5FD_mpio_debug rw debugging

* Committing clang-format changes

* changed size_i in printf to reflect the I/O.

* Committing clang-format changes

* Fixed seg fault with xlf on BE with -qintsize=8

* fixed error function string

* spelling corrections via codespell, added new spell check github actions

* Committing clang-format changes

* misc

* misc

* misc

* misc

* misc

* misc

* misc

* misc

* misc

* misc

* misc

* misc

* misc

* misc

* Committing clang-format changes

* misc

* misc

* misc

* misc

* misc

* misc

* Committing clang-format changes

* misc

* work around for https://github.com/codespell-project/codespell/issues/2137

* misc

* added missing file

* misc

* misc.

* misc

* switch to using Codespell with GitHub Actions

* misc.

* misc.

* fixed more sp errors

* Fix new typos found by codespell.

* fixed proceed with precede

* fixed variable in fortran test

* fixed minnum

* updated spelling list

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Larry Knox <lrknox@hdfgroup.org>
2021-12-07 08:27:29 -06:00
Allen Byrne
d7466741ea change windows os from 2016 to latest (#1241)
* change windows os from 2016 to latest

* Upgrade the VS version used.

* specify windows VS version
2021-12-01 09:48:29 -06:00
Allen Byrne
5fddfb8016 Fix windows test with floating point rounding issues (#1237)
* Check windows sdk version for test

* Correct variable reference form

* Use VERSION_LESS in IF check
2021-11-30 13:39:56 -06:00
Larry Knox
89ad105b1c Update version to 1.13.1-1 after creation of branch for 1.13.0 release. (#1236) 2021-11-30 12:53:45 -06:00
Larry Knox
194714abe5 Fix indentation in RELEASE.txt to be consistent. (#1232) 2021-11-29 19:11:28 -06:00
Larry Knox
8a80aec36f Make default to build high-level tools the same as default for (#1234)
high-level library.
2021-11-29 19:11:01 -06:00
rawarren
720ddb20f3 Add support for parallel tools based on the 3rd party library mpiFileUtils (libMFU) … (#1177)
Adds tool h5dwalk and configure options to enable building it.

Co-authored-by: Richard Warren <Richard.Warren@hdfgroup.org>
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Richard.Warren <richard.warren@jelly.ad.hdfgroup.org>
Co-authored-by: Larry Knox <lrknox@hdfgroup.org>
2021-11-29 15:25:23 -06:00
Allen Byrne
9cdc6d58bd Fix Fortran REGEX and newlines (#1226)
* Fix order of fortran define

* fix typo

* Fix REGEX and newlines
2021-11-29 11:45:22 -06:00
jhendersonHDF
ed92286131 Only check HDF5_DRIVER in MPI I/O VFD if VFD isn't initialized (#1213) 2021-11-24 21:14:45 -06:00
jhendersonHDF
b3262c75d5 Fix a few H5CX warnings from recent init changes (#1224) 2021-11-24 16:22:09 -06:00
jhendersonHDF
7cf5c29615 Fix a few warnings after recent H5S const-related changes (#1225) 2021-11-24 16:20:30 -06:00
Dana Robinson
ca6f9e3716 Fixes an assert in H5Pget_filter_by_id1/2 w/ out-of-range IDs (#1222)
* Fixes an assert in H5Pget_filter_by_id1/2 w/ out-of-range IDs

Filter IDs < 0 or > H5Z_FILTER_MAX could trip an assert in the
library due to missing ID range checks in H5Pget_filter_by_id1/2.
The library now returns a normal error code when filter IDs are
out of range. Fixes HDFFV-11286.

* Committing clang-format changes

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-11-24 16:20:13 -06:00
Gerd Heber
5c06121976 Closes #1221 (#1223)
* Sketch of the H5S life cycle.

* Committing clang-format changes

* Fix H5S_UNLIMITED snafu.

* Updated RM template and RM page.

* Added H5S life cycle.

* Committing clang-format changes

* Added H5T life cycle.

* Committing clang-format changes

* Cleaner layout (?)

* Cleaned the H5F life cycle. Called out unfinished biz.

* Committing clang-format changes

* Remaining life cycle skeletons.

* Committing clang-format changes

* Committing clang-format changes

* Added H5Z life cycle.

* Committing clang-format changes

* Added H5G life cycle.

* Committing clang-format changes

* H5 and H5I life cycle updates.

* Committing clang-format changes

* Added H5PL life cycle.

* Committing clang-format changes

* Added H5L life cycle.

* Committing clang-format changes

* Fix for Chris' comment.

* Add a variable for Doxygen pre-processor definitions.

* Forgot to add the H5M API.

* Clarify the H5Z life cycle.

* Committing clang-format changes

* Add H5Zdevelop.h to Doxygen.in. Added H5I life cycle.

* Committing clang-format changes

* Clarified introduction and fixed missing label declaration.

* Added H5O life cycle.

* Committing clang-format changes

* H5O cleanup, part 1.

* Committing clang-format changes

* Cleaned up some of the endless repetition in H5O.

* Committing clang-format changes

* Cookbook & RFC draft layouts.

* Updated manifest.

* Updated the manifest, the example paths, and sketched the 1st recipe.

* Committing clang-format changes

* Outlined two more recipes.

* Committing clang-format changes

* More recipes and RFCs.

* Committing clang-format changes

* Draft of templatized RFC references.

* Another batch of RFC changes.

* Another batch of RFCs.

* Fixed reference.

* RFCs in reverse chronological order.

* First cut of RFCs.

* Fixed reference.

* Updated recipes.

* Updated recipes.

* More RFCs.

* Updated D*PL comments.

* Added H5P descriptions.

* Committing clang-format changes

* H5R life-cycle snapshot.

* Committing clang-format changes

* H5R life-cycle. Added line numbers to life-cycle examples.

* Committing clang-format changes

* Fixed formatting for H5Dchunk_iter().

* Added comment on collective mode requirement w/ compression.

* Simplified API compat. macro dox.

* More API vers. updates.

* Hide the async macro entrails.

* Latest VFD SWMR RFC.

* Create a tag file for permalinks.

* Added TODOs for metadoc.

* Removed duplication.

* Revised RM landing page.

* Trimmed more duplication.

* Committing clang-format changes

* Revised H5D.

* Committing clang-format changes

* Updated survey link.

* Added Doxygen RM entry template link.

* Added the "Multi-Thread HDF5" RFC.

* Added DOXYGEN_TAG_FILE.

* Added selection I/O RFC.

* Added the VFD Sub-filing RFC.

* Updated meta-documentation and added two old presentations.

* Added a few more RFCs (4).

* Fixed MANIFEST.

* Updated meta-documentation.

* Added Filters technical note.

* Fixed MANIFEST.

* Restore the path stripper.

* Experimental full-text search via Google.

* Better full-text search integration.

* Whoops. Forgot this one.

* Oh boy.

* Make CMake happy.

* Added "Debugging HDF5 Applications" technical note.

* Another batch of RFCs.

* Fixes for #1221.

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-11-24 08:32:53 -06:00
David Young
462e9a373f Create 2D arrays on the heap in a different way (#1169)
* Create 2D arrays on the heap by malloc'ing `struct { TYPE arr[ROWS][COLS];
}`.  This avoids the double-indirection through pointers and the
additional memory of H5TEST_ALLOCATE_2D_ARRAY().

This change will safely quiet the cast warning that PR #1129 was
intended to fix.

* Committing clang-format changes

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-11-23 08:09:05 -06:00
Gerd Heber
b9e4deec10 Next batch of Doxygen updates. (#1180)
* Sketch of the H5S life cycle.

* Committing clang-format changes

* Fix H5S_UNLIMITED snafu.

* Updated RM template and RM page.

* Added H5S life cycle.

* Committing clang-format changes

* Added H5T life cycle.

* Committing clang-format changes

* Cleaner layout (?)

* Cleaned the H5F life cycle. Called out unfinished biz.

* Committing clang-format changes

* Remaining life cycle skeletons.

* Committing clang-format changes

* Committing clang-format changes

* Added H5Z life cycle.

* Committing clang-format changes

* Added H5G life cycle.

* Committing clang-format changes

* H5 and H5I life cycle updates.

* Committing clang-format changes

* Added H5PL life cycle.

* Committing clang-format changes

* Added H5L life cycle.

* Committing clang-format changes

* Fix for Chris' comment.

* Add a variable for Doxygen pre-processor definitions.

* Forgot to add the H5M API.

* Clarify the H5Z life cycle.

* Committing clang-format changes

* Add H5Zdevelop.h to Doxygen.in. Added H5I life cycle.

* Committing clang-format changes

* Clarified introduction and fixed missing label declaration.

* Added H5O life cycle.

* Committing clang-format changes

* H5O cleanup, part 1.

* Committing clang-format changes

* Cleaned up some of the endless repetition in H5O.

* Committing clang-format changes

* Cookbook & RFC draft layouts.

* Updated manifest.

* Updated the manifest, the example paths, and sketched the 1st recipe.

* Committing clang-format changes

* Outlined two more recipes.

* Committing clang-format changes

* More recipes and RFCs.

* Committing clang-format changes

* Draft of templatized RFC references.

* Another batch of RFC changes.

* Another batch of RFCs.

* Fixed reference.

* RFCs in reverse chronological order.

* First cut of RFCs.

* Fixed reference.

* Updated recipes.

* Updated recipes.

* More RFCs.

* Updated D*PL comments.

* Added H5P descriptions.

* Committing clang-format changes

* H5R life-cycle snapshot.

* Committing clang-format changes

* H5R life-cycle. Added line numbers to life-cycle examples.

* Committing clang-format changes

* Fixed formatting for H5Dchunk_iter().

* Added comment on collective mode requirement w/ compression.

* Simplified API compat. macro dox.

* More API vers. updates.

* Hide the async macro entrails.

* Latest VFD SWMR RFC.

* Create a tag file for permalinks.

* Added TODOs for metadoc.

* Removed duplication.

* Revised RM landing page.

* Trimmed more duplication.

* Committing clang-format changes

* Revised H5D.

* Committing clang-format changes

* Updated survey link.

* Added Doxygen RM entry template link.

* Added the "Multi-Thread HDF5" RFC.

* Added DOXYGEN_TAG_FILE.

* Added selection I/O RFC.

* Added the VFD Sub-filing RFC.

* Updated meta-documentation and added two old presentations.

* Added a few more RFCs (4).

* Fixed MANIFEST.

* Updated meta-documentation.

* Added Filters technical note.

* Fixed MANIFEST.

* Restore the path stripper.

* Experimental full-text search via Google.

* Better full-text search integration.

* Whoops. Forgot this one.

* Oh boy.

* Make CMake happy.

* Added "Debugging HDF5 Applications" technical note.

* Another batch of RFCs.

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-11-23 08:05:40 -06:00
David Young
4b9ca8e1f6 Avoid calling H5Ropen_object with a misaligned H5R_ref_t: copy the (#1171)
* Avoid calling H5Ropen_object with a misaligned H5R_ref_t: copy the
raw H5R_ref_t bytes to a heap buffer that's known to have the right
alignment.

* Committing clang-format changes

* Use an automatic H5R_ref_t instead of malloc'ing one.  Go ahead and
initialize the H5R_ref_t to all-0s so that arbitrary stack content
doesn't foul things up.  Bail out with an error if `size` exceeds
`sizeof(H5R_ref_t)`.

* Committing clang-format changes

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-11-23 08:05:01 -06:00
jhendersonHDF
3f2271364e Make sure plugin interface is initialized before property list interface phase 2 (#1216) 2021-11-23 08:04:11 -06:00
Dana Robinson
3a2b3bb035 Stop lying about H5S_t const-ness (#1209)
Hyperslabs can be reworked inside several H5S callbacks, making H5S_t
non-const in some places where it is marked const. This change switches
these incorrectly const H5S_t pointer parameters and variables to
non-const where appropriate.
2021-11-20 08:34:50 -06:00
Dana Robinson
49f7e00ebe Quiets a 'set but not used' warning in h5diff_array.c (#1210) 2021-11-18 16:57:30 -06:00
Dana Robinson
56ba9da70b Fixes const warnings in H5ES package (#1211) 2021-11-18 16:56:32 -06:00
jhendersonHDF
cae59a0f11 Don't allow H5Pset(get)_all_coll_metadata_ops for DXPLs (#1201) 2021-11-18 10:07:29 -06:00
Allen Byrne
aa2f6735fb Github #969 Use stdout instead of file for configure check (#1089)
* Use stdout instead of file for configure check

* Make change requested by #1157

* Change fortran to use stderr for configure

* Correct typo

* remove obsolete file check

* Fortran statement fix
2021-11-17 23:53:00 -06:00
Allen Byrne
b823ddc526 Add javadoc to packages - HDFFV-11285 (#1197) 2021-11-16 23:13:59 -06:00
Larry Knox
28e92647f0 Move -Werror=int-conversion from error-general to error-5 in (#1194)
gnu-warnings (unrecognized command line option for gcc 4.85/4.93.
2021-11-13 22:11:25 -06:00
Dana Robinson
d224f98dbc Quiets most const warnings in the fractal heap code (#1188) 2021-11-12 22:36:32 -06:00
David Young
08b1c6ac3c Make it an error if the library implicitly converts from integer to (#1165)
pointer or from pointer to integer (-Werror=int-conversion).  Also,
make it an error if the library explicitly converts to pointer from an
integer of a different size (-Werror=int-to-pointer-cast).
2021-11-12 21:25:14 -06:00
Dana Robinson
4475a12b5f Fixes unused parameter warnings in the null VFD (#1179) 2021-11-12 20:11:23 -06:00
jhendersonHDF
b9da39d19f Fix MPI Comm and Info leak in H5FD__mpio_delete (#1189) 2021-11-12 11:28:47 -06:00
Dana Robinson
e4956cdba9 Cleans up pointer and ID reset code in H5Pint.c (#1182) 2021-11-10 15:06:24 -06:00
Dana Robinson
f12228c9f2 Quiets const warning in H5RS code (#1181) 2021-11-10 15:04:19 -06:00
jhendersonHDF
a777e3075e Fix H5DS warnings related to new H5DSwith_new_ref and H5VLobject_is_native APIs (#1184) 2021-11-10 12:09:38 -06:00
Dana Robinson
b488eb4ecc Fixes FUNC_ENTER warnings in VFDs due to recent init changes (#1178) 2021-11-09 22:40:46 -06:00
Dana Robinson
25fe28eb04 Fixes const issues in the version 2 B-trees (#1172)
The operations that were changed are fundamentally not const since the
shadow operation can modify the node structure when SWMR is in use.
2021-11-09 12:31:00 -06:00
jhendersonHDF
b736d442ae Re-enable collective metadata reads after disabling for chunk lookup (#1173) 2021-11-09 08:05:08 -06:00
David Young
a0445d806c Simplify function enter macros for performance benefits (#1024)
* Take a stab at using constructors to initialize instead of
function-entry macros.  This is a work in progress.  It's good enough to
run `many_dsets`.

* Committing clang-format changes

* Add the `many_dsets` benchmark and some scripts I used on jelly for
setting up the build/test environment and for recording/flame-graphing
profiles.

* Committing clang-format changes

* Change my Makefile and environment script to work both on jelly
and on mayll (and probably on Summit).

* Disable clang-format "fix."

* Replace the `if (!H5_TERM_GLOBAL)` test in each FUNC_ENTER_ macro with
`if (true)`.

* Fix bad grammar in a comment.

* Instead of labeling the H5*__init_package routines constructors, fold
each into an initialization routine, H5*_init(), and call each of
the H5*_init() routines.  Call most of the H5*_init() routines from
H5_init_library() in an explicit order that I found out earlier by
instrumenting each __init_package routine and running the library
tests.  Roll H5FD*__init_package routines into H5FD*_init() routines.
This change ends just-in-time initialization of package dependencies by
package initializers.

Don't track in per-package variables (H5_PKG_INIT_VAR) whether each
package has been initialized.  Instead, track in a single library
variable whether the whole library is initialized or not.

Drive the initialization of packages by H5_init_library() with a table
of initializer routines.  Also drive the termination of packages by
H5_term_library() with a table.

Perform initialization as needed from FUNC_ENTER_API_INIT(err).  This
basically restores the old behavior of that macro.

Delete a bunch of #definitions in H5private.h that have fallen out of
use with these changes.

* Committing clang-format changes

* Undo the bad auto-formatting that appears to have occurred in spite
of my disabling it.  Bracket some code in /* clang-format off */ /*
clang-format on */ to prevent a recurrence.

* Remove a diagnostic abort().

* Fix a logic error: print a comma between every package terminator run,
and don't print an initial comma.

* Complete the changes I started in H5_term_library() that undo the bad
auto-formatting.

Stop tracking whether package "tops" were initialized in per-package
variables H5*_top_package_initialize_s.  H5_term_library() takes care of
that for them.

Remove H5R_top_term_package() and H5R_term_package(), they don't do
anything.

* Committing clang-format changes

* NFCI.  Simplify macro text: replace `if (true) {` with `{`.

* Fix formatting and suppress clang-format on a longer range.

* Quiet some unused label, unused variable complaints that cropped up
after I simplified the FUNC_ENTER_ macros for the sake of performance.

* Committing clang-format changes

* Delete some programs and scripts that don't belong in the pull request.

* Use the right function-entry macro.

* Use a sensible format and disable auto-formatting.

* Stop calling do-nothing initializer H5FS_init().  Delete it.

* Document what changes to make if the default VFD changes.

* While I am here, change an `await_prior` flag on the terminator table
to `true` to match the previous, non-table-driven code that was here.
Found the oversight making the following changes:

NFCI: insert an empty line and copy over slightly-edited comments from
the previous version, where those comments still correctly explained how
library termination operated.

* NFCI: lower a staircase.

* Replace every occurrence of FUNC_ENTER_NOAPI_INIT(...) with H5_PUSH_FUNC
since that is all that that macro does any more.

Quiet a bunch of new warnings by changing FUNC_ENTER_NOAPI(...) to
FUNC_ENTER_NOAPI_NOERR and removing disused `done:` labels.

* NFCI: add curly braces around a multiline statement.

* Quiet a signed/unsigned comparison warning.

* Add some documentation about library initialization and shutdown.

* Make sure that the library is initialized, or else that initialization
is already underway, before performing any VFD's initialization.

* Committing clang-format changes

* Committing clang-format changes

* Reduce differences from `develop` branch.

* Always initialize `tot_init`.

* Committing clang-format changes

* Fix typo: H5SL_init initializes skip lists, not VOL.

* Remove H5_TERM_GLOBAL test in H5T_init.  H5T_init was unusual in that
it tested H5_TERM_GLOBAL and exited early if it was set.  No other
module initializers did that, and I cannot find any reason that should
be necessary.  Tests still pass when I remove it, so away it goes.

* Use HD prefix.

* Add function header comments.

* Drop the intermediate variable, it's only used once.

* Extract subroutine `H5FDperform_init(hid_t (*init)(void))` that
initializes the library, if necessary, before calling its VFD-initializer
argument.  Use H5FDperform_init in the definition of the symbols
H5FD_<vfd> (e.g., H5FD_SEC2), which may be evaluated before the library
is initialized, like so:

```
```

I implement H5FDperform_init in its own source file, H5FDperform.c,
and exclude that file from trace processing because the `bin/trace`
cannot deal with the function-pointer type.

* Straggler from last: add new source file src/H5FDperform.c.

* Committing clang-format changes

* Add a missing file to the MANIFEST.

* Switch to FUNC_ENTER_API_NOINIT in H5FDperform_init() and hbool_t in
H5_term_library().

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-11-08 15:08:07 -06:00
David Young
e82d39ca0e Fix the function cast error in H5Dchunk.c and activate (#1170)
`-Werror=cast-function-type`.  Again.
2021-11-08 14:33:39 -06:00
Allen Byrne
6b737bf4cf Add option for h5repack timing (#1142)
* Add timing option to h5repack

* Adjust help text

* fix format

* fix typos

* Correct spacing

* Change timing to use H5Timer

* Committing clang-format changes

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-11-08 13:48:58 -06:00
Sean McBride
9cea7c9bb9 Assume C99 fixed sized ints exist, use them (#470)
* Committing clang-format changes

* Assume C99 fixed sized ints exist, use them

* Assume H5_SIZEOF_LONG_DOUBLE != 0, `long double` has existed since C89

Note, this is only assuming that `long double` exists, no assumptions about its size have been touched.  Didn't remove any code that does things like test if `long double` and `double` have different sizes.

* Committing clang-format changes

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-11-08 12:44:06 -06:00
H. Joe Lee
a8d03d30ff OESS-168: Remove clang warnings. (#1124)
* OESS-168: Remove clang warnings.

* OESS-168: Remove clang warnings.

* Committing clang-format changes

* OESS-168: Address @derobins review for FALLTHROUGH.

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-11-05 08:31:01 -05:00
H. Joe Lee
b3f35a97a9 OESS-168: Remove clang warnings. (#1136)
* OESS-168: Remove clang warnings.

* OESS-168: Address @byrnHDF and @derobinson review.
2021-11-05 08:06:54 -05:00
H. Joe Lee
57c6fbfdd7 OESS-168: Remove clang warnings. (#1137)
* OESS-168: Remove clang warnings.

* OESS-168: Address @derobins review.
2021-11-05 08:06:02 -05:00
jhendersonHDF
93ac9b0aeb New references for Dimension Scale APIs (#1139)
* Enable usage of new-style references with dimension scale APIs

* Add API to check if an object ID represents a native connector object

* Modified code to use new function H5DSwith_new_ref to determine if new references should be used with
Dimension Scales. The new function return TRUE if non-native connector is used or if H5_DIMENSION_SCALES_WITH_NEW_REF
varible is define at configure time (--enable-dimension-scales-with-new-ref).

Tested on jelly.

ToDo: generate testing file on BE system and enable the test; add flag to CMake; test netCDF-4 with the new references.

* Adding new test files generated on BE system (hedgehog) created by 32 and 64-bit library.

test_ds chokes on test_ds_le_new_ref.h5  on BE system; test passes for test_ds_be_new_ref-32bit.h5
for the 32-bit library and fails for the 64-bit library, and vice versa. I am checking the files for further
investigation; but current implementation of the new references is not portable between LE and BE systems,
and 32 and 64-bit systems.

* Minor fixes for testing issues

* Update test_ds.c

Enabled broken test; tests pass now.

* Update RELEASE.txt

Documented new option to use new references with the HDF5 dimension scales APIs (H5DS*).

* Update MANIFEST for new 32-bit new-style references test file for H5DS APIs

* Update 'dimension scales w/ new-style refs' feature based on review

Co-authored-by: Elena <epourmal@hdfgroup.org>
2021-11-05 07:33:02 -05:00
H. Joe Lee
55ee1fd655 OESS-168: Remove clang warnings. (#1105)
* OESS-168: Remove clang warnings.

* Committing clang-format changes

* OESS-168: Address @soumagne review.

* Committing clang-format changes

* OESS-168: Address @soumagne review.

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-11-04 08:15:21 -05:00
Allen Byrne
81b9d71a24 Fix Java VOL tests (#1158) 2021-11-03 07:28:30 -05:00
H. Joe Lee
60ed6c0df4 OESS-168: Remove clang warnings. (#1146) 2021-11-02 14:24:14 -05:00
H. Joe Lee
ed3584ecc6 OESS-168: Remove clang warnings. (#1135) 2021-11-02 14:22:45 -05:00
H. Joe Lee
4aad0feb34 OESS-168: Remove clang warnings. (#1127)
* OESS-168: Remove clang warnings.

* OESS-168: Address @lrknox clang-format review.
2021-11-02 14:22:01 -05:00
Allen Byrne
7ef6f7b6f8 Set the plugin path to the library default (#1144) 2021-10-29 17:41:04 -05:00
Scot Breitenfeld
9e0f68b967 correct error checking string (#1143)
* fixed missed closing of a dataset

* fixed missed closing of a dataset

* fixed typo in error return

* Committing clang-format changes

* minor edits

* code format

* Committing clang-format changes

* code format

* minor edit

* switched from using MPI_count, to actual bytes written for H5FD_mpio_debug rw debugging

* Committing clang-format changes

* changed size_i in printf to reflect the I/O.

* Committing clang-format changes

* Fixed seg fault with xlf on BE with -qintsize=8

* fixed error function string

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-10-29 08:13:21 -05:00
Allen Byrne
fabdce56ef Split dir create into separate macro (#1141)
* Split dir create into separate macro

* Correct VFD settings
2021-10-28 07:49:28 -05:00
Allen Byrne
07a3a1c70b Github #1019 - add Fortran developer flags (#1090) 2021-10-27 16:32:33 -05:00
Larry Knox
8d1fe44164 H5repack tests should fail if a corrupted file causes h5repack to (#1138)
* H5repack tests should fail if a corrupted file causes h5repack to
segfault/core dump.

* Add release note for HDFV-10590, CVE-2018-17432.
2021-10-25 21:17:44 -05:00
Allen Byrne
aee9e06aa8 Consolidate VFD create list macro (#1132) 2021-10-25 21:17:23 -05:00
Dana Robinson
b0bd984ed6 Removes the "try free" behavior from the skip lists (#1126)
* Removes the "try free" behavior from the skip lists

This was only used in the ID code when iterating and a callback
could delete IDs. It is not used anywhere else in the library and
is now pointless overhead.

Also quiets the const warnings when returning stored elements. They
only need to be const with respect to the skip list code, which should
never modify them. The library can do whatever it wants with the elements
it stored.

* Formatted source
2021-10-22 10:02:28 -05:00
H. Joe Lee
4600e10106 OESS-168: Remove clang warnings. (#1117) 2021-10-21 16:10:07 -05:00
jhendersonHDF
bf395daa6f Fix map open to use correct VOL argument structure (#1116)
Fix map iterate by setting key memory type ID field
2021-10-21 16:08:28 -05:00
Larry Knox
f9a57500ca Add release note for HDFFV-11150 fix. (#1106)
* Add release note for HDFFV-11150 fix.

* Add note about gif tool CVEs.
2021-10-21 16:08:05 -05:00
Allen Byrne
76c77a242c Correct java exception declarations (#1121) 2021-10-20 13:54:41 -05:00
Allen Byrne
e1c4209f9f Fixed HL_test_packet, incorrect length assignment (#1100) 2021-10-20 12:17:37 -05:00
Allen Byrne
6d4d0fb13d Move test utilities to utils/test folder (#1109)
* Move test utilities to utils/test folder

* Fix makefile assignment

* Add new dir

* add new folder

* Correct copied makefile

* Fix dir typo

* Add missing include dir

* Remove unnecessary lib link

* Correct dependent dirs

* Fix conditional checks

* Disable test if not built

* fix path to executable

* Use fixture for swmr_vfd check

* Add release note

* Correct shell tests and c++ flag warning

* Update autotools c++ warning

* Fix typo
2021-10-20 08:25:06 -05:00
H. Joe Lee
c196bf98eb OESS-168: Remove clang warnings. (#1075)
* OESS-168: Remove clang warnings.

* Committing clang-format changes

* OESS-168: Fix CI failure.

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-10-20 08:09:30 -05:00
H. Joe Lee
82b61574e1 OESS-168: Remove clang warnings. (#1072)
* OESS-168: Remove clang warnings.

* Committing clang-format changes

* Address review by @jehndersonHDF.

* Address review by @jehndersonHDF.

* OESS-168: Fix CI failure.

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-10-14 22:06:42 -05:00
H. Joe Lee
780dc11e6e OESS-168: Remove clang warnings. (#1077) 2021-10-07 21:59:32 -05:00
H. Joe Lee
0f3ed99d85 OESS-168: Remove clang warnings. (#1076) 2021-10-07 21:59:10 -05:00
Allen Byrne
83eeef504a Add missing dataset reference text (#1081)
* Add missing dataset reference text

* Only print name if not printing data
2021-10-07 17:06:49 -05:00
H. Joe Lee
e2cdb618ae OESS-168: Remove clang warnings. (#1074)
* OESS-168: Remove clang warnings.

* Committing clang-format changes

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-10-06 16:25:40 -05:00
H. Joe Lee
52cb2833de OESS-168: Remove clang warnings. (#1071)
* OESS-168: Remove clang warnings.

* Address review by @jehndersonHDF.
2021-10-06 16:25:08 -05:00
David Young
174f4275ba To reduce maintenance effort, delete the noerror- variants of the compiler flags files (#1033)
* Avoid maintenance headaches: delete the `noerror-` variants of the
compiler flags files, since they essentially duplicate the `error-`
files modulo the replacement of `-Werror=` with `-W` and any changes in
comments.  (I verified the duplication with a script.)

For autoconf, reinstate the use of the `demote_errors` shell function to
derive the `noerror-` content from the `error-` content.  `demote_errors`
replaces `-Werror=` with `-W` when `WARNINGS_AS_ERRORS` is `no`.

Slightly reorder `configure.ac` so that the setting of
`WARNINGS_AS_ERRORS` takes effect before the `error-` files are sourced.

* Take a stab at updating the CMake files to match the changes I made to
the autoconf files to remove `noerror-` files.  I'm not much of a CMake
user so these changes are quite rough.

Looks like the duplication can be reduced with the introduction of a new
macro.

* Delete `noerror-` files from the MANIFEST.

* Reduce duplication in the CMake files: perform the
HDF5_ENABLE_WARNINGS_AS_ERRORS test once in the ADD_H5_FLAGS macro.

* Add a release note.
2021-10-06 16:24:22 -05:00
Larry Knox
a08059894b Add tools/src/h5perf/Makefile.in (#1066) 2021-10-04 06:16:13 -05:00
Allen Byrne
eca8d5b767 Fix ASAN issue in h5dump error path (#1051)
* Fix ASAN issue in h5dump error path

* Rework error allocation free.
2021-10-03 08:06:08 -05:00
Allen Byrne
b3cb56e255 ASAN fix for test_ld - free sub-allocation of fields (#1052) 2021-10-01 16:51:38 -05:00
Neil Fortner
22cdccb799 Fix bug with cross platform compatibility of references within vlens. (#1064)
No testing yet.
2021-10-01 14:28:50 -05:00
H. Joe Lee
1f7ddf47f5 OESS-168: Remove clang warnings. (#1057)
* OESS-168: Remove clang warnings.

* Committing clang-format changes

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-09-30 10:45:33 -05:00
H. Joe Lee
80c041d6da OESS-168: Remove clang warnings. (#1056) 2021-09-30 10:45:08 -05:00
jhendersonHDF
6c794a8d98 Move HDstrcmp operations inside casting block for PGI compilers (#1063) 2021-09-30 10:37:40 -05:00
jhendersonHDF
bbbc31e28e Fix Mirror, HDFS and ROS3 case statements for VFD value in H5trace (#1062) 2021-09-30 10:37:23 -05:00
jhendersonHDF
5b5f0c08c9 Update compact dataset I/O routines to handle driver-level memory copy (#1054)
* Update compact dataset I/O routines to handle driver-level memory copy

* Combine compact I/O read/write struct into single I/O struct

Rename CTL memory copy flag and H5Fquery routine to get file driver
structure

* Add RELEASE.txt entry for new "ctl" memory copy operation
2021-09-29 23:00:24 -05:00
jhendersonHDF
3da0802c40 VFD plugins (#602)
* Implement support for loading of Virtual File Drivers as plugins

Fix plugin caching for VOL connector and VFD plugins

Fix plugin iteration to skip paths that can't be opened

* Enable dynamic loading of VFDs with HDF5_DRIVER environment variable

* Temporarily disable error reporting during H5F_open double file open

* Default to using HDstat in h5_get_file_size for unknown VFDs

* Use macros for some environment variables that HDF5 interprets

* Update "null" and "ctl testing" VFDs
2021-09-29 13:28:12 -05:00
H. Joe Lee
0fa5836cc5 OESS-168: Remove clang warnings. (#1050)
This patch will remove clang double-promotion warning.
2021-09-29 08:59:47 -05:00
H. Joe Lee
c7d7942510 OESS-168: Remove clang warnings (#1049)
This patch will remove clang double-promotion warning.
2021-09-29 08:59:34 -05:00
H. Joe Lee
35cf4a69bf OESS-168: Remove clang warnings. (#1047)
This patch will remove clang warnings on Mac:

      'float' to 'double' [-Wdouble-promotion]
2021-09-29 08:59:24 -05:00
H. Joe Lee
9e319d403c OESS-168: Remove clang warnings. (#1046)
This patch will remove clang warnings on Mac:

``` warning: implicit conversion increases floating-point precision:
      'float' to 'double' [-Wdouble-promotion]
```
2021-09-29 08:59:11 -05:00
Larry Knox
1c52149f75 Update version to 1.13.0-7 after snapshot release 1.13.0-6. (#1048) 2021-09-29 07:38:59 -05:00
Larry Knox
b410d9535c Update Platforms Tested in RELEASE.txt. (#1045)
* Update Platforms Tested in RELEASE.txt.
Remove Tested Configuration Features Summary for updated replacement.

* Set version to 1.13.0-6 for rc6 snapshot.
2021-09-28 14:35:19 -05:00
Allen Byrne
516d967710 Develop cmake install dir (#1041)
* Corrected path searched by CMake find_package command

* Correct path for depend libs

* Adjust examples script for install path
2021-09-28 08:00:37 -05:00
Allen Byrne
ecb3383c8d Develop libaec up (#1037)
* Upgrade libaec to 1.0.6

* correct include file name
2021-09-28 07:59:07 -05:00
Allen Byrne
cc7c0eb910 MS clang needs EHsc flag (#1035) 2021-09-24 08:06:35 -05:00
jhendersonHDF
4640005052 VFD ctl feature (#981)
* Added "ctl" callback to the VFD interface, and the associated
H5FDctl() and H5FD_ctl() calls.

Modified the MPIO VFD accordingly -- specifically:

Added ctl() call with op-code support to expose rank, size,
and communicator.

Modified H5FD_mpi_get_rank(), H5FD_mpi_get_size(),
and H5FD_mpi_get_comm() to use the new ctl() callback.  In passing
removed the const qualifier from the file parameter of these
functions, as the file parameter of the ctl callback is not
const.

Deleted the old  H5FD__mpio_mpi_rank(), H5FD__mpio_mpi_size(), and
H5FD__mpio_communicator() calls from the MPIO VFD.

Deleted H5FD_class_mpi_t from H5FDprivate.h, and modified the
MPIO VFD accordingly.  Note that all VFDs now use H5FD_class_t,
with no special class for VFDs that that support MPI.

Some minor touch ups to the Neil's selection I/O mods in passing.

Tested serial and parallel, debug and production on charis and
jelly.

* Reserve a range of VFD "ctl" opcodes for library and experimental usage

* Add "ctl" callbacks to passthrough VFDs

* Add RELEASE.txt entry for "ctl" callback

* Use H5FDopen with H5F_ACC_RDWR flag instead of H5F_ACC_TRUNC in vfd test

* Remove handling of passthrough "ctl" flag from multi VFD

* Move logic for testing H5FD_CTL__TEST_OPCODE into a testing VFD

Revise description of "ctl" callback in RELEASE.txt

Remove unused H5FD_CTL__NUM_OPCODES definition

Fix some warnings in multi VFD

Co-authored-by: mainzer <mainzer#hdfgroup.org>
2021-09-23 07:50:00 -05:00
Allen Byrne
534435271f Need to match clang and versions not just "Clang" (#1029) 2021-09-22 06:51:55 -05:00
Allen Byrne
c0f2bc87ac HDFFV-11266 - add option to build HL tools (#1018)
* HDFFV-11266 - add option to build HL tools

* Correct if syntax

* Correct name of conditional
2021-09-16 12:15:25 -05:00
Allen Byrne
daeb4454f6 Disable fortran warning (#1014) 2021-09-16 10:21:21 -05:00
Sean McBride
1f2bba5255 Modified gcc/clang warning suppression macros to account for some warnings flags being supported by one compiler but not the other (#379)
* Committing clang-format changes

* Fixed GCC warning suppression pragmas to also work with clang

H5_GCC_DIAG_ON remains gcc-only.

Added a new H5_CLANG_DIAG_ON that's clang-only, but it's not used anywhere currently.

Added a new H5_GCC_CLANG_DIAG_ON that works with both compilers, which afterall support mostly the same warnings.  Changed almost all uses of H5_GCC_DIAG_ON to use H5_GCC_CLANG_DIAG_ON, with the exception of a couple, where they really were suppressing gcc-only warnings.

* Committing clang-format changes

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-09-16 07:42:20 -05:00
Allen Byrne
1c892fb41f Fix java warnings (#1005) 2021-09-15 08:26:25 -05:00
jhendersonHDF
cd2ca91875 Fix several warnings (#720) 2021-09-14 15:24:01 -05:00
Jan-Willem Blokland
7c973deaf1 H5Ztrans: (feature) Improved H5Z_xform_noop() and H5Z_xform_create() … (#933)
* H5Ztrans: (feature) Improved H5Z_xform_noop() and H5Z_xform_create() function

- Made a small improvement for H5Z_xform_noop() function. Now,
  the function will also return TRUE if the data transform function
  expression = "x". For this case, the HDF5 library behaves in a
  similar fashion as the case when no data transform function has been
  specified.
- Improved the inline documentation of the function
  H5Z_xform_create() such it is more inline with the rest of the
  code.

* Committing clang-format changes

* H5Ztrans: (feature) Added 3 tests for improved H5Z_xform_noop() function

- Added serial test with data transform expression = "x" to
  verify the improved H5Z_xform_noop() function behaves as expected.
- Added 2 parallel tests with data transform expression = "x"
  in combination with a filter. Before, these tests will fail but
  with the improved H5Z_xform_noop() function they work and result
  in the expected behavior.
- Small bug fix for one of parallel filter tests.

* Committing clang-format changes

* H5Ztrans: (feature) Added release note about detection of the
           simple data transform function "x".

- Added a brief explanation about the implemented improvement
  of the detection of the simple data transform function "x"
  to the RELEASE.txt file.

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-09-13 15:05:19 -05:00
Allen Byrne
f6f1a02344 Update examples version because of HDFFV-11269 (#998) 2021-09-10 07:45:04 -05:00
Allen Byrne
b58f8540ac Fix various warnings and issues in doxygen doc generation (#994)
* Fix various warnings and issues in doxygen doc generation

* Add new file to list
2021-09-10 07:40:27 -05:00
Alessandro Felder
8e06298ecf Add high-level set/get for unsigned long long attributes. (#973)
* add ULL attr set/get signatures to LT public API

* add LT implementation of ULL set/get attribute

* fix copy-paste typo in test comment

* add ULL test data

* define ullong attr name global variable

* add LT tests for ULL attr set/get

* Committing clang-format changes

* correct type passed to lt get attr test for ULL

* update RELEASE.txt with added ULL set/get functionality

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-09-08 15:53:15 -05:00
Larry Knox
919f9daec6 Update copyright headers with reproduction notice in 5 files (#993)
* Update copyright headers with reproduction notice in 5 files that did
not match terms in COPYING file
.

* Committing clang-format changes

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-09-08 09:52:03 -05:00
Allen Byrne
163d40dd42 Correction of pkg-config compile script. (#974)
* Correction of pkg-config compile script.

* Reword note.
2021-09-07 08:25:39 -05:00
Allen Byrne
216f5ba65e Sync CMake java macros with cmake repo (#982) 2021-09-07 08:18:53 -05:00
Allen Byrne
f679c6ea28 Small doxygen fixes plus simple doc fixes (#989)
Change doxygen generated file location
Clang format override for flags
2021-09-04 15:22:07 -05:00
Allen Byrne
6d15c45225 Synch CMake doxygen options with autotools configure (#983) 2021-09-02 07:57:47 -05:00
Gerd Heber
cf25524474 A batch of life-cycle examples for different modules (#654)
* Create a tag file for permalinks.

* Added DOXYGEN_TAG_FILE.

* Added Doxygen life-cycle examples for different modules.

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-09-01 16:09:27 -05:00
Scot Breitenfeld
01fe2549a3 Rework of PR #826 (#972)
*    H5Fget_name_f fixed to handle correctly trailing whitespaces and newly allocated buffers.

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-08-30 09:56:32 -05:00
Scot Breitenfeld
794acf489f Fixed failure on BE with xlf (#968)
* fixed missed closing of a dataset

* fixed missed closing of a dataset

* fixed typo in error return

* Committing clang-format changes

* minor edits

* code format

* Committing clang-format changes

* code format

* minor edit

* switched from using MPI_count, to actual bytes written for H5FD_mpio_debug rw debugging

* Committing clang-format changes

* changed size_i in printf to reflect the I/O.

* Committing clang-format changes

* Fixed seg fault with xlf on BE with -qintsize=8

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-08-30 09:09:06 -05:00
Sean McBride
131402a92d More various warnings (#958)
* Committing clang-format changes

* Fixed various -Wdouble-promotion warnings

* Fixed -Wshadow warning for `optopt` conflict

On macOS at least, there is a global various named `optopt` in unistd.h.

* Committing clang-format changes

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-08-24 23:05:23 -05:00
Dana Robinson
e9765e6c09 Move pwd header check to alphabetical order (#954) 2021-08-23 18:45:29 -05:00
Sean McBride
f6c49fe891 More clang tidy (#908)
* Pacify clang-analyzer-unix.cstring.NullArg

* Apply some bugprone-suspicious-string-compare

* Apply some readability-simplify-boolean-expr

* Apply some readability-make-member-function-const

* Apple some bugprone-macro-parentheses

* Changed an f suffix to L for `long double`

* Applied some readability-uppercase-literal-suffix automatically

* Committing clang-format changes

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-08-23 16:14:53 -05:00
Ben Boeckel
b5f5c59f29 cmake: simplify try_run result comparisons (#950)
Instead of looking at `MATCHES 0` which runs a regex and returns a false
positive for any result such as `10`, check if they are equal to `0`.
Also quote `0` to avoid looking it up as a variable (which was left
behind prior to the fix to use `${RETURN_VAR}` in the `c_run` macro).
2021-08-23 08:36:21 -05:00
Allen Byrne
b38bc071e9 Remove incorrect compiler check for windows clang sanitizer (#942) 2021-08-20 15:49:53 -05:00
Sean McBride
09283ffbcb Get class name null str (#899)
* Fixed MSVC compile error in C++23 mode

Error message from MSVC with C++23 enabled:

error C2440: 'return': cannot convert from 'int' to 'std::basic_string<char,std::char_traits,std::allocator>'

* Committing clang-format changes

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-08-20 15:32:15 -05:00
Jan-Willem Blokland
de60f08b0d CMake: (fix) ph5example test (#935)
Ensure that the used number of processes times an integer number
is equal to SPACE1_DIM1 and SPACE_DIM2. These variables are
equal to 24 and are defined in ph5example.c. If this is not the
case the ph5example test will fail.
2021-08-19 16:45:43 -05:00
Allen Byrne
3600d33f10 CMake should use the output dir programs for shell scripts (#928) 2021-08-19 16:03:05 -05:00
Larry Knox
564380d176 Fix issue #924 in develop branch: the ${HDF5_CXXLINKER} does not work in h5c++ (#925)
* Committing clang-format changes

* Fix issue #924, ${HDF5_CXXLINKER} does not work in h5c++.
2 instances of CLINKER corrected to CXXLINKER
comment border aligned

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-08-19 15:57:48 -05:00
Allen Byrne
2524b57a6f Develop windows compiler fixes (#912)
* Fix windows compiler issues

Restore MS C++ Default exception handling behavior #885
Remove clang toolchain as it skips compiler checks

* Add check and header gaurd for pwd.h

* Revert change

* Committing clang-format changes

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-08-19 15:56:37 -05:00
Allen Byrne
c88c0f2008 Correct number of args to Windows HDunsetenv macro (#939)
* Correct number of args to Windows HDunsetenv macro

* Correct format
2021-08-19 13:07:49 -05:00
Allen Byrne
c019db60ee Remove non-published short arg names (#917)
* Remove non-published short arg names

* Committing clang-format changes

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-08-18 11:05:02 -05:00
Allen Byrne
af7989e858 Correct dataset close in java test (#919)
* Correct dataset close

* Committing clang-format changes

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-08-18 11:02:29 -05:00
Allen Byrne
04c504664b Fix formatting (#923) 2021-08-18 10:58:02 -05:00
Allen Byrne
451b472cdd Fixed the CMake processing for C++ warnings and flags (#888) 2021-08-16 08:06:59 -05:00
Allen Byrne
6968906418 Fix clang/sanitizer for windows (#883)
* Fix clang/sanitizer for windows

* Restrict MSVC version for sanitize
2021-08-16 08:05:25 -05:00
Allen Byrne
c0f1db4b96 Update examples version used by CMake (#882) 2021-08-12 07:50:16 -05:00
Dana Robinson
b5c66529e9 Fixes a bad memory read and unfreed memory in fsinfo code (#893)
* Fixes a bad memory read and unfreed memory in fsinfo code

The segfaul from CVE-2020-10810 was fixed some time ago, but the
illegal memory read and unfreed memory were not.

This fix tracks some buffer sizes and errors out gracefully on errors,
ensuring buffers are cleaned up and avoiding the H5FL infinite loop +
abort on library close.

* Committing clang-format changes

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-08-12 07:21:50 -05:00
David Wells
7c918e685f Guard the SKIP_MPICXX macros against redefinition. (#892) 2021-08-12 07:12:21 -05:00
jhendersonHDF
baefe44494 Fix link issue with perf/h5perf in parallel library (#889) 2021-08-11 07:31:49 -05:00
Allen Byrne
06a09a962a Reorg tools perform to provide h5perf for installation (#884)
* Changes from PR#3

* HDFFV-11213 added option to control gcc10 warnings diagnostics

* HDFFV-11212 Use the new references correctly in JNI utility and tests

* format source

* Fix typo

* Add new test file

* HDFFV-11212 - update test and remove unused arg

* Minor non-space formatting changes

* Use H5I_INVALID_ID instead of "-1"

* source formatting

* add missing testfile, update jni function

* Undo commit of debug code

* remove mislocated file

* Fix h5repack test for handling of fapls and id close

* Update h5diff test files usage text

* HDFFV-11212 add new ref tests for JNI export dataset

* src format update

* Remove blank line typo

* src format typo

* long double requires %Lg

* Another long double foramt specifer S.B. %Lg

* issue with t128bit test

* Windows issue with h5dump and type.

* Fix review issues

* refactor function nesting and fix error checks

* format fixes

* Remove untested functions and javadoc quiet comments

* Restore TRY block.

* Change string append errors to memory exception

* revert to H5_JNI_FATAL_ERROR - support functions need work

* Add assertion error for h5util functions

* remove duplicate function

* format fix

* Revert HD function error handling

* Update copyright comments

* GH #386 java folder copyright corrections

* Whitespace

* GH #359 implement and fix tools 1.6 API usage

* remove excessive comments

* Flip inits to correct ifdef section

* rework ifdef to be simpler

* format issue

* Reformat ifdef inits

* remove static attribute

* format compliance

* Update names

* Revert because logic relies on float not being int

* Changes noticed from creating merge of #412

* Double underscore change

* Correct compiler version variable used

* Remove header guard underscores

* Whitespace cleanup

* Split format source and commit changes on repo push

* remove pre-split setting

* Change windows TS to use older VS.

* correct window os name

* HDFFV-11212 JNI export util and Javadoc

* Suggested review changes

* Another change found

* Committing clang-format changes

* HDFFV-11113 long double in tools

* HDFFV-11113 add note

* Disable long double tests for now

* HDFFV-11228 remove arbitrary CMake warning groups.

* Make each flag a string

* Some Javadoc warning fixes

* Updated javadoc fixes

* # WARNING: head commit changed in the meantime

HDFFV-11229 Fix long double usage in tools and java

Changed h5dump and h5ls to just print 128-bit for long double type.
Added test and file for dataset and attributes with all three float
types.

* Committing clang-format changes

* HDFFV-11229 Add release note

* HDFFV-11229 windows testfile needed

* fix typo

* Remove non supported message text

* HDFFV-11229 - change ldouble test to check both native and general

* HDFFV-11229 add second file compare

* HDFFV-11229 fix reference file

* HDFFV-11229 autotools check two refs

* HDFFV-11229 revert back to removal of NATIVE_LDOUBLE in tools output

* Committing clang-format changes

* Update release note

* Update attribute type of ref file

* Change source of ninja for macs

* try port instead of brew

* Recommended is to use brew.

* Undo non long double changes

* remove unneeded file

* Fix perl and doxygen CMake code

* Add "option" command for clang options

* Rework CMake add_custom to use the BYPRODUCTS argument

* Add stamp files to BYPRODUCTS

* Only one copy of file exists

* Fix custom cmmand depends targets

* Fix fortran custom command DEPENDS

* Add LD_LIBRARY_PATH to tests

* Add custom target for DEPENDS

* Add h5detect conditionaly to generated target DEPENDS

* Correct DEPENDS targets

* Parallel builds need the mpi compiler for pkgconfig scripts.

* install only if MPI build

* Fortran target depends

* Remove incorrect source attribute

* doxygen adjustments

* doxygen build updates

* Correct version

* Correct function version - function has been merged to 1.12

* Correct version string for map functions

* Cleanup warnings for tools debug builds

* TRILAB-227 - fix indexing for h5diff selections

* Correct location of pos to index function call

* TRILAB-227 Enable test

* Quote subset args

* Use MATCHES because of AppleClang

* if blocks needed for build modes

* Update list of DT platforms

* VS2019 correctly displays float values

* revert VS2019 change

* Issue #669 remove version from pkgcfg filename

* remove version from h5cc script

* Java reference functions updated

enabled fortran in cmake gcc action yaml file
java reference test changed to correctly test refs
jni reference functions that create ids changed to use jni id logging

* Correct BYPRODUCTS argument

* Correct more genereated files BYPRODUCTS

* BYPRODUCTS must have unique locations

* Fix typo

* Fix fortran configure checks

* Rework H5_PAC_C_MAX_REAL_PRECISION setting logic

* Add note about fortran configure change

* Adds a quick for for some egregious chunk_info badness (#722)

* Fixes issue with ccmake that prevents building Fortran (#723)

ccmake runs iteratively, and the check_fortran_source_runs
macros were clobbering a single output file that did not
get updated on further configure iterations

* Fix conflicts with merge

* Move MAX_PRECISION back to HDF5UseFortran.cmake

* Use STREQUAL to test macro argument

* Move C language test to ConfigureChecks from HDF5UseFortran

* MAX_PRECISION defines must be defined

* Organize flags and align autotools and cmake

* Fix comment in no-error-general warnings files.

* Flag cleanup and fix typos

* Add comment

* Correct VAR used to find configure time file

* Set the path correctly

* Update missing release note info.

* Update code owners

* Correct JIRA note

* add known problem.

* Use only core library for testing dynamic plugins.

* Reorg tools perform to provide h5perf for installation

* Correct file paths

* Correct path

* Add new src folder to makefile list

* Remove bin_PROGRAMS from TEST_PROG

* Default h5perf executables to static build

* Remove test lib dependency from h5perf

* format adjustments

* Remove test lib from autotools makefile

* Add note

* h5perf needs the math library

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Dana Robinson <43805+derobins@users.noreply.github.com>
2021-08-10 08:57:36 -05:00
Allen Byrne
acb186f6e5 Add parallel version of h5pfc script (#881) 2021-08-07 08:55:23 -05:00
Dana Robinson
5dabec4cf6 Removes partial long options from the tools (#872)
Some of the command-line tools would allow partial long options (e.g.,
--datas instead of --dataset). These were inconsistently implemented,
difficult to maintain, and occasionally blocked useful long options.
They have been removed from all the tools.

NOTE: This change should NOT be merged to 1.12 or earlier.
2021-08-03 16:04:58 -05:00
Dana Robinson
04f1bff675 Updates the RELEASE.txt file with a note about the variable-length fill (#871)
value issue. A fix is in progress, but it might be a while before
we have time to finish it up.
2021-08-03 16:04:30 -05:00
Larry Knox
48a05aa887 Unsigned comparison to 0 warning avoidance (#869)
* Added int variable for comparison with H5_VERS_RELEASE in H5.c to avoid
warning that unsigned comparison < 0 is always false, which is known,
        but for later versions the comparison can possibly be true.

* Better solution for avoiding warning that unsigned comparison < 0.
2021-08-01 22:07:01 -05:00
Larry Knox
9fd356e240 Added int variable for comparison with H5_VERS_RELEASE in H5.c to avoid (#866)
warning that unsigned comparison < 0 is always false, which is known,
        but for later versions the comparison can possibly be true.
2021-07-29 20:18:37 -05:00
Dana Robinson
9bb1d6d78e Updates a comment in H5mpi.c (#863)
MPI_Type_struct() is an MPI-1 call we no longer use.
2021-07-28 16:29:10 -05:00
Allen Byrne
cfcdf21518 Remove version-check for relnum in H5check. (#812)
* Remove version-check for relnum in H5check.

* Add in release exception code check

* Fix typos

* Fix more typos

* Rework comments

* format change

* format whitespace

* Library version must be less than or equal to headers

* Need the NOT version of the compare

* Enable release+1 check for PASS

* Add release note

* Update note
2021-07-27 15:44:05 -05:00
Allen Byrne
74f1590d47 Only test h5diff_830 in serial (#858) 2021-07-27 13:59:05 -05:00
H. Joe Lee
f3441d5486 OESS-168:Remove clang warnings. (#835)
* OESS-168:Remove implicit conversion increases floating-point precision warnings.

* OESS-168:Remove clang warnings.

* OESS-168:Remove clang warnings.

* Committing clang-format changes

* OESS-168:Remove clang warnings.

* Committing clang-format changes

* OESS-168:Remove clang warning.

* OESS-168:Remove clang warnings.

* OESS-168:Address @byrnHDF review.

* Remove line added to generated hl/src/H5LTanalyze.c file.
Issue #854 created for creating a fix.

* Remove extra whitespace from H5LTanalyze.c.

* Remove extra blank line.

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Larry Knox <lrknox@hdfgroup.org>
2021-07-26 15:18:15 -05:00
Dana Robinson
725da3768b Removes unused commented-out code from h5jamgentest.c (#851) 2021-07-22 13:42:06 -05:00
Dana Robinson
06de43332d Fixes a couple of warnings: (#849)
- warn_unused_result warnings from h5jamgentest and j5stat_gentest
   that were triggered by write(2) calls where we didn't check the
   return value
 - A missing callback in the NULL VOL connector
 - A possibly uninitialized property list pointer
2021-07-22 08:13:14 -05:00
jhendersonHDF
96b6872a1e Avoid popping API context when one wasn't pushed (#848) 2021-07-22 08:12:42 -05:00
Allen Byrne
20dd1cedb3 Issue #833 fix setting return result (#843) 2021-07-21 11:12:39 -05:00
jhendersonHDF
50a37fde06 Allow parallel filters feature for comm size of 1 (#840) 2021-07-19 20:40:28 -05:00
Allen Byrne
436727dcea Perform option arg variables (#834)
* Correct option name

* Undo accidental commit

* Note LLVM 10 to 11 format default changes

* Update format plugin

* Undo clang-format version 11 changes

* One more correction

* Update supported platforms

* Revert whitespace changes

* Correct whitespace

* Changes from PR#3

* HDFFV-11213 added option to control gcc10 warnings diagnostics

* HDFFV-11212 Use the new references correctly in JNI utility and tests

* format source

* Fix typo

* Add new test file

* HDFFV-11212 - update test and remove unused arg

* Minor non-space formatting changes

* Use H5I_INVALID_ID instead of "-1"

* source formatting

* add missing testfile, update jni function

* Undo commit of debug code

* remove mislocated file

* Fix h5repack test for handling of fapls and id close

* Update h5diff test files usage text

* HDFFV-11212 add new ref tests for JNI export dataset

* src format update

* Remove blank line typo

* src format typo

* long double requires %Lg

* Another long double foramt specifer S.B. %Lg

* issue with t128bit test

* Windows issue with h5dump and type.

* Fix review issues

* refactor function nesting and fix error checks

* format fixes

* Remove untested functions and javadoc quiet comments

* Restore TRY block.

* Change string append errors to memory exception

* revert to H5_JNI_FATAL_ERROR - support functions need work

* Add assertion error for h5util functions

* remove duplicate function

* format fix

* Revert HD function error handling

* Update copyright comments

* GH #386 java folder copyright corrections

* Whitespace

* GH #359 implement and fix tools 1.6 API usage

* remove excessive comments

* Flip inits to correct ifdef section

* rework ifdef to be simpler

* format issue

* Reformat ifdef inits

* remove static attribute

* format compliance

* Update names

* Revert because logic relies on float not being int

* Changes noticed from creating merge of #412

* Double underscore change

* Correct compiler version variable used

* Remove header guard underscores

* Whitespace cleanup

* Split format source and commit changes on repo push

* remove pre-split setting

* Change windows TS to use older VS.

* correct window os name

* HDFFV-11212 JNI export util and Javadoc

* Suggested review changes

* Another change found

* Committing clang-format changes

* HDFFV-11113 long double in tools

* HDFFV-11113 add note

* Disable long double tests for now

* HDFFV-11228 remove arbitrary CMake warning groups.

* Make each flag a string

* Some Javadoc warning fixes

* Updated javadoc fixes

* # WARNING: head commit changed in the meantime

HDFFV-11229 Fix long double usage in tools and java

Changed h5dump and h5ls to just print 128-bit for long double type.
Added test and file for dataset and attributes with all three float
types.

* Committing clang-format changes

* HDFFV-11229 Add release note

* HDFFV-11229 windows testfile needed

* fix typo

* Remove non supported message text

* HDFFV-11229 - change ldouble test to check both native and general

* HDFFV-11229 add second file compare

* HDFFV-11229 fix reference file

* HDFFV-11229 autotools check two refs

* HDFFV-11229 revert back to removal of NATIVE_LDOUBLE in tools output

* Committing clang-format changes

* Update release note

* Update attribute type of ref file

* Change source of ninja for macs

* try port instead of brew

* Recommended is to use brew.

* Undo non long double changes

* remove unneeded file

* Fix perl and doxygen CMake code

* Add "option" command for clang options

* Rework CMake add_custom to use the BYPRODUCTS argument

* Add stamp files to BYPRODUCTS

* Only one copy of file exists

* Fix custom cmmand depends targets

* Fix fortran custom command DEPENDS

* Add LD_LIBRARY_PATH to tests

* Add custom target for DEPENDS

* Add h5detect conditionaly to generated target DEPENDS

* Correct DEPENDS targets

* Parallel builds need the mpi compiler for pkgconfig scripts.

* install only if MPI build

* Fortran target depends

* Remove incorrect source attribute

* doxygen adjustments

* doxygen build updates

* Correct version

* Correct function version - function has been merged to 1.12

* Correct version string for map functions

* Cleanup warnings for tools debug builds

* TRILAB-227 - fix indexing for h5diff selections

* Correct location of pos to index function call

* TRILAB-227 Enable test

* Quote subset args

* Use MATCHES because of AppleClang

* if blocks needed for build modes

* Update list of DT platforms

* VS2019 correctly displays float values

* revert VS2019 change

* Issue #669 remove version from pkgcfg filename

* remove version from h5cc script

* Java reference functions updated

enabled fortran in cmake gcc action yaml file
java reference test changed to correctly test refs
jni reference functions that create ids changed to use jni id logging

* Correct BYPRODUCTS argument

* Correct more genereated files BYPRODUCTS

* BYPRODUCTS must have unique locations

* Fix typo

* Fix fortran configure checks

* Rework H5_PAC_C_MAX_REAL_PRECISION setting logic

* Add note about fortran configure change

* Adds a quick for for some egregious chunk_info badness (#722)

* Fixes issue with ccmake that prevents building Fortran (#723)

ccmake runs iteratively, and the check_fortran_source_runs
macros were clobbering a single output file that did not
get updated on further configure iterations

* Fix conflicts with merge

* Move MAX_PRECISION back to HDF5UseFortran.cmake

* Use STREQUAL to test macro argument

* Move C language test to ConfigureChecks from HDF5UseFortran

* MAX_PRECISION defines must be defined

* Organize flags and align autotools and cmake

* Fix comment in no-error-general warnings files.

* Flag cleanup and fix typos

* Add comment

* Correct VAR used to find configure time file

* Set the path correctly

* Update missing release note info.

* Update code owners

* Correct JIRA note

* add known problem.

* Use only core library for testing dynamic plugins.

* Fix static perform tools compile for arg options

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Dana Robinson <43805+derobins@users.noreply.github.com>
2021-07-14 22:59:38 -05:00
Allen Byrne
9ec773bb18 Changes to docs for using plugins (#814)
* Changes to docs for using plugins

* VS2019 corrections

* Fix typo
2021-07-14 11:12:01 -05:00
Jan-Willem Blokland
21c6bb38e6 CMake: (feature) libaec (#703)
* CMake: (feature) libaec

Implemented better support for the compression library libaec.
Especially, for the new version 1.0.5:
- The CMake config files of this version 1.0.5 now set certain
  SZIP variables which can be used in the existing
  CMake structure.
- Both static and shared SZIP compatible libaec library contains
  all required objects such it can be easily used when building
  HDF5 from scratch.
- Introduced the USE_LIBAEC_STATIC option to make use of the static
  version of SZIP compatible libaec library.

* CMake: (fix) libaec

Implemented the fallback option for the case if version 1.0.5
of libaec could not be found.

* Docs: Added description about libaec implementation.

Added short description about the libaec improvement to the Bug Fixes
section in the Configuration sub-section.
2021-07-14 10:42:14 -05:00
jhendersonHDF
31027a997c Add support for parallel filters to h5repack (#832) 2021-07-14 10:38:21 -05:00
H. Joe Lee
6b94bf50a0 OESS-168:Remove implicit conversion warnings. (#829)
* OESS-168:Remove implicit conversion increases floating-point precision warnings.

* OESS-168:Remove clang warnings.
2021-07-12 09:00:48 -05:00
Dana Robinson
86e8238ad3 Removes develop header cruft (#828) 2021-07-09 16:27:10 -05:00
Dana Robinson
8e2fc4a2e2 Remove checks for winsock2.h (#813)
This is only needed on Windows and always available, so there's no need
to check for it.
2021-07-06 12:39:15 -05:00
Dana Robinson
257c8c7454 Removes remaining H5_TIME_WITH_SYS_TIME cruft (#810)
Mostly from CMake
2021-06-30 10:18:01 -05:00
Dana Robinson
f0e0c7ed2a Fixes parallel issues from recent C99 changes (#809)
* Fixes parallel issues from recent C99 changes

* Adds MPE FUNC --> __func__ changes missed in earlier PRs

* Even more missed FUNC --> __func__ macros
2021-06-30 10:17:35 -05:00
Dana Robinson
858a2b2866 Assume C99 types exist in H5detect.c (#808) 2021-06-29 15:07:43 -05:00
Dana Robinson
9ac96e5a21 Removes type guesses when C99 types are missing (#807) 2021-06-29 15:07:19 -05:00
Dana Robinson
2090a527c1 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
2021-06-29 15:06:48 -05:00
Dana Robinson
4ff544f997 Cleans up POSIX/C bits in H5private.h (#804)
* Cleans up POSIX/C bits in H5private.h

* Assume difftime exists (C89)
* Reorg AC_CHECK_HEADERS so headers are in alphabetical order
* Split off networking-related AC_CHECK_HEADERS
* Remove unused UNAME_CYGWIN from configure.ac
* Remove checks for unused sys/timeb.h
* Tidying pass over H5private.h HD prefix macros
* Tidy H5win32defs.h
* Add HD prefix to various scanf calls

* Committing clang-format changes

* Fixes to the alarm(2) code used in the tests to make Windows happy

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-06-28 23:59:25 -05:00
Dana Robinson
734d317da9 Removes obsolete equivalents of C99's __func__ (#800) 2021-06-28 23:58:38 -05:00
Dana Robinson
5ddfbc2a73 Assume the library has C99 types in C++ type code (#806)
* Assume the library has C99 types in C++ type code

* Committing clang-format changes

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-06-28 18:31:00 -05:00
Dana Robinson
6dd051101d Assume frexpl/f and fabsl/f, which are C99 (#799) 2021-06-25 00:08:01 -05:00
Dana Robinson
34f2df48b7 Removes checks for signal and set/longjmp, which are C89 (#798)
Also removes checks for setjmp.h and stddef.h
2021-06-25 00:07:36 -05:00
Dana Robinson
b16b7316c4 Reorganization of C and POSIX headers in H5public.h & H5private.h (#793)
* Reorganization of C and POSIX headers in H5public.h & H5private.h

Consolidated and removed duplicates

* It turns out Windows has sys/types.h

Co-authored-by: Larry Knox <lrknox@hdfgroup.org>
2021-06-24 16:46:23 -05:00
Dana Robinson
5c3f4b3cb2 Removes ancient Autotools cruft (#790) 2021-06-24 14:21:46 -05:00
Allen Byrne
782e8826b7 Fix tools test (#794)
* Reworked switch statement to compare string instead

* Fix typo

* Update CDash mode

* Correct name of threadsafe

* Correct option name

* Undo accidental commit

* Note LLVM 10 to 11 format default changes

* Update format plugin

* Undo clang-format version 11 changes

* One more correction

* Update supported platforms

* Revert whitespace changes

* Correct whitespace

* Changes from PR#3

* HDFFV-11213 added option to control gcc10 warnings diagnostics

* HDFFV-11212 Use the new references correctly in JNI utility and tests

* format source

* Fix typo

* Add new test file

* HDFFV-11212 - update test and remove unused arg

* Minor non-space formatting changes

* Use H5I_INVALID_ID instead of "-1"

* source formatting

* add missing testfile, update jni function

* Undo commit of debug code

* remove mislocated file

* Fix h5repack test for handling of fapls and id close

* Update h5diff test files usage text

* HDFFV-11212 add new ref tests for JNI export dataset

* src format update

* Remove blank line typo

* src format typo

* long double requires %Lg

* Another long double foramt specifer S.B. %Lg

* issue with t128bit test

* Windows issue with h5dump and type.

* Fix review issues

* refactor function nesting and fix error checks

* format fixes

* Remove untested functions and javadoc quiet comments

* Restore TRY block.

* Change string append errors to memory exception

* revert to H5_JNI_FATAL_ERROR - support functions need work

* Add assertion error for h5util functions

* remove duplicate function

* format fix

* Revert HD function error handling

* Update copyright comments

* GH #386 java folder copyright corrections

* Whitespace

* GH #359 implement and fix tools 1.6 API usage

* remove excessive comments

* Flip inits to correct ifdef section

* rework ifdef to be simpler

* format issue

* Reformat ifdef inits

* remove static attribute

* format compliance

* Update names

* Revert because logic relies on float not being int

* Changes noticed from creating merge of #412

* Double underscore change

* Correct compiler version variable used

* Remove header guard underscores

* Whitespace cleanup

* Split format source and commit changes on repo push

* remove pre-split setting

* Change windows TS to use older VS.

* correct window os name

* HDFFV-11212 JNI export util and Javadoc

* Suggested review changes

* Another change found

* Committing clang-format changes

* HDFFV-11113 long double in tools

* HDFFV-11113 add note

* Disable long double tests for now

* HDFFV-11228 remove arbitrary CMake warning groups.

* Make each flag a string

* Some Javadoc warning fixes

* Updated javadoc fixes

* # WARNING: head commit changed in the meantime

HDFFV-11229 Fix long double usage in tools and java

Changed h5dump and h5ls to just print 128-bit for long double type.
Added test and file for dataset and attributes with all three float
types.

* Committing clang-format changes

* HDFFV-11229 Add release note

* HDFFV-11229 windows testfile needed

* fix typo

* Remove non supported message text

* HDFFV-11229 - change ldouble test to check both native and general

* HDFFV-11229 add second file compare

* HDFFV-11229 fix reference file

* HDFFV-11229 autotools check two refs

* HDFFV-11229 revert back to removal of NATIVE_LDOUBLE in tools output

* Committing clang-format changes

* Update release note

* Update attribute type of ref file

* Change source of ninja for macs

* try port instead of brew

* Recommended is to use brew.

* Undo non long double changes

* remove unneeded file

* Fix perl and doxygen CMake code

* Add "option" command for clang options

* Rework CMake add_custom to use the BYPRODUCTS argument

* Add stamp files to BYPRODUCTS

* Only one copy of file exists

* Fix custom cmmand depends targets

* Fix fortran custom command DEPENDS

* Add LD_LIBRARY_PATH to tests

* Add custom target for DEPENDS

* Add h5detect conditionaly to generated target DEPENDS

* Correct DEPENDS targets

* Parallel builds need the mpi compiler for pkgconfig scripts.

* install only if MPI build

* Fortran target depends

* Remove incorrect source attribute

* doxygen adjustments

* doxygen build updates

* Correct version

* Correct function version - function has been merged to 1.12

* Correct version string for map functions

* Cleanup warnings for tools debug builds

* TRILAB-227 - fix indexing for h5diff selections

* Correct location of pos to index function call

* TRILAB-227 Enable test

* Quote subset args

* Use MATCHES because of AppleClang

* if blocks needed for build modes

* Update list of DT platforms

* VS2019 correctly displays float values

* revert VS2019 change

* Issue #669 remove version from pkgcfg filename

* remove version from h5cc script

* Java reference functions updated

enabled fortran in cmake gcc action yaml file
java reference test changed to correctly test refs
jni reference functions that create ids changed to use jni id logging

* Correct BYPRODUCTS argument

* Correct more genereated files BYPRODUCTS

* BYPRODUCTS must have unique locations

* Fix typo

* Fix fortran configure checks

* Rework H5_PAC_C_MAX_REAL_PRECISION setting logic

* Add note about fortran configure change

* Adds a quick for for some egregious chunk_info badness (#722)

* Fixes issue with ccmake that prevents building Fortran (#723)

ccmake runs iteratively, and the check_fortran_source_runs
macros were clobbering a single output file that did not
get updated on further configure iterations

* Fix conflicts with merge

* Move MAX_PRECISION back to HDF5UseFortran.cmake

* Use STREQUAL to test macro argument

* Move C language test to ConfigureChecks from HDF5UseFortran

* MAX_PRECISION defines must be defined

* Organize flags and align autotools and cmake

* Fix comment in no-error-general warnings files.

* Flag cleanup and fix typos

* Add comment

* Correct VAR used to find configure time file

* Set the path correctly

* Update missing release note info.

* Update code owners

* Correct JIRA note

* add known problem.

* Use only core library for testing dynamic plugins.

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Dana Robinson <43805+derobins@users.noreply.github.com>
2021-06-23 17:08:55 -05:00
Dana Robinson
9b28f3e5d5 Normalization of CMake H5pubconf.h with Autotools (#791)
Mostly just moving things around and changing the comments to keep the
delta small. The only symbol change is that for curl/curl.h which I
changed to H5_HAVE_CURL_CURL_H to match the Autotools. This symbol
is not used in the library and is just an artifact of the checks.
2021-06-23 15:14:54 -05:00
Allen Byrne
a9fb4a7ecd Release Note (#784)
* 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

* Note LLVM 10 to 11 format default changes

* Update format plugin

* Undo clang-format version 11 changes

* One more correction

* Update supported platforms

* Revert whitespace changes

* Correct whitespace

* Changes from PR#3

* HDFFV-11213 added option to control gcc10 warnings diagnostics

* HDFFV-11212 Use the new references correctly in JNI utility and tests

* format source

* Fix typo

* Add new test file

* HDFFV-11212 - update test and remove unused arg

* Minor non-space formatting changes

* Use H5I_INVALID_ID instead of "-1"

* source formatting

* add missing testfile, update jni function

* Undo commit of debug code

* remove mislocated file

* Fix h5repack test for handling of fapls and id close

* Update h5diff test files usage text

* HDFFV-11212 add new ref tests for JNI export dataset

* src format update

* Remove blank line typo

* src format typo

* long double requires %Lg

* Another long double foramt specifer S.B. %Lg

* issue with t128bit test

* Windows issue with h5dump and type.

* Fix review issues

* refactor function nesting and fix error checks

* format fixes

* Remove untested functions and javadoc quiet comments

* Restore TRY block.

* Change string append errors to memory exception

* revert to H5_JNI_FATAL_ERROR - support functions need work

* Add assertion error for h5util functions

* remove duplicate function

* format fix

* Revert HD function error handling

* Update copyright comments

* GH #386 java folder copyright corrections

* Whitespace

* GH #359 implement and fix tools 1.6 API usage

* remove excessive comments

* Flip inits to correct ifdef section

* rework ifdef to be simpler

* format issue

* Reformat ifdef inits

* remove static attribute

* format compliance

* Update names

* Revert because logic relies on float not being int

* Changes noticed from creating merge of #412

* Double underscore change

* Correct compiler version variable used

* Remove header guard underscores

* Whitespace cleanup

* Split format source and commit changes on repo push

* remove pre-split setting

* Change windows TS to use older VS.

* correct window os name

* HDFFV-11212 JNI export util and Javadoc

* Suggested review changes

* Another change found

* Committing clang-format changes

* HDFFV-11113 long double in tools

* HDFFV-11113 add note

* Disable long double tests for now

* HDFFV-11228 remove arbitrary CMake warning groups.

* Make each flag a string

* Some Javadoc warning fixes

* Updated javadoc fixes

* # WARNING: head commit changed in the meantime

HDFFV-11229 Fix long double usage in tools and java

Changed h5dump and h5ls to just print 128-bit for long double type.
Added test and file for dataset and attributes with all three float
types.

* Committing clang-format changes

* HDFFV-11229 Add release note

* HDFFV-11229 windows testfile needed

* fix typo

* Remove non supported message text

* HDFFV-11229 - change ldouble test to check both native and general

* HDFFV-11229 add second file compare

* HDFFV-11229 fix reference file

* HDFFV-11229 autotools check two refs

* HDFFV-11229 revert back to removal of NATIVE_LDOUBLE in tools output

* Committing clang-format changes

* Update release note

* Update attribute type of ref file

* Change source of ninja for macs

* try port instead of brew

* Recommended is to use brew.

* Undo non long double changes

* remove unneeded file

* Fix perl and doxygen CMake code

* Add "option" command for clang options

* Rework CMake add_custom to use the BYPRODUCTS argument

* Add stamp files to BYPRODUCTS

* Only one copy of file exists

* Fix custom cmmand depends targets

* Fix fortran custom command DEPENDS

* Add LD_LIBRARY_PATH to tests

* Add custom target for DEPENDS

* Add h5detect conditionaly to generated target DEPENDS

* Correct DEPENDS targets

* Parallel builds need the mpi compiler for pkgconfig scripts.

* install only if MPI build

* Fortran target depends

* Remove incorrect source attribute

* doxygen adjustments

* doxygen build updates

* Correct version

* Correct function version - function has been merged to 1.12

* Correct version string for map functions

* Cleanup warnings for tools debug builds

* TRILAB-227 - fix indexing for h5diff selections

* Correct location of pos to index function call

* TRILAB-227 Enable test

* Quote subset args

* Use MATCHES because of AppleClang

* if blocks needed for build modes

* Update list of DT platforms

* VS2019 correctly displays float values

* revert VS2019 change

* Issue #669 remove version from pkgcfg filename

* remove version from h5cc script

* Java reference functions updated

enabled fortran in cmake gcc action yaml file
java reference test changed to correctly test refs
jni reference functions that create ids changed to use jni id logging

* Correct BYPRODUCTS argument

* Correct more genereated files BYPRODUCTS

* BYPRODUCTS must have unique locations

* Fix typo

* Fix fortran configure checks

* Rework H5_PAC_C_MAX_REAL_PRECISION setting logic

* Add note about fortran configure change

* Adds a quick for for some egregious chunk_info badness (#722)

* Fixes issue with ccmake that prevents building Fortran (#723)

ccmake runs iteratively, and the check_fortran_source_runs
macros were clobbering a single output file that did not
get updated on further configure iterations

* Fix conflicts with merge

* Move MAX_PRECISION back to HDF5UseFortran.cmake

* Use STREQUAL to test macro argument

* Move C language test to ConfigureChecks from HDF5UseFortran

* MAX_PRECISION defines must be defined

* Organize flags and align autotools and cmake

* Fix comment in no-error-general warnings files.

* Flag cleanup and fix typos

* Add comment

* Correct VAR used to find configure time file

* Set the path correctly

* Update missing release note info.

* Update code owners

* Correct JIRA note

* add known problem.

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Dana Robinson <43805+derobins@users.noreply.github.com>
2021-06-23 14:11:07 -05:00
Dana Robinson
d79c650a5e Further simplifies Autotools type size checks (#789)
Also fixes an issue where clock_gettime and difftime are not detected
due to earlier simplifications of this code.
2021-06-23 14:08:04 -05:00
Dana Robinson
cc88fe8faf Removes C++ dependency on H5private.h (#774)
* Removes C++ dependency on H5private.h

Most C API calls have been removed, aside from a few uses of free,
where we just dropped the 'HD'. A couple of H5_ATTR_UNUSED macros
were also replaced with (void) statements.

* Committing clang-format changes

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-06-22 22:42:02 -05:00
Dana Robinson
3d4481c292 Removes checks for system(), which is C89/90 (#782) 2021-06-22 22:31:32 -05:00
Dana Robinson
82c8013a2d Removes outdated checks for ways inline might be defined (#781)
These are obsolete now that we require C99.
2021-06-22 22:29:52 -05:00
Dana Robinson
e25fa1c619 Cleans up some POSIX header bits in H5private.h (#783) 2021-06-22 22:28:40 -05:00
Dana Robinson
a1d128597f Replaces the H5_OVERRIDE macro with override (#773)
The macro is no longer necessary now that we require C++11.
2021-06-22 22:25:51 -05:00
Allen Byrne
9f5b16bccb Update missing release note info. (#776)
* 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

* Note LLVM 10 to 11 format default changes

* Update format plugin

* Undo clang-format version 11 changes

* One more correction

* Update supported platforms

* Revert whitespace changes

* Correct whitespace

* Changes from PR#3

* HDFFV-11213 added option to control gcc10 warnings diagnostics

* HDFFV-11212 Use the new references correctly in JNI utility and tests

* format source

* Fix typo

* Add new test file

* HDFFV-11212 - update test and remove unused arg

* Minor non-space formatting changes

* Use H5I_INVALID_ID instead of "-1"

* source formatting

* add missing testfile, update jni function

* Undo commit of debug code

* remove mislocated file

* Fix h5repack test for handling of fapls and id close

* Update h5diff test files usage text

* HDFFV-11212 add new ref tests for JNI export dataset

* src format update

* Remove blank line typo

* src format typo

* long double requires %Lg

* Another long double foramt specifer S.B. %Lg

* issue with t128bit test

* Windows issue with h5dump and type.

* Fix review issues

* refactor function nesting and fix error checks

* format fixes

* Remove untested functions and javadoc quiet comments

* Restore TRY block.

* Change string append errors to memory exception

* revert to H5_JNI_FATAL_ERROR - support functions need work

* Add assertion error for h5util functions

* remove duplicate function

* format fix

* Revert HD function error handling

* Update copyright comments

* GH #386 java folder copyright corrections

* Whitespace

* GH #359 implement and fix tools 1.6 API usage

* remove excessive comments

* Flip inits to correct ifdef section

* rework ifdef to be simpler

* format issue

* Reformat ifdef inits

* remove static attribute

* format compliance

* Update names

* Revert because logic relies on float not being int

* Changes noticed from creating merge of #412

* Double underscore change

* Correct compiler version variable used

* Remove header guard underscores

* Whitespace cleanup

* Split format source and commit changes on repo push

* remove pre-split setting

* Change windows TS to use older VS.

* correct window os name

* HDFFV-11212 JNI export util and Javadoc

* Suggested review changes

* Another change found

* Committing clang-format changes

* HDFFV-11113 long double in tools

* HDFFV-11113 add note

* Disable long double tests for now

* HDFFV-11228 remove arbitrary CMake warning groups.

* Make each flag a string

* Some Javadoc warning fixes

* Updated javadoc fixes

* # WARNING: head commit changed in the meantime

HDFFV-11229 Fix long double usage in tools and java

Changed h5dump and h5ls to just print 128-bit for long double type.
Added test and file for dataset and attributes with all three float
types.

* Committing clang-format changes

* HDFFV-11229 Add release note

* HDFFV-11229 windows testfile needed

* fix typo

* Remove non supported message text

* HDFFV-11229 - change ldouble test to check both native and general

* HDFFV-11229 add second file compare

* HDFFV-11229 fix reference file

* HDFFV-11229 autotools check two refs

* HDFFV-11229 revert back to removal of NATIVE_LDOUBLE in tools output

* Committing clang-format changes

* Update release note

* Update attribute type of ref file

* Change source of ninja for macs

* try port instead of brew

* Recommended is to use brew.

* Undo non long double changes

* remove unneeded file

* Fix perl and doxygen CMake code

* Add "option" command for clang options

* Rework CMake add_custom to use the BYPRODUCTS argument

* Add stamp files to BYPRODUCTS

* Only one copy of file exists

* Fix custom cmmand depends targets

* Fix fortran custom command DEPENDS

* Add LD_LIBRARY_PATH to tests

* Add custom target for DEPENDS

* Add h5detect conditionaly to generated target DEPENDS

* Correct DEPENDS targets

* Parallel builds need the mpi compiler for pkgconfig scripts.

* install only if MPI build

* Fortran target depends

* Remove incorrect source attribute

* doxygen adjustments

* doxygen build updates

* Correct version

* Correct function version - function has been merged to 1.12

* Correct version string for map functions

* Cleanup warnings for tools debug builds

* TRILAB-227 - fix indexing for h5diff selections

* Correct location of pos to index function call

* TRILAB-227 Enable test

* Quote subset args

* Use MATCHES because of AppleClang

* if blocks needed for build modes

* Update list of DT platforms

* VS2019 correctly displays float values

* revert VS2019 change

* Issue #669 remove version from pkgcfg filename

* remove version from h5cc script

* Java reference functions updated

enabled fortran in cmake gcc action yaml file
java reference test changed to correctly test refs
jni reference functions that create ids changed to use jni id logging

* Correct BYPRODUCTS argument

* Correct more genereated files BYPRODUCTS

* BYPRODUCTS must have unique locations

* Fix typo

* Fix fortran configure checks

* Rework H5_PAC_C_MAX_REAL_PRECISION setting logic

* Add note about fortran configure change

* Adds a quick for for some egregious chunk_info badness (#722)

* Fixes issue with ccmake that prevents building Fortran (#723)

ccmake runs iteratively, and the check_fortran_source_runs
macros were clobbering a single output file that did not
get updated on further configure iterations

* Fix conflicts with merge

* Move MAX_PRECISION back to HDF5UseFortran.cmake

* Use STREQUAL to test macro argument

* Move C language test to ConfigureChecks from HDF5UseFortran

* MAX_PRECISION defines must be defined

* Organize flags and align autotools and cmake

* Fix comment in no-error-general warnings files.

* Flag cleanup and fix typos

* Add comment

* Correct VAR used to find configure time file

* Set the path correctly

* Update missing release note info.

* Update code owners

* Correct JIRA note

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Dana Robinson <43805+derobins@users.noreply.github.com>
2021-06-22 07:01:22 -05:00
Dana Robinson
22a49ec424 Removes checks for (v)snprintf, which are C99 (#772) 2021-06-21 11:09:13 -05:00
Dana Robinson
a91c626c29 Removes checks and work-arounds for strtoll and strtoull (#769)
* Removes checks and work-arounds for strtoll and strtoull

* Removes CMake checks for strtoll and strtoull
2021-06-18 11:23:01 -05:00
Dana Robinson
2e7750f837 Fixes non-C99 format strings in tarray test code (#766) 2021-06-17 20:37:01 -05:00
Allen Byrne
f2fd728756 Fix cmake configure path (#760)
* 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

* Note LLVM 10 to 11 format default changes

* Update format plugin

* Undo clang-format version 11 changes

* One more correction

* Update supported platforms

* Revert whitespace changes

* Correct whitespace

* Changes from PR#3

* HDFFV-11213 added option to control gcc10 warnings diagnostics

* HDFFV-11212 Use the new references correctly in JNI utility and tests

* format source

* Fix typo

* Add new test file

* HDFFV-11212 - update test and remove unused arg

* Minor non-space formatting changes

* Use H5I_INVALID_ID instead of "-1"

* source formatting

* add missing testfile, update jni function

* Undo commit of debug code

* remove mislocated file

* Fix h5repack test for handling of fapls and id close

* Update h5diff test files usage text

* HDFFV-11212 add new ref tests for JNI export dataset

* src format update

* Remove blank line typo

* src format typo

* long double requires %Lg

* Another long double foramt specifer S.B. %Lg

* issue with t128bit test

* Windows issue with h5dump and type.

* Fix review issues

* refactor function nesting and fix error checks

* format fixes

* Remove untested functions and javadoc quiet comments

* Restore TRY block.

* Change string append errors to memory exception

* revert to H5_JNI_FATAL_ERROR - support functions need work

* Add assertion error for h5util functions

* remove duplicate function

* format fix

* Revert HD function error handling

* Update copyright comments

* GH #386 java folder copyright corrections

* Whitespace

* GH #359 implement and fix tools 1.6 API usage

* remove excessive comments

* Flip inits to correct ifdef section

* rework ifdef to be simpler

* format issue

* Reformat ifdef inits

* remove static attribute

* format compliance

* Update names

* Revert because logic relies on float not being int

* Changes noticed from creating merge of #412

* Double underscore change

* Correct compiler version variable used

* Remove header guard underscores

* Whitespace cleanup

* Split format source and commit changes on repo push

* remove pre-split setting

* Change windows TS to use older VS.

* correct window os name

* HDFFV-11212 JNI export util and Javadoc

* Suggested review changes

* Another change found

* Committing clang-format changes

* HDFFV-11113 long double in tools

* HDFFV-11113 add note

* Disable long double tests for now

* HDFFV-11228 remove arbitrary CMake warning groups.

* Make each flag a string

* Some Javadoc warning fixes

* Updated javadoc fixes

* # WARNING: head commit changed in the meantime

HDFFV-11229 Fix long double usage in tools and java

Changed h5dump and h5ls to just print 128-bit for long double type.
Added test and file for dataset and attributes with all three float
types.

* Committing clang-format changes

* HDFFV-11229 Add release note

* HDFFV-11229 windows testfile needed

* fix typo

* Remove non supported message text

* HDFFV-11229 - change ldouble test to check both native and general

* HDFFV-11229 add second file compare

* HDFFV-11229 fix reference file

* HDFFV-11229 autotools check two refs

* HDFFV-11229 revert back to removal of NATIVE_LDOUBLE in tools output

* Committing clang-format changes

* Update release note

* Update attribute type of ref file

* Change source of ninja for macs

* try port instead of brew

* Recommended is to use brew.

* Undo non long double changes

* remove unneeded file

* Fix perl and doxygen CMake code

* Add "option" command for clang options

* Rework CMake add_custom to use the BYPRODUCTS argument

* Add stamp files to BYPRODUCTS

* Only one copy of file exists

* Fix custom cmmand depends targets

* Fix fortran custom command DEPENDS

* Add LD_LIBRARY_PATH to tests

* Add custom target for DEPENDS

* Add h5detect conditionaly to generated target DEPENDS

* Correct DEPENDS targets

* Parallel builds need the mpi compiler for pkgconfig scripts.

* install only if MPI build

* Fortran target depends

* Remove incorrect source attribute

* doxygen adjustments

* doxygen build updates

* Correct version

* Correct function version - function has been merged to 1.12

* Correct version string for map functions

* Cleanup warnings for tools debug builds

* TRILAB-227 - fix indexing for h5diff selections

* Correct location of pos to index function call

* TRILAB-227 Enable test

* Quote subset args

* Use MATCHES because of AppleClang

* if blocks needed for build modes

* Update list of DT platforms

* VS2019 correctly displays float values

* revert VS2019 change

* Issue #669 remove version from pkgcfg filename

* remove version from h5cc script

* Java reference functions updated

enabled fortran in cmake gcc action yaml file
java reference test changed to correctly test refs
jni reference functions that create ids changed to use jni id logging

* Correct BYPRODUCTS argument

* Correct more genereated files BYPRODUCTS

* BYPRODUCTS must have unique locations

* Fix typo

* Fix fortran configure checks

* Rework H5_PAC_C_MAX_REAL_PRECISION setting logic

* Add note about fortran configure change

* Adds a quick for for some egregious chunk_info badness (#722)

* Fixes issue with ccmake that prevents building Fortran (#723)

ccmake runs iteratively, and the check_fortran_source_runs
macros were clobbering a single output file that did not
get updated on further configure iterations

* Fix conflicts with merge

* Move MAX_PRECISION back to HDF5UseFortran.cmake

* Use STREQUAL to test macro argument

* Move C language test to ConfigureChecks from HDF5UseFortran

* MAX_PRECISION defines must be defined

* Organize flags and align autotools and cmake

* Fix comment in no-error-general warnings files.

* Flag cleanup and fix typos

* Add comment

* Correct VAR used to find configure time file

* Set the path correctly

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Dana Robinson <43805+derobins@users.noreply.github.com>
2021-06-16 22:49:10 -05:00
jhendersonHDF
bb7dfbebdc Fix several warnings (#747) 2021-06-16 15:45:26 -05:00
Dana Robinson
e4e9bb70db Fixes some H5SL include statements (#758) 2021-06-16 11:54:11 -05:00
Allen Byrne
dfe4f2903b Fix warnings files (#753)
* 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

* Note LLVM 10 to 11 format default changes

* Update format plugin

* Undo clang-format version 11 changes

* One more correction

* Update supported platforms

* Revert whitespace changes

* Correct whitespace

* Changes from PR#3

* HDFFV-11213 added option to control gcc10 warnings diagnostics

* HDFFV-11212 Use the new references correctly in JNI utility and tests

* format source

* Fix typo

* Add new test file

* HDFFV-11212 - update test and remove unused arg

* Minor non-space formatting changes

* Use H5I_INVALID_ID instead of "-1"

* source formatting

* add missing testfile, update jni function

* Undo commit of debug code

* remove mislocated file

* Fix h5repack test for handling of fapls and id close

* Update h5diff test files usage text

* HDFFV-11212 add new ref tests for JNI export dataset

* src format update

* Remove blank line typo

* src format typo

* long double requires %Lg

* Another long double foramt specifer S.B. %Lg

* issue with t128bit test

* Windows issue with h5dump and type.

* Fix review issues

* refactor function nesting and fix error checks

* format fixes

* Remove untested functions and javadoc quiet comments

* Restore TRY block.

* Change string append errors to memory exception

* revert to H5_JNI_FATAL_ERROR - support functions need work

* Add assertion error for h5util functions

* remove duplicate function

* format fix

* Revert HD function error handling

* Update copyright comments

* GH #386 java folder copyright corrections

* Whitespace

* GH #359 implement and fix tools 1.6 API usage

* remove excessive comments

* Flip inits to correct ifdef section

* rework ifdef to be simpler

* format issue

* Reformat ifdef inits

* remove static attribute

* format compliance

* Update names

* Revert because logic relies on float not being int

* Changes noticed from creating merge of #412

* Double underscore change

* Correct compiler version variable used

* Remove header guard underscores

* Whitespace cleanup

* Split format source and commit changes on repo push

* remove pre-split setting

* Change windows TS to use older VS.

* correct window os name

* HDFFV-11212 JNI export util and Javadoc

* Suggested review changes

* Another change found

* Committing clang-format changes

* HDFFV-11113 long double in tools

* HDFFV-11113 add note

* Disable long double tests for now

* HDFFV-11228 remove arbitrary CMake warning groups.

* Make each flag a string

* Some Javadoc warning fixes

* Updated javadoc fixes

* # WARNING: head commit changed in the meantime

HDFFV-11229 Fix long double usage in tools and java

Changed h5dump and h5ls to just print 128-bit for long double type.
Added test and file for dataset and attributes with all three float
types.

* Committing clang-format changes

* HDFFV-11229 Add release note

* HDFFV-11229 windows testfile needed

* fix typo

* Remove non supported message text

* HDFFV-11229 - change ldouble test to check both native and general

* HDFFV-11229 add second file compare

* HDFFV-11229 fix reference file

* HDFFV-11229 autotools check two refs

* HDFFV-11229 revert back to removal of NATIVE_LDOUBLE in tools output

* Committing clang-format changes

* Update release note

* Update attribute type of ref file

* Change source of ninja for macs

* try port instead of brew

* Recommended is to use brew.

* Undo non long double changes

* remove unneeded file

* Fix perl and doxygen CMake code

* Add "option" command for clang options

* Rework CMake add_custom to use the BYPRODUCTS argument

* Add stamp files to BYPRODUCTS

* Only one copy of file exists

* Fix custom cmmand depends targets

* Fix fortran custom command DEPENDS

* Add LD_LIBRARY_PATH to tests

* Add custom target for DEPENDS

* Add h5detect conditionaly to generated target DEPENDS

* Correct DEPENDS targets

* Parallel builds need the mpi compiler for pkgconfig scripts.

* install only if MPI build

* Fortran target depends

* Remove incorrect source attribute

* doxygen adjustments

* doxygen build updates

* Correct version

* Correct function version - function has been merged to 1.12

* Correct version string for map functions

* Cleanup warnings for tools debug builds

* TRILAB-227 - fix indexing for h5diff selections

* Correct location of pos to index function call

* TRILAB-227 Enable test

* Quote subset args

* Use MATCHES because of AppleClang

* if blocks needed for build modes

* Update list of DT platforms

* VS2019 correctly displays float values

* revert VS2019 change

* Issue #669 remove version from pkgcfg filename

* remove version from h5cc script

* Java reference functions updated

enabled fortran in cmake gcc action yaml file
java reference test changed to correctly test refs
jni reference functions that create ids changed to use jni id logging

* Correct BYPRODUCTS argument

* Correct more genereated files BYPRODUCTS

* BYPRODUCTS must have unique locations

* Fix typo

* Fix fortran configure checks

* Rework H5_PAC_C_MAX_REAL_PRECISION setting logic

* Add note about fortran configure change

* Adds a quick for for some egregious chunk_info badness (#722)

* Fixes issue with ccmake that prevents building Fortran (#723)

ccmake runs iteratively, and the check_fortran_source_runs
macros were clobbering a single output file that did not
get updated on further configure iterations

* Fix conflicts with merge

* Move MAX_PRECISION back to HDF5UseFortran.cmake

* Use STREQUAL to test macro argument

* Move C language test to ConfigureChecks from HDF5UseFortran

* MAX_PRECISION defines must be defined

* Organize flags and align autotools and cmake

* Fix comment in no-error-general warnings files.

* Flag cleanup and fix typos

* Add comment

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Dana Robinson <43805+derobins@users.noreply.github.com>
2021-06-15 08:49:05 -05:00
Larry Knox
978b11c8a1 Fix problem in gnu-cxxflags; remove empty if block that throws away all (#748)
C++ flags.
2021-06-11 21:59:00 -05:00
Dana Robinson
3c18cf7831 Normalization of H5_nanosleep() with VFD SWMR branch (#746)
* Normalization of H5_nanosleep() with VFD SWMR branch

* Committing clang-format changes

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-06-11 17:02:43 -05:00
Dana Robinson
03fb540c72 Fixes C++ warnings when passing hsize_t values to printf in test code (#745) 2021-06-11 07:52:36 -05:00
jhendersonHDF
42e485ea7d Fix Direct VFD Testing in CMake (#742) 2021-06-11 07:52:04 -05:00
Allen Byrne
5173cce0a9 Organize and align compiler flags (#741)
* 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

* Note LLVM 10 to 11 format default changes

* Update format plugin

* Undo clang-format version 11 changes

* One more correction

* Update supported platforms

* Revert whitespace changes

* Correct whitespace

* Changes from PR#3

* HDFFV-11213 added option to control gcc10 warnings diagnostics

* HDFFV-11212 Use the new references correctly in JNI utility and tests

* format source

* Fix typo

* Add new test file

* HDFFV-11212 - update test and remove unused arg

* Minor non-space formatting changes

* Use H5I_INVALID_ID instead of "-1"

* source formatting

* add missing testfile, update jni function

* Undo commit of debug code

* remove mislocated file

* Fix h5repack test for handling of fapls and id close

* Update h5diff test files usage text

* HDFFV-11212 add new ref tests for JNI export dataset

* src format update

* Remove blank line typo

* src format typo

* long double requires %Lg

* Another long double foramt specifer S.B. %Lg

* issue with t128bit test

* Windows issue with h5dump and type.

* Fix review issues

* refactor function nesting and fix error checks

* format fixes

* Remove untested functions and javadoc quiet comments

* Restore TRY block.

* Change string append errors to memory exception

* revert to H5_JNI_FATAL_ERROR - support functions need work

* Add assertion error for h5util functions

* remove duplicate function

* format fix

* Revert HD function error handling

* Update copyright comments

* GH #386 java folder copyright corrections

* Whitespace

* GH #359 implement and fix tools 1.6 API usage

* remove excessive comments

* Flip inits to correct ifdef section

* rework ifdef to be simpler

* format issue

* Reformat ifdef inits

* remove static attribute

* format compliance

* Update names

* Revert because logic relies on float not being int

* Changes noticed from creating merge of #412

* Double underscore change

* Correct compiler version variable used

* Remove header guard underscores

* Whitespace cleanup

* Split format source and commit changes on repo push

* remove pre-split setting

* Change windows TS to use older VS.

* correct window os name

* HDFFV-11212 JNI export util and Javadoc

* Suggested review changes

* Another change found

* Committing clang-format changes

* HDFFV-11113 long double in tools

* HDFFV-11113 add note

* Disable long double tests for now

* HDFFV-11228 remove arbitrary CMake warning groups.

* Make each flag a string

* Some Javadoc warning fixes

* Updated javadoc fixes

* # WARNING: head commit changed in the meantime

HDFFV-11229 Fix long double usage in tools and java

Changed h5dump and h5ls to just print 128-bit for long double type.
Added test and file for dataset and attributes with all three float
types.

* Committing clang-format changes

* HDFFV-11229 Add release note

* HDFFV-11229 windows testfile needed

* fix typo

* Remove non supported message text

* HDFFV-11229 - change ldouble test to check both native and general

* HDFFV-11229 add second file compare

* HDFFV-11229 fix reference file

* HDFFV-11229 autotools check two refs

* HDFFV-11229 revert back to removal of NATIVE_LDOUBLE in tools output

* Committing clang-format changes

* Update release note

* Update attribute type of ref file

* Change source of ninja for macs

* try port instead of brew

* Recommended is to use brew.

* Undo non long double changes

* remove unneeded file

* Fix perl and doxygen CMake code

* Add "option" command for clang options

* Rework CMake add_custom to use the BYPRODUCTS argument

* Add stamp files to BYPRODUCTS

* Only one copy of file exists

* Fix custom cmmand depends targets

* Fix fortran custom command DEPENDS

* Add LD_LIBRARY_PATH to tests

* Add custom target for DEPENDS

* Add h5detect conditionaly to generated target DEPENDS

* Correct DEPENDS targets

* Parallel builds need the mpi compiler for pkgconfig scripts.

* install only if MPI build

* Fortran target depends

* Remove incorrect source attribute

* doxygen adjustments

* doxygen build updates

* Correct version

* Correct function version - function has been merged to 1.12

* Correct version string for map functions

* Cleanup warnings for tools debug builds

* TRILAB-227 - fix indexing for h5diff selections

* Correct location of pos to index function call

* TRILAB-227 Enable test

* Quote subset args

* Use MATCHES because of AppleClang

* if blocks needed for build modes

* Update list of DT platforms

* VS2019 correctly displays float values

* revert VS2019 change

* Issue #669 remove version from pkgcfg filename

* remove version from h5cc script

* Java reference functions updated

enabled fortran in cmake gcc action yaml file
java reference test changed to correctly test refs
jni reference functions that create ids changed to use jni id logging

* Correct BYPRODUCTS argument

* Correct more genereated files BYPRODUCTS

* BYPRODUCTS must have unique locations

* Fix typo

* Fix fortran configure checks

* Rework H5_PAC_C_MAX_REAL_PRECISION setting logic

* Add note about fortran configure change

* Adds a quick for for some egregious chunk_info badness (#722)

* Fixes issue with ccmake that prevents building Fortran (#723)

ccmake runs iteratively, and the check_fortran_source_runs
macros were clobbering a single output file that did not
get updated on further configure iterations

* Fix conflicts with merge

* Move MAX_PRECISION back to HDF5UseFortran.cmake

* Use STREQUAL to test macro argument

* Move C language test to ConfigureChecks from HDF5UseFortran

* MAX_PRECISION defines must be defined

* Organize flags and align autotools and cmake

* Fix comment in no-error-general warnings files.

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Dana Robinson <43805+derobins@users.noreply.github.com>
2021-06-10 22:51:15 -05:00
Dana Robinson
311641642e Removed -fanalyzer from the gcc 10 developer options (#744)
This is extremely slow and generates a LOT of false positives. It's also
not really a warning flag, but an analysis feature and thus belongs in
a separate configure option, not lumped in with the warnings.
2021-06-10 12:26:41 -05:00
Allen Byrne
35d86906fa Make sure MAX_PRECISION is always defined with a value (#736)
* 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

* Note LLVM 10 to 11 format default changes

* Update format plugin

* Undo clang-format version 11 changes

* One more correction

* Update supported platforms

* Revert whitespace changes

* Correct whitespace

* Changes from PR#3

* HDFFV-11213 added option to control gcc10 warnings diagnostics

* HDFFV-11212 Use the new references correctly in JNI utility and tests

* format source

* Fix typo

* Add new test file

* HDFFV-11212 - update test and remove unused arg

* Minor non-space formatting changes

* Use H5I_INVALID_ID instead of "-1"

* source formatting

* add missing testfile, update jni function

* Undo commit of debug code

* remove mislocated file

* Fix h5repack test for handling of fapls and id close

* Update h5diff test files usage text

* HDFFV-11212 add new ref tests for JNI export dataset

* src format update

* Remove blank line typo

* src format typo

* long double requires %Lg

* Another long double foramt specifer S.B. %Lg

* issue with t128bit test

* Windows issue with h5dump and type.

* Fix review issues

* refactor function nesting and fix error checks

* format fixes

* Remove untested functions and javadoc quiet comments

* Restore TRY block.

* Change string append errors to memory exception

* revert to H5_JNI_FATAL_ERROR - support functions need work

* Add assertion error for h5util functions

* remove duplicate function

* format fix

* Revert HD function error handling

* Update copyright comments

* GH #386 java folder copyright corrections

* Whitespace

* GH #359 implement and fix tools 1.6 API usage

* remove excessive comments

* Flip inits to correct ifdef section

* rework ifdef to be simpler

* format issue

* Reformat ifdef inits

* remove static attribute

* format compliance

* Update names

* Revert because logic relies on float not being int

* Changes noticed from creating merge of #412

* Double underscore change

* Correct compiler version variable used

* Remove header guard underscores

* Whitespace cleanup

* Split format source and commit changes on repo push

* remove pre-split setting

* Change windows TS to use older VS.

* correct window os name

* HDFFV-11212 JNI export util and Javadoc

* Suggested review changes

* Another change found

* Committing clang-format changes

* HDFFV-11113 long double in tools

* HDFFV-11113 add note

* Disable long double tests for now

* HDFFV-11228 remove arbitrary CMake warning groups.

* Make each flag a string

* Some Javadoc warning fixes

* Updated javadoc fixes

* # WARNING: head commit changed in the meantime

HDFFV-11229 Fix long double usage in tools and java

Changed h5dump and h5ls to just print 128-bit for long double type.
Added test and file for dataset and attributes with all three float
types.

* Committing clang-format changes

* HDFFV-11229 Add release note

* HDFFV-11229 windows testfile needed

* fix typo

* Remove non supported message text

* HDFFV-11229 - change ldouble test to check both native and general

* HDFFV-11229 add second file compare

* HDFFV-11229 fix reference file

* HDFFV-11229 autotools check two refs

* HDFFV-11229 revert back to removal of NATIVE_LDOUBLE in tools output

* Committing clang-format changes

* Update release note

* Update attribute type of ref file

* Change source of ninja for macs

* try port instead of brew

* Recommended is to use brew.

* Undo non long double changes

* remove unneeded file

* Fix perl and doxygen CMake code

* Add "option" command for clang options

* Rework CMake add_custom to use the BYPRODUCTS argument

* Add stamp files to BYPRODUCTS

* Only one copy of file exists

* Fix custom cmmand depends targets

* Fix fortran custom command DEPENDS

* Add LD_LIBRARY_PATH to tests

* Add custom target for DEPENDS

* Add h5detect conditionaly to generated target DEPENDS

* Correct DEPENDS targets

* Parallel builds need the mpi compiler for pkgconfig scripts.

* install only if MPI build

* Fortran target depends

* Remove incorrect source attribute

* doxygen adjustments

* doxygen build updates

* Correct version

* Correct function version - function has been merged to 1.12

* Correct version string for map functions

* Cleanup warnings for tools debug builds

* TRILAB-227 - fix indexing for h5diff selections

* Correct location of pos to index function call

* TRILAB-227 Enable test

* Quote subset args

* Use MATCHES because of AppleClang

* if blocks needed for build modes

* Update list of DT platforms

* VS2019 correctly displays float values

* revert VS2019 change

* Issue #669 remove version from pkgcfg filename

* remove version from h5cc script

* Java reference functions updated

enabled fortran in cmake gcc action yaml file
java reference test changed to correctly test refs
jni reference functions that create ids changed to use jni id logging

* Correct BYPRODUCTS argument

* Correct more genereated files BYPRODUCTS

* BYPRODUCTS must have unique locations

* Fix typo

* Fix fortran configure checks

* Rework H5_PAC_C_MAX_REAL_PRECISION setting logic

* Add note about fortran configure change

* Adds a quick for for some egregious chunk_info badness (#722)

* Fixes issue with ccmake that prevents building Fortran (#723)

ccmake runs iteratively, and the check_fortran_source_runs
macros were clobbering a single output file that did not
get updated on further configure iterations

* Fix conflicts with merge

* Move MAX_PRECISION back to HDF5UseFortran.cmake

* Use STREQUAL to test macro argument

* Move C language test to ConfigureChecks from HDF5UseFortran

* MAX_PRECISION defines must be defined

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Dana Robinson <43805+derobins@users.noreply.github.com>
2021-06-08 10:43:21 -05:00
Allen Byrne
6880034536 Remove private H5_GCC_DIAG_OFF/ON from standalone program (#734) 2021-06-07 18:08:09 -05:00
Allen Byrne
47c7bd9834 Rework Fortran configure to allow multiple CMake reruns (#721)
* 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

* Note LLVM 10 to 11 format default changes

* Update format plugin

* Undo clang-format version 11 changes

* One more correction

* Update supported platforms

* Revert whitespace changes

* Correct whitespace

* Changes from PR#3

* HDFFV-11213 added option to control gcc10 warnings diagnostics

* HDFFV-11212 Use the new references correctly in JNI utility and tests

* format source

* Fix typo

* Add new test file

* HDFFV-11212 - update test and remove unused arg

* Minor non-space formatting changes

* Use H5I_INVALID_ID instead of "-1"

* source formatting

* add missing testfile, update jni function

* Undo commit of debug code

* remove mislocated file

* Fix h5repack test for handling of fapls and id close

* Update h5diff test files usage text

* HDFFV-11212 add new ref tests for JNI export dataset

* src format update

* Remove blank line typo

* src format typo

* long double requires %Lg

* Another long double foramt specifer S.B. %Lg

* issue with t128bit test

* Windows issue with h5dump and type.

* Fix review issues

* refactor function nesting and fix error checks

* format fixes

* Remove untested functions and javadoc quiet comments

* Restore TRY block.

* Change string append errors to memory exception

* revert to H5_JNI_FATAL_ERROR - support functions need work

* Add assertion error for h5util functions

* remove duplicate function

* format fix

* Revert HD function error handling

* Update copyright comments

* GH #386 java folder copyright corrections

* Whitespace

* GH #359 implement and fix tools 1.6 API usage

* remove excessive comments

* Flip inits to correct ifdef section

* rework ifdef to be simpler

* format issue

* Reformat ifdef inits

* remove static attribute

* format compliance

* Update names

* Revert because logic relies on float not being int

* Changes noticed from creating merge of #412

* Double underscore change

* Correct compiler version variable used

* Remove header guard underscores

* Whitespace cleanup

* Split format source and commit changes on repo push

* remove pre-split setting

* Change windows TS to use older VS.

* correct window os name

* HDFFV-11212 JNI export util and Javadoc

* Suggested review changes

* Another change found

* Committing clang-format changes

* HDFFV-11113 long double in tools

* HDFFV-11113 add note

* Disable long double tests for now

* HDFFV-11228 remove arbitrary CMake warning groups.

* Make each flag a string

* Some Javadoc warning fixes

* Updated javadoc fixes

* # WARNING: head commit changed in the meantime

HDFFV-11229 Fix long double usage in tools and java

Changed h5dump and h5ls to just print 128-bit for long double type.
Added test and file for dataset and attributes with all three float
types.

* Committing clang-format changes

* HDFFV-11229 Add release note

* HDFFV-11229 windows testfile needed

* fix typo

* Remove non supported message text

* HDFFV-11229 - change ldouble test to check both native and general

* HDFFV-11229 add second file compare

* HDFFV-11229 fix reference file

* HDFFV-11229 autotools check two refs

* HDFFV-11229 revert back to removal of NATIVE_LDOUBLE in tools output

* Committing clang-format changes

* Update release note

* Update attribute type of ref file

* Change source of ninja for macs

* try port instead of brew

* Recommended is to use brew.

* Undo non long double changes

* remove unneeded file

* Fix perl and doxygen CMake code

* Add "option" command for clang options

* Rework CMake add_custom to use the BYPRODUCTS argument

* Add stamp files to BYPRODUCTS

* Only one copy of file exists

* Fix custom cmmand depends targets

* Fix fortran custom command DEPENDS

* Add LD_LIBRARY_PATH to tests

* Add custom target for DEPENDS

* Add h5detect conditionaly to generated target DEPENDS

* Correct DEPENDS targets

* Parallel builds need the mpi compiler for pkgconfig scripts.

* install only if MPI build

* Fortran target depends

* Remove incorrect source attribute

* doxygen adjustments

* doxygen build updates

* Correct version

* Correct function version - function has been merged to 1.12

* Correct version string for map functions

* Cleanup warnings for tools debug builds

* TRILAB-227 - fix indexing for h5diff selections

* Correct location of pos to index function call

* TRILAB-227 Enable test

* Quote subset args

* Use MATCHES because of AppleClang

* if blocks needed for build modes

* Update list of DT platforms

* VS2019 correctly displays float values

* revert VS2019 change

* Issue #669 remove version from pkgcfg filename

* remove version from h5cc script

* Java reference functions updated

enabled fortran in cmake gcc action yaml file
java reference test changed to correctly test refs
jni reference functions that create ids changed to use jni id logging

* Correct BYPRODUCTS argument

* Correct more genereated files BYPRODUCTS

* BYPRODUCTS must have unique locations

* Fix typo

* Fix fortran configure checks

* Rework H5_PAC_C_MAX_REAL_PRECISION setting logic

* Add note about fortran configure change

* Adds a quick for for some egregious chunk_info badness (#722)

* Fixes issue with ccmake that prevents building Fortran (#723)

ccmake runs iteratively, and the check_fortran_source_runs
macros were clobbering a single output file that did not
get updated on further configure iterations

* Fix conflicts with merge

* Move MAX_PRECISION back to HDF5UseFortran.cmake

* Use STREQUAL to test macro argument

* Move C language test to ConfigureChecks from HDF5UseFortran

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Dana Robinson <43805+derobins@users.noreply.github.com>
2021-06-07 17:59:47 -05:00
Dana Robinson
62ddef9758 Includes hdf5dev.h in hdf5.h (#728)
* Includes hdf5dev.h in hdf5.h

* Removes hdf5dev.h

* Restores H5PLextern.h as an independent header

* H5PLextern.h missed in the null VOL connector
2021-06-06 21:04:34 -05:00
Dana Robinson
9ebe55b34c Moves H5PacketTable default ctor inside source file (#731) 2021-06-05 23:00:30 -05:00
Dana Robinson
ce5f1ff1c5 Adds __STDC_FORMAT_MACROS before including inttypes.h w/ C++ (#726)
* Adds __STDC_FORMAT_MACROS before including inttypes.h w/ C++

Allows C++ library to be built on older versions of gcc.

* Committing clang-format changes

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-06-04 16:54:00 -05:00
Dana Robinson
9bf274e21a Moves gcc warning macros from H5public.h to H5private.h (#724)
* Moves gcc warning suppression macros out of H5public.h

* Update RELEASE.txt

* Formatted source
2021-06-04 16:52:36 -05:00
Dana Robinson
9041351328 Fixes issue with ccmake that prevents building Fortran (#723)
ccmake runs iteratively, and the check_fortran_source_runs
macros were clobbering a single output file that did not
get updated on further configure iterations
2021-06-03 21:56:43 -05:00
Dana Robinson
032310b87f Adds a quick for for some egregious chunk_info badness (#722) 2021-06-03 17:24:58 -05:00
Dana Robinson
dd6547db0d Updates bin/trace script to correctly wrap H5TRACE macros near clang-format column limit (#719)
* Removes clang-format comments from H5O.c call

* Fixes bin/trace to correctly wrap lines near the clang-format limit

* Removed unused variable from bin/trace
2021-06-03 15:46:52 -05:00
Dana Robinson
7739612291 Adds an Intel C++ configuration file (#716)
* Adds an Intel C++ configuration file

* Committing clang-format changes

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-06-03 11:51:25 -05:00
Dana Robinson
1558ee7b30 Updates PGI C/C++ configurations (#715)
* Updates PGI C/C++ configurations

Tweaks some settings and configures pgc++ to use C++11

* Updated copyright information
2021-06-03 11:44:09 -05:00
Quincey Koziol
4b7f34acc1 Combo set of async and other changes (#161)
* Update API tracing for new H5VL_request_status_t typedef

* Finish converting internal event set operations to use list iterator callbacks, instead of directly accessing the list structure

* Add H5VL_REQUEST_GET_ERR_STACK operation to request subclass, for retrieving a copy of the error stack for a failed asynchronous operation

* Remove 'canceled' event status from Java constants

* Be safer about releasing resources when inserting a newly opened/created object or file into an event set

* Remove H5EStest, add H5ES_WAIT_NONE for 0 timeout, and revise parameters to H5ESwait, to make it more "aggregate".

* Remove H5ES_STATUS_CANCELED from Java wrappers also

* Apply patch for dynamically registering optional VOL operations

* (a) Add async APIs for H5O module as listed in jira issue ID-283.
(b) Remove verification of name parameter in async related routines for H55A and H5L modules
    because it is checked in H5VL_setup* routine.
(c) Modify h5dump expected output due to the async changes.

* Corrections based on PR feedback.

* Further changes to make based on PR feedback.

* Remove H5Dwait & H5Fwait (moved to the async connector).  Added H5atclose
routine.  Updated 'optional op' operations.

* Fix missed merge marker, and reformatted line

* Update API tracing infrastructure for H5atclose callback

* Clean up some warnings

* Normalize against develop branch

* Correct level of indirection

* Add doxygen info for H5is_library_terminating and regression tests for it and H5atclose

* Relocate prototype (and doxygen info) for H5Aclose

* Align w/changes on develop

* Move group package initialization code to H5Gint.c, and update tracing macros

* Change non-static function declarations to be static

* Correct GCC diagnostic macro

* Ensure that H5TSpublic.h header gets installed (#129)

* Finish moving API routines that invoke VOL framework to main source files.

* Fix position of H5Fmount and H5Funmount

* Add 'wrapper' versions of async calls, to allow language wrappers and layers on top of HDF5 to pass in their application information.

* Add wrappers for dynamically registered optional operations

* Fix typo

* Update doxygen comment for H5atclose with additional detail.

* Add H5VL\*_vararg versions of H5VL routines that use va_list parameters

* Implement and test H5S_BLOCK

* Switch H5Aexists\*_async and H5Lexists\*_async to use flag to return status, instead of return value.  Make the corresponding changes through most of the v1 and v2 B-tree code.  Clean up warnings in H5public.h and cmpd_dtransform.c.

* Add H5Iregister_future routine and tests.

* Correct return value for H5Lexists_async

* Add H5_DLL macro to public H5ES API routines

* Update supported -> flags parameter for introspect_query callback

* Remove my email address.  Update passthrough VOL connector ID.

* Fix comment for post_open_api_common

* Remove unused non-blocking VOL connector

* Minor cleanup in async branch in preparation for merge to develop

* Update CMake and the Autotools to use the new pass-through VOL ID

* Finish another iteration on public H5ES routines, along with running the code reformatter

* Another round of reformatting

* Fix for SWMR daily test failures (#160)

The H5I_register_using_existing_id() call did not initialize the future
ID callbacks, causing the library to segfault when it tried to
resolve those function pointers.

* Added selective async APIs (#150)

* Added selective async APIs

Description:
    Added the following APIs:
        H5Ropen_attr_async
        H5Ropen_object_async
        H5Ropen_region_async

        H5Mcreate_async
        H5Mopen_async
        H5Mput_async
        H5Mget_async
        H5Mclose_async

        H5Tcommit_async
        H5Topen_async
        H5Tcopy_async
        H5Tclose_async
    - Updated an expected output file to include a new internal function
      in the error stack for the failure case.

* Updated async APIs per reviews, including removing async version of
H5Tcopy.

* Removed statements that were added by mistake in the previous commit.

* Fix compile issues in H5M and warnings elsewhere

* Reformat code

* Brings VOL_LIST changes from develop. (#163)

* Remove H5Dwait and H5Fwait calls, which were incorrectly brought back in

* Tiny cleanup of H5Lcreate_hard_async

* Run source formatter

* Allow for canceled operation in wait_cb

* Attempt to fix switch on string value

* Re-run source formatter

* Add H5S_BLOCK testfile to CMake clean target

* Add H5Pset_vol_async API routine and 'get_cap_flags' VOL introspection callback

* Clean up warnings

* Add H5P(set\|get)_vol_implicit_async API routines to allow \/ disallow implicit asynchronous operations (default is disallowed)

* Run formatting script

* Remove H5VL_REQUEST_WAIT\*

* Warning cleanup

* Eliminate strdup()s on statically allocated strings

* Warning cleanup

* Split H5VLrestore_lib_state into H5VLstart_lib_state and H5VLrestore_lib_state, and rename H5VLreset_lib_state to H5VLfinish_lib_state.

* Duplicate strings when building err_info to return to applicatin

* Move connector author routines into seperate header files, all included in the new hdf5dev.h header

* Run bin/trace to add TRACE macros

* Allow H5ES_NONE as a valid, but no-op, parameter to all H5ES API routines that accept an event set ID

* Clean up formatting

* Remove H5Pset/get_vol_implicit_async

* Clean up warning

* Remove H5Pget_vol_async and replace with more generic H5Pget_vol_cap_flags

* Clean up warnings

* Add H5ESfree_err_info convenience routine

* Fix typo

* Correct matching for cached VOL plugins

* Add developer header file

* Update for C99 compatibility

* Add missing trace macro

* Stop clang-format from messing with the trace macros.  Don't set up VOL wrappers for 'infrastructure' objects like requests and blobs

* Fix warning about formatting a directory

* Clean up formatting for H5E_BEGIN_TRY / H5E_END_TRY

* Reduce scope of H5ES__close

* Enable CMake checks for various types on MacOS

* Clean up properly when H5CX_retrieve_state() fails.  Also clean up many compiler warnings.

* Committing clang-format changes

* Merge from develop

* Fix mis-placed assert

* Remove commented-out code

* Re-add macro for unsetenv on Windows (I think it accidentally was merged out)

* Strengthen sanity check from error report to assertion

* Committing clang-format changes

* Add units to the comments for a few fields

* Switch 'get execution time' operation for async request tokens to be an optional operation and query if connector supports operation before retrieving it.

* Committing clang-format changes

* Remove H5ESget_time_estimate

* Committing clang-format changes

* Create developer header for datatype routines and move type conversion register/unregister routines there.

* Simplify internal H5VL_setup_name_args and H5VL_setup_idx_args routines

* Add H5VLlink_optional_op, allowing dynamicly registered optional operations for the link VOL subclass, also added H5VL_loc_params argument to the link 'optional' callback to allow them to work correctly.

* Run bin/format_source on current code

* Add H5VLobject_optional_op, allowing dynamicly registered optional operations for the object VOL subclass, also added H5VL_loc_params argument to the object 'optional' callback to allow them to work correctly.

* Run bin/format_source on current code

* Committing clang-format changes

* Revert "Switch 'get execution time' operation for async request tokens to be an optional operation and query if connector supports operation before retrieving it."

This reverts commit 5ac92014da.

* Committing clang-format changes

* Convert attribute 'get' operation to use struct-of-tagged-union pattern for VOL callback arguments, instead of using varargs.

* Update tracing macros

* Convert attribute 'specific' operation to use struct-of-tagged-union pattern for VOL callback arguments, instead of using varargs.

* Convert dataset 'get' and 'specific' operations to use struct-of-tagged-union pattern for VOL callback arguments, instead of using varargs.  Also, minor tweaks to attribute 'get' and 'specific' operation parameters.

* Convert datatype 'get' and 'specific' operations to use struct-of-tagged-union pattern for VOL callback arguments, instead of using varargs.  Also, minor tweaks to H5O_refresh_metadata arguments.

* Reduce warnings

* Reduce warnings

* Track change to datatype 'get' callback

* Fix bug with file pointer getting invalidated when object closed

* Reformat source

* Convert file and group VOL classes 'get' and 'specific' operations to use
struct-of-tagged-union pattern for VOL callback arguments, instead of using
varargs.  Also small cleanup to the attribute get name operation.  Also moved
'mount' and 'unmount' operations to be group specific operations, instead of
file specific, to better align with their behavior (mounted files are on
groups, so a group is what is operated on).

* Remove remainder of merge conflict marking

* Convert link VOL class 'create' operations to use struct-of-tagged-union pattern for VOL callback arguments, instead of using varargs.

* Remove some unused local variables

* Convert link VOL class 'get' operations to use struct-of-tagged-union pattern for VOL callback arguments, instead of using varargs.  Also refactor 'get name by idx' routines to return actual length of name with a parameter instead of the return value, and move some callback context structs for the link interface from the private header file into the source code module, to reduce their visibility scope.

* Update tracing macros

* Convert link VOL class 'specific' operations to use struct-of-tagged-union pattern for VOL callback arguments, instead of using varargs.

* Convert object VOL class 'get' operations to use struct-of-tagged-union pattern for VOL callback arguments, instead of using varargs.

* Convert object VOL class 'specific' operations to use struct-of-tagged-union pattern for VOL callback arguments, instead of using varargs.  Also refactor H5G_loc_exists, et al, to return 'exists' flag in a parameter and errors with the function return value, instead of overloading both into the return value.  And, corrected logic error in test/links.c around non-existant objects in a file.

* Convert request VOL class 'specific' operations to use struct-of-tagged-union pattern for VOL callback arguments, instead of using varargs.

* Convert blob VOL class 'specific' operations to use struct-of-tagged-union pattern for VOL callback arguments, instead of using varargs.  Also removes the H5VL_BLOB_GETSIZE operation, as it's unused in the library and the blob ID size for a container is now returned with H5VL_FILE_GET_CONT_INFO.

* Add 'const' to several parameters that are only queried.

* Convert all VOL classes' 'optional' operations to use struct-of-tagged-union pattern for VOL callback arguments, instead of using varargs.  Convert several 'get' routines to return the length of an array in a parameter instead of combining it into the return value.  Move several routines to be in less public namespace.  Correct direct_chunk test to verify that parameters aren't modified on error.

* Switch get/specific/optional VOL callback argument structures to be 'async-friendly'.  Also other minor cleanups and bug-fixes.

* Add H5Pset_dataset_io_hyperslab_selection / H5S_PLIST feature, to allow skipping H5Dget_space + H5Sselect_hyperslab for async operation

* Add dynamic optional operations for request objects

* Update dynamic operation test for optional request operations

* Update a comment for an operation argument

* Run trace and format_source scripts

* Committing clang-format changes

* Committing clang-format changes

Co-authored-by: vchoi <vchoi@jelly.ad.hdfgroup.org>
Co-authored-by: vchoi-hdfgroup <55293060+vchoi-hdfgroup@users.noreply.github.com>
Co-authored-by: jhendersonHDF <jhenderson@hdfgroup.org>
Co-authored-by: Dana Robinson <derobins@hdfgroup.org>
Co-authored-by: Dana Robinson <43805+derobins@users.noreply.github.com>
Co-authored-by: bmribler <39579120+bmribler@users.noreply.github.com>
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-06-02 15:29:46 -05:00
Dana Robinson
88a83d56c0 Cleans up hsize_t and haddr_t size guessing (#709)
* Cleans up definitions of haddr_t and hsize_t + cruft removal

* Formatted source
2021-06-01 21:27:53 -05:00
Dana Robinson
5e4625c04f Removes some DEC Alpha cruft from H5detect and H5private.h (#708) 2021-06-01 21:01:40 -05:00
Dana Robinson
50d0888f49 C++ warning and build fixes (#707)
* Committing clang-format changes

* C++ build and warning updates

* Fixes all warnings on C++ (with gcc 9.3)
* Updates CMake and Autotools C++ builds

* Undo warning clobber

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-06-01 08:49:39 -05:00
Dana Robinson
4ef33ef7cd Clean up type size checks in configure.ac (#702) 2021-05-28 22:03:21 -05:00
Dana Robinson
2da5855900 Split H5L.c internal code to H5Lint.c (#691)
* Committing clang-format changes

* Splits internal parts of H5L.c to H5Lint.c

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-05-28 21:59:58 -05:00
Dana Robinson
552ce4952b Removes alternative function enter/leave macro scheme (#678)
* Committing clang-format changes

* Converted BEGIN_FUNC, etc. macros to FUNC_ENTER

* Rips out the BEGIN_FUNC, etc. macros

* Removes 'end if', etc. comments from H5HL package

* Committing clang-format changes

* Fixes an H5EA iterate issue

* Fixes an issue in the H5FA iterator code

* Further cleanup in bin/trace after macro removal

* Iterator changes in H5EA and H5FA

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-05-28 21:58:13 -05:00
Allen Byrne
0262a49f9c Java and fortran cmake changes (#694)
* 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

* Note LLVM 10 to 11 format default changes

* Update format plugin

* Undo clang-format version 11 changes

* One more correction

* Update supported platforms

* Revert whitespace changes

* Correct whitespace

* Changes from PR#3

* HDFFV-11213 added option to control gcc10 warnings diagnostics

* HDFFV-11212 Use the new references correctly in JNI utility and tests

* format source

* Fix typo

* Add new test file

* HDFFV-11212 - update test and remove unused arg

* Minor non-space formatting changes

* Use H5I_INVALID_ID instead of "-1"

* source formatting

* add missing testfile, update jni function

* Undo commit of debug code

* remove mislocated file

* Fix h5repack test for handling of fapls and id close

* Update h5diff test files usage text

* HDFFV-11212 add new ref tests for JNI export dataset

* src format update

* Remove blank line typo

* src format typo

* long double requires %Lg

* Another long double foramt specifer S.B. %Lg

* issue with t128bit test

* Windows issue with h5dump and type.

* Fix review issues

* refactor function nesting and fix error checks

* format fixes

* Remove untested functions and javadoc quiet comments

* Restore TRY block.

* Change string append errors to memory exception

* revert to H5_JNI_FATAL_ERROR - support functions need work

* Add assertion error for h5util functions

* remove duplicate function

* format fix

* Revert HD function error handling

* Update copyright comments

* GH #386 java folder copyright corrections

* Whitespace

* GH #359 implement and fix tools 1.6 API usage

* remove excessive comments

* Flip inits to correct ifdef section

* rework ifdef to be simpler

* format issue

* Reformat ifdef inits

* remove static attribute

* format compliance

* Update names

* Revert because logic relies on float not being int

* Changes noticed from creating merge of #412

* Double underscore change

* Correct compiler version variable used

* Remove header guard underscores

* Whitespace cleanup

* Split format source and commit changes on repo push

* remove pre-split setting

* Change windows TS to use older VS.

* correct window os name

* HDFFV-11212 JNI export util and Javadoc

* Suggested review changes

* Another change found

* Committing clang-format changes

* HDFFV-11113 long double in tools

* HDFFV-11113 add note

* Disable long double tests for now

* HDFFV-11228 remove arbitrary CMake warning groups.

* Make each flag a string

* Some Javadoc warning fixes

* Updated javadoc fixes

* # WARNING: head commit changed in the meantime

HDFFV-11229 Fix long double usage in tools and java

Changed h5dump and h5ls to just print 128-bit for long double type.
Added test and file for dataset and attributes with all three float
types.

* Committing clang-format changes

* HDFFV-11229 Add release note

* HDFFV-11229 windows testfile needed

* fix typo

* Remove non supported message text

* HDFFV-11229 - change ldouble test to check both native and general

* HDFFV-11229 add second file compare

* HDFFV-11229 fix reference file

* HDFFV-11229 autotools check two refs

* HDFFV-11229 revert back to removal of NATIVE_LDOUBLE in tools output

* Committing clang-format changes

* Update release note

* Update attribute type of ref file

* Change source of ninja for macs

* try port instead of brew

* Recommended is to use brew.

* Undo non long double changes

* remove unneeded file

* Fix perl and doxygen CMake code

* Add "option" command for clang options

* Rework CMake add_custom to use the BYPRODUCTS argument

* Add stamp files to BYPRODUCTS

* Only one copy of file exists

* Fix custom cmmand depends targets

* Fix fortran custom command DEPENDS

* Add LD_LIBRARY_PATH to tests

* Add custom target for DEPENDS

* Add h5detect conditionaly to generated target DEPENDS

* Correct DEPENDS targets

* Parallel builds need the mpi compiler for pkgconfig scripts.

* install only if MPI build

* Fortran target depends

* Remove incorrect source attribute

* doxygen adjustments

* doxygen build updates

* Correct version

* Correct function version - function has been merged to 1.12

* Correct version string for map functions

* Cleanup warnings for tools debug builds

* TRILAB-227 - fix indexing for h5diff selections

* Correct location of pos to index function call

* TRILAB-227 Enable test

* Quote subset args

* Use MATCHES because of AppleClang

* if blocks needed for build modes

* Update list of DT platforms

* VS2019 correctly displays float values

* revert VS2019 change

* Issue #669 remove version from pkgcfg filename

* remove version from h5cc script

* Java reference functions updated

enabled fortran in cmake gcc action yaml file
java reference test changed to correctly test refs
jni reference functions that create ids changed to use jni id logging

* Correct BYPRODUCTS argument

* Correct more genereated files BYPRODUCTS

* BYPRODUCTS must have unique locations

* Fix typo

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-05-28 21:56:29 -05:00
Dana Robinson
e60ac6ec2d Removes pre-C99 build and header cruft (#700)
* Committing clang-format changes

* Removes pre-C99 build and header cruft

* Assumes ANSI C headers exist
* Assumes stdbool.h, stdint.h, and inttypes.h are present
* Assumes the C++ compiler can handle stdint.h
* Removes all work-arounds for missing functionality, especially stdbool.h

* Formats source

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-05-28 07:48:29 -05:00
Scot Breitenfeld
4454fca02a Fix H5FD_mpio_Debug="rw" can report MPI_count instead of bytes (#699)
* fixed missed closing of a dataset

* fixed missed closing of a dataset

* fixed typo in error return

* Committing clang-format changes

* minor edits

* code format

* Committing clang-format changes

* code format

* minor edit

* switched from using MPI_count, to actual bytes written for H5FD_mpio_debug rw debugging

* Committing clang-format changes

* changed size_i in printf to reflect the I/O.

* Committing clang-format changes

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-05-28 07:36:46 -05:00
Dana Robinson
dfe4575914 Require a C++11 compiler to build the C++ wrappers (#693)
* Committing clang-format changes

* Requires a C++11 compiler to build the C++ wrappers

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-05-27 21:24:30 -05:00
Dana Robinson
168be9a0f0 CMake fix for sporadic flush2 failures (#692)
* Committing clang-format changes

* Runs the flush1/flush2 tests in their own directory

Avoids file deletions by other tests.

* Revert "Runs the flush1/flush2 tests in their own directory"

This reverts commit 746c048824.

Also pulls the flush files from the clean list, which is a simpler fix.

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-05-27 09:35:15 -05:00
Dana Robinson
dedba0f947 Makes the event_set test a single-source target (#690)
* Committing clang-format changes

* Makes the event_set test a single-source target

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-05-27 09:33:46 -05:00
jhendersonHDF
ee9d6f514a Use internal version of H5Eprint2 to avoid possible stack overflow (#661) 2021-05-26 12:05:24 -05:00
Dana Robinson
2c5d08d84d err_compat test cleanup (#681)
* Committing clang-format changes

* Cleans up err_compat test and output

* Formatted source

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-05-25 15:38:54 -05:00
Dana Robinson
004b9c06a6 Typo (#682)
* Committing clang-format changes

* Minor typo in H5O.c

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-05-25 15:20:51 -05:00
Dana Robinson
62a5443bd7 Various CMake changes (#679)
* Committing clang-format changes

* Several CMake updates:

* Removes unused HDF5_ENABLE_HSIZET
* Switches TEST_SHELL_SCRIPTS to ON
* Sets SH_PROGRAM to bash instead of sh

* Set default build type back to RelWithDebInfo

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-05-24 08:55:08 -05:00
Dana Robinson
bee09040d3 Fixes for a couple of trivial warnings (#676)
* Committing clang-format changes

* Trivial warning fixes:

* Removes an unused done target in H5Tbit.c
* Add (void) to quiet "ignored return value" warnings in the generators
  (which generally ignore errors)

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-05-24 08:53:24 -05:00
Dana Robinson
2142359709 Brings chunk_info valgrind fix from 1.12 (#677)
* Committing clang-format changes

* Fixes a minor valgrind issue in the chunk_info test (#675)

* Fixes a minor valgrind issue in the chunk_info test

The chunk_info test incorrectly set the number of bytes in a compressed
buffer, which caused valgrind to complain about writing uninitialized
bytes.

* Committing clang-format changes

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-05-24 08:26:19 -05:00
Allen Byrne
02de350b39 Remove version from pkgcfg file names (#671)
* 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

* Note LLVM 10 to 11 format default changes

* Update format plugin

* Undo clang-format version 11 changes

* One more correction

* Update supported platforms

* Revert whitespace changes

* Correct whitespace

* Changes from PR#3

* HDFFV-11213 added option to control gcc10 warnings diagnostics

* HDFFV-11212 Use the new references correctly in JNI utility and tests

* format source

* Fix typo

* Add new test file

* HDFFV-11212 - update test and remove unused arg

* Minor non-space formatting changes

* Use H5I_INVALID_ID instead of "-1"

* source formatting

* add missing testfile, update jni function

* Undo commit of debug code

* remove mislocated file

* Fix h5repack test for handling of fapls and id close

* Update h5diff test files usage text

* HDFFV-11212 add new ref tests for JNI export dataset

* src format update

* Remove blank line typo

* src format typo

* long double requires %Lg

* Another long double foramt specifer S.B. %Lg

* issue with t128bit test

* Windows issue with h5dump and type.

* Fix review issues

* refactor function nesting and fix error checks

* format fixes

* Remove untested functions and javadoc quiet comments

* Restore TRY block.

* Change string append errors to memory exception

* revert to H5_JNI_FATAL_ERROR - support functions need work

* Add assertion error for h5util functions

* remove duplicate function

* format fix

* Revert HD function error handling

* Update copyright comments

* GH #386 java folder copyright corrections

* Whitespace

* GH #359 implement and fix tools 1.6 API usage

* remove excessive comments

* Flip inits to correct ifdef section

* rework ifdef to be simpler

* format issue

* Reformat ifdef inits

* remove static attribute

* format compliance

* Update names

* Revert because logic relies on float not being int

* Changes noticed from creating merge of #412

* Double underscore change

* Correct compiler version variable used

* Remove header guard underscores

* Whitespace cleanup

* Split format source and commit changes on repo push

* remove pre-split setting

* Change windows TS to use older VS.

* correct window os name

* HDFFV-11212 JNI export util and Javadoc

* Suggested review changes

* Another change found

* Committing clang-format changes

* HDFFV-11113 long double in tools

* HDFFV-11113 add note

* Disable long double tests for now

* HDFFV-11228 remove arbitrary CMake warning groups.

* Make each flag a string

* Some Javadoc warning fixes

* Updated javadoc fixes

* # WARNING: head commit changed in the meantime

HDFFV-11229 Fix long double usage in tools and java

Changed h5dump and h5ls to just print 128-bit for long double type.
Added test and file for dataset and attributes with all three float
types.

* Committing clang-format changes

* HDFFV-11229 Add release note

* HDFFV-11229 windows testfile needed

* fix typo

* Remove non supported message text

* HDFFV-11229 - change ldouble test to check both native and general

* HDFFV-11229 add second file compare

* HDFFV-11229 fix reference file

* HDFFV-11229 autotools check two refs

* HDFFV-11229 revert back to removal of NATIVE_LDOUBLE in tools output

* Committing clang-format changes

* Update release note

* Update attribute type of ref file

* Change source of ninja for macs

* try port instead of brew

* Recommended is to use brew.

* Undo non long double changes

* remove unneeded file

* Fix perl and doxygen CMake code

* Add "option" command for clang options

* Rework CMake add_custom to use the BYPRODUCTS argument

* Add stamp files to BYPRODUCTS

* Only one copy of file exists

* Fix custom cmmand depends targets

* Fix fortran custom command DEPENDS

* Add LD_LIBRARY_PATH to tests

* Add custom target for DEPENDS

* Add h5detect conditionaly to generated target DEPENDS

* Correct DEPENDS targets

* Parallel builds need the mpi compiler for pkgconfig scripts.

* install only if MPI build

* Fortran target depends

* Remove incorrect source attribute

* doxygen adjustments

* doxygen build updates

* Correct version

* Correct function version - function has been merged to 1.12

* Correct version string for map functions

* Cleanup warnings for tools debug builds

* TRILAB-227 - fix indexing for h5diff selections

* Correct location of pos to index function call

* TRILAB-227 Enable test

* Quote subset args

* Use MATCHES because of AppleClang

* if blocks needed for build modes

* Update list of DT platforms

* VS2019 correctly displays float values

* revert VS2019 change

* Issue #669 remove version from pkgcfg filename

* remove version from h5cc script

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-05-21 17:08:36 -05:00
Allen Byrne
701be452e7 Fix VS2019 test reference (#668)
* 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

* Note LLVM 10 to 11 format default changes

* Update format plugin

* Undo clang-format version 11 changes

* One more correction

* Update supported platforms

* Revert whitespace changes

* Correct whitespace

* Changes from PR#3

* HDFFV-11213 added option to control gcc10 warnings diagnostics

* HDFFV-11212 Use the new references correctly in JNI utility and tests

* format source

* Fix typo

* Add new test file

* HDFFV-11212 - update test and remove unused arg

* Minor non-space formatting changes

* Use H5I_INVALID_ID instead of "-1"

* source formatting

* add missing testfile, update jni function

* Undo commit of debug code

* remove mislocated file

* Fix h5repack test for handling of fapls and id close

* Update h5diff test files usage text

* HDFFV-11212 add new ref tests for JNI export dataset

* src format update

* Remove blank line typo

* src format typo

* long double requires %Lg

* Another long double foramt specifer S.B. %Lg

* issue with t128bit test

* Windows issue with h5dump and type.

* Fix review issues

* refactor function nesting and fix error checks

* format fixes

* Remove untested functions and javadoc quiet comments

* Restore TRY block.

* Change string append errors to memory exception

* revert to H5_JNI_FATAL_ERROR - support functions need work

* Add assertion error for h5util functions

* remove duplicate function

* format fix

* Revert HD function error handling

* Update copyright comments

* GH #386 java folder copyright corrections

* Whitespace

* GH #359 implement and fix tools 1.6 API usage

* remove excessive comments

* Flip inits to correct ifdef section

* rework ifdef to be simpler

* format issue

* Reformat ifdef inits

* remove static attribute

* format compliance

* Update names

* Revert because logic relies on float not being int

* Changes noticed from creating merge of #412

* Double underscore change

* Correct compiler version variable used

* Remove header guard underscores

* Whitespace cleanup

* Split format source and commit changes on repo push

* remove pre-split setting

* Change windows TS to use older VS.

* correct window os name

* HDFFV-11212 JNI export util and Javadoc

* Suggested review changes

* Another change found

* Committing clang-format changes

* HDFFV-11113 long double in tools

* HDFFV-11113 add note

* Disable long double tests for now

* HDFFV-11228 remove arbitrary CMake warning groups.

* Make each flag a string

* Some Javadoc warning fixes

* Updated javadoc fixes

* # WARNING: head commit changed in the meantime

HDFFV-11229 Fix long double usage in tools and java

Changed h5dump and h5ls to just print 128-bit for long double type.
Added test and file for dataset and attributes with all three float
types.

* Committing clang-format changes

* HDFFV-11229 Add release note

* HDFFV-11229 windows testfile needed

* fix typo

* Remove non supported message text

* HDFFV-11229 - change ldouble test to check both native and general

* HDFFV-11229 add second file compare

* HDFFV-11229 fix reference file

* HDFFV-11229 autotools check two refs

* HDFFV-11229 revert back to removal of NATIVE_LDOUBLE in tools output

* Committing clang-format changes

* Update release note

* Update attribute type of ref file

* Change source of ninja for macs

* try port instead of brew

* Recommended is to use brew.

* Undo non long double changes

* remove unneeded file

* Fix perl and doxygen CMake code

* Add "option" command for clang options

* Rework CMake add_custom to use the BYPRODUCTS argument

* Add stamp files to BYPRODUCTS

* Only one copy of file exists

* Fix custom cmmand depends targets

* Fix fortran custom command DEPENDS

* Add LD_LIBRARY_PATH to tests

* Add custom target for DEPENDS

* Add h5detect conditionaly to generated target DEPENDS

* Correct DEPENDS targets

* Parallel builds need the mpi compiler for pkgconfig scripts.

* install only if MPI build

* Fortran target depends

* Remove incorrect source attribute

* doxygen adjustments

* doxygen build updates

* Correct version

* Correct function version - function has been merged to 1.12

* Correct version string for map functions

* Cleanup warnings for tools debug builds

* TRILAB-227 - fix indexing for h5diff selections

* Correct location of pos to index function call

* TRILAB-227 Enable test

* Quote subset args

* Use MATCHES because of AppleClang

* if blocks needed for build modes

* Update list of DT platforms

* VS2019 correctly displays float values

* revert VS2019 change

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-05-20 22:44:36 -05:00
Allen Byrne
5142398d1b Add if blocks around fortran targets for build mode (#660)
* 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

* Note LLVM 10 to 11 format default changes

* Update format plugin

* Undo clang-format version 11 changes

* One more correction

* Update supported platforms

* Revert whitespace changes

* Correct whitespace

* Changes from PR#3

* HDFFV-11213 added option to control gcc10 warnings diagnostics

* HDFFV-11212 Use the new references correctly in JNI utility and tests

* format source

* Fix typo

* Add new test file

* HDFFV-11212 - update test and remove unused arg

* Minor non-space formatting changes

* Use H5I_INVALID_ID instead of "-1"

* source formatting

* add missing testfile, update jni function

* Undo commit of debug code

* remove mislocated file

* Fix h5repack test for handling of fapls and id close

* Update h5diff test files usage text

* HDFFV-11212 add new ref tests for JNI export dataset

* src format update

* Remove blank line typo

* src format typo

* long double requires %Lg

* Another long double foramt specifer S.B. %Lg

* issue with t128bit test

* Windows issue with h5dump and type.

* Fix review issues

* refactor function nesting and fix error checks

* format fixes

* Remove untested functions and javadoc quiet comments

* Restore TRY block.

* Change string append errors to memory exception

* revert to H5_JNI_FATAL_ERROR - support functions need work

* Add assertion error for h5util functions

* remove duplicate function

* format fix

* Revert HD function error handling

* Update copyright comments

* GH #386 java folder copyright corrections

* Whitespace

* GH #359 implement and fix tools 1.6 API usage

* remove excessive comments

* Flip inits to correct ifdef section

* rework ifdef to be simpler

* format issue

* Reformat ifdef inits

* remove static attribute

* format compliance

* Update names

* Revert because logic relies on float not being int

* Changes noticed from creating merge of #412

* Double underscore change

* Correct compiler version variable used

* Remove header guard underscores

* Whitespace cleanup

* Split format source and commit changes on repo push

* remove pre-split setting

* Change windows TS to use older VS.

* correct window os name

* HDFFV-11212 JNI export util and Javadoc

* Suggested review changes

* Another change found

* Committing clang-format changes

* HDFFV-11113 long double in tools

* HDFFV-11113 add note

* Disable long double tests for now

* HDFFV-11228 remove arbitrary CMake warning groups.

* Make each flag a string

* Some Javadoc warning fixes

* Updated javadoc fixes

* # WARNING: head commit changed in the meantime

HDFFV-11229 Fix long double usage in tools and java

Changed h5dump and h5ls to just print 128-bit for long double type.
Added test and file for dataset and attributes with all three float
types.

* Committing clang-format changes

* HDFFV-11229 Add release note

* HDFFV-11229 windows testfile needed

* fix typo

* Remove non supported message text

* HDFFV-11229 - change ldouble test to check both native and general

* HDFFV-11229 add second file compare

* HDFFV-11229 fix reference file

* HDFFV-11229 autotools check two refs

* HDFFV-11229 revert back to removal of NATIVE_LDOUBLE in tools output

* Committing clang-format changes

* Update release note

* Update attribute type of ref file

* Change source of ninja for macs

* try port instead of brew

* Recommended is to use brew.

* Undo non long double changes

* remove unneeded file

* Fix perl and doxygen CMake code

* Add "option" command for clang options

* Rework CMake add_custom to use the BYPRODUCTS argument

* Add stamp files to BYPRODUCTS

* Only one copy of file exists

* Fix custom cmmand depends targets

* Fix fortran custom command DEPENDS

* Add LD_LIBRARY_PATH to tests

* Add custom target for DEPENDS

* Add h5detect conditionaly to generated target DEPENDS

* Correct DEPENDS targets

* Parallel builds need the mpi compiler for pkgconfig scripts.

* install only if MPI build

* Fortran target depends

* Remove incorrect source attribute

* doxygen adjustments

* doxygen build updates

* Correct version

* Correct function version - function has been merged to 1.12

* Correct version string for map functions

* Cleanup warnings for tools debug builds

* TRILAB-227 - fix indexing for h5diff selections

* Correct location of pos to index function call

* TRILAB-227 Enable test

* Quote subset args

* Use MATCHES because of AppleClang

* if blocks needed for build modes

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-05-19 17:22:18 -05:00
Gaute Hope
509a068f62 Add H5Dchunk_iter method for iterating over chunks (#6)
* Add H5Dchunk_iter method for iterating over chunks

This method iterates over all chunks in dataset, calling a user-supplied
callback with the chunk information and optional user supplied data.

The iterator is stopped when ITER_STOP is returned by the user-supplied
callback or the iterator is exhausted.

Existing methods to get chunk_info performs an iteration each time, so
to get many or all chunks causes SUM(i) for i = 0 -> N operations for N
chunks, as opposed to N operations when using this iterator for this use case.

* H5Dchunk_iter: test iterating all chunks, some chunks and failing iteration.

* H5D: move H5Dchunk_iter private methods to specific

* trace: add H5D_chunk_iter_op_t and trace H5D.c

* chunks-iter: document chunk_iter

* chunk-iter: chunk add FUNC_ENTER/FUNC_LEAVE macros

* Committing clang-format changes

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-05-19 17:21:52 -05:00
Lee Newberg
d179f9d79c BUG: DataSet assignment operator is missing (#503)
* BUG: DataSet assignment operator is missing

* Some compilers complain if the copy constructor is given explicitly
  but the assignment operator is implicitly set to default.

* Explicitly defining the assignment operator allows us to properly
  handle reference counters for shared resources.

* BUG: DataSet assignment operator is missing.

* Mimicking code of H5DataType::operator() as suggested by @bmribler.

* Added test

Description:
    Added test for DataSet::operator= that Leengit added
Platform tested:
    Linux/64 (jelly)

* Removed Author field.

* Commit clang format changes.

* Entry for Leengit's github PR #503

* Removed lines left by mistake

Co-authored-by: Binh-Minh Ribler <bmribler@hdfgroup.org>
Co-authored-by: Larry Knox <lrknox@hdfgroup.org>
2021-05-19 15:48:20 -05:00
Larry Knox
a5d1897225 Revert addition of & to 2 parameters in DSetCreatPropList::setVirtual to (#652)
maintain binary compatibility with released HDF5 versions.
2021-05-18 14:23:17 -05:00
Allen Byrne
96aa5923d3 CMake uses matches for clang (#645)
* 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

* Note LLVM 10 to 11 format default changes

* Update format plugin

* Undo clang-format version 11 changes

* One more correction

* Update supported platforms

* Revert whitespace changes

* Correct whitespace

* Changes from PR#3

* HDFFV-11213 added option to control gcc10 warnings diagnostics

* HDFFV-11212 Use the new references correctly in JNI utility and tests

* format source

* Fix typo

* Add new test file

* HDFFV-11212 - update test and remove unused arg

* Minor non-space formatting changes

* Use H5I_INVALID_ID instead of "-1"

* source formatting

* add missing testfile, update jni function

* Undo commit of debug code

* remove mislocated file

* Fix h5repack test for handling of fapls and id close

* Update h5diff test files usage text

* HDFFV-11212 add new ref tests for JNI export dataset

* src format update

* Remove blank line typo

* src format typo

* long double requires %Lg

* Another long double foramt specifer S.B. %Lg

* issue with t128bit test

* Windows issue with h5dump and type.

* Fix review issues

* refactor function nesting and fix error checks

* format fixes

* Remove untested functions and javadoc quiet comments

* Restore TRY block.

* Change string append errors to memory exception

* revert to H5_JNI_FATAL_ERROR - support functions need work

* Add assertion error for h5util functions

* remove duplicate function

* format fix

* Revert HD function error handling

* Update copyright comments

* GH #386 java folder copyright corrections

* Whitespace

* GH #359 implement and fix tools 1.6 API usage

* remove excessive comments

* Flip inits to correct ifdef section

* rework ifdef to be simpler

* format issue

* Reformat ifdef inits

* remove static attribute

* format compliance

* Update names

* Revert because logic relies on float not being int

* Changes noticed from creating merge of #412

* Double underscore change

* Correct compiler version variable used

* Remove header guard underscores

* Whitespace cleanup

* Split format source and commit changes on repo push

* remove pre-split setting

* Change windows TS to use older VS.

* correct window os name

* HDFFV-11212 JNI export util and Javadoc

* Suggested review changes

* Another change found

* Committing clang-format changes

* HDFFV-11113 long double in tools

* HDFFV-11113 add note

* Disable long double tests for now

* HDFFV-11228 remove arbitrary CMake warning groups.

* Make each flag a string

* Some Javadoc warning fixes

* Updated javadoc fixes

* # WARNING: head commit changed in the meantime

HDFFV-11229 Fix long double usage in tools and java

Changed h5dump and h5ls to just print 128-bit for long double type.
Added test and file for dataset and attributes with all three float
types.

* Committing clang-format changes

* HDFFV-11229 Add release note

* HDFFV-11229 windows testfile needed

* fix typo

* Remove non supported message text

* HDFFV-11229 - change ldouble test to check both native and general

* HDFFV-11229 add second file compare

* HDFFV-11229 fix reference file

* HDFFV-11229 autotools check two refs

* HDFFV-11229 revert back to removal of NATIVE_LDOUBLE in tools output

* Committing clang-format changes

* Update release note

* Update attribute type of ref file

* Change source of ninja for macs

* try port instead of brew

* Recommended is to use brew.

* Undo non long double changes

* remove unneeded file

* Fix perl and doxygen CMake code

* Add "option" command for clang options

* Rework CMake add_custom to use the BYPRODUCTS argument

* Add stamp files to BYPRODUCTS

* Only one copy of file exists

* Fix custom cmmand depends targets

* Fix fortran custom command DEPENDS

* Add LD_LIBRARY_PATH to tests

* Add custom target for DEPENDS

* Add h5detect conditionaly to generated target DEPENDS

* Correct DEPENDS targets

* Parallel builds need the mpi compiler for pkgconfig scripts.

* install only if MPI build

* Fortran target depends

* Remove incorrect source attribute

* doxygen adjustments

* doxygen build updates

* Correct version

* Correct function version - function has been merged to 1.12

* Correct version string for map functions

* Cleanup warnings for tools debug builds

* TRILAB-227 - fix indexing for h5diff selections

* Correct location of pos to index function call

* TRILAB-227 Enable test

* Quote subset args

* Use MATCHES because of AppleClang

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-05-17 16:25:55 -05:00
Dana Robinson
6c170c4b24 Reduces overly-pedantic casting in the public headers (#644)
* Committing clang-format changes

* Fixes overly pedantic casting in public headers

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-05-15 13:58:54 -05:00
bmribler
9fb2c24c2e Bmr dev hdffv 11223 (#640)
* Fixed HDFFV-11223 (CVE-2018-14460)

Description
    - Added checks against buffer size to prevent segfault, in case of data
      corruption, for sdim->size and sdim->max.
    - Renamed data files in an existing test to shorten their length
      as agreed with other developers previously.
Platforms tested:
    Linux/64 (jelly)

* Committing clang-format changes

* Updated for test files

* Updated for HDFFV-11223

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-05-12 14:35:53 -05:00
jhendersonHDF
78f0728d1b Fix H5Eget_auto2/H5Eauto_is_v2 to not clear error stack (#625) 2021-05-11 22:22:45 -05:00
Dana Robinson
7d140b97fb Purges UFAIL from the library (#637)
* Committing clang-format changes

* Purges UFAIL from the library

* H5HL_insert change requested in PR

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-05-11 11:05:03 -05:00
Dana Robinson
9023e98940 Removes gratuitous (double)x.yF casts (#632)
* Committing clang-format changes

* Removes gratuitous (double)x.yF casts

* Committing clang-format changes

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-05-07 11:45:05 -05:00
Dana Robinson
1e572b18e3 Cleans up a const warning left over from previous constification (#633)
* Committing clang-format changes

* Adds consts to a few global variables

* Cleans up a const warning left over from previous constification

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-05-07 11:44:07 -05:00
Allen Byrne
6955329054 h5diff subset indexing (#628)
* 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

* Note LLVM 10 to 11 format default changes

* Update format plugin

* Undo clang-format version 11 changes

* One more correction

* Update supported platforms

* Revert whitespace changes

* Correct whitespace

* Changes from PR#3

* HDFFV-11213 added option to control gcc10 warnings diagnostics

* HDFFV-11212 Use the new references correctly in JNI utility and tests

* format source

* Fix typo

* Add new test file

* HDFFV-11212 - update test and remove unused arg

* Minor non-space formatting changes

* Use H5I_INVALID_ID instead of "-1"

* source formatting

* add missing testfile, update jni function

* Undo commit of debug code

* remove mislocated file

* Fix h5repack test for handling of fapls and id close

* Update h5diff test files usage text

* HDFFV-11212 add new ref tests for JNI export dataset

* src format update

* Remove blank line typo

* src format typo

* long double requires %Lg

* Another long double foramt specifer S.B. %Lg

* issue with t128bit test

* Windows issue with h5dump and type.

* Fix review issues

* refactor function nesting and fix error checks

* format fixes

* Remove untested functions and javadoc quiet comments

* Restore TRY block.

* Change string append errors to memory exception

* revert to H5_JNI_FATAL_ERROR - support functions need work

* Add assertion error for h5util functions

* remove duplicate function

* format fix

* Revert HD function error handling

* Update copyright comments

* GH #386 java folder copyright corrections

* Whitespace

* GH #359 implement and fix tools 1.6 API usage

* remove excessive comments

* Flip inits to correct ifdef section

* rework ifdef to be simpler

* format issue

* Reformat ifdef inits

* remove static attribute

* format compliance

* Update names

* Revert because logic relies on float not being int

* Changes noticed from creating merge of #412

* Double underscore change

* Correct compiler version variable used

* Remove header guard underscores

* Whitespace cleanup

* Split format source and commit changes on repo push

* remove pre-split setting

* Change windows TS to use older VS.

* correct window os name

* HDFFV-11212 JNI export util and Javadoc

* Suggested review changes

* Another change found

* Committing clang-format changes

* HDFFV-11113 long double in tools

* HDFFV-11113 add note

* Disable long double tests for now

* HDFFV-11228 remove arbitrary CMake warning groups.

* Make each flag a string

* Some Javadoc warning fixes

* Updated javadoc fixes

* # WARNING: head commit changed in the meantime

HDFFV-11229 Fix long double usage in tools and java

Changed h5dump and h5ls to just print 128-bit for long double type.
Added test and file for dataset and attributes with all three float
types.

* Committing clang-format changes

* HDFFV-11229 Add release note

* HDFFV-11229 windows testfile needed

* fix typo

* Remove non supported message text

* HDFFV-11229 - change ldouble test to check both native and general

* HDFFV-11229 add second file compare

* HDFFV-11229 fix reference file

* HDFFV-11229 autotools check two refs

* HDFFV-11229 revert back to removal of NATIVE_LDOUBLE in tools output

* Committing clang-format changes

* Update release note

* Update attribute type of ref file

* Change source of ninja for macs

* try port instead of brew

* Recommended is to use brew.

* Undo non long double changes

* remove unneeded file

* Fix perl and doxygen CMake code

* Add "option" command for clang options

* Rework CMake add_custom to use the BYPRODUCTS argument

* Add stamp files to BYPRODUCTS

* Only one copy of file exists

* Fix custom cmmand depends targets

* Fix fortran custom command DEPENDS

* Add LD_LIBRARY_PATH to tests

* Add custom target for DEPENDS

* Add h5detect conditionaly to generated target DEPENDS

* Correct DEPENDS targets

* Parallel builds need the mpi compiler for pkgconfig scripts.

* install only if MPI build

* Fortran target depends

* Remove incorrect source attribute

* doxygen adjustments

* doxygen build updates

* Correct version

* Correct function version - function has been merged to 1.12

* Correct version string for map functions

* Cleanup warnings for tools debug builds

* TRILAB-227 - fix indexing for h5diff selections

* Correct location of pos to index function call

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-05-07 11:43:12 -05:00
Allen Byrne
333a79c1b2 Cleanup tools debug build warnings (#627)
* 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

* Note LLVM 10 to 11 format default changes

* Update format plugin

* Undo clang-format version 11 changes

* One more correction

* Update supported platforms

* Revert whitespace changes

* Correct whitespace

* Changes from PR#3

* HDFFV-11213 added option to control gcc10 warnings diagnostics

* HDFFV-11212 Use the new references correctly in JNI utility and tests

* format source

* Fix typo

* Add new test file

* HDFFV-11212 - update test and remove unused arg

* Minor non-space formatting changes

* Use H5I_INVALID_ID instead of "-1"

* source formatting

* add missing testfile, update jni function

* Undo commit of debug code

* remove mislocated file

* Fix h5repack test for handling of fapls and id close

* Update h5diff test files usage text

* HDFFV-11212 add new ref tests for JNI export dataset

* src format update

* Remove blank line typo

* src format typo

* long double requires %Lg

* Another long double foramt specifer S.B. %Lg

* issue with t128bit test

* Windows issue with h5dump and type.

* Fix review issues

* refactor function nesting and fix error checks

* format fixes

* Remove untested functions and javadoc quiet comments

* Restore TRY block.

* Change string append errors to memory exception

* revert to H5_JNI_FATAL_ERROR - support functions need work

* Add assertion error for h5util functions

* remove duplicate function

* format fix

* Revert HD function error handling

* Update copyright comments

* GH #386 java folder copyright corrections

* Whitespace

* GH #359 implement and fix tools 1.6 API usage

* remove excessive comments

* Flip inits to correct ifdef section

* rework ifdef to be simpler

* format issue

* Reformat ifdef inits

* remove static attribute

* format compliance

* Update names

* Revert because logic relies on float not being int

* Changes noticed from creating merge of #412

* Double underscore change

* Correct compiler version variable used

* Remove header guard underscores

* Whitespace cleanup

* Split format source and commit changes on repo push

* remove pre-split setting

* Change windows TS to use older VS.

* correct window os name

* HDFFV-11212 JNI export util and Javadoc

* Suggested review changes

* Another change found

* Committing clang-format changes

* HDFFV-11113 long double in tools

* HDFFV-11113 add note

* Disable long double tests for now

* HDFFV-11228 remove arbitrary CMake warning groups.

* Make each flag a string

* Some Javadoc warning fixes

* Updated javadoc fixes

* # WARNING: head commit changed in the meantime

HDFFV-11229 Fix long double usage in tools and java

Changed h5dump and h5ls to just print 128-bit for long double type.
Added test and file for dataset and attributes with all three float
types.

* Committing clang-format changes

* HDFFV-11229 Add release note

* HDFFV-11229 windows testfile needed

* fix typo

* Remove non supported message text

* HDFFV-11229 - change ldouble test to check both native and general

* HDFFV-11229 add second file compare

* HDFFV-11229 fix reference file

* HDFFV-11229 autotools check two refs

* HDFFV-11229 revert back to removal of NATIVE_LDOUBLE in tools output

* Committing clang-format changes

* Update release note

* Update attribute type of ref file

* Change source of ninja for macs

* try port instead of brew

* Recommended is to use brew.

* Undo non long double changes

* remove unneeded file

* Fix perl and doxygen CMake code

* Add "option" command for clang options

* Rework CMake add_custom to use the BYPRODUCTS argument

* Add stamp files to BYPRODUCTS

* Only one copy of file exists

* Fix custom cmmand depends targets

* Fix fortran custom command DEPENDS

* Add LD_LIBRARY_PATH to tests

* Add custom target for DEPENDS

* Add h5detect conditionaly to generated target DEPENDS

* Correct DEPENDS targets

* Parallel builds need the mpi compiler for pkgconfig scripts.

* install only if MPI build

* Fortran target depends

* Remove incorrect source attribute

* doxygen adjustments

* doxygen build updates

* Correct version

* Correct function version - function has been merged to 1.12

* Correct version string for map functions

* Cleanup warnings for tools debug builds

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-05-05 17:08:10 -05:00
Allen Byrne
2f79e3f2df doygen adjustments (#614)
* 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

* Note LLVM 10 to 11 format default changes

* Update format plugin

* Undo clang-format version 11 changes

* One more correction

* Update supported platforms

* Revert whitespace changes

* Correct whitespace

* Changes from PR#3

* HDFFV-11213 added option to control gcc10 warnings diagnostics

* HDFFV-11212 Use the new references correctly in JNI utility and tests

* format source

* Fix typo

* Add new test file

* HDFFV-11212 - update test and remove unused arg

* Minor non-space formatting changes

* Use H5I_INVALID_ID instead of "-1"

* source formatting

* add missing testfile, update jni function

* Undo commit of debug code

* remove mislocated file

* Fix h5repack test for handling of fapls and id close

* Update h5diff test files usage text

* HDFFV-11212 add new ref tests for JNI export dataset

* src format update

* Remove blank line typo

* src format typo

* long double requires %Lg

* Another long double foramt specifer S.B. %Lg

* issue with t128bit test

* Windows issue with h5dump and type.

* Fix review issues

* refactor function nesting and fix error checks

* format fixes

* Remove untested functions and javadoc quiet comments

* Restore TRY block.

* Change string append errors to memory exception

* revert to H5_JNI_FATAL_ERROR - support functions need work

* Add assertion error for h5util functions

* remove duplicate function

* format fix

* Revert HD function error handling

* Update copyright comments

* GH #386 java folder copyright corrections

* Whitespace

* GH #359 implement and fix tools 1.6 API usage

* remove excessive comments

* Flip inits to correct ifdef section

* rework ifdef to be simpler

* format issue

* Reformat ifdef inits

* remove static attribute

* format compliance

* Update names

* Revert because logic relies on float not being int

* Changes noticed from creating merge of #412

* Double underscore change

* Correct compiler version variable used

* Remove header guard underscores

* Whitespace cleanup

* Split format source and commit changes on repo push

* remove pre-split setting

* Change windows TS to use older VS.

* correct window os name

* HDFFV-11212 JNI export util and Javadoc

* Suggested review changes

* Another change found

* Committing clang-format changes

* HDFFV-11113 long double in tools

* HDFFV-11113 add note

* Disable long double tests for now

* HDFFV-11228 remove arbitrary CMake warning groups.

* Make each flag a string

* Some Javadoc warning fixes

* Updated javadoc fixes

* # WARNING: head commit changed in the meantime

HDFFV-11229 Fix long double usage in tools and java

Changed h5dump and h5ls to just print 128-bit for long double type.
Added test and file for dataset and attributes with all three float
types.

* Committing clang-format changes

* HDFFV-11229 Add release note

* HDFFV-11229 windows testfile needed

* fix typo

* Remove non supported message text

* HDFFV-11229 - change ldouble test to check both native and general

* HDFFV-11229 add second file compare

* HDFFV-11229 fix reference file

* HDFFV-11229 autotools check two refs

* HDFFV-11229 revert back to removal of NATIVE_LDOUBLE in tools output

* Committing clang-format changes

* Update release note

* Update attribute type of ref file

* Change source of ninja for macs

* try port instead of brew

* Recommended is to use brew.

* Undo non long double changes

* remove unneeded file

* Fix perl and doxygen CMake code

* Add "option" command for clang options

* Rework CMake add_custom to use the BYPRODUCTS argument

* Add stamp files to BYPRODUCTS

* Only one copy of file exists

* Fix custom cmmand depends targets

* Fix fortran custom command DEPENDS

* Add LD_LIBRARY_PATH to tests

* Add custom target for DEPENDS

* Add h5detect conditionaly to generated target DEPENDS

* Correct DEPENDS targets

* Parallel builds need the mpi compiler for pkgconfig scripts.

* install only if MPI build

* Fortran target depends

* Remove incorrect source attribute

* doxygen adjustments

* doxygen build updates

* Correct version

* Correct function version - function has been merged to 1.12

* Correct version string for map functions

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-05-04 17:43:19 -05:00
Sean McBride
dc639bddb8 Made private my_yyinput function static (#618)
This prevents it being exported as a public symbol.
2021-05-04 15:56:33 -05:00
Dana Robinson
dbe7204085 Hash table replacement for skip lists in ID code (#600)
* Committing clang-format changes

* Brings over hash table code from Bitbucket

* Can be switched between skip list and hash table implementation
  with H5_USE_ID_HASH_TABLE #define
* Not yet updated to use iterate-safe delete

* Fixes a warning and changes where the problematic test is
commented out.

* Adds mark-and-sweep flags and members

* Final fixes for hash table ID code

* Removes skip list ID code

* Committing clang-format changes

* Formatted source

* Adds a comment about the mark-and-sweep scheme.

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-05-04 15:51:26 -05:00
Dana Robinson
c7d45c205e Adds const to a few global variables (#623)
* Committing clang-format changes

* Adds consts to a few global variables

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-05-04 15:26:38 -05:00
Sean McBride
3899e090df Ubsan fixes (#498)
* Fixed use of null pointer identified by UBSan

UBSan warned:
runtime error: member access within null pointer of type 'named_dt_t' (aka 'struct named_dt_t')

with these two tests:
H5REPACK-committed_dt_DFF
H5REPACK-committed_dt

Reformulated per @gnuoyd suggestion.

* Fixed undefined float -> unsigned char conversion in HL_test_image

* Removed dead skip_overflow_tests_g global

The global `skip_overflow_tests_g` was being set but never read.

* Don't treat 2d array as 1d array, fixing UBSan complaint in `CPP_testhdf5`

* Committing clang-format changes

* Remove extra ']' in line 730.

* Committing clang-format changes

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Larry Knox <lrknox@hdfgroup.org>
2021-05-03 10:22:53 -05:00
Sean McBride
44db310d8d Removed mentions of Wdeclaration-after-statement now that C99 is requ… (#447)
* Removed mentions of Wdeclaration-after-statement now that C99 is required

* Remove -Werror=declaration-after-statement from error-general file.

Co-authored-by: Larry Knox <lrknox@hdfgroup.org>
2021-05-03 09:08:37 -05:00
Dana Robinson
73bb382e9e Fixes crashes when size_hint > UINT32_MAX is passed to H5Gcreate1 (#611)
* Committing clang-format changes

* Fixes incorrect size_hint handling in H5Gcreate1

* Updates the size hint type for group creation

* Updates the RELEASE.txt note

* Revert "Updates the RELEASE.txt note"

This reverts commit 3df386acca.

* Reverts previous behavior to use a uint32_t struct field

* Updates RELEASE.txt

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-04-30 14:47:51 -05:00
Allen Byrne
7ab97037a0 Fortran target depends (#608)
* 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

* Note LLVM 10 to 11 format default changes

* Update format plugin

* Undo clang-format version 11 changes

* One more correction

* Update supported platforms

* Revert whitespace changes

* Correct whitespace

* Changes from PR#3

* HDFFV-11213 added option to control gcc10 warnings diagnostics

* HDFFV-11212 Use the new references correctly in JNI utility and tests

* format source

* Fix typo

* Add new test file

* HDFFV-11212 - update test and remove unused arg

* Minor non-space formatting changes

* Use H5I_INVALID_ID instead of "-1"

* source formatting

* add missing testfile, update jni function

* Undo commit of debug code

* remove mislocated file

* Fix h5repack test for handling of fapls and id close

* Update h5diff test files usage text

* HDFFV-11212 add new ref tests for JNI export dataset

* src format update

* Remove blank line typo

* src format typo

* long double requires %Lg

* Another long double foramt specifer S.B. %Lg

* issue with t128bit test

* Windows issue with h5dump and type.

* Fix review issues

* refactor function nesting and fix error checks

* format fixes

* Remove untested functions and javadoc quiet comments

* Restore TRY block.

* Change string append errors to memory exception

* revert to H5_JNI_FATAL_ERROR - support functions need work

* Add assertion error for h5util functions

* remove duplicate function

* format fix

* Revert HD function error handling

* Update copyright comments

* GH #386 java folder copyright corrections

* Whitespace

* GH #359 implement and fix tools 1.6 API usage

* remove excessive comments

* Flip inits to correct ifdef section

* rework ifdef to be simpler

* format issue

* Reformat ifdef inits

* remove static attribute

* format compliance

* Update names

* Revert because logic relies on float not being int

* Changes noticed from creating merge of #412

* Double underscore change

* Correct compiler version variable used

* Remove header guard underscores

* Whitespace cleanup

* Split format source and commit changes on repo push

* remove pre-split setting

* Change windows TS to use older VS.

* correct window os name

* HDFFV-11212 JNI export util and Javadoc

* Suggested review changes

* Another change found

* Committing clang-format changes

* HDFFV-11113 long double in tools

* HDFFV-11113 add note

* Disable long double tests for now

* HDFFV-11228 remove arbitrary CMake warning groups.

* Make each flag a string

* Some Javadoc warning fixes

* Updated javadoc fixes

* # WARNING: head commit changed in the meantime

HDFFV-11229 Fix long double usage in tools and java

Changed h5dump and h5ls to just print 128-bit for long double type.
Added test and file for dataset and attributes with all three float
types.

* Committing clang-format changes

* HDFFV-11229 Add release note

* HDFFV-11229 windows testfile needed

* fix typo

* Remove non supported message text

* HDFFV-11229 - change ldouble test to check both native and general

* HDFFV-11229 add second file compare

* HDFFV-11229 fix reference file

* HDFFV-11229 autotools check two refs

* HDFFV-11229 revert back to removal of NATIVE_LDOUBLE in tools output

* Committing clang-format changes

* Update release note

* Update attribute type of ref file

* Change source of ninja for macs

* try port instead of brew

* Recommended is to use brew.

* Undo non long double changes

* remove unneeded file

* Fix perl and doxygen CMake code

* Add "option" command for clang options

* Rework CMake add_custom to use the BYPRODUCTS argument

* Add stamp files to BYPRODUCTS

* Only one copy of file exists

* Fix custom cmmand depends targets

* Fix fortran custom command DEPENDS

* Add LD_LIBRARY_PATH to tests

* Add custom target for DEPENDS

* Add h5detect conditionaly to generated target DEPENDS

* Correct DEPENDS targets

* Parallel builds need the mpi compiler for pkgconfig scripts.

* install only if MPI build

* Fortran target depends

* Remove incorrect source attribute

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-04-30 13:40:27 -05:00
Dana Robinson
16f9b070ce Fixes a segfault when H5Pset_mdc_log_options is called multiple times on a fapl (#601)
* Committing clang-format changes

* Fixes a segfault when H5Pset_mdc_log_options() is called multiple times

An internal string is incorrectly freed when the API call is invoked
multiple times on a property list, which will usually cause a segfault
to occur. On the first call the log location is NULL so the problem
doesn't occur.

Fixes HDFFV-11239

* Fixes typos

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-04-29 09:33:43 -05:00
Dana Robinson
138bc52fac Fix for a segfault when H5Pset_fapl_log is passed an invalid fapl ID (#607)
* Committing clang-format changes

* Fixes an issue where H5Pset_fapl_log sefaults when passed an invalid
fapl ID

This was due to a pointer-containing struct being memset after the first
internal API call. If the first call failed, the error condition would
check if the pointer was not NULL and then attempt to free it if not.
This would lead to the freeing of a wild pointer if an invalid fapl ID
were passed in.

This was fixed by reordering the memset and adding a test to ensure the
problem stays fixed.

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-04-29 06:57:02 -05:00
Allen Byrne
00dc456cec Parallel builds need the mpi compiler for pkgconfig scripts. (#599)
* 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

* Note LLVM 10 to 11 format default changes

* Update format plugin

* Undo clang-format version 11 changes

* One more correction

* Update supported platforms

* Revert whitespace changes

* Correct whitespace

* Changes from PR#3

* HDFFV-11213 added option to control gcc10 warnings diagnostics

* HDFFV-11212 Use the new references correctly in JNI utility and tests

* format source

* Fix typo

* Add new test file

* HDFFV-11212 - update test and remove unused arg

* Minor non-space formatting changes

* Use H5I_INVALID_ID instead of "-1"

* source formatting

* add missing testfile, update jni function

* Undo commit of debug code

* remove mislocated file

* Fix h5repack test for handling of fapls and id close

* Update h5diff test files usage text

* HDFFV-11212 add new ref tests for JNI export dataset

* src format update

* Remove blank line typo

* src format typo

* long double requires %Lg

* Another long double foramt specifer S.B. %Lg

* issue with t128bit test

* Windows issue with h5dump and type.

* Fix review issues

* refactor function nesting and fix error checks

* format fixes

* Remove untested functions and javadoc quiet comments

* Restore TRY block.

* Change string append errors to memory exception

* revert to H5_JNI_FATAL_ERROR - support functions need work

* Add assertion error for h5util functions

* remove duplicate function

* format fix

* Revert HD function error handling

* Update copyright comments

* GH #386 java folder copyright corrections

* Whitespace

* GH #359 implement and fix tools 1.6 API usage

* remove excessive comments

* Flip inits to correct ifdef section

* rework ifdef to be simpler

* format issue

* Reformat ifdef inits

* remove static attribute

* format compliance

* Update names

* Revert because logic relies on float not being int

* Changes noticed from creating merge of #412

* Double underscore change

* Correct compiler version variable used

* Remove header guard underscores

* Whitespace cleanup

* Split format source and commit changes on repo push

* remove pre-split setting

* Change windows TS to use older VS.

* correct window os name

* HDFFV-11212 JNI export util and Javadoc

* Suggested review changes

* Another change found

* Committing clang-format changes

* HDFFV-11113 long double in tools

* HDFFV-11113 add note

* Disable long double tests for now

* HDFFV-11228 remove arbitrary CMake warning groups.

* Make each flag a string

* Some Javadoc warning fixes

* Updated javadoc fixes

* # WARNING: head commit changed in the meantime

HDFFV-11229 Fix long double usage in tools and java

Changed h5dump and h5ls to just print 128-bit for long double type.
Added test and file for dataset and attributes with all three float
types.

* Committing clang-format changes

* HDFFV-11229 Add release note

* HDFFV-11229 windows testfile needed

* fix typo

* Remove non supported message text

* HDFFV-11229 - change ldouble test to check both native and general

* HDFFV-11229 add second file compare

* HDFFV-11229 fix reference file

* HDFFV-11229 autotools check two refs

* HDFFV-11229 revert back to removal of NATIVE_LDOUBLE in tools output

* Committing clang-format changes

* Update release note

* Update attribute type of ref file

* Change source of ninja for macs

* try port instead of brew

* Recommended is to use brew.

* Undo non long double changes

* remove unneeded file

* Fix perl and doxygen CMake code

* Add "option" command for clang options

* Rework CMake add_custom to use the BYPRODUCTS argument

* Add stamp files to BYPRODUCTS

* Only one copy of file exists

* Fix custom cmmand depends targets

* Fix fortran custom command DEPENDS

* Add LD_LIBRARY_PATH to tests

* Add custom target for DEPENDS

* Add h5detect conditionaly to generated target DEPENDS

* Correct DEPENDS targets

* Parallel builds need the mpi compiler for pkgconfig scripts.

* install only if MPI build

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-04-27 08:58:34 -05:00
Allen Byrne
460b6f4a8a fortran generated files depends (#598)
* 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

* Note LLVM 10 to 11 format default changes

* Update format plugin

* Undo clang-format version 11 changes

* One more correction

* Update supported platforms

* Revert whitespace changes

* Correct whitespace

* Changes from PR#3

* HDFFV-11213 added option to control gcc10 warnings diagnostics

* HDFFV-11212 Use the new references correctly in JNI utility and tests

* format source

* Fix typo

* Add new test file

* HDFFV-11212 - update test and remove unused arg

* Minor non-space formatting changes

* Use H5I_INVALID_ID instead of "-1"

* source formatting

* add missing testfile, update jni function

* Undo commit of debug code

* remove mislocated file

* Fix h5repack test for handling of fapls and id close

* Update h5diff test files usage text

* HDFFV-11212 add new ref tests for JNI export dataset

* src format update

* Remove blank line typo

* src format typo

* long double requires %Lg

* Another long double foramt specifer S.B. %Lg

* issue with t128bit test

* Windows issue with h5dump and type.

* Fix review issues

* refactor function nesting and fix error checks

* format fixes

* Remove untested functions and javadoc quiet comments

* Restore TRY block.

* Change string append errors to memory exception

* revert to H5_JNI_FATAL_ERROR - support functions need work

* Add assertion error for h5util functions

* remove duplicate function

* format fix

* Revert HD function error handling

* Update copyright comments

* GH #386 java folder copyright corrections

* Whitespace

* GH #359 implement and fix tools 1.6 API usage

* remove excessive comments

* Flip inits to correct ifdef section

* rework ifdef to be simpler

* format issue

* Reformat ifdef inits

* remove static attribute

* format compliance

* Update names

* Revert because logic relies on float not being int

* Changes noticed from creating merge of #412

* Double underscore change

* Correct compiler version variable used

* Remove header guard underscores

* Whitespace cleanup

* Split format source and commit changes on repo push

* remove pre-split setting

* Change windows TS to use older VS.

* correct window os name

* HDFFV-11212 JNI export util and Javadoc

* Suggested review changes

* Another change found

* Committing clang-format changes

* HDFFV-11113 long double in tools

* HDFFV-11113 add note

* Disable long double tests for now

* HDFFV-11228 remove arbitrary CMake warning groups.

* Make each flag a string

* Some Javadoc warning fixes

* Updated javadoc fixes

* # WARNING: head commit changed in the meantime

HDFFV-11229 Fix long double usage in tools and java

Changed h5dump and h5ls to just print 128-bit for long double type.
Added test and file for dataset and attributes with all three float
types.

* Committing clang-format changes

* HDFFV-11229 Add release note

* HDFFV-11229 windows testfile needed

* fix typo

* Remove non supported message text

* HDFFV-11229 - change ldouble test to check both native and general

* HDFFV-11229 add second file compare

* HDFFV-11229 fix reference file

* HDFFV-11229 autotools check two refs

* HDFFV-11229 revert back to removal of NATIVE_LDOUBLE in tools output

* Committing clang-format changes

* Update release note

* Update attribute type of ref file

* Change source of ninja for macs

* try port instead of brew

* Recommended is to use brew.

* Undo non long double changes

* remove unneeded file

* Fix perl and doxygen CMake code

* Add "option" command for clang options

* Rework CMake add_custom to use the BYPRODUCTS argument

* Add stamp files to BYPRODUCTS

* Only one copy of file exists

* Fix custom cmmand depends targets

* Fix fortran custom command DEPENDS

* Add LD_LIBRARY_PATH to tests

* Add custom target for DEPENDS

* Add h5detect conditionaly to generated target DEPENDS

* Correct DEPENDS targets

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-04-26 16:44:31 -05:00
Gerd Heber
1d680fe04c Merge doxygen2 into develop (#553)
* Fixed warnings and started H5Epublic.h.

* Include H5FD* headers to correctly resolve references.

* Doxygen2 (#330)

* H5Eauto_is_v2.

* Added a few more calls.

* Added a few more H5E calls.

* First cut of H5E v2.

* Added the deprecated v1 calls.

* Updated spacing.

* Once more.

* Taking some inspiration from Eigen3.

* Add doxygen for the assigned functions: H5Pregister1,H5Pinsert1,H5Pen… (#352)

* Add doxygen for the assigned functions: H5Pregister1,H5Pinsert1,H5Pencode1, H5Pget_filter_by_id1,H5Pget_version, H5Pset_file_space,H5Pget_file_space. Someone already adds H5Pget_filter1. Also fixs an extra parameter 'close' call back function for HPregister2.

* doxygen work. fixs format by using clang-format.

* doxgen work for H5Pregister1 etc. Addressed Barbara and Gerd's comments.
For Quincey's comments, since we are not supposed to change the source code.
I leave this to future improvements.

* added documentation for H5P APIs (#350)

* add documenation for H5Pget_buffer,H5Pget_data_transform,H5Pget_edc_check,H5Pget_hyper_vector_size,H5Pget_preserve,H5Pget_type_conv_cb,H5Pget_vlen_mem_manager,H5Pset_btree_ratios

* format corrections

* fixed grammer

* fixed herr_t

* Better name.

* A fresh look.

* add doxygen to H5Ppublic.h

* use attention instead of warning

* Add doxygen comments in H5Ppublic.h (#375)

* Add doxygen comments in H5Ppublic.h

* H5Pset_meta_block_size
* H5Pset_metadata_read_attempts
* H5Pset_multi_type
* H5Pset_object_flush_cb
* H5Pset_sieve_buf_size
* H5Pset_small_data_block_size
* H5Pset_all_coll_metadata_ops
* H5Pget_all_coll_metadata_ops

* Add DOXYGEN_EXAMPLES_DIR to src/CMakeLists.txt

* Fix clang-format errors

* Fix filenames in doxygen/examples

* add doxygen to H5Ppublic.h (#378)

* add doxygen to H5Ppublic.h

* use attention instead of warning

Co-authored-by: Kimmy Mu <kmu@hdfgroup.org>

* Revert "add doxygen to H5Ppublic.h (#378)"

This reverts commit 2ee1821b13.

* Updated Doxygen variables.

* I forgot to copy two images.

* Enable desktop search by default.

* Add my assigned Doxygen documentation.

* Remove whitespace at EOL.  Appease clang-format.

* Addressed Chris' comments.

* Added an alias for asynchronous functions.

* One space is enough for all of us.

* Slightly restructured RM page.

* address some issues

* reformatting

* Style external links.

* reformatting

* reformatting

* Added "Metadata Caching in HDF5" as a technical note example.

* Revise this soon!

* Added specification examples.

* Fixed references.

* Added H5AC cache image stuff and file format study.

* Added older FMT versions. Where did 1.0 go?

* Updated C/C++ note and replaced ambiguous labels.

* Reformat source with clang v10.0.1.

* Added the VFL technical note.

* Added what I believe might be called version 1.0 of the format.

* Added the remaining specs.

* Added H5Z callback documentation and fixed a few mistakes.

* Added dox for deprecated H5G calls and fixed a few snippet blockIDs.

* clang-format happy?

* Ok?

* Bonus track: Deprecated H5D functions.

* Carry over the more detailed group description.

* Added documentation for the missing and deprecated H5R calls.

* Life is easier and less repetitive w/ snippets. Use them!

* Eliminate the snippet block ID artifacts in the HTML rendering.

* Fixed snippet HTML artifacts and added a few missing calls.

* Under 20 H5Ps to go!

* Almost complete!

* "This is a form of pedantry up with which I will not put." (Churchill)

* Let's not waste as much space on bulleted lists!

* First complete (?) draft of the Doxygen-based RM.

* Completeness check and minor fixes along the way.

* Pedantry.

* Adding missing H5FD calls checkpoint.

* Pedantry.

* More pedantry.

* Added H5Pset_fapl_log.

* First draft of H5ES.

* Fixed warnings.

* Prep. for map module.

* First cut of the map module.

* Pedantry.

* Possible H5F introduction.

* Fix the indentation.

* Pedantry.

* Ditto.

* Thanks to the reviewers for their comments.

* Added missing images.

* Line numbers are a distraction here.

* More examples, references, and clean-up. Don't repeat yourself!

* Clang pedantry.

* Ditto.

* More reviewer comments...

* Templatized references and cleaned up \todos.

* Committing clang-format changes

* Fixed MANIFEST.

* Addressed Quincey's comments. (OCPLs)

* Fixed a few more \todo items.

* Fixed more \todo items.

* Added attribute life cycle.

* Forgot the examples file.

* Committing clang-format changes

* Pedantry.

* Live and learn!

* Added a sample H5D life cycle.

* Committing clang-format changes

* Pedantry.

Co-authored-by: kyang2014 <kyang2014@users.noreply.github.com>
Co-authored-by: Scot Breitenfeld <brtnfld@hdfgroup.org>
Co-authored-by: Kimmy Mu <kmu@hdfgroup.org>
Co-authored-by: Christopher Hogan <ChristopherHogan@users.noreply.github.com>
Co-authored-by: jya-kmu <53388330+jya-kmu@users.noreply.github.com>
Co-authored-by: David Young <dyoung@hdfgroup.org>
Co-authored-by: Larry Knox <lrknox@hdfgroup.org>
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-04-26 14:07:29 -05:00
Allen Byrne
12082e728d CMake changes to byproducts - ninja warnings (#568)
* 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

* Note LLVM 10 to 11 format default changes

* Update format plugin

* Undo clang-format version 11 changes

* One more correction

* Update supported platforms

* Revert whitespace changes

* Correct whitespace

* Changes from PR#3

* HDFFV-11213 added option to control gcc10 warnings diagnostics

* HDFFV-11212 Use the new references correctly in JNI utility and tests

* format source

* Fix typo

* Add new test file

* HDFFV-11212 - update test and remove unused arg

* Minor non-space formatting changes

* Use H5I_INVALID_ID instead of "-1"

* source formatting

* add missing testfile, update jni function

* Undo commit of debug code

* remove mislocated file

* Fix h5repack test for handling of fapls and id close

* Update h5diff test files usage text

* HDFFV-11212 add new ref tests for JNI export dataset

* src format update

* Remove blank line typo

* src format typo

* long double requires %Lg

* Another long double foramt specifer S.B. %Lg

* issue with t128bit test

* Windows issue with h5dump and type.

* Fix review issues

* refactor function nesting and fix error checks

* format fixes

* Remove untested functions and javadoc quiet comments

* Restore TRY block.

* Change string append errors to memory exception

* revert to H5_JNI_FATAL_ERROR - support functions need work

* Add assertion error for h5util functions

* remove duplicate function

* format fix

* Revert HD function error handling

* Update copyright comments

* GH #386 java folder copyright corrections

* Whitespace

* GH #359 implement and fix tools 1.6 API usage

* remove excessive comments

* Flip inits to correct ifdef section

* rework ifdef to be simpler

* format issue

* Reformat ifdef inits

* remove static attribute

* format compliance

* Update names

* Revert because logic relies on float not being int

* Changes noticed from creating merge of #412

* Double underscore change

* Correct compiler version variable used

* Remove header guard underscores

* Whitespace cleanup

* Split format source and commit changes on repo push

* remove pre-split setting

* Change windows TS to use older VS.

* correct window os name

* HDFFV-11212 JNI export util and Javadoc

* Suggested review changes

* Another change found

* Committing clang-format changes

* HDFFV-11113 long double in tools

* HDFFV-11113 add note

* Disable long double tests for now

* HDFFV-11228 remove arbitrary CMake warning groups.

* Make each flag a string

* Some Javadoc warning fixes

* Updated javadoc fixes

* # WARNING: head commit changed in the meantime

HDFFV-11229 Fix long double usage in tools and java

Changed h5dump and h5ls to just print 128-bit for long double type.
Added test and file for dataset and attributes with all three float
types.

* Committing clang-format changes

* HDFFV-11229 Add release note

* HDFFV-11229 windows testfile needed

* fix typo

* Remove non supported message text

* HDFFV-11229 - change ldouble test to check both native and general

* HDFFV-11229 add second file compare

* HDFFV-11229 fix reference file

* HDFFV-11229 autotools check two refs

* HDFFV-11229 revert back to removal of NATIVE_LDOUBLE in tools output

* Committing clang-format changes

* Update release note

* Update attribute type of ref file

* Change source of ninja for macs

* try port instead of brew

* Recommended is to use brew.

* Undo non long double changes

* remove unneeded file

* Fix perl and doxygen CMake code

* Add "option" command for clang options

* Rework CMake add_custom to use the BYPRODUCTS argument

* Add stamp files to BYPRODUCTS

* Only one copy of file exists

* Fix custom cmmand depends targets

* Fix fortran custom command DEPENDS

* Add LD_LIBRARY_PATH to tests

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-04-23 21:22:29 -05:00
jhendersonHDF
cb7a0e13b8 Fix set_tests_properties for parallel t_pflush tests (#569) 2021-04-22 08:01:55 -05:00
Larry Knox
3707675c03 Update top-level COPYING file and remove COPYING files from subdirectories (#561)
* Modify temporary rpath for testing in java example scripts.

* Update URL in source file Copyright headers for web copy of COPYING (license) file.

* Add release_docs/code-conventions.md file.

* Add script to test h5py.

* Fix script error.

* Add file h5pytest.yml.

* Test declaration of counter variables in for loops.

* Committing clang-format changes

* Committing clang-format changes

* Added [] to line 126 of H5LTanalyze.l.
Ran bin/genparser with flex v2.6.4 and Bison v3.0.4 on jelly.

* Revert "Added [] to line 126 of H5LTanalyze.l."

This reverts commit e4a9cee441.

* Revert extra commits to match canonical develop.

* Update top-level COPYING file and remove COPYING files from
subdirectories.

* Remove subdirectory COPYING files from MANIFEST.

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-04-21 11:23:34 -05:00
Sean McBride
99d5505ad1 Added more C++11 override keywords (#485)
* Added more C++11 override keywords

* Format updates in src/H5Tconv.c.

* Committing clang-format changes

Co-authored-by: Larry Knox <lrknox@hdfgroup.org>
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-04-20 22:10:04 -05:00
Allen Byrne
9a8b91eb30 CMake advanced options for clang needs an OPTION command #556 (#557)
* 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

* Note LLVM 10 to 11 format default changes

* Update format plugin

* Undo clang-format version 11 changes

* One more correction

* Update supported platforms

* Revert whitespace changes

* Correct whitespace

* Changes from PR#3

* HDFFV-11213 added option to control gcc10 warnings diagnostics

* HDFFV-11212 Use the new references correctly in JNI utility and tests

* format source

* Fix typo

* Add new test file

* HDFFV-11212 - update test and remove unused arg

* Minor non-space formatting changes

* Use H5I_INVALID_ID instead of "-1"

* source formatting

* add missing testfile, update jni function

* Undo commit of debug code

* remove mislocated file

* Fix h5repack test for handling of fapls and id close

* Update h5diff test files usage text

* HDFFV-11212 add new ref tests for JNI export dataset

* src format update

* Remove blank line typo

* src format typo

* long double requires %Lg

* Another long double foramt specifer S.B. %Lg

* issue with t128bit test

* Windows issue with h5dump and type.

* Fix review issues

* refactor function nesting and fix error checks

* format fixes

* Remove untested functions and javadoc quiet comments

* Restore TRY block.

* Change string append errors to memory exception

* revert to H5_JNI_FATAL_ERROR - support functions need work

* Add assertion error for h5util functions

* remove duplicate function

* format fix

* Revert HD function error handling

* Update copyright comments

* GH #386 java folder copyright corrections

* Whitespace

* GH #359 implement and fix tools 1.6 API usage

* remove excessive comments

* Flip inits to correct ifdef section

* rework ifdef to be simpler

* format issue

* Reformat ifdef inits

* remove static attribute

* format compliance

* Update names

* Revert because logic relies on float not being int

* Changes noticed from creating merge of #412

* Double underscore change

* Correct compiler version variable used

* Remove header guard underscores

* Whitespace cleanup

* Split format source and commit changes on repo push

* remove pre-split setting

* Change windows TS to use older VS.

* correct window os name

* HDFFV-11212 JNI export util and Javadoc

* Suggested review changes

* Another change found

* Committing clang-format changes

* HDFFV-11113 long double in tools

* HDFFV-11113 add note

* Disable long double tests for now

* HDFFV-11228 remove arbitrary CMake warning groups.

* Make each flag a string

* Some Javadoc warning fixes

* Updated javadoc fixes

* # WARNING: head commit changed in the meantime

HDFFV-11229 Fix long double usage in tools and java

Changed h5dump and h5ls to just print 128-bit for long double type.
Added test and file for dataset and attributes with all three float
types.

* Committing clang-format changes

* HDFFV-11229 Add release note

* HDFFV-11229 windows testfile needed

* fix typo

* Remove non supported message text

* HDFFV-11229 - change ldouble test to check both native and general

* HDFFV-11229 add second file compare

* HDFFV-11229 fix reference file

* HDFFV-11229 autotools check two refs

* HDFFV-11229 revert back to removal of NATIVE_LDOUBLE in tools output

* Committing clang-format changes

* Update release note

* Update attribute type of ref file

* Change source of ninja for macs

* try port instead of brew

* Recommended is to use brew.

* Undo non long double changes

* remove unneeded file

* Fix perl and doxygen CMake code

* Add "option" command for clang options

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-04-20 17:42:52 -05:00
Dana Robinson
fc5c567fdc CMake no longer builds the C++ library by default (#555)
* Committing clang-format changes

* CMake no longer builds C++ library by default

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-04-20 06:55:05 -05:00
Dana Robinson
d3384b2e8e Fixes incorrect usage of H5I_BADID (#554)
* Committing clang-format changes

* Fixes incorrect use of H5I_BADID

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-04-19 16:51:18 -05:00
Allen Byrne
b2c78e15cf Cleanup CMake code for doxygen and perl shell scripts (#552)
* 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

* Note LLVM 10 to 11 format default changes

* Update format plugin

* Undo clang-format version 11 changes

* One more correction

* Update supported platforms

* Revert whitespace changes

* Correct whitespace

* Changes from PR#3

* HDFFV-11213 added option to control gcc10 warnings diagnostics

* HDFFV-11212 Use the new references correctly in JNI utility and tests

* format source

* Fix typo

* Add new test file

* HDFFV-11212 - update test and remove unused arg

* Minor non-space formatting changes

* Use H5I_INVALID_ID instead of "-1"

* source formatting

* add missing testfile, update jni function

* Undo commit of debug code

* remove mislocated file

* Fix h5repack test for handling of fapls and id close

* Update h5diff test files usage text

* HDFFV-11212 add new ref tests for JNI export dataset

* src format update

* Remove blank line typo

* src format typo

* long double requires %Lg

* Another long double foramt specifer S.B. %Lg

* issue with t128bit test

* Windows issue with h5dump and type.

* Fix review issues

* refactor function nesting and fix error checks

* format fixes

* Remove untested functions and javadoc quiet comments

* Restore TRY block.

* Change string append errors to memory exception

* revert to H5_JNI_FATAL_ERROR - support functions need work

* Add assertion error for h5util functions

* remove duplicate function

* format fix

* Revert HD function error handling

* Update copyright comments

* GH #386 java folder copyright corrections

* Whitespace

* GH #359 implement and fix tools 1.6 API usage

* remove excessive comments

* Flip inits to correct ifdef section

* rework ifdef to be simpler

* format issue

* Reformat ifdef inits

* remove static attribute

* format compliance

* Update names

* Revert because logic relies on float not being int

* Changes noticed from creating merge of #412

* Double underscore change

* Correct compiler version variable used

* Remove header guard underscores

* Whitespace cleanup

* Split format source and commit changes on repo push

* remove pre-split setting

* Change windows TS to use older VS.

* correct window os name

* HDFFV-11212 JNI export util and Javadoc

* Suggested review changes

* Another change found

* Committing clang-format changes

* HDFFV-11113 long double in tools

* HDFFV-11113 add note

* Disable long double tests for now

* HDFFV-11228 remove arbitrary CMake warning groups.

* Make each flag a string

* Some Javadoc warning fixes

* Updated javadoc fixes

* # WARNING: head commit changed in the meantime

HDFFV-11229 Fix long double usage in tools and java

Changed h5dump and h5ls to just print 128-bit for long double type.
Added test and file for dataset and attributes with all three float
types.

* Committing clang-format changes

* HDFFV-11229 Add release note

* HDFFV-11229 windows testfile needed

* fix typo

* Remove non supported message text

* HDFFV-11229 - change ldouble test to check both native and general

* HDFFV-11229 add second file compare

* HDFFV-11229 fix reference file

* HDFFV-11229 autotools check two refs

* HDFFV-11229 revert back to removal of NATIVE_LDOUBLE in tools output

* Committing clang-format changes

* Update release note

* Update attribute type of ref file

* Change source of ninja for macs

* try port instead of brew

* Recommended is to use brew.

* Undo non long double changes

* remove unneeded file

* Fix perl and doxygen CMake code

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-04-19 07:28:32 -05:00
Dana Robinson
d5c449248f Brings the native implementation of H5Fdelete() from Bitbucket (#524)
* Committing clang-format changes

* Brings the native VFD H5Fdelete() implementation from Bitbucket

Only brings the 'del' callbacks, not the 'open/close' scheme.

* Formatter changes

* Committing clang-format changes

* Fixes direct VFD callback name

* Removes UNUSED macro from family API call

* Adds barrier and rank 0 check to MPI-I/O VFD delete

* Revert "Adds barrier and rank 0 check to MPI-I/O VFD delete"

This reverts commit 909765f759.

* Revert "Revert "Adds barrier and rank 0 check to MPI-I/O VFD delete""

This reverts commit 9b04bef115.

* Adds a second barrier after the delete in MPI-I/O VFD

* Only delete files in the core VFD when the backing store flag is set

* Fixes string issues in multi VFD

Also, h5test.c cleanup code now uses H5Fdelete().

* Formatted source

* Rework fapl checks for MPI-I/O VFD delete callback

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-04-16 13:47:32 -05:00
Allen Byrne
e21f7aaac4 Tools long double updates (#522)
* 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

* Note LLVM 10 to 11 format default changes

* Update format plugin

* Undo clang-format version 11 changes

* One more correction

* Update supported platforms

* Revert whitespace changes

* Correct whitespace

* Changes from PR#3

* HDFFV-11213 added option to control gcc10 warnings diagnostics

* HDFFV-11212 Use the new references correctly in JNI utility and tests

* format source

* Fix typo

* Add new test file

* HDFFV-11212 - update test and remove unused arg

* Minor non-space formatting changes

* Use H5I_INVALID_ID instead of "-1"

* source formatting

* add missing testfile, update jni function

* Undo commit of debug code

* remove mislocated file

* Fix h5repack test for handling of fapls and id close

* Update h5diff test files usage text

* HDFFV-11212 add new ref tests for JNI export dataset

* src format update

* Remove blank line typo

* src format typo

* long double requires %Lg

* Another long double foramt specifer S.B. %Lg

* issue with t128bit test

* Windows issue with h5dump and type.

* Fix review issues

* refactor function nesting and fix error checks

* format fixes

* Remove untested functions and javadoc quiet comments

* Restore TRY block.

* Change string append errors to memory exception

* revert to H5_JNI_FATAL_ERROR - support functions need work

* Add assertion error for h5util functions

* remove duplicate function

* format fix

* Revert HD function error handling

* Update copyright comments

* GH #386 java folder copyright corrections

* Whitespace

* GH #359 implement and fix tools 1.6 API usage

* remove excessive comments

* Flip inits to correct ifdef section

* rework ifdef to be simpler

* format issue

* Reformat ifdef inits

* remove static attribute

* format compliance

* Update names

* Revert because logic relies on float not being int

* Changes noticed from creating merge of #412

* Double underscore change

* Correct compiler version variable used

* Remove header guard underscores

* Whitespace cleanup

* Split format source and commit changes on repo push

* remove pre-split setting

* Change windows TS to use older VS.

* correct window os name

* HDFFV-11212 JNI export util and Javadoc

* Suggested review changes

* Another change found

* Committing clang-format changes

* HDFFV-11113 long double in tools

* HDFFV-11113 add note

* Disable long double tests for now

* HDFFV-11228 remove arbitrary CMake warning groups.

* Make each flag a string

* Some Javadoc warning fixes

* Updated javadoc fixes

* # WARNING: head commit changed in the meantime

HDFFV-11229 Fix long double usage in tools and java

Changed h5dump and h5ls to just print 128-bit for long double type.
Added test and file for dataset and attributes with all three float
types.

* Committing clang-format changes

* HDFFV-11229 Add release note

* HDFFV-11229 windows testfile needed

* fix typo

* Remove non supported message text

* HDFFV-11229 - change ldouble test to check both native and general

* HDFFV-11229 add second file compare

* HDFFV-11229 fix reference file

* HDFFV-11229 autotools check two refs

* HDFFV-11229 revert back to removal of NATIVE_LDOUBLE in tools output

* Committing clang-format changes

* Update release note

* Update attribute type of ref file

* Change source of ninja for macs

* try port instead of brew

* Recommended is to use brew.

* Undo non long double changes

* remove unneeded file

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-04-15 07:59:01 -05:00
Sean McBride
052eed29d8 Remove unused #cmakedefine and autotools checks (#431)
With C99 as the minimum, there's no point checking for these standard things anymore.
2021-04-12 19:21:55 -05:00
Dana Robinson
78fe6751b5 Removes implementation of my_strdup() from the multi VFD (#527)
* Committing clang-format changes

* Removes my_strdup() from the multi VFD

* Use strdup directly when memory sanity checks are off

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-03-31 15:52:57 -05:00
Dana Robinson
0f0721f2d6 Minor warning fixes in develop (#526)
* Committing clang-format changes

* Minor warning fixes

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-03-31 15:31:20 -05:00
Scot Breitenfeld
6dae5c2cb5 Fix HDFFV-11232 (#530)
* fixed missed closing of a dataset

* fixed missed closing of a dataset

* fixed typo in error return

* Committing clang-format changes

* minor edits

* code format

* Committing clang-format changes

* code format

* minor edit

* added H5fortkit dependency for H5VLff.F90, HDFFV-11232

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-03-31 09:48:51 -05:00
Dana Robinson
189293e12f Removes dead H5ST package from the library (#528)
* Committing clang-format changes

* Removes the unused H5ST package from the library

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-03-29 21:32:52 -05:00
Dana Robinson
e0eb5c6e1d Updates that allow accum SWMR tests to work on Windows (#493)
* Committing clang-format changes

* Updates the accum test to work on Windows

Uses CreateProcess() on Windows

* Source formatting

* Fix for Unix child result

* Fixes process return code bug on Windows

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-03-26 22:07:59 -05:00
Quincey Koziol
6b13310f5c Clean up MPI-IO VFD tracing support (#520)
* Clean up tracing support

* Committing clang-format changes

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-03-26 17:03:38 -05:00
Quincey Koziol
cb0a883f6d Minor parallel improvements (#519)
* Improve MPI error reporting, handled failed operations in parallel tests more nicely, and clean up MPI_Allreduce for determining whether to break collective I/O

* Committing clang-format changes

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-03-26 15:14:09 -05:00
Larry Knox
da5aca29ff Hdf5 merge pr7 (#516)
* Modify temporary rpath for testing in java example scripts.

* Update URL in source file Copyright headers for web copy of COPYING (license) file.

* Add release_docs/code-conventions.md file.

* Add script to test h5py.

* Fix script error.

* Add file h5pytest.yml.

* Test declaration of counter variables in for loops.

* Committing clang-format changes

* Committing clang-format changes

* Added [] to line 126 of H5LTanalyze.l.
Ran bin/genparser with flex v2.6.4 and Bison v3.0.4 on jelly.

* Revert "Added [] to line 126 of H5LTanalyze.l."

This reverts commit e4a9cee441.

* Revert extra commits to match canonical develop.

* Add cmake variable HDF5_LIB_INFIX (#7)

* Add cmake variable HDF5_LIB_INFIX

This infix is added to all library names after 'hdf5'.
e.g. the infix '_openmpi' results in the library name 'libhdf5_openmpi.so'
This name is used in packages on debian based systems.
(see https://packages.debian.org/jessie/amd64/libhdf5-openmpi-8/filelist)

This option is useful when testing projects on debian based systems with
custom builds of hdf5 while trying to minimize differences between the
custom setup and the environment created by installing system packages.

* Added RELEASE.txt entry for HDF5_LIB_INFIX.

Co-authored-by: Larry Knox <lrknox@hdfgroup.org>

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Raphael Grimm <barcode@users.noreply.github.com>
2021-03-25 18:11:32 -05:00
Allen Byrne
d46fa9950c develop - Javadoc warning fixes (#506)
* 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

* Note LLVM 10 to 11 format default changes

* Update format plugin

* Undo clang-format version 11 changes

* One more correction

* Update supported platforms

* Revert whitespace changes

* Correct whitespace

* Changes from PR#3

* HDFFV-11213 added option to control gcc10 warnings diagnostics

* HDFFV-11212 Use the new references correctly in JNI utility and tests

* format source

* Fix typo

* Add new test file

* HDFFV-11212 - update test and remove unused arg

* Minor non-space formatting changes

* Use H5I_INVALID_ID instead of "-1"

* source formatting

* add missing testfile, update jni function

* Undo commit of debug code

* remove mislocated file

* Fix h5repack test for handling of fapls and id close

* Update h5diff test files usage text

* HDFFV-11212 add new ref tests for JNI export dataset

* src format update

* Remove blank line typo

* src format typo

* long double requires %Lg

* Another long double foramt specifer S.B. %Lg

* issue with t128bit test

* Windows issue with h5dump and type.

* Fix review issues

* refactor function nesting and fix error checks

* format fixes

* Remove untested functions and javadoc quiet comments

* Restore TRY block.

* Change string append errors to memory exception

* revert to H5_JNI_FATAL_ERROR - support functions need work

* Add assertion error for h5util functions

* remove duplicate function

* format fix

* Revert HD function error handling

* Update copyright comments

* GH #386 java folder copyright corrections

* Whitespace

* GH #359 implement and fix tools 1.6 API usage

* remove excessive comments

* Flip inits to correct ifdef section

* rework ifdef to be simpler

* format issue

* Reformat ifdef inits

* remove static attribute

* format compliance

* Update names

* Revert because logic relies on float not being int

* Changes noticed from creating merge of #412

* Double underscore change

* Correct compiler version variable used

* Remove header guard underscores

* Whitespace cleanup

* Split format source and commit changes on repo push

* remove pre-split setting

* Change windows TS to use older VS.

* correct window os name

* HDFFV-11212 JNI export util and Javadoc

* Suggested review changes

* Another change found

* Committing clang-format changes

* HDFFV-11113 long double in tools

* HDFFV-11113 add note

* Disable long double tests for now

* HDFFV-11228 remove arbitrary CMake warning groups.

* Make each flag a string

* Some Javadoc warning fixes

* Updated javadoc fixes

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-03-24 17:02:46 -05:00
Quincey Koziol
3dbbd8aea1 Align with "parallel fence" changes (#479)
* Small code updates and simplifications

* Committing clang-format changes

* Fix 'make installcheck' for parallel builds

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-03-24 15:57:32 -05:00
Dana Robinson
1f637e49d9 Removes c99_(v)snprintf() calls from the standalone test code (#509)
* Committing clang-format changes

* Removes c99_(v)snprintf from standalone code

These internal API calls were removed in a previous commit but were
missed in the sio/pio_standalone code.

* Committing clang-format changes

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-03-24 15:38:05 -05:00
Dana Robinson
df9abfe3f0 Misc warning fixes (#495)
* Committing clang-format changes

* Misc warning fixes from Visual Studio

* Committing clang-format changes

* Fixes warnings in swmr.c test

* Committing clang-format changes

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-03-24 11:25:50 -05:00
Larry Knox
695a4e4f65 Update h5LT files with latest flex and Bison available on jelly (#502)
* Modify temporary rpath for testing in java example scripts.

* Update URL in source file Copyright headers for web copy of COPYING (license) file.

* Add release_docs/code-conventions.md file.

* Add script to test h5py.

* Fix script error.

* Add file h5pytest.yml.

* Test declaration of counter variables in for loops.

* Committing clang-format changes

* Committing clang-format changes

* Added [] to line 126 of H5LTanalyze.l.
Ran bin/genparser with flex v2.6.4 and Bison v3.0.4 on jelly.

* Revert "Added [] to line 126 of H5LTanalyze.l."

This reverts commit e4a9cee441.

* Revert extra commits to match canonical develop.

* Added [] to H5LTanalyze.l line 126 to eliminate warning "rule could not be
matched".
Ran bin/genparser hl/src with flex v2.6.4 and Bison v3.0.4 on jelly.

* Added HD to strdup in H5LTparse.y line 338.
Ran bin/genparser hlsrc again.

* Removed line 126 from H5LTanalyze.l - previous line matches.
Added previously removed line 318 of H5LTparse.y to fix hl_test_lite
failure.
Ran bin/genparser.

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-03-23 21:46:19 -05:00
Dana Robinson
1f3f7fe3ae Removes support for pre-2015 Visual Studio (#496)
* Committing clang-format changes

* Removes work-around code for pre-2015 Visual Studio

HDF5 no longer provides an implementation for:

* <inttypes.h>
* snprintf and vsnprintf
* llround(f), lround(f), round(f)
* strtoll and strtoull
* va_copy
* struct timespec

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-03-23 21:13:57 -05:00
Dana Robinson
69f3cde936 Updates HSYS_GOTO_ERROR to emit GetLastError() values on Win32 (#492)
* Committing clang-format changes

* Updates H5SYS_GOTO_ERROR to emit Win32's GetLastError()

* Committing clang-format changes

* Format source changes

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-03-23 06:19:53 -05:00
Allen Byrne
99c0f504a2 Disable long double tests and remove CMake flag groups (#494)
* 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

* Note LLVM 10 to 11 format default changes

* Update format plugin

* Undo clang-format version 11 changes

* One more correction

* Update supported platforms

* Revert whitespace changes

* Correct whitespace

* Changes from PR#3

* HDFFV-11213 added option to control gcc10 warnings diagnostics

* HDFFV-11212 Use the new references correctly in JNI utility and tests

* format source

* Fix typo

* Add new test file

* HDFFV-11212 - update test and remove unused arg

* Minor non-space formatting changes

* Use H5I_INVALID_ID instead of "-1"

* source formatting

* add missing testfile, update jni function

* Undo commit of debug code

* remove mislocated file

* Fix h5repack test for handling of fapls and id close

* Update h5diff test files usage text

* HDFFV-11212 add new ref tests for JNI export dataset

* src format update

* Remove blank line typo

* src format typo

* long double requires %Lg

* Another long double foramt specifer S.B. %Lg

* issue with t128bit test

* Windows issue with h5dump and type.

* Fix review issues

* refactor function nesting and fix error checks

* format fixes

* Remove untested functions and javadoc quiet comments

* Restore TRY block.

* Change string append errors to memory exception

* revert to H5_JNI_FATAL_ERROR - support functions need work

* Add assertion error for h5util functions

* remove duplicate function

* format fix

* Revert HD function error handling

* Update copyright comments

* GH #386 java folder copyright corrections

* Whitespace

* GH #359 implement and fix tools 1.6 API usage

* remove excessive comments

* Flip inits to correct ifdef section

* rework ifdef to be simpler

* format issue

* Reformat ifdef inits

* remove static attribute

* format compliance

* Update names

* Revert because logic relies on float not being int

* Changes noticed from creating merge of #412

* Double underscore change

* Correct compiler version variable used

* Remove header guard underscores

* Whitespace cleanup

* Split format source and commit changes on repo push

* remove pre-split setting

* Change windows TS to use older VS.

* correct window os name

* HDFFV-11212 JNI export util and Javadoc

* Suggested review changes

* Another change found

* Committing clang-format changes

* HDFFV-11113 long double in tools

* HDFFV-11113 add note

* Disable long double tests for now

* HDFFV-11228 remove arbitrary CMake warning groups.

* Make each flag a string

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-03-22 15:28:06 -05:00
Scot Breitenfeld
98acb0adcf small edits (#481)
* fixed missed closing of a dataset

* fixed missed closing of a dataset

* fixed typo in error return

* Committing clang-format changes

* minor edits

* code format

* Committing clang-format changes

* code format

* minor edit

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-03-22 13:31:42 -05:00
Sean McBride
38b9474af0 Applied clang-tidy readability-delete-null-pointer fixes (#430)
delete nullptr is well-defined, does not need check.

Manually fixed indentation after automatic changes.
2021-03-22 12:51:18 -05:00
Dana Robinson
60e14b826a File locks now work on Windows (#480)
* File locks now work on Windows

Uses LockFileEx() and UnlockFileEx(). Fixes HDFFV-10191 (partial).

* Committing clang-format changes

* Committing clang-format changes

* Fixes commenting in h5repack

* Reworks H5Fis_accessible()

H5Fis_accessible() created a new file handle and attempted to read
through it, which will fail when a file has been opened with an
exclusive lock on operating systems that have mandatory locks.

This change uses the same scheme we use in H5Fopen() to check if
the file is already open and only tries to read the file signature
if the file has not already been opened.

Also adds a test for this behavior.

* Committing clang-format changes

* Trivial change to force github to run actions

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-03-22 11:32:40 -05:00
Dana Robinson
05bc1905cb Adds an implementation for nanosleep on Windows (#483)
* Adds an implementation for nanosleep on Windows

* Committing clang-format changes

* Fix insane formatter issue

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-03-22 05:55:40 -05:00
H. Joe Lee
03864c675c Fix CMake error message location. (#478)
Print error message if Perl is not found.
2021-03-19 21:20:11 -05:00
Yu Feng
1c8b3dbe4d Purge the buffer used in type conversion. (#263)
Some of the uniniitialized bits in the buffer may get carried through
all the way to disk, creating a risk for leaks.

We observed an msan error during the floating point output conversion.
Due to the encoding certain bits could remain untouched during the conversion.

In this draft we zero initialize the dbuf used by every convertor.
2021-03-19 08:32:05 -05:00
bmribler
dafc7285bb Fixed HDFFV-10480 (CVE-2018-11206) and HDFFV-11159 (CVE-2018-14033) (#405)
* Fixed HDFFV-10480 (CVE-2018-11206) and HDFFV-11159 (CVE-2018-14033)
Description
    Checked against buffer size to prevent segfault, in case of data corruption.

    + HDFFV-11159 CVE-2018-14033 Buffer over-read in H5O_layout_decode
    + HDFFV-10480 CVE-2018-11206 Buffer over-read in H5O_fill_new[/old]_decode
Platforms tested:
    Linux/64 (jelly)

* Accidentally left in another occurrence of the previous patch from user
   after a more correct fix was applied, that is the check now accounted
   for the previous advance of the buffer pointer.  Removed it.

* Typo

* Fixed format issues.

* Added test.

* Changed arguments to ADD_H5_TEST

* Fixing arguments to ADD_H5_TEST again.

* Fixing arguments again.

* Took out the CMake changes until Allen can help.

* Added files:

tCVE_2018_11206_fill_old.h5
tCVE_2018_11206_fill_new.h5

* Revert "Took out the CMake changes until Allen can help."

This reverts commit c21324d6e0.

* Revert "Fixing arguments again."

This reverts commit 5832a70674.

* Revert "Fixing arguments to ADD_H5_TEST again."

This reverts commit b45de823c2.

* Revert "Changed arguments to ADD_H5_TEST"

This reverts commit 16719824f5.

* Added first argument to ADD_H5_TEST for HDFFV-10480 fix.

* Changed argument 0 to 1

* Revert "Changed argument 0 to 1"

This reverts commit b343d6613b.

* Revert "Added first argument to ADD_H5_TEST for HDFFV-10480 fix."

This reverts commit b8a0f9a9e8.

* Added first argument and corrected the second.

* Updated fixes for HDFFV-10480 and HDFFV-11159/HDFFV-11049

* Improved error messages.
2021-03-19 08:15:03 -05:00
epourmal
49a14f9e02 Added description of the current HDF5 branches; added a draft of contribution policy. (#445)
* Added description of the current HDF5 branches.

* Removed capitalization in from Develop, Release, Feature to reflect the real naming schema

* Added a draft of contributions guidance document.

* Fixed typos.

* Fixed section title.

* Fixed typo.

* Fixed typos and formatting.

* Fixed many typos and simplified the text (e.g., removed testing instructions and left pointers to where to find them, etc.)

* Fixed a typo.
 Please enter the commit message for your changes. Lines starting

* Added contributing.md file and rearranged doc entries in alphabetical order.

* ddressed Gerd's review comments; found and fixed more typos.

* Addressed comments from Larry and Scot.
2021-03-19 08:13:32 -05:00
Dana Robinson
d0f807527f Suppresses the tcheck_version test's abort dialog on Windows (#477)
* Suppresses the tcheck_version test's abort dialog on Windows

Windows raises a modal abort/retry/ignore dialog box when CRT
calls abort(). This change installs a report hook that suppresses
the dialog so that the CMake tests don't time out waiting for a
nonexistent user to click a dialog box.

* Committing clang-format changes

* Removes __cdecl from callback

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-03-17 14:23:07 -05:00
H. Joe Lee
00a4e41ea4 Fix typos and grammar errors. (#476) 2021-03-17 14:22:17 -05:00
Dana Robinson
35d6091ab7 Cleans up a couple of MSVC warnings in testhdf5 (#475)
* Fixes a few testhdf5 warnings raised in Visual Studio

Visual Studio is grumpier about treating pointers like integers than
gcc.

* Committing clang-format changes

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-03-17 14:22:02 -05:00
Allen Byrne
af54fd532c Fix display of long double in tools (#469)
* 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

* Note LLVM 10 to 11 format default changes

* Update format plugin

* Undo clang-format version 11 changes

* One more correction

* Update supported platforms

* Revert whitespace changes

* Correct whitespace

* Changes from PR#3

* HDFFV-11213 added option to control gcc10 warnings diagnostics

* HDFFV-11212 Use the new references correctly in JNI utility and tests

* format source

* Fix typo

* Add new test file

* HDFFV-11212 - update test and remove unused arg

* Minor non-space formatting changes

* Use H5I_INVALID_ID instead of "-1"

* source formatting

* add missing testfile, update jni function

* Undo commit of debug code

* remove mislocated file

* Fix h5repack test for handling of fapls and id close

* Update h5diff test files usage text

* HDFFV-11212 add new ref tests for JNI export dataset

* src format update

* Remove blank line typo

* src format typo

* long double requires %Lg

* Another long double foramt specifer S.B. %Lg

* issue with t128bit test

* Windows issue with h5dump and type.

* Fix review issues

* refactor function nesting and fix error checks

* format fixes

* Remove untested functions and javadoc quiet comments

* Restore TRY block.

* Change string append errors to memory exception

* revert to H5_JNI_FATAL_ERROR - support functions need work

* Add assertion error for h5util functions

* remove duplicate function

* format fix

* Revert HD function error handling

* Update copyright comments

* GH #386 java folder copyright corrections

* Whitespace

* GH #359 implement and fix tools 1.6 API usage

* remove excessive comments

* Flip inits to correct ifdef section

* rework ifdef to be simpler

* format issue

* Reformat ifdef inits

* remove static attribute

* format compliance

* Update names

* Revert because logic relies on float not being int

* Changes noticed from creating merge of #412

* Double underscore change

* Correct compiler version variable used

* Remove header guard underscores

* Whitespace cleanup

* Split format source and commit changes on repo push

* remove pre-split setting

* Change windows TS to use older VS.

* correct window os name

* HDFFV-11212 JNI export util and Javadoc

* Suggested review changes

* Another change found

* Committing clang-format changes

* HDFFV-11113 long double in tools

* HDFFV-11113 add note

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-03-17 10:27:21 -05:00
H. Joe Lee
d836797626 Correct syntax error. (#474)
a Fortran compile -> a Fortran compiler
2021-03-17 10:26:40 -05:00
Quincey Koziol
c6e4e53546 Update clang config (#473)
* Update clang config to put H5E_BEGIN_TRY / H5E_END_TRY on separate lines, empty C++ methods on separate lines, understand that ALL_MEMBERS / UNIQUE_MEMBERS are foreach macros, and properly skip the 'config' directory in the find command without emiting a warning

* Committing clang-format changes

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-03-17 10:25:39 -05:00
David Young
f6d919a2ab Simplified hl parsing (#399)
* Stop using global variables to share parse context with the lexer.

The lexer uses an unconventional strategy for parsing lexical categories
NUMBER (decimal numbers) and STRING (double-quoted strings) that involves
sharing the parse context with the lexer using global variables. There
are a couple of problems with that. First, the lexer is too complicated
for the simple tokenization it performs—it's hard to tell if it is
correct. Second, as @seanm points out, the shared global variables
spill into the namespace shared by other libraries and application
programs—e.g., VTK.

* Regenerate source files from *.[yl].

* Replace strndup, which isn't available on Windows, with a custom
routine, `trim_quotes`, that produces a copy of its `const char *`
argument with leading and trailing double quotes ('"') removed.

While I am here, remove the unnecessary statement `BEGIN INITIAL;`,
which I should have deleted in a previous commit.

* Regenerate .c from .l.

* You haven't programmed in C until you have programmed in High-Definition
(HD) C.

* \#include "H5private.h" for HD* definitions.

* Regenerate *.[ch] from *.[yl].
2021-03-15 08:16:22 -05:00
Sean McBride
24c83cf73e Removed workarounds for pre-standard inline keyword (#423)
Fixes -Wreserved-identifier warnings due to multiple underscores in H5_HAVE___INLINE.
2021-03-12 08:56:09 -06:00
Allen Byrne
748da20bbc develop JNI export references and java updates (#467)
* 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

* Note LLVM 10 to 11 format default changes

* Update format plugin

* Undo clang-format version 11 changes

* One more correction

* Update supported platforms

* Revert whitespace changes

* Correct whitespace

* Changes from PR#3

* HDFFV-11213 added option to control gcc10 warnings diagnostics

* HDFFV-11212 Use the new references correctly in JNI utility and tests

* format source

* Fix typo

* Add new test file

* HDFFV-11212 - update test and remove unused arg

* Minor non-space formatting changes

* Use H5I_INVALID_ID instead of "-1"

* source formatting

* add missing testfile, update jni function

* Undo commit of debug code

* remove mislocated file

* Fix h5repack test for handling of fapls and id close

* Update h5diff test files usage text

* HDFFV-11212 add new ref tests for JNI export dataset

* src format update

* Remove blank line typo

* src format typo

* long double requires %Lg

* Another long double foramt specifer S.B. %Lg

* issue with t128bit test

* Windows issue with h5dump and type.

* Fix review issues

* refactor function nesting and fix error checks

* format fixes

* Remove untested functions and javadoc quiet comments

* Restore TRY block.

* Change string append errors to memory exception

* revert to H5_JNI_FATAL_ERROR - support functions need work

* Add assertion error for h5util functions

* remove duplicate function

* format fix

* Revert HD function error handling

* Update copyright comments

* GH #386 java folder copyright corrections

* Whitespace

* GH #359 implement and fix tools 1.6 API usage

* remove excessive comments

* Flip inits to correct ifdef section

* rework ifdef to be simpler

* format issue

* Reformat ifdef inits

* remove static attribute

* format compliance

* Update names

* Revert because logic relies on float not being int

* Changes noticed from creating merge of #412

* Double underscore change

* Correct compiler version variable used

* Remove header guard underscores

* Whitespace cleanup

* Split format source and commit changes on repo push

* remove pre-split setting

* Change windows TS to use older VS.

* correct window os name

* HDFFV-11212 JNI export util and Javadoc

* Suggested review changes

* Another change found

* Committing clang-format changes

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-03-12 07:47:47 -06:00
Dana Robinson
6f760f200d Replaces checks for fork, etc. with checks for unistd.h (#457)
* Replaces checks for fork, etc. with H5_HAVE_UNISTD_H

Code previously checked for individual POSIX API calls using
H5_HAVE_FORK, etc. The calls we use have been standardized for
decades and available via unistd.h.

Some test messages that were missing when tests are skipped
due to a lack of unistd.h were also added.

The configure checks for individual POSIX API calls will be
removed in a later commit.

* Stupid formatter
2021-03-11 15:34:55 -06:00
Allen Byrne
a78aae1150 clang format push commit for develop (#453)
* 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

* Note LLVM 10 to 11 format default changes

* Update format plugin

* Undo clang-format version 11 changes

* One more correction

* Update supported platforms

* Revert whitespace changes

* Correct whitespace

* Changes from PR#3

* HDFFV-11213 added option to control gcc10 warnings diagnostics

* HDFFV-11212 Use the new references correctly in JNI utility and tests

* format source

* Fix typo

* Add new test file

* HDFFV-11212 - update test and remove unused arg

* Minor non-space formatting changes

* Use H5I_INVALID_ID instead of "-1"

* source formatting

* add missing testfile, update jni function

* Undo commit of debug code

* remove mislocated file

* Fix h5repack test for handling of fapls and id close

* Update h5diff test files usage text

* HDFFV-11212 add new ref tests for JNI export dataset

* src format update

* Remove blank line typo

* src format typo

* long double requires %Lg

* Another long double foramt specifer S.B. %Lg

* issue with t128bit test

* Windows issue with h5dump and type.

* Fix review issues

* refactor function nesting and fix error checks

* format fixes

* Remove untested functions and javadoc quiet comments

* Restore TRY block.

* Change string append errors to memory exception

* revert to H5_JNI_FATAL_ERROR - support functions need work

* Add assertion error for h5util functions

* remove duplicate function

* format fix

* Revert HD function error handling

* Update copyright comments

* GH #386 java folder copyright corrections

* Whitespace

* GH #359 implement and fix tools 1.6 API usage

* remove excessive comments

* Flip inits to correct ifdef section

* rework ifdef to be simpler

* format issue

* Reformat ifdef inits

* remove static attribute

* format compliance

* Update names

* Revert because logic relies on float not being int

* Changes noticed from creating merge of #412

* Double underscore change

* Correct compiler version variable used

* Remove header guard underscores

* Whitespace cleanup

* Split format source and commit changes on repo push

* remove pre-split setting

* Change windows TS to use older VS.

* correct window os name
2021-03-11 08:28:55 -06:00
Sean McBride
d7b40604ef Fixed all clang-tidy bugprone-suspicious-string-compare warnings (#451)
* Fixed all clang-tidy bugprone-suspicious-string-compare warnings

This change was generated entirely by clang-tidy itself.

* Reformat code with clang v10.0.1.

Co-authored-by: Larry Knox <lrknox@hdfgroup.org>
2021-03-10 12:42:35 -06:00
Sean McBride
a7a013782f Various clang tidy warning fixes (#448)
* Fixed clang-tidy bugprone-reserved-identifier warnings

* Fixed clang-tidy bugprone-assert-side-effect warnings

* Fixed clang-tidy bugprone-copy-constructor-init warning

* Fixed clang-tidy readability-redundant-preprocessor warning

For error_test.c the removed code was already dead, because it was in the else of an `#if H5_USE_16_API` block.

Based on H5Location.h, I think p_get_ref_obj_type was meant to be in `#ifndef DOXYGEN_SHOULD_SKIP_THIS` and an `#endif` was missing.  Similarly, in the header, getObjTypeByIdx is only in H5_NO_DEPRECATED_SYMBOLS, not DOXYGEN_SHOULD_SKIP_THIS.

* Fixed clang-tidy readability-redundant-string-init warnings

* Fixed some clang-tidy performance-type-promotion-in-math-fn warnings

* Fixed clang-tidy performance-unnecessary-value-param warnings

* Reformat source with clang v10.0.1.

Co-authored-by: Larry Knox <lrknox@hdfgroup.org>
2021-03-10 12:41:34 -06:00
Sean McBride
7501f96ab9 Added C++11 override keyword where appropriate (#433)
Added H5_OVERRIDE macro for compatibility with both C++11 and older.
2021-03-10 11:52:48 -06:00
Sean McBride
20c452fe5c Removed checks/workarounds for pre-C++89 compatibility (#449)
After 30+ years, just assume that the following exist:
- extension-less includes
- namespaces
- std::
- static_cast
- bool
2021-03-10 11:51:45 -06:00
Sean McBride
c41a1cb209 Applied clang-tidy readability-non-const-parameter warning fixes auto… (#429)
* Automatically applied clang-tidy readability-avoid-const-params-in-decls fixes

Removes useless const declarations.

* Fixed most readability-non-const-parameter warnings

These changes were made automatically by clang-tidy, but I manually reverted the changes related to the H5Z_func_t signature.

* Reformat source with clang v10.0.1.

Co-authored-by: Larry Knox <lrknox@hdfgroup.org>
2021-03-09 10:59:44 -06:00
Sean McBride
5f376ccb3e Removed bad function pointer casts (#434)
* Removed bad function pointer casts

In one case fixed the actual function signature to be correct.

* Reformat source with clang v10.0.1.

Co-authored-by: Larry Knox <lrknox@hdfgroup.org>
2021-03-08 08:26:58 -06:00
Mike Smith
150fb83345 fix block coordinate printing example (#437) 2021-03-05 20:34:25 -06:00
Sean McBride
6794428d23 Fixed clang-tidy readability-redundant-control-flow warnings (#428)
* Fixed clang-tidy readability-redundant-control-flow warnings

Just removed useless trailing return statements.

* Removed blank lines from h5diffgentest.c with clang-format v10.0.1.

Co-authored-by: Larry Knox <lrknox@hdfgroup.org>
2021-03-05 08:51:01 -06:00
Sean McBride
f4e87791e1 Fixed clang-tidy readability-misleading-indentation warnings (#427)
* Fixed clang-tidy readability-misleading-indentation warnings

* Reformatted src/H5Zscaleoffset.c with clang v10.0.1.

Co-authored-by: Larry Knox <lrknox@hdfgroup.org>
2021-03-05 08:50:42 -06:00
Dana Robinson
e84e5ee467 Fixes various warnings noticed on Windows (#425)
* Fixes various warnings noticed on Windows

- Adds a prototype for our implementation of vasprintf
- Return type of H5_get_utf16_str() is now non-const
- Fixes possible uninitialized return type in Wremove_utf8
- Better isolation of fork() code in accum.c:test_swmr_write_big()
- Better isolation of non-zlib code in dsets.c:test_filter_delete()
- Removed unused variable in trefer.c:test_reference_cmpnd_obj()

* Fixes clang-format issues
2021-03-04 22:30:09 -06:00
Sean McBride
580008d5bb More warning fixes (#400)
* Fixed -Wunused-local-typedef warning

* Fixed -Wformat warnings

In one case also removed a `z` character. There was a `z%d` that I think was supposed to be `%zd`

* Fixed -Wshorten-64-to-32 warnings

* Fixed -Wself-assign warnings

* Fixed -Wreserved-id-macro warnings

* Commit format changes from clang-format, clang version 10.0.1.

* Fixed -Wself-assign warnings

* Fixed -Wunused-local-typedef warning

* Fixed -Wformat warnings

In two cases also removed a `z` character. There was a `z%d` that was supposed to be `%zd`.

* Fixed -Wshorten-64-to-32 warnings

* Fixed -Wreserved-id-macro warnings

* Fixed -Wself-assign warnings

* Format source.

* Remove blank lines to pass format check.

Co-authored-by: Larry Knox <lrknox@hdfgroup.org>
2021-03-04 15:06:30 -06:00
Sean McBride
fb210fc4fd Use do-while trick to force H5Epush_ret() to require trailing semi (#380)
* Use do-while trick to force H5Epush_ret() to require trailing semi

Fixed ensuing compiler errors.

* Commit format changes from running clang-format with clang version 10.0.1.

* Use do-while trick to force H5Epush_ret() to require trailing semi

Fixed ensuing compiler errors. Updated RELEASE.txt.

This change was made to allow clang-format to correctly format the code.

Co-authored-by: Larry Knox <lrknox@hdfgroup.org>
2021-03-04 10:04:41 -06:00
Allen Byrne
fab95ce7b3 Changes found during merge to 1.12 (#414)
* 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

* Note LLVM 10 to 11 format default changes

* Update format plugin

* Undo clang-format version 11 changes

* One more correction

* Update supported platforms

* Revert whitespace changes

* Correct whitespace

* Changes from PR#3

* HDFFV-11213 added option to control gcc10 warnings diagnostics

* HDFFV-11212 Use the new references correctly in JNI utility and tests

* format source

* Fix typo

* Add new test file

* HDFFV-11212 - update test and remove unused arg

* Minor non-space formatting changes

* Use H5I_INVALID_ID instead of "-1"

* source formatting

* add missing testfile, update jni function

* Undo commit of debug code

* remove mislocated file

* Fix h5repack test for handling of fapls and id close

* Update h5diff test files usage text

* HDFFV-11212 add new ref tests for JNI export dataset

* src format update

* Remove blank line typo

* src format typo

* long double requires %Lg

* Another long double foramt specifer S.B. %Lg

* issue with t128bit test

* Windows issue with h5dump and type.

* Fix review issues

* refactor function nesting and fix error checks

* format fixes

* Remove untested functions and javadoc quiet comments

* Restore TRY block.

* Change string append errors to memory exception

* revert to H5_JNI_FATAL_ERROR - support functions need work

* Add assertion error for h5util functions

* remove duplicate function

* format fix

* Revert HD function error handling

* Update copyright comments

* GH #386 java folder copyright corrections

* Whitespace

* GH #359 implement and fix tools 1.6 API usage

* remove excessive comments

* Flip inits to correct ifdef section

* rework ifdef to be simpler

* format issue

* Reformat ifdef inits

* remove static attribute

* format compliance

* Update names

* Revert because logic relies on float not being int

* Changes noticed from creating merge of #412

* Double underscore change

* Correct compiler version variable used

* Remove header guard underscores

* Whitespace cleanup
2021-03-04 06:29:10 -06:00
Allen Byrne
f2a1552822 H5TS_win32_thread_exit (#396)
* 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

* Note LLVM 10 to 11 format default changes

* Update format plugin

* Undo clang-format version 11 changes

* One more correction

* Update supported platforms

* Revert whitespace changes

* Correct whitespace

* Changes from PR#3

* HDFFV-11213 added option to control gcc10 warnings diagnostics

* HDFFV-11212 Use the new references correctly in JNI utility and tests

* format source

* Fix typo

* Add new test file

* HDFFV-11212 - update test and remove unused arg

* Minor non-space formatting changes

* Use H5I_INVALID_ID instead of "-1"

* source formatting

* add missing testfile, update jni function

* Undo commit of debug code

* remove mislocated file

* Fix h5repack test for handling of fapls and id close

* Update h5diff test files usage text

* HDFFV-11212 add new ref tests for JNI export dataset

* src format update

* Remove blank line typo

* src format typo

* long double requires %Lg

* Another long double foramt specifer S.B. %Lg

* issue with t128bit test

* Windows issue with h5dump and type.

* Fix review issues

* refactor function nesting and fix error checks

* format fixes

* Remove untested functions and javadoc quiet comments

* Restore TRY block.

* Change string append errors to memory exception

* revert to H5_JNI_FATAL_ERROR - support functions need work

* Add assertion error for h5util functions

* remove duplicate function

* format fix

* Revert HD function error handling

* Update copyright comments

* GH #386 java folder copyright corrections

* Whitespace

* GH #359 implement and fix tools 1.6 API usage

* remove excessive comments

* Flip inits to correct ifdef section

* rework ifdef to be simpler

* format issue

* Reformat ifdef inits

* remove static attribute

* format compliance

* Update names

* Revert because logic relies on float not being int
2021-03-01 08:24:59 -06:00
Scot Breitenfeld
ae9b4026a9 fixed error message typo (#401)
* fixed missed closing of a dataset

* fixed missed closing of a dataset

* fixed typo in error return
2021-02-26 23:25:35 -06:00
Allen Byrne
216bff5778 #386 copyright corrections for java folder (#389)
* 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

* Note LLVM 10 to 11 format default changes

* Update format plugin

* Undo clang-format version 11 changes

* One more correction

* Update supported platforms

* Revert whitespace changes

* Correct whitespace

* Changes from PR#3

* HDFFV-11213 added option to control gcc10 warnings diagnostics

* HDFFV-11212 Use the new references correctly in JNI utility and tests

* format source

* Fix typo

* Add new test file

* HDFFV-11212 - update test and remove unused arg

* Minor non-space formatting changes

* Use H5I_INVALID_ID instead of "-1"

* source formatting

* add missing testfile, update jni function

* Undo commit of debug code

* remove mislocated file

* Fix h5repack test for handling of fapls and id close

* Update h5diff test files usage text

* HDFFV-11212 add new ref tests for JNI export dataset

* src format update

* Remove blank line typo

* src format typo

* long double requires %Lg

* Another long double foramt specifer S.B. %Lg

* issue with t128bit test

* Windows issue with h5dump and type.

* Fix review issues

* refactor function nesting and fix error checks

* format fixes

* Remove untested functions and javadoc quiet comments

* Restore TRY block.

* Change string append errors to memory exception

* revert to H5_JNI_FATAL_ERROR - support functions need work

* Add assertion error for h5util functions

* remove duplicate function

* format fix

* Revert HD function error handling

* Update copyright comments

* GH #386 java folder copyright corrections

* Whitespace
2021-02-26 09:27:15 -06:00
Allen Byrne
c7ffe683e5 Primary change is HDFFV-11212 - new refs and JNI (#372)
* 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

* Note LLVM 10 to 11 format default changes

* Update format plugin

* Undo clang-format version 11 changes

* One more correction

* Update supported platforms

* Revert whitespace changes

* Correct whitespace

* Changes from PR#3

* HDFFV-11213 added option to control gcc10 warnings diagnostics

* HDFFV-11212 Use the new references correctly in JNI utility and tests

* format source

* Fix typo

* Add new test file

* HDFFV-11212 - update test and remove unused arg

* Minor non-space formatting changes

* Use H5I_INVALID_ID instead of "-1"

* source formatting

* add missing testfile, update jni function

* Undo commit of debug code

* remove mislocated file

* Fix h5repack test for handling of fapls and id close

* Update h5diff test files usage text

* HDFFV-11212 add new ref tests for JNI export dataset

* src format update

* Remove blank line typo

* src format typo

* long double requires %Lg

* Another long double foramt specifer S.B. %Lg

* issue with t128bit test

* Windows issue with h5dump and type.

* Fix review issues

* refactor function nesting and fix error checks

* format fixes

* Remove untested functions and javadoc quiet comments

* Restore TRY block.

* Change string append errors to memory exception

* revert to H5_JNI_FATAL_ERROR - support functions need work

* Add assertion error for h5util functions

* remove duplicate function

* format fix

* Revert HD function error handling

* Update copyright comments
2021-02-25 15:12:57 -06:00
Sean McBride
c29e1b9fdf Patches from vtk (#358)
* Drop the export attribute on forward declaration

They don't mean anything on forward declarations anyways.

* Fixed -Wunused-parameter warnings in some C++ files

Allowed all the attribute #defines to work in C++ also.

* Fixed -Wunused-variable warnings by removing dead code

* Fixed all -Wshorten-64-to-32 warnings by adjusting casts

There was no truncation in fact, since the unsigned result was upcast to size_t then implicitly downcast to uint32_t.

* Fixed all -Wcomma warnings by spliting statements onto own lines

* Fixed all -Wself-assign warnings with different unused param suppression

* Fixed all -Wextra-semi warnings

* Fixed all -Wswitch-enum warnings

Just added new explicit cases with the existing default case.

* Fixed all -Wmissing-prototypes warnings

Just made functions static. Moved them into an extern "C" block.

* Reformatted source with bin/format_source using clang version 10.0.1

Co-authored-by: Larry Knox <lrknox@hdfgroup.org>
2021-02-25 12:15:02 -06:00
Sean McBride
c17b4b93d6 Fixed many -Wreserved-id-macro warnings by fixing header guard spelling (#361)
* Fixed many -Wreserved-id-macro warnings by fixing header guard spelling

Removed leading underscore(s) from header guard spelling.  Used 2 regexes:

` _H5(.*)_H`
` __H5(.*)_H`

Applied case-insensitively to only .h files.

* Modified scripts that generate header files to not use underscore prefix

Interestingly, there was already no leading underscore in the trailing comment at the end of the file

* Fixed remaining -Wreserved-id-macro warning not caught by regex
2021-02-22 22:29:56 -06:00
Sean McBride
5ed255a607 Fixed all -Wincompatible-pointer-types-discards-qualifiers warnings (#341)
* Fixed various -Wincompatible-pointer-types-discards-qualifiers warnings by adding const

* Fixed various -Wincompatible-pointer-types-discards-qualifiers warning by removing extraneous consts

There were casts with const, but the function parameter doesn't actaully take const, so just modified the casts.

In the other case, a local variable was const that should not have been, becuase its source wasn't const either.

* Fixed a -Wincompatible-pointer-types-discards-qualifiers warning by strdup-ing a string

Create a duplicate string instead of mutating a supposedly const one.
2021-02-22 11:37:12 -06:00
bmribler
99669024ff Fixed HDFFV-11150 (#356)
Description
    Replaced an HDassert with a check for null pointer in H5O_dec_rc() to
    catch null pointer in corrupted data situation.
    As a result, removed the null check prior to H5O_dec_rc() calls.
Platforms tested:
    Linux/64 (jelly)
2021-02-19 13:01:44 -06:00
Sean McBride
5f015f4742 Fix undefined left shifting of negative numbers (#338)
Undefined Bahavior Sanitizer errored here about left shifting negative numbers.
2021-02-19 12:48:04 -06:00
Sean McBride
0a2a385acc Fixed uninitialized warnings (#360)
* Fixed all -Wsometimes-uninitialized warnings by initializing variables

* Fixed all -Wconditional-uninitialized warnings by initializing variables

* Commit alignment changes from running bin/format_source with clang
version 10.0.1.

Co-authored-by: Larry Knox <lrknox@hdfgroup.org>
2021-02-19 11:25:44 -06:00
Sean McBride
a6f1b6ce53 Fixed various clang -Wformat-security warnings (#340) 2021-02-19 09:18:30 -06:00
Larry Knox
2ea165efd0 Update license url part2 (#333)
* Modify temporary rpath for testing in java example scripts.

* Update URL in source file Copyright headers for web copy of COPYING
    file - files not in src or test.
2021-02-17 08:52:36 -06:00
Larry Knox
4819f89d3f Update license url (#332)
* Modify temporary rpath for testing in java example scripts.

* Update URL in source file Copyright headers for web copy of COPYING
file - src and test directories.
2021-02-17 08:52:04 -06:00
jhendersonHDF
afdb7903c6 Fix for HDFFV-11109 - Copy MPI comm and info object into output FAPL from H5F_get_access_plist (#342)
* Avoid freeing MPI_COMM_WORLD in H5_mpi_comm_free

* Copy MPI Comm and Info to new FAPL in H5F_get_access_plist
2021-02-17 06:37:23 -06:00
Sean
2359a9b020 Fix clang unknown pragma warnings (#337)
Although clang defines __GNUC__ and supports most gcc warnings, it doesn't support all, and will in fact even warn about an unknown pragma.

Guard appropriately.
2021-02-15 15:32:08 -06:00
Sean
5c1ddd2d49 Fix cmake syntax error with regex escaping (#336)
Fixes:

   Syntax error in cmake code at

     /some/path/hdf5/CMakeLists.txt:240

   when parsing string

     .*#define[ \t]+H5_VERS_SUBRELEASE[ \t]+\"([0-9A-Za-z._\-]*)\".*$

   Invalid escape sequence \-
2021-02-15 15:26:48 -06:00
Sean
ca6a26225d Detect correct long double size with universal binaires (#335)
On macOS on x86_64, long double is 16 bytes; on macOS on arm64, it's 8 bytes.

Use the same existing technique used to properly detect other sizes to now also properly detect the size of long double.

For bug #311.
2021-02-15 15:23:43 -06:00
jhendersonHDF
52ac74689a Check for wrap context before unwrapping file VOL object in H5F__dest (#325) 2021-02-09 18:41:49 -06:00
Allen Byrne
bccf5b5c08 Add option to control gcc 10 warnings diagnostics (#321)
* 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

* Note LLVM 10 to 11 format default changes

* Update format plugin

* Undo clang-format version 11 changes

* One more correction

* Update supported platforms

* Revert whitespace changes

* Correct whitespace

* Changes from PR#3

* HDFFV-11213 added option to control gcc10 warnings diagnostics
2021-02-08 17:23:09 -06:00
Sean
aa95b70f6d Remove prohibition against building Universal Binaries on macOS (#318)
Fixes github issue #311.
2021-02-08 14:16:41 -06:00
jhendersonHDF
2b4b8e8423 Unwrap file VOL object when destroying file (#308) 2021-02-06 08:20:49 -06:00
Allen Byrne
b3934e99eb Changes for sanitize=address (#312)
* 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

* Note LLVM 10 to 11 format default changes

* Update format plugin

* Undo clang-format version 11 changes

* One more correction

* Update supported platforms

* Revert whitespace changes

* Correct whitespace

* Changes from PR#3
2021-02-05 10:35:05 -06:00
Scot Breitenfeld
a06693be21 Fix DS examples (#307)
* fixed missed closing of a dataset

* fixed missed closing of a dataset
2021-02-04 07:17:49 -06:00
jhendersonHDF
c55ac8ab71 Ensure processes always synchronize in t_shapesame test setup (#306) 2021-02-03 11:08:19 -06:00
Dana Robinson
eac05994c7 Fixes bin/trace so it doesn't dirty the repo when autogen runs (#295)
* Fixes bin/trace so it doesn't dirty the repo when autogen runs

* Put the trace max back to 110 and comment off H5O.c line
2021-02-03 08:19:58 -06:00
Allen Byrne
ab2c31bc87 Update supported platforms (#303)
* 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

* Note LLVM 10 to 11 format default changes

* Update format plugin

* Undo clang-format version 11 changes

* One more correction

* Update supported platforms

* Revert whitespace changes

* Correct whitespace
2021-02-03 07:57:04 -06:00
Neil Fortner
ddd799282f Modify VDS code to always open source files with H5F_CLOSE_WEAK close (#291)
degree.  Add test cases to VDS test for this, and reduce the amount of
output from that test.
2021-01-30 16:47:23 -06:00
Dana Robinson
4869307bd6 Remove unused AC_REVISION macro from configure.ac (#292)
* Fixes a wayward parenthesis in H5TS.c

* Removes unmaintained AC_REVISION macro from configure.ac
2021-01-29 22:40:43 -06:00
Allen Byrne
6db183590f develop revert source to clang-format version 11 (#293)
* 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

* Note LLVM 10 to 11 format default changes

* Update format plugin

* Undo clang-format version 11 changes

* One more correction
2021-01-29 06:55:18 -06:00
Allen Byrne
5a812bf519 develop clang-format comments (#286)
* 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

* Note LLVM 10 to 11 format default changes
2021-01-27 17:51:59 -06:00
Allen Byrne
9524dc494f Jan ws changes (#282)
* 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

* Whitespace fixes except for H5Tprivate.h typo fix
2021-01-27 08:15:34 -06:00
Allen Byrne
799ec0fde4 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
2021-01-27 07:56:28 -06:00
Allen Byrne
d7bce33123 Java replace switch on string (#273)
* 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
2021-01-26 22:27:10 -06:00
Quincey Koziol
b516921b7d Add H5ESpublic.h to main hdf5.h header (#278) 2021-01-22 20:40:40 -06:00
Neil Fortner
a8ee85971b Fix problems with vlens and refs inside compound using H5VLget_file_type() (#274)
* Fixed problems with vlens and refs inside compound using H5VLget_file_type()

* Fix date in RELEASE.txt

* Add assertions

* Move some manipulation of H5VL_object_t struct fields into the H5VL
package.
2021-01-22 15:05:39 -06:00
Dana Robinson
672892cc0e Fixes a wayward parenthesis in H5TS.c (#262) 2021-01-19 18:42:38 -06:00
Neil Fortner
a5ffedb8c6 Improve performance of multiple calls to H5Sget_select_elem_pointlist (#270)
* Cache the pointer to the next point to process after the last call to
H5S__get_select_elem_pointlist.  This allows the normal process of
iterating over the points in batches to be much more efficient, as the
library does not need to traverse the entirety of the preceding points
every time the funciton is re-entered.

* Update RELEASE.txt for point selection iteration performance fix.
2021-01-19 18:42:14 -06:00
Allen Byrne
9578160cef 11099 Add help text line (#259)
* 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
2021-01-15 17:38:03 -06:00
Dana Robinson
a1091585ad Fixes naked pthread usage in H5TS code added for async (#260) 2021-01-14 13:44:28 -06:00
Dana Robinson
0d8529055d Removes lock/unlock callbacks from ros3 and hdfs VFDs (#258)
* Removes no-op callback stubs from read-only VFDs

Also changes VFD registration to allow read-only VFDs with no
write callback to be registered.

* Adds a RELEASE.txt note for HDFFV-11205

For the read-only VFD registration change

* Revert "Removes no-op callback stubs from read-only VFDs"

This reverts commit a7a9549730.

* Removes lock callbacks from ros3 and hdfs VFDs
2021-01-14 08:19:48 -06:00
Allen Byrne
b1eb47ac4d Reclassify CMake messages - HDFFV-11144 (#253)
* 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
2021-01-13 08:29:15 -06:00
Dana Robinson
b84f48f929 Allow read-only VFD registration (#257)
* Removes no-op callback stubs from read-only VFDs

Also changes VFD registration to allow read-only VFDs with no
write callback to be registered.

* Adds a RELEASE.txt note for HDFFV-11205

For the read-only VFD registration change
2021-01-12 22:12:51 -06:00
Allen Byrne
0e09b0b636 Keep doxygen comment length under 100 char line length (#247)
* 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
2021-01-08 12:02:44 -06:00
Dana Robinson
9e1739f76f Fixes Autotools detection of the st_blocks field in stat (#246)
* Fixes Autotools detection of the st_blocks field in stat

The Autotools and CMake will now both correctly determine if the
stat struct has the st_blocks field and set H5_HAVE_STAT_ST_BLOCKS
appropriately.

* Fixes a typo in configure.ac
2021-01-08 06:52:08 -06:00
Quincey Koziol
e3b7d68826 Reformat source (#244) 2021-01-07 16:16:00 -06:00
Neil Fortner
3ae45182b5 Fix error is H5Mclose_async. (#240) 2021-01-05 10:02:03 -06:00
Allen Byrne
4b733b2926 Remove duplicate setting (#236)
* OESS-98 convert plugin option to FetchContent, add tests

* Fixes for pkcfg files because of plugin option

* OESS-98 fix tools test for plugins

* Remove duplicate setting
2021-01-05 08:08:54 -06:00
Larry Knox
f50fd0cc07 Modify temporary rpath for testing in java example scripts. (#230) 2020-12-29 15:43:49 -06:00
Dana Robinson
a6386824c7 Switch bool/true/false to hbool_t/TRUE/FALSE in a few places (#229) 2020-12-24 09:12:01 -06:00
bljhdf
5c9d08a964 Doxygen: Added more H5P RM entries (#226)
* Doxygen - RM entries for H5A, H5S, and H5P APIs

* fix issues on ubuntu

* added missing H5F_fspace_strategy_t_snip

* Doxygen: Add more H5P functions

Co-authored-by: hdfhelp <hdfhelp@jelly.ad.hdfgroup.org>
2020-12-23 22:13:14 -06:00
bmribler
5af00191b5 RM blocks for H5R (#219)
* Transferred RM blocks in H5D and H5G to develop

* Added RM blocks to H5R and added new aliases.

Co-authored-by: Larry Knox <lrknox@hdfgroup.org>
2020-12-23 00:01:46 -06:00
Allen Byrne
8183284f09 dev -Update pkgconfig settings with version - #218 (#220)
* OESS-98 convert plugin option to FetchContent, add tests

* Fixes for pkcfg files because of plugin option

* OESS-98 fix tools test for plugins

* Pkgconfig fix - #218

* Update all pkgconfig settings with version
2020-12-22 14:43:58 -06:00
Quincey Koziol
71440cef1c Add compiler flags for GCC 10, along with updating warnhist script to accommodate them. (#217) 2020-12-21 12:57:18 -06:00
bmribler
0483817a92 Transferred RM blocks in H5D and H5G to develop (#213) 2020-12-21 09:54:47 -06:00
Dana Robinson
f3b8fb38de Fixes a small memory leak in the chunk_cache test (#208) 2020-12-19 22:31:19 -06:00
Dana Robinson
5025d8160f Fixes a small memory leak in the h5jam test (#207) 2020-12-19 22:30:50 -06:00
Dana Robinson
5e1ae415b8 Fixes a minor memory leak in hl/test/test_file_image.c (#209) 2020-12-19 22:30:05 -06:00
Quincey Koziol
3c7b2ab5db Update jni.h detection for OS version changes in Macos 11.x (#211) 2020-12-19 22:15:04 -06:00
Quincey Koziol
05f6f2becd Avoid aligned access for references by decoding into temporary buffer and then copying the result into the actual buffer. Update test to be more thorough with using compound datatype fields everywhere. (#206) 2020-12-19 12:37:45 -06:00
Evan Ramos
996d07102d H5FD__mpio_read: Fix MPI_Bcast datatype (#205)
Signed-off-by: Evan Ramos <evan@hpccharm.com>
2020-12-18 14:30:31 -06:00
Dana Robinson
adfac394c2 Restores maintainer mode in the autotools (#200)
Maintainer mode should be enabled in development branches.

Also adds helpful commenting.
2020-12-17 20:38:57 -06:00
H. Joe Lee
c69a3b5e93 close #195. (#196)
* Update HDF5PluginMacros.cmake

* Update HDF5PluginMacros.cmake
2020-12-17 15:22:44 -06:00
Quincey Koziol
3f37f6648d Fix datatype lookup in named datatype flush/refresh code and detect more core dumps in test scripts (#193)
* Detect coredumps, and avoid printing a warning when creating a directory that already exists

* Retrieve the actual datatype object correctly, in the face of possible pass-through VOL connectors

* Detect more core dumps, and tiny formatting cleanup

* Revert error status checks for mirror VFD test script
2020-12-16 21:36:13 -06:00
Allen Byrne
068136351c OESS-98 fix hdf5 link target (#188)
* OESS-98 convert plugin option to FetchContent, add tests

* Fixes for pkcfg files because of plugin option

* OESS-98 fix tools test for plugins

* OESS-98 fix hdf5 link target
2020-12-16 15:47:40 -06:00
Dana Robinson
a6b76a45b2 Adds h5delete tool (#187)
* Adds h5delete tool

* Fixed MANIFEST

* Added RELEASE.txt note

* Fix typo in RELEASE.txt
2020-12-16 13:50:30 -06:00
Dana Robinson
e4865ce716 Turns off clang formatter for H5ARGS_TRACE (#184)
The H5ARGS_TRACE macro was added during the async merge. These macros
are updated by the bin/trace script, but conflict with the formatter
so formatted code gets dirtied when autogen.sh is run.

This change enshrines the bin/trace output as canonical and adds
comments to turn clang formatting off for those lines containing
H5ARGS_TRACE.
2020-12-16 12:15:06 -06:00
Allen Byrne
faf3a2fae0 OESS-98 convert plugin option to FetchContent, add tests (#155)
* OESS-98 convert plugin option to FetchContent, add tests

* Fixes for pkcfg files because of plugin option

* Update other test machines

* OESS-98 fix tools test for plugins

* HDFFV-10865 performance improvement for java array
2020-12-16 11:59:51 -06:00
jhendersonHDF
affbead81a Enable H5Fopen to probe list of available VOL connectors when opening a (#182)
file
2020-12-15 23:39:19 -06:00
vchoi-hdfgroup
865b10b7a7 Transfer doxygen H5O RM blocks from doxygen branch to develop. (#174)
Co-authored-by: vchoi <vchoi@jelly.ad.hdfgroup.org>
2020-12-15 21:18:54 -06:00
bljhdf
f09ec2657c Doxygen - RM entries for H5A, H5S, and H5P APIs (#181)
* Doxygen - RM entries for H5A, H5S, and H5P APIs

* fix issues on ubuntu

* added missing H5F_fspace_strategy_t_snip
2020-12-15 21:17:41 -06:00
Dana Robinson
f3629d6148 Removes debug statement from H5R__open_attr_api_common() (#183) 2020-12-15 20:58:21 -06:00
Quincey Koziol
d85f6e2d6a Revise async hard link creation to have a real H5VL_object_t (#175) 2020-12-14 22:49:24 -06:00
jhendersonHDF
56b1b3a2b2 Pass LAPL correctly through VOL in H5Lcreate_soft (#170) 2020-12-14 14:15:02 -06:00
Hans Johnson
0f12cd9212 BUG: Missing output dependency shared/H5init.c (#165)
All outputs depenancies need to be listed for
the custom command.

ninja: error: 'cmake_object_order_depends_target_hdf5-shared_DEBUG', needed by 'Modules/ThirdParty/HDF5/src/itkhdf5/shared/H5Tinit.c', missing and no known rule to make it
2020-12-13 23:06:21 -06:00
Quincey Koziol
a2524671ca Bring async branch to develop (#166)
* Add H5Fwait, H5Dwait, and other changes for async vol connector

* Revert temporary testing changes

* Add H5Fwait to header file

* Add H5VLreset_lib_state() routine.

* Correct VOL wrap context when retrieving library state for file open & create.

* Manage the API context's VOL connector state as part of the library state.

* Set the 'VOL connector property valid' flag when restoring the library state.

* Don't push new API context on stack when retrieving "current" one.

* Check for NULL VOL wrap context before decrementing refcount on it, when
freeing the API context state.

* Manage recount of underlying connector for VOL wrap context.

* Add H5TSmutex_acquire() and H5TSmutex_release() routines to acquire and
release the global lock on the HDF5 library.

* Update library with new functions related to library global lock

* Add asynchronous token API

* Add new lightweight FUNC_ENTER / LEAVE macros for helping to structure the
threadsafety (H5TS*) routines.

* Sync w/develop

* Initial event set code framework.

* Elaborate on the H5ES routines, starting to add API routines.

Update the "close ID" callbacks to allow asynchronous request tokens to be
passed in from an asynchronous close API call.

Refactor current asynchronous API routines (H5Fopen/H5Fclose and
H5Dread/H5Dread) to use event sets instead of directly working with request
tokens from the application.

Clean up a few other minor warnings & code style issues.

* Implement H5EScreate, H5ESget_count, and H5ESclose.

It should be possible to write a simple application that creates an event
set and uses it with H5Fopen_async, H5Dread_async, H5Dwrite_async, and
H5Fclose_async, then calls H5ESclose (which waits for all async events to
complete).

* Add source file for event set test.

* Refactor sync & async API routines to call common routine.

Move dataset API read / write routines to src/H5D.c, along with all the other
API routines.

Progress on "fake" async VOL connector, for testing.

* Modify async implementation to wrap async requests in a H5VL_object_t
struct so the VOL layer can find the connector when accessing the
request at a later point.

* Free the requests is H5ESclose.  Remove comments implying that request
wait, notify, and cancel callbacks should free the request.

* Fix bug in error handling in H5Fclose.

* Fix bugs in async file routines.  Rename H5VL_create_object_generic to
H5VL_create_object.

* Add explicit async version of H5Fcreate.

* Add more _async routines

* Correct typo for return value from H5Awrite changes

* Add H5EStest and H5ESwait routines

* Updated with API tracing info

* Fix NULL pointer dereference in H5ES__wait

* Add H5is_library_terminating() routine, so that VOL connectors can detect
when the library is shutting down.

* Fix typo

* Remove event from event set's linked list

* Move block of code so that vol_obj is valid

* Avoid setting properties in the DXPL when reseting the library state (and in
the test code).

* Refactor argument tracing to implement new capability for tracing arguments
of non-API routines, with the H5ARG_TRACE macro.   This macro is updated
automatically with the bin/trace script that runs as part of the autogen.sh
process.   Major changes were in src/H5trace.c and bin/trace, with the other
changes being cleanups to the argument lists, to improve their presentation
in the tracing output.

Also - added the "managed string" routines, which can dynamically allocate
strings, appending printf-formatted output to the string efficiently.

* Release memory for managed strings

* Fix printf() formats.

* More printf() format fixes.

* Add H5Eappend_stack routine and regression tests

* Clean up a few missed merge conflicts and update the error stacks.

* Remove unnecessary fork() operations and ten second sleep().

* Restore commented out attribute out, to better enable tracking down the previous failure

* Allow multiple H5ARG_TRACE macros within a routine to be updated

* Switch to using "new" H5ES_insert (which takes the arguments for the caller routine) for all event set operations.  Renames H5ES_insert_new to H5ES_insert and removes the previous H5ES_insert.

* Merge "managed" string routines into "ref-counted" strings, and refactor code to use them.

* Add missing file.

* Add caller's name and arguments to event, for error reporting

* Refactor event set setup for "API common" internal routines

* Checkin async API routines for H5A* and H5G* modules as listed in ID-283.
Fix couple h5dump expected output files due to the changes.

* Add some of the error query routines needed for event sets.

* Refactor to make async setup / teardown and "common" routines cleaner

* (1) Add async APIs to H5L, H5F, and H5D modules
(2) Fix errors in previous checkins of async APIs in H5A and H5G modules
(3) h5dump expected output changes

* Enhance event info, for better error handling

* Change name of temporary vol_obj variable, to help reduce coding errors

* Fix oversight with vol_obj pointer

* Minor code cleanup

* Add missing \'valid\' flag for VOL wrapper context, when restoring the library\'s state

* Run source formatter

* Change H5TSmutex lock and release to include a lock count

* Update error reporting ideas

* Minor updates to improve sanity checking for retrieving / restoring library state

* Updated with feedback from h5py team members

* Refactor internal event set list and event handling, add implementation for H5ESget_err_info

* Change the VOL request subclass callbacks that switch from using "H5ES_status_t" to "H5VL_request_status_t", and also add a H5VL_request_status_t* parameter to the 'cancel' callback in the request subclass.  Also more code quality cleanups to add iterator callbacks to internal event set routines.

* Update API tracing for new H5VL_request_status_t typedef

* Finish converting internal event set operations to use list iterator callbacks, instead of directly accessing the list structure

* Add H5VL_REQUEST_GET_ERR_STACK operation to request subclass, for retrieving a copy of the error stack for a failed asynchronous operation

* Remove 'canceled' event status from Java constants

* Be safer about releasing resources when inserting a newly opened/created object or file into an event set

* Remove H5EStest, add H5ES_WAIT_NONE for 0 timeout, and revise parameters to H5ESwait, to make it more "aggregate".

* Remove H5ES_STATUS_CANCELED from Java wrappers also

* (a) Add async APIs for H5O module as listed in jira issue ID-283.
(b) Remove verification of name parameter in async related routines for H55A and H5L modules
    because it is checked in H5VL_setup* routine.
(c) Modify h5dump expected output due to the async changes.

* Corrections based on PR feedback.

* Further changes to make based on PR feedback.

* Fix missed merge marker, and reformatted line

* Clean up some warnings

* Correct level of indirection

* Relocate prototype (and doxygen info) for H5Aclose

* Change non-static function declarations to be static

* Ensure that H5TSpublic.h header gets installed (#129)

* Add 'wrapper' versions of async calls, to allow language wrappers and layers on top of HDF5 to pass in their application information.

* Switch H5Aexists\*_async and H5Lexists\*_async to use flag to return status, instead of return value.  Make the corresponding changes through most of the v1 and v2 B-tree code.  Clean up warnings in H5public.h and cmpd_dtransform.c.

* Add H5Iregister_future routine and tests.

* Correct return value for H5Lexists_async

* Add H5_DLL macro to public H5ES API routines

* Update supported -> flags parameter for introspect_query callback

* Remove my email address.  Update passthrough VOL connector ID.

* Fix comment for post_open_api_common

* Remove unused non-blocking VOL connector

* Minor cleanup in async branch in preparation for merge to develop

* Update CMake and the Autotools to use the new pass-through VOL ID

* Fix for SWMR daily test failures (#160)

The H5I_register_using_existing_id() call did not initialize the future
ID callbacks, causing the library to segfault when it tried to
resolve those function pointers.

* Added selective async APIs (#150)

* Added selective async APIs

Description:
    Added the following APIs:
        H5Ropen_attr_async
        H5Ropen_object_async
        H5Ropen_region_async

        H5Mcreate_async
        H5Mopen_async
        H5Mput_async
        H5Mget_async
        H5Mclose_async

        H5Tcommit_async
        H5Topen_async
        H5Tcopy_async
        H5Tclose_async
    - Updated an expected output file to include a new internal function
      in the error stack for the failure case.

* Updated async APIs per reviews, including removing async version of
H5Tcopy.

* Removed statements that were added by mistake in the previous commit.

* Fix compile issues in H5M and warnings elsewhere

* Reformat code

* Brings VOL_LIST changes from develop. (#163)

Co-authored-by: Houjun Tang <htang4@lbl.gov>
Co-authored-by: Neil Fortner <nfortne2@hdfgroup.org>
Co-authored-by: vchoi <vchoi@jelly.ad.hdfgroup.org>
Co-authored-by: vchoi-hdfgroup <55293060+vchoi-hdfgroup@users.noreply.github.com>
Co-authored-by: jhendersonHDF <jhenderson@hdfgroup.org>
Co-authored-by: Dana Robinson <derobins@hdfgroup.org>
Co-authored-by: Dana Robinson <43805+derobins@users.noreply.github.com>
Co-authored-by: bmribler <39579120+bmribler@users.noreply.github.com>
2020-12-13 18:02:17 -06:00
Dana Robinson
f6dce729e8 Moves the lists of VOL connectors and VFDs in Autotools builds (#162)
The VOL_LIST variable used in the Autotools was duplicated in many
subdirectories. It's been moved to config/conclude.am to avoid
duplication. VFD_LIST was also moved to conclude.am.
2020-12-12 09:25:54 -06:00
Dana Robinson
9e72b7f834 Minor normalization with the async branch (#159)
* Minor normalization with the async branch

* Update CMake and the Autotools to use the new pass-through VOL ID
2020-12-11 21:25:24 -06:00
Larry Knox
71a7ad0e07 Add Makefile.ins in utils directory to MANIFEST. (#152) 2020-12-10 15:19:19 -06:00
Quincey Koziol
17a2e88769 Enforce VOL framework version compatibility when registering connectors. Also add a version for the connector itself, some refactoring on the register calls, and move the logic for matching / rejecting a VOL connector class from the plugin module to the VOL module. (#151) 2020-12-10 11:01:04 -06:00
Dana Robinson
4713a6d238 Fixes a minor memory leak in the SWMR use cases tests (#147)
* Due to a missing free(3) call
2020-12-03 11:16:30 -06:00
Jan-Willem Blokland
bf0cbcbea5 (fix) Segmentation fault when using a compound type. (#143)
* (fix) Segmentation fault when using a compound type.

In the case when a compounded attribute is written to dataset
followed by writing the data with a data transform function
to the dataset will result in a segmentation fault. It turns out
the data is classified as compounded while it is not. Now, the
state is always reset first to not compounded followed by the
existing check if the variable is compounded.

* (fix) Removed undesired comment lines.

* (fix) Segmentation fault when using a compound type: added test.

* (fix) Added the missing cmpd_transform.c file to MANIFEST.

* (fix) cmpd_dtransform test: autotools and source header.

Added the cmp_dtransform test to the autotools configuration and
updated the HDF Group copyright header.

Co-authored-by: Jan-Willem Blokland <Jan-Willem.Blokland@Shell.com>
2020-12-02 11:52:09 -06:00
Dana Robinson
c7c1046d49 Fix autotools clang debug optimization level w/ older clang and Xcode versions (#146)
* Fixes clang debug optimization level w/ Autotools

NOTE: This was only released in HDF5 1.10.7, so only the 1.10
      branch needs a note in RELEASE.txt.

* Updates the clang -Og setting with a version check w/ autotools

* Sets -Og when clang >= 4.0 or Xcode >= 9.0
* Older versions get -O1
* Autotools only
2020-12-02 07:32:22 -06:00
jwsblokland
82c0cb122f (fix) H5Z_xform_create function and scientific notation (#144)
* (fix) H5Z_xform_create function and scientific notation

Implemented a more sophisticated check to support scientific notation
in the expression of the H5Zset_data_transform function.

* (fix) H5Z_xform_create and scientific notation: Added test.

Added a test to demonstrate that the parsing of expression
which includes scientific notation works correctly. Improved
inline comment.

Co-authored-by: Jan-Willem Blokland <Jan-Willem.Blokland@Shell.com>
2020-12-01 22:27:24 -06:00
Quincey Koziol
7950dca75c Add H5atclose and H5is_library_terminating routines. (#139)
* Add H5atclose and H5is_library_terminating routines.

* Add brief Doxygen comment for H5_atclose_func_t typedef.

* Added /*out*/ flag to parameter list, for the tracing script.

* Update doxygen comment for H5atclose with additional detail.

* Return FAIL for H5is_library_threadsafe and H5is_library_terminating when their parameters are NULL.
2020-12-01 14:24:32 -06:00
Quincey Koziol
436221cc18 Break single loop with interleaved sends and receives into two separate loops, to avoid deadlocks. Also avoid copying chunk entries when determining ownership. (#138) 2020-12-01 13:20:58 -06:00
Quincey Koziol
3e61010340 Expand ID dec_ref and close callbacks to allow for asynchronous close operations (#135)
* Expand ID dec_ref and close callbacks to allow for asynchronous close operations.

* Fix typo

* Rename token -> request, remove programmer name

* H5E_ATOM to H5E_ID
2020-12-01 13:20:05 -06:00
Quincey Koziol
adf7b1d4cf Add flag to H5CX_pop that allow setting the properties to return to application to be skipped. (#134) 2020-12-01 10:15:34 -06:00
Quincey Koziol
123c5a653d Expand 'opt_query' VOL callback to return a bitfield instead of a flag (#136)
* Expand 'opt_query' VOL callback to return a bitfield instead of a flag

* Correct pastos
2020-11-30 15:59:22 -06:00
Quincey Koziol
cadd6db431 Move API routines for VOL objects to main source file. (#133) 2020-11-30 13:54:44 -06:00
Dana Robinson
c256612e09 Replace H5E_ATOM major error category with H5E_ID (#121)
* Renames H5I_ATOM to H5I_ID, among other related changes

* Java has been updated.
* Fortran is failing on my VM, even though I don't touch that.

* Adds a RELEASE.txt note for H5E_ATOM to H5E_ID changes

* Fixes typos in comments
2020-11-30 06:50:39 -06:00
Dana Robinson
a6e3d22604 FreeBSD autotools changes (#142)
* Updates to allow autotools builds on recent FreeBSD

* Switches the default C compiler to cc from gcc
  (this may need a version string check if we want to support
  FreeBSD 9 and earlier. FreeBSD 10 was released in 2014)
* Makes the default C++ compiler c++ (no previous setting)
* Both of these resolve to Clang on FreeBSD 10+
* Added a note about flang being unsuitable on FreeBSD
  (the port uses an ancient build of flang that lacks Fortran
  2003 support)
* Autotools only - CMake appears to use different CPP flags
  which cause compilation errors

* Adds a RELEASE.txt note for new FreeBSD autotools changes
2020-11-29 22:44:47 -06:00
Dana Robinson
3446fa6993 Fixes clang debug optimization level w/ Autotools (#141)
NOTE: This was only released in HDF5 1.10.7, so only the 1.10
      branch needs a note in RELEASE.txt.
2020-11-29 22:42:38 -06:00
Dana Robinson
4d71d234dd Removed H5_ECXXFLAGS from libhdf5.settings (#140)
This variable is unused and was missed in the -Werror changes.
2020-11-29 22:20:06 -06:00
Quincey Koziol
4fea1bcccd Minor cleanups (#132) 2020-11-26 11:11:35 -06:00
Dana Robinson
2e2ded6181 Minor refactoring in tid.c (#127) 2020-11-25 21:53:48 -06:00
Quincey Koziol
1bb2bdbcf8 Enhance API tracing (#120)
Enhance API tracing to handle more types, and to put tracing info in a string, allowing it to be used when reporting errors.  Also refactor ref-counted strings (H5RS) module to add capabilities needed for the tracing.  Refactored H5Gname.c routines to use new H5RS routines also.  Added /*out*/ tags to API routines that are returning information to the application.  Updated H5TRACE macros from running updated trace script over library code.  Added tests for new H5RS routines.
2020-11-25 20:44:34 -06:00
Quincey Koziol
3ebcfb8bf3 Refactor to avoid using fork to create initial file (#122)
* Refactor to avoid using fork to create initial file

* Use correct exit value on failure
2020-11-25 15:42:53 -06:00
Quincey Koziol
4e23defcdc Update H5TS code to reflect library's coding style (#123) 2020-11-25 15:16:00 -06:00
Quincey Koziol
f095373635 Move package initialization code for H5A and H5G to internal source file. (#125) 2020-11-25 12:04:16 -06:00
Allen Byrne
0b54c556a0 Add else choice to error flags option (#128) 2020-11-25 11:50:21 -06:00
Dana Robinson
ffcb354237 Minor/solaris gcc fix (#126)
* Adds gnu99 as the standard when building with gcc on Solaris

* Adds a note to RELEASE.txt and improves comments

For Solaris + gcc fix (HDFFV-11191)
2020-11-25 09:26:35 -06:00
Dana Robinson
7b9c5e124b Adds a configure/CMake option to control -Werror behavior (#119)
* Works in both Autotools and CMake
* OFF by default
* Reverts "always on" -Werror behavior released in 1.10.7
2020-11-24 21:57:48 -06:00
bljhdf
c56464fc36 Doxygen - added (mostly) beginner functions (#112)
* Doxygen - added (mostly) beginner functions

* Removed duplicate H5Pset_szip function
2020-11-23 16:17:44 -06:00
Allen Byrne
ecbcb4356c Update release text files (#109)
* Update release text files

* spelling correction

* Update list
2020-11-23 12:04:49 -06:00
Quincey Koziol
5ff09ae971 Basic alignment with async branch (#115)
* Basic alignment with async branch - trivial changes to reduce clutter in overall diff.

* Update minor error code to reflect change within library

* Update the error output to match library
2020-11-23 10:18:26 -06:00
Gerd Heber
d4a3097ec5 Full set of current H5F documentation. (#105)
* First cut of the H5 public API documentation.

* Added H5Z "bonus track."

* Applied Quincey's patch.

* Added the missing patches from Quincey's original patch.

* H5PL (complete) and basic H5VL API documentation.

* Added H5I API docs.

* Added H5L API docs.

* First installment from Elena's H5T batch.

* Second installment of Elena's H5T batch.

* Final installment of Elena's H5T batch.

* Migrated documentation for SWMR functions.

* Catching up on MDC functions.

* Integrated the H5F MDC function documentation.

* Added MDC and parallel H5F functions.

* Slightly updated main page.

* Added doxygen/dox/H5AC_cache_config_t.dox to MANIFEST.
2020-11-20 23:18:14 -06:00
Dana Robinson
133c0ad36f Minor/id code cleanup (#114)
* Revert "Switch ID code to use a hash table instead of a skip list (#52)"

This reverts commit a50d211755.

* H5I_id_type_t and H5I_class_t are no longer managed via free lists

* Fixed commenting issues

* Naming and commenting cleanup in H5I.c

* H5I cleanup

* Header cleanup
* Commenting
* More uniform naming

* Renames H5I_id_type_t and related in H5I.c

* Adds gcc pragmas to ignore H5I const casting

* Split H5I code into multiple files

* Rename id_type to simply type in H5I code

* Minor typo in H5Itest.c
2020-11-20 23:17:36 -06:00
Dana Robinson
2122a428cd Corrects use of unitialized bytes in the chunk_info test (#106) 2020-11-20 12:11:36 -06:00
Allen Byrne
8c330c1cb4 chkmanifest will run autogen (#102)
* chkmanifest will run autogen

* remove extension on command

* run autogen first
2020-11-20 10:50:16 -06:00
Dana Robinson
793b3d1bae Revert "Switch ID code to use a hash table instead of a skip list (#52)" (#104)
This reverts commit a50d211755.
2020-11-19 20:54:00 -06:00
Allen Byrne
fc7ac84e19 Add new files to CMake and MANIFEST (#100)
* Add new header file

* Add missing file
2020-11-19 08:07:01 -06:00
Gerd Heber
0a06b9a869 First cut of the H5 public API documentation. (#80)
* First cut of the H5 public API documentation.

* Added H5Z "bonus track."

* Applied Quincey's patch.

* Added the missing patches from Quincey's original patch.

* H5PL (complete) and basic H5VL API documentation.

* Added H5I API docs.

* Added H5L API docs.

* First installment from Elena's H5T batch.

* Second installment of Elena's H5T batch.

* Final installment of Elena's H5T batch.
2020-11-18 09:06:01 -06:00
Dana Robinson
a50d211755 Switch ID code to use a hash table instead of a skip list (#52)
* Brings hash table ID code over from Bitbucket branch

* Includes reformatting via clang.

* Excludes uthash.h from reformatting.

* Still has the failing test issue in tid.c. This should only be a
  problem if a custom ID type is used and its free function deletes
  other IDs.

* Fixes munged H5_GCC_DIAG_ON/OFF macros in H5I.c

The H5_GCC_DIAG_ON/OFF macros used to turn off fallthrough warnings
in uthash.h (external code) were munged when formatting with clang
due to their lack of quotes.

e.g.;

    H5_GCC_DIAG_OFF(implicit-fallthrough)

was munged to:

    H5_GCC_DIAG_OFF(implicit - fallthrough)

which compiles, but is useless. So, with quotes, this is now:

    H5_GCC_DIAG_OFF("implicit-fallthrough")

which survives reformatting with clang.

* Fixes issues with user callbacks in the ID hash tables

The skip lists (previously) used to handle IDs use a mark-and-sweep
scheme to deal with user-defined ID delete callbacks which themselves delete
other IDs in the list. The uthash hash table implementation used to manage
the IDs in this feature branch does not have this ability.

This commit restores the skip lists for non-library ID types in lieu of
significantly modifying the uthash code. The hash tables are used to
manage the library IDs as those do not delete other IDs when they are
closed.

* Adds uthash.h to MANIFEST

* Removes implicit-fallthrough diagnostic disable

Removing -Wimplicit-fallthrough=5 means that the uthash code
no longer raises warnings so the H5_GCC_DIAG_OFF/ON macros
that disabled those warnings have been removed from H5I.c.

* Adds a test to ensure you can delete IDs in the H5Iiterate() callback
2020-11-17 12:06:39 -06:00
Michael Hirsch
0db2d6c212 obsolete CMAKE_BUILD_TOOL => CMAKE_MAKE_PROGRAM (#97)
CMAKE_BUILD_TOOL has been [replaced](https://cmake.org/cmake/help/latest/variable/CMAKE_BUILD_TOOL.html) by CMAKE_MAKE_PROGRAM
2020-11-17 07:53:10 -06:00
Larry Knox
d14418e92a Merge pull request #91 from ksunden/patch-1
Fix spelling of metadata
2020-11-13 14:34:41 -06:00
Kyle Sunden
1e2cbc1b32 Fix spelling of metadata
was spelled "metadatda"
2020-11-13 13:29:22 -06:00
Larry Knox
2ddc379c70 Merge pull request #82 from derobins/minor/skip_list_error
H5SL_release() returns SUCCEED on errors
2020-11-13 13:27:51 -06:00
Larry Knox
184413f7b0 Merge pull request #84 from byrnHDF/develop
Downgrade m4 doxygen macros.
2020-11-13 08:52:45 -06:00
Allen Byrne
ab009d30e5 Correction for location of doxygen folder 2020-11-12 13:14:22 -06:00
Larry Knox
fa40c6c59a Merge pull request #60 from bmribler/develop
Fix HDFFV-10590
2020-11-12 11:22:10 -06:00
Allen Byrne
07da01a9d0 downgrade doxygen.m4 macro file to previous version. 2020-11-12 10:37:19 -06:00
Binh-Minh Ribler
9cde5c52b8 Fixed typo!! 2020-11-12 10:25:14 -06:00
Larry Knox
cfb82afb80 Merge pull request #81 from jhendersonHDF/develop
Fix non-collective metadata read in t_mdset with collective metadata reads enabled
2020-11-12 10:12:48 -06:00
Allen Byrne
142a1d76bb Add missing entries, remove m4 reference 2020-11-12 09:36:04 -06:00
Binh-Minh Ribler
d8d6332eda Fixed typo! 2020-11-12 08:58:20 -06:00
Dana Robinson
55fab292ae H5SL_release() returns SUCCEED on errors
H5SL_release() erroneously returned SUCCEED on errors. It now
correctly returns ret_value.
2020-11-12 06:41:18 -08:00
Binh-Minh Ribler
52f6d51eac Added line for new file 2020-11-12 08:04:28 -06:00
Larry Knox
04e50c876c Merge pull request #79 from byrnHDF/develop
Correct TARGET variable and CMake config file location
2020-11-12 06:26:12 -06:00
Binh-Minh Ribler
5b5654bf48 Removed the line, added by mistake. 2020-11-11 22:28:26 -06:00
Binh-Minh Ribler
ff1e052108 Added a missing line. 2020-11-11 22:01:25 -06:00
Jordan Henderson
37fb2ec29a Fix non-collective metadata read in t_mdset with collective metadata reads enabled 2020-11-11 17:10:41 -06:00
Binh-Minh Ribler
9914e52e16 Fixed typo again. 2020-11-11 15:02:34 -06:00
Binh-Minh Ribler
ea8b05fa1e Fixed typo 2020-11-11 14:56:41 -06:00
Binh-Minh Ribler
7ade95c572 Miscellaneous update
- added test for CMake
- renamed new input file to conform to the existing files
2020-11-11 14:42:11 -06:00
Allen Byrne
8758d5698d Correct TARGET variable and CMake config file location 2020-11-11 06:26:39 -06:00
Gerd Heber
c0c0b6b47f Merge pull request #78 from gheber/develop
This is the first installment of Doxygen-based documentation for the H5F module.
2020-11-10 14:57:54 -06:00
Gerd Heber
29b8231f92 Finished API Compatibility Macros. 2020-11-10 14:28:59 -06:00
Gerd Heber
c77bf5b3e5 Function mappings for 1.8.x. 2020-11-10 10:58:45 -06:00
Gerd Heber
91a824e61f Added 1.10.x function mappings. 2020-11-10 09:29:17 -06:00
Gerd Heber
39eef14f0d Added 1.12.x function mappings. 2020-11-10 09:11:49 -06:00
Larry Knox
9cc9107dfa Merge pull request #77 from byrnHDF/develop
Set doxygen default to normally disabled.
2020-11-10 08:27:29 -06:00
Gerd Heber
5189dfa0d9 About half of the app. compat. mac. document converted. 2020-11-09 19:17:53 -06:00
Gerd Heber
9fe7d9fb33 Updated app. compat macro link. 2020-11-09 16:54:24 -06:00
Gerd Heber
a7c84135d3 App. compatibilty macro outline. 2020-11-09 16:52:42 -06:00
Gerd Heber
dddd15cccf First cut of H5F. 2020-11-09 11:15:58 -06:00
Allen Byrne
1eb43d647d Update to latest doxygen.m4 2020-11-09 08:55:00 -06:00
Allen Byrne
4e6b6781ee Set doxygen default to normally disabled. 2020-11-09 07:55:52 -06:00
Larry Knox
bb6bb57165 Merge pull request #73 from byrnHDF/develop
Add doxygen autconf/cmake support
2020-11-07 23:46:44 -06:00
Allen Byrne
2457e58407 Change doxygen brief variable 2020-11-07 16:20:08 -06:00
Allen Byrne
014af41c9e Doxygen correct typos 2020-11-04 07:55:41 -06:00
Allen Byrne
2c28470831 doxygen restore tabs 2020-11-03 17:16:00 -06:00
Allen Byrne
2c0c5c31fe Doxygen correct PHONY target 2020-11-03 15:41:34 -06:00
Larry Knox
5b5a1a8102 Merge pull request #72 from jhendersonHDF/develop
Change H5R__copy to not assume destination reference storage is initi…
2020-11-03 14:52:09 -06:00
Allen Byrne
d6c92bde00 Doxygen add new files and update docs 2020-11-03 12:23:06 -06:00
Allen Byrne
4f7bb20a8f Doxygen remove obsolete file 2020-11-03 10:43:51 -06:00
Allen Byrne
c812f3fea2 Add doxygen auotoconf and cmake support 2020-11-03 10:42:09 -06:00
Jordan Henderson
0b6067574b Change H5R__copy to not assume destination reference storage is initialized 2020-11-02 21:03:46 -06:00
Larry Knox
dc47bb7084 Merge pull request #69 from xantares/mingw3
CMake: Add an option to opt-out static libgcc
2020-11-02 07:44:44 -06:00
Larry Knox
3c42c49a02 Merge pull request #67 from xantares/mingw1
CMake: Set specific INSTALL_DATA_DIR only on MSVC
2020-10-31 10:54:36 -05:00
Larry Knox
b4ef77e652 Merge pull request #70 from xantares/mingw4
CMake: MINGW implies WIN32
2020-10-31 07:18:04 -05:00
Michel Zou
7259b5eb7a CMake: Add an option to opt-out static libgcc
With sjlj exception model, statically link to libgcc/libstdc++
prevents exceptions to be caught from other dynamic libraries.
2020-10-31 10:31:38 +01:00
Larry Knox
d8b7b3593b Merge pull request #68 from xantares/mingw2
CMake: Add an option to opt-out MSVC naming convention
2020-10-30 18:41:38 -05:00
Larry Knox
747cecb069 Merge pull request #65 from derobins/minor/mpi_2gb_limit
Fixes a bit shift issue in an MPI constant
2020-10-30 10:53:07 -05:00
Larry Knox
42d4ceac67 Merge pull request #66 from derobins/minor/HD_to_H5MM
Replaces C standard library memory calls with H5MM equivalents
2020-10-30 10:52:42 -05:00
Michel Zou
0db1fe81d5 CMake: MINGW implies WIN32 2020-10-30 16:09:28 +01:00
Michel Zou
de4ccdfd63 CMake: Add an option to opt-out MSVC naming convention
We might want to keep the default mingw import name, see:
https://github.com/msys2/MINGW-packages/blob/master/mingw-w64-hdf5/hdf5-default-import-suffix.patch
2020-10-30 13:19:18 +01:00
Michel Zou
0e9981aa59 CMake: Set specific INSTALL_DATA_DIR only on MSVC
For MinGW we want INSTALL_DATA_DIR to be set to share instead of .
to properly install files in a standard package layout.
2020-10-30 10:46:56 +01:00
Dana Robinson
16eab69bcd Replaces C std library calls with H5MM equivalents
Mostly H5MM_memcpy in newer VFDs
2020-10-29 17:17:15 -07:00
Dana Robinson
1e93bbc183 Fixes a bit shift issue in an MPI constant
Redefines TWO_GIG_LIMIT to be INT32_MAX instead of 1 << 31, which
fixes an issue revealed by compiling with -Wshift-overflow.
2020-10-29 16:28:38 -07:00
Larry Knox
6c0f954d68 Merge pull request #62 from byrnHDF/develop
HDFFV-10868 - add H5Sselect API java wrappers.
2020-10-29 16:29:17 -05:00
Larry Knox
ad174fcca5 Merge pull request #64 from derobins/minor/vfd_warning_cleanup
Fixes minor issues in various virtual file drivers
2020-10-29 14:59:13 -05:00
Allen Byrne
a4cbd51db6 HDFFV-10868 Corrections from review 2020-10-29 13:14:51 -05:00
Dana Robinson
2266ee56c3 Fixes minor issues in various virtual file drivers
- HDFS VFD files now ignored in the Autotools when the HDFS VFD is not
  being built.
- All VFD init code uses idiomatic H5I_INVALID_HID instead of -1
  or FAIL.
- The HDFS VFD now includes H5FDdrvr_module.h in the right place.
- The HDFS tests in test/hdfs.c no longer pass NULL to VERIFY macros, which
  raised warnings.
- Minor tweaks to fix const, unused variables, etc. warnings in
  several VFDs.
2020-10-28 23:50:37 -07:00
Allen Byrne
ba00760d7a HDFFV-10868 - add note 2020-10-28 07:06:01 -05:00
Binh-Minh Ribler
e5f792cf12 Added test for the fix HDFFV-10590 2020-10-27 22:18:52 -05:00
Allen Byrne
f8b3f576ce HDFFV-10868 - add H5Sselect API java wrappers.
Also added javadoc comments to H5E and H5s constants.
2020-10-27 16:48:02 -05:00
Binh-Minh Ribler
273c0c1836 Fix HDFFV-10590
Description
    This is to fix the CVE issue CVE-2018-17432.
    h5repack produced a segfault on a corrupted file.  This fix modified the
    dataspace encode and decode functions per Quincey's suggestion to prevent
    the segfault and h5repack only failed for the corrupted file now.
Platforms tested:
    Linux/64 (jelly)
2020-10-26 13:04:35 -05:00
Binh-Minh Ribler
a4269a08b9 Merge branch 'develop' of https://github.com/HDFGroup/hdf5 into develop 2020-10-26 12:53:28 -05:00
Binh-Minh Ribler
7bfa10018e Fix HDFFV-10590
Description
    This is to fix the CVE issue CVE-2018-17432.
    h5repack produced a segfault on a corrupted file.  This fix modified the
    dataspace encode and decode functions per Quincey's suggestion to prevent
    the segfault.  h5repack only failed for the corrupted file now.
Platforms tested:
    Linux/64 (jelly)
2020-10-26 08:36:27 -05:00
Larry Knox
313a8c8546 Merge pull request #59 from derobins/trivial/HDprefix
HD prefix updates in src/ and test/
2020-10-24 08:05:13 -05:00
Dana Robinson
2ae59f1c61 Restores erroneously deleted key_id field from S3 VFD
Accidentally deleted while preparing the PR. Only existed in a
branch.
2020-10-23 17:49:53 -07:00
Dana Robinson
ca3659a014 HD prefix updates in src/ and test/
Adds missing HD prefixes to API calls in src and test.

Adds some extra processing to bin/checkposix to keep the noise
levels down when running the script (not comprehensive).
2020-10-23 17:13:05 -07:00
Larry Knox
2c3cf8240f Merge pull request #56 from derobins/minor/implicit_fallthrough
Removes -Wimplicit-fallthrough=5 from the gcc warnings
2020-10-23 16:19:22 -05:00
Larry Knox
f9679de85c Merge pull request #55 from byrnHDF/develop
Correct SZ options for building plugins
2020-10-22 11:39:51 -05:00
Dana Robinson
3606f20c02 Removes -Wimplicit-fallthrough=5 from the gcc warnings
-Wimplicit-fallthrough=3 is added by -Wextra, which we already set.
Bumping the warning level only changes how fall-through comments are
parsed, with level 5 turning off fall-through comments entirely.
This is unnecessary and results in having to do extra work to squash
warnings when included external code uses fall-through.

This change also adds /* FALLTHROUGH */ comments where
H5_ATTR_FALLTHROUGH is used so compilers that don't use attributes
but do respect fall-through comments don't raise spurious warnings.
2020-10-22 09:22:58 -07:00
Allen Byrne
c849825c9d Correct SZ options for building plugins 2020-10-21 15:40:42 -05:00
Larry Knox
8f15ee5e3c Merge pull request #49 from byrnHDF/develop
options corrections
2020-10-20 17:50:49 -05:00
Allen Byrne
4a88f0c8d7 URL and options corrections 2020-10-19 16:21:57 -05:00
Larry Knox
377a5ab2e5 Merge pull request #47 from byrnHDF/develop
Whitespace and url correction
2020-10-19 13:33:11 -05:00
Allen Byrne
176eef2737 Whitespace and url correction 2020-10-19 09:42:09 -05:00
Allen Byrne
9bd2102b77 Update javadoc comments to reduce warnings (#41) 2020-10-16 11:10:35 -05:00
Larry Knox
e6cda4817b Merge pull request #37 from takluyver/description-errno
Note that the description for system errors may be used by h5py
2020-10-15 18:31:57 -05:00
Thomas Kluyver
bb2ed7151b More general message about using description for errno 2020-10-15 15:29:56 +01:00
Thomas Kluyver
73aba9228d Note that the description for system errors may be used by h5py 2020-10-15 10:49:22 +01:00
Larry Knox
220f8972cd Merge pull request #31 from byrnHDF/develop
Comment adjustments
2020-10-09 09:19:39 -05:00
Allen Byrne
ceaf5b264d Comment adjustments 2020-10-08 12:25:46 -05:00
Larry Knox
1a6fba9418 Merge pull request #25 from byrnHDF/develop
gitub workflow changes
2020-10-07 12:37:07 -05:00
Allen Byrne
5fd179dbcd Remove obsolete file 2020-10-07 10:15:31 -05:00
Allen Byrne
9c78cc4541 Merge remote-tracking branch 'origin/develop' into develop 2020-10-07 08:33:34 -05:00
Allen Byrne
087fc700c2 Update code owners 2020-10-07 08:28:19 -05:00
Quincey Koziol
66bcfd97a8 Update reformatting settings, trace wrapping, and printf-format strings (#22)
* Add BEGIN_FUNC / CATCH / END_FUNC to macros

* Remove incorrect trailing '{'

* Update trace script to wrap H5TRACE macros at 110 characters and improve
comments for code that performs this operation.

* Clean up printf-formatting in H5public.h and correct some oversights in the code.

* Reformat with BEGIN_FUNC / END_FUNC handled correctly by clang-format

* Run clang-format on changes.

* Correct H5_SIZEOF_HSIZE_T/H5_SIZEOF_HSSIZE_T macros to match typedef.

* And make the undef value match also.

* Update comment

* Update clang-format actions to exclude generated files.

* Post-process generated H5LTparse.h file as well as H5LTparse.c file.

* Fix formatting

* Update version of github clang-format action
2020-10-06 17:37:42 -05:00
Allen Byrne
cd82c1904c Merge branch 'develop' of https://github.com/HDFGroup/hdf5.git into develop 2020-10-06 16:01:05 -05:00
Allen Byrne
937219e7af Update for minimum of two owners 2020-10-06 12:36:11 -05:00
Larry Knox
629415232d Correct entries related to --enable-build-mode and --enable-profiling in
INSTALL file, and remove obsolete SZIP paragraph from COPYING file.
2020-10-06 12:01:01 -05:00
Allen Byrne
ff1edd709a github environment variable change 2020-10-06 11:59:58 -05:00
Allen Byrne
c0e087a65a Fix VFD h5repacktest (#20)
* h5repacktest VFD fix and formatting changes

* Fix memory leak in H5PL__find_plugin_in_path

When encountering a directory, the current loop iteration was skipped
without freeing the memory allocated for the path.

* Refactor parser GCC diagnostic statements

* genparser on jelly with default bison/flex

Co-authored-by: Michael Kuhn <michael.kuhn@ovgu.de>
2020-10-06 11:56:59 -05:00
Allen Byrne
a8e0fc5f0c genparser on jelly with default bison/flex 2020-10-06 10:23:18 -05:00
Allen Byrne
74c066c2c7 Refactor parser GCC diagnostic statements 2020-10-06 09:02:33 -05:00
Larry Knox
2384233b73 Merge pull request #15 from lrknox/develop
Correct entries related to --enable-build-mode and --enable-profiling in
2020-10-05 17:02:49 -05:00
Michael Kuhn
4c6f59d273 Fix memory leak in H5PL__find_plugin_in_path
When encountering a directory, the current loop iteration was skipped
without freeing the memory allocated for the path.
2020-10-05 14:22:47 -05:00
Allen Byrne
f8cd74af65 h5repacktest VFD fix and formatting changes 2020-10-05 14:21:58 -05:00
Larry Knox
ae0f6f25cd Merge pull request #12 from byrnHDF/develop
HDFFV-11096 fix typo in h5dump usage text
2020-10-05 13:37:08 -05:00
Larry Knox
5631b2e3fb Merge pull request #16 from michaelkuhn/fix-plugin-path-leak
Fix memory leak in H5PL__find_plugin_in_path
2020-10-05 09:31:08 -05:00
Michael Kuhn
f57cc4a702 Fix memory leak in H5PL__find_plugin_in_path
When encountering a directory, the current loop iteration was skipped
without freeing the memory allocated for the path.
2020-10-05 15:27:24 +02:00
Allen Byrne
e01430ec56 HDFFV-11096 replace backticks with doublequotes 2020-10-04 11:46:42 -05:00
Larry Knox
4ad5597525 Correct entries related to --enable-build-mode and --enable-profiling in
INSTALL file, and remove obsolete SZIP paragraph from COPYING file.
2020-10-03 15:32:57 -05:00
Allen Byrne
31773b7c48 HDFFV-11096 fix typo in h5dump usage text 2020-10-03 08:21:40 -05:00
Larry Knox
9df906126f Merge pull request #11 from byrnHDF/develop
Add mingw define
2020-10-03 07:01:03 -05:00
Allen Byrne
13d81d2dff Add mingw define 2020-10-02 13:35:09 -05:00
Allen Byrne
58d8eae182 Merge pull request #2917 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '1a4c5cc22c0f8aac568f39e67d695d906cf17c87':
  Actions updates
2020-10-02 11:11:38 -05:00
Allen Byrne
1a4c5cc22c Actions updates 2020-10-02 10:20:28 -05:00
Larry Knox
4b01ab73cc Merge pull request #2906 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'b2d661b508a7fc7a2592c13bc6bdc175551f075d':
  Clang-format of source files
2020-10-02 10:11:11 -05:00
Allen Byrne
b2d661b508 Clang-format of source files 2020-09-30 09:27:10 -05:00
Allen Byrne
29ab58b58d Merge pull request #2905 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '3f15fb35222a0fb2ba2f1f88a2d78daaea633ec8':
  Fix jni with %Lg instead of %Lf
  Pre-format fixes for warnings as errors
2020-09-29 20:03:03 -05:00
Allen Byrne
3f15fb3522 Fix jni with %Lg instead of %Lf
Fix warnings due to improper formed define tag in h5diff
2020-09-29 11:42:17 -05:00
Allen Byrne
274cd0ba1d Pre-format fixes for warnings as errors 2020-09-29 10:24:49 -05:00
David Young
14851e3b82 Merge pull request #2650 in HDFFV/hdf5 from ~DYOUNG/werror:rebased-fprintf-experiment to develop
* commit 'c0fbc5c086566d5d3c1d1ef26baa81a53d59fc08': (24 commits)
  Use the right format string, "%zu", for size_t.
  Repair more format strings.
  Fix a bunch of format string errors reported by Larry.
  Fix some HDfprintf compilation errors: use the right format strings ("zu", PRIuHSIZE), avoid casting some printf arguments, pass the right number of arguments.
  Test the format string "ll" before "l", "L", and "q", like the ./configure script does.  This ought to fix the compilation failure in test/dt_arith.c that Allen told me about:
  Cast a non-void pointer to void pointer for "%p".
  Use PRIu32 and "zu" formats.  Delete some casts from `size_t`.
  I'm taking a guess that this code intended to point the 2-digit wide hexadecimal octet values, not 2 character-wide pointers to the bytes.  The %02p format, which is a GNU-ism, disagreed with GCC 8.3.0 and the option flags we use.
  %08p is not portable, it's a GNU-ism.  Use %8p, instead.  Squashes a GCC error.
  Add format string macros PRI[doxX]HID for hid_t and use PRIdHID.
  Use HDva_copy() and introduce a bunch of compatbility format-string constants for uppercase hexadecimal strings, `PRIX...`.  Should fix the VS2010 errors that Allen mentioned:
  Always #define HDfprintf as fprintf in this header.  I believe this will fix the Windows build error that Allen reported.
  Provide an HDvasprintf implementation only if it isn't #defined.  This should fix the mingw compilation issue that Allen reported.
  Fix va_list usage in the vasprintf(3) implementation.
  Promote format-string warnings to errors.
  Use the portable `-eq` operator instead of the bash-ism `==`. Fixes the tests on NetBSD, where /bin/sh != bash.
  Restore a literal percent sign ("%%") that I accidentally deleted.
  Fix code that made GCC complain about a NULL or `unsigned char *` arguments for "%s".
  Take pains to provide UINT64_MAX in all conditions.
  Correct a couple of format strings.
  ...
2020-09-28 14:42:18 -05:00
Allen Byrne
8ee8b7abb5 Merge pull request #2902 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '088014bef4216eede409d103876a9fd3efadd358':
  More info for building plugins with library
  Remove setting from cacheinit file
  OESS-98 add release note for option
  OESS-98 merge with clang-format changes
2020-09-28 10:55:19 -05:00
Allen Byrne
088014bef4 More info for building plugins with library 2020-09-28 09:41:43 -05:00
Allen Byrne
e7fbeb2e8c Remove setting from cacheinit file 2020-09-28 07:20:42 -05:00
David Young
c0fbc5c086 Use the right format string, "%zu", for size_t. 2020-09-27 15:07:12 -05:00
David Young
08034972bc Merge remote-tracking branch 'hdffv/develop' into rebased-fprintf-experiment 2020-09-27 15:03:44 -05:00
Allen Byrne
9941e4b1ae OESS-98 add release note for option 2020-09-27 11:46:58 -05:00
David Young
d20e1274a7 Repair more format strings. 2020-09-25 20:03:20 -05:00
Allen Byrne
ff0881f35b OESS-98 merge with clang-format changes 2020-09-25 16:43:57 -05:00
Allen Byrne
aa08db839e Merge pull request #2882 in HDFFV/hdf5 from ~BYRN/hdf5_adb:feature/cmakeV2-clang-format to develop
* commit '571a5e9250ca69adb54ef956361a5cf77059f67c':
  Add h5ls test plugin format target
  Fix manifest
  Add code owners file
  Update actions - split push/pull-request commits
  Change to executable
  Change to based on LLVM format
  Fix comment formatting due to tabs conversion
  Disable formatting for file
  File changes to affect formatting
  CMake and script changes for clang-format
2020-09-25 16:11:52 -05:00
David Young
5f0bb85813 Merge remote-tracking branch 'hdffv/develop' into rebased-fprintf-experiment 2020-09-25 15:34:39 -05:00
Allen Byrne
571a5e9250 Add h5ls test plugin format target 2020-09-25 14:16:56 -05:00
David Young
f8652be7fb Fix a bunch of format string errors reported by Larry. 2020-09-25 11:43:15 -05:00
David Young
6486892de5 Fix some HDfprintf compilation errors: use the right format strings
("zu", PRIuHSIZE), avoid casting some printf arguments, pass the right
number of arguments.
2020-09-24 16:34:51 -05:00
Allen Byrne
fae9d938d3 Fix manifest 2020-09-24 15:29:49 -05:00
Allen Byrne
03bbf36114 Add code owners file 2020-09-24 15:05:04 -05:00
Allen Byrne
f71e74f4e4 Update actions - split push/pull-request commits 2020-09-24 13:52:24 -05:00
Allen Byrne
6b14627330 Change to executable 2020-09-24 12:36:25 -05:00
Allen Byrne
eba2e66a87 Change to based on LLVM format 2020-09-24 12:35:54 -05:00
Jordan Henderson
cdc4b8a0fb Merge pull request #2898 in HDFFV/hdf5 from ~JHENDERSON/hdf52:develop to develop
* commit '739cd5723fe3435818075481687770996af42ef5':
  Fix memory sanity check option in CMake
2020-09-24 11:05:33 -05:00
Allen Byrne
a117ac6cae Fix comment formatting due to tabs conversion 2020-09-24 09:57:21 -05:00
Jordan Henderson
739cd5723f Fix memory sanity check option in CMake 2020-09-23 18:23:14 -05:00
Jordan Henderson
c4b1693f8e Merge pull request #2895 in HDFFV/hdf5 from ~JHENDERSON/hdf52:develop to develop
* commit 'c15f8674d9600c72b33823c55587051cf66811ef':
  Free selection type-specific info when resetting selection iterators
2020-09-23 18:16:04 -05:00
Jordan Henderson
c15f8674d9 Free selection type-specific info when resetting selection iterators 2020-09-23 09:37:35 -05:00
Jordan Henderson
febc343e7e Merge pull request #2891 in HDFFV/hdf5 from ~JHENDERSON/hdf52:develop to develop
* commit '9b3a3445dbb72a95b2b9355e0196efdaa5b0f452':
  Add release note for new H5Ssel_iter_reset function
  Add H5Ssel_iter_init API call to reset a selection iterator
2020-09-21 18:39:35 -05:00
Jordan Henderson
9b3a3445db Add release note for new H5Ssel_iter_reset function 2020-09-18 13:31:50 -05:00
Jordan Henderson
ce0f87fb35 Add H5Ssel_iter_init API call to reset a selection iterator 2020-09-18 00:12:37 -05:00
David Young
cd1d772f35 Test the format string "ll" before "l", "L", and "q", like the
./configure script does.  This ought to fix the compilation failure
in test/dt_arith.c that Allen told me about:

/home/buildbot/bb-workers/centos8-vm01/hdf5trunk-StdShar-code-centos8/build/hdfsrc/test/dt_arith.c: In function ‘test_conv_int_1’:
/home/buildbot/bb-workers/centos8-vm01/hdf5trunk-StdShar-code-centos8/build/hdfsrc/test/dt_arith.c:2500:34: error: format ‘%ld’ expects argument of type ‘long  int’, but argument 3 has type ‘long long int’ [-Werror=format=]
                 HDfprintf(stdout," %29"H5_PRINTF_LL_WIDTH"d\n", *((long long*)aligned));
2020-09-17 16:00:27 -05:00
Allen Byrne
01482d93d4 Disable formatting for file 2020-09-05 18:21:58 -05:00
Allen Byrne
d8d17d2328 File changes to affect formatting 2020-09-04 16:51:30 -05:00
Larry Knox
9eaeac2e1b Merge pull request #2874 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '6b71d6dc9453e8f94ac82732496ee59ca6495587':
  Add zllib and szip pages
  Correct COPYING path
2020-09-04 16:49:36 -05:00
Allen Byrne
30c7264c2c CMake and script changes for clang-format 2020-09-04 16:36:52 -05:00
Allen Byrne
6b71d6dc94 Add zllib and szip pages 2020-09-04 15:44:33 -05:00
Allen Byrne
91213082b5 Correct COPYING path 2020-09-04 08:07:30 -05:00
David Young
f796cd3c78 Cast a non-void pointer to void pointer for "%p". 2020-09-03 16:44:31 -05:00
David Young
d85cd245d2 Merge remote-tracking branch 'hdffv/develop' into rebased-fprintf-experiment 2020-09-03 16:13:47 -05:00
Quincey Koziol
b3a89155b9 Merge pull request #2866 in HDFFV/hdf5 from fix_nil_collective_metadata_write to develop
* commit '45021f1826f3710a3008430ddf7216bffb7068f7':
  Update buffer count
  Revert PR 405 (https://bitbucket.hdfgroup.org/projects/HDFFV/repos/hdf5/pull-requests/405/overview) and reimplement with correct and simpler code.
  Revert "    Checkin of fix for CGNS bug"
  Revert "Removed commeted out code from H5C_dump_coll_write_list()"
2020-09-02 17:02:57 -05:00
Quincey Koziol
0f60e7e576 Merge pull request #2843 in HDFFV/hdf5 from vol_dataset_io_dxpl_fix to develop
* commit '4b69577e10ed58bf6536599092390f02a49ff3f9':
  Bug fix to allow pass-through VOL connectors to set DXPL properties (like requesting collective operations) on dataset I/O
2020-09-02 08:14:54 -05:00
Quincey Koziol
45021f1826 Update buffer count 2020-08-28 18:03:08 -05:00
Quincey Koziol
500cbbb71c Merge remote-tracking branch 'origin/develop' into fix_nil_collective_metadata_write 2020-08-28 11:17:04 -05:00
Quincey Koziol
165c454aa7 Revert PR 405 (https://bitbucket.hdfgroup.org/projects/HDFFV/repos/hdf5/pull-requests/405/overview)
and reimplement with correct and simpler code.
2020-08-27 18:18:44 -05:00
Quincey Koziol
72b9b8ca75 Revert " Checkin of fix for CGNS bug"
This reverts commit 94c34773ce.
2020-08-27 18:11:19 -05:00
Quincey Koziol
c9f15824fe Revert "Removed commeted out code from H5C_dump_coll_write_list()"
This reverts commit eb75dc1bb0.
2020-08-27 18:01:11 -05:00
Dana Robinson
3a2fd09941 Merge pull request #2863 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor to develop
* commit '49e01e594eb2d0c25455e7ff71eed3de074fd15b':
  Adds RELEASE.txt note about HDFS VFD stubs being removed
  Removes inappropriate file locking call
  Trivial whitespace change to H5Pencdec.c
  Minor refactoring based on 1.10 normalization work
  Trivialities noticed while normalizing 1.10
2020-08-27 14:42:23 -05:00
Dana Robinson
49e01e594e Adds RELEASE.txt note about HDFS VFD stubs being removed 2020-08-27 10:54:14 -07:00
Dana Robinson
3d7a0dc6d5 Merge branch 'develop' into develop_minor 2020-08-27 10:36:03 -07:00
Allen Byrne
a38a286be1 Merge pull request #2849 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '0932c46e3d5b09d32cbe29335e8054302ab122c5':
  MinGW uses "MinGW Makefiles"
  The version string has a second use for packaging
2020-08-26 14:23:07 -05:00
Allen Byrne
0932c46e3d MinGW uses "MinGW Makefiles" 2020-08-26 10:17:21 -05:00
Allen Byrne
3f65adefd9 The version string has a second use for packaging 2020-08-26 09:03:43 -05:00
Quincey Koziol
4b69577e10 Bug fix to allow pass-through VOL connectors to set DXPL properties (like requesting collective operations) on dataset I/O 2020-08-25 18:20:27 -05:00
Allen Byrne
b4f4bd1d4c Merge pull request #2839 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '336b30024216b142eb096bf85986786ecf65e993':
  Add back function for VERIFY_EXTERNAL_CONSOLIDATION
2020-08-25 11:40:31 -05:00
Allen Byrne
336b300242 Add back function for VERIFY_EXTERNAL_CONSOLIDATION 2020-08-25 11:19:12 -05:00
Allen Byrne
e672014f29 Merge pull request #2826 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'ec1c324a0d184d2778e9155140367a7d3a307fa1':
  Revert H5_VERS_SUBRELEASE check
  Add special case when H5_VERS_SUBRELEASE is 0
  Condition if (H5_VERS_SUBRELEASE) is incorrectly false when H5_VERS_SUBRELEASE is 0, a valid value for H5_VERS_SUBRELEASE. Updated to if (${H5_VERS_SUBRELEASE} STREQUAL "") with corresponding reversal of action statements to avoid NOT.
  Add hypen to subrelease regex
  Fix S3/HDFS test
2020-08-24 08:07:50 -05:00
Allen Byrne
ec1c324a0d Revert H5_VERS_SUBRELEASE check 2020-08-24 08:01:01 -05:00
Allen Byrne
9765b7ff30 Add special case when H5_VERS_SUBRELEASE is 0 2020-08-24 06:55:00 -05:00
Larry Knox
9b63dcb5c8 Condition if (H5_VERS_SUBRELEASE) is incorrectly false when
H5_VERS_SUBRELEASE is 0, a valid value for H5_VERS_SUBRELEASE.
Updated to if (${H5_VERS_SUBRELEASE} STREQUAL "") with corresponding
reversal of action statements to avoid NOT.
2020-08-24 00:32:48 -05:00
Allen Byrne
4d5354afcd Add hypen to subrelease regex 2020-08-23 14:58:09 -05:00
Allen Byrne
2ac49e2fec Fix S3/HDFS test 2020-08-23 14:05:19 -05:00
Quincey Koziol
a9ffedfd61 Merge pull request #2819 in HDFFV/hdf5 from coll_chunk_fill_fix to develop
* commit '4c43ff0b8b015ccfc1f4aeab18f189d629a5beb9':
  Simplify default use of MPI_BYTE
  Don't free builtin MPI_BYTE MPI type
  Simplify code to avoid using a boolean to free MPI types
  Avoid creating MPI datatypes on ranks with 0 chunks to write'
2020-08-21 16:17:10 -05:00
Quincey Koziol
4c43ff0b8b Simplify default use of MPI_BYTE 2020-08-20 18:24:07 -05:00
Quincey Koziol
fa0d395370 Don't free builtin MPI_BYTE MPI type 2020-08-20 18:22:39 -05:00
Quincey Koziol
d67de87ecd Simplify code to avoid using a boolean to free MPI types 2020-08-20 17:08:24 -05:00
Quincey Koziol
91bd6f9a63 Avoid creating MPI datatypes on ranks with 0 chunks to write' 2020-08-20 14:31:35 -05:00
Larry Knox
6d73a778c6 Merge pull request #2816 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit '76d93a78fe583b99efa295cd44359092310172a3':
  Revert "Merge pull request #2796 in HDFFV/hdf5 from small_chunk_io_opt to develop"
2020-08-20 11:05:41 -05:00
Larry Knox
76d93a78fe Revert "Merge pull request #2796 in HDFFV/hdf5 from small_chunk_io_opt to develop"
This reverts commit a7a8e6451a, reversing
changes made to 30422a6b55.
2020-08-20 10:57:29 -05:00
Quincey Koziol
a7a8e6451a Merge pull request #2796 in HDFFV/hdf5 from small_chunk_io_opt to develop
* commit 'ad9a2ceabe2dd9045111f8b57774948a124607b9':
  Only initialize the contiguous or compact I/O info struct when needed.
2020-08-19 16:56:20 -05:00
Larry Knox
30422a6b55 Merge pull request #2806 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit '98754591b8dcf2be70957d67ec7172c53cbaa827':
  Revert "Merge pull request #2477 in HDFFV/hdf5 from pio_update to develop"
2020-08-18 13:31:46 -05:00
Larry Knox
98754591b8 Revert "Merge pull request #2477 in HDFFV/hdf5 from pio_update to develop"
This reverts commit ba80bcaff2, reversing
changes made to 522ef0dd5c.
2020-08-18 12:51:13 -05:00
Larry Knox
18012b1d98 Merge pull request #2801 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:swmr_test_fail_cmake to develop
* commit '857e0f4404cb5a754d799110b89f0f16b503b4ce':
  Fixes CMake issue with file locking variable
2020-08-18 08:20:41 -05:00
Dana Robinson
857e0f4404 Fixes CMake issue with file locking variable 2020-08-18 06:18:23 -07:00
Larry Knox
3f5382bb62 Merge pull request #2795 in HDFFV/hdf5 from ~BMRIBLER/hdf5_bmr2020:hdf5_bmr2020_addrsani to develop
* commit '5352b1dbc92313d91d3502dd8352352abe8749a7':
  Fixed typo
  Fix HDFFV-11101
2020-08-18 08:03:29 -05:00
Larry Knox
ba80bcaff2 Merge pull request #2477 in HDFFV/hdf5 from pio_update to develop
* commit 'a20bf599b682bfa0a91d571a922973e0c53b524a':
  Don't track file offset position when using pread / pwrite.
2020-08-18 08:02:55 -05:00
Larry Knox
522ef0dd5c Merge pull request #2734 in HDFFV/hdf5 from ~DYOUNG/werror:cse to develop
* commit 'fa7f8ad2f3fe509ff69dc574ddad0ae4d329ccca':
  Improve code readability: extract common subexpressions into temporary variables.
2020-08-18 08:01:27 -05:00
Larry Knox
057cd67021 Merge pull request #2735 in HDFFV/hdf5 from ~DYOUNG/werror:virtual-write-one to develop
* commit '7b48e3409a8c3ba1e83c929656e84196a6dc2e6d':
  Fix a bug in H5D__virtual_write_one to stop an assertion from failing deep in H5Dwrite---project the *clipped* virtual selection instead of the virtual selection:
2020-08-18 08:00:54 -05:00
Dana Robinson
f4d03432a4 Removes inappropriate file locking call 2020-08-18 05:53:33 -07:00
Binh-Minh Ribler
5352b1dbc9 Fixed typo 2020-08-17 22:37:26 -05:00
Dana Robinson
e9ee2d9906 Trivial whitespace change to H5Pencdec.c 2020-08-17 16:37:53 -07:00
Quincey Koziol
ad9a2ceabe Only initialize the contiguous or compact I/O info struct when needed. 2020-08-17 18:29:55 -05:00
Dana Robinson
433078bc80 Merge pull request #2794 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:h5f_start_swmr_write_locks_dev2 to develop
* commit 'f02ced7e7443563581930a6c2d58d1628608bbdd':
  Moves lock flag to H5F_shared_t and adds test.
  Adds fix for H5Fstart_swmr_write lock issue
2020-08-17 18:02:34 -05:00
Binh-Minh Ribler
5bb893a2c2 Fix HDFFV-11101
Description
    Added initialization to local structs in the src function
    H5MF_settle_raw_data_fsm() and the test function test_bt2_hdr_fd()
    to prevent the following error in two different occurrences:
        MemorySanitizer: use-of-uninitialized-value
Platforms tested:
    Linux/64 (jelly)
    Linux/64 (platypus)
2020-08-17 17:51:15 -05:00
Dana Robinson
f02ced7e74 Moves lock flag to H5F_shared_t and adds test. 2020-08-17 14:25:04 -07:00
Dana Robinson
32a1188bbd Adds fix for H5Fstart_swmr_write lock issue 2020-08-17 10:54:07 -07:00
Dana Robinson
b2d917437d Minor refactoring based on 1.10 normalization work 2020-08-17 09:12:59 -07:00
Dana Robinson
d53c9be189 Merge branch 'develop' into develop_minor 2020-08-17 09:00:42 -07:00
John Mainzer
5d8c5849e5 Merge pull request #2769 in HDFFV/hdf5 from mdc_sl_opt to develop
* commit 'd00bab96fb4da12a18b5de528c96469978c4c927':
  Minor copy edits to comments -- no code changes.
  Tab to space conversions.
  When flushing, the metadata cache attempts to flush entries in increasing address order.  To facilitate this, the metadata cache needs a list of of dirty entries in increasing address order.  This is implemented via a skip list of all dirty entries in the cache.
2020-08-17 08:25:05 -05:00
mainzer
d00bab96fb Minor copy edits to comments -- no code changes. 2020-08-17 08:19:33 -05:00
Larry Knox
0f9c22edc7 Merge pull request #2784 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit '0d14414ddd860f24f1386771ed3ba8d2f5e2710d':
  1. HDFFV-10830 part 2, move AC_CHECK_HEADERS([szlib.h] after         AC_CHECK_LIB([sz], [SZ_BufftoBuffCompress] to avoid compiling             H5Z.c with szlib.h after its path is removed from AM_CPPFLAGS. 2. Remove unnecessary links to ${HDF5_TOOLS_LIB_TARGET} in utils/mirror_vfd/CMakeLists.txt that prevent building HDF5 with tools disabled.
2020-08-16 20:57:16 -05:00
Dana Robinson
5787404804 Trivialities noticed while normalizing 1.10 2020-08-16 18:10:48 -07:00
Larry Knox
0d14414ddd 1. HDFFV-10830 part 2, move AC_CHECK_HEADERS([szlib.h] after
AC_CHECK_LIB([sz], [SZ_BufftoBuffCompress] to avoid compiling
            H5Z.c with szlib.h after its path is removed from AM_CPPFLAGS.
2. Remove unnecessary links to ${HDF5_TOOLS_LIB_TARGET} in
utils/mirror_vfd/CMakeLists.txt that prevent building HDF5 with tools
disabled.
2020-08-16 18:41:13 -05:00
Binh-Minh Ribler
24c23c79d8 Merge pull request #2771 in HDFFV/hdf5 from ~BMRIBLER/hdf5_bmr:hdf5_bmr_HDFFV-10933 to develop
Fixed HDFFV-10933

* commit '16349c5fddce8a74644e18d01d7ea8186aaaa255':
  Fixed HDFFV-10933
2020-08-16 15:34:18 -05:00
Allen Byrne
f02e016372 Merge pull request #2779 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '31673041d8342002d11ced2a7def938438dd912d':
  Fix javadoc warning
2020-08-16 12:14:32 -05:00
Quincey Koziol
a20bf599b6 Merge remote-tracking branch 'origin/develop' into pio_update 2020-08-16 11:49:15 -05:00
Allen Byrne
31673041d8 Fix javadoc warning 2020-08-16 11:07:59 -05:00
Allen Byrne
c81f01d5dc Merge pull request #2776 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '6a344232f641135e6bc5f89d66a01c68d29bfa00':
  Add testfiles
  TRILABS-277 Use JIRA number as #ifdef
2020-08-15 19:47:07 -05:00
Allen Byrne
6a344232f6 Add testfiles 2020-08-15 18:10:57 -05:00
mainzer
7b9f61c157 Merge branch 'develop' into mdc_sl_opt 2020-08-15 17:53:29 -05:00
Allen Byrne
57c4aeb0cc TRILABS-277 Use JIRA number as #ifdef 2020-08-15 17:25:22 -05:00
Allen Byrne
94ae09469b Merge pull request #2768 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '2d659de898f23b78bbbb47a1dbd5ffb5d9f953a6':
  HDFFV-9984 fix test logic
  HDFFV-9984 - correct name of ref files
  HDFFV-9984 add missing ref file
  HDFFV-9984 - add missing ref files
  HDFFV-9984 Add options to merge/prune external links during repack
2020-08-15 16:30:55 -05:00
Allen Byrne
2d659de898 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '40bf112b56c90b7e90c9ec3d7a35a78d1d12288b':
  Trivialities noticed while merging things to 1.10
2020-08-15 12:04:56 -05:00
Dana Robinson
40bf112b56 Merge pull request #2773 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor to develop
* commit 'c5b176594082f6e5a8b6d9140f9db1f13530e087':
  Trivialities noticed while merging things to 1.10
2020-08-15 10:37:55 -05:00
Dana Robinson
c5b1765940 Trivialities noticed while merging things to 1.10 2020-08-15 07:32:50 -07:00
Allen Byrne
7603d2c8be HDFFV-9984 fix test logic 2020-08-14 16:39:40 -05:00
Allen Byrne
b196ddb4a8 HDFFV-9984 - correct name of ref files 2020-08-14 15:21:56 -05:00
Binh-Minh Ribler
16349c5fdd Fixed HDFFV-10933
Description:
    Updated the original fix by Kent Y. in commit
        200a77d8c3
    - used internal functions instead of public API
    - moved some code into the subroutine for a cleaner look.
    - added test to dsets.c
Platforms tested:
    Linux/64 (jelly)
2020-08-14 14:49:42 -05:00
Allen Byrne
a21ae8e56b HDFFV-9984 add missing ref file 2020-08-14 13:45:57 -05:00
Allen Byrne
646872cb8e HDFFV-9984 - add missing ref files 2020-08-14 13:45:31 -05:00
Allen Byrne
500d87fd1f HDFFV-9984 Add options to merge/prune external links during repack 2020-08-14 12:16:58 -05:00
mainzer
12bb6d7665 Tab to space conversions.
Re-applied tab to space conversions accidentally reverted in the
commit of the metadata cache skip list optimization, and performed
some additional tab to space conversions in passing.

Tested parallel / debug on Jelly.
2020-08-14 12:16:47 -05:00
Dana Robinson
044ee6f88c Merge pull request #2765 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor to develop
* commit '3feeb8ec20a7b08acdcd77f3e10c8c93818d890e':
  Fixes naming issues in H5VM inline functions
2020-08-14 08:57:32 -05:00
Dana Robinson
3feeb8ec20 Fixes naming issues in H5VM inline functions 2020-08-14 06:32:58 -07:00
Elena Pourmal
6b347a8d97 Merge pull request #2753 in HDFFV/hdf5 from ~EPOURMAL/hdf5_ep:develop to develop
* commit 'c6248cfb6975a6ecadf0259390247ce05dc13c4b':
  Addresseda Dana's comments from the pull request.
  Fixed several typos in the comments found by Larry during the review.
  The H5DSis_scale function was updated to return "not a dimension scale" (0) instead of failing (-1), when CLASS or DIMENSION_SCALE attributes are not written according to Dimension Scales Specification (HDFFV-10436).
2020-08-14 07:29:40 -05:00
Elena
c6248cfb69 Addresseda Dana's comments from the pull request. 2020-08-13 19:33:51 -05:00
Quincey Koziol
7524ead1e4 Merge pull request #2744 in HDFFV/hdf5 from remove_unneeded_tagging to develop
* commit 'cb5de74ac26158f6f541eed2e0dddb50d4d197d6':
  Remove redundant calls to set the metadata cache tag
2020-08-13 19:03:55 -05:00
Quincey Koziol
cb5de74ac2 Merge remote-tracking branch 'origin/develop' into remove_unneeded_tagging 2020-08-13 19:03:16 -05:00
Quincey Koziol
4f9542c332 Merge pull request #2739 in HDFFV/hdf5 from namespace_cleanup_01 to develop
* commit '3f46a380e084d83a84783383bdfbbd9a443e9f27':
  Correct typos w/HGOTO_DONE & HGOTO_ERROR
  Move H5T_vlen_reclaim to package scope
  Switch H5VM inline routines back to single underscope and put a comment in their header about this naming
  Clean up private / package / static namespace issues (function naming, which header file, FUNC_ENTER / LEAVE, etc).  Removed remaining personal email addresses from library source code (still needs cleaned from other directories). Misc. warning, style, and whitespace cleanup.
2020-08-13 19:00:56 -05:00
Dana Robinson
8dabc3f67f Merge pull request #2762 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor to develop
* commit 'b806f3e9acad6261438dacecbb11a87bcd644e72':
  Tweak to hide unused threadsafe callback in non-threadsafe builds
2020-08-13 13:43:14 -05:00
Dana Robinson
b806f3e9ac Tweak to hide unused threadsafe callback in non-threadsafe builds 2020-08-13 10:13:18 -07:00
mainzer
3202416936 Merge branch 'develop' into mdc_sl_opt 2020-08-13 11:31:16 -05:00
Allen Byrne
e291fd31fd Merge pull request #2756 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'c5cb9534b27760596bfd0c4cdf1db31fd2bac2a7':
  spelling
  HDFFV-11127 - force RTLD_LOCAL in dlopen
2020-08-13 06:26:08 -05:00
Allen Byrne
c5cb9534b2 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'baf7ebc4ca4eeecb11a607f420a5d5b95169eed5':
  Cleans warnings and cruft from ttsafe_attr_vlen.c
  Fixes Windows issues due to exposed pthread code
2020-08-13 06:25:44 -05:00
Allen Byrne
747fde00fe spelling 2020-08-13 06:22:50 -05:00
Dana Robinson
baf7ebc4ca Merge pull request #2760 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:ttsafe_windows_fix to develop
* commit '04b24163f7f08248a58d256371e088c8cc7816c8':
  Cleans warnings and cruft from ttsafe_attr_vlen.c
  Fixes Windows issues due to exposed pthread code
2020-08-12 21:55:13 -05:00
Dana Robinson
04b24163f7 Cleans warnings and cruft from ttsafe_attr_vlen.c 2020-08-12 15:21:38 -07:00
Dana Robinson
037bad4f72 Fixes Windows issues due to exposed pthread code 2020-08-12 15:07:15 -07:00
Allen Byrne
cecaed97f7 HDFFV-11127 - force RTLD_LOCAL in dlopen 2020-08-12 16:14:44 -05:00
Elena
752411bfda Fixed several typos in the comments found by Larry during the review. 2020-08-12 15:19:41 -05:00
Dana Robinson
7dcd7830ae Merge pull request #2754 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:testhdf5_ref_valgrind to develop
* commit '4f0283db788fc1a0db94e7825567210021b3b594':
  Fixes a size mismatch when copying old-style to new-style references
  Fixes memory leads in trefer.c
2020-08-12 13:54:09 -05:00
Dana Robinson
4f0283db78 Fixes a size mismatch when copying old-style to new-style references 2020-08-12 11:38:04 -07:00
Dana Robinson
ed51c0e302 Fixes memory leads in trefer.c 2020-08-12 09:52:10 -07:00
Quincey Koziol
f2681e36ae Merge remote-tracking branch 'origin/develop' into remove_unneeded_tagging 2020-08-12 11:17:52 -05:00
Quincey Koziol
3f46a380e0 Merge remote-tracking branch 'origin/develop' into namespace_cleanup_01 2020-08-12 11:17:27 -05:00
Elena
69cbfd4f9e Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/~epourmal/hdf5_ep into develop 2020-08-12 08:53:45 -05:00
Elena
768f8abb18 The H5DSis_scale function was updated to return "not a dimension scale" (0)
instead of failing (-1), when CLASS or DIMENSION_SCALE attributes are
not written according to Dimension Scales Specification (HDFFV-10436).
2020-08-12 08:40:11 -05:00
Dana Robinson
dca1733238 Merge pull request #2752 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor to develop
* commit '78c6be05a84f854074a4df2e10c15a56444e4015':
  Fixes the splitter VFD test on Windows.
2020-08-12 08:03:11 -05:00
Dana Robinson
78c6be05a8 Fixes the splitter VFD test on Windows. 2020-08-11 17:46:54 -07:00
Quincey Koziol
4083be1ff2 Merge remote-tracking branch 'origin/develop' into namespace_cleanup_01 2020-08-11 06:36:41 -05:00
Binh-Minh Ribler
1008afc457 Merge pull request #2746 in HDFFV/hdf5 from bmr_HDFFV-10591-2 to develop
Part of HDFFV-10591 fix.

* commit 'f863d4f970c2f54298a69f95bb6a15e710e1ed75':
  Addition to HDFFV-10591
2020-08-10 21:56:57 -05:00
Jordan Henderson
af390794f4 Merge pull request #2655 in HDFFV/hdf5 from ~JHENDERSON/hdf5:develop to develop
* commit '7c3d4402d730789173e413b48951fede5f6932f3':
  Fix issue in H5VL_wrap_register where datatype VOL objects are casted to H5T_t *
2020-08-10 17:36:07 -05:00
Quincey Koziol
c48d1b0ff4 Merge remote-tracking branch 'origin/develop' into remove_unneeded_tagging 2020-08-10 13:15:13 -05:00
Quincey Koziol
98c184e130 Merge remote-tracking branch 'origin/develop' into namespace_cleanup_01 2020-08-10 13:14:02 -05:00
Quincey Koziol
79a2e34f88 Correct typos w/HGOTO_DONE & HGOTO_ERROR 2020-08-10 12:58:20 -05:00
Dana Robinson
c0ff30d239 Merge pull request #2748 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:flock_windows_fix to develop
* commit '0ed65346033e7fbc71634d4911f9761e2ec145b2':
  Fixes flock Windows failure
2020-08-10 11:03:35 -05:00
Binh-Minh Ribler
f863d4f970 Addition to HDFFV-10591
Description
    Added missing parameter description and improved format.
Platforms tested:
    Linux/64 (jelly)
2020-08-09 18:13:42 -05:00
Quincey Koziol
e1a7a1acbe Remove redundant calls to set the metadata cache tag 2020-08-08 08:44:34 -05:00
Dana Robinson
0d69520c70 Merge pull request #2741 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor to develop
* commit 'a975a8d0eb3244d1a08afc80133a12279d1f90e5':
  Removes unsuffixed float warnings
2020-08-07 16:29:30 -05:00
Dana Robinson
0ed6534603 Fixes flock Windows failure 2020-08-07 12:40:04 -07:00
Dana Robinson
a975a8d0eb Removes unsuffixed float warnings
These warnings can only be addressed with gnu extensions.
2020-08-07 11:50:22 -07:00
Quincey Koziol
5f6eec0b20 Move H5T_vlen_reclaim to package scope 2020-08-07 11:08:19 -05:00
Quincey Koziol
a2340cec3b Merge remote-tracking branch 'origin/develop' into namespace_cleanup_01 2020-08-07 10:06:34 -05:00
Dana Robinson
51ab52ad42 Merge pull request #2740 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:code_tidy to develop
* commit '5ce2a178043d9749d30076a2e62249d9998c40ec':
  Removes staff email addresses from the repository Removes redundant C library headers from hl library
2020-08-07 00:23:53 -05:00
Dana Robinson
5ce2a17804 Removes staff email addresses from the repository
Removes redundant C library headers from hl library
2020-08-06 17:58:07 -07:00
Dana Robinson
72363de1c0 Merge pull request #2730 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:file_locking_squash_2 to develop
* commit '47ad0ac7237b464e939fe54dd129a151944d9706':
  Renames BEST-EFFORT to BEST_EFFORT for file locking env var
  Updated the file locking Fortran property list wrappers and added a test.
  Fixed missing parens in VFDs
  Minor change to header comments in file locking C++ changes.
  Squash merge of file locking fixes
2020-08-06 18:31:41 -05:00
Quincey Koziol
8fe3cece3c Switch H5VM inline routines back to single underscope and put a comment in their header about this naming 2020-08-06 17:46:40 -05:00
Dana Robinson
47ad0ac723 Renames BEST-EFFORT to BEST_EFFORT for file locking env var 2020-08-06 15:09:59 -07:00
Dana Robinson
7391f5f26c Merge branch 'develop' into file_locking_squash_2 2020-08-06 15:08:28 -07:00
Quincey Koziol
07e4ef9da4 Clean up private / package / static namespace issues (function naming, which
header file, FUNC_ENTER / LEAVE, etc).  Removed remaining personal email
addresses from library source code (still needs cleaned from other directories).
Misc. warning, style, and whitespace cleanup.
2020-08-06 15:56:04 -05:00
Jerome Soumagne
302dfeb11b Merge pull request #2715 in HDFFV/hdf5 from ~JSOUMAGNE/hdf5:fix_vlen_ref to develop
* commit 'ef6db167a86e6c065d46963dbd75cd325fe83813':
  H5R: fix encoding of references that are part of compound types
2020-08-06 14:22:29 -05:00
Dana Robinson
ee274b97f8 Merge pull request #2738 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor to develop
* commit '91ca481ff152e7a6b0326fcdb59e506141d2d32a':
  Reverts H5FDsplitter.c changes so they don't conflict with Quincey's big cleanup patch
  Fixes -Wnull-dereference warnings around the cache logging calls
  Fixes -Wnull-dereference warning in hl/src/H5DS.c
  Adds -Wnull-dereference to the warnings we ignore in flex/bison generated code (that we have no control over).
  Fixes warnings in the splitter VFD and tests
2020-08-06 14:11:16 -05:00
Dana Robinson
91ca481ff1 Reverts H5FDsplitter.c changes so they don't conflict with Quincey's
big cleanup patch
2020-08-06 08:41:27 -07:00
Dana Robinson
bd6f3bcdab Fixes -Wnull-dereference warnings around the cache logging calls 2020-08-05 23:14:40 -07:00
Dana Robinson
b1c78579da Fixes -Wnull-dereference warning in hl/src/H5DS.c 2020-08-05 22:56:15 -07:00
Dana Robinson
e327843f7a Adds -Wnull-dereference to the warnings we ignore in flex/bison
generated code (that we have no control over).
2020-08-05 22:51:34 -07:00
Dana Robinson
8e7f3e38a7 Fixes warnings in the splitter VFD and tests 2020-08-05 22:13:38 -07:00
Dana Robinson
482ade4657 Merge pull request #2737 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor to develop
* commit '65e92e1d56dd2e04ebe7b7713fee9e9e38cd8849':
  Warning fixes in tools and h5test.c
2020-08-05 21:35:41 -05:00
Dana Robinson
65e92e1d56 Warning fixes in tools and h5test.c 2020-08-05 17:15:57 -07:00
mainzer
33f35183cb When flushing, the metadata cache attempts to flush entries in increasing
address order.  To facilitate this, the metadata cache needs a list of
of dirty entries in increasing address order.  This is implemented via a
skip list of all dirty entries in the cache.

To date this skip list has been maintained at all times.

However, profiling indicates that we can avoid significant overhead by
constructing the skip list of dirty entries just before a flush, taking
it down afterwareds, and not maintaining it during normal operation.

This commit implements this optimization for both serial and parallel.

Tested serial and parallel, debug and production on charis and jelly.
2020-08-05 15:39:49 -05:00
Jordan Henderson
7c3d4402d7 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'f59bb712dec221a076728b6c582818bcf814d71a': (55 commits)
  Fixes indenting in tools test scripts
  Minor normalizations with 1.12 branch
  Fixed bad parens in H5trace.c
  Minor normalizations with hdf5_1_10
  Mingw copy disabled
  Warnings reduction in tools
  Correct reference file
  Correct h5diff filenames
  Fixed typos in error messages.
  Updated the Java tests to deal with H5Sset_extent_none changes
  Fixed additional typos in tselect.c comments.
  Fixes typo in tselect.c
  Updates H5Sset_extent_none() to set H5S_NULL
  Only one line needed to compare
  Revert err file
  Minor normalization with 1.10 branch
  Fix HDFFV-11120 and HDFFV-11121 (CVE-2018-13870 and CVE-2018-13869)
  revert error-stack enable
  Minor normalization with 1.10.
  Add release notes for tools
  ...
2020-08-04 20:43:37 -05:00
David Young
7b48e3409a Fix a bug in H5D__virtual_write_one to stop an assertion from failing
deep in H5Dwrite---project the *clipped* virtual selection instead of
the virtual selection:

assertion "((src_space)->select.num_elem) == ((dst_space)->select.num_elem)"
failed: file "../../../vchoi_fork/src/H5Sselect.c", line 2617, function
"H5S_select_project_intersection"

with this backtrace:

    at /home/dyoung/plain-nbsd/src/lib/libc/gen/raise.c:48
    at /home/dyoung/plain-nbsd/src/lib/libc/stdlib/abort.c:74
    file=0xae9e3e80 "../../../vchoi_fork/src/H5Sselect.c", line=2617,
    function=0xae9e4ca0 <__func__.15686> "H5S_select_project_intersection",
    failedexpr=0xae9e0e54 "((src_space)->select.num_elem) ==
((dst_space)->select.num_elem)") at
/home/dyoung/plain-nbsd/src/lib/libc/gen/assert.c:72
    dst_space=0xae26f0dc, src_intersect_space=0xae0b577c,
    new_space_ptr=0xbfb85fac, share_selection=true)
    at ../../../vchoi_fork/src/H5Sselect.c:2749
    type_info=type_info@entry=0xbfb86084,
    file_space=file_space@entry=0xae0b577c, source_dset=0xae24741c,
    io_info=<optimized out>) at ../../../vchoi_fork/src/H5Dvirtual.c:2784
    type_info=0xbfb86084, nelmts=256, file_space=0xae0b577c,
    mem_space=0xae26ec8c, fm=0xadf0401c)
    at ../../../vchoi_fork/src/H5Dvirtual.c:2873
    mem_type_id=216172782113783837, mem_space=0xae26ec8c,
    file_space=0xae0b577c, buf=0xae203808)
    at ../../../vchoi_fork/src/H5Dio.c:780
    mem_type_id=216172782113783837, mem_space_id=288230376151711754,
    file_space_id=288230376151711755, dxpl_id=792633534417207304,
    buf=0xae203808, req=0x0)
    at ../../../vchoi_fork/src/H5VLnative_dataset.c:206
    mem_type_id=216172782113783837, mem_space_id=288230376151711754,
    file_space_id=288230376151711755, dxpl_id=792633534417207304,
    buf=0xae203808, req=0x0, cls=<optimized out>)
    at ../../../vchoi_fork/src/H5VLcallback.c:2152
    mem_type_id=216172782113783837, mem_space_id=288230376151711754,
    file_space_id=288230376151711755, dxpl_id=792633534417207304,
    buf=0xae203808, req=0x0) at ../../../vchoi_fork/src/H5VLcallback.c:2186
    mem_type_id=216172782113783837, mem_space_id=288230376151711754,
    file_space_id=288230376151711755, dxpl_id=792633534417207304,
    buf=0xae203808) at ../../../vchoi_fork/src/H5Dio.c:313
2020-08-04 16:39:57 -05:00
David Young
fa7f8ad2f3 Improve code readability: extract common subexpressions into temporary
variables.
2020-08-04 16:28:04 -05:00
Dana Robinson
f59bb712de Merge pull request #2733 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor to develop
* commit 'be02566f49f953bc80c5b5018871138e201ea633':
  Fixes indenting in tools test scripts
2020-08-04 12:12:45 -05:00
Dana Robinson
be02566f49 Fixes indenting in tools test scripts 2020-08-04 09:14:36 -07:00
Dana Robinson
b2c90cc84e Updated the file locking Fortran property list wrappers and added
a test.
2020-08-03 18:43:19 -07:00
Dana Robinson
bd685b0e80 Fixed missing parens in VFDs 2020-08-03 15:47:46 -07:00
Dana Robinson
6e71992502 Minor change to header comments in file locking C++ changes. 2020-08-03 09:35:17 -07:00
Dana Robinson
bc1bed2c55 Squash merge of file locking fixes 2020-08-03 09:11:27 -07:00
Dana Robinson
33c0016eb6 Merge pull request #2727 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor to develop
* commit 'b9de162eae800a9459f0f1f07d2b043f73f8a907':
  Minor normalizations with 1.12 branch
  Fixed bad parens in H5trace.c
2020-08-02 18:22:54 -05:00
Dana Robinson
b9de162eae Minor normalizations with 1.12 branch 2020-08-01 10:26:22 -07:00
Dana Robinson
4486905131 Merge branch 'develop' into develop_minor 2020-08-01 10:26:11 -07:00
Dana Robinson
66ce984dee Merge pull request #2723 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor to develop
* commit '08dca47475f41e93348cf0c2ea708e787c232014':
  Minor normalizations with hdf5_1_10
2020-08-01 11:36:59 -05:00
Dana Robinson
64ffb37ff6 Fixed bad parens in H5trace.c 2020-07-31 12:23:57 -07:00
Dana Robinson
08dca47475 Minor normalizations with hdf5_1_10 2020-07-31 11:40:29 -07:00
Allen Byrne
5007f82225 Merge pull request #2722 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'fc57490e02835ddfce644135e93e893f77b379d3':
  Mingw copy disabled
2020-07-31 13:26:17 -05:00
David Young
651facc144 Use PRIu32 and "zu" formats. Delete some casts from size_t. 2020-07-31 10:34:27 -05:00
Allen Byrne
fc57490e02 Mingw copy disabled 2020-07-31 07:50:11 -05:00
Dana Robinson
50f404c887 Merge pull request #2720 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor to develop
* commit 'c8ba30d965f0342e5725a11cb562dfb22c8a8d24':
  Minor normalization with 1.10 branch
2020-07-30 20:16:17 -05:00
David Young
0bb87534a6 Merge remote-tracking branch 'hdffv/develop' into rebased-fprintf-experiment 2020-07-30 18:15:09 -05:00
David Young
3e91eeb270 I'm taking a guess that this code intended to point the 2-digit wide
hexadecimal octet values, not 2 character-wide pointers to the bytes.  The %02p
format, which is a GNU-ism, disagreed with GCC 8.3.0 and the option flags we
use.
2020-07-30 18:01:29 -05:00
David Young
ea21b3f89f %08p is not portable, it's a GNU-ism. Use %8p, instead. Squashes a GCC error. 2020-07-30 17:54:04 -05:00
David Young
ddd5e4a6c3 Add format string macros PRI[doxX]HID for hid_t and use PRIdHID. 2020-07-30 17:53:18 -05:00
David Young
36befb6bfe Use HDva_copy() and introduce a bunch of compatbility format-string constants
for uppercase hexadecimal strings, `PRIX...`.  Should fix the VS2010 errors
that Allen mentioned:

H5system.obj : error LNK2019: unresolved external symbol va_copy referenced in  function HDvasprintf                                                            [C:\autotest\hdf5trunk-StdShar-code-vs10\build\ctest\hdfbld\src\hdf5-shared.vcxproj]                                                                            2                                                                               ..\..\..\hdfsrc\test\h5test.c(2103): error C2146: syntax error : missing ')'    before identifier 'PRIX64'                                                      [C:\autotest\hdf5trunk-StdShar-code-vs10\build\ctest\hdfbld\test\hdf5_test-static.vcxproj]
2020-07-30 17:32:03 -05:00
Dana Robinson
c8ba30d965 Merge branch 'develop' into develop_minor 2020-07-30 15:23:54 -07:00
Allen Byrne
88aa0d5c76 Merge pull request #2718 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'ff4a9d0ec2e85cf15f769006e92e756a79869ab8':
  Warnings reduction in tools
2020-07-30 11:46:39 -05:00
Allen Byrne
ff4a9d0ec2 Warnings reduction in tools 2020-07-30 11:26:14 -05:00
Allen Byrne
2ece66e999 Merge pull request #2716 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '6a1cf090c6a2f970084c714a2f75a31d68a0a6a8':
  Correct reference file
  Correct h5diff filenames
2020-07-29 15:40:05 -05:00
Allen Byrne
6a1cf090c6 Correct reference file 2020-07-29 12:56:03 -05:00
Allen Byrne
1f7fa50137 Correct h5diff filenames 2020-07-29 08:24:30 -05:00
Binh-Minh Ribler
cf4e78b3c9 Merge pull request #2711 in HDFFV/hdf5 from bmr-HDFFV-11120 to develop
Fix HDFFV-11120 and HDFFV-11121 (CVE-2018-13870 and CVE-2018-13869)

* commit '707e30c6be1954c0027374124207e46caae68cbc':
  Fixed typos in error messages.
  Fix HDFFV-11120 and HDFFV-11121 (CVE-2018-13870 and CVE-2018-13869)
2020-07-28 19:08:19 -05:00
Jerome Soumagne
ef6db167a8 H5R: fix encoding of references that are part of compound types
Add corresponding test and some debug information
2020-07-28 16:36:19 -05:00
Binh-Minh Ribler
707e30c6be Fixed typos in error messages. 2020-07-28 12:20:13 -05:00
Dana Robinson
b201a78b33 Merge pull request #2714 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:h5s_set_extent_none to develop
* commit 'e4603ff8a171e82de6373ba6eddcf59d5eeab5aa':
  Updated the Java tests to deal with H5Sset_extent_none changes
  Fixed additional typos in tselect.c comments.
  Fixes typo in tselect.c
  Updates H5Sset_extent_none() to set H5S_NULL
2020-07-28 11:29:04 -05:00
Dana Robinson
e4603ff8a1 Updated the Java tests to deal with H5Sset_extent_none changes 2020-07-28 08:28:38 -07:00
Allen Byrne
10e59f6ba4 Merge pull request #2697 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '5857bb817019b8513f796c9564de3f1845f9a44a':
  Only one line needed to compare
  Revert err file
  revert error-stack enable
  Add release notes for tools
  add test file ext
  Correct file name in test
  Tools refactor
2020-07-28 07:13:18 -05:00
Dana Robinson
c78326eb92 Fixed additional typos in tselect.c comments. 2020-07-27 17:40:25 -07:00
Dana Robinson
dbba42c306 Fixes typo in tselect.c 2020-07-27 17:38:41 -07:00
Dana Robinson
91f5320ff0 Updates H5Sset_extent_none() to set H5S_NULL
The API call used to set the internal H5S_NO_CLASS value which
produced errors when such a dataspace was passed to many other API
calls.

Fixes HDFFV-11027
2020-07-27 17:32:01 -07:00
Allen Byrne
5857bb8170 Only one line needed to compare 2020-07-27 16:15:50 -05:00
Allen Byrne
799f2891c2 Revert err file 2020-07-27 15:47:10 -05:00
Dana Robinson
6e740457cc Minor normalization with 1.10 branch 2020-07-27 11:09:05 -07:00
Binh-Minh Ribler
303be6d7de Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/hdffv/hdf5 into bmr-HDFFV-11120 2020-07-22 16:15:47 -05:00
Binh-Minh Ribler
88e458ac43 Fix HDFFV-11120 and HDFFV-11121 (CVE-2018-13870 and CVE-2018-13869)
Description:
    When a buffer overflow occurred because a name length was corrupted
    and became very large, h5dump produced a segfault on one file and a
    memcpy parameter overlap on another file.  This commit added checks
    that detect a read pass the end of the buffer to prevent these error
    conditions.
Platforms tested:
    Linux/64 (jelly)
    SunOS 5.11 (emu)
2020-07-22 16:13:26 -05:00
Allen Byrne
e0b86594c2 revert error-stack enable 2020-07-20 16:46:49 -05:00
Allen Byrne
c0bc9d0e60 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '74e09473c825610d203565e5ed9deb156256d6ea':
  Minor normalization with 1.10.
2020-07-20 14:08:55 -05:00
Dana Robinson
74e09473c8 Merge pull request #2703 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor to develop
* commit '242459231b40a88741cbc85df4272914b5d8bed3':
  Minor normalization with 1.10.
2020-07-20 14:04:41 -05:00
Dana Robinson
242459231b Minor normalization with 1.10. 2020-07-20 11:50:10 -07:00
Allen Byrne
bae8107621 Add release notes for tools 2020-07-20 10:26:17 -05:00
Allen Byrne
a498b4ee79 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '9d3ea366d4bf3278e8260f4d5cdcc88cb4b61c56':
  Update MANIFEST. Add new test to Cmake.
  Fix for jira issue HDFFV-11080: (1) Patch up the file pointer when reading attribute of variable length datatype (2) Test to verify the fix when doing multiple threads
2020-07-17 14:39:25 -05:00
Vailin Choi
9d3ea366d4 Merge pull request #2693 in HDFFV/hdf5 from ~VCHOI/my_third_fork:bugfix/HDFFV-11080-heap-use-after-free-by-the-call to develop
* commit '3023b34272cc6ada84aebfa7441a6a55afa3621c':
  Update MANIFEST. Add new test to Cmake.
  Fix for jira issue HDFFV-11080: (1) Patch up the file pointer when reading attribute of variable length datatype (2) Test to verify the fix when doing multiple threads
2020-07-17 14:27:12 -05:00
Allen Byrne
a2f2887675 add test file ext 2020-07-17 13:22:26 -05:00
Allen Byrne
93c3d7b2f3 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'e36047b9b9839d1fd0b4009b7066b8b50b95bc6d':
  Minor normalization with 1.10
2020-07-17 10:40:49 -05:00
Dana Robinson
e36047b9b9 Merge pull request #2700 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor to develop
* commit '6388a6750ff1dc476b8631d26cd1742730df9fe8':
  Minor normalization with 1.10
2020-07-17 10:23:24 -05:00
Dana Robinson
6388a6750f Minor normalization with 1.10 2020-07-17 05:17:48 -07:00
vchoi
3023b34272 Update MANIFEST.
Add new test to Cmake.
2020-07-16 16:40:11 -05:00
Allen Byrne
247e2dc546 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '58d37c2295044ad1a201d6671cdd67ae380b84f8':
  H5R: fix type conversion of references within vlen type
2020-07-16 08:57:28 -05:00
Allen Byrne
e5145030a4 Correct file name in test 2020-07-16 08:31:48 -05:00
Jerome Soumagne
58d37c2295 Merge pull request #2694 in HDFFV/hdf5 from ~JSOUMAGNE/hdf5:fix_vlen_ref to develop
* commit 'aa9d2bd9bcce7a1a53c9d9cf519df5401041bb74':
  H5R: fix type conversion of references within vlen type
2020-07-15 21:02:14 -05:00
Jerome Soumagne
aa9d2bd9bc H5R: fix type conversion of references within vlen type
Update trefer.c with vlen test case
2020-07-15 21:00:36 -05:00
Allen Byrne
bac0fc6309 Tools refactor
Move error_stack setup to tools library
Add structure for h5dump properties
Eliminate duplicated h5diff functions
Use properties structure in place of argument lists.
2020-07-15 11:20:16 -05:00
Allen Byrne
900e75544e Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '806f5b5b2a280072f62f58c48e93acdc84f2b3ae':
  Removed POSIX #defines from configure on Solaris.
  Fallback to older time functions in new timer code.
2020-07-14 12:02:43 -05:00
Dana Robinson
806f5b5b2a Merge pull request #2692 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor to develop
* commit 'b8013380792a3503003f0a2bd60d7541656b03c7':
  Removed POSIX #defines from configure on Solaris.
  Fallback to older time functions in new timer code.
2020-07-14 11:46:33 -05:00
vchoi
4bc49d8b2b Fix for jira issue HDFFV-11080:
(1) Patch up the file pointer when reading attribute of variable length datatype
(2) Test to verify the fix when doing multiple threads
2020-07-14 10:56:33 -05:00
Dana Robinson
b801338079 Removed POSIX #defines from configure on Solaris. 2020-07-14 07:49:00 -05:00
Dana Robinson
4305d9677b Fallback to older time functions in new timer code. 2020-07-14 05:01:22 -07:00
Allen Byrne
9224c7abaa Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'b480d0a38b1e265c55c74262bf384d255a33e07b':
  Remove path to szip header file from AM_CPPFLAGS when configure check of libsz fails. Fix for HDFFV-10830.
  HDFFV-11116 Add option for install location of Fortran MOD files
2020-07-11 12:53:11 -05:00
Larry Knox
b480d0a38b Merge pull request #2686 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit '800f93f7c994f88dfa716746153ded4b1e690e3a':
  Remove path to szip header file from AM_CPPFLAGS when configure check of libsz fails. Fix for HDFFV-10830.
2020-07-11 08:07:10 -05:00
Allen Byrne
e3f5f59a61 Merge pull request #2684 in HDFFV/hdf5 from ~BYRN/hdf5_adb:feature/HDFFV-11116-trilabs-mod-location to develop
* commit '07a52ecb2ffa1d8d32f06db23470833899db3deb':
  HDFFV-11116 Add option for install location of Fortran MOD files
2020-07-11 07:10:31 -05:00
Larry Knox
800f93f7c9 Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/~lrknox/hdf5_lrk into develop 2020-07-10 13:44:08 -05:00
Larry Knox
0f3fd8d53d Remove path to szip header file from AM_CPPFLAGS when configure check of libsz fails.
Fix for HDFFV-10830.
2020-07-10 13:39:59 -05:00
Allen Byrne
b63c9e81dd Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'f5da9b1befeb81aa9f4d97df3ec606f801807420':
  Minor changes from normalization with 1.10
2020-07-09 16:14:34 -05:00
Dana Robinson
f5da9b1bef Merge pull request #2683 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_normalization to develop
* commit '127d1cfdf06e9c1cd264595c496a063848358a0a':
  Minor changes from normalization with 1.10
2020-07-09 15:50:43 -05:00
David Young
69d51065d2 Merge branch 'rebased-fprintf-experiment' into fprintf-develop 2020-07-09 13:57:53 -05:00
Allen Byrne
07a52ecb2f HDFFV-11116 Add option for install location of Fortran MOD files 2020-07-09 13:03:58 -05:00
Dana Robinson
127d1cfdf0 Minor changes from normalization with 1.10 2020-07-09 08:34:01 -07:00
Allen Byrne
4b12244091 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '188c43b8ee78d830c22f30fb9adb802e46722fcd':
  Change load path in libhdf5_java.dylib to unversioned libhdf5.dylib for junit tests on Macs.
  Fixes Autotools builds on Solaris after monotonic timer changes
2020-07-08 07:16:03 -05:00
Dana Robinson
188c43b8ee Merge pull request #2680 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor to develop
* commit 'd9105b2fcf04f36ea348bf9726a49c05cacc0b78':
  Fixes Autotools builds on Solaris after monotonic timer changes
2020-07-07 16:38:47 -05:00
Larry Knox
c5af29321b Merge pull request #2677 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit 'da607fe4638c9cc08f717fbe65e799c1676c17ff':
  Change load path in libhdf5_java.dylib to unversioned libhdf5.dylib for junit tests on Macs.
2020-07-07 16:27:45 -05:00
Larry Knox
da607fe463 Change load path in libhdf5_java.dylib to unversioned libhdf5.dylib for
junit tests on Macs.
2020-07-07 10:52:58 -05:00
David Young
a8dc4bd93f Always #define HDfprintf as fprintf in this header. I believe this will fix
the Windows build error that Allen reported.
2020-07-07 10:49:55 -05:00
David Young
922e465b46 Provide an HDvasprintf implementation only if it isn't #defined. This should
fix the mingw compilation issue that Allen reported.
2020-07-07 10:49:55 -05:00
David Young
62dbb80cb6 Fix va_list usage in the vasprintf(3) implementation. 2020-07-07 10:49:55 -05:00
David Young
90466630ea Promote format-string warnings to errors. 2020-07-07 10:49:55 -05:00
David Young
f68226ed89 Use the portable -eq operator instead of the bash-ism ==. Fixes the
tests on NetBSD, where /bin/sh != bash.
2020-07-07 10:49:55 -05:00
David Young
d553bd4bf3 Restore a literal percent sign ("%%") that I accidentally deleted. 2020-07-07 10:49:55 -05:00
David Young
9159b93da6 Fix code that made GCC complain about a NULL or unsigned char * arguments for
"%s".

XXX The duplication between test/ros3.c test/s3comms.c is really annoying.
2020-07-07 10:49:55 -05:00
David Young
345443f9ad Take pains to provide UINT64_MAX in all conditions. 2020-07-07 10:49:55 -05:00
David Young
c6fcec46c9 Correct a couple of format strings. 2020-07-07 10:49:55 -05:00
David Young
23bbe96c75 Use PRIuHSIZE and PRIXHSIZE for portability. 2020-07-07 10:49:55 -05:00
David Young
4e41ca05aa Delete extra argument, there is no formatting for it. 2020-07-07 10:49:55 -05:00
David Young
ca8a73923f Fix fprintf arguments: "%p" expects a void * argument. 2020-07-07 10:49:55 -05:00
David Young
307cb5da48 Squash my changes on branch fprintf-experiment into one commit for
reapplication to my new warnings branch, `warnings-again`.  These
changes are included:

commit 915551b7bf64e777dd2007386ec77b1d117770da
Merge: 63858c2 a8892bb
Author: David Young <dyoung@hdfgroup.org>
Date:   Mon Nov 25 17:39:49 2019 -0600

    Merge remote-tracking branch 'hdf5/develop' into fprintf-experiment

commit a8892bb42d
Merge: 5c911d8 f907b51
Author: David Young <dyoung@hdfgroup.org>
Date:   Mon Nov 25 17:33:54 2019 -0600

    Merge pull request #2055 in HDFFV/hdf5 from ~DYOUNG/vchoi_fork:add-werror-and-squash-some to develop

    * commit 'f907b511d06612dafc7814a7c30f2f3d2b76d52b':
      Oops, remove more C99 designated initializers for VS 2010 compatibility.

commit 63858c22e168acaec0af8ced6641f26102cc6bb0
Merge: 20ae787 5c911d8
Author: David Young <dyoung@hdfgroup.org>
Date:   Mon Nov 25 17:04:42 2019 -0600

    Merge remote-tracking branch 'hdf5/develop' into fprintf-experiment

commit 5c911d8baf
Merge: b8a5671 62208b0
Author: David Young <dyoung@hdfgroup.org>
Date:   Mon Nov 25 16:58:27 2019 -0600

    Merge pull request #2030 in HDFFV/hdf5 from ~DYOUNG/vchoi_fork:add-werror-and-squash-some to develop

    * commit '62208b056a09c01855fbac7f75146be58ad6bfe5': (44 commits)
      Add an #include to get a function declaration.
      Don't use C99 designated initializers, they're not compatible with Visual Studio 2010.
      Quiet some more maybe-uninitialized warnings---each is a false positive, *sigh*.  This is more code that may not compile with VS2010, *sigh sigh*.
      Always warn on maybe-uninitialized.  -Wincompatible-pointer-types was not available until GCC 5, so enable it only if that's the GCC version we're using.
      Only promote maybe-uninitialized warnings to errors on GCC 8.  Even on GCC 8, there may be false positives at low optimization levels?  I need to check.
      Only use -Werror=cast-function-type with GCC 8 and later.
      Put all of the -W options back into the order I found them in so that it's easier to compare old and new config/gnu-flags.
      Add new source files to CMakeLists.txt.
      Mention the -Werror= flags in libhdf5.settings.in.
      free -> HDfree
      Promote decleration-after-statement warnings to errors.
      Quiet decleration-after-statement warnings.
      Move a statement under some declarations since some vintages of Visual Studio don't like declarations after statements.
      Document H5D__chunk_mem_xfree_wrapper().
      Undo accidental test deletion.
      Oops, delete a debug printf that snuck in here.
      Undo my changes to the HD macros, hadn't really intended those to be on this branch....
      Make errors of some more warnings.  Move disabled warnings to DEVELOPER_WARNING_CFLAGS.  Put just one warning option on a line, and sort some of the options.
      Cast to the parameter type, H5VL_token_t *, instead of to unsigned char *.
      Change hdset_reg_ref_t and H5R_ref_t from arrays of unsigned char to structs containing those arrays.  Encapsulating the arrays in this way makes it easier to write and think about pointers to these types, casts to/from these types, etc.
      ...

commit 20ae7877e33931b95e8c3502b027d6c3fe94a11f
Merge: 46f8c61 edd5297
Author: David Young <dyoung@hdfgroup.org>
Date:   Fri Nov 22 15:34:09 2019 -0600

    Merge remote-tracking branch 'origin/add-werror-and-squash-some' into fprintf-experiment

commit 46f8c613d5117a8be5bc8385a072daa0b4262f06
Author: David Young <dyoung@hdfgroup.org>
Date:   Fri Nov 22 15:29:00 2019 -0600

    GCC really wants us to use `ll` to format `long long`, so try to make that work
    before any other format modifier.  Seems like we're not compiling the autoconf
    test program with -Werror=format ?  Probably should.

commit eee35b8ef3759c391327cd48a9b3c56b6f8abc99
Author: David Young <dyoung@hdfgroup.org>
Date:   Fri Nov 22 15:28:05 2019 -0600

    It's hard to know just how wide an HDoff_t will be, and I don't think POSIX or
    C standards provide a PRI macro for it, so cast to intmax_t and format using
    PRIdMAX.

commit 86eab12df7a89b546a38e99f8178dd2adbcb3433
Author: David Young <dyoung@hdfgroup.org>
Date:   Fri Nov 22 15:26:25 2019 -0600

    URemove some casts.se the right format string for the argument.  Here and there
    stop casting a printf argument.

commit f722f7cbecbaa99449941484b014426f62f1bed5
Merge: 58e3743 6d5ec83
Author: David Young <dyoung@hdfgroup.org>
Date:   Fri Nov 22 14:44:16 2019 -0600

    Merge branch 'add-werror-and-squash-some' into fprintf-experiment

commit 58e3743b7faa9836606ee91798fe80dfc0040da7
Author: David Young <dyoung@hdfgroup.org>
Date:   Wed Nov 20 21:07:21 2019 -0600

    Remove custom HDfprintf implementation, using the standard library's,
    instead.  Take a swipe at repairing fprintf format strings, mainly
    replacing "%Hu" with "%" PRIuHSIZE, "%a" with "%" PRIuHADDR, "%Zu" with
    "%zu".

    Here and there remove an awkward cast of a printf argument to `long
    long` and use PRI[doux]8, PRI[doux]32, or PRI[doux]64, instead.

    Change occurrences of "%t" to "%s" and perform a suitable change of
    argument, `cond` -> `cond ? "TRUE" : "FALSE"`.

    Some occurrences of %Hu, %a, and %t remain, they just weren't flagged by
    the compiler because of #ifdef'age.

commit d4366909293fa970c23512ac80e5d865d76cddbf
Author: David Young <dyoung@hdfgroup.org>
Date:   Wed Nov 20 20:54:32 2019 -0600

    Promote format-string warnigns to errors.
2020-07-07 10:49:55 -05:00
Dana Robinson
d9105b2fcf Fixes Autotools builds on Solaris after monotonic timer changes
clock_gettime() wasn't being found, so some configure changes
were needed to set an appropriate POSIX level and use a C99
compiler. This required several compiler flag changes.

Autotools only
2020-07-06 19:22:26 -05:00
Allen Byrne
c80d6fe451 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'd52b27ad1d8142945a92310b79ab79171e76a3c3':
  Address CMake and deprecated API build failures from monotonic timer patch.
2020-07-03 13:56:43 -05:00
Quincey Koziol
d52b27ad1d Merge pull request #2673 in HDFFV/hdf5 from monotonic_timer_fix_01 to develop
* commit '13c9b3768e6193db89d06faf59194b77d7747f45':
  Address CMake and deprecated API build failures from monotonic timer patch.
2020-07-03 11:58:55 -05:00
Quincey Koziol
13c9b3768e Address CMake and deprecated API build failures from monotonic timer patch. 2020-07-03 11:28:12 -05:00
Allen Byrne
6b66c969f5 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '7443e5d53d1c6f15e095de7c44bcc3a5a46d9cf7':
  Add missing '"'.
2020-07-03 09:36:16 -05:00
Larry Knox
7443e5d53d Merge pull request #2672 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit '870e3ba3f45e90a43ea824d67cc8562aa63a3f6f':
  Add missing '"'.
2020-07-02 18:49:36 -05:00
Larry Knox
870e3ba3f4 Add missing '"'. 2020-07-02 18:20:36 -05:00
Allen Byrne
5356fb1687 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '4c2071bfd3270dc3a688914b4a058147b94b7023':
  Lib files needed are now copied to a subdirectory in the java/test directory, and on Macs the loader path for libhdf5.xxxs.so is changed in the temporary copy of libhdf5_java.dylib. Fix for HDFFV-11063
2020-07-02 14:47:13 -05:00
Allen Byrne
4c2071bfd3 Merge pull request #2671 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '88e8597cdef826c1087e4ec1383657a91dcb2a43':
  Small changes discovered with mingw and windows defines moved
2020-07-02 14:46:43 -05:00
Larry Knox
68d6981156 Merge pull request #2670 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit 'fc69de0e8ae30e80c1c3c542b156226a75444525':
  Lib files needed are now copied to a subdirectory in the java/test directory, and on Macs the loader path for libhdf5.xxxs.so is changed in the temporary copy of libhdf5_java.dylib. Fix for HDFFV-11063
2020-07-02 14:14:53 -05:00
Allen Byrne
88e8597cde Small changes discovered with mingw and windows defines moved 2020-07-02 13:52:03 -05:00
Larry Knox
fc69de0e8a Lib files needed are now copied to a subdirectory in the java/test
directory, and on Macs the loader path for libhdf5.xxxs.so is changed
in the temporary copy of libhdf5_java.dylib.
Fix for HDFFV-11063
2020-07-02 11:29:12 -05:00
Quincey Koziol
d05b58b5d4 Merge pull request #2668 in HDFFV/hdf5 from monotonic_timer to develop
* commit '7371c83f9777b34b31909e99e052398b93c31bed':
  Remove non-existent example
  Add new source files to CMake build
  Clean up warnings
  va_arg -> HDva_arg
  Refactor code to remove remaining checks for H5_HAVE_GETTIMEOFDAY scattered around in various places.  Also clean up iopipe.c.
  Correct mistake in H5_now_usec calculation for clock_gettime.
  Remove detection for mach/mach/time.h, since we're no longer using the time routines from that header.
  Update H5_now_usec to prefer using clock_gettime.
  Changes to make timers within the library monotonic.
2020-07-02 10:36:44 -05:00
Jake Smith
7cbb5fe2d1 Merge pull request #2669 in HDFFV/hdf5 from ~JAKE.SMITH/hdf5:bugfix/HDftell_macro_typo to develop
* commit 'ef05e68c38d2086c6f262744b4087f65a6e58957':
  Fix typo in HDftell macro definition: 'ftello -> ftell'
2020-06-30 13:36:01 -05:00
Quincey Koziol
7371c83f97 Remove non-existent example 2020-06-30 08:53:17 -05:00
Quincey Koziol
c005b8f52b Merge remote-tracking branch 'origin/develop' into monotonic_timer 2020-06-30 08:52:49 -05:00
Binh-Minh Ribler
267ff9065b Merge pull request #2609 in HDFFV/hdf5 from ~BMRIBLER/hdf5-bmr:develop to develop
Fix HDFFV-11053 (CVE-2020-10810)

* commit 'b155a777629e991374fa2f8609719cb861de4cc2':
  Changed wording in comment.
  - added comment to explain a kluge - added the associated entry to release notes
  Fix HDFFV-11053
2020-06-30 01:04:24 -05:00
Binh-Minh Ribler
b155a77762 Changed wording in comment. 2020-06-30 00:57:46 -05:00
Larry Knox
23cc4ce636 Merge pull request #2667 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit '32c483cb86031962a09ecdb49dcb331d28dddee9':
  Copy lib files for junit.sh to temporary subdirectory of <build directory>/java/test instead of to the prefix/lib directory.  Fix for HDFFV-11063.
2020-06-29 21:18:27 -05:00
Binh-Minh Ribler
7c006fd761 - added comment to explain a kluge
- added the associated entry to release notes
2020-06-29 14:16:35 -05:00
Jacob Smith
ef05e68c38 Fix typo in HDftell macro definition: 'ftello -> ftell' 2020-06-29 12:09:07 -05:00
Binh-Minh Ribler
785a1cef0c Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '30776671fb0a27a98b0640aa968f850241a862ce': (31 commits)
  * Fix intermittent error with Splitter VFD.     Mismatch in time of test file creation was creating false negatives.
  Added note for HDFFV-10591.
  Fix HDFFV-10591
  Reduce overhead for H5open, which is involved in the public symbols like H5T_NATIVE_INT, etc.
  Remove unnecessary version conditions for Clang compilers.
  Fix for HDFFV-10961: Couple changes to the tests' usage output files for h5clear.
  Fix for HDFFV-10961: add description to usage for --increment option.
  Add c++ to --enable-sanitize-checks option.
  Remove duplicate entries in MANIFEST.
  Make changes to CMake CompilerFlags.cmake files so extra flags are loaded for non-GNU compilers.
  Fix MANIFEST
  Add tests for all version to H5_NO_DEPRECATED_SYMBOLS section and to section for current version, with and without default API version flags.
  HDFFV-11000:  update-testh5cc.sh.in to test sample versioned functions in HDF5 1.10, 1.12 and develop.
  Remember the info for the last ID looked up for a given ID type.
  Eliminate allocating file & memory offset & length arrays when performing I/O on a single element.
  Update new clang files to not pick up clang as vendor for pgCC. Add new files to MANIFEST Temporary demotion of 2 -Werror warning flags that fail on macos 10.12 Remove Production flag unknown to Apple clang.
  Remove redundant metadata cache tagging from some low-level internal chunk functions.  The metadata cache tagging has already been done by routines further up the call stack.
  Clean up code to get clang version in config/linux-gnulibc1
  Minor normalizations with HDF5 1.10.
  Add flags from config/clang-warnings/*general files to H5 C and CXX flags for all versions of Clang and Clang++ compilers. Switched from cut to awk in testcheck_version.sh.in to avoid dependence on tab vs. " " in version definitions in H5public.h.
  ...
2020-06-29 11:53:55 -05:00
Quincey Koziol
c5258211e7 Add new source files to CMake build 2020-06-27 22:14:52 -05:00
Quincey Koziol
71b601d0d3 Clean up warnings 2020-06-27 20:02:51 -05:00
Larry Knox
32c483cb86 Copy lib files for junit.sh to temporary subdirectory of <build
directory>/java/test instead of to the prefix/lib directory.  Fix for
HDFFV-11063.
2020-06-27 15:39:53 -05:00
Quincey Koziol
ee4eb09b5f va_arg -> HDva_arg 2020-06-27 13:44:24 -05:00
Quincey Koziol
ce50e34c58 Merge remote-tracking branch 'origin/develop' into monotonic_timer 2020-06-27 09:49:49 -05:00
Quincey Koziol
7bdab523b3 Refactor code to remove remaining checks for H5_HAVE_GETTIMEOFDAY scattered around in various places. Also clean up iopipe.c. 2020-06-27 09:47:55 -05:00
Quincey Koziol
e767f44e95 Merge remote-tracking branch 'origin/develop' into monotonic_timer 2020-06-26 18:57:38 -05:00
Jake Smith
30776671fb Merge pull request #2665 in HDFFV/hdf5 from ~JAKE.SMITH/hdf5:bugfix/splitter_file_bytes_check to develop
* commit 'e1215177b6b87887233a90992a0264f11d78b88c':
  * Fix intermittent error with Splitter VFD.     Mismatch in time of test file creation was creating false negatives.
2020-06-26 11:00:10 -05:00
Jacob Smith
e1215177b6 * Fix intermittent error with Splitter VFD.
Mismatch in time of test file creation was creating false negatives.

    Add file-duplication routine: `h5_duplicate_file_by_bytes()`.

* Change library calls in `h5test.c:h5_compare_file_bytes()` to their HD-prefixed equivalents.
2020-06-25 12:24:05 -05:00
Binh-Minh Ribler
a08ab621fe Merge pull request #2654 in HDFFV/hdf5 from bmr_HDFFV-10591 to develop
Fixed HDFFV-10591

* commit '7d58d115079d286a566207c529e59bbccc952b03':
  Added note for HDFFV-10591.
  Fix HDFFV-10591
2020-06-21 22:48:21 -05:00
Binh-Minh Ribler
7d58d11507 Added note for HDFFV-10591. 2020-06-19 16:08:37 -05:00
Jordan Henderson
ee6f7d1c96 Fix issue in H5VL_wrap_register where datatype VOL objects are casted to H5T_t * 2020-06-19 12:14:10 -05:00
Binh-Minh Ribler
c12da4884f Fix HDFFV-10591
Description:
    h52gif produced a segfault when a buffer overflow occurred because
    the data size was corrupted and became very large.  This commit added
    a check on the data size against the buffer size to prevent the segfault.
    It also added error reporting to h52gif to display an error message
    instead of silently exiting when the failure occurred.
Platforms tested:
    Linux/64 (jelly)
    SunOS 5.11 (emu)
2020-06-19 10:53:32 -05:00
Quincey Koziol
6ffe9af32f Merge pull request #2648 in HDFFV/hdf5 from opt_h5open_overhead to develop
* commit '49fad72f3e003e1e2d7d72edd9b7ec47c802d9f1':
  Reduce overhead for H5open, which is involved in the public symbols like H5T_NATIVE_INT, etc.
2020-06-18 15:19:24 -05:00
Quincey Koziol
49fad72f3e Reduce overhead for H5open, which is involved in the public symbols like H5T_NATIVE_INT, etc. 2020-06-16 12:30:08 -05:00
David Young
d20000ec51 Merge pull request #2610 in HDFFV/hdf5 from ~DYOUNG/werror:hdffv-11060-examples-destdir to develop
* commit '4cebd8aa6c965fe2e5dde6dbff36b2be3ca58bf1':
  Make examples installation respect DESTDIR.   Fixes HDFFV-11060.
2020-06-16 08:59:55 -05:00
Jake Smith
b718bf567f Merge pull request #2615 in HDFFV/hdf5 from ~JAKE.SMITH/hdf5:bugfix/splitter_valgrind_patch to develop
* commit '6462c67b6578e48c1ef6d847be59c0b5e3598a50':
  Patch a few holes in the Splitter VFD implementation.
2020-06-15 14:36:41 -05:00
Larry Knox
70011fbfcb Merge pull request #2646 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit '998c6470d78e14228695419c3b514c35ecf3d69e':
  Remove unnecessary version conditions for Clang compilers.
2020-06-12 15:06:39 -05:00
Larry Knox
998c6470d7 Remove unnecessary version conditions for Clang compilers. 2020-06-12 11:54:58 -05:00
Vailin Choi
f295ed1166 Merge pull request #2643 in HDFFV/hdf5 from ~VCHOI/my_third_fork:bugfix/HDFFV-10961-h5clear-usage-statement-give to develop
* commit '01b632c69ca1c97c2b0e1aaeeab1dd2362b580a6':
  Fix for HDFFV-10961: Couple changes to the tests' usage output files for h5clear.
  Fix for HDFFV-10961: add description to usage for --increment option.
2020-06-11 16:30:42 -05:00
vchoi
01b632c69c Fix for HDFFV-10961:
Couple changes to the tests' usage output files for h5clear.
2020-06-11 14:12:38 -05:00
vchoi
c597bd50d2 Fix for HDFFV-10961: add description to usage for --increment option. 2020-06-11 13:17:35 -05:00
Larry Knox
3650841a0a Merge pull request #2636 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:HDFFV-11000-update-testh5cc.sh.in-for-version to develop
* commit '5c0bd670d6e9919c463fbc05de99e2ba55b0761e':
  Add tests for all version to H5_NO_DEPRECATED_SYMBOLS section and to section for current version, with and without default API version flags.
  HDFFV-11000:  update-testh5cc.sh.in to test sample versioned functions in HDF5 1.10, 1.12 and develop.
2020-06-10 20:15:41 -05:00
Larry Knox
1e6b6b4bc6 Merge pull request #2639 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit 'a33667faf226f5d8c9633bf537893e8fce1bf1f6':
  Add c++ to --enable-sanitize-checks option.
2020-06-10 18:53:45 -05:00
buildbot
a33667faf2 Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/~lrknox/hdf5_lrk into develop 2020-06-10 16:53:59 -05:00
buildbot
715055bfdd Add c++ to --enable-sanitize-checks option. 2020-06-10 16:52:46 -05:00
Larry Knox
a56da14860 Merge pull request #2633 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit '20eab963899841c9a003baebead8e3bc07d9e127':
  Remove duplicate entries in MANIFEST.
  Make changes to CMake CompilerFlags.cmake files so extra flags are loaded for non-GNU compilers.
  Update new clang files to not pick up clang as vendor for pgCC. Add new files to MANIFEST Temporary demotion of 2 -Werror warning flags that fail on macos 10.12 Remove Production flag unknown to Apple clang.
2020-06-10 15:18:36 -05:00
Larry Knox
20eab96389 Remove duplicate entries in MANIFEST. 2020-06-10 15:17:32 -05:00
Larry Knox
63f1a713cc Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '7f0c0134166275c0745e0e65f9d81b4de72d5ce2':
  Fix MANIFEST
  Remember the info for the last ID looked up for a given ID type.
  Eliminate allocating file & memory offset & length arrays when performing I/O on a single element.
  Remove redundant metadata cache tagging from some low-level internal chunk functions.  The metadata cache tagging has already been done by routines further up the call stack.
2020-06-10 15:12:58 -05:00
Dana Robinson
7f0c013416 Merge pull request #2637 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor to develop
* commit '1e038bf49588d163762965c7a15fb76e3a689ef2':
  Fix MANIFEST
2020-06-10 14:30:21 -05:00
Larry Knox
77efb340a1 Make changes to CMake CompilerFlags.cmake files so extra flags are
loaded for non-GNU compilers.
2020-06-10 14:25:10 -05:00
Dana Robinson
1e038bf495 Fix MANIFEST 2020-06-10 11:40:59 -07:00
Quincey Koziol
02aea018a1 Merge pull request #2635 in HDFFV/hdf5 from cache_last_id_info to develop
* commit '0ef32f07fb9e8fb6063f3318425506047454d6f4':
  Remember the info for the last ID looked up for a given ID type.
2020-06-10 13:32:14 -05:00
Quincey Koziol
030cd9fab5 Merge pull request #2634 in HDFFV/hdf5 from opt_single_selection_io to develop
* commit 'a8a4e9f27b67ae2e22970e42859225adcc2e5cbb':
  Eliminate allocating file & memory offset & length arrays when performing I/O on a single element.
2020-06-10 13:31:30 -05:00
Quincey Koziol
04ed567bd7 Merge pull request #2632 in HDFFV/hdf5 from remove_redundant_chunk_tags to develop
* commit '9e8899c3b47a2041242dc4539ca8b1c5e151a371':
  Remove redundant metadata cache tagging from some low-level internal chunk functions.  The metadata cache tagging has already been done by routines further up the call stack.
2020-06-10 13:31:12 -05:00
Larry Knox
5c0bd670d6 Add tests for all version to H5_NO_DEPRECATED_SYMBOLS section
and to section for current version, with and without default
API version flags.
2020-06-10 09:41:07 -05:00
Larry Knox
e66cec6222 HDFFV-11000: update-testh5cc.sh.in to test sample versioned functions
in HDF5 1.10, 1.12 and develop.
2020-06-09 22:11:25 -05:00
Quincey Koziol
0ef32f07fb Remember the info for the last ID looked up for a given ID type. 2020-06-09 18:38:04 -05:00
Quincey Koziol
a8a4e9f27b Eliminate allocating file & memory offset & length arrays when performing I/O on a single element. 2020-06-09 16:24:48 -05:00
Larry Knox
32c353ed43 Update new clang files to not pick up clang as vendor for pgCC.
Add new files to MANIFEST
Temporary demotion of 2 -Werror warning flags that fail on macos 10.12
Remove Production flag unknown to Apple clang.
2020-06-09 16:12:31 -05:00
Quincey Koziol
9e8899c3b4 Remove redundant metadata cache tagging from some low-level internal chunk functions. The metadata cache tagging has already been done by routines further up the call stack. 2020-06-09 15:48:14 -05:00
Larry Knox
bc51dea95a Merge pull request #2631 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit 'b942a4d8a3e27317cac50ce37ff5302d477664d8':
  Clean up code to get clang version in config/linux-gnulibc1
2020-06-08 16:24:49 -05:00
Larry Knox
b942a4d8a3 Clean up code to get clang version in config/linux-gnulibc1 2020-06-08 15:52:13 -05:00
Larry Knox
23d887dc22 Merge pull request #2623 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit 'c7626f79fdee4eee13925e240ef41e61f3367eab':
  Add flags from config/clang-warnings/*general files to H5 C and CXX flags for all versions of Clang and Clang++ compilers. Switched from cut to awk in testcheck_version.sh.in to avoid dependence on tab vs. " " in version definitions in H5public.h.
  Add files for adding warning flags for clang compilers in autotools configure.
2020-06-08 11:42:37 -05:00
Dana Robinson
56ab55be3f Merge pull request #2630 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor to develop
* commit '87695c999ad7ea348ee6dc03b46b0bd345f7d7df':
  Minor normalizations with HDF5 1.10.
2020-06-08 08:27:52 -05:00
Larry Knox
c7626f79fd Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'aa338c3a87a4544ccb164832422e3e2462a57b88':
  Detect when there's the same-shaped selection of a single block of elements on both selections, but with different selection types (i.e. one selection defined as an 'all' type and the other as a hyperslab or point type), without falling into the generic selection iteration case.
  Normalization of H5T.c with 1.10.
  Normalization of H5D.c with 1.10.
2020-06-07 15:37:38 -05:00
Dana Robinson
87695c999a Minor normalizations with HDF5 1.10. 2020-06-07 03:12:36 -07:00
Larry Knox
de9491e365 Add flags from config/clang-warnings/*general files to H5 C and CXX flags for all versions of Clang and Clang++ compilers.
Switched from cut to awk in testcheck_version.sh.in to avoid dependence
on tab vs. " " in version definitions in H5public.h.
2020-06-06 14:36:44 -05:00
Quincey Koziol
aa338c3a87 Merge pull request #2626 in HDFFV/hdf5 from tiny_shape_same_opt to develop
* commit 'de54cff50c419751e0080b6a732facac43f87ba6':
  Detect when there's the same-shaped selection of a single block of elements on both selections, but with different selection types (i.e. one selection defined as an 'all' type and the other as a hyperslab or point type), without falling into the generic selection iteration case.
2020-06-06 10:06:04 -05:00
Quincey Koziol
de54cff50c Detect when there's the same-shaped selection of a single block of elements on
both selections, but with different selection types (i.e. one selection defined
as an 'all' type and the other as a hyperslab or point type), without falling
into the generic selection iteration case.
2020-06-05 12:36:20 -05:00
Dana Robinson
8a2c6d868b Merge pull request #2625 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor to develop
* commit 'e22d126639e139518e4b5f1ac35a008ec429f698':
  Normalization of H5T.c with 1.10.
  Normalization of H5D.c with 1.10.
2020-06-04 11:26:19 -05:00
Dana Robinson
e22d126639 Normalization of H5T.c with 1.10. 2020-06-03 23:34:16 -07:00
Dana Robinson
a0d9959b43 Normalization of H5D.c with 1.10. 2020-06-03 23:07:14 -07:00
Larry Knox
f7bc306c19 Add files for adding warning flags for clang compilers in autotools
configure.
2020-06-02 15:53:58 -05:00
Quincey Koziol
0b9979f075 Merge pull request #2622 in HDFFV/hdf5 from fix_h5doappend to develop
* commit 'c6b836527f31a731e022083ebe1b9b18f8cdd29a':
  Eliminate unneccesary creation of DXPL
2020-06-02 15:16:46 -05:00
Quincey Koziol
c6b836527f Eliminate unneccesary creation of DXPL 2020-06-02 14:34:00 -05:00
Dana Robinson
1c8b4e9fab Merge pull request #2621 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor to develop
* commit 'cc15d1039af86deb77c9dc9188412ce361599b17':
  Normalizations with 1.10 branch.
2020-06-02 09:57:19 -05:00
Dana Robinson
cc15d1039a Normalizations with 1.10 branch. 2020-06-02 07:33:00 -07:00
Dana Robinson
1007702f87 Merge pull request #2619 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor to develop
* commit '5f0eed3fdc4fff9b714b5aa3d0d43114a95c0f29':
  Normalization with hdf5_1_10
2020-06-01 15:03:33 -05:00
Dana Robinson
5f0eed3fdc Normalization with hdf5_1_10 2020-06-01 11:37:52 -07:00
Jacob Smith
6462c67b65 Patch a few holes in the Splitter VFD implementation.
* Missing logfile close on driver-open failure.
* Initialize empty string in test/vfd (logfile path in W/O compat check).
2020-05-29 14:27:14 -05:00
Dana Robinson
f745476aa5 Merge pull request #2611 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor to develop
* commit '6358a2749899948f2cd03d0ce76e5a5e61666a74':
  Minor tweaks to testhdf5 code after normalization with 1.10.
2020-05-28 07:12:07 -05:00
Dana Robinson
6358a27498 Minor tweaks to testhdf5 code after normalization with 1.10. 2020-05-27 17:41:59 -07:00
Dana Robinson
e28216f023 Merge pull request #2608 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor to develop
* commit '03ab219996e562502e90c508e669141b0e601e54':
  Removed trailing space from Fortran files.
2020-05-26 23:11:18 -05:00
Dana Robinson
03ab219996 Removed trailing space from Fortran files. 2020-05-26 14:01:09 -07:00
Binh-Minh Ribler
7a4d7da14a Fix HDFFV-11053
Description:
    A superblock pointer was set to a temporary structure, as a kluge,
    and meant to be reset back to NULL after the processing was completed.
    However, in the case of failure before the completion, this setting
    caused the superblock pointer to be unpinned twice in the error
    recovery process.  As a result, that generated a segfault in h5clear.
    The fix resets the superblock pointer to NULL after H5F__super_ext_remove_msg
    fails so that h5clear can fail properly.

    Note: After the fix, when built in debug mode, there will be an
    assertion failure with the user's file, which appeared to be corrupted:
H5MM_final_sanity_check: Assertion `0 == H5MM_curr_alloc_bytes_s' failed.

    This did not happen on a good file or on the corrupted file with the
    library built in production mode.  The un-freed memory were allocated
    during error recovery.
Platforms tested:
    Linux/64 (jelly)
2020-05-26 15:39:39 -05:00
David Young
4cebd8aa6c Make examples installation respect DESTDIR. Fixes
HDFFV-11060.
2020-05-26 10:43:20 -05:00
Larry Knox
32f8fed120 Merge pull request #2599 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit '60244c54fcf74e6635aadf7badf0bed4dd92a635':
  Update MANIFEST for removal of older warnings files.
2020-05-20 09:26:32 -05:00
Larry Knox
60244c54fc Update MANIFEST for removal of older warnings files. 2020-05-20 09:12:43 -05:00
Larry Knox
8797ae3f3e Merge pull request #2592 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit 'fcd87d2569ca4d8396c7db4eddb46cab04010abf':
  Revise gnu-*flags and cmake/HDF*CompilerFlags.cmake files to add warning flags for GCC compilers version 4.8 and above. Removed files from gnu-warnings that only apply to versions < 4.8. Consolidated warnings from versions < 4.8 that apply to versions >= 4.8 into the 4.8 warnings files.
2020-05-18 21:59:49 -05:00
Larry Knox
fcd87d2569 Revise gnu-*flags and cmake/HDF*CompilerFlags.cmake files to add warning
flags for GCC compilers version 4.8 and above.
Removed files from gnu-warnings that only apply to versions < 4.8.
Consolidated warnings from versions < 4.8 that apply to versions >= 4.8
into the 4.8 warnings files.
2020-05-18 14:28:51 -05:00
Allen Byrne
820363aa6d Merge pull request #2582 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'ad8f45d267a4ffb0696a4e30b590fa11ef68d06f':
  Correct mingw paths
  Correct path for mingw
2020-05-18 06:30:19 -05:00
Allen Byrne
ad8f45d267 Correct mingw paths 2020-05-15 13:21:43 -05:00
Allen Byrne
d14b87bfc8 Correct path for mingw 2020-05-15 13:06:01 -05:00
Dana Robinson
26780517e6 Merge pull request #2573 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor to develop
* commit 'ae07c9ba2429a9c49291bcd9f02c0ce36b0a60ce':
  Replaced a few calls to HDmemcpy with H5MM_memcpy, which does overlap checking.
  Removed HDgets macros since gets was deprecated in C99 and removed in C11 (gets() is not used in our repo).
2020-05-15 11:56:23 -05:00
Dana Robinson
ae07c9ba24 Replaced a few calls to HDmemcpy with H5MM_memcpy, which does overlap
checking.
2020-05-15 06:44:01 -07:00
Dana Robinson
4d012b345c Merge branch 'develop' into develop_minor 2020-05-15 06:34:37 -07:00
Dana Robinson
15f7ab3546 Merge pull request #2574 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:warning_fixes to develop
* commit '55844f79e94d49f7ccc8fff1fa3d80f153bb13ea':
  Misc warning fixes.
2020-05-11 11:31:22 -05:00
Dana Robinson
55844f79e9 Misc warning fixes. 2020-05-10 09:48:30 -07:00
Dana Robinson
ad8f72ca29 Removed HDgets macros since gets was deprecated in C99 and removed
in C11 (gets() is not used in our repo).
2020-05-10 03:33:54 -07:00
Allen Byrne
f7bfa60bf9 Merge pull request #2568 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'f82348f80940e6ea197b7913f6357a5bbde3c43d':
  Comment out pull-request action and enable fail fast
  Correct filename
  Change to use alias
  Fix name setting
  OESS-65 fix packaging config files
2020-05-08 16:28:52 -05:00
Allen Byrne
f82348f809 Comment out pull-request action and enable fail fast 2020-05-08 15:32:15 -05:00
Allen Byrne
a5a3a5d9b3 Correct filename 2020-05-08 12:57:44 -05:00
Allen Byrne
9a097529ab Change to use alias 2020-05-08 10:51:07 -05:00
Allen Byrne
8cff990553 Fix name setting 2020-05-08 10:10:49 -05:00
Allen Byrne
aef4c9b02b OESS-65 fix packaging config files 2020-05-08 08:58:22 -05:00
Allen Byrne
96cabf6c59 Merge pull request #2565 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'b147797449503e9a166b277fdabffafd5561d718':
  Correct path
2020-05-07 10:02:06 -05:00
Allen Byrne
b147797449 Correct path 2020-05-07 08:50:12 -05:00
Allen Byrne
88a39adaa2 Merge pull request #2561 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'a1ce9b2242774c9ef8f7200dc7e3d9e31fd33676':
  Correct step name
  Correct test
  Add github actions
2020-05-06 11:08:58 -05:00
Allen Byrne
a1ce9b2242 Correct step name 2020-05-06 11:08:12 -05:00
Allen Byrne
c1565d2b57 Correct test 2020-05-06 09:38:59 -05:00
Allen Byrne
521c3f8ff6 Add github actions 2020-05-06 08:10:37 -05:00
Quincey Koziol
9d6b4fd501 Merge pull request #2557 in HDFFV/hdf5 from alloc_0sized_dset_fix to develop
* commit 'deadf2546561caa01537334dbb209e60c28d26c5':
  Align contents of CMake and autotools testfile cleanup lists.
  Avoid allocating a chunk index for datasets with 0-sized dimensions, until the dataset is extended.
2020-05-04 13:13:55 -05:00
Quincey Koziol
deadf25465 Align contents of CMake and autotools testfile cleanup lists. 2020-05-02 20:42:33 -05:00
Quincey Koziol
ac069841f3 Avoid allocating a chunk index for datasets with 0-sized dimensions, until
the dataset is extended.
2020-05-01 17:59:57 -05:00
Dana Robinson
a1435404b5 Merge pull request #2552 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor to develop
* commit 'dc3b8372c7ac63b5b0f00ad94a4f8f32cbb8d391':
  Protected H5Oset_comment() in h5dump test generator. (Assumes environment variable overrides default VOL connector)
2020-04-28 11:05:07 -05:00
Dana Robinson
dc3b8372c7 Protected H5Oset_comment() in h5dump test generator.
(Assumes environment variable overrides default VOL connector)
2020-04-28 04:21:47 -07:00
Jordan Henderson
9e82926bb9 Merge pull request #2551 in HDFFV/hdf5 from ~JHENDERSON/hdf5:develop to develop
* commit '0644921cc207dda2551bf2893e12877b7bc0ec8c':
  Fix memory error in h5dump xml 'escape the string' routine
2020-04-27 19:48:03 -05:00
Jordan Henderson
0644921cc2 Merge branch 'develop' of ssh://bitbucket.hdfgroup.org:7999/~jhenderson/hdf5 into develop 2020-04-27 18:57:47 -05:00
Jordan Henderson
2442de3389 Fix memory error in h5dump xml 'escape the string' routine 2020-04-27 18:57:36 -05:00
Quincey Koziol
4186e0d5be Merge pull request #2540 in HDFFV/hdf5 from extend_h5debug to develop
* commit '3f3363177d5cc1efc8fcfc70e1feed7a293da2d4':
  Range check # of 'extra' command-line parameters against array size.
  Refactor "extra" command-line arguments, and clean up code so the tool doesn't assert when exiting.
  Extend h5debug to support 3-D datasets for chunks.
2020-04-27 18:48:32 -05:00
Dana Robinson
1a2668e13f Merge pull request #2547 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor to develop
* commit 'bf5e832acc0527050d63f5cb91fe15e040bf7e48':
  Fixed pio_perf const pointers.
2020-04-27 12:16:27 -05:00
Dana Robinson
bf5e832acc Fixed pio_perf const pointers. 2020-04-27 09:58:11 -07:00
Dana Robinson
9a598477c6 Merge pull request #2541 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor to develop
* commit 'c03ee563f46013d22f36a1895664a9ba876558e9':
  Further updates to the tools warnings fixes from code review.
  Updates to tools warning PR from code review.
  Fixes for warnings in the tools code.
2020-04-27 10:51:58 -05:00
Dana Robinson
f3d2304647 Merge pull request #2542 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:warning_fixes to develop
* commit 'c3367e6634d4dee88ff855da08e312f6685c23af':
  Moved -Woverlength-strings to the developer flags.
2020-04-27 10:51:08 -05:00
Dana Robinson
c03ee563f4 Further updates to the tools warnings fixes from code review. 2020-04-27 08:50:27 -07:00
Dana Robinson
c3367e6634 Moved -Woverlength-strings to the developer flags. 2020-04-26 04:22:12 -07:00
Dana Robinson
de3bfa697a Updates to tools warning PR from code review. 2020-04-26 02:54:29 -07:00
Quincey Koziol
3f3363177d Range check # of 'extra' command-line parameters against array size. 2020-04-25 22:52:52 -05:00
Quincey Koziol
c18ed719ec Refactor "extra" command-line arguments, and clean up code so the tool doesn't
assert when exiting.
2020-04-25 20:48:32 -05:00
Dana Robinson
a8676d74d9 Fixes for warnings in the tools code. 2020-04-25 16:49:04 -07:00
Allen Byrne
9c3041b129 Merge pull request #2538 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '64fa9327d008c0c3d17c9489c32d99e0d514f88e':
  Add "override with" to error message
  HDFFV-10576 add Option name to Error Message
2020-04-25 09:19:16 -05:00
Larry Knox
06033d1d39 Merge pull request #2539 in HDFFV/hdf5 from ~BYRN/hdf5_merge_adb:develop to develop
* commit 'ae9dc2d5f9016ef279ca9d0ca8ad9c8416e60df9':
  Restrict errors to gcc 4.8 and above.
2020-04-24 22:12:02 -05:00
Quincey Koziol
ed833f1c8d Extend h5debug to support 3-D datasets for chunks. 2020-04-24 21:13:31 -05:00
David Young
536a8b57bc Merge pull request #2537 in HDFFV/hdf5 from ~DYOUNG/werror:fix-werrors to develop
* commit 'd16eb45d536bd13ca3cf1b0bdc76c58d95d13f17':
  For compatibility with non-C99 Visual Studio versions, use "%" PRIuMAX instead of "%ju".
  Fix `test/swmr_sparse_reader.c:118:77: error: cast from pointer to integer of different size [-Werror=pointer-to-int-cast]` and `test/snapshots-hdf5/current/test/swmr_sparse_reader.c:129:100: error: cast from pointer to integer of different size [-Werror=pointer-to-int-cast]`.
  Fix `src/H5FDdirect.c:1346:5: error: ISO C90 forbids mixed declarations and code [-Werror=declaration-after-statement]`.
2020-04-24 21:09:14 -05:00
David Young
d16eb45d53 For compatibility with non-C99 Visual Studio versions, use "%" PRIuMAX
instead of "%ju".
2020-04-24 18:49:37 -05:00
Allen Byrne
ae9dc2d5f9 Restrict errors to gcc 4.8 and above. 2020-04-24 16:25:51 -05:00
Allen Byrne
64fa9327d0 Add "override with" to error message 2020-04-24 16:23:28 -05:00
Allen Byrne
709464301a HDFFV-10576 add Option name to Error Message 2020-04-24 13:05:58 -05:00
Allen Byrne
e54f5a14d2 Merge pull request #2534 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '7f44915b442b4d65ccf2f78dae3c1f7224658bea':
  Fix NoFilter build
  Remove old szip line
  OESS-65 add option to use AEC library in place of SZip
2020-04-24 11:45:53 -05:00
David Young
737a28dc97 Fix `test/swmr_sparse_reader.c:118:77: error: cast from pointer
to integer of different size [-Werror=pointer-to-int-cast]` and
`test/snapshots-hdf5/current/test/swmr_sparse_reader.c:129:100:
error: cast from pointer to integer of different size
[-Werror=pointer-to-int-cast]`.
2020-04-24 10:22:28 -05:00
David Young
26e640da7e Fix `src/H5FDdirect.c:1346:5: error: ISO C90 forbids mixed declarations
and code [-Werror=declaration-after-statement]`.
2020-04-24 10:18:15 -05:00
Allen Byrne
7f44915b44 Fix NoFilter build 2020-04-24 07:49:39 -05:00
Allen Byrne
e52b54702d Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '8921d12c56960379c7d84584e42bbaf68b30e142':
  TRILAB-244 separate CXX warnings and errors from C
2020-04-23 16:09:45 -05:00
Allen Byrne
8921d12c56 Merge pull request #2533 in HDFFV/hdf5 from ~BYRN/hdf5_merge_adb:develop to develop
* commit 'f9a3ae50812a527c7b88a39d7d5b6629aa234a2d':
  TRILAB-244 separate CXX warnings and errors from C
2020-04-23 15:50:31 -05:00
Allen Byrne
f9a3ae5081 TRILAB-244 separate CXX warnings and errors from C 2020-04-23 14:32:29 -05:00
Allen Byrne
79cb6eaf7d Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '5ea58acf8a2bdf8ca19d4c86d9ef94fbc4ac449f':
  Add missing ')'.
  Add C++ warnings treated as error for autotools builds.
  Move macro ADD_H5_CFLAGS to cmake_ext_mod/HDFMacros.cmake and remove duplicate versions.
  Address PR suggestions and add overlooked GCC compiler version flags.
  Don't add general warnings flags for unsupported old versions of gcc and g++ (older than gcc/g++ 4.2). Correct gnu-cxxflags to determine warnings flags to be added based on C++ compiler version instead of C compiler version.
2020-04-23 13:44:32 -05:00
Larry Knox
5ea58acf8a Merge pull request #2525 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit '43424a1392b662a29542bb70014c253162ccfe48':
  Add missing ')'.
  Add C++ warnings treated as error for autotools builds.
  Move macro ADD_H5_CFLAGS to cmake_ext_mod/HDFMacros.cmake and remove duplicate versions.
  Address PR suggestions and add overlooked GCC compiler version flags.
  Don't add general warnings flags for unsupported old versions of gcc and g++ (older than gcc/g++ 4.2). Correct gnu-cxxflags to determine warnings flags to be added based on C++ compiler version instead of C compiler version.
2020-04-23 13:41:34 -05:00
Larry Knox
43424a1392 Add missing ')'. 2020-04-23 13:19:15 -05:00
Larry Knox
de51001fcd Add C++ warnings treated as error for autotools builds. 2020-04-23 13:14:56 -05:00
Allen Byrne
ec569a663a Remove old szip line 2020-04-23 09:36:36 -05:00
Allen Byrne
7eab9000ae Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '1db039d1beee05d7349e153cef4cf642c907cc1e':
  Fixed h5diff command-line parameters to use 1 and 2 instead of src and dst.
  Added VOL command-line options to (p)h5diff, h5ls, h5dump, and h5mkgrp.
2020-04-23 06:46:31 -05:00
Dana Robinson
1db039d1be Merge pull request #2532 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor to develop
* commit '785bd0975ba13c3033820d0fc809da963fcd54ca':
  Fixed h5diff command-line parameters to use 1 and 2 instead of src and dst.
  Added VOL command-line options to (p)h5diff, h5ls, h5dump, and h5mkgrp.
2020-04-22 19:07:48 -05:00
Dana Robinson
785bd0975b Fixed h5diff command-line parameters to use 1 and 2 instead of src
and dst.
2020-04-22 16:49:52 -07:00
Allen Byrne
16b1ee6899 OESS-65 add option to use AEC library in place of SZip 2020-04-22 11:48:56 -05:00
Larry Knox
d965e53cc0 Move macro ADD_H5_CFLAGS to cmake_ext_mod/HDFMacros.cmake and remove
duplicate versions.
2020-04-22 10:42:32 -05:00
Larry Knox
5a010aace9 Address PR suggestions and add overlooked GCC compiler version flags. 2020-04-22 09:43:15 -05:00
Dana Robinson
8cd9d8349e Added VOL command-line options to (p)h5diff, h5ls, h5dump, and h5mkgrp. 2020-04-21 11:36:10 -07:00
Dana Robinson
729ad25bdf Merge pull request #2530 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor to develop
* commit 'c6097935d5be4c3750b9bf9167783ad28158905b':
  Separated VFD and VOL parameters in tools.
2020-04-21 08:49:15 -05:00
Quincey Koziol
c9a21e932e Merge pull request #2527 in HDFFV/hdf5 from trim_whitespace to develop
* commit '9e5dbf69062d4d2cb40ba8f68edb355477fc9b67':
  Trim trailing whitespace
2020-04-21 08:10:26 -05:00
Dana Robinson
c6097935d5 Separated VFD and VOL parameters in tools. 2020-04-20 17:38:45 -07:00
Quincey Koziol
9e5dbf6906 Trim trailing whitespace 2020-04-20 18:12:00 -05:00
Larry Knox
5c87b06d9d Don't add general warnings flags for unsupported old versions of gcc and
g++ (older than gcc/g++ 4.2).
Correct gnu-cxxflags to determine warnings flags to be added based on
C++ compiler version instead of C compiler version.
2020-04-20 16:03:08 -05:00
Quincey Koziol
83c861f327 Merge remote-tracking branch 'origin/develop' into pio_update 2020-04-19 10:00:15 -05:00
Dana Robinson
7ba692badf Merge pull request #2522 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:new_vfd_cleanup to develop
* commit '384693d8e5917011c906cdca901baf1519d0ff87':
  Fixed some minor cmp callback bugs and cleaned warnings.
2020-04-17 11:47:23 -05:00
Dana Robinson
384693d8e5 Fixed some minor cmp callback bugs and cleaned warnings. 2020-04-17 00:46:46 -07:00
Dana Robinson
19bca90648 Merge pull request #2521 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor to develop
* commit '9ecca22dd1852145810280e8c54aa6b0ab26b604':
  Fixed problems with S3 and HDFS VFDs. * Updated info struct parameter to correct info_string * Fixed Makefile.am where the S3 VFD was listed twice, causing   duplicated symbols errors.
2020-04-16 22:10:47 -05:00
Dana Robinson
9ecca22dd1 Fixed problems with S3 and HDFS VFDs.
* Updated info struct parameter to correct info_string
* Fixed Makefile.am where the S3 VFD was listed twice, causing
  duplicated symbols errors.
2020-04-16 17:07:21 -07:00
Allen Byrne
66842e3347 Merge pull request #2511 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '602e56ea12208cd4a4b23b0f9a3f7a53aceb1b48':
  TRILAB-192 version of std=f2008 special check
2020-04-14 12:45:08 -05:00
Allen Byrne
602e56ea12 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'da565fba7b37c0e6806adab1f59416bb0ac9041e':
  Update h5repack long arguments for id-->value changes.
  Changed identifiers and command-line options from "id" to "value" in tools code to be in agreement with H5VL API terminology.
2020-04-14 12:32:27 -05:00
Dana Robinson
da565fba7b Merge pull request #2510 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor to develop
* commit '2188e7d731199cac08c6e6150ccd2fb43227ec32':
  Update h5repack long arguments for id-->value changes.
  Changed identifiers and command-line options from "id" to "value" in tools code to be in agreement with H5VL API terminology.
2020-04-14 11:11:58 -05:00
Allen Byrne
e02e86b78d TRILAB-192 version of std=f2008 special check 2020-04-14 08:27:45 -05:00
Dana Robinson
2188e7d731 Update h5repack long arguments for id-->value changes. 2020-04-14 05:16:01 -07:00
Dana Robinson
28d2596f65 Changed identifiers and command-line options from "id" to "value" in tools
code to be in agreement with H5VL API terminology.
2020-04-14 04:31:01 -07:00
Allen Byrne
e9ad3bad4e Merge pull request #2509 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'ef70c1695d0cccb4ba379abe3969ac2fec0d4ebe':
  Fix shadowed type
2020-04-13 11:07:53 -05:00
Allen Byrne
ef70c1695d Fix shadowed type 2020-04-13 10:25:44 -05:00
Allen Byrne
4688f0ac07 Merge pull request #2508 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'e68848f397eb66ffbec86ab59b7754c48281e0b3':
  TRILAB-192 - cleanup edits and match CMake CXX to autotools
2020-04-13 10:01:31 -05:00
Allen Byrne
e68848f397 TRILAB-192 - cleanup edits and match CMake CXX to autotools 2020-04-13 08:16:57 -05:00
Jake Smith
f1893e9404 Merge pull request #2452 in HDFFV/hdf5 from ~JAKE.SMITH/hdf5:feature/vfd_splitter_mirror_a to develop
Add Splitter VFD and Mirror VFD.

* commit '664fc6af47e369152727ff66d68d8532feb0e210':
  Add enable-mirror-vfd flag to configure options.
  Tidying of Mirror VFD.
  Add function header comment for `mirror_writer:run_writer()`.
  Add Splitter VFD to library.
2020-04-11 11:53:41 -05:00
Larry Knox
14ba946283 Merge pull request #2507 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit 'eedda6eb070c6f6bc58776468b57f4921f06983a':
  Add missing " and update function calls incorrectly named load_gcc_arguments.
2020-04-10 16:32:24 -05:00
Larry Knox
eedda6eb07 Add missing " and update function calls incorrectly named
load_gcc_arguments.
2020-04-10 14:13:26 -05:00
Larry Knox
94e878c281 Merge pull request #2498 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '3ec77a2d9ad8ba42dde93942727c1f4ed83212f6':
  TRILAB-192 update LTparse files
2020-04-09 17:58:52 -05:00
Jordan Henderson
e372c8e648 Merge pull request #2505 in HDFFV/hdf5 from ~JHENDERSON/hdf5:develop to develop
* commit '65a704167c83c3fa8d5cc05e4ac7e032a051151c':
  Fix memory leak in t_span_tree.c test
2020-04-09 15:58:36 -05:00
Jordan Henderson
65a704167c Merge branch 'develop' of ssh://bitbucket.hdfgroup.org:7999/~jhenderson/hdf5 into develop 2020-04-09 14:24:02 -05:00
Jordan Henderson
e1508b7695 Fix memory leak in t_span_tree.c test 2020-04-09 14:23:50 -05:00
Dana Robinson
7cf36ea7c3 Merge pull request #2504 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor to develop
* commit 'd86089f583382c0379f446a5e4d552599ed5b3b4':
  Added support for passing connector info strings via the command line to the tools internals.
2020-04-09 11:09:29 -05:00
Dana Robinson
d86089f583 Added support for passing connector info strings via the command
line to the tools internals.
2020-04-09 08:40:41 -07:00
Dana Robinson
0fdbbcfc0b Merge pull request #2502 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor to develop
* commit '35c0d5cdfcfaa84f59e1c596ba1ccaeb28e3d83d':
  Fix for passthrough VOL not passing tools tests due to incorrect optional callback queries.
2020-04-09 10:30:09 -05:00
Quincey Koziol
5c885f5233 Merge remote-tracking branch 'origin/develop' into pio_update 2020-04-09 10:13:23 -05:00
Larry Knox
88ff2b6cb8 Merge pull request #2503 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:Wflags_changes_develop_merge to develop
* commit 'fffe3b8dbd90a38296be866bae1c66d90664dd14':
  Update all load_gcc_arguments to load_gnu_arguments. Fixes TRILAB-212.
2020-04-08 22:19:27 -05:00
Larry Knox
fffe3b8dbd Update all load_gcc_arguments to load_gnu_arguments.
Fixes TRILAB-212.
2020-04-08 21:31:29 -05:00
Dana Robinson
35c0d5cdfc Fix for passthrough VOL not passing tools tests due to incorrect
optional callback queries.
2020-04-08 16:44:19 -07:00
Vailin Choi
fcd3bce961 Merge pull request #2496 in HDFFV/hdf5 from ~VCHOI/my_third_fork:bugfix/dtype_close_on_error to develop
* commit 'db9155c2f34bbf77a1cda01904805fe5c993b6d5':
  Fix according to PR feedback.
  Fix an error in previous merge: should use NULL instead of FAIL.
2020-04-08 18:33:00 -05:00
Larry Knox
9c0b571149 Merge pull request #2501 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:Wflags_changes_develop_merge to develop
* commit 'e6cd19937b0e5fe5b49f7e88b08f15305e0b5af1':
  Squashed commit of the following:
  Add \d to list of characters allowed after '-' in versions.
2020-04-08 18:13:11 -05:00
Larry Knox
e6cd19937b Squashed commit of the following:
commit 8963c3bf756f8f8ec21beea9bd29a767e77675a8
Author: Larry Knox <lrknox@hdfgroup.org>
Date:   Wed Apr 8 16:52:27 2020 -0500

    Commit changes to gnu-cxxflags to remove unmatched " and to gnu-fflags
    to not add C warnings flags to H5_FCFLAGS.
2020-04-08 17:02:34 -05:00
Jacob Smith
664fc6af47 Add enable-mirror-vfd flag to configure options. 2020-04-08 16:51:38 -05:00
Larry Knox
b35dcaf847 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'b27a20f8c0e286ea7c2836605632ea2ee5522d03': (59 commits)
  Hide Frortran directive warnings
  Updated test ddl files so CMake passes after h5dump failures.
  Remove flag from gfort-general in gfort-5, add /EHsc to Win C++
  Update printf pointer syntax and revert fortran to f2003
  Reduce window fortran standard to f90
  Minor updates and fix settings for fortran flags
  Update intel flags
  Narrowed the scope of ISO_C_BINDING with ONLY additions
  Fix missing endif
  Correct improper file move
  Move intel warnings to subfolder, update autotools files
  Corrected note
  Remove overzealous additions
  Correct whitespace in flags, force list mode
  Flag construction must be after compiler detection
  TRILAB-192 add c++ and fortran warnings build systems one file
  Skip testing of passthrough VOL connector in a Family File tools test
  Update release note for CMake warnings
  Restore previous tools library driver name behavior with passthrough VOL connector
  Add missing header include
  ...
2020-04-08 12:45:59 -05:00
Allen Byrne
3ec77a2d9a TRILAB-192 update LTparse files 2020-04-07 17:56:42 -05:00
vchoi
db9155c2f3 Fix according to PR feedback. 2020-04-07 13:17:56 -05:00
Jacob Smith
075e74e9b2 Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/~jake.smith/hdf5 into feature/vfd_splitter_mirror_a 2020-04-07 10:29:00 -05:00
Jacob Smith
d97c00013d Tidying of Mirror VFD.
* Rename server-stop utility to mirror_server_stop.
* Remove external dependency on bzero().
* Modify test/use_common to use only the public API.
* Rename internal bitswap macro to follow convention.
2020-04-07 10:20:44 -05:00
Allen Byrne
b27a20f8c0 Merge pull request #2489 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'f362e14add76bc137c8f9bb8542a697e48900b91':
  Hide Frortran directive warnings
  Remove flag from gfort-general in gfort-5, add /EHsc to Win C++
  Update printf pointer syntax and revert fortran to f2003
  Reduce window fortran standard to f90
  Minor updates and fix settings for fortran flags
  Update intel flags
  Fix missing endif
  Correct improper file move
  Move intel warnings to subfolder, update autotools files
  Corrected note
  Remove overzealous additions
  Correct whitespace in flags, force list mode
  Flag construction must be after compiler detection
  TRILAB-192 add c++ and fortran warnings build systems one file
  Update release note for CMake warnings
  Add missing header include
2020-04-07 09:34:33 -05:00
Allen Byrne
f362e14add Hide Frortran directive warnings 2020-04-07 07:37:49 -05:00
Allen Byrne
61b8018004 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'f6514c35ea3786206a8db73e1cad8fce8fe6a715':
  Updated test ddl files so CMake passes after h5dump failures.
  Modifications based on PR review feedback.
  Add two routines gen_ref_files() and gen_sel_files() to generate test files related to references and selections. These test files will be copied to 1.12, 1.10 and 1.8 for compatibility testing.
2020-04-07 07:08:16 -05:00
vchoi
230570b593 Fix an error in previous merge: should use NULL instead of FAIL. 2020-04-06 19:26:49 -05:00
Vailin Choi
b3e966e33d Merge pull request #29 in ~VCHOI/my_third_fork from develop to bugfix/dtype_close_on_error
* commit 'f6514c35ea3786206a8db73e1cad8fce8fe6a715': (48 commits)
  Updated test ddl files so CMake passes after h5dump failures.
  Narrowed the scope of ISO_C_BINDING with ONLY additions
  Skip testing of passthrough VOL connector in a Family File tools test
  Restore previous tools library driver name behavior with passthrough VOL connector
  Updated tools dump output when dataset offset is undefined.
  Fixed unnecessary H5R casts in the tools that were raising warnings.
  Added checks for native optional call support in some of the tools.
  Changed default dataset shared struct to initialize hid_t IDs to H5I_INVALID_HID.
  Correct extra flags
  Modifications based on PR review feedback.
  Minor renaming in the tools code.
  Misc changes for h5dump VOL changes.
  Fix for HDFFV-11065.
  Fix latent bug in h5repack options file reading Add 'enable-error-stack' option to h5format_convert
  TRILAB-192 remove comment
  Minor renaming in h5dump (addr --> token)
  TRILAB-192 add comparable clang flags
  Fix some missing symbols issues in tools library
  A few small tweaks to the tools from review
  Replace usage of some standard library functions with HD- versions
  ...
2020-04-06 18:52:20 -05:00
Dana Robinson
f6514c35ea Merge pull request #2495 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor to develop
* commit '8e948aa7b717cd7a8dcb12877a4ad61df2a46ebd':
  Updated test ddl files so CMake passes after h5dump failures.
2020-04-06 17:23:42 -05:00
Dana Robinson
8e948aa7b7 Updated test ddl files so CMake passes after h5dump failures. 2020-04-06 15:19:55 -07:00
Vailin Choi
1e52e74ca8 Merge pull request #2472 in HDFFV/hdf5 from ~VCHOI/my_third_fork:bugfix/bounds_compat to develop
* commit '3f081c99376ad562dcb6bbf7d6c11216f682aca7':
  Modifications based on PR review feedback.
  Add two routines gen_ref_files() and gen_sel_files() to generate test files related to references and selections. These test files will be copied to 1.12, 1.10 and 1.8 for compatibility testing.
2020-04-06 16:37:47 -05:00
Allen Byrne
e31bb02d38 Remove flag from gfort-general in gfort-5, add /EHsc to Win C++ 2020-04-06 16:12:43 -05:00
Allen Byrne
279ea4f2a2 Update printf pointer syntax and revert fortran to f2003 2020-04-06 15:19:28 -05:00
Allen Byrne
09ec1166d7 Reduce window fortran standard to f90 2020-04-06 14:29:33 -05:00
Allen Byrne
fd18d013f1 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '4830a1796441abbb5a4fbd2cff9a651f2a0d066e':
  Updated tools dump output when dataset offset is undefined.
  Added checks for native optional call support in some of the tools.
  Misc changes for h5dump VOL changes.
2020-04-06 14:13:27 -05:00
Dana Robinson
4830a17964 Merge pull request #2486 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:tools_vol_update to develop
* commit '110cafb9c7b5b9f9170340432062295d630f3ee6':
  Updated tools dump output when dataset offset is undefined.
  Added checks for native optional call support in some of the tools.
  Misc changes for h5dump VOL changes.
2020-04-06 13:53:22 -05:00
Allen Byrne
55299ab2ce Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'a09f810e8d372d1e85661c52a7ef735a164904ad':
  Narrowed the scope of ISO_C_BINDING with ONLY additions
2020-04-06 13:36:28 -05:00
Allen Byrne
b4dcee96ce Minor updates and fix settings for fortran flags 2020-04-06 12:17:43 -05:00
Dana Robinson
110cafb9c7 Merge branch 'develop' into tools_vol_update 2020-04-06 09:38:00 -07:00
Scot Breitenfeld
a09f810e8d Merge pull request #2494 in HDFFV/hdf5 from ~BRTNFLD/hdf5_msb:FortranWarn to develop
* commit '83d29f04c28e150fde5776fba64fbe4fa04f0f25':
  Narrowed the scope of ISO_C_BINDING with ONLY additions
2020-04-06 11:18:39 -05:00
Allen Byrne
a3c57c730c Update intel flags 2020-04-06 10:34:16 -05:00
Scot Breitenfeld
83d29f04c2 Narrowed the scope of ISO_C_BINDING with ONLY additions 2020-04-06 10:04:27 -05:00
Allen Byrne
3247291b1e Fix missing endif 2020-04-06 09:40:22 -05:00
Allen Byrne
f8d8a96eb7 Correct improper file move 2020-04-06 09:38:43 -05:00
Allen Byrne
0d701b9ff8 Move intel warnings to subfolder, update autotools files 2020-04-06 09:35:43 -05:00
Allen Byrne
d0a936ab62 Corrected note 2020-04-06 06:54:27 -05:00
Allen Byrne
2e85f81126 Remove overzealous additions 2020-04-05 16:38:25 -05:00
Allen Byrne
29ad4fcec9 Correct whitespace in flags, force list mode 2020-04-05 15:56:52 -05:00
Allen Byrne
2c2627e7f6 Flag construction must be after compiler detection 2020-04-05 13:38:04 -05:00
Allen Byrne
70495751c0 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '5d1590079ea0061a7b86d7210cb796b6d58a17c7':
  Skip testing of passthrough VOL connector in a Family File tools test
  Restore previous tools library driver name behavior with passthrough VOL connector
2020-04-05 11:06:35 -05:00
Allen Byrne
57f5d00a43 TRILAB-192 add c++ and fortran warnings build systems one file 2020-04-05 10:50:08 -05:00
Quincey Koziol
d17c259a4d Merge remote-tracking branch 'origin/develop' into pio_update 2020-04-04 13:49:42 -05:00
Jordan Henderson
5d1590079e Merge pull request #2490 in HDFFV/hdf5 from tools_vol_update to develop
* commit 'a5a2fb44296327787476407a249d9470b3c80427':
  Skip testing of passthrough VOL connector in a Family File tools test
  Restore previous tools library driver name behavior with passthrough VOL connector
2020-04-03 15:06:08 -05:00
Jordan Henderson
a5a2fb4429 Skip testing of passthrough VOL connector in a Family File tools test 2020-04-03 14:29:10 -05:00
Quincey Koziol
ab89adb58a Merge remote-tracking branch 'origin/develop' into pio_update 2020-04-03 13:47:50 -05:00
Allen Byrne
7a41367a13 Update release note for CMake warnings 2020-04-03 12:57:56 -05:00
Jordan Henderson
08e77ac6fa Restore previous tools library driver name behavior with passthrough VOL connector 2020-04-03 12:45:22 -05:00
Allen Byrne
b7227657f2 Add missing header include 2020-04-03 08:50:51 -05:00
Allen Byrne
96ea55b95d Merge pull request #2474 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '36b8060323f24341c8f4610108e8ccb955dbe192':
  Correct extra flags
  TRILAB-192 remove comment
  TRILAB-192 add comparable clang flags
2020-04-03 08:49:54 -05:00
Dana Robinson
85b3b9e670 Updated tools dump output when dataset offset is undefined. 2020-04-02 10:25:46 -07:00
Allen Byrne
36b8060323 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'ac099b0b6391fd149af4f4fcf8f79189dcc615bb':
  Fixed unnecessary H5R casts in the tools that were raising warnings.
2020-04-02 11:02:37 -05:00
Dana Robinson
ac099b0b63 Merge pull request #2485 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor to develop
* commit '1c854737665f3f853a324c34292390ab57431fec':
  Fixed unnecessary H5R casts in the tools that were raising warnings.
2020-04-02 11:00:48 -05:00
Allen Byrne
7e06b76c64 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'bae05235a2d87acb0d6b3a2e1c32f3b6f48cf203':
  Changed default dataset shared struct to initialize hid_t IDs to H5I_INVALID_HID.
  A fix in the cleaning up code for datatype when datatype initialization via H5D__init_type() fails. This is triggered by the tests for revised references when the libver bounds setting does not allow version 4 datatype message to be created.  The test failure is abort core dumped. This is due to the datatype initialization fails before the datatype ID is registered. The datatype cleanup code should provide for the above situation. The code to fix the problem is the same as what is done in H5D__open_oid().
  Remove tongue-in-cheek credit for Rusty Shackleford and Dale Alvin Gribble.
  Follow HDF5 conventions.
2020-04-02 08:25:44 -05:00
Dana Robinson
1c85473766 Fixed unnecessary H5R casts in the tools that were raising warnings. 2020-04-02 03:57:05 -07:00
Dana Robinson
456308ff17 Added checks for native optional call support in some of the tools. 2020-04-02 02:12:19 -07:00
Dana Robinson
3cd1b46b9c Merge branch 'develop' into tools_vol_update 2020-04-01 23:27:08 -07:00
Vailin Choi
bae05235a2 Merge pull request #2461 in HDFFV/hdf5 from ~VCHOI/my_third_fork:bugfix/dtype_close_on_error to develop
* commit 'afdcac28b85d690eebc80ab568fa5266081baaaa':
  A fix in the cleaning up code for datatype when datatype initialization via H5D__init_type() fails. This is triggered by the tests for revised references when the libver bounds setting does not allow version 4 datatype message to be created.  The test failure is abort core dumped. This is due to the datatype initialization fails before the datatype ID is registered. The datatype cleanup code should provide for the above situation. The code to fix the problem is the same as what is done in H5D__open_oid().
2020-04-01 22:14:42 -05:00
Dana Robinson
281e8444d8 Merge pull request #2484 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor to develop
* commit 'a267c4e5d37f00bf6cff942b57b5a13affaa8bd5':
  Changed default dataset shared struct to initialize hid_t IDs to H5I_INVALID_HID.
2020-04-01 21:11:51 -05:00
Dana Robinson
a267c4e5d3 Changed default dataset shared struct to initialize hid_t IDs to
H5I_INVALID_HID.
2020-04-01 18:46:07 -07:00
David Young
1547feed60 Merge pull request #2363 in HDFFV/hdf5 from ~DYOUNG/werror:thread_id to develop
* commit '63c95faf49559ea66e3066427961095b69fdb213':
  Remove tongue-in-cheek credit for Rusty Shackleford and Dale Alvin Gribble.
  Follow HDF5 conventions.
2020-04-01 15:27:51 -05:00
Allen Byrne
196193c18d Correct extra flags 2020-04-01 11:46:26 -05:00
Allen Byrne
abd38c0b85 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '2c494482eb986ce051463e96d12a661c494a9335':
  Minor renaming in the tools code.
2020-03-31 22:23:50 -05:00
vchoi
3f081c9937 Modifications based on PR review feedback. 2020-03-31 19:53:14 -05:00
Dana Robinson
2c494482eb Merge pull request #2483 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor to develop
* commit 'b1533616f28996983ec505fff8f62edf3dd820b3':
  Minor renaming in the tools code.
2020-03-31 19:46:19 -05:00
Dana Robinson
b1533616f2 Minor renaming in the tools code. 2020-03-31 16:58:24 -07:00
Dana Robinson
816a12f04f Merge branch 'develop' into tools_vol_update 2020-03-31 03:43:03 -07:00
Allen Byrne
18db5749dc Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'a46f31c2eb436e946639bb32518ce279507fa368':
  Fix for HDFFV-11065.
2020-03-30 11:39:47 -05:00
Gerd Heber
a46f31c2eb Merge pull request #2479 in HDFFV/hdf5 from ~GHEBER/hdf5:bugfix/HDFFV-11065 to develop
* commit '2dfc047bc4aca7c13bccf44da97bff026cbbf5a6':
  Fix for HDFFV-11065.
2020-03-30 11:26:14 -05:00
Allen Byrne
076a981993 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'c20e268979ec623fb159501e382c6cc55a5d665e':
  Fix latent bug in h5repack options file reading Add 'enable-error-stack' option to h5format_convert
2020-03-30 07:23:00 -05:00
Dana Robinson
c36b707578 Merge branch 'tools_vol_update' of https://bitbucket.hdfgroup.org/scm/~derobins/hdf5_der into tools_vol_update 2020-03-30 01:52:21 -07:00
Dana Robinson
36e8e2be4b Misc changes for h5dump VOL changes. 2020-03-30 01:51:36 -07:00
Jordan Henderson
c20e268979 Merge pull request #2478 in HDFFV/hdf5 from tools_vol_update to develop
* commit '9676029742f18aaae37dd48947bc1faf23406169':
  Fix latent bug in h5repack options file reading Add 'enable-error-stack' option to h5format_convert
2020-03-29 18:13:58 -05:00
Gerd Heber
2dfc047bc4 Fix for HDFFV-11065. 2020-03-29 16:04:58 -05:00
Jordan Henderson
9676029742 Fix latent bug in h5repack options file reading
Add 'enable-error-stack' option to h5format_convert
2020-03-29 12:37:14 -05:00
Allen Byrne
d2a75d211d TRILAB-192 remove comment 2020-03-29 07:51:35 -05:00
Allen Byrne
93a9b70a8f Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'e9e3e2f1d67ccf71cc5af711065d1f85761ab5b7':
  Refactor to reduce verbosity.
2020-03-29 07:47:01 -05:00
Quincey Koziol
9e5a68214a Don't track file offset position when using pread / pwrite. 2020-03-28 21:53:43 -05:00
Quincey Koziol
e9e3e2f1d6 Merge pull request #2471 in HDFFV/hdf5 from alloc_stat_tests to develop
* commit '0eb562bc201a38f9b4a82e954bfc63daa6838d45':
  Refactor to reduce verbosity.
2020-03-28 15:48:55 -05:00
Allen Byrne
c6c9af20bf Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'f5cb547825e462c3299b6f41d03a71aa6faef950':
  Minor renaming in h5dump (addr --> token)
2020-03-28 09:35:25 -05:00
Dana Robinson
2a06f94377 Merge pull request #2476 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:tools_vol_update to tools_vol_update
* commit 'f5cb547825e462c3299b6f41d03a71aa6faef950': (29 commits)
  Minor renaming in h5dump (addr --> token)
  Correct macro check
  Add extensive warnings to tools executables
  Reorg comments
  Correct warning flag form
  Because of tools macro, this needs to be a warning
  unused set-variable in macro
  Fix Werror issues in JNI and tools
  TRILAB-192 fix JNI shadow warning
  TRILAB-192 restrict extensive warnings to libraries
  TRILAB-24 use CHECK_STRUCT_HAS_MEMBER
  TRILAB-192 add release note
  TRILAB-192 Identify warnings that fail as errors
  Correct failure when allocation tracking are disabled.
  Update the MANIFEST for the autoconf/cmake shared warnings files.
  Correct syntax
  Update CMake compiler flags to use same set of warnings
  Revise API for H5get_alloc_stats() to take a struct instead of separate values.
  Allow use of INTEL icl/icl++ for clang
  Move the GNU warnings configuration under config/gnu-warnings/ and trim the filename prefixes.  Update config/gnu-flags to suit.
  ...
2020-03-27 20:19:22 -05:00
Dana Robinson
f5cb547825 Merge pull request #2475 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor to develop
* commit '2dd6075c7a13ba7cbaa922448df4bd5e72c1b5ab':
  Minor renaming in h5dump (addr --> token)
2020-03-27 19:23:58 -05:00
Dana Robinson
2dd6075c7a Minor renaming in h5dump (addr --> token) 2020-03-27 17:17:00 -07:00
Allen Byrne
0da53027d9 TRILAB-192 add comparable clang flags 2020-03-27 17:10:53 -05:00
Allen Byrne
c66ce89383 Merge pull request #2473 in HDFFV/hdf5 from tools_vol_update to develop
* commit 'feb0f521b16b79485c22c86a630a1d91cb680a61':
  Fix some missing symbols issues in tools library
2020-03-27 17:06:23 -05:00
Jordan Henderson
feb0f521b1 Fix some missing symbols issues in tools library 2020-03-27 16:54:05 -05:00
Allen Byrne
bf5ef12d50 Merge pull request #2470 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '07a66822fb1350955150295fcd6d9f53d3b7ee15':
  TRILAB-24 use CHECK_STRUCT_HAS_MEMBER
2020-03-27 15:01:44 -05:00
Allen Byrne
07a66822fb Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'd5bbf3d4086d7fa0300325a08a608f1cc7b4ce33':
  A few small tweaks to the tools from review
  Replace usage of some standard library functions with HD- versions
  Update Tools library to be better compatible with VOL connectors
2020-03-27 14:10:05 -05:00
Jordan Henderson
d5bbf3d408 Merge pull request #2469 in HDFFV/hdf5 from tools_vol_update to develop
* commit 'ea952b25ba0fd5c4b5f60a94e75a1b5b78e66172':
  A few small tweaks to the tools from review
  Replace usage of some standard library functions with HD- versions
  Update Tools library to be better compatible with VOL connectors
2020-03-27 13:14:22 -05:00
Jordan Henderson
ea952b25ba A few small tweaks to the tools from review 2020-03-27 10:48:11 -05:00
Jordan Henderson
6d514db55a Replace usage of some standard library functions with HD- versions 2020-03-26 15:26:39 -05:00
vchoi
6740ee1dcd Add two routines gen_ref_files() and gen_sel_files() to generate test files related to
references and selections.
These test files will be copied to 1.12, 1.10 and 1.8 for compatibility testing.
2020-03-26 12:06:04 -05:00
Quincey Koziol
0eb562bc20 Refactor to reduce verbosity. 2020-03-26 11:51:26 -05:00
Allen Byrne
1ded274205 Merge pull request #12 in ~BYRN/hdf5_adb from bugfix/TRILAB-24-check_struct_has_member to develop
* commit 'abbeb0cab2380adf8ffb1f81ef2e88960241a6d3':
  TRILAB-24 use CHECK_STRUCT_HAS_MEMBER
2020-03-26 09:33:37 -05:00
Vailin Choi
f3fa23b742 Merge pull request #28 in ~VCHOI/my_third_fork from develop to bugfix/bounds_compat
* commit '181c6110251d7a9e9cc23e14dfd8f52cdb14422b':
  Correct macro check
2020-03-25 20:47:30 -05:00
Quincey Koziol
181c611025 Merge pull request #2467 in HDFFV/hdf5 from alloc_stats_2 to develop
* commit 'a3e08862c614463d16eb1017303e5fec44518b09':
  Correct macro check
2020-03-25 16:27:24 -05:00
Quincey Koziol
a3e08862c6 Correct macro check 2020-03-25 15:52:11 -05:00
Allen Byrne
1b582c3ce4 Merge pull request #2464 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '27b23c8d52e89e9ce15dc9cb9685be85793a5d82':
  Add extensive warnings to tools executables
  Reorg comments
  Correct warning flag form
  Because of tools macro, this needs to be a warning
  unused set-variable in macro
  Fix Werror issues in JNI and tools
  TRILAB-192 fix JNI shadow warning
  TRILAB-192 restrict extensive warnings to libraries
  TRILAB-192 add release note
  TRILAB-192 Identify warnings that fail as errors
  Correct syntax
  Update CMake compiler flags to use same set of warnings
  Allow use of INTEL icl/icl++ for clang
2020-03-25 11:01:03 -05:00
Allen Byrne
27b23c8d52 Add extensive warnings to tools executables 2020-03-25 10:19:09 -05:00
Allen Byrne
c2cc6fa526 Reorg comments 2020-03-25 08:58:53 -05:00
Allen Byrne
cb02c1414f Correct warning flag form 2020-03-25 08:21:40 -05:00
Allen Byrne
75e01a0e41 Because of tools macro, this needs to be a warning 2020-03-25 08:12:21 -05:00
Allen Byrne
0da6786185 unused set-variable in macro 2020-03-25 07:04:19 -05:00
Allen Byrne
2b8407a3ca Fix Werror issues in JNI and tools 2020-03-24 17:42:58 -05:00
Allen Byrne
0d6adfc610 TRILAB-192 fix JNI shadow warning 2020-03-24 17:03:09 -05:00
Allen Byrne
1505fa1498 TRILAB-192 restrict extensive warnings to libraries 2020-03-24 16:45:12 -05:00
Allen Byrne
abbeb0cab2 TRILAB-24 use CHECK_STRUCT_HAS_MEMBER 2020-03-24 13:21:27 -05:00
Allen Byrne
77bac54352 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '765cd82d2e650e089e11539c10d6be4fbdbad984':
  Correct failure when allocation tracking are disabled.
2020-03-24 13:10:06 -05:00
Quincey Koziol
765cd82d2e Merge pull request #2463 in HDFFV/hdf5 from alloc_stats_fix to develop
* commit '60e446113ff9056806b1c1f80dab058418cdbef7':
  Correct failure when allocation tracking are disabled.
2020-03-24 13:04:50 -05:00
Allen Byrne
807480a4bb TRILAB-192 add release note 2020-03-24 12:46:28 -05:00
Allen Byrne
e235df5288 TRILAB-192 Identify warnings that fail as errors 2020-03-24 12:34:17 -05:00
Allen Byrne
15328ae0ae Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'ca64f7e7e9ee028520f6496120b327dfbd0395f2':
  Update the MANIFEST for the autoconf/cmake shared warnings files.
2020-03-24 12:26:26 -05:00
Allen Byrne
ca64f7e7e9 Merge pull request #2462 in HDFFV/hdf5 from ~DYOUNG/werror:gnu-warnings-manifest to develop
* commit '43e5a896975379eb7e363a0bb892a976eb2e15b6':
  Update the MANIFEST for the autoconf/cmake shared warnings files.
2020-03-24 12:25:43 -05:00
Quincey Koziol
60e446113f Correct failure when allocation tracking are disabled. 2020-03-24 12:17:25 -05:00
David Young
43e5a89697 Update the MANIFEST for the autoconf/cmake shared warnings files. 2020-03-24 10:24:51 -05:00
Larry Knox
8890fa3eb5 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'd3ef866a2963ce93d0b95184534a70849b6fa11d':
  Revise API for H5get_alloc_stats() to take a struct instead of separate values.
  Move the GNU warnings configuration under config/gnu-warnings/ and trim the filename prefixes.  Update config/gnu-flags to suit.
  Fixed the RELEASE.txt note for HDFFV-11057
  Fix shutdown errors when using the HDF5_VOL_CONNECTOR environment variable to set a dynamically loaded plugin as the default VOL connector. Fixes HDFFV-11057
  Fix threadsafe for new test
  Fix issues when deserializing point/all/none selection with version beyond the library's supported version: (1) Verify the decoded version before proceeding further with deserialization (2) Close the dataspace if errors occurred after opening the dataspace
  Very minor comment change in H5VLconnector.h.
  Add routines to query the library's free list sizes and allocation stats.
  By default, demote warnings promoted to errors back to warnings.
  Incorporate the H5_ECFLAGS into the library CFLAGS.  Now a bunch of errors will occur.  Next commit will demote the warnings promoted to errors back to warnings again.
  Break out warnings into more files that autoconf and CMake can share.  This change temporarily disables the warnings that were promoted to errors, but I will add those warnings back as warnings, not errors, in the next commit.
  Avoid a crash, don't check if we're flushing when the file is closing: there's no need to check if the metadata cache is flushing if we already know the file is closing, because the condition we rely on is "closing OR flushing."  Further, the cache may have already gone away, so sometimes calling into the cache to see if it's flushing will crash the program.
2020-03-24 08:22:25 -05:00
Allen Byrne
b6ef262ee5 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'd3ef866a2963ce93d0b95184534a70849b6fa11d':
  Revise API for H5get_alloc_stats() to take a struct instead of separate values.
  Add routines to query the library's free list sizes and allocation stats.
2020-03-24 07:00:36 -05:00
Quincey Koziol
d3ef866a29 Merge pull request #2445 in HDFFV/hdf5 from alloc_stats to develop
* commit 'b51585a9110c4322c52f9dcdc60cd26c3ea44546':
  Revise API for H5get_alloc_stats() to take a struct instead of separate values.
  Add routines to query the library's free list sizes and allocation stats.
2020-03-23 18:01:43 -05:00
Allen Byrne
19c47b244b Correct syntax 2020-03-23 16:57:15 -05:00
Allen Byrne
d9a5a49e65 Update CMake compiler flags to use same set of warnings 2020-03-23 15:10:33 -05:00
Allen Byrne
477c96f06f Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'e916acd018d5a307e7690a7978a1b73e83508f2b':
  Move the GNU warnings configuration under config/gnu-warnings/ and trim the filename prefixes.  Update config/gnu-flags to suit.
  By default, demote warnings promoted to errors back to warnings.
  Incorporate the H5_ECFLAGS into the library CFLAGS.  Now a bunch of errors will occur.  Next commit will demote the warnings promoted to errors back to warnings again.
  Break out warnings into more files that autoconf and CMake can share.  This change temporarily disables the warnings that were promoted to errors, but I will add those warnings back as warnings, not errors, in the next commit.
2020-03-23 12:25:48 -05:00
David Young
e916acd018 Merge pull request #2402 in HDFFV/hdf5 from ~DYOUNG/werror:break-out-warnings to develop
* commit '2f09d8f3c8a4a44932c1b8ffb0f6ea2219059a5c':
  Move the GNU warnings configuration under config/gnu-warnings/ and trim the filename prefixes.  Update config/gnu-flags to suit.
  By default, demote warnings promoted to errors back to warnings.
  Incorporate the H5_ECFLAGS into the library CFLAGS.  Now a bunch of errors will occur.  Next commit will demote the warnings promoted to errors back to warnings again.
  Break out warnings into more files that autoconf and CMake can share.  This change temporarily disables the warnings that were promoted to errors, but I will add those warnings back as warnings, not errors, in the next commit.
2020-03-23 11:55:07 -05:00
vchoi
afdcac28b8 A fix in the cleaning up code for datatype when datatype initialization via H5D__init_type() fails.
This is triggered by the tests for revised references when the libver bounds setting does not allow version
4 datatype message to be created.  The test failure is abort core dumped.
This is due to the datatype initialization fails before the datatype ID is registered.
The datatype cleanup code should provide for the above situation.
The code to fix the problem is the same as what is done in H5D__open_oid().
2020-03-23 01:16:32 -05:00
Quincey Koziol
b51585a911 Revise API for H5get_alloc_stats() to take a struct instead of separate values. 2020-03-20 16:39:55 -05:00
Quincey Koziol
66350c3356 Merge remote-tracking branch 'origin/develop' into alloc_stats 2020-03-20 15:50:24 -05:00
Allen Byrne
13da6d137f Allow use of INTEL icl/icl++ for clang 2020-03-19 10:57:21 -05:00
Allen Byrne
26fecb8c5a Merge pull request #2457 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '6be711bbd2b86de5bcd8f092d8f27d6b2251c111':
  Fix threadsafe for new test
2020-03-19 09:23:02 -05:00
David Young
2f09d8f3c8 Move the GNU warnings configuration under config/gnu-warnings/ and trim
the filename prefixes.  Update config/gnu-flags to suit.

I also made changes to config/cmake/HDFCompilerFlags.cmake, but I'm not
sure they're correct.
2020-03-18 21:12:53 -05:00
Dana Robinson
eecddd9f3e Merge pull request #2456 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor to develop
* commit 'ce7936d2b256bdd5e61a5ef018f35e9562667cac':
  Fixed the RELEASE.txt note for HDFFV-11057
  Fix shutdown errors when using the HDF5_VOL_CONNECTOR environment variable to set a dynamically loaded plugin as the default VOL connector. Fixes HDFFV-11057
  Very minor comment change in H5VLconnector.h.
2020-03-18 17:07:37 -05:00
Quincey Koziol
ae5f556415 Merge remote-tracking branch 'origin/develop' into alloc_stats 2020-03-18 16:18:09 -05:00
Dana Robinson
ce7936d2b2 Fixed the RELEASE.txt note for HDFFV-11057 2020-03-18 14:08:47 -07:00
Dana Robinson
693008ecaf Fix shutdown errors when using the HDF5_VOL_CONNECTOR environment
variable to set a dynamically loaded plugin as the default VOL
connector. Fixes HDFFV-11057
2020-03-18 13:58:02 -07:00
Allen Byrne
6be711bbd2 Fix threadsafe for new test 2020-03-18 15:31:27 -05:00
Dana Robinson
f0a687f133 Merge branch 'develop' into develop_minor 2020-03-18 13:06:15 -07:00
Jordan Henderson
fa087c3919 Update Tools library to be better compatible with VOL connectors
Modify h5repack to integrate with VOL connectors

Update tools library to accomodate VOL connectors

Update logic in h5tools_fopen for VOL connectors

Add command-line options to h5repack for specifying in/out VOL
connectors

Implement h5tools_set_vol_fapl

Fix library shutdown issue

Integrate ROS3 and HDFS VFDs into new h5tools_get_fapl() scheme

Avoid H5Ocopy in h5repack when using different VOL connectors

Update h5tools_test_utils.c for ROS3 and HDFS integration
2020-03-17 14:25:36 -05:00
Jacob Smith
f771958d75 Add function header comment for mirror_writer:run_writer(). 2020-03-16 15:39:26 -05:00
Vailin Choi
9c93c1bb00 Merge pull request #2451 in HDFFV/hdf5 from ~VCHOI/my_third_fork:bugfix/develop_seg_fault_sel_compat to develop
* commit '81b1ed4e1724b8a6a731ab2b8fb03234a8b49d15':
  Fix issues when deserializing point/all/none selection with version beyond the library's supported version: (1) Verify the decoded version before proceeding further with deserialization (2) Close the dataspace if errors occurred after opening the dataspace
2020-03-16 14:06:57 -05:00
Jacob Smith
b65405439d Add Splitter VFD to library.
* "Simultaneous and equivalent" Read-Write and Write-Only channels for
  file I/O.
* Only supports drivers with the H5FD_FEAT_DEFAULT_VFD_COMPATIBLE flag for
  now, preventing issues with multi-file drivers.

Add Mirror VFD to library.

* Write-only operations over a network.
* Uses TCP/IP sockets.
* Server and auxiliary server-shutdown programs provided in a new directory,
  `utils/mirror_vfd`.
* Automated testing via loopback ("remote" of localhost).
2020-03-13 17:13:17 -05:00
Vailin Choi
81b1ed4e17 Fix issues when deserializing point/all/none selection with version beyond the library's supported version:
(1) Verify the decoded version before proceeding further with deserialization
(2) Close the dataspace if errors occurred after opening the dataspace
2020-03-13 11:22:22 -05:00
Dana Robinson
3d29cbb27f Very minor comment change in H5VLconnector.h. 2020-03-12 13:21:11 -07:00
Quincey Koziol
545d0f4db3 Merge remote-tracking branch 'origin/develop' into alloc_stats 2020-03-12 14:36:14 -05:00
David Young
7613f7e1aa Merge pull request #2378 in HDFFV/hdf5 from ~DYOUNG/werror:dont-crash-on-close to develop
* commit '093c2c7e69bc4a40e9d49eece1d6fdcf54e8ecb0':
  Avoid a crash, don't check if we're flushing when the file is closing: there's no need to check if the metadata cache is flushing if we already know the file is closing, because the condition we rely on is "closing OR flushing."  Further, the cache may have already gone away, so sometimes calling into the cache to see if it's flushing will crash the program.
2020-03-12 14:00:07 -05:00
Larry Knox
d9f93659a2 Add \d to list of characters allowed after '-' in versions. 2020-03-12 09:51:53 -05:00
Vailin Choi
a24b0c4a84 Merge pull request #26 in ~VCHOI/my_third_fork from develop to bugfix/develop_seg_fault_sel_compat
* commit '9abbdeaa66c70a00b6a7bedee9c76d2493a8e947': (31 commits)
  Remove system command from valgrind reports
  Whitespace
  Fix incorrect FUNC_LEAVE macro (should match FUNC_ENTER_*_TAG).
  Add semicolons to more PASSED() invocations.
  So that I can use PASSED(); anywhere a statement can go, #define PASSED() with a do-while wrapper.
  revert type cast
  Switch the 'get offset' operation from a dataset 'get' callback to a [native] dataset 'optional' operation.
  Modfy expression to match mpicc build with Intel as intel compiler, not gcc.
  Complete the comment on thread_main(), explaining why the barrier is used.
  Fixed issue building HDF5 with NAG Fortran 7.0.
  The first implementation seemed to allow for the possibility that a thread could block at the barrier, wake and exit the barrier, re-acquire the barrier lock and increase `nentered` before the other blocked threads woke and checked `nentered % count == 0`.  Then the other blocked threads would check `nentered % count == 0` and, finding it false, go back to sleep in the barrier.  This new implementation waits for a looser condition to obtain so that threads don't go back to sleep in the barrier.
  Add java version and reference libsettings
  Test the right condition for the EBUSY return in pthread_barrier_destroy().
  s/exit_failure/EXIT_FAILURE/g
  Implement pthread_barrier(3) for Darwin using a counter, condition variable, and mutex.  Untested.
  Update examples and fix old version references.
  Move MODEL check to before usage in CTestScript.cmake.
  Copy generated files instead creating twice
  Fix standalone link
  Fix Fortran macro use and jni comment
  ...
2020-03-11 16:23:56 -05:00
Quincey Koziol
04b8cc82a8 Add routines to query the library's free list sizes and allocation stats. 2020-03-10 18:37:55 -05:00
David Young
9abbdeaa66 Merge pull request #2351 in HDFFV/hdf5 from ~DYOUNG/werror:b-bye-HDpthread_self to develop
* commit '224cb4a03406ed72e02d026efeab47fdf7f6b33b':
  Use a naked pthread_self() call in the HDF5 thread wrappers.
2020-03-05 11:06:39 -06:00
David Young
7350db497b Merge pull request #2424 in HDFFV/hdf5 from ~DYOUNG/hdf5:passed-do-while to develop
* commit 'b53eb6fb29e556c482ce20fa7a21485c99beea74':
  Add semicolons to more PASSED() invocations.
  So that I can use PASSED(); anywhere a statement can go, #define PASSED() with a do-while wrapper.
2020-03-05 11:05:29 -06:00
Allen Byrne
7413557dd5 Merge pull request #2434 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '24298a031f0b7f6a04364cfbfbdd9c8b6cc1a038':
  Remove system command from valgrind reports
  Whitespace
2020-03-04 09:29:03 -06:00
Allen Byrne
24298a031f Remove system command from valgrind reports 2020-03-02 14:11:25 -06:00
Allen Byrne
5fc283da8e Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'a01ac97ba509e51905b816e8a29b5d0b2bc8be87':
  Fix incorrect FUNC_LEAVE macro (should match FUNC_ENTER_*_TAG).
2020-03-01 09:24:12 -06:00
Jake Smith
a01ac97ba5 Merge pull request #2427 in HDFFV/hdf5 from ~JAKE.SMITH/hdf5:develop to develop
* commit '2d9a81878d05732725f96d7d9b20ada8dfd2a146':
  Fix incorrect FUNC_LEAVE macro (should match FUNC_ENTER_*_TAG).
2020-02-29 23:39:00 -06:00
Allen Byrne
5abf6785cb Whitespace 2020-02-29 14:01:55 -06:00
Kimmy Mu
6e565dd271 Merge pull request #2431 in HDFFV/hdf5 from ~KMU/hdf5:bugfix/type_cast to develop
* commit 'b5cf422799797cf0b573cc9992f866381bd63054':
  revert type cast
2020-02-28 22:12:16 -06:00
Jacob Smith
2d9a81878d Fix incorrect FUNC_LEAVE macro (should match FUNC_ENTER_*_TAG). 2020-02-28 17:14:45 -06:00
David Young
b53eb6fb29 Add semicolons to more PASSED() invocations. 2020-02-28 16:52:22 -06:00
David Young
3e93aa9514 So that I can use PASSED(); anywhere a statement can go, #define PASSED() with
a do-while wrapper.
2020-02-28 16:51:55 -06:00
kmu
b5cf422799 revert type cast 2020-02-28 14:47:13 -06:00
Quincey Koziol
885aa08ec4 Merge pull request #2419 in HDFFV/hdf5 from revise_get_offset to develop
* commit '38af6ee3d59a8e836f4c62dd533ddabd914c7abb':
  Switch the 'get offset' operation from a dataset 'get' callback to a [native] dataset 'optional' operation.
2020-02-28 14:27:16 -06:00
Quincey Koziol
38af6ee3d5 Switch the 'get offset' operation from a dataset 'get' callback to a [native]
dataset 'optional' operation.
2020-02-28 14:06:28 -06:00
Larry Knox
d7eec7d6ec Merge pull request #2411 in HDFFV/hdf5 from ~DYOUNG/werror:darwin-barriers to develop
* commit '803d805c74466a9d736455930b17de2d9f5cb02d':
  Complete the comment on thread_main(), explaining why the barrier is used.
  The first implementation seemed to allow for the possibility that a thread could block at the barrier, wake and exit the barrier, re-acquire the barrier lock and increase `nentered` before the other blocked threads woke and checked `nentered % count == 0`.  Then the other blocked threads would check `nentered % count == 0` and, finding it false, go back to sleep in the barrier.  This new implementation waits for a looser condition to obtain so that threads don't go back to sleep in the barrier.
  Test the right condition for the EBUSY return in pthread_barrier_destroy().
  s/exit_failure/EXIT_FAILURE/g
  Implement pthread_barrier(3) for Darwin using a counter, condition variable, and mutex.  Untested.
2020-02-28 06:22:13 -06:00
Larry Knox
cfc52fc273 Merge pull request #2415 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit '811988f82c182012704942d333ee7800f4a78349':
  Modfy expression to match mpicc build with Intel as intel compiler, not gcc.
2020-02-27 22:03:28 -06:00
Larry Knox
811988f82c Modfy expression to match mpicc build with Intel as intel compiler, not
gcc.
2020-02-27 17:06:41 -06:00
Scot Breitenfeld
0a581b0ac0 Merge pull request #2414 in HDFFV/hdf5 from ~BRTNFLD/hdf5_msb:develop to develop
* commit 'dde7e73d9fe8cc3b849767790aa9b13ee2d600cd':
  Fixed issue building HDF5 with NAG Fortran 7.0.
2020-02-27 16:23:06 -06:00
David Young
803d805c74 Complete the comment on thread_main(), explaining why the barrier is used. 2020-02-27 16:14:44 -06:00
Allen Byrne
a8755bfe2b Merge pull request #2412 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '6686cac564f5d0015a32b92e4478002069c973ee':
  Add java version and reference libsettings
2020-02-27 14:55:48 -06:00
M. Scot Breitenfeld
dde7e73d9f Fixed issue building HDF5 with NAG Fortran 7.0.
Accounted for the additon of half precision floating-point with a KIND=16.

HDFFV-11033
2020-02-27 12:19:29 -06:00
David Young
4be589813a The first implementation seemed to allow for the possibility that a thread
could block at the barrier, wake and exit the barrier, re-acquire the barrier
lock and increase `nentered` before the other blocked threads woke and checked
`nentered % count == 0`.  Then the other blocked threads would check `nentered
% count == 0` and, finding it false, go back to sleep in the barrier.  This new
implementation waits for a looser condition to obtain so that threads don't go
back to sleep in the barrier.
2020-02-27 11:27:45 -06:00
Allen Byrne
6686cac564 Add java version and reference libsettings 2020-02-27 10:51:13 -06:00
David Young
11d22f3ea5 Test the right condition for the EBUSY return in pthread_barrier_destroy(). 2020-02-27 10:17:24 -06:00
David Young
802bf2dc1e s/exit_failure/EXIT_FAILURE/g 2020-02-27 10:16:49 -06:00
Allen Byrne
9a0e84fb47 Merge pull request #2409 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '13f5b3aee20d1d65f56dc08f088e0f218da5cf37':
  Update examples and fix old version references.
  Move MODEL check to before usage in CTestScript.cmake.
2020-02-27 08:56:44 -06:00
David Young
b87d9cb50e Implement pthread_barrier(3) for Darwin using a counter, condition variable,
and mutex.  Untested.
2020-02-26 20:38:57 -06:00
Allen Byrne
13f5b3aee2 Update examples and fix old version references. 2020-02-26 13:54:34 -06:00
Allen Byrne
f53220dc20 Move MODEL check to before usage in CTestScript.cmake. 2020-02-26 09:50:38 -06:00
Allen Byrne
1775d6c9bc Merge pull request #2405 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '2af8a87af0d7a1589a4df22d16b2d2513876e7a9':
  Copy generated files instead creating twice
  Fix standalone link
2020-02-25 16:28:11 -06:00
Allen Byrne
2af8a87af0 Copy generated files instead creating twice 2020-02-25 16:04:56 -06:00
Allen Byrne
4906d3d6a8 Fix standalone link 2020-02-25 14:57:14 -06:00
David Young
0f32728f72 By default, demote warnings promoted to errors back to warnings. 2020-02-25 12:02:07 -06:00
David Young
626c60dec4 Incorporate the H5_ECFLAGS into the library CFLAGS. Now a bunch of errors will
occur.  Next commit will demote the warnings promoted to errors back to
warnings again.
2020-02-25 11:59:37 -06:00
David Young
d8e5995f6d Break out warnings into more files that autoconf and CMake can share. This
change temporarily disables the warnings that were promoted to errors, but I
will add those warnings back as warnings, not errors, in the next commit.
2020-02-25 11:38:15 -06:00
Allen Byrne
ddb95a6dc5 Merge pull request #2398 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '04e67af8f968b2c6f50cb42990d3dfa79aa353d9':
  Fix Fortran macro use and jni comment
2020-02-25 09:40:07 -06:00
Allen Byrne
04e67af8f9 Fix Fortran macro use and jni comment 2020-02-25 09:22:19 -06:00
Allen Byrne
fe7c3fb646 Merge pull request #2394 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'cf58730177d60fd7311582a29539d87f10a7d88e':
  Update Windows platforms
  HDFFV-11036 add release note
  HDFFV-11036 add file compare test process
  Correct usage of add_compile_definitions
2020-02-24 13:59:40 -06:00
Allen Byrne
cf58730177 Update Windows platforms 2020-02-24 13:54:00 -06:00
Allen Byrne
1885c3e7d7 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'd24afb233383aa6c945fad430eb1b66edc4d6c63':
  Add missing MANIFEST entry, ./doc/code-conventions.md .
2020-02-24 13:00:25 -06:00
Allen Byrne
4fcd2589bb HDFFV-11036 add release note 2020-02-24 12:49:56 -06:00
Allen Byrne
f7212df030 HDFFV-11036 add file compare test process 2020-02-24 12:45:22 -06:00
David Young
d24afb2333 Merge pull request #2385 in HDFFV/hdf5 from manifest-repair to develop
* commit '921278c604b3129c1ff5066f0a2b94abcb3aa8f7':
  Add missing MANIFEST entry, ./doc/code-conventions.md .
2020-02-24 10:49:09 -06:00
Allen Byrne
1773b327fb Correct usage of add_compile_definitions 2020-02-23 16:22:31 -06:00
Larry Knox
2129aa4c24 Merge pull request #2390 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '666205a55f01698a71484f504bc8eb9541800f25':
  TRILAB-142 Change minimum CMake version to 3.12
2020-02-21 23:19:57 -06:00
Allen Byrne
666205a55f TRILAB-142 Change minimum CMake version to 3.12 2020-02-21 16:16:06 -06:00
Allen Byrne
909f9ee6d0 Merge pull request #2388 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '380fe7cfdfd98461cb1bff54bad4de0ee9904ad6':
  Fix always true issue because member is not dynamically allocated
  CMake cleanup
  HDFFV-11032 fix JNI call
2020-02-21 16:05:51 -06:00
Allen Byrne
380fe7cfdf Fix always true issue because member is not dynamically allocated 2020-02-21 15:15:34 -06:00
Allen Byrne
3f3e1520d5 CMake cleanup 2020-02-21 15:14:42 -06:00
Allen Byrne
399ef726f0 HDFFV-11032 fix JNI call 2020-02-21 15:14:00 -06:00
Jordan Henderson
0175224cb8 Merge pull request #1988 in HDFFV/hdf5 from ~JHENDERSON/hdf5_pr:develop to develop
* commit '51b8c63864c72de9a7b40c00673fe07510fec27e':
  Partial fix for HDFFV-10792
2020-02-21 14:36:43 -06:00
Jordan Henderson
51b8c63864 Merge develop 2020-02-21 14:30:34 -06:00
David Young
c5ab228563 Merge pull request #2384 in HDFFV/hdf5 from h5f_decode_length to develop
* commit '158ba17be0ad40e3e47a951c1340710608347772':
  Replace the old H5F_DECODE_LENGTH() implementation with one that initializes the variable it's loading on every path.
2020-02-20 14:37:35 -06:00
David Young
921278c604 Add missing MANIFEST entry, ./doc/code-conventions.md . 2020-02-20 13:34:33 -06:00
David Young
158ba17be0 Replace the old H5F_DECODE_LENGTH() implementation with one that
initializes the variable it's loading on every path.
2020-02-19 13:18:48 -06:00
Scot Breitenfeld
97fb53cfea Merge pull request #2379 in HDFFV/hdf5 from ~BRTNFLD/hdf5_msb:develop to develop
* commit 'def3f1a12e7c2ec165f40b9839f6bfe3da59807b':
  Corrected INTERFACE INTENT(IN) to INTENT(OUT) for buf_size inh5fget_file_image_f.
2020-02-19 12:33:31 -06:00
David Young
7b4131c2ae Merge pull request #2367 in HDFFV/hdf5 from ~DYOUNG/werror:unused to develop
* commit '50aac126d7c4082c2aeb0f3a68cad26bd1cd9783':
  Start to document the function/parameter/variable attribute macros.
  Filter all of the new _USED / _UNUSED type modifiers.
  H5_HAVE_PARALLEL, _DEBUG_API, etc.  Add attributes to some variables and parameters that are unused under some configurations.
2020-02-19 09:38:02 -06:00
M. Scot Breitenfeld
def3f1a12e Corrected INTERFACE INTENT(IN) to INTENT(OUT) for buf_size inh5fget_file_image_f.
HDFFV-11029
2020-02-18 17:26:42 -06:00
David Young
50aac126d7 Start to document the function/parameter/variable attribute macros. 2020-02-18 17:07:40 -06:00
David Young
ac7cd484d8 Filter all of the new _USED / _UNUSED type modifiers. 2020-02-18 16:31:35 -06:00
David Young
47b79b7422 Merge pull request #2369 in HDFFV/hdf5 from ~DYOUNG/vs2010:develop to develop
Merged per discussion with Elena.

* commit 'b4697f969295245840350e17d75d92a0fdd7e7a9':
  Use HD prefix.
  Delete unhelpful comment per Jordan's question.
  Make sure that H5TS_thread_id() is available as either a function or a macro in all configurations.
  Provide local copies of err(3)- and errx(3)-alike functions for Visual Studio compatibility.
  Provide C99/POSIX.1 format strings PRI[doux]{8,16,32,64,MAX,PTR} on systems that are missing <inttypes.h>.
2020-02-17 10:47:29 -06:00
David Young
fa2b89c6b0 Merge pull request #2325 in HDFFV/hdf5 from ~DYOUNG/werror:h5t_copy to develop
Merged per discussion with Elena.

* commit '3f903a441ad84001ea66589728bd8b036b6fdfca':
  Take out the temporary performance tests.
  Make calls through a function pointer.  Use the same number of arguments, always.
  Increase iterations, provide a baseline for no-op, simplify the overhead case a bit.
  Temporarily add some code that measures the time to run the simplest possible H5T__copy_all()-like routine 10 million times and then measures the version with FUNC_ENTER_STATIC/_LEAVE_NOAPI and a HGOTO_ERROR() statement.
  H5T_copy() constification plus Quincey's contributions.
2020-02-17 10:46:52 -06:00
David Young
3f903a441a Take out the temporary performance tests. 2020-02-14 15:01:44 -06:00
David Young
093c2c7e69 Avoid a crash, don't check if we're flushing when the file is closing:
there's no need to check if the metadata cache is flushing if we already
know the file is closing, because the condition we rely on is "closing
OR flushing."  Further, the cache may have already gone away, so
sometimes calling into the cache to see if it's flushing will crash the
program.
2020-02-13 10:01:05 -06:00
David Young
b4697f9692 Use HD prefix. 2020-02-12 14:07:47 -06:00
Allen Byrne
ddf139aed5 Merge pull request #2377 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'a68302883a243c33ceb495e3e151331fa267f455':
  TRILAB-148 fix sanitizer and -fsanitize usage
2020-02-12 11:32:52 -06:00
Allen Byrne
a68302883a TRILAB-148 fix sanitizer and -fsanitize usage 2020-02-12 09:42:23 -06:00
Allen Byrne
b8a57cb8dc Merge pull request #2372 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'b6ea9d25194797fdfb0880ee9721b95bc1533af7':
  Update sanitizer note.
2020-02-11 14:20:09 -06:00
Allen Byrne
b6ea9d2519 Update sanitizer note. 2020-02-11 13:48:55 -06:00
David Young
63c95faf49 Remove tongue-in-cheek credit for Rusty Shackleford and Dale Alvin Gribble.
Delete the comment questioning whether pthread_mutex_lock is allowed
in a key destructor, since pthread_key_create(3) provides the answer:

   There  is  no  notion  of a destructor-safe function. If an application
   does not call pthread_exit() from a signal handler, or if it blocks any
   signal whose handler may call pthread_exit() while calling async-unsafe
   functions, all functions may be safely called from destructors.

Delete redundant comment.
2020-02-10 17:24:04 -06:00
David Young
4c7254b6ec Make sure that H5TS_thread_id() is available as either a function or a macro in
all configurations.

(Merge remote-tracking branch 'origin/thread_id_everywhere' into vs2010-develop)
2020-02-10 16:59:14 -06:00
Jake Smith
444a666f1d Merge pull request #2357 in HDFFV/hdf5 from ~JAKE.SMITH/hdf5:develop to develop
* commit '6a93d1f834184853913d43e50fda5b350fa1dc38':
  Fix improper S3 signing key null check (HDFFV-11015).
2020-02-10 16:57:33 -06:00
Scot Breitenfeld
ae8091f568 Merge pull request #2366 in HDFFV/hdf5 from ~BRTNFLD/hdf5_msb:develop to develop
* commit '79c62f9a25906705735efa9286124c0d3aa9276a':
  HDFFV-11018 Add Fortran H5F_LIBVER_V*_F definitions
2020-02-10 15:39:42 -06:00
M. Scot Breitenfeld
79c62f9a25 HDFFV-11018 Add Fortran H5F_LIBVER_V*_F definitions
Added
------
New Definitions:

  INTEGER :: H5F_LIBVER_ERROR_F
  INTEGER :: H5F_LIBVER_NBOUNDS_F
  INTEGER :: H5F_LIBVER_V18_F
  INTEGER :: H5F_LIBVER_V110_F
  INTEGER :: H5F_LIBVER_V112_F
  INTEGER :: H5F_LIBVER_V114_F

New API:
  h5pget_libver_bounds_f(fapl_id, low, high, hdferr)

Removed:
  call to C wrapper h5pset_libver_bounds_c in h5pset_libver_bounds_f
2020-02-10 15:30:18 -06:00
David Young
f9a8fd5a4c H5_HAVE_PARALLEL, _DEBUG_API, etc. Add attributes to some variables and
parameters that are unused under some configurations.
2020-02-10 14:41:20 -06:00
David Young
3d2c0d7b0d Delete unhelpful comment per Jordan's question. 2020-02-10 13:31:56 -06:00
David Young
3109f9e323 Follow HDF5 conventions. 2020-02-07 16:34:01 -06:00
Muqun Yang
e5ae310109 Merge pull request #2361 in HDFFV/hdf5 from ~MYANG6/hdf5-develop:develop to develop
* commit '1b937c69f4b8187401eeb8eef195bbcc2ea58312':
  HDFFV-11014, fix the h5repack issue that misses a few attributes during the repacking. The flag that checks the object reference attribute is not updated properly. The fix is trivial. Just need to move the flag update line into the inner loop. Tested at Jelly. Also update the release.txt.
2020-02-07 15:26:30 -06:00
David Young
39fd512fe7 Make sure that H5TS_thread_id() is available as either a function or a macro in
all configurations.

Previously it was neither declared nor defined in --disable-threadsafety
builds.  The compiler's warning got lost in the noise---I first saw the issue
because my -Werror branch stopped compiling cold---and the tests still linked
and ran.
2020-02-07 14:57:46 -06:00
David Young
c7ad81b0ea Provide local copies of err(3)- and errx(3)-alike functions
for Visual Studio compatibility.
2020-02-07 14:45:08 -06:00
Muqun Yang
1b937c69f4 HDFFV-11014, fix the h5repack issue that misses a few attributes during the repacking. The flag that checks the object reference attribute is not updated properly. The fix is trivial. Just need to move the flag update line into the inner loop. Tested at Jelly. Also update the release.txt. 2020-02-07 14:43:02 -06:00
Jacob Smith
6a93d1f834 Fix improper S3 signing key null check (HDFFV-11015). 2020-02-07 13:47:15 -06:00
David Young
b2cb485268 Provide C99/POSIX.1 format strings PRI[doux]{8,16,32,64,MAX,PTR} on systems
that are missing <inttypes.h>.
2020-02-07 11:40:31 -06:00
David Young
021740bac0 Merge pull request #2354 in HDFFV/hdf5 from ~DYOUNG/werror:fix_h5ts_private to develop
* commit '8f77878953b55cbffb6331161d12eab1c778a8a5':
  Oops, the test has to return success in the unimplemented case.
2020-02-06 16:58:50 -06:00
David Young
a5a9e75f6a Make calls through a function pointer. Use the same number of arguments,
always.
2020-02-06 11:00:10 -06:00
David Young
8f77878953 Oops, the test has to return success in the unimplemented case. 2020-02-06 10:43:37 -06:00
David Young
80179b0648 Merge pull request #2349 in HDFFV/hdf5 from ~DYOUNG/werror:fix_h5ts_private to develop
* commit 'a0a75e7b6e157b40bbe09c7955153835ce200f79':
  If H5_HAVE_THREADSAFE is not #defined, define nothing but a stub implementation of H5TS_thread_id().
2020-02-05 19:34:06 -06:00
David Young
224cb4a034 Use a naked pthread_self() call in the HDF5 thread wrappers. 2020-02-05 19:31:59 -06:00
Jordan Henderson
9064ad0a2f Merge pull request #2346 in HDFFV/hdf5 from ~JHENDERSON/hdf5:develop to develop
* commit 'be0cd0b64aef3f64b15d5fc89cd15213ad939763':
  Add RELEASE.txt note for token refactoring changes
2020-02-05 18:11:21 -06:00
David Young
a0a75e7b6e If H5_HAVE_THREADSAFE is not #defined, define nothing but a stub implementation
of H5TS_thread_id().
2020-02-05 16:47:55 -06:00
Jordan Henderson
be0cd0b64a Merge branch 'develop' of ssh://git@bitbucket.hdfgroup.org:7999/~jhenderson/hdf5.git into develop 2020-02-05 16:07:33 -06:00
Jordan Henderson
469c56d8a9 Add RELEASE.txt note for token refactoring changes 2020-02-05 16:07:33 -06:00
David Young
00608a8756 Merge pull request #2341 in HDFFV/hdf5 from ~DYOUNG/werror:thread_id to develop
* commit 'cefacee21b5ad569e2394b32793648e1b80f3d6b':
  src/H5Eint.c: #include H5TSprivate.h for H5TS_thread_id() definitions.
  Change thread IDs to uint64_t from unsigned long, per Quincey's suggestion.
  Add thread_id.c to the MANIFEST and the CMakeLists.txt per Allen's request.
  Replace pthread_self_ulong() with H5TS_thread_id().  The POSIX Threads implementation ought to be portable to any system that has POSIX Threads.  On Windows, I use the same API call as before.
2020-02-05 13:34:00 -06:00
Allen Byrne
7ab0fa2d7c Merge pull request #2345 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '7c9427219ff903ee0ebdd56ed253b29e83ce0c06':
  HDFFV-11012 - add release note
2020-02-05 09:56:53 -06:00
Allen Byrne
7c9427219f HDFFV-11012 - add release note 2020-02-05 09:39:13 -06:00
Allen Byrne
0d79831dce Merge pull request #2343 in HDFFV/hdf5 from ~BYRN/hdf5_adb:bugfix/HDFFV-11012-fortran-include-paths to develop
* commit '3ec66d55426c5c947eeb6f4d7d5d31b38f59ebf6':
  HDFFV-11012 - add correct fortran include path properties
2020-02-05 08:52:54 -06:00
Allen Byrne
7e6d428648 Merge pull request #2342 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '93f6e6761833ba579128503c3fe47b76b02fa85c':
  HDFFV-10996 add release note
  HDFFV-10996 - add java vol tests
2020-02-04 11:37:39 -06:00
Allen Byrne
93f6e67618 HDFFV-10996 add release note 2020-02-04 11:36:56 -06:00
Allen Byrne
3ec66d5542 HDFFV-11012 - add correct fortran include path properties 2020-02-04 11:28:45 -06:00
David Young
cefacee21b src/H5Eint.c: #include H5TSprivate.h for H5TS_thread_id() definitions.
test/thread_id.c: move threads_failure() inside #ifdefs.
2020-02-03 16:33:28 -06:00
David Young
a20b68b257 Change thread IDs to uint64_t from unsigned long, per Quincey's suggestion.
Fix a typo in the H5TS_thread_init() comment and reword some ID
properties.
2020-02-03 16:23:06 -06:00
Allen Byrne
00d68851fc HDFFV-10996 - add java vol tests 2020-02-03 13:45:14 -06:00
David Young
65600cbd72 Add thread_id.c to the MANIFEST and the CMakeLists.txt per Allen's
request.
2020-02-03 12:59:52 -06:00
David Young
986c7451a0 Replace pthread_self_ulong() with H5TS_thread_id(). The POSIX Threads
implementation ought to be portable to any system that has POSIX
Threads.  On Windows, I use the same API call as before.
2020-02-03 11:59:14 -06:00
Dana Robinson
0147d2493e Merge pull request #2329 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:H5MM_const to develop
* commit '10301154215fb6a22590e80f7b5ed0005f3e1786':
  Minor refactoring to the VFD info free call.
  Updated the 'const memory free' changes based on PR feedback.
  Added a free wrapper that lets us free constant pointers without generating warnings.
2020-01-30 18:50:41 -06:00
Dana Robinson
1030115421 Minor refactoring to the VFD info free call. 2020-01-30 16:47:30 -08:00
Dana Robinson
88b4c915e8 Updated the 'const memory free' changes based on PR feedback. 2020-01-30 16:31:11 -08:00
David Young
69a064eef8 Increase iterations, provide a baseline for no-op, simplify the overhead
case a bit.
2020-01-30 15:46:12 -06:00
Allen Byrne
0e56affc7e Merge pull request #2330 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '099e68140101a6a2cd128f68d5f6b76661a1de92':
  VS2010 needs an underscore
2020-01-30 14:11:36 -06:00
David Young
f398fe6bee Temporarily add some code that measures the time to run the simplest possible
H5T__copy_all()-like routine 10 million times and then measures the version
with FUNC_ENTER_STATIC/_LEAVE_NOAPI and a HGOTO_ERROR() statement.
2020-01-30 14:10:07 -06:00
Allen Byrne
099e681401 VS2010 needs an underscore 2020-01-30 13:23:54 -06:00
Dana Robinson
9da387342e Added a free wrapper that lets us free constant pointers without
generating warnings.

Also, brought the const-ness of the VOL connector info in line with
the VFD info (not visible externally).
2020-01-30 11:01:25 -08:00
Dana Robinson
d1f2eff231 Merge pull request #2328 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor to develop
* commit 'a67c238feef1487814b02132bfd7961f22d9d6eb':
  Cleaned up remaining warnings in high-level library.
2020-01-30 10:43:40 -06:00
Dana Robinson
a67c238fee Cleaned up remaining warnings in high-level library. 2020-01-29 18:09:29 -08:00
Allen Byrne
1255363e9b Merge pull request #2326 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'c5e2d975734d6e7a88fb48b76ec7e11d0a7763de':
  Small fixes for tools and skip autotools tests for no filter
  Correctly manage warnings for new tests
  Ext libs ZLIB and SZIP warnings are separate concerns
2020-01-29 16:25:16 -06:00
Allen Byrne
c5e2d97573 Small fixes for tools and skip autotools tests for no filter 2020-01-29 15:39:25 -06:00
Allen Byrne
1eb6a4512b Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '30ca0cdc9a0b1f7fc1521007c65d9baeb69c9a23':
  fix bad function cast warning
  initialization discards const warning
  testpar/t_2Gio.c: Fix a typo that I think was introduced by a         previous warnings PR.  An array element was assigned to         itself---shape[2]Â =Â shape[2];---instead of being assigned to         chunk[2].
  Reduce casts of HDcalloc()/HDmalloc() that -Wc++-compat required.
  Reduce differences between my -Werror branch and `develop`:
  fix unused function warning
2020-01-29 14:15:00 -06:00
Kimmy Mu
30ca0cdc9a Merge pull request #2323 in HDFFV/hdf5 from ~KMU/hdf5:misc to develop
* commit 'c586d91ea003f37d130c2c45eea6f573f7d3d3bc':
  fix bad function cast warning
  initialization discards const warning
  fix unused function warning
2020-01-29 14:11:51 -06:00
David Young
4a4755d314 H5T_copy() constification plus Quincey's contributions. 2020-01-29 14:11:10 -06:00
kmu
c586d91ea0 Merge branch 'develop' into misc 2020-01-29 14:03:48 -06:00
David Young
43d41633a1 Merge pull request #2318 in HDFFV/hdf5 from ~DYOUNG/werror:reduce-werror-diffs-1 to develop
* commit 'fa1b2f6ef35c459c9f74ead885c119ae7f61c056':
  Reduce differences between my -Werror branch and `develop`:
2020-01-29 13:51:52 -06:00
David Young
0d6e025888 Merge pull request #2320 in HDFFV/hdf5 from ~DYOUNG/werror:reduce-werror-diffs-2 to develop
* commit 'a5f236e83bdd29e660a55c5577a69a3809605cda':
  Reduce casts of HDcalloc()/HDmalloc() that -Wc++-compat required.
2020-01-29 13:51:27 -06:00
David Young
1b49ccd7fa Merge pull request #2321 in HDFFV/hdf5 from ~DYOUNG/werror:reduce-werror-diffs-3 to develop
* commit 'f19e06b59ee53f17465a7b5974c25c3245a40d9a':
  testpar/t_2Gio.c: Fix a typo that I think was introduced by a         previous warnings PR.  An array element was assigned to         itself---shape[2]Â =Â shape[2];---instead of being assigned to         chunk[2].
2020-01-29 13:51:10 -06:00
kmu
4453dc2998 fix bad function cast warning 2020-01-29 13:43:31 -06:00
kmu
0443c582d8 initialization discards const warning 2020-01-29 13:31:14 -06:00
Allen Byrne
661cf6b79b Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '20c09524ea348f4009555a1cba2731842b9af80e':
  HDFFV-11011 - merge include list
  HDFFV-11011 correct issues with target file extension
2020-01-29 13:14:40 -06:00
Allen Byrne
20c09524ea Merge pull request #2319 in HDFFV/hdf5 from ~BYRN/hdf5_adb:bugfix/HDFFV-11011 to develop
* commit 'c8096118d5edd9f27ff0f6180a4dde4c10aafda7':
  HDFFV-11011 - merge include list
  HDFFV-11011 correct issues with target file extension
2020-01-29 13:12:14 -06:00
Allen Byrne
c8096118d5 HDFFV-11011 - merge include list 2020-01-29 12:13:28 -06:00
Allen Byrne
07eaa995c6 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '31616380d107e8f4e4084084984a80871c17528b':
  Introduce new H5VL _by_value routines
2020-01-29 12:11:50 -06:00
Jordan Henderson
31616380d1 Merge pull request #2317 in HDFFV/hdf5 from ~JHENDERSON/hdf5:tools_vol_update to develop
* commit 'e41f671d2ff3c7bb797ea0246e6289b0bac5a0e5':
  Introduce new H5VL _by_value routines
2020-01-29 11:53:14 -06:00
David Young
f19e06b59e testpar/t_2Gio.c: Fix a typo that I think was introduced by a
previous warnings PR.  An array element was assigned to
        itself---shape[2]Â =Â shape[2];---instead of being assigned to
        chunk[2].

fortran/src/H5Pf.c: move conditional compilation controlled by
        H5_NO_DEPRECATED_SYMBOLS outside of a function for readability.

fortran/src/H5match_types.c: put a variable's declaration under the same
        conditional compilation (H5_FORTRAN_HAVE_C_LONG_DOUBLE) as its
        use.

For now, skip compilation of some unused debug dump routines in the JNI.
While I'm in the JNI, delete a set-but-unused variable.

src/H5Z.c: condition a variable declaration on H5_NO_DEPRECATED_SYMBOLS
        so that it's not declared but unused or vice versa.

test/cache_common.h: add an #include in to get some symbols we need to
        avoid implicit declaration warnings.

test/dsets.c: use a more conventional conditional-compilation syntax.

test/dt_arith.c, test/fillval.c: initialize a bunch of uninitialized
        variables before use.

test/vfd.c: pass the expected type of `void **` to posix_memalign(3)
        instead of `int **`.

testpar/t_bigio.c: explicitly compare with 0 instead of using ! when
        "equal to 0?" is the question not "is false?"  Repair some
        indentation while I'm here.

testpar/testpar.h: repair misaligned line-continuation backslashes in a
        macro that probably should be a function so that we don't have
        to fiddle with the line continuation to begin with.

tools/src/h5repack/h5repack_main.c: fix some compiler fussing about
        enums.

tools/test/perform/pio_engine.c: the compiler fusses if you cast a
        function call returning double directly to off_t.  It's ok if
        you cast a variable that's a double to off_t, however.  Write
        and use a new function, sqrto(), to avoid the cast warnings.
2020-01-29 11:44:39 -06:00
Allen Byrne
103bcbdfd2 Correctly manage warnings for new tests 2020-01-29 11:44:35 -06:00
Allen Byrne
66e389c48a Ext libs ZLIB and SZIP warnings are separate concerns 2020-01-29 11:34:18 -06:00
David Young
a5f236e83b Reduce casts of HDcalloc()/HDmalloc() that -Wc++-compat required.
Reduce gratuitous casts---e.g., (size_t)1.

Use the right format string for a pointer.

In the H5C sanity checks, change a "size increase" variable from ssize_t
(too narrow) to int64_t (wide enough).

Parenthesize every appearance of `storage` in the macro
`H5D_CHUNK_STORAGE_INDEX_CHK(storage)` so that you can pass in an
expression like &sc and it works properly.

Disallow re-assignment of the `dset` parameter to H5D__chunk_init()
because it helped assure me that it's safe to replace the repeating
expression `&dset->shared->layout.storage.u.chunk` with `sc` throughout.

Replace lengthy expressions such as
`&dset->shared->layout.storage.u.chunk` with `sc` throughout several
functions in H5Dchunk.c ISTR that the compiler warned that `sc` was
declared but unused in a couple of functions, and then I found that `sc`
could be used in many places.  Maybe the disused `sc` appeared because a
bunch of code was copied and pasted, I don't know.  Anyway, it's a lot
tighter code now that I use `sc`.

In H5D__chunk_update_old_edge_chunks() and H5D__chunk_delete()
I actually expand `sc` and another temporary variable, `pline`,
because they're used only in !defined(NDEBUG) code.  This squashes
unused-variable warnings in the defined(NDEBUG) configuration.

Don't drop the `volatile` qualification with a cast in
tools/src/h5import/h5import.c.
2020-01-29 10:47:30 -06:00
Allen Byrne
f554a4fb54 Merge pull request #2275 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '4276e37eab01c4d67e0d669fff28d3eac31cc806':
  Remove commented warnings line
  Note for common warnings files
  Create common build system files for warnings
2020-01-29 10:41:33 -06:00
Allen Byrne
4276e37eab Remove commented warnings line 2020-01-29 10:28:10 -06:00
David Young
fa1b2f6ef3 Reduce differences between my -Werror branch and develop:
Rename index -> idx, fileno -> fnumber, fileno -> fno to avoid GCC
shadowed declaration warnings about index(3).

Convert #pragma GCC diagnostic push/pop/ignored to the HDF5 library's
H5_GCC_DIAG_OFF()/H5_GCC_DIAG_ON() macros.
2020-01-28 20:35:28 -06:00
Jordan Henderson
e41f671d2f Introduce new H5VL _by_value routines 2020-01-28 18:18:38 -06:00
kmu
684a9bd9cb Merge branch 'develop' into misc 2020-01-28 14:30:20 -06:00
kmu
52115036dd fix unused function warning 2020-01-28 14:25:40 -06:00
Allen Byrne
1755c2e38f Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '71c050f837149a0c11e0936e661047c091deaa2f':
  rename macro
  fix issues from test fail
  change condition
  pick up from Dave's fix
  leave Wswitch-default for later fix
  fix Wredundant-decls, Wswitch-default, Wdeclaration-after-statement, Wsign-compare, Wmisleading-indentation, Wshadow
2020-01-28 13:46:27 -06:00
Kimmy Mu
71c050f837 Merge pull request #2311 in HDFFV/hdf5 from ~KMU/hdf5:misc to develop
* commit '406330addf45529ecdd088f4d22e9aab9a03661d':
  rename macro
  change condition
  pick up from Dave's fix
  leave Wswitch-default for later fix
  fix Wredundant-decls, Wswitch-default, Wdeclaration-after-statement, Wsign-compare, Wmisleading-indentation, Wshadow
2020-01-28 13:28:26 -06:00
kmu
406330addf rename macro 2020-01-28 13:27:50 -06:00
Kimmy Mu
57dd6d9864 Merge pull request #2315 in HDFFV/hdf5 from ~KMU/hdf5:develop to develop
* commit '3177c89c5b0749ef1294ec60e124bf402246feba':
  fix issues from test fail
2020-01-28 13:25:09 -06:00
Allen Byrne
527aaa32b2 HDFFV-11011 correct issues with target file extension 2020-01-28 13:14:59 -06:00
kmu
3177c89c5b fix issues from test fail 2020-01-28 13:08:18 -06:00
Allen Byrne
c8e9e10593 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '15a1bce9a26b15313029410e23be6d706ad0c207':
  Replaced my_isnan with C99 isnan in h5diff.
2020-01-28 08:15:50 -06:00
Dana Robinson
15a1bce9a2 Merge pull request #2304 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:isnan_fixes to develop
* commit '8b4d774eb9bb95cb3c59f033b43ed9fba340a54a':
  Replaced my_isnan with C99 isnan in h5diff.
2020-01-28 02:44:07 -06:00
kmu
9214617e2e change condition 2020-01-27 13:41:42 -06:00
kmu
cd2f954314 pick up from Dave's fix 2020-01-27 12:57:33 -06:00
kmu
54610a7c47 leave Wswitch-default for later fix 2020-01-27 11:38:20 -06:00
Allen Byrne
6637e76a38 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '38d3834c54ee1dfa7366ae1c581909f0cf7fa000':
  Add another warning variation
  Correct ignore warnings
  Only use sanitizer with Clang
  Remove cmake macros from valgrind tests
2020-01-27 11:12:25 -06:00
Allen Byrne
38d3834c54 Merge pull request #2308 in HDFFV/hdf5 from ~BYRN/hdf5_merge_adb:develop to develop
* commit '3b804074bd358b4a1f5b8ace30f53c4a5b250bf8':
  Add another warning variation
  Correct ignore warnings
  Only use sanitizer with Clang
  Remove cmake macros from valgrind tests
2020-01-27 11:11:27 -06:00
Allen Byrne
3b804074bd Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'b0aa2c037ebb742db520e4e9a72e06d21c4afa27':
  Restore fix of test assert fail eror undone by later commit.
2020-01-27 09:22:16 -06:00
Allen Byrne
e4055cbea6 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'b0aa2c037ebb742db520e4e9a72e06d21c4afa27':
  Restore fix of test assert fail eror undone by later commit.
2020-01-27 09:22:08 -06:00
Larry Knox
b0aa2c037e Merge pull request #2312 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit '1c812fcd5d475afb7e65ed28d84990f96eefa649':
  Restore fix of test assert fail eror undone by later commit.
2020-01-27 09:18:53 -06:00
Larry Knox
1c812fcd5d Restore fix of test assert fail eror undone by later commit. 2020-01-27 09:02:58 -06:00
kmu
5163a7e1cf fix Wredundant-decls, Wswitch-default, Wdeclaration-after-statement, Wsign-compare, Wmisleading-indentation, Wshadow 2020-01-27 09:01:32 -06:00
Allen Byrne
999b9151d4 Add another warning variation 2020-01-26 15:13:28 -06:00
Allen Byrne
8e3cd63983 Correct ignore warnings 2020-01-26 10:51:31 -06:00
Allen Byrne
7e52c4a1e1 Only use sanitizer with Clang 2020-01-26 10:19:17 -06:00
Allen Byrne
87a8951fa0 Remove cmake macros from valgrind tests 2020-01-25 09:36:20 -06:00
Allen Byrne
0eec2cc207 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '5638d8860f3192f9830088ede372006a25bebbd2':
  fix assert fail
  Cleaned up warnings in test/tid.c.
2020-01-25 08:30:45 -06:00
Dana Robinson
5638d8860f Merge pull request #2305 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:tid_cleanup to develop
* commit '51ed3d256e87b423265c17867c80f588ee48fa3b':
  Cleaned up warnings in test/tid.c.
2020-01-24 17:14:41 -06:00
Kimmy Mu
ff4da4f3f5 Merge pull request #2306 in HDFFV/hdf5 from ~KMU/hdf5:develop to develop
* commit 'a152ffafb322551033adb594112f53836f7eb240':
  fix assert fail
2020-01-24 12:31:45 -06:00
kmu
a152ffafb3 fix assert fail 2020-01-24 12:06:26 -06:00
kmu
fb6328b631 Merge branch 'develop' of https://git.hdfgroup.org/scm/~kmu/hdf5 into develop 2020-01-24 12:05:09 -06:00
Allen Byrne
5b92b4d362 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '590aaff33046df99a4d88ba59e4b461e060b36e4':
  Optimized the floating point comparisons a little bit.
  Fix for failing h5diff tests involving floating-point compares.
  Removed H5_DEC_ENUM
  Revert "Revert "Moved -Wunsuffixed-float-constants to the developer warnings.""
  Revert "Moved -Wunsuffixed-float-constants to the developer warnings."
  Moved -Wunsuffixed-float-constants to the developer warnings.
  Fixed a bug in testpar/t_cache.c concerning checking expected vs. actual cache entry reads and writes.
2020-01-24 09:57:39 -06:00
Dana Robinson
590aaff330 Merge pull request #2303 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor to develop
* commit '9475ee5d59e9ac916271a64c5372dfc28f709417':
  Optimized the floating point comparisons a little bit.
  Fix for failing h5diff tests involving floating-point compares.
2020-01-24 07:34:43 -06:00
Dana Robinson
51ed3d256e Cleaned up warnings in test/tid.c. 2020-01-23 21:19:24 -08:00
Dana Robinson
8b4d774eb9 Replaced my_isnan with C99 isnan in h5diff. 2020-01-23 20:12:16 -08:00
Dana Robinson
9475ee5d59 Optimized the floating point comparisons a little bit. 2020-01-23 19:12:24 -08:00
Dana Robinson
a85e4a75b2 Fix for failing h5diff tests involving floating-point compares. 2020-01-23 18:58:08 -08:00
Dana Robinson
3e22f567c4 Merge pull request #2302 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor to develop
* commit '601752e76e2e3f34c8bcd2b5b46cf73cad122cb2':
  Removed H5_DEC_ENUM
  Revert "Revert "Moved -Wunsuffixed-float-constants to the developer warnings.""
2020-01-23 17:23:35 -06:00
Dana Robinson
601752e76e Removed H5_DEC_ENUM 2020-01-23 14:43:59 -08:00
Dana Robinson
492d186a5c Revert "Revert "Moved -Wunsuffixed-float-constants to the developer warnings.""
This reverts commit 6486e06545.
2020-01-23 14:40:47 -08:00
Dana Robinson
9a97411a61 Merge pull request #2296 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor to develop
* commit '6486e06545bf637d46e18a787395542f4fca143a':
  Revert "Moved -Wunsuffixed-float-constants to the developer warnings."
  Moved -Wunsuffixed-float-constants to the developer warnings.
  Fixed a bug in testpar/t_cache.c concerning checking expected vs. actual cache entry reads and writes.
2020-01-23 16:35:52 -06:00
Dana Robinson
6486e06545 Revert "Moved -Wunsuffixed-float-constants to the developer warnings."
This reverts commit 12bc75c617.
2020-01-23 14:35:16 -08:00
Allen Byrne
bf89ea4711 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'f3a4e8164f99d733e6804acddfe1b3b0dfe63634':
  remove unnecessary stuff
  squash cast warning fix
2020-01-23 16:30:17 -06:00
Kimmy Mu
f3a4e8164f Merge pull request #2300 in HDFFV/hdf5 from ~KMU/hdf5:squashed_cast to develop
* commit 'af5c33afabdae2e39bb45eb1b3e9c8366da01145':
  remove unnecessary stuff
  squash cast warning fix
2020-01-23 16:21:06 -06:00
kmu
af5c33afab remove unnecessary stuff 2020-01-23 16:15:52 -06:00
Allen Byrne
3595067621 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'a9aaad9be317ed92150ccc6b4e8574e596447dba':
  Change tools debug macros to not use error stack
2020-01-23 15:29:29 -06:00
kmu
838d4ec56b squash cast warning fix 2020-01-23 15:12:00 -06:00
Dana Robinson
12bc75c617 Moved -Wunsuffixed-float-constants to the developer warnings. 2020-01-23 10:18:04 -08:00
Dana Robinson
0444f65140 Merge branch 'develop' into develop_minor 2020-01-23 10:17:40 -08:00
Allen Byrne
a9aaad9be3 Merge pull request #2299 in HDFFV/hdf5 from ~BYRN/hdf5_merge_adb:develop to develop
* commit 'ee1fa14066af158fdafafd6e051f7d5b5f79ba6a':
  Change tools debug macros to not use error stack
2020-01-23 12:12:16 -06:00
Allen Byrne
ee1fa14066 Change tools debug macros to not use error stack 2020-01-23 10:20:34 -06:00
Allen Byrne
670027bf81 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'edcba1ce2e11f80d20fcce8f4cfacae1308bf839':
  more cleanup
  Max Library "index" should be 7.
  not use hdf5 private header
  fix float type cmp warning
  fix float type cmp warning
  fix missing prototype warning
  fix uninitizlized warning
  change it back
  pick up missing piece
  fix unused related warnings
  removed unused parameter
  more fix and address comments
  remove unsed var,function,macro, etc
2020-01-23 09:08:47 -06:00
Larry Knox
edcba1ce2e Merge pull request #2297 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit '30fa2606b45e789ba36f3193130cdea2c12b68a6':
  Max Library "index" should be 7.
2020-01-22 22:13:34 -06:00
Kimmy Mu
80935975c1 Merge pull request #2291 in HDFFV/hdf5 from ~KMU/hdf5:bugfix/uninitialized to develop
* commit '2de0ce0d8ba2fb58fadefc5d718a3c0fedab25c8':
  fix uninitizlized warning
2020-01-22 21:34:17 -06:00
kmu
2de0ce0d8b merge and fix conflict 2020-01-22 21:30:36 -06:00
Kimmy Mu
d741405363 Merge pull request #2295 in HDFFV/hdf5 from ~KMU/hdf5:bugfix/float to develop
* commit '9afaf94bef740f89958a1a8aae369d5f607845f4':
  not use hdf5 private header
  fix float type cmp warning
  fix float type cmp warning
2020-01-22 20:59:49 -06:00
Kimmy Mu
720ba8624a Merge pull request #2292 in HDFFV/hdf5 from ~KMU/hdf5:bugfix/prototype to develop
* commit '9f80ffa1f1908975b3100814b2529bf779521e13':
  fix missing prototype warning
2020-01-22 20:58:42 -06:00
Kimmy Mu
8ce59829e4 Merge pull request #2094 in HDFFV/hdf5 from ~KMU/hdf5:bugfix/unused to develop
* commit '145ef3ceee20c28a443bd11507c58858bea3f889':
  more cleanup
  change it back
  pick up missing piece
  fix unused related warnings
  removed unused parameter
  more fix and address comments
  remove unsed var,function,macro, etc
2020-01-22 19:46:53 -06:00
kmu
145ef3ceee more cleanup 2020-01-22 19:46:12 -06:00
Larry Knox
30fa2606b4 Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/~lrknox/hdf5_lrk into develop 2020-01-22 15:47:49 -06:00
Larry Knox
f3d1b4c6d2 Max Library "index" should be 7. 2020-01-22 15:46:34 -06:00
Dana Robinson
4e00ee2916 Fixed a bug in testpar/t_cache.c concerning checking expected
vs. actual cache entry reads and writes.
2020-01-22 12:31:56 -08:00
kmu
9afaf94bef not use hdf5 private header 2020-01-22 14:15:40 -06:00
kmu
9cc63d81fb fix float type cmp warning 2020-01-22 12:55:21 -06:00
kmu
04a2d20bba fix float type cmp warning 2020-01-22 12:55:01 -06:00
Allen Byrne
cf556437de Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'ad8e79beece8ddea71715d3fd2634af12d78ca29':
  Fixed yet another small issue in test/efc.c.
2020-01-22 10:01:02 -06:00
kmu
b62f37c3f9 Merge branch 'develop' of https://git.hdfgroup.org/scm/hdffv/hdf5 into develop 2020-01-22 08:55:51 -06:00
Larry Knox
ad8e79beec Merge pull request #2290 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor to develop
* commit '24fe4b38da4786990cb95b117b45475404b05920':
  Fixed yet another small issue in test/efc.c.
2020-01-22 08:55:01 -06:00
Allen Byrne
904e7db518 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'a250af4916b0625bfda2ca259d58d2ca41ed0a88':
  Remove irrelevant sentence from comment.
  Remove duplicate lines noted on forum by Eric Bavier
  Add v111 version for H5O functions to enable version1 default for HDF5 1.8-1.10 and version 3 default for HDF5 1.12.  Version 2 functions are available (deprecated) but will not be the default for any version.
2020-01-22 08:48:42 -06:00
Larry Knox
a250af4916 Merge pull request #2289 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit 'a92cfed71e0da0ff61af2550640e38bf6d415fee':
  Remove irrelevant sentence from comment.
  Remove duplicate lines noted on forum by Eric Bavier
  Add v111 version for H5O functions to enable version1 default for HDF5 1.8-1.10 and version 3 default for HDF5 1.12.  Version 2 functions are available (deprecated) but will not be the default for any version.
2020-01-22 08:34:30 -06:00
Larry Knox
a92cfed71e Remove irrelevant sentence from comment. 2020-01-22 08:30:14 -06:00
Dana Robinson
24fe4b38da Fixed yet another small issue in test/efc.c. 2020-01-21 15:51:46 -08:00
Larry Knox
793eb6b219 Remove duplicate lines noted on forum by Eric Bavier 2020-01-21 15:42:37 -06:00
Larry Knox
30ccab0fb3 Add v111 version for H5O functions to enable version1 default for HDF5
1.8-1.10 and version 3 default for HDF5 1.12.  Version 2 functions are
available (deprecated) but will not be the default for any version.
2020-01-21 15:08:17 -06:00
kmu
9f80ffa1f1 fix missing prototype warning 2020-01-21 12:30:40 -06:00
kmu
408b9b1f3b fix uninitizlized warning 2020-01-21 12:29:48 -06:00
Allen Byrne
b826ae3cdd Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'a63f22e27cad74c9bb98ca2b4d2a5fd118ef3571':
  Only 2 versions of H5O_info_t and H5O_iterate_t.
  PATH_MAX fix in efc test for Windows.
  H5vers.txt has versions v10 that should be v110 and some missing v110 entries.
2020-01-21 09:22:49 -06:00
kmu
9be5b2842e merge and fix 2020-01-20 21:11:32 -06:00
kmu
a95b5b1e05 Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/hdffv/hdf5 into develop 2020-01-20 20:47:48 -06:00
Larry Knox
a63f22e27c Merge pull request #2286 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit '59f19282b34b5dcc29a2921fdbd475833d4f6b92':
  Only 2 versions of H5O_info_t and H5O_iterate_t.
2020-01-20 09:20:36 -06:00
Larry Knox
59f19282b3 Only 2 versions of H5O_info_t and H5O_iterate_t. 2020-01-20 09:16:19 -06:00
Larry Knox
b2831f9e71 Merge pull request #2280 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit '9e610d835b74f01320fdc777086c88ef40b0b0a2':
  H5vers.txt has versions v10 that should be v110 and some missing v110 entries.
2020-01-20 08:18:37 -06:00
Dana Robinson
7403cba552 Merge pull request #2285 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor to develop
* commit '2f606a7c62c67d09835f004bad11fff6a76fc918':
  PATH_MAX fix in efc test for Windows.
2020-01-19 23:31:41 -06:00
Dana Robinson
2f606a7c62 PATH_MAX fix in efc test for Windows. 2020-01-19 18:51:07 -08:00
kmu
628d267162 merge and fix conflict 2020-01-19 08:09:44 -06:00
Allen Byrne
3e9980d20d Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '66a94df13b3801547523f1ea90bc84fe2ee6824b':
  Removed UIUC from copyright, added helpful comment.
  Updated MANIFEST
  Added a config file for ARM (Tested on a Raspberry Pi 3B+ w/ gcc 6).
  Tidying from code review.
  Fixed stack and frame size warnings. Not complete, but fixes most of the easier cases.
2020-01-19 07:45:15 -06:00
Larry Knox
9e610d835b H5vers.txt has versions v10 that should be v110 and some missing v110
entries.
2020-01-18 22:59:29 -06:00
Dana Robinson
66a94df13b Merge pull request #2269 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:stack_size_warnings to develop
* commit '44739ccd4715cc9e15595575700e945341fcdbcc':
  Tidying from code review.
  Fixed stack and frame size warnings. Not complete, but fixes most of the easier cases.
2020-01-18 13:15:39 -06:00
Dana Robinson
3ef5b9e977 Merge pull request #2273 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:pi_config to develop
* commit 'c7292efc1879cdbbbeae9503fbaf170bd19c8383':
  Removed UIUC from copyright, added helpful comment.
  Updated MANIFEST
  Added a config file for ARM (Tested on a Raspberry Pi 3B+ w/ gcc 6).
2020-01-18 11:09:44 -06:00
Dana Robinson
c7292efc18 Removed UIUC from copyright, added helpful comment. 2020-01-17 16:20:39 -08:00
Allen Byrne
23656c7877 Note for common warnings files 2020-01-17 13:30:20 -06:00
Allen Byrne
cf84882b3c Create common build system files for warnings 2020-01-17 13:14:06 -06:00
Allen Byrne
5fadf221ba Merge pull request #2274 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'db65d57541dd766e9912fb0698210cd76107d328':
  Correct standalone function attributes
  Standalone should not use import/export attributes
2020-01-17 13:11:21 -06:00
kmu
385ac20380 Merge branch 'develop' of https://git.hdfgroup.org/scm/hdffv/hdf5 into develop 2020-01-17 12:51:45 -06:00
kmu
6e62be3456 Merge branch 'develop' of https://git.hdfgroup.org/scm/~kmu/hdf5 into develop 2020-01-17 12:51:12 -06:00
Allen Byrne
db65d57541 Correct standalone function attributes 2020-01-17 12:15:16 -06:00
Allen Byrne
1643f591d6 Standalone should not use import/export attributes 2020-01-17 10:08:10 -06:00
Dana Robinson
b51ae5f35e Updated MANIFEST 2020-01-17 05:00:23 -08:00
Dana Robinson
b5eb454396 Added a config file for ARM (Tested on a Raspberry Pi 3B+
w/ gcc 6).
2020-01-17 03:06:11 -08:00
Dana Robinson
44739ccd47 Merge branch 'develop' into stack_size_warnings 2020-01-16 16:32:33 -08:00
Dana Robinson
55670c88cf Merge pull request #2272 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:tr_squash to develop
* commit 'a92c735c9b57049e8c4037d3490f7e10f8eef4d6':
  Squashed commit of the token_refactoring branch:
2020-01-16 16:11:46 -06:00
Dana Robinson
a92c735c9b Squashed commit of the token_refactoring branch: 2020-01-16 13:29:34 -08:00
kmu
7e93acd94f Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/hdffv/hdf5 into develop 2020-01-16 10:42:24 -06:00
Dana Robinson
46c3bc6b98 Tidying from code review. 2020-01-15 16:43:53 -08:00
Jerome Soumagne
024f7ba092 Merge pull request #2237 in HDFFV/hdf5 from ~JSOUMAGNE/hdf5:HDFFV-10992-fix to develop
* commit 'a7648879d729c1b75bd32f3a151831e9cbfbe31c':
  Add test for reference shutdown issue
  H5R: set app ref when incrementing ref_count on location held by reference (fix HDFFV-10992)
2020-01-15 17:27:48 -06:00
Jerome Soumagne
a7648879d7 Add test for reference shutdown issue 2020-01-15 17:23:33 -06:00
Allen Byrne
eaa8ab2774 Merge pull request #2270 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'f73103745e9b9165e9d399ddb5b9991d7fb2a9e5':
  HDFFV-11001 fix if block
  HDFFV-11001 need to qualify all by parallel or serial types
  HDDFV-11001 add note
  HDFFV-11001 Add fine control over testing
  Adjust regex for warnings
  Update tools hid_t declarations with H5I_INVALID_HID
2020-01-15 13:57:45 -06:00
Allen Byrne
f73103745e HDFFV-11001 fix if block 2020-01-15 12:40:18 -06:00
Allen Byrne
7022a3380c HDFFV-11001 need to qualify all by parallel or serial types 2020-01-15 12:28:53 -06:00
Allen Byrne
26c65e106a HDDFV-11001 add note 2020-01-15 11:45:18 -06:00
Allen Byrne
a0ae5e9b89 HDFFV-11001 Add fine control over testing 2020-01-15 11:38:06 -06:00
Dana Robinson
1f8f6f019c Fixed stack and frame size warnings. Not complete, but fixes most of
the easier cases.
2020-01-15 09:32:01 -08:00
Allen Byrne
4077d99645 Adjust regex for warnings 2020-01-14 11:44:02 -06:00
kmu
d46ea2d08a merge and fix conflicts 2020-01-14 11:28:27 -06:00
kmu
71b817038d Merge branch 'develop' of https://git.hdfgroup.org/scm/hdffv/hdf5 into develop 2020-01-14 11:25:49 -06:00
Allen Byrne
341600b4a6 Update tools hid_t declarations with H5I_INVALID_HID 2020-01-13 17:10:09 -06:00
Allen Byrne
c3c60dc7b5 Merge pull request #2263 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '06cff24b8de3d0cb60f89b2c200a98583dd136de':
  Ignore ZLIB warnings
2020-01-13 16:54:02 -06:00
Allen Byrne
06cff24b8d Ignore ZLIB warnings 2020-01-13 16:39:47 -06:00
Allen Byrne
fb7f1b3f0d Merge pull request #2256 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '1385457eb2874b75fd7b9fa0c470e9e4225a104e':
  Added JIRA note
  io_timer.c uses a parallel lib function
  Fix standalone compile issues
2020-01-13 16:02:02 -06:00
kmu
156baee371 change it back 2020-01-13 14:48:22 -06:00
kmu
03c5bcbea7 pick up missing piece 2020-01-13 13:29:05 -06:00
kmu
9712fad601 fix unused related warnings 2020-01-13 13:20:19 -06:00
Allen Byrne
1385457eb2 Added JIRA note 2020-01-13 09:19:04 -06:00
Allen Byrne
1e70eb845a Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'd14b96e95976967c03c7623f6800506b89292656':
  Modify external_env.c to prevent deleting test file of external.c. Fix for HDFFV-10941.
2020-01-10 08:21:48 -06:00
Larry Knox
d14b96e959 Merge pull request #2248 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit '278980a654061b969a5b39b72fc3da6327f8aabf':
  Modify external_env.c to prevent deleting test file of external.c. Fix for HDFFV-10941.
2020-01-10 07:40:52 -06:00
Allen Byrne
2600c358a5 io_timer.c uses a parallel lib function 2020-01-10 06:49:29 -06:00
Jerome Soumagne
9c398c804b H5R: set app ref when incrementing ref_count on location held by reference
(fix HDFFV-10992)
2020-01-09 19:05:31 -06:00
Larry Knox
278980a654 Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/~lrknox/hdf5_lrk into develop 2020-01-09 16:32:04 -06:00
Larry Knox
a7c5c5715a Modify external_env.c to prevent deleting test file of external.c.
Fix for HDFFV-10941.
2020-01-09 16:29:24 -06:00
Allen Byrne
9b82f8c0ac Fix standalone compile issues 2020-01-09 16:00:13 -06:00
Allen Byrne
99fa2dbec3 Merge pull request #2239 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '21f3d628d702bfd6c9cbb4b90f18842023ea40b3':
  Separate result variables for the function performed
  Check for actual content before using file
  HDFFV-10995 - add missing import
  HDFFV-10995 - need to add import
  HDFFV-10995 - Update all time instances
  HDFFV-10995 adjust testing to tolerate non-US locale
2020-01-09 15:38:30 -06:00
Kimmy Mu
8d8b9f8ae8 Merge pull request #2244 in HDFFV/hdf5 from ~KMU/hdf5:bugfix/intel_warnings to develop
* commit '6b1b4b3c0bdd803835efe8c531965bb9900a5363':
  fix test assert fail error
2020-01-09 15:31:19 -06:00
Allen Byrne
21f3d628d7 Separate result variables for the function performed 2020-01-09 15:18:55 -06:00
Allen Byrne
b97daea891 Check for actual content before using file 2020-01-09 13:30:00 -06:00
kmu
6b1b4b3c0b fix test assert fail error 2020-01-09 12:06:45 -06:00
Allen Byrne
d90ef60b32 HDFFV-10995 - add missing import 2020-01-08 14:37:31 -06:00
Allen Byrne
5a6f379420 HDFFV-10995 - need to add import 2020-01-08 13:14:58 -06:00
Allen Byrne
b73c0aeaa9 HDFFV-10995 - Update all time instances 2020-01-08 12:48:48 -06:00
Allen Byrne
59ab02a6c5 HDFFV-10995 adjust testing to tolerate non-US locale 2020-01-08 12:44:48 -06:00
Kimmy Mu
c3ae64a875 Merge pull request #2234 in HDFFV/hdf5 from ~KMU/hdf5:bugfix/intel_warnings to develop
* commit '30ac64d83aff5e022d51a17fd6c1d72903ae4f02':
  add new type support
2020-01-07 08:21:25 -06:00
kmu
30ac64d83a add new type support 2020-01-06 20:15:58 -06:00
kmu
e938f4407e Merge branch 'develop' of https://git.hdfgroup.org/scm/hdffv/hdf5 into develop 2020-01-06 13:04:23 -06:00
Kimmy Mu
127f07d64a Merge pull request #2071 in HDFFV/hdf5 from ~KMU/hdf5:bugfix/intel_warnings to develop
* commit '0a2bb11b248df6841daabca3970df5d8504adfc7':
  address problems from comments
  fix and address comments
  change according to previous comments
  add missing piece
  remove unnecessary check macro
  fix intel compile warnings
  Revert "fix warnings from Intel compiler"
  Revert "fix warnings and some text alignment"
  Revert "let hdf5 pick up the right compiler in Intel environment"
  Revert "fix issues from previous PR comments"
  Revert "using a different MACRO"
  using a different MACRO
  fix issues from previous PR comments
  let hdf5 pick up the right compiler in Intel environment
  fix warnings and some text alignment
  fix warnings from Intel compiler
2020-01-06 12:17:10 -06:00
Quincey Koziol
4f98de52d6 Merge pull request #2228 in HDFFV/hdf5 from minor_improvements_from_token_refactor to develop
* commit '0225e6d59698c9a720177766794619c7ad273f4a':
  Small changes from the token_refactoring branch, to reduce the delta to develop
2020-01-04 09:31:30 -06:00
Quincey Koziol
0225e6d596 Small changes from the token_refactoring branch, to reduce the delta to develop 2020-01-03 22:16:38 -06:00
Jordan Henderson
99e990e1ee Merge pull request #2226 in HDFFV/hdf5 from ~JHENDERSON/hdf5:develop to develop
* commit 'ccf177344ae2d4b03802adecc08a6cc956a7dac5':
  Fix some places where H5P_DEFAULT gets passed down to a VOL connector
2020-01-03 17:29:30 -06:00
Jordan Henderson
ccf177344a Fix some places where H5P_DEFAULT gets passed down to a VOL connector 2020-01-03 12:43:51 -06:00
Dana Robinson
041b14c876 Merge pull request #2221 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor to develop
* commit '1a50056dafc8e22facda675acb43a71705fdd15c':
  Changed -Wformat-truncation to level 2 in CMake w/ gcc.
  Changed -Wformat-truncation's level from 2 to 1.
2020-01-02 11:42:23 -06:00
Dana Robinson
1a50056daf Changed -Wformat-truncation to level 2 in CMake w/ gcc. 2020-01-01 10:18:56 -08:00
Dana Robinson
4fd5a3e00b Changed -Wformat-truncation's level from 2 to 1. 2020-01-01 10:12:52 -08:00
Jordan Henderson
1e0a2d37ae Merge pull request #2216 in HDFFV/hdf5 from ~JHENDERSON/hdf5:develop to develop
* commit '9c9b9b1c7a49529da6f43bb4516669c9ff79f700':
  Fix issue in h5dump where reference objects weren't being destroyed
2019-12-31 13:14:54 -06:00
Jordan Henderson
9c9b9b1c7a Fix issue in h5dump where reference objects weren't being destroyed 2019-12-31 11:33:27 -06:00
Jordan Henderson
5681bede70 Merge pull request #2210 in HDFFV/hdf5 from ~JHENDERSON/hdf5:develop to develop
* commit '1795aa660afe47adb28436b24eac64fa77f183fd':
  Clean up tools warnings introduced by H5TOOLS_ERR_INIT macro
  Refactor tools library error handling macros
2019-12-30 18:10:44 -06:00
Jordan Henderson
1795aa660a Clean up tools warnings introduced by H5TOOLS_ERR_INIT macro 2019-12-30 18:02:06 -06:00
Jordan Henderson
2cbf31cb3a Refactor tools library error handling macros 2019-12-28 14:08:04 -06:00
Allen Byrne
34a68acc93 Merge pull request #2185 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '0350f4d000abf7051c1d03810d45c007e66734da':
  Add MPI libs to standalone perf
2019-12-24 07:21:55 -06:00
Allen Byrne
0350f4d000 Add MPI libs to standalone perf 2019-12-22 12:17:20 -06:00
Allen Byrne
9d9044e0e9 Merge pull request #2178 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'b6bc749eac68335004ad80edc0f4e28322631d15':
  Grep needs to search error file
  Correct flaws in test scripts and files
  grep for failure text in error stack
  Add list to function arg
  Test files for new ref types
  h5diff test script files
  Add ref changes to test script
2019-12-22 11:55:43 -06:00
Allen Byrne
b6bc749eac Grep needs to search error file 2019-12-22 10:35:05 -06:00
Allen Byrne
2fa314d8b3 Correct flaws in test scripts and files 2019-12-22 10:05:06 -06:00
Allen Byrne
a2604b1e15 grep for failure text in error stack 2019-12-21 18:04:45 -06:00
Allen Byrne
b81802b71e Add list to function arg 2019-12-21 17:36:55 -06:00
Allen Byrne
6d28cbe853 Test files for new ref types 2019-12-21 17:35:13 -06:00
Allen Byrne
9ff8fe6477 h5diff test script files 2019-12-21 14:45:12 -06:00
Allen Byrne
4be4a50fe0 Add ref changes to test script 2019-12-21 14:37:04 -06:00
Allen Byrne
f679b7495d Merge pull request #2173 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '576e713924b1802a64ae2f6655d2389d70fadfd1':
  Add new h5diff files
  Fix compile statement order
  HDFFV-10976,-10980 Init obj_type before calling H5Rget_obj_type3
  Add unknown define for h5dump ref objects
  Standalone doesn't use h5test implementation.
  HDFFV-10980 - h5diff uses new ref APIs
2019-12-21 07:49:22 -06:00
Allen Byrne
576e713924 Add new h5diff files 2019-12-21 07:48:23 -06:00
Quincey Koziol
9016f66248 Merge pull request #2167 in HDFFV/hdf5 from refactor_optional_vol_callback_02 to develop
* commit 'c2ca33dcfa340af603399036dfddad0ebbd72f6f':
  Remove unnecessary H5CX call
  Refactor H5Dvlen_get_buf_size to use optional dataset operation, with generic fallback for VOL connectors that don't implement operation
  Cleanups from PR reviews
  Refactor all the 'H5VL_*_optional' callbacks to move the type of operation out of the va_list, so it's at least possible for another connector to know what the operation is and decide whether to implement it or not.
2019-12-20 22:54:04 -06:00
Quincey Koziol
c2ca33dcfa Remove unnecessary H5CX call 2019-12-20 22:49:48 -06:00
Quincey Koziol
cf5cd3b639 Refactor H5Dvlen_get_buf_size to use optional dataset operation, with generic fallback for VOL connectors that don't implement operation 2019-12-20 22:41:00 -06:00
Allen Byrne
de0f667076 Fix compile statement order 2019-12-20 14:18:01 -06:00
Allen Byrne
23f813026f HDFFV-10976,-10980 Init obj_type before calling H5Rget_obj_type3 2019-12-20 13:23:48 -06:00
Quincey Koziol
2c2c46d4ea Cleanups from PR reviews 2019-12-20 11:22:31 -06:00
Allen Byrne
d7c38eeee9 Add unknown define for h5dump ref objects 2019-12-20 11:08:37 -06:00
Allen Byrne
ca1b672ced Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '7e0e9f83dc45a4ec1212bc96f6584d221073af39':
  Standalone doesn't use h5test lib implementation.
2019-12-20 09:53:11 -06:00
Allen Byrne
7e0e9f83dc Merge pull request #2172 in HDFFV/hdf5 from ~BYRN/hdf5_merge_adb:develop to develop
* commit '50425ad4395b58ece517ab3a442d0dd703afa687':
  Standalone doesn't use h5test lib implementation.
2019-12-20 09:50:36 -06:00
Allen Byrne
50425ad439 Standalone doesn't use h5test lib implementation. 2019-12-20 09:48:09 -06:00
Allen Byrne
a057a82a69 Standalone doesn't use h5test implementation. 2019-12-20 09:28:02 -06:00
Allen Byrne
bc88c82308 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'b55a584fd5b3aac6f2514fba41a6182030b497ae':
  In portable shell scripts (using #!/bin/sh) we have to use single square brackets, [ ], instead of the bash-ism double square brackets, [[ ]].
  Make this script work on hosts where PERL is not installed at /usr/bin/perl.
2019-12-20 09:02:51 -06:00
Quincey Koziol
58cf795321 Refactor all the 'H5VL_*_optional' callbacks to move the type of operation out
of the va_list, so it's at least possible for another connector to know what
the operation is and decide whether to implement it or not.

Added a new VOL sub-class called "introspect" where callbacks that report
information about the connector or container can be placed.  Added an
'opt_query' callback to this sub-class, for a connector to report back
to the library whether a particular optional callback operation is supported.
Also added a 'get_conn_cls' introspection callback, to retrieve the H5VL_class_t
of a connector (either the "current" connector, H5VL_GET_CONN_LVL_CURR, or
the terminal connector, H5VL_GET_CONN_LVL_TERM).

Moved the "post open" operation from a file 'specific' operation to a file
'optional' operation, now that it's possible to detect (with the 'opt_query'
introspection callback) whether a VOL connector implements an optional
operation, without just returning an error.

Added new internal VOL helper routines: H5VL_object_is_native, to determine
if an object is in (or is a) native file, and H5VL_file_is_same, to determine
if two objects are in (or are) the same terminal VOL connector's container.
(And moved the special handling for FILE_IS_EQUAL operation out of internal VOL
callback routine into H5VL_file_is_same)

Made new dataset 'get' operation for H5Dvlen_get_buf_size, aligning it better
with other 'get' operations in API.

Fixed several issues with pass-through connectors, which are now passing the
'make check-passthrough-vol' tests again.

A bunch of warning and style cleanups as well.
2019-12-19 22:41:37 -06:00
David Young
b55a584fd5 Merge pull request #2161 in HDFFV/hdf5 from ~DYOUNG/netbsd:develop to develop
* commit 'ec4418a75716b7f2ce53e627de28d139b281b545':
  In portable shell scripts (using #!/bin/sh) we have to use single square brackets, [ ], instead of the bash-ism double square brackets, [[ ]].
  Make this script work on hosts where PERL is not installed at /usr/bin/perl.
2019-12-19 17:24:52 -06:00
Allen Byrne
628c63f125 HDFFV-10980 - h5diff uses new ref APIs 2019-12-19 16:29:43 -06:00
Allen Byrne
63fdb78685 Merge pull request #2162 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '74d37c880f1309900b45bd9f4813dca225d2d3c4':
  Add missing note
2019-12-19 16:25:55 -06:00
Allen Byrne
74d37c880f Add missing note 2019-12-19 16:12:05 -06:00
David Young
ec4418a757 In portable shell scripts (using #!/bin/sh) we have to use single square
brackets, [ ], instead of the bash-ism double square brackets, [[ ]].
2019-12-19 15:06:57 -06:00
David Young
d11b347aa7 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '817235bb60e1f79c4b22b4a6116a1594aa75b81d': (145 commits)
  Remove const
  Fix compile error - declaration after executable statement
  Adjust cache.c only variables.
  Fix include to correct memory calls - big-endian issue.
  Update h5debug to retrieve file pointer through VOL framework
  Minor whitespace
  Remove duplicate instance
  Revert and move declaration
  Correct struct access
  Fix duplicate and varname
  Fix compile and test issues from DT
  Modify H5VL initialization routines to initialize all VOL-managed object types.  Modify H5VLwrap_register() to reject non-VOL-managed object types.  Also fix overisights in h5trace.c from previous changes.
  Add release note for sanitizer support
  HDFFV-10979 cleanup globals
  TRILABS-135 Add clang analyzers
  HDFFV-10979 fix global name clash
  Fix issues found with ONLY_SHARED_LIBS option
  Fix 2010 compile issues
  Change from using H5Dcreate to H5Dcreate2
  Latest date first in RELEASE.txt
  ...
2019-12-19 14:55:49 -06:00
Allen Byrne
817235bb60 Merge pull request #2153 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'ac87f12afe73fa22dcf31d9aeba05a259e215765':
  Remove const
  Fix compile error - declaration after executable statement
  Adjust cache.c only variables.
  Fix include to correct memory calls - big-endian issue.
2019-12-19 10:23:37 -06:00
Allen Byrne
ac87f12afe Remove const 2019-12-18 16:10:12 -06:00
Allen Byrne
27596d1157 Fix compile error - declaration after executable statement 2019-12-18 15:08:40 -06:00
Allen Byrne
b89d428087 Adjust cache.c only variables. 2019-12-18 14:29:46 -06:00
Allen Byrne
527105012b Fix include to correct memory calls - big-endian issue. 2019-12-18 12:44:27 -06:00
Quincey Koziol
134a31c4a9 Merge pull request #2151 in HDFFV/hdf5 from h5debug_vol_fix to develop
* commit 'b8b6659debc3b0592ef4f0fe9db60c3bec8619ad':
  Update h5debug to retrieve file pointer through VOL framework
2019-12-17 14:23:32 -06:00
Quincey Koziol
b8b6659deb Update h5debug to retrieve file pointer through VOL framework 2019-12-17 13:11:39 -06:00
Allen Byrne
9facd2347a Merge pull request #2146 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'ae5385b7ae0a273fc4940ae1f145cf4e73807ff5':
  Minor whitespace
  Remove duplicate instance
2019-12-17 11:07:10 -06:00
Allen Byrne
ae5385b7ae Minor whitespace 2019-12-17 09:07:21 -06:00
Allen Byrne
7234dce255 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'fb3cc3767b182d2190f5d2ba839f588e1c139bc8':
  Fixed bugs in pread/pwrite I/O in VFDs.
2019-12-17 08:54:10 -06:00
Dana Robinson
fb3cc3767b Merge pull request #2109 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:pread_bugs to develop
* commit '99f85cbf15a637768c8df977ddc5eebe7683a60d':
  Fixed bugs in pread/pwrite I/O in VFDs.
2019-12-16 21:18:49 -06:00
Allen Byrne
ba2f6a74d3 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '9ee8c599d7b8cd495efb28cd9f068192712ae086':
  More fixes for previous committed PR #2079 dated Dec 5 2019. (1) H5O_dtype_ver_bounds[] for V112 should be H5O_DTYPE_VRESION_4 (2) The tests for the new reference types should work for V112 and beyond
2019-12-16 15:52:21 -06:00
Vailin Choi
9ee8c599d7 Merge pull request #2086 in HDFFV/hdf5 from ~VCHOI/my_third_fork:bugfix/reference_ver_hyperslab_ver to develop
* commit 'b42325e8f5ff3b6bfa2ce446af5b6dc5cbbff666':
  More fixes for previous committed PR #2079 dated Dec 5 2019. (1) H5O_dtype_ver_bounds[] for V112 should be H5O_DTYPE_VRESION_4 (2) The tests for the new reference types should work for V112 and beyond
2019-12-16 13:49:16 -06:00
Allen Byrne
a966640208 Remove duplicate instance 2019-12-16 09:47:10 -06:00
Allen Byrne
568e30ef0d Merge pull request #2133 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'dc2cbdaf6720b6c3af72846989dfdbec4f207208':
  Revert and move declaration
  Correct struct access
  Fix duplicate and varname
  Fix compile and test issues from DT
  Add release note for sanitizer support
  HDFFV-10979 cleanup globals
  TRILABS-135 Add clang analyzers
2019-12-13 12:47:10 -06:00
Allen Byrne
dc2cbdaf67 Revert and move declaration 2019-12-13 12:28:18 -06:00
Allen Byrne
4ab00a3d1d Correct struct access 2019-12-13 11:59:20 -06:00
Allen Byrne
f57907d22c Fix duplicate and varname 2019-12-13 11:52:38 -06:00
Allen Byrne
e3c75f6cf7 Fix compile and test issues from DT 2019-12-13 11:36:09 -06:00
Neil Fortner
7aedeedf67 Merge pull request #2139 in HDFFV/hdf5 from ~NFORTNE2/hdf5_naf:vol_init_fix to develop
* commit 'ce653ff82b7dd52b8e36a5eff7b1728c4b75d9f7':
  Modify H5VL initialization routines to initialize all VOL-managed object types.  Modify H5VLwrap_register() to reject non-VOL-managed object types.  Also fix overisights in h5trace.c from previous changes.
2019-12-12 15:52:59 -06:00
Neil Fortner
ce653ff82b Modify H5VL initialization routines to initialize all VOL-managed object
types.  Modify H5VLwrap_register() to reject non-VOL-managed object
types.  Also fix overisights in h5trace.c from previous changes.
2019-12-12 15:52:21 -06:00
kmu
7366709e40 Merge branch 'develop' of https://git.hdfgroup.org/scm/hdffv/hdf5 into develop 2019-12-12 14:10:48 -06:00
Allen Byrne
e350797b71 Add release note for sanitizer support 2019-12-12 12:31:28 -06:00
Allen Byrne
3ab183ba99 HDFFV-10979 cleanup globals 2019-12-12 12:20:49 -06:00
Allen Byrne
74524c5a35 TRILABS-135 Add clang analyzers 2019-12-11 16:49:34 -06:00
Allen Byrne
8026c67a1c Merge pull request #2132 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '8ef8f5fda952540dc18a43ccf65597089db175f9':
  HDFFV-10979 fix global name clash
2019-12-11 16:43:38 -06:00
Allen Byrne
8ef8f5fda9 HDFFV-10979 fix global name clash 2019-12-11 15:58:59 -06:00
kmu
d33f4365b5 Merge branch 'develop' of https://git.hdfgroup.org/scm/hdffv/hdf5 into develop 2019-12-11 15:54:40 -06:00
Allen Byrne
34ff52bd1a Merge pull request #2130 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '6e7dcf170b39885f8aa4e7a35d1dc54f1489b375':
  Fix issues found with ONLY_SHARED_LIBS option
2019-12-11 15:51:55 -06:00
Allen Byrne
6e7dcf170b Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '5d94490e38eae88c5180c6ce1b3f74d82f1dd600':
  Fix 2010 compile issues
2019-12-11 15:13:26 -06:00
Allen Byrne
5d94490e38 Merge pull request #2128 in HDFFV/hdf5 from ~BYRN/hdf5_merge_adb:develop to develop
* commit '1d5bf068224df9582dfc2280525352967a02367b':
  Fix 2010 compile issues
2019-12-11 14:11:48 -06:00
kmu
b0e5b2d933 removed unused parameter 2019-12-11 13:36:56 -06:00
kmu
0a2bb11b24 address problems from comments 2019-12-11 13:35:02 -06:00
Allen Byrne
1fc1b09bf3 Fix issues found with ONLY_SHARED_LIBS option 2019-12-11 12:28:33 -06:00
Allen Byrne
1d5bf06822 Fix 2010 compile issues 2019-12-11 11:36:46 -06:00
kmu
026c5b6f19 Merge branch 'develop' of https://git.hdfgroup.org/scm/hdffv/hdf5 into develop 2019-12-11 10:50:39 -06:00
kmu
45a62b2d46 fix and address comments 2019-12-11 10:44:56 -06:00
Richard Warren
b003ff5b1b Merge pull request #2127 in HDFFV/hdf5 from Fix_use_of_H5Dcreate_to_H5Dcreate2 to develop
* commit '2a94589f55bae69a06f8d672a904b9870d7353d1':
  Change from using H5Dcreate to H5Dcreate2
2019-12-11 10:44:41 -06:00
Richard Warren
2a94589f55 Change from using H5Dcreate to H5Dcreate2 2019-12-11 11:21:39 -05:00
Allen Byrne
5c97dbe59f Merge pull request #2118 in HDFFV/hdf5 from ~BYRN/hdf5_merge_adb:develop to develop
* commit '51e799551309e16558297469edef6e2d232a3246':
  HDFFV-10974 Change defines to eliminate Windows conflict
2019-12-11 08:39:08 -06:00
Allen Byrne
51e7995513 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '6b670e353c1ea7f13ef72cc4297d9973102078bb':
  Correct assignment
  Fix java include, h5watch and remove clang tool.
  Add missing filenames
2019-12-11 08:29:33 -06:00
Larry Knox
6b670e353c Merge pull request #2123 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'f2ef40feb8d1f5f31ab60f78bb37d2ba595aacb8':
  Correct assignment
  Fix java include, h5watch and remove clang tool.
  Add missing filenames
2019-12-10 23:44:30 -06:00
Allen Byrne
b260e2969f Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'eb415973e81605e3c15bbb954d57dd5d42ad449c':
  Latest date first in RELEASE.txt
  Update RELEASE.txt with performance improvements
2019-12-10 15:00:46 -06:00
Allen Byrne
f2ef40feb8 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'eb415973e81605e3c15bbb954d57dd5d42ad449c':
  Latest date first in RELEASE.txt
  Update RELEASE.txt with performance improvements
2019-12-10 14:59:33 -06:00
Chris Hogan
eb415973e8 Merge pull request #2122 in HDFFV/hdf5 from ~CHOGAN/hdf5:chogan/develop/release_txt to develop
* commit '794d008375b094d4dd2d26b0bbf6d2c51fd39281':
  Latest date first in RELEASE.txt
  Update RELEASE.txt with performance improvements
2019-12-10 14:58:37 -06:00
Chris Hogan
794d008375 Latest date first in RELEASE.txt 2019-12-10 14:32:02 -06:00
Chris Hogan
64eb3e815a Update RELEASE.txt with performance improvements 2019-12-10 14:23:10 -06:00
Allen Byrne
ad0a727c69 Correct assignment 2019-12-10 14:19:31 -06:00
Allen Byrne
7535f5a728 Fix java include, h5watch and remove clang tool. 2019-12-10 13:55:34 -06:00
kmu
a00d71b2e2 change according to previous comments 2019-12-10 12:10:49 -06:00
kmu
62badd9ebc add missing piece 2019-12-10 10:59:34 -06:00
Allen Byrne
e2d299225e HDFFV-10974 Change defines to eliminate Windows conflict 2019-12-10 07:43:28 -06:00
Allen Byrne
96cb94a95c Add missing filenames 2019-12-09 14:14:39 -06:00
kmu
f2614c9042 more fix and address comments 2019-12-09 14:08:47 -06:00
Chris Hogan
89cb46ead3 Merge pull request #2113 in HDFFV/hdf5 from ~CHOGAN/hdf5:chogan/develop/10934_release_txt to develop
* commit 'c000061e6a6123d9cba7938bb8e6b94139cc3cc7':
  Add RELEASE.txt entry for Jira 10934
2019-12-09 11:13:06 -06:00
Chris Hogan
c000061e6a Add RELEASE.txt entry for Jira 10934 2019-12-09 11:09:34 -06:00
Allen Byrne
162497a3f9 Merge pull request #2031 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'c087ef41b637686ae5e783bfb0a48e91dbe3f58e': (28 commits)
  Add H5Rdestroy calls to cleanup
  Remove problem tests for now
  Add new test reference
  HDFFV-10876 fix compare reference
  HDFFV-10876 ignore old reference API tests
  Add missing quotes
  Fix windows 10 compile error
  Correct indentation
  Revert declaration used in macro.
  Revert declaration deletion.
  HDFFV-10876 add note
  Address compile warnings
  Fix compile errors - mostly in jni
  HDFFV-10876 Update dump to match DDL spec
  Add extra line
  Adjust whitespace
  Update h5ls help and rework dump_mem routines for attrs
  Update create calls
  Add debug compile option as comment
  Update reference calls
  ...
2019-12-09 10:43:05 -06:00
kmu
8b51394f38 Merge branch 'develop' into bugfix/intel_warnings 2019-12-09 09:18:56 -06:00
Dana Robinson
99f85cbf15 Fixed bugs in pread/pwrite I/O in VFDs.
Fixes HDFFV-10945.
2019-12-08 21:52:29 -08:00
Allen Byrne
c087ef41b6 Add H5Rdestroy calls to cleanup 2019-12-08 14:43:06 -06:00
Allen Byrne
1cde6b2fba Remove problem tests for now 2019-12-08 14:03:05 -06:00
Allen Byrne
349656ecba Add new test reference 2019-12-08 13:58:35 -06:00
Allen Byrne
eed923ec70 HDFFV-10876 fix compare reference 2019-12-08 13:25:14 -06:00
Allen Byrne
1d3186ad45 HDFFV-10876 ignore old reference API tests 2019-12-07 15:05:08 -06:00
Allen Byrne
972cf8e60c Add missing quotes 2019-12-07 10:30:38 -06:00
Allen Byrne
bc20a7e47a Fix windows 10 compile error 2019-12-07 10:26:30 -06:00
Allen Byrne
7d6d3e2956 Correct indentation 2019-12-07 08:42:19 -06:00
Allen Byrne
7225519e2a Revert declaration used in macro. 2019-12-07 08:38:06 -06:00
Allen Byrne
b98f630009 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '9c3900d0bf05a65e59cce6dc613b38b240599d93':
  Add note to RELEASE.txt for H5Sselect_adjust.
  Add RELEASE.txt note for H5Sselect_project_interesection
  Minor tweaks noticed while going over VOL documentation.
2019-12-07 08:31:52 -06:00
Allen Byrne
73c8e2f9d6 Revert declaration deletion. 2019-12-07 08:31:12 -06:00
Dana Robinson
9c3900d0bf Merge pull request #2082 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor to develop
* commit 'bbd4f7d2a0bea8f984868e2bf88dd1c5f5aa35e8':
  Minor tweaks noticed while going over VOL documentation.
2019-12-06 17:07:10 -06:00
Neil Fortner
26b8bb8e6c Merge pull request #2098 in HDFFV/hdf5 from ~NFORTNE2/hdf5_naf:develop to develop
* commit 'f6961c82bf3e7b848b071a0299dcc3753361e35d':
  Add note to RELEASE.txt for H5Sselect_adjust.
2019-12-06 16:19:50 -06:00
Neil Fortner
f6961c82bf Add note to RELEASE.txt for H5Sselect_adjust. 2019-12-06 16:18:33 -06:00
Neil Fortner
ac14c63146 Merge pull request #2093 in HDFFV/hdf5 from ~NFORTNE2/hdf5_naf:develop to develop
* commit '411241bea660411b99925edc8040139443fe8a74':
  Add RELEASE.txt note for H5Sselect_project_interesection
2019-12-06 14:36:11 -06:00
Neil Fortner
411241bea6 Merge branch 'develop' of ssh://bitbucket.hdfgroup.org:7999/~nfortne2/hdf5_naf into develop 2019-12-06 14:35:27 -06:00
Neil Fortner
848be85f00 Add RELEASE.txt note for H5Sselect_project_interesection 2019-12-06 14:34:56 -06:00
Allen Byrne
e6c54c372f Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'fa31520e25ec27140f8d0dfec859aede163d2201':
  Add RELEASE.txt note for HVLget_file_type()
2019-12-06 14:20:40 -06:00
Neil Fortner
fa31520e25 Merge pull request #2090 in HDFFV/hdf5 from ~NFORTNE2/hdf5_naf:develop to develop
* commit 'c7165f05444ce5ae6c5db50f2faf33023ba0eac0':
  Add RELEASE.txt note for HVLget_file_type()
2019-12-06 14:15:24 -06:00
Neil Fortner
c7165f0544 Add RELEASE.txt note for HVLget_file_type() 2019-12-06 14:14:22 -06:00
kmu
189935ff26 remove unnecessary check macro 2019-12-06 14:12:57 -06:00
Allen Byrne
0d74deba5d HDFFV-10876 add note 2019-12-06 14:10:56 -06:00
Allen Byrne
fce2a31dc5 Address compile warnings 2019-12-06 13:55:34 -06:00
Allen Byrne
52c9749d6f Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'b816f4c4aaf9bc80dbde35158b520e693f135fa2':
  Fixed PR issues pointed out by Allen
  Remove the Copyright UofI per Larry's guidance
  Adds a new t_2Gio.c MPI test
2019-12-06 12:58:01 -06:00
Allen Byrne
cf61098fa6 Fix compile errors - mostly in jni 2019-12-06 12:57:38 -06:00
Richard Warren
b816f4c4aa Merge pull request #2056 in HDFFV/hdf5 from HDFFV-10929_2GB_testing to develop
* commit '7dfeab4863a25a79999fa1e5ede12a1aa685ca97':
  Fixed PR issues pointed out by Allen
  Remove the Copyright UofI per Larry's guidance
  Adds a new t_2Gio.c MPI test
2019-12-06 12:56:51 -06:00
kmu
f22e258586 remove unsed var,function,macro, etc 2019-12-06 12:03:19 -06:00
Vailin Choi
b42325e8f5 More fixes for previous committed PR #2079 dated Dec 5 2019.
(1) H5O_dtype_ver_bounds[] for V112 should be H5O_DTYPE_VRESION_4
(2) The tests for the new reference types should work for V112 and beyond
2019-12-06 11:55:36 -06:00
Vailin Choi
bb9fdb8f4b Merge pull request #22 in ~VCHOI/my_third_fork from develop to bugfix/reference_ver_hyperslab_ver
* commit '107bcbd3dfff51895c99ea3ff71afa0ce693a956':
  Implement support for using H5Dvlen_get_buf_size with non-native VOL connectors.
  Add H5VL_MAP_OPTIONAL operation id (unused currently).
  Fix H5VL_token_t type and fix H5VL_loc_by_token to use H5VL_token_t *
  Change hdset_reg_ref_t and H5R_ref_t from arrays of unsigned char to structs containing those arrays.  Encapsulating the arrays in this way makes it easier to write and think about pointers to these types, casts to/from these types, etc.
2019-12-06 11:27:45 -06:00
Richard Warren
7dfeab4863 Fixed PR issues pointed out by Allen 2019-12-06 10:58:59 -05:00
kmu
1f871e23b7 Merge branch 'develop' of https://git.hdfgroup.org/scm/hdffv/hdf5 into develop 2019-12-06 09:51:06 -06:00
Richard Warren
c62aaaff46 Remove the Copyright UofI per Larry's guidance 2019-12-06 09:33:55 -05:00
Dana Robinson
bbd4f7d2a0 Minor tweaks noticed while going over VOL documentation. 2019-12-05 22:10:02 -08:00
Allen Byrne
eb52c2ea6f Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '107bcbd3dfff51895c99ea3ff71afa0ce693a956':
  Implement support for using H5Dvlen_get_buf_size with non-native VOL connectors.
  Two fixes: (1) Set the version for reference datatype messge to H5O_DTYPE_VERSION_4. (2) Verify the decoded version for hyperslab selection.
  Add H5VL_MAP_OPTIONAL operation id (unused currently).
  Fix H5VL_token_t type and fix H5VL_loc_by_token to use H5VL_token_t *
  Change hdset_reg_ref_t and H5R_ref_t from arrays of unsigned char to structs containing those arrays.  Encapsulating the arrays in this way makes it easier to write and think about pointers to these types, casts to/from these types, etc.
2019-12-05 17:26:00 -06:00
Jerome Soumagne
107bcbd3df Merge pull request #2076 in HDFFV/hdf5 from ~JSOUMAGNE/hdf5:type_fixes to develop
* commit '7b03a1c03633d695b487642e54f897c715f8622e':
  Fix H5VL_token_t type and fix H5VL_loc_by_token to use H5VL_token_t *
  Change hdset_reg_ref_t and H5R_ref_t from arrays of unsigned char to structs containing those arrays.  Encapsulating the arrays in this way makes it easier to write and think about pointers to these types, casts to/from these types, etc.
2019-12-05 17:25:22 -06:00
Allen Byrne
e8ad5f6d1a HDFFV-10876 Update dump to match DDL spec 2019-12-05 17:21:02 -06:00
Neil Fortner
5efd80f6ec Merge pull request #2073 in HDFFV/hdf5 from ~NFORTNE2/hdf5_naf:vol_vl_buf_size to develop
* commit '12ac0587e7b9b18a56907aa78f68c084dd5b51b4':
  Implement support for using H5Dvlen_get_buf_size with non-native VOL connectors.
2019-12-05 16:13:12 -06:00
Neil Fortner
12ac0587e7 Implement support for using H5Dvlen_get_buf_size with
non-native VOL connectors.
2019-12-05 16:11:30 -06:00
Vailin Choi
8c9b8047ea Merge pull request #2079 in HDFFV/hdf5 from ~VCHOI/my_third_fork:bugfix/reference_ver_hyperslab_ver to develop
* commit '1e10b3212ed5904b69d9f4c4bcb4d0122dfd7c77':
  Two fixes: (1) Set the version for reference datatype messge to H5O_DTYPE_VERSION_4. (2) Verify the decoded version for hyperslab selection.
2019-12-05 16:11:08 -06:00
Neil Fortner
bdbe010fd3 Merge pull request #2078 in HDFFV/hdf5 from ~NFORTNE2/hdf5_naf:develop to develop
* commit '73709ef2fa2494e675566dd3310c6c8ebac01c18':
  Add H5VL_MAP_OPTIONAL operation id (unused currently).
2019-12-05 16:03:16 -06:00
Vailin Choi
1e10b3212e Two fixes:
(1) Set the version for reference datatype messge to H5O_DTYPE_VERSION_4.
(2) Verify the decoded version for hyperslab selection.
2019-12-05 15:09:23 -06:00
Neil Fortner
73709ef2fa Merge branch 'develop' of ssh://bitbucket.hdfgroup.org:7999/~nfortne2/hdf5_naf into develop 2019-12-05 14:57:35 -06:00
Neil Fortner
9cb7729730 Add H5VL_MAP_OPTIONAL operation id (unused currently). 2019-12-05 14:56:57 -06:00
Jerome Soumagne
7b03a1c036 Fix H5VL_token_t type and fix H5VL_loc_by_token to use H5VL_token_t * 2019-12-05 14:42:06 -06:00
David Young
60756183d9 Change hdset_reg_ref_t and H5R_ref_t from arrays of unsigned char to
structs containing those arrays.  Encapsulating the arrays in this way
makes it easier to write and think about pointers to these types, casts
to/from these types, etc.

An interesting side-effect that we probably should *not* rely on is
that the struct-encapsulation changes the alignment so that some GCC
warnings about casts that increase the alignment requirement of the
operand go away.  Warnings like that have to be taken seriously:  I will
add -Werror=cast-align to the default compiler flags so that they stop
the build quickly.

GCC warnings led me to some surprising casts in test/trefer.c. I found
that it was possible to make many simplifications after introducing the
struct-encapsulation that I described, above.

In test objcopy_ref `same_file` is assigned but never used.  Delete it.
2019-12-05 14:41:45 -06:00
Allen Byrne
4747e2f2ad Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'c7b3d6d6a5c1d376812e17c0ddb26f55334a2c59':
  Yanked -Wc++-compat from the flags used to build the C library in both the Autotools and CMake.
2019-12-05 09:30:11 -06:00
Dana Robinson
c7b3d6d6a5 Merge pull request #2072 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:cpp_warning_disable to develop
* commit '1ad02a445920578654d257bb66aa1e8e7e368018':
  Yanked -Wc++-compat from the flags used to build the C library in both the Autotools and CMake.
2019-12-04 18:08:57 -06:00
Allen Byrne
4f74548f53 Add extra line 2019-12-04 17:00:45 -06:00
Allen Byrne
11825bc525 Adjust whitespace 2019-12-04 16:59:03 -06:00
Allen Byrne
d552e97eae Update h5ls help and rework dump_mem routines for attrs 2019-12-04 16:36:32 -06:00
Allen Byrne
cc2407257a Update create calls 2019-12-04 12:35:48 -06:00
Allen Byrne
8f9005570a Add debug compile option as comment 2019-12-04 12:24:53 -06:00
Allen Byrne
ba8f2f1174 Update reference calls 2019-12-04 12:24:53 -06:00
Allen Byrne
e994c9cb4a Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'aa0b54e27e5d6f0b7c23fe5662d5c8f30898d7f4':
  Fixed missing blob callbacks in test VOL connectors.
  Add support for scalar dataspaces to H5Sproject_intersection.  Add checking for ank validity.
  Fix issues with using H5Pget_fill_value() with file datatypes retrieved from H5VLget_file_type().
2019-12-04 11:36:07 -06:00
Neil Fortner
aa0b54e27e Merge pull request #2064 in HDFFV/hdf5 from ~NFORTNE2/hdf5_naf:vol_fillval to develop
* commit '28294070597c8a04c10e55a843dfe6dbae6ef04c':
  Fix issues with using H5Pget_fill_value() with file datatypes retrieved from H5VLget_file_type().
2019-12-04 11:35:58 -06:00
Neil Fortner
62b5de82e2 Merge pull request #2065 in HDFFV/hdf5 from ~NFORTNE2/hdf5_naf:scalar_spi2 to develop
* commit 'ac1a8ab5fe7c58533e005fef94d3acb2d46f4b31':
  Add support for scalar dataspaces to H5Sproject_intersection.  Add checking for ank validity.
2019-12-04 11:33:43 -06:00
Dana Robinson
1ad02a4459 Yanked -Wc++-compat from the flags used to build the C library in both
the Autotools and CMake.
2019-12-04 00:49:52 -08:00
kmu
132fa33dad fix intel compile warnings 2019-12-03 20:52:55 -06:00
Dana Robinson
96429e48e3 Merge pull request #2070 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor to develop
* commit '43c48fbadc994f740f63caeb5110442c79346501':
  Fixed missing blob callbacks in test VOL connectors.
2019-12-03 17:27:47 -06:00
Dana Robinson
43c48fbadc Fixed missing blob callbacks in test VOL connectors. 2019-12-03 15:14:57 -08:00
Allen Byrne
915184104b Add missing javadoc for new arg 2019-12-03 16:37:40 -06:00
Allen Byrne
7ad3d62a5c Update data output reference 2019-12-03 16:05:35 -06:00
Allen Byrne
12fd139e90 Update reference files and fix int as string 2019-12-03 14:43:05 -06:00
Allen Byrne
7c057f658a Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'ca34de56cd336f58c4bcf4ac9e1460f898fba3c9':
  Add OAPL parameter to H5Rcreate_ APIs
  Fix failing test and retain semantics for chunk cache properties in non-chunked datasets
  Add two missing calls to H5I_dec_ref for new dapl_id
  Community-proposed fix
2019-12-03 12:35:02 -06:00
Jordan Henderson
ca34de56cd Merge pull request #2066 in HDFFV/hdf5 from ~JHENDERSON/hdf5:develop to develop
* commit '874900d39561f97c0a41b7efc59686daa66df95e':
  Add OAPL parameter to H5Rcreate_ APIs
2019-12-03 11:32:55 -06:00
Jordan Henderson
874900d395 Add OAPL parameter to H5Rcreate_ APIs 2019-12-02 17:05:15 -06:00
Chris Hogan
4b2560fa81 Merge pull request #2049 in HDFFV/hdf5 from ~CHOGAN/hdf5:chogan/issue_10934 to develop
* commit '3664cea5d6f87a7e8e708191f9cea36077424a80':
  Fix failing test and retain semantics for chunk cache properties in non-chunked datasets
  Add two missing calls to H5I_dec_ref for new dapl_id
  Community-proposed fix
2019-12-02 16:58:16 -06:00
Allen Byrne
8888cfd25c Update to new error text 2019-12-02 14:58:57 -06:00
Allen Byrne
929490f6bc Update reference files to latest output 2019-12-02 12:01:40 -06:00
kmu
463199464f Merge branch 'develop' of https://git.hdfgroup.org/scm/hdffv/hdf5 into develop 2019-12-02 10:46:22 -06:00
Neil Fortner
ac1a8ab5fe Add support for scalar dataspaces to H5Sproject_intersection. Add
checking for ank validity.
2019-12-02 10:32:03 -06:00
Allen Byrne
7e92c2e3e5 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '0772b975d1d2bfa15aedeb4b6e2c2aac78c61a2f':
  Fix missing free in H5T__ref_mem_read()
  Fix bugs in H5VL file comparison code.  Add short circuit success to H5VL_cmp_connector_cls().
  Implement file comparison VOL callback.  Other changes to allow references to work with non-native connectors.  There is a bug somewhere.
  Add support for point selections to H5S_select_project_intersection.
  Remove H5VL_NATIVE_FILE_GET_FILE_ID and add H5VL_OBJECT_GET_FILE
  Revert "Make a squash commit of 'Quiet some warnings by adjusting warnings level and fixing some code.' (commit 5c911d8baf)"
  Revert "Oops, remove more C99 designated initializers for VS 2010 compatibility."
  H5R: fix H5Tconv to check for null references
  Trivial parameter renaming in VOL API calls.
  Move checking for zero offset in selection adjust calls to the selection callbacks.  This makes the procedure for checking it consistent across selection types and between _s and _u, ensures it is always is performed even when called within the H5S package, and removes the redundant check that would occur when callins H5S_select_adjust_s() from outside the H5S package.
  Replace H5Sselect_adjust_u() and H5Shyper_adjust_s() with H5Sselect_adjust.  Implement "adjust_s" callback for all selection types.  Add range checking to H5Sselect_adjust().
2019-12-02 08:00:20 -06:00
Neil Fortner
0772b975d1 Merge pull request #2063 in HDFFV/hdf5 from ~NFORTNE2/hdf5_naf:vol_file_cmp to develop
* commit '40b2658b4b266b4dc65ec3db2897e0aaf54f8e42':
  Fix missing free in H5T__ref_mem_read()
  Fix bugs in H5VL file comparison code.  Add short circuit success to H5VL_cmp_connector_cls().
  Implement file comparison VOL callback.  Other changes to allow references to work with non-native connectors.  There is a bug somewhere.
2019-11-30 18:44:02 -06:00
Neil Fortner
40b2658b4b Fix missing free in H5T__ref_mem_read() 2019-11-28 23:07:33 -06:00
Neil Fortner
ece625e3b6 Fix bugs in H5VL file comparison code. Add short circuit success to
H5VL_cmp_connector_cls().
2019-11-27 22:48:01 -06:00
Jerome Soumagne
648073ea8e Merge pull request #2059 in HDFFV/hdf5 from ~JSOUMAGNE/hdf5:topic_nullref to develop
* commit '6b68cc352ffabb5fe997db1eb52216b3ee80e669':
  H5R: fix H5Tconv to check for null references
2019-11-27 22:31:18 -06:00
Neil Fortner
e23e67798a Implement file comparison VOL callback. Other changes to allow
references to work with non-native connectors.  There is a bug
somewhere.
2019-11-27 16:50:01 -06:00
Neil Fortner
2829407059 Fix issues with using H5Pget_fill_value() with file datatypes retrieved
from H5VLget_file_type().
2019-11-27 14:52:30 -06:00
Neil Fortner
33a5acf8a5 Merge pull request #2050 in HDFFV/hdf5 from ~NFORTNE2/hdf5_naf:point_spi to develop
* commit 'ad2fbb022e096233444489e69b93343a4b7e9631':
  Add support for point selections to H5S_select_project_intersection.
2019-11-27 14:47:23 -06:00
Neil Fortner
ad2fbb022e Add support for point selections to H5S_select_project_intersection. 2019-11-27 14:45:53 -06:00
Jerome Soumagne
68852d726c Merge pull request #2057 in HDFFV/hdf5 from ~JSOUMAGNE/hdf5:topic_get_file_id_native to develop
* commit 'f46494ffd8449fc610798c8af312362608029d3d':
  Remove H5VL_NATIVE_FILE_GET_FILE_ID and add H5VL_OBJECT_GET_FILE
2019-11-27 14:19:41 -06:00
Jerome Soumagne
f46494ffd8 Remove H5VL_NATIVE_FILE_GET_FILE_ID and add H5VL_OBJECT_GET_FILE
Remove H5F__get_file_id() and use only private routine instead
2019-11-27 14:17:08 -06:00
David Young
5e800bff9d Merge pull request #2062 in HDFFV/hdf5 from ~DYOUNG/vchoi_fork:revert-c99-designated to develop
* commit '0108072f7a746b809952d5cc560577f931b64f71':
  Revert "Make a squash commit of 'Quiet some warnings by adjusting warnings level and fixing some code.' (commit 5c911d8baf)"
  Revert "Oops, remove more C99 designated initializers for VS 2010 compatibility."
2019-11-27 13:18:53 -06:00
David Young
0108072f7a Revert "Make a squash commit of 'Quiet some warnings by adjusting warnings level and fixing some code.' (commit 5c911d8baf)" 2019-11-27 11:26:02 -06:00
David Young
8fb9fb5d4d Revert "Oops, remove more C99 designated initializers for VS 2010 compatibility."
This reverts commit f907b511d0.
2019-11-27 11:16:52 -06:00
kmu
ea0759d047 Merge branch 'develop' of https://git.hdfgroup.org/scm/hdffv/hdf5 into develop 2019-11-26 21:59:51 -06:00
kmu
e0262c8bed Revert "fix warnings from Intel compiler"
This reverts commit 8b9338ab57.
2019-11-26 17:24:48 -06:00
kmu
bfbd613f53 Revert "fix warnings and some text alignment"
This reverts commit d06474c4e1.
2019-11-26 17:24:24 -06:00
kmu
e971c0afa1 Revert "let hdf5 pick up the right compiler in Intel environment"
This reverts commit 3613ec7296.
2019-11-26 17:24:11 -06:00
kmu
2bb0f52edf Revert "fix issues from previous PR comments"
This reverts commit d242a900f4.
2019-11-26 17:23:58 -06:00
kmu
4c8a2f726a Revert "using a different MACRO"
This reverts commit fc61b7a9f3.
2019-11-26 17:23:34 -06:00
Jerome Soumagne
6b68cc352f H5R: fix H5Tconv to check for null references
Valid for both deprecated and non-deprecated references

Update test
2019-11-26 15:50:08 -06:00
Neil Fortner
9f61c26927 Merge pull request #2045 in HDFFV/hdf5 from ~NFORTNE2/hdf5_naf:select_adjust to develop
* commit '4e12984b77cdd7615843d94f8de8d54db27476ac':
  Move checking for zero offset in selection adjust calls to the selection callbacks.  This makes the procedure for checking it consistent across selection types and between _s and _u, ensures it is always is performed even when called within the H5S package, and removes the redundant check that would occur when callins H5S_select_adjust_s() from outside the H5S package.
  Replace H5Sselect_adjust_u() and H5Shyper_adjust_s() with H5Sselect_adjust.  Implement "adjust_s" callback for all selection types.  Add range checking to H5Sselect_adjust().
2019-11-26 11:38:25 -06:00
Richard Warren
8a790fe85a Adds a new t_2Gio.c MPI test 2019-11-26 09:20:47 -05:00
Dana Robinson
5f3414e4d9 Merge pull request #2054 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:vol_trivial to develop
* commit '9a93ecac522d9032efd9cdc39ff0550412e54565':
  Trivial parameter renaming in VOL API calls.
2019-11-25 23:23:52 -06:00
Allen Byrne
dcae4544a3 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'a8892bb42d6f6e4fbc30fae0eb2b957f81c938b9': (45 commits)
  Oops, remove more C99 designated initializers for VS 2010 compatibility.
  Add an #include to get a function declaration.
  Don't use C99 designated initializers, they're not compatible with Visual Studio 2010.
  Quiet some more maybe-uninitialized warnings---each is a false positive, *sigh*.  This is more code that may not compile with VS2010, *sigh sigh*.
  Always warn on maybe-uninitialized.  -Wincompatible-pointer-types was not available until GCC 5, so enable it only if that's the GCC version we're using.
  Only promote maybe-uninitialized warnings to errors on GCC 8.  Even on GCC 8, there may be false positives at low optimization levels?  I need to check.
  Only use -Werror=cast-function-type with GCC 8 and later.
  Put all of the -W options back into the order I found them in so that it's easier to compare old and new config/gnu-flags.
  Add new source files to CMakeLists.txt.
  Mention the -Werror= flags in libhdf5.settings.in.
  free -> HDfree
  Promote decleration-after-statement warnings to errors.
  Quiet decleration-after-statement warnings.
  Move a statement under some declarations since some vintages of Visual Studio don't like declarations after statements.
  Document H5D__chunk_mem_xfree_wrapper().
  Undo accidental test deletion.
  Oops, delete a debug printf that snuck in here.
  Undo my changes to the HD macros, hadn't really intended those to be on this branch....
  Make errors of some more warnings.  Move disabled warnings to DEVELOPER_WARNING_CFLAGS.  Put just one warning option on a line, and sort some of the options.
  Cast to the parameter type, H5VL_token_t *, instead of to unsigned char *.
  ...
2019-11-25 18:21:14 -06:00
David Young
a8892bb42d Merge pull request #2055 in HDFFV/hdf5 from ~DYOUNG/vchoi_fork:add-werror-and-squash-some to develop
* commit 'f907b511d06612dafc7814a7c30f2f3d2b76d52b':
  Oops, remove more C99 designated initializers for VS 2010 compatibility.
2019-11-25 17:33:54 -06:00
David Young
f907b511d0 Oops, remove more C99 designated initializers for VS 2010 compatibility. 2019-11-25 17:30:08 -06:00
Dana Robinson
9a93ecac52 Trivial parameter renaming in VOL API calls. 2019-11-25 15:30:04 -08:00
David Young
5c911d8baf Merge pull request #2030 in HDFFV/hdf5 from ~DYOUNG/vchoi_fork:add-werror-and-squash-some to develop
* commit '62208b056a09c01855fbac7f75146be58ad6bfe5': (44 commits)
  Add an #include to get a function declaration.
  Don't use C99 designated initializers, they're not compatible with Visual Studio 2010.
  Quiet some more maybe-uninitialized warnings---each is a false positive, *sigh*.  This is more code that may not compile with VS2010, *sigh sigh*.
  Always warn on maybe-uninitialized.  -Wincompatible-pointer-types was not available until GCC 5, so enable it only if that's the GCC version we're using.
  Only promote maybe-uninitialized warnings to errors on GCC 8.  Even on GCC 8, there may be false positives at low optimization levels?  I need to check.
  Only use -Werror=cast-function-type with GCC 8 and later.
  Put all of the -W options back into the order I found them in so that it's easier to compare old and new config/gnu-flags.
  Add new source files to CMakeLists.txt.
  Mention the -Werror= flags in libhdf5.settings.in.
  free -> HDfree
  Promote decleration-after-statement warnings to errors.
  Quiet decleration-after-statement warnings.
  Move a statement under some declarations since some vintages of Visual Studio don't like declarations after statements.
  Document H5D__chunk_mem_xfree_wrapper().
  Undo accidental test deletion.
  Oops, delete a debug printf that snuck in here.
  Undo my changes to the HD macros, hadn't really intended those to be on this branch....
  Make errors of some more warnings.  Move disabled warnings to DEVELOPER_WARNING_CFLAGS.  Put just one warning option on a line, and sort some of the options.
  Cast to the parameter type, H5VL_token_t *, instead of to unsigned char *.
  Change hdset_reg_ref_t and H5R_ref_t from arrays of unsigned char to structs containing those arrays.  Encapsulating the arrays in this way makes it easier to write and think about pointers to these types, casts to/from these types, etc.
  ...
2019-11-25 16:58:27 -06:00
David Young
62208b056a Add an #include to get a function declaration. 2019-11-25 16:56:03 -06:00
David Young
d07aeef6ad Merge remote-tracking branch 'hdf5/develop' into add-werror-and-squash-some 2019-11-25 16:38:21 -06:00
Chris Hogan
3664cea5d6 Fix failing test and retain semantics for chunk cache properties in non-chunked datasets 2019-11-25 16:28:51 -06:00
David Young
f2f8a554e6 Don't use C99 designated initializers, they're not compatible with
Visual Studio 2010.
2019-11-25 15:43:56 -06:00
kmu
fc61b7a9f3 using a different MACRO 2019-11-25 15:17:55 -06:00
Allen Byrne
be971e8ec2 Remove unneeded flag overwrites 2019-11-25 12:53:45 -06:00
Allen Byrne
a8e8f491c0 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'b8a56718e40efaf6954a760984b9d513dbff8f7d':
  Add documentation for H5CX_get_ohdr_flags
  Add object header flags to API context
  Use major error code of calling package
  Handle H5CX_state_t for lcpl
  Add character encoding to lcpl context
  Change LC property name from 'create_intermediate_group' to 'intermediate_group'
  Use API context to store/retrieve LCPL when creating intermediate groups
2019-11-25 12:52:02 -06:00
kmu
d242a900f4 fix issues from previous PR comments 2019-11-25 12:48:51 -06:00
Chris Hogan
b8a56718e4 Merge pull request #2029 in HDFFV/hdf5 from ~CHOGAN/hdf5:feature/cx_lcpl to develop
* commit '4ce9c10c568ff81ebd4eb7585039cbe3c40d1718':
  Add documentation for H5CX_get_ohdr_flags
  Add object header flags to API context
  Use major error code of calling package
  Handle H5CX_state_t for lcpl
  Add character encoding to lcpl context
  Change LC property name from 'create_intermediate_group' to 'intermediate_group'
  Use API context to store/retrieve LCPL when creating intermediate groups
2019-11-25 11:39:04 -06:00
David Young
edd5297143 Quiet some more maybe-uninitialized warnings---each is a false positive,
*sigh*.  This is more code that may not compile with VS2010, *sigh
sigh*.
2019-11-22 15:31:00 -06:00
David Young
6d5ec83fc3 Always warn on maybe-uninitialized. -Wincompatible-pointer-types was not
available until GCC 5, so enable it only if that's the GCC version we're using.
2019-11-22 14:34:42 -06:00
David Young
fa1dfbbd8d Only promote maybe-uninitialized warnings to errors on GCC 8. Even on
GCC 8, there may be false positives at low optimization levels?  I need
to check.
2019-11-22 14:23:07 -06:00
David Young
dde718ad51 Only use -Werror=cast-function-type with GCC 8 and later. 2019-11-22 13:49:59 -06:00
David Young
edb6f34440 Put all of the -W options back into the order I found them in so that it's
easier to compare old and new config/gnu-flags.
2019-11-22 13:41:45 -06:00
Chris Hogan
0de8401d34 Add two missing calls to H5I_dec_ref for new dapl_id 2019-11-21 16:21:06 -06:00
Allen Byrne
772846eb05 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '33d173d672f4affc804cf6e3c43b92693bd3ed68':
  Modify H5Ssel_iter_get_seq_list() to accept iterators that have reached the end of iteration (returning zero sequences).  Previously it could cause an assertion failure.
2019-11-21 09:33:23 -06:00
Allen Byrne
5fe5caf560 Comment correction 2019-11-21 09:33:04 -06:00
David Young
456171651a Add new source files to CMakeLists.txt. 2019-11-20 16:56:00 -06:00
David Young
adb0c7bde5 Mention the -Werror= flags in libhdf5.settings.in. 2019-11-20 15:54:15 -06:00
David Young
559bcaf570 free -> HDfree 2019-11-20 15:53:46 -06:00
Neil Fortner
33d173d672 Merge pull request #2043 in HDFFV/hdf5 from ~NFORTNE2/hdf5_naf:seq_list_fix to develop
* commit 'c104f4cb87a1558ab6a772967887738dc9800f0d':
  Modify H5Ssel_iter_get_seq_list() to accept iterators that have reached the end of iteration (returning zero sequences).  Previously it could cause an assertion failure.
2019-11-20 12:02:46 -06:00
Allen Byrne
79f45aacea Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '13456df8a47fdcd8f96f170c9218e57a03066120':
  Minor correction
  Update list of tested platforms
  Add VS2019 support
  Fixed the H5_mpi_get_bigio_count function prototype
2019-11-20 06:51:54 -06:00
Allen Byrne
13456df8a4 Merge pull request #2048 in HDFFV/hdf5 from ~BYRN/hdf5_merge_adb:develop to develop
* commit 'efe234c832581d16d3da41fe71b50ef71fd44acc':
  Minor correction
  Update list of tested platforms
  Add VS2019 support
2019-11-19 15:48:06 -06:00
Allen Byrne
efe234c832 Minor correction 2019-11-18 15:32:19 -06:00
Allen Byrne
0f09287b19 Update list of tested platforms 2019-11-18 15:02:10 -06:00
Allen Byrne
265325fb9a Add VS2019 support 2019-11-18 14:58:06 -06:00
Richard Warren
3f9c7efbd9 Merge pull request #2047 in HDFFV/hdf5 from h5_private_prototype_fix to develop
* commit 'c440e05de82b224a0a6b042ec8a27accdc1e48ae':
  Fixed the H5_mpi_get_bigio_count function prototype
2019-11-18 14:18:55 -06:00
Chris Hogan
fd1970572f Community-proposed fix 2019-11-18 14:07:03 -06:00
Richard Warren
c440e05de8 Fixed the H5_mpi_get_bigio_count function prototype 2019-11-18 15:04:35 -05:00
Neil Fortner
4e12984b77 Move checking for zero offset in selection adjust calls to the selection callbacks. This makes the
procedure for checking it consistent across selection types and between
_s and _u, ensures it is always is performed even when called within the H5S package, and removes the redundant check that would occur when callins H5S_select_adjust_s() from outside the H5S package.
2019-11-18 13:33:36 -06:00
Neil Fortner
4064332a2d Replace H5Sselect_adjust_u() and H5Shyper_adjust_s() with
H5Sselect_adjust.  Implement "adjust_s" callback for all selection
types.  Add range checking to H5Sselect_adjust().
2019-11-18 11:53:50 -06:00
Allen Byrne
cc22fb0ae5 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '3593b3d201dd6eac4a71e67db02a54959d9a169e':
  Correct file extension
2019-11-16 08:15:58 -06:00
Neil Fortner
c104f4cb87 Modify H5Ssel_iter_get_seq_list() to accept iterators that have reached
the end of iteration (returning zero sequences).  Previously it could
cause an assertion failure.
2019-11-15 16:47:30 -06:00
Chris Hogan
4ce9c10c56 Add documentation for H5CX_get_ohdr_flags 2019-11-15 16:19:19 -06:00
Allen Byrne
3593b3d201 Merge pull request #2042 in HDFFV/hdf5 from ~BYRN/hdf5_merge_adb:develop to develop
* commit 'c2fd059704e9232a3d3221ddd0c84803256baec2':
  Correct file extension
2019-11-15 16:00:39 -06:00
Allen Byrne
c2fd059704 Correct file extension 2019-11-14 16:41:18 -06:00
Chris Hogan
a7b35b8584 Add object header flags to API context
Add missing DCPL to API context state
Replace a couple LCPL H5P_get calls with H5CX_get_*
2019-11-14 15:56:15 -06:00
kmu
3613ec7296 let hdf5 pick up the right compiler in Intel environment 2019-11-14 09:28:03 -06:00
Allen Byrne
b3e7dab9f6 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '07b59c0b63041f1be964aee2a27f5c748c29d688':
  Implement public H5Sselect_project_intersection().  Updated internal algorithm to (optionally) avoid sharing selection data structures. Tested internal code (including with valgrind) by setting VDS code to avoid sharing selection, has since been changed to share selection for performance, so this code is not yet tested in regression tests.  API has not been tested.
2019-11-13 17:16:36 -06:00
David Young
29561bac95 Promote decleration-after-statement warnings to errors. 2019-11-13 14:39:12 -06:00
David Young
bf6b89c841 Quiet decleration-after-statement warnings. 2019-11-13 14:38:22 -06:00
David Young
7dcd36a37d Move a statement under some declarations since some vintages of Visual
Studio don't like declarations after statements.
2019-11-13 14:21:15 -06:00
David Young
3dd539473b Document H5D__chunk_mem_xfree_wrapper(). 2019-11-13 13:48:07 -06:00
David Young
bd77af437f Undo accidental test deletion. 2019-11-13 13:41:05 -06:00
David Young
305177a51f Oops, delete a debug printf that snuck in here. 2019-11-13 13:39:59 -06:00
David Young
b0dd6184bc Undo my changes to the HD macros, hadn't really intended those to be on
this branch....
2019-11-13 13:38:47 -06:00
David Young
560db03d66 Make errors of some more warnings. Move disabled warnings to
DEVELOPER_WARNING_CFLAGS.  Put just one warning option on a line, and
sort some of the options.
2019-11-13 13:33:46 -06:00
David Young
15f5a6980d Cast to the parameter type, H5VL_token_t *, instead of to unsigned char *.
(H5VL_token_t, too, probably should turn from a typedef for a
constant-length array to an array encapsulated in a struct.)
2019-11-13 13:31:51 -06:00
David Young
b505226ad5 Change hdset_reg_ref_t and H5R_ref_t from arrays of unsigned char to
structs containing those arrays.  Encapsulating the arrays in this way
makes it easier to write and think about pointers to these types, casts
to/from these types, etc.

An interesting side-effect that we probably should *not* rely on is
that the struct-encapsulation changes the alignment so that some GCC
warnings about casts that increase the alignment requirement of the
operand go away.  Warnings like that have to be taken seriously:  I will
add -Werror=cast-align to the default compiler flags so that they stop
the build quickly.

GCC warnings led me to some surprising casts in test/trefer.c. I found
that it was possible to make many simplifications after introducing the
struct-encapsulation that I described, above.
2019-11-13 13:29:59 -06:00
David Young
4281d101c4 Make this script work on hosts where PERL is not installed at
/usr/bin/perl.
2019-11-13 13:04:58 -06:00
Neil Fortner
07b59c0b63 Merge pull request #2033 in HDFFV/hdf5 from ~NFORTNE2/hdf5_naf:public_spi to develop
* commit 'db6eab893e5f027f0b535316e0e7a9abe9ff8619':
  Implement public H5Sselect_project_intersection().  Updated internal algorithm to (optionally) avoid sharing selection data structures. Tested internal code (including with valgrind) by setting VDS code to avoid sharing selection, has since been changed to share selection for performance, so this code is not yet tested in regression tests.  API has not been tested.
2019-11-13 12:57:31 -06:00
Neil Fortner
db6eab893e Implement public H5Sselect_project_intersection(). Updated internal
algorithm to (optionally) avoid sharing selection data structures.
Tested internal code (including with valgrind) by setting VDS code to
avoid sharing selection, has since been changed to share selection for
performance, so this code is not yet tested in regression tests.  API
has not been tested.
2019-11-13 12:54:13 -06:00
David Young
695c62bafe In every instance, x is initialized by memcpy, but GCC isn't smart
enough to figure that out.  Quiet some warnings by always initializing
`x` to 0.
2019-11-13 12:06:01 -06:00
David Young
1e3d63dcdf same_file is assigned but never used. Delete it. 2019-11-13 12:05:16 -06:00
David Young
81a256b02e Don't assign a constant string to a pointer to non-constant character. 2019-11-13 12:04:42 -06:00
David Young
42cd35b717 GCC isn't smart enough to realize that fill_c is always initialized
and exclusively used in `datatype == H5T_COMPOUND` branches, so just
initialize it at its declaration so that GCC doesn't warn.
2019-11-13 12:03:18 -06:00
David Young
7bdf30738d I'm not sure what the previous code was trying to do, casting an array
of `hsize_t`, `start`, to `long long`, but I think the way that I have
rewritten it, it probably produces a more useful result?  As a bonus,
GCC has stopped warning about it.
2019-11-13 11:56:46 -06:00
David Young
dc0d3a3881 Quiet a warning about an unused variable. This code looks like it
should be heavily restructured to avoid the use of globals like `pass`,
but that's a project for another day and another person.
2019-11-13 11:50:11 -06:00
David Young
943e601b10 Straggler from previous commit: build and link the new .c files where I
moved some previously-static variables and functions that were causing
unused-variable/function warnings.
2019-11-13 11:49:15 -06:00
David Young
c5b8f3db3b Make many warnings about H5T_copy() calls that discard const qualifiers
into a few warnings in H5T_copy() itself.
2019-11-13 11:45:29 -06:00
David Young
19e3b93c81 Use FUNC_ENTER_STATIC_NOERR instead of FUNC_ENTER_STATIC for a function
that does not generate its own error, so GCC does not warn that
err_occurred (or whatever it is called) is unused or set and unused.
2019-11-13 11:42:50 -06:00
David Young
408d208710 Explicitly initialize type_flags; the compiler does not realize that
it is set before use by passing it as a reference to another function.
2019-11-13 11:41:25 -06:00
David Young
918e1a879d Initialize a couple of return values to avoid used-before-set warnings. 2019-11-13 11:39:24 -06:00
David Young
1937029354 Initialize a couple of variables that the compiler does not realize are
initialized when they're passed by reference to functions.
2019-11-13 11:37:14 -06:00
David Young
e2d9cc5584 To quiet a warning, initialize some struct timevals that the compiler
does not realize are always set before use by `gettimeofday`.
2019-11-13 11:35:36 -06:00
David Young
833c0a2fc6 Move some static functions and variables to .c files to avoid unused
function/variable warnings.
2019-11-13 11:35:00 -06:00
David Young
98c4ed49e8 Delete unused variable. 2019-11-13 11:33:35 -06:00
David Young
3f11ed26f7 Change a signed variable to unsigned to avoid a warning about the sign
being lost by a cast.
2019-11-13 11:32:38 -06:00
David Young
37eb3dd7d2 Avoid unused-variable warnings: change static const strings in a couple
of header-file templates to #defines.
2019-11-13 11:31:20 -06:00
David Young
77a9806ab5 Demote errors to warnings for a couple of unused-but-set variables that
I cannot untangle right now.
2019-11-13 11:26:49 -06:00
David Young
aa0f3cb1a8 Delete an unused variable. 2019-11-13 11:25:51 -06:00
David Young
0cb24f8ad4 Mark an unused parameter H5_ATTR_UNUSED. 2019-11-13 11:25:27 -06:00
David Young
769a6e9d32 Delete variables that are unused or set and unused. 2019-11-13 11:24:40 -06:00
David Young
587758e8c6 Initialize a variable before its first use. 2019-11-13 11:23:12 -06:00
David Young
c538919509 Format a pointer with %p to avoid a gripe about casting a pointer to an
integer.
2019-11-13 11:22:09 -06:00
Allen Byrne
e5f9c60e69 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'e08b69d3d2e572de4707b1fbf908111d29f40a1b':
  Use HD prefix.
  Fix issue where H5R__reopen_file did not make the file "post open" callback.
  Apparently, + has no special meaning, and neither does \+, in so-called "obsolete" / POSIX "basic" regular expressions.  Also, not every version of `sed` out there supports the `-E` option.  So delete the -E flag and use the regex `[^/][^/]*` instead of `[^/]+`.
  Implement H5VLget_file_type() to return a copy of a datatype with the location set to be in a file.  Only meant to be used by VOL connectors. Implement H5VLpeek_connector_id() to support connectors querying their own IDs.  Fix app_ref with connector IDs in a couple places (external VOLs registered as default through ENV should be visible to the application).  Modify vlen and reference interfaces to work with arbitrary VOL connectors.  Implement file "post open" specific callback, to enable connectors to update their file structs after a wrap context has been set.
  Fix HDFFV-10937: use a more reliable (and probably faster) scheme for visiting all elements of a matrix in an arbitrary order.
2019-11-13 10:31:35 -06:00
David Young
62afeec0ee Merge remote-tracking branch 'hdf5/develop' into add-werror-and-squash-some to
see if new warnings-as-errors have cropped up.
2019-11-12 14:02:35 -06:00
David Young
e08b69d3d2 Merge pull request #2027 in HDFFV/hdf5 from ~DYOUNG/hdf5:dsets-randomness to develop
* commit '4d834adba4aeb1a0174bddb83212b7073b64e269':
  Use HD prefix.
  Fix HDFFV-10937: use a more reliable (and probably faster) scheme for visiting all elements of a matrix in an arbitrary order.
2019-11-12 13:25:26 -06:00
Neil Fortner
f1b3df09ef Merge pull request #2037 in HDFFV/hdf5 from ~NFORTNE2/hdf5_naf:develop to develop
* commit 'e5fc4889fa4f412056a4672435c96c17a6d1a936':
  Fix issue where H5R__reopen_file did not make the file "post open" callback.
2019-11-12 13:01:40 -06:00
David Young
4d834adba4 Use HD prefix. 2019-11-12 12:40:51 -06:00
Neil Fortner
e5fc4889fa Fix issue where H5R__reopen_file did not make the file "post open"
callback.
2019-11-12 12:09:43 -06:00
David Young
78dfcd4658 Merge pull request #2036 in HDFFV/hdf5 from ~DYOUNG/netbsd:develop to develop
* commit 'f1b39ad80e2fc0d0f4f6ecae2a9fb0ea436c34cc':
  Apparently, + has no special meaning, and neither does \+, in so-called "obsolete" / POSIX "basic" regular expressions.  Also, not every version of `sed` out there supports the `-E` option.  So delete the -E flag and use the regex `[^/][^/]*` instead of `[^/]+`.
2019-11-12 11:14:29 -06:00
David Young
f1b39ad80e Apparently, + has no special meaning, and neither does \+, in so-called
"obsolete" / POSIX "basic" regular expressions.  Also, not every version of
`sed` out there supports the `-E` option.  So delete the -E flag and use
the regex `[^/][^/]*` instead of `[^/]+`.

Add config/netbsd to the MANIFEST.
2019-11-12 10:43:26 -06:00
kmu
d06474c4e1 fix warnings and some text alignment 2019-11-11 10:49:37 -06:00
Chris Hogan
07ff0a842a Use major error code of calling package 2019-11-08 15:29:37 -06:00
Neil Fortner
9fd1143ffd Merge pull request #2032 in HDFFV/hdf5 from ~NFORTNE2/hdf5_naf:vlget_file_type to develop
* commit '1dbec40d465072540f8507c524ae7b909a6b1cf0':
  Implement H5VLget_file_type() to return a copy of a datatype with the location set to be in a file.  Only meant to be used by VOL connectors. Implement H5VLpeek_connector_id() to support connectors querying their own IDs.  Fix app_ref with connector IDs in a couple places (external VOLs registered as default through ENV should be visible to the application).  Modify vlen and reference interfaces to work with arbitrary VOL connectors.  Implement file "post open" specific callback, to enable connectors to update their file structs after a wrap context has been set.
2019-11-08 15:21:21 -06:00
Neil Fortner
1dbec40d46 Implement H5VLget_file_type() to return a copy of a datatype with the
location set to be in a file.  Only meant to be used by VOL connectors.
Implement H5VLpeek_connector_id() to support connectors querying their
own IDs.  Fix app_ref with connector IDs in a couple places (external
VOLs registered as default through ENV should be visible to the
application).  Modify vlen and reference interfaces to work with
arbitrary VOL connectors.  Implement file "post open" specific
callback, to enable connectors to update their file structs after a
wrap context has been set.
2019-11-08 15:14:33 -06:00
David Young
4981e83740 Merge remote-tracking branch 'hdf5/develop' into add-werror-and-squash-some
to pick up the NetBSD-compatibility changes that I recently merged.
2019-11-08 12:19:31 -06:00
kmu
815611a318 Merge branch 'develop' of https://git.hdfgroup.org/scm/~kmu/hdf5 into develop 2019-11-07 14:51:40 -06:00
kmu
8b9338ab57 fix warnings from Intel compiler 2019-11-07 14:34:13 -06:00
Allen Byrne
6b927a773c HDFFV-10876 Update h5dump and h5ls for new ref api. 2019-11-07 09:49:11 -06:00
David Young
2dd5bbfe16 Merge pull request #1984 in HDFFV/hdf5 from ~DYOUNG/netbsd:develop to develop
* commit '0b721858e46a317c370a24115032d5be41688f67':
  Make these scripts relocatable again: derive a relative path for the original installation prefix from the examples prefix.  Use that relative path to locate the current installation prefix, always.  Fall back to an absolute installation prefix if the relative path cannot be derived.
  Get the path to prefix right: needs a ../ to back out of subdirectory c/.
  Make this script relocatable again: derive a relative path for the original installation prefix from the examples prefix.  Use that relative path to locate the current installation prefix, always.  Fall back to an absolute installation prefix if the relative path cannot be derived.
  Let us override the examples directory using --with-examplesdir=DIR. This is handy for NetBSD where HDF5 examples are installed by convention in $prefix/share/examples/hdf5/ rather than in ${prefix}/share/hdf5_examples/, which is the HDF5 default.
  Follow longstanding execv convention for compatibility with NetBSD.
  Under the examples directories, always find the installed HDF5 executables and scripts using @prefix@ instead of a relative path, because the number of ../ in the relative path will be different on NetBSD than on other systems.
  Make the HDF5 configure script grok NetBSD.
  For portability, insulate the HDF5 library from some system macros.
  Not every system has perl installed in /usr/bin/, so change the shebang (#!) line to `/usr/bin/env perl` to locate perl on the PATH.
  For portability, use the POSIX sh(1) string-comparison operator `=` instead of `==`.
2019-11-05 15:36:09 -06:00
David Young
0b721858e4 Make these scripts relocatable again: derive a relative path for the
original installation prefix from the examples prefix.  Use that
relative path to locate the current installation prefix, always.  Fall
back to an absolute installation prefix if the relative path cannot be
derived.
2019-11-05 15:13:47 -06:00
David Young
1b01b6d60b Get the path to prefix right: needs a ../ to back out of subdirectory
c/.
2019-11-05 15:13:02 -06:00
David Young
34eff2aae5 Change some GCC warnings to errors. Fix code to quiet some warnings. 2019-11-05 12:14:26 -06:00
David Young
d459daa1f7 Make this script relocatable again: derive a relative path for the
original installation prefix from the examples prefix.  Use that
relative path to locate the current installation prefix, always.  Fall
back to an absolute installation prefix if the relative path cannot be
derived.
2019-11-05 10:14:59 -06:00
Chris Hogan
2eeda063ba Handle H5CX_state_t for lcpl 2019-11-04 15:10:44 -06:00
Chris Hogan
77a0f4087f Add character encoding to lcpl context 2019-11-04 14:42:08 -06:00
Chris Hogan
e6d6388905 Change LC property name from 'create_intermediate_group' to 'intermediate_group' 2019-10-30 16:11:25 -05:00
Chris Hogan
f8ab081b1f Use API context to store/retrieve LCPL when creating intermediate groups 2019-10-29 11:46:48 -05:00
David Young
e8de6a46e2 Fix HDFFV-10937: use a more reliable (and probably faster) scheme for
visiting all elements of a matrix in an arbitrary order.
2019-10-28 16:54:05 -05:00
Richard Warren
afd4b29131 Merge pull request #2015 in HDFFV/hdf5 from HDFFV-10943 to develop
* commit '299c9ed5fe19edac37cab27bc04d587fa67568c2':
  Removed set_bigio_count prototype since it has been added to H5private.h
  Change API names for get/set bitio_count.  Also added H5_mpi_set_bigio_count to H5private.h.
2019-10-25 11:39:10 -05:00
Richard Warren
299c9ed5fe Removed set_bigio_count prototype since it has been added to H5private.h 2019-10-25 11:28:21 -04:00
Allen Byrne
73e8b16d92 Merge pull request #2016 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '9affb7f12ec6084ccaadec9fcdc8d94bccf4dd4f':
  Fix MPI test depends
2019-10-23 16:10:40 -05:00
Allen Byrne
9affb7f12e Fix MPI test depends 2019-10-23 14:49:05 -05:00
Richard Warren
94d14191fa Change API names for get/set bitio_count. Also added H5_mpi_set_bigio_count to H5private.h. 2019-10-23 14:41:45 -04:00
Allen Byrne
20292df367 Merge pull request #2008 in HDFFV/hdf5 from ~BYRN/hdf5_merge_adb:develop to develop
* commit '685956cd4c088d38862b36b8138e643b114b2929':
  Update format and fix missing prefix
2019-10-23 08:07:56 -05:00
Allen Byrne
685956cd4c Update format and fix missing prefix 2019-10-21 09:38:37 -05:00
Jerome Soumagne
a27403d595 Merge pull request #2000 in HDFFV/hdf5 from ~JSOUMAGNE/hdf5:fix_endian_develop to develop
* commit '294e4faab724c26985867fe8ede684967da8a698':
  Fix encode and decode of tokens in H5VLnative
2019-10-11 17:42:02 -05:00
Jerome Soumagne
294e4faab7 Fix encode and decode of tokens in H5VLnative
Fix encode and decode of deprecated object reference addresses

Make H5Rdeprec.c use tokens instead of haddr_t

Fix H5Oopen_by_addr() to serialize addr to token
2019-10-11 17:40:40 -05:00
Jordan Henderson
c4f785bc93 Partial fix for HDFFV-10792 2019-10-10 17:06:13 -05:00
Jordan Henderson
fc479b4012 Merge pull request #1998 in HDFFV/hdf5 from ~JHENDERSON/hdf5:bugfix/H5Dvlen_reclaim_ref_fix to develop
* commit '93f509a2f2d5143450a0e6753325557b2bb8b707':
  Fix various Java issues when deprecated symbols are disabled
2019-10-10 14:33:57 -05:00
Jordan Henderson
93f509a2f2 Fix various Java issues when deprecated symbols are disabled 2019-10-10 13:37:18 -05:00
Jordan Henderson
2d8096c735 Merge pull request #1996 in HDFFV/hdf5 from ~JHENDERSON/hdf5:feature/unify_H5Lcopy_H5Lmove to develop
* commit '54d149061f36eaadf5308839a3627f9158d24458':
  Unify code between H5Lcopy and H5Lmove
2019-10-10 12:49:07 -05:00
Jordan Henderson
54d149061f Unify code between H5Lcopy and H5Lmove 2019-10-09 20:22:45 -05:00
Larry Knox
3506207344 Merge pull request #1993 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit '78268762bcf9cb949f711fa0e5290f96957cb60a':
  Improvements in response to  Allen's suggestions.
  Corrections and improvements to testh5dump.sh.in changes.
  Fix errors in testh5dump.sh tests that grep for reference error messages.
2019-10-09 11:38:52 -05:00
Jerome Soumagne
7b416e6239 Merge pull request #1994 in HDFFV/hdf5 from ~JSOUMAGNE/hdf5:ref_fix to develop
* commit 'cc1546ea92304e3b8d24ad32aa7252af367d5762':
  Fix func enter macro in H5T_ref_reclaim()
2019-10-09 11:14:05 -05:00
Jerome Soumagne
cc1546ea92 Fix func enter macro in H5T_ref_reclaim() 2019-10-09 11:12:34 -05:00
Larry Knox
78268762bc Improvements in response to Allen's suggestions. 2019-10-09 11:04:15 -05:00
Larry Knox
d1f330fd61 Corrections and improvements to testh5dump.sh.in changes. 2019-10-09 09:36:26 -05:00
Larry Knox
21d69ca15f Fix errors in testh5dump.sh tests that grep for reference error messages. 2019-10-08 23:26:03 -05:00
Larry Knox
1cac341502 Merge pull request #1991 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'd42203b1d44686a0e5309f061c996b959023ce57':
  Change reference test to grep for specific error
2019-10-08 16:20:07 -05:00
Allen Byrne
d42203b1d4 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '4c558700ab33934e7358483c5d20fea4823baf9e':
  Update RELEASE.txt for reference changes
  Fix reference type comparison in h5dump
  Make wrappers, tests and tools use H5Treclaim() instead of H5Dvlen_reclaim()
  Add new H5R API that abstracts object, region and attribute reference types
  Remove ability to loc by ref from H5VL layer
  Add support for retrieving object name by token
  Add H5VL_OBJECT_GET_TYPE to get object type
  Add H5VL_MAX_TOKEN_SIZE and H5VL_token_t
  Adapt Jerome's "file info" H5VL 'get' query to retrieve container token info.
  Fix H5VL_blob_get to return size of blob
  Add 'blob' callbacks to VOL, along with a native implementation to store them in the global heap, and changed the VL datatype conversion code to use blobs.
  Remove debugging logic from the new t_bigio test
  Expanded t_bigio.c to include Jordan's test from HDFFV-10539
  Another cleanup pass as suggested by the reviewers.
  Fix some typos and remove an unused prototype from H5Sprivate.h
  At the suggestion of the PR reviewers, moved the mpio_create_large_type to H5mpi.c and renamed the function appropriately.  Also moved some support functions to set and get the vvalue where we transistion to using derived datatypes.
  Made code review edit suggested by Jerome, plus various code updates to files that I touched to eliminate compile warnings (on my Linux box).
  No functional changes, just removed some tab characters
  Make the initial bug fixes to allow >2GB writes with Independent IO
2019-10-08 16:14:40 -05:00
Jerome Soumagne
4c558700ab Merge pull request #1931 in HDFFV/hdf5 from feature/references to develop
* commit '9ed9762889fcd05dc230d6652b92fddc5ec880a4':
  Update RELEASE.txt for reference changes
  Fix reference type comparison in h5dump
  Make wrappers, tests and tools use H5Treclaim() instead of H5Dvlen_reclaim()
  Add new H5R API that abstracts object, region and attribute reference types
  Remove ability to loc by ref from H5VL layer
  Add support for retrieving object name by token
  Add H5VL_OBJECT_GET_TYPE to get object type
  Add H5VL_MAX_TOKEN_SIZE and H5VL_token_t
  Adapt Jerome's "file info" H5VL 'get' query to retrieve container token info.
  Fix H5VL_blob_get to return size of blob
  Add 'blob' callbacks to VOL, along with a native implementation to store them in the global heap, and changed the VL datatype conversion code to use blobs.
2019-10-08 15:06:55 -05:00
Richard Warren
e9f253c756 Merge pull request #1987 in HDFFV/hdf5 from HDFFV-10539-2GB-Write-Independent to develop
* commit 'abb43d3d3ac2e802d0efbe21e028381ed99722f9':
  Remove debugging logic from the new t_bigio test
  Expanded t_bigio.c to include Jordan's test from HDFFV-10539
  Another cleanup pass as suggested by the reviewers.
  Fix some typos and remove an unused prototype from H5Sprivate.h
  At the suggestion of the PR reviewers, moved the mpio_create_large_type to H5mpi.c and renamed the function appropriately.  Also moved some support functions to set and get the vvalue where we transistion to using derived datatypes.
  Made code review edit suggested by Jerome, plus various code updates to files that I touched to eliminate compile warnings (on my Linux box).
  No functional changes, just removed some tab characters
  Make the initial bug fixes to allow >2GB writes with Independent IO
2019-10-08 14:57:43 -05:00
Jerome Soumagne
9ed9762889 Update RELEASE.txt for reference changes 2019-10-08 14:51:12 -05:00
Jerome Soumagne
0beba4aac2 Fix reference type comparison in h5dump 2019-10-08 14:30:24 -05:00
Jerome Soumagne
c13078a0ed Make wrappers, tests and tools use H5Treclaim() instead of H5Dvlen_reclaim() 2019-10-08 14:30:24 -05:00
Jerome Soumagne
ae490016b9 Add new H5R API that abstracts object, region and attribute reference types
Also support references to external files

Add new H5T_REF type and type conversion routines

Support conversion from H5T_REF_OBJ/DSET_REG to H5T_REF

Add H5Treclaim() API to reclaim memory of vlen/reference types

Deprecate H5Dvlen_reclaim()

Fix H5T_vlen_reclaim() and H5T_reclaim() to use private callback

Add H5T_ref_reclaim()

Move previous H5R APIs to H5Rdeprec.c

Clean up H5Ocopy

Separate H5O_copy_expand_ref() to H5Ocopy_ref()

Add support for copying new reference types

Clean up deprecated routines to go through VOL and same code path

Fix return codes in existing trefer.c test

Rename trefer.c to trefer_deprec.c

trefer.c is for new references

Add performance test for trefer

Add additional obj_copy_ref test

Make use of tokens and blobs to store references

Skip blob encoding for object references

Start adding new reference examples
2019-10-08 14:30:24 -05:00
Jerome Soumagne
0f4e080309 Remove ability to loc by ref from H5VL layer 2019-10-08 14:30:24 -05:00
Jerome Soumagne
616567f8a1 Add support for retrieving object name by token 2019-10-08 14:30:24 -05:00
Jerome Soumagne
2c9699a61d Add H5VL_OBJECT_GET_TYPE to get object type
Add H5VL_OBJECT_LOOKUP to lookup objects
2019-10-08 14:30:24 -05:00
Jerome Soumagne
0922e60de2 Add H5VL_MAX_TOKEN_SIZE and H5VL_token_t 2019-10-08 14:30:24 -05:00
Quincey Koziol
bf65652e9b Adapt Jerome's "file info" H5VL 'get' query to retrieve container token info.
Remove "by address" location for VOL operations. (Switching to "by token")
2019-10-08 14:30:24 -05:00
Jerome Soumagne
fa6fdde1bf Fix H5VL_blob_get to return size of blob
Fix const in blob API

Add H5HG_HEAP_ID_SIZE macro to return native blob size

Add maximum size for blobs

Fix blob API callbacks to pass VOL file object

Add public wrappers for blob VOL API

Implement passthrough blob callbacks

Update H5Tvlen after callback changes

Update trace information for H5VL blob routines

Fix public header inclusion in native and passthru headers
2019-10-08 14:30:24 -05:00
Quincey Koziol
eaa65c862b Add 'blob' callbacks to VOL, along with a native implementation to store them
in the global heap, and changed the VL datatype conversion code to use blobs.

Move encode/decode of sequence lengths into VL datatype callbacks, from native
VOL blob routines.
2019-10-08 14:30:23 -05:00
Richard Warren
abb43d3d3a Remove debugging logic from the new t_bigio test 2019-10-08 15:03:13 -04:00
Richard Warren
06db420929 Expanded t_bigio.c to include Jordan's test from HDFFV-10539 2019-10-08 13:23:32 -04:00
Richard Warren
e2405c1091 Another cleanup pass as suggested by the reviewers. 2019-10-07 19:53:19 -04:00
Richard Warren
d7e83cc510 Fix some typos and remove an unused prototype from H5Sprivate.h 2019-10-07 17:30:15 -04:00
Richard Warren
a97c0d418d At the suggestion of the PR reviewers, moved the mpio_create_large_type to H5mpi.c and renamed the function appropriately. Also moved some support functions to set and get the vvalue where we transistion to using derived datatypes. 2019-10-07 17:22:51 -04:00
Allen Byrne
403c0445fb Change reference test to grep for specific error 2019-10-07 14:00:54 -05:00
Richard Warren
a074eeda11 Made code review edit suggested by Jerome, plus various code updates to files that I touched to eliminate compile warnings (on my Linux box). 2019-10-07 08:56:05 -04:00
Richard Warren
fa2882c0b3 Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/hdffv/hdf5 into HDFFV-10539-2GB-Write-Independent 2019-10-07 08:10:59 -04:00
Richard Warren
abe2958035 No functional changes, just removed some tab characters 2019-10-05 10:32:32 -04:00
Richard Warren
21a18a1cd2 Make the initial bug fixes to allow >2GB writes with Independent IO 2019-10-05 10:18:17 -04:00
Dana Robinson
f32e70895e Merge pull request #1985 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:H5Gget_object_behavior_change to develop
* commit 'ff3278f1a0d57663d73caa6aaa7f209864e9a9bd':
  Fixed a bug (HDFFV-10899) where the behavior of the deprecated H5Gget_objinfo() call had changed and passing in a non-existing soft link with a statbuf of NULL passed instead of failed (as it should as per the RM). The HDF5 1.8 and 1.10 behavior was restored and H5Gget_objinfo() will now fail and return -1 as before.
2019-10-04 13:28:12 -05:00
Dana Robinson
ff3278f1a0 Fixed a bug (HDFFV-10899) where the behavior of the deprecated
H5Gget_objinfo() call had changed and passing in a non-existing
soft link with a statbuf of NULL passed instead of failed (as
it should as per the RM). The HDF5 1.8 and 1.10 behavior was
restored and H5Gget_objinfo() will now fail and return -1 as
before.
2019-10-04 02:03:11 -07:00
David Young
b8a93a7224 Let us override the examples directory using --with-examplesdir=DIR.
This is handy for NetBSD where HDF5 examples are installed
by convention in $prefix/share/examples/hdf5/ rather than in
${prefix}/share/hdf5_examples/, which is the HDF5 default.

Place hdf5_examples/ under ${datarootdir} which on most systems will be
${prefix}/share/, anyway.
2019-10-03 16:01:40 -05:00
David Young
bbc1264ea6 Follow longstanding execv convention for compatibility with NetBSD. 2019-10-03 16:01:40 -05:00
David Young
7bb8d071c6 Under the examples directories, always find the installed HDF5
executables and scripts using @prefix@ instead of a relative
path, because the number of ../ in the relative path will be
different on NetBSD than on other systems.

Examples on NetBSD are installed at ${prefix}/share/examples/hdf5/
instead of at ${prefix}/share/hdf5_examples/, by convention.  It may be
the same on other BSDs, I'm not sure.
2019-10-03 16:01:40 -05:00
David Young
6083b740ad Make the HDF5 configure script grok NetBSD. 2019-10-03 16:01:40 -05:00
David Young
cef5db7e1f For portability, insulate the HDF5 library from some system macros. 2019-10-03 16:01:40 -05:00
David Young
7c82abc3ff Not every system has perl installed in /usr/bin/, so change the shebang
(#!) line to `/usr/bin/env perl` to locate perl on the PATH.

Everything after the first pathname in the shebang line is treated as
a single argument to the command interpreter (/usr/bin/env "perl -w"),
and there is not ordinarily any such program as "perl -w".  So if the
old shebang line used an option such as `-w`, add a `use warnings;`
statement to the script---note that the semantics change slightly.
`bin/destdep` uses a trick to pass `-p` to `/usr/bin/env perl`.  It
couldn't hurt to use the same trick to pass `-w`.

With these changes, `sh autogen.sh` runs on NetBSD.  It ought to still
work on every other system HDF5 supports, too.
2019-10-03 16:01:40 -05:00
David Young
af1e100f49 For portability, use the POSIX sh(1) string-comparison operator =
instead of `==`.
2019-10-03 16:01:40 -05:00
Dana Robinson
f2be6da714 Merge pull request #1983 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:small_develop_tweaks to develop
* commit '638d31a78a9ea5db438d30e78f8cbaa1146b7f87':
  Fixed the java assert issue with H5O cache corking calls.
2019-10-03 15:34:15 -05:00
Dana Robinson
638d31a78a Fixed the java assert issue with H5O cache corking calls. 2019-10-03 12:12:23 -07:00
Allen Byrne
35bc2d4592 Merge pull request #1980 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '4394f0776b3e695b9ab383421824e4533da821a8':
  More whitespace changes
  Whitespace cleanup
2019-10-03 12:54:48 -05:00
Allen Byrne
4394f0776b More whitespace changes 2019-10-03 12:10:24 -05:00
Allen Byrne
8e24fe2bc1 Whitespace cleanup 2019-10-03 11:41:25 -05:00
Allen Byrne
574cc772d5 Merge pull request #1973 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'bc6115931877c6f6d63977f2c03c5e2dbffe3e56':
  HDFFV-10919 merge synching
  HDFFV-10408,10918 Add note
2019-10-02 15:38:39 -05:00
Allen Byrne
bc61159318 HDFFV-10919 merge synching 2019-10-02 15:13:37 -05:00
Allen Byrne
98720d6511 HDFFV-10408,10918 Add note 2019-10-02 13:08:35 -05:00
Allen Byrne
db86b6d397 Merge pull request #1968 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '643d298823255a684862f4c6eb85ac5afde4b796':
  HDFFV-10918 add tests for h5repack ext storage
2019-10-02 12:45:29 -05:00
Allen Byrne
643d298823 HDFFV-10918 add tests for h5repack ext storage 2019-10-01 16:38:48 -05:00
Allen Byrne
f4a8792292 Merge pull request #1966 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '09e6dcbfbb50d359177c9ee72e662287eb04d9c7':
  Add new toolchain file
2019-10-01 11:48:51 -05:00
Vailin Choi
5c9c07b149 Merge pull request #1959 in HDFFV/hdf5 from ~VCHOI/my_third_fork:bugfix/iteration_error_in_test_versionbounds to develop
* commit '9ea386b6a660bd29225e96a246439db0c7f73da2':
  Fixed the iteration error in test_versionbounds() in test/dtypes.c.
2019-10-01 10:33:35 -05:00
Allen Byrne
09e6dcbfbb Add new toolchain file 2019-10-01 10:09:16 -05:00
Allen Byrne
69e31596ff Merge pull request #1963 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'bbe81a2155bfa42545579761c4f064353d6f68de':
  fix for statement declare of type
2019-09-30 15:14:02 -05:00
Allen Byrne
bbe81a2155 fix for statement declare of type 2019-09-30 14:50:18 -05:00
Jake Smith
35dc4b56d0 Merge pull request #1958 in HDFFV/hdf5 from ~JAKE.SMITH/hdf5:develop to develop
* commit 'cab37f63144fd24d1ff39359e3d47a2c16198633':
  Move function-scope macro definition to file-scope.
  Refactor external file addition loop to static function.
  fix declaring variable in for statement
2019-09-30 14:00:05 -05:00
Jacob Smith
cab37f6314 Move function-scope macro definition to file-scope. 2019-09-30 13:57:09 -05:00
Allen Byrne
d23453e329 Merge pull request #1960 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'f6d4ce609b16601f3f4733266bb413a2bd765bc1':
  Add clang toolchain
2019-09-30 13:35:29 -05:00
Vailin Choi
9ea386b6a6 Fixed the iteration error in test_versionbounds() in test/dtypes.c. 2019-09-30 12:56:49 -05:00
Allen Byrne
f6d4ce609b Add clang toolchain 2019-09-30 12:47:00 -05:00
Jacob Smith
541f50616f Refactor external file addition loop to static function. 2019-09-29 18:52:55 -05:00
Jacob Smith
59aa3afade fix declaring variable in for statement 2019-09-28 16:05:51 -05:00
Larry Knox
4de1fa88c2 Merge pull request #1957 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit '3fb711e0ff2516cba7a0cb34f2d8ca38241b06a7':
  Number of arguments requires H5Dopen2.
2019-09-28 14:33:37 -05:00
Larry Knox
3fb711e0ff Number of arguments requires H5Dopen2. 2019-09-28 13:01:30 -05:00
Dana Robinson
279a3f915b Merge pull request #1956 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop to develop
* commit 'a8a55f3c4863b500c4d0e5a2982d3e2b5a05b3cc':
  Corrected missing parallel #ifdefs.
2019-09-27 16:50:00 -05:00
Dana Robinson
a8a55f3c48 Corrected missing parallel #ifdefs. 2019-09-27 14:25:04 -07:00
Vailin Choi
a19de0ec83 Merge pull request #1934 in HDFFV/hdf5 from ~VCHOI/my_third_fork:bugfix/HDFFV-10585-investigate-slowness-of-regular to develop
* commit '7924eee0e5ee0745b784c635042b8633886fb799':
  (1) Address the feedback from the PR review (2) Add release notes
  Fix for HDFFV-10585 investigate hyperslab slowness: 1) Improve hyperslab performance when doing I/O from 1-d disjoint file dataspace to 1-d contiguous memory dataspace. 2) Move coding in H5D__chunk_io_init() that is constructing the chunk mappings to a separate routine.
2019-09-27 12:39:31 -05:00
Dana Robinson
270a363cdc Merge pull request #1955 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:missing_vol_markup to develop
* commit '4fb64c89fe52a309150ca2d5bb97eb4763e598e9':
  Converted H5O MD cache cork calls to use the VOL.
  Marked up H5Fget/set_mpi_atomicity() to use the VOL.
2019-09-27 12:34:29 -05:00
Dana Robinson
4fb64c89fe Converted H5O MD cache cork calls to use the VOL. 2019-09-26 19:13:35 -07:00
Dana Robinson
fbb0728f54 Marked up H5Fget/set_mpi_atomicity() to use the VOL. 2019-09-26 19:13:13 -07:00
Vailin Choi
7924eee0e5 (1) Address the feedback from the PR review
(2) Add release notes
2019-09-26 14:10:56 -05:00
Vailin Choi
52fef3c6d2 Merge pull request #21 in ~VCHOI/my_third_fork from develop to bugfix/HDFFV-10585-investigate-slowness-of-regular
* commit '0ea77179d507bd2c29f3b9b357a0c35d4077b29c': (39 commits)
  Fix the errors when updating the versions in the new 1.13 develop branch.
  add missing version to list
  Add new versioned filename to list
  Update N_FSINFO_VERSION_BOUNDS to H5F_LIBVER_NBOUND.
  Remove file script
  Update versioning to next major version
  Update develop branch version to 1.13.0 after creation of hdf5_1_12 branch.
  Merge Binh-Minh's changes for code improvement to chunk_info.c (PR #1942) to develop branch.
  Update to current external file population.
  Revert else-if to single line.
  Fix missing option and incorrect close
  Revert "Moved NDEBUG guards to H5EA_DEBUG in H5EA package."
  Revert "Fix for H5EA debug package when built in release mode."
  Change print calls to HD-wrapped. Minor formatting tweaks (inc. regressions and in-file style-matching).
  Refactor h5repackgentest to have more modular internals, for easier addition of new tests. Update manifest and test script for new hdf5 external-storage .h5 files.
  Remove obsolete symbol
  small syntax changes
  Renamed get/set_time() calls in the tools library to avoid name clash when building static parallel HDF5 w/ static linking to OpenMPI.
  Change unused variable to generic form
  Whitespace cleanup
  ...
2019-09-26 13:41:56 -05:00
Vailin Choi
0ea77179d5 Merge pull request #1954 in HDFFV/hdf5 from ~VCHOI/my_third_fork:bugfix/ver_bounds_114 to develop
* commit '50ba969a61f8f90212c97aa6e11674fe19fb89f4':
  Fix the errors when updating the versions in the new 1.13 develop branch.
2019-09-26 13:32:42 -05:00
Vailin Choi
50ba969a61 Fix the errors when updating the versions in the new 1.13 develop branch. 2019-09-26 12:35:11 -05:00
Allen Byrne
a38bfab696 Merge pull request #1953 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'e6b029e77e799292eb1ee074b24a224f4613a3b2':
  add missing version to list
2019-09-26 11:52:04 -05:00
Allen Byrne
e6b029e77e add missing version to list 2019-09-26 10:48:37 -05:00
Allen Byrne
7b09c325cb Merge pull request #1951 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'a08b3adecea1034cf0a20a6ff35b9980fb3d8cb8':
  Add new versioned filename to list
2019-09-26 08:59:51 -05:00
Allen Byrne
a08b3adece Add new versioned filename to list 2019-09-26 08:43:41 -05:00
Larry Knox
9c88755922 Merge pull request #1948 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit 'd931415bb96aae645832898c2f9eee0d02fe69b4':
  Update N_FSINFO_VERSION_BOUNDS to H5F_LIBVER_NBOUND.
2019-09-25 18:07:40 -05:00
Larry Knox
d931415bb9 Update N_FSINFO_VERSION_BOUNDS to H5F_LIBVER_NBOUND. 2019-09-25 17:56:39 -05:00
Larry Knox
a563949da4 Merge pull request #1947 in HDFFV/hdf5 from ~BYRN/hdf5_merge_adb:develop to develop
* commit 'd08db4f8550ee023f2303f3064308c1fa9854552':
  Remove file script
  Update versioning to next major version
2019-09-25 17:36:24 -05:00
Allen Byrne
d08db4f855 Remove file script 2019-09-25 17:35:52 -05:00
Allen Byrne
b2f52d0b07 Update versioning to next major version 2019-09-25 17:28:17 -05:00
Allen Byrne
46f81a33dd Merge pull request #1944 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit 'b04e1ad058fd98fc0b303586dd5f6f19aa645ed0':
  Update develop branch version to 1.13.0 after creation of hdf5_1_12 branch.
2019-09-25 16:23:52 -05:00
Larry Knox
b04e1ad058 Update develop branch version to 1.13.0 after creation of hdf5_1_12
branch.
2019-09-25 16:21:23 -05:00
Larry Knox
6632780f41 Merge pull request #1943 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit '2a4bc8c63e842d5e7551e6e75a9ca95c0c2d2886':
  Merge Binh-Minh's changes for code improvement to chunk_info.c (PR #1942) to develop branch.
2019-09-25 15:10:37 -05:00
Larry Knox
2a4bc8c63e Merge Binh-Minh's changes for code improvement to chunk_info.c (PR #1942)
to develop branch.
2019-09-25 14:30:54 -05:00
Jake Smith
f77d8f04fd Merge pull request #1756 in HDFFV/hdf5 from ~JAKE.SMITH/hdf5:bugfix/repack_external_storage to develop
* commit '9a388325ebaec339f67ddd210ca31ddcc3ede973':
  Update to current external file population.
  Revert else-if to single line.
  Change print calls to HD-wrapped. Minor formatting tweaks (inc. regressions and in-file style-matching).
  Refactor h5repackgentest to have more modular internals, for easier addition of new tests. Update manifest and test script for new hdf5 external-storage .h5 files.
  Refactoring.
  Add copyright/disclaimer to repack gentest. Minor formatting tweaks.
  Minor formatting adjustments.
  Undo some formatting modifications. Update MANIFEST.
  Add forgotten files to include from h5repack testfiles for tests.
  Fix failing automated reporting. Add 8-bit big-endian testfile.
  First pass at repack consolidating external storage if layout given. Checks out manually, tests still complain.
  Formatting changes, mostly.
  Add initial failing test for h5repack copying external data into new file.
  Modify code comments for clarity. Some minor reformatting.
  Some minor reformatting. Replace tabs with spaces.
  Add test that uses the family member FAPL setting.
  refactor h5repack_main.c -- remove some redundancy, formatting
  Fit help message to 80 character width and clarify some details.
2019-09-24 16:43:30 -05:00
Jacob Smith
9a388325eb Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/~jake.smith/hdf5 into bugfix/repack_external_storage 2019-09-24 16:40:02 -05:00
Allen Byrne
9c73ed788a Merge pull request #1940 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '8a2a500fef227e4f813f0059b365869268354048':
  Fix missing option and incorrect close
2019-09-24 16:12:51 -05:00
Jacob Smith
4ecc50bc13 Update to current external file population. 2019-09-24 15:29:56 -05:00
Jacob Smith
1f7d556ccd Revert else-if to single line. 2019-09-24 15:22:38 -05:00
Allen Byrne
8a2a500fef Fix missing option and incorrect close 2019-09-24 14:49:37 -05:00
Dana Robinson
6b60b95dbb Merge pull request #1939 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor_pr to develop
* commit '6eb506eff76b5455f8aac8889c6809aca2d8be52':
  Revert "Moved NDEBUG guards to H5EA_DEBUG in H5EA package."
  Revert "Fix for H5EA debug package when built in release mode."
2019-09-24 10:42:32 -05:00
Dana Robinson
6eb506eff7 Revert "Moved NDEBUG guards to H5EA_DEBUG in H5EA package."
This reverts commit 431123503d.
2019-09-24 05:20:30 -05:00
Dana Robinson
40b2eae5e9 Revert "Fix for H5EA debug package when built in release mode."
This reverts commit 911b1ca67f.
2019-09-24 05:19:44 -05:00
Jacob Smith
35a9e9c50f Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/~jake.smith/hdf5 into bugfix/repack_external_storage 2019-09-23 17:23:02 -05:00
Jacob Smith
1070468dac Change print calls to HD-wrapped.
Minor formatting tweaks (inc. regressions and in-file style-matching).
2019-09-23 16:25:25 -05:00
Jacob Smith
aa797af31b Refactor h5repackgentest to have more modular internals, for easier
addition of new tests.
Update manifest and test script for new hdf5 external-storage .h5 files.
2019-09-23 16:21:37 -05:00
Larry Knox
7997eb8c84 Merge pull request #1937 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'cf9eff93e05c9e68d82ebb1fc1e02319e428af35':
  Remove obsolete symbol
  small syntax changes
2019-09-23 12:39:01 -05:00
Allen Byrne
cf9eff93e0 Remove obsolete symbol 2019-09-20 09:30:36 -05:00
Allen Byrne
0c49a77c19 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '93e8bbd9f47d6a2eace95f2ed3b2dd4b6336940a':
  Renamed get/set_time() calls in the tools library to avoid name clash when building static parallel HDF5 w/ static linking to OpenMPI.
2019-09-19 16:57:51 -05:00
Dana Robinson
93e8bbd9f4 Merge pull request #1936 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor_pr to develop
* commit 'a6930a2bcfd37ea3610baafb608faec883286315':
  Renamed get/set_time() calls in the tools library to avoid name clash when building static parallel HDF5 w/ static linking to OpenMPI.
2019-09-19 16:42:46 -05:00
Allen Byrne
aa8c7b31d7 small syntax changes 2019-09-19 16:32:40 -05:00
Dana Robinson
a6930a2bcf Renamed get/set_time() calls in the tools library to avoid name
clash when building static parallel HDF5 w/ static linking to OpenMPI.
2019-09-19 13:50:49 -07:00
Allen Byrne
80b371f32e Merge pull request #1926 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '8cddc96f73e8f90f67792405f5142b419e9061d7':
  Change unused variable to generic form
  Whitespace cleanup
  Add missing HD prefix
  HDFFV-10740 - skip copying dirs in for loops
  Correct HDF5 options to tristate values.
  HDFFV-10905 fix test scripts for no zlib
  HDFFV-10903 - fix VFD constants in JNI
2019-09-19 14:15:54 -05:00
Allen Byrne
8cddc96f73 Change unused variable to generic form 2019-09-19 13:42:46 -05:00
Vailin Choi
c7b9d5acc6 Fix for HDFFV-10585 investigate hyperslab slowness:
1) Improve hyperslab performance when doing I/O from 1-d disjoint file dataspace
to 1-d contiguous memory dataspace.
2) Move coding in H5D__chunk_io_init() that is constructing the chunk mappings to
a separate routine.
2019-09-19 13:40:02 -05:00
Vailin Choi
e2be2824f9 Merge pull request #20 in ~VCHOI/my_third_fork from develop to bugfix/HDFFV-10585-investigate-slowness-of-regular
* commit '4d4a88a9f3775d1c6be820208a2699ae38d586b4': (29 commits)
  Fix for H5EA debug package when built in release mode.
  Moved NDEBUG guards to H5EA_DEBUG in H5EA package.
  Added MPICH_SKIP_MPICXX and OMPI_SKIP_CXX to H5public.h to avoid inadvertant linking to the deprecated MPI C++ wrappers. Fixes HDFFV-10893.
  Added a release note for HDFFV-10892 (fcntl lock bug).
  Fix segfault after H5VL_loc_params_t fix merge
  HDFFV-10901 add missing config options
  HDFFV-10854 add release note for windows
  Fix get home dir for windows
  Use variable for test output
  Allow tests to dump output if not comparing
  revert as CHECK will first check for exception
  Clear exception for getting JNI string to clear the exception
  Correct Windows check
  revert windows change
  Windows ssl headers are not in system loacation
  Add include dirs and default lib for windows
  Add policy to use <package>_ROOT
  Add statement for label if code unimplemented
  Update Windows require for CURL to CMake 3.13
  Fix unused var
  ...
2019-09-19 12:05:08 -05:00
Allen Byrne
ddf23c80fc Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '4d4a88a9f3775d1c6be820208a2699ae38d586b4':
  Fix for H5EA debug package when built in release mode.
2019-09-19 08:48:07 -05:00
Dana Robinson
4d4a88a9f3 Merge pull request #1932 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor_pr to develop
* commit '911b1ca67fdf7c2f3a32dd42c591e4e9b2fa1950':
  Fix for H5EA debug package when built in release mode.
2019-09-18 16:28:09 -05:00
Dana Robinson
911b1ca67f Fix for H5EA debug package when built in release mode. 2019-09-18 13:25:02 -07:00
Allen Byrne
6f34503a5a Whitespace cleanup 2019-09-18 12:11:12 -05:00
Allen Byrne
4775b6a3d9 Add missing HD prefix 2019-09-18 11:15:58 -05:00
Allen Byrne
624d5d9a8e HDFFV-10740 - skip copying dirs in for loops 2019-09-18 11:04:09 -05:00
Allen Byrne
671649f6f2 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '57f1a2124c65283fc48c4ca700392e1682d0e754':
  Moved NDEBUG guards to H5EA_DEBUG in H5EA package.
2019-09-18 08:46:11 -05:00
Dana Robinson
57f1a2124c Merge pull request #1930 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor_pr to develop
* commit '431123503d387bce30b1f6db7dc4ad3a33bc51bb':
  Moved NDEBUG guards to H5EA_DEBUG in H5EA package.
2019-09-17 20:17:14 -05:00
Dana Robinson
431123503d Moved NDEBUG guards to H5EA_DEBUG in H5EA package. 2019-09-17 16:53:18 -07:00
Allen Byrne
8e686c8211 Correct HDF5 options to tristate values. 2019-09-17 15:43:27 -05:00
Allen Byrne
564d710e93 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'ab52a0effa605ad6d75cb77cf708bba795cba641':
  Added MPICH_SKIP_MPICXX and OMPI_SKIP_CXX to H5public.h to avoid inadvertant linking to the deprecated MPI C++ wrappers. Fixes HDFFV-10893.
2019-09-17 14:43:36 -05:00
Allen Byrne
3790ba38a1 HDFFV-10905 fix test scripts for no zlib 2019-09-17 14:38:26 -05:00
Dana Robinson
ab52a0effa Merge pull request #1927 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor_pr to develop
* commit 'f5a84c9856888446e329dd36bff842e5a2db708c':
  Added MPICH_SKIP_MPICXX and OMPI_SKIP_CXX to H5public.h to avoid inadvertant linking to the deprecated MPI C++ wrappers. Fixes HDFFV-10893.
2019-09-17 14:07:00 -05:00
Dana Robinson
f5a84c9856 Added MPICH_SKIP_MPICXX and OMPI_SKIP_CXX to H5public.h to avoid inadvertant
linking to the deprecated MPI C++ wrappers. Fixes HDFFV-10893.
2019-09-17 10:52:16 -07:00
Allen Byrne
adce9e7f4e HDFFV-10903 - fix VFD constants in JNI 2019-09-17 10:30:04 -05:00
Allen Byrne
f2760f6117 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '046e6e8770212dc020279aba1d7a5c9aa5ec5913':
  Added a release note for HDFFV-10892 (fcntl lock bug).
  Fix segfault after H5VL_loc_params_t fix merge
2019-09-17 09:24:36 -05:00
Dana Robinson
046e6e8770 Merge pull request #1924 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor_pr to develop
* commit '387d2e671c597a51b4166667a16e740a8e1449fa':
  Added a release note for HDFFV-10892 (fcntl lock bug).
2019-09-16 18:18:02 -05:00
Jordan Henderson
1215cec501 Merge pull request #1923 in HDFFV/hdf5 from ~JHENDERSON/hdf5:develop to develop
* commit 'db1022ef5dad4ee450ca092b8b471040f405bbcf':
  Fix segfault after H5VL_loc_params_t fix merge
2019-09-16 17:39:04 -05:00
Dana Robinson
387d2e671c Added a release note for HDFFV-10892 (fcntl lock bug). 2019-09-16 15:17:31 -07:00
Jordan Henderson
db1022ef5d Fix segfault after H5VL_loc_params_t fix merge 2019-09-16 15:35:09 -05:00
Allen Byrne
70284ba85e Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'c1c522f6ce8f6d7e44e6ea99860b19228f46952a':
  Fix issue in H5Lcreate_hard and H5Olink where entire H5VL_loc_params_t structure was passed via varargs
2019-09-16 11:38:48 -05:00
Allen Byrne
c1c522f6ce Merge pull request #1922 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'b477f9bcc7bb83d7c06e1d09f428030f51d71897':
  HDFFV-10901 add missing config options
2019-09-16 11:38:30 -05:00
Jordan Henderson
72e8387bc9 Merge pull request #1887 in HDFFV/hdf5 from ~JHENDERSON/hdf5:develop to develop
* commit '0de0965c61823186ac61c0d6876d4d77578e5bcc':
  Fix issue in H5Lcreate_hard and H5Olink where entire H5VL_loc_params_t structure was passed via varargs
2019-09-16 11:34:00 -05:00
Allen Byrne
b477f9bcc7 HDFFV-10901 add missing config options 2019-09-13 11:34:00 -05:00
Allen Byrne
cafab483ff Merge pull request #1920 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '05f49d5ffdbd4cf9e967d60a3a0efd0ca7f2c820': (22 commits)
  HDFFV-10854 add release note for windows
  Fix get home dir for windows
  Use variable for test output
  Allow tests to dump output if not comparing
  revert as CHECK will first check for exception
  Clear exception for getting JNI string to clear the exception
  Correct Windows check
  revert windows change
  Windows ssl headers are not in system loacation
  Add include dirs and default lib for windows
  Add policy to use <package>_ROOT
  Add statement for label if code unimplemented
  Update Windows require for CURL to CMake 3.13
  Fix unused var
  Add updated find module for earlier CMake versions
  Correct label and var names
  Add back missing java implementation
  use h5test.h
  add test library
  special windows override
  ...
2019-09-13 11:33:00 -05:00
Allen Byrne
05f49d5ffd HDFFV-10854 add release note for windows 2019-09-12 15:13:42 -05:00
Allen Byrne
50287cb9d2 Fix get home dir for windows 2019-09-12 14:22:43 -05:00
Allen Byrne
e37b474374 Use variable for test output 2019-09-11 14:09:25 -05:00
Allen Byrne
24f863dfba Allow tests to dump output if not comparing 2019-09-11 12:51:31 -05:00
Allen Byrne
e20331651e revert as CHECK will first check for exception 2019-09-10 14:19:29 -05:00
Allen Byrne
afb07f9b39 Clear exception for getting JNI string to clear the exception 2019-09-10 13:47:24 -05:00
Vailin Choi
cf0fb665ac Merge pull request #19 in ~VCHOI/my_third_fork from develop to bugfix/HDFFV-10585-investigate-slowness-of-regular
* commit '2456a36f46a15ca44840cb64c7aac213f0ca8bf8': (53 commits)
  Fixed some exit calls.
  Reworked the previously refactorred code.
  Improvement of test code
  Fix CMake build of test needing compression libs
  Fixed error code and error messages Tested on Jelly (very minor)
  Changed H5VL_NATIVE_DATASET_GET_CHUNK_INFO_BY_COOR to H5VL_NATIVE_DATASET_GET_CHUNK_INFO_BY_COORD per a review comment.
  Add comment to add tests later to verify conflicting values for MPI-specific properties on multiple opens.
  Updated comments
  Updated based on reviews and refactored test code
  Move ext_path field in H5F_t to H5F_shared_t. Remove unused routine H5F_set_coll_md_read().
  Move coll_md_read and coll_md_write fields in H5F_t to H5F_shared_t.
  Fix namespace usage
  Fix EXISTS test syntax
  Update settings
  Add 32-bit cross-compile toolchain
  Code cleanup and refactor
  Re-ordered items w.r.t. date.
  Whitespace and HD prefix changes
  Fixed typo
  Added notes about HDFFV-10677 and HDFFV-10661
  ...
2019-09-10 13:27:01 -05:00
Dana Robinson
2456a36f46 Merge pull request #1919 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor_pr to develop
* commit '78fda912952d977ec6b157d344834112c363dd26':
  Fixed some exit calls.
2019-09-10 11:54:38 -05:00
Dana Robinson
78fda91295 Fixed some exit calls. 2019-09-06 18:06:26 -07:00
Allen Byrne
6eb6e0db8d Correct Windows check 2019-09-06 15:24:52 -05:00
Allen Byrne
0d964c2f88 revert windows change 2019-09-06 11:01:25 -05:00
Allen Byrne
acdeee8c6a Windows ssl headers are not in system loacation 2019-09-06 10:17:40 -05:00
Allen Byrne
7b2b2a73a1 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '5b9f3660d7419fde023e3f277fb8f7d742fa255e':
  Reworked the previously refactorred code.
  Improvement of test code
2019-09-06 09:36:05 -05:00
Allen Byrne
677f8e6f31 Add include dirs and default lib for windows 2019-09-05 17:25:27 -05:00
Allen Byrne
bad125a071 Add policy to use <package>_ROOT 2019-09-05 16:54:24 -05:00
Allen Byrne
3e816bd089 Add statement for label if code unimplemented 2019-09-05 15:49:57 -05:00
Binh-Minh Ribler
5b9f3660d7 Merge pull request #1918 in HDFFV/hdf5 from ~BMRIBLER/hdf5-bmr:develop to develop
Revised tests.

* commit '716125887d3954239d280890b4cbb13288f5eeaa':
  Reworked the previously refactorred code.
  Improvement of test code
2019-09-05 15:47:37 -05:00
Allen Byrne
9857dc553f Update Windows require for CURL to CMake 3.13 2019-09-05 15:41:07 -05:00
Allen Byrne
60cc470a35 Fix unused var 2019-09-05 15:21:02 -05:00
Allen Byrne
ff4cb06d42 Add updated find module for earlier CMake versions 2019-09-05 14:58:07 -05:00
Allen Byrne
3467de59f8 Correct label and var names 2019-09-05 14:57:35 -05:00
Allen Byrne
dcab85c83b Add back missing java implementation 2019-09-05 14:35:33 -05:00
Binh-Minh Ribler
716125887d Reworked the previously refactorred code.
Platforms tested:
    Linux/64 (jelly)
    Linux/64 (platypus)
    Darwin (osx1011test)
2019-09-05 14:14:19 -05:00
Allen Byrne
e3e9cf04b0 use h5test.h 2019-09-05 11:44:32 -05:00
Allen Byrne
d5de03225f add test library 2019-09-05 11:43:00 -05:00
Allen Byrne
a88f98ae82 special windows override 2019-09-05 09:50:42 -05:00
Allen Byrne
1ca7384532 Correct name and add mingw to 32bit toolchain 2019-09-05 09:45:25 -05:00
Allen Byrne
f651cb4747 Fix build for tools library test 2019-09-05 09:35:54 -05:00
Binh-Minh Ribler
339bf241be Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/~bmribler/hdf5-bmr into develop 2019-09-04 02:09:35 -05:00
Binh-Minh Ribler
714804b280 Improvement of test code
Description:
    Fixed tests to handle the case when a requested compression filter
    is not available.
Platform tested
    Linux/64 (jelly)
    Darwin (osx1011test)
2019-09-04 02:03:32 -05:00
Allen Byrne
b1dab421de Merge pull request #1917 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '781843da4b90d6d22f8a27b6abaad441631ab3d1':
  Fix CMake build of test needing compression libs
2019-09-03 12:59:05 -05:00
Allen Byrne
781843da4b Fix CMake build of test needing compression libs 2019-09-03 12:07:29 -05:00
Binh-Minh Ribler
a8af828bbf Merge pull request #1908 in HDFFV/hdf5 from ~BMRIBLER/hdf5-bmr:develop to develop
- Added new chunk query functions: H5Dget_num_chunks(), H5Dget_chunk_info(), and H5Dget_chunk_info_by_coord()
- Fixed iterator issue in H5EA_iterate(), H5FA_iterate(), and H5D__none_idx_iterate()

* commit '96dab622e3bbe75d85b0cef3ca2bd5288cf4ac32':
  Fixed error code and error messages Tested on Jelly (very minor)
  Changed H5VL_NATIVE_DATASET_GET_CHUNK_INFO_BY_COOR to H5VL_NATIVE_DATASET_GET_CHUNK_INFO_BY_COORD per a review comment.
  Updated comments
  Updated based on reviews and refactored test code
  Code cleanup and refactor
  Re-ordered items w.r.t. date.
  Fixed typo
  Added notes about HDFFV-10677 and HDFFV-10661
  HDFFV-10677 and HDFFV-10661
2019-09-03 11:08:42 -05:00
Binh-Minh Ribler
96dab622e3 Fixed error code and error messages
Tested on Jelly (very minor)
2019-09-03 11:00:29 -05:00
Binh-Minh Ribler
daecf8f06d Changed H5VL_NATIVE_DATASET_GET_CHUNK_INFO_BY_COOR to
H5VL_NATIVE_DATASET_GET_CHUNK_INFO_BY_COORD per a review comment.
2019-09-03 08:03:28 -05:00
Vailin Choi
ec90f31106 Merge pull request #1914 in HDFFV/hdf5 from ~VCHOI/my_third_fork:bugfix/shared_file_pointer to develop
* commit '62750441cdfbf17f7fa5db3bbf1320c1dc5be838':
  Add comment to add tests later to verify conflicting values for MPI-specific properties on multiple opens.
  Move ext_path field in H5F_t to H5F_shared_t. Remove unused routine H5F_set_coll_md_read().
  Move coll_md_read and coll_md_write fields in H5F_t to H5F_shared_t.
2019-09-02 21:27:19 -05:00
Vailin Choi
62750441cd Add comment to add tests later to verify conflicting values for MPI-specific properties on multiple opens. 2019-09-02 12:59:48 -05:00
Binh-Minh Ribler
bde9257f02 Updated comments 2019-09-01 01:25:59 -05:00
Binh-Minh Ribler
b679d11bcc Updated based on reviews and refactored test code 2019-09-01 01:13:08 -05:00
Vailin Choi
eef0cf2694 Move ext_path field in H5F_t to H5F_shared_t.
Remove unused routine H5F_set_coll_md_read().
2019-08-31 01:24:38 -05:00
Vailin Choi
fe3c4567f5 Move coll_md_read and coll_md_write fields in H5F_t to H5F_shared_t. 2019-08-30 23:06:04 -05:00
Allen Byrne
373df11c46 Merge pull request #1911 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'e6c11af8704c3ac923dd6afcefaf20c568157770':
  Fix namespace usage
  Fix EXISTS test syntax
  Update settings
  Add 32-bit cross-compile toolchain
2019-08-30 09:25:16 -05:00
Allen Byrne
e6c11af870 Fix namespace usage 2019-08-29 16:22:21 -05:00
Allen Byrne
0b6f5e88cd Fix EXISTS test syntax 2019-08-29 14:43:35 -05:00
Allen Byrne
ed4cbbcc9b Update settings 2019-08-29 13:18:35 -05:00
Allen Byrne
fa540a3af8 Add 32-bit cross-compile toolchain 2019-08-29 10:36:12 -05:00
Binh-Minh Ribler
a633e33334 Code cleanup and refactor 2019-08-29 00:53:40 -05:00
Binh-Minh Ribler
3adadb92e2 Re-ordered items w.r.t. date. 2019-08-28 18:06:51 -05:00
Allen Byrne
37532a3688 Merge pull request #1904 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '1efd23ff02b9bc1a3d303d53395245d1366588be':
  Whitespace and HD prefix changes
  fix get gethostname for windows
  OESS-29 Fix HD prefix in perform and enable test compile
  HDFFV-10876 h5dump OPAQUE size should be optional
2019-08-28 15:18:02 -05:00
Allen Byrne
1efd23ff02 Whitespace and HD prefix changes 2019-08-28 11:11:32 -05:00
Binh-Minh Ribler
8cc3c58f9d Fixed typo 2019-08-28 10:36:40 -05:00
Binh-Minh Ribler
6858ee6495 Added notes about HDFFV-10677 and HDFFV-10661 2019-08-28 10:33:31 -05:00
Allen Byrne
43ff3fdc33 fix get gethostname for windows 2019-08-28 10:19:03 -05:00
Binh-Minh Ribler
7857a59bf0 Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/~bmribler/hdf5-bmr into develop 2019-08-28 10:14:10 -05:00
Binh-Minh Ribler
e06bf9d263 HDFFV-10677 and HDFFV-10661
Description:
    - Added functions to query chunk information:
        H5Dget_num_chunks(dset_id, fspace_id, *nchunks)
            Gets the number of written chunks that intersect with the given
            dataspace.  However, in this version, the intersection is not
            yet completed.  Thus, the number of all written chunks will be
            returned.
        H5Dget_chunk_info_by_coord(dset_id, *offset, *filter_mask, *addr, *size)
            Given a chunk's logical coordinates, returns the chunk's filter,
            address, and size.
        H5Dget_chunk_info(dset_id, fspace_id, index, *offset, *filter_mask, *addr, *size)
            Given a chunk's index, returns the chunk's logical coordinates, filter,
            address, and size.  The chunk belongs to a set of chunks that have
            nonempty intersection with the specified dataspace.  However, in
            this version, the intersection is not yet completed, and the index
            is of all the written chunks.
        These functions comply with VOL.

    - Fixed some oversights found in the library for the tests in chunk_info.c
      to work correctly.  The returned value from a callback function was not
      checked in H5EA_iterate(), H5FA_iterate(), and H5D__none_idx_iterate().
      This oversight caused a callback function to continue iterating even though
      it's supposed to stop.
Platforms tested:
    Linux/64 (jelly)
    Linux/64 (platypus)
    Darwin (osx1011test)
2019-08-28 10:08:12 -05:00
Allen Byrne
a6df73c723 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'fb8296371cf45654a9252ed01b635519205da3de':
  Minor tweaks to new H5P MPI code based on code review feedback.
  Fixed a bug in the cache image code that was introduced by the HD changes.
  Added H5Pset/get_mpi_params calls and unified them with the MPI-I/O VFD info in H5FDmpio.c.
2019-08-27 16:56:20 -05:00
Allen Byrne
09d13b3c13 OESS-29 Fix HD prefix in perform and enable test compile 2019-08-27 16:49:10 -05:00
Dana Robinson
fb8296371c Merge pull request #1896 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:H5Pset_fapl_mpi to develop
* commit '937616872cf228f838fd1eb2853ce6110f3da10b':
  Minor tweaks to new H5P MPI code based on code review feedback.
  Fixed a bug in the cache image code that was introduced by the HD changes.
  Added H5Pset/get_mpi_params calls and unified them with the MPI-I/O VFD info in H5FDmpio.c.
2019-08-27 16:17:50 -05:00
Dana Robinson
937616872c Minor tweaks to new H5P MPI code based on code review feedback. 2019-08-27 14:00:49 -07:00
Dana Robinson
477bd6cd77 Merge branch 'develop_minor_pr' into H5Pset_fapl_mpi 2019-08-27 13:28:55 -07:00
Dana Robinson
7dfe176924 Fixed a bug in the cache image code that was introduced by the HD
changes.
2019-08-27 13:26:22 -07:00
Allen Byrne
369d17c05c HDFFV-10876 h5dump OPAQUE size should be optional 2019-08-27 15:10:37 -05:00
Dana Robinson
1b95221105 Merge pull request #1903 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor_pr to develop
* commit '9a4f86997ad160bcc8a3f9eefdbd92d4a63e14c6':
  Fixed typo from HD changes
2019-08-27 14:26:34 -05:00
Dana Robinson
9a4f86997a Fixed typo from HD changes 2019-08-27 12:20:12 -07:00
Dana Robinson
89928e7c21 Merge branch 'develop' into H5Pset_fapl_mpi 2019-08-27 12:19:03 -07:00
Dana Robinson
91a34039ba Merge pull request #1902 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:fcntl_lock_bug to develop
* commit 'd42de626b604b75963fd593a145fd9c9b9e20602':
  Fixed a bug where we incorrectly pass a lock struct to fcntl for file locking instead of a pointer.
2019-08-27 14:10:30 -05:00
Allen Byrne
506a5069a8 Merge pull request #1899 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '392340062b7c130a02368aee79bc34ba9868038a':
  Add HD prefix
2019-08-27 10:26:38 -05:00
Allen Byrne
392340062b Add HD prefix 2019-08-27 09:21:08 -05:00
Dana Robinson
d42de626b6 Fixed a bug where we incorrectly pass a lock struct to fcntl
for file locking instead of a pointer.
2019-08-27 07:03:51 -07:00
Allen Byrne
9689c6cf0a Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'ddf04a9a727252f40197c48da541212dff646046':
  Add a 'closing' flag on the shared file struct, and switch several of the "internal" data structures to use it.
  Fixed the assertion failure for HDFFV-10873.
2019-08-27 08:43:19 -05:00
Allen Byrne
ddf04a9a72 Merge pull request #1893 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'ba974c031deb709b6d4241da95485b48d747afdd':
  OESS-29 Update HD prefix mostly
2019-08-27 08:43:03 -05:00
Dana Robinson
68cd4eea0e Merge branch 'develop' into H5Pset_fapl_mpi 2019-08-27 02:42:18 -07:00
Quincey Koziol
6e8c48182f Merge pull request #1897 in HDFFV/hdf5 from ~KOZIOL/hdf5:refactor_file to develop
* commit '3090ac81506094ee510ae89c31749b5c1632aa34':
  Add a 'closing' flag on the shared file struct, and switch several of the "internal" data structures to use it.
2019-08-26 17:25:17 -05:00
Quincey Koziol
3090ac8150 Add a 'closing' flag on the shared file struct, and switch several of the
"internal" data structures to use it.
2019-08-26 14:38:58 -05:00
Dana Robinson
3bcbce5538 Added H5Pset/get_mpi_params calls and unified them with the MPI-I/O
VFD info in H5FDmpio.c.
2019-08-26 10:26:31 -07:00
Vailin Choi
a367340a17 Merge pull request #1892 in HDFFV/hdf5 from ~VCHOI/my_third_fork:bugfix/HDFFV-10873-assertion-v-oh--nmesgs-failed to develop
* commit '021919206df7764f951037ae76ccae006b2eea99':
  Fixed the assertion failure for HDFFV-10873.
2019-08-26 12:02:31 -05:00
Allen Byrne
ba974c031d OESS-29 Update HD prefix mostly 2019-08-24 14:07:33 -05:00
Vailin Choi
021919206d Fixed the assertion failure for HDFFV-10873. 2019-08-23 15:06:19 -05:00
Quincey Koziol
884ad149e2 Merge pull request #1889 in HDFFV/hdf5 from ~KOZIOL/hdf5:shared_file_ptr to develop
* commit 'f42c7cc0d85cc5b232afd621711fdbd64f6e19d9':
  Fix major error codes
  Switch shared file struct name from 'H5F_file_t' to 'H5F_shared_t', to match naming convention for shared structs in rest of library data structures.
  Small tidy up.
  Progress toward movig H5MF* API to use shared file pointers instead of top file pointers.
  Progress on moving the H5MF* interface to using shared file pointers instead of top file pointers.
  Begin converting the H5MF interface to use shared file pointers instead of top file pointers.
  Progress toward moving the dataset routines to using the 'shared' file pointer instead of the 'top' file pointer.
  Begin converting dataset code to use shared file pointer instead of top file pointer.
  Finish converting H5PB_* routines to use shared file pointer, instead of top file pointer.
  First pass of converting H5PB_* routines to use shared file pointers.
  Rest of changes for 'top' file pointer to 'shared' file pointer for H5F__accum routines.
  Partial H5F__accum_* routines.
2019-08-23 10:21:08 -05:00
Quincey Koziol
f42c7cc0d8 Fix major error codes 2019-08-22 17:06:00 -05:00
Quincey Koziol
c36d2eeae7 Switch shared file struct name from 'H5F_file_t' to 'H5F_shared_t', to match
naming convention for shared structs in rest of library data structures.
2019-08-22 13:28:20 -05:00
Quincey Koziol
5d6f27b32b Merge branch 'develop' into shared_file_ptr 2019-08-21 15:36:17 -05:00
Quincey Koziol
0b85fa6004 Small tidy up. 2019-08-21 15:34:43 -05:00
Jordan Henderson
0de0965c61 Fix issue in H5Lcreate_hard and H5Olink where entire H5VL_loc_params_t structure was passed via varargs 2019-08-21 11:56:50 -05:00
Quincey Koziol
d3545afbc5 Progress toward movig H5MF* API to use shared file pointers instead of top
file pointers.
2019-08-20 21:55:16 -05:00
Quincey Koziol
901c42640f Progress on moving the H5MF* interface to using shared file pointers instead of
top file pointers.
2019-08-20 21:32:13 -05:00
Quincey Koziol
53eaeff26a Begin converting the H5MF interface to use shared file pointers instead
of top file pointers.
2019-08-20 21:07:13 -05:00
Quincey Koziol
2ef7eb51b9 Progress toward moving the dataset routines to using the 'shared' file pointer
instead of the 'top' file pointer.
2019-08-20 20:38:10 -05:00
Dana Robinson
f0272e4945 Merge pull request #1886 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor_pr to develop
* commit 'e747237a9c03e551eef017cf4a0de5d67ca4fd71':
  Removed unnecessary H5S_FRIEND and dead code.
2019-08-20 19:55:41 -05:00
Quincey Koziol
67d7d28c03 Begin converting dataset code to use shared file pointer instead of top file
pointer.
2019-08-20 18:21:53 -05:00
Quincey Koziol
25f982abbd Finish converting H5PB_* routines to use shared file pointer, instead of top
file pointer.
2019-08-20 17:26:10 -05:00
Dana Robinson
e747237a9c Removed unnecessary H5S_FRIEND and dead code. 2019-08-20 13:16:20 -07:00
Dana Robinson
c5ba214097 Merge pull request #1884 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:new_vfd_build_cleanup to develop
* commit '3ee329cb463538cceffef722101fb28e37fbddcb':
  Untangle #ifdef mess in ROS3 code.
2019-08-20 11:22:29 -05:00
Dana Robinson
3ee329cb46 Merge branch 'develop' into new_vfd_build_cleanup 2019-08-19 18:16:30 -07:00
Dana Robinson
8c40dab59e Untangle #ifdef mess in ROS3 code. 2019-08-19 18:02:47 -07:00
Quincey Koziol
f285c76ef2 First pass of converting H5PB_* routines to use shared file pointers. 2019-08-19 18:48:06 -05:00
Quincey Koziol
df36318b5f Rest of changes for 'top' file pointer to 'shared' file pointer for H5F__accum
routines.
2019-08-19 18:00:05 -05:00
Quincey Koziol
85a56a9c4f Partial H5F__accum_* routines. 2019-08-19 17:47:28 -05:00
Larry Knox
a63c20cdd0 Merge pull request #1883 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit '92f103cfd4b19b61a0ddf6e62e1692d2b3eeb4d9':
  Add H5_DLL to all s3comms function prototypes to stop Windows unresolved external symbols errors.  HDFFV-10889.
2019-08-19 16:05:18 -05:00
Allen Byrne
8b6f3bc7e6 Merge pull request #1882 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '935f27c1b803faf981131ff936619aecd9f76e38':
  HDFFV-10887 Implement requested functions
2019-08-19 12:46:56 -05:00
Larry Knox
92f103cfd4 Add H5_DLL to all s3comms function prototypes to stop Windows unresolved
external symbols errors.  HDFFV-10889.
2019-08-19 12:03:44 -05:00
Allen Byrne
935f27c1b8 HDFFV-10887 Implement requested functions 2019-08-19 11:58:52 -05:00
Allen Byrne
06e5cbd541 Merge pull request #1880 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '9081fb266cc15198e0c75a77f23f2b252c6ee79f':
  Add missing HD prefix
  This test cannot use HD prefix macro with printf of fprintf
  Update HD prefix and reconcile hl/cpp test
  Add HD prefix to tests
2019-08-19 09:04:05 -05:00
Vailin Choi
798c580fc3 Merge pull request #18 in ~VCHOI/my_third_fork from develop to bugfix/HDFFV-10585-investigate-slowness-of-regular
* commit 'dcf084aff42d3abafaa82b356493a2d1585afb85': (25 commits)
  Changes based on PR feedback.
  Correct name of folder
  Mostly whitespace in testpar, addl changes for tmp dir
  Whitespace cleanup
  Added public H5Sselect_adjust_u and H5Shyper_adjust_s calls.
  Some refactoring prior to implementing new H5P MPI functions. * Macro cleanup and obvious warning fixes in parallel code. * Moved H5FD comm and info dup/free wrapper code to a new H5mpi.c file   and separated it to deal with each MPI type separately.
  Fix compiler warnings with diabled ROS3 and HDFS VFDs. Fix misuse of [HD]strncpy and [HD]snprintf. Minor formatting changes. Fix test cleanup issue with java groups example.
  Changed the directory name left out from the previous commit.
  Changed the name of the temporary directory from 'tmp' to a special name to avoid possible conflicts.
  Fix H5F_get_file_id and H5F__get_file_id to take app_ref parameter
  HDFFV-10879 fix test varname
  Fix for HDFFV-10813 H5Fset_metadata_read_retry_info() test fails on jelly with PGI/19.
  Added map API build status to libhdf5.settings.
  Updated h5trav.c to emit output that doesn't require ddl changes for map support.
  HDFFV-10879 set default API version
  Fixed Map API CMake option
  Renamed H5Mdelete_key to H5Mdelete and H5Mset to H5Mput.
  Remove old code
  Correct error test spelling and use
  Added ifdef for intel compilers, __GNUC__ has to be defined for header files which use it to work with intel compilers. This gives a warning for intel compiler about fallthrough, so added a check not to include fallthrough if using intel compilers.
  ...
2019-08-18 21:36:06 -05:00
Allen Byrne
9081fb266c Add missing HD prefix 2019-08-18 11:33:45 -05:00
Allen Byrne
2bce24576e This test cannot use HD prefix macro with printf of fprintf 2019-08-17 13:33:41 -05:00
Allen Byrne
228ef0684e Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'dcf084aff42d3abafaa82b356493a2d1585afb85':
  Changes based on PR feedback.
  Fix for HDFFV-10813 H5Fset_metadata_read_retry_info() test fails on jelly with PGI/19.
2019-08-17 13:25:26 -05:00
Allen Byrne
96bf97f534 Update HD prefix and reconcile hl/cpp test 2019-08-16 13:23:29 -05:00
Vailin Choi
dcf084aff4 Merge pull request #1865 in HDFFV/hdf5 from ~VCHOI/my_third_fork:bugfix/HDFFV-10813-swmr-test-fails-on-jelly-with to develop
* commit '538f743c145fbbfa7b1119693efd2ff61b34efae':
  Changes based on PR feedback.
  Fix for HDFFV-10813 H5Fset_metadata_read_retry_info() test fails on jelly with PGI/19.
2019-08-16 11:52:42 -05:00
Vailin Choi
538f743c14 Changes based on PR feedback. 2019-08-15 17:51:15 -05:00
Allen Byrne
64e6665b54 Add HD prefix to tests 2019-08-15 16:46:15 -05:00
Vailin Choi
8d7ff1048b Merge pull request #17 in ~VCHOI/my_third_fork from develop to bugfix/HDFFV-10813-swmr-test-fails-on-jelly-with
* commit '3a504899eef1a66031c6f52623c24bb4e51ca51e':
  Correct name of folder
  Mostly whitespace in testpar, addl changes for tmp dir
  Whitespace cleanup
  Added public H5Sselect_adjust_u and H5Shyper_adjust_s calls.
  Some refactoring prior to implementing new H5P MPI functions. * Macro cleanup and obvious warning fixes in parallel code. * Moved H5FD comm and info dup/free wrapper code to a new H5mpi.c file   and separated it to deal with each MPI type separately.
  Fix compiler warnings with diabled ROS3 and HDFS VFDs. Fix misuse of [HD]strncpy and [HD]snprintf. Minor formatting changes. Fix test cleanup issue with java groups example.
  Changed the directory name left out from the previous commit.
  Changed the name of the temporary directory from 'tmp' to a special name to avoid possible conflicts.
  Fix H5F_get_file_id and H5F__get_file_id to take app_ref parameter
  HDFFV-10879 fix test varname
2019-08-15 16:34:01 -05:00
Allen Byrne
3a504899ee Merge pull request #1875 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '8ef09e5ce9f191c2a7af301f1aec9254f4458a50':
  Correct name of folder
  Mostly whitespace in testpar, addl changes for tmp dir
  Whitespace cleanup
2019-08-15 12:08:16 -05:00
Allen Byrne
8ef09e5ce9 Correct name of folder 2019-08-15 11:07:24 -05:00
Allen Byrne
98c8c6e45b Mostly whitespace in testpar, addl changes for tmp dir 2019-08-15 10:28:40 -05:00
Allen Byrne
f5a250e77c Whitespace cleanup 2019-08-15 09:03:03 -05:00
Dana Robinson
6b8d369a0c Merge pull request #1873 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:H5Pset_fapl_mpi to develop
* commit 'bd8da502cf5b763433e3c628a4043a4264529cec':
  Some refactoring prior to implementing new H5P MPI functions. * Macro cleanup and obvious warning fixes in parallel code. * Moved H5FD comm and info dup/free wrapper code to a new H5mpi.c file   and separated it to deal with each MPI type separately.
2019-08-14 19:34:56 -05:00
Dana Robinson
300372ce33 Merge pull request #1874 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:h5s_api_for_daos to develop
* commit 'c490fefbc3199d45fa4d3af09dd567671a244e8d':
  Added public H5Sselect_adjust_u and H5Shyper_adjust_s calls.
2019-08-14 19:33:19 -05:00
Jerome Soumagne
2348341198 Merge pull request #1869 in HDFFV/hdf5 from ~JSOUMAGNE/hdf5:topic_file_get_id to develop
* commit '7f5a5020c8ec882e6b7eceab878470003e2a8b63':
  Fix H5F_get_file_id and H5F__get_file_id to take app_ref parameter
2019-08-14 19:15:17 -05:00
Dana Robinson
c490fefbc3 Added public H5Sselect_adjust_u and H5Shyper_adjust_s calls. 2019-08-14 17:09:11 -07:00
Dana Robinson
bd8da502cf Some refactoring prior to implementing new H5P MPI functions.
* Macro cleanup and obvious warning fixes in parallel code.
* Moved H5FD comm and info dup/free wrapper code to a new H5mpi.c file
  and separated it to deal with each MPI type separately.
2019-08-14 16:22:06 -07:00
Jake Smith
396edbe6bf Merge pull request #1872 in HDFFV/hdf5 from ~JAKE.SMITH/hdf5:bugfix/ros3_hdfs_warns_squashed to develop
* commit '2e5cd3d2b2d953420252c80ab5e32ac95ac0c5b3':
  Fix compiler warnings with diabled ROS3 and HDFS VFDs. Fix misuse of [HD]strncpy and [HD]snprintf. Minor formatting changes. Fix test cleanup issue with java groups example.
2019-08-14 15:54:10 -05:00
Ray Lu
47e3d99f65 Merge pull request #1871 in HDFFV/hdf5 from ~SONGYULU/hdf5_ray:bugfix/directory_name_develop to develop
* commit '0b868668bac0d268120844adb9ad216a9a8e1395':
  Changed the directory name left out from the previous commit.
  Changed the name of the temporary directory from 'tmp' to a special name to avoid possible conflicts.
2019-08-14 15:49:57 -05:00
Jacob Smith
2e5cd3d2b2 Fix compiler warnings with diabled ROS3 and HDFS VFDs.
Fix misuse of [HD]strncpy and [HD]snprintf.
Minor formatting changes.
Fix test cleanup issue with java groups example.
2019-08-14 15:36:45 -05:00
Allen Byrne
05edbabbb5 Merge pull request #1866 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '2102be3259c14a1e4d94e8526894a16fd389f59d':
  HDFFV-10879 fix test varname
2019-08-14 15:29:41 -05:00
Songyu Lu
0b868668ba Changed the directory name left out from the previous commit. 2019-08-14 15:22:06 -05:00
Songyu Lu
b234263bbf Changed the name of the temporary directory from 'tmp' to a special name to avoid possible conflicts. 2019-08-14 15:08:46 -05:00
Jerome Soumagne
7f5a5020c8 Fix H5F_get_file_id and H5F__get_file_id to take app_ref parameter
Fix app_ref_count from being incremented when private routines are used
2019-08-14 14:46:39 -05:00
Allen Byrne
2102be3259 HDFFV-10879 fix test varname 2019-08-14 13:50:25 -05:00
Vailin Choi
10bea9ac46 Fix for HDFFV-10813 H5Fset_metadata_read_retry_info() test fails on jelly with PGI/19. 2019-08-14 12:43:18 -05:00
Vailin Choi
674a945cc7 Merge pull request #16 in ~VCHOI/my_third_fork from develop to bugfix/HDFFV-10813-swmr-test-fails-on-jelly-with
* commit '2b72832d97496290f74ccaffcda41c3e596f8f49':
  Added map API build status to libhdf5.settings.
2019-08-14 11:25:16 -05:00
Dana Robinson
2b72832d97 Merge pull request #1863 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:map_api_merge to develop
* commit '7555bc95d91aa99344cdc3a66d47eb44decad4ac':
  Added map API build status to libhdf5.settings.
2019-08-14 09:35:55 -05:00
Dana Robinson
7555bc95d9 Added map API build status to libhdf5.settings. 2019-08-13 23:07:48 -07:00
Allen Byrne
a5d37a2419 Merge pull request #1862 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'e42120c308b619e58f412e167f4449fd003f8ca9':
  HDFFV-10879 set default API version
  Remove old code
  Correct error test spelling and use
2019-08-13 13:27:35 -05:00
Allen Byrne
e42120c308 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'aeb145428f5e6bc51742fff031b0cf8cf6fbefbb':
  Updated h5trav.c to emit output that doesn't require ddl changes for map support.
  Fixed Map API CMake option
  Renamed H5Mdelete_key to H5Mdelete and H5Mset to H5Mput.
  Added ifdef for intel compilers, __GNUC__ has to be defined for header files which use it to work with intel compilers. This gives a warning for intel compiler about fallthrough, so added a check not to include fallthrough if using intel compilers.
  Added the map (H5M) API
2019-08-13 13:15:55 -05:00
Dana Robinson
aeb145428f Merge pull request #1860 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:map_api_merge to develop
* commit 'd95745235a468b17f697843adb3d0e54bd919893':
  Updated h5trav.c to emit output that doesn't require ddl changes for map support.
  Fixed Map API CMake option
  Renamed H5Mdelete_key to H5Mdelete and H5Mset to H5Mput.
  Added the map (H5M) API
2019-08-13 12:57:19 -05:00
Dana Robinson
d95745235a Updated h5trav.c to emit output that doesn't require ddl changes for map
support.
2019-08-13 10:55:34 -07:00
Allen Byrne
7b8ffecc20 HDFFV-10879 set default API version 2019-08-13 11:04:13 -05:00
Dana Robinson
dd2133f56e Fixed Map API CMake option 2019-08-13 08:53:09 -07:00
Dana Robinson
5024051e35 Renamed H5Mdelete_key to H5Mdelete and H5Mset to H5Mput. 2019-08-13 08:46:56 -07:00
Scot Breitenfeld
60b62b10f1 Merge pull request #1861 in HDFFV/hdf5 from ~BRTNFLD/hdf5_msb:develop to develop
* commit 'df7ce9a5c933315af34dd402cfb2ca394003b56b':
  Added ifdef for intel compilers, __GNUC__ has to be defined for header files which use it to work with intel compilers. This gives a warning for intel compiler about fallthrough, so added a check not to include fallthrough if using intel compilers.
2019-08-13 10:36:55 -05:00
Allen Byrne
ac4f82fcd4 Remove old code 2019-08-13 10:26:43 -05:00
Allen Byrne
a7281b117c Correct error test spelling and use 2019-08-13 10:25:05 -05:00
M. Scot Breitenfeld
df7ce9a5c9 Added ifdef for intel compilers, __GNUC__ has to be defined for header files which use it to work with intel compilers. This gives a warning for intel compiler about fallthrough, so added a check not to include fallthrough if using intel compilers. 2019-08-13 10:10:23 -05:00
Dana Robinson
5b6bd7c922 Added the map (H5M) API 2019-08-13 01:36:42 -07:00
Allen Byrne
e874070dbb Merge pull request #1856 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'c476f020769d8f78581ef399c59e3d4e6e202b2f':
  HDFFV-10879 fix reference file
  HDFFV-10879 correct API version set command
2019-08-12 15:58:48 -05:00
Allen Byrne
c476f02076 HDFFV-10879 fix reference file 2019-08-12 15:38:15 -05:00
Allen Byrne
b28636464e HDFFV-10879 correct API version set command 2019-08-12 15:19:11 -05:00
Allen Byrne
3af5cce895 Merge pull request #1853 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'd172582ca9573d685a4c3a9a6399113014da4b21':
  Use a STRING option for API version
  Fix API version option
2019-08-12 14:20:01 -05:00
Allen Byrne
d172582ca9 Use a STRING option for API version 2019-08-12 12:45:29 -05:00
Allen Byrne
2d6bb8b95c Fix API version option 2019-08-12 11:24:36 -05:00
Allen Byrne
e96815ebd8 Merge pull request #1844 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '07af403991ae8950d1f930f5a6db2c7124ae8f91':
  Add option to explicitly disable extra tests
2019-08-09 11:00:47 -05:00
Scot Breitenfeld
318dfdaba1 Merge pull request #1847 in HDFFV/hdf5 from ~BRTNFLD/hdf5_msb:develop to develop
* commit 'c56509b490d6834340dedcd3120893028ccb6e8c':
  Added gcc conditional for __attribute__((fallthrough)), removes 34 warnings on theta (10% of warnings).
2019-08-09 08:32:58 -05:00
Dana Robinson
6f4f4adaa2 Merge pull request #1848 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor_pr to develop
* commit '4900f8823497c63e9f9464dcb6459ebdcbfdac8d':
  Fixed an issue with older version of gfortran.
2019-08-08 23:02:07 -05:00
Dana Robinson
4900f88234 Fixed an issue with older version of gfortran. 2019-08-08 18:46:59 -07:00
M. Scot Breitenfeld
c56509b490 Added gcc conditional for __attribute__((fallthrough)), removes 34 warnings on theta (10% of warnings). 2019-08-08 16:29:57 -05:00
Allen Byrne
07af403991 Add option to explicitly disable extra tests 2019-08-07 15:18:30 -05:00
Larry Knox
0ce619b92d Merge pull request #1843 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit 'c3c044cc003d6a4039635e638e1cd1c2487be177':
  Escape { and } in regex as required by sh in updated cori.nersc.gov. Tested change on jam, jelly, emu, ostrich and osx1011test.
2019-08-07 14:55:45 -05:00
Allen Byrne
92d79a5840 Merge pull request #1839 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '83b23a5a42c2124c1c5933d0565be1bbefd1c30d':
  Use prefix variable
  Cleanup HD prefix
  Merge reconciliation and VFD test fixes
2019-08-07 13:55:02 -05:00
Larry Knox
c3c044cc00 Escape { and } in regex as required by sh in updated cori.nersc.gov.
Tested change on jam, jelly, emu, ostrich and osx1011test.
2019-08-07 11:51:06 -05:00
Allen Byrne
83b23a5a42 Use prefix variable 2019-08-06 16:23:15 -05:00
Allen Byrne
9f12d83975 Cleanup HD prefix 2019-08-05 16:57:27 -05:00
Allen Byrne
1ef856f8b5 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '5fe1216a4e6af8feef0551f7bece8a0e193310a9':
  Fix return type for H5Sselect_intersect_block().
  Updated H5TRACE macro.
  Add H5Sselect_shape_same and H5Sselect_intersect_block API routines, along with tests and minor cleanups and refactorings.
2019-08-05 06:44:11 -05:00
Quincey Koziol
5fe1216a4e Merge pull request #1819 in HDFFV/hdf5 from ~KOZIOL/hdf5:develop to develop
* commit '905d40aa6f6eb603c5507e7967130760e3a2e43c':
  Fix return type for H5Sselect_intersect_block().
  Updated H5TRACE macro.
  Add H5Sselect_shape_same and H5Sselect_intersect_block API routines, along with tests and minor cleanups and refactorings.
2019-08-04 18:38:36 -05:00
Allen Byrne
c60ceb8c08 Merge reconciliation and VFD test fixes 2019-08-04 15:19:51 -05:00
Dana Robinson
ab1ce69900 Merge pull request #1838 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor_pr to develop
* commit '4cd461168ef6dbd799792b1893c41dccebae59f9':
  Fixed warning typo
2019-08-04 11:22:08 -05:00
Dana Robinson
4cd461168e Fixed warning typo 2019-08-04 09:12:43 -07:00
Allen Byrne
a1c9d22ca9 Merge pull request #1837 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '0147a6c713c784f5df9189fc7334c65f54958434':
  Fix VFD tests and repack
2019-08-04 08:35:15 -05:00
Allen Byrne
0147a6c713 Fix VFD tests and repack 2019-08-03 17:28:50 -05:00
Dana Robinson
20d43f3dba Merge pull request #1836 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor_pr to develop
* commit '2b1231ddd89dd2f1b59ec9ca1e4e124d7e76f1b5':
  Moved -Wimplicit-procedure gfortran warning to version 4.5 warnings instead of default.
2019-08-03 15:14:34 -05:00
Dana Robinson
2b1231ddd8 Moved -Wimplicit-procedure gfortran warning to version 4.5 warnings
instead of default.
2019-08-03 11:17:53 -07:00
Larry Knox
b7e196e338 Merge pull request #1831 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit 'c234479258038be93e059a6964bf19332ef162f8':
  Update junit.sh.in to copy lib files to $prefix/lib. Correct checking for s3 and hdfs options.
2019-08-02 10:04:23 -05:00
Larry Knox
c234479258 Update junit.sh.in to copy lib files to $prefix/lib.
Correct checking for s3 and hdfs options.
2019-08-02 09:58:48 -05:00
Scot Breitenfeld
bc1e6c5097 Merge pull request #1829 in HDFFV/hdf5 from ~BRTNFLD/hdf5_msb:develop to develop
* commit '4cb865fc5938a303c197aedf46f90021e2f4b3d6':
  enabled commented-out code
2019-08-01 15:01:26 -05:00
M. Scot Breitenfeld
4cb865fc59 enabled commented-out code 2019-08-01 11:37:13 -05:00
Allen Byrne
dfb6d9a996 Merge pull request #1827 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit 'ff8d8a9edb3b8012fa02d2b9fa3c823fee7575fa':
  Fix conflicting types for reset_raw_data_files() parameter in external_common.c changed from int to hbool_t. Change 0 and 1 to FALSE and TRUE in calls to reset_raw_data_files().
2019-08-01 10:24:09 -05:00
Larry Knox
ff8d8a9edb Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/~lrknox/hdf5_lrk into develop 2019-08-01 10:22:28 -05:00
Larry Knox
0c374d65c6 Fix conflicting types for reset_raw_data_files() parameter in external_common.c changed from int to hbool_t.
Change 0 and 1 to FALSE and TRUE in calls to reset_raw_data_files().
2019-08-01 10:18:45 -05:00
Dana Robinson
bb8904a75e Merge pull request #1826 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor_pr to develop
* commit '4227b8948d7091205b4f8dc1271d7dcae01bb0fb':
  Reverts the removal of config/conclude_fc.am while keeping the changes to config/gnu-fflags.
  Fixed a couple of typos.
2019-08-01 09:40:01 -05:00
Dana Robinson
4227b8948d Reverts the removal of config/conclude_fc.am while keeping
the changes to config/gnu-fflags.
2019-07-31 22:51:53 -05:00
Larry Knox
95910889d7 Merge pull request #1824 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '8120ba8bc1fab68a999995677a3cd1af2bc1da67':
  Fix missing export tag
2019-07-31 22:49:26 -05:00
Dana Robinson
438935557e Fixed a couple of typos. 2019-07-31 22:16:50 -05:00
Allen Byrne
8120ba8bc1 Fix missing export tag 2019-07-31 16:50:45 -05:00
Allen Byrne
9046a4ea95 Merge pull request #1823 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '519dfe549a4b8ffb4bd5d4c72a3f5fb61b80143f':
  Mostly whitespace cleanup and consistent test format
2019-07-31 15:57:18 -05:00
Allen Byrne
519dfe549a Mostly whitespace cleanup and consistent test format 2019-07-31 15:06:45 -05:00
Dana Robinson
ea4f76d664 Merge pull request #1821 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor_pr to develop
* commit '0ee5526c2c95dd77ee61b917b16adfcacbd3a540':
  Fixed typo in optimization.
2019-07-31 12:53:00 -05:00
Dana Robinson
0ee5526c2c Fixed typo in optimization. 2019-07-31 09:08:16 -07:00
Quincey Koziol
905d40aa6f Fix return type for H5Sselect_intersect_block(). 2019-07-31 09:34:01 -05:00
Allen Byrne
556c43a51d Merge pull request #1810 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '983daec12d7d17605ae660b0f1c5636d99f443f2':
  Merge cleanup mostly whitespace
  Update libvers usage
  Correct generator and add HD prefix
  HDFFV-10529 add note
  HDFFV-10529 Update CMake tests to use test fixtures
2019-07-31 09:27:56 -05:00
Allen Byrne
983daec12d Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '363217073750d07e0eeb0aac2b404a799fda9f7a':
  Update COPYING file. Remove hdfs from list of vfds for check-vfd testing as it is read-only.
  Fixed the MANIFEST
2019-07-31 09:20:55 -05:00
Larry Knox
3632170737 Merge pull request #1820 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit 'ab6679315c5027576c3a80d0ea3b67fd2fa58ff0':
  Update COPYING file. Remove hdfs from list of vfds for check-vfd testing as it is read-only.
2019-07-30 16:59:25 -05:00
Larry Knox
ab6679315c Update COPYING file.
Remove hdfs from list of vfds for check-vfd testing as it is read-only.
2019-07-30 16:37:57 -05:00
Quincey Koziol
41537eeb3c Updated H5TRACE macro. 2019-07-30 16:08:22 -05:00
Quincey Koziol
00fe4ccf30 Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/~koziol/hdf5 into develop 2019-07-30 15:35:45 -05:00
Quincey Koziol
605889fde8 Add H5Sselect_shape_same and H5Sselect_intersect_block API routines, along
with tests and minor cleanups and refactorings.
2019-07-30 15:34:53 -05:00
Allen Byrne
44e2ddac97 Merge cleanup mostly whitespace 2019-07-30 12:39:20 -05:00
Dana Robinson
c21ba9c26e Merge pull request #1818 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor_pr to develop
* commit '99a6a5a16e84512dfc57ba2eb7c3e09ecef94b1c':
  Fixed the MANIFEST
2019-07-30 09:57:46 -05:00
Dana Robinson
99a6a5a16e Fixed the MANIFEST 2019-07-30 07:29:37 -07:00
Allen Byrne
4df595c22d Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'd169391529f253a9903b8e6cacf38c59ceefab07':
  Parallel Fortran tests now use the MPI module instead of including mpif.h.
  First stab at gfortran versions. Tested on gfortran 7-9 so far.
  Moved the -std=f2008 option to gfortran 9 for now.
  Updated gfortran options. * Removed conclude_fc.am, which was causing verbose builds. Need to   investigate more, though. * Added gfortran 9 warnings and flags. This will need to be separated   into other version blocks based on when the options first appeared. * The standard is now explicitly set at 2008.
2019-07-29 16:24:15 -05:00
Dana Robinson
d169391529 Merge pull request #1808 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:gnu-flags-work to develop
* commit '7d291d059da6287f769951c4854c566da0b93ce8':
  Parallel Fortran tests now use the MPI module instead of including mpif.h.
  First stab at gfortran versions. Tested on gfortran 7-9 so far.
  Moved the -std=f2008 option to gfortran 9 for now.
  Updated gfortran options. * Removed conclude_fc.am, which was causing verbose builds. Need to   investigate more, though. * Added gfortran 9 warnings and flags. This will need to be separated   into other version blocks based on when the options first appeared. * The standard is now explicitly set at 2008.
2019-07-29 16:13:24 -05:00
Allen Byrne
517cadac26 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'f97e11e7635a0cd8728d4604ca5dceb3925ba44c':
  Update comment and check for strtoumax.
  Modify CMakeLists.txt file for renamed h5tools_test_utils files.
  Add HD to string functions. Switched strtoul to strtoumax in H5FDs3comms.c. Removed unused functions and variables in s3 and hdfs TestH5Pfapl*.java. Update Copyright headers.
  Squashed commit of the following:
2019-07-29 16:10:45 -05:00
Jacob Smith
7d3e170763 Refactoring. 2019-07-29 14:58:39 -05:00
Allen Byrne
da2ec6163d Update libvers usage 2019-07-28 14:41:52 -05:00
Larry Knox
f97e11e763 Merge pull request #1812 in HDFFV/hdf5 from ~HDF-PRIVATE/hdf5_vfd:develop to develop
* commit '8aa9043837ea217280098b4b32da8d98ac18f58b':
  Update comment and check for strtoumax.
  Modify CMakeLists.txt file for renamed h5tools_test_utils files.
  Add HD to string functions. Switched strtoul to strtoumax in H5FDs3comms.c. Removed unused functions and variables in s3 and hdfs TestH5Pfapl*.java. Update Copyright headers.
  Squashed commit of the following:
2019-07-26 16:57:07 -05:00
Larry Knox
8aa9043837 Update comment and check for strtoumax. 2019-07-26 16:36:45 -05:00
Allen Byrne
a7d74160d0 Correct generator and add HD prefix 2019-07-26 16:18:39 -05:00
Larry Knox
e852c8deb8 Modify CMakeLists.txt file for renamed h5tools_test_utils files. 2019-07-26 12:58:56 -05:00
Larry Knox
094f14ef38 Add HD to string functions.
Switched strtoul to strtoumax in H5FDs3comms.c.
Removed unused functions and variables in s3 and hdfs TestH5Pfapl*.java.
Update Copyright headers.
2019-07-26 11:56:03 -05:00
Larry Knox
8008294578 Squashed commit of the following:
Merge changes from update_merged_S3_HDFS branch into develop.

commit d5034315aea88629929ac0c9c59ebfafd5f21a31
Merge: 9c48823 d3fdcd8
Author: Larry Knox <lrknox@hdfgroup.org>
Date:   Thu Jul 25 08:24:53 2019 -0500

    Merge branch 'develop' into update_merged_S3_HDFS
2019-07-25 11:47:12 -05:00
Allen Byrne
f723e0e7f1 HDFFV-10529 add note 2019-07-23 16:28:54 -05:00
Allen Byrne
6a932198aa HDFFV-10529 Update CMake tests to use test fixtures 2019-07-23 16:24:56 -05:00
Allen Byrne
d3fdcd8a68 Merge pull request #1807 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'e19b0302cc38d1850ada7a00431511343cddc8a6': (31 commits)
  HDFFV-10845 update note
  Correct format of drive check
  Use generator expr to get correct name
  HDFFV-10845 Allow mingw to find functionality
  HDFFV-10845 fix comment syntax
  HDFFV-10845 Windows drive can only goto Z
  HDFFV-10845 make flags private
  Correct java load library name access
  Correct syntax
  Fix typo
  Correct OUTPUT_NAME usage
  CMake generator expr cannot be used in get_property cmd
  HDFFV-1045 gcc static must be link flags
  HDFFV-10845 quote multiple strings in cmake link command
  HDFFV-10845 update mingw cmake changes
  Add missing target root path, check other export macro
  HDFFV-10845 skip test if CMake command doesn't support ignore EOL
  HDFFV-10845 copy files with windows EOL
  HDFFV-10845 separate test used by copy windows files
  HDFFV-10845 mingw needs special windows reference files
  ...
2019-07-23 16:21:47 -05:00
Allen Byrne
e19b0302cc HDFFV-10845 update note 2019-07-23 16:21:07 -05:00
Jacob Smith
ded30348ae Add copyright/disclaimer to repack gentest.
Minor formatting tweaks.
2019-07-22 17:34:01 -05:00
Allen Byrne
b9332d6a13 Correct format of drive check 2019-07-22 17:13:56 -05:00
Jacob Smith
c7f8cb011d Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/~jake.smith/hdf5 into bugfix/repack_external_storage 2019-07-22 17:09:54 -05:00
Jacob Smith
7ff3a63d5f Minor formatting adjustments. 2019-07-22 16:55:37 -05:00
Allen Byrne
fbc06ff9b8 Use generator expr to get correct name 2019-07-22 16:23:38 -05:00
Allen Byrne
64733980e5 HDFFV-10845 Allow mingw to find functionality 2019-07-22 14:23:05 -05:00
Allen Byrne
9877da0a6f HDFFV-10845 fix comment syntax 2019-07-21 16:46:47 -05:00
Allen Byrne
1932752177 HDFFV-10845 Windows drive can only goto Z 2019-07-21 14:19:23 -05:00
Dana Robinson
7d291d059d Parallel Fortran tests now use the MPI module instead of including
mpif.h.
2019-07-19 02:48:00 -05:00
Dana Robinson
5a3147b660 First stab at gfortran versions. Tested on gfortran 7-9 so far. 2019-07-18 23:40:52 -07:00
Dana Robinson
6ef69f058d Merge branch 'develop' into gnu-flags-work 2019-07-18 21:26:47 -07:00
Allen Byrne
367f7ed0e3 HDFFV-10845 make flags private 2019-07-18 16:27:06 -05:00
Allen Byrne
4d3f52ac97 Correct java load library name access 2019-07-18 13:03:07 -05:00
Allen Byrne
5654ba57f1 Correct syntax 2019-07-18 12:55:02 -05:00
Allen Byrne
5984530f3f Fix typo 2019-07-18 12:07:32 -05:00
Allen Byrne
179d0b5af0 Correct OUTPUT_NAME usage 2019-07-18 12:00:19 -05:00
Allen Byrne
5b97d67d43 CMake generator expr cannot be used in get_property cmd 2019-07-18 11:37:34 -05:00
Allen Byrne
bdfb553c4c HDFFV-1045 gcc static must be link flags 2019-07-18 10:45:42 -05:00
Allen Byrne
17474a232f HDFFV-10845 quote multiple strings in cmake link command 2019-07-18 09:21:00 -05:00
Dana Robinson
0f2c1b8126 Moved the -std=f2008 option to gfortran 9 for now. 2019-07-18 01:48:16 -05:00
Allen Byrne
0a9180c074 HDFFV-10845 update mingw cmake changes 2019-07-17 16:08:43 -05:00
Allen Byrne
ac8a1f02ab Add missing target root path, check other export macro 2019-07-17 11:58:05 -05:00
Allen Byrne
741ef0aaef HDFFV-10845 skip test if CMake command doesn't support ignore EOL 2019-07-17 11:58:05 -05:00
Allen Byrne
3ea746014a HDFFV-10845 copy files with windows EOL 2019-07-17 11:58:05 -05:00
Allen Byrne
95d3b41af0 HDFFV-10845 separate test used by copy windows files 2019-07-17 11:58:04 -05:00
Allen Byrne
0eb050d481 HDFFV-10845 mingw needs special windows reference files 2019-07-17 11:58:04 -05:00
Allen Byrne
f724e86727 HDFFV-10845 use of TARGETFILE disables auto emulator 2019-07-17 11:58:04 -05:00
Allen Byrne
ac5680ce8d HDFFV-10845 add_custom_command requires emulator 2019-07-17 11:58:04 -05:00
Allen Byrne
5b258e186b Correct install syntax 2019-07-17 11:58:03 -05:00
Allen Byrne
0efee3ddba Must include from system 2019-07-17 11:58:03 -05:00
Allen Byrne
6b775a9d45 HDFFV-10845 defines already set 2019-07-17 11:58:03 -05:00
Allen Byrne
7ba562a820 HDFFV-10845 fix configure check and PATHs 2019-07-17 11:58:03 -05:00
Allen Byrne
d586a457b2 HDFFV-10845 C_FLAGS need set correctly for win32 vs mingw 2019-07-17 11:58:02 -05:00
Allen Byrne
7a9c852c2c HDFFV-8631, HDFFV-10595, HDFFV-10845 2019-07-17 11:58:02 -05:00
Allen Byrne
7174b5c135 HDFFV-8631 mingw is different platform 2019-07-17 11:58:02 -05:00
Allen Byrne
9c04e50889 HDFFV-10845 add release note. 2019-07-17 11:58:02 -05:00
Allen Byrne
7bb020fcec HDFFV-10845 add support for mingw toolchain 2019-07-17 11:56:48 -05:00
Allen Byrne
6add0919d1 Merge pull request #1805 in HDFFV/hdf5 from ~BYRN/hdf5_merge_adb:develop to develop
* commit '6e4f2798e883a88de7126739307722f6da39dd98':
  HDFFV-10424 add optional variable to avoid PDB installs
2019-07-17 11:00:36 -05:00
Allen Byrne
6e4f2798e8 HDFFV-10424 add optional variable to avoid PDB installs 2019-07-17 10:42:58 -05:00
Dana Robinson
8bd2c81cd5 Updated gfortran options.
* Removed conclude_fc.am, which was causing verbose builds. Need to
  investigate more, though.
* Added gfortran 9 warnings and flags. This will need to be separated
  into other version blocks based on when the options first appeared.
* The standard is now explicitly set at 2008.
2019-07-17 01:23:44 -07:00
Jerome Soumagne
bdd54d0147 Merge pull request #1804 in HDFFV/hdf5 from ~JSOUMAGNE/hdf5:topic_prop_check to develop
* commit '6c84a83eeaa187c92d445f8ef8565a4337498cd6':
  H5P: Fix wrong value comparison in assert
2019-07-16 16:46:47 -05:00
Jerome Soumagne
6c84a83eea H5P: Fix wrong value comparison in assert
Move compile assert of H5P_plist_type to H5P__init_package()
2019-07-16 14:22:36 -05:00
Dana Robinson
ebc274a673 Merge pull request #1803 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:lets_retire_jam to develop
* commit 'd7144b2fa40b1be59e6250313c5e5f1a2bd8fb25':
  Restored warnings for older gcc so jam can continue to creak along.
2019-07-16 11:07:48 -05:00
Dana Robinson
d7144b2fa4 Restored warnings for older gcc so jam can continue to creak along. 2019-07-16 03:49:50 -05:00
Dana Robinson
6816d5b2e7 Merge pull request #1797 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:gnu-flags-work to develop
* commit 'd5031a55192ac6b8ca81a0e5315cb4739af98896':
  Removed support for gcc 4.3 and earlier.
  Fix errant quotes
  * Fixed a bug in the gcc warning parsing * Changed version parsing from == gcc 4.x to < to handle ancient compilers.
  Reworked the config/gnu-flags file to be more organized and robust.
  Converted duplicated flags code to a set of if statements.
2019-07-15 11:09:11 -05:00
Dana Robinson
d5031a5519 Removed support for gcc 4.3 and earlier. 2019-07-14 10:46:03 -07:00
Dana Robinson
9a221fd979 Merge branch 'develop' into gnu-flags-work 2019-07-13 13:09:28 -07:00
Allen Byrne
b087e6d3a8 Merge pull request #1800 in HDFFV/hdf5 from ~BYRN/hdf5_merge_adb:develop to develop
* commit '6333fb8711adc3af930e186dad3b8b756e41a863':
  Fix packaging issue
2019-07-12 10:36:39 -05:00
Dana Robinson
5314213f1e Merge pull request #1801 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor_pr to develop
* commit '3566fff6261d0bb8e360d3842e99919d2eb4ba73':
  Reverted snprintf to sprintf in the multi VFD since the former causes problems on Windows.
2019-07-11 23:17:08 -05:00
Dana Robinson
3566fff626 Reverted snprintf to sprintf in the multi VFD since
the former causes problems on Windows.
2019-07-11 16:08:35 -07:00
Allen Byrne
6333fb8711 Fix packaging issue 2019-07-11 16:24:47 -05:00
Allen Byrne
0784987c85 Merge pull request #1799 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '9655485f6af87e8ee221c824f649fa013fad4542':
  non-windows test must be skipped on windows
2019-07-11 12:08:27 -05:00
Allen Byrne
9655485f6a non-windows test must be skipped on windows 2019-07-11 10:20:04 -05:00
Allen Byrne
c7099da319 Merge pull request #1798 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit '33e9b4526ec7b5d910bda879ac92dc992672057b':
  Use H5DOpen2 in hl/test/test_dset_append.c.
2019-07-11 09:59:14 -05:00
Larry Knox
33e9b4526e Use H5DOpen2 in hl/test/test_dset_append.c. 2019-07-11 08:31:02 -05:00
Dana Robinson
3fa1cc4700 Fix errant quotes 2019-07-10 13:40:09 -07:00
Dana Robinson
40b63bffb7 * Fixed a bug in the gcc warning parsing
* Changed version parsing from == gcc 4.x to < to handle ancient
compilers.
2019-07-10 13:05:50 -07:00
Dana Robinson
924d4c01a8 Reworked the config/gnu-flags file to be more organized and robust. 2019-07-10 10:49:55 -07:00
Dana Robinson
59f94cd8f8 Merge branch 'develop' into gnu-flags-work 2019-07-10 10:12:07 -07:00
Dana Robinson
3e33d61c4e Merge pull request #1793 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor_pr to develop
* commit '097d6037af8dd8d8e5364ae0a731b9843cd4aef8':
  Cleaned up test_dset_append and enabled the bug1/2 tests.
2019-07-10 11:37:49 -05:00
Dana Robinson
3f3397cc9d Merge pull request #1796 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:dt_fixes to develop
* commit 'c582df7538e71fd80915ef922b3edb530a66f70f':
  Revert path processing to fix daily test errors.
2019-07-10 11:35:56 -05:00
Dana Robinson
c582df7538 Revert path processing to fix daily test errors. 2019-07-10 09:22:32 -07:00
Allen Byrne
ceeb761e2b Merge pull request #1794 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'ede618741953c9ff70f9a0f3a0d22e7c92043437':
  Fix note text and cmake module include
  Undo commit
  Remove tab characters
  HDFFV-10581 add missed change and release note.
2019-07-10 11:21:03 -05:00
Dana Robinson
52f0622bfe Converted duplicated flags code to a set of if statements. 2019-07-10 09:09:59 -07:00
Allen Byrne
ede6187419 Fix note text and cmake module include 2019-07-10 10:32:43 -05:00
Allen Byrne
2f88d439c6 Undo commit 2019-07-10 09:46:10 -05:00
Allen Byrne
2015fa59fe Remove tab characters 2019-07-10 09:43:15 -05:00
Allen Byrne
f6700f7c83 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '22d78bdfa4d560a0b8a2dbb547574bfe61bf64f0':
  Updates to warnhist script, along with a few cleanups, and add some comments to warning cleanups that are a bit obscure.
  Cleaned up code that genericizes warning output, and add "-u" option to leave unique types in warnings (i.e. don't genericize output).  Also fixed the '-S' option to work correctly.
  Added GCC9 flags to CMake build
  Add support for GCC9, update warnhist script, and clean up warnings.
2019-07-10 09:12:22 -05:00
Dana Robinson
097d6037af Cleaned up test_dset_append and enabled the bug1/2 tests. 2019-07-10 04:50:57 -07:00
Quincey Koziol
22d78bdfa4 Merge pull request #1788 in HDFFV/hdf5 from ~KOZIOL/hdf5:feature/update_gcc_flags to develop
* commit '73df02f13c2b1e0b256cdbff1c7c584e84548df4':
  Updates to warnhist script, along with a few cleanups, and add some comments to warning cleanups that are a bit obscure.
  Cleaned up code that genericizes warning output, and add "-u" option to leave unique types in warnings (i.e. don't genericize output).  Also fixed the '-S' option to work correctly.
  Added GCC9 flags to CMake build
  Add support for GCC9, update warnhist script, and clean up warnings.
2019-07-09 22:21:33 -05:00
Quincey Koziol
73df02f13c Merge branch 'develop' into feature/update_gcc_flags 2019-07-09 22:17:22 -05:00
Quincey Koziol
db7c43d375 Updates to warnhist script, along with a few cleanups, and add some comments
to warning cleanups that are a bit obscure.
2019-07-09 22:15:36 -05:00
Allen Byrne
eb0d1e4e8e HDFFV-10581 add missed change and release note. 2019-07-09 16:30:27 -05:00
Allen Byrne
c33f2cbf18 Merge pull request #1791 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '88ab4b144bcf8454be9eff8800706c0abb404de1':
  fix var name
  Fix compile error with ifdef H5_HAVE_GETHOSTNAME
  perf program can only be built on unix platforms
  Declaration needed for parallel standalone
  Correct test use of library name
  Change how name is retrieved
  Move before null check
  HDFFV-10581 remove special name checking
  HDFFV-10581 fix locations for static pdb files
2019-07-09 15:35:51 -05:00
Allen Byrne
88ab4b144b fix var name 2019-07-09 12:07:41 -05:00
Allen Byrne
f241ff8ad9 Fix compile error with ifdef H5_HAVE_GETHOSTNAME 2019-07-08 15:50:14 -05:00
Allen Byrne
c424877351 perf program can only be built on unix platforms 2019-07-08 15:37:58 -05:00
Allen Byrne
c88caec5ae Declaration needed for parallel standalone 2019-07-08 15:33:31 -05:00
Allen Byrne
8583d608ef Correct test use of library name 2019-07-08 15:10:12 -05:00
Allen Byrne
8eadaf3408 Change how name is retrieved 2019-07-08 13:59:35 -05:00
Allen Byrne
1878e68558 Move before null check 2019-07-08 13:52:05 -05:00
Allen Byrne
3dd7137430 HDFFV-10581 remove special name checking 2019-07-08 13:46:25 -05:00
Allen Byrne
ae0c16d1f2 HDFFV-10581 fix locations for static pdb files 2019-07-08 12:21:11 -05:00
Quincey Koziol
78e13fe8b0 Merge branch 'develop' into feature/update_gcc_flags 2019-07-05 13:33:13 -05:00
Quincey Koziol
43aa32ff4f Cleaned up code that genericizes warning output, and add "-u" option to
leave unique types in warnings (i.e. don't genericize output).  Also fixed
the '-S' option to work correctly.
2019-07-05 13:31:38 -05:00
Allen Byrne
de217a6499 Merge pull request #1789 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '2b2876ac57a1901537d7c2732eac81f7434d332d':
  perf test is parallel only
  Add missing test
2019-07-05 08:41:19 -05:00
Quincey Koziol
6725c21138 Merge branch 'develop' into feature/update_gcc_flags 2019-07-03 17:09:30 -05:00
Allen Byrne
2b2876ac57 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '7b9f24603f980a73d43194c66a01a62aee16b2e8':
  Fixed Build HDF Tests name in CMake's libhdf5 settings
  Fixed libhdf5 settings file for both autotools & CMake
2019-07-03 15:31:40 -05:00
Allen Byrne
1c7420d1e3 perf test is parallel only 2019-07-03 15:30:41 -05:00
Dhvanil Popat
7b9f24603f Merge pull request #1790 in HDFFV/hdf5 from ~DPOPAT/hdf5:develop to develop
Fixed libhdf5 settings file to be consistent for autotools & CMake

* commit '5e86326e0a731505095013aaf2a766bfa6cc1dda':
  Fixed Build HDF Tests name in CMake's libhdf5 settings
  Fixed libhdf5 settings file for both autotools & CMake
2019-07-03 14:27:46 -05:00
Dhvanil Popat
5e86326e0a Fixed Build HDF Tests name in CMake's libhdf5 settings 2019-07-03 14:21:45 -05:00
Allen Byrne
ce92a64716 Add missing test 2019-07-03 10:15:07 -05:00
Quincey Koziol
7509c2c4fc Added GCC9 flags to CMake build 2019-07-02 23:49:35 -05:00
Quincey Koziol
3b594992d6 Add support for GCC9, update warnhist script, and clean up warnings. 2019-07-02 23:43:45 -05:00
Dana Robinson
d0bc570c2c Merge pull request #1787 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor_pr to develop
* commit 'f250815151df8da8a93c0ff781a3cf134f1c6cbd':
  Cleaned up misc warnings.
2019-07-02 09:26:55 -05:00
Dana Robinson
f250815151 Cleaned up misc warnings. 2019-06-29 02:38:14 -07:00
Quincey Koziol
f97ea92fe5 Merge pull request #1784 in HDFFV/hdf5 from ~KOZIOL/hdf5:feature/update_gcc_flags to develop
* commit '6ced6457c3048bd10bf6f470b329b4810d9be826':
  Move the -Wformat-nonliteral warning to the developer flags.  Fix bugs I introduced in the last commit.
  Updated configure & CMake compiler flags for GCC 8.x, along with corresponding changes to warnhist script (and some extra improvements for condensing C++ and Java warnings), and fixed a bunch of warnings.
2019-06-28 19:30:41 -05:00
Quincey Koziol
6ced6457c3 Move the -Wformat-nonliteral warning to the developer flags. Fix bugs
I introduced in the last commit.
2019-06-28 19:26:47 -05:00
Quincey Koziol
2042c775f0 Merge branch 'develop' into feature/update_gcc_flags 2019-06-28 16:13:36 -05:00
Allen Byrne
13d951d372 Merge pull request #1779 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '0405935654e2c3a8e414da6f66a46ab0ef7ef9ec':
  Remove unused code
2019-06-28 10:10:55 -05:00
Dana Robinson
a7cd160234 Merge pull request #1781 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor_pr to develop
* commit 'f83d034105e2c72210dd41723044acca37a6d735':
  Refactored some fsinfo code from H5Fsuper.c to H5Ofsinfo.c.
2019-06-28 10:04:07 -05:00
Dana Robinson
8f0aacce8f Merge pull request #1782 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:warning_fixes to develop
* commit '1c4101c6a77dd9223483dd9e3f7bec0f9e92f435':
  Fixed various warnings in testhdf5 files.
  Warning fixes: * fix for static/const flipped in H5Dint.c * Removed missing done target in H5Rint.c * Fixed misleading indentation in h5format_convert.c
2019-06-28 10:03:45 -05:00
Vailin Choi
b6268dbb1b Merge pull request #1757 in HDFFV/hdf5 from ~VCHOI/my_third_fork:bugfix/new_shutdown_fsm to develop
* commit 'c69b1025f58ec8467be1e056214510c70ed00867':
  (1) Add/remove comments. (2) A temporary fix to address the test/objcopy.c: test_copy_group_deep() test failure with the family driver.  The test failure occurs with these configurations in objcopy.c: --with shared src messages (CONFIG_SHARE_SRC) --without shared dst messages (CONFIG_SHARE_DST) --with latest format for source file (CONFIG_SRC_NEW_FORMAT) --without dense attributes (CONFIG_DENSE) --with latest format for destination file (CONFIG_DST_NEW_FORMAT) The temporary fix is in src/H5MFaggr.c (see comments above #ifdef REPLACE/#endif).
  Checkin for new shutting down free-space manager.
2019-06-28 09:54:52 -05:00
Quincey Koziol
d5130bb573 Updated configure & CMake compiler flags for GCC 8.x, along with corresponding
changes to warnhist script (and some extra improvements for condensing C++
and Java warnings), and fixed a bunch of warnings.
2019-06-28 09:10:43 -05:00
Dana Robinson
1c4101c6a7 Fixed various warnings in testhdf5 files. 2019-06-28 00:17:33 -07:00
Dana Robinson
de2440ae5f Warning fixes:
* fix for static/const flipped in H5Dint.c
* Removed missing done target in H5Rint.c
* Fixed misleading indentation in h5format_convert.c
2019-06-27 22:38:20 -07:00
Dana Robinson
f83d034105 Refactored some fsinfo code from H5Fsuper.c to H5Ofsinfo.c. 2019-06-27 16:30:19 -07:00
Vailin Choi
c69b1025f5 (1) Add/remove comments.
(2) A temporary fix to address the test/objcopy.c: test_copy_group_deep() test failure with
the family driver.  The test failure occurs with these configurations in objcopy.c:
--with shared src messages (CONFIG_SHARE_SRC)
--without shared dst messages (CONFIG_SHARE_DST)
--with latest format for source file (CONFIG_SRC_NEW_FORMAT)
--without dense attributes (CONFIG_DENSE)
--with latest format for destination file (CONFIG_DST_NEW_FORMAT)
The temporary fix is in src/H5MFaggr.c (see comments above #ifdef REPLACE/#endif).
2019-06-27 16:04:48 -05:00
Vailin Choi
565e3d7951 Merge pull request #12 in ~VCHOI/my_third_fork from develop to bugfix/new_shutdown_fsm
* commit '2c69584fb124c20e1dd06c31f2baf240b50b381c':
  Fixed missing return value checks in VDS tests.
2019-06-27 15:52:36 -05:00
Allen Byrne
0405935654 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '2c69584fb124c20e1dd06c31f2baf240b50b381c':
  Fixed missing return value checks in VDS tests.
2019-06-27 12:39:12 -05:00
Dana Robinson
2c69584fb1 Merge pull request #1778 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor_pr to develop
* commit '569d051df5b295041a7f6cb73d6220f4999a8633':
  Fixed missing return value checks in VDS tests.
2019-06-27 12:31:34 -05:00
Allen Byrne
e7dd793f42 Remove unused code 2019-06-27 08:00:31 -05:00
Dana Robinson
569d051df5 Fixed missing return value checks in VDS tests. 2019-06-26 21:55:11 -07:00
Vailin Choi
db61d2940a Merge branch 'bugfix/new_shutdown_fsm' of https://bitbucket.hdfgroup.org/scm/~vchoi/my_third_fork into bugfix/new_shutdown_fsm 2019-06-26 15:49:12 -05:00
Vailin Choi
9cafc8d4de Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/~vchoi/my_third_fork into bugfix/new_shutdown_fsm 2019-06-26 15:47:54 -05:00
Vailin Choi
439ea92d7e Merge pull request #1772 in HDFFV/hdf5 from ~VCHOI/my_third_fork:bugfix/HDFFV-10808-h5pset_file_space_strategy-succeeds to develop
* commit '3768566139df18928aa29ece0eff3010b224633b':
  Add release notes.
  Correct hid_t error value to H5I_INVALID_HID in tests related to libver_bounds.
  Fix for HDFFV-10808 H5Pset_file_space_strategy succeeds when using H5Pset_libver_bounds v18,v18. Fails file creation when non-default free-space info is set in fcpl and the library version high bound is less than v110 because free-space info message is introduced in library release v110.
2019-06-26 10:47:31 -05:00
Dana Robinson
786e8e5a88 Merge pull request #1775 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor_pr to develop
* commit '8ac60adaa2af21b57185c145d70a12d16a0b7409':
  Banish enum increment warnings
2019-06-26 10:12:46 -05:00
Dana Robinson
8ac60adaa2 Banish enum increment warnings 2019-06-25 23:19:09 -07:00
Dana Robinson
a3cfb08a10 Merge pull request #1774 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:trefer_memory_bug to develop
* commit 'b40a6f75aaf3d40c6ea5f9cc8beb74ae8aaaba96':
  Fixed a memory issue in trefer.c.
2019-06-25 14:51:30 -05:00
Vailin Choi
3768566139 Add release notes. 2019-06-25 14:47:53 -05:00
Dana Robinson
b40a6f75aa Fixed a memory issue in trefer.c. 2019-06-25 12:08:33 -07:00
Vailin Choi
71de5b8088 Correct hid_t error value to H5I_INVALID_HID in tests related to libver_bounds. 2019-06-25 11:47:33 -05:00
Dhvanil Popat
18f65dcee9 Fixed libhdf5 settings file for both autotools & CMake 2019-06-25 07:32:32 +00:00
Vailin Choi
d33eac91a7 Merge branch 'bugfix/HDFFV-10808-h5pset_file_space_strategy-succeeds' of https://bitbucket.hdfgroup.org/scm/~vchoi/my_third_fork into bugfix/HDFFV-10808-h5pset_file_space_strategy-succeeds 2019-06-24 18:09:52 -05:00
Vailin Choi
d9653606d8 Fix for HDFFV-10808 H5Pset_file_space_strategy succeeds when using H5Pset_libver_bounds v18,v18.
Fails file creation when non-default free-space info is set in fcpl and the library version
high bound is less than v110 because free-space info message is introduced in library release v110.
2019-06-24 18:08:23 -05:00
Vailin Choi
5256fbde26 Merge pull request #10 in ~VCHOI/my_third_fork from develop to bugfix/HDFFV-10808-h5pset_file_space_strategy-succeeds
* commit '1d8f7bf297100ec11204442708a7f670a89f3f02':
  Updated the Java attribute test so that attribute access property lists are created and used correctly.
  Add test cleanup
  Need to shift off two arguments
  HDFFV-9407 add autotools test
  Move pragma statements outside of routines, to make older compilers happy.
  HDFFV-9407 Add test
2019-06-24 17:41:28 -05:00
Dana Robinson
1d8f7bf297 Merge pull request #1771 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:H5A_java_test_fix to develop
* commit 'f4015bed9e7ee43468240e734232f9114b749d4f':
  Updated the Java attribute test so that attribute access property lists are created and used correctly.
2019-06-24 17:31:56 -05:00
Allen Byrne
c89696e965 Merge pull request #1768 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'f6ddfd7dda8aa95b33ae89b87c70493d5c644dbe':
  Add test cleanup
  Need to shift off two arguments
  HDFFV-9407 add autotools test
  HDFFV-9407 Add test
2019-06-24 16:56:33 -05:00
Dana Robinson
f4015bed9e Updated the Java attribute test so that attribute access
property lists are created and used correctly.
2019-06-24 14:33:54 -07:00
Vailin Choi
7db3060e76 Merge pull request #9 in ~VCHOI/my_third_fork from develop to bugfix/new_shutdown_fsm
* commit 'e35effff7da40fa8b0dda273be9bbdfa9c8c3624':
  Move pragma statements outside of routines, to make older compilers happy.
2019-06-24 16:29:40 -05:00
Allen Byrne
f6ddfd7dda Add test cleanup 2019-06-24 16:10:20 -05:00
Allen Byrne
cf3de59f84 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'e35effff7da40fa8b0dda273be9bbdfa9c8c3624':
  Move pragma statements outside of routines, to make older compilers happy.
  Updated H5Tcopy() to get the dataset's datatype through the VOL when that is passed in as the object ID.
2019-06-24 15:55:47 -05:00
Allen Byrne
1891324419 Need to shift off two arguments 2019-06-24 15:45:38 -05:00
Quincey Koziol
e35effff7d Merge pull request #1770 in HDFFV/hdf5 from ~KOZIOL/hdf5:develop to develop
* commit 'cb92adccf61d712ee8c4fcac04c1b297c05ab941':
  Move pragma statements outside of routines, to make older compilers happy.
2019-06-24 15:31:27 -05:00
Vailin Choi
7485981bca Merge pull request #8 in ~VCHOI/my_third_fork from develop to bugfix/new_shutdown_fsm
* commit '35fd0ec8ceffe96cee352187154da15c967fb990':
  Updated H5Tcopy() to get the dataset's datatype through the VOL when that is passed in as the object ID.
  Fix fortran test and test library linking
  Update GCC 6 & 7 flags for CMake builds
  Move -Wnormalized down into GCC 6.x flags
  Put the memcpy overlap check back into H5MM.
  Fixed the heap overflow in t_filters_parallel
  Fixed some low-hanging fruit from -fsanitize in t_filters_parallel.
  Add lib dir for testing plugins
  Add support for GCC 7.x warnings, update warnhist script to account for them, clean up warnings.
  Add H5_HLDLL prefix for windows link
  HDFFV-10805 cleanup examples and test code
  Fix minor typo in H5S_select_iter_release
  Add missing fortran mods
  HDFFV-10805 Fix test of library libinfo
  Cleanup possible CMake target conflicts
  Correct CMake issues
2019-06-24 15:04:38 -05:00
Allen Byrne
ee07744966 HDFFV-9407 add autotools test 2019-06-24 15:04:07 -05:00
Vailin Choi
3c9b147707 Merge pull request #7 in ~VCHOI/my_third_fork from develop to bugfix/HDFFV-10808-h5pset_file_space_strategy-succeeds
* commit '35fd0ec8ceffe96cee352187154da15c967fb990':
  Updated H5Tcopy() to get the dataset's datatype through the VOL when that is passed in as the object ID.
  Fix fortran test and test library linking
  Update GCC 6 & 7 flags for CMake builds
  Move -Wnormalized down into GCC 6.x flags
  Put the memcpy overlap check back into H5MM.
  Fixed the heap overflow in t_filters_parallel
  Fixed some low-hanging fruit from -fsanitize in t_filters_parallel.
  Add lib dir for testing plugins
  Add support for GCC 7.x warnings, update warnhist script to account for them, clean up warnings.
  Add H5_HLDLL prefix for windows link
  HDFFV-10805 cleanup examples and test code
  Add missing fortran mods
  HDFFV-10805 Fix test of library libinfo
  Cleanup possible CMake target conflicts
  Correct CMake issues
2019-06-24 14:59:15 -05:00
Quincey Koziol
cb92adccf6 Move pragma statements outside of routines, to make older compilers happy. 2019-06-24 14:39:51 -05:00
Dana Robinson
35fd0ec8ce Merge pull request #1767 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:H5Tcopy_dset_vol_fix to develop
* commit '8b00d921d7313cd21947992ab4a007d593c49207':
  Updated H5Tcopy() to get the dataset's datatype through the VOL when that is passed in as the object ID.
2019-06-24 10:55:39 -05:00
Allen Byrne
a03d35dc22 HDFFV-9407 Add test 2019-06-24 07:28:39 -05:00
Allen Byrne
4e06d523d5 Merge pull request #1765 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '21e147da71ef226b712ec4d087af95aad9691dec':
  Fix fortran test and test library linking
2019-06-24 07:26:30 -05:00
Dana Robinson
8b00d921d7 Updated H5Tcopy() to get the dataset's datatype through the VOL when
that is passed in as the object ID.
2019-06-23 22:34:08 -07:00
Allen Byrne
21e147da71 Fix fortran test and test library linking 2019-06-23 13:52:30 -05:00
Quincey Koziol
60dee604cd Merge pull request #1764 in HDFFV/hdf5 from ~KOZIOL/hdf5:feature/update_gcc_flags to develop
Updated CMake bulids, too.

* commit '17ae90917856e4cbab5a2f1c597197ee98802fc7':
  Update GCC 6 & 7 flags for CMake builds
  Move -Wnormalized down into GCC 6.x flags
  Add support for GCC 7.x warnings, update warnhist script to account for them, clean up warnings.
2019-06-22 19:37:18 -05:00
Quincey Koziol
17ae909178 Update GCC 6 & 7 flags for CMake builds 2019-06-22 19:34:47 -05:00
Quincey Koziol
4e3a0c505c Move -Wnormalized down into GCC 6.x flags 2019-06-22 11:41:33 -05:00
Quincey Koziol
128853b58a Merge branch 'develop' into feature/update_gcc_flags 2019-06-22 11:39:25 -05:00
Allen Byrne
df4ec243d4 Merge pull request #1759 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '468b130be3b77fe07b29709cd3fa854422fefa9c':
  Add lib dir for testing plugins
2019-06-22 10:06:58 -05:00
Dana Robinson
2d1017e381 Merge pull request #1763 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:memcpy_buffer_overlap_check to develop
* commit '5a6afeffd44c3ba51ce0e0fa11053c83e0807685':
  Put the memcpy overlap check back into H5MM.
2019-06-21 20:45:11 -05:00
Dana Robinson
5a6afeffd4 Put the memcpy overlap check back into H5MM. 2019-06-21 17:31:56 -07:00
Dana Robinson
7ef0e3f941 Merge pull request #1761 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:t_filters_parallel_bugs to develop
* commit '5aa8bc154dd9fcfdf6c7cbbe0611cb200f0a420e':
  Fixed the heap overflow in t_filters_parallel
2019-06-21 16:56:53 -05:00
Quincey Koziol
3dcc89625c Merge branch 'develop' into feature/update_gcc_flags 2019-06-21 16:56:11 -05:00
Dana Robinson
5aa8bc154d Fixed the heap overflow in t_filters_parallel 2019-06-21 14:13:16 -07:00
Dana Robinson
8eabdd28af Merge pull request #1760 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:t_filters_parallel_bugs to develop
* commit 'b4bd49ffdd5e313cd840698709f44f05ea323104':
  Fixed some low-hanging fruit from -fsanitize in t_filters_parallel.
2019-06-21 15:48:53 -05:00
Dana Robinson
b4bd49ffdd Fixed some low-hanging fruit from -fsanitize in t_filters_parallel. 2019-06-21 13:18:09 -07:00
Allen Byrne
468b130be3 Add lib dir for testing plugins 2019-06-21 13:46:46 -05:00
Jacob Smith
9103fd5953 Undo some formatting modifications.
Update MANIFEST.
2019-06-21 12:05:54 -05:00
Quincey Koziol
1ccbdfee58 Add support for GCC 7.x warnings, update warnhist script to account for them,
clean up warnings.
2019-06-21 10:05:34 -05:00
Allen Byrne
5fc5d947f0 Merge pull request #1749 in HDFFV/hdf5 from ~BYRN/hdf5_merge_adb:develop to develop
* commit 'c24f11070aea56331110628d7645332534e4f227':
  Add H5_HLDLL prefix for windows link
  HDFFV-10805 cleanup examples and test code
  Add missing fortran mods
  HDFFV-10805 Fix test of library libinfo
  Cleanup possible CMake target conflicts
  Correct CMake issues
2019-06-20 17:02:49 -05:00
Vailin Choi
61b2dddc25 Checkin for new shutting down free-space manager. 2019-06-20 16:14:33 -05:00
Jacob Smith
27d5742b39 Merge branch 'develop' into bugfix/repack_external_storage 2019-06-20 12:37:27 -05:00
Jacob Smith
63fc460c13 Add forgotten files to include from h5repack testfiles for tests. 2019-06-20 12:30:20 -05:00
Allen Byrne
c24f11070a Add H5_HLDLL prefix for windows link 2019-06-20 08:54:49 -05:00
Allen Byrne
1e31a86dab Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '2e973f7e12301975f9d8dfdd5534682525554e77':
  Fix minor typo in H5S_select_iter_release
  Fix memory leak in objcopy test after H5Aread of vlen data
2019-06-20 06:55:29 -05:00
Allen Byrne
b106b883cc HDFFV-10805 cleanup examples and test code 2019-06-20 06:31:01 -05:00
Jordan Henderson
2e973f7e12 Merge pull request #1754 in HDFFV/hdf5 from ~JHENDERSON/hdf5:develop to develop
* commit '6c62678939b66400247dbbf4f9d0c32381a956d1':
  Fix minor typo in H5S_select_iter_release
2019-06-19 18:54:33 -05:00
Jordan Henderson
6c62678939 Fix minor typo in H5S_select_iter_release 2019-06-19 18:06:05 -05:00
Jacob Smith
2ba7b8f5e0 Fix failing automated reporting.
Add 8-bit big-endian testfile.
2019-06-19 17:15:05 -05:00
Vailin Choi
246b40f8f8 Merge pull request #6 in ~VCHOI/my_third_fork from develop to bugfix/new_shutdown_fsm
* commit 'ca1ee7fae118c8d4137b1b5efe57660d2e0ff9b1': (64 commits)
  Fix memory leak in objcopy test after H5Aread of vlen data
  HDFFV-10616 add h5fc script
  Fixed a problem in the ohdr test where hard-coded strings passed to H5Awrite() triggered -fsanitize failures.
  Yanked qsort assert
  Switched to HGOTO_DONE() in the links code.
  Updated the HDqsort() macro to ensure we don't pass NULL buffers to qsort(3) in the future.
  Fixed a bug in the links code where iterating over an empty group would pass a NULL pointer to qsort(3), which is undefined behavior.
  Reset the other convenience pointer because why no
  Fixed a memory bug where a pointer is used after it's been freed.
  fixed pass_through vol
  HDFFV-10805 Add option to only build shared targets
  Fixed a warning in H5CX.c concerning incorrect use of freeing VOL connector info.
  Add H5S_SEL_ITER_SHARE_WITH_DATASPACE selection iterator creation flag, to share dataspace's selection with iterator (and with caution about not modifying or closing the dataspace while the iterator is open).
  Added a warning summary script for gcc to bin
  Fix misc. typos, etc. from code review
  Fixed problem with H5Fdelete "test" and split VFD.
  New hyperslab selection routines and new public selection iterator routines.
  Added the creation and use of an attribute access property list to testhdf5.
  Update MANIFEST for move of h5cc.in and h5redeploy.in to bin directory.
  Added missing DELETE enum value.
  ...
2019-06-19 16:43:23 -05:00
Jerome Soumagne
ca1ee7fae1 Merge pull request #1753 in HDFFV/hdf5 from ~JSOUMAGNE/hdf5:topic_fix_objcopy_leak to develop
* commit '552cc1b4a4d1757d64f1b930135e0320a10ce8ce':
  Fix memory leak in objcopy test after H5Aread of vlen data
2019-06-19 16:24:56 -05:00
Allen Byrne
aa9a979fbb Add missing fortran mods 2019-06-19 15:42:35 -05:00
Allen Byrne
72116376b1 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'cc267767af89bf95807afc4e7b25d82638ef4892':
  HDFFV-10616 add h5fc script
2019-06-19 14:05:10 -05:00
Allen Byrne
cc267767af Merge pull request #1751 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '9397d67d91eb628b3b9096501cdab0a33335564c':
  HDFFV-10616 add h5fc script
2019-06-19 14:03:44 -05:00
Jerome Soumagne
552cc1b4a4 Fix memory leak in objcopy test after H5Aread of vlen data 2019-06-19 14:03:21 -05:00
Allen Byrne
08df37027c HDFFV-10805 Fix test of library libinfo 2019-06-19 13:59:49 -05:00
Allen Byrne
11f83e55ec Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'b9ec6a6400a556b1250c249e158c4fffafccd550':
  fixed pass_through vol
2019-06-19 13:55:34 -05:00
Allen Byrne
9397d67d91 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'b9ec6a6400a556b1250c249e158c4fffafccd550':
  fixed pass_through vol
2019-06-19 13:55:27 -05:00
Scot Breitenfeld
b9ec6a6400 Merge pull request #1746 in HDFFV/hdf5 from ~BRTNFLD/hdf5_msb:develop to develop
* commit 'a67c578e4b9275fa12b427b6e13021536838a448':
  fixed pass_through vol
2019-06-19 13:52:21 -05:00
Allen Byrne
5c865bd106 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '4d20db43bea4bc4588b20abebef5b0d043dcf31d':
  Fixed a problem in the ohdr test where hard-coded strings passed to H5Awrite() triggered -fsanitize failures.
2019-06-19 11:51:17 -05:00
Allen Byrne
d1b4eda28a HDFFV-10616 add h5fc script 2019-06-19 10:42:37 -05:00
Allen Byrne
562cd7f3ab Cleanup possible CMake target conflicts 2019-06-19 10:35:55 -05:00
Dana Robinson
4d20db43be Merge pull request #1750 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:ohdr_test_memory_issue to develop
* commit '6a1e9a1fbe9606d0dd3452092cab17794e131e64':
  Fixed a problem in the ohdr test where hard-coded strings passed to H5Awrite() triggered -fsanitize failures.
2019-06-19 10:23:04 -05:00
Allen Byrne
2051ee9118 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'c6e21cede788790b39af4a46a8bc15e49e382346':
  Yanked qsort assert
  Switched to HGOTO_DONE() in the links code.
  Updated the HDqsort() macro to ensure we don't pass NULL buffers to qsort(3) in the future.
  Fixed a bug in the links code where iterating over an empty group would pass a NULL pointer to qsort(3), which is undefined behavior.
2019-06-19 10:06:52 -05:00
Dana Robinson
6a1e9a1fbe Fixed a problem in the ohdr test where hard-coded strings passed
to H5Awrite() triggered -fsanitize failures.
2019-06-18 17:28:37 -07:00
Dana Robinson
c6e21cede7 Merge pull request #1748 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:links_iterate_zero_bug to develop
* commit '0a75da70a61d41a0bf20a5c617f3eb678ed0b103':
  Yanked qsort assert
  Switched to HGOTO_DONE() in the links code.
  Updated the HDqsort() macro to ensure we don't pass NULL buffers to qsort(3) in the future.
  Fixed a bug in the links code where iterating over an empty group would pass a NULL pointer to qsort(3), which is undefined behavior.
2019-06-18 17:36:42 -05:00
Allen Byrne
b3b6dcb44a Correct CMake issues 2019-06-18 17:10:46 -05:00
Allen Byrne
8973ba46c6 Merge pull request #1745 in HDFFV/hdf5 from ~BYRN/hdf5_merge_adb:develop to develop
* commit '6cd728796dee1cbc5b1fdf28900b23b7a6870b67':
  HDFFV-10805 Add option to only build shared targets
2019-06-18 16:32:06 -05:00
Dana Robinson
0a75da70a6 Yanked qsort assert 2019-06-18 12:52:42 -07:00
Dana Robinson
b8c24388ec Switched to HGOTO_DONE() in the links code. 2019-06-18 12:27:51 -07:00
Dana Robinson
ea966597d5 Updated the HDqsort() macro to ensure we don't pass NULL buffers to
qsort(3) in the future.
2019-06-18 12:23:06 -07:00
Dana Robinson
d767e6a067 Fixed a bug in the links code where iterating over an empty group would
pass a NULL pointer to qsort(3), which is undefined behavior.

Fixes HDFFV-10829
2019-06-18 11:42:53 -07:00
Allen Byrne
6cd728796d Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '10535e0376d88e218cab782322bfc06f35835f31':
  Reset the other convenience pointer because why no
  Fixed a memory bug where a pointer is used after it's been freed.
2019-06-18 13:42:03 -05:00
Dana Robinson
10535e0376 Merge pull request #1747 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:vds_memory_bug to develop
* commit '8d67b440f7d94f1b191ce154a41685bcaa90fd12':
  Reset the other convenience pointer because why no
  Fixed a memory bug where a pointer is used after it's been freed.
2019-06-18 12:52:27 -05:00
Dana Robinson
8d67b440f7 Reset the other convenience pointer because why no 2019-06-18 10:24:58 -07:00
Allen Byrne
d118a47a92 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '712a2a13d8add828d053135a172abb2e819d59ad':
  Fixed a warning in H5CX.c concerning incorrect use of freeing VOL connector info.
  Add H5S_SEL_ITER_SHARE_WITH_DATASPACE selection iterator creation flag, to share dataspace's selection with iterator (and with caution about not modifying or closing the dataspace while the iterator is open).
  Fix misc. typos, etc. from code review
  New hyperslab selection routines and new public selection iterator routines.
2019-06-18 12:12:24 -05:00
Dana Robinson
daaa56de3e Fixed a memory bug where a pointer is used after it's been freed.
This is going to need a release note when it's moved to 1.10.
2019-06-18 09:59:36 -07:00
M. Scot Breitenfeld
a67c578e4b fixed pass_through vol 2019-06-18 11:39:21 -05:00
Dana Robinson
712a2a13d8 Merge pull request #1744 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:H5CX_warning to develop
* commit '579793a7acebcb22d1adc2421a6c1b99618f3ee9':
  Fixed a warning in H5CX.c concerning incorrect use of freeing VOL connector info.
2019-06-18 10:32:52 -05:00
Quincey Koziol
1802d4cb14 Merge pull request #1740 in HDFFV/hdf5 from merge_hyperslab_04 to develop
* commit 'd20139399750246f55c902940987e0048a40c268':
  Add H5S_SEL_ITER_SHARE_WITH_DATASPACE selection iterator creation flag, to share dataspace's selection with iterator (and with caution about not modifying or closing the dataspace while the iterator is open).
  Fix misc. typos, etc. from code review
  New hyperslab selection routines and new public selection iterator routines.
2019-06-18 09:39:00 -05:00
Quincey Koziol
d201393997 Merge branch 'develop' into merge_hyperslab_04 2019-06-18 09:24:14 -05:00
Allen Byrne
e7f16c6f2c HDFFV-10805 Add option to only build shared targets
HDFFV-10805 Add ONLY_SHARED_LIBS option and prefer shared over static
HDFFV-10803 Update FindSZIP.cmake find module
Remove unneeded modules and update java modules
2019-06-18 07:46:25 -05:00
Dana Robinson
579793a7ac Fixed a warning in H5CX.c concerning incorrect use of freeing
VOL connector info.
2019-06-17 20:09:45 -07:00
Quincey Koziol
49f14964c3 Add H5S_SEL_ITER_SHARE_WITH_DATASPACE selection iterator creation flag, to
share dataspace's selection with iterator (and with caution about not modifying
or closing the dataspace while the iterator is open).
2019-06-17 18:19:05 -05:00
Dana Robinson
f73a190d2c Merge pull request #1743 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:warnhist to develop
* commit '72dd01b76bf0f521b95fc3ed10b5c305f7445fc6':
  Added a warning summary script for gcc to bin
2019-06-17 15:57:46 -05:00
Dana Robinson
72dd01b76b Added a warning summary script for gcc to bin 2019-06-17 13:35:08 -07:00
Quincey Koziol
73331f73dd Fix misc. typos, etc. from code review 2019-06-17 10:45:36 -05:00
Quincey Koziol
0656cd47d9 Merge branch 'develop' into merge_hyperslab_04 2019-06-17 10:35:36 -05:00
Vailin Choi
f7c2a75404 Merge pull request #1729 in HDFFV/hdf5 from ~VCHOI/my_third_fork:bugfix/HDFFV-10800-h5ocopy-failure to develop
* commit 'dfdc27b04b2e8bcd1985ba90ce6553d8b3805fda':
  Fix release notes based on feedback from pull request.
  Fix for HDFFV-10800 H5Ocopy failure: The value for the H5F_LIBVER_V18 index in H5O_fill_ver_bounds[], the format version bounds array for fill value message, should be version 3 not 2.
2019-06-17 10:28:58 -05:00
Dana Robinson
cbc95dee3c Merge pull request #1741 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop to develop
* commit 'dbad1589008e2ef9e713c712ca5ffbf7c97159d0':
  Fixed problem with H5Fdelete "test" and split VFD.
2019-06-16 11:40:57 -05:00
Dana Robinson
dbad158900 Fixed problem with H5Fdelete "test" and split VFD. 2019-06-15 21:00:48 -07:00
Quincey Koziol
0525ee122f New hyperslab selection routines and new public selection iterator routines. 2019-06-15 21:25:28 -05:00
Dana Robinson
462b924eca Merge pull request #1739 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:aapl_test to develop
* commit 'ad168f5a7a08f6afd9ee506ce7c884fff994002a':
  Added the creation and use of an attribute access property list to testhdf5.
2019-06-15 17:25:01 -05:00
Dana Robinson
ad168f5a7a Added the creation and use of an attribute access property list to
testhdf5.
2019-06-15 12:44:36 -07:00
Larry Knox
68fb1c9f37 Merge pull request #1738 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit '6c3f90ae222a8d4e8d8edf172a6745028209b75c':
  Update MANIFEST for move of h5cc.in and h5redeploy.in to bin directory.
2019-06-15 14:30:03 -05:00
Dana Robinson
c9d41341d6 Merge pull request #1713 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:vol_dev_headers to develop
* commit '9ef56483f6447b60cf7568e2022aa5d8f193427c':
  Added missing DELETE enum value.
  Split VOL connector routines into separate headers: * H5VLconnector.h for terminal connector things * H5VLconnector_passthru.h for passthrough connector things
2019-06-15 14:18:04 -05:00
Larry Knox
6c3f90ae22 Update MANIFEST for move of h5cc.in and h5redeploy.in to bin directory. 2019-06-15 12:34:07 -05:00
Dana Robinson
9ef56483f6 Merge branch 'develop' into vol_dev_headers 2019-06-14 14:18:06 -07:00
Larry Knox
d5a262c424 Merge pull request #1736 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit '04dc4ef436b087cfc45030b9183386598d1b4bae':
  Moved h5cc.in and h5redeploy.in from tools/misc to bin directory.  They should always be built and installed whether tools are enabled or disabled.  Also added Makefile.am to bin to build h5redeploy and to install and uninstall them.  h5cc is created from h5cc.in by configure.
2019-06-14 15:20:45 -05:00
Dana Robinson
a2890b5d09 Added missing DELETE enum value. 2019-06-14 13:00:17 -07:00
Dana Robinson
278dc38530 Merge branch 'develop' into vol_dev_headers 2019-06-14 12:48:57 -07:00
Scot Breitenfeld
7b97bcf972 Merge pull request #1737 in HDFFV/hdf5 from ~BRTNFLD/hdf5_msb:develop to develop
* commit 'a0f9e97769e1aa4890b1481182f55b8373d431fa':
  fixed linked library for testing
2019-06-14 14:43:09 -05:00
M. Scot Breitenfeld
a0f9e97769 fixed linked library for testing 2019-06-14 14:30:48 -05:00
Dana Robinson
bb9370d777 Merge branch 'develop' into vol_dev_headers
Also moved the wrapper functions from the H5VLconnector.h to
H5VLconnector_passthru.h
2019-06-14 12:23:06 -07:00
Scot Breitenfeld
57d5c207d9 Merge pull request #1734 in HDFFV/hdf5 from ~BRTNFLD/hdf5_msb:develop to develop
* commit '79916da3036f94a368ba8b29cb18c507e9939e16':
  added missing MOD dependency
  added missing MOD dependency
2019-06-14 13:13:31 -05:00
Vailin Choi
dfdc27b04b Fix release notes based on feedback from pull request. 2019-06-14 12:33:07 -05:00
M. Scot Breitenfeld
79916da303 added missing MOD dependency 2019-06-14 12:08:59 -05:00
Larry Knox
04dc4ef436 Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/~lrknox/hdf5_lrk into develop 2019-06-14 11:14:36 -05:00
Larry Knox
3dfc80a28a Moved h5cc.in and h5redeploy.in from tools/misc to bin directory. They
should always be built and installed whether tools are enabled or
disabled.  Also added Makefile.am to bin to build h5redeploy and
to install and uninstall them.  h5cc is created from h5cc.in by
configure.
2019-06-14 10:47:09 -05:00
M. Scot Breitenfeld
704c83217d Merge branch 'develop' of ssh://bitbucket.hdfgroup.org:7999/~brtnfld/hdf5_msb into develop 2019-06-14 09:39:26 -05:00
M. Scot Breitenfeld
0f947f953d added missing MOD dependency 2019-06-14 09:39:18 -05:00
Dana Robinson
650f9e616d Merge pull request #1727 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:H5Fdelete_vol_only to develop
* commit 'bb5e7822f447b8a175e807e2e7bad5e0192394e5':
  Fixed an error string typo
  Added H5Fdelete call and VOL support (but no VFD/native implementation).
2019-06-13 16:58:58 -05:00
Scot Breitenfeld
054059a30c Merge pull request #1733 in HDFFV/hdf5 from ~BRTNFLD/hdf5_msb:develop to develop
* commit 'd754a86c2412747be587633fb7e7180570b3f82a':
  updated static vol_connector build
  updated static vol_connector build
  fixed dependencies
  fixed invalid pointer
  removed unregistering native vol
  fix for cycle dependency
2019-06-13 16:24:54 -05:00
M. Scot Breitenfeld
d754a86c24 updated static vol_connector build 2019-06-13 16:23:55 -05:00
M. Scot Breitenfeld
022a3f97b1 Merge branch 'develop' of ssh://bitbucket.hdfgroup.org:7999/~brtnfld/hdf5_msb into develop 2019-06-13 15:48:01 -05:00
M. Scot Breitenfeld
b08685f503 updated static vol_connector build 2019-06-13 15:47:55 -05:00
M. Scot Breitenfeld
d1b43964b3 Merge branch 'develop' of ssh://bitbucket.hdfgroup.org:7999/~brtnfld/hdf5_msb into develop 2019-06-13 10:41:39 -05:00
M. Scot Breitenfeld
92bebb782e fixed dependencies 2019-06-13 10:41:31 -05:00
M. Scot Breitenfeld
e5d1da0224 fixed invalid pointer 2019-06-13 10:31:14 -05:00
M. Scot Breitenfeld
c348d7d606 removed unregistering native vol 2019-06-13 09:56:50 -05:00
M. Scot Breitenfeld
46a62130fa fix for cycle dependency 2019-06-13 09:23:12 -05:00
Scot Breitenfeld
9a82fa66d4 Merge pull request #1708 in HDFFV/hdf5 from ~BRTNFLD/hdf5_msb:H10621 to develop
* commit '0742c15fca95965ed4eb87c6d54f41bb07bd4526':
  makefile clean-up
  move the vol_info to an optional parameter
  added H5Pset_vol
  added vol connector
  added test for vol_connector
  removed H5VL constants
  removed VOLL NULL connector and replaced it with native VOL
  added connector_name test
  added missing files
  add tests
  added more tests
  added missing files
  Implemented VOL APIs and C constants, no tests
  Implemented VOL APIs and C constants, no tests
  initial API impl.
2019-06-12 16:06:21 -05:00
Larry Knox
7e929a9bec Merge pull request #1728 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:bugfix/HDFFV-9976-add-configuration-or-make-options to develop
* commit '6e1dc507240fba447c79827897b099e91b9dd5c1':
  Add release note for enable-tools and enable-tests options.
  Modified Makefile.ams for h5repack, h5watch and gif2h5 to allow disabling tests. Moved h5cc.in from tools/src/misc to src directory to always create h5cc whether or not tools are enabled. Added configuration status of tools and tests to libhdf5.settings.
  Add options to enable or disable building tools and tests.  The default is enabled for each.
2019-06-12 15:09:51 -05:00
Larry Knox
6e1dc50724 Add release note for enable-tools and enable-tests options. 2019-06-12 14:13:48 -05:00
Vailin Choi
8d72e5e3e0 Fix for HDFFV-10800 H5Ocopy failure:
The value for the H5F_LIBVER_V18 index in H5O_fill_ver_bounds[], the format
version bounds array for fill value message, should be version 3 not 2.
2019-06-12 12:55:12 -05:00
Larry Knox
5385f032dd Modified Makefile.ams for h5repack, h5watch and gif2h5 to allow
disabling tests.
Moved h5cc.in from tools/src/misc to src directory to always create h5cc
whether or not tools are enabled.
Added configuration status of tools and tests to libhdf5.settings.
2019-06-12 10:21:41 -05:00
M. Scot Breitenfeld
0742c15fca makefile clean-up 2019-06-12 09:21:59 -05:00
Dana Robinson
bb5e7822f4 Fixed an error string typo 2019-06-11 14:39:39 -07:00
Dana Robinson
436250369a Merge pull request #1725 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:h5dump_memory_bug to develop
* commit '0cf52525d5b45cc7cf6f89267da76b46ffa75f90':
  H5A__free() was renamed to H5A__shared_free() and now requires attr->shared to not be NULL.
  Fixed a memory issue where unfreed shared attribute dataspace memory tripped an assert in our memory sanity checks.
  Fixed a memory issue where unfreed shared attribute dataspace memory tripped an assert in our memory sanity checks.
2019-06-11 16:37:13 -05:00
Dana Robinson
0cf52525d5 H5A__free() was renamed to H5A__shared_free() and now requires
attr->shared to not be NULL.
2019-06-11 14:14:13 -07:00
M. Scot Breitenfeld
893641990a move the vol_info to an optional parameter 2019-06-11 14:28:10 -05:00
Dana Robinson
3fd4f270fd Merge branch 'h5dump_memory_bug' of https://bitbucket.hdfgroup.org/scm/~derobins/hdf5_der into h5dump_memory_bug 2019-06-11 11:03:04 -07:00
Dana Robinson
c4ee9ef7c0 Fixed a memory issue where unfreed shared attribute dataspace memory
tripped an assert in our memory sanity checks.

Fixes HDFFV-10774.
2019-06-11 10:59:41 -07:00
Dana Robinson
2bd041f878 Added H5Fdelete call and VOL support (but no VFD/native implementation). 2019-06-11 09:04:23 -07:00
Dana Robinson
5098894ffd Fixed a memory issue where unfreed shared attribute dataspace memory
tripped an assert in our memory sanity checks.

Fixes HDFFV-10774.
2019-06-11 04:09:27 -07:00
Dana Robinson
48b0ff7724 Merge pull request #1721 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:release_fixes to develop
* commit 'a668acfc6cb541cc6afa63f964af3d808d058883':
  Minor tweaks to the VOL function comments to bring them in line with the RM.
2019-06-06 14:37:07 -05:00
Dana Robinson
a668acfc6c Minor tweaks to the VOL function comments to bring them in line with the
RM.
2019-06-06 11:06:04 -07:00
Larry Knox
54a07f556c Add options to enable or disable building tools and tests. The default
is enabled for each.
2019-06-05 23:20:01 -05:00
Larry Knox
f6b15437dd Merge pull request #1720 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit '931abe94244c94e106835250e2f723f634a61c8c':
  Move set (MAX_PROC_COUNT 8) back to HPC options files.
  Move check for MPI defined to enable parallel from options scripts in HPC to config/cmake/HDF5options.cmake.
2019-06-05 17:19:19 -05:00
Larry Knox
931abe9424 Move set (MAX_PROC_COUNT 8) back to HPC options files. 2019-06-05 16:44:10 -05:00
Larry Knox
c64bfbd8a0 Move check for MPI defined to enable parallel from options scripts in HPC to config/cmake/HDF5options.cmake. 2019-06-05 16:35:04 -05:00
Allen Byrne
d3a6a9ed8f Merge pull request #1715 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '1ecce0e9bbc07cb3eb6f6bc1fca9d42c9e9c8176':
  Fix minor issues
  Update macro
  Java formatting of args
2019-06-05 15:06:53 -05:00
Dana Robinson
b31a53bfcb Merge pull request #1719 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:vipl to develop
* commit 'a18727bc77c90a9925cabbde8d8ec46c757c6254':
  Added a VOL initialization property list type.
2019-06-05 15:04:06 -05:00
Dana Robinson
cb82b6c222 Merge pull request #1718 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:release_fixes to develop
* commit '9557087c0ed7811301610155654bf58d6583e38c':
  Minor warning fixes: * Fixed an error return value in H5Aint.c (NULL --> FAIL) * Added H5VL_FILE_GET_FILENO to H5trace.c
2019-06-05 11:26:12 -05:00
Dana Robinson
a18727bc77 Added a VOL initialization property list type. 2019-06-05 04:34:36 -07:00
Dana Robinson
9557087c0e Minor warning fixes:
* Fixed an error return value in H5Aint.c (NULL --> FAIL)
* Added H5VL_FILE_GET_FILENO to H5trace.c
2019-06-05 04:32:08 -07:00
Vailin Choi
82f656aed0 Merge pull request #5 in ~VCHOI/my_third_fork from develop to bugfix/new_shutdown_fsm
* commit '66699f2c7d889e725ced0fba579621ef97726b41': (49 commits)
  Minor fixes/improvements for VDS performance improvement (HDFFV-10693).
  Refactor H5S__hyper_project_intersection to operate directly on span trees, improving performance and removing the conditionn that the extents be equal.
  Refactor H5S__hyper_project_intersection to operate directly on span trees, improving performance and removing the conditionn that the extents be equal.
  Added code that disallows unregistering the native VOL connector.
  Rename H5VL_ID_GET_NAME to H5VL_OBJECT_GET_NAME
  Correct message command syntax
  Assign NULL to func_name/file_name/desc error entry pointers when clearing error stack
  Avoid clearing error stack when calling H5Eget_msg()
  Reorder lines in HDF5config.cmake so that additions to end of $HPC-HDF5options scripts will take precedence.
  updated -E option
  remove -M option
  added -M HPC to ctest command
  fixed missing paralle test
  Adding cross-compilation for theta (ANL) and qsub (COBALT) batch controls.
  Add note about CMake and spaces in paths
  Putting ctest command in variable CMD did not work for skipping failing tests.
  Code improvement Description:     Fixed potential division by zero occurrences and changed an assert to     if statement. Platforms tested:     Linux/64 (jelly)     Linux/64 (platypus)     Darwin (osx1011test)
  Combine "collective group and dataset write" and "independent group and dataset read" tests into one test.  The second test is dependent on the file created by the first test, and will not pass when run by itself.
  Add final list of single testphdf5 tests
  Pull a test from default testphdf5
  ...
2019-06-04 15:44:08 -05:00
Neil Fortner
66699f2c7d Merge pull request #1717 in HDFFV/hdf5 from ~NFORTNE2/hdf5_naf:develop to develop
Complete rework of H5S__hyper_project_intersection. Addresses VDS performance issues raised in HDFFV-10693.

* commit 'd3e242eba1ba98726ed64b14e75f6adee724bea7':
  Minor fixes/improvements for VDS performance improvement (HDFFV-10693).
  Refactor H5S__hyper_project_intersection to operate directly on span trees, improving performance and removing the conditionn that the extents be equal.
  Refactor H5S__hyper_project_intersection to operate directly on span trees, improving performance and removing the conditionn that the extents be equal.
2019-06-04 11:06:23 -05:00
Binh-Minh Ribler
c9ae1cf557 Merge pull request #1693 in HDFFV/hdf5 from ~BMRIBLER/hdf5-bmr:develop to develop
* commit '8a57a683391eed79aca80a7325ef152bb76ad0a6':
  Code improvement Description:     Fixed potential division by zero occurrences and changed an assert to     if statement. Platforms tested:     Linux/64 (jelly)     Linux/64 (platypus)     Darwin (osx1011test)
2019-06-03 13:16:02 -05:00
Neil Fortner
d3e242eba1 Merge branch 'develop' of ssh://bitbucket.hdfgroup.org:7999/~nfortne2/hdf5_naf into develop 2019-06-03 12:48:02 -05:00
Neil Fortner
45daa3d168 Minor fixes/improvements for VDS performance improvement (HDFFV-10693). 2019-06-03 12:42:22 -05:00
Allen Byrne
1ecce0e9bb Fix minor issues 2019-06-03 10:45:20 -05:00
Neil Fortner
988d6d0844 Refactor H5S__hyper_project_intersection to operate directly on span trees, improving performance and removing the conditionn that the extents be equal. 2019-05-31 19:32:35 -05:00
Neil Fortner
35a8a549f6 Refactor H5S__hyper_project_intersection to operate directly on span
trees, improving performance and removing the conditionn that the
extents be equal.
2019-05-31 19:26:56 -05:00
Jacob Smith
ad2a7f4789 First pass at repack consolidating external storage if layout given.
Checks out manually, tests still complain.
2019-05-31 17:24:26 -05:00
Allen Byrne
94d3aa7166 Update macro 2019-05-31 12:33:50 -05:00
Allen Byrne
748da4d3e2 Java formatting of args 2019-05-30 15:56:02 -05:00
Jacob Smith
cb6029196a Formatting changes, mostly. 2019-05-30 15:46:39 -05:00
Jacob Smith
a648183cc3 Add initial failing test for h5repack copying external data into new file. 2019-05-30 15:45:53 -05:00
Jacob Smith
449d6807d5 Modify code comments for clarity.
Some minor reformatting.
2019-05-28 14:31:42 -05:00
Jacob Smith
132efb2b69 Some minor reformatting.
Replace tabs with spaces.
2019-05-24 16:59:14 -05:00
Jacob Smith
eb93107f9f Add test that uses the family member FAPL setting. 2019-05-24 16:58:31 -05:00
Jacob Smith
ea8c99cc56 refactor h5repack_main.c -- remove some redundancy, formatting 2019-05-24 16:57:47 -05:00
Dana Robinson
4af633d1c4 Merge pull request #1714 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:H5VLunregister_native to develop
* commit '0afb76228e16e63d72a7dbacdbb894d34fe29722':
  Added code that disallows unregistering the native VOL connector.
2019-05-24 16:04:47 -05:00
Dana Robinson
0afb76228e Added code that disallows unregistering the native VOL connector. 2019-05-24 13:39:45 -07:00
Dana Robinson
d5a8b2a80c Split VOL connector routines into separate headers:
* H5VLconnector.h for terminal connector things
* H5VLconnector_passthru.h for passthrough connector things

Note that these headers are arranged such that they are included in
hdf5.h so VOL connectors only need to include that. The separation into
multiple headers is mainly for readability.
2019-05-24 02:22:08 -07:00
Jerome Soumagne
e1879a23ae Merge pull request #1706 in HDFFV/hdf5 from ~JSOUMAGNE/hdf5:topic_getloc to develop
* commit '982ed75720d7dece10623868cda22c46908baebe':
  Rename H5VL_ID_GET_NAME to H5VL_OBJECT_GET_NAME
2019-05-23 13:51:56 -05:00
Jerome Soumagne
982ed75720 Rename H5VL_ID_GET_NAME to H5VL_OBJECT_GET_NAME
Implement native H5VL_OBJECT_GET_NAME by addr
2019-05-23 13:48:04 -05:00
M. Scot Breitenfeld
2c79243111 added H5Pset_vol 2019-05-22 14:09:17 -05:00
Jordan Henderson
f37a17a6ce Merge pull request #1709 in HDFFV/hdf5 from ~JHENDERSON/hdf5:develop to develop
* commit '802b2927254b1de163589b1e4eaced47ee81ad07':
  Assign NULL to func_name/file_name/desc error entry pointers when clearing error stack
  Avoid clearing error stack when calling H5Eget_msg()
2019-05-21 09:51:36 -05:00
Allen Byrne
2717a0da8b Merge pull request #1710 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '0b086c3db2c6cd376b7bffb3236df1ef158ae80d':
  Correct message command syntax
  Add note about CMake and spaces in paths
2019-05-19 10:59:14 -05:00
Allen Byrne
0b086c3db2 Correct message command syntax 2019-05-17 15:14:20 -05:00
Jordan Henderson
802b292725 Assign NULL to func_name/file_name/desc error entry pointers when clearing error stack 2019-05-17 10:49:27 -05:00
Jordan Henderson
04f171d0cb Avoid clearing error stack when calling H5Eget_msg() 2019-05-17 10:48:04 -05:00
M. Scot Breitenfeld
4673a34825 added vol connector 2019-05-16 16:22:05 -05:00
M. Scot Breitenfeld
5e3dfa8bbe added test for vol_connector 2019-05-16 15:33:16 -05:00
M. Scot Breitenfeld
1f505e5ab2 removed H5VL constants 2019-05-16 15:20:32 -05:00
M. Scot Breitenfeld
32c4900e89 removed VOLL NULL connector and replaced it with native VOL 2019-05-16 15:05:12 -05:00
Allen Byrne
03da97d792 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '6eaef5ebd61b8019f66f51d3fe74ec3c1b1d4f0f':
  Reorder lines in HDF5config.cmake so that additions to end of $HPC-HDF5options scripts will take precedence.
  updated -E option
  remove -M option
  added -M HPC to ctest command
  fixed missing paralle test
  Adding cross-compilation for theta (ANL) and qsub (COBALT) batch controls.
2019-05-14 14:55:12 -05:00
Allen Byrne
6eaef5ebd6 Merge pull request #1705 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit '9406278103a7b72d3eacea9fbeaadbf34bf7e43a':
  Reorder lines in HDF5config.cmake so that additions to end of $HPC-HDF5options scripts will take precedence.
2019-05-14 14:51:21 -05:00
Jacob Smith
d1ed626845 Fit help message to 80 character width and clarify some details. 2019-05-14 13:53:28 -05:00
Larry Knox
9406278103 Reorder lines in HDF5config.cmake so that additions to end of $HPC-HDF5options scripts will take precedence. 2019-05-14 13:52:25 -05:00
Scot Breitenfeld
ef20b65be7 Merge pull request #1703 in HDFFV/hdf5 from ~BRTNFLD/hdf5_msb:develop to develop
* commit '6546c764d3d39028d2ec61da236cc69b44414127':
  updated -E option
  remove -M option
2019-05-10 16:07:27 -05:00
M. Scot Breitenfeld
6546c764d3 updated -E option 2019-05-10 16:07:12 -05:00
M. Scot Breitenfeld
b4b83f6733 Merge branch 'develop' of ssh://bitbucket.hdfgroup.org:7999/~brtnfld/hdf5_msb into develop 2019-05-10 15:51:27 -05:00
M. Scot Breitenfeld
44fdc3bf96 remove -M option 2019-05-10 15:45:47 -05:00
Scot Breitenfeld
5c5f6d9942 Merge pull request #1701 in HDFFV/hdf5 from ~BRTNFLD/hdf5_msb:develop to develop
* commit '19d2cea9aec648eb3c609dee4d2dc9baa101c967':
  added -M HPC to ctest command
2019-05-10 14:41:23 -05:00
M. Scot Breitenfeld
19d2cea9ae added -M HPC to ctest command 2019-05-10 14:34:56 -05:00
Scot Breitenfeld
c23118aff1 Merge pull request #1700 in HDFFV/hdf5 from ~BRTNFLD/hdf5_msb:develop to develop
* commit 'd786bedd18e6d521e240aa78bb633b66f8f975c8':
  fixed missing paralle test
2019-05-10 12:15:59 -05:00
M. Scot Breitenfeld
d786bedd18 Merge branch 'develop' of ssh://bitbucket.hdfgroup.org:7999/~brtnfld/hdf5_msb into develop 2019-05-10 12:13:31 -05:00
M. Scot Breitenfeld
aaacc50f64 fixed missing paralle test 2019-05-10 12:13:25 -05:00
Scot Breitenfeld
5b4fecaa39 Merge pull request #1699 in HDFFV/hdf5 from ~BRTNFLD/hdf5_msb:develop to develop
* commit 'cf6f2f039d8e1c98bdd9690357e2b4670f23ae4e':
  Adding cross-compilation for theta (ANL) and qsub (COBALT) batch controls.
2019-05-10 09:01:50 -05:00
M. Scot Breitenfeld
cf6f2f039d Adding cross-compilation for theta (ANL) and qsub (COBALT) batch controls. 2019-05-09 16:45:22 -05:00
Allen Byrne
7fdc2f7e20 Add note about CMake and spaces in paths 2019-05-07 10:03:20 -05:00
Larry Knox
68e34f7be1 Merge pull request #1695 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit 'df35529e3d0529e9df11806d267ef8c4779b79e3':
  Putting ctest command in variable CMD did not work for skipping failing tests.
2019-05-06 17:01:07 -05:00
Larry Knox
df35529e3d Putting ctest command in variable CMD did not work for skipping failing
tests.
2019-05-06 16:38:38 -05:00
Binh-Minh Ribler
8a57a68339 Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/~bmribler/hdf5-bmr into develop 2019-05-05 00:43:37 -05:00
Binh-Minh Ribler
bdf882ae39 Code improvement
Description:
    Fixed potential division by zero occurrences and changed an assert to
    if statement.
Platforms tested:
    Linux/64 (jelly)
    Linux/64 (platypus)
    Darwin (osx1011test)
2019-05-05 00:41:19 -05:00
Scot Breitenfeld
e0ff0e8dd5 Merge pull request #1692 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit '8a4f679fda20577c4528977d0ee9a7e4c5bee055':
  Combine "collective group and dataset write" and "independent group and dataset read" tests into one test.  The second test is dependent on the file created by the first test, and will not pass when run by itself.
2019-05-03 17:09:11 -05:00
Larry Knox
8a4f679fda Combine "collective group and dataset write" and "independent group and
dataset read" tests into one test.  The second test is dependent on the
file created by the first test, and will not pass when run by itself.
2019-05-03 16:08:22 -05:00
Scot Breitenfeld
d3a51964ae Merge pull request #1691 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '813d8fd597b030a248db6316dd98f738c0c61ea8':
  Add final list of single testphdf5 tests
2019-05-02 16:24:46 -05:00
Allen Byrne
813d8fd597 Add final list of single testphdf5 tests 2019-05-02 16:20:15 -05:00
hdftest
c389149d66 Merge pull request #1689 in HDFFV/hdf5 from ~HDFTEST/hdf5_hft:develop to develop
* commit 'ff596e9d356713a35dc35d9b5ba0439ed5ca29ac':
  Snapshot version 1.11 release 5.     Update version to 1.11.6.
2019-05-02 16:18:35 -05:00
Scot Breitenfeld
d7c6a99b7b Merge pull request #1690 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'b6bebb245b043fae546390c00288a069da785868':
  Pull a test from default testphdf5
2019-05-02 12:23:58 -05:00
Allen Byrne
b6bebb245b Pull a test from default testphdf5 2019-05-02 12:07:37 -05:00
hdftest
ff596e9d35 Merge branch 'develop' of ssh://bitbucket.hdfgroup.org:7999/~hdftest/hdf5_hft into develop 2019-05-02 10:43:30 -05:00
hdftest
1cec61a775 Snapshot version 1.11 release 5.
Update version to 1.11.6.
2019-05-02 10:42:53 -05:00
Scot Breitenfeld
6991bf332a Merge pull request #1688 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'c643cc05316e11471c4bef30cd09b9d4437f85fd':
  Pull out another failing test
2019-05-02 10:33:49 -05:00
Allen Byrne
c643cc0531 Pull out another failing test 2019-05-02 10:27:49 -05:00
Allen Byrne
2f406b8955 Merge pull request #1687 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'ee35fb8a7fe3804e4146c54020b6e2272ab251e3':
  Change default for HPC
  Correct var usage syntax
2019-05-01 16:42:50 -05:00
Allen Byrne
ee35fb8a7f Change default for HPC 2019-05-01 16:23:08 -05:00
Allen Byrne
c030a7123d Correct var usage syntax 2019-05-01 14:46:27 -05:00
Scot Breitenfeld
c30a24bb16 Merge pull request #1686 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '854223e3fcf5e90ad5fae25ff05deb4276ce001b':
  Add missing default
  Correct varname
  Separate out MPI tests that fail on MPI version
2019-05-01 14:33:21 -05:00
Allen Byrne
854223e3fc Add missing default 2019-05-01 14:09:06 -05:00
Allen Byrne
725f75baa7 Correct varname 2019-05-01 13:24:02 -05:00
Allen Byrne
e0de04d355 Separate out MPI tests that fail on MPI version 2019-05-01 12:31:55 -05:00
Allen Byrne
bbf07128b5 Merge pull request #1685 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '87e491da88d49134e20418733f64a3307b5cd74c':
  HDFFV-10776 missing compiler flags
2019-05-01 09:32:53 -05:00
Allen Byrne
87e491da88 HDFFV-10776 missing compiler flags 2019-04-30 16:42:08 -05:00
Allen Byrne
610f7626ae Merge pull request #1683 in HDFFV/hdf5 from ~JHENDERSON/hdf5:develop to develop
* commit '0a73ce19a4e7f57fe1bb06ca5be8d4697fe079aa':
  Fix Java JUnit-TestH5P failure on 32-bit arch
2019-04-30 15:38:30 -05:00
Jordan Henderson
0a73ce19a4 Fix Java JUnit-TestH5P failure on 32-bit arch 2019-04-30 15:32:37 -05:00
Quincey Koziol
206276d6f4 Merge pull request #1605 in HDFFV/hdf5 from merge_hyperslab_update_01 to develop
* commit '08b009cc4ab2a8d8d289697d6d4688c0e5c53c6e':
  Clean up if-else chain.
  Remove thread-local copy of hyperslab operation generation value.
  Core changes to selection code from the hyperslab_updates branch.
2019-04-29 21:33:17 -05:00
Dana Robinson
803339a432 Merge pull request #1681 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:is_accessible_test_love to develop
* commit '0c896fcdf9ebde870ead2dcee9a82e135554c28d':
  Missed an env check before strcmp.
2019-04-29 17:54:12 -05:00
Quincey Koziol
08b009cc4a Merge remote-tracking branch 'origin/develop' into merge_hyperslab_update_01 2019-04-29 17:51:55 -05:00
Dana Robinson
0c896fcdf9 Missed an env check before strcmp. 2019-04-29 14:50:13 -07:00
Binh-Minh Ribler
3d904f8141 Merge pull request #1667 in HDFFV/hdf5 from ~BMRIBLER/hdf5-bmr:develop to develop
* commit '3bc708078c6da432e68d7c8cda695ad7b794c860':
  Added more info to the function headers.
  Added new C++ wrappers - HDFFV-10622
2019-04-27 23:14:36 -05:00
Quincey Koziol
1a4b236aad Merge pull request #1676 in HDFFV/hdf5 from ~KOZIOL/hdf5:refactor_obj_create_params to develop
* commit '53ffbf4bf89350b5d6b90c11585f39af94209754':
  Cast enum to int, for strict varargs handling.
  Refactor group creation parameters to take them out of the group creation property list and pass them as normal function parameters.
  Warning cleanup
  Refactor link creation parameters from being passing as properties in the link creation property list to vararg function parameters.
  Minor cleanups
  Refactor attribute creation parameters to move parameters out of creation property list and into function parameters.
  A few minor cleanups
  Refactor dataset creation parameters out of the dataset creation property list and pass them as regular function parameters.
2019-04-26 17:45:34 -05:00
Dana Robinson
5c234fb5fd Merge pull request #1677 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:is_accessible_test_love to develop
* commit 'e66bf948a7acba0ddc76239f6d02f17c8b10eb0f':
  Fix for split VFD and file cleanup when testing H5Fis_hdf5 and H5Fis_accessible in tfile.c.
  Improvements to the H5Fis_accessible() and H5Fis_hdf5() tests in tfile.c. * General code tidying. * Expanded tests to work with multi-file VFDs.
2019-04-26 15:59:34 -05:00
Dana Robinson
e66bf948a7 Fix for split VFD and file cleanup when testing H5Fis_hdf5
and H5Fis_accessible in tfile.c.
2019-04-26 12:10:54 -07:00
Allen Byrne
61e171cad3 Merge pull request #1678 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'e2eaac93386feadef194962cb258e660038d39f1':
  ESE-97 add vol_plugin test to CMake builds
2019-04-26 10:01:00 -05:00
Quincey Koziol
53ffbf4bf8 Cast enum to int, for strict varargs handling. 2019-04-25 12:57:23 -05:00
Ray Lu
5b0e8ab4bb Merge pull request #1679 in HDFFV/hdf5 from ~SONGYULU/hdf5_ray:bugfix/HDFFV-10760-skipping-external_env-and-vds_env to develop
* commit '2c9025dcb96e5445ce878fa9e1d05fca738ae328':
  HDFFV-10760 Skipping external_env.c and vds_env.c for CMake to do VOL check and VFD check.  Temporarily skipping external_env.c and vds_env.c for VFD check and VOL check in CMake following the example of links_env. Leave them for future work.
2019-04-25 12:52:07 -05:00
Songyu Lu
2c9025dcb9 HDFFV-10760 Skipping external_env.c and vds_env.c for CMake to do VOL check and VFD check. Temporarily skipping external_env.c and vds_env.c for VFD check and VOL check in CMake following the example of links_env. Leave them for future work. 2019-04-25 11:55:45 -05:00
Allen Byrne
e2eaac9338 ESE-97 add vol_plugin test to CMake builds 2019-04-25 10:44:06 -05:00
Dana Robinson
568c3624de Improvements to the H5Fis_accessible() and H5Fis_hdf5() tests
in tfile.c.
* General code tidying.
* Expanded tests to work with multi-file VFDs.
2019-04-25 01:07:42 -07:00
Quincey Koziol
6d912bf0b5 Refactor group creation parameters to take them out of the group creation
property list and pass them as normal function parameters.
2019-04-25 01:12:46 -05:00
Quincey Koziol
ff0b56fa38 Warning cleanup 2019-04-25 01:12:28 -05:00
Quincey Koziol
b8bb6aec7e Refactor link creation parameters from being passing as properties in the
link creation property list to vararg function parameters.
2019-04-25 00:53:58 -05:00
Quincey Koziol
07c3a39bf5 Minor cleanups 2019-04-25 00:53:16 -05:00
Quincey Koziol
9fadb39656 Refactor attribute creation parameters to move parameters out of creation
property list and into function parameters.
2019-04-24 23:33:56 -05:00
Quincey Koziol
59635ab747 A few minor cleanups 2019-04-24 23:22:28 -05:00
Quincey Koziol
0ca6b1305f Refactor dataset creation parameters out of the dataset creation property
list and pass them as regular function parameters.
2019-04-24 22:31:36 -05:00
M. Scot Breitenfeld
1d6641ee3a added connector_name test 2019-04-24 15:17:10 -05:00
M. Scot Breitenfeld
fc769f425f added missing files 2019-04-24 13:59:26 -05:00
M. Scot Breitenfeld
7dd53873f7 Merge branch 'develop' into H10621 2019-04-24 12:57:30 -05:00
Ray Lu
4fbe80acc2 Merge pull request #1672 in HDFFV/hdf5 from ~SONGYULU/hdf5_ray:bugfix/HDFFV-10658-performance-drop-between-1.8-fix4 to develop
* commit '562e8ec915c18f14390558399186aba7e3ead9c1':
  Changing file names and directory names to avoid possible conflict during parallel 'make check'.
2019-04-23 21:22:59 -05:00
Jordan Henderson
1adec082f2 Merge pull request #1670 in HDFFV/hdf5 from ~JHENDERSON/hdf5:develop to develop
* commit '4a4c0bc3972cde177c0a6e2a191b1fa187846c08':
  Fix issue with H5Iiterate always stopping with an error after the first iteration
2019-04-23 20:10:37 -05:00
Songyu Lu
562e8ec915 Changing file names and directory names to avoid possible conflict during parallel 'make check'. 2019-04-23 16:40:02 -05:00
Jordan Henderson
4a4c0bc397 Fix issue with H5Iiterate always stopping with an error after the first iteration 2019-04-23 14:12:58 -05:00
Quincey Koziol
544a36e75e Merge pull request #1666 in HDFFV/hdf5 from ~KOZIOL/hdf5:unwrap_vol_callback to develop
* commit '62198c2436ac3787afb49fa990d1ba8204264dba':
  Add an 'unwrap' VOL callback, so that connectors can unwrap an underlying object without closing it.  (Especially needed for pass-through connectors)
2019-04-23 11:06:04 -05:00
Binh-Minh Ribler
3bc708078c Added more info to the function headers. 2019-04-22 18:50:33 -05:00
Ray Lu
11dff70dc1 Merge pull request #1668 in HDFFV/hdf5 from ~SONGYULU/hdf5_ray:bugfix/HDFFV-10658-performance-drop-between-1.8-fix3 to develop
* commit '2c47094d4004c916d16667a23efe018db2c0558d':
  Changing file names to avoid possible conflicts during parallel test.
2019-04-22 11:45:06 -05:00
Songyu Lu
2c47094d40 Changing file names to avoid possible conflicts during parallel test. 2019-04-22 10:23:38 -05:00
Binh-Minh Ribler
c3d7708e53 Added new C++ wrappers - HDFFV-10622
Description:
    Added wrappers for H5Pset/get_create_intermediate_group:
        // Specifies in property list whether to create missing
        // intermediate groups
        void setCreateIntermediateGroup(bool crt_intmd_group) const;

        // Determines whether property is set to enable creating missing
        // intermediate groups
        bool getCreateIntermediateGroup() const;
Platforms tested:
    Linux/64 (jelly)
    Linux/64 (platypus)
    Darwin (osx1011test)
2019-04-21 23:18:36 -05:00
Quincey Koziol
62198c2436 Add an 'unwrap' VOL callback, so that connectors can unwrap an underlying
object without closing it.  (Especially needed for pass-through connectors)
2019-04-21 14:45:54 -05:00
Ray Lu
500f6cccbd Merge pull request #1665 in HDFFV/hdf5 from ~SONGYULU/hdf5_ray:bugfix/HDFFV-10658-performance-drop-between-1.8-fix2 to develop
* commit 'f42b6ace1899bd1e720bbdf4873e6f6e61bee39b':
  Changing output file names to avoid possible conflict during parallel build and test, especially on jelly.
2019-04-19 14:01:34 -05:00
Songyu Lu
f42b6ace18 Changing output file names to avoid possible conflict during parallel build and test, especially on jelly. 2019-04-19 12:55:39 -05:00
Ray Lu
73dda77dc7 Merge pull request #1663 in HDFFV/hdf5 from ~SONGYULU/hdf5_ray:bugfix/HDFFV-10658-performance-drop-between-1.8_fix to develop
* commit 'cd9e9a1b5a20617f885ca6dc686625abb8a79a58':
  Minor fix: marking an internal function of the test for export.
2019-04-18 14:50:29 -05:00
Songyu Lu
cd9e9a1b5a Minor fix: marking an internal function of the test for export. 2019-04-18 14:23:24 -05:00
Vailin Choi
11c8c98352 Merge pull request #1654 in HDFFV/hdf5 from ~VCHOI/my_third_fork:bugfix/HDFFV-10579-h5arename-function-fails-when to develop
* commit '53a5c3be903ce7c24d02a6bd3a8d9b07a3f82404':
  Change the checking to H5I_INVALID_HID in test_attr_dense_rename().
  Fix for HDFFV-10579 H5Arename fails when creation order of attributes is tracked. The attribute needs to be removed from the creation order index v2 B-tree before re-inserting the renamed attribute via H5A__dense_insert().
2019-04-18 13:15:14 -05:00
Allen Byrne
80ec7cfd6a Merge pull request #1662 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'cc5f91d1d2b1373fae57afc4e79a530b19343949':
  Fix CMake errors
2019-04-18 11:44:50 -05:00
Allen Byrne
cc5f91d1d2 Fix CMake errors 2019-04-18 11:35:11 -05:00
Ray Lu
bdb11caa53 Merge pull request #1600 in HDFFV/hdf5 from ~SONGYULU/hdf5_ray:HDFFV-10658-performance-drop-from-1-8 to develop
* commit 'b5ef82a1786605ae86502bc82086047720b7d4ca': (21 commits)
  Moving the handling of null prefix into H5_combine_path.
  Changing the prefix of external file and VDS from empty string to null for performance improvement.
  Improving the condition checking of empty string.
  Replacing string operation strdup with assignment for empty string.
  Adding back links_env.out which I accidentally removed in my previous commit.
  Taking out two unnecessary diff output files.
  Taking out unnecessary diff files for output.
  Adding some comments.
  Some coding style changes.
  Adding the standard output files for the external_env.c and vds_env.c tests.
  Small correction for my previous commit.
  Forgot to add external_common.c and external_common.h.
  Updated CMake for the splitting of external.c and vds.c.
  Minor fix: removal of unnecessary enum values.
  Minor fixes: updating the test vds_env.c according to the set up of vds.c.
  Left out this file in previous commit.
  HDFFV-10658 - setting and getting properties in API context: 1. switched to use the existing H5F_prefix_open_t for enum type; 2. put the common private function used by external.c and external_env.c into external_common.c
  This commit basically has the following changes: 1. restored the datatype, dataspace, and LCPL of the dataset for VOL connector back to the properties. 2. splitted external.c and vds.c because they called HDsetenv in the program, instead using shell scripts to set the environment variables. 3. changed H5CX_get_vds_prefix and H5CX_get_ext_file_prefix to use H5P_peek instead of H5P_get.
  HDFFV-10658: I left out this file in my previous commit.
  HDFFV-10658: 1. moving HDgetenv to dataset initialization stage to reduce the overhead; 2. restoring the retrieval of three vol properties to H5P_get instead of using API context to prepare for Quincey's upcoming refactoring work.
  ...
2019-04-18 10:25:18 -05:00
Songyu Lu
b5ef82a178 Moving the handling of null prefix into H5_combine_path. 2019-04-17 17:42:01 -05:00
Songyu Lu
fc47e2e07a Changing the prefix of external file and VDS from empty string to null for performance improvement. 2019-04-17 16:53:40 -05:00
Songyu Lu
b90b5be59b Improving the condition checking of empty string. 2019-04-17 12:35:44 -05:00
Quincey Koziol
90efe04bee Merge pull request #1659 in HDFFV/hdf5 from ~KOZIOL/hdf5:vds_set_extent_fix to develop
* commit '659e212e119b4920d2bd41b397cfb0e958817eba':
  Correct set extent operation on VDS to iterate over # of used sub-datasets instead of # of allocated sub-datasets.
2019-04-17 12:31:30 -05:00
Songyu Lu
1c6bce2f9b Replacing string operation strdup with assignment for empty string. 2019-04-17 11:16:51 -05:00
Quincey Koziol
659e212e11 Correct set extent operation on VDS to iterate over # of used sub-datasets
instead of # of allocated sub-datasets.
2019-04-16 18:07:29 -05:00
Vailin Choi
53a5c3be90 Change the checking to H5I_INVALID_HID in test_attr_dense_rename(). 2019-04-16 11:47:13 -05:00
Allen Byrne
1bcad080c1 Merge pull request #1658 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '2420ea11ad510121cc7553378a6bfa6fd8fdcd05':
  Remove conflict symbols
  HDFFV-10741 - remove SKIP_ERRSTK_TESTS option
2019-04-15 15:13:48 -05:00
Allen Byrne
2420ea11ad Remove conflict symbols 2019-04-15 15:03:01 -05:00
Allen Byrne
68bddef35d HDFFV-10741 - remove SKIP_ERRSTK_TESTS option 2019-04-15 14:46:23 -05:00
Larry Knox
4d224f4f19 Merge pull request #1657 in HDFFV/hdf5 from ~BYRN/hdf5_merge_adb:develop to develop
* commit '901c65eb2b102cbe431b82a6f72510b2f417ae6a':
  Fix merge conflicts
2019-04-15 14:36:51 -05:00
Allen Byrne
901c65eb2b Fix merge conflicts 2019-04-15 14:35:30 -05:00
Allen Byrne
685c4e08ae Merge pull request #1656 in HDFFV/hdf5 from ~BYRN/hdf5_merge_adb:develop to develop
* commit '4c9efd70b0e6616fa2551a5a3a9b51bac0e54a1c':
  Fix fortran omission
  Fix java for new H5Fget_info function
2019-04-15 14:31:23 -05:00
Allen Byrne
4c9efd70b0 Fix fortran omission 2019-04-15 14:27:02 -05:00
Dana Robinson
5d3d1da927 Merge pull request #1652 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:check_passthrough_vol to develop
* commit '9ee3d472113fc3e66ef34e40a0990ed07a2824bc':
  Renamed the HDF5_TEST_VOL option to HDF5_TEST_PASSTHROUGH_VOL.
  Renamed the autotools check-vol target to check-passthrough-vol.
2019-04-15 13:43:16 -05:00
Allen Byrne
6bf109d1ae Fix java for new H5Fget_info function 2019-04-15 11:19:29 -05:00
Songyu Lu
6fdf7008c1 Adding back links_env.out which I accidentally removed in my previous commit. 2019-04-15 09:39:57 -05:00
Songyu Lu
bd137d2c59 Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/~songyulu/hdf5_ray into HDFFV-10658-performance-drop-from-1-8 2019-04-15 09:28:12 -05:00
Quincey Koziol
5696c02a3c Merge pull request #1653 in HDFFV/hdf5 from ~KOZIOL/hdf5:get_fileno to develop
* commit 'd7e1464058515d07b838741f65a77977224814de':
  Add C++, Java, and FORTRAN wrappers and tests for H5Fget_fileno
  Add trace macro.
  Add H5Fget_fileno() API routine.
2019-04-13 23:06:38 -05:00
Quincey Koziol
d7e1464058 Add C++, Java, and FORTRAN wrappers and tests for H5Fget_fileno 2019-04-13 22:58:16 -05:00
Quincey Koziol
4918d443bb Add trace macro. 2019-04-12 18:21:35 -05:00
Vailin Choi
4e05249f98 Fix for HDFFV-10579 H5Arename fails when creation order of attributes is tracked.
The attribute needs to be removed from the creation order index v2 B-tree before
re-inserting the renamed attribute via H5A__dense_insert().
2019-04-12 14:51:37 -05:00
Vailin Choi
66184e567c Merge pull request #3 in ~VCHOI/my_third_fork from develop to bugfix/HDFFV-10579-h5arename-function-fails-when
* commit '52276f3713eec584044bc72d4724507848cfeba0':
  Modifications based on PR feedback: (1) Add H5Sdeprec.c to src/CMakeLists.txt (2) Add test for H5Sencode1.
  Modification for num_elem based on PR feedback.
  HDFFV-10365: Changes as described in the RFC: H5Sencode/H5Sdecode Format Change. This also addresses HDFFV-10255: H5Sencode/decode performance issue.
2019-04-12 13:52:32 -05:00
Quincey Koziol
2eac0fccbc Add H5Fget_fileno() API routine. 2019-04-11 22:22:21 -05:00
Songyu Lu
02cc5ba678 Merge branch 'HDFFV-10658-performance-drop-from-1-8' of https://bitbucket.hdfgroup.org/scm/~songyulu/hdf5_ray into HDFFV-10658-performance-drop-from-1-8 2019-04-11 17:32:00 -05:00
songyulu
0243449188 Taking out two unnecessary diff output files. 2019-04-11 17:23:04 -05:00
Songyu Lu
d6ada6ff1f Taking out unnecessary diff files for output. 2019-04-11 16:50:06 -05:00
Songyu Lu
6e8bd1280a Adding some comments. 2019-04-11 16:10:54 -05:00
Songyu Lu
1d1e96f1dd Some coding style changes. 2019-04-11 15:51:21 -05:00
Dana Robinson
9ee3d47211 Renamed the HDF5_TEST_VOL option to HDF5_TEST_PASSTHROUGH_VOL. 2019-04-11 11:27:12 -07:00
Songyu Lu
c3c3c1e142 Adding the standard output files for the external_env.c and vds_env.c tests. 2019-04-11 12:59:07 -05:00
Dana Robinson
ff51724bdb Renamed the autotools check-vol target to check-passthrough-vol. 2019-04-11 10:46:22 -07:00
Songyu Lu
a58c01aac1 Small correction for my previous commit. 2019-04-11 10:19:45 -05:00
Songyu Lu
c0e05f0747 Forgot to add external_common.c and external_common.h. 2019-04-10 16:48:42 -05:00
Songyu Lu
417cd9da87 Updated CMake for the splitting of external.c and vds.c. 2019-04-10 16:02:28 -05:00
Songyu Lu
bf6479fcee Minor fix: removal of unnecessary enum values. 2019-04-10 11:22:24 -05:00
Songyu Lu
06002f8c22 Minor fixes: updating the test vds_env.c according to the set up of vds.c. 2019-04-10 10:21:38 -05:00
Songyu Lu
c0b13e078e Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/~songyulu/hdf5_ray into HDFFV-10658-performance-drop-from-1-8 2019-04-09 18:11:06 -05:00
Songyu Lu
04d07d967a Left out this file in previous commit. 2019-04-09 17:40:24 -05:00
Songyu Lu
477dda3c0d HDFFV-10658 - setting and getting properties in API context:
1. switched to use the existing H5F_prefix_open_t for enum type;
2. put the common private function used by external.c and external_env.c into external_common.c
2019-04-09 16:20:19 -05:00
Vailin Choi
52276f3713 Merge pull request #1645 in HDFFV/hdf5 from ~VCHOI/my_third_fork:bugfix/HDFFV-10365-h5sencode-decode-bug-when-num to develop
* commit '3ccc98e256587c43f6ba5a31a2cf9d922f4e1773':
  Modifications based on PR feedback: (1) Add H5Sdeprec.c to src/CMakeLists.txt (2) Add test for H5Sencode1.
  Modification for num_elem based on PR feedback.
  HDFFV-10365: Changes as described in the RFC: H5Sencode/H5Sdecode Format Change. This also addresses HDFFV-10255: H5Sencode/decode performance issue.
2019-04-08 14:11:28 -05:00
Vailin Choi
3ccc98e256 Modifications based on PR feedback:
(1) Add H5Sdeprec.c to src/CMakeLists.txt
(2) Add test for H5Sencode1.
2019-04-08 12:33:45 -05:00
Songyu Lu
d8ff8da46c Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/~songyulu/hdf5_ray into HDFFV-10658-performance-drop-from-1-8 2019-04-08 11:17:59 -05:00
Vailin Choi
c57ae99612 Modification for num_elem based on PR feedback. 2019-04-08 11:09:11 -05:00
Vailin Choi
2886cd9e45 HDFFV-10365: Changes as described in the RFC: H5Sencode/H5Sdecode Format Change.
This also addresses HDFFV-10255: H5Sencode/decode performance issue.
2019-04-06 16:55:14 -05:00
Quincey Koziol
92f30fd3d9 Merge remote-tracking branch 'origin/develop' into merge_hyperslab_update_01 2019-04-06 16:20:55 -05:00
Allen Byrne
74677ba5ce Merge pull request #1637 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '2e2301e683f0aadf3541b596416d04bbc7d690c0':
  Update java m4 to latest
2019-04-06 10:33:05 -05:00
Vailin Choi
bd54c3022b Merge pull request #2 in ~VCHOI/my_third_fork from develop to bugfix/HDFFV-10365-h5sencode-decode-bug-when-num
* commit 'f38fa53fee5e8caf1aa1a5356b48d692eb3a3d59':
  Fix for HDFFV-10271 hyperslab encoding incorrect length.
2019-04-05 22:20:43 -05:00
Vailin Choi
f38fa53fee Merge pull request #1644 in HDFFV/hdf5 from ~VCHOI/my_third_fork:bugfix/HDFFV-10271-version-2-hyperslab-encoding to develop
* commit '7fe665ebff3e86aaf1eef92199f757a5c0d1fe80':
  Fix for HDFFV-10271 hyperslab encoding incorrect length.
2019-04-05 22:18:00 -05:00
Vailin Choi
ace8e1a64f Merge pull request #1 in ~VCHOI/my_third_fork from develop to bugfix/HDFFV-10365-h5sencode-decode-bug-when-num
* commit '227b7131d1e4b5edce1c3eecc9a7e7f560363093':
  Move dataspace selection-specific coding to the callbacks as preparation for the H5Sencode changes.
2019-04-05 22:14:05 -05:00
Vailin Choi
227b7131d1 Merge pull request #1642 in HDFFV/hdf5 from ~VCHOI/my_third_fork:bugfix/separate_selection_specific to develop
* commit '4142d8b7d4ac48cffcc2b92af4a54352b329865b':
  Move dataspace selection-specific coding to the callbacks as preparation for the H5Sencode changes.
2019-04-05 22:08:24 -05:00
Vailin Choi
7fe665ebff Fix for HDFFV-10271 hyperslab encoding incorrect length. 2019-04-05 11:34:58 -05:00
Allen Byrne
2e2301e683 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '9e934e75fa9a66bdd95fd3656ca0c19f910123c7':
  Set V112 as the latest format and extend the arrays of version bounds.
2019-04-05 10:36:43 -05:00
Quincey Koziol
ef7f3ef177 Merge remote-tracking branch 'origin/develop' into merge_hyperslab_update_01 2019-04-05 10:35:38 -05:00
Vailin Choi
9e934e75fa Merge pull request #1639 in HDFFV/hdf5 from ~VCHOI/my_third_fork:bugfix/add_v112_version_bounds to develop
* commit '0073f198978dea0116bd74816b3119dfeb09144b':
  Set V112 as the latest format and extend the arrays of version bounds.
2019-04-05 10:23:05 -05:00
Allen Byrne
eb3db27532 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '87ddba868fdf0e14d004a697e09c12d0ca949b67':
  Setting API context for fapl and libver_bounnds in preparation for the H5Sencode changes.
2019-04-05 09:36:12 -05:00
Vailin Choi
87ddba868f Merge pull request #1640 in HDFFV/hdf5 from ~VCHOI/my_third_fork:bugfix/api_context_fapl_libver to develop
* commit 'c50c2696e8b3885e2966b7e027ba219e65ef3646':
  Setting API context for fapl and libver_bounnds in preparation for the H5Sencode changes.
2019-04-04 23:36:15 -05:00
Vailin Choi
4142d8b7d4 Move dataspace selection-specific coding to the callbacks as preparation for the H5Sencode changes. 2019-04-04 23:31:01 -05:00
Vailin Choi
c50c2696e8 Setting API context for fapl and libver_bounnds in preparation for the H5Sencode changes. 2019-04-04 17:25:28 -05:00
Quincey Koziol
dde0a1c93a Merge remote-tracking branch 'origin/develop' into merge_hyperslab_update_01 2019-04-04 16:45:34 -05:00
Vailin Choi
0073f19897 Set V112 as the latest format and extend the arrays of version bounds. 2019-04-04 16:29:37 -05:00
Songyu Lu
5e7cccb5a2 Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/~songyulu/hdf5_ray into HDFFV-10658-performance-drop-from-1-8 2019-04-04 13:16:27 -05:00
Allen Byrne
73f01f98cd Update java m4 to latest 2019-04-04 12:59:43 -05:00
Songyu Lu
50d9a397ab This commit basically has the following changes:
1. restored the datatype, dataspace, and LCPL of the dataset for VOL connector back to the properties.
2. splitted external.c and vds.c because they called HDsetenv in the program, instead using shell scripts to set the environment variables.
3. changed H5CX_get_vds_prefix and H5CX_get_ext_file_prefix to use H5P_peek instead of H5P_get.
2019-04-04 11:03:05 -05:00
Quincey Koziol
aa696a4771 Merge pull request #1598 in HDFFV/hdf5 from env_vol_load to develop
* commit 'fc945999d00fc66f3b6251115f8bc13d4b18814c':
  Specify the default VOL connector to use with an environment variable.
2019-04-03 18:09:27 -05:00
Quincey Koziol
fc945999d0 Merge remote-tracking branch 'origin/develop' into env_vol_load 2019-04-03 17:27:10 -05:00
Allen Byrne
3d99a6a793 Merge pull request #1621 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '5774e451dde6410ab2491acda309c43517a49935':
  Add help info
  Update for namespace
  Add namespace option to dependencies
  Correct examples for packaging
  HDFFV-10741 -  add option to skip tool error stack tests
2019-04-03 16:33:06 -05:00
Allen Byrne
5774e451dd Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '7ff1e967b18bf8ba4583b27866b8c29c462af857':
  Correct namespace handling
2019-04-03 15:12:52 -05:00
Allen Byrne
7ff1e967b1 Merge pull request #1635 in HDFFV/hdf5 from ~BYRN/hdf5_merge_adb:develop to develop
* commit '761070f561801a8eb8704a992764c3ad4716ca7c':
  Correct namespace handling
2019-04-03 15:06:28 -05:00
Allen Byrne
761070f561 Correct namespace handling 2019-04-03 15:02:42 -05:00
Allen Byrne
cb0ff923de Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '844f38c6462f42a9a3a6002de6a4acb0520b8fb7':
  Correct entry
  Snapshot version 1.11 release 4. Update version to 1.11.5.
  Allow option to select NAMESPACE
  Correct examples for packaging
2019-04-03 08:56:57 -05:00
Allen Byrne
844f38c646 Merge pull request #1634 in HDFFV/hdf5 from ~BYRN/hdf5_merge_adb:develop to develop
* commit '9f7d66e0f4dfc4b710f91aad26c38287b159ed9c':
  Correct entry
2019-04-03 08:56:03 -05:00
Allen Byrne
9f7d66e0f4 Correct entry 2019-04-03 08:55:11 -05:00
Allen Byrne
bd2317cc11 Add help info 2019-04-03 08:52:28 -05:00
Allen Byrne
bf7a1c1fcd Merge pull request #1626 in HDFFV/hdf5 from ~BYRN/hdf5_merge_adb:develop to develop
* commit 'b968f9273a30124cb53ab0771fee5de437d20967':
  Allow option to select NAMESPACE
2019-04-02 13:37:20 -05:00
Allen Byrne
cab705c8cb Update for namespace 2019-04-02 12:57:02 -05:00
Allen Byrne
8a09caf90a Add namespace option to dependencies 2019-04-02 12:30:16 -05:00
Larry Knox
a61ba73814 Merge pull request #1630 in HDFFV/hdf5 from ~HDFTEST/hdf5_hft:develop to develop
* commit '7a0ac416c9e42a650d99b77feefbb2dc2df9a155':
  Snapshot version 1.11 release 4. Update version to 1.11.5.
2019-04-02 12:20:16 -05:00
hdftest
7a0ac416c9 Snapshot version 1.11 release 4.
Update version to 1.11.5.
2019-04-01 16:11:28 -05:00
Allen Byrne
b968f9273a Allow option to select NAMESPACE 2019-03-28 16:40:45 -05:00
Allen Byrne
c8494e34d1 Merge pull request #1625 in HDFFV/hdf5 from ~BYRN/hdf5_merge_adb:develop to develop
* commit '90a58f2b2f5a612ce7326fbfe3a476e31d148084':
  Correct examples for packaging
2019-03-28 16:37:40 -05:00
Allen Byrne
90a58f2b2f Correct examples for packaging 2019-03-28 16:37:11 -05:00
Allen Byrne
0d6fd55212 Correct examples for packaging 2019-03-28 13:41:31 -05:00
Allen Byrne
6e2e461087 HDFFV-10741 - add option to skip tool error stack tests 2019-03-26 14:00:34 -05:00
Scot Breitenfeld
b530043b7a Merge pull request #1614 in HDFFV/hdf5 from ~BRTNFLD/hdf5_msb:develop to develop
* commit 'a1d7a9b8592e8b842b940f43733cc2df5d5d81bb':
  HDFFV-10738 Wrong INTENT for H5LTread_dataset_double_f
2019-03-26 13:30:37 -05:00
M. Scot Breitenfeld
a1d7a9b859 Merge branch 'develop' of ssh://bitbucket.hdfgroup.org:7999/~brtnfld/hdf5_msb into develop 2019-03-25 10:02:01 -05:00
M. Scot Breitenfeld
b2423350f4 HDFFV-10738 Wrong INTENT for H5LTread_dataset_double_f
Fixed.

Also fixed INTENT issues for H5DS, H5IM and H5TB when reading or getting.
2019-03-25 10:00:31 -05:00
Binh-Minh Ribler
d818edb110 Merge pull request #1610 in HDFFV/hdf5 from ~BMRIBLER/hdf5_bmr_fixbug:develop to develop
* commit 'fe104cc38ffbdb39d3e04da107d86ebfc7e8b622':
  Test improvement Description     Moved the new tests to a more appropriate test function. Platforms tested:     Linux/64 (jelly)
  Fixed HDFFV-10210 and HDFFV-10587 Description:     - Added parameter validation (HDFFV-10210)     - Added detection of division by zero (HDFFV-10587 - CVE-2018-17438)     - Fixed typos in various tests Platforms tested:     Linux/64 (jelly)     Linux/64 (platypus)     Darwin (osx1011test)
2019-03-23 21:10:30 -05:00
Quincey Koziol
7dce8523c1 Merge remote-tracking branch 'origin/develop' into merge_hyperslab_update_01 2019-03-23 11:50:48 -05:00
Songyu Lu
e09e2fc4ad HDFFV-10658: I left out this file in my previous commit. 2019-03-22 10:03:06 -05:00
Songyu Lu
9622aac313 HDFFV-10658: 1. moving HDgetenv to dataset initialization stage to reduce the overhead; 2. restoring the retrieval of three vol properties to H5P_get instead of using API context to prepare for Quincey's upcoming refactoring work. 2019-03-22 09:53:15 -05:00
Dana Robinson
02abb65dde Merge pull request #1611 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:tfile_vfd to develop
* commit 'b66df06dbf607741127137ebfda373890cb37649':
  Changes that show the right way to iterate over enums.
  Changes that show the right way to iterate over enums.
  Used the H5_INC_ENUM macro to squash enum value increment warnings.
2019-03-21 13:21:15 -05:00
Dana Robinson
b66df06dbf Merge branch 'tfile_vfd' of https://bitbucket.hdfgroup.org/scm/~derobins/hdf5_der into tfile_vfd 2019-03-21 10:19:32 -07:00
Dana Robinson
85e2214d55 Changes that show the right way to iterate over enums. 2019-03-21 10:18:16 -07:00
Dana Robinson
ef8aa13174 Changes that show the right way to iterate over enums. 2019-03-21 10:09:55 -07:00
Binh-Minh Ribler
fe104cc38f Test improvement
Description
    Moved the new tests to a more appropriate test function.
Platforms tested:
    Linux/64 (jelly)
2019-03-21 11:09:17 -05:00
Dana Robinson
97cdcc47e4 Used the H5_INC_ENUM macro to squash enum value increment warnings. 2019-03-21 01:15:09 -07:00
Quincey Koziol
4f8a844a00 Clean up if-else chain. 2019-03-20 17:13:48 -05:00
Quincey Koziol
962fb0ccb8 Merge remote-tracking branch 'origin/develop' into merge_hyperslab_update_01 2019-03-20 17:02:21 -05:00
Allen Byrne
b01b84f245 Merge pull request #1608 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '7a589a0a39bc3b46981f4902e5fc1150c05ecebd':
  Fix CMake error in name
2019-03-20 16:05:30 -05:00
Binh-Minh Ribler
222346f373 Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/~bmribler/hdf5_bmr_fixbug into develop 2019-03-20 14:07:40 -05:00
Binh-Minh Ribler
7add52ff4f Fixed HDFFV-10210 and HDFFV-10587
Description:
    - Added parameter validation (HDFFV-10210)
    - Added detection of division by zero (HDFFV-10587 - CVE-2018-17438)
    - Fixed typos in various tests
Platforms tested:
    Linux/64 (jelly)
    Linux/64 (platypus)
    Darwin (osx1011test)
2019-03-20 14:03:48 -05:00
Quincey Koziol
adb0928827 Remove thread-local copy of hyperslab operation generation value. 2019-03-19 16:40:07 -05:00
Quincey Koziol
93b72d60ab Merge remote-tracking branch 'origin/develop' into merge_hyperslab_update_01 2019-03-19 16:20:54 -05:00
Allen Byrne
7a589a0a39 Fix CMake error in name 2019-03-19 14:47:08 -05:00
Dana Robinson
604b67df19 Merge pull request #1607 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop to develop
* commit '2e867d2a6dd5f330011f20333064aa0c12464d59':
  Commented out memcpy overlap check while we investigate parallel filters issues.
2019-03-18 22:39:30 -05:00
Dana Robinson
2e867d2a6d Commented out memcpy overlap check while we investigate
parallel filters issues.
2019-03-18 19:06:58 -07:00
Dana Robinson
c50b7c4b7e Merge pull request #1606 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop to develop
* commit '2db272521e2da51663aa65fc9297cd6cf763e641':
  Yanked check for memcpy n > 0
2019-03-17 20:34:15 -05:00
Dana Robinson
2db272521e Yanked check for memcpy n > 0 2019-03-17 16:01:31 -07:00
Quincey Koziol
cda6273737 Merge remote-tracking branch 'origin/develop' into merge_hyperslab_update_01 2019-03-16 23:01:18 -05:00
Dana Robinson
f0d22e54c7 Merge pull request #1604 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop to develop
* commit '5c80d3d91284bdcd048d9325b1a601d0ddfca8bd':
  - Added H5MMprivate.h #includes where needed - Added casts to quiet H5MM_memcpy warnings - Removed char * casts from HDmemcpy
  Added an H5MM_memcpy call that checks for buffer overlap.
2019-03-16 21:58:38 -05:00
Dana Robinson
5c80d3d912 - Added H5MMprivate.h #includes where needed
- Added casts to quiet H5MM_memcpy warnings
- Removed char * casts from HDmemcpy
2019-03-16 16:02:06 -07:00
Dana Robinson
a98747c0f9 Added an H5MM_memcpy call that checks for buffer overlap. 2019-03-16 08:06:52 -07:00
Quincey Koziol
9d86314f8b Core changes to selection code from the hyperslab_updates branch. 2019-03-15 20:14:41 -05:00
Dana Robinson
d2591ce377 Merge pull request #1602 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:wopen_squash to develop
* commit '0c20c65e2f3abf390ad87c9167daca4cdff2de39':
  Added the HDopen work-around on windows to pio_engine.c
  Adds _wopen support on Windows so that files with UTF-8 names can be opened.
2019-03-15 10:47:02 -05:00
Dana Robinson
0c20c65e2f Added the HDopen work-around on windows to pio_engine.c 2019-03-15 08:45:38 -07:00
Neil Fortner
a0c5d9a1d3 Merge pull request #1594 in HDFFV/hdf5 from ~NFORTNE2/hdf5_naf:develop to develop
Fix issues with direct chunk operations and the single chunk index.

* commit 'c812a6c9ec5ff440dc405167c54b86fdb18dcfa4':
  Fix issue with direct chunk write not updating the "last chunk" index cache.  Fix issues involving datasets being "no allocated" when they contain cached raw data.
2019-03-15 10:22:12 -05:00
Neil Fortner
c812a6c9ec Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/hdffv/hdf5 into develop 2019-03-15 10:20:25 -05:00
Dana Robinson
750b5c2930 Adds _wopen support on Windows so that files with UTF-8 names
can be opened.

Fixes: HDFFV-2714, HDFFV-3914, HDFFV-3895, HDFFV-8237, HDFFV-10413, HDFFV-10691
2019-03-15 00:41:39 -07:00
Jerome Soumagne
0ea7aa89ff Merge pull request #1601 in HDFFV/hdf5 from ~JSOUMAGNE/hdf5:topic_thread_private to develop
* commit 'dc69df49e6a8896606c9e4bd0987613a02f7a25a':
  CMake: fix pthread linking to only be private
2019-03-13 15:25:23 -05:00
Jerome Soumagne
dc69df49e6 CMake: fix pthread linking to only be private 2019-03-13 13:54:35 -05:00
Songyu Lu
594cd93543 HDFFV-10658: setting and getting properties in API context:
1. external file prefix and VDS prefix.
2. the datatype, dataspace, and LCPL of the dataset for VOL connector.
2019-03-13 10:20:30 -05:00
Quincey Koziol
e6b8ebe954 Merge remote-tracking branch 'origin/develop' into env_vol_load 2019-03-12 11:49:03 -05:00
Quincey Koziol
07baf44a86 Merge pull request #1599 in HDFFV/hdf5 from preserve_lib_state to develop
* commit '86598573641dfa27278c9e29df0fa79bd7d8e07f':
  Add API routines to retrieve, restore, reset, and free library state.
2019-03-12 11:48:11 -05:00
Quincey Koziol
8659857364 Add API routines to retrieve, restore, reset, and free library state.
(Primarily for use in the async VOL connector, which has to schedule API
operations for future execution and then restore the state of the library when
the operation actually executes)
2019-03-11 17:29:14 -05:00
M. Scot Breitenfeld
6682f51a11 add tests 2019-03-11 11:34:10 -05:00
M. Scot Breitenfeld
7c927a3590 added more tests 2019-03-11 11:32:49 -05:00
Quincey Koziol
deeb302747 Specify the default VOL connector to use with an environment variable.
This implicitly adds support for changing the VOL connector for command-line
tools or any application linked with the library.

Also, add 'make check-vol' support for all directories, clearing up necessary
issues in testing scripts, etc.
2019-03-09 21:41:38 -06:00
Ray Lu
679b49d43d Merge pull request #1597 in HDFFV/hdf5 from ~SONGYULU/hdf5_ray:HDFFV-10705-memory-leak-in-scale-offset-2 to develop
* commit '5f22afff3a05a2c8fc694ddb0c7e1081a660b398':
  Added a note of bug fix for HDFFV-10705.
2019-03-08 14:28:17 -06:00
Songyu Lu
5f22afff3a Added a note of bug fix for HDFFV-10705. 2019-03-08 13:51:27 -06:00
Dana Robinson
a56a97f979 Merge pull request #1595 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop to develop
* commit 'fc3f606d5c30d614b7e6cddaf4d0dafd80987bec':
  Fixed the MANIFEST
2019-03-07 17:47:13 -06:00
Dana Robinson
fc3f606d5c Fixed the MANIFEST 2019-03-07 14:38:11 -08:00
M. Scot Breitenfeld
07fde1e25c Merge branch 'develop' into H10621 2019-03-07 14:47:38 -06:00
Larry Knox
8d2a047c25 Merge pull request #1593 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit '775e3740d64ca9a8a31ded673e93815d76387dad':
  Update documents following DHF5 1.10.5 release.
2019-03-07 12:51:27 -06:00
Neil Fortner
faec33960f Fix issue with direct chunk write not updating the "last chunk" index
cache.  Fix issues involving datasets being "no allocated" when they
contain cached raw data.
2019-03-06 16:57:42 -06:00
Quincey Koziol
cdec6ca87f Merge pull request #1592 in HDFFV/hdf5 from dset_ohdr_min_fix to develop
* commit '33db9f56449c974fed6b4a8a19072546bcd31e15':
  Fix typo.
  Move 'minimize dataset object header flag' into API context
2019-03-06 10:18:33 -06:00
Quincey Koziol
33db9f5644 Fix typo. 2019-03-05 17:33:13 -06:00
Larry Knox
775e3740d6 Update documents following DHF5 1.10.5 release. 2019-03-05 17:23:56 -06:00
Quincey Koziol
b8468e6fdb Move 'minimize dataset object header flag' into API context 2019-03-05 10:36:28 -06:00
Ray Lu
5182e73d5e Merge pull request #1588 in HDFFV/hdf5 from ~SONGYULU/hdf5_ray:HDFFV-10705-memory-leak-in-scale-offset to develop
* commit 'b23079de3af4bfb7aa0508fb81aacd67a76c2114':
  HDFFV-10705: Fixed memory leak in scale offset filter.
2019-03-01 11:32:14 -06:00
Songyu Lu
b23079de3a HDFFV-10705: Fixed memory leak in scale offset filter. 2019-02-28 14:36:38 -06:00
Allen Byrne
d2dfe6ccbe Merge pull request #1582 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '64f21ec6397d00e45ff4d41e70c5131241be587e':
  Correct CMake examples for a binary install
  Correct varname
2019-02-27 13:34:23 -06:00
Allen Byrne
64f21ec639 Correct CMake examples for a binary install 2019-02-27 11:13:54 -06:00
Allen Byrne
6e77a5800e Correct varname 2019-02-26 10:40:40 -06:00
Quincey Koziol
d0329ea063 Merge pull request #1580 in HDFFV/hdf5 from update_vol_callbacks to develop
* commit 'd6663b95ac7e9e378b24bd721ea4403ca98d4adf':
  Revise "management" VOL callbacks into 'info' and object 'wrap / retrieval' classes.
2019-02-25 10:02:08 -06:00
Quincey Koziol
d6663b95ac Revise "management" VOL callbacks into 'info' and object 'wrap / retrieval'
classes.
2019-02-23 17:02:29 -06:00
Jordan Henderson
7e792d7795 Merge pull request #1571 in HDFFV/hdf5 from ~JHENDERSON/hdf5:develop to develop
* commit '8a4371f69ae07619fa9561431b9ee9df9d5b3e47':
  Minor fix in h5str_sprintf for NULL region references
2019-02-22 08:39:30 -06:00
Jordan Henderson
8a4371f69a Minor fix in h5str_sprintf for NULL region references 2019-02-21 22:39:57 -06:00
Jerome Soumagne
342cad2a3d Merge pull request #1569 in HDFFV/hdf5 from ~JSOUMAGNE/hdf5:topic_threadsafe to develop
* commit 'bcf5c400c06bf06820b25c37eceaa97245f15f1f':
  Fix CMake H5_HAVE_THREADSAFE to set value in H5pubconf.h
2019-02-21 18:18:39 -06:00
Jerome Soumagne
bcf5c400c0 Fix CMake H5_HAVE_THREADSAFE to set value in H5pubconf.h
Add REQUIRED to find_package(Threads)

Link against thread library if static and not WIN32 platform
2019-02-21 16:39:37 -06:00
Dana Robinson
065d63b4a4 Merge pull request #1466 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:c_stdlib_posix_call_cleanup to develop
* commit '32ea4e72f1e85e0e7ff6457aae0bd210e56d1cad':
  C and POSIX call cleanup
2019-02-20 15:41:02 -06:00
Dana Robinson
32ea4e72f1 Merge branch 'develop' into c_stdlib_posix_call_cleanup 2019-02-19 14:49:20 -08:00
Allen Byrne
b901552b1c Merge pull request #1559 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '6d07eb126e63b025199a5fe68f41a42269b5921b':
  Update standard check
  Fix typo
  HDFFV-10703 Update version match logic
  HDFFV-10703 revert pre-3.11 option
  HDFFV-10703 macro vars need quotes
  HDFFV-10703 Update CMake commands to latest standard
  Use correct variable name
2019-02-18 11:02:42 -06:00
Allen Byrne
6d07eb126e Update standard check 2019-02-17 13:56:54 -06:00
Allen Byrne
a27d1b909d Fix typo 2019-02-17 11:17:19 -06:00
Allen Byrne
67bc117efe Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '5ad3891d9b861593ebe25d540bed2d913eb83aba':
  Remove ' ' (typo).
  Code improvement
  Removed an extra "using" statement
  Adding documentation
  More changes to align with incoming selection improvements.
  Added C++ wrapper for H5Ovisit2
  Adding a C++ wrapper
2019-02-17 09:42:00 -06:00
Larry Knox
5ad3891d9b Merge pull request #1558 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit 'f69e11efa827521231813496a1ca1243dd0e1cba':
  Remove ' ' (typo).
2019-02-16 20:01:26 -06:00
Larry Knox
f69e11efa8 Remove ' ' (typo). 2019-02-16 19:02:44 -06:00
Binh-Minh Ribler
a9283319a9 Merge pull request #1547 in HDFFV/hdf5 from ~BMRIBLER/hdf5_bmr_cpp5:develop to develop
C++ wrapper for H5Ovisit2

* commit '6c212353c45ef84b5c977c6019e4d72263534aea':
  Code improvement
  Removed an extra "using" statement
  Adding documentation
  Added C++ wrapper for H5Ovisit2
  Adding a C++ wrapper
2019-02-16 07:47:46 -06:00
Binh-Minh Ribler
6c212353c4 Code improvement
Description:
    Removed dead code and accidentally leftover code
Platforms tested:
    Linux/64 (jelly) - very minor
2019-02-16 00:47:47 -06:00
Allen Byrne
d16c4f59c2 HDFFV-10703 Update version match logic 2019-02-15 16:40:13 -06:00
Allen Byrne
0116375ed2 HDFFV-10703 revert pre-3.11 option 2019-02-15 16:22:31 -06:00
Allen Byrne
58e6e3e102 HDFFV-10703 macro vars need quotes 2019-02-15 16:04:06 -06:00
Allen Byrne
122b63a5a2 HDFFV-10703 Update CMake commands to latest standard 2019-02-15 15:48:24 -06:00
Quincey Koziol
e1046db0e6 Merge pull request #1548 in HDFFV/hdf5 from merge_hyperslab_updates_04 to develop
* commit '320eaf91b9adb36bb0fed9264d460e4a808200b7':
  More changes to align with incoming selection improvements.
2019-02-15 14:12:16 -06:00
Binh-Minh Ribler
f2f890fd82 Removed an extra "using" statement 2019-02-14 19:40:10 -06:00
Binh-Minh Ribler
dcf93b3ec5 Adding documentation
Description
    Added detail about the argument "fields" of H5Object::visit.
2019-02-14 19:27:02 -06:00
Quincey Koziol
320eaf91b9 More changes to align with incoming selection improvements. 2019-02-14 16:20:32 -06:00
Binh-Minh Ribler
268128e520 Added C++ wrapper for H5Ovisit2 2019-02-14 15:47:24 -06:00
Allen Byrne
6ea0dafa41 Use correct variable name 2019-02-14 15:47:02 -06:00
Binh-Minh Ribler
61abf991a1 Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/~bmribler/hdf5_bmr_cpp5 into develop 2019-02-14 15:37:41 -06:00
Binh-Minh Ribler
4a4ec03dfd Adding a C++ wrapper
Description:
    - Added a wrapper for H5Ovisit2 to class H5Object
        // Recursively visit elements reachable from this object.
        void visit(H5_index_t idx_type, H5_iter_order_t order,
                   visit_operator_t user_op, void *op_data, unsigned int fields);
    - Fixed various typos in documentation
Platforms tested:
    Linux/64 (jelly)
    Linux/64 (platypus)
    Darwin (osx1011test)
2019-02-14 15:35:04 -06:00
Allen Byrne
81687043d4 Merge pull request #1544 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'b5a4f470cdf7113c0691cca6fb201672c4e1d86d':
  Use STREQUAL
  Add command to build options and check defines
  Skip testing of cache_image test
  CMake if statement correction
2019-02-14 15:28:31 -06:00
Allen Byrne
b5a4f470cd Use STREQUAL 2019-02-14 15:28:02 -06:00
Allen Byrne
d676456b54 Add command to build options and check defines 2019-02-14 15:03:05 -06:00
Allen Byrne
35e9128c7e Skip testing of cache_image test 2019-02-14 12:52:01 -06:00
Allen Byrne
2268685c08 CMake if statement correction 2019-02-14 11:20:17 -06:00
Quincey Koziol
10cdff5ca4 Merge pull request #1540 in HDFFV/hdf5 from merge_hyperslab_changes_01 to develop
* commit 'fb5d1a37c11bca613175a48262a2147e99c9dede':
  Align develop with incoming hyperslab_updates branch changes.
2019-02-13 18:13:18 -06:00
Allen Byrne
40589e28d8 Merge pull request #1542 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'b95f05638ce40ccd944248f5865a248f39ef0d10':
  TRILAB-111 fixes for parallel testing
2019-02-13 17:05:25 -06:00
Allen Byrne
b95f05638c TRILAB-111 fixes for parallel testing 2019-02-13 15:53:59 -06:00
Quincey Koziol
fb5d1a37c1 Merge remote-tracking branch 'origin/develop' into merge_hyperslab_changes_01 2019-02-13 10:27:33 -06:00
Larry Knox
50b85e0330 Merge pull request #1539 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '3ed1ac0f1b760fe84ec009de19550d98f0b38071':
  Add missing toolchain include for cross-compile
  KNL option for batch scripts
2019-02-13 09:31:53 -06:00
Allen Byrne
3ed1ac0f1b Add missing toolchain include for cross-compile 2019-02-13 08:24:27 -06:00
Quincey Koziol
b5305b25a6 Align develop with incoming hyperslab_updates branch changes. 2019-02-12 21:51:15 -06:00
Allen Byrne
8c22f41801 KNL option for batch scripts 2019-02-12 15:51:42 -06:00
Jordan Henderson
112b813196 Merge pull request #1534 in HDFFV/hdf5 from ~JHENDERSON/hdf5:develop to develop
* commit '3acd486b83f319579b1c6884c90289b0eb1d44a6':
  Fixes for JNI updates
2019-02-12 13:42:15 -06:00
Jordan Henderson
3acd486b83 Fixes for JNI updates 2019-02-12 11:56:42 -06:00
Jordan Henderson
8f42566f7a Merge pull request #1523 in HDFFV/hdf5 from ~JHENDERSON/hdf5:develop to develop
* commit '8f447bd3564a88738b9a26b1b0ac3bba785efd39':
  Add RELEASE.txt note for collective metadata read fixes
  Fix some collective metadata read issues
2019-02-11 22:24:06 -06:00
Jordan Henderson
8f447bd356 Add RELEASE.txt note for collective metadata read fixes 2019-02-11 19:15:56 -06:00
Jordan Henderson
34508f0620 Merge in latest from develop 2019-02-11 19:13:39 -06:00
Jordan Henderson
65a820ae89 Fix some collective metadata read issues 2019-02-11 18:31:23 -06:00
Allen Byrne
fa83ab9f7c Merge pull request #1533 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '6f71b2cdcf3326b1d7bc67cf664b56d2f4056bfd':
  Refactor mpi test names
2019-02-11 12:47:02 -06:00
Allen Byrne
6f71b2cdcf Refactor mpi test names 2019-02-11 12:42:46 -06:00
Larry Knox
e2b6e72e7c Merge pull request #1530 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'edcbc9966f5c742970ad32eb50a7925fcf7ab677':
  Refactor parallel test names
  Rename parallel tests to start with PAR_
  Distinguish parallel performance tests
  Set the full generator name
  Add new cmake copy file tests to ignore
  Use correct values for other file versions
  CMake script changes to simplify execution
2019-02-11 12:05:24 -06:00
Allen Byrne
edcbc9966f Refactor parallel test names 2019-02-11 12:01:25 -06:00
Allen Byrne
f8d5add80b Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'a3a90e79afda2351f16181ec3592b96caceffbe1':
  Re-write of Java JNI error handling
2019-02-11 11:11:05 -06:00
Allen Byrne
d98faf5703 Rename parallel tests to start with PAR_ 2019-02-11 11:09:43 -06:00
Allen Byrne
a3a90e79af Merge pull request #1532 in HDFFV/hdf5 from ~JHENDERSON/hdf5_merge:develop to develop
* commit 'cc6a61215e508d047ed6aa2daf67475cfe34ee4d':
  Re-write of Java JNI error handling
2019-02-11 11:07:01 -06:00
Jordan Henderson
cc6a61215e Re-write of Java JNI error handling 2019-02-11 10:58:58 -06:00
Allen Byrne
f7bab665bb Distinguish parallel performance tests 2019-02-11 10:53:13 -06:00
Allen Byrne
691b92ff9c Set the full generator name 2019-02-11 10:09:32 -06:00
Allen Byrne
742894ce88 Add new cmake copy file tests to ignore 2019-02-11 08:56:14 -06:00
Allen Byrne
648a21473f Use correct values for other file versions 2019-02-08 21:38:39 -06:00
Allen Byrne
d0be2f5840 CMake script changes to simplify execution 2019-02-08 10:48:49 -06:00
Quincey Koziol
4300ca6234 Merge pull request #1528 in HDFFV/hdf5 from add_id_type_to_vol_wrap_cb to develop
* commit '163dcebec5d853b720dcb64b5e9828670b963773':
  Add ID type (of eventual hid_t) to the VOL "wrap" callback.
2019-02-07 16:20:26 -06:00
Jordan Henderson
0d1d61951f Merge pull request #1527 in HDFFV/hdf5 from ~JHENDERSON/hdf5_merge:develop to develop
* commit '28b9af4f28df6c0e4f7fbf1ce4a0f50e1797b4d3':
  Fix test issue in testpar/t_dset.c with MPI-2 implementations
2019-02-07 15:11:58 -06:00
Jordan Henderson
28b9af4f28 Fix test issue in testpar/t_dset.c with MPI-2 implementations 2019-02-07 14:31:32 -06:00
Quincey Koziol
163dcebec5 Add ID type (of eventual hid_t) to the VOL "wrap" callback. 2019-02-07 14:31:26 -06:00
Allen Byrne
865e35ea01 Merge pull request #1524 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '36e3d1600a3f9d771cfb9b4475f23c57d4b10280':
  Refactor out timeout values
  Correct name of variable
  Remove F2003 Option and references
  Remove obsolete file
  Update examples version
  Update to example reference version
  Switch OFF if compression source is not available
  Fail configure if SZIP/ZLIB is requested but not found
2019-02-07 12:07:26 -06:00
Allen Byrne
36e3d1600a Refactor out timeout values 2019-02-06 16:41:58 -06:00
Allen Byrne
5ba4266a04 Correct name of variable 2019-02-06 11:02:16 -06:00
Vailin Choi
c7977ec2f8 Merge pull request #1522 in HDFFV/hdf5 from ~VCHOI/my_hdf5_fork:develop to develop
* commit '7f5741825db0737db5ac46c43009681508a73002':
  Add release notes information.
  Modification based on feedback from pull request.
  Modification based on feedback from pull request.
  There is performance issue when closing an object.  The slow down is due to the search of the "tag_list" to find out the "corked" status of an object. The fix: (1)  Add a counter "num_objs_corked" in the cache structure to track the number of "corked" objects. (2) Skip the search of "tag_list" if the counter is zero i.e. no "corked" objects.
2019-02-06 10:49:51 -06:00
Vailin Choi
7f5741825d Add release notes information. 2019-02-06 10:48:30 -06:00
Allen Byrne
e73197077b Remove F2003 Option and references 2019-02-06 10:10:46 -06:00
Allen Byrne
3ebfd7edd4 Remove obsolete file 2019-02-06 08:45:59 -06:00
Allen Byrne
a476f5348e Update examples version 2019-02-06 08:38:55 -06:00
Allen Byrne
ee9771425f Update to example reference version 2019-02-06 08:37:11 -06:00
Vailin Choi
7d124cb796 Modification based on feedback from pull request. 2019-02-05 18:13:11 -06:00
Vailin Choi
e272e64e74 Modification based on feedback from pull request. 2019-02-05 17:04:04 -06:00
Allen Byrne
abd74c8310 Switch OFF if compression source is not available 2019-02-05 15:44:38 -06:00
Allen Byrne
18e875f75f Fail configure if SZIP/ZLIB is requested but not found 2019-02-05 15:25:30 -06:00
Vailin Choi
34f028070e Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/~vchoi/my_hdf5_fork into develop 2019-02-04 22:51:57 -06:00
Vailin Choi
7f718e9ea2 There is performance issue when closing an object. The slow down is due to the search of
the "tag_list" to find out the "corked" status of an object.
The fix:
(1)  Add a counter "num_objs_corked" in the cache structure to track the number
of "corked" objects.
(2) Skip the search of "tag_list" if the counter is zero i.e. no "corked" objects.
2019-02-04 22:30:48 -06:00
Dana Robinson
c7d04ee3af Merge pull request #1520 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:cmake_tweaks to develop
* commit '91c7ff81dcac1af7a7b609698aa69f0c213a6184':
  Added a line for the CMake pread/write option to INSTALL_CMake.txt.
2019-02-04 12:43:25 -06:00
Dana Robinson
91c7ff81dc Added a line for the CMake pread/write option to INSTALL_CMake.txt. 2019-02-04 10:11:59 -08:00
Larry Knox
08001e2f3f Merge pull request #1518 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit '6c2a4b728f3c8eadb18d4e10d41bdbd7d1c8f3e8':
  Add LOCAL_BATCH_SCRIPT_ARG variable for submitting account information and other batch command variations with ctest command.
  Add batchscript options that work when running ctest directly.
2019-02-04 08:48:55 -06:00
Larry Knox
6c2a4b728f Add LOCAL_BATCH_SCRIPT_ARG variable for submitting account information
and other batch command variations with ctest command.
2019-02-04 08:46:57 -06:00
Larry Knox
d2624dae03 Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/~lrknox/hdf5_lrk into develop 2019-02-03 21:34:25 -06:00
Larry Knox
dddc940bdf Add batchscript options that work when running ctest directly. 2019-02-03 21:33:16 -06:00
Larry Knox
30df67700c Merge pull request #1517 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit 'c348d453b583ec9092152e6aef1f7fa9854cf5d9':
  Correct H5DIFF to PH5DIFF in *ctestS.sl.in.cmake list of parallel tests reserved for *ctestP.sl.cmake. Revise options to run batch tests and alternative options for cross compile in HPC/*-HDF5options.cmake.
  Change examples file to zip for CMake zip file.
  Update bin/release for filename changes and HPC-CMake tar file corrections.
  Add new files to MANIFEST. Update permissions for raybsub to 755.
2019-02-02 22:45:55 -06:00
Larry Knox
c348d453b5 Correct H5DIFF to PH5DIFF in *ctestS.sl.in.cmake list of parallel tests
reserved for *ctestP.sl.cmake.
Revise options to run batch tests and alternative options for cross
compile in HPC/*-HDF5options.cmake.
2019-02-02 08:02:48 -06:00
Dana Robinson
2d4f58adf0 Merge pull request #1515 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:pread_vfd_squash to develop
* commit '055208b71c573be3d4b1047b840d4d8b255bc25e':
  Minor tweak to CMake preadwrite entry.
  Updated sec2, log, and core VFDs to use pread/pwrite when available (can be controlled via a configure/CMake option)
2019-02-01 16:01:22 -06:00
Dana Robinson
055208b71c Minor tweak to CMake preadwrite entry. 2019-02-01 13:23:54 -08:00
Dana Robinson
f90e5bdc62 Merge pull request #1516 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:valgrind_fixes to develop
* commit '5f1f231310bcb3278f11a51e1ea47782f6ee3235':
  Updated H5Dio.c comment.
  Fixed a valgrind issue with the unprotect log message. The logging call was placed after the point where the cache entry was freed. The fix was to just use the entry's address directly in the log call instead of the entry itself.
  Fixed a bug revealed by the dtransform test. A datatype transform buffer needed to be calloc'd.
2019-02-01 15:14:15 -06:00
Dana Robinson
5f1f231310 Updated H5Dio.c comment. 2019-02-01 13:12:39 -08:00
Larry Knox
cc7ce0eb8b Change examples file to zip for CMake zip file. 2019-02-01 12:19:28 -06:00
Larry Knox
eb84f922c8 Update bin/release for filename changes and HPC-CMake tar file
corrections.
2019-02-01 10:21:53 -06:00
Larry Knox
5352bf4971 Add new files to MANIFEST.
Update permissions for raybsub to 755.
2019-02-01 08:57:52 -06:00
Larry Knox
b0e202a206 Merge pull request #1508 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit 'bae744199b69eb7c3f5eda2441cca30cb8c6175f':
  Add more specific batch scripts. Add script raybsub to handle submitting .lsf files on ray with bsub < script.lsf syntax that we couldn't handle with CMake. Add hpc-cmake-tgz option for bin/release.
  Account info can be submitted as an argument to run the batch scripts. Special versions for sandia are not needed.
  Add HDF5options.cmake files for serial and parallel tests on HPC machines (where tests are to be run as batch jobs. Add README_HPC file with instructions for setting up configuration to use batch scripts for running tests on HPC machines and some pointers for cross compiling.
  Remove knl configuration from ctestS.sl.in.cmake. Add sandia batch files with account info.
  Add batch files with batch parameters specific to cori and ray. Release.txt entry for skipping long double dt_arith tests on ppc64.
2019-01-31 14:31:38 -06:00
Larry Knox
bae744199b Add more specific batch scripts.
Add script raybsub to handle submitting .lsf files on ray with bsub <
script.lsf syntax that we couldn't handle with CMake.
Add hpc-cmake-tgz option for bin/release.
2019-01-31 14:22:52 -06:00
Dana Robinson
99d70c494d Fixed a valgrind issue with the unprotect log message. The logging
call was placed after the point where the cache entry was freed.
The fix was to just use the entry's address directly in the log
call instead of the entry itself.
2019-01-31 00:14:11 -08:00
Dana Robinson
90bf59edc5 Fixed a bug revealed by the dtransform test. A datatype transform
buffer needed to be calloc'd.
2019-01-30 23:45:32 -08:00
Dana Robinson
f833001e39 Updated sec2, log, and core VFDs to use pread/pwrite when
available (can be controlled via a configure/CMake option)
2019-01-30 17:32:40 -08:00
Neil Fortner
b561c2fce8 Merge pull request #1513 in HDFFV/hdf5 from ~NFORTNE2/hdf5_naf:develop to develop
* commit '261c22e0459f63fd81c8942992ffe3668969f0cd':
  Add RELEASE.txt note for unknown message fix (pull request 1448)
2019-01-30 16:49:34 -06:00
Neil Fortner
261c22e045 Merge branch 'develop' of ssh://bitbucket.hdfgroup.org:7999/~nfortne2/hdf5_naf into develop 2019-01-30 16:48:12 -06:00
Neil Fortner
773c35a664 Add RELEASE.txt note for unknown message fix (pull request 1448) 2019-01-30 16:47:47 -06:00
Larry Knox
252beb50b6 Account info can be submitted as an argument to run the batch scripts.
Special versions for sandia are not needed.
2019-01-28 12:52:14 -06:00
Larry Knox
0ef4c812c7 Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/~lrknox/hdf5_lrk into develop 2019-01-28 12:51:12 -06:00
Larry Knox
277f57d371 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '9149d5a5352de4e0b9a2e57c91525a6cad767760':
  Revert build name setting
2019-01-28 12:49:00 -06:00
Larry Knox
64114e331a Add HDF5options.cmake files for serial and parallel tests on HPC
machines (where tests are to be run as batch jobs.
Add README_HPC file with instructions for setting up configuration
to use batch scripts for running tests on HPC machines and some
pointers for cross compiling.
2019-01-28 12:43:35 -06:00
Allen Byrne
9149d5a535 Merge pull request #1504 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'f26ee27b1fd85d192b37d9e45fb6d20f1b7e23db':
  Revert build name setting
2019-01-28 08:24:16 -06:00
Larry Knox
cee36ca40d Remove knl configuration from ctestS.sl.in.cmake.
Add sandia batch files with account info.
2019-01-27 17:55:44 -06:00
Allen Byrne
f26ee27b1f Revert build name setting 2019-01-27 16:55:39 -06:00
Larry Knox
11e74daddd Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/~lrknox/hdf5_lrk into develop 2019-01-26 16:46:31 -06:00
Larry Knox
b91cb20c69 Add batch files with batch parameters specific to cori and ray.
Release.txt entry for skipping long double dt_arith tests on ppc64.
2019-01-26 16:44:09 -06:00
Binh-Minh Ribler
7447f636a4 Merge pull request #1503 in HDFFV/hdf5 from ~BMRIBLER/hdf5_bmr_fixbug:develop to develop
Added test file for CMake

* commit '55d1931dc6af168adc3804586a0da22287b29187':
  Added test file for CMake
2019-01-26 12:39:15 -06:00
Binh-Minh Ribler
55d1931dc6 Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/~bmribler/hdf5_bmr_fixbug into develop 2019-01-26 11:59:45 -06:00
Binh-Minh Ribler
f522479035 Added test file for CMake 2019-01-26 11:58:52 -06:00
Allen Byrne
adc9b8b27a Merge pull request #1499 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'ad906dc708fc803e8c5f17963fafa63591d3cc8d':
  Invalid position of declaration fixed.
  Fix CMake on Windows
2019-01-26 09:48:40 -06:00
Allen Byrne
ad906dc708 Invalid position of declaration fixed. 2019-01-25 15:21:11 -06:00
Dana Robinson
dfaf51fda4 Merge pull request #1500 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:valgrind_fixes to develop
* commit '3fac85c00d6253f7b2c96ca46c7b9718d0203029':
  Fixed a bug identified by valgrind in the cork test.
2019-01-25 12:47:02 -06:00
Dana Robinson
3fac85c00d Fixed a bug identified by valgrind in the cork test. 2019-01-25 09:58:50 -08:00
Allen Byrne
822caec907 Fix CMake on Windows 2019-01-25 11:36:46 -06:00
Binh-Minh Ribler
395cfc9f1b Merge pull request #1498 in HDFFV/hdf5 from ~BMRIBLER/hdf5_bmr_fixbug:develop to develop
* commit '0247f7b78d056b04fa08f74a2d4c4eea37f48d22':
  Added data file for test and updated MANIFEST
2019-01-25 10:47:03 -06:00
Allen Byrne
8f1d895d17 Merge pull request #1496 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '73fcbbee97c6385fb2b5009e5858ae1d6c28b3c3':
  CMake fix
  Java html fix and cmake update
  Update CMake
2019-01-25 08:40:47 -06:00
Allen Byrne
73fcbbee97 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '2fe69e7639198b174da393e47a029d0ac35b31c8':
  Added test for HDFFV-10588
  Fixed HDFFV-10684
  Fixed HDFFV-10586 and HDFFV-10588 Description:     HDFFV-10586 CVE-2018-17434  Divide by zero inh5repack_filters         Added a check for zero value     HDFFV-10588 CVE-2018-17437  Memory leak in H5O_dtype_decode_helper         This is actually an Invalid read issue.  It was found that the         attribute name length in an attribute message was corrupted,         which caused the buffer pointer to be advanced too far and later         caused an invalid read.         Added a check to detect attribute name and its length mismatch.  The         fix is not perfect, but it'll reduce the chance of this issue when a         name length is corrupted or the attribute name is corrupted. Platforms tested:     Linux/64 (jelly)     Linux/64 (platypus)     Darwin (osx1010test)
2019-01-25 08:28:53 -06:00
Binh-Minh Ribler
0247f7b78d Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/~bmribler/hdf5_bmr_fixbug into develop 2019-01-25 00:20:28 -06:00
Binh-Minh Ribler
51e0107d18 Added data file for test and updated MANIFEST 2019-01-25 00:19:16 -06:00
Binh-Minh Ribler
2fe69e7639 Merge pull request #1479 in HDFFV/hdf5 from ~BMRIBLER/hdf5_bmr_fixbug:develop to develop
HDFFV-10586 and HDFFV-10588

* commit '25cd1ab02b9ddaf58a4f5422f4ab4fde411e050a':
  Added test for HDFFV-10588
  Fixed HDFFV-10684
  Fixed HDFFV-10586 and HDFFV-10588 Description:     HDFFV-10586 CVE-2018-17434  Divide by zero inh5repack_filters         Added a check for zero value     HDFFV-10588 CVE-2018-17437  Memory leak in H5O_dtype_decode_helper         This is actually an Invalid read issue.  It was found that the         attribute name length in an attribute message was corrupted,         which caused the buffer pointer to be advanced too far and later         caused an invalid read.         Added a check to detect attribute name and its length mismatch.  The         fix is not perfect, but it'll reduce the chance of this issue when a         name length is corrupted or the attribute name is corrupted. Platforms tested:     Linux/64 (jelly)     Linux/64 (platypus)     Darwin (osx1010test)
2019-01-24 17:07:57 -06:00
Allen Byrne
37f5c682b6 CMake fix 2019-01-24 16:36:47 -06:00
Allen Byrne
62277207a4 Java html fix and cmake update 2019-01-24 15:56:42 -06:00
Binh-Minh Ribler
25cd1ab02b Added test for HDFFV-10588
Platforms tested:
    Linux/64 (jelly)
    Linux/64 (platypus)
    Darwin (osx1010test)
2019-01-24 09:42:19 -06:00
Allen Byrne
41010b8d1e Update CMake 2019-01-23 17:25:41 -06:00
Allen Byrne
f0e2fc6c62 Merge pull request #1491 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'f033214796c383a9018dd760e92257dc27d7b852':
  Add clear objects to ignore tests
  Add clear objects to ignore tests
  Add new clear tests to ignore list
  Cleanup variable names
  HDFFV-10685 Correct syntax
  HDFFV-10685 Corrected version
  HDFFV-10685 Always set Mac version flags - use soversion
2019-01-22 16:59:50 -06:00
Allen Byrne
f033214796 Add clear objects to ignore tests 2019-01-22 16:30:37 -06:00
Allen Byrne
182e5f7556 Add clear objects to ignore tests 2019-01-22 16:26:43 -06:00
Allen Byrne
036a8e4fe1 Add new clear tests to ignore list 2019-01-22 16:18:22 -06:00
Allen Byrne
cdf9cb0efb Cleanup variable names 2019-01-22 15:38:32 -06:00
Allen Byrne
91249b9ad5 HDFFV-10685 Correct syntax 2019-01-22 12:54:34 -06:00
Allen Byrne
ff08bed268 HDFFV-10685 Corrected version 2019-01-22 12:29:45 -06:00
Allen Byrne
ce64bf57ce HDFFV-10685 Always set Mac version flags - use soversion 2019-01-22 12:10:09 -06:00
Larry Knox
811b4bea8e Merge pull request #1489 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'e6be5560882c2f598b3a0ddab7d9d29a552fcb10':
  MPI vars need passed in, change to grepTest
2019-01-20 22:36:26 -06:00
Binh-Minh Ribler
d584b233a5 Fixed HDFFV-10684
Description:
    The test for HDFFV-10588 has revealed a bug in H5Ewalk.
    H5Ewalk did not stop midway even when the call back function returns
    H5_ITER_STOP. This is because a condition is missing from the for
    loops in H5E__walk causing the callback functions unable to stop until
    all the errors in the stack are iterated. Quincey advised on the final
    fix.  In this fix, "status" is switched to "ret_value" and HGOTO_ERROR
    to HERROR, and the for loops won't continue when "ret_value" is not 0.
Platforms tested:
    Linux/64 (jelly)
    Linux/64 (platypus)
    Darwin (osx1010test)
2019-01-20 17:46:28 -06:00
Allen Byrne
e6be556088 MPI vars need passed in, change to grepTest 2019-01-20 16:47:50 -06:00
Allen Byrne
0c15df15e3 Merge pull request #1485 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '769837f3ae93f4cae3486aef95c1c580a9946406':
  Add parrallel runTest.cmake for ph5example
  Add missing depends to last test
  Fix CMake policy 54 warnings
  TRILABS-105 Fix CMake policy 54 warnings
2019-01-18 21:49:05 -06:00
Allen Byrne
769837f3ae Add parrallel runTest.cmake for ph5example 2019-01-18 16:30:36 -06:00
Allen Byrne
ab2ab38fa6 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'eeea2b91729b57a0cdec301312bd5713941ab2c6':
  Fix typo
2019-01-18 13:33:00 -06:00
Allen Byrne
eeea2b9172 Merge pull request #1484 in HDFFV/hdf5 from ~BYRN/hdf5_merge_adb:develop to develop
* commit '2cf543b2941442a45a4cb878d4fb33c8c69188a2':
  Fix typo
2019-01-18 13:32:18 -06:00
Allen Byrne
f5a194ce58 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'c5b19f3dd2eb4144e614105e30bf149b5324e014':
  Fix missing depends for last repart test
2019-01-18 12:57:42 -06:00
Allen Byrne
2cf543b294 Fix typo 2019-01-18 12:57:15 -06:00
Allen Byrne
c5b19f3dd2 Merge pull request #1483 in HDFFV/hdf5 from ~BYRN/hdf5_merge_adb:develop to develop
* commit '13d1568c3f491b1dfe6254f22f04fece29b6dad2':
  Fix missing depends for last repart test
2019-01-18 12:53:49 -06:00
Allen Byrne
13d1568c3f Fix missing depends for last repart test 2019-01-18 12:27:21 -06:00
Allen Byrne
a578e36038 Add missing depends to last test 2019-01-18 12:25:38 -06:00
Allen Byrne
8adbf2552b Fix CMake policy 54 warnings 2019-01-18 12:16:38 -06:00
Allen Byrne
f25e78ad42 TRILABS-105 Fix CMake policy 54 warnings 2019-01-18 11:55:16 -06:00
Dana Robinson
f81103e89e Merge pull request #1482 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:valgrind_fixes to develop
* commit 'a4e63bb98072868a145c45e8247280ebc86c3a6d':
  Fixed a memory issue flagged by valgrind in the direct_chunk test.
2019-01-18 10:40:44 -06:00
Dana Robinson
a4e63bb980 Fixed a memory issue flagged by valgrind in the direct_chunk test. 2019-01-16 21:37:07 -08:00
Quincey Koziol
ab0fa80994 Merge pull request #1481 in HDFFV/hdf5 from reduce_cache_image_num_groups to develop
* commit '47fb7c2ee6541bb006e76c34966102ebbdaec587':
  Update usage for FAPLs, and reduce # of groups for smoke checks
2019-01-16 11:27:53 -06:00
Quincey Koziol
47fb7c2ee6 Update usage for FAPLs, and reduce # of groups for smoke checks 2019-01-16 10:36:25 -06:00
Binh-Minh Ribler
43bd93c4f5 Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/~bmribler/hdf5_bmr_fixbug into develop 2019-01-15 11:49:07 -06:00
Binh-Minh Ribler
bc3d878add Fixed HDFFV-10586 and HDFFV-10588
Description:
    HDFFV-10586 CVE-2018-17434  Divide by zero inh5repack_filters
        Added a check for zero value
    HDFFV-10588 CVE-2018-17437  Memory leak in H5O_dtype_decode_helper
        This is actually an Invalid read issue.  It was found that the
        attribute name length in an attribute message was corrupted,
        which caused the buffer pointer to be advanced too far and later
        caused an invalid read.
        Added a check to detect attribute name and its length mismatch.  The
        fix is not perfect, but it'll reduce the chance of this issue when a
        name length is corrupted or the attribute name is corrupted.
Platforms tested:
    Linux/64 (jelly)
    Linux/64 (platypus)
    Darwin (osx1010test)
2019-01-15 11:48:31 -06:00
Allen Byrne
5fdc01ae99 Merge pull request #1476 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'fe5650727c55e44e2605b667ac35f74993834643':
  Correct fix for new policy
  Fix for new policy
2019-01-14 13:54:39 -06:00
Allen Byrne
fe5650727c Correct fix for new policy 2019-01-14 13:11:17 -06:00
Allen Byrne
a7aaf073d2 Fix for new policy 2019-01-14 12:13:03 -06:00
Quincey Koziol
703acba51f Merge pull request #1471 in HDFFV/hdf5 from fix_daily_test_on_platypus to develop
* commit '3a31d37abb1fe390d4e28502e7de3ad6da092970':
  Work around compiler fussiness on platypus.
2019-01-11 19:31:48 -06:00
Quincey Koziol
3a31d37abb Work around compiler fussiness on platypus. 2019-01-11 10:11:31 -06:00
Quincey Koziol
ef3c3970fb Merge pull request #1468 in HDFFV/hdf5 from merge_hyperslab_updates_02 to develop
* commit '4729d04d9123e8cd6b2bba071695ace7ddd2a7b5':
  Delta reduction against hyperslab_updates branch.
2019-01-11 09:58:46 -06:00
Quincey Koziol
4729d04d91 Delta reduction against hyperslab_updates branch. 2019-01-10 23:08:51 -06:00
Dana Robinson
b9c8ddbfcc Merge pull request #1465 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop to develop
* commit 'b82ced10619731125b9db7b1ac36f3844463df9a':
  Fix for Fortran failures.
2019-01-10 20:39:29 -06:00
Dana Robinson
536a32c59b C and POSIX call cleanup 2019-01-10 17:51:42 -08:00
Dana Robinson
b82ced1061 Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/~derobins/hdf5_der into develop 2019-01-10 19:43:43 -06:00
Dana Robinson
8522539a9e Fix for Fortran failures. 2019-01-10 19:43:17 -06:00
Quincey Koziol
0843353176 Merge pull request #1464 in HDFFV/hdf5 from vol_wrapping_apis to develop
* commit '6d897f3c10241cbc50a728870d58269d15e36984':
  Add API routines to wrap and retrieve objects
2019-01-10 18:29:26 -06:00
Quincey Koziol
6d897f3c10 Add API routines to wrap and retrieve objects 2019-01-10 18:00:13 -06:00
Allen Byrne
a7e0ef996a Merge pull request #1462 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '9b0281736ca488387afd8a301e36e6f5a5315c4a':
  Fix deprecated H5Pget_version
  Fix regex
2019-01-09 13:18:11 -06:00
Allen Byrne
9b0281736c Fix deprecated H5Pget_version 2019-01-09 12:55:31 -06:00
Allen Byrne
7b39e544c0 Fix regex 2019-01-09 12:05:40 -06:00
Scot Breitenfeld
f75d25707d Merge pull request #1461 in HDFFV/hdf5 from ~BRTNFLD/hdf5_msb:develop to develop
* commit 'b3743a44238c284dc3817652271aa1475e3c4946':
  fixed 8 byte integer issue
  fix for xlf compiler
2019-01-09 11:38:12 -06:00
M. Scot Breitenfeld
b3743a4423 fixed 8 byte integer issue 2019-01-09 11:21:56 -06:00
M. Scot Breitenfeld
8a8cb2fbb5 Merge branch 'develop' of ssh://bitbucket.hdfgroup.org:7999/~brtnfld/hdf5_msb into develop 2019-01-09 10:40:28 -06:00
M. Scot Breitenfeld
51d911a7f8 fix for xlf compiler 2019-01-09 10:40:18 -06:00
Dana Robinson
f41195ba8e Merge pull request #1460 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor_pr to develop
* commit '287b5d03df03f9da5cf47f52e594f9909493d8ff':
  Fixed the MANIFEST
2019-01-09 09:47:26 -06:00
Dana Robinson
287b5d03df Fixed the MANIFEST 2019-01-09 07:22:46 -08:00
Scot Breitenfeld
3e142c802d Merge pull request #1458 in HDFFV/hdf5 from ~BRTNFLD/hdf5_msb:develop to develop
* commit '4f9ecd71e510a3835a49073fc16d3091a7fc25b2':
  replaced uint
  fix uint
2019-01-08 23:07:30 -06:00
Scot Breitenfeld
4f9ecd71e5 replaced uint 2019-01-08 22:54:19 -06:00
Jordan Henderson
294d9c2847 Merge pull request #1455 in HDFFV/hdf5 from ~JHENDERSON/hdf5:develop to develop
* commit '2d7eb9a4c3a841f7612b88f6b559792cb6143930':
  Align behavior of H5Aget_name_by_idx with H5Aget_name when a NULL buffer is supplied
2019-01-08 20:32:46 -06:00
Binh-Minh Ribler
56b32278c4 Merge pull request #1441 in HDFFV/hdf5 from ~BMRIBLER/hdf5_bmr_fixbug:develop to develop
* commit '90d13bef33f9e2e80b23996a0c39f16f7c34ecf8':
  Fixed typo Platforms tested:     Darwin (osx1010test)
  Refixed HDFFV-10578 Description:     Applied Neil's fix for this issue after removing previous     attempt.  The resources are now released in init_objs() when     failure occurs there.     Neil will fix HDFFV-10676 separately. Platforms tested:     Linux/64 (jelly)     Linux/64 (platypus)     Darwin (osx1010test)
  Removed previous change in H5O__chunk_deserialize().
  Removed the previous change in H5O__chunk_deserialize()
  Removed previous change in table_list_add().
  Removed the previous change in table_list_add()
  Updated per review Description:     HDFFV-10676 - CVE-2018-13873         Changed the new assert to if statement, per Dana's comment. Platforms tested:     Linux/64 (jelly)
  HDFFV-10578 and HDFFV-10676 Description:     HDFFV-10578 - CVE-2018-17234         The file has some issue, however, there was a bug in h5dump that caused         memory leaks after the problem in the file was encountered. The bug         was that an if statement was missing in the function table_list_add()         resulting in the memory not being freed at a later time.         After the fix had been applied, there were no more leaks after h5dump         detected the issue in the file and reported the error.
2019-01-08 18:59:22 -06:00
Ray Lu
44a67451be Merge pull request #1450 in HDFFV/hdf5 from ~SONGYULU/hdf5_ray:TRILAB-98-dt_arith-and-cpp_testhdf5-tests to develop
* commit 'b02de315b93ac29d2483a91d526b110a25073505':
  NNSA Tri-LabsTRILAB-98: Another two test cases out.
  NNSA Tri-Labs TRILAB-98: Taking out a few more test cases.
  NNSA Tri-Labs TRILAB-98 dt_arith and cpp_testhdf5 tests fail on sierra.llnl.gov: According to the group decision, simply provide a macro to disable some failing test cases on sierra (IBM power9 cpu).  All failing cases involve long double data type.
2019-01-08 17:59:03 -06:00
M. Scot Breitenfeld
69edf8522c Merge branch 'develop' of ssh://bitbucket.hdfgroup.org:7999/~brtnfld/hdf5_msb into develop 2019-01-08 17:31:32 -06:00
M. Scot Breitenfeld
9ea06b2e58 fix uint 2019-01-08 17:31:20 -06:00
Scot Breitenfeld
d3b107d1a4 Merge pull request #1456 in HDFFV/hdf5 from ~BRTNFLD/hdf5_msb:develop to develop
* commit 'fb5d83e146679f4d0ca16cf54b410f04a262451e':
  Updated Fortran Bug and new features
2019-01-08 17:03:06 -06:00
M. Scot Breitenfeld
fb5d83e146 Updated Fortran Bug and new features 2019-01-08 16:23:55 -06:00
Jordan Henderson
2d7eb9a4c3 Align behavior of H5Aget_name_by_idx with H5Aget_name when a NULL buffer is supplied 2019-01-08 15:52:30 -06:00
Allen Byrne
3f727a272c Merge pull request #1454 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'b88df58cc952563c35107daa1b8ced24b0cc03b5':
  Add missing define created in configure.ac
  Correct regex option
2019-01-08 14:59:29 -06:00
Allen Byrne
b88df58cc9 Add missing define created in configure.ac 2019-01-08 14:31:46 -06:00
Songyu Lu
b02de315b9 NNSA Tri-LabsTRILAB-98: Another two test cases out. 2019-01-08 14:31:41 -06:00
Allen Byrne
25f272b4cb Correct regex option 2019-01-08 13:25:11 -06:00
Songyu Lu
2efc28cf63 NNSA Tri-Labs TRILAB-98: Taking out a few more test cases. 2019-01-08 12:45:01 -06:00
Jordan Henderson
206da2919d Merge pull request #1452 in HDFFV/hdf5 from ~JHENDERSON/hdf5:develop to develop
* commit '805b64685371982e9c7fd693497865197990cbd6':
  Fix for parallel filters tests with new read-proc0-broadcast feature
2019-01-08 11:32:42 -06:00
Scot Breitenfeld
9b6fe52bcf Merge pull request #1409 in HDFFV/hdf5 from ~BRTNFLD/hdf5_msb:J10443 to develop
* commit 'b4d4d371a03158c39f120b1bde6c4bd51f1b2eb6':
  HDFFV-10443: Add "field" parameter to H5Oinfo* and H5Ovisit* APIs.
  Added chunked dataset, H5S_ALL test
  typo
  typo
  updated defined constants
  Documented HDFFV-10652
  HDFFV-10652 Implemented a process-0 read and then broadcast for collective read of full datasets (H5S_ALL) by all the processes in the file communicator.
  Removed reason for breaking read-proc0-and-bcast
  switched to using CX instead of a global var.
  HDFFV-10652 Implemented a process-0 read and then broadcast for collective read of full datasets (H5S_ALL) by all the processes in the file communicator.
2019-01-08 11:29:48 -06:00
Scot Breitenfeld
b4d4d371a0 HDFFV-10443: Add "field" parameter to H5Oinfo* and H5Ovisit* APIs. 2019-01-08 11:24:00 -06:00
Neil Fortner
7e50055920 Merge pull request #1453 in HDFFV/hdf5 from ~NFORTNE2/hdf5_naf:develop to develop
* commit '0dd2c29f284b1ec2a3c070d39805f657f44b216d':
  Remove H5O_BOGUS_INVALID_ID from H5O_msg_class_g initialization, since space for it was removed.
2019-01-08 10:45:46 -06:00
Neil Fortner
0dd2c29f28 Merge branch 'develop' of ssh://bitbucket.hdfgroup.org:7999/~nfortne2/hdf5_naf into develop 2019-01-08 10:37:28 -06:00
Neil Fortner
214abbfd59 Remove H5O_BOGUS_INVALID_ID from H5O_msg_class_g initialization, since
space for it was removed.
2019-01-08 10:36:34 -06:00
Dana Robinson
c8c0cf9fa2 Merge pull request #1451 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:fortran_squash to develop
* commit '905766fa3e51a470c02328a63d92182d4a8481bf':
  Fortran wrappers for dataset obj header minimization API calls.
2019-01-08 10:14:26 -06:00
M. Scot Breitenfeld
1421059cfb Merge remote-tracking branch 'upstream/develop' into develop 2019-01-08 09:55:29 -06:00
Jordan Henderson
805b646853 Fix for parallel filters tests with new read-proc0-broadcast feature 2019-01-08 09:45:35 -06:00
Dana Robinson
905766fa3e Fortran wrappers for dataset obj header minimization API calls. 2019-01-08 07:34:58 -08:00
Larry Knox
74a41f92a4 Merge pull request #1443 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit 'e27df5a5fe365480b0809ce523b0e9cd1096a43d':
  Add variables to set up module switch between configure and build for cross compiling on CrayXC40.
  Remove install-exec-hook from hl/fortran/Makefile.am. Add check for existing links in hl/fortran/src/Makefile.am.
  Configure build directory in batch scripts.
  Add libhdf5_hl_fortran symlinks for libhdf5hl_fortran files. Set ctest*.lsf.in.cmake scripts for sierra. Correct src/CMakelists.txt syntax error.
  Correct syntax error in CMakeLists.txt.
  Add .lsf batch scripts and insert the build directory into the scripts during configuration.
2019-01-07 21:01:06 -06:00
Larry Knox
e27df5a5fe Add variables to set up module switch between configure and build for
cross compiling on CrayXC40.
2019-01-07 20:57:18 -06:00
Binh-Minh Ribler
90d13bef33 Fixed typo
Platforms tested:
    Darwin (osx1010test)
2019-01-07 20:46:55 -06:00
Binh-Minh Ribler
78d0564c2a Refixed HDFFV-10578
Description:
    Applied Neil's fix for this issue after removing previous
    attempt.  The resources are now released in init_objs() when
    failure occurs there.
    Neil will fix HDFFV-10676 separately.
Platforms tested:
    Linux/64 (jelly)
    Linux/64 (platypus)
    Darwin (osx1010test)
2019-01-07 20:36:34 -06:00
Songyu Lu
75c105a2a4 NNSA Tri-Labs TRILAB-98 dt_arith and cpp_testhdf5 tests fail on sierra.llnl.gov: According to the group decision, simply provide a macro to disable some failing test cases on sierra (IBM power9 cpu). All failing cases involve long double data type. 2019-01-07 20:28:37 -06:00
Neil Fortner
9c12b625fd Merge pull request #1448 in HDFFV/hdf5 from ~NFORTNE2/hdf5_naf:develop to develop
Avoid potential invalid read when decoding unknown object header message.

* commit '685288beabc4f4383d69ec07be05c067fab78544':
  Delay checking if decoded message's "shareable" flag is appropriate for the message type until we've verified we understand the message type. Reduce size of H5O_msg_class_g to *not* include space for H5O_BOGUS_INVALID.  Make bogus messages shareable.  Add new bogus message test with shareable messages to cover the formerly problematic code.  Re-run gen_bogus.c to add this test case and also to fix the bogus_invalid messages that were no longer H5O_BOGUS_INVLAID due to a new message class being added in a previous commit.  Added comment to remind developers to run gen_bogus.c when adding a new message class.
2019-01-07 19:30:26 -06:00
Scot Breitenfeld
d9b1ec3ce8 Merge pull request #1439 in HDFFV/hdf5 from rank0_bcast to develop
* commit 'ab5fe769ab711f736238abc89ef215a6ecff5f7e':
  HDFFV-10625 -- Implemented a process-0 read and then broadcast for collective read of full (HS_ALL), contiguous, atomic datasets by all the processes in the file communicator.
  indent change
  changed logic statement in if
  Added chunking test, fixed issue with CX set
  Correct another git merge failure.
  Correct misplaced line from git merge.
  Updated and refined version of Scot's "rank 0 bcast" changes.
2019-01-07 17:08:33 -06:00
M. Scot Breitenfeld
ab5fe769ab Merge branch 'rank0_bcast' of ssh://bitbucket.hdfgroup.org:7999/hdffv/hdf5 into rank0_bcast 2019-01-07 16:57:39 -06:00
Quincey Koziol
fed17ed383 HDFFV-10625 -- Implemented a process-0 read and then broadcast for collective read of full (HS_ALL), contiguous, atomic datasets by all the processes in the file communicator. 2019-01-07 16:55:59 -06:00
M. Scot Breitenfeld
c9ae4fd62e indent change 2019-01-07 16:09:22 -06:00
M. Scot Breitenfeld
030cde7a20 changed logic statement in if 2019-01-07 16:09:22 -06:00
M. Scot Breitenfeld
98ed401a6c Added chunking test, fixed issue with CX set 2019-01-07 16:09:22 -06:00
Quincey Koziol
b7f660f432 Correct another git merge failure. 2019-01-07 16:09:22 -06:00
Quincey Koziol
a6fe79251b Correct misplaced line from git merge. 2019-01-07 16:09:22 -06:00
Quincey Koziol
8001a4c1c4 Updated and refined version of Scot's "rank 0 bcast" changes. 2019-01-07 16:09:22 -06:00
Neil Fortner
685288beab Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '5dfe00629588a54dbfb6f2d09dfbd88177e37cc2':
  HDFFV-10674 handle time as natural number
2019-01-07 15:54:02 -06:00
Allen Byrne
5dfe006295 Merge pull request #1444 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '591205127a167b914ef5557f30aa58b2dff96a85':
  HDFFV-10674 handle time as natural number
2019-01-07 15:43:00 -06:00
Neil Fortner
b043126e5e Delay checking if decoded message's "shareable" flag is appropriate for
the message type until we've verified we understand the message type.
Reduce size of H5O_msg_class_g to *not* include space for
H5O_BOGUS_INVALID.  Make bogus messages shareable.  Add new bogus
message test with shareable messages to cover the formerly problematic
code.  Re-run gen_bogus.c to add this test case and also to fix the
bogus_invalid messages that were no longer H5O_BOGUS_INVLAID due to a
new message class being added in a previous commit.  Added comment to
remind developers to run gen_bogus.c when adding a new message class.
2019-01-07 15:40:44 -06:00
Vailin Choi
e52e68c82f Merge pull request #1445 in HDFFV/hdf5 from ~VCHOI/my_hdf5_fork:develop to develop
* commit '982852c603c03a06ca24f219127f49616c7d42cb':
  Fix for daily test failure: too many arguments to function 'H5Gopen1'
2019-01-07 14:15:05 -06:00
Jordan Henderson
0bc3d1567b Merge pull request #1434 in HDFFV/hdf5 from ~JHENDERSON/hdf5:develop to develop
* commit 'fe6bed2ad722578d0b701e29d22f591923d2fe9f':
  Fix TESTING_2 macro to align output with TESTING macro
2019-01-07 14:11:07 -06:00
Binh-Minh Ribler
6c7462b1a9 Removed previous change in H5O__chunk_deserialize(). 2019-01-07 14:09:30 -06:00
Jordan Henderson
fe6bed2ad7 Fix TESTING_2 macro to align output with TESTING macro
Add more indentation to TESTING_2 macro
2019-01-07 14:08:34 -06:00
Binh-Minh Ribler
c092f9167c Removed the previous change in H5O__chunk_deserialize() 2019-01-07 14:07:25 -06:00
Binh-Minh Ribler
5b721a060e Removed previous change in table_list_add(). 2019-01-07 14:03:22 -06:00
Binh-Minh Ribler
463515f7db Removed the previous change in table_list_add() 2019-01-07 14:00:56 -06:00
Vailin Choi
982852c603 Fix for daily test failure: too many arguments to function 'H5Gopen1' 2019-01-07 11:49:53 -06:00
Allen Byrne
591205127a HDFFV-10674 handle time as natural number 2019-01-07 10:39:09 -06:00
M. Scot Breitenfeld
b4828e7feb Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/hdffv/hdf5 into develop 2019-01-07 09:49:52 -06:00
Larry Knox
61d3403d12 Remove install-exec-hook from hl/fortran/Makefile.am.
Add check for existing links in hl/fortran/src/Makefile.am.
2019-01-06 21:59:35 -06:00
Binh-Minh Ribler
820d8e34c5 Updated per review
Description:
    HDFFV-10676 - CVE-2018-13873
        Changed the new assert to if statement, per Dana's comment.
Platforms tested:
    Linux/64 (jelly)
2019-01-06 21:42:16 -06:00
Larry Knox
619b0abfd6 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '7bf6d847ae36940f1b1147820356795c7764dbeb':
  Remove incorrect comment.
  Updated error stacks for h5dump testing.
  Corrected comment in src/H5VLint.c, fixed pass-through info size in src/H5VLpassthru.c, switched to stashing VOL connector ID & info in API context (in src/H5CX.c, src/H5CXprivate.h, src/H5F.c, src/H5Fint.c, and src/H5Fefc.c), patched up all sorts of issues in the tests, to make them work with 'check-vfd' (and 'check-vol' again).
  Clean up style issues, make function callbacks static, correct debug statements, etc.  No functionality changes at all.
2019-01-06 17:31:51 -06:00
Quincey Koziol
7bf6d847ae Merge pull request #1440 in HDFFV/hdf5 from stackable_vol_fix_14 to develop
* commit 'f0656a57dc3baf02709e1ad5e496cf63cf820877':
  Remove incorrect comment.
  Updated error stacks for h5dump testing.
  Corrected comment in src/H5VLint.c, fixed pass-through info size in src/H5VLpassthru.c, switched to stashing VOL connector ID & info in API context (in src/H5CX.c, src/H5CXprivate.h, src/H5F.c, src/H5Fint.c, and src/H5Fefc.c), patched up all sorts of issues in the tests, to make them work with 'check-vfd' (and 'check-vol' again).
2019-01-06 16:28:06 -06:00
Quincey Koziol
ca1c9cff1a Merge pull request #1438 in HDFFV/hdf5 from mpio_vfd_neaten to develop
* commit '8a5d2c130a93a665933cda8db8554d006b7ca093':
  Clean up style issues, make function callbacks static, correct debug statements, etc.  No functionality changes at all.
2019-01-06 01:55:26 -06:00
Quincey Koziol
f0656a57dc Remove incorrect comment. 2019-01-06 01:49:02 -06:00
Binh-Minh Ribler
aa62951a5f Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/~bmribler/hdf5_bmr_fixbug into develop 2019-01-06 01:45:15 -06:00
Binh-Minh Ribler
e1b59919bb HDFFV-10578 and HDFFV-10676
Description:
    HDFFV-10578 - CVE-2018-17234
        The file has some issue, however, there was a bug in h5dump that caused
        memory leaks after the problem in the file was encountered. The bug
        was that an if statement was missing in the function table_list_add()
        resulting in the memory not being freed at a later time.
        After the fix had been applied, there were no more leaks after h5dump
        detected the issue in the file and reported the error.

        In H5O__chunk_deserialize, replaced an assert with an if statement
        and reporting error, per Neil's recommendation

    HDFFV-10676 - CVE-2018-13873
        Also in H5O__chunk_deserialize, added an assertion to detect
        out of bound ids
2019-01-06 01:44:40 -06:00
Quincey Koziol
8ecd9cc1a1 Updated error stacks for h5dump testing. 2019-01-05 23:41:43 -06:00
Quincey Koziol
92300f954f Corrected comment in src/H5VLint.c, fixed pass-through info size in
src/H5VLpassthru.c, switched to stashing VOL connector ID & info in
API context (in src/H5CX.c, src/H5CXprivate.h, src/H5F.c, src/H5Fint.c, and
src/H5Fefc.c), patched up all sorts of issues in the tests, to make them work
with 'check-vfd' (and 'check-vol' again).
2019-01-05 23:06:45 -06:00
Quincey Koziol
8a5d2c130a Clean up style issues, make function callbacks static, correct debug statements,
etc.  No functionality changes at all.
2019-01-05 17:13:40 -06:00
Larry Knox
3be0fbd817 Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/~lrknox/hdf5_lrk into develop 2019-01-05 07:50:15 -06:00
Larry Knox
25fe692c5c Configure build directory in batch scripts. 2019-01-05 07:49:19 -06:00
Larry Knox
cceb9f06b8 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '0e34f0feaaeb6d2286f87f695f25fae45c070a42': (26 commits)
  HDFFV-10664 update reference file
  HDFFV-10664 update reference files
  HDFFV-10664 add missing function and check for restriction
  Remove "bad" statements at end of TEST_ERROR.     Formerly arguments to FAIL_PUTS_ERROR
  Add RELEASE.txt entry for HDFFV-10596.
  Add semicolon at end of TEST_ERROR() invocation for consistency.
  Uninstall should remove the libhdf5_hl_fortran links.
  Add symlinks named libhdf5_hl_fortran* to libhdf5hl_fortran in Makefile.am to match cmake install and the name pattern for other hl lib files.
  Change FAIL_PUTS_ERROR to TEST_ERROR.
  Cleaned up the parallel flush test and set t_pflush1 to always fail. Also set CMake to handle this.
  Update calls: H5Dcreate to H5Dcreate2, H5Acreate to H5Acreate2.
  Removed a comment.
  Fix comment
  Align H5Lcreate_ud behavior with documentation for NULL udata pointer
  Update toolchain comment
  Use c99 standard cmake variable
  Add PGI toolchain
  Correction based on code review.
  HDFFV-10664 add check for state before set call
  HDFFV-10546 refactor variable name
  ...
2019-01-05 07:41:12 -06:00
Larry Knox
0e34f0feaa Merge pull request #1433 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '564565b15ed38d78cb7b29b8c9d9b322d224ab42':
  HDFFV-10664 update reference file
  HDFFV-10664 update reference files
  HDFFV-10664 add missing function and check for restriction
2019-01-04 14:31:51 -06:00
Jordan Henderson
b0feaecdb9 Merge pull request #1425 in HDFFV/hdf5 from ~JHENDERSON/hdf5:develop to develop
* commit '659dd9bccf69f32bfdd01dc49410116ec5c1b0bb':
  Align H5Lcreate_ud behavior with documentation for NULL udata pointer
2019-01-04 14:06:10 -06:00
Allen Byrne
564565b15e HDFFV-10664 update reference file 2019-01-04 13:29:22 -06:00
Allen Byrne
e07fb46bdc HDFFV-10664 update reference files 2019-01-04 13:29:01 -06:00
Larry Knox
8887c357ee Merge pull request #1429 in HDFFV/hdf5 from HDFFV-10596-fortran-library-names-differ to develop
* commit 'f4c9ec5d41aa53829617274d3286f1e9a45ae57e':
  Add RELEASE.txt entry for HDFFV-10596.
  Uninstall should remove the libhdf5_hl_fortran links.
  Add symlinks named libhdf5_hl_fortran* to libhdf5hl_fortran in Makefile.am to match cmake install and the name pattern for other hl lib files.
2019-01-04 13:04:41 -06:00
Larry Knox
f4c9ec5d41 Merge remote-tracking branch 'origin/develop' into HDFFV-10596-fortran-library-names-differ 2019-01-04 13:02:27 -06:00
Allen Byrne
28d5d987b5 HDFFV-10664 add missing function and check for restriction 2019-01-04 12:52:37 -06:00
jake.smith
46bf1647d4 Merge pull request #1430 in HDFFV/hdf5 from ~JAKE.SMITH/hdf5:dset_ohdr_minimize to develop
* commit 'f7115c31363e80e850c0a228e63a5a035c48b74a':
  Remove "bad" statements at end of TEST_ERROR.     Formerly arguments to FAIL_PUTS_ERROR
  Add semicolon at end of TEST_ERROR() invocation for consistency.
2019-01-04 11:46:54 -06:00
Jacob Smith
f7115c3136 Remove "bad" statements at end of TEST_ERROR.
Formerly arguments to FAIL_PUTS_ERROR
2019-01-04 11:28:39 -06:00
Dana Robinson
f012602d3a Merge pull request #1428 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:openmpi_tweaks to develop
* commit 'd59aa1d75cb6d0ae4f5964d017e275aa53394eb6':
  Cleaned up the parallel flush test and set t_pflush1 to always fail. Also set CMake to handle this.
2019-01-04 10:35:22 -06:00
Larry Knox
482d95c8f9 Add RELEASE.txt entry for HDFFV-10596. 2019-01-04 09:34:18 -06:00
Jacob Smith
a0c6e622e4 Add semicolon at end of TEST_ERROR() invocation for consistency. 2019-01-04 09:07:55 -06:00
Larry Knox
cc0421291e Uninstall should remove the libhdf5_hl_fortran links. 2019-01-04 08:50:10 -06:00
Larry Knox
30abf02de2 Add symlinks named libhdf5_hl_fortran* to libhdf5hl_fortran in
Makefile.am to match cmake install and the name pattern for other hl lib
files.

Add missing ';' to test/dsets.c line 13075.
2019-01-04 07:26:15 -06:00
jake.smith
9ac12ce299 Merge pull request #1427 in HDFFV/hdf5 from ~JAKE.SMITH/hdf5:dset_ohdr_minimize to develop
* commit '763db8178e673fdcae4a370fe2e6d345f905d5f1':
  Change FAIL_PUTS_ERROR to TEST_ERROR.
  Update calls: H5Dcreate to H5Dcreate2, H5Acreate to H5Acreate2.
2019-01-03 23:16:12 -06:00
Jacob Smith
763db8178e Change FAIL_PUTS_ERROR to TEST_ERROR. 2019-01-03 23:02:20 -06:00
Dana Robinson
d59aa1d75c Cleaned up the parallel flush test and set t_pflush1 to always fail.
Also set CMake to handle this.
2019-01-03 20:45:58 -08:00
Allen Byrne
2a28b92e2b Merge pull request #1426 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'f4516d40feb7ea696e228253bc64a94f55296cbb':
  Fix comment
  Update toolchain comment
  Use c99 standard cmake variable
  Add PGI toolchain
2019-01-03 14:47:10 -06:00
Jacob Smith
3b53747b3a Update calls: H5Dcreate to H5Dcreate2, H5Acreate to H5Acreate2. 2019-01-03 14:44:57 -06:00
Binh-Minh Ribler
5daddcc2d4 Merge pull request #1408 in HDFFV/hdf5 from ~BMRIBLER/hdf5_bmr_fixbug:develop to develop
Merged to catch daily test.

* commit '40c55f24ecbdd322fba527d768689fbdbd268374':
  Removed a comment.
  Fixed documentation - typo only
  Fixed CVE division-by-zero issues Description:     Fixed HDFFV-10577 and similar issues found in H5Dchunk.c.  All     the occurrences are in:         H5D__create_chunk_map_single         H5D__create_chunk_file_map_hyper         H5D__chunk_allocate         H5D__chunk_update_old_edge_chunks         H5D__chunk_prune_by_extent         H5D__chunk_copy_cb         H5D__chunk_collective_fill Platforms tested:     Linux/64 (jelly)     Linux/64 (platypus)     Darwin (osx1010test)
2019-01-03 09:50:01 -06:00
M. Scot Breitenfeld
390a3f6728 Added chunked dataset, H5S_ALL test 2019-01-03 09:47:14 -06:00
Binh-Minh Ribler
40c55f24ec Removed a comment. 2019-01-03 09:47:01 -06:00
Allen Byrne
f4516d40fe Fix comment 2019-01-03 09:36:00 -06:00
Jordan Henderson
659dd9bccf Align H5Lcreate_ud behavior with documentation for NULL udata pointer
Add test for H5Lcreate_ud fix
2019-01-03 09:35:44 -06:00
Allen Byrne
9d0c66c7cb Update toolchain comment 2019-01-03 09:33:55 -06:00
Allen Byrne
6f6d0921c0 Use c99 standard cmake variable 2019-01-02 17:07:37 -06:00
Allen Byrne
eaaddcc9e5 Add PGI toolchain 2019-01-02 14:39:38 -06:00
Allen Byrne
c820502e69 Merge pull request #1421 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'ed0c468902409ae7fa8fb91c5f5a3a3093846736':
  HDFFV-10664 add check for state before set call
  HDFFV-10546 refactor variable name
  HDFFV-10664 minimized dataset headers for java interface
2019-01-02 14:38:30 -06:00
Vailin Choi
c70498f7a9 Merge pull request #1414 in HDFFV/hdf5 from ~VCHOI/my_hdf5_fork:develop to develop
* commit 'd3dff6efe6f769b219f9dcccebd057afe75ed3c7':
  Correction based on code review.
  Changes based on feedback from pull request.
  Fix for HDFFV-10659: The library abort with "infinite loop closing library" after deleting attributes in densed storage. The fix: When deleting attribute nodes from the name index v2 B-tree, if an attribute is found in the intermediate B-tree nodes, which may be merged/redistributed in the process, we need to free the dynamically allocated spaces for the intermediate decoded attribute.
2019-01-02 13:26:58 -06:00
Vailin Choi
d3dff6efe6 Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/hdffv/hdf5 into develop
Resolve conflicts:
Conflicts:
	test/Makefile.am
2019-01-02 13:23:54 -06:00
Vailin Choi
7f9c459995 Correction based on code review. 2019-01-02 12:51:47 -06:00
Allen Byrne
ed0c468902 HDFFV-10664 add check for state before set call 2019-01-02 12:47:37 -06:00
jake.smith
71f4e1832c Merge pull request #1420 in HDFFV/hdf5 from ~JAKE.SMITH/hdf5:dset_ohdr_minimize to develop
* commit '8324be7fad5f1417aca3d283a8f8caf6b75c4af7':
  fix wrong function name that is missed by correctional macro
2019-01-02 12:29:11 -06:00
M. Scot Breitenfeld
3a738e249b Merge branch 'develop' of ssh://bitbucket.hdfgroup.org:7999/~brtnfld/hdf5_msb into develop 2019-01-02 12:05:02 -06:00
M. Scot Breitenfeld
b39960580e typo 2019-01-02 12:04:43 -06:00
M. Scot Breitenfeld
422d6daf6b typo 2019-01-02 11:53:41 -06:00
M. Scot Breitenfeld
57c2637df2 Merge branch 'develop' of ssh://bitbucket.hdfgroup.org:7999/~brtnfld/hdf5_msb into develop 2019-01-02 11:48:59 -06:00
M. Scot Breitenfeld
774098afa6 updated defined constants 2019-01-02 11:48:48 -06:00
Allen Byrne
f3636c573f HDFFV-10546 refactor variable name 2019-01-02 11:27:55 -06:00
M. Scot Breitenfeld
ffff13f0f3 Documented HDFFV-10652 2019-01-02 11:11:24 -06:00
Larry Knox
f9736d817e Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'af21ce90d9465e805807f17da21f93e64e03492a': (46 commits)
  Changed to Unix line endings and chmod -x.
  Fix runtest case for data to stdout in tool
  Updated the parallel install docs.
  Eliminated the need for a separate script variable.
  Flipped swapped testing strings.
  Specify variable type. Remove unnecessary whitespace.
  Added test_vol_plugin.sh to the list of scripts to clean
  Fixed a CMake build issue (CMake still doesn't run the VOL plugin tests)
  Added more sub-tests to the VOL plugin test.
  Added a simple test for registration of VOL connector plugins. Autotools only for right now, but this will be fleshed out in future work.
  OHDR tests now accept h5_fileaccess() fapls. Formatting, informative comments, and minor renaming.
  Fix some CMake listings
  Add error checking to the minimized dset header size calculation. Update printf->HDprintf statements.
  Remove `#if 0` block of deprecated code.
  Fix mistake with H5E_BEGIN_TRY {...} H5E_END_TRY block containing ERROR-raising macros. Formatting tweaks.
  Added a helpful message to the flush script.
  Added a shell script so we can run the parallel flush test on OpenMPI.
  Add "compact" storage test to relative header size comparisons.
  Formatting adjustments.
  Formatting adjustments
  ...
2019-01-02 10:07:31 -06:00
M. Scot Breitenfeld
00990e28f3 Merge branch 'develop' of ssh://bitbucket.hdfgroup.org:7999/~brtnfld/hdf5_msb into develop 2019-01-02 09:52:38 -06:00
M. Scot Breitenfeld
58decdbd88 HDFFV-10652
Implemented a process-0 read and then broadcast
for collective read of full datasets (H5S_ALL) by
all the processes in the file communicator.
2019-01-02 09:51:44 -06:00
M. Scot Breitenfeld
55f7fe7f1b Removed reason for breaking read-proc0-and-bcast 2019-01-02 09:39:03 -06:00
Allen Byrne
fb5d3347e6 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'af21ce90d9465e805807f17da21f93e64e03492a':
  Changed to Unix line endings and chmod -x.
  Cleaned up and normalized VFD init calls.
2019-01-02 09:03:43 -06:00
Dana Robinson
af21ce90d9 Merge pull request #1423 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor_pr to develop
* commit '1f644fe7cd0188628571c5527f51fce4ddeeebf4':
  Changed to Unix line endings and chmod -x.
2019-01-02 07:14:37 -06:00
Dana Robinson
1f644fe7cd Changed to Unix line endings and chmod -x. 2019-01-01 14:30:26 -08:00
Dana Robinson
d5f642b559 Merge pull request #1422 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:vfd_init_cleanup to develop
* commit '07b76068a4517f874fc5584049178ed5f61e3cea':
  Cleaned up and normalized VFD init calls.
2019-01-01 12:50:00 -06:00
Dana Robinson
07b76068a4 Merge branch 'develop' into vfd_init_cleanup 2018-12-31 17:19:39 -08:00
Allen Byrne
c3cad8e5f3 HDFFV-10664 minimized dataset headers for java interface 2018-12-31 16:34:07 -06:00
Jacob Smith
8324be7fad fix wrong function name that is missed by correctional macro 2018-12-31 15:18:13 -06:00
M. Scot Breitenfeld
f772ef9f2e switched to using CX instead of a global var. 2018-12-31 15:06:16 -06:00
Allen Byrne
fa6077332b Merge pull request #1416 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '0e6cf18b06d71dc8da9307dddce5e1833f197e19':
  Fix runtest case for data to stdout in tool
2018-12-31 14:07:57 -06:00
Allen Byrne
0e6cf18b06 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'b30a1fe44aa804a67f2291005bf8135ac5c2dc99':
  Updated the parallel install docs.
  Eliminated the need for a separate script variable.
  Added a helpful message to the flush script.
  Added a shell script so we can run the parallel flush test on OpenMPI.
2018-12-31 14:06:43 -06:00
Dana Robinson
b30a1fe44a Merge pull request #1400 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:openmpi_tweaks to develop
* commit 'd6c2a96ac2f103d90b96d5b39814810e6a31ef99':
  Updated the parallel install docs.
  Eliminated the need for a separate script variable.
  Added a helpful message to the flush script.
  Added a shell script so we can run the parallel flush test on OpenMPI.
2018-12-31 13:33:31 -06:00
Allen Byrne
028d47d707 Fix runtest case for data to stdout in tool 2018-12-31 12:38:09 -06:00
Dana Robinson
fba448b145 Merge pull request #1413 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:yay_plugins to develop
* commit '3ca19cca5395d79be69209f8d7d0a2b06834a648':
  Flipped swapped testing strings.
  Added test_vol_plugin.sh to the list of scripts to clean
  Fixed a CMake build issue (CMake still doesn't run the VOL plugin tests)
  Added more sub-tests to the VOL plugin test.
  Added a simple test for registration of VOL connector plugins. Autotools only for right now, but this will be fleshed out in future work.
2018-12-31 10:28:25 -06:00
Larry Knox
72124031ec Add libhdf5_hl_fortran symlinks for libhdf5hl_fortran files.
Set ctest*.lsf.in.cmake scripts for sierra.
Correct src/CMakelists.txt syntax error.
2018-12-31 09:20:27 -06:00
Dana Robinson
d6c2a96ac2 Updated the parallel install docs. 2018-12-31 05:07:30 -08:00
Dana Robinson
4faca62679 Eliminated the need for a separate script variable. 2018-12-31 05:04:30 -08:00
Larry Knox
715272eeb7 Correct syntax error in CMakeLists.txt. 2018-12-31 06:23:13 -06:00
Dana Robinson
a3faa92653 Merge branch 'develop' into openmpi_tweaks 2018-12-30 22:24:42 -08:00
Vailin Choi
e035c7abdd Changes based on feedback from pull request. 2018-12-31 00:11:45 -06:00
jake.smith
905c3ca3d7 Merge pull request #1372 in HDFFV/hdf5 from ~JAKE.SMITH/hdf5:dset_ohdr_minimize to develop
Dataset object header minimization
Jira TRILAB-45

* commit 'f54fb420d08ea0a7e7b026150c0ab559803e0acd': (34 commits)
  Specify variable type. Remove unnecessary whitespace.
  OHDR tests now accept h5_fileaccess() fapls. Formatting, informative comments, and minor renaming.
  Fix some CMake listings
  Add error checking to the minimized dset header size calculation. Update printf->HDprintf statements.
  Remove `#if 0` block of deprecated code.
  Fix mistake with H5E_BEGIN_TRY {...} H5E_END_TRY block containing ERROR-raising macros. Formatting tweaks.
  Add "compact" storage test to relative header size comparisons.
  Formatting adjustments.
  Formatting adjustments
  Move H5Fset_dset_no_attrs_hint VOL operations to native. Move minimzied object header tests from separate file to test/ohdr.c Some formatting changes.
  Re-format test/ohdr_mindset.c Fix a few transcription errors in other test files.
  formatting adjustments
  Reformat to be more consistent with existing code. Fix a few typos.
  add missing paramter - macro seemingly unused, but absence results in compiler complaint
  fix reference; move declaration in file
  Remove unused debugging print in '#if 0' block
  Fix typo. Fix CHECK of wrong ID (dset[2|3]_id).
  change test file name and apply 'h5_fixname' to it
  Sidestep and hide&flag minor issues causing test failures.
  Incorporate minimized dset ohdr tests into extant suite.
  ...
2018-12-29 14:31:31 -06:00
Larry Knox
126d1e6176 Add .lsf batch scripts and insert the build directory into the scripts
during configuration.
2018-12-28 16:50:48 -06:00
Vailin Choi
f808c108ed Fix for HDFFV-10659: The library abort with "infinite loop closing library"
after deleting attributes in densed storage.
The fix: When deleting attribute nodes from the name index v2 B-tree,
if an attribute is found in the intermediate B-tree nodes, which may be
merged/redistributed in the process, we need to free the dynamically
allocated spaces for the intermediate decoded attribute.
2018-12-28 16:49:11 -06:00
Dana Robinson
3ca19cca53 Flipped swapped testing strings. 2018-12-28 12:56:49 -08:00
Dana Robinson
dac76c579b Merge branch 'develop' into yay_plugins 2018-12-28 12:55:15 -08:00
Jacob Smith
f54fb420d0 Merge branch 'develop' into dset_ohdr_minimize 2018-12-28 12:45:10 -06:00
Jacob Smith
30493ce9b9 Specify variable type.
Remove unnecessary whitespace.
2018-12-28 10:17:09 -06:00
Dana Robinson
ba095e6a53 Merge pull request #1406 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:md_cache_logging_squash to develop
* commit '1ff756a1047d58f71c70deb48c797cb860904292':
  Updated the log function names.
  Squash merge of MDC logging changes.
2018-12-28 07:22:32 -06:00
Dana Robinson
1ff756a104 Updated the log function names. 2018-12-28 05:15:58 -08:00
Dana Robinson
552fec96e9 Merge branch 'develop' into md_cache_logging_squash 2018-12-27 22:22:24 -08:00
Dana Robinson
75dd3c9cab Merge branch 'develop' into yay_plugins 2018-12-27 22:20:09 -08:00
Dana Robinson
3a05e7109a Added test_vol_plugin.sh to the list of scripts to clean 2018-12-27 21:42:51 -08:00
Jordan Henderson
fe30b71086 Merge pull request #1386 in HDFFV/hdf5 from ~JHENDERSON/hdf5:develop to develop
* commit 'b4fe787bb9fe4bfc4709a124df59dd987c9a09d2':
  Add test for H5Arename NULL/empty attribute name fix
  align H5Arename behavior with H5Arename_by_name
2018-12-27 23:05:20 -06:00
Dana Robinson
fafee5b8ae Fixed a CMake build issue (CMake still doesn't run the VOL plugin
tests)
2018-12-27 19:56:21 -08:00
Dana Robinson
544ab1c78a Added more sub-tests to the VOL plugin test. 2018-12-27 19:42:02 -08:00
Dana Robinson
621014be28 Added a simple test for registration of VOL connector plugins.
Autotools only for right now, but this will be fleshed out in future
work.
2018-12-27 15:50:04 -08:00
Dana Robinson
5b57c69ed4 Merge pull request #1412 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:yay_plugins to develop
* commit '9cc406633c29d4167031dc85b950858f90163cbc':
  Fixed plugin loading so it actually checks the plugin type.
2018-12-27 16:10:57 -06:00
Dana Robinson
9cc406633c Fixed plugin loading so it actually checks the plugin type. 2018-12-27 14:00:32 -08:00
Jacob Smith
29497cc4e1 Merge branch 'develop' into dset_ohdr_minimize 2018-12-27 12:33:32 -06:00
Dana Robinson
1cc890e333 Merge pull request #1410 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop to develop
* commit '9152547b766919eefb7163e17f0c03052a2d73f2':
  H5VLregister_by_value() should not set _BY_NAME when searching for plugins.
2018-12-27 11:10:05 -06:00
Dana Robinson
9152547b76 H5VLregister_by_value() should not set _BY_NAME when searching for
plugins.
2018-12-27 08:56:43 -08:00
Jacob Smith
b2afa88fa0 OHDR tests now accept h5_fileaccess() fapls.
Formatting, informative comments, and minor renaming.
2018-12-26 14:35:22 -06:00
Binh-Minh Ribler
9c6744778e Fixed documentation - typo only 2018-12-23 00:51:17 -06:00
Binh-Minh Ribler
c3f51c52d0 Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/~bmribler/hdf5_bmr_fixbug into develop 2018-12-23 00:18:42 -06:00
Binh-Minh Ribler
251ba120b5 Fixed CVE division-by-zero issues
Description:
    Fixed HDFFV-10577 and similar issues found in H5Dchunk.c.  All
    the occurrences are in:
        H5D__create_chunk_map_single
        H5D__create_chunk_file_map_hyper
        H5D__chunk_allocate
        H5D__chunk_update_old_edge_chunks
        H5D__chunk_prune_by_extent
        H5D__chunk_copy_cb
        H5D__chunk_collective_fill
Platforms tested:
    Linux/64 (jelly)
    Linux/64 (platypus)
    Darwin (osx1010test)
2018-12-23 00:18:13 -06:00
Jacob Smith
cfdbb220d8 Fix some CMake listings 2018-12-21 16:18:05 -06:00
Jacob Smith
db9cc49a6b Add error checking to the minimized dset header size calculation.
Update printf->HDprintf statements.
2018-12-21 15:47:49 -06:00
Allen Byrne
7d28a4295e Merge pull request #1407 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '991996b25122ff010b9af1bbb6cc05be491ce038':
  Remove unused CMake files
  Update option text
  Add reference file to list
  HDFFV-10656 remove moved source
  HDFFV-10656 Add CHECK_VOL support to CMake
2018-12-21 14:41:29 -06:00
Allen Byrne
991996b251 Remove unused CMake files 2018-12-21 12:22:32 -06:00
Allen Byrne
909fa39bc7 Update option text 2018-12-21 11:41:02 -06:00
Allen Byrne
99d1f614f1 Add reference file to list 2018-12-21 10:39:15 -06:00
Dana Robinson
18e6ec82d0 Squash merge of MDC logging changes. 2018-12-20 20:41:42 -08:00
Dana Robinson
d6adb6526d Merge pull request #1399 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:vol_tweaks to develop
* commit '75a03ea0c36f24a6a3982b75a8c52325879bb569':
  Moved private native VOL connector functions to H5VLnative_private.h.
  Moved the remainder of the code into separate files.
  Split the native VOL connector code into multiple files and moved the attribute code over.
2018-12-20 19:48:36 -06:00
Quincey Koziol
830fac2fea Merge pull request #1402 in HDFFV/hdf5 from stackable_vol_fix_13 to develop
* commit '9e8cacaa5531f418f5d9d447c1251eb705da785a':
  Remove core VFD-specific property list call and regenerate encoded property lists.
2018-12-20 15:45:11 -06:00
Allen Byrne
3c8b00dbd8 HDFFV-10656 remove moved source 2018-12-20 15:35:37 -06:00
Allen Byrne
7e8923957f HDFFV-10656 Add CHECK_VOL support to CMake 2018-12-20 15:11:27 -06:00
Dana Robinson
75a03ea0c3 Merge branch 'develop' into vol_tweaks 2018-12-20 12:08:13 -08:00
Dana Robinson
a06249a21b Moved private native VOL connector functions to H5VLnative_private.h. 2018-12-20 10:47:00 -08:00
Quincey Koziol
9e8cacaa55 Remove core VFD-specific property list call and regenerate encoded property
lists.
2018-12-20 11:52:09 -06:00
Jacob Smith
13baaea005 Remove #if 0 block of deprecated code. 2018-12-20 11:18:59 -06:00
Jacob Smith
210ab50725 Fix mistake with H5E_BEGIN_TRY {...} H5E_END_TRY block containing ERROR-raising macros.
Formatting tweaks.
2018-12-20 11:12:53 -06:00
Quincey Koziol
416f68c670 Merge pull request #1401 in HDFFV/hdf5 from stackable_vol_fix_12 to develop
* commit 'ac5a65bb43dbb00808f4867d8f106143364742ad':
  Correct typo
2018-12-20 10:45:27 -06:00
Quincey Koziol
ac5a65bb43 Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/hdffv/hdf5 into develop 2018-12-20 10:19:33 -06:00
Quincey Koziol
2bbd1589fe Correct typo 2018-12-20 10:19:19 -06:00
Allen Byrne
99e4c14ea6 Merge pull request #1396 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'f9e9c1ad0eeabce09b2f8613427b83daebbf8cb0':
  HDFFV-10664 Add new functions and constants to java interface
2018-12-20 08:27:53 -06:00
Dana Robinson
64eb1489de Added a helpful message to the flush script. 2018-12-20 03:43:53 -08:00
Dana Robinson
fe1a5b4279 Added a shell script so we can run the parallel flush test
on OpenMPI.
2018-12-20 03:03:16 -08:00
Dana Robinson
aad96a8c73 Moved the remainder of the code into separate files. 2018-12-19 19:19:05 -08:00
Dana Robinson
9cfe7fd18d Split the native VOL connector code into multiple files and
moved the attribute code over.
2018-12-19 17:41:50 -08:00
Quincey Koziol
34c0328c4d Merge pull request #1398 in HDFFV/hdf5 from stackable_vol_fix_11 to develop
* commit '9810526a89b1f91d441ccce6c6ca484778f99b33':
  Correct core VFD to run with a 1MB increment instead of a 1 byte increment!
2018-12-19 19:08:04 -06:00
Quincey Koziol
9810526a89 Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/hdffv/hdf5 into develop 2018-12-19 17:17:16 -06:00
Quincey Koziol
f1d8d889b4 Correct core VFD to run with a 1MB increment instead of a 1 byte increment! 2018-12-19 17:16:45 -06:00
Quincey Koziol
9fba6e082c Merge pull request #1397 in HDFFV/hdf5 from stackable_vol_fix_10 to develop
* commit '3587fe2638c45c087e970a3bdca07a9ffa7d435c':
  Switch return value to -1
  Fix return value type for get name operation.
2018-12-19 17:05:20 -06:00
Quincey Koziol
3587fe2638 Switch return value to -1 2018-12-19 16:54:02 -06:00
Quincey Koziol
371ed6a518 Fix return value type for get name operation. 2018-12-19 16:30:11 -06:00
Allen Byrne
a3121cf41a Merge pull request #1395 in HDFFV/hdf5 from ~BYRN/hdf5_merge_adb:develop to develop
* commit 'ec4902ae8d8bd009bb835d3a0bba335845f2c07d':
  Special text removal not conditional
  TRILABS special output removal
  TRILABS special text removal
2018-12-19 15:52:02 -06:00
Allen Byrne
ec4902ae8d Special text removal not conditional 2018-12-19 15:43:33 -06:00
Allen Byrne
c4913dd55f TRILABS special output removal 2018-12-19 15:41:15 -06:00
Jacob Smith
38de07aea3 Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/~jake.smith/hdf5 into dset_ohdr_minimize 2018-12-19 15:14:51 -06:00
Jacob Smith
2b4e540fad Add "compact" storage test to relative header size comparisons. 2018-12-19 14:57:38 -06:00
Dana Robinson
33345b835c Merge pull request #1393 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:vol_optional_enum_to_macros to develop
* commit 'f60e8bb05e3203054e27bf41d0ebc657537736ed':
  Moved the optional enums to H5VLnative.h and converted to an int typedef and a set of #defines.
2018-12-19 14:55:21 -06:00
Allen Byrne
0bcae40c8a TRILABS special text removal 2018-12-19 14:44:29 -06:00
Allen Byrne
f9e9c1ad0e HDFFV-10664 Add new functions and constants to java interface 2018-12-19 12:59:05 -06:00
Quincey Koziol
fc7f4e59aa Merge pull request #1394 in HDFFV/hdf5 from stackable_vol_fix_08 to develop
* commit 'b61ad0f7b68f974356a33b335e94e21a941c0621':
  Clear driver properties before returning them to application.
2018-12-19 07:37:00 -06:00
Quincey Koziol
b61ad0f7b6 Clear driver properties before returning them to application.
Move write_tracking and page_size properties to be inside the core VFD's
driver properties.
2018-12-18 22:30:12 -06:00
Dana Robinson
f60e8bb05e Moved the optional enums to H5VLnative.h and converted to an int
typedef and a set of #defines.
2018-12-18 13:34:34 -08:00
Jacob Smith
7541ed1fc7 Formatting adjustments. 2018-12-18 15:11:42 -06:00
Dana Robinson
bd096066c3 Merge pull request #1384 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:build_tweaks to develop
* commit 'fc64bafb143b1d259282913fdbf0ba9f1a0a8069':
  Updates the autotools tests to also emit the VOL connector for each test.
2018-12-18 14:12:21 -06:00
Dana Robinson
b486fd10a4 Merge pull request #1392 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:vol_optional_enum_to_macros to develop
* commit '70c8c629ce1d7b1eb98220135ddcca1bf9c5b7fc':
  Added missing H5O calls.
  Fixed a missing H5R call.
  Made hbool_t processing consistent in va_lists.
  Fixed an enums-in-va_list issue in the passthru VOL connector.
  Updated enums in VOL va_lists to be passed as ints.
2018-12-18 13:53:02 -06:00
Jacob Smith
507d9423c8 Formatting adjustments 2018-12-18 13:51:12 -06:00
Jacob Smith
99bc714c4b Move H5Fset_dset_no_attrs_hint VOL operations to native.
Move minimzied object header tests from separate file to test/ohdr.c
Some formatting changes.
2018-12-18 13:42:03 -06:00
Dana Robinson
70c8c629ce Added missing H5O calls. 2018-12-18 10:37:49 -08:00
Dana Robinson
b73052799c Fixed a missing H5R call. 2018-12-18 10:03:29 -08:00
Dana Robinson
6a87cc96a6 Made hbool_t processing consistent in va_lists. 2018-12-18 10:00:35 -08:00
Jacob Smith
5efc08a06d Merge branch 'develop' into dset_ohdr_minimize 2018-12-18 11:50:58 -06:00
Dana Robinson
b6d27bdf90 Fixed an enums-in-va_list issue in the passthru VOL connector. 2018-12-18 09:30:18 -08:00
Dana Robinson
b55e5efc1c Merge branch 'develop' into vol_optional_enum_to_macros 2018-12-18 09:20:07 -08:00
Dana Robinson
55fc5067b6 Updated enums in VOL va_lists to be passed as ints. 2018-12-18 09:16:46 -08:00
Dana Robinson
e8108d7699 Merge branch 'develop' into vfd_init_cleanup 2018-12-18 09:07:28 -08:00
Quincey Koziol
f0c83dedb6 Merge pull request #1391 in HDFFV/hdf5 from stackable_vol_fix_07 to develop
* commit '2b496c1e19c19847bd6ab9b692b13db3d3afb0a9':
  Correct error from refactoring out H5VL_FILE_CACHE_VOL_CONN callback.
2018-12-18 10:44:32 -06:00
Quincey Koziol
2b496c1e19 Correct error from refactoring out H5VL_FILE_CACHE_VOL_CONN callback. 2018-12-18 10:19:40 -06:00
Dana Robinson
ddf2cbad1b Cleaned up and normalized VFD init calls. 2018-12-17 23:00:25 -08:00
Quincey Koziol
c3df26afb4 Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/hdffv/hdf5 into develop 2018-12-17 18:04:46 -06:00
Quincey Koziol
aadebc1b7e Merge pull request #1390 in HDFFV/hdf5 from stackable_vol_fix_06 to develop
* commit '3597bd469ff0073134b31765d9b87660cd3e0039':
  Revert change to MSC_VER, in favor of Dana's
  Remove H5VL_FILE_CACHE_VOL_CONN from file specific callbacks, as it turns out not to be necessary.
2018-12-17 18:03:59 -06:00
Quincey Koziol
a018d86050 Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/hdffv/hdf5 into develop 2018-12-17 17:36:53 -06:00
Quincey Koziol
59efe89450 Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/hdffv/hdf5 into develop 2018-12-17 17:36:45 -06:00
Dana Robinson
bacabb3534 Merge pull request #1364 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:h5i_reference_removal to develop
* commit 'e21c1cf7c6ee6dba5dd5bfd1a525227ac1304b53':
  Removed H5I_REFERENCE from the library. It has always been unused and has been marked 'deprecated' since 1.10.0. Fixes HDFFV-10252.
2018-12-17 17:35:59 -06:00
Dana Robinson
d8656bdbb2 Merge pull request #1389 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:strtok_windows_fix to develop
* commit 'a7618f432b671ad041ae63a83bf9b9bb08096dbe':
  Updated with extra sanity check and improved comment.
  Fixed an issue in the passthru Windows va_copy hack.
2018-12-17 17:34:44 -06:00
Quincey Koziol
3597bd469f Revert change to MSC_VER, in favor of Dana's 2018-12-17 17:28:51 -06:00
Quincey Koziol
c6831c7a75 Remove H5VL_FILE_CACHE_VOL_CONN from file specific callbacks, as it turns out
not to be necessary.

Also, correct _MSC_VER #ifdef
2018-12-17 17:25:10 -06:00
Dana Robinson
a7618f432b Updated with extra sanity check and improved comment. 2018-12-17 14:48:39 -08:00
Dana Robinson
a71b77433c Fixed an issue in the passthru Windows va_copy hack. 2018-12-17 14:33:33 -08:00
Dana Robinson
8909646693 Merge pull request #1388 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:vol_optional_enum_to_macros to develop
* commit '9f175afce8c08bf6193e45ce391e05e4198dd61c':
  Updated va_arg-->HDva_arg in the native VOL connector.
  Added HD to va_* calls in a couple of library files.
2018-12-17 16:05:20 -06:00
Dana Robinson
9f175afce8 Updated va_arg-->HDva_arg in the native VOL connector. 2018-12-17 14:03:11 -08:00
Dana Robinson
02eb52b5fd Merge pull request #1387 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:strtok_windows_fix to develop
* commit 'b0457117d867d9850d042d7c3f71a747899b932e':
  Further va_list improvements.
  Added a helpful comment to the va_copy() Windows hack.
  Added a work-around for va_copy() on pre-2013 versions of Visual Studio.
2018-12-17 15:32:49 -06:00
Dana Robinson
3214de7924 Added HD to va_* calls in a couple of library files. 2018-12-17 13:30:31 -08:00
Jordan Henderson
b4fe787bb9 Add test for H5Arename NULL/empty attribute name fix
Split checking of NULL vs. empty string arguments
2018-12-17 14:30:54 -06:00
Dana Robinson
b0457117d8 Further va_list improvements. 2018-12-17 11:40:10 -08:00
Dana Robinson
6306766fb4 Added a helpful comment to the va_copy() Windows hack. 2018-12-17 10:34:20 -08:00
Dana Robinson
1b9326d37f Added a work-around for va_copy() on pre-2013 versions of Visual Studio. 2018-12-17 10:29:58 -08:00
Allen Byrne
59b23c198c Merge pull request #1385 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '8dbadb41a3b23d6d74effee7bef0302fd81b80a6':
  HDFFV-10663 add new function H5Fis_accessible
2018-12-17 12:29:50 -06:00
Jordan Henderson
16cbd591cd align H5Arename behavior with H5Arename_by_name 2018-12-17 12:01:20 -06:00
Dana Robinson
339aebc69a Merge pull request #1381 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:vol_tweaks to develop
* commit '9ae9b3ef513613bb2fca15f96461a156148c2627':
  Moved the native VOL connector's optional enums to the public headers and renamed to include native/NATIVE in the name.
2018-12-17 11:24:58 -06:00
Allen Byrne
8dbadb41a3 HDFFV-10663 add new function H5Fis_accessible 2018-12-17 11:16:59 -06:00
Allen Byrne
1e9efded02 Merge pull request #1378 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '1e4c7bf9c96dfb353b643f41c136a8fa3f511df2':
  Use H5I_INVALID_HID
  HDFFV-10632 update new files
2018-12-17 08:46:03 -06:00
Dana Robinson
fc64bafb14 Updates the autotools tests to also emit the VOL connector
for each test.
2018-12-16 12:41:55 -08:00
Dana Robinson
f5886d5802 Merge pull request #1383 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:strtok_windows_fix to develop
* commit '1b5190011bde5f2f47b01429cd97c11ade66f911':
  Added #define to use strtok_s instead of strtok_r on Windows.
2018-12-16 12:20:47 -06:00
Allen Byrne
1e4c7bf9c9 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '50ca26f3ec428de408040335f2a2999e750d98b3':
  Updated the passthru VOL connector: * snprintf --> sprintf (for Windows compat) * tabs --> spaces * removed spurious parens from returns * Changed the logging macro to something less clash-prone
  Make sure to free copy of VOL connector's name when H5VL_register_connector fails
2018-12-16 11:39:14 -06:00
Dana Robinson
50ca26f3ec Merge pull request #1382 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop to develop
* commit 'e21dec94d85b02b6dd3b2020cf026414cea1eb0d':
  Updated the passthru VOL connector: * snprintf --> sprintf (for Windows compat) * tabs --> spaces * removed spurious parens from returns * Changed the logging macro to something less clash-prone
2018-12-15 22:05:40 -06:00
Dana Robinson
1b5190011b Added #define to use strtok_s instead of strtok_r on Windows. 2018-12-15 20:02:37 -08:00
Dana Robinson
e21dec94d8 Updated the passthru VOL connector:
* snprintf --> sprintf (for Windows compat)
* tabs --> spaces
* removed spurious parens from returns
* Changed the logging macro to something less clash-prone
2018-12-15 18:17:16 -08:00
Allen Byrne
8f3a777a8a Use H5I_INVALID_HID 2018-12-15 06:25:02 -06:00
Dana Robinson
9ae9b3ef51 Moved the native VOL connector's optional enums to the
public headers and renamed to include native/NATIVE in the
name.
2018-12-15 02:05:00 -08:00
Jordan Henderson
bc0a08d997 Merge pull request #1379 in HDFFV/hdf5 from ~JHENDERSON/hdf5:develop to develop
* commit '74d167d738f719fc1076ed16360e9fd5b7ba4c98':
  Make sure to free copy of VOL connector's name when H5VL_register_connector fails
2018-12-14 19:31:41 -06:00
Jordan Henderson
74d167d738 Make sure to free copy of VOL connector's name when H5VL_register_connector fails 2018-12-14 13:15:09 -06:00
Allen Byrne
c92f11b368 HDFFV-10632 update new files 2018-12-14 08:12:51 -06:00
Jacob Smith
61350bf350 Re-format test/ohdr_mindset.c
Fix a few transcription errors in other test files.
2018-12-13 22:11:29 -06:00
Jacob Smith
8e4b34afd0 formatting adjustments 2018-12-13 19:40:33 -06:00
Quincey Koziol
7670f112ca Merge pull request #1377 in HDFFV/hdf5 from stackable_vol_fix_05 to develop
* commit '833a4f73fd8dc696f8bf500cd842d88949bb1519':
  Fix plugin code from referencing invalid key ID value, and also switch from strtok() to strtok_r() to avoid possible interference with / to application use of strtok().
2018-12-13 17:59:09 -06:00
Quincey Koziol
833a4f73fd Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/hdffv/hdf5 into develop 2018-12-13 17:32:39 -06:00
Quincey Koziol
247a6afb7e Fix plugin code from referencing invalid key ID value, and also switch from
strtok() to strtok_r() to avoid possible interference with / to application
use of strtok().
2018-12-13 17:31:00 -06:00
Allen Byrne
dd6c06f9a7 Merge pull request #1375 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'f9f6e9fe24d8b0996a79af57d80e21a950f5009f':
  Still need the stamp1 files if PREGEN
2018-12-13 16:04:40 -06:00
Allen Byrne
f9f6e9fe24 Still need the stamp1 files if PREGEN 2018-12-13 15:32:49 -06:00
Allen Byrne
d88040edb3 Merge pull request #1374 in HDFFV/hdf5 from ~BYRN/hdf5_merge_adb:develop to develop
* commit '248442eb00ec254bf632ddf6a0f62ed5f442a3f0':
  If MPI is enabled java will not compile because of include.
2018-12-13 15:15:48 -06:00
Allen Byrne
c1eca48305 Merge pull request #1371 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '98309270710fea1aee7012ded776be4260c63df8':
  TRILABS - exclude host info lines
  HDFFV-10660 Add new files to OUTPUT section of custom commands
2018-12-13 15:13:57 -06:00
Allen Byrne
248442eb00 If MPI is enabled java will not compile because of include. 2018-12-13 14:10:38 -06:00
Jacob Smith
0a4834c264 Reformat to be more consistent with existing code.
Fix a few typos.
2018-12-13 14:02:29 -06:00
Allen Byrne
9830927071 TRILABS - exclude host info lines 2018-12-13 12:52:50 -06:00
Jacob Smith
8b9c4b50e3 add missing paramter - macro seemingly unused, but absence results in compiler complaint 2018-12-13 11:33:58 -06:00
Jacob Smith
a959914695 fix reference; move declaration in file 2018-12-13 10:47:52 -06:00
Jacob Smith
943b7f9c02 Merge branch 'develop' into dset_ohdr_minimize 2018-12-13 10:27:27 -06:00
Allen Byrne
88137324fc HDFFV-10660 Add new files to OUTPUT section of custom commands 2018-12-13 09:40:43 -06:00
Allen Byrne
1dd81af5a2 Merge pull request #1368 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '6a87b59aeeda7839ff7b3b9f129192bd1579c6fa':
  HDFVIEW-4 Duplicate line
2018-12-13 09:35:19 -06:00
M. Scot Breitenfeld
ef21966d17 Merge branch 'develop' of ssh://bitbucket.hdfgroup.org:7999/~brtnfld/hdf5_msb into develop 2018-12-13 09:21:00 -06:00
Jordan Henderson
8faad0a959 Merge pull request #1369 in HDFFV/hdf5 from ~JHENDERSON/hdf5:develop to develop
* commit '76c0d8c434186107176fc83a0ce4e94b584196ae':
  Add test for H5Aget_info(_by_name/_by_idx) NULL info pointer
  align H5Aget_info behavior with H5Gget_info when null attribute pointer is supplied
2018-12-13 09:10:40 -06:00
Jordan Henderson
76c0d8c434 Add test for H5Aget_info(_by_name/_by_idx) NULL info pointer 2018-12-12 18:30:34 -06:00
Jacob Smith
ad6de59e4c Merge branch 'develop' into dset_ohdr_minimize 2018-12-12 17:34:13 -06:00
Jacob Smith
911b8e8fc2 Merge branch 'dset_ohdr_minimize' of https://bitbucket.hdfgroup.org/scm/~jake.smith/hdf5 into dset_ohdr_minimize
Incorporate a few housekeeping changes and one fix.
2018-12-12 17:27:27 -06:00
Jacob Smith
ea73325250 Merge branch 'develop' into dset_ohdr_minimize 2018-12-12 17:26:08 -06:00
Jordan Henderson
55dbf69573 align H5Aget_info behavior with H5Gget_info when null attribute pointer is supplied 2018-12-12 17:05:56 -06:00
M. Scot Breitenfeld
fdf38bb5f4 HDFFV-10652
Implemented a process-0 read and then broadcast
for collective read of full datasets (H5S_ALL) by
all the processes in the file communicator.
2018-12-12 15:39:18 -06:00
Jacob Smith
5a38ab71be Remove unused debugging print in '#if 0' block 2018-12-12 14:17:15 -06:00
Jacob Smith
c81e310214 Fix typo.
Fix CHECK of wrong ID (dset[2|3]_id).
2018-12-12 14:03:56 -06:00
hdftest
afdf3094cc Merge pull request #1367 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit 'deb7d2fb9714acc8222815328f71b0aae7e74275':
  Use version 2 functions in test file to address compile errors for --with-default-api-version=v16 option.
2018-12-12 11:30:05 -06:00
Allen Byrne
6a87b59aee HDFVIEW-4 Duplicate line 2018-12-12 10:54:39 -06:00
Allen Byrne
8822bc3c41 Merge pull request #1349 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '139a12d13cda046fd3cd64a4f097eb3485f50173':
  HDFFV-10632 correct number
  HDFFV-10632 stder/stdout change note
  Add stamp files for generated  files
  HDFFV-10632 update autotools test scripts to match cmake
  HDFFV=10632 test cleanup
  Fix special macro stdout as empty
  Need nonexistent file to skip stdout compare
  HDFFV-10632 - split stderr and stdout in cmake
2018-12-12 09:29:10 -06:00
Allen Byrne
139a12d13c HDFFV-10632 correct number 2018-12-12 09:28:51 -06:00
Allen Byrne
ace20fc987 HDFFV-10632 stder/stdout change note 2018-12-12 09:27:45 -06:00
Allen Byrne
958e1f72cb Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '1be974ff963e2e538090bb3e65ba66feb93d5c68':
  HDFVIEW-4 note
  HDFVIEW-4 removed unused functions
  HDFVIEW-4 add datatype read to H5A like H5D
2018-12-12 09:17:07 -06:00
Allen Byrne
1be974ff96 Merge pull request #1365 in HDFFV/hdf5 from ~BYRN/hdf5_merge_adb:develop to develop
* commit 'ef6c80bbdbe6ce1ee4665a352099976d0fddf255':
  HDFVIEW-4 note
  HDFVIEW-4 removed unused functions
  HDFVIEW-4 add datatype read to H5A like H5D
2018-12-12 09:13:04 -06:00
Allen Byrne
ef6c80bbdb HDFVIEW-4 note 2018-12-12 09:12:50 -06:00
Allen Byrne
ce9bcb0dda HDFVIEW-4 removed unused functions 2018-12-12 08:50:58 -06:00
Larry Knox
deb7d2fb97 Use version 2 functions in test file to address compile errors for
--with-default-api-version=v16 option.
2018-12-12 06:53:26 -06:00
Jacob Smith
496de6922f change test file name and apply 'h5_fixname' to it 2018-12-11 17:45:12 -06:00
Allen Byrne
642d0cb00b Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '6f52793adcd5a14aa63731e3c33c9737b5a04d16':
  Minor tweak to address JIRA HDFFV-10611 (which was already fixed).
2018-12-10 16:52:54 -06:00
Allen Byrne
7ffba76bc3 HDFVIEW-4 add datatype read to H5A like H5D 2018-12-10 16:52:34 -06:00
Dana Robinson
6f52793adc Merge pull request #1363 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_minor_pr to develop
* commit '5d9a93b61d374c427554dd2ff9574539bc8861ab':
  Minor tweak to address JIRA HDFFV-10611 (which was already fixed).
2018-12-08 11:39:25 -06:00
Dana Robinson
e21c1cf7c6 Removed H5I_REFERENCE from the library. It has always been unused
and has been marked 'deprecated' since 1.10.0. Fixes HDFFV-10252.
2018-12-08 08:14:05 -08:00
Dana Robinson
5d9a93b61d Minor tweak to address JIRA HDFFV-10611 (which was already fixed). 2018-12-08 07:22:40 -08:00
Allen Byrne
962f35e761 Add stamp files for generated files 2018-12-07 16:02:00 -06:00
Allen Byrne
ce625a617e Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '4643860aa940fb52da251f7023ec2e48d7d10f34':
  HDFFV-10635: Some minor changes to the test case and the comments in the library.
  HDFFV-10635: add a test case.
  HDFFV-10635: Allowing to write the same variable-length element more than once.
2018-12-07 15:57:56 -06:00
Scot Breitenfeld
5a51c3677e Merge branch 'develop' into H10621 2018-12-07 15:43:51 -06:00
Scot Breitenfeld
a21f1d8aef added missing files 2018-12-07 15:25:34 -06:00
Ray Lu
4643860aa9 Merge pull request #1348 in HDFFV/hdf5 from ~SONGYULU/hdf5_ray:bugfix/HDFFV-10635-hdf5-library-segmentation-fault to develop
* commit '3e8599591504c95d8a97100b9546174f6132dc97':
  HDFFV-10635: Some minor changes to the test case and the comments in the library.
  HDFFV-10635: add a test case.
  HDFFV-10635: Allowing to write the same variable-length element more than once.
2018-12-07 14:58:43 -06:00
Scot Breitenfeld
96b6f58ac8 Implemented VOL APIs and C constants, no tests 2018-12-07 12:06:29 -06:00
Scot Breitenfeld
5267454ebd Implemented VOL APIs and C constants, no tests 2018-12-07 12:00:47 -06:00
Allen Byrne
ac34d3e157 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '3682071b4a3760959c2ccc80d6de58a8d81b5048':
  RELEASE.txt updates for fixes pushed to 1.10.5.
2018-12-07 11:44:53 -06:00
Dana Robinson
3682071b4a Merge pull request #1362 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop to develop
* commit '4484c5d6ef2186805da44abfbec9bf21fc5e4414':
  RELEASE.txt updates for fixes pushed to 1.10.5.
2018-12-07 11:42:21 -06:00
Allen Byrne
698d0490b1 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '7796cbd4174e85aa211dbffa562ada7413f1dbf7':
  Fix build errors VOL changes, when using --disable-deprecated-symbols.
  Removed RELEASE.txt entry concerning --enable-debug/production configure flags as those changes were pushed to HDF5 1.10.
  Remove reference to h5_vol_external_log_native.
2018-12-07 11:26:03 -06:00
Dana Robinson
4484c5d6ef Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/~derobins/hdf5_der into develop 2018-12-07 08:33:28 -08:00
Dana Robinson
ec99efbae8 RELEASE.txt updates for fixes pushed to 1.10.5. 2018-12-07 08:31:52 -08:00
Scot Breitenfeld
1000e97d3a initial API impl. 2018-12-06 23:44:18 -06:00
Quincey Koziol
7796cbd417 Merge pull request #1360 in HDFFV/hdf5 from stackable_vol_fix_04 to develop
* commit 'a60702605496bb5dfb12af0c0385590df85b31a3':
  Fix build errors VOL changes, when using --disable-deprecated-symbols.
2018-12-06 18:03:00 -06:00
Songyu Lu
3e85995915 HDFFV-10635: Some minor changes to the test case and the comments in the library. 2018-12-06 17:36:34 -06:00
Dana Robinson
026507404b Merge pull request #1358 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop to develop
* commit 'dd23dac577c70d7fc0aa3fe21c1ebf52a18975d2':
  Removed RELEASE.txt entry concerning --enable-debug/production configure flags as those changes were pushed to HDF5 1.10.
2018-12-06 15:42:31 -06:00
Quincey Koziol
a607026054 Fix build errors VOL changes, when using --disable-deprecated-symbols. 2018-12-06 13:37:09 -06:00
Allen Byrne
11b4c1f3af HDFFV-10632 update autotools test scripts to match cmake 2018-12-06 12:48:39 -06:00
Dana Robinson
dd23dac577 Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/~derobins/hdf5_der into develop 2018-12-06 10:10:39 -08:00
Dana Robinson
e3c40fef1f Removed RELEASE.txt entry concerning --enable-debug/production configure flags
as those changes were pushed to HDF5 1.10.
2018-12-06 10:08:50 -08:00
Quincey Koziol
b9e08da165 Merge pull request #1357 in HDFFV/hdf5 from stackable_vol_fix_03 to develop
* commit '0a7c64f6e874c92cd2540af0b1fa032be0091502':
  Remove reference to h5_vol_external_log_native.
2018-12-06 11:28:40 -06:00
Quincey Koziol
0a7c64f6e8 Remove reference to h5_vol_external_log_native. 2018-12-06 11:11:28 -06:00
Allen Byrne
2998dbfc70 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'f2da47f732ded55837f6d008af46d0c448bec1f1':
  Update to new callbacks in H5VL_class_t.
2018-12-06 08:14:34 -06:00
Allen Byrne
eb1b3f42c4 HDFFV=10632 test cleanup 2018-12-06 07:54:19 -06:00
Quincey Koziol
f2da47f732 Merge pull request #1355 in HDFFV/hdf5 from stackable_vol_fix_02 to develop
* commit '592a22345517dc321c47b2df7e6d52c968fbae9b':
  Update to new callbacks in H5VL_class_t.
2018-12-05 18:47:03 -06:00
Songyu Lu
19a94503f3 HDFFV-10635: add a test case. 2018-12-05 16:48:47 -06:00
Jacob Smith
f1825f0d26 Sidestep and hide&flag minor issues causing test failures. 2018-12-05 16:39:39 -06:00
Allen Byrne
fe6a56c5cb Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'dbce6e852a508a9b5438ca0fb5278e1a10555635':
  Updates to t_filters_parallel for missing filters
2018-12-05 16:03:11 -06:00
Jordan Henderson
dbce6e852a Merge pull request #1356 in HDFFV/hdf5 from ~JHENDERSON/hdf5:develop to develop
* commit '406f7916ceaec959c0c22cdf05f45515f04a8529':
  Updates to t_filters_parallel for missing filters
2018-12-05 15:55:35 -06:00
Jordan Henderson
406f7916ce Updates to t_filters_parallel for missing filters 2018-12-05 15:23:44 -06:00
Quincey Koziol
592a223455 Update to new callbacks in H5VL_class_t. 2018-12-05 15:09:32 -06:00
Allen Byrne
307749cc71 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '55e87e5b86aacbb37c57614cd2e869541291caad': (51 commits)
  Correct Windows build.
  Refactor allocating & releasing pass through wrapper objects.
  Fix typo
  Remove duplicated comment.
  Add a couple of missing prototypes for static routines, along with updating a comment from VOL plugin -> connector.
  Switch H5VL_class_value_t from unsigned to int, and add "invalid" ID value.
  Correct "make check-vol" regression test target.
  Switch H5VL_class_value_t from enum to unsigned integer
  Add support for "make check-vol", along with a few minor cleanups, etc.
  Refactor infrastructure for setting FAPL information from environment variables during testing, including connecting native, pass-through, and dynamically loaded VOL connectors.   Also bring native and pass-through VOL connectors into alignment, removing the "H5VLnative_private.h" header.
  Remove example VOL connector, since it's been superceded by the pass-through VOL connector in the src subdirectory.
  Add pass-through VOL connector
  Update API tracing info for VOL functions and regenerate trace macros for VOL API calls.
  Added 'notify' callback for async requests; switched VOL class and info comparison to return comparison value as parameter, so they can return error values; "cancelled" -> "canceled"; switched order of 'wrap_object' and 'free_wrap_ctx' management callbacks.
  Add using FAPL from h5_fileaccess() to more tests.
  Remove unused test for unimplemented routine.
  Switch loc_params to VOL callbacks to pass struct by pointer instead of by value.
  Add info_to_str and str_to_info "management" callbacks for serializing and deserializing a connector's info object.
  Revert some of the changes to support the original property list value of metadata read attempts.
  Add VOL connector info to the flie access property list returned from H5Fget_access_plist().  Also, other misc. cleanups, etc.
  ...
2018-12-05 14:25:58 -06:00
Quincey Koziol
55e87e5b86 Merge pull request #1353 in HDFFV/hdf5 from stackable_vol_fix_01 to develop
* commit 'e395d1ed7c76ab224a862c396020758097681cad':
  Correct Windows build.
2018-12-05 14:09:05 -06:00
Quincey Koziol
e395d1ed7c Correct Windows build. 2018-12-05 13:33:08 -06:00
Quincey Koziol
14f463593b Merge pull request #1347 in HDFFV/hdf5 from stackable_vol to develop
* commit 'c58d84e721ef9fbda63abc834767a28dc978d121': (50 commits)
  Refactor allocating & releasing pass through wrapper objects.
  Fix typo
  Remove duplicated comment.
  Add a couple of missing prototypes for static routines, along with updating a comment from VOL plugin -> connector.
  Switch H5VL_class_value_t from unsigned to int, and add "invalid" ID value.
  Correct "make check-vol" regression test target.
  Switch H5VL_class_value_t from enum to unsigned integer
  Add support for "make check-vol", along with a few minor cleanups, etc.
  Refactor infrastructure for setting FAPL information from environment variables during testing, including connecting native, pass-through, and dynamically loaded VOL connectors.   Also bring native and pass-through VOL connectors into alignment, removing the "H5VLnative_private.h" header.
  Remove example VOL connector, since it's been superceded by the pass-through VOL connector in the src subdirectory.
  Add pass-through VOL connector
  Update API tracing info for VOL functions and regenerate trace macros for VOL API calls.
  Added 'notify' callback for async requests; switched VOL class and info comparison to return comparison value as parameter, so they can return error values; "cancelled" -> "canceled"; switched order of 'wrap_object' and 'free_wrap_ctx' management callbacks.
  Add using FAPL from h5_fileaccess() to more tests.
  Remove unused test for unimplemented routine.
  Switch loc_params to VOL callbacks to pass struct by pointer instead of by value.
  Add info_to_str and str_to_info "management" callbacks for serializing and deserializing a connector's info object.
  Revert some of the changes to support the original property list value of metadata read attempts.
  Add VOL connector info to the flie access property list returned from H5Fget_access_plist().  Also, other misc. cleanups, etc.
  Switch tool error output to match VOL changes within library
  ...
2018-12-05 13:03:59 -06:00
Allen Byrne
a68fd29208 Fix special macro stdout as empty 2018-12-05 09:44:13 -06:00
Allen Byrne
081e369ade Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '2f605eaa99e1d8fc359079f93b91522c561500b0':
  updated with HDFFV-10511
2018-12-05 09:37:08 -06:00
Scot Breitenfeld
2f605eaa99 Merge pull request #1351 in HDFFV/hdf5 from ~BRTNFLD/hdf5_msb:develop to develop
* commit '988eed8cf776c14d3e0ddac9fecc372c74e5484c':
  updated with HDFFV-10511
2018-12-05 09:03:08 -06:00
Allen Byrne
d6de299f01 Need nonexistent file to skip stdout compare 2018-12-04 23:16:03 -06:00
Scot Breitenfeld
988eed8cf7 updated with HDFFV-10511 2018-12-04 12:25:30 -06:00
Quincey Koziol
c58d84e721 Refactor allocating & releasing pass through wrapper objects. 2018-12-03 13:11:17 -06:00
Allen Byrne
e3e24a2989 HDFFV-10632 - split stderr and stdout in cmake 2018-12-03 09:35:59 -06:00
Quincey Koziol
81d67d5fdc Fix typo 2018-11-30 15:00:38 -06:00
Quincey Koziol
50c4095c8c Remove duplicated comment. 2018-11-30 14:18:14 -06:00
Quincey Koziol
047269139f Add a couple of missing prototypes for static routines, along with updating
a comment from VOL plugin -> connector.
2018-11-30 14:12:32 -06:00
Songyu Lu
a89130553d HDFFV-10635: Allowing to write the same variable-length element more than once. 2018-11-30 09:02:03 -06:00
Quincey Koziol
beb7428f68 Switch H5VL_class_value_t from unsigned to int, and add "invalid" ID value. 2018-11-29 08:26:25 -06:00
Quincey Koziol
8c606f586e Correct "make check-vol" regression test target. 2018-11-28 22:54:46 -06:00
Quincey Koziol
f3ad03a538 Switch H5VL_class_value_t from enum to unsigned integer 2018-11-28 22:21:45 -06:00
Quincey Koziol
d442fe2d98 Add support for "make check-vol", along with a few minor cleanups, etc. 2018-11-28 19:07:30 -06:00
Quincey Koziol
6eabeabdaa Refactor infrastructure for setting FAPL information from environment
variables during testing, including connecting native, pass-through, and
dynamically loaded VOL connectors.   Also bring native and pass-through
VOL connectors into alignment, removing the "H5VLnative_private.h" header.
2018-11-28 17:38:03 -06:00
Quincey Koziol
3abf58dce0 Remove example VOL connector, since it's been superceded by the pass-through
VOL connector in the src subdirectory.
2018-11-28 10:38:52 -06:00
Quincey Koziol
238a207f2d Add pass-through VOL connector 2018-11-28 10:26:03 -06:00
Quincey Koziol
2db4b6df13 Update API tracing info for VOL functions and regenerate trace macros for VOL
API calls.
2018-11-28 10:22:29 -06:00
Quincey Koziol
bf79e1bd76 Added 'notify' callback for async requests; switched VOL class and info
comparison to return comparison value as parameter, so they can return error
values; "cancelled" -> "canceled"; switched order of 'wrap_object' and
'free_wrap_ctx' management callbacks.
2018-11-27 22:15:34 -06:00
Quincey Koziol
3c5706ff5b Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/hdffv/hdf5 into stackable_vol 2018-11-27 18:51:57 -06:00
Dana Robinson
86c4e7ac0f Merge pull request #1345 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:openmpi_tweaks to develop
* commit '6fccabed2e8b522747ee8056a196273917af78c7':
  Missed some function renames in error text.
2018-11-27 15:05:03 -06:00
Ray Lu
041a8295ff Merge pull request #1344 in HDFFV/hdf5 from ~SONGYULU/hdf5_ray:bugfix/HDFFV-10607-patches-for-warnings-in-the-core to develop
* commit '14de476c8cb1b797ad43bea3c71dfb32bcd2131c':
  HDFFV-10607 Fixing two compiler warnings in the library.
2018-11-27 14:59:43 -06:00
Dana Robinson
6fccabed2e Missed some function renames in error text. 2018-11-27 11:50:35 -08:00
Dana Robinson
3db8d69424 Merge pull request #1343 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:openmpi_tweaks to develop
* commit '8cf3bfb14bd2a80f13d269a9e84cd99f86f19254':
  Yanked all MPI-1 calls
  Updated H5S to use the MPI-2 function MPI_Type_get_exten() where available. OpenMPI 4.0 removed the deprecated MPI-1 MPI_type_extent() call by default, so this avoids needing a special OpenMPI build.
2018-11-27 13:08:54 -06:00
Dana Robinson
8cf3bfb14b Yanked all MPI-1 calls 2018-11-27 10:31:54 -08:00
Dana Robinson
bd820f7861 Merge branch 'develop' into openmpi_tweaks 2018-11-27 09:39:23 -08:00
Dana Robinson
b087f675e2 Merge pull request #1341 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop to develop
* commit 'd517bdf9d36f423e7abad34e109b6ce694fd03c8':
  Pulled the RELEASE.txt note concerning HDFFV-10633 since that change was pushed to hdf5_1_10 in case we release the Windows VFD in 1.10.5.
2018-11-27 11:38:29 -06:00
Songyu Lu
14de476c8c HDFFV-10607 Fixing two compiler warnings in the library. 2018-11-27 09:04:42 -06:00
Dana Robinson
38c202df4d Updated H5S to use the MPI-2 function MPI_Type_get_exten()
where available. OpenMPI 4.0 removed the deprecated MPI-1
MPI_type_extent() call by default, so this avoids needing
a special OpenMPI build.
2018-11-26 22:10:06 -08:00
Dana Robinson
d517bdf9d3 Pulled the RELEASE.txt note concerning HDFFV-10633 since that
change was pushed to hdf5_1_10 in case we release the Windows VFD
in 1.10.5.
2018-11-24 11:56:28 -08:00
Quincey Koziol
3217ffa1ac Add using FAPL from h5_fileaccess() to more tests. 2018-11-22 01:21:50 -06:00
Quincey Koziol
340b7a4fb8 Remove unused test for unimplemented routine. 2018-11-22 01:08:47 -06:00
Quincey Koziol
f9b625ef5d Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/hdffv/hdf5 into stackable_vol 2018-11-21 23:13:04 -06:00
Quincey Koziol
3055e499d5 Switch loc_params to VOL callbacks to pass struct by pointer instead of by
value.
2018-11-21 23:12:24 -06:00
Larry Knox
9c7161e105 Merge pull request #1334 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit '7bf6e98bd921c4ef1899144ab8a1f0d66a141141':
  Move wait_H5init.cmake up to config/cmake.
  Changes to CMake code to pause cmake/ctest, waiting for batch jobs to run and finish.
  Really don't run parallel tests without option specifying script.
  Add script and changes to wait for H5Tinit.c Add more sample batch scripts, specifically for sbatch, not for knl cross compile. Don't run parallel tests when no parallel test script is configured in HDF5options.cmake.
2018-11-21 09:55:08 -06:00
Quincey Koziol
8939a2190f Add info_to_str and str_to_info "management" callbacks for serializing and
deserializing a connector's info object.
2018-11-21 00:56:13 -06:00
Larry Knox
7bf6e98bd9 Move wait_H5init.cmake up to config/cmake. 2018-11-20 12:09:14 -06:00
Larry Knox
8544aae3e8 Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/hdffv/hdf5 into develop 2018-11-20 11:58:27 -06:00
Larry Knox
720bbdfe61 Changes to CMake code to pause cmake/ctest, waiting for batch jobs to
run and finish.
2018-11-20 11:03:58 -06:00
Larry Knox
5a90dd3cae Merge pull request #1338 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '3dc4055aaf2c0917569cba38d47df051cc0eeb79':
  Fix typo
  Standardize script
  add max count to options file
  Check PARALLEL_LEVEL maximum
2018-11-20 06:54:11 -06:00
Quincey Koziol
23ff0240ae Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/hdffv/hdf5 into stackable_vol 2018-11-19 21:09:28 -06:00
Ray Lu
160107a97c Merge pull request #1335 in HDFFV/hdf5 from ~SONGYULU/hdf5_ray:bugfix/HDFFV-10571-cve-2018-17237-divided-by-zero to develop
* commit 'c923cdad6e515c842f3795a5b6d754ad94021e09':
  HDFFV-10571: Minor format changes.
  HDFFV-10571: Minor change - reformatting the error check.
  HDFFV-10571: Minor change - adding the error check right after decoding of chunk dimension for safeguard.
  HDFFV-10571: Minor change - revised the comment to be clearer.
  HDFFV-10571 Divided by Zero vulnerability.  Minor fix: I added an error check to make sure the chunk size is not zero.
2018-11-19 17:20:06 -06:00
Jacob Smith
1fed1a7be7 Incorporate minimized dset ohdr tests into extant suite. 2018-11-19 14:08:31 -06:00
Allen Byrne
3dc4055aaf Fix typo 2018-11-19 11:41:11 -06:00
Allen Byrne
4bc283a0f2 Standardize script 2018-11-19 11:03:42 -06:00
Allen Byrne
d9fbacff90 add max count to options file 2018-11-19 11:02:20 -06:00
Allen Byrne
a26aedce04 Check PARALLEL_LEVEL maximum 2018-11-19 10:03:18 -06:00
Quincey Koziol
6c99961bb2 Revert some of the changes to support the original property list value of
metadata read attempts.
2018-11-18 00:57:09 -06:00
Quincey Koziol
d0d360ff2d Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/hdffv/hdf5 into stackable_vol 2018-11-18 00:39:27 -06:00
Quincey Koziol
59c28780d3 Add VOL connector info to the flie access property list returned from
H5Fget_access_plist().  Also, other misc. cleanups, etc.
2018-11-18 00:38:29 -06:00
Ray Lu
e9125d6a99 Merge pull request #1337 in HDFFV/hdf5 from ~SONGYULU/hdf5_ray:bugfix/HDFFV-10601-issues-with-chunk-cache-hash2 to develop
* commit '4f5a52e595194562644517b7600f3b96d4008c17':
  HDFFV-10601: Adding the new hdf5/tools/test/perform/chunk_cache.c to MANIFEST.
  HDFFV-10601: Some compiler doesn't support clock_gettime().  So I changed to use gettimeofday (HDgettimeofday in the HDF5 library).
2018-11-17 19:03:30 -06:00
Songyu Lu
4f5a52e595 HDFFV-10601: Adding the new hdf5/tools/test/perform/chunk_cache.c to MANIFEST. 2018-11-16 16:25:50 -06:00
Songyu Lu
d25afb294c HDFFV-10601: Some compiler doesn't support clock_gettime(). So I changed to use gettimeofday (HDgettimeofday in the HDF5 library). 2018-11-16 12:06:30 -06:00
Songyu Lu
c923cdad6e HDFFV-10571: Minor format changes. 2018-11-15 16:50:13 -06:00
Songyu Lu
198bc059b0 HDFFV-10571: Minor change - reformatting the error check. 2018-11-15 15:05:23 -06:00
Songyu Lu
c132cb5565 HDFFV-10571: Minor change - adding the error check right after decoding of chunk dimension for safeguard. 2018-11-15 14:57:26 -06:00
Ray Lu
e07d097da1 Merge pull request #1316 in HDFFV/hdf5 from ~SONGYULU/hdf5_ray:bugfix/HDFFV-10601-issues-with-chunk-cache-hash to develop
* commit 'cd13d24e5140578a880aebe4e2d8b899179d0870':
  HDFFV-10601: I added error checking to the HDF5 functions.
  HDFFV10601: Adding performance test to verify the improvement.
  HDFFV-10601: I changed to a better way to calculate the number of chunks in a dataset.
  HDFFV-10601 Issues with chunk cache hash value calcuation:
2018-11-15 09:43:46 -06:00
Scot Breitenfeld
73f881a838 Merge pull request #1325 in HDFFV/hdf5 from ~BRTNFLD/hdf5_msb:J10511 to develop
* commit '9bbaca66ca1f987ede2f5c7e9c5938523a47262f':
  fixed sp.
  HDFFV-10511 -- Make fortran specific subroutines names PRIVATE
2018-11-15 09:27:16 -06:00
Songyu Lu
cd13d24e51 HDFFV-10601: I added error checking to the HDF5 functions. 2018-11-14 17:30:23 -06:00
Dana Robinson
e890eb89d2 Merge pull request #1336 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:sec2_to_posix to develop
* commit '3edd97731e90b7fc3a378e2c6e9c043a23327d93':
  Renamed h5repart's -family_to_sec2 to -family_to_single.
2018-11-14 16:21:08 -06:00
Dana Robinson
3edd97731e Renamed h5repart's -family_to_sec2 to -family_to_single. 2018-11-14 13:37:31 -08:00
Songyu Lu
1d89a55590 HDFFV-10571: Minor change - revised the comment to be clearer. 2018-11-14 14:54:03 -06:00
Songyu Lu
78af4c21cb HDFFV-10571 Divided by Zero vulnerability. Minor fix: I added an error check to make sure the chunk size is not zero. 2018-11-14 14:31:37 -06:00
Larry Knox
9620069142 Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/~lrknox/hdf5_lrk into develop 2018-11-14 11:37:49 -06:00
Larry Knox
38f7e3c86b Really don't run parallel tests without option specifying script. 2018-11-14 11:35:36 -06:00
Larry Knox
6cbd463d41 Add script and changes to wait for H5Tinit.c
Add more sample batch scripts, specifically for sbatch, not for knl
cross compile.
Don't run parallel tests when no parallel test script is configured in
HDF5options.cmake.
2018-11-14 11:19:28 -06:00
Dana Robinson
ca1788e082 Merge pull request #1332 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:java_test_error_stack to develop
* commit '110c1b671ea7f2f5e8154d66f6ca6fcfb00b2bb2':
  The Java tests will no longer fail when the zlib is not present.
2018-11-13 16:38:43 -06:00
Songyu Lu
2fe10c647c HDFFV10601: Adding performance test to verify the improvement. 2018-11-13 11:37:29 -06:00
Dana Robinson
110c1b671e The Java tests will no longer fail when the zlib is not present. 2018-11-13 07:45:56 -08:00
Quincey Koziol
e2ed2edf6e Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/hdffv/hdf5 into stackable_vol 2018-11-12 16:23:54 -06:00
Dana Robinson
f515574dcf Merge pull request #1331 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:java_test_error_stack to develop
* commit 'ef29549f0d66612fcdeefc763785c6826c67ad8b':
  Updated the Java tests so that they don't fail when the error stack changes.
2018-11-12 16:05:16 -06:00
Dana Robinson
ef29549f0d Updated the Java tests so that they don't fail when the
error stack changes.
2018-11-12 13:31:10 -08:00
Allen Byrne
c2ceeb02b6 Merge pull request #1327 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '7e204759f861f4f482db2032127a4dc406fcd1d6':
  Fix generate file commands
  Fix target depends
  Fix target files for commands
2018-11-12 13:45:05 -06:00
Allen Byrne
7e204759f8 Fix generate file commands 2018-11-12 12:26:11 -06:00
Quincey Koziol
17f9cb4158 Switch tool error output to match VOL changes within library 2018-11-12 12:14:25 -06:00
Quincey Koziol
a442ce607b Fix a few error messages 2018-11-12 12:13:18 -06:00
Allen Byrne
ba609275d8 Fix target depends 2018-11-12 11:52:46 -06:00
Allen Byrne
fde902cb45 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '6a2e97bead3c4d366f28b6a1e4e338fc07014954':
  HDFFV-10537: Remove installation of Fortran test mod files
2018-11-12 08:55:11 -06:00
Quincey Koziol
1118672e8c Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/hdffv/hdf5 into stackable_vol 2018-11-10 11:54:58 -06:00
Quincey Koziol
ca1b9025fe Switch switch remainder of API routines to use VOL callbacks. 2018-11-10 11:54:20 -06:00
Scot Breitenfeld
6a2e97bead Merge pull request #1329 in HDFFV/hdf5 from ~BRTNFLD/hdf5_msb:J10537 to develop
* commit 'cd73b837db95493de0641b2c63537b42b8b57a84':
  HDFFV-10537: Remove installation of Fortran test mod files
2018-11-09 16:51:24 -06:00
M. Scot Breitenfeld
cd73b837db HDFFV-10537: Remove installation of Fortran test mod files
Removed from autools install, cmake does not have this issue.
2018-11-09 16:00:34 -06:00
Allen Byrne
6b959b1e21 Fix target files for commands 2018-11-09 14:38:11 -06:00
Allen Byrne
6e74d2f2ed Merge pull request #1324 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '1d2f7ca4901d126d677a32ecb4e2bc60b3b41182':
  TRILAB-36 only copy shared generated
2018-11-09 14:05:59 -06:00
M. Scot Breitenfeld
9bbaca66ca fixed sp. 2018-11-09 11:29:24 -06:00
M. Scot Breitenfeld
4fbd6bb8a5 HDFFV-10511 -- Make fortran specific subroutines names PRIVATE
Made non-public APIs private.
2018-11-09 11:24:42 -06:00
Allen Byrne
1d2f7ca490 TRILAB-36 only copy shared generated 2018-11-09 11:20:48 -06:00
Songyu Lu
3a13bb72e8 HDFFV-10601: I changed to a better way to calculate the number of chunks in a dataset. 2018-11-08 15:41:49 -06:00
Songyu Lu
709704528c Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/~songyulu/hdf5_ray into bugfix/HDFFV-10601-issues-with-chunk-cache-hash 2018-11-08 10:16:47 -06:00
Quincey Koziol
140f72b748 Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/hdffv/hdf5 into stackable_vol 2018-11-07 15:20:28 -06:00
Allen Byrne
40338b9e40 Merge pull request #1298 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '4616c1e863ab756d22af696672ba9bc2fe0eea25':
  Add custom target to force wait on generated file
  TRILAB-81 fix typo
  TRILAB-82 fixed errors found in review
  Update windows test machine info
  TRILAB-81 Output error if filename length is greater then 255
  TRILAB-81 check for func success before using value
  TRILAB-81 Coverity fix
  Move options to root CMakeLists.txt
  TRILAB-34 fix required through testing
  TRILAB-34 add batch option (also patch2 from 10633)
  TRILAB-81 coverity fixes
2018-11-07 10:02:49 -06:00
Allen Byrne
4616c1e863 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '1652a60fcbe9894d7c34a778fb24dce1979fb9a9':
  HDFFV-10605 Only test plugins if SHARED enabled
  Correct platforms
  Correct extlib depends
  Commit version changes for additional files for 1.11.3 snapshot release.
2018-11-06 16:01:35 -06:00
Allen Byrne
1652a60fcb Merge pull request #1319 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit '81cb24ac1db0f4936b19067cdb7fa4e14e0d00db':
  Commit version changes for additional files for 1.11.3 snapshot release.
2018-11-06 16:01:16 -06:00
Allen Byrne
0f4f4cf5dd Merge pull request #1320 in HDFFV/hdf5 from ~BYRN/hdf5_merge_adb:develop to develop
* commit '79903575e64e1e8f46ce27e6212d5d5939a8a900':
  HDFFV-10605 Only test plugins if SHARED enabled
  Correct platforms
  Correct extlib depends
2018-11-06 15:47:10 -06:00
Allen Byrne
79903575e6 HDFFV-10605 Only test plugins if SHARED enabled 2018-11-06 15:45:58 -06:00
Allen Byrne
c77d044dd0 Correct platforms 2018-11-06 15:30:15 -06:00
Allen Byrne
b9b89705c3 Correct extlib depends 2018-11-06 15:10:55 -06:00
Allen Byrne
7f5d91fa8f Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '9f299a6eeb91b8bc59196ccbb7067285b23e6085':
  TRILAB-36 add custom target on generated files
  Fix typo in whitespace area
2018-11-06 15:08:36 -06:00
Allen Byrne
9f299a6eeb Merge pull request #1318 in HDFFV/hdf5 from ~BYRN/hdf5_merge_adb:develop to develop
* commit '1bd3a2885865f4745209233ea84045a22e6dce9c':
  TRILAB-36 add custom target on generated files
  Fix typo in whitespace area
2018-11-06 15:07:37 -06:00
Larry Knox
81cb24ac1d Commit version changes for additional files for 1.11.3 snapshot release. 2018-11-06 10:56:36 -06:00
Quincey Koziol
ef9ffc630a Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/hdffv/hdf5 into stackable_vol 2018-11-06 10:44:17 -06:00
Allen Byrne
1bd3a28858 TRILAB-36 add custom target on generated files 2018-11-06 09:35:11 -06:00
Allen Byrne
a6a46fb27f Add custom target to force wait on generated file 2018-11-06 09:32:34 -06:00
Allen Byrne
e753904d0b Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'e6545faa5699aae4d5dca23ed40e3080fa9dc72d':
  Update HDF5-Examples version to be included in CMake-* tar/zip files.
  Snapshot version 1.11 release 3.
2018-11-05 16:57:51 -06:00
Allen Byrne
05419b19fc Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'e6545faa5699aae4d5dca23ed40e3080fa9dc72d':
  Update HDF5-Examples version to be included in CMake-* tar/zip files.
  Snapshot version 1.11 release 3.
2018-11-05 16:57:39 -06:00
Larry Knox
e6545faa56 Merge pull request #1317 in HDFFV/hdf5 from ~HDFTEST/hdf5_hft:develop to develop
* commit 'be0d6b206aaa04f7d9cb406a71aeeb458ba67975':
  Update HDF5-Examples version to be included in CMake-* tar/zip files.
  Snapshot version 1.11 release 3.
2018-11-05 15:49:11 -06:00
hdftest
be0d6b206a Update HDF5-Examples version to be included in CMake-* tar/zip files. 2018-11-05 12:40:04 -06:00
hdftest
db48399bd8 Snapshot version 1.11 release 3. 2018-11-05 12:21:13 -06:00
Allen Byrne
550674d28a Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '20ad15a1a8e9008103fe7d30401408eaa2aff6e5':
  Fixed exit() to HDexit() in use_append_chunk.c and use_append_mchunks.c
  Fixed fprintf to HDfprintf in the following routines: 1) read_uc_file() in use_common.c 2) main() of use_append_chunk.c and use_append_mchunks.c
  Fix for HDFFV-10554 use_append_chunks in swmr use case test failure Fix the timing issue of the test by moving the open/close of the test file for the writer to use_append_chunk.c and use_append_mchunks.c.
2018-11-05 09:09:26 -06:00
Allen Byrne
9e0eb2fdca Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '20ad15a1a8e9008103fe7d30401408eaa2aff6e5':
  Fixed exit() to HDexit() in use_append_chunk.c and use_append_mchunks.c
  Fixed fprintf to HDfprintf in the following routines: 1) read_uc_file() in use_common.c 2) main() of use_append_chunk.c and use_append_mchunks.c
  Fix for HDFFV-10554 use_append_chunks in swmr use case test failure Fix the timing issue of the test by moving the open/close of the test file for the writer to use_append_chunk.c and use_append_mchunks.c.
2018-11-05 09:09:09 -06:00
Quincey Koziol
afd54bbe5c Remove most debugging shims & scaffolding. 2018-11-04 02:09:27 -06:00
Quincey Koziol
1daa7b830a Switch driver | plugin => connector. 2018-11-04 01:27:23 -05:00
Quincey Koziol
deb75622ca Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/hdffv/hdf5 into stackable_vol 2018-11-04 00:25:36 -05:00
Quincey Koziol
df7cf2a9d3 Refactor, standardize, and revise the async request callbacks. 2018-11-04 00:05:08 -05:00
Songyu Lu
6fa26d7e49 HDFFV-10601 Issues with chunk cache hash value calcuation:
1. H5D__chunk_hash_val: When the number of chunks in the fastest changing dimension is larger than the number of slots in the hash table, H5D__chunk_hash_val abandons the normal hash value calculation algorithm and simply uses the scaled dimension.  This will cause chunks a selection that cuts across chunks in dimensions other than the fastest changing to all have the same hash value, and they will therefore always evict each other from the cache, having an obvious major performance impact. Eliminated the check  for the number of slots in this function and always use the full algorithm.

2. H5D__chunk_init: When the scaled dimensions (number of chunks in each dimension) are calculated in H5D__chunk_init, a simple divide ("/") operator is used with the dataset size in elements and the chunk size in elements. While this is fine when the dataset size is an exact multiple of the chunk size, in other cases, since "/" rounds down, it results in a scaled dimension one less than it should (it ignores the partial edge chunk). This has trickle down effects on hash value calculation that can cause excess hash value collisions and therefore performance issues. Changed the calculation to (((dataset_size - 1) / chunk_size) + 1).

Tested the build with Autotool and CMake.
2018-11-02 14:53:35 -05:00
Quincey Koziol
4806d29d9f Refactor and standardize named datatype VOL callbacks. 2018-11-01 17:02:27 -05:00
Vailin Choi
20ad15a1a8 Merge pull request #1314 in HDFFV/hdf5 from ~VCHOI/my_hdf5_fork:develop to develop
* commit '51076d40617aa6f0236809c2c919cc6921b3bbc1':
  Fixed exit() to HDexit() in use_append_chunk.c and use_append_mchunks.c
  Fixed fprintf to HDfprintf in the following routines: 1) read_uc_file() in use_common.c 2) main() of use_append_chunk.c and use_append_mchunks.c
  Fix for HDFFV-10554 use_append_chunks in swmr use case test failure Fix the timing issue of the test by moving the open/close of the test file for the writer to use_append_chunk.c and use_append_mchunks.c.
2018-11-01 16:12:07 -05:00
Vailin Choi
51076d4061 Fixed exit() to HDexit() in use_append_chunk.c and use_append_mchunks.c 2018-11-01 15:00:40 -05:00
Quincey Koziol
1b00d04080 Refactor and standardize object VOL callbacks. 2018-11-01 14:54:44 -05:00
Vailin Choi
4f62c084f1 Fixed fprintf to HDfprintf in the following routines:
1) read_uc_file() in use_common.c
2) main() of use_append_chunk.c and use_append_mchunks.c
2018-11-01 12:03:34 -05:00
Quincey Koziol
a5cc4e272b Refactor and standardize the link VOL callbacks. Also fix error stack for
testing.
2018-11-01 11:22:54 -05:00
Allen Byrne
2c266f2cb6 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '3fcc1e7929d99272cf3d29883de78b1ad544ea38':
  A trivial change to reformat a comment.  The purpose is simply to try out Git.
2018-11-01 08:40:53 -05:00
Allen Byrne
0e1c2d1c9e Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '3fcc1e7929d99272cf3d29883de78b1ad544ea38':
  A trivial change to reformat a comment.  The purpose is simply to try out Git.
2018-11-01 08:40:38 -05:00
Quincey Koziol
a39486a341 Refactor and standardize group VOL callbacks. 2018-10-31 19:17:37 -05:00
Quincey Koziol
ef7c458d73 Update for change in error stack when opening a dataset. 2018-10-31 18:41:19 -05:00
Quincey Koziol
d66d5e01c0 Refactor and standarize file object callbacks, including some fixes on the
dataset callbacks.
2018-10-31 18:18:45 -05:00
Ray Lu
3fcc1e7929 Merge pull request #1315 in HDFFV/hdf5 from ~SONGYULU/hdf5_ray:bugfix/ray_test to develop
* commit 'b72e926ed0c981d14d5219b32042c3d0b938d1e1':
  A trivial change to reformat a comment.  The purpose is simply to try out Git.
2018-10-31 10:43:22 -05:00
Songyu Lu
b72e926ed0 A trivial change to reformat a comment. The purpose is simply to try out Git. 2018-10-31 09:54:08 -05:00
Allen Byrne
3042976b65 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '99c1e577da3a2dd45fbfee748220986c42962921':
  Removed a couple of extraneous commas from VOL example.
  Cleaned up VOL example.
  Updated MANIFEST file.
  Fixed VOL example to use a platform-independent format specifier for size_t.
2018-10-31 08:49:58 -05:00
Allen Byrne
a5e33551d7 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '99c1e577da3a2dd45fbfee748220986c42962921':
  Removed a couple of extraneous commas from VOL example.
  Cleaned up VOL example.
  Updated MANIFEST file.
  Fixed VOL example to use a platform-independent format specifier for size_t.
2018-10-31 08:49:45 -05:00
Dana Robinson
99c1e577da Merge pull request #1313 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:vol_tweaks to develop
* commit 'ee12aff2ca89e92b99590f29096794a84c6bacdc':
  Removed a couple of extraneous commas from VOL example.
  Cleaned up VOL example.
  Updated MANIFEST file.
  Fixed VOL example to use a platform-independent format specifier for size_t.
2018-10-30 18:54:05 -05:00
Vailin Choi
d1d2cf776d Fix for HDFFV-10554 use_append_chunks in swmr use case test failure
Fix the timing issue of the test by moving the open/close of the test file for the writer to
use_append_chunk.c and use_append_mchunks.c.
2018-10-30 16:53:09 -05:00
Dana Robinson
ee12aff2ca Removed a couple of extraneous commas from VOL example. 2018-10-30 14:44:54 -07:00
Dana Robinson
7a5e632c0d Cleaned up VOL example. 2018-10-30 10:32:17 -07:00
Allen Byrne
98353c18bd Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '3145690c9590778b857def090489c6d890e42a5b':
  Add script to run tests with sbatch when not cross compiling. Add new files to MANIFEST.
2018-10-30 12:03:50 -05:00
Allen Byrne
b2147800a8 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '3145690c9590778b857def090489c6d890e42a5b':
  Add script to run tests with sbatch when not cross compiling. Add new files to MANIFEST.
2018-10-30 12:03:39 -05:00
Dana Robinson
ab9e964c3e Updated MANIFEST file. 2018-10-30 09:53:20 -07:00
Dana Robinson
12e929e1ec Fixed VOL example to use a platform-independent format
specifier for size_t.
2018-10-29 16:06:22 -07:00
Quincey Koziol
4c6d8d376c Remove erroneous call. 2018-10-29 17:26:33 -05:00
Quincey Koziol
8c37f531a9 Switch to using VOL callbacks, instead of direct calls to internal routines. 2018-10-29 17:24:33 -05:00
Larry Knox
3145690c95 Merge pull request #1312 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit '41faaf271ca1de929c1e12ae13c40fc67a53edff':
  Add script to run tests with sbatch when not cross compiling. Add new files to MANIFEST.
2018-10-29 17:11:15 -05:00
Quincey Koziol
aaaf1acc08 Add ref counter to VOL object wrapping in API contexts, so that re-entrant /
recursive routines work correctly.  Another minor cleanup in the attribute code.
2018-10-29 16:52:00 -05:00
Allen Byrne
89bd227aeb Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'ff34cd0a0506ca16f4971cf03bd1b6e33bfa132c':
  Updated RELEASE.txt to reflect HDFFV-10609 work (H5Xpkg.h files being incorrectly installed).
  Add files and changes to cross compile with CrayLinuxEnvironment and run ctest tests with a batch job on knl compute nodes.
2018-10-29 16:44:09 -05:00
Larry Knox
41faaf271c Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/~lrknox/hdf5_lrk into develop 2018-10-29 16:18:27 -05:00
Larry Knox
f031cc7b7a Add script to run tests with sbatch when not cross compiling.
Add new files to MANIFEST.
2018-10-29 16:17:10 -05:00
Allen Byrne
ae0f4a23c0 Fix typo in whitespace area 2018-10-29 15:52:39 -05:00
Dana Robinson
ff34cd0a05 Merge pull request #1311 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:cmake_tweaks to develop
* commit 'c9273522e9a7e946802d8545b2532f9129b459a9':
  Updated RELEASE.txt to reflect HDFFV-10609 work (H5Xpkg.h files being incorrectly installed).
2018-10-29 15:35:55 -05:00
Dana Robinson
c9273522e9 Updated RELEASE.txt to reflect HDFFV-10609 work (H5Xpkg.h files
being incorrectly installed).
2018-10-29 12:59:25 -07:00
Larry Knox
81c0357645 Merge pull request #1309 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit 'b24259ed8cdb273273f82c2b3f3a2dcac60b32ba':
  Add files and changes to cross compile with CrayLinuxEnvironment and run ctest tests with a batch job on knl compute nodes.
2018-10-29 14:57:00 -05:00
Larry Knox
b24259ed8c Add files and changes to cross compile with CrayLinuxEnvironment and run
ctest tests with a batch job on knl compute nodes.
2018-10-29 14:24:08 -05:00
Quincey Koziol
ca5ff0c0c2 Convert dataset callbacks to standard form, for wrapping object IDs, etc.
Also, fix a few attribute issues that I missed.
2018-10-29 13:15:56 -05:00
Allen Byrne
2c48f6bd00 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '7db3ea76da5d3b5c237a707b09d1618d3206ba83':
  Makes the installed header files the same between the autotools and CMake.
2018-10-29 11:10:27 -05:00
Dana Robinson
7db3ea76da Merge pull request #1305 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:cmake_tweaks to develop
* commit '62b92ddf4096d9b8f6235587ec16f34f6c6fa119':
  Makes the installed header files the same between the autotools and CMake.
2018-10-29 09:16:23 -05:00
Quincey Koziol
8fd2e1d36e Convert attribute VOL callbacks to a standard form that sets up the wrapper
object info in a single place.
2018-10-28 20:51:16 -05:00
Quincey Koziol
ad92351809 Clean up va_list properly on error. 2018-10-28 02:03:08 -05:00
Quincey Koziol
58202337dd Minor coding style cleanups 2018-10-28 02:02:45 -05:00
Quincey Koziol
8ee361f185 Move all callback-related routines into the callback source file, standardizing
their coding style
2018-10-28 01:31:28 -05:00
Quincey Koziol
50dd616eb5 Correct error with parsing of "FUNC_ENTER_API_NOINIT" 2018-10-27 17:38:32 -05:00
Quincey Koziol
9bc6644ed1 Duplicate name of VOL plugin class, to avoid continuing to refer to the caller's
string when making a copy of the class for internal use.
2018-10-27 16:15:39 -05:00
Quincey Koziol
fb6ecf33b0 Fix names of VOL API routines. 2018-10-27 02:43:40 -05:00
Quincey Koziol
9c7b96b42f Move (final?) file operation from directly calling into library code to using
the file_optional VOL callback.
2018-10-27 02:21:48 -05:00
Quincey Koziol
43ffc1deb5 Remove some VOL-specific internal coding. 2018-10-27 02:06:43 -05:00
Quincey Koziol
83e03772eb Add VOL object wrapping to API context when refreshing groups, named datatypes
and objects.
2018-10-27 01:55:31 -05:00
Quincey Koziol
6e84fd8327 Remove virtual dataset refresh code's direct use of native VOL plugin's ID. 2018-10-27 01:33:07 -05:00
Dana Robinson
b29101c971 Merge branch 'develop' into cmake_tweaks 2018-10-26 20:49:07 -07:00
Dana Robinson
62b92ddf40 Makes the installed header files the same between the autotools
and CMake.

* CMake will no longer install private generated headers and tools
  library headers.
* Several empty public header files (which represent internal packages)
  were removed. These were only installed by CMake.
* Autotools installs will install H5FDwindows.h.

Fixes HDFFV-10614.
2018-10-26 20:44:29 -07:00
Quincey Koziol
ce3d1ec9ea Eliminate last call to H5VL_native_register, shifting everything over to
the VOL plugin wrapping code.
2018-10-26 17:27:10 -05:00
Quincey Koziol
171deaa588 Checkpoint progress on stacking VOL plugins - all standalone regression tests
in the 'test' directory appear to be working.
2018-10-26 16:09:06 -05:00
Quincey Koziol
305997501d Updates after merging changes from develop. 2018-10-26 00:54:29 -05:00
Quincey Koziol
4a32895724 Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/hdffv/hdf5 into stackable_vol 2018-10-25 18:32:13 -05:00
Quincey Koziol
0df6e44a6e Squashed commit of private branch changes to support stackable VOL plugins.
modified:   test/dsets.c
2018-10-24 23:52:47 -05:00
Allen Byrne
29afe82e79 TRILAB-81 fix typo 2018-10-24 15:39:09 -05:00
Allen Byrne
ee54368066 TRILAB-82 fixed errors found in review 2018-10-24 14:55:16 -05:00
Allen Byrne
f8b5d40c76 Update windows test machine info 2018-10-23 10:15:03 -05:00
Allen Byrne
1d06bbe523 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '47f30b474bdc498c20bd6d2a0ba7e8947ab389f0':
  HDFFV-10608 Move toolchain files into a subfolder
  TRILAB-36 add option for test script batch command
  Fixed warnings in the VOL example and run it from the script.
  Split H5VLnative.h into public and private files and updated
2018-10-23 09:32:00 -05:00
Allen Byrne
47f30b474b Merge pull request #1301 in HDFFV/hdf5 from ~BYRN/hdf5_merge_adb:develop to develop
* commit '096279caf76a542306b840fb90e1e753e8bbf748':
  HDFFV-10608 Move toolchain files into a subfolder
  TRILAB-36 add option for test script batch command
2018-10-22 16:33:43 -05:00
Allen Byrne
096279caf7 HDFFV-10608 Move toolchain files into a subfolder 2018-10-22 16:08:52 -05:00
Allen Byrne
164bae2439 TRILAB-36 add option for test script batch command 2018-10-22 15:39:03 -05:00
Dana Robinson
8a12b57483 Merge pull request #1300 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:vol_tweaks to develop
* commit 'b33a2e7dfe76a2947c12462adb40c88af9c92e75':
  Fixed warnings in the VOL example and run it from the script.
  Split H5VLnative.h into public and private files and updated
2018-10-22 10:59:07 -05:00
Dana Robinson
b33a2e7dfe Fixed warnings in the VOL example and run it from the script. 2018-10-21 10:08:26 -07:00
Dana Robinson
46c5b059f1 Split H5VLnative.h into public and private files and updated 2018-10-20 13:06:37 -07:00
Allen Byrne
9838dba4a4 TRILAB-81 Output error if filename length is greater then 255 2018-10-19 14:53:18 -05:00
Allen Byrne
cce1727525 TRILAB-81 check for func success before using value 2018-10-19 14:45:04 -05:00
Allen Byrne
6e84657314 TRILAB-81 Coverity fix 2018-10-19 14:03:51 -05:00
Allen Byrne
e1308fc432 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '5f99891e6dc59524fb6e43ca96a86df22b403c61':
  Move options to root cmake file
  EED-258 Add modules uses toolchain files
  Updates to the VOL ID and object API calls.
2018-10-19 13:49:55 -05:00
Allen Byrne
5f99891e6d Merge pull request #1299 in HDFFV/hdf5 from ~BYRN/hdf5_merge_adb:develop to develop
* commit '494d39f1c2f6225c732cb857c860d6b475d03226':
  Move options to root cmake file
  EED-258 Add modules uses toolchain files
2018-10-19 13:49:33 -05:00
Allen Byrne
494d39f1c2 Move options to root cmake file 2018-10-19 13:34:31 -05:00
Allen Byrne
cd7a896ee4 Move options to root CMakeLists.txt 2018-10-19 13:33:12 -05:00
Dana Robinson
4e575a0865 Merge pull request #1297 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop to develop
* commit '2d6d5cad0cc426cd53b9d4fda15e53d8021e4c7b':
  Updates to the VOL ID and object API calls.
2018-10-18 16:05:40 -05:00
Allen Byrne
7e00924d1b EED-258 Add modules uses toolchain files 2018-10-18 14:44:27 -05:00
Allen Byrne
e3e0289d43 TRILAB-34 fix required through testing 2018-10-17 11:06:45 -05:00
Allen Byrne
e769ee8b5d TRILAB-34 add batch option (also patch2 from 10633) 2018-10-17 11:01:01 -05:00
Allen Byrne
633b7f93ce TRILAB-81 coverity fixes 2018-10-17 10:57:56 -05:00
Allen Byrne
a82aee9a5f Merge pull request #1292 in HDFFV/hdf5 from ~BYRN/hdf5_merge_adb:develop to develop
* commit '2e28fad2d007841c08cdb3f06a3bd177d12ce30e':
  TRILAB-34 remove extra arg
  TRILAB-34 Add batch script config command
  TRILAB-36 Revert to target_file and correct property
  Add generated propoerty to H5lib_settings
  HDFFV-10603 patch 6
  TRILAB-34 batch command options
  Correct quote char
  Add more descriptive option name
  HDFFV-10603 fixup cmake usage
  TRILABS-34 add batch option. Also fix cmakedefine01 usage
2018-10-17 10:54:10 -05:00
Dana Robinson
2d6d5cad0c Updates to the VOL ID and object API calls.
This brings the H5VL code in line with the H5I code regarding
naming, parameter order, etc.

Several public API calls were affected by this change.

These changed names to reflect their use with VOL drivers:
    H5VLregister()          -->     H5VLregister_driver()
    H5VLregister_by_name()  -->     H5VLregister_driver_by_name()
    H5VLunregister()        -->     H5VLunregister_driver()
    H5VLis_registered()     -->     H5VLis_driver_registered()

This call was renamed to match H5Iregister(). The order of the first
two parameters also reversed and the object pointer is now const.
    H5VLobject_register()   -->     H5VLregister()
2018-10-17 02:06:28 -07:00
Allen Byrne
2e28fad2d0 TRILAB-34 remove extra arg 2018-10-16 16:46:45 -05:00
Allen Byrne
c39449fa12 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '1e8ef703cdc057211b3587be776a6e9f62e8f76f':
  Fixed a C++ style commenting issue and removed an unused field from H5F_trav_obj_ids_t.
  Fixed a memory issue in H5Drefresh() where the dataset's H5VL_object_t gets closed but we try to use it to find the driver.
2018-10-16 13:10:48 -05:00
Allen Byrne
6b65a1b78f TRILAB-34 Add batch script config command 2018-10-16 12:06:07 -05:00
Allen Byrne
77f284a175 TRILAB-36 Revert to target_file and correct property 2018-10-16 11:33:44 -05:00
Allen Byrne
db3fe90abd Add generated propoerty to H5lib_settings 2018-10-15 16:57:50 -05:00
Allen Byrne
2e4e4f38e6 HDFFV-10603 patch 6 2018-10-15 13:49:53 -05:00
Allen Byrne
689f184345 TRILAB-34 batch command options 2018-10-12 13:55:29 -05:00
Dana Robinson
1e8ef703cd Merge pull request #1294 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop to develop
* commit 'b0b9eda809282f362eb0e49bebd2956ba5a11bbc':
  Fixed a C++ style commenting issue and removed an unused field from H5F_trav_obj_ids_t.
2018-10-12 13:24:08 -05:00
Dana Robinson
b0b9eda809 Fixed a C++ style commenting issue and removed an unused field
from H5F_trav_obj_ids_t.
2018-10-12 10:47:47 -07:00
Dana Robinson
bb9e268782 Merge pull request #1293 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop to develop
* commit 'c3a813a37fb700d2d1039d6fdc54d8e377412b76':
  Fixed a memory issue in H5Drefresh() where the dataset's H5VL_object_t gets closed but we try to use it to find the driver.
2018-10-12 11:41:31 -05:00
Dana Robinson
c3a813a37f Fixed a memory issue in H5Drefresh() where the dataset's H5VL_object_t
gets closed but we try to use it to find the driver.
2018-10-11 15:08:02 -07:00
Allen Byrne
42c8dd66d7 Correct quote char 2018-10-11 14:34:34 -05:00
Allen Byrne
46e7e5f8f2 Add more descriptive option name 2018-10-11 12:35:53 -05:00
Allen Byrne
4659e43a6b HDFFV-10603 fixup cmake usage 2018-10-11 12:24:15 -05:00
Allen Byrne
d69b541c20 TRILABS-34 add batch option. Also fix cmakedefine01 usage 2018-10-11 11:31:09 -05:00
Dana Robinson
39b3b52a94 Merge pull request #1291 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:vol_squash to develop
* commit 'e962df1591bc6eaee5b9e318de83b9c6698bc7b6':
  VOL FEATURE
2018-10-10 16:26:21 -05:00
Dana Robinson
e962df1591 VOL FEATURE 2018-10-10 08:10:15 -07:00
Dana Robinson
471150151d Merge pull request #1282 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:H5I_debug to develop
* commit '75b84b09bd249b36a063fd51ecd3383801b0118b':
  Updated the H5I debug dump to not segfault when types are not initialized or contain zero IDs in the skip list.
  The H5I debug ID dump function is now always available instead of hidden behind an H5_DEBUG_OUTPUT ifdef.
2018-10-06 22:35:29 -05:00
Dana Robinson
75b84b09bd Updated the H5I debug dump to not segfault when types are not initialized
or contain zero IDs in the skip list.
2018-10-05 22:16:51 -07:00
Dana Robinson
1b2c820b4b The H5I debug ID dump function is now always available instead
of hidden behind an H5_DEBUG_OUTPUT ifdef.
2018-10-05 21:47:51 -07:00
Allen Byrne
cd69ff0181 Merge pull request #1278 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '299852b6b565c906938ffaad5bb8e841b82118ab':
  Update examples version
  Fix typo
  Reconciled docs with 1.10 branch
  TRILABS-34 improve cross compile with emulator
  TRILABS-34 Cleanup try_run
  TRILABS-34 avoid try-run output capture
2018-10-04 17:00:35 -05:00
Allen Byrne
299852b6b5 Update examples version 2018-10-04 16:59:22 -05:00
Allen Byrne
7d5ced1d23 Fix typo 2018-10-04 16:56:44 -05:00
Allen Byrne
1fc646e52b Reconciled docs with 1.10 branch 2018-10-04 16:48:34 -05:00
Allen Byrne
4442b5b743 TRILABS-34 improve cross compile with emulator 2018-10-04 16:06:31 -05:00
Allen Byrne
a5301ee6b8 TRILABS-34 Cleanup try_run 2018-10-04 15:34:29 -05:00
Allen Byrne
9c39016e1d TRILABS-34 avoid try-run output capture 2018-10-04 14:00:49 -05:00
Allen Byrne
36594716c3 Merge pull request #1277 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '2a95ab5acbe032f58891b653f56b9db8a4938d95':
  TRILABS-21 add toolchain related info and files
  TRILABS-21 Add intel compiler support
  Fix undef for Xl compilers
  TRILAB-21 Intel flags
2018-10-04 13:04:53 -05:00
Allen Byrne
2a95ab5acb TRILABS-21 add toolchain related info and files 2018-10-04 11:40:33 -05:00
Allen Byrne
284cb8ffc0 TRILABS-21 Add intel compiler support 2018-10-04 10:42:44 -05:00
Allen Byrne
d581cbeb9e Merge pull request #1276 in HDFFV/hdf5 from ~BYRN/hdf5_merge_adb:develop to develop
* commit '1cac34fc5bdae7f6cc265a4f94f82048642e5de7':
  Fix defines for XL compiler
2018-10-03 16:42:56 -05:00
Allen Byrne
1cac34fc5b Fix defines for XL compiler 2018-10-03 16:39:50 -05:00
Allen Byrne
c5256dcd9d Fix undef for Xl compilers 2018-10-03 16:24:46 -05:00
Allen Byrne
3209d1278f TRILAB-21 Intel flags 2018-10-02 18:13:21 -05:00
Jacob Smith
f5114fcddb Remove unnecessary H5_now() call; remove ohdr v2 mtime addition. 2018-10-02 10:50:37 -05:00
Allen Byrne
40179a9496 Merge pull request #1261 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'a2da9930af38a86387466a2021b71a2cc7484f1b':
  replace page chars
  Remove obsolete comment
2018-09-27 13:41:31 -05:00
Allen Byrne
a2da9930af replace page chars 2018-09-27 11:50:22 -05:00
Allen Byrne
8e48f6ec3a Remove obsolete comment 2018-09-27 09:58:27 -05:00
Allen Byrne
cc8538e1ed Merge pull request #1258 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'd26bb4d26ce5a23804a80c16dcb53e5f3eb957e4':
  HDFFV-10594 - mac must be space separated
  HDFFV-10594 - Add rpath configuration note
  Add extra path option for build location
  Use relative RPATH paths
2018-09-26 15:47:19 -05:00
Allen Byrne
d26bb4d26c HDFFV-10594 - mac must be space separated 2018-09-26 15:12:44 -05:00
Allen Byrne
ebec5c6117 HDFFV-10594 - Add rpath configuration note 2018-09-26 12:25:02 -05:00
Allen Byrne
5527dbfac2 Add extra path option for build location 2018-09-26 12:05:43 -05:00
Allen Byrne
01e40b31fe Use relative RPATH paths 2018-09-26 09:40:03 -05:00
Larry Knox
ab84c029c4 Merge pull request #1257 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '532a8df687e6acff18453fec6b8fe22f4bc65ebe':
  HDFFV-10531 document option for external libs
2018-09-25 15:05:47 -05:00
Allen Byrne
532a8df687 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '8e3b094bad1706b444554cd23591fd1c4431c1f1':
  Remainder of vol_normalization changes (dataset, attribute, files, objects).
2018-09-25 09:13:50 -05:00
Dana Robinson
8e3b094bad Merge pull request #1255 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop to develop
* commit '8a4695ed590809754794864d0473d15f8c1c69e3':
  Remainder of vol_normalization changes (dataset, attribute, files, objects).
2018-09-24 18:21:48 -05:00
Dana Robinson
8a4695ed59 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '2618dc314b9e4875e6ece7ee8696846ac2d02183':
  Remove extra unneeded
  Remove libsettings from pregenerated block
  CMake changes for SKIPPED and flush tests
  Correct $withval usage in configure
  HDFFV-10332 Adjust checks and generation of files
  HDFFV-10332 Use pre-generated files
2018-09-24 17:52:56 -05:00
Allen Byrne
ed6cfe8ee6 HDFFV-10531 document option for external libs 2018-09-24 16:18:42 -05:00
Allen Byrne
2618dc314b Merge pull request #1246 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '96d5da7f1ad681573d42d2a4fd9e422fe049442d':
  Remove extra unneeded
  Remove libsettings from pregenerated block
  Correct $withval usage in configure
  HDFFV-10332 Adjust checks and generation of files
  HDFFV-10332 Use pre-generated files
2018-09-24 16:17:39 -05:00
Allen Byrne
96d5da7f1a Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'e96bd2d46e208e0eb6c62cfcc4f86141f933884e':
  CMake changes for SKIPPED and flush tests
  H5S adjust callbacks now return an herr_t instead of void.
  Normalization with vol_integration (property lists, file drivers, other misc).
2018-09-24 15:55:19 -05:00
Allen Byrne
e96bd2d46e Merge pull request #1256 in HDFFV/hdf5 from ~BYRN/hdf5_merge_adb:develop to develop
* commit '8d7bdb704163327cacf8be3a4e03f02fb88a957b':
  CMake changes for SKIPPED and flush tests
2018-09-24 15:54:31 -05:00
Allen Byrne
9045cf049f Remove extra unneeded 2018-09-24 15:31:39 -05:00
Allen Byrne
a8f46df2c2 Remove libsettings from pregenerated block 2018-09-24 15:29:26 -05:00
Allen Byrne
8d7bdb7041 CMake changes for SKIPPED and flush tests 2018-09-24 14:38:46 -05:00
Dana Robinson
2874af2cac Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/~derobins/hdf5_der into develop 2018-09-24 12:24:28 -07:00
Dana Robinson
a56b4db4ae Remainder of vol_normalization changes (dataset, attribute, files, objects). 2018-09-24 12:23:41 -07:00
Dana Robinson
496de34110 Merge pull request #1254 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop to develop
* commit '37309c1bd98b3d810f09569c72ac375e75117a91':
  H5S adjust callbacks now return an herr_t instead of void.
2018-09-24 14:06:13 -05:00
Dana Robinson
37309c1bd9 Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/~derobins/hdf5_der into develop 2018-09-24 08:35:53 -07:00
Dana Robinson
30cd579a14 H5S adjust callbacks now return an herr_t instead of void. 2018-09-24 08:35:13 -07:00
Dana Robinson
8fb7c5a94f Merge pull request #1253 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop to develop
* commit '987bca5a34a09cd564445d53f58cf1e428e43276':
  Normalization with vol_integration (property lists, file drivers, other misc).
2018-09-24 10:01:53 -05:00
Allen Byrne
5b07855b2d Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '5c99d4e4df67699b81f1323e27a4df935d90e465':
  Normalization with vol_integration (misc internal and datatype)
2018-09-24 07:55:05 -05:00
Dana Robinson
987bca5a34 Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/~derobins/hdf5_der into develop 2018-09-21 12:12:49 -07:00
Dana Robinson
265652fe54 Normalization with vol_integration (property lists, file drivers,
other misc).
2018-09-21 12:12:05 -07:00
Dana Robinson
5c99d4e4df Merge pull request #1252 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop to develop
* commit '1c8916ca0e9fe3447efe205094a2b5d3d5ccf8f6':
  Normalization with vol_integration (misc internal and datatype)
2018-09-21 12:42:06 -05:00
Allen Byrne
d8aa676175 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'f03758613a6ec83e5ddd664590d162ccc888f13e':
  Snapshot version 1.11 release 2.
  Normalization with vol_integration (test code and H5Xtest.c)
2018-09-21 12:17:19 -05:00
Dana Robinson
1c8916ca0e Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/~derobins/hdf5_der into develop 2018-09-20 13:39:31 -07:00
Dana Robinson
b48686febd Normalization with vol_integration (misc internal and datatype) 2018-09-20 13:38:40 -07:00
Allen Byrne
f03758613a Merge pull request #1251 in HDFFV/hdf5 from ~HDFTEST/hdf5_hft:develop to develop
* commit '04a2d68778bc978ac62b03b5b5bfa034e2ced7f7':
  Snapshot version 1.11 release 2.
2018-09-20 15:32:32 -05:00
Jacob Smith
ff7d250093 Remove unused/redundant external file link test 2018-09-20 15:25:10 -05:00
Jacob Smith
9dec62e0ae Modify MTIME size behavior to be closer to expectations (we hope).
Minor code cleanup.
2018-09-20 15:15:49 -05:00
hdftest
04a2d68778 Merge branch 'develop' of ssh://bitbucket.hdfgroup.org:7999/~hdftest/hdf5_hft into develop 2018-09-20 14:59:17 -05:00
hdftest
e2f6e6f62f Snapshot version 1.11 release 2. 2018-09-20 14:54:10 -05:00
Jacob Smith
5f8f703dec Continued progress in implementing tests. 2018-09-20 14:16:26 -05:00
Dana Robinson
d3074fa8bd Merge pull request #1250 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop to develop
* commit '67a126c7ba8825ffb193c930c7b8cae939b3446d':
  Normalization with vol_integration (test code and H5Xtest.c)
2018-09-20 14:13:27 -05:00
Dana Robinson
67a126c7ba Normalization with vol_integration (test code and H5Xtest.c) 2018-09-20 10:40:51 -07:00
Allen Byrne
2862c93a2b Correct $withval usage in configure 2018-09-20 10:15:33 -05:00
Allen Byrne
a2da8fc776 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '99299e195b5294549b75b28321ae7f8d2c6f8644':
  Fix missed replacement
2018-09-20 10:01:58 -05:00
Allen Byrne
99299e195b Merge pull request #1248 in HDFFV/hdf5 from ~BYRN/hdf5_merge_adb:develop to develop
* commit 'b3ad9e1c0e3d70233518ee84bd68935f5adb3b89':
  Fix missed replacement
2018-09-20 10:01:12 -05:00
Allen Byrne
569682b478 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'bbafe0debae9886988e4b7ec31bb8ef7292e43f9':
  Remove extra constant
  Fix typo
  Add Constants to all ERR STK checks
  Use constants for test comparisons
  Develop normalization with vol_integration. Mostly peripheral things like the tools and wrappers, with just enough core library code to support that.
2018-09-20 09:04:51 -05:00
Allen Byrne
b3ad9e1c0e Fix missed replacement 2018-09-20 09:01:57 -05:00
Allen Byrne
bbafe0deba Merge pull request #1247 in HDFFV/hdf5 from ~BYRN/hdf5_merge_adb:develop to develop
* commit '59f36c5cdef1899742feb1c06ee09886e2d0a220':
  Remove extra constant
  Fix typo
  Add Constants to all ERR STK checks
  Use constants for test comparisons
2018-09-19 17:02:26 -05:00
Dana Robinson
bbde33f6f9 Merge pull request #1245 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_pull_request to develop
* commit 'eb78fd88325d58a95c026129f1e2b4c7c50f621a':
  Develop normalization with vol_integration. Mostly peripheral things like the tools and wrappers, with just enough core library code to support that.
2018-09-19 16:48:52 -05:00
Allen Byrne
59f36c5cde Remove extra constant 2018-09-19 10:52:43 -05:00
Allen Byrne
bd1be52990 Fix typo 2018-09-19 08:59:03 -05:00
Allen Byrne
cd290ddecb Add Constants to all ERR STK checks 2018-09-19 08:58:08 -05:00
Allen Byrne
d2806d4875 HDFFV-10332 Adjust checks and generation of files 2018-09-19 08:52:13 -05:00
Allen Byrne
fe418f6c23 Use constants for test comparisons 2018-09-19 08:06:05 -05:00
Allen Byrne
521eebbce2 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'ec53237fb849042b4a5b276a3e66a98ebb3710ee':
  Removed 'VOL' versions of FUNC_ENTER macros as well as empty functions orginally intended to support the full SWMR feature.
2018-09-19 07:44:32 -05:00
Dana Robinson
eb78fd8832 Develop normalization with vol_integration.
Mostly peripheral things like the tools and wrappers,
with just enough core library code to support that.
2018-09-18 22:57:37 -07:00
Dana Robinson
ec53237fb8 Merge pull request #1244 in HDFFV/hdf5 from ~DEROBINS/hdf5_der:develop_pull_request to develop
* commit '680cf4d946fd10d50e0f7acdc5bc93f91037fb4f':
  Removed 'VOL' versions of FUNC_ENTER macros as well as empty functions orginally intended to support the full SWMR feature.
2018-09-18 20:48:50 -05:00
Allen Byrne
deaa1db852 HDFFV-10332 Use pre-generated files 2018-09-18 17:31:40 -05:00
Allen Byrne
44de4ee2e5 Merge pull request #1243 in HDFFV/hdf5 from ~BYRN/hdf5_merge_adb:develop to develop
* commit '6c78869c19a88edfd7b6a2a99a8fb8f5febf0b7a':
  Fix whitespace and exit status
  HDFFV-9059 take file as argument
  HDFFV-9059 Allow detect to take a file as an argument
2018-09-18 16:39:28 -05:00
Dana Robinson
680cf4d946 Removed 'VOL' versions of FUNC_ENTER macros as well as empty functions
orginally intended to support the full SWMR feature.
2018-09-18 14:10:14 -07:00
Allen Byrne
6c78869c19 Fix whitespace and exit status 2018-09-18 13:22:48 -05:00
Larry Knox
cb5b36e4dc Merge pull request #1241 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit 'dfa58496a1f8d667de72a11affe0f5a2e3ae4558':
  Update COPYING file with new HDF5 license.
2018-09-18 13:03:17 -05:00
Allen Byrne
595b2d54ed HDFFV-9059 take file as argument 2018-09-18 12:35:17 -05:00
Allen Byrne
99f743ed1a HDFFV-9059 Allow detect to take a file as an argument 2018-09-18 10:29:12 -05:00
Larry Knox
dfa58496a1 Update COPYING file with new HDF5 license. 2018-09-17 16:09:59 -05:00
Jacob Smith
4e4d737eca Change H5F internals access 2018-09-14 15:49:45 -05:00
Jacob Smith
e1f3a10c52 Make questionable tests fail with TODOs 2018-09-14 15:24:00 -05:00
Jacob Smith
14c044f1b1 Change to use internal routines to get dcpl minimize setting.
Fix external file/link problem:
    Include H5Fpkg.h to access file private variables directly.
2018-09-14 15:10:01 -05:00
Jacob Smith
6af06e74be Add modtime dataset to explicitly not track 2018-09-14 13:55:56 -05:00
Jacob Smith
1e3efbcf52 Refactor file- and dataset-creation code for easier reading.
Add modification message test logic.
Minor formatting tweaks.
2018-09-14 13:34:34 -05:00
Jacob Smith
dbf6afee39 Remove redundant code and refactor 2018-09-12 15:40:26 -05:00
Jacob Smith
5beeb64c29 Add presumptive test for external links. 2018-09-12 15:38:32 -05:00
Jacob Smith
dde5666f42 Add additional tests (or placeholders for same).
Tests use h5_fixname().
Small changes.
2018-09-12 14:06:55 -05:00
Jacob Smith
7ef8d1d848 Add new test file 2018-09-11 16:45:33 -05:00
Jacob Smith
602dd3ac15 Stash work on object header reduction code and tests.
CMake stuff is not verified.
2018-09-11 16:37:14 -05:00
Allen Byrne
fbf837eac3 Merge pull request #1233 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'c9771263ae300a65f6f9ae518da766a314002bed':
  Minor text corrections
  HDFFV-10569 Add unsupported option notes to docs
2018-09-10 09:29:46 -05:00
Allen Byrne
c9771263ae Minor text corrections 2018-09-05 16:30:09 -05:00
Allen Byrne
1d2beee51f HDFFV-10569 Add unsupported option notes to docs 2018-09-04 11:43:15 -05:00
Allen Byrne
c834d9f99d Merge pull request #1232 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'fddbbc158d170b4e3a7ffd663f9799fd7e01a6a0':
  HDFFV-10568 fix hdf5_java library dependency
  Remove another extra path var
  Move muti-config dir setting to root process
  Fix one more intermediate location
  Use different variable
  Cleanup and add intermediate dir for java
2018-08-31 21:40:32 -05:00
Allen Byrne
fddbbc158d HDFFV-10568 fix hdf5_java library dependency 2018-08-31 21:00:16 -05:00
Allen Byrne
b951d1eae2 Remove another extra path var 2018-08-31 20:52:15 -05:00
Allen Byrne
fed65c435a Move muti-config dir setting to root process 2018-08-31 19:01:43 -05:00
Allen Byrne
a20168db02 Fix one more intermediate location 2018-08-31 14:45:32 -05:00
Allen Byrne
55e0b1e81e Use different variable 2018-08-31 14:05:25 -05:00
Allen Byrne
05c5d40dd5 Cleanup and add intermediate dir for java 2018-08-31 13:29:36 -05:00
Larry Knox
031088fc12 Merge pull request #1230 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '67220d101fbea90eab1c5bda0af531d39829c170':
  Java must use shared libs to allow dlopen calls
2018-08-30 22:18:25 -05:00
Allen Byrne
67220d101f Java must use shared libs to allow dlopen calls 2018-08-30 18:54:10 -05:00
Allen Byrne
e12f770b3e Merge pull request #1229 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'cd35778542c3c6e51ad334e6e4cf4be9f08bcaf8':
  Correct names
  Call new function
2018-08-30 13:00:21 -05:00
Larry Knox
fd2e588122 Merge pull request #1228 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit 'e6f8a55d8c42270efd7c870b7cee07b0d4ba7d08':
  Correct default API version for develop to 112.
2018-08-30 12:58:37 -05:00
Allen Byrne
cd35778542 Correct names 2018-08-30 08:38:28 -05:00
Allen Byrne
370db827ee Call new function 2018-08-30 08:29:21 -05:00
Larry Knox
e6f8a55d8c Correct default API version for develop to 112. 2018-08-29 23:06:50 -05:00
Allen Byrne
80c9c77d2e Merge pull request #1226 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'ff13ed67a9ce20e5f598bd46cd6dd544b5237e22':
  Fix typo
  HD prefix and whitespace
2018-08-28 15:09:31 -05:00
Allen Byrne
ff13ed67a9 Fix typo 2018-08-28 12:08:06 -05:00
Allen Byrne
27af9a7922 HD prefix and whitespace 2018-08-28 10:54:54 -05:00
Larry Knox
553b1a01f8 Merge pull request #1224 in HDFFV/hdf5 from ~JHENDERSON/hdf5:develop to develop
* commit '763b95c6b0f027025a5a5bfb203b77317ffa2368':
  Update RELEASE.txt with suggested changes
  Update MANIFEST file for new t_coll_md_read.c file
  Remove now-unused local variable
  Add fix for HDFFV-10501
2018-08-27 16:24:20 -05:00
Jordan Henderson
763b95c6b0 Update RELEASE.txt with suggested changes 2018-08-27 15:13:54 -05:00
Jordan Henderson
556bfd498c Update MANIFEST file for new t_coll_md_read.c file
Remove old line from copyright notice
2018-08-27 08:56:17 -05:00
Jordan Henderson
726642498c Remove now-unused local variable 2018-08-25 23:05:55 -05:00
Jordan Henderson
4cd10fa88e Add fix for HDFFV-10501
Add test for HDFFV-10501 fix

Add release note for HDFFV-10501 fix
2018-08-25 22:54:30 -05:00
Allen Byrne
cb9797f497 Merge pull request #1222 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'a02414cc24e01096a239fc774ce94c38655f53ce':
  Revert testfile FILE change
  change FILE path
  Add testfiles to data copy
  Same changes needed for examples as test
  Correct name of test jar
  Only remove test jars
  Remove obsolete var
  Correct name of osx installer
  DT location incorrect
2018-08-24 10:27:42 -05:00
Allen Byrne
a02414cc24 Revert testfile FILE change 2018-08-23 21:27:32 -05:00
Allen Byrne
c9b37b93e9 change FILE path 2018-08-23 21:22:32 -05:00
Allen Byrne
510950623a Add testfiles to data copy 2018-08-23 17:26:33 -05:00
Allen Byrne
958c7bd833 Same changes needed for examples as test 2018-08-23 16:30:13 -05:00
Allen Byrne
22eda96a9c Correct name of test jar 2018-08-23 14:53:05 -05:00
Allen Byrne
d9d78f705e Only remove test jars 2018-08-23 14:21:16 -05:00
Allen Byrne
0651432031 Remove obsolete var 2018-08-23 13:19:35 -05:00
Larry Knox
0f7e13cdb5 Merge pull request #1219 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit 'd20fd310e42b73e9037fb1a3bcc5e55d5e5c5162':
  Change prefix in example scripts to relative path to bin. This was done for 1.8, and works wherever installed without the need to replace the original prefix.
2018-08-23 10:41:02 -05:00
Allen Byrne
a87f597d89 Correct name of osx installer 2018-08-23 09:40:22 -05:00
Allen Byrne
2417775bb3 DT location incorrect 2018-08-23 08:58:35 -05:00
Allen Byrne
8ba735e1c3 Merge pull request #1218 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '0483f47192df44235154954256fa0b927fb7c94f':
  Use project vars
  Fix for packaging prefix in examples
2018-08-23 08:07:47 -05:00
Larry Knox
d20fd310e4 Change prefix in example scripts to relative path to bin. This was done
for 1.8, and works wherever installed without the need to replace the
original prefix.
2018-08-23 07:37:00 -05:00
Allen Byrne
0483f47192 Use project vars 2018-08-22 14:10:38 -05:00
Allen Byrne
9d1dae5daf Fix for packaging prefix in examples 2018-08-22 12:13:53 -05:00
Allen Byrne
9dd922a75c Merge pull request #1217 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'fbd17f62ea505face5fb650d78a47135e288f0b6':
  Add installib path to test command
  Fix OSX SIP for libs
2018-08-22 10:37:28 -05:00
Allen Byrne
fbd17f62ea Add installib path to test command 2018-08-21 10:22:15 -05:00
Allen Byrne
085ec19a21 Fix OSX SIP for libs 2018-08-21 10:03:26 -05:00
Allen Byrne
6bfc56056a Merge pull request #1213 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'f356d587a286f6407c9693c34201c89ea3adbbe1':
  Update fortran windows 10 version
2018-08-21 07:31:55 -05:00
Allen Byrne
f356d587a2 Update fortran windows 10 version 2018-08-20 18:26:57 -05:00
Allen Byrne
45603a6cdf Merge pull request #1211 in HDFFV/hdf5 from ~BYRN/hdf5_merge_adb:develop to develop
* commit '732aae11c53fb63cdab58735604babbfd4d5db44':
  HDFFV-10547 develop needs 1.12 default option
  Fix quote
  HDFFV-10547 requires updated examples version
2018-08-20 18:08:11 -05:00
Allen Byrne
732aae11c5 HDFFV-10547 develop needs 1.12 default option 2018-08-20 15:07:19 -05:00
Allen Byrne
c78f43b25e Fix quote 2018-08-20 12:01:49 -05:00
Allen Byrne
b33fdb17c3 HDFFV-10547 requires updated examples version 2018-08-20 11:25:09 -05:00
Allen Byrne
91e9ba76c9 Merge pull request #1210 in HDFFV/hdf5 from ~BYRN/hdf5_merge_adb:develop to develop
* commit 'caa4324217914227ad5a9ea83215a0508226d725':
  HDFFV-10553 Update html tags
2018-08-20 11:22:13 -05:00
Allen Byrne
caa4324217 HDFFV-10553 Update html tags 2018-08-20 08:19:02 -05:00
Allen Byrne
965f673cea Merge pull request #1206 in HDFFV/hdf5 from ~BYRN/hdf5_merge_adb:develop to develop
* commit 'ae7da889ece8ea6cfe3207f146ee991951b5ce66':
  HDFFV-10552 Add missing HDF5_USE_110[2]_API_DEFAULT option
2018-08-17 14:56:45 -05:00
Allen Byrne
ae7da889ec HDFFV-10552 Add missing HDF5_USE_110[2]_API_DEFAULT option 2018-08-17 14:48:43 -05:00
Allen Byrne
105a05cb90 Merge pull request #1205 in HDFFV/hdf5 from ~BYRN/hdf5_merge_adb:develop to develop
* commit 'a6100a3445921480a9d65dbfc49e7600e7923bd5':
  HDFFV-10536 callback crash fixed by using stack structure
2018-08-17 14:25:10 -05:00
Allen Byrne
a6100a3445 HDFFV-10536 callback crash fixed by using stack structure 2018-08-17 14:12:11 -05:00
Allen Byrne
a7a814fa83 Merge pull request #1204 in HDFFV/hdf5 from ~BYRN/hdf5_merge_adb:develop to develop
* commit '454b04176ae8daeadcd26bb532ed77c4c051a9c3':
  Update cmake warnings to match the autotools files better
2018-08-17 13:47:48 -05:00
Allen Byrne
454b04176a Update cmake warnings to match the autotools files better 2018-08-16 15:45:31 -05:00
Larry Knox
7d7929d43f Merge pull request #1198 in HDFFV/hdf5 from ~BYRN/hdf5_merge_adb:develop to develop
* commit '201d1722dc14f5adb0ab5c42b11fac15e9da8454':
  Fix JIRA number format
2018-08-16 15:32:30 -05:00
Allen Byrne
201d1722dc Fix JIRA number format 2018-08-16 15:31:02 -05:00
Allen Byrne
42b1c08ee0 Merge pull request #1196 in HDFFV/hdf5 from ~BYRN/hdf5_merge_adb:develop to develop
* commit '12adeedf6b817d99d00051d0549448f52a65c6a4':
  HDFFV-10552 fix version script (missed when 1.11 created)
2018-08-16 15:12:11 -05:00
Allen Byrne
12adeedf6b HDFFV-10552 fix version script (missed when 1.11 created) 2018-08-16 15:06:29 -05:00
Binh-Minh Ribler
8e92fd2b36 Merge pull request #1192 in HDFFV/hdf5 from ~BMRIBLER/hdf5_bmr_cpp4:develop to develop
Add CVE issues.

* commit '7c2d969e85eac7c72f3a289385b2707ea3e77217':
  Added notes about CVE issues.
2018-08-14 23:05:47 -05:00
Binh-Minh Ribler
7c2d969e85 Added notes about CVE issues. 2018-08-14 18:22:10 -05:00
Jordan Henderson
5647dea421 Merge pull request #1186 in HDFFV/hdf5 from ~JHENDERSON/hdf5:develop to develop
* commit '4f4f177b0af6063c0c22ec2e1a9ca99549bc8aac':
  Rearrange issues by date order
  RELEASE.txt changes for MPI updates
2018-08-09 13:08:02 -05:00
Jordan Henderson
4f4f177b0a Rearrange issues by date order 2018-08-09 11:38:23 -05:00
Jordan Henderson
f82395f2db Merge branch 'develop' of ssh://bitbucket.hdfgroup.org:7999/~jhenderson/hdf5 into develop 2018-08-09 11:26:29 -05:00
Jordan Henderson
90699af5f4 RELEASE.txt changes for MPI updates 2018-08-09 11:26:10 -05:00
Larry Knox
9c52453657 Merge pull request #1185 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '01c9aa1e76857bf22771342dadf87af08979aa33':
  Update Drop Site options and Coverage settings
2018-08-09 11:09:36 -05:00
Allen Byrne
01c9aa1e76 Update Drop Site options and Coverage settings 2018-08-09 10:59:32 -05:00
Larry Knox
b5c6121a5d Merge pull request #1178 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:develop to develop
* commit 'a3385675b3cdc2102457a9f91877cc27778ab29a':
  Reorder bugfix release notes from latest to earliest, and miscellaneous format cleanup.
  Add RELEASE.txt entry for HDFFV-10475
2018-08-07 15:25:13 -05:00
Larry Knox
a3385675b3 Reorder bugfix release notes from latest to earliest, and miscellaneous
format cleanup.
2018-08-07 13:18:56 -05:00
Larry Knox
bd27f0d419 Add RELEASE.txt entry for HDFFV-10475 2018-08-07 11:45:23 -05:00
Allen Byrne
f455ac063f Merge pull request #1176 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'f9074881cdfe04e96e7faa43e955b42428d9fcb9':
  HDFFV-10544 Add more descriptive text
2018-08-06 11:56:19 -05:00
Allen Byrne
f9074881cd HDFFV-10544 Add more descriptive text 2018-08-06 11:31:20 -05:00
Allen Byrne
fe7aaff8cc Merge pull request #1175 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '6e4c036d5dc476396428f4b044e23043a80e8df7':
  HDFFV-10544 Correct var name
  HDFFV-10544 remove native from class function
  HDFFV-10544 correct typo
  HDFFV-10544 add release note
  HDFFV-10544 add class name to error text
  HDFFV-10544 exception variable as local class
  Improve error handling of exceptions
2018-08-06 11:00:48 -05:00
Allen Byrne
6e4c036d5d HDFFV-10544 Correct var name 2018-08-06 11:00:28 -05:00
Allen Byrne
4d5255106c HDFFV-10544 remove native from class function 2018-08-06 09:56:01 -05:00
Allen Byrne
9efb9b7426 HDFFV-10544 correct typo 2018-08-06 09:44:41 -05:00
Allen Byrne
565ee9e7f9 HDFFV-10544 add release note 2018-08-06 09:39:44 -05:00
Allen Byrne
2f4832fe09 HDFFV-10544 add class name to error text 2018-08-06 09:23:21 -05:00
Allen Byrne
ca7d4f85a5 HDFFV-10544 exception variable as local class 2018-08-06 09:15:08 -05:00
Allen Byrne
762c14fde5 Improve error handling of exceptions 2018-08-06 08:14:04 -05:00
Allen Byrne
51d31c5ff8 Merge pull request #1173 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit 'b4571f619018f428569cbae5d025935ac5f1788e':
  Typo fix
  Set CMAKE_REQUIRED_INCLUDES instead of using path in call
2018-08-02 11:48:02 -05:00
Allen Byrne
b4571f6190 Typo fix 2018-08-02 10:38:54 -05:00
Allen Byrne
2c17b19861 Set CMAKE_REQUIRED_INCLUDES instead of using path in call 2018-08-02 10:22:37 -05:00
Jordan Henderson
70de0b18e3 Merge pull request #1167 in HDFFV/hdf5 from ~JHENDERSON/hdf5:bugfix/MPI2_only_fixes to develop
* commit '9aa2eaeb9ed9c94f63973cb55f13de256558497c':
  Add Autotools and CMake checks for big I/O MPI-3 functions
  Add hdf5settings section for parallel compression status in CMake builds
  Switch to CheckSymbolExists in CMake
  Add configure check for MPI_Mprobe and MPI_Imrecv functions
2018-08-02 09:25:00 -05:00
Jordan Henderson
9aa2eaeb9e Add Autotools and CMake checks for big I/O MPI-3 functions 2018-07-31 13:42:19 -05:00
Jordan Henderson
5e138dc1e9 Add hdf5settings section for parallel compression status in CMake builds 2018-07-31 10:45:43 -05:00
Allen Byrne
cca9fbcff0 Merge pull request #1163 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '77cb2dca17bf739fe8cf0979793bb0f00347a692':
  HDFFV-10508 rework sentence
  HDFFV-10508 clarify library differences
  HDFFV-10508 spelling and grammer
  HDFFV-10508 more config fixes
  HDFFV-10508 correct sizeof
  HDFFV-10508 pubconf changes found
  HDFFV-10508 Document binary diffs
  HDFFV-9755 Document BUILD_STATIC_EXECS
2018-07-31 09:56:44 -05:00
Allen Byrne
77cb2dca17 HDFFV-10508 rework sentence 2018-07-31 09:56:12 -05:00
Allen Byrne
2822921c23 HDFFV-10508 clarify library differences 2018-07-31 09:41:11 -05:00
Allen Byrne
b8945eac22 HDFFV-10508 spelling and grammer 2018-07-31 09:28:17 -05:00
Scot Breitenfeld
3c781c18c9 Merge pull request #1165 in HDFFV/hdf5 from ~BRTNFLD/hdf5_msb:develop to develop
* commit '2b41860efdd24a003a0981505553cf8b1040ea0a':
  Removed FORTRAN_SIZEOF_LONG_DOUBLE from public .h files
2018-07-30 17:15:36 -05:00
Allen Byrne
496372dc18 HDFFV-10508 more config fixes 2018-07-30 17:10:00 -05:00
M. Scot Breitenfeld
2b41860efd Merge branch 'develop' of ssh://bitbucket.hdfgroup.org:7999/~brtnfld/hdf5_msb into develop 2018-07-30 17:01:54 -05:00
M. Scot Breitenfeld
d105690263 Removed FORTRAN_SIZEOF_LONG_DOUBLE from public .h files 2018-07-30 17:01:44 -05:00
Allen Byrne
323635f2b5 HDFFV-10508 correct sizeof 2018-07-30 16:31:39 -05:00
Allen Byrne
63fa8acbac Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit 'b6d1e9abdc2571f6d7b56ebab26a245d2f036516':
  Fixed typo in H5_H5CONFIG_F_IKIND name
2018-07-30 16:30:51 -05:00
Allen Byrne
b6d1e9abdc Merge pull request #1164 in HDFFV/hdf5 from ~BRTNFLD/hdf5_msb:develop to develop
* commit '8f79022bc63c7eca3af66eec7c2a99585a7c5397':
  Fixed typo in H5_H5CONFIG_F_IKIND name
2018-07-30 16:29:55 -05:00
M. Scot Breitenfeld
8f79022bc6 Fixed typo in H5_H5CONFIG_F_IKIND name 2018-07-30 16:17:27 -05:00
Allen Byrne
2770f0bf9f HDFFV-10508 pubconf changes found 2018-07-30 15:46:42 -05:00
Allen Byrne
c0ff42f676 HDFFV-10508 Document binary diffs 2018-07-30 15:09:50 -05:00
Allen Byrne
b33ba00c9c HDFFV-9755 Document BUILD_STATIC_EXECS 2018-07-30 12:39:38 -05:00
Allen Byrne
958cc1a969 Merge pull request #1161 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '91f20982daf2f76d4b8f3ba4f4659db7cd62c821':
  HDFFV-10534 add note
2018-07-30 12:10:10 -05:00
Allen Byrne
91f20982da HDFFV-10534 add note 2018-07-30 11:51:20 -05:00
Allen Byrne
882e59d1b3 Merge pull request #1157 in HDFFV/hdf5 from ~JHENDERSON/hdf5:bugfix/CMake_MPI_libs_fix to develop
* commit 'd075c0854d1ffb5a8eae23c5eb9a4456067f30c9':
  Add quotes to places where MPI_C_LIBRARIES are linked against
2018-07-30 11:45:55 -05:00
Binh-Minh Ribler
94e96737a7 Merge pull request #1158 in HDFFV/hdf5 from ~BMRIBLER/hdf5_bmr_cpp4:develop to develop
Typos in comments

* commit '7d9f5ed49a560fe8801b77cce8ffb60a2ec5e846':
  Fixed document format Platforms tested:     Linux/64 (jelly) (only in comment sections)
  Fixed missing backslash
2018-07-30 11:04:16 -05:00
Allen Byrne
7fe579d1f5 Merge pull request #1160 in HDFFV/hdf5 from ~BYRN/hdf5_adb:develop to develop
* commit '49a8da4ea79677804131aef87287f80b30658fd1':
  HDFFV-10534
  Add missing test option
  Add test file with unwritten datasets
2018-07-30 10:41:51 -05:00
Allen Byrne
49a8da4ea7 HDFFV-10534 2018-07-30 08:57:12 -05:00
Binh-Minh Ribler
7d9f5ed49a Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/~bmribler/hdf5_bmr_cpp4 into develop 2018-07-28 08:05:16 -05:00
Binh-Minh Ribler
4578eb0fc1 Fixed document format
Platforms tested:
    Linux/64 (jelly) (only in comment sections)
2018-07-28 08:00:32 -05:00
Jordan Henderson
d075c0854d Add quotes to places where MPI_C_LIBRARIES are linked against 2018-07-27 14:58:01 -05:00
Jordan Henderson
256fc4754b Switch to CheckSymbolExists in CMake 2018-07-27 12:49:42 -05:00
Allen Byrne
e4741cd8f2 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '272eb4b8bffd2ab732d268c421583587317b8dc2':
  RELEASE.txt updates for HDFFV-10467 and HDFFV-10509
  Update HDF5 examples to correct version.
  Correct a few typos.
  Correct typo in comment in config/gnu-flags.
  Update bine/release to create batch scripts and build-unix-sh, and to put files in a subdirectory.
2018-07-27 10:15:25 -05:00
Larry Knox
272eb4b8bf Merge pull request #1152 in HDFFV/hdf5 from ~JHENDERSON/hdf5:develop to develop
* commit '5550fb330a00ef75b6ab6daa6d8dae8bcf832185':
  RELEASE.txt updates for HDFFV-10467 and HDFFV-10509
2018-07-26 17:05:59 -05:00
Jordan Henderson
e1e10743cf Add configure check for MPI_Mprobe and MPI_Imrecv functions
Add line to libhdf5settings file for status of Parallel writes to
filtered datasets status

Surround Parallel Compression code in MPI_VERSION >= 3 checks

Add disabled message for Parallel Compression built w/ MPI-2

Modify Parallel Compression tests to only run the parallel filtered read
tests when parallel filtered writes are disabled

Update big I/O code to handle being built with MPI-2

Add checks to CMakeLists.txt for MPI_Mprobe and MPI_Imrecv
2018-07-26 12:50:26 -05:00
Jordan Henderson
5550fb330a RELEASE.txt updates for HDFFV-10467 and HDFFV-10509 2018-07-25 13:16:41 -05:00
Allen Byrne
14c060bbeb Add missing test option 2018-07-24 14:15:32 -05:00
Allen Byrne
b14c8bdb1c Add test file with unwritten datasets 2018-07-24 12:00:07 -05:00
Binh-Minh Ribler
f5551a9602 Fixed missing backslash 2018-07-24 08:39:16 -05:00
Quincey Koziol
949649a2b6 Correct mistake in H5_now_usec calculation for clock_gettime. 2017-09-24 14:08:40 -05:00
Quincey Koziol
395473b2f4 Remove detection for mach/mach/time.h, since we're no longer using the
time routines from that header.
2017-09-23 21:47:36 -05:00
Quincey Koziol
e70dc43d6b Update H5_now_usec to prefer using clock_gettime. 2017-09-23 21:47:07 -05:00
Quincey Koziol
6718b90009 Merge remote-tracking branch 'origin/develop' into monotonic_timer 2017-09-03 02:54:27 -05:00
Quincey Koziol
d5c3ec8b93 Changes to make timers within the library monotonic. 2017-09-03 02:53:28 -05:00
2740 changed files with 813185 additions and 469768 deletions

View File

@@ -1,11 +1,10 @@
# Copyright by The HDF Group.
# Copyright by the Board of Trustees of the University of Illinois.
# All rights reserved.
#
# This file is part of HDF5. The full HDF5 copyright notice, including
# terms governing use, modification, and redistribution, is contained in
# the COPYING file, which can be found at the root of the source code
# distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases.
# distribution tree, or in https://www.hdfgroup.org/licenses.
# If you do not have access to either file, you may request a copy from
# help@hdfgroup.org.

100
.clang-format Normal file
View File

@@ -0,0 +1,100 @@
---
BasedOnStyle: LLVM
AlignConsecutiveAssignments: true
BraceWrapping:
AfterFunction: true
#llvm10-11: AfterControlStatement: false - Never
BeforeCatch: true
BeforeElse: true
#llvm11: BeforeLambdaBody: false
#llvm11: BeforeWhile: false
BreakBeforeBraces: Stroustrup
BreakAfterJavaFieldAnnotations: true
BreakStringLiterals: true
ColumnLimit: 110 # Update $max_trace_macro_line_len in bin/trace also
IndentWidth: 4
---
Language: Cpp
#llvm11: AlignConsecutiveBitFields: false
AlignConsecutiveDeclarations: true
AlignConsecutiveMacros: true
#llvm10-11: AlignOperands: true - Align
#llvm11: AllowShortEnumsOnASingleLine: true
AllowShortFunctionsOnASingleLine: None
AlwaysBreakAfterReturnType: AllDefinitions
# Can enable the following section when llvm 12.x is out
#AttributeMacros:
# - H5_ATTR_FORMAT
# - H5_ATTR_UNUSED
# - H5_ATTR_DEPRECATED_USED
# - H5_ATTR_NDEBUG_UNUSED
# - H5_ATTR_DEBUG_API_USED
# - H5_ATTR_PARALLEL_UNUSED
# - H5_ATTR_PARALLEL_USED
# - H5_ATTR_NORETURN
# - H5_ATTR_CONST
# - H5_ATTR_PURE
# - H5_ATTR_FALLTHROUGH
ForEachMacros: ['ALL_MEMBERS', 'UNIQUE_MEMBERS']
IncludeCategories:
- Regex: '^"(llvm|llvm-c|clang|clang-c)/'
Priority: 3
SortPriority: 0
- Regex: '^(<|"(gtest|gmock|isl|json)/)'
Priority: 4
SortPriority: 0
- Regex: '.*'
Priority: 0
SortPriority: 0
- Regex: '^H5*.*'
Priority: 1
SortPriority: 0
- Regex: 'private.*'
Priority: 2
SortPriority: 0
IncludeIsMainRegex: '(public)?$'
IndentCaseLabels: true
#llvm11: IndentCaseBlocks: false
IndentGotoLabels: false
#llvm11: IndentExternBlock: AfterExternBlock
#llvm11: InsertTrailingCommas: None
MacroBlockBegin: "^BEGIN_FUNC"
MacroBlockEnd: "^END_FUNC"
ObjCBlockIndentWidth: 4
#llvm11: ObjCBreakBeforeNestedBlockParam: true
ReflowComments: true
SortIncludes: false
StatementMacros:
- FUNC_ENTER_API
- FUNC_LEAVE_API
- FUNC_ENTER_NOAPI_NOINIT_NOERR
- FUNC_LEAVE_NOAPI
- H5_BEGIN_TAG
- HGOTO_DONE_TAG
- H5_END_TAG
- HSYS_DONE_ERROR
- HSYS_GOTO_ERROR
- HDONE_ERROR
- HERROR
- H5_LEAVE
- H5E_PRINTF
- H5E_THROW
- HGOTO_DONE
- HGOTO_ERROR
- HMPI_ERROR
- HMPI_DONE_ERROR
- HMPI_GOTO_ERROR
- H5_GCC_DIAG_OFF
- H5_GCC_DIAG_ON
- CATCH
#llvm10: TypenameMacros:
#llvm10: - STACK_OF
#llvm10: - LIST
#llvm11: WhitespaceSensitiveMacros:
#llvm11: - STRINGIZE
#llvm11: - PP_STRINGIZE
---
Language: Java
BreakAfterJavaFieldAnnotations: true
JavaImportGroups: ['java', 'hdf', 'hdf.hdf5lib', 'org']
...

22
.gitattributes vendored
View File

@@ -192,12 +192,12 @@ java/examples/testfiles/examples.intro.H5_CreateGroup.txt -text
java/examples/testfiles/examples.intro.H5_CreateGroupAbsoluteRelative.txt -text
java/examples/testfiles/examples.intro.H5_CreateGroupDataset.txt -text
java/examples/testfiles/examples.intro.H5_ReadWrite.txt -text
java/lib/ext/slf4j-nop-1.7.25.jar -text svneol=unset#application/zip
java/lib/ext/slf4j-simple-1.7.25.jar -text svneol=unset#application/zip
java/lib/ext/slf4j-nop-1.7.33.jar -text svneol=unset#application/zip
java/lib/ext/slf4j-simple-1.7.33.jar -text svneol=unset#application/zip
java/lib/hamcrest-core.jar -text svneol=unset#application/java-archive
java/lib/junit.jar -text svneol=unset#application/java-archive
java/lib/simplelogger.properties -text
java/lib/slf4j-api-1.7.25.jar -text svneol=unset#application/zip
java/lib/slf4j-api-1.7.33.jar -text svneol=unset#application/zip
java/src/CMakeLists.txt -text
java/src/Makefile.am -text
java/src/hdf/CMakeLists.txt -text
@@ -216,10 +216,10 @@ java/src/hdf/hdf5lib/callbacks/H5D_iterate_cb.java -text
java/src/hdf/hdf5lib/callbacks/H5D_iterate_t.java -text
java/src/hdf/hdf5lib/callbacks/H5E_walk_cb.java -text
java/src/hdf/hdf5lib/callbacks/H5E_walk_t.java -text
java/src/hdf/hdf5lib/callbacks/H5L_iterate_cb.java -text
java/src/hdf/hdf5lib/callbacks/H5L_iterate_t.java -text
java/src/hdf/hdf5lib/callbacks/H5O_iterate_cb.java -text
java/src/hdf/hdf5lib/callbacks/H5L_iterate_opdata_t.java -text
java/src/hdf/hdf5lib/callbacks/H5O_iterate_t.java -text
java/src/hdf/hdf5lib/callbacks/H5O_iterate_opdata_t.java -text
java/src/hdf/hdf5lib/callbacks/H5P_cls_close_func_cb.java -text
java/src/hdf/hdf5lib/callbacks/H5P_cls_close_func_t.java -text
java/src/hdf/hdf5lib/callbacks/H5P_cls_copy_func_cb.java -text
@@ -267,6 +267,8 @@ java/src/hdf/hdf5lib/structs/H5G_info_t.java -text
java/src/hdf/hdf5lib/structs/H5L_info_t.java -text
java/src/hdf/hdf5lib/structs/H5O_hdr_info_t.java -text
java/src/hdf/hdf5lib/structs/H5O_info_t.java -text
java/src/hdf/hdf5lib/structs/H5O_native_info_t.java -text
java/src/hdf/hdf5lib/structs/H5O_token_t.java -text
java/src/hdf/hdf5lib/structs/H5_ih_info_t.java -text
java/src/hdf/overview.html -text
java/src/jni/CMakeLists.txt -text
@@ -363,6 +365,7 @@ m4/ax_check_rqrd_class.m4 -text
m4/ax_java_check_class.m4 -text
m4/ax_java_options.m4 -text
m4/ax_jni_include_dir.m4 -text
m4/ax_prog_doxygen.m4 -text
m4/ax_prog_jar.m4 -text
m4/ax_prog_java.m4 -text
m4/ax_prog_java_cc.m4 -text
@@ -390,10 +393,10 @@ test/cork.c -text
test/corrupt_stab_msg.h5 -text
test/deflate.h5 -text
test/dynlib4.c -text
test/family_v16_00000.h5 -text
test/family_v16_00001.h5 -text
test/family_v16_00002.h5 -text
test/family_v16_00003.h5 -text
test/family_v16-000000.h5 -text
test/family_v16-000001.h5 -text
test/family_v16-000002.h5 -text
test/family_v16-000003.h5 -text
test/file_image_core_test.h5 -text
test/filespace_1_6.h5 -text
test/filespace_1_8.h5 -text
@@ -782,6 +785,7 @@ tools/testfiles/tints4dimsStride2.ddl -text
tools/testfiles/tintsattrs.h5 -text svneol=unset#application/x-hdf
tools/testfiles/tlarge_objname.h5 -text
tools/testfiles/tldouble.h5 -text
tools/testfiles/tldouble_scalar.h5 -text
tools/testfiles/tlonglinks.h5 -text
tools/testfiles/tloop.h5 -text
tools/testfiles/tloop2.h5 -text

11
.github/CODEOWNERS vendored Normal file
View File

@@ -0,0 +1,11 @@
# Lines starting with '#' are comments.
# Each line is a file pattern followed by one or more owners.
# These owners will be the default owners for everything in the repo.
* @lrknox @derobins @byrnHDF @fortnern @jhendersonHDF @qkoziol @vchoi-hdfgroup @bmribler @raylu-hdf @mattjala @brtnfld
# Order is important. The last matching pattern has the most precedence.
# So if a pull request only touches javascript files, only these owners
# will be requested to review.
/fortran/ @brtnfld @derobins
/java/ @jhendersonHDF @byrnHDF @derobins

3
.github/FUNDING.yml vendored Normal file
View File

@@ -0,0 +1,3 @@
# These are supported funding model platforms
custom: "https://hdfgroup.org/about-us/donate-to-the-hdf-group/"

25
.github/ISSUE_TEMPLATE/bug_report.md vendored Normal file
View File

@@ -0,0 +1,25 @@
---
name: Bug report
about: Report a problem with HDF5
title: "[BUG]"
labels: bug
assignees: ''
---
**Describe the bug**
A clear and concise description of what the bug is.
**Expected behavior**
A clear and concise description of what you expected to happen.
**Platform (please complete the following information)**
- HDF5 version (if building from a maintenance branch, please include the commit hash)
- OS and version
- Compiler and version
- Build system (e.g. CMake, Autotools) and version
- Any configure options you specified
- MPI library and version (parallel HDF5)
**Additional context**
Add any other context about the problem here.

View File

@@ -0,0 +1,20 @@
---
name: Feature request
about: Suggest an improvement to HDF5
title: "[Feature Request]"
labels: enhancement
assignees: ''
---
**Is your feature request related to a problem? Please describe.**
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
**Describe the solution you'd like**
A clear and concise description of what you want to happen.
**Describe alternatives you've considered**
A clear and concise description of any alternative solutions or features you've considered.
**Additional context**
Add any other context or screenshots about the feature request here.

View File

@@ -0,0 +1,8 @@
## Describe your changes
## Issue ticket number (GitHub or JIRA)
## Checklist before requesting a review
- [ ] My code conforms to the guidelines in CONTRIBUTING.md
- [ ] I made an entry in release_docs/RELEASE.txt (bug fixes, new features)
- [ ] I added a test (bug fixes, new features)

View File

@@ -0,0 +1,18 @@
name: clang-format Check
on:
pull_request:
jobs:
formatting-check:
name: Formatting Check
runs-on: ubuntu-latest
if: "!contains(github.event.head_commit.message, 'skip-ci')"
steps:
- uses: actions/checkout@v3
- name: Run clang-format style check for C and Java programs.
uses: DoozyX/clang-format-lint-action@v0.13
with:
source: '.'
extensions: 'c,h,cpp,hpp,java'
clangFormatVersion: 13
style: file
exclude: './config ./hl/src/H5LTanalyze.c ./hl/src/H5LTparse.c ./hl/src/H5LTparse.h ./src/H5Epubgen.h ./src/H5Einit.h ./src/H5Eterm.h ./src/H5Edefin.h ./src/H5version.h ./src/H5overflow.h'

25
.github/workflows/clang-format-fix.yml vendored Normal file
View File

@@ -0,0 +1,25 @@
name: clang-format Check
on:
workflow_dispatch:
push:
jobs:
formatting-check:
name: Formatting Check
runs-on: ubuntu-latest
if: "!contains(github.event.head_commit.message, 'skip-ci')"
steps:
- uses: actions/checkout@v3
- name: Run clang-format style check for C and Java programs.
uses: DoozyX/clang-format-lint-action@v0.13
with:
source: '.'
extensions: 'c,h,cpp,hpp,java'
clangFormatVersion: 13
inplace: True
style: file
exclude: './config ./hl/src/H5LTanalyze.c ./hl/src/H5LTparse.c ./hl/src/H5LTparse.h ./src/H5Epubgen.h ./src/H5Einit.h ./src/H5Eterm.h ./src/H5Edefin.h ./src/H5version.h ./src/H5overflow.h'
- uses: EndBug/add-and-commit@v7
with:
author_name: github-actions
author_email: 41898282+github-actions[bot]@users.noreply.github.com
message: 'Committing clang-format changes'

15
.github/workflows/codespell.yml vendored Normal file
View File

@@ -0,0 +1,15 @@
# GitHub Action to automate the identification of common misspellings in text files
# https://github.com/codespell-project/codespell
# https://github.com/codespell-project/actions-codespell
name: codespell
on: [push, pull_request]
jobs:
codespell:
name: Check for spelling errors
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: codespell-project/actions-codespell@master
with:
skip: ./bin/trace,./hl/tools/h5watch/h5watch.c,./tools/test/h5jam/tellub.c,./config/sanitizer/LICENSE,./tools/test/h5repack/testfiles/*.dat
ignore_words_list: isnt,inout,nd,parms,parm,ba,offsetP,ser,ois,had,fiter,fo,clude,refere,minnum,offsetp,creat,ans:,eiter,lastr,ans,isn't,ifset,sur,trun,dne,tthe,hda,filname,te,htmp,minnum,ake,gord,numer,ro,oce

496
.github/workflows/main.yml vendored Normal file
View File

@@ -0,0 +1,496 @@
name: hdf5 dev CI
# Controls when the action will run. Triggers the workflow on push or pull request
on:
workflow_dispatch:
push:
pull_request:
branches: [ develop, hdf5_1_14, hdf5_1_12, hdf5_1_10, hdf5_1_8 ]
paths-ignore:
- '.github/CODEOWNERS'
- '.github/FUNDING.yml'
- 'doc/**'
- 'release_docs/**'
- 'ACKNOWLEDGEMENTS'
- 'COPYING**'
- '**.md'
# A workflow run is made up of one or more jobs that can run sequentially or
# in parallel. We just have one job, but the matrix items defined below will
# run in parallel.
jobs:
# A workflow that builds the library and runs all the tests
build_and_test:
strategy:
# The current matrix has three dimensions:
#
# * config name
# * thread-safety on/off
# * release vs. debug build
#
# Most configuration information is added via the 'include' mechanism,
# which will append the key-value pairs in the configuration where the
# names match.
matrix:
name:
- "Windows MSVC CMake"
- "Ubuntu gcc CMake"
- "Ubuntu gcc Autotools"
- "Ubuntu gcc Autotools parallel (build only)"
- "MacOS Clang CMake"
thread_safety:
- enabled: true
text: " TS"
- enabled: false
text: ""
build_mode:
- text: " REL"
cmake: "Release"
autotools: "production"
- text: " DBG"
cmake: "Debug"
autotools: "debug"
# This is where we list the bulk of the options for each configuration.
# The key-value pair values are usually appropriate for being CMake or
# Autotools configure values, so be aware of that.
include:
# Windows w/ MSVC + CMake
#
# No Fortran, parallel, or VFDs that rely on POSIX things
- name: "Windows MSVC CMake"
os: windows-2022
toolchain: ""
cpp: ON
fortran: OFF
java: ON
parallel: OFF
mirror_vfd: OFF
direct_vfd: OFF
generator: "-G \"Visual Studio 17 2022\" -A x64"
run_tests: true
# Linux (Ubuntu) w/ gcc + CMake
#
# We might think about adding Clang, but MacOS already tests that
# so it's not critical
- name: "Ubuntu gcc CMake"
os: ubuntu-latest
cpp: ON
fortran: ON
java: ON
parallel: OFF
mirror_vfd: ON
direct_vfd: ON
toolchain: "config/toolchain/GCC.cmake"
generator: "-G Ninja"
run_tests: true
# Linux (Ubuntu) w/ gcc + Autotools
#
# Keep this identical to the CMake configs. Note the difference in
# the values.
- name: "Ubuntu gcc Autotools"
os: ubuntu-latest
cpp: enable
fortran: enable
java: enable
parallel: disable
mirror_vfd: enable
direct_vfd: enable
deprec_sym: enable
default_api: v114
szip: yes
toolchain: ""
generator: "autogen"
flags: ""
run_tests: true
# Parallel Linux (Ubuntu) w/ gcc + Autotools
#
# The GitHub runners are inadequate for running parallel HDF5 tests,
# so we catch most issues in daily testing. What we have here is just
# a compile check to make sure nothing obvious is broken.
- name: "Ubuntu gcc Autotools parallel (build only)"
os: ubuntu-latest
cpp: disable
fortran: enable
java: disable
parallel: enable
mirror_vfd: disable
direct_vfd: disable
deprec_sym: enable
default_api: v114
szip: yes
toolchain: ""
generator: "autogen"
flags: "CC=mpicc"
run_tests: false
# MacOS w/ Clang + CMake
#
# We could also build with the Autotools via brew installing them,
# but that seems unnecessary
- name: "MacOS Clang CMake"
os: macos-11
cpp: ON
fortran: OFF
java: ON
parallel: OFF
mirror_vfd: ON
direct_vfd: OFF
toolchain: "config/toolchain/clang.cmake"
generator: "-G Ninja"
run_tests: true
#
# SPECIAL AUTOTOOLS BUILDS
#
# These do not run tests and are not built into the matrix and instead
# become NEW configs as their name would clobber one of the matrix
# names (so make sure the names are UNIQUE).
#
- name: "Ubuntu gcc Autotools v1.6 default API (build only)"
os: ubuntu-latest
cpp: enable
fortran: enable
java: enable
parallel: disable
mirror_vfd: enable
direct_vfd: enable
deprec_sym: enable
default_api: v16
szip: yes
toolchain: ""
generator: "autogen"
flags: ""
run_tests: false
thread_safety:
enabled: false
text: ""
build_mode:
text: " DBG"
cmake: "Debug"
autotools: "debug"
- name: "Ubuntu gcc Autotools v1.8 default API (build only)"
os: ubuntu-latest
cpp: enable
fortran: enable
java: enable
parallel: disable
mirror_vfd: enable
direct_vfd: enable
deprec_sym: enable
default_api: v18
szip: yes
toolchain: ""
generator: "autogen"
flags: ""
run_tests: false
thread_safety:
enabled: false
text: ""
build_mode:
text: " DBG"
cmake: "Debug"
autotools: "debug"
- name: "Ubuntu gcc Autotools v1.10 default API (build only)"
os: ubuntu-latest
cpp: enable
fortran: enable
java: enable
parallel: disable
mirror_vfd: enable
direct_vfd: enable
deprec_sym: enable
default_api: v110
szip: yes
toolchain: ""
generator: "autogen"
flags: ""
run_tests: false
thread_safety:
enabled: false
text: ""
build_mode:
text: " DBG"
cmake: "Debug"
autotools: "debug"
- name: "Ubuntu gcc Autotools v1.12 default API (build only)"
os: ubuntu-latest
cpp: enable
fortran: enable
java: enable
parallel: disable
mirror_vfd: enable
direct_vfd: enable
deprec_sym: enable
default_api: v112
szip: yes
toolchain: ""
generator: "autogen"
flags: ""
run_tests: false
thread_safety:
enabled: false
text: ""
build_mode:
text: " DBG"
cmake: "Debug"
autotools: "debug"
- name: "Ubuntu gcc Autotools v1.14 default API (build only)"
os: ubuntu-latest
cpp: enable
fortran: enable
java: enable
parallel: disable
mirror_vfd: enable
direct_vfd: enable
deprec_sym: enable
default_api: v114
szip: yes
toolchain: ""
generator: "autogen"
flags: ""
run_tests: false
thread_safety:
enabled: false
text: ""
build_mode:
text: " DBG"
cmake: "Debug"
autotools: "debug"
- name: "Ubuntu gcc Autotools no deprecated symbols (build only)"
os: ubuntu-latest
cpp: enable
fortran: enable
java: enable
parallel: disable
mirror_vfd: enable
direct_vfd: enable
deprec_sym: disable
default_api: default
szip: yes
toolchain: ""
generator: "autogen"
flags: ""
run_tests: false
thread_safety:
enabled: false
text: ""
build_mode:
text: " DBG"
cmake: "Debug"
autotools: "debug"
- name: "Ubuntu gcc Autotools -Werror (build only)"
os: ubuntu-latest
cpp: enable
fortran: disable
java: disable
parallel: disable
mirror_vfd: disable
direct_vfd: enable
deprec_sym: enable
default_api: v114
szip: yes
toolchain: ""
generator: "autogen"
flags: "CFLAGS=-Werror"
run_tests: false
thread_safety:
enabled: false
text: ""
build_mode:
text: " DBG"
cmake: "Debug"
autotools: "debug"
- name: "Ubuntu gcc Autotools -Werror (build only)"
os: ubuntu-latest
cpp: enable
fortran: disable
java: disable
parallel: disable
mirror_vfd: disable
direct_vfd: enable
deprec_sym: enable
default_api: v114
szip: yes
toolchain: ""
generator: "autogen"
flags: "CFLAGS=-Werror"
run_tests: false
thread_safety:
enabled: false
text: ""
build_mode:
text: " REL"
cmake: "Release"
autotools: "production"
# Sets the job's name from the properties
name: "${{ matrix.name }}${{ matrix.build_mode.text }}${{ matrix.thread_safety.text }}"
# Don't run the action if the commit message says to skip CI
if: "!contains(github.event.head_commit.message, 'skip-ci')"
# The type of runner that the job will run on
runs-on: ${{ matrix.os }}
# Steps represent a sequence of tasks that will be executed as part of the job
steps:
#
# SETUP
#
#Useful for debugging
- name: Dump matrix context
run: echo '${{ toJSON(matrix) }}'
- name: Install CMake Dependencies (Linux)
run: sudo apt-get install ninja-build
if: matrix.os == 'ubuntu-latest'
- name: Install Autotools Dependencies (Linux, serial)
run: |
sudo apt update
sudo apt install automake autoconf libtool libtool-bin
sudo apt install gcc-11 g++-11 gfortran-11
echo "CC=gcc-11" >> $GITHUB_ENV
echo "CXX=g++-11" >> $GITHUB_ENV
echo "FC=gfortran-11" >> $GITHUB_ENV
sudo apt install libaec0 libaec-dev
if: (matrix.generator == 'autogen') && (matrix.parallel != 'enable')
- name: Install Autotools Dependencies (Linux, parallel)
run: |
sudo apt update
sudo apt install automake autoconf libtool libtool-bin
sudo apt install openmpi-bin openmpi-common mpi-default-dev
echo "CC=mpicc" >> $GITHUB_ENV
echo "FC=mpif90" >> $GITHUB_ENV
sudo apt install libaec0 libaec-dev
if: (matrix.generator == 'autogen') && (matrix.parallel == 'enable')
- name: Install Dependencies (Windows)
run: choco install ninja
if: matrix.os == 'windows-latest'
- name: Install Dependencies (macOS)
run: brew install ninja
if: matrix.os == 'macos-11'
- name: Set environment for MSVC (Windows)
run: |
# Set these environment variables so CMake picks the correct compiler
echo "CXX=cl.exe" >> $GITHUB_ENV
echo "CC=cl.exe" >> $GITHUB_ENV
if: matrix.os == 'windows-latest'
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
- name: Get Sources
uses: actions/checkout@v3
#
# AUTOTOOLS CONFIGURE
#
- name: Autotools Configure
run: |
sh ./autogen.sh
mkdir "${{ runner.workspace }}/build"
cd "${{ runner.workspace }}/build"
${{ matrix.flags }} $GITHUB_WORKSPACE/configure --enable-build-mode=${{ matrix.build_mode.autotools }} --${{ matrix.deprec_sym }}-deprecated-symbols --with-default-api-version=${{ matrix.default_api }} --enable-shared --${{ matrix.parallel }}-parallel --${{ matrix.cpp }}-cxx --${{ matrix.fortran }}-fortran --${{ matrix.java }}-java --${{ matrix.mirror_vfd }}-mirror-vfd --${{ matrix.direct_vfd }}-direct-vfd --with-szlib=${{ matrix.szip }}
shell: bash
if: (matrix.generator == 'autogen') && (! matrix.thread_safe.enabled)
- name: Autotools Configure (Thread-Safe)
run: |
sh ./autogen.sh
mkdir "${{ runner.workspace }}/build"
cd "${{ runner.workspace }}/build"
${{ matrix.flags }} $GITHUB_WORKSPACE/configure --enable-build-mode=${{ matrix.build_mode.autotools }} --enable-shared --enable-threadsafe --disable-hl --${{ matrix.parallel }}-parallel --${{ matrix.mirror_vfd }}-mirror-vfd --${{ matrix.direct_vfd }}-direct-vfd --with-szlib=${{ matrix.szip }}
shell: bash
if: (matrix.generator == 'autogen') && (matrix.thread_safe.enabled)
#
# CMAKE CONFIGURE
#
- name: CMake Configure
run: |
mkdir "${{ runner.workspace }}/build"
cd "${{ runner.workspace }}/build"
cmake ${{ matrix.generator }} -DCMAKE_BUILD_TYPE=${{ matrix.build_mode.cmake }} -DCMAKE_TOOLCHAIN_FILE=${{ matrix.toolchain }} -DBUILD_SHARED_LIBS=ON -DHDF5_ENABLE_ALL_WARNINGS=ON -DHDF5_ENABLE_PARALLEL:BOOL=${{ matrix.parallel }} -DHDF5_BUILD_CPP_LIB:BOOL=${{ matrix.cpp }} -DHDF5_BUILD_FORTRAN=${{ matrix.fortran }} -DHDF5_BUILD_JAVA=${{ matrix.java }} -DHDF5_ENABLE_MIRROR_VFD:BOOL=${{ matrix.mirror_vfd }} -DHDF5_ENABLE_DIRECT_VFD:BOOL=${{ matrix.direct_vfd }} $GITHUB_WORKSPACE
shell: bash
if: (matrix.generator != 'autogen') && (! matrix.thread_safe.enabled)
- name: CMake Configure (Thread-Safe)
run: |
mkdir "${{ runner.workspace }}/build"
cd "${{ runner.workspace }}/build"
cmake ${{ matrix.generator }} -DCMAKE_BUILD_TYPE=${{ matrix.build_mode.cmake }} -DCMAKE_TOOLCHAIN_FILE=${{ matrix.toolchain }} -DBUILD_SHARED_LIBS=ON -DHDF5_ENABLE_ALL_WARNINGS=ON -DHDF5_ENABLE_THREADSAFE:BOOL=ON -DHDF5_ENABLE_PARALLEL:BOOL=${{ matrix.parallel }} -DHDF5_BUILD_HL_LIB:BOOL=OFF -DHDF5_ENABLE_MIRROR_VFD:BOOL=${{ matrix.mirror_vfd }} -DHDF5_ENABLE_DIRECT_VFD:BOOL=${{ matrix.direct_vfd }} $GITHUB_WORKSPACE
shell: bash
if: (matrix.generator != 'autogen') && (matrix.thread_safe.enabled)
#
# BUILD
#
- name: Autotools Build
run: make
working-directory: ${{ runner.workspace }}/build
if: matrix.generator == 'autogen'
- name: CMake Build
run: cmake --build . --config ${{ matrix.build_mode.cmake }}
working-directory: ${{ runner.workspace }}/build
if: matrix.generator != 'autogen'
#
# RUN TESTS
#
- name: Autotools Run Tests
run: make check
working-directory: ${{ runner.workspace }}/build
if: (matrix.generator == 'autogen') && (matrix.run_tests)
- name: CMake Run Tests
run: ctest --build . -C ${{ matrix.build_mode.cmake }} -V
working-directory: ${{ runner.workspace }}/build
# Skip Debug MSVC while we investigate H5L Java test timeouts
if: (matrix.generator != 'autogen') && (matrix.run_tests) && ! ((matrix.name == 'Windows MSVC CMake') && (matrix.build_mode.cmake == 'Debug'))
#
# INSTALL (note that this runs even when we don't run the tests)
#
- name: Autotools Install
run: make install
working-directory: ${{ runner.workspace }}/build
if: (matrix.generator == 'autogen')
- name: Autotools Verify Install
run: make check-install
working-directory: ${{ runner.workspace }}/build
if: (matrix.generator == 'autogen')

View File

@@ -1,11 +1,10 @@
# Copyright by The HDF Group.
# Copyright by the Board of Trustees of the University of Illinois.
# All rights reserved.
#
# This file is part of HDF5. The full HDF5 copyright notice, including
# terms governing use, modification, and redistribution, is contained in
# the COPYING file, which can be found at the root of the source code
# distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases.
# distribution tree, or in https://www.hdfgroup.org/licenses.
# If you do not have access to either file, you may request a copy from
# help@hdfgroup.org.

View File

@@ -5,17 +5,21 @@
# This file is part of HDF5. The full HDF5 copyright notice, including
# terms governing use, modification, and redistribution, is contained in
# the COPYING file, which can be found at the root of the source code
# distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases.
# distribution tree, or in https://www.hdfgroup.org/licenses.
# If you do not have access to either file, you may request a copy from
# help@hdfgroup.org.
#
option (USE_LIBAEC "Use AEC library as SZip Filter" OFF)
option (USE_LIBAEC_STATIC "Use static AEC library " OFF)
include (ExternalProject)
include (FetchContent)
#option (HDF5_ALLOW_EXTERNAL_SUPPORT "Allow External Library Building (NO GIT TGZ)" "NO")
set (HDF5_ALLOW_EXTERNAL_SUPPORT "NO" CACHE STRING "Allow External Library Building (NO GIT TGZ)")
set_property (CACHE HDF5_ALLOW_EXTERNAL_SUPPORT PROPERTY STRINGS NO GIT TGZ)
if (HDF5_ALLOW_EXTERNAL_SUPPORT MATCHES "GIT" OR HDF5_ALLOW_EXTERNAL_SUPPORT MATCHES "TGZ")
option (ZLIB_USE_EXTERNAL "Use External Library Building for ZLIB" 1)
option (ZLIB_USE_EXTERNAL "Use External Library Building for HDF5_ZLIB" 1)
option (SZIP_USE_EXTERNAL "Use External Library Building for SZIP" 1)
if (HDF5_ALLOW_EXTERNAL_SUPPORT MATCHES "GIT")
set (ZLIB_URL ${ZLIB_GIT_URL} CACHE STRING "Path to zlib git repository")
@@ -27,7 +31,18 @@ if (HDF5_ALLOW_EXTERNAL_SUPPORT MATCHES "GIT" OR HDF5_ALLOW_EXTERNAL_SUPPORT MAT
set (TGZPATH ${HDF5_SOURCE_DIR})
endif ()
set (ZLIB_URL ${TGZPATH}/${ZLIB_TGZ_NAME})
if (NOT EXISTS "${ZLIB_URL}")
set (HDF5_ENABLE_Z_LIB_SUPPORT OFF CACHE BOOL "" FORCE)
message (VERBOSE "Filter ZLIB file ${ZLIB_URL} not found")
endif ()
set (SZIP_URL ${TGZPATH}/${SZIP_TGZ_NAME})
if (USE_LIBAEC)
set (SZIP_URL ${TGZPATH}/${SZAEC_TGZ_NAME})
endif ()
if (NOT EXISTS "${SZIP_URL}")
set (HDF5_ENABLE_SZIP_SUPPORT OFF CACHE BOOL "" FORCE)
message (VERBOSE "Filter SZIP file ${SZIP_URL} not found")
endif ()
else ()
set (ZLIB_USE_EXTERNAL 0)
set (SZIP_USE_EXTERNAL 0)
@@ -46,7 +61,6 @@ if (HDF5_ENABLE_Z_LIB_SUPPORT)
find_package (ZLIB) # Legacy find
if (ZLIB_FOUND)
set (LINK_COMP_LIBS ${LINK_COMP_LIBS} ${ZLIB_LIBRARIES})
set (LINK_COMP_SHARED_LIBS ${LINK_COMP_SHARED_LIBS} ${ZLIB_LIBRARIES})
endif ()
endif ()
endif ()
@@ -63,7 +77,7 @@ if (HDF5_ENABLE_Z_LIB_SUPPORT)
set (H5_HAVE_FILTER_DEFLATE 1)
set (H5_HAVE_ZLIB_H 1)
set (H5_HAVE_LIBZ 1)
message (STATUS "Filter ZLIB is built")
message (VERBOSE "Filter HDF5_ZLIB is built")
else ()
message (FATAL_ERROR " ZLib is Required for ZLib support in HDF5")
endif ()
@@ -77,12 +91,9 @@ if (HDF5_ENABLE_Z_LIB_SUPPORT)
if (H5_HAVE_FILTER_DEFLATE)
set (EXTERNAL_FILTERS "${EXTERNAL_FILTERS} DEFLATE")
endif ()
if (BUILD_SHARED_LIBS)
set (LINK_COMP_SHARED_LIBS ${LINK_COMP_SHARED_LIBS} ${ZLIB_SHARED_LIBRARY})
endif ()
set (LINK_COMP_LIBS ${LINK_COMP_LIBS} ${ZLIB_STATIC_LIBRARY})
INCLUDE_DIRECTORIES (${ZLIB_INCLUDE_DIRS})
message (STATUS "Filter ZLIB is ON")
message (VERBOSE "Filter HDF5_ZLIB is ON")
endif ()
#-----------------------------------------------------------------------------
@@ -92,12 +103,22 @@ option (HDF5_ENABLE_SZIP_SUPPORT "Use SZip Filter" OFF)
if (HDF5_ENABLE_SZIP_SUPPORT)
option (HDF5_ENABLE_SZIP_ENCODING "Use SZip Encoding" OFF)
if (NOT SZIP_USE_EXTERNAL)
find_package (SZIP NAMES ${SZIP_PACKAGE_NAME}${HDF_PACKAGE_EXT} COMPONENTS static shared)
if (NOT SZIP_FOUND)
find_package (SZIP) # Legacy find
set(SZIP_FOUND FALSE)
if (USE_LIBAEC)
set(libaec_USE_STATIC_LIBS ${USE_LIBAEC_STATIC})
find_package (libaec 1.0.5 CONFIG)
if (SZIP_FOUND)
set (LINK_COMP_LIBS ${LINK_COMP_LIBS} ${SZIP_LIBRARIES})
set (LINK_COMP_SHARED_LIBS ${LINK_COMP_SHARED_LIBS} ${SZIP_LIBRARIES})
endif ()
endif ()
if (NOT SZIP_FOUND)
find_package (SZIP NAMES ${SZIP_PACKAGE_NAME}${HDF_PACKAGE_EXT} COMPONENTS static shared)
if (NOT SZIP_FOUND)
find_package (SZIP) # Legacy find
if (SZIP_FOUND)
set (LINK_COMP_LIBS ${LINK_COMP_LIBS} ${SZIP_LIBRARIES})
endif ()
endif ()
endif ()
endif ()
@@ -113,17 +134,20 @@ if (HDF5_ENABLE_SZIP_SUPPORT)
set (H5_HAVE_FILTER_SZIP 1)
set (H5_HAVE_SZLIB_H 1)
set (H5_HAVE_LIBSZ 1)
message (STATUS "Filter SZIP is built")
message (VERBOSE "Filter SZIP is built")
if (USE_LIBAEC)
message (VERBOSE "... with library AEC")
set (SZIP_PACKAGE_NAME ${LIBAEC_PACKAGE_NAME})
else ()
set (SZIP_PACKAGE_NAME ${SZIP_PACKAGE_NAME})
endif ()
else ()
message (FATAL_ERROR "SZIP is Required for SZIP support in HDF5")
endif ()
endif ()
if (BUILD_SHARED_LIBS)
set (LINK_COMP_SHARED_LIBS ${LINK_COMP_SHARED_LIBS} ${SZIP_SHARED_LIBRARY})
endif ()
set (LINK_COMP_LIBS ${LINK_COMP_LIBS} ${SZIP_STATIC_LIBRARY})
INCLUDE_DIRECTORIES (${SZIP_INCLUDE_DIRS})
message (STATUS "Filter SZIP is ON")
message (VERBOSE "Filter SZIP is ON")
if (H5_HAVE_FILTER_SZIP)
set (EXTERNAL_FILTERS "${EXTERNAL_FILTERS} DECODE")
endif ()

View File

@@ -5,7 +5,7 @@
# This file is part of HDF5. The full HDF5 copyright notice, including
# terms governing use, modification, and redistribution, is contained in
# the COPYING file, which can be found at the root of the source code
# distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases.
# distribution tree, or in https://www.hdfgroup.org/licenses.
# If you do not have access to either file, you may request a copy from
# help@hdfgroup.org.
#
@@ -31,9 +31,9 @@ if (NOT HDF5_EXTERNALLY_CONFIGURED)
if (HDF5_EXPORTED_TARGETS)
install (
EXPORT ${HDF5_EXPORTED_TARGETS}
DESTINATION ${HDF5_INSTALL_CMAKE_DIR}/hdf5
DESTINATION ${HDF5_INSTALL_CMAKE_DIR}
FILE ${HDF5_PACKAGE}${HDF_PACKAGE_EXT}-targets.cmake
NAMESPACE ${HDF5_PACKAGE}::
NAMESPACE ${HDF_PACKAGE_NAMESPACE}
COMPONENT configinstall
)
endif ()
@@ -41,21 +41,19 @@ if (NOT HDF5_EXTERNALLY_CONFIGURED)
#-----------------------------------------------------------------------------
# Export all exported targets to the build tree for use by parent project
#-----------------------------------------------------------------------------
if (NOT HDF5_EXTERNALLY_CONFIGURED)
export (
TARGETS ${HDF5_LIBRARIES_TO_EXPORT} ${HDF5_LIB_DEPENDENCIES} ${HDF5_UTILS_TO_EXPORT}
FILE ${HDF5_PACKAGE}${HDF_PACKAGE_EXT}-targets.cmake
NAMESPACE ${HDF5_PACKAGE}::
)
endif ()
export (
TARGETS ${HDF5_LIBRARIES_TO_EXPORT} ${HDF5_LIB_DEPENDENCIES} ${HDF5_UTILS_TO_EXPORT}
FILE ${HDF5_PACKAGE}${HDF_PACKAGE_EXT}-targets.cmake
NAMESPACE ${HDF_PACKAGE_NAMESPACE}
)
endif ()
#-----------------------------------------------------------------------------
# Set includes needed for build
#-----------------------------------------------------------------------------
set (HDF5_INCLUDES_BUILD_TIME
${HDF5_SRC_DIR} ${HDF5_CPP_SRC_DIR} ${HDF5_HL_SRC_DIR}
${HDF5_TOOLS_SRC_DIR} ${HDF5_BINARY_DIR}
${HDF5_SRC_INCLUDE_DIRS} ${HDF5_CPP_SRC_DIR} ${HDF5_HL_SRC_DIR}
${HDF5_TOOLS_SRC_DIR} ${HDF5_SRC_BINARY_DIR}
)
#-----------------------------------------------------------------------------
@@ -74,7 +72,7 @@ set (CURRENT_BUILD_DIR "${CMAKE_CURRENT_BINARY_DIR}" )
configure_package_config_file (
${HDF_RESOURCES_DIR}/hdf5-config.cmake.in
"${HDF5_BINARY_DIR}/${HDF5_PACKAGE}${HDF_PACKAGE_EXT}-config.cmake"
INSTALL_DESTINATION "${HDF5_INSTALL_CMAKE_DIR}/hdf5"
INSTALL_DESTINATION "${HDF5_INSTALL_CMAKE_DIR}"
PATH_VARS INCLUDE_INSTALL_DIR SHARE_INSTALL_DIR CURRENT_BUILD_DIR
INSTALL_PREFIX "${CMAKE_CURRENT_BINARY_DIR}"
)
@@ -88,14 +86,14 @@ set (CURRENT_BUILD_DIR "${CMAKE_INSTALL_PREFIX}" )
configure_package_config_file (
${HDF_RESOURCES_DIR}/hdf5-config.cmake.in
"${HDF5_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/${HDF5_PACKAGE}${HDF_PACKAGE_EXT}-config.cmake"
INSTALL_DESTINATION "${HDF5_INSTALL_CMAKE_DIR}/hdf5"
INSTALL_DESTINATION "${HDF5_INSTALL_CMAKE_DIR}"
PATH_VARS INCLUDE_INSTALL_DIR SHARE_INSTALL_DIR CURRENT_BUILD_DIR
)
if (NOT HDF5_EXTERNALLY_CONFIGURED)
install (
FILES ${HDF5_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/${HDF5_PACKAGE}${HDF_PACKAGE_EXT}-config.cmake
DESTINATION ${HDF5_INSTALL_CMAKE_DIR}/hdf5
DESTINATION ${HDF5_INSTALL_CMAKE_DIR}
COMPONENT configinstall
)
endif ()
@@ -104,13 +102,18 @@ endif ()
# Configure the hdf5-config-version .cmake file for the install directory
#-----------------------------------------------------------------------------
if (NOT HDF5_EXTERNALLY_CONFIGURED)
configure_file (
${HDF_RESOURCES_DIR}/hdf5-config-version.cmake.in
${HDF5_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/${HDF5_PACKAGE}${HDF_PACKAGE_EXT}-config-version.cmake @ONLY
write_basic_package_version_file (
"${HDF5_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/${HDF5_PACKAGE}${HDF_PACKAGE_EXT}-config-version.cmake"
VERSION ${HDF5_PACKAGE_VERSION}
COMPATIBILITY SameMinorVersion
)
#configure_file (
# ${HDF_RESOURCES_DIR}/hdf5-config-version.cmake.in
# ${HDF5_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/${HDF5_PACKAGE}${HDF_PACKAGE_EXT}-config-version.cmake @ONLY
#)
install (
FILES ${HDF5_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/${HDF5_PACKAGE}${HDF_PACKAGE_EXT}-config-version.cmake
DESTINATION ${HDF5_INSTALL_CMAKE_DIR}/hdf5
DESTINATION ${HDF5_INSTALL_CMAKE_DIR}
COMPONENT configinstall
)
endif ()
@@ -125,16 +128,16 @@ else ()
endif ()
configure_file (
${HDF_RESOURCES_DIR}/libhdf5.settings.cmake.in
${HDF5_BINARY_DIR}/libhdf5.settings @ONLY
${HDF5_SRC_BINARY_DIR}/libhdf5.settings ESCAPE_QUOTES @ONLY
)
install (
FILES ${HDF5_BINARY_DIR}/libhdf5.settings
FILES ${HDF5_SRC_BINARY_DIR}/libhdf5.settings
DESTINATION ${HDF5_INSTALL_LIB_DIR}
COMPONENT libraries
)
#-----------------------------------------------------------------------------
# Configure the HDF518_Examples.cmake file and the examples
# Configure the HDF5_Examples.cmake file and the examples
#-----------------------------------------------------------------------------
option (HDF5_PACK_EXAMPLES "Package the HDF5 Library Examples Compressed File" OFF)
if (HDF5_PACK_EXAMPLES)
@@ -179,7 +182,7 @@ if (HDF5_PACK_EXAMPLES)
endif ()
#-----------------------------------------------------------------------------
# Configure the README.txt file for the binary package
# Configure the README.md file for the binary package
#-----------------------------------------------------------------------------
HDF_README_PROPERTIES(HDF5_BUILD_FORTRAN)
@@ -195,15 +198,13 @@ endif ()
#-----------------------------------------------------------------------------
if (NOT HDF5_EXTERNALLY_CONFIGURED)
install (
FILES
${HDF5_SOURCE_DIR}/COPYING
FILES ${HDF5_SOURCE_DIR}/COPYING
DESTINATION ${HDF5_INSTALL_DATA_DIR}
COMPONENT hdfdocuments
)
if (EXISTS "${HDF5_SOURCE_DIR}/release_docs" AND IS_DIRECTORY "${HDF5_SOURCE_DIR}/release_docs")
set (release_files
${HDF5_SOURCE_DIR}/release_docs/USING_HDF5_CMake.txt
${HDF5_SOURCE_DIR}/release_docs/COPYING
${HDF5_SOURCE_DIR}/release_docs/RELEASE.txt
)
if (WIN32)
@@ -215,6 +216,7 @@ if (NOT HDF5_EXTERNALLY_CONFIGURED)
if (HDF5_PACK_INSTALL_DOCS)
set (release_files
${release_files}
${HDF5_SOURCE_DIR}/release_docs/INSTALL_Warnings.txt
${HDF5_SOURCE_DIR}/release_docs/INSTALL_CMake.txt
${HDF5_SOURCE_DIR}/release_docs/HISTORY-1_8.txt
${HDF5_SOURCE_DIR}/release_docs/INSTALL
@@ -240,25 +242,12 @@ if (NOT HDF5_EXTERNALLY_CONFIGURED)
endif ()
install (
FILES ${release_files}
DESTINATION ${HDF5_INSTALL_DATA_DIR}
DESTINATION ${HDF5_INSTALL_DOC_DIR}
COMPONENT hdfdocuments
)
endif ()
endif ()
if (CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT)
if (CMAKE_HOST_UNIX)
set (CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}/HDF_Group/${HDF5_PACKAGE_NAME}/${HDF5_PACKAGE_VERSION}"
CACHE PATH "Install path prefix, prepended onto install directories." FORCE)
else ()
GetDefaultWindowsPrefixBase(CMAKE_GENERIC_PROGRAM_FILES)
set (CMAKE_INSTALL_PREFIX
"${CMAKE_GENERIC_PROGRAM_FILES}/HDF_Group/${HDF5_PACKAGE_NAME}/${HDF5_PACKAGE_VERSION}"
CACHE PATH "Install path prefix, prepended onto install directories." FORCE)
set (CMAKE_GENERIC_PROGRAM_FILES)
endif ()
endif ()
#-----------------------------------------------------------------------------
# Set the cpack variables
#-----------------------------------------------------------------------------
@@ -273,9 +262,9 @@ if (NOT HDF5_EXTERNALLY_CONFIGURED AND NOT HDF5_NO_PACKAGES)
set (CPACK_PACKAGE_VERSION_MAJOR "${HDF5_PACKAGE_VERSION_MAJOR}")
set (CPACK_PACKAGE_VERSION_MINOR "${HDF5_PACKAGE_VERSION_MINOR}")
set (CPACK_PACKAGE_VERSION_PATCH "")
set (CPACK_RESOURCE_FILE_LICENSE "${CMAKE_CURRENT_SOURCE_DIR}/COPYING")
if (EXISTS "${HDF5_SOURCE_DIR}/release_docs")
set (CPACK_PACKAGE_DESCRIPTION_FILE "${CMAKE_CURRENT_SOURCE_DIR}/release_docs/RELEASE.txt")
set (CPACK_RESOURCE_FILE_LICENSE "${CMAKE_CURRENT_SOURCE_DIR}/release_docs/COPYING")
set (CPACK_RESOURCE_FILE_README "${CMAKE_CURRENT_SOURCE_DIR}/release_docs/RELEASE.txt")
endif ()
set (CPACK_PACKAGE_RELOCATABLE TRUE)
@@ -284,7 +273,7 @@ if (NOT HDF5_EXTERNALLY_CONFIGURED AND NOT HDF5_NO_PACKAGES)
else ()
set (CPACK_PACKAGE_INSTALL_DIRECTORY "${CPACK_PACKAGE_VENDOR}/${CPACK_PACKAGE_NAME}/${CPACK_PACKAGE_VERSION}")
endif ()
set (CPACK_PACKAGE_ICON "${HDF_RESOURCES_EXT_DIR}/hdf.bmp")
set (CPACK_PACKAGE_ICON "${HDF_RESOURCES_DIR}/hdf.bmp")
set (CPACK_GENERATOR "TGZ")
if (WIN32)
@@ -307,10 +296,10 @@ if (NOT HDF5_EXTERNALLY_CONFIGURED AND NOT HDF5_NO_PACKAGES)
endif ()
# set the install/unistall icon used for the installer itself
# There is a bug in NSI that does not handle full unix paths properly.
set (CPACK_NSIS_MUI_ICON "${HDF_RESOURCES_EXT_DIR}\\\\hdf.ico")
set (CPACK_NSIS_MUI_UNIICON "${HDF_RESOURCES_EXT_DIR}\\\\hdf.ico")
set (CPACK_NSIS_MUI_ICON "${HDF_RESOURCES_DIR}\\\\hdf.ico")
set (CPACK_NSIS_MUI_UNIICON "${HDF_RESOURCES_DIR}\\\\hdf.ico")
# set the package header icon for MUI
set (CPACK_PACKAGE_ICON "${HDF_RESOURCES_EXT_DIR}\\\\hdf.bmp")
set (CPACK_PACKAGE_ICON "${HDF_RESOURCES_DIR}\\\\hdf.bmp")
set (CPACK_NSIS_DISPLAY_NAME "${CPACK_NSIS_PACKAGE_NAME}")
if (OVERRIDE_INSTALL_VERSION)
set (CPACK_PACKAGE_INSTALL_DIRECTORY "${CPACK_PACKAGE_VENDOR}\\\\${CPACK_PACKAGE_NAME}\\\\${OVERRIDE_INSTALL_VERSION}")
@@ -340,7 +329,7 @@ if (NOT HDF5_EXTERNALLY_CONFIGURED AND NOT HDF5_NO_PACKAGES)
set (CPACK_RESOURCE_FILE_LICENSE "${HDF5_BINARY_DIR}/COPYING.txt")
# .. variable:: CPACK_WIX_PRODUCT_ICON
# The Icon shown next to the program name in Add/Remove programs.
set(CPACK_WIX_PRODUCT_ICON "${HDF_RESOURCES_EXT_DIR}\\\\hdf.ico")
set(CPACK_WIX_PRODUCT_ICON "${HDF_RESOURCES_DIR}\\\\hdf.ico")
#
# .. variable:: CPACK_WIX_UI_BANNER
#
@@ -371,14 +360,14 @@ if (NOT HDF5_EXTERNALLY_CONFIGURED AND NOT HDF5_NO_PACKAGES)
list (APPEND CPACK_GENERATOR "DragNDrop")
set (CPACK_COMPONENTS_ALL_IN_ONE_PACKAGE ON)
set (CPACK_PACKAGING_INSTALL_PREFIX "/${CPACK_PACKAGE_INSTALL_DIRECTORY}")
set (CPACK_PACKAGE_ICON "${HDF_RESOURCES_EXT_DIR}/hdf.icns")
set (CPACK_PACKAGE_ICON "${HDF_RESOURCES_DIR}/hdf.icns")
option (HDF5_PACK_MACOSX_FRAMEWORK "Package the HDF5 Library in a Frameworks" OFF)
if (HDF5_PACK_MACOSX_FRAMEWORK AND HDF5_BUILD_FRAMEWORKS)
set (CPACK_BUNDLE_NAME "${HDF5_PACKAGE_STRING}")
set (CPACK_BUNDLE_LOCATION "/") # make sure CMAKE_INSTALL_PREFIX ends in /
set (CMAKE_INSTALL_PREFIX "/${CPACK_BUNDLE_NAME}.framework/Versions/${CPACK_PACKAGE_VERSION}/${CPACK_PACKAGE_NAME}/")
set (CPACK_BUNDLE_ICON "${HDF_RESOURCES_EXT_DIR}/hdf.icns")
set (CPACK_BUNDLE_ICON "${HDF_RESOURCES_DIR}/hdf.icns")
set (CPACK_BUNDLE_PLIST "${HDF5_BINARY_DIR}/CMakeFiles/Info.plist")
set (CPACK_SHORT_VERSION_STRING "${CPACK_PACKAGE_VERSION}")
#-----------------------------------------------------------------------------
@@ -393,7 +382,7 @@ if (NOT HDF5_EXTERNALLY_CONFIGURED AND NOT HDF5_NO_PACKAGES)
${HDF5_BINARY_DIR}/CMakeFiles/PkgInfo @ONLY
)
configure_file (
${HDF_RESOURCES_EXT_DIR}/version.plist.in
${HDF_RESOURCES_DIR}/version.plist.in
${HDF5_BINARY_DIR}/CMakeFiles/version.plist @ONLY
)
install (
@@ -406,13 +395,19 @@ if (NOT HDF5_EXTERNALLY_CONFIGURED AND NOT HDF5_NO_PACKAGES)
set (CPACK_PACKAGING_INSTALL_PREFIX "/${CPACK_PACKAGE_INSTALL_DIRECTORY}")
set (CPACK_COMPONENTS_ALL_IN_ONE_PACKAGE ON)
list (APPEND CPACK_GENERATOR "DEB")
set (CPACK_DEBIAN_PACKAGE_SECTION "Libraries")
set (CPACK_DEBIAN_PACKAGE_MAINTAINER "${HDF5_PACKAGE_BUGREPORT}")
# list (APPEND CPACK_GENERATOR "RPM")
list (APPEND CPACK_GENERATOR "RPM")
set (CPACK_RPM_PACKAGE_RELEASE "1")
set (CPACK_RPM_PACKAGE_RELEASE_DIST ON)
set (CPACK_RPM_COMPONENT_INSTALL ON)
set (CPACK_RPM_PACKAGE_RELOCATABLE ON)
set (CPACK_RPM_FILE_NAME "RPM-DEFAULT")
set (CPACK_RPM_PACKAGE_NAME "${CPACK_PACKAGE_NAME}")
set (CPACK_RPM_PACKAGE_VERSION "${CPACK_PACKAGE_VERSION}")
set (CPACK_RPM_PACKAGE_VENDOR "${CPACK_PACKAGE_VENDOR}")
set (CPACK_RPM_PACKAGE_LICENSE "BSD-style")
set (CPACK_RPM_PACKAGE_GROUP "Development/Libraries")
set (CPACK_RPM_PACKAGE_URL "${HDF5_PACKAGE_URL}")
@@ -453,11 +448,11 @@ The HDF5 data model, file format, API, library, and tools are open and distribut
if (HDF5_ALLOW_EXTERNAL_SUPPORT MATCHES "GIT" OR HDF5_ALLOW_EXTERNAL_SUPPORT MATCHES "TGZ")
if (ZLIB_FOUND AND ZLIB_USE_EXTERNAL)
if (WIN32)
set (CPACK_INSTALL_CMAKE_PROJECTS "${CPACK_INSTALL_CMAKE_PROJECTS};${ZLIB_INCLUDE_DIR_GEN};ZLIB;ALL;/")
set (CPACK_INSTALL_CMAKE_PROJECTS "${CPACK_INSTALL_CMAKE_PROJECTS};${ZLIB_INCLUDE_DIR_GEN};HDF5_ZLIB;ALL;/")
else ()
set (CPACK_INSTALL_CMAKE_PROJECTS "${CPACK_INSTALL_CMAKE_PROJECTS};${ZLIB_INCLUDE_DIR_GEN};ZLIB;libraries;/")
set (CPACK_INSTALL_CMAKE_PROJECTS "${CPACK_INSTALL_CMAKE_PROJECTS};${ZLIB_INCLUDE_DIR_GEN};ZLIB;headers;/")
set (CPACK_INSTALL_CMAKE_PROJECTS "${CPACK_INSTALL_CMAKE_PROJECTS};${ZLIB_INCLUDE_DIR_GEN};ZLIB;configinstall;/")
set (CPACK_INSTALL_CMAKE_PROJECTS "${CPACK_INSTALL_CMAKE_PROJECTS};${ZLIB_INCLUDE_DIR_GEN};HDF5_ZLIB;libraries;/")
set (CPACK_INSTALL_CMAKE_PROJECTS "${CPACK_INSTALL_CMAKE_PROJECTS};${ZLIB_INCLUDE_DIR_GEN};HDF5_ZLIB;headers;/")
set (CPACK_INSTALL_CMAKE_PROJECTS "${CPACK_INSTALL_CMAKE_PROJECTS};${ZLIB_INCLUDE_DIR_GEN};HDF5_ZLIB;configinstall;/")
endif ()
endif ()
if (SZIP_FOUND AND SZIP_USE_EXTERNAL)
@@ -469,6 +464,13 @@ The HDF5 data model, file format, API, library, and tools are open and distribut
set (CPACK_INSTALL_CMAKE_PROJECTS "${CPACK_INSTALL_CMAKE_PROJECTS};${SZIP_INCLUDE_DIR_GEN};SZIP;configinstall;/")
endif ()
endif ()
if (PLUGIN_FOUND AND PLUGIN_USE_EXTERNAL)
if (WIN32)
set (CPACK_INSTALL_CMAKE_PROJECTS "${CPACK_INSTALL_CMAKE_PROJECTS};${PLUGIN_BINARY_DIR};PLUGIN;ALL;/")
else ()
set (CPACK_INSTALL_CMAKE_PROJECTS "${CPACK_INSTALL_CMAKE_PROJECTS};${PLUGIN_BINARY_DIR};PLUGIN;libraries;/")
endif ()
endif ()
endif ()
endif ()
@@ -551,6 +553,13 @@ The HDF5 data model, file format, API, library, and tools are open and distribut
)
endif ()
cpack_add_component (utilsapplications
DISPLAY_NAME "HDF5 Utility Applications"
DEPENDS libraries
GROUP Applications
INSTALL_TYPES Full Developer User
)
if (HDF5_BUILD_TOOLS)
cpack_add_component (toolsapplications
DISPLAY_NAME "HDF5 Tools Applications"

View File

@@ -1,6 +1,22 @@
cmake_minimum_required (VERSION 3.10)
cmake_minimum_required (VERSION 3.18)
project (HDF5 C)
if (POLICY CMP0074)
# find_package() uses <PackageName>_ROOT variables.
cmake_policy (SET CMP0074 NEW)
endif ()
if (POLICY CMP0083)
# To control generation of Position Independent Executable (PIE) or not,
# some flags are required at link time.
cmake_policy (SET CMP0083 NEW)
endif ()
# Avoid warning about DOWNLOAD_EXTRACT_TIMESTAMP in CMake 3.24:
if (CMAKE_VERSION VERSION_GREATER_EQUAL "3.24.0")
cmake_policy(SET CMP0135 NEW)
endif()
#-----------------------------------------------------------------------------
# Instructions for use : Normal Build
#
@@ -10,8 +26,8 @@ project (HDF5 C)
# set CMAKE_INSTALL_PREFIX to the required install path.
# Make install can be used to install all components for system-wide use.
#
if ("${CMAKE_CURRENT_SOURCE_DIR}" STREQUAL "${CMAKE_CURRENT_BINARY_DIR}")
MESSAGE(FATAL_ERROR "\nERROR! ${PROJECT_NAME} DOES NOT SUPPORT IN SOURCE BUILDS!\n"
if (CMAKE_CURRENT_SOURCE_DIR STREQUAL CMAKE_CURRENT_BINARY_DIR)
message (FATAL_ERROR "\nERROR! ${PROJECT_NAME} DOES NOT SUPPORT IN SOURCE BUILDS!\n"
"CMAKE_CURRENT_SOURCE_DIR=${CMAKE_CURRENT_SOURCE_DIR}"
" == CMAKE_CURRENT_BINARY_DIR=${CMAKE_CURRENT_BINARY_DIR}\n"
"NEXT STEPS:\n"
@@ -46,10 +62,20 @@ endif ()
# dependencies of the HDF5 libs may be 'incomplete', add additional
# dependencies to this variable so that external projects pick them up
#
#option (HDF5_EXTERNAL_LIB_PREFIX "Use prefix for custom library naming." "")
set (HDF5_EXTERNAL_LIB_PREFIX "" CACHE STRING "Use prefix for custom library naming.")
mark_as_advanced (HDF5_EXTERNAL_LIB_PREFIX)
# HDF5_EXTERNAL_LIB_PREFIX :
# If the parent project needs to install hdf libraries, but avoid
# name conflicts with system versions, then a prefix may be added
# to ensure that the correct versions configured are used.
set (HDF5_LIB_INFIX "" CACHE STRING "Use infix for custom library naming.")
mark_as_advanced (HDF5_LIB_INFIX)
# HDF5_LIB_INFIX :
# This infix is added to all library names after 'hdf5'.
# e.g. the infix '_openmpi' results in the library name 'libhdf5_openmpi.so'
# This name is used in packages on debian based systems.
# (see https://packages.debian.org/jessie/amd64/libhdf5-openmpi-8/filelist)
#
# HDF5_INSTALL_BIN_DIR, HDF5_INSTALL_LIB_DIR, HDF5_INSTALL_INCLUDE_DIR, HDF5_INSTALL_DATA_DIR :
# Customize the 'bin', 'lib', 'include', and 'share' installation directories.
@@ -87,7 +113,7 @@ endif ()
# # Add the sub project
# add_subdirectory (Utilities/hdf5-1.8)
#-----------------------------------------------------------------------------
string(TIMESTAMP CONFIG_DATE "%Y-%m-%d")
string (TIMESTAMP CONFIG_DATE "%Y-%m-%d")
#-----------------------------------------------------------------------------
# Allow Visual Studio solution directories
@@ -109,19 +135,20 @@ mark_as_advanced (ALLOW_UNSUPPORTED)
#-----------------------------------------------------------------------------
# Set the core names of all the libraries
#-----------------------------------------------------------------------------
set (HDF5_LIB_CORENAME "hdf5")
set (HDF5_TEST_LIB_CORENAME "hdf5_test")
set (HDF5_CPP_LIB_CORENAME "hdf5_cpp")
set (HDF5_HL_LIB_CORENAME "hdf5_hl")
set (HDF5_HL_CPP_LIB_CORENAME "hdf5_hl_cpp")
set (HDF5_TOOLS_LIB_CORENAME "hdf5_tools")
set (HDF5_F90_LIB_CORENAME "hdf5_fortran")
set (HDF5_F90_C_LIB_CORENAME "hdf5_f90cstub")
set (HDF5_F90_TEST_LIB_CORENAME "hdf5_test_fortran")
set (HDF5_F90_C_TEST_LIB_CORENAME "hdf5_test_f90cstub")
set (HDF5_HL_F90_LIB_CORENAME "hdf5_hl_fortran")
set (HDF5_HL_F90_C_LIB_CORENAME "hdf5_hl_f90cstub")
set (HDF5_JAVA_JNI_LIB_CORENAME "hdf5_java")
set (HDF5_LIB_CORENAME "hdf5${HDF5_LIB_INFIX}")
set (HDF5_TEST_LIB_CORENAME "hdf5${HDF5_LIB_INFIX}_test")
set (HDF5_CPP_LIB_CORENAME "hdf5${HDF5_LIB_INFIX}_cpp")
set (HDF5_HL_LIB_CORENAME "hdf5${HDF5_LIB_INFIX}_hl")
set (HDF5_HL_CPP_LIB_CORENAME "hdf5${HDF5_LIB_INFIX}_hl_cpp")
set (HDF5_TOOLS_LIB_CORENAME "hdf5${HDF5_LIB_INFIX}_tools")
set (HDF5_UTILS_LIB_CORENAME "hdf5${HDF5_LIB_INFIX}_utils")
set (HDF5_F90_LIB_CORENAME "hdf5${HDF5_LIB_INFIX}_fortran")
set (HDF5_F90_C_LIB_CORENAME "hdf5${HDF5_LIB_INFIX}_f90cstub")
set (HDF5_F90_TEST_LIB_CORENAME "hdf5${HDF5_LIB_INFIX}_test_fortran")
set (HDF5_F90_C_TEST_LIB_CORENAME "hdf5${HDF5_LIB_INFIX}_test_f90cstub")
set (HDF5_HL_F90_LIB_CORENAME "hdf5${HDF5_LIB_INFIX}_hl_fortran")
set (HDF5_HL_F90_C_LIB_CORENAME "hdf5${HDF5_LIB_INFIX}_hl_f90cstub")
set (HDF5_JAVA_JNI_LIB_CORENAME "hdf5${HDF5_LIB_INFIX}_java")
set (HDF5_JAVA_HDF5_LIB_CORENAME "jarhdf5")
set (HDF5_JAVA_TEST_LIB_CORENAME "jartest5")
@@ -134,6 +161,7 @@ set (HDF5_CPP_LIB_NAME "${HDF5_EXTERNAL_LIB_PREFIX}${HDF5_CPP_LIB_COREN
set (HDF5_HL_LIB_NAME "${HDF5_EXTERNAL_LIB_PREFIX}${HDF5_HL_LIB_CORENAME}")
set (HDF5_HL_CPP_LIB_NAME "${HDF5_EXTERNAL_LIB_PREFIX}${HDF5_HL_CPP_LIB_CORENAME}")
set (HDF5_TOOLS_LIB_NAME "${HDF5_EXTERNAL_LIB_PREFIX}${HDF5_TOOLS_LIB_CORENAME}")
set (HDF5_UTILS_LIB_NAME "${HDF5_EXTERNAL_LIB_PREFIX}${HDF5_UTILS_LIB_CORENAME}")
set (HDF5_F90_LIB_NAME "${HDF5_EXTERNAL_LIB_PREFIX}${HDF5_F90_LIB_CORENAME}")
set (HDF5_F90_C_LIB_NAME "${HDF5_EXTERNAL_LIB_PREFIX}${HDF5_F90_C_LIB_CORENAME}")
set (HDF5_F90_TEST_LIB_NAME "${HDF5_EXTERNAL_LIB_PREFIX}${HDF5_F90_TEST_LIB_CORENAME}")
@@ -153,6 +181,7 @@ set (HDF5_CPP_LIB_TARGET "${HDF5_CPP_LIB_CORENAME}-static")
set (HDF5_HL_LIB_TARGET "${HDF5_HL_LIB_CORENAME}-static")
set (HDF5_HL_CPP_LIB_TARGET "${HDF5_HL_CPP_LIB_CORENAME}-static")
set (HDF5_TOOLS_LIB_TARGET "${HDF5_TOOLS_LIB_CORENAME}-static")
set (HDF5_UTILS_LIB_TARGET "${HDF5_UTILS_LIB_CORENAME}-static")
set (HDF5_F90_LIB_TARGET "${HDF5_F90_LIB_CORENAME}-static")
set (HDF5_F90_C_LIB_TARGET "${HDF5_F90_C_LIB_CORENAME}-static")
set (HDF5_F90_TEST_LIB_TARGET "${HDF5_F90_TEST_LIB_CORENAME}-static")
@@ -168,6 +197,7 @@ set (HDF5_CPP_LIBSH_TARGET "${HDF5_CPP_LIB_CORENAME}-shared")
set (HDF5_HL_LIBSH_TARGET "${HDF5_HL_LIB_CORENAME}-shared")
set (HDF5_HL_CPP_LIBSH_TARGET "${HDF5_HL_CPP_LIB_CORENAME}-shared")
set (HDF5_TOOLS_LIBSH_TARGET "${HDF5_TOOLS_LIB_CORENAME}-shared")
set (HDF5_UTILS_LIBSH_TARGET "${HDF5_UTILS_LIB_CORENAME}-shared")
set (HDF5_F90_LIBSH_TARGET "${HDF5_F90_LIB_CORENAME}-shared")
set (HDF5_F90_C_LIBSH_TARGET "${HDF5_F90_C_LIB_CORENAME}-shared")
set (HDF5_F90_TEST_LIBSH_TARGET "${HDF5_F90_TEST_LIB_CORENAME}-shared")
@@ -178,8 +208,8 @@ set (HDF5_HL_F90_C_LIBSH_TARGET "${HDF5_HL_F90_C_LIB_CORENAME}-shared")
#-----------------------------------------------------------------------------
# Define some CMake variables for use later in the project
#-----------------------------------------------------------------------------
set (HDF_CONFIG_DIR ${HDF5_SOURCE_DIR}/config)
set (HDF_RESOURCES_DIR ${HDF5_SOURCE_DIR}/config/cmake)
set (HDF_RESOURCES_EXT_DIR ${HDF5_SOURCE_DIR}/config/cmake_ext_mod)
set (HDF5_SRC_DIR ${HDF5_SOURCE_DIR}/src)
set (HDF5_TEST_SRC_DIR ${HDF5_SOURCE_DIR}/test)
set (HDF5_CPP_SRC_DIR ${HDF5_SOURCE_DIR}/c++)
@@ -190,14 +220,18 @@ set (HDF5_HL_TOOLS_DIR ${HDF5_SOURCE_DIR}/hl/tools)
set (HDF5_TOOLS_DIR ${HDF5_SOURCE_DIR}/tools)
set (HDF5_TOOLS_SRC_DIR ${HDF5_SOURCE_DIR}/tools/src)
set (HDF5_PERFORM_SRC_DIR ${HDF5_SOURCE_DIR}/tools/src/perform)
set (HDF5_UTILS_DIR ${HDF5_SOURCE_DIR}/utils)
set (HDF5_F90_SRC_DIR ${HDF5_SOURCE_DIR}/fortran)
set (HDF5_JAVA_JNI_SRC_DIR ${HDF5_SOURCE_DIR}/java/src/jni)
set (HDF5_JAVA_HDF5_SRC_DIR ${HDF5_SOURCE_DIR}/java/src/hdf)
set (HDF5_JAVA_TEST_SRC_DIR ${HDF5_SOURCE_DIR}/java/test)
set (HDF5_JAVA_LIB_DIR ${HDF5_SOURCE_DIR}/java/lib)
set (HDF5_JAVA_LOGGING_JAR ${HDF5_SOURCE_DIR}/java/lib/slf4j-api-1.7.25.jar)
set (HDF5_JAVA_LOGGING_NOP_JAR ${HDF5_SOURCE_DIR}/java/lib/ext/slf4j-nop-1.7.25.jar)
set (HDF5_JAVA_LOGGING_SIMPLE_JAR ${HDF5_SOURCE_DIR}/java/lib/ext/slf4j-simple-1.7.25.jar)
set (HDF5_JAVA_LOGGING_JAR ${HDF5_SOURCE_DIR}/java/lib/slf4j-api-1.7.33.jar)
set (HDF5_JAVA_LOGGING_NOP_JAR ${HDF5_SOURCE_DIR}/java/lib/ext/slf4j-nop-1.7.33.jar)
set (HDF5_JAVA_LOGGING_SIMPLE_JAR ${HDF5_SOURCE_DIR}/java/lib/ext/slf4j-simple-1.7.33.jar)
set (HDF5_DOXYGEN_DIR ${HDF5_SOURCE_DIR}/doxygen)
set (HDF5_SRC_INCLUDE_DIRS ${HDF5_SRC_DIR})
#-----------------------------------------------------------------------------
# parse the full version number from H5public.h and include in H5_VERS_INFO
@@ -209,9 +243,9 @@ string (REGEX REPLACE ".*#define[ \t]+H5_VERS_MINOR[ \t]+([0-9]*).*$"
"\\1" H5_VERS_MINOR ${_h5public_h_contents})
string (REGEX REPLACE ".*#define[ \t]+H5_VERS_RELEASE[ \t]+([0-9]*).*$"
"\\1" H5_VERS_RELEASE ${_h5public_h_contents})
string (REGEX REPLACE ".*#define[ \t]+H5_VERS_SUBRELEASE[ \t]+\"([0-9A-Za-z._]*)\".*$"
string (REGEX REPLACE ".*#define[ \t]+H5_VERS_SUBRELEASE[ \t]+\"([0-9A-Za-z._-]*)\".*$"
"\\1" H5_VERS_SUBRELEASE ${_h5public_h_contents})
#message (STATUS "VERSION: ${H5_VERS_MAJOR}.${H5_VERS_MINOR}.${H5_VERS_RELEASE}-${H5_VERS_SUBRELEASE}")
message (TRACE "VERSION: ${H5_VERS_MAJOR}.${H5_VERS_MINOR}.${H5_VERS_RELEASE}-${H5_VERS_SUBRELEASE}")
#-----------------------------------------------------------------------------
# parse the full soversion number from config/lt_vers.am and include in H5_SOVERS_INFO
@@ -224,7 +258,7 @@ string (REGEX REPLACE ".*LT_VERS_REVISION[ \t]+=[ \t]+([0-9]*).*$"
string (REGEX REPLACE ".*LT_VERS_AGE[ \t]+=[ \t]+([0-9]*).*$"
"\\1" H5_LIB_SOVERS_RELEASE ${_lt_vers_am_contents})
math (EXPR H5_LIB_SOVERS_MAJOR ${H5_LIB_SOVERS_INTERFACE}-${H5_LIB_SOVERS_RELEASE})
message (STATUS "SOVERSION: ${H5_LIB_SOVERS_MAJOR}.${H5_LIB_SOVERS_RELEASE}.${H5_LIB_SOVERS_MINOR}")
message (VERBOSE "SOVERSION: ${H5_LIB_SOVERS_MAJOR}.${H5_LIB_SOVERS_RELEASE}.${H5_LIB_SOVERS_MINOR}")
string (REGEX MATCH ".*LT_TOOLS_VERS_INTERFACE[ \t]+=[ \t]+([0-9]*).*$" H5_TOOLS_SOVERS_EXISTS ${_lt_vers_am_contents})
if (H5_TOOLS_SOVERS_EXISTS)
string (REGEX REPLACE ".*LT_TOOLS_VERS_INTERFACE[ \t]+=[ \t]+([0-9]*).*$"
@@ -234,7 +268,7 @@ if (H5_TOOLS_SOVERS_EXISTS)
string (REGEX REPLACE ".*LT_TOOLS_VERS_AGE[ \t]+=[ \t]+([0-9]*).*$"
"\\1" H5_TOOLS_SOVERS_RELEASE ${_lt_vers_am_contents})
math (EXPR H5_TOOLS_SOVERS_MAJOR ${H5_TOOLS_SOVERS_INTERFACE}-${H5_TOOLS_SOVERS_RELEASE})
message (STATUS "SOVERSION_TOOLS: ${H5_TOOLS_SOVERS_MAJOR}.${H5_TOOLS_SOVERS_RELEASE}.${H5_TOOLS_SOVERS_MINOR}")
message (VERBOSE "SOVERSION_TOOLS: ${H5_TOOLS_SOVERS_MAJOR}.${H5_TOOLS_SOVERS_RELEASE}.${H5_TOOLS_SOVERS_MINOR}")
endif ()
string (REGEX MATCH ".*LT_CXX_VERS_INTERFACE[ \t]+=[ \t]+([0-9]*).*$" H5_CXX_SOVERS_EXISTS ${_lt_vers_am_contents})
if (H5_CXX_SOVERS_EXISTS)
@@ -245,7 +279,7 @@ if (H5_CXX_SOVERS_EXISTS)
string (REGEX REPLACE ".*LT_CXX_VERS_AGE[ \t]+=[ \t]+([0-9]*).*$"
"\\1" H5_CXX_SOVERS_RELEASE ${_lt_vers_am_contents})
math (EXPR H5_CXX_SOVERS_MAJOR ${H5_CXX_SOVERS_INTERFACE}-${H5_CXX_SOVERS_RELEASE})
message (STATUS "SOVERSION_CXX: ${H5_CXX_SOVERS_MAJOR}.${H5_CXX_SOVERS_RELEASE}.${H5_CXX_SOVERS_MINOR}")
message (VERBOSE "SOVERSION_CXX: ${H5_CXX_SOVERS_MAJOR}.${H5_CXX_SOVERS_RELEASE}.${H5_CXX_SOVERS_MINOR}")
endif ()
string (REGEX MATCH ".*LT_F_VERS_INTERFACE[ \t]+=[ \t]+([0-9]*).*$" H5_F_SOVERS_EXISTS ${_lt_vers_am_contents})
if (H5_F_SOVERS_EXISTS)
@@ -256,7 +290,7 @@ if (H5_F_SOVERS_EXISTS)
string (REGEX REPLACE ".*LT_F_VERS_AGE[ \t]+=[ \t]+([0-9]*).*$"
"\\1" H5_F_SOVERS_RELEASE ${_lt_vers_am_contents})
math (EXPR H5_F_SOVERS_MAJOR ${H5_F_SOVERS_INTERFACE}-${H5_F_SOVERS_RELEASE})
message (STATUS "SOVERSION_F: ${H5_F_SOVERS_MAJOR}.${H5_F_SOVERS_RELEASE}.${H5_F_SOVERS_MINOR}")
message (VERBOSE "SOVERSION_F: ${H5_F_SOVERS_MAJOR}.${H5_F_SOVERS_RELEASE}.${H5_F_SOVERS_MINOR}")
endif ()
string (REGEX MATCH ".*LT_HL_VERS_INTERFACE[ \t]+=[ \t]+([0-9]*).*$" H5_HL_SOVERS_EXISTS ${_lt_vers_am_contents})
if (H5_HL_SOVERS_EXISTS)
@@ -267,7 +301,7 @@ if (H5_HL_SOVERS_EXISTS)
string (REGEX REPLACE ".*LT_HL_VERS_AGE[ \t]+=[ \t]+([0-9]*).*$"
"\\1" H5_HL_SOVERS_RELEASE ${_lt_vers_am_contents})
math (EXPR H5_HL_SOVERS_MAJOR ${H5_HL_SOVERS_INTERFACE}-${H5_HL_SOVERS_RELEASE})
message (STATUS "SOVERSION_HL: ${H5_HL_SOVERS_MAJOR}.${H5_HL_SOVERS_RELEASE}.${H5_HL_SOVERS_MINOR}")
message (VERBOSE "SOVERSION_HL: ${H5_HL_SOVERS_MAJOR}.${H5_HL_SOVERS_RELEASE}.${H5_HL_SOVERS_MINOR}")
endif ()
string (REGEX MATCH ".*LT_HL_CXX_VERS_INTERFACE[ \t]+=[ \t]+([0-9]*).*$" H5_HL_CXX_SOVERS_EXISTS ${_lt_vers_am_contents})
if (H5_HL_CXX_SOVERS_EXISTS)
@@ -278,7 +312,7 @@ if (H5_HL_CXX_SOVERS_EXISTS)
string (REGEX REPLACE ".*LT_HL_CXX_VERS_AGE[ \t]+=[ \t]+([0-9]*).*$"
"\\1" H5_HL_CXX_SOVERS_RELEASE ${_lt_vers_am_contents})
math (EXPR H5_HL_CXX_SOVERS_MAJOR ${H5_HL_CXX_SOVERS_INTERFACE}-${H5_HL_CXX_SOVERS_RELEASE})
message (STATUS "SOVERSION_HL_CXX: ${H5_HL_CXX_SOVERS_MAJOR}.${H5_HL_CXX_SOVERS_RELEASE}.${H5_HL_CXX_SOVERS_MINOR}")
message (VERBOSE "SOVERSION_HL_CXX: ${H5_HL_CXX_SOVERS_MAJOR}.${H5_HL_CXX_SOVERS_RELEASE}.${H5_HL_CXX_SOVERS_MINOR}")
endif ()
string (REGEX MATCH ".*LT_HL_F_VERS_INTERFACE[ \t]+=[ \t]+([0-9]*).*$" H5_HL_F_SOVERS_EXISTS ${_lt_vers_am_contents})
if (H5_HL_F_SOVERS_EXISTS)
@@ -289,7 +323,7 @@ if (H5_HL_F_SOVERS_EXISTS)
string (REGEX REPLACE ".*LT_HL_F_VERS_AGE[ \t]+=[ \t]+([0-9]*).*$"
"\\1" H5_HL_F_SOVERS_RELEASE ${_lt_vers_am_contents})
math (EXPR H5_HL_F_SOVERS_MAJOR ${H5_HL_F_SOVERS_INTERFACE}-${H5_HL_F_SOVERS_RELEASE})
message (STATUS "SOVERSION_HL_F: ${H5_HL_F_SOVERS_MAJOR}.${H5_HL_F_SOVERS_RELEASE}.${H5_HL_F_SOVERS_MINOR}")
message (VERBOSE "SOVERSION_HL_F: ${H5_HL_F_SOVERS_MAJOR}.${H5_HL_F_SOVERS_RELEASE}.${H5_HL_F_SOVERS_MINOR}")
endif ()
string (REGEX MATCH ".*LT_JAVA_VERS_INTERFACE[ \t]+=[ \t]+([0-9]*).*$" H5_JAVA_SOVERS_EXISTS ${_lt_vers_am_contents})
if(H5_JAVA_SOVERS_EXISTS)
@@ -300,7 +334,7 @@ if(H5_JAVA_SOVERS_EXISTS)
string (REGEX REPLACE ".*LT_JAVA_VERS_AGE[ \t]+=[ \t]+([0-9]*).*$"
"\\1" H5_JAVA_SOVERS_RELEASE ${_lt_vers_am_contents})
math (EXPR H5_JAVA_SOVERS_MAJOR ${H5_JAVA_SOVERS_INTERFACE}-${H5_JAVA_SOVERS_RELEASE})
message (STATUS "SOVERSION_JAVA: ${H5_JAVA_SOVERS_MAJOR}.${H5_JAVA_SOVERS_RELEASE}.${H5_JAVA_SOVERS_MINOR}")
message (VERBOSE "SOVERSION_JAVA: ${H5_JAVA_SOVERS_MAJOR}.${H5_JAVA_SOVERS_RELEASE}.${H5_JAVA_SOVERS_MINOR}")
endif ()
#-----------------------------------------------------------------------------
@@ -311,10 +345,12 @@ set (HDF5_PACKAGE_NAME "HDF5")
set (HDF5_PACKAGE_VERSION "${H5_VERS_MAJOR}.${H5_VERS_MINOR}.${H5_VERS_RELEASE}")
set (HDF5_PACKAGE_VERSION_MAJOR "${H5_VERS_MAJOR}.${H5_VERS_MINOR}")
set (HDF5_PACKAGE_VERSION_MINOR "${H5_VERS_RELEASE}")
if (NOT "${H5_VERS_SUBRELEASE}" STREQUAL "")
set (HDF5_PACKAGE_VERSION_STRING "${HDF5_PACKAGE_VERSION}-${H5_VERS_SUBRELEASE}")
if (H5_VERS_SUBRELEASE)
set (HDF5_PACKAGE_VERSION_STRING "${HDF5_PACKAGE_VERSION}.${H5_VERS_SUBRELEASE}")
set (HDF5_RELEASE_VERSION_STRING "${HDF5_PACKAGE_VERSION}-${H5_VERS_SUBRELEASE}")
else ()
set (HDF5_PACKAGE_VERSION_STRING "${HDF5_PACKAGE_VERSION}")
set (HDF5_RELEASE_VERSION_STRING "${HDF5_PACKAGE_VERSION}")
endif ()
set (HDF5_LIB_PACKAGE_SOVERSION "${H5_LIB_SOVERS_MAJOR}.${H5_LIB_SOVERS_RELEASE}.${H5_LIB_SOVERS_MINOR}")
set (HDF5_LIB_PACKAGE_SOVERSION_MAJOR "${H5_LIB_SOVERS_MAJOR}")
@@ -375,11 +411,12 @@ set (HDF5_PACKAGE_BUGREPORT "help@hdfgroup.org")
#-----------------------------------------------------------------------------
# Include some macros for reusable code
#-----------------------------------------------------------------------------
include (${HDF_RESOURCES_EXT_DIR}/HDFMacros.cmake)
include (${HDF_RESOURCES_DIR}/HDFMacros.cmake)
HDF_DIR_PATHS(${HDF5_PACKAGE_NAME})
include (${HDF_RESOURCES_EXT_DIR}/HDFLibMacros.cmake)
include (${HDF_RESOURCES_DIR}/HDFLibMacros.cmake)
include (${HDF_RESOURCES_DIR}/HDF5PluginMacros.cmake)
include (${HDF_RESOURCES_DIR}/HDF5Macros.cmake)
#-----------------------------------------------------------------------------
@@ -413,24 +450,56 @@ set (CMAKE_INCLUDE_CURRENT_DIR_IN_INTERFACE ON)
# Mac OS X Options
#-----------------------------------------------------------------------------
if (HDF5_BUILD_FRAMEWORKS AND NOT BUILD_SHARED_LIBS)
set (BUILD_SHARED_LIBS ON CACHE BOOL "Build Shared Libraries")
set (BUILD_SHARED_LIBS ON CACHE BOOL "Build Shared Libraries" FORCE)
endif ()
#-----------------------------------------------------------------------------
# Option to Build Shared and Static libs, default is both
#-----------------------------------------------------------------------------
option (BUILD_STATIC_LIBS "Build Static Libraries" ON)
set (H5_ENABLE_STATIC_LIB NO)
option (BUILD_SHARED_LIBS "Build Shared Libraries" ON)
set (H5_ENABLE_SHARED_LIB NO)
option (ONLY_SHARED_LIBS "Only Build Shared Libraries" OFF)
mark_as_advanced (ONLY_SHARED_LIBS)
if (BUILD_STATIC_LIBS)
set (H5_ENABLE_STATIC_LIB YES)
endif ()
if (BUILD_SHARED_LIBS)
set (H5_ENABLE_SHARED_LIB YES)
endif ()
set (H5_ENABLE_STATIC_LIB YES)
# Force only shared libraries if all OFF
if (NOT BUILD_STATIC_LIBS AND NOT BUILD_SHARED_LIBS)
set (ONLY_SHARED_LIBS ON CACHE BOOL "Only Build Shared Libraries" FORCE)
endif ()
if (ONLY_SHARED_LIBS)
set (H5_ENABLE_STATIC_LIB NO)
set (BUILD_SHARED_LIBS ON CACHE BOOL "Build Shared Libraries")
endif ()
set (CMAKE_POSITION_INDEPENDENT_CODE ON)
if (NOT BUILD_SHARED_LIBS)
set (tgt_file_ext "")
else ()
set (tgt_file_ext "-shared")
endif ()
#-----------------------------------------------------------------------------
# perl is used in some optional src and tests, check availability
find_package (Perl)
if (PERL_FOUND)
set (H5_PERL_FOUND YES)
endif ()
#-----------------------------------------------------------------------------
#-----------------------------------------------------------------------------
# Option to Build Static executables
#-----------------------------------------------------------------------------
option (BUILD_STATIC_EXECS "Build Static Executabless" OFF)
option (BUILD_STATIC_EXECS "Build Static Executables" OFF)
if (BUILD_STATIC_EXECS)
if (NOT WIN32)
set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -static")
@@ -438,25 +507,42 @@ if (BUILD_STATIC_EXECS)
endif ()
endif ()
option (HDF5_ENABLE_ANALYZER_TOOLS "enable the use of Clang tools" OFF)
mark_as_advanced (HDF5_ENABLE_ANALYZER_TOOLS)
if (HDF5_ENABLE_ANALYZER_TOOLS)
include (${HDF5_SOURCE_DIR}/config/sanitizer/tools.cmake)
endif ()
option (HDF5_ENABLE_SANITIZERS "execute the Clang sanitizer" OFF)
mark_as_advanced (HDF5_ENABLE_SANITIZERS)
if (HDF5_ENABLE_SANITIZERS)
include (${HDF5_SOURCE_DIR}/config/sanitizer/sanitizers.cmake)
endif ()
option (HDF5_ENABLE_FORMATTERS "format source files" OFF)
mark_as_advanced (HDF5_ENABLE_FORMATTERS)
if (HDF5_ENABLE_FORMATTERS)
include (${HDF5_SOURCE_DIR}/config/sanitizer/formatting.cmake)
endif ()
#-----------------------------------------------------------------------------
# Option to use code coverage
#-----------------------------------------------------------------------------
option (HDF5_ENABLE_COVERAGE "Enable code coverage for Libraries and Programs" OFF)
if (HDF5_ENABLE_COVERAGE)
set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -g -O0 -fprofile-arcs -ftest-coverage")
set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -g -O0 -fprofile-arcs -ftest-coverage")
set (LDFLAGS "${LDFLAGS} -fprofile-arcs -ftest-coverage")
include (${HDF5_SOURCE_DIR}/config/sanitizer/code-coverage.cmake)
if(CODE_COVERAGE AND CODE_COVERAGE_ADDED)
add_code_coverage () # Adds instrumentation to all targets
else ()
set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -g -O0 --coverage -fprofile-arcs -ftest-coverage")
set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -g --coverage -O0 -fprofile-arcs -ftest-coverage")
if (CMAKE_C_COMPILER_ID STREQUAL "GNU")
set (LDFLAGS "${LDFLAGS} -fprofile-arcs -ftest-coverage")
link_libraries (gcov)
else ()
set (CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} --coverage")
endif ()
endif ()
endif ()
#-----------------------------------------------------------------------------
# Option to indicate using dmalloc
#-----------------------------------------------------------------------------
# option (HDF5_ENABLE_USING_DMALLOC "Indicate that dmalloc is used" OFF)
# if (HDF5_ENABLE_USING_DMALLOC)
# find_package (DMALLOC)
# set (H5_HAVE_DMALLOC DMALLOC_FOUND)
# endif ()
#-----------------------------------------------------------------------------
# Option to indicate using a memory checker
#-----------------------------------------------------------------------------
@@ -466,11 +552,12 @@ if (HDF5_ENABLE_USING_MEMCHECKER)
endif ()
#-----------------------------------------------------------------------------
# Option to indicate internal memory allocation sanity checks are enabled
# Option to enable/disable using pread/pwrite for VFDs
#-----------------------------------------------------------------------------
option (HDF5_MEMORY_ALLOC_SANITY_CHECK "Indicate that internal memory allocation sanity checks are enabled" OFF)
if (HDF5_MEMORY_ALLOC_SANITY_CHECK)
set (H5_MEMORY_ALLOC_SANITY_CHECK 1)
option (HDF5_ENABLE_PREADWRITE "Use pread/pwrite in sec2/log/core VFDs in place of read/write (when available)" ON)
mark_as_advanced (HDF5_ENABLE_PREADWRITE)
if (HDF5_ENABLE_PREADWRITE AND H5_HAVE_PREAD AND H5_HAVE_PWRITE)
set (H5_HAVE_PREADWRITE 1)
endif ()
#-----------------------------------------------------------------------------
@@ -489,14 +576,15 @@ endif ()
# Certain systems may add /Debug or /Release to output paths
# and we need to call the executable from inside the CMake configuration
#-----------------------------------------------------------------------------
set (EXE_EXT "")
if (WIN32)
set (EXE_EXT ".exe")
add_definitions (-D_BIND_TO_CURRENT_VCLIBS_VERSION=1)
add_definitions (-D_CRT_SECURE_NO_WARNINGS)
add_definitions (-D_CONSOLE)
add_compile_definitions (_CRT_SECURE_NO_WARNINGS)
if (MSVC)
add_compile_definitions (_BIND_TO_CURRENT_VCLIBS_VERSION=1 _CONSOLE)
endif ()
endif ()
option (HDF5_MINGW_STATIC_GCC_LIBS "Statically link libgcc/libstdc++" OFF)
if (MSVC)
set (CMAKE_MFC_FLAG 0)
set (WIN_COMPILE_FLAGS "")
@@ -504,7 +592,7 @@ if (MSVC)
endif ()
set (MAKE_SYSTEM)
if (CMAKE_BUILD_TOOL MATCHES "make")
if (CMAKE_MAKE_PROGRAM MATCHES "make")
set (MAKE_SYSTEM 1)
endif ()
@@ -530,6 +618,13 @@ if (${HDF_CFG_NAME} MATCHES "Debug")
mark_as_advanced (HDF5_ENABLE_INSTRUMENT)
endif ()
#-----------------------------------------------------------------------------
# Add some definitions for Developer Builds
#-----------------------------------------------------------------------------
if (${HDF_CFG_NAME} MATCHES "Developer")
include (${HDF_RESOURCES_DIR}/HDF5DeveloperBuild.cmake)
endif ()
#-----------------------------------------------------------------------------
# Option to embed library info into executables
#-----------------------------------------------------------------------------
@@ -543,11 +638,32 @@ else ()
endif ()
include (${HDF_RESOURCES_DIR}/HDFCompilerFlags.cmake)
set (CMAKE_MODULE_PATH ${HDF_RESOURCES_DIR} ${HDF_RESOURCES_DIR} ${CMAKE_MODULE_PATH})
#-----------------------------------------------------------------------------
# Option to Enable HDFS
#-----------------------------------------------------------------------------
option (HDF5_ENABLE_HDFS "Enable HDFS" OFF)
if (HDF5_ENABLE_HDFS)
find_package(JNI REQUIRED)
if (JNI_FOUND)
set (H5_HAVE_LIBJVM 1)
endif ()
find_package(HDFS REQUIRED)
if (HDFS_FOUND)
set (H5_HAVE_LIBHDFS 1)
set (H5_HAVE_HDFS_H 1)
if (NOT MSVC)
list (APPEND LINK_LIBS -pthread)
endif ()
else ()
message (FATAL_ERROR "Set to use libhdfs library, but could not find or use libhdfs. Please verify that the path to HADOOP_HOME is valid, and/or reconfigure without HDF5_ENABLE_HDFS")
endif ()
endif ()
#-----------------------------------------------------------------------------
# Option to Enable MPI Parallel
#-----------------------------------------------------------------------------
set (CMAKE_MODULE_PATH ${HDF_RESOURCES_DIR} ${HDF_RESOURCES_EXT_DIR} ${CMAKE_MODULE_PATH})
option (HDF5_ENABLE_PARALLEL "Enable parallel build (requires MPI)" OFF)
if (HDF5_ENABLE_PARALLEL)
find_package(MPI REQUIRED)
@@ -555,12 +671,37 @@ if (HDF5_ENABLE_PARALLEL)
set (H5_HAVE_PARALLEL 1)
# MPI checks, only do these if MPI_C_FOUND is true, otherwise they always fail
# and once set, they are cached as false and not regenerated
set (CMAKE_REQUIRED_LIBRARIES "${MPI_C_LIBRARIES}" )
set (CMAKE_REQUIRED_LIBRARIES "${MPI_C_LIBRARIES}")
set (CMAKE_REQUIRED_INCLUDES "${MPI_C_INCLUDE_DIRS}")
# Used by Fortran + MPI
CHECK_SYMBOL_EXISTS (MPI_Comm_c2f "${MPI_C_INCLUDE_DIRS}/mpi.h" H5_HAVE_MPI_MULTI_LANG_Comm)
CHECK_SYMBOL_EXISTS (MPI_Info_c2f "${MPI_C_INCLUDE_DIRS}/mpi.h" H5_HAVE_MPI_MULTI_LANG_Info)
CHECK_SYMBOL_EXISTS (MPI_Comm_c2f "mpi.h" H5_HAVE_MPI_MULTI_LANG_Comm)
CHECK_SYMBOL_EXISTS (MPI_Info_c2f "mpi.h" H5_HAVE_MPI_MULTI_LANG_Info)
# Used by Parallel Compression feature
set (PARALLEL_FILTERED_WRITES ON)
CHECK_SYMBOL_EXISTS (MPI_Ibarrier "mpi.h" H5_HAVE_MPI_Ibarrier)
CHECK_SYMBOL_EXISTS (MPI_Issend "mpi.h" H5_HAVE_MPI_Issend)
CHECK_SYMBOL_EXISTS (MPI_Iprobe "mpi.h" H5_HAVE_MPI_Iprobe)
CHECK_SYMBOL_EXISTS (MPI_Irecv "mpi.h" H5_HAVE_MPI_Irecv)
if (H5_HAVE_MPI_Ibarrier AND H5_HAVE_MPI_Issend AND H5_HAVE_MPI_Iprobe AND H5_HAVE_MPI_Irecv)
set (H5_HAVE_PARALLEL_FILTERED_WRITES 1)
else ()
message (WARNING "The MPI_Ibarrier/MPI_Issend/MPI_Iprobe/MPI_Irecv functions could not be located.
Parallel writes of filtered data will be disabled.")
set (PARALLEL_FILTERED_WRITES OFF)
endif ()
# Used by big I/O feature
set (LARGE_PARALLEL_IO ON)
CHECK_SYMBOL_EXISTS (MPI_Get_elements_x "mpi.h" H5_HAVE_MPI_Get_elements_x)
CHECK_SYMBOL_EXISTS (MPI_Type_size_x "mpi.h" H5_HAVE_MPI_Type_size_x)
if (NOT H5_HAVE_MPI_Get_elements_x OR NOT H5_HAVE_MPI_Type_size_x)
message (WARNING "The MPI_Get_elements_x and/or MPI_Type_size_x functions could not be located.
Reading/Writing >2GB of data in a single parallel I/O operation will be disabled.")
set (LARGE_PARALLEL_IO OFF)
endif ()
else ()
message (STATUS "Parallel libraries not found")
message (FATAL_ERROR "Parallel libraries not found")
endif ()
endif ()
@@ -572,25 +713,114 @@ if (H5_HAVE_PARALLEL)
endif ()
endif ()
set (DEFAULT_API_VERSION "v110")
# Determine whether to build the HDF5 Subfiling VFD
set (H5FD_SUBFILING_DIR ${HDF5_SRC_DIR}/H5FDsubfiling)
set (HDF5_SRC_INCLUDE_DIRS
${HDF5_SRC_INCLUDE_DIRS}
${H5FD_SUBFILING_DIR}
)
option (HDF5_ENABLE_SUBFILING_VFD "Build Parallel HDF5 Subfiling VFD" OFF)
if (HDF5_ENABLE_SUBFILING_VFD)
if (NOT HDF5_ENABLE_PARALLEL)
message (FATAL_ERROR "Subfiling VFD requires a parallel HDF5 build")
else ()
# Check for MPI_Comm_split_type
CHECK_SYMBOL_EXISTS (MPI_Comm_split_type "mpi.h" H5_HAVE_MPI_Comm_split_type)
if (NOT H5_HAVE_MPI_Comm_split_type)
message (FATAL_ERROR "Subfiling VFD requires MPI-3 support for MPI_Comm_split_type")
endif ()
endif()
if (NOT DEFINED Threads_FOUND)
set (THREADS_PREFER_PTHREAD_FLAG ON)
find_package (Threads REQUIRED)
endif ()
# For now, make sure we're using pthreads. Once Subfiling can be
# supported on Windows, we should allow Win32 threads as well
if (NOT ${Threads_FOUND} OR NOT ${CMAKE_USE_PTHREADS_INIT})
message (FATAL_ERROR "Subfiling requires pthreads for system thread library")
endif ()
CHECK_INCLUDE_FILE("stdatomic.h" HAVE_STDATOMIC_H)
if (NOT HAVE_STDATOMIC_H)
message (FATAL_ERROR "Subfiling VFD requires atomic operations support. C11 stdatomic.h NOT available.")
else()
set (H5_HAVE_STDATOMIC_H 1)
endif()
set (H5_HAVE_SUBFILING_VFD 1)
# IOC VFD is currently only built when subfiling is enabled
set (H5_HAVE_IOC_VFD 1)
message (STATUS "Setting up to use Mercury components")
set (H5FD_SUBFILING_MERCURY_DIR ${H5FD_SUBFILING_DIR}/mercury/src/util)
set (HDF5_SRC_INCLUDE_DIRS
${HDF5_SRC_INCLUDE_DIRS}
${H5FD_SUBFILING_MERCURY_DIR}
)
set (H5_HAVE_MERCURY_H 1)
set (CMAKE_REQUIRED_INCLUDES "${H5FD_SUBFILING_MERCURY_DIR}")
endif()
#option (DEFAULT_API_VERSION "Enable v1.14 API (v16, v18, v110, v112, v114)" "v114")
set (DEFAULT_API_VERSION "v114" CACHE STRING "Enable v1.14 API (v16, v18, v110, v112, v114)")
set_property (CACHE DEFAULT_API_VERSION PROPERTY STRINGS v16 v18 v110 v112 v114)
#-----------------------------------------------------------------------------
# Option to use 1.6.x API
#-----------------------------------------------------------------------------
option (HDF5_USE_16_API_DEFAULT "Use the HDF5 1.6.x API by default" OFF)
set (H5_USE_16_API_DEFAULT 0)
if (HDF5_USE_16_API_DEFAULT)
if (DEFAULT_API_VERSION MATCHES "v16")
set (H5_USE_16_API_DEFAULT 1)
set (DEFAULT_API_VERSION "v16")
endif ()
#-----------------------------------------------------------------------------
# Option to use 1.8.x API
#-----------------------------------------------------------------------------
option (HDF5_USE_18_API_DEFAULT "Use the HDF5 1.8.x API by default" OFF)
set (H5_USE_18_API_DEFAULT 0)
if (HDF5_USE_18_API_DEFAULT)
if (DEFAULT_API_VERSION MATCHES "v18")
set (H5_USE_18_API_DEFAULT 1)
set (DEFAULT_API_VERSION "v18")
endif ()
#-----------------------------------------------------------------------------
# Option to use 1.10.x API
#-----------------------------------------------------------------------------
set (H5_USE_110_API_DEFAULT 0)
if (DEFAULT_API_VERSION MATCHES "v110")
set (H5_USE_110_API_DEFAULT 1)
endif ()
#-----------------------------------------------------------------------------
# Option to use 1.12.x API
#-----------------------------------------------------------------------------
if (NOT DEFAULT_API_VERSION)
set (DEFAULT_API_VERSION "v112")
endif ()
set (H5_USE_112_API_DEFAULT 0)
if (DEFAULT_API_VERSION MATCHES "v112")
set (H5_USE_112_API_DEFAULT 1)
endif ()
#-----------------------------------------------------------------------------
# Option to use 1.14.x API
#-----------------------------------------------------------------------------
if (NOT DEFAULT_API_VERSION)
set (DEFAULT_API_VERSION "v114")
endif ()
set (H5_USE_114_API_DEFAULT 0)
if (DEFAULT_API_VERSION MATCHES "v114")
set (H5_USE_114_API_DEFAULT 1)
endif ()
#-----------------------------------------------------------------------------
# Option to use 1.16.x API
#-----------------------------------------------------------------------------
if (NOT DEFAULT_API_VERSION)
set (DEFAULT_API_VERSION "v116")
endif ()
set (H5_USE_116_API_DEFAULT 0)
if (DEFAULT_API_VERSION MATCHES "v116")
set (H5_USE_116_API_DEFAULT 1)
endif ()
#-----------------------------------------------------------------------------
@@ -619,57 +849,61 @@ if (NOT HDF5_EXTERNALLY_CONFIGURED)
endif ()
endif ()
endif ()
#-----------------------------------------------------------------------------
# Option to use threadsafe
#-----------------------------------------------------------------------------
option (HDF5_ENABLE_THREADSAFE "Enable thread-safety" OFF)
if (HDF5_ENABLE_THREADSAFE)
# check for unsupported options
message (STATUS " **** thread-safety option not supported with static library **** ")
message (STATUS " **** thread-safety option will not be used building static library **** ")
if (HDF5_ENABLE_PARALLEL)
if (NOT ALLOW_UNSUPPORTED)
message (FATAL_ERROR " **** parallel and thread-safety options are not supported **** ")
else ()
message (STATUS " **** Allowing unsupported parallel and thread-safety options **** ")
endif ()
if (WIN32)
message (VERBOSE " **** thread-safety option not supported with static library **** ")
message (VERBOSE " **** thread-safety option will not be used building static library **** ")
endif ()
if (HDF5_BUILD_FORTRAN)
if (NOT ALLOW_UNSUPPORTED)
message (FATAL_ERROR " **** Fortran and thread-safety options are not supported **** ")
message (FATAL_ERROR " **** Fortran and thread-safety options are not supported, override with ALLOW_UNSUPPORTED option **** ")
else ()
message (STATUS " **** Allowing unsupported Fortran and thread-safety options **** ")
message (VERBOSE " **** Allowing unsupported Fortran and thread-safety options **** ")
endif ()
endif ()
if (HDF5_BUILD_CPP_LIB)
if (NOT ALLOW_UNSUPPORTED)
message (FATAL_ERROR " **** C++ and thread-safety options are not supported **** ")
message (FATAL_ERROR " **** C++ and thread-safety options are not supported, override with ALLOW_UNSUPPORTED option **** ")
else ()
message (STATUS " **** Allowing unsupported C++ and thread-safety options **** ")
message (VERBOSE " **** Allowing unsupported C++ and thread-safety options **** ")
endif ()
endif ()
if (HDF5_BUILD_HL_LIB)
if (NOT ALLOW_UNSUPPORTED)
message (FATAL_ERROR " **** HL and thread-safety options are not supported **** ")
message (FATAL_ERROR " **** HL and thread-safety options are not supported, override with ALLOW_UNSUPPORTED option **** ")
else ()
message (STATUS " **** Allowing unsupported HL and thread-safety options **** ")
message (VERBOSE " **** Allowing unsupported HL and thread-safety options **** ")
endif ()
endif ()
if (H5_HAVE_IOEO)
message (STATUS " **** Win32 threads requires WINVER>=0x600 (Windows Vista/7/8) **** ")
message (VERBOSE " **** Win32 threads requires WINVER>=0x600 (Windows Vista/7/8) **** ")
set (H5_HAVE_WIN_THREADS 1)
else ()
if (NOT H5_HAVE_PTHREAD_H)
message (FATAL_ERROR " **** thread-safe option requires Win32 threads or Pthreads **** ")
endif ()
endif ()
set(THREADS_PREFER_PTHREAD_FLAG ON)
find_package(Threads)
if (NOT Threads_FOUND)
message (STATUS " **** thread-safe package not found - threads still might work **** ")
set (THREADS_PREFER_PTHREAD_FLAG ON)
find_package (Threads REQUIRED)
if (Threads_FOUND)
set (H5_HAVE_THREADSAFE 1)
endif ()
endif ()
#-----------------------------------------------------------------------------
# Option to build the map API
#-----------------------------------------------------------------------------
option (HDF5_ENABLE_MAP_API "Build the map API" OFF)
if (HDF5_ENABLE_MAP_API)
set (H5_HAVE_MAP_API 1)
endif ()
#-----------------------------------------------------------------------------
# Add the HDF5 Library Target to the build
#-----------------------------------------------------------------------------
@@ -677,38 +911,77 @@ add_subdirectory (src)
if (HDF5_ALLOW_EXTERNAL_SUPPORT MATCHES "GIT" OR HDF5_ALLOW_EXTERNAL_SUPPORT MATCHES "TGZ")
if (ZLIB_FOUND AND ZLIB_USE_EXTERNAL)
add_dependencies (${HDF5_LIB_TARGET} ZLIB)
if (NOT ONLY_SHARED_LIBS)
add_dependencies (${HDF5_LIB_TARGET} HDF5_ZLIB)
endif ()
if (BUILD_SHARED_LIBS)
add_dependencies (${HDF5_LIBSH_TARGET} ZLIB)
add_dependencies (${HDF5_LIBSH_TARGET} HDF5_ZLIB)
endif ()
endif ()
if (SZIP_FOUND AND SZIP_USE_EXTERNAL)
add_dependencies (${HDF5_LIB_TARGET} SZIP)
if (NOT ONLY_SHARED_LIBS)
add_dependencies (${HDF5_LIB_TARGET} SZIP)
endif ()
if (BUILD_SHARED_LIBS)
add_dependencies (${HDF5_LIBSH_TARGET} SZIP)
endif ()
endif ()
endif ()
#-----------------------------------------------------------------------------
# Option to build documentation
#-----------------------------------------------------------------------------
option (HDF5_BUILD_DOC "Build documentation" OFF)
if (HDF5_BUILD_DOC AND EXISTS "${HDF5_DOXYGEN_DIR}" AND IS_DIRECTORY "${HDF5_DOXYGEN_DIR}")
# check if Doxygen is installed
find_package(Doxygen)
if (DOXYGEN_FOUND)
message(STATUS "Doxygen version: ${DOXYGEN_VERSION}")
add_subdirectory (doxygen)
else ()
message(STATUS "Doxygen needs to be installed to generate the doxygen documentation")
endif ()
endif ()
#-----------------------------------------------------------------------------
# Dashboard and Testing Settings
#-----------------------------------------------------------------------------
option (BUILD_TESTING "Build HDF5 Unit Testing" ON)
if (BUILD_TESTING)
set (DART_TESTING_TIMEOUT 1200
CACHE INTEGER
CACHE STRING
"Timeout in seconds for each test (default 1200=20minutes)"
)
# Generate a list of timeouts based on DART_TESTING_TIMEOUT
math (EXPR CTEST_SHORT_TIMEOUT "${DART_TESTING_TIMEOUT} / 2")
math (EXPR CTEST_LONG_TIMEOUT "${DART_TESTING_TIMEOUT} * 2")
math (EXPR CTEST_VERY_LONG_TIMEOUT "${DART_TESTING_TIMEOUT} * 3")
option (HDF5_TEST_VFD "Execute tests with different VFDs" OFF)
mark_as_advanced (HDF5_TEST_VFD)
if (HDF5_TEST_VFD)
option (HDF5_TEST_FHEAP_VFD "Execute tests with different VFDs" ON)
mark_as_advanced (HDF5_TEST_FHEAP_VFD)
# Initialize the list of VFDs to be used for testing and create a test folder for each VFD
H5_SET_VFD_LIST()
endif ()
option (HDF_TEST_EXPRESS "Control testing framework (0-3)" "0")
option (HDF5_TEST_PASSTHROUGH_VOL "Execute tests with different passthrough VOL connectors" OFF)
mark_as_advanced (HDF5_TEST_PASSTHROUGH_VOL)
if (HDF5_TEST_PASSTHROUGH_VOL)
option (HDF5_TEST_FHEAP_PASSTHROUGH_VOL "Execute fheap test with different passthrough VOL connectors" ON)
mark_as_advanced (HDF5_TEST_FHEAP_PASSTHROUGH VOL)
endif ()
set (H5_TEST_EXPRESS_LEVEL_DEFAULT "3")
set (HDF_TEST_EXPRESS "${H5_TEST_EXPRESS_LEVEL_DEFAULT}"
CACHE STRING "Control testing framework (0-3) (0 = exhaustive testing; 3 = quicker testing)")
mark_as_advanced (HDF_TEST_EXPRESS)
if (NOT "${HDF_TEST_EXPRESS}" STREQUAL "")
set (H5_TEST_EXPRESS_LEVEL_DEFAULT "${HDF_TEST_EXPRESS}")
endif ()
enable_testing ()
include (CTest)
@@ -716,6 +989,30 @@ if (BUILD_TESTING)
include (${HDF5_SOURCE_DIR}/CTestConfig.cmake)
configure_file (${HDF_RESOURCES_DIR}/CTestCustom.cmake ${HDF5_BINARY_DIR}/CTestCustom.ctest @ONLY)
option (HDF5_TEST_SERIAL "Execute non-parallel tests" ON)
mark_as_advanced (HDF5_TEST_SERIAL)
option (HDF5_TEST_TOOLS "Execute tools tests" ON)
mark_as_advanced (HDF5_TEST_TOOLS)
option (HDF5_TEST_EXAMPLES "Execute tests on examples" ON)
mark_as_advanced (HDF5_TEST_EXAMPLES)
option (HDF5_TEST_SWMR "Execute SWMR tests" ON)
mark_as_advanced (HDF5_TEST_SWMR)
option (HDF5_TEST_PARALLEL "Execute parallel tests" ON)
mark_as_advanced (HDF5_TEST_PARALLEL)
option (HDF5_TEST_FORTRAN "Execute fortran tests" ON)
mark_as_advanced (HDF5_TEST_FORTRAN)
option (HDF5_TEST_CPP "Execute cpp tests" ON)
mark_as_advanced (HDF5_TEST_CPP)
option (HDF5_TEST_JAVA "Execute java tests" ON)
mark_as_advanced (HDF5_TEST_JAVA)
if (NOT HDF5_EXTERNALLY_CONFIGURED)
if (EXISTS "${HDF5_SOURCE_DIR}/test" AND IS_DIRECTORY "${HDF5_SOURCE_DIR}/test")
add_subdirectory (test)
@@ -728,6 +1025,38 @@ if (BUILD_TESTING)
endif ()
endif ()
#-----------------------------------------------------------------------------
# Option to build HDF5 Utilities
#-----------------------------------------------------------------------------
if (EXISTS "${HDF5_SOURCE_DIR}/utils" AND IS_DIRECTORY "${HDF5_SOURCE_DIR}/utils")
option (HDF5_BUILD_PARALLEL_TOOLS "Build Parallel HDF5 Tools" OFF)
if (HDF5_BUILD_PARALLEL_TOOLS AND HDF5_ENABLE_PARALLEL)
set (CMAKE_PREFIX_PATH "$HDF_RESOURCES_DIR")
find_package(MFU REQUIRED)
if (MFU_FOUND)
message(STATUS "LL_PATH=${LL_PATH}")
set (H5_HAVE_LIBMFU 1)
set (H5_HAVE_MFU_H 1)
set (CMAKE_REQUIRED_INCLUDES "${MFU_INCLUDE_DIR}")
set (MFU_LIBRARY_DEBUG "$MFU_LIBRARY")
set (MFU_LIBRARY_RELEASE "$MFU_LIBRARY")
endif ()
find_package(CIRCLE REQUIRED)
if (CIRCLE_FOUND)
set (H5_HAVE_LIBCIRCLE 1)
set (H5_HAVE_CIRCLE_H 1)
set (CMAKE_REQUIRED_INCLUDES "${CIRCLE_INCLUDE_DIR}")
endif ()
find_package(DTCMP REQUIRED)
if (DTCMP_FOUND)
set (H5_HAVE_LIBDTCMP 1)
set (H5_HAVE_DTCMP_H 1)
set (CMAKE_REQUIRED_INCLUDES "${DTCMP_INCLUDE_DIR}")
endif ()
endif ()
add_subdirectory (utils)
endif ()
#-----------------------------------------------------------------------------
# Option to build HDF5 Tools
#-----------------------------------------------------------------------------
@@ -738,6 +1067,21 @@ if (EXISTS "${HDF5_SOURCE_DIR}/tools" AND IS_DIRECTORY "${HDF5_SOURCE_DIR}/tools
endif ()
endif ()
#-----------------------------------------------------------------------------
# Include filter plugins
#-----------------------------------------------------------------------------
include (CMakePlugins.cmake)
if (HDF5_PACKAGE_EXTLIBS AND NOT HDF5_NO_PACKAGES)
if (HDF5_ENABLE_PLUGIN_SUPPORT AND PLUGIN_FOUND)
PACKAGE_PLUGIN_LIBRARY (${HDF5_ALLOW_EXTERNAL_SUPPORT})
# option (HDF5_TEST_PLUGIN "Execute plugin tests" ON)
# mark_as_advanced (HDF5_TEST_PLUGIN)
# TEST_PLUGIN_LIBRARY ()
endif ()
endif ()
#-----------------------------------------------------------------------------
# Option to build examples
#-----------------------------------------------------------------------------
@@ -770,35 +1114,37 @@ set (H5_FC_FUNC_ "H5_FC_FUNC_(name,NAME) name ## _")
if (EXISTS "${HDF5_SOURCE_DIR}/fortran" AND IS_DIRECTORY "${HDF5_SOURCE_DIR}/fortran")
option (HDF5_BUILD_FORTRAN "Build FORTRAN support" OFF)
if (HDF5_BUILD_FORTRAN)
include (${HDF_RESOURCES_DIR}/HDFUseFortran.cmake)
option (HDF5_ENABLE_F2003 "Enable FORTRAN 2003 Standard" ON)
include (${HDF_RESOURCES_EXT_DIR}/HDFUseFortran.cmake)
message (STATUS "Fortran compiler ID is ${CMAKE_Fortran_COMPILER_ID}")
# Building with PGI requires CMake 3.3 or greater because previous versions
# of CMake add the wrong compiler flag for the PGI Fortran compiler.
if ("${CMAKE_Fortran_COMPILER_ID}" MATCHES "PGI" AND "${CMAKE_VERSION}" VERSION_LESS "3.3")
message (FATAL_ERROR " **** PGI FORTRAN REQUIRES CMAKE VERSION 3.3 OR GREATER **** ")
endif ()
message (VERBOSE "Fortran compiler ID is ${CMAKE_Fortran_COMPILER_ID}")
include (${HDF_RESOURCES_DIR}/HDFFortranCompilerFlags.cmake)
include (${HDF_RESOURCES_DIR}/HDF5UseFortran.cmake)
set (LINK_Fortran_LIBS ${LINK_LIBS})
if (HDF5_ENABLE_F2003)
if (NOT FORTRAN_HAVE_ISO_C_BINDING)
set (HDF5_ENABLE_F2003 OFF)
endif ()
if (NOT H5_FORTRAN_HAVE_ISO_C_BINDING)
message (FATAL_ERROR " **** Fortran compiler lacks required Fortran 2003 features; unsupported Fortran 2003 compiler, disable HDF5_BUILD_FORTRAN **** ")
endif ()
# Parallel IO usage requires MPI to be Linked and Included
if (H5_HAVE_PARALLEL)
find_package(MPI REQUIRED COMPONENTS Fortran)
set (LINK_Fortran_LIBS ${LINK_Fortran_LIBS} ${MPI_Fortran_LIBRARIES})
if (MPI_Fortran_LINK_FLAGS)
set (CMAKE_Fortran_EXE_LINKER_FLAGS "${MPI_Fortran_LINK_FLAGS} ${CMAKE_EXE_LINKER_FLAGS}")
endif ()
endif ()
#option (HDF5_INSTALL_MOD_FORTRAN "Copy FORTRAN mod files to include directory (NO SHARED STATIC)" "NO")
set (HDF5_INSTALL_MOD_FORTRAN "SHARED" CACHE STRING "Copy FORTRAN mod files to include directory (NO SHARED STATIC)")
set_property (CACHE HDF5_INSTALL_MOD_FORTRAN PROPERTY STRINGS NO SHARED STATIC)
if (NOT HDF5_INSTALL_MOD_FORTRAN MATCHES "NO")
if (NOT BUILD_SHARED_LIBS AND BUILD_STATIC_LIBS)
set (HDF5_INSTALL_MOD_FORTRAN "STATIC")
elseif (BUILD_SHARED_LIBS AND NOT BUILD_STATIC_LIBS)
set (HDF5_INSTALL_MOD_FORTRAN "SHARED")
endif ()
endif ()
add_subdirectory (fortran)
if (HDF5_BUILD_HL_LIB)
if (EXISTS "${HDF5_SOURCE_DIR}/hl/fortran" AND IS_DIRECTORY "${HDF5_SOURCE_DIR}/hl/fortran")
@@ -813,22 +1159,19 @@ endif ()
# Option to build HDF5 C++ Library
#-----------------------------------------------------------------------------
if (EXISTS "${HDF5_SOURCE_DIR}/c++" AND IS_DIRECTORY "${HDF5_SOURCE_DIR}/c++")
option (HDF5_BUILD_CPP_LIB "Build HDF5 C++ Library" ON)
option (HDF5_BUILD_CPP_LIB "Build HDF5 C++ Library" OFF)
if (HDF5_BUILD_CPP_LIB)
# check for unsupported options
if (HDF5_ENABLE_PARALLEL)
if (NOT ALLOW_UNSUPPORTED)
message (FATAL_ERROR " **** Parallel and C++ options are mutually exclusive **** ")
message (FATAL_ERROR " **** Parallel and C++ options are mutually exclusive, override with ALLOW_UNSUPPORTED option **** ")
else ()
message (STATUS " **** Allowing unsupported Parallel and C++ options **** ")
message (VERBOSE " **** Allowing unsupported Parallel and C++ options **** ")
endif ()
endif ()
include (${HDF_RESOURCES_EXT_DIR}/HDFUseCXX.cmake)
include (${HDF_RESOURCES_DIR}/HDFCXXCompilerFlags.cmake)
if (CMAKE_NO_STD_NAMESPACE)
set (H5_NO_STD 1)
endif ()
add_subdirectory (c++)
if (HDF5_BUILD_HL_LIB)
if (EXISTS "${HDF5_SOURCE_DIR}/hl/c++" AND IS_DIRECTORY "${HDF5_SOURCE_DIR}/hl/c++")
@@ -862,6 +1205,12 @@ endif ()
#-----------------------------------------------------------------------------
# Generate the H5pubconf.h file containing user settings needed by compilation
#-----------------------------------------------------------------------------
configure_file (${HDF_RESOURCES_DIR}/H5pubconf.h.in ${HDF5_BINARY_DIR}/H5pubconf.h @ONLY)
configure_file (${HDF_RESOURCES_DIR}/H5pubconf.h.in ${HDF5_SRC_BINARY_DIR}/H5pubconf.h @ONLY)
#-----------------------------------------------------------------------------
# Options for use by cross compiling and toolchains
#-----------------------------------------------------------------------------
option (HDF5_USE_PREGEN "Use pre-generated Files" OFF)
option (HDF5_BATCH_H5DETECT "Use a batch command for running h5detect" OFF)
include (CMakeInstallation.cmake)

56
CMakePlugins.cmake Normal file
View File

@@ -0,0 +1,56 @@
#
# Copyright by The HDF Group.
# All rights reserved.
#
# This file is part of HDF5. The full HDF5 copyright notice, including
# terms governing use, modification, and redistribution, is contained in
# the COPYING file, which can be found at the root of the source code
# distribution tree, or in https://www.hdfgroup.org/licenses.
# If you do not have access to either file, you may request a copy from
# help@hdfgroup.org.
#
include (ExternalProject)
#option (HDF5_ALLOW_EXTERNAL_SUPPORT "Allow External Library Building (NO GIT TGZ)" "NO")
set (HDF5_ALLOW_EXTERNAL_SUPPORT "NO" CACHE STRING "Allow External Library Building (NO GIT TGZ)")
set_property (CACHE HDF5_ALLOW_EXTERNAL_SUPPORT PROPERTY STRINGS NO GIT TGZ)
if (HDF5_ALLOW_EXTERNAL_SUPPORT MATCHES "GIT" OR HDF5_ALLOW_EXTERNAL_SUPPORT MATCHES "TGZ")
option (PLUGIN_USE_EXTERNAL "Use External Library Building for filter PLUGIN" 1)
if (HDF5_ALLOW_EXTERNAL_SUPPORT MATCHES "GIT")
set (PLUGIN_URL ${PLUGIN_GIT_URL} CACHE STRING "Path to PLUGIN git repository")
set (PLUGIN_BRANCH ${PLUGIN_GIT_BRANCH})
elseif (HDF5_ALLOW_EXTERNAL_SUPPORT MATCHES "TGZ")
if (NOT TGZPATH)
set (TGZPATH ${HDF5_SOURCE_DIR})
endif ()
set (PLUGIN_URL ${TGZPATH}/${PLUGIN_TGZ_NAME})
if (NOT EXISTS "${PLUGIN_URL}")
set (HDF5_ENABLE_PLUGIN_SUPPORT OFF CACHE BOOL "" FORCE)
message (STATUS "Filter PLUGIN file ${PLUGIN_URL} not found")
endif ()
else ()
set (PLUGIN_USE_EXTERNAL 0)
endif ()
endif ()
#-----------------------------------------------------------------------------
# Option for PLUGIN support
#-----------------------------------------------------------------------------
option (HDF5_ENABLE_PLUGIN_SUPPORT "Enable PLUGIN Filters" OFF)
if (HDF5_ENABLE_PLUGIN_SUPPORT)
if (NOT PLUGIN_USE_EXTERNAL)
find_package (PLUGIN NAMES ${PLUGIN_PACKAGE_NAME}${HDF_PACKAGE_EXT})
if (NOT PLUGIN_FOUND)
find_package (PLUGIN) # Legacy find
endif ()
endif ()
if (NOT PLUGIN_FOUND)
if (HDF5_ALLOW_EXTERNAL_SUPPORT MATCHES "GIT" OR HDF5_ALLOW_EXTERNAL_SUPPORT MATCHES "TGZ")
EXTERNAL_PLUGIN_LIBRARY (${HDF5_ALLOW_EXTERNAL_SUPPORT})
message (STATUS "Filter PLUGIN is built")
else ()
message (FATAL_ERROR " PLUGIN is Required for PLUGIN support in HDF5")
endif ()
endif ()
message (STATUS "Filter PLUGIN is ON")
endif ()

128
CODE_OF_CONDUCT.md Normal file
View File

@@ -0,0 +1,128 @@
# Contributor Covenant Code of Conduct
## Our Pledge
We as members, contributors, and leaders pledge to make participation in our
community a harassment-free experience for everyone, regardless of age, body
size, visible or invisible disability, ethnicity, sex characteristics, gender
identity and expression, level of experience, education, socio-economic status,
nationality, personal appearance, race, religion, or sexual identity
and orientation.
We pledge to act and interact in ways that contribute to an open, welcoming,
diverse, inclusive, and healthy community.
## Our Standards
Examples of behavior that contributes to a positive environment for our
community include:
* Demonstrating empathy and kindness toward other people
* Being respectful of differing opinions, viewpoints, and experiences
* Giving and gracefully accepting constructive feedback
* Accepting responsibility and apologizing to those affected by our mistakes,
and learning from the experience
* Focusing on what is best not just for us as individuals, but for the
overall community
Examples of unacceptable behavior include:
* The use of sexualized language or imagery, and sexual attention or
advances of any kind
* Trolling, insulting or derogatory comments, and personal or political attacks
* Public or private harassment
* Publishing others' private information, such as a physical or email
address, without their explicit permission
* Other conduct which could reasonably be considered inappropriate in a
professional setting
## Enforcement Responsibilities
Community leaders are responsible for clarifying and enforcing our standards of
acceptable behavior and will take appropriate and fair corrective action in
response to any behavior that they deem inappropriate, threatening, offensive,
or harmful.
Community leaders have the right and responsibility to remove, edit, or reject
comments, commits, code, wiki edits, issues, and other contributions that are
not aligned to this Code of Conduct, and will communicate reasons for moderation
decisions when appropriate.
## Scope
This Code of Conduct applies within all community spaces, and also applies when
an individual is officially representing the community in public spaces.
Examples of representing our community include using an official e-mail address,
posting via an official social media account, or acting as an appointed
representative at an online or offline event.
## Enforcement
Instances of abusive, harassing, or otherwise unacceptable behavior may be
reported to the community leaders responsible for enforcement at
help@hdfgroup.org.
All complaints will be reviewed and investigated promptly and fairly.
All community leaders are obligated to respect the privacy and security of the
reporter of any incident.
## Enforcement Guidelines
Community leaders will follow these Community Impact Guidelines in determining
the consequences for any action they deem in violation of this Code of Conduct:
### 1. Correction
**Community Impact**: Use of inappropriate language or other behavior deemed
unprofessional or unwelcome in the community.
**Consequence**: A private, written warning from community leaders, providing
clarity around the nature of the violation and an explanation of why the
behavior was inappropriate. A public apology may be requested.
### 2. Warning
**Community Impact**: A violation through a single incident or series
of actions.
**Consequence**: A warning with consequences for continued behavior. No
interaction with the people involved, including unsolicited interaction with
those enforcing the Code of Conduct, for a specified period of time. This
includes avoiding interactions in community spaces as well as external channels
like social media. Violating these terms may lead to a temporary or
permanent ban.
### 3. Temporary Ban
**Community Impact**: A serious violation of community standards, including
sustained inappropriate behavior.
**Consequence**: A temporary ban from any sort of interaction or public
communication with the community for a specified period of time. No public or
private interaction with the people involved, including unsolicited interaction
with those enforcing the Code of Conduct, is allowed during this period.
Violating these terms may lead to a permanent ban.
### 4. Permanent Ban
**Community Impact**: Demonstrating a pattern of violation of community
standards, including sustained inappropriate behavior, harassment of an
individual, or aggression toward or disparagement of classes of individuals.
**Consequence**: A permanent ban from any sort of public interaction within
the community.
## Attribution
This Code of Conduct is adapted from the [Contributor Covenant][homepage],
version 2.0, available at
https://www.contributor-covenant.org/version/2/0/code_of_conduct.html.
Community Impact Guidelines were inspired by [Mozilla's code of conduct
enforcement ladder](https://github.com/mozilla/diversity).
[homepage]: https://www.contributor-covenant.org
For answers to common questions about this code of conduct, see the FAQ at
https://www.contributor-covenant.org/faq. Translations are available at
https://www.contributor-covenant.org/translations.

142
CONTRIBUTING.md Normal file
View File

@@ -0,0 +1,142 @@
# How to contribute to HDF5
The HDF Group encourages community members to contribute to the HDF5 project. We accept and are very grateful for any contributions,
from minor typos and bug fixes to new features. The HDF Group is committed to work with the code contributors and make contribution
process enjoyable and straightforward.
This document describes guiding principles for the HDF5 code contributors and does not pretend to address any possible
contribution. If in doubt, please do not hesitate to ask us for guidance.
***Note that no contribution may be accepted unless the donor agrees with the HDF Group software license terms
found in the COPYING file in every branch's top source directory.***
> We will assume that you are familiar with `git` and `GitHub`. If not, you may go through the GitHub tutorial found at
[https://guides.github.com/activities/hello-world/](https://guides.github.com/activities/hello-world/). This tutorial should only take
around 10 minutes.
## Table of Contents
* [Workflow](#workflow)
* [Acceptance criteria for a pull request](#criteria)
* [Release Note](#releasenote)
* [Check List](#checklist)
# Workflow <A NAME="workflow"></A>
The process for contributing code to HDF5 is as follows:
* Open an issue on [HDF5 GitHub](https://github.com/HDFGroup/hdf5/issues).
> This step is ***required*** unless the change is minor (e.g., typo fix).
* Fork the [HDF5](https://github.com/HDFGroup/hdf5) repository.
* Make the desired changes to the HDF5 software.
* New features should always go to _develop_ branch first and later should be merged to the appropriate maintenance branches.
* Bug fixes should go to all appropriate branches (_develop_ and maintenance).
* Build and test your changes. Detailed instructions on building and testing HDF5 can be found in the `INSTALL*` files in the `release_docs` directory.
* Push your changes to GitHub.
* Issue a pull request and address any code formatting and testing issues reported.
Once a pull request is correctly formatted and passes **ALL** CI tests, it will be reviewed and evaluated by The HDF Group developers and HDF5
community members who can approve pull requests. The HDF Group developers will work with you to ensure that the pull request satisfies the acceptance
criteria described in the next section.
# Acceptance criteria for a pull request <A NAME="criteria"></A>
We appreciate every contribution we receive, but we may not accept them all. Those that we *do* satisfy the following criteria:
* **The pull request has a clear purpose** - What does the pull request address? How does it benefit the HDF5 community?
If the pull request does not have a clear purpose and benefits, it will not be accepted.
* **The pull request is documented** - The HDF5 developers must understand not only *what* a change is doing, but *how* it is doing it.
Documenting the code makes it easier for us to understand your patch and maintain the code in the future.
* **The pull request passes HDF5 regression testing** - Any issue fixed or functionality added should be accompanied by the corresponding
tests and pass HDF5 regression testing run by The HDF Group. We do not expect you to perform comprehensive testing across multiple platforms
before we accept the pull request. If the pull request does not pass regression testing after the merge, The HDF Group developers will work
with you on the fixes.
* **The pull request does not compromise the principles behind HDF5** - HDF5 has a 100% commitment to backward compatibility.
* Any file ever created with HDF5 must be readable by any future version of HDF5.
If your patch's purpose is to modify the HDF5 data model or file format,
**please** discuss this with us first. File format changes and features required by those changes can be introduced only in a new major release.
* HDF5 has a commitment to remaining *machine-independent*; data created on one platform/environment/architecture **must** remain readable by HDF5 on any other.
* For binary compatibility, no changes are allowed to public APIs and data structures in the maintenance releases; new APIs can be added.
* **New features are documented** - Any new features should have proper documentation; talk to us if you have any questions.
* **When to Write a Release Note** - Generally, a release note must be written for every change that is made to the code for which
users might see a change in the way the software works. In other words, if a user might see a difference in the way the software works,
a note should be written. By code we mean the text that will be compiled into one of the company's software products. The code includes
configuration changes and changes to tools users might work with to configure and build our software.
* Notes should be added for known problems. Known problems are issues that we know about and have not yet been able to fix.
* Any change made to address a user-reported problem should be described in a release note.
* A release note does not need to be written for changes to the code that users will not see. Here are some examples. If you add a
comment, you do not need to write a release note describing the comment you added. If you rewrite some code to make it read more
clearly and if there is no change in functionality or performance, then you do not need to write a release note. If you change the
process by which user software is made, you may not need to write a release note since the change was not made to the code.
* Users. We have different kinds of users. A release note may be written to be helpful to
application developers and not system administrators. Users who may find the RELEASE.txt file helpful include the following:
application developers, library developers, and system administrators.
# Release Note <A NAME="releasenote"></A>
* **Entry Syntax**
The release note entry syntax is shown below.
```
- Title/Problem
Problem/Solution
Signature
```
* **Entry Elements** - The elements of the entry - title, problem, solution, and signature - are described in more detail in the table
below. Descriptions of the problem and the solution should be clear without any ambiguities and should be short without losing clarity or specifics.
* **Title** - The title or tag should identify one or more categories that will help readers decide if the entry is something they need to study. Can be combined with the `Problem` element
* **Problem** - Describe the problem and how users might see the problem in a paragraph.
You might also consider the following as you describe the problem:
* Under what specific conditions does this issue arise?
* Under what specific conditions are we sure this issue will not arise?
* For a performance issue, instead of saying something is a performance issue, describe what the performance impact of issue is?
* **Solution** - Describe the solution in another paragraph.
You might also consider the following as you describe the solution:
* What was done to resolve the issue?
* What is the functional impact?
* Is there a workaround a way for users design their software so as not to encounter the issue? If so, what is the workaround?
* For a performance fix, how has the performance improved? Links to published documentation would be good.
* **Signature** - Each entry must be signed with the initials of the author, the date in YYYY/MM/DD format, and the JIRA ticket number. The
following is an example entry written by developer Xavier Zolo on April 16, 2014 about JIRA ticket HDFFV-5555: (XYZ - 2014/04/16, HDFFV-5555). The
signature is enclosed in parentheses. JIRA or Github numbers should not be used in the description of the problem or the solution. They are like
abbreviations that customers and external users will not be able to interpret.
# Checklist <A NAME="checklist"></A>
Please make sure that you check the items applicable to your pull request:
* Code
* [ ] Does the pull request have a corresponding GitHub issue and clear purpose?
* [ ] Does the pull request follow HDF5 best practices (naming conventions, code portability, code structure, etc.)? <<TODO: link to the document>>
* [ ] If changes were done to Autotools build, were they added to CMake and vice versa?
* [ ] Is the pull request applicable to any other branches? If yes, which ones? Please document it in the GitHub issue.
* [ ] Is the new code sufficiently documented for future maintenance?
* [ ] Does the new feature require a change to an existing API? See "API Compatibility Macros" document (https://portal.hdfgroup.org/display/HDF5/API+Compatibility+Macros)
* Documentation
* [ ] Was the change described in the release_docs/RELEASE.txt file?
* [ ] Was MANIFEST updated if new files had been added to the source?
* [ ] Was the new function documented in the corresponding public header file using [Doxygen](https://docs.hdfgroup.org/hdf5/develop/_r_m_t.html)?
* [ ] Was new functionality documented for the HDF5 community (the level of documentation depends on the feature; ask us what would be appropriate)
* Testing
* [ ] Does the pull request have tests?
* [ ] Does the pull request affect HDF5 library performance?
We want as many contributions as we can get, and we are here to help. Feel free to reach out to us if you have any questions
Thank you for your contribution!

79
COPYING
View File

@@ -3,10 +3,10 @@ HDF5 (Hierarchical Data Format 5) Software Library and Utilities
-----------------------------------------------------------------------------
HDF5 (Hierarchical Data Format 5) Software Library and Utilities
Copyright (c) 2006, The HDF Group.
Copyright 2006 by The HDF Group.
NCSA HDF5 (Hierarchical Data Format 5) Software Library and Utilities
Copyright (c) 1998-2006, The Board of Trustees of the University of Illinois.
Copyright 1998-2006 by The Board of Trustees of the University of Illinois.
All rights reserved.
@@ -21,27 +21,27 @@ provided that the following conditions are met:
this list of conditions, and the following disclaimer in the documentation
and/or materials provided with the distribution.
3. In addition, redistributions of modified forms of the source or binary
code must carry prominent notices stating that the original code was
changed and the date of the change.
4. All publications or advertising materials mentioning features or use of
this software are asked, but not required, to acknowledge that it was
developed by The HDF Group and by the National Center for Supercomputing
Applications at the University of Illinois at Urbana-Champaign and
credit the contributors.
5. Neither the name of The HDF Group, the name of the University, nor the
3. Neither the name of The HDF Group, the name of the University, nor the
name of any Contributor may be used to endorse or promote products derived
from this software without specific prior written permission from
The HDF Group, the University, or the Contributor, respectively.
DISCLAIMER:
THIS SOFTWARE IS PROVIDED BY THE HDF GROUP AND THE CONTRIBUTORS
"AS IS" WITH NO WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED. In no
event shall The HDF Group or the Contributors be liable for any damages
suffered by the users arising out of the use of this software, even if
advised of the possibility of such damage.
"AS IS" WITH NO WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED. IN NO
EVENT SHALL THE HDF GROUP OR THE CONTRIBUTORS BE LIABLE FOR ANY DAMAGES
SUFFERED BY THE USERS ARISING OUT OF THE USE OF THIS SOFTWARE, EVEN IF
ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
You are under no obligation whatsoever to provide any bug fixes, patches, or
upgrades to the features, functionality or performance of the source code
("Enhancements") to anyone; however, if you choose to make your Enhancements
available either publicly, or directly to The HDF Group, without imposing a
separate written license agreement for such Enhancements, then you hereby
grant the following license: a non-exclusive, royalty-free perpetual license
to install, use, modify, prepare derivative works, incorporate into other
computer software, distribute, and sublicense such enhancements or derivative
works thereof, in binary and source code form.
-----------------------------------------------------------------------------
-----------------------------------------------------------------------------
@@ -55,9 +55,9 @@ http://support.hdfgroup.org/ftp/HDF5/releases/COPYING_LBNL_HDF5.
-----------------------------------------------------------------------------
Contributors: National Center for Supercomputing Applications (NCSA) at
the University of Illinois, Fortner Software, Unidata Program Center (netCDF),
The Independent JPEG Group (JPEG), Jean-loup Gailly and Mark Adler (gzip),
and Digital Equipment Corporation (DEC).
the University of Illinois, Fortner Software, Unidata Program Center
(netCDF), The Independent JPEG Group (JPEG), Jean-loup Gailly and Mark Adler
(gzip), and Digital Equipment Corporation (DEC).
-----------------------------------------------------------------------------
@@ -67,6 +67,12 @@ under Prime Contract No. DE-AC02-05CH11231.
-----------------------------------------------------------------------------
Portions of HDF5 were developed with support from Lawrence Livermore
National Laboratory and the United States Department of Energy under
Prime Contract No. DE-AC52-07NA27344.
-----------------------------------------------------------------------------
Portions of HDF5 were developed with support from the University of
California, Lawrence Livermore National Laboratory (UC LLNL).
The following statement applies to those portions of the product and must
@@ -80,26 +86,21 @@ and/or accompanying materials:
for the operation of UC LLNL.
DISCLAIMER:
This work was prepared as an account of work sponsored by an agency of
the United States Government. Neither the United States Government nor
the University of California nor any of their employees, makes any
warranty, express or implied, or assumes any liability or responsibility
for the accuracy, completeness, or usefulness of any information,
apparatus, product, or process disclosed, or represents that its use
would not infringe privately- owned rights. Reference herein to any
specific commercial products, process, or service by trade name,
trademark, manufacturer, or otherwise, does not necessarily constitute
or imply its endorsement, recommendation, or favoring by the United
States Government or the University of California. The views and
opinions of authors expressed herein do not necessarily state or reflect
those of the United States Government or the University of California,
and shall not be used for advertising or product endorsement purposes.
THIS WORK WAS PREPARED AS AN ACCOUNT OF WORK SPONSORED BY AN AGENCY OF
THE UNITED STATES GOVERNMENT. NEITHER THE UNITED STATES GOVERNMENT NOR
THE UNIVERSITY OF CALIFORNIA NOR ANY OF THEIR EMPLOYEES, MAKES ANY
WARRANTY, EXPRESS OR IMPLIED, OR ASSUMES ANY LIABILITY OR RESPONSIBILITY
FOR THE ACCURACY, COMPLETENESS, OR USEFULNESS OF ANY INFORMATION,
APPARATUS, PRODUCT, OR PROCESS DISCLOSED, OR REPRESENTS THAT ITS USE
WOULD NOT INFRINGE PRIVATELY- OWNED RIGHTS. REFERENCE HEREIN TO ANY
SPECIFIC COMMERCIAL PRODUCTS, PROCESS, OR SERVICE BY TRADE NAME,
TRADEMARK, MANUFACTURER, OR OTHERWISE, DOES NOT NECESSARILY CONSTITUTE
OR IMPLY ITS ENDORSEMENT, RECOMMENDATION, OR FAVORING BY THE UNITED
STATES GOVERNMENT OR THE UNIVERSITY OF CALIFORNIA. THE VIEWS AND
OPINIONS OF AUTHORS EXPRESSED HEREIN DO NOT NECESSARILY STATE OR REFLECT
THOSE OF THE UNITED STATES GOVERNMENT OR THE UNIVERSITY OF CALIFORNIA,
AND SHALL NOT BE USED FOR ADVERTISING OR PRODUCT ENDORSEMENT PURPOSES.
-----------------------------------------------------------------------------
HDF5 is available with the SZIP compression library but SZIP is not part
of HDF5 and has separate copyright and license terms. See “Szip Compression
in HDF Products” (https://support.hdfgroup.org/doc_resource/SZIP/) for further details.
-----------------------------------------------------------------------------

View File

@@ -5,39 +5,48 @@
# This file is part of HDF5. The full HDF5 copyright notice, including
# terms governing use, modification, and redistribution, is contained in
# the COPYING file, which can be found at the root of the source code
# distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases.
# distribution tree, or in https://www.hdfgroup.org/licenses.
# If you do not have access to either file, you may request a copy from
# help@hdfgroup.org.
#
## This file should be placed in the root directory of your project.
## Then modify the CMakeLists.txt file in the root directory of your
## project to incorporate the testing dashboard.
## # The following are required to uses Dart and the Cdash dashboard
## # The following are required to use Dart and the CDash dashboard
## ENABLE_TESTING()
## INCLUDE(CTest)
set (CTEST_PROJECT_NAME "HDF5")
set (CTEST_NIGHTLY_START_TIME "18:00:00 CST")
set (CTEST_DROP_METHOD "http")
if (CDASH_LOCAL)
set (CTEST_DROP_SITE "cdash-internal.hdfgroup.org")
set (CTEST_DROP_LOCATION "/submit.php?project=HDF5Trunk")
set (CTEST_DROP_METHOD "https")
if (CTEST_DROP_SITE_INIT)
set (CTEST_DROP_SITE "${CTEST_DROP_SITE_INIT}")
else ()
set (CTEST_DROP_SITE "cdash.hdfgroup.org")
set (CTEST_DROP_LOCATION "/submit.php?project=HDF5")
if (CDASH_LOCAL)
set (CTEST_DROP_SITE "cdash-internal.hdfgroup.org")
else ()
set (CTEST_DROP_SITE "cdash.hdfgroup.org")
endif ()
endif ()
if (CTEST_DROP_LOCATION_INIT)
set (CTEST_DROP_LOCATION "${CTEST_DROP_LOCATION_INIT}")
else ()
if (CDASH_LOCAL)
set (CTEST_DROP_LOCATION "/submit.php?project=HDF5Trunk")
else ()
set (CTEST_DROP_LOCATION "/submit.php?project=HDF5")
endif ()
endif ()
set (CTEST_DROP_SITE_CDASH TRUE)
set (UPDATE_TYPE git)
set (VALGRIND_COMMAND "/usr/bin/valgrind")
set (VALGRIND_COMMAND_OPTIONS "-v --tool=memcheck --leak-check=full --track-fds=yes --num-callers=50 --show-reachable=yes --track-origins=yes --malloc-fill=0xff --free-fill=0xfe")
set (CTEST_MEMORYCHECK_COMMAND "/usr/bin/valgrind")
set (CTEST_MEMORYCHECK_COMMAND_OPTIONS "-v --tool=memcheck --leak-check=full --track-fds=yes --num-callers=50 --show-reachable=yes --track-origins=yes --malloc-fill=0xff --free-fill=0xfe")
set (CTEST_TEST_TIMEOUT 600 CACHE STRING
set (CTEST_TEST_TIMEOUT 1200 CACHE STRING
"Maximum time allowed before CTest will kill the test.")
set (DART_TESTING_TIMEOUT 600 CACHE STRING
set (DART_TESTING_TIMEOUT 1200 CACHE STRING
"Maximum time allowed before CTest will kill the test." FORCE)
SET(CTEST_SUBMIT_RETRY_DELAY 20 CACHE STRING
set (CTEST_SUBMIT_RETRY_DELAY 20 CACHE STRING
"How long to wait between timed-out CTest submissions.")

3395
MANIFEST

File diff suppressed because it is too large Load Diff

View File

@@ -1,19 +1,18 @@
#
# Copyright by The HDF Group.
# Copyright by the Board of Trustees of the University of Illinois.
# All rights reserved.
#
# This file is part of HDF5. The full HDF5 copyright notice, including
# terms governing use, modification, and redistribution, is contained in
# the COPYING file, which can be found at the root of the source code
# distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases.
# distribution tree, or in https://www.hdfgroup.org/licenses.
# If you do not have access to either file, you may request a copy from
# help@hdfgroup.org.
##
## Makefile.am
## Run automake to generate a Makefile.in from this file.
##
#
#
# This makefile mostly just reinvokes make in the various subdirectories
# but does so in the correct order. You can alternatively invoke make from
# each subdirectory manually.
@@ -35,6 +34,9 @@
include $(top_srcdir)/config/commence.am
# include Doxygen rules (requires autoconf-archive >2016-03-20)
@DX_RULES@
# Define subdirectories to build.
## Automake understands that `make distclean' should recurse into
## conditional subdirectories even if `make all' does not.
@@ -45,15 +47,10 @@ include $(top_srcdir)/config/commence.am
# Since we're explicitly listing DIST_SUBDIRS, we also need to list
# directories that are only conditionally built (so that their Makefiles
# are cleaned as well).
# Note that `make clean' will not affect the examples or doc directories.
# Note that `make clean' will not affect the examples or doc directories.
# Conditionals. These conditionals are defined during configure
# Define each variable to empty if it is not used to placate pmake
if BUILD_PARALLEL_CONDITIONAL
TESTPARALLEL_DIR =testpar
else
TESTPARALLEL_DIR=
endif
if BUILD_CXX_CONDITIONAL
CXX_DIR =c++
else
@@ -74,10 +71,25 @@ if BUILD_HDF5_HL_CONDITIONAL
else
HDF5_HL_DIR=
endif
if BUILD_TESTS_CONDITIONAL
TESTSERIAL_DIR =test
else
TESTSERIAL_DIR=
endif
if BUILD_TESTS_PARALLEL_CONDITIONAL
TESTPARALLEL_DIR =testpar
else
TESTPARALLEL_DIR=
endif
if BUILD_TOOLS_CONDITIONAL
TOOLS_DIR =tools
else
TOOLS_DIR=
endif
SUBDIRS = src test $(TESTPARALLEL_DIR) tools . $(CXX_DIR) $(FORTRAN_DIR) \
$(JAVA_DIR) $(HDF5_HL_DIR)
DIST_SUBDIRS = src test testpar tools . c++ fortran hl examples java
SUBDIRS = src $(TESTSERIAL_DIR) $(TESTPARALLEL_DIR) bin $(TOOLS_DIR) utils . \
$(CXX_DIR) $(FORTRAN_DIR) $(JAVA_DIR) $(HDF5_HL_DIR)
DIST_SUBDIRS = src test testpar tools utils . c++ fortran hl examples java
# Some files generated during configure that should be cleaned
DISTCLEANFILES=config/stamp1 config/stamp2
@@ -123,7 +135,7 @@ mostlyclean-local:
# 'make install' will now install examples, the same as 'make install-all'.
# 'make-install-all' will be redundant but will still work.
install: install-recursive install-examples
uninstall: uninstall-recursive uninstall-examples
uninstall: uninstall-recursive uninstall-examples
# 'make install-all' also installs examples
install-all:
@@ -144,7 +156,7 @@ install-doc:
uninstall-doc:
@echo "docs no longer live in this tree. Use install-examples to install examples."
# `make check-install' or `make installcheck' checks that examples can
# `make check-install' or `make installcheck' checks that examples can
# be successfully built
installcheck-local:
if test -n "${DESTDIR}"; then \
@@ -177,10 +189,25 @@ check-all-install:
trace:
@(cd src && $(MAKE) $(AM_MAKEFLAGS) $@) || exit 1;
# doxygen support
if BUILD_DOXYGEN_CONDITIONAL
doxygen: doxygen-doc
endif
# Run tests with different Virtual File Drivers.
# Currently, only invoke check-vfd in the test directory.
check-vfd:
for d in src test; do \
for d in src utils test; do \
if test $$d != .; then \
(cd $$d && $(MAKE) $(AM_MAKEFLAGS) $@) || exit 1; \
fi; \
done
# Run tests with different passthrough Virtual Object Layer Connectors.
# NOTE: Will only succeed with passthrough VOL connectors that use
# the native VOL connector as the terminal connector.
check-passthrough-vol:
for d in $(SUBDIRS); do \
if test $$d != .; then \
(cd $$d && $(MAKE) $(AM_MAKEFLAGS) $@) || exit 1; \
fi; \

View File

@@ -1,13 +1,12 @@
# Top-level distributed Makefile -*- makefile -*-
# Copyright by The HDF Group.
# Copyright by the Board of Trustees of the University of Illinois.
# All rights reserved.
#
# This file is part of HDF5. The full HDF5 copyright notice, including
# terms governing use, modification, and redistribution, is contained in
# the COPYING file, which can be found at the root of the source code
# distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases.
# distribution tree, or in https://www.hdfgroup.org/licenses.
# If you do not have access to either file, you may request a copy from
# help@hdfgroup.org.

117
README.md Normal file
View File

@@ -0,0 +1,117 @@
HDF5 version 1.15.0 currently under development
![HDF5 Logo](doxygen/img/HDF5.png)
[![develop build status](https://img.shields.io/github/actions/workflow/status/HDFGroup/hdf5/main.yml?branch=develop&label=develop)](https://github.com/HDFGroup/hdf5/actions?query=branch%3Adevelop)
[![1.14 build status](https://img.shields.io/github/actions/workflow/status/HDFGroup/hdf5/main.yml?branch=hdf5_1_14&label=1.14)](https://github.com/HDFGroup/hdf5/actions?query=branch%3Ahdf5_1_14)
[![1.12 build status](https://img.shields.io/github/actions/workflow/status/HDFGroup/hdf5/main.yml?branch=hdf5_1_12&label=1.12)](https://github.com/HDFGroup/hdf5/actions?query=branch%3Ahdf5_1_12)
[![1.10 build status](https://img.shields.io/github/actions/workflow/status/HDFGroup/hdf5/main.yml?branch=hdf5_1_10&label=1.10)](https://github.com/HDFGroup/hdf5/actions?query=branch%3Ahdf5_1_10)
[![1.8 build status](https://img.shields.io/github/actions/workflow/status/HDFGroup/hdf5/main.yml?branch=hdf5_1_8&label=1.8)](https://github.com/HDFGroup/hdf5/actions?query=branch%3Ahdf5_1_8)
[![BSD](https://img.shields.io/badge/License-BSD-blue.svg)](https://github.com/HDFGroup/hdf5/blob/develop/COPYING)
*Please refer to the release_docs/INSTALL file for installation instructions.*
This repository contains a high-performance library's source code and a file format
specification that implement the HDF5® data model. The model has been adopted across
many industries and this implementation has become a de facto data management standard
in science, engineering, and research communities worldwide.
The HDF Group is the developer, maintainer, and steward of HDF5 software. Find more
information about The HDF Group, the HDF5 Community, and other HDF5 software projects,
tools, and services at The HDF Group's website.
https://www.hdfgroup.org/
DOCUMENTATION
-------------
This release is fully functional for the API described in the documentation.
https://portal.hdfgroup.org/display/HDF5/The+HDF5+API
Full Documentation and Programming Resources for this release can be found at
https://portal.hdfgroup.org/display/HDF5
See the RELEASE.txt file in the release_docs/ directory for information specific
to the features and updates included in this release of the library.
Several more files are located within the release_docs/ directory with specific
details for several common platforms and configurations.
INSTALL - Start Here. General instructions for compiling and installing the library
INSTALL_CMAKE - instructions for building with CMake (Kitware.com)
INSTALL_parallel - instructions for building and configuring Parallel HDF5
INSTALL_Windows and INSTALL_Cygwin - MS Windows installations.
HELP AND SUPPORT
----------------
Information regarding Help Desk and Support services is available at
https://portal.hdfgroup.org/display/support/The+HDF+Help+Desk
FORUM and NEWS
--------------
The following public forums are provided for public announcements and discussions
of interest to the general HDF5 Community.
- Homepage of the Forum
https://forum.hdfgroup.org
- News and Announcement
https://forum.hdfgroup.org/c/news-and-announcements-from-the-hdf-group
- HDF5 and HDF4 Topics
https://forum.hdfgroup.org/c/hdf5
These forums are provided as an open and public service for searching and reading.
Posting requires completing a simple registration and allows one to join in the
conversation. Please read the following instructions pertaining to the Forum's
use and configuration
https://forum.hdfgroup.org/t/quickstart-guide-welcome-to-the-new-hdf-forum
RELEASE SCHEDULE
----------------
![HDF5 release schedule](doc/img/release-schedule.png)
HDF5 does not release on a regular schedule. Instead, releases are driven by
new features and bug fixes, though we try to have at least one release of each
maintenance branch per year. Future HDF5 releases indicated on this schedule
are tentative.
**NOTE**: HDF5 1.12 is being retired early due to its incomplete and incompatible VOL
layer.
| Release | New Features |
| ------- | ------------ |
| 1.8.23 | last HDF5 1.8 release |
| 1.10.10 | CVE fixes, performance improvements, H5Dchunk\_iter() |
| 1.12.3 | CVE fixes, performance improvements, H5Dchunk\_iter(), last HDF5 1.12 release |
| 1.14.1 | selection I/O with datatype conversion |
| 2.0.0 | TBD |
| TBD | VFD SWMR |
This list of feature release versions is also tentative, and the specific release
in which a feature is introduced may change.
SNAPSHOTS, PREVIOUS RELEASES AND SOURCE CODE
--------------------------------------------
Periodically development code snapshots are provided at the following URL:
https://gamma.hdfgroup.org/ftp/pub/outgoing/hdf5/snapshots/
Source packages for current and previous releases are located at:
https://portal.hdfgroup.org/display/support/Downloads
Development code is available at our Github location:
https://github.com/HDFGroup/hdf5.git

View File

@@ -1,80 +0,0 @@
HDF5 version 1.11.2 currently under development
------------------------------------------------------------------------------
Please refer to the release_docs/INSTALL file for installation instructions.
------------------------------------------------------------------------------
THE HDF GROUP
---------------
The HDF Group is the developer of HDF5®, a high-performance software library and
data format that has been adopted across multiple industries and has become a
de facto standard in scientific and research communities.
More information about The HDF Group, the HDF5 Community and the HDF5 software
project, tools and services can be found at the Group's website.
https://www.hdfgroup.org/
DOCUMENTATION
-------------
This release is fully functional for the API described in the documentation.
https://portal.hdfgroup.org/display/HDF5/The+HDF5+API
Full Documentation and Programming Resources for this release can be found at
https://portal.hdfgroup.org/display/HDF5
See the RELEASE.txt file in the release_docs/ directory for information specific
to the features and updates included in this release of the library.
Several more files are located within the release_docs/ directory with specific
details for several common platforms and configurations.
INSTALL - Start Here. General instructions for compiling and installing the library
INSTALL_CMAKE - instructions for building with CMake (Kitware.com)
INSTALL_parallel - instructions for building and configuring Parallel HDF5
INSTALL_Windows and INSTALL_Cygwin - MS Windows installations.
HELP AND SUPPORT
----------------
Information regarding Help Desk and Support services is available at
https://portal.hdfgroup.org/display/support/The+HDF+Help+Desk
FORUM and NEWS
--------------
The following public forums are provided for public announcements and discussions
of interest to the general HDF5 Community.
Homepage of the Forum
https://forum.hdfgroup.org
News and Announcement
https://forum.hdfgroup.org/c/news-and-announcements-from-the-hdf-group
HDF5 and HDF4 Topics
https://forum.hdfgroup.org/c/hdf5
These forums are provided as an open and public service for searching and reading.
Posting requires completing a simple registration and allows one to join in the
conversation. Please read the following instructions pertaining to the Forum's
use and configuration
https://forum.hdfgroup.org/t/quickstart-guide-welcome-to-the-new-hdf-forum
SNAPSHOTS, PREVIOUS RELEASES AND SOURCE CODE
--------------------------------------------
Periodically development code snapshots are provided at the following URL:
https://gamma.hdfgroup.org/ftp/pub/outgoing/hdf5/snapshots/
Source packages for current and previous releases are located at:
https://portal.hdfgroup.org/display/support/Downloads
Development code is available at our BitBucket Server:
https://bitbucket.hdfgroup.org/projects/HDFFV/repos/hdf5/browse

View File

@@ -5,7 +5,7 @@
# This file is part of HDF5. The full HDF5 copyright notice, including
# terms governing use, modification, and redistribution, is contained in
# the COPYING file, which can be found at the root of the source code
# distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases.
# distribution tree, or in https://www.hdfgroup.org/licenses.
# If you do not have access to either file, you may request a copy from
# help@hdfgroup.org.
#

View File

@@ -2,13 +2,12 @@ dnl -------------------------------------------------------------------------
dnl -------------------------------------------------------------------------
dnl
dnl Copyright by The HDF Group.
dnl Copyright by the Board of Trustees of the University of Illinois.
dnl All rights reserved.
dnl
dnl This file is part of HDF5. The full HDF5 copyright notice, including
dnl terms governing use, modification, and redistribution, is contained in
dnl the COPYING file, which can be found at the root of the source code
dnl dnl distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases.
dnl dnl distribution tree, or in https://www.hdfgroup.org/licenses.
dnl dnl If you do not have access to either file, you may request a copy from
dnl dnl help@hdfgroup.org.
dnl
@@ -21,9 +20,9 @@ dnl -------------------------------------------------------------------------
dnl _AC_SYS_LARGEFILE_MACRO_VALUE
dnl
dnl The following macro overrides the autoconf macro of the same name
dnl with this custom definition. This macro performs the same checks as
dnl with this custom definition. This macro performs the same checks as
dnl autoconf's native _AC_SYS_LARGEFILE_MACRO_VALUE, but will also set
dnl AM_CPPFLAGS with the appropriate -D defines so additional configure
dnl AM_CPPFLAGS with the appropriate -D defines so additional configure
dnl sizeof checks do not fail.
dnl
# _AC_SYS_LARGEFILE_MACRO_VALUE(C-MACRO, VALUE,

View File

@@ -1,12 +1,12 @@
#!/bin/sh
#
# Copyright by The HDF Group.
# All rights reserved.
#
# This file is part of HDF5. The full HDF5 copyright notice, including
# terms governing use, modification, and redistribution, is contained in
# Copyright by The HDF Group.
# All rights reserved.
#
# This file is part of HDF5. The full HDF5 copyright notice, including
# terms governing use, modification, and redistribution, is contained in
# the COPYING file, which can be found at the root of the source code
# distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases.
# distribution tree, or in https://www.hdfgroup.org/licenses.
# If you do not have access to either file, you may request a copy from
# help@hdfgroup.org.
#
@@ -50,17 +50,7 @@
# Note that aclocal will attempt to include libtool's share/aclocal
# directory.
#
# This script takes two potential options:
#
# -p
#
# When this is selected, the autotools versions are set to the paths
# and versions used by The HDF Group to produce the released versions
# of the library.
#
# NOTE: This is probably temporary. Once we update our dev machines
# to have recent versions of the autotools this option will probably
# be removed.
# Aside from -h for help, this script takes one potential option:
#
# -v
#
@@ -72,9 +62,6 @@ echo "* HDF5 autogen.sh script *"
echo "**************************"
echo
# Default is not production
production=false
# Default is not verbose output
verbose=false
@@ -86,10 +73,6 @@ while getopts "$optspec" optchar; do
echo
echo " -h Print this help message."
echo
echo " -p Used by THG to use hard-codes autotools"
echo " paths on THG machines. Not for non-HDF-Group"
echo " users!"
echo
echo " -v Show more verbose output."
echo
echo " NOTE: Each tool can be set via an environment variable."
@@ -97,11 +80,6 @@ while getopts "$optspec" optchar; do
echo
exit 0
;;
p)
echo "Setting THG production mode..."
echo
production=true
;;
v)
echo "Setting verbosity: high"
echo
@@ -117,84 +95,52 @@ while getopts "$optspec" optchar; do
esac
done
if [ "$production" = true ] ; then
# Production mode
#
# Hard-code canonical HDF Group tool locations.
# If paths to tools are not specified, assume they are
# located in /usr/hdf/bin/AUTOTOOLS and set paths accordingly.
if test -z ${HDF5_AUTOCONF}; then
HDF5_AUTOCONF=/usr/hdf/bin/AUTOTOOLS/autoconf
fi
if test -z ${HDF5_AUTOMAKE}; then
HDF5_AUTOMAKE=/usr/hdf/bin/AUTOTOOLS/automake
fi
if test -z ${HDF5_AUTOHEADER}; then
HDF5_AUTOHEADER=/usr/hdf/bin/AUTOTOOLS/autoheader
fi
if test -z ${HDF5_ACLOCAL}; then
HDF5_ACLOCAL=/usr/hdf/bin/AUTOTOOLS/aclocal
fi
if test -z ${HDF5_LIBTOOL}; then
HDF5_LIBTOOL=/usr/hdf/bin/AUTOTOOLS/libtool
fi
if test -z ${HDF5_M4}; then
HDF5_M4=/usr/hdf/bin/AUTOTOOLS/m4
fi
else
# Not in production mode
#
# If paths to autotools are not specified, use whatever the system
# has installed as the default. We use 'which <tool>' to
# show exactly what's being used.
if test -z ${HDF5_AUTOCONF}; then
HDF5_AUTOCONF=$(which autoconf)
fi
if test -z ${HDF5_AUTOMAKE}; then
HDF5_AUTOMAKE=$(which automake)
fi
if test -z ${HDF5_AUTOHEADER}; then
HDF5_AUTOHEADER=$(which autoheader)
fi
if test -z ${HDF5_ACLOCAL}; then
HDF5_ACLOCAL=$(which aclocal)
fi
if test -z ${HDF5_LIBTOOL}; then
case "`uname`" in
Darwin*)
# libtool on OS-X is non-gnu
HDF5_LIBTOOL=$(which glibtool)
;;
*)
HDF5_LIBTOOL=$(which libtool)
;;
esac
fi
if test -z ${HDF5_M4}; then
HDF5_M4=$(which m4)
fi
fi # production
# If paths to autotools are not specified, use whatever the system
# has installed as the default. We use 'command -v <tool>' to
# show exactly what's being used (shellcheck complains that 'which'
# is non-standard and deprecated).
if test -z "${HDF5_AUTOCONF}"; then
HDF5_AUTOCONF="$(command -v autoconf)"
fi
if test -z "${HDF5_AUTOMAKE}"; then
HDF5_AUTOMAKE="$(command -v automake)"
fi
if test -z "${HDF5_AUTOHEADER}"; then
HDF5_AUTOHEADER="$(command -v autoheader)"
fi
if test -z "${HDF5_ACLOCAL}"; then
HDF5_ACLOCAL="$(command -v aclocal)"
fi
if test -z "${HDF5_LIBTOOL}"; then
case "$(uname)" in
Darwin*)
# libtool on OS-X is non-gnu
HDF5_LIBTOOL="$(command -v glibtool)"
;;
*)
HDF5_LIBTOOL="$(command -v libtool)"
;;
esac
fi
if test -z "${HDF5_M4}"; then
HDF5_M4="$(command -v m4)"
fi
# Make sure that these versions of the autotools are in the path
AUTOCONF_DIR=`dirname ${HDF5_AUTOCONF}`
LIBTOOL_DIR=`dirname ${HDF5_LIBTOOL}`
M4_DIR=`dirname ${HDF5_M4}`
AUTOCONF_DIR=$(dirname "${HDF5_AUTOCONF}")
LIBTOOL_DIR=$(dirname "${HDF5_LIBTOOL}")
M4_DIR=$(dirname "${HDF5_M4}")
PATH=${AUTOCONF_DIR}:${LIBTOOL_DIR}:${M4_DIR}:$PATH
# Make libtoolize match the specified libtool
case "`uname`" in
case "$(uname)" in
Darwin*)
# On OS X, libtoolize could be named glibtoolize or
# libtoolize. Try the former first, then fall back
# to the latter if it's not found.
HDF5_LIBTOOLIZE="${LIBTOOL_DIR}/glibtoolize"
if [ ! -f $HDF5_LIBTOOLIZE ] ; then
if [ ! -f "$HDF5_LIBTOOLIZE" ] ; then
HDF5_LIBTOOLIZE="${LIBTOOL_DIR}/libtoolize"
fi
;;
@@ -249,7 +195,7 @@ echo
# LIBTOOLIZE
libtoolize_cmd="${HDF5_LIBTOOLIZE} --copy --force"
echo ${libtoolize_cmd}
echo "${libtoolize_cmd}"
if [ "$verbose" = true ] ; then
${HDF5_LIBTOOLIZE} --version
fi
@@ -264,7 +210,7 @@ if test -e "${LIBTOOL_DIR}/../share/aclocal" ; then
aclocal_include="-I ${LIBTOOL_DIR}/../share/aclocal"
fi
aclocal_cmd="${HDF5_ACLOCAL} --force -I m4 ${aclocal_include}"
echo ${aclocal_cmd}
echo "${aclocal_cmd}"
if [ "$verbose" = true ] ; then
${HDF5_ACLOCAL} --version
fi
@@ -273,7 +219,7 @@ echo
# AUTOHEADER
autoheader_cmd="${HDF5_AUTOHEADER} --force"
echo ${autoheader_cmd}
echo "${autoheader_cmd}"
if [ "$verbose" = true ] ; then
${HDF5_AUTOHEADER} --version
fi
@@ -282,7 +228,7 @@ echo
# AUTOMAKE
automake_cmd="${HDF5_AUTOMAKE} --copy --add-missing --force-missing"
echo ${automake_cmd}
echo "${automake_cmd}"
if [ "$verbose" = true ] ; then
${HDF5_AUTOMAKE} --version
fi
@@ -290,8 +236,11 @@ ${automake_cmd} || exit 1
echo
# AUTOCONF
autoconf_cmd="${HDF5_AUTOCONF} --force"
echo ${autoconf_cmd}
# The "obsolete" warnings category flags our Java macros as obsolete.
# Since there is no clear way to upgrade them (Java support in the Autotools
# is not great) and they work well enough for now, we suppress those warnings.
autoconf_cmd="${HDF5_AUTOCONF} --force --warnings=no-obsolete"
echo "${autoconf_cmd}"
if [ "$verbose" = true ] ; then
${HDF5_AUTOCONF} --version
fi

View File

@@ -1,13 +0,0 @@
Copyright by The HDF Group and
The Board of Trustees of the University of Illinois.
All rights reserved.
The files and subdirectories in this directory are part of HDF5.
The full HDF5 copyright notice, including terms governing use,
modification, and redistribution, is contained in the COPYING file
which can be found at the root of the source code distribution tree
or in https://support.hdfgroup.org/ftp/HDF5/releases. If you do
not have access to either file, you may request a copy from
help@hdfgroup.org.

56
bin/Makefile.am Normal file
View File

@@ -0,0 +1,56 @@
#
# Copyright by The HDF Group.
# All rights reserved.
#
# This file is part of HDF5. The full HDF5 copyright notice, including
# terms governing use, modification, and redistribution, is contained in
# the COPYING file, which can be found at the root of the source code
# distribution tree, or in https://www.hdfgroup.org/licenses.
# If you do not have access to either file, you may request a copy from
# help@hdfgroup.org.
##
## Makefile.am
## Run automake to generate a Makefile.in from this file.
#
# HDF5 Library Makefile(.in)
#
include $(top_srcdir)/config/commence.am
# Include src directory
AM_CPPFLAGS+=-I$(top_srcdir)/src -I$(top_srcdir)/tools/lib
# These are our main targets
bin_SCRIPTS=h5redeploy
# Tell automake to clean h5redeploy script
CLEANFILES=h5redeploy
# These were generated by configure. Remove them only when distclean.
DISTCLEANFILES=h5cc
# All programs rely on hdf5 library and h5tools library
LDADD=$(LIBH5TOOLS) $(LIBHDF5)
# How to build h5redeploy script
h5redeploy: h5redeploy.in
@cp $(srcdir)/$@.in $@
# h5cc needs custom install and uninstall rules, since it may be
# named h5pcc if hdf5 is being built in parallel mode.
if BUILD_PARALLEL_CONDITIONAL
H5CC_NAME=h5pcc
else
H5CC_NAME=h5cc
endif
$(DESTDIR)$(bindir):
echo " $(MKDIR_P) '$(DESTDIR)$(bindir)'"; \
$(MKDIR_P) "$(DESTDIR)$(bindir)" || exit 1;
install-exec-local: $(DESTDIR)$(bindir)
@$(INSTALL) h5cc $(DESTDIR)$(bindir)/$(H5CC_NAME)
uninstall-local:
@$(RM) $(DESTDIR)$(bindir)/$(H5CC_NAME)
include $(top_srcdir)/config/conclude.am

View File

@@ -1,2 +0,0 @@
The daily tests run copies of some of the scripts in this directory from another repository, notably snapshot and runtest. The copies in this directory should work, but are not used in daily tests, though they should be tested occasionally.

31
bin/README.md Normal file
View File

@@ -0,0 +1,31 @@
# Scripts in `bin` and their purpose
Programs run via `autogen.sh` (or the equivalent in CMake) are indicated.
|Program|Purpose|
|-------|-------|
|`buildhdf5`|Convenience script to build HDF5 using the Autotools|
|`checkapi`|Checks if public API calls are used in internal functions|
|`checkposix`|Checks if C/POSIX calls are prefixed with `HD`|
|`chkcopyright`|Checks if files have appropriate copyright statements|
|`cmakehdf5`|Convenience script to build HDF5 using CMake|
|`debug-ohdr`|Examines debug output from `H5O_open/close` to look for open objects|
|`format_source`|Runs `clang-format` over the source files, applying our rules|
|`genparser`|Creates the flex/bison-based parser files in the high-level library|
|`h5cc.in`|Input file from which h5cc is created|
|`h5redeploy.in`|Input file from which h5redeploy is created|
|`h5vers`|Updates the library version number|
|`make_err`|Generates the H5E header files (called in `autogen.sh`)|
|`make_vers`|Generates H5version.h (called in `autogen.sh`)|
|`make_overflow`|Generates H5overflow.h (called in `autogen.sh`)|
|`output_filter`|Used in the tools test code to strip extraneous output before we diff files|
|`restore.sh`|Removes files generated by `autogen.sh`|
|`runbkprog`|Used by CMake to run test programs in the background|
|`switch_maint_mode`|Switches maintainer mode on/off in `configure.ac`|
|`trace`|Adds `TRACE` macros to HDF5 C library source files (run by `autogen.sh`)|
|`warnhist`|Generates compiler warning statistics for gcc/clang when fed output of make|
## TODO
* chkcopyright is currently semi-broken as it doesn't handle the full variety of copyright headers we need. We're leaving it in place, though, in the hopes that someone will update it in the future.
* Extending warnhist to better understand the output of additional compilers/languages would be nice.

23
bin/batch/ctest.qsub.in.cmake Executable file
View File

@@ -0,0 +1,23 @@
#!/bin/bash -l
if [ $# -gt 0 ]; then
SUMMARY_FILE=$1
fi
ACCOUNT_ID=@ACCOUNT_ID@
echo "Run parallel test command. Test output will be in build/${SUMMARY_FILE}"
CTEST_CMD=`which ctest`
#SKIPTESTS <<KEYWORD:script inserts list of skips tests here -- don't remove>>
cd @HDF5_BINARY_DIR@
if [[ $SUMMARY_FILE == *"ctestS"* ]]; then
CMD="${CTEST_CMD} -S ctest_serial.cmake"
qsub -t 60 -n 1 -q debug-flat-quad -A ${ACCOUNT_ID} ${CMD} >& ${SUMMARY_FILE}
echo "Done running ctest serial command."
touch ctestS.done
else
CMD="${CTEST_CMD} -S ctest_parallel.cmake"
qsub -t 60 -n 1 -q debug-flat-quad -A ${ACCOUNT_ID} ${CMD} >& ${SUMMARY_FILE}
echo "Done running ctest parallel command."
touch ctestP.done
fi

View File

@@ -0,0 +1,20 @@
#!/bin/tcsh
### LSF syntax
#BSUB -nnodes 1 #number of nodes
#BSUB -W 30 #walltime in minutes
#BSUB -G guests #account
#BSUB -e ctestPerrors.txt #stderr
#BSUB -o ctestPoutput.txt #stdout
#BSUB -J hdf5_ctestP #job
##BSUB -q pbatch #queue to use
#BSUB -q pdebug
##date; hostname
##echo -n 'JobID is '; echo $LSB_JOBID
cd @HDF5_BINARY_DIR@
echo "Run parallel test command. Test output will be in build/ctestP.out"
ctest -S ctest_parallel.cmake >& ctestP.out
echo "Done running ctest parallel command."
touch ctestP.done

View File

@@ -0,0 +1,15 @@
#!/bin/bash
#SBATCH --nodes=1
#SBATCH -t 00:30:00
#SBATCH --mail-type=BEGIN,END,FAIL
##SBATCH --mail-user=<username>@sandia.gov
#SBATCH --export=ALL
#SBATCH --job-name=h5_ctestP
cd @HDF5_BINARY_DIR@
echo "Run parallel test command. Test output will be in build/ctestP.out"
ctest -S ctest_parallel.cmake >& ctestP.out
echo "Done running ctest parallel command."
touch ctestP.done

View File

@@ -0,0 +1,17 @@
#!/bin/tcsh
### LSF syntax
#BSUB -nnodes 1 #number of nodes
#BSUB -W 29 #walltime in minutes
#BSUB -G guests #account
#BSUB -e ctestSerrors.txt #stderr
#BSUB -o ctestSoutput.txt #stdout
#BSUB -J hdf5_ctestS #job
##BSUB -q pbatch #queue to use
#BSUB -q pdebug
cd @HDF5_BINARY_DIR@
echo "Run command. Test output will be in build/ctestS.out"
ctest -S ctest_serial.cmake >& ctestS.out
echo "Done running command."
touch ctestS.done

View File

@@ -0,0 +1,15 @@
#!/bin/bash
#SBATCH --nodes=1
#SBATCH -t 00:30:00
#SBATCH --mail-type=BEGIN,END,FAIL
##SBATCH --mail-user=<username>@sandia.gov
#SBATCH --export=ALL
#SBATCH --job-name=h5_ctestS
cd @HDF5_BINARY_DIR@
echo "Run command. Test output will be in build/ctestS.out"
ctest -S ctest_serial.cmake >& ctestS.out
echo "Done running command."
touch ctestS.done

View File

@@ -0,0 +1,12 @@
if(NOT "$ENV{CI_SITE_NAME}" STREQUAL "")
set(CTEST_SITE "$ENV{CI_SITE_NAME}")
endif()
if(NOT "$ENV{CI_BUILD_NAME}" STREQUAL "")
set(CTEST_BUILD_NAME "$ENV{CI_BUILD_NAME}")
endif()
ctest_start ("$ENV{CI_MODEL}" "@HDF5_SOURCE_DIR@" "@HDF5_BINARY_DIR@" APPEND)
ctest_test (BUILD "@HDF5_BINARY_DIR@" APPEND INCLUDE MPI_TEST_ RETURN_VALUE res)
if (${res} LESS 0 OR ${res} GREATER 0)
file (APPEND ${CTEST_SCRIPT_DIRECTORY}/FailedCTest.txt "Failed Tests: ${res}\n")
endif ()

View File

@@ -0,0 +1,12 @@
if(NOT "$ENV{CI_SITE_NAME}" STREQUAL "")
set(CTEST_SITE "$ENV{CI_SITE_NAME}")
endif()
if(NOT "$ENV{CI_BUILD_NAME}" STREQUAL "")
set(CTEST_BUILD_NAME "$ENV{CI_BUILD_NAME}")
endif()
ctest_start ("$ENV{CI_MODEL}" "@HDF5_SOURCE_DIR@" "@HDF5_BINARY_DIR@" APPEND)
ctest_test (BUILD "@HDF5_BINARY_DIR@" APPEND EXCLUDE MPI_TEST_ PARALLEL_LEVEL 32 RETURN_VALUE res)
if (${res} LESS 0 OR ${res} GREATER 0)
file (APPEND ${CTEST_SCRIPT_DIRECTORY}/FailedCTest.txt "Failed Tests: ${res}\n")
endif ()

View File

@@ -0,0 +1,20 @@
#!/bin/bash
#SBATCH -p knl -C quad
#SBATCH --nodes=1
#SBATCH -t 00:10:00
#SBATCH --mail-type=BEGIN,END,FAIL
#SBATCH --mail-user=<username>@sandia.gov
#SBATCH --export=ALL
#SBATCH --job-name=knl_h5detect
# Inputs: Build directory, output file name, executable file name (username/email if available).
PROGNAME=H5detect
OUTPUT=H5Tinit.c
CMD="@HDF5_BINARY_DIR@/bin/${PROGNAME} @HDF5_GENERATED_SOURCE_DIR@/${OUTPUT}"
echo "Run $CMD"
srun -n 1 $CMD
echo "Done running $CMD"

View File

@@ -0,0 +1,16 @@
#!/bin/bash
#SBATCH -p knl -C quad,cache
#SBATCH --nodes=1
#SBATCH -t 00:30:00
#SBATCH --mail-type=BEGIN,END,FAIL
##SBATCH --mail-user=<username>@sandia.gov
#SBATCH --export=ALL
#SBATCH --job-name=h5_ctestP
cd @HDF5_BINARY_DIR@
echo "Run parallel test command. Test output will be in build/ctestP.out"
ctest -S ctest_parallel.cmake >& ctestP.out
echo "Done running ctest parallel command."
touch ctestP.done

View File

@@ -0,0 +1,16 @@
#!/bin/bash
#SBATCH -p knl -C quad,cache
#SBATCH --nodes=1
#SBATCH -t 00:30:00
#SBATCH --mail-type=BEGIN,END,FAIL
##SBATCH --mail-user=<username>@sandia.gov
#SBATCH --export=ALL
#SBATCH --job-name=h5_ctestS
cd @HDF5_BINARY_DIR@
echo "Run command. Test output will be in build/ctestS.out"
ctest -S ctest_serial.cmake >& ctestS.out
echo "Done running command."
touch ctestS.done

View File

@@ -0,0 +1,22 @@
#!/bin/tcsh
### LSF syntax
#BSUB -n 6 #number of nodes
#BSUB -R "span[ptile=6]"
#BSUB -W 30 #walltime in minutes
#BSUB -G guests #account
#BSUB -e ctestPerrors.txt #stderr
#BSUB -o ctestPoutput.txt #stdout
#BSUB -J hdf5_ctestP #job
##BSUB -q pbatch #queue to use
#BSUB -q pdebug
##date; hostname
##echo -n 'JobID is '; echo $LSB_JOBID
cd @HDF5_BINARY_DIR@
echo "Run parallel test command. Test output will be in build/ctestP.out"
ctest -S ctest_parallel.cmake >& ctestP.out
echo "Done running ctest parallel command."
touch ctestP.done
~

View File

@@ -0,0 +1,17 @@
#!/bin/tcsh
### LSF syntax
#BSUB -n 1 #number of nodes
#BSUB -W 29 #walltime in minutes
#BSUB -G guests #account
#BSUB -e ctestSerrors.txt #stderr
#BSUB -o ctestSoutput.txt #stdout
#BSUB -J hdf5_ctestS #job
##BSUB -q pbatch #queue to use
#BSUB -q pdebug
cd @HDF5_BINARY_DIR@
echo "Run command. Test output will be in build/ctestS.out"
ctest -S ctest_serial.cmake >& ctestS.out
echo "Done running command."
touch ctestS.done

7
bin/batch/raybsub Executable file
View File

@@ -0,0 +1,7 @@
#!/bin/tcsh
# ray.llnl.gov requires a '<' with bsub for submitting .lsf batch jobs.
# CMake is reluctant to pass the '<', so we put it in this script and use
# the script to submit the bsub command on ray.
bsub < $1

View File

@@ -1,45 +1,25 @@
#!/bin/sh
#
# Copyright by The HDF Group.
# Copyright by the Board of Trustees of the University of Illinois.
# All rights reserved.
#
# This file is part of HDF5. The full HDF5 copyright notice, including
# terms governing use, modification, and redistribution, is contained in
# the COPYING file, which can be found at the root of the source code
# distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases.
# distribution tree, or in https://www.hdfgroup.org/licenses.
# If you do not have access to either file, you may request a copy from
# help@hdfgroup.org.
#
# Make a release of hdf5.
#
# Programmer: Robb Matzke
# Creation date: on or before 1998-01-29.
# NOTE:
# This script differs from bin/release in that this has an added
# --revision option to create private releases with the code revision
# hash in the version strings.
#
# Modifications
# Robb Matzke, 1999-07-16
# The SunOS 5.6 sed *must* have slashes as delimiters. I changed things like
# `sed s+/CVS++' to `sed 's/\/CVS//'
#
# Albert Cheng, 1999-10-26
# Moved the MANIFEST checking to a separate command file so that
# it can be invoked individually.
#
# Albert Cheng, 2004-08-14
# Added the --private option.
#
# James Laird, 2005-09-07
# Added the md5 method.
#
# Larry Knox, 2016-08-30
# Added the --revision option to create private releases with the
# code revision hash in the version strings. Currently the version
# of this script with the --revision option is named bbrelease. It
# can probably be merged into the original release script in the
# future.
# Commands to get the revision hash have now been converted to git
# to match the source repository change.
# This script can probably be merged into the original release script in
# the future.
# Function definitions
#
@@ -47,27 +27,27 @@
USAGE()
{
cat << EOF
Usage: $0 -d <dir> [--docver BRANCHNAME] [-h] [--nocheck] [--private] <methods> ...
-d DIR The name of the directory where the releas(es) should be
Usage: $0 -d <dir> [-h] [--private] [--revision [--branch BRANCHNAME]] <methods> ...
-d DIR The name of the directory where the release(s) should be
placed.
--docver BRANCHNAME This is added for 1.8 and beyond to get the correct
version of documentation files from the hdf5docs
--branch BRANCHNAME This is to get the correct version of the branch name from the
repository. BRANCHNAME for v1.8 should be hdf5_1_8.
-h print the help page.
--nocheck Ignore errors in MANIFEST file.
--private Make a private release with today's date in version information.
--revision Make a private release with the code revision number in version information.
--private Make a private release with today's date in version information.
--revision Make a private release with the code revision number in version information.
This allows --branch to be used for the file name.
--branch BRANCHNAME This is to get the correct version of the branch name from the
repository. BRANCHNAME for v1.8 should be hdf5_1_8.
This must be run at the top level of the source directory.
The other command-line options are the names of the programs to use
for compressing the resulting tar archive (if none are given then
"tar" is assumed):
tar -- use tar and don't do any compressing.
gzip -- use gzip with "-9" and append ".gz" to the output name.
tar -- use tar and don't do any compressing.
gzip -- use gzip with "-9" and append ".gz" to the output name.
bzip2 -- use bzip2 with "-9" and append ".bz2" to the output name.
zip -- convert all text files to DOS style and form a zip file for Windows use.
doc -- produce the latest doc tree in addition to the archive.
zip -- convert all text files to DOS style and form a zip file for Windows use.
An md5 checksum is produced for each archive created and stored in the md5 file.
@@ -97,15 +77,10 @@ EOF
# Function name: tar2zip
# Convert the release tarball to a Windows zipball.
#
# Programmer: Albert Cheng
# Creation date: 2014-04-23
#
# Modifications
#
# Steps:
# 1. untar the tarball in a temporay directory;
# 1. untar the tarball in a temporary directory;
# Note: do this in a temporary directory to avoid changing
# the original source directory which maybe around.
# the original source directory which may be around.
# 2. convert all its text files to DOS (LF-CR) style;
# 3. form a zip file which is usable by Windows users.
#
@@ -119,8 +94,8 @@ EOF
tar2zip()
{
if [ $# -ne 3 ]; then
echo "usage: tar2zip <tarfilename> <zipfilename>"
return 1
echo "usage: tar2zip <tarfilename> <zipfilename>"
return 1
fi
ztmpdir=/tmp/tmpdir$$
mkdir -p $ztmpdir
@@ -132,23 +107,23 @@ tar2zip()
(cd $ztmpdir; tar xf -) < $tarfile
# sanity check
if [ ! -d $ztmpdir/$version ]; then
echo "untar did not create $ztmpdir/$version source dir"
# cleanup
rm -rf $ztmpdir
return 1
echo "untar did not create $ztmpdir/$version source dir"
# cleanup
rm -rf $ztmpdir
return 1
fi
# step 2: convert text files
# There maybe a simpler way to do this.
# options used in unix2dos:
# -k Keep the date stamp
# -k Keep the date stamp
# -q quiet mode
# grep redirect output to /dev/null because -q or -s are not portable.
find $ztmpdir/$version | \
while read inf; do \
if file $inf | grep "$inf\: .*text" > /dev/null 2>&1 ; then \
unix2dos -q -k $inf; \
fi\
done
while read inf; do \
if file $inf | grep "$inf\: .*text" > /dev/null 2>&1 ; then \
unix2dos -q -k $inf; \
fi\
done
# step 3: make zipball
# -9 maximum compression
# -y Store symbolic links as such in the zip archive
@@ -163,14 +138,6 @@ tar2zip()
# This command must be run at the top level of the hdf5 source directory.
# Verify this requirement.
# Since we are running bbrelease to create an HDF5 source tarfile for buildbot
# testing with source that is not for release, there is not a file named
# "configure" but there will be one named "configure.ac". The "configure"
# file will be created when autogen.sh runs. There probably will always
# be a bin/release file, but just in case it is removed, we can check for
# this script, bbrelease, in the bin directory. The bin/release script should
# continue to check for "configure" because it should be present in release
# source.
if [ ! \( -f configure.ac -a -f bin/bbrelease \) ]; then
echo "$0 must be run at the top level of the hdf5 source directory"
exit 1
@@ -182,24 +149,22 @@ VERS=`perl bin/h5vers`
VERS_OLD=
test "$VERS" || exit 1
verbose=yes
check=yes
release_date=`date +%F`
today=`date +%Y%m%d`
pmode='no'
revmode='no'
tmpdir="../#release_tmp.$$" # tmp work directory
DOC_URL=https://git@bitbucket.hdfgroup.org/scm/hdffv/hdf5doc.git
tmpdir="../#release_tmp.$$" # tmp work directory
CPPLUS_RM_NAME=cpplus_RM
# Restore previous Version information
RESTORE_VERSION()
{
if [ X-${VERS_OLD} != X- ]; then
echo restoring version information back to $VERS_OLD
rm -f config/lt_vers.am
cp $tmpdir/lt_vers.am config/lt_vers.am
bin/h5vers -s $VERS_OLD
VERS_OLD=
echo restoring version information back to $VERS_OLD
rm -f config/lt_vers.am
cp $tmpdir/lt_vers.am config/lt_vers.am
bin/h5vers -s $VERS_OLD
VERS_OLD=
fi
}
@@ -209,35 +174,32 @@ while [ -n "$1" ]; do
arg=$1
shift
case "$arg" in
-d)
DEST=$1
shift
;;
--nocheck)
check=no
;;
-h)
USAGE
exit 0
;;
--private)
pmode=yes
;;
-d)
DEST=$1
shift
;;
-h)
USAGE
exit 0
;;
--private)
pmode=yes
;;
--revision)
revmode=yes
;;
--docver)
DOCVERSION=$1
--branch)
BRANCHNAME=$1
shift
;;
-*)
echo "Unknown switch: $arg" 1>&2
USAGE
exit 1
;;
*)
methods="$methods $arg"
;;
-*)
echo "Unknown switch: $arg" 1>&2
USAGE
exit 1
;;
*)
methods="$methods $arg"
;;
esac
done
@@ -246,7 +208,7 @@ if [ "X$methods" = "X" ]; then
methods="tar"
fi
# Create the temporay work directory.
# Create the temporary work directory.
if mkdir $tmpdir; then
echo "temporary work directory for release. "\
"Can be deleted after release completes." > $tmpdir/README
@@ -276,14 +238,17 @@ if [ X$revmode = Xyes ]; then
# Copy old version of config/lt_vers.am, since it's hard to
# "undo" changes to it.
cp config/lt_vers.am $tmpdir
branch=`git branch | grep '*' | awk '{print $NF}'`
if [ "${BRANCHNAME}" = "" ]; then
BRANCHNAME=`git symbolic-ref -q --short HEAD`
fi
revision=`git rev-parse --short HEAD`
# Set version information to m.n.r-r$revision.
# Set version information to m.n.r-r$revision.
# (h5vers does not correctly handle just m.n.r-$today.)
VERS=`echo $VERS | sed -e s/-.*//`-$revision
echo Private release of $VERS
HDF5_VERS=hdf5-$BRANCHNAME-$revision
echo file base of $HDF5_VERS
bin/h5vers -s $VERS
HDF5_VERS=hdf5-$branch-$revision
# use a generic directory name for revision releases
HDF5_IN_VERS=hdfsrc
else
@@ -299,30 +264,17 @@ if [ ! -d $DEST ]; then
exit 1
fi
# Check the validity of the MANIFEST file.
bin/chkmanifest || fail=yes
if [ "X$fail" = "Xyes" ]; then
if [ $check = yes ]; then
exit 1
else
echo "Continuing anyway..."
fi
fi
# Create a manifest that contains only files for distribution.
MANIFEST=$tmpdir/H5_MANIFEST
grep '^\.' MANIFEST | grep -v _DO_NOT_DISTRIBUTE_ >$MANIFEST
# Prepare the source tree for a release.
#ln -s `pwd` $tmpdir/$HDF5_VERS || exit 1
# Create a symlink to the source so files in the tarball have the prefix
# we want (gnu's --transform isn't portable)
ln -s `pwd` $tmpdir/$HDF5_IN_VERS || exit 1
# Save a backup copy of Makefile if exists.
test -f Makefile && mv Makefile $tmpdir/Makefile.x
cp -p Makefile.dist Makefile
# Update README.txt and release_docs/RELEASE.txt with release information in
# Update README.md and release_docs/RELEASE.txt with release information in
# line 1.
for f in README.txt release_docs/RELEASE.txt; do
for f in README.md release_docs/RELEASE.txt; do
echo "HDF5 version $VERS released on $release_date" >$f.x
sed -e 1d $f >>$f.x
mv $f.x $f
@@ -330,64 +282,38 @@ for f in README.txt release_docs/RELEASE.txt; do
chmod 644 $f
done
# trunk is different than branches.
if [ "${DOCVERSION}" ]; then
DOC_URL=https://git@bitbucket.hdfgroup.org/scm/hdffv/hdf5doc.git -b ${DOCVERSION}
fi
# Create the tar file
test "$verbose" && echo " Running tar..." 1>&2
( \
cd $tmpdir; \
tar cf $HDF5_VERS.tar $HDF5_IN_VERS/Makefile \
`sed 's/^\.\//'$HDF5_IN_VERS'\//' $MANIFEST` || exit 1 \
)
(cd "$tmpdir" && exec tar -ch --exclude-vcs -f "$HDF5_VERS.tar" "./$HDF5_IN_VERS" || exit 1 )
# Compress
MD5file=$HDF5_VERS.md5
cp /dev/null $DEST/$MD5file
for comp in $methods; do
case $comp in
tar)
cp -p $tmpdir/$HDF5_VERS.tar $DEST/$HDF5_VERS.tar
(cd $DEST; md5sum $HDF5_VERS.tar >> $MD5file)
;;
gzip)
test "$verbose" && echo " Running gzip..." 1>&2
gzip -9 <$tmpdir/$HDF5_VERS.tar >$DEST/$HDF5_VERS.tar.gz
(cd $DEST; md5sum $HDF5_VERS.tar.gz >> $MD5file)
;;
bzip2)
test "$verbose" && echo " Running bzip2..." 1>&2
bzip2 -9 <$tmpdir/$HDF5_VERS.tar >$DEST/$HDF5_VERS.tar.bz2
(cd $DEST; md5sum $HDF5_VERS.tar.bz2 >> $MD5file)
;;
zip)
test "$verbose" && echo " Creating zip ball..." 1>&2
tar2zip $HDF5_IN_VERS $tmpdir/$HDF5_VERS.tar $DEST/$HDF5_VERS.zip 1>&2
(cd $DEST; md5sum $HDF5_VERS.zip >> $MD5file)
;;
doc)
if [ "${DOCVERSION}" = "" ]; then
DOCVERSION=master
fi
test "$verbose" && echo " Creating docs..." 1>&2
# Check out docs from git repo
(cd $tmpdir; git clone $DOC_URL > /dev/null) || exit 1
# Create doxygen C++ RM
(cd c++/src && doxygen cpp_doc_config > /dev/null ) || exit 1
# Replace version of C++ RM with just-created version
rm -rf $tmpdir/${DOCVERSION}/html/$CPPLUS_RM_NAME
mv c++/src/$CPPLUS_RM_NAME $tmpdir/${DOCVERSION}/html/$CPPLUS_RM_NAME
# Compress the docs and move them to the release area
mv $tmpdir/$DOCVERSION $tmpdir/${HDF5_VERS}_docs
(cd $tmpdir && tar cf ${HDF5_VERS}_docs.tar ${HDF5_VERS}_docs)
mv $tmpdir/${HDF5_VERS}_docs.tar $DEST
;;
*)
echo "***Error*** Unknown method $comp"
exit 1
;;
tar)
cp -p $tmpdir/$HDF5_VERS.tar $DEST/$HDF5_VERS.tar
(cd $DEST; md5sum $HDF5_VERS.tar >> $MD5file)
;;
gzip)
test "$verbose" && echo " Running gzip..." 1>&2
gzip -9 <$tmpdir/$HDF5_VERS.tar >$DEST/$HDF5_VERS.tar.gz
(cd $DEST; md5sum $HDF5_VERS.tar.gz >> $MD5file)
;;
bzip2)
test "$verbose" && echo " Running bzip2..." 1>&2
bzip2 -9 <$tmpdir/$HDF5_VERS.tar >$DEST/$HDF5_VERS.tar.bz2
(cd $DEST; md5sum $HDF5_VERS.tar.bz2 >> $MD5file)
;;
zip)
test "$verbose" && echo " Creating zip ball..." 1>&2
tar2zip $HDF5_IN_VERS $tmpdir/$HDF5_VERS.tar $DEST/$HDF5_VERS.zip 1>&2
(cd $DEST; md5sum $HDF5_VERS.zip >> $MD5file)
;;
*)
echo "***Error*** Unknown method $comp"
exit 1
;;
esac
done
@@ -408,4 +334,6 @@ fi
# Remove temporary things
rm -rf $tmpdir
echo "DONE"
exit 0

View File

@@ -1,13 +1,12 @@
#!/bin/sh
#
# Copyright by The HDF Group.
# Copyright by the Board of Trustees of the University of Illinois.
# All rights reserved.
#
# This file is part of HDF5. The full HDF5 copyright notice, including
# terms governing use, modification, and redistribution, is contained in
# the COPYING file, which can be found at the root of the source code
# distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases.
# distribution tree, or in https://www.hdfgroup.org/licenses.
# If you do not have access to either file, you may request a copy from
# help@hdfgroup.org.
#
@@ -178,7 +177,7 @@ LOCATE_SZLIB()
esac
;; # end of case ncsa
unknown)
# Unknow domain. Give a shot at the some standard places.
# Unknown domain. Give a shot at the some standard places.
szlibpaths="/usr/local"
;;
esac # end of case $mydomain

View File

@@ -1,18 +1,19 @@
#!/usr/bin/perl -w
#!/usr/bin/env perl
#
# Copyright by The HDF Group.
# Copyright by the Board of Trustees of the University of Illinois.
# All rights reserved.
#
# This file is part of HDF5. The full HDF5 copyright notice, including
# terms governing use, modification, and redistribution, is contained in
# the COPYING file, which can be found at the root of the source code
# distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases.
# distribution tree, or in https://www.hdfgroup.org/licenses.
# If you do not have access to either file, you may request a copy from
# help@hdfgroup.org.
#
require 5.003;
use warnings;
# Purpose: insures that API functions aren't called internally.
# Usage: checkapi H5*.c
my $filename = "";

View File

@@ -1,113 +1,263 @@
#!/usr/bin/perl -w
#!/usr/bin/env perl
require 5.003;
use warnings;
#
# Copyright by The HDF Group.
# Copyright by the Board of Trustees of the University of Illinois.
# All rights reserved.
#
# This file is part of HDF5. The full HDF5 copyright notice, including
# terms governing use, modification, and redistribution, is contained in
# the COPYING file, which can be found at the root of the source code
# distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases.
# distribution tree, or in https://www.hdfgroup.org/licenses.
# If you do not have access to either file, you may request a copy from
# help@hdfgroup.org.
#
# Robb Matzke, matzke@llnl.gov
# 30 Aug 1997
# Dana Robinson
# Spring 2019
# (Original by Robb Matzke)
#
# Purpose: Given the names of C source files this script will print the
# file name, line number, and function name of any function that
# doesn't begin with the letter `h' or `H' as stipulated by the
# HDF5 programming style guide.
# Purpose: Given the names of C source files this script will print the
# file name, line number, and function name of any function that
# doesn't begin with the letter 'h' or 'H' as stipulated by the
# HDF5 programming style guide.
#
# Emacs users can run this script as the compile command and
# use `next-error' (usually bound to M-`) to find each name
# violation.
# Emacs users can run this script as the compile command and
# use 'next-error' (usually bound to M-`) to find each name
# violation.
if(<>) {
if($ARGV =~ /\//) {
($filename) = ($ARGV =~ /^.*\/([A-Za-z0-9_]*)\.c$/);
} else {
($filename) = ($ARGV =~ /([A-Za-z0-9_]*)\.c$/);
use File::Basename;
# Loop over all files passed to the function
foreach $arg (@ARGV) {
# Get the filename from the path
$filename = fileparse($arg);
# Skip files that don't include H5private.h
# H5system. has to be inspected by hand since it wraps POSIX files
#
# H5detect and H5make_libsettings are created before the library exists
# so calls that link to function replacements won't work. We'll ignore
# it here.
#
# If a user specifies one file, process it no matter what so people
# can inspect files we normally skip (like H5system.c).
$ignore = 0;
# Ignored files in src/
if($#ARGV gt 0 and $filename =~ /H5FDmulti|H5FDstdio|H5VLpassthru|H5system|H5detect|H5make_libsettings/) {
$ignore = 1;
}
# Ignored atomic test files in test/
if($#ARGV gt 0 and $filename =~ /atomic_reader|atomic_writer/) {
$ignore = 1;
}
# Ignored filter plugins in test/
if($#ARGV gt 0 and $filename =~ /^filter_plugin\d_/) {
$ignore = 1;
}
# Ignored generators in test/
if($#ARGV gt 0 and $filename =~ /^gen_/) {
$ignore = 1;
}
if($filename =~ /H5FDmulti|H5FDstdio/) {
print "$ARGV is exempt from using Standard library macro wrappers\n";
} else {
while (<>) {
if($ignore) {
print "$filename is exempt from using Standard library macro wrappers\n";
next;
}
# Get rid of comments by removing the inside part.
s|/\*.*?\*/||g;
if ($in_comment) {
if (/\*\//) {
s|.*?\*/||;
$in_comment = 0;
} else {
$_="\n";
}
} elsif (m|/\*|) {
s|/\*.*||;
$in_comment = 1;
}
# Open the file
open(my $fh, "<", $arg) or do {
warn "NOTE: Unable to open $arg: !$\n";
next;
};
# Get rid of string constants if they begin and end on this line.
s/([\'\"])([^\1]|\\\1)*?\1/$1$1/g;
# Loop over all lines in the file to find undecorated functions
while (<$fh>) {
# Get rid of preprocessor directives
s/^\#.*//;
# Skip callbacks invoked as methods in a struct
next if $_ =~ /\b(\)?->|\.)\(?([a-z_A-Z]\w*)\s*\(/;
# Now find all function calls on this line which don't start with 'H'
while (($name)=/\b([a-z_A-GI-Z]\w*)\s*\(/) {
$_ = $';
# Ignore C statements that look sort of like function
# calls.
next if $name =~ /^(if|for|offsetof|return|sizeof|switch|while|void)$/;
# Ignore things that get misdetected because of the simplified
# parsing that takes place here.
next if $name =~ /^(int|herr_t|_term_interface)$/;
# These are really HDF5 functions/macros even though they don't
# start with `h' or `H'.
next if $name =~ /^FUNC_(ENTER|LEAVE)(_(NO)?API|_PACKAGE|_STATIC)?(_NOFS|_NOCLEAR|_NOINIT)?(_NOFUNC|_TAG)?$/;
next if $name =~ /^(BEGIN|END)_FUNC$/;
next if $name =~ /^U?INT(8|16|32|64)(ENCODE|DECODE)(_VAR)?$/;
next if $name =~ /^CI_(PRINT_STATS|INC_SRC|INC_DST)$/;
next if $name =~ /^(ABS|ADDR_OVERFLOW|ALL_MEMBERS|BOUND|CONSTR|DETECT_[I|F|M]|DOWN)$/;
next if $name =~ /^(MIN3?|MAX3?|NELMTS|POWER_OF_TWO|REGION_OVERFLOW)$/;
next if $name =~ /^(UNIQUE_MEMBERS)$/;
next if $name =~ /^addr_defined$/;
# These functions/macros are exempt.
next if $name =~ /^(main|[fs]?printf|va_(start|arg|end))$/;
# These are Windows system calls. Ignore them.
next if $name =~ /^(_get_osfhandle|GetFileInformationByHandle|SetFilePointer|GetLastError|SetEndOfFile)$/;
next if $name =~ /^(FindNextFile|FindClose|_tzset|Wgettimeofday|GetSystemTimeAsFileTime|Wgetlogin|GetUserName)$/;
# These are MPI function calls. Ignore them.
next if $name =~ /^(MPI_|MPE_)/;
# These are POSIX threads function calls. Ignore them.
next if $name =~ /^pthread_/;
# These are Windows threads function calls. Ignore them.
next if $name =~ /^(_beginthread|(Initialize|Enter|Leave)CriticalSection|TlsAlloc)$/;
# These are zlib & szlib function calls. Ignore them.
next if $name =~ /^(inflate|SZ_)/;
next if $name =~ /^compress2$/;
print "$ARGV:$.: $name\n";
}
} continue {
close ARGV if eof; # reset line number
# Get rid of comments by removing the inside part.
s|/\*.*?\*/||g;
if ($in_comment) {
if (/\*\//) {
s|.*?\*/||;
$in_comment = 0;
} else {
$_="\n";
}
} elsif (m|/\*|) {
s|/\*.*||;
$in_comment = 1;
}
# Get rid of string constants if they begin and end on this line.
s/([\'\"])([^\1]|\\\1)*?\1/$1$1/g;
# Get rid of preprocessor directives
s/^\#.*//;
# Skip callbacks invoked as methods in a struct
next if $_ =~ /\b(\)?]?->|\.)\(?([a-z_A-Z]\w*)\s*\(/;
# Now find all function calls on this line which don't start with 'H'
while (($name)=/\b([a-z_A-GI-Z]\w*)\s*\(/) {
$_ = $';
# Ignore C statements that look sort of like function
# calls.
next if $name =~ /^(if|for|offsetof|return|sizeof|switch|while|void)$/;
# Ignore things that get misdetected because of the simplified
# parsing that takes place here.
next if $name =~ /^(int|herr_t|_term_interface|_term_package)$/;
# These are really HDF5 functions/macros even though they don't
# start with `h' or `H'.
next if $name =~ /^FUNC_(ENTER|LEAVE)(_(NO)?API|_PACKAGE|_STATIC)?(_NAMECHECK_ONLY|_NOFS|_NOCLEAR|_NOINIT|_NOPUSH)?(_NOFUNC|_TAG)?$/;
next if $name =~ /^(BEGIN|END)_FUNC$/;
next if $name =~ /^U?INT(8|16|32|64)(ENCODE|DECODE)(_VAR)?$/;
next if $name =~ /^CI_(PRINT_STATS|INC_SRC|INC_DST)$/;
next if $name =~ /^(ABS|ADDR_OVERFLOW|ALL_MEMBERS|BOUND|CONSTR|DETECT_[I|F|M]|DOWN)$/;
next if $name =~ /^(MIN3?|MAX3?|NELMTS|POWER_OF_TWO|REGION_OVERFLOW)$/;
next if $name =~ /^(SIZE_OVERFLOW|UNIQUE_MEMBERS|S_ISDIR)$/;
next if $name =~ /^addr_defined$/;
next if $name =~ /^TERMINATOR$/;
# Ignore callback invocation
next if $name =~ /^(op|cb|OP|iter_op|func)$/;
# Ignore main
next if $name =~ /^main$/;
# This often appears in preprocessor lines that span multiple lines
next if $name =~ /^(defined)$/;
# These are Windows system calls. Ignore them.
next if $name =~ /^(_get_osfhandle|GetFileInformationByHandle|SetFilePointer|GetLastError|SetEndOfFile)$/;
next if $name =~ /^(FindNextFile|FindClose|_tzset|Wgettimeofday|GetSystemTimeAsFileTime|GetUserName)$/;
next if $name =~ /^(DeleteCriticalSection|TlsFree|TlsGetValue|CreateThread)$/;
next if $name =~ /^(ExpandEnvironmentStringsA|LockFileEx|UnlockFileEx)$/;
next if $name =~ /^(DllMain|LocalAlloc|LocalFree)$/;
next if $name =~ /^(FindFirstFileA|FindNextFileA)$/;
next if $name =~ /^(_beginthread|(Initialize|Enter|Leave)CriticalSection|TlsAlloc)$/;
# These are MPI function calls. Ignore them.
next if $name =~ /^(MPI_)/;
# These are POSIX threads function calls. Ignore them.
next if $name =~ /^pthread_/;
# These are zlib & szlib function calls. Ignore them.
next if $name =~ /^(inflate|SZ_)/;
next if $name =~ /^compress2$/;
# These is an H5Dfill function. Ignore it in this file.
if($filename =~ /H5Dfill/) {
next if $name =~ /^(alloc_func)$/;
}
# These are H5Zscaleoffset functions. Ignore them in this file.
if($filename =~ /H5Zscaleoffset/) {
next if $name =~ /^(pow_fun|round_fun|abs_fun|lround_fun|llround_fun)$/;
}
# This is a macro parameter in H5Rint.c. Ignore it in this file.
if($filename =~ /H5Rint/) {
next if $name =~ /^(func)$/;
}
# Internal calls in the HDFS VFD (H5FDhdfs.c). Ignore it in this file.
if($filename =~ /H5FDhdfs/) {
next if $name =~ /^(hdfs)/;
}
# Macros, etc. from the mirror VFD (H5FDmirror.c). Ignore in this file.
if($filename =~ /H5FDmirror/) {
next if $name =~ /^(LOG)/;
next if $name =~ /^(BSWAP_64|is_host_little_endian)$/;
}
# These are things in H5FDs3comms.c and H5FDros3.c. Ignore them in these files.
if($filename =~ /H5FDs3comms|H5FDros3/) {
next if $name =~ /^(curl_|curlwritecallback|gmnow)/;
next if $name =~ /^(ros3_|ROS3_|S3COMMS_)/;
next if $name =~ /^(EVP_sha256|SHA256|ISO8601NOW)$/;
}
# TESTING (not comprehensive - just noise reduction)
# Test macros and functions (testhdf5.h)
next if $name =~ /^(AddTest|TestErrPrintf|TestSummary|TestCleanup|TestShutdown)$/;
next if $name =~ /^(CHECK|CHECK_PTR|CHECK_PTR_NULL|CHECK_PTR_EQ|CHECK_I)$/;
next if $name =~ /^(VERIFY|VERIFY_STR|VERIFY_TYPE|MESSAGE|ERROR)$/;
# Test macros and functions (h5test.h)
next if $name =~ /^(TESTING|PASSED|SKIPPED|PUTS_ERROR|FAIL_PUTS_ERROR|FAIL_STACK_ERROR|TEST_ERROR|AT)$/;
next if $name =~ /^(GetTestExpress)$/;
# Ignore functions that start with test_ or check_
next if $name =~ /^test_/;
next if $name =~ /^check_/;
# Ignore functions that start with h5_
next if $name =~ /^h5_/;
# Ignore process completed status
next if $name =~ /(WIFEXITED|WEXITSTATUS|WIFSIGNALED|WTERMSIG|WCOREDUMP|WIFSTOPPED|WSTOPSIG)/;
# Ignore usage functions
next if $name =~ /^usage$/;
# Ignore callbacks
next if $name =~ /(_cb\d?)$/;
# Specific tests (not even remotely comprehensive)
# accum test code
if($filename =~ /accum/) {
next if $name =~ /^(accum_)/;
}
# cache test code
if($filename =~ /cache/) {
next if $name =~ /(_entry|_entries|_cache|_check|_dependency|_status|_op)$/;
next if $name =~ /^(verify_|smoke_check_|row_major_|col_major_)/;
next if $name =~ /^(resize_configs_are_equal|CACHE_ERROR)$/
}
# Splitter VFD test code. Ignore in vfd.c.
if($filename =~ /vfd/) {
next if $name =~ /^(SPLITTER_|splitter_)/;
next if $name =~ /(_splitter_)/;
next if $name =~ /^(file_exists)$/;
}
# S3 VFD test code. Ignore in ros3.c and s3comms.c.
# HDFS VFD test code. Ignore in hdfs.c.
if($filename =~ /ros3|s3comms|hdfs/) {
next if $name =~ /^(JSVERIFY|JSFAILED_|JSERR_|jserr_|FAIL_)/;
next if $name =~ /^(curl_)/;
next if $name =~ /^(S3COMMS_FORMAT_CREDENTIAL|ISO8601NOW|gmnow)$/;
}
# VDS test code. Ignore in vds.c.
if($filename =~ /vds/) {
next if $name =~ /^(vds_)/;
}
print "$filename:$.: $name\n";
}
}
# Close the file
close($fh);
}
if($#ARGV gt 0) {
print "\n";
print "NOTE:\n";
print "If any files were skipped due to being exempt, you can inspect them manually\n";
print "by using this script on them one at a time, which will always process the file.\n";
}

View File

@@ -1,82 +0,0 @@
#!/bin/sh
##
## Copyright by the Board of Trustees of the University of Illinois.
## All rights reserved.
##
## This file is part of HDF5. The full HDF5 copyright notice, including
## terms governing use, modification, and redistribution, is contained in
## the COPYING file, which can be found at the root of the source code
## distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases.
## If you do not have access to either file, you may request a copy from
## help@hdfgroup.org.
##
# Check that all the configure files are properly generated.
#
# Programmer: Albert Cheng
# Created Date: 2004/12/07
#
# Configure: should be generated by autoconf version 2.69.
# autoconf: should be of version 2.69.
# variable initialization
nerrors=0
AUTOCONFVERSION=2.69
AUTOCONFVERSIONLEAD='Generated by GNU Autoconf'
CONFIGUREFILES="configure"
# Function definitions
#
# PRINTMSG
# Print a one line message left justified in a field of 70 characters
# without newline. More output for this line later.
#
PRINTMSG() {
SPACES=" "
echo "$* $SPACES" | cut -c1-70 | tr -d '\012'
}
# print result passed.
PASSED() {
echo " PASSED"
}
# print result failed.
FAILED() {
echo "*FAILED*"
}
# Main body
# Check configure files
# The autoconf version should be among the first 5 lines.
echo "Check autoconf version. Should be version $AUTOCONFVERSION"
for xf in $CONFIGUREFILES; do
PRINTMSG $xf
if [ ! -f $xf ]; then
FAILED
echo File not found
nerrors=`expr $nerrors + 1`
continue
fi
autoconf_version=`head -5 $xf | grep "$AUTOCONFVERSIONLEAD"`
echo $autoconf_version | grep "$AUTOCONFVERSIONLEAD $AUTOCONFVERSION" > /dev/null 2>&1
if [ $? -eq 0 ]; then
PASSED
else
FAILED
echo "Expected: $AUTOCONFVERSIONLEAD $AUTOCONFVERSION"
echo "Got: $autoconf_version"
nerrors=`expr $nerrors + 1`
fi
done
# Summary
echo $0 found $nerrors errors
if [ $nerrors != 0 ]; then
exit 1
fi
exit 0

View File

@@ -1,16 +1,14 @@
#! /bin/sh
#
# Copyright by The HDF Group.
# Copyright by the Board of Trustees of the University of Illinois.
# All rights reserved.
#
# This file is part of HDF5. The full HDF5 copyright notice, including
# terms governing use, modification, and redistribution, is contained in
# the COPYING file, which can be found at the root of the source code
# distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases.
# distribution tree, or in https://www.hdfgroup.org/licenses.
# If you do not have access to either file, you may request a copy from
# help@hdfgroup.org.
#
# Check Copyright notice.
# Check that all the files have the proper copyright notice.
@@ -39,8 +37,8 @@ NFIXEDFILES=0 # Number of files fixed.
NFIXFAILEDFILES=0 # Number of files fix failed.
NUMBEGINLINES=60 # Copyright notice should be located within the
# this number of lines at the beginning of the file.
UICOPYRIGHTSTR="Copyright by the Board of Trustees of the University of Illinois"
THGCOPYRIGHTSTR="Copyright by The HDF Group."
UICOPYRIGHTSTR="Copyright by the Board of Trustees of the University of Illinois"
PASSEDLOG=/tmp/h5chkright_passed.$$
SKIPPEDLOG=/tmp/h5chkright_skipped.$$
@@ -111,113 +109,92 @@ BUILDCOPYRIGHT()
# C and C++ source Copyright notice
cat > ${C_COPYRIGHT} << \EOF
* Copyright by The HDF Group. *
* Copyright by the Board of Trustees of the University of Illinois. *
* All rights reserved. *
* *
* This file is part of HDF5. The full HDF5 copyright notice, including *
* terms governing use, modification, and redistribution, is contained in *
* the files COPYING and Copyright.html. COPYING can be found at the root *
* of the source code distribution tree; Copyright.html can be found at the *
* root level of an installed copy of the electronic HDF5 document set and *
* is linked from the top-level documents page. It can also be found at *
* http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have *
* access to either file, you may request a copy from help@hdfgroup.org. *
* the COPYING file, which can be found at the root of the source code *
* distribution tree, or in https://www.hdfgroup.org/licenses. *
* If you do not have access to either file, you may request a copy from *
* help@hdfgroup.org. *
EOF
# Fortran9X source Copyright notice
cat > ${FTN_COPYRIGHT} << \EOF
! Copyright by The HDF Group. *
! Copyright by the Board of Trustees of the University of Illinois. *
! All rights reserved. *
! *
! This file is part of HDF5. The full HDF5 copyright notice, including *
! terms governing use, modification, and redistribution, is contained in *
! the files COPYING and Copyright.html. COPYING can be found at the root *
! of the source code distribution tree; Copyright.html can be found at the *
! root level of an installed copy of the electronic HDF5 document set and *
! is linked from the top-level documents page. It can also be found at *
! http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have *
! access to either file, you may request a copy from help@hdfgroup.org. *
! the COPYING file, which can be found at the root of the source code *
! distribution tree, or in https://www.hdfgroup.org/licenses. *
! If you do not have access to either file, you may request a copy from *
! help@hdfgroup.org. *
EOF
# HTML file Copyright notice
cat > ${HTM_COPYRIGHT} << \EOF
* Copyright by The HDF Group. *
* Copyright by the Board of Trustees of the University of Illinois. *
* All rights reserved. *
* *
* This file is part of HDF5. The full HDF5 copyright notice, including *
* terms governing use, modification, and redistribution, is contained in *
* the files COPYING and Copyright.html. COPYING can be found at the root *
* of the source code distribution tree; Copyright.html can be found at the *
* root level of an installed copy of the electronic HDF5 document set and *
* is linked from the top-level documents page. It can also be found at *
* http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have *
* access to either file, you may request a copy from help@hdfgroup.org. *
* the COPYING file, which can be found at the root of the source code *
* distribution tree, or in https://www.hdfgroup.org/licenses. *
* If you do not have access to either file, you may request a copy from *
* help@hdfgroup.org. *
EOF
# Shell style Copyright notice
cat > ${SH_COPYRIGHT} << \EOF
# Copyright by The HDF Group.
# Copyright by the Board of Trustees of the University of Illinois.
# All rights reserved.
#
# This file is part of HDF5. The full HDF5 copyright notice, including
# terms governing use, modification, and redistribution, is contained in
# the files COPYING and Copyright.html. COPYING can be found at the root
# of the source code distribution tree; Copyright.html can be found at the
# root level of an installed copy of the electronic HDF5 document set and
# is linked from the top-level documents page. It can also be found at
# http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have
# access to either file, you may request a copy from help@hdfgroup.org.
# the COPYING file, which can be found at the root of the source code
# distribution tree, or in https://www.hdfgroup.org/licenses.
# If you do not have access to either file, you may request a copy from
# help@hdfgroup.org.
EOF
# Shell style Copyright notice (2nd type)
cat > ${SH_COPYRIGHT2} << \EOF
## Copyright by The HDF Group.
## Copyright by the Board of Trustees of the University of Illinois.
## All rights reserved.
##
## This file is part of HDF5. The full HDF5 copyright notice, including
## terms governing use, modification, and redistribution, is contained in
## the files COPYING and Copyright.html. COPYING can be found at the root
## of the source code distribution tree; Copyright.html can be found at the
## root level of an installed copy of the electronic HDF5 document set and
## is linked from the top-level documents page. It can also be found at
## http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have
## access to either file, you may request a copy from help@hdfgroup.org.
## the COPYING file, which can be found at the root of the source code
## distribution tree, or in https://www.hdfgroup.org/licenses.
## If you do not have access to either file, you may request a copy from
## help@hdfgroup.org.
EOF
# Windows Batch file Copyright notice
cat > ${WINBAT_COPYRIGHT} << \EOF
@REM Copyright by The HDF Group.
@REM Copyright by the Board of Trustees of the University of Illinois.
@REM All rights reserved.
@REM
@REM This file is part of HDF5. The full HDF5 copyright notice, including
@REM terms governing use, modification, and redistribution, is contained in
@REM the files COPYING and Copyright.html. COPYING can be found at the root
@REM of the source code distribution tree; Copyright.html can be found at the
@REM root level of an installed copy of the electronic HDF5 document set and
@REM is linked from the top-level documents page. It can also be found at
@REM http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have
@REM access to either file, you may request a copy from help@hdfgroup.org.
@REM the COPYING file, which can be found at the root of the source code
@REM distribution tree, or in https://www.hdfgroup.org/licenses.
@REM If you do not have access to either file, you may request a copy from
@REM help@hdfgroup.org.
EOF
# configure.ac file Copyright notice
cat > ${CONFIGURE_AC_COPYRIGHT} << \EOF
dnl Copyright by The HDF Group.
dnl Copyright by the Board of Trustees of the University of Illinois.
dnl All rights reserved.
dnl
dnl This file is part of HDF5. The full HDF5 copyright notice, including
dnl terms governing use, modification, and redistribution, is contained in
dnl the files COPYING and Copyright.html. COPYING can be found at the root
dnl of the source code distribution tree; Copyright.html can be found at the
dnl root level of an installed copy of the electronic HDF5 document set and
dnl is linked from the top-level documents page. It can also be found at
dnl http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have
dnl access to either file, you may request a copy from help@hdfgroup.org.
dnl the COPYING file, which can be found at the root of the source code
dnl distribution tree, or in https://www.hdfgroup.org/licenses.
dnl If you do not have access to either file, you may request a copy from
dnl help@hdfgroup.org.
EOF
}
@@ -364,7 +341,7 @@ FindLineInFile()
# $1 file which contains the expected copyright notice.
# $2 file in which to look for the copyright notice.
# Copyright notice must be found within the beginning $NUMBEGINLINES of lines.
# Hunt for the particular string $UICOPYRIGHTSTR which signifies the beginning
# Hunt for the particular string $THGCOPYRIGHTSTR which signifies the beginning
# of the copyright notice.
#
MATCH_COPYRIGHT()
@@ -379,7 +356,7 @@ MATCH_COPYRIGHT()
nlines=`wc -l ${COPYRIGHTFILE} | cut -f1 -d' '`
# Find a line that contains the copyright string and its line number in
# the file.
begin=`FindLineInFile "${UICOPYRIGHTSTR}" $f`
begin=`FindLineInFile "${THGCOPYRIGHTSTR}" $f`
if [ "$begin" -le 0 ] ; then
# Not found, generate an empty dummy file
cp /dev/null ${EXTRACTEDFILE}
@@ -404,7 +381,7 @@ MATCH_COPYRIGHT()
# $1 file which contains the expected copyright notice.
# $2 file in which to look for the copyright notice.
# Copyright notice must be found within the beginning $NUMBEGINLINES of lines.
# Hunt for the particular string $UICOPYRIGHTSTR which signifies the beginning
# Hunt for the particular string $THGCOPYRIGHTSTR which signifies the beginning
# of the copyright notice.
#
FIX_COPYRIGHT()
@@ -427,7 +404,12 @@ FIX_COPYRIGHT()
# the file.
insertbegin=`FindLineInFile "${THGCOPYRIGHTSTR}" $f`
if [ $insertbegin -gt 0 ]; then
insertend=`expr $insertbegin + $nlines` # no need to -1. See below.
insertUIbegin=`FindLineInFile "${UICOPYRIGHTSTR}" $f`
if [ $insertUIbegin -gt 0 ]; then
insertend=`expr $insertbegin + $nlines + 1`
else
insertend=`expr $insertbegin + $nlines`
fi
else
insertbegin=`FindLineInFile "${UICOPYRIGHTSTR}" $f`
if [ $insertbegin -gt 0 ]; then

View File

@@ -1,154 +0,0 @@
#!/bin/sh
#
# Copyright by The HDF Group.
# Copyright by the Board of Trustees of the University of Illinois.
# All rights reserved.
#
# This file is part of HDF5. The full HDF5 copyright notice, including
# terms governing use, modification, and redistribution, is contained in
# the COPYING file, which can be found at the root of the source code
# distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases.
# If you do not have access to either file, you may request a copy from
# help@hdfgroup.org.
#
# Check that all the files in MANIFEST exist and (if this is a
# GIT checkout) that all the GIT-managed files appear in the
# MANIFEST.
#
verbose=yes
MANIFEST=/tmp/HD_MANIFEST.$$
AUTOGEN=./autogen.sh
AUTOGEN_LOG=/tmp/autogen.log.$$
# Main
test "$verbose" && echo " Checking MANIFEST..." 1>&2
# clean up $MANIFEST file when exits
trap "rm -f $MANIFEST" 0
# Only split lines on newline, not whitespace
set -f
IFS='
'
# First make sure i am in the directory in which there is an MANIFEST file
# and then do the checking from there. Will try the following,
# current directory, parent directory, the directory this command resides.
if [ -f MANIFEST ]; then
continue
elif [ -f ../MANIFEST ]; then
cd ..
else
commanddir=`dirname $0`
if [ -d "$commanddir" -a -f $commanddir/MANIFEST ]; then
cd $commanddir
continue
else
echo MANIFEST file not found. Abort.
exit 1
fi
fi
# Do an autogen if generated files (e.g., configure) is not present
if [ ! -f configure ]; then
echo " running $AUTOGEN"
$AUTOGEN > $AUTOGEN_LOG 2>&1
if [ $? -ne 0 ]; then
echo $AUTOGEN encountered error. Abort.
echo output from $AUTOGEN:
cat $AUTOGEN_LOG
exit 1
fi
rm $AUTOGEN_LOG
fi
# Check for duplicate entries. This can be done at any time, but it may as
# well be sooner so that if something else fails the presence of duplicates
# will already be known.
errcode=0
DUPLICATES=`perl -ne 's/#.*//; next if /^\s*$/; if ($uniq{$_}++) { print $_; }' MANIFEST`
if [ "$DUPLICATES" ]; then
cat 1>&2 <<EOF
These entries appear more than once in the MANIFEST:
$DUPLICATES
Please remove the duplicate lines and try again.
EOF
errcode=1
fi
# Copy the manifest file to get a list of file names.
grep '^\.' MANIFEST | expand | cut -f1 -d' ' >$MANIFEST
for file in `cat $MANIFEST`; do
if [ ! -f $file ]; then
echo "- $file"
fail=yes
fi
done
# Get the list of files under version control and check that they are
# present.
#
# First get a list of all the pending files with git status and
# check those.
git_stat=`git status -s`
for file in $git_stat; do
# Newly added files are not listed by git ls-files, which
# we check later.
# The line listing new files starts with 'A'.
letter=`echo $file | head -c 1`
if [ "$letter" = "A" ]; then
# Convert the git status columns to './' so it matches
# the manifest file name.
#
# There is a space between the status columns and file name, hence
# the '3'.
path=`echo $file | sed 's/^.\{3\}/\.\//g'`
# Ignore directories
if [ ! -d $path ]; then
if (grep ^$path$ $MANIFEST >/dev/null); then
:
else
echo "- $path"
fail=yes
fi
fi
fi
done
# Next check git ls-files, which gets a list of all files that are
# checked in.
git_ls=`git ls-files`
for file in $git_ls; do
path="./${file}"
# Ignore directories
if [ ! -d $path ]; then
if (grep ^$path$ $MANIFEST >/dev/null); then
:
else
echo "+ $path"
fail=yes
fi
fi
done
# Finish up
if [ "X$fail" = "Xyes" ]; then
cat 1>&2 <<EOF
The MANIFEST is out of date. Files marked with a minus sign (-) no
longer exist; files marked with a plus sign (+) are GIT-managed but do
not appear in the MANIFEST. Please remedy the situation and try again.
EOF
exit 1
fi
if [ $errcode -ne 0 ]; then
exit 1
fi
test "$verbose" && echo " The MANIFEST is up to date." 1>&2
exit 0

View File

@@ -199,7 +199,7 @@ DUMP_LOGFILE()
# Show a start time stamp
TIMESTAMP
# Initialize njobs if $AMKE is defined
# Initialize njobs if $MAKE is defined
if [ -n "$MAKE" ]; then
# assume all arguments are for --jobs
njobs=`echo $MAKE | cut -s -d' ' -f2-`
@@ -365,7 +365,7 @@ STEP "Test the library and tools..." "ctest . -C Release $njobs" $testlog
# 7. Create an install image with this command:
STEP "Create an install image..." "cpack -C Release CPackConfig.cmake" $packlog
# The implementation of installation is imcomplete (only works for linux).
# The implementation of installation is incomplete (only works for linux).
# Screen it out for now till it is completed.
if false; then
# 8. Install with this command:

View File

@@ -1,13 +1,12 @@
#!/usr/bin/perl
#!/usr/bin/env perl
#
# Copyright by The HDF Group.
# Copyright by the Board of Trustees of the University of Illinois.
# All rights reserved.
#
# This file is part of HDF5. The full HDF5 copyright notice, including
# terms governing use, modification, and redistribution, is contained in
# the COPYING file, which can be found at the root of the source code
# distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases.
# distribution tree, or in https://www.hdfgroup.org/licenses.
# If you do not have access to either file, you may request a copy from
# help@hdfgroup.org.
#

View File

@@ -1,49 +0,0 @@
#!/usr/bin/perl -w
#
# Copyright by The HDF Group.
# Copyright by the Board of Trustees of the University of Illinois.
# All rights reserved.
#
# This file is part of HDF5. The full HDF5 copyright notice, including
# terms governing use, modification, and redistribution, is contained in
# the COPYING file, which can be found at the root of the source code
# distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases.
# If you do not have access to either file, you may request a copy from
# help@hdfgroup.org.
#
my $depend_file;
my $new_depend_file;
my $srcdir;
my $top_srcdir;
my $top_builddir;
while ($_ = shift @ARGV) {
if (/^--top_srcdir=([^ \t\n]*)/) {
$top_srcdir = $1;
$top_srcdir =~ s/\+/\\\+/g;
$top_srcdir =~ s/\./\\\./g;
} elsif (/^--top_builddir=([^ \t\n]*)/) {
$top_builddir = $1;
$top_builddir =~ s/\+/\\\+/g;
$top_builddir =~ s/\./\\\./g;
} else {
$depend_file = $_;
$new_depend_file = "$_.new";
last;
}
}
open(DEPEND, "<$depend_file") || die "cannot open file $depend_file: $!\n";
open(NEW, ">$new_depend_file") || die "cannot open file $new_depend_file: $!\n";
while (<DEPEND>) {
s/\.o(\b)/\.lo$1/g;
s/ $top_srcdir/ \$\(top_srcdir\)/g;
s/ $top_builddir/ \$\(top_builddir\)/g;
print NEW $_;
}
close(DEPEND);
close(NEW);
`mv $new_depend_file $depend_file`;

View File

@@ -1,58 +0,0 @@
#!/bin/sh
#
# Copyright by The HDF Group.
# Copyright by the Board of Trustees of the University of Illinois.
# All rights reserved.
#
# This file is part of HDF5. The full HDF5 copyright notice, including
# terms governing use, modification, and redistribution, is contained in
# the COPYING file, which can be found at the root of the source code
# distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases.
# If you do not have access to either file, you may request a copy from
# help@hdfgroup.org.
#
# Deploy the HDF5 binary.
#
# Programmer: Albert Cheng
# Created Date: 2004/12/15
#
# Modifications
# Function definitions
#
# Print Usage page
USAGE()
{
cat << EOF
Usage: $0 <dir>
Install the binary to directory <dir>
Examples:
$ bin/deploy /usr/local/hdf5
....
EOF
}
# Variables
if [ $# != 1 ]; then
USAGE
exit 1
fi
installdir=$1
# create installdir if it does not exist yet.
if [ -d $installdir ] || mkdir $installdir ; then
${MAKE:-gmake} install prefix=$installdir && \
( cd $installdir/bin; ./h5redeploy -force)
exit $?
else
echo $installdir is not a valid directory
USAGE
exit 1
fi

View File

@@ -1,24 +0,0 @@
#!/usr/bin/perl -p
#
# Copyright by The HDF Group.
# Copyright by the Board of Trustees of the University of Illinois.
# All rights reserved.
#
# This file is part of HDF5. The full HDF5 copyright notice, including
# terms governing use, modification, and redistribution, is contained in
# the COPYING file, which can be found at the root of the source code
# distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases.
# If you do not have access to either file, you may request a copy from
# help@hdfgroup.org.
#
# Usage: $0 [<].depend
# Takes dependency info and generates on stdout dependencies suitable for
# distribution by removing all the system include files from the list and
# removing all but the base name of other include files (since the Makefiles
# contain the logic for searching).
($h,$_)=/\s*\\/?$h.$`:("",$h.$_);
s|( +/\S*)*( *)|$2?" \\\n ":""|eg;
#s|(([-\w\.]+)/)+([-\w\.]+)|\3|g;

View File

@@ -1,138 +0,0 @@
#!/usr/local/bin/perl -w
require 5.003;
use Text::Tabs;
# NOTE: THE FORMAT OF HRETURN_ERROR AND HGOTO_ERROR MACROS HAS
# CHANGED. THIS SCRIPT NO LONGER WORKS! --rpm
# Copyright by The HDF Group.
# Copyright by the Board of Trustees of the University of Illinois.
# All rights reserved.
#
# This file is part of HDF5. The full HDF5 copyright notice, including
# terms governing use, modification, and redistribution, is contained in
# the COPYING file, which can be found at the root of the source code
# distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases.
# If you do not have access to either file, you may request a copy from
# help@hdfgroup.org.
#
# Robb Matzke, matzke@llnl.gov
# 30 Aug 1997
#
# Purpose: This script will read standard input which should be a
# function prologue followed by a C function and will emit
# on standard output the same source code with the function
# prologue containing documentation for the various errors
# that occur in the function.
#
# Errors are raised by calling HGOTO_ERROR() or
# HRETURN_ERROR(). The reason for the error message is a
# comment which appears immediately after the error macro
# call and is contained entirely on one line:
#
# HRETURN_ERROR (...); /*entry not found*/
#
# If such a comment doesn't exist, then the previous comment
# is used, subject to the constraint that raising an error
# clears the previous comment.
#
# /* Entry not found */
# HGOTO_ERROR (...);
#
# Emacs users can use this script interactively with the
# c-mark-function and shell-command-on-region functions which
# are normally bound to M-C-h and M-|.
# Split STDIN into the prolog and the function body. Preserve leading
# white space.
$_ = join "", <STDIN>;
my ($head, $prolog, $body) = (/^(\s*)(\/\*(.*?)\*\/)?(.*)/s)[0,2,3];
$prolog = "" unless $prolog;
# Find each error and the comment that goes with it.
for ($_=$body,$comment=""; /\/\*|H(RETURN|GOTO)_ERROR/s;) {
$_ = $&.$';
if (/^H(RETURN|GOTO)_ERROR\s*\(\s*H5E_(\w+)\s*,\s*H5E_(\w+)\s*,/s) {
($major, $minor, $_) = ($2, $3, $');
$comment=$1 if /^.*?\)\s*;\s*\/\*\s*(.*?)\s*\*\//;
$comment =~ s/^\s*\*+\s*/ /mg; # leading asterisks.
$comment =~ s/^\s+//s; # leading white space.
$comment =~ s/\s+$//s; # trailing white space.
$comment =~ s/(\w)$/$1./s; # punctuation.
$comment ||= "***NO COMMENT***";
$errors{"$major\000$minor\000\u$comment"} = 1;
$comment = "";
} else {
($comment) = /^\/\*\s*(.*?)\s*\*\//s;
$_ = $';
}
}
# Format an error so it isn't too wide.
sub fmt_error ($) {
local ($_) = @_;
my ($prefix,$space,$err) = /^((.*?)([A-Z_0-9]+\s+[A-Z_0-9]+\s+))/;
$_ = $';
tr/\n / /s;
my $w = 70 - length expand $prefix;
s/(.{$w}\S+)\s+(\S)/$1."\n".$space.' 'x(length $err).$2/eg;
return $prefix . $_."\n";
}
# Sort the errors by major, then minor, then comment. Duplicate
# triplets have already been removed.
sub by_triplet {
my ($a_maj, $a_min, $a_com) = split /\000/, $a;
my ($b_maj, $b_min, $b_com) = split /\000/, $b;
$a_maj cmp $b_maj || $a_min cmp $b_min || $a_com cmp $b_com;
}
@errors = map {sprintf "%-9s %-13s %s\n", split /\000/}
sort by_triplet keys %errors;
# Add the list of errors to the prologue depending on the type of
# prolog.
if (($front, $back) = $prolog=~/^(.*?Errors:\s*?(?=\n)).*?\n\s*\*\s*\n(.*)/s) {
#| * Errors: |#
#| * __list_of_error_messages__ (zero or more lines) |#
#| * |#
print $head, "/*", $front, "\n";
map {print fmt_error " *\t\t".$_} @errors;
print " *\n", $back, "*/", $body;
} elsif (($front,$back) = $prolog =~
/(.*?\n\s*ERRORS:?\s*?(?=\n)).*?\n\s*\n(.*)/s) {
#| ERRORS |#
#| __list_of_error_messages__ (zero or more lines) |#
#| |#
print $head, "/*", $front, "\n";
map {print fmt_error " ".$_} @errors;
print "\n", $back, "*/", $body;
} elsif ($prolog eq "") {
# No prolog present.
print $head;
print " \n/*", "-"x73, "\n * Function:\t\n *\n * Purpose:\t\n *\n";
print " * Errors:\n";
map {print fmt_error " *\t\t".$_} @errors;
print " *\n * Return:\tSuccess:\t\n *\n *\t\tFailure:\t\n *\n";
print " * Programmer:\t\n *\n * Modifications:\n *\n *", '-'x73, "\n";
print " */\n", $body;
} else {
# Prolog format not recognized.
print $head, "/*", $prolog, "*/\n\n";
print "/*\n * Errors returned by this function...\n";
map {print fmt_error " *\t".$_} @errors;
print " */\n", $body;
}

26
bin/format_source Executable file
View File

@@ -0,0 +1,26 @@
#!/bin/bash
#
# Recursively format all C & C++ sources and header files, except those in the
# 'config' directory and generated files, such as H5LTanalyze.c, etc.
#
# Note that any files or directories that are excluded here should also be
# added to the 'exclude' list in .github/workflows/clang-format-check.yml
#
# (Remember to update both bin/format_source and bin/format_source_patch)
find . \( -type d -path ./config -prune -and -not -path ./config \) \
-or \( \( \! \( \
-name H5LTanalyze.c \
-or -name H5LTparse.c \
-or -name H5LTparse.h \
-or -name H5Epubgen.h \
-or -name H5Einit.h \
-or -name H5Eterm.h \
-or -name H5Edefin.h \
-or -name H5version.h \
-or -name H5overflow.h \
\) \) \
-and \( -iname *.h -or -iname *.c -or -iname *.cpp -or -iname *.hpp -or -iname *.java \) \) \
| xargs clang-format -style=file -i -fallback-style=none
exit 0

View File

@@ -1,51 +0,0 @@
#! /bin/sh
#
# Copyright by The HDF Group.
# Copyright by the Board of Trustees of the University of Illinois.
# All rights reserved.
#
# This file is part of HDF5. The full HDF5 copyright notice, including
# terms governing use, modification, and redistribution, is contained in
# the COPYING file, which can be found at the root of the source code
# distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases.
# If you do not have access to either file, you may request a copy from
# help@hdfgroup.org.
# A script to generate coverage files for HDF5 using gcov.
# Configures, builds, and runs tests in-place; the output files will be placed
# in a directory called gcov_logs.
# Must be invoked from the root hdf5 directory.
# This script has been tested on kagiso.
CFLAGS="$CFLAGS -ftest-coverage -fprofile-arcs"
export CFLAGS
LDFLAGS="$LDFLAGS -lgcov"
export LDFLAGS
CC=gcc
export CC
./configure
make
make check
mkdir gcov_logs
cd src
for j in *.h *.c
do
ln -s ../$j .libs/$j
done
cd .libs
for j in *.gcda
do
gcov -b $j >> gcov.log 2>&1
done
for j in *.gcov
do
mv $j ../../gcov_logs
done
mv gcov.log ../../gcov_logs
for j in *.c *.h
do
rm $j
done
cd ../..

View File

@@ -1,12 +1,12 @@
#! /bin/bash
#
# Copyright by The HDF Group.
# All rights reserved.
#
# This file is part of HDF5. The full HDF5 copyright notice, including
# terms governing use, modification, and redistribution, is contained in
# Copyright by The HDF Group.
# All rights reserved.
#
# This file is part of HDF5. The full HDF5 copyright notice, including
# terms governing use, modification, and redistribution, is contained in
# the COPYING file, which can be found at the root of the source code
# distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases.
# distribution tree, or in https://www.hdfgroup.org/licenses.
# If you do not have access to either file, you may request a copy from
# help@hdfgroup.org.
#
@@ -21,13 +21,13 @@
#
# There is NO dependency in either the autotools or CMake to regenerate
# the parser code. If you modify H5LT analyze.l or H5LTparse.y, you
# will need to run this scrpit manually on a system with a suitable
# will need to run this script manually on a system with a suitable
# lexer and parser generator.
#
# IMPORTANT OS X NOTE
#
# If you are using OS X, you will probably not have flex or bison
# installed. In addtion, even if you do have bison installed, the bison
# installed. In addition, even if you do have bison installed, the bison
# version you have installed may also have a bug that makes it unable to
# process our input files.
#
@@ -200,28 +200,34 @@ if [ "$verbose" = true ] ; then
fi
${HDF5_FLEX} --nounistd -PH5LTyy -o ${path_to_hl_src}/H5LTanalyze.c ${path_to_hl_src}/H5LTanalyze.l
# fix H5LTparse.c to declare H5LTyyparse return type as an hid_t
# instead of int. Currently the generated function H5LTyyparse is
# fix H5LTparse.c and H5LTlparse.h to declare H5LTyyparse return type as an
# hid_t instead of int. Currently the generated function H5LTyyparse is
# generated with a return value of type int, which is a mapping to the
# flex yyparse function. The return value in the HL library should be
# an hid_t.
# I propose to not use flex to generate this function, but for now I am
# an hid_t.
# I propose to not use flex to generate this function, but for now I am
# adding a perl command to find and replace this function declaration in
# H5LTparse.c.
perl -0777 -pi -e 's/int yyparse/hid_t yyparse/igs' ${path_to_hl_src}/H5LTparse.c
perl -0777 -pi -e 's/int\nyyparse/hid_t\nyyparse/igs' ${path_to_hl_src}/H5LTparse.c
perl -0777 -pi -e 's/int H5LTyyparse/hid_t H5LTyyparse/igs' ${path_to_hl_src}/H5LTparse.c
perl -0777 -pi -e 's/int yyparse/hid_t yyparse/igs' ${path_to_hl_src}/H5LTparse.h
perl -0777 -pi -e 's/int\nyyparse/hid_t\nyyparse/igs' ${path_to_hl_src}/H5LTparse.h
perl -0777 -pi -e 's/int H5LTyyparse/hid_t H5LTyyparse/igs' ${path_to_hl_src}/H5LTparse.h
# Add code that disables warnings in the flex/bison-generated code.
#
# Note that the GCC pragmas did not exist until gcc 4.2. Earlier versions
# will simply ignore them, but we want to avoid those warnings.
#
# Note also that although clang defines __GNUC__, it doesn't support every
# warning that GCC does.
for f in ${path_to_hl_src}/H5LTparse.c ${path_to_hl_src}/H5LTanalyze.c
do
echo '#if __GNUC__ >= 4 && __GNUC_MINOR__ >=2 ' >> tmp.out
echo '#if defined (__GNUC__) ' >> tmp.out
echo '#if ((__GNUC__ * 100) + __GNUC_MINOR__) >= 402 ' >> tmp.out
echo '#pragma GCC diagnostic ignored "-Wconversion" ' >> tmp.out
echo '#pragma GCC diagnostic ignored "-Wimplicit-function-declaration" ' >> tmp.out
echo '#pragma GCC diagnostic ignored "-Wlarger-than=" ' >> tmp.out
echo '#pragma GCC diagnostic ignored "-Wmissing-prototypes" ' >> tmp.out
echo '#pragma GCC diagnostic ignored "-Wnested-externs" ' >> tmp.out
echo '#pragma GCC diagnostic ignored "-Wold-style-definition" ' >> tmp.out
@@ -230,11 +236,20 @@ do
echo '#pragma GCC diagnostic ignored "-Wsign-conversion" ' >> tmp.out
echo '#pragma GCC diagnostic ignored "-Wstrict-overflow" ' >> tmp.out
echo '#pragma GCC diagnostic ignored "-Wstrict-prototypes" ' >> tmp.out
echo '#pragma GCC diagnostic ignored "-Wimplicit-fallthrough" ' >> tmp.out
echo '#if !defined (__clang__) ' >> tmp.out
echo '#pragma GCC diagnostic ignored "-Wlarger-than=" ' >> tmp.out
echo '#pragma GCC diagnostic ignored "-Wsuggest-attribute=const" ' >> tmp.out
echo '#pragma GCC diagnostic ignored "-Wsuggest-attribute=pure" ' >> tmp.out
echo '#endif ' >> tmp.out
echo '#pragma GCC diagnostic ignored "-Wswitch-default" ' >> tmp.out
echo '#pragma GCC diagnostic ignored "-Wunused-function" ' >> tmp.out
echo '#pragma GCC diagnostic ignored "-Wunused-macros" ' >> tmp.out
echo '#pragma GCC diagnostic ignored "-Wunused-parameter" ' >> tmp.out
echo '#endif ' >> tmp.out
echo '#if ((__GNUC__ * 100) + __GNUC_MINOR__) >= 600 ' >> tmp.out
echo '#pragma GCC diagnostic ignored "-Wnull-dereference" ' >> tmp.out
echo '#endif ' >> tmp.out
echo '#elif defined __SUNPRO_CC ' >> tmp.out
echo '#pragma disable_warn ' >> tmp.out
echo '#elif defined _MSC_VER ' >> tmp.out

View File

@@ -1,13 +1,12 @@
#! /bin/sh
##
# Copyright by The HDF Group.
# Copyright by the Board of Trustees of the University of Illinois.
# All rights reserved.
#
# This file is part of HDF5. The full HDF5 copyright notice, including
# terms governing use, modification, and redistribution, is contained in
# the COPYING file, which can be found at the root of the source code
# distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases.
# distribution tree, or in https://www.hdfgroup.org/licenses.
# If you do not have access to either file, you may request a copy from
# help@hdfgroup.org.
##
@@ -40,7 +39,7 @@ HL="@HL@"
## $CLINKER $H5BLD_CPPFLAGS $CPPFLAGS $H5BLD_CFLAGS $CFLAGS $LDFLAGS ##
## $LIBS $clibpath $link_objs $link_args $shared_link ##
## ##
## These settings can be overriden by setting HDF5_CFLAGS, ##
## These settings can be overridden by setting HDF5_CFLAGS, ##
## HDF5_CPPFLAGS, HDF5_LDFLAGS, or HDF5_LIBS in the environment. ##
## ##
############################################################################
@@ -83,10 +82,10 @@ CLINKERBASE="@CC@"
# CFLAGS, CPPFLAGS and LDFLAGS are reserved for use by the script user.
# FLAGS brought from the hdf5 build are put in H5BLD_*FLAGS.
# User's CPPFLAGS and CFLAGS come after their H5BLD counterparts. User's
# LDFLAGS come just before clibpath, user's LIBS come after $link_objs and
# before the hdf5 libraries in $link_args, followed by any external library
# paths and libraries from AM_LDFLAGS, LDFLAGS, AM_LIBS or LIBS carried in
# User's CPPFLAGS and CFLAGS come after their H5BLD counterparts. User's
# LDFLAGS come just before clibpath, user's LIBS come after $link_objs and
# before the hdf5 libraries in $link_args, followed by any external library
# paths and libraries from AM_LDFLAGS, LDFLAGS, AM_LIBS or LIBS carried in
# from the hdf5 build. The order of the flags is intended to give precedence
# to the user's flags.
H5BLD_CFLAGS="@AM_CFLAGS@ @CFLAGS@"
@@ -102,9 +101,9 @@ LDFLAGS="${HDF5_LDFLAGS:-$LDFLAGSBASE}"
LIBS="${HDF5_LIBS:-$LIBSBASE}"
# If a static library is available, the default will be to use it. If the only
# available library is shared, it will be used by default. The user can
# available library is shared, it will be used by default. The user can
# override either default, although choosing an unavailable library will result
# in link errors.
# in link errors.
STATIC_AVAILABLE="@enable_static@"
if test "${STATIC_AVAILABLE}" = "yes"; then
USE_SHARED_LIB="${HDF5_USE_SHLIB:-no}"
@@ -114,13 +113,6 @@ fi
usage() {
# A wonderfully informative "usage" message.
echo "usage: $prog_name [OPTIONS] <compile line>"
echo " OPTIONS:"
echo " -help This help message."
echo " -echo Show all the shell commands executed"
echo " -prefix=DIR Prefix directory to find HDF5 lib/ and include/"
echo " subdirectories [default: $prefix]"
# A wonderfully informative "usage" message.
echo "usage: $prog_name [OPTIONS] <compile line>"
echo " OPTIONS:"
@@ -147,11 +139,11 @@ usage() {
echo " HDF5_CC - use a different C compiler"
echo " HDF5_CLINKER - use a different linker"
echo " HDF5_USE_SHLIB=[yes|no] - use shared or static version of the HDF5 library"
echo " [default: no except when built with only"
echo " [default: no except when built with only"
echo " shared libraries]"
echo " "
echo " You can also add or change paths and flags to the compile line using"
echo " the following environment varibles or by assigning them to their counterparts"
echo " the following environment variables or by assigning them to their counterparts"
echo " in the 'Things You Can Modify to Override...'" section of $prog_name
echo " "
echo " Variable Current value to be replaced"
@@ -325,7 +317,7 @@ fi
if test "x$do_link" = "xyes"; then
shared_link=""
# conditionnaly link with the hl library
# conditionally link with the hl library
if test "X$HL" = "Xhl"; then
libraries=" $libraries -lhdf5_hl -lhdf5 "
else
@@ -386,10 +378,10 @@ if test "x$do_link" = "xyes"; then
# module. It's okay if they're included twice in the compile line.
link_args="$link_args $H5BLD_LDFLAGS $H5BLD_LIBS"
# User's CPPFLAGS and CFLAGS come after their H5BLD counterparts. User's
# LDFLAGS come just before clibpath, user's LIBS come after $link_objs and
# before the hdf5 libraries in $link_args, followed by any external library
# paths and libraries from AM_LDFLAGS, LDFLAGS, AM_LIBS or LIBS carried in
# User's CPPFLAGS and CFLAGS come after their H5BLD counterparts. User's
# LDFLAGS come just before clibpath, user's LIBS come after $link_objs and
# before the hdf5 libraries in $link_args, followed by any external library
# paths and libraries from AM_LDFLAGS, LDFLAGS, AM_LIBS or LIBS carried in
# from the hdf5 build. The order of the flags is intended to give precedence
# to the user's flags.
$SHOW $CLINKER $H5BLD_CPPFLAGS $CPPFLAGS $H5BLD_CFLAGS $CFLAGS $LDFLAGS $clibpath $link_objs $LIBS $link_args $shared_link

View File

@@ -1,13 +1,12 @@
#! /bin/sh
#
# Copyright by The HDF Group.
# Copyright by the Board of Trustees of the University of Illinois.
# All rights reserved.
#
# This file is part of HDF5. The full HDF5 copyright notice, including
# terms governing use, modification, and redistribution, is contained in
# the COPYING file, which can be found at the root of the source code
# distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases.
# distribution tree, or in https://www.hdfgroup.org/licenses.
# If you do not have access to either file, you may request a copy from
# help@hdfgroup.org.
#

View File

@@ -7,17 +7,16 @@ require 5.003;
use strict;
# Copyright by The HDF Group.
# Copyright by the Board of Trustees of the University of Illinois.
# All rights reserved.
#
# This file is part of HDF5. The full HDF5 copyright notice, including
# terms governing use, modification, and redistribution, is contained in
# the COPYING file, which can be found at the root of the source code
# distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases.
# distribution tree, or in https://www.hdfgroup.org/licenses.
# If you do not have access to either file, you may request a copy from
# help@hdfgroup.org.
#
# Robb Matzke <matzke@llnl.gov>
# Robb Matzke
# 17 July 1998
### Purpose
@@ -66,7 +65,7 @@ use strict;
# ./H5public.h or ./src/H5public.h.
#
# If the version number is changed (either `-s' or `-i' was used on
# the command line) then the first line of the README.txt and RELEASE.txt files
# the command line) then the version line of the README.md and RELEASE.txt files
# one directory above the H5public.h file is also modified so it looks
# something like: This is hdf5-1.2.3-pre1 currently under development.
# The AC_INIT macro in configure.ac will also change in this case to be
@@ -156,10 +155,10 @@ while ($_ = shift) {
}
die "mutually exclusive options given\n" if $set && $inc;
# Determine file to use as H5public.h, README.txt,
# Determine file to use as H5public.h, README.md,
# release_docs/RELEASE.txt, configure.ac, windows/src/H5pubconf.h
# config/lt_vers.am and config/cmake/scripts/HDF5config.cmake.
# The README.txt, release_docs/RELEASE.txt, configure.ac,
# The README.md, release_docs/RELEASE.txt, configure.ac,
# windows/src/H5pubconf.h, config/lt_vers.am and
# config/cmake/scripts/HDF5config.cmake
# files are always in the directory above H5public.h
@@ -178,9 +177,9 @@ die "unable to read file: $LT_VERS\n" unless -r $file;
my $HDF5CONFIGCMAKE = $file;
$HDF5CONFIGCMAKE =~ s/[^\/]*$/..\/config\/cmake\/scripts\/HDF5config.cmake/;
die "unable to read file: $HDF5CONFIGCMAKE\n" unless -r $file;
# README.txt
# README.md
my $README = $file;
$README =~ s/[^\/]*$/..\/README.txt/;
$README =~ s/[^\/]*$/..\/README.md/;
die "unable to read file: $README\n" unless -r $file;
# release_docs/RELEASE.txt
my $RELEASE = $file;
@@ -213,7 +212,7 @@ my (@curver) = getvers $contents;
# Determine the new version number.
my @newver; #new version
if ($set) {
if ($set =~ /(\d+)\.(\d+)\.(\d+)(-([a-zA-Z]\w*))?/) {
if ($set =~ /(\d+)\.(\d+)\.(\d+)(-([\da-zA-Z]\w*))?/) {
@newver = ($1, $2, $3, $5);
} elsif ($set =~ /(\d+)\D+(\d+)\D+(\d+)(\s*\(([a-zA-Z]\w*)\))?\D*$/) {
@newver = ($1, $2, $3, $5);
@@ -303,7 +302,7 @@ if ($LT_VERS && $version_increased) {
# close FILE;
}
# Update the README.txt file
# Update the README.md file
if ($README) {
open FILE, $README or die "$README: $!\n";
my @contents = <FILE>;
@@ -377,7 +376,7 @@ if ($H5_JAVA) {
my $version_string2 = sprintf("%d, %d, %d", @newver[0,1,2]);
$data =~ s/\@version HDF5 .* <BR>/\@version HDF5 $version_string1 <BR>/;
$data =~ s/ public final static int LIB_VERSION\[\] = { \d*, \d*, \d* };/ public final static int LIB_VERSION[] = { $version_string2 };/;
$data =~ s/ public final static int LIB_VERSION\[\] = \{\d*,.\d*,.\d*\};/ public final static int LIB_VERSION[] = \{$version_string2\};/;
write_file($H5_JAVA, $data);
}
@@ -394,7 +393,7 @@ if ($TESTH5_JAVA) {
my $version_string1 = sprintf("%d, %d, %d", @newver[0,1,2]);
my $version_string2 = sprintf("int majnum = %d, minnum = %d, relnum = %d", @newver[0,1,2]);
$data =~ s/ int libversion\[\] = { .* };/ int libversion\[\] = { $version_string1 };/;
$data =~ s/ int libversion\[\] = \{.*\};/ int libversion\[\] = \{$version_string1\};/;
$data =~ s/ int majnum = \d*, minnum = \d*, relnum = \d*;/ $version_string2;/;
write_file($TESTH5_JAVA, $data);
@@ -405,7 +404,7 @@ if ($REPACK_LAYOUT_PLUGIN_VERSION) {
my $data = read_file($REPACK_LAYOUT_PLUGIN_VERSION);
my $version_string = sprintf("%d %d %d", @newver[0,1,2]);
$data =~ s/ PARAMS { 9 \d* \d* \d* }/ PARAMS { 9 $version_string }/g;
$data =~ s/ PARAMS \{ 9 \d* \d* \d* \}/ PARAMS \{ 9 $version_string \}/g;
write_file($REPACK_LAYOUT_PLUGIN_VERSION, $data);
}

View File

@@ -1,13 +1,12 @@
#!/usr/bin/perl
#!/usr/bin/env perl
#
# Copyright by The HDF Group.
# Copyright by the Board of Trustees of the University of Illinois.
# All rights reserved.
#
# This file is part of HDF5. The full HDF5 copyright notice, including
# terms governing use, modification, and redistribution, is contained in
# the COPYING file, which can be found at the root of the source code
# distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases.
# distribution tree, or in https://www.hdfgroup.org/licenses.
# If you do not have access to either file, you may request a copy from
# help@hdfgroup.org.
#

View File

@@ -1,238 +0,0 @@
#!/bin/sh
#
# Copyright by The HDF Group.
# Copyright by the Board of Trustees of the University of Illinois.
# All rights reserved.
#
# This file is part of HDF5. The full HDF5 copyright notice, including
# terms governing use, modification, and redistribution, is contained in
# the COPYING file, which can be found at the root of the source code
# distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases.
# If you do not have access to either file, you may request a copy from
# help@hdfgroup.org.
#
# Try to locate the software as named in argument.
# This is a sequential search of all possible locations of the software.
# Usage: locate_sw <SW-Name>
# It prints a string showing the paths leading to the include, lib and bin
# directory of the software, separated by colons. E.g., if the software is
# located in /usr/sdt/*, it prints
# /usr/sdt/include:/usr/sdt/lib:/usr/sdt/bin
# Any component that is not found will be returned as an empty string. E.g.,
# if somehow the header files of the software are not found, it prints
# :/usr/sdt/lib;/usr/sdt/bin
# Function definitions
USAGE()
{
echo "Usage: locate_sw <SW-Name>"
echo " where <SW-Name> can be hdf4, hdf5, zlib"
echo " It prints the paths leading the header files (include),"
echo " library (lib), and tools (bin). E.g.,"
echo " /usr/sdt/include:/usr/sdt/lib:/usr/sdt/bin"
echo " Any component that is not found will be returned as an empty string. E.g.,"
echo " if somehow the header files of the software are not found, it prints"
echo " :/usr/sdt/lib;/usr/sdt/bin"
echo "Exit code: 0 if software located; otherwise non-zero"
}
# locate hdf4 software
locate_hdf4()
{
# this default is the best guess of locating hdf4 software
swpaths_defaults="/usr/ncsa /usr/sdt /usr/local"
swpaths=
case "$OSname" in
SunOS)
case "$OSrelease" in
5.7)
swpaths="/afs/ncsa/packages/hdf/SunOS_5.7"
;;
*)
# use default
;;
esac
;;
HP-UX)
case "$OSrelease" in
B.11.00)
swpaths="/afs/ncsa/packages/hdf/HPUX_11.00"
;;
*)
# use default
;;
esac
;;
Linux)
swpaths="/afs/ncsa/packages/hdf/Linux"
;;
OSF1)
swpaths="/afs/ncsa/packages/hdf/OSF1_V4.0"
;;
*)
# just use the defaults
;;
esac
# Check if the hdf4 software is actually available.
# Accept the directory only if needed .h, .a and tools are found
# in the same place. That way, they are more likely to be of the
# same version.
#
swpaths="$swpaths $swpaths_defaults"
for sw in $swpaths; do
if [ -r $sw/include/hdf.h -a -r $sw/lib/libdf.a -a -r $sw/bin/hdp ]; then
SW_inc=$sw/include
SW_lib=$sw/lib
SW_bin=$sw/bin
SW_Location=$sw
break
fi
done
}
# locate hdf5 software
locate_hdf5()
{
# this default is the best guess of locating hdf5 software
swpaths_defaults="/usr/ncsa /usr/sdt /usr/local"
swpaths=
case "$OSname" in
SunOS)
case "$OSrelease" in
5.7)
swpaths="/afs/ncsa/packages/hdf5/SunOS_5.7"
;;
*)
# use default
;;
esac
;;
HP-UX)
case "$OSrelease" in
B.11.00)
swpaths="/afs/ncsa/packages/hdf5/HPUX_11.00"
;;
*)
# use default
;;
esac
;;
Linux)
swpaths="/afs/ncsa/packages/hdf5/Linux"
;;
FreeBSD)
swpaths="/afs/ncsa/packages/hdf5/FreeBSD"
;;
OSF1)
swpaths="/afs/ncsa/packages/hdf5/OSF1_V4.0"
;;
*)
# just use the defaults
;;
esac
# Check if the hdf5 software is actually available.
# Accept the directory only if needed .h, .a and tools are found
# in the same place. That way, they are more likely to be of the
# same version.
#
swpaths="$swpaths $swpaths_defaults"
for sw in $swpaths; do
if [ -r $sw/include/hdf5.h -a -r $sw/lib/libhdf5.a -a -r $sw/bin/h5dump ]; then
SW_inc=$sw/include
SW_lib=$sw/lib
SW_bin=$sw/bin
SW_Location=$sw
break
fi
done
}
# locate zlib software
locate_zlib()
{
# this default is the best guess of locating zlib software
swpaths_defaults="/usr /usr/local /usr/ncsa /usr/sdt"
swpaths=
# Check if the zlib software is actually available.
# Accept the directory only if needed .h, .a and tools are found
# in the same place. That way, they are more likely to be of the
# same version.
# Don't know something specific to check the bin directory. Maybe gzip?
# Just make sure it exists.
#
swpaths="$swpaths $swpaths_defaults"
for sw in $swpaths; do
if [ -r $sw/include/zlib.h -a \
\( -r $sw/lib/libz.a -o -r $sw/lib/libz.so \) -a -d $cw/bin ]; then
SW_inc=$sw/include
SW_lib=$sw/lib
SW_bin=$sw/bin
SW_Location=$sw
break
fi
done
# if none found, try HDF4 software which contains a version of zlib.
if [ x-$SW_Location = x- ]; then
locate_hdf4
fi
}
# Main
#
# Options
#
if [ $# -lt 1 ]; then
USAGE
exit 1
fi
if [ "$1" = -h ]; then
USAGE
exit 0
fi
SW=$1
shift
# locations of the software seeked.
SW_inc= # include place
SW_lib= # library place
SW_bin= # binary place
SW_Location= # parent directory of all the above
OSname=`uname -s`
OSrelease=`uname -r`
case $SW in
hdf4|hdf)
locate_hdf4
;;
hdf5)
locate_hdf5
;;
zlib)
locate_zlib
;;
*)
echo "unknown software ($SW)"
USAGE
exit 1
;;
esac
# show the results located, separated by commas.
if [ -n "${SW_inc}" -a -n "${SW_lib}" -a -n "${SW_bin}" ]; then
echo ${SW_inc},${SW_lib},${SW_bin}
exit 0
else
exit 1
fi

View File

@@ -1,16 +1,16 @@
#!/usr/bin/perl -w
#!/usr/bin/env perl
require 5.003;
$indent=4;
use warnings;
#
# Copyright by The HDF Group.
# Copyright by the Board of Trustees of the University of Illinois.
# All rights reserved.
#
# This file is part of HDF5. The full HDF5 copyright notice, including
# terms governing use, modification, and redistribution, is contained in
# the COPYING file, which can be found at the root of the source code
# distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases.
# distribution tree, or in https://www.hdfgroup.org/licenses.
# If you do not have access to either file, you may request a copy from
# help@hdfgroup.org.
#
@@ -31,13 +31,12 @@ sub print_copyright ($) {
print $fh "/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *\n";
print $fh " * Copyright by The HDF Group. *\n";
print $fh " * Copyright by the Board of Trustees of the University of Illinois. *\n";
print $fh " * All rights reserved. *\n";
print $fh " * *\n";
print $fh " * This file is part of HDF5. The full HDF5 copyright notice, including *\n";
print $fh " * terms governing use, modification, and redistribution, is contained in *\n";
print $fh " * the COPYING file, which can be found at the root of the source code *\n";
print $fh " * distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases. *\n";
print $fh " * distribution tree, or in https://www.hdfgroup.org/licenses. *\n";
print $fh " * If you do not have access to either file, you may request a copy from *\n";
print $fh " * help\@hdfgroup.org. *\n";
print $fh " * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */\n";
@@ -63,8 +62,8 @@ sub print_startprotect ($$) {
$file =~ s/(\w*)\.h/$1/;
# Print the ifdef info
print $fh "\n#ifndef _${file}_H\n";
print $fh "#define _${file}_H\n";
print $fh "\n#ifndef ${file}_H\n";
print $fh "#define ${file}_H\n";
}
##############################################################################
@@ -244,8 +243,8 @@ sub create_init ($) {
print HEADER "/* Major error codes */\n";
print HEADER "/*********************/\n\n";
foreach $name (keys %major) {
print HEADER " "x(0*$indent),"assert(${name}_g==(-1));\n";
print HEADER " "x(0*$indent),"if((msg = H5E_create_msg(cls, H5E_MAJOR, \"${major{$name}}\"))==NULL)\n";
print HEADER " "x(0*$indent),"HDassert(${name}_g==(-1));\n";
print HEADER " "x(0*$indent),"if((msg = H5E__create_msg(cls, H5E_MAJOR, \"${major{$name}}\"))==NULL)\n";
print HEADER " "x(1*$indent),"HGOTO_ERROR(H5E_ERROR, H5E_CANTINIT, FAIL, \"error message initialization failed\")\n";
print HEADER " "x(0*$indent),"if((${name}_g = H5I_register(H5I_ERROR_MSG, msg, FALSE))<0)\n";
print HEADER " "x(1*$indent),"HGOTO_ERROR(H5E_ERROR, H5E_CANTREGISTER, FAIL, \"can't register error message\")\n";
@@ -260,8 +259,8 @@ sub create_init ($) {
# Iterate over all the minor errors in each section
for $name ( @{$section_list{$sect_name}}) {
print HEADER " "x(0*$indent),"assert(${name}_g==(-1));\n";
print HEADER " "x(0*$indent),"if((msg = H5E_create_msg(cls, H5E_MINOR, \"${minor{$name}}\"))==NULL)\n";
print HEADER " "x(0*$indent),"HDassert(${name}_g==(-1));\n";
print HEADER " "x(0*$indent),"if((msg = H5E__create_msg(cls, H5E_MINOR, \"${minor{$name}}\"))==NULL)\n";
print HEADER " "x(1*$indent),"HGOTO_ERROR(H5E_ERROR, H5E_CANTINIT, FAIL, \"error message initialization failed\")\n";
print HEADER " "x(0*$indent),"if((${name}_g = H5I_register(H5I_ERROR_MSG, msg, FALSE))<0)\n";
print HEADER " "x(1*$indent),"HGOTO_ERROR(H5E_ERROR, H5E_CANTREGISTER, FAIL, \"can't register error message\")\n";

View File

@@ -1,6 +1,7 @@
#!/usr/bin/perl -w
#!/usr/bin/env perl
require 5.003;
use strict;
use warnings;
# Global settings
@@ -9,13 +10,12 @@ my @ctypes = ( () );
#
# Copyright by The HDF Group.
# Copyright by the Board of Trustees of the University of Illinois.
# All rights reserved.
#
# This file is part of HDF5. The full HDF5 copyright notice, including
# terms governing use, modification, and redistribution, is contained in
# the COPYING file, which can be found at the root of the source code
# distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases.
# distribution tree, or in https://www.hdfgroup.org/licenses.
# If you do not have access to either file, you may request a copy from
# help@hdfgroup.org.
#
@@ -60,13 +60,12 @@ sub print_copyright ($) {
print $fh "/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *\n";
print $fh " * Copyright by The HDF Group. *\n";
print $fh " * Copyright by the Board of Trustees of the University of Illinois. *\n";
print $fh " * All rights reserved. *\n";
print $fh " * *\n";
print $fh " * This file is part of HDF5. The full HDF5 copyright notice, including *\n";
print $fh " * terms governing use, modification, and redistribution, is contained in *\n";
print $fh " * the COPYING file, which can be found at the root of the source code *\n";
print $fh " * distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases. *\n";
print $fh " * distribution tree, or in https://www.hdfgroup.org/licenses. *\n";
print $fh " * If you do not have access to either file, you may request a copy from *\n";
print $fh " * help\@hdfgroup.org. *\n";
print $fh " * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */\n";
@@ -92,8 +91,8 @@ sub print_startprotect ($$) {
$file =~ s/(\w*)\.h/$1/;
# Print the ifdef info
print $fh "\n#ifndef _${file}_H\n";
print $fh "#define _${file}_H\n";
print $fh "\n#ifndef ${file}_H\n";
print $fh "#define ${file}_H\n";
}
##############################################################################

View File

@@ -1,14 +1,15 @@
#!/usr/bin/perl -w
#!/usr/bin/env perl
require 5.003;
use warnings;
# Global settings
# (The max_idx parameter is the only thing that needs to be changed when adding
# support for a new major release. If support for a prior major release
# is added (like support for 1.4, etc), the min_sup_idx parameter will
# need to be decremented. - QAK)
# need to be decremented.)
# Max. library "index" (0 = v1.0, 1 = 1.2, etc)
$max_idx = 5;
# Max. library "index" (0 = v1.0, 1 = 1.2, 2 = 1.4, 3 = 1.6, 4 = 1.8, 5 = 1.10, 6 = 1.12, 7 = 1.14, 8 = 1.16, etc)
$max_idx = 8;
# Min. supported previous library version "index" (0 = v1.0, 1 = 1.2, etc)
$min_sup_idx = 3;
@@ -18,13 +19,12 @@ $indent = 2;
#
# Copyright by The HDF Group.
# Copyright by the Board of Trustees of the University of Illinois.
# All rights reserved.
#
# This file is part of HDF5. The full HDF5 copyright notice, including
# terms governing use, modification, and redistribution, is contained in
# the COPYING file, which can be found at the root of the source code
# distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases.
# distribution tree, or in https://www.hdfgroup.org/licenses.
# If you do not have access to either file, you may request a copy from
# help@hdfgroup.org.
#
@@ -45,13 +45,12 @@ sub print_copyright ($) {
print $fh "/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *\n";
print $fh " * Copyright by The HDF Group. *\n";
print $fh " * Copyright by the Board of Trustees of the University of Illinois. *\n";
print $fh " * All rights reserved. *\n";
print $fh " * *\n";
print $fh " * This file is part of HDF5. The full HDF5 copyright notice, including *\n";
print $fh " * terms governing use, modification, and redistribution, is contained in *\n";
print $fh " * the COPYING file, which can be found at the root of the source code *\n";
print $fh " * distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases. *\n";
print $fh " * distribution tree, or in https://www.hdfgroup.org/licenses. *\n";
print $fh " * If you do not have access to either file, you may request a copy from *\n";
print $fh " * help\@hdfgroup.org. *\n";
print $fh " * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */\n";
@@ -77,8 +76,8 @@ sub print_startprotect ($$) {
$file =~ s/(\w*)\.h/$1/;
# Print the ifdef info
print $fh "\n#ifndef _${file}_H\n";
print $fh "#define _${file}_H\n";
print $fh "\n#ifndef ${file}_H\n";
print $fh "#define ${file}_H\n";
}
##############################################################################
@@ -89,7 +88,8 @@ sub print_checkoptions ($) {
my $curr_idx; # Current API version index
# Print the option checking
print $fh "\n/* Issue error if contradicting macros have been defined. */\n";
print $fh "\n\n/* Issue error if contradicting macros have been defined. */\n";
print $fh "/* (Can't use an older (deprecated) API version if deprecated symbols have been disabled) */\n";
# Print the #ifdef
print $fh "#if (";
@@ -118,7 +118,30 @@ sub print_checkoptions ($) {
##############################################################################
# Print "global" API version macro settings
#
sub print_globalapivers ($) {
sub print_globalapidefvers ($) {
my $fh = shift; # File handle for output file
my $curr_idx; # Current API version index
# Print the descriptive comment
print $fh "\n\n/* If a particular default \"global\" version of the library's interfaces is\n";
print $fh " * chosen, set the corresponding version macro for API symbols.\n";
print $fh " *\n";
print $fh " */\n";
for $curr_idx ($min_sup_idx .. ($max_idx - 1)) {
# Print API version ifdef
print $fh "\n#if defined(H5_USE_1", ($curr_idx * 2), "_API_DEFAULT) && !defined(H5_USE_1", ($curr_idx * 2), "_API)\n";
# Print API version definition
print $fh " " x $indent, "#define H5_USE_1", ($curr_idx * 2), "_API 1\n";
# Print API version endif
print $fh "#endif /* H5_USE_1", ($curr_idx * 2), "_API_DEFAULT && !H5_USE_1", ($curr_idx * 2), "_API */\n";
}
}
##############################################################################
# Print "global" API symbol version macro settings
#
sub print_globalapisymbolvers ($) {
my $fh = shift; # File handle for output file
my $curr_idx; # Current API version index
@@ -130,15 +153,6 @@ sub print_globalapivers ($) {
print $fh " * API symbol, the individual API version macro takes priority.\n";
print $fh " */\n";
for $curr_idx ($min_sup_idx .. ($max_idx - 1)) {
# Print API version ifdef
print $fh "#if defined(H5_USE_1", ($curr_idx * 2), "_API_DEFAULT) && !defined(H5_USE_1", ($curr_idx * 2), "_API)\n";
# Print API version definition
print $fh " " x $indent, "#define H5_USE_1", ($curr_idx * 2), "_API 1\n";
# Print API version endif
print $fh "#endif /* H5_USE_1", ($curr_idx * 2), "_API_DEFAULT && !H5_USE_1", ($curr_idx * 2), "_API */\n\n";
}
# Loop over supported older library APIs and define the appropriate macros
for $curr_idx ($min_sup_idx .. ($max_idx - 1)) {
# Print API version ifdef
@@ -338,7 +352,18 @@ sub parse_line ($) {
my $vers_idx; # Index of version in array
# Do some validation on the input
if(!( $_ =~ /v1[02468]/ || $_ =~ /v11[02468]/ )) {
# Note: v111 is allowed because H5O functions were prematurely versioned
# in HDF5 1.10. Because users were affected by this, the versioning
# was rescinded but the H5O version 2 functions were kept to be
# called directly. Now that the version macros are added in 1.12,
# along with a 3rd version of the H5O functions, the H5O function
# version for default api=v110 should be version 1 to work correctly
# with 1.10 applications that were using unversioned H5O functions,
# and the H5O function version should be version 3 for default api=v112
# (the default api version for 1.12). Allowing a v111 entry and
# incrementing its index 13 lines below allows a version 2 that is
# never accessed via the H5O function macros.
if(!( $_ =~ /v1[02468]/ || $_ =~ /v11[02468]/ || $_ =~ /v111/ )) {
die "bad version information: $name";
}
if(exists($sym_versions{$_})) {
@@ -351,6 +376,9 @@ sub parse_line ($) {
#print "parse_line: _=$_\n";
# Get the index of the version
($vers_idx) = ($_ =~ /v1(\d+)/);
if($vers_idx == 11) {
$vers_idx++;
}
$vers_idx /= 2;
#print "parse_line: vers_idx='$vers_idx'\n";
push(@vers_nums, $vers_idx);
@@ -443,8 +471,9 @@ sub create_public ($) {
print_copyright(*HEADER);
print_warning(*HEADER);
print_startprotect(*HEADER, $file);
print_globalapidefvers(*HEADER);
print_checkoptions(*HEADER);
print_globalapivers(*HEADER);
print_globalapisymbolvers(*HEADER);
print_defaultapivers(*HEADER);
print_endprotect(*HEADER, $file);
@@ -478,7 +507,7 @@ for $file (@ARGV) {
}
}
close SOURCE;
# Create header files
print "Generating '", $prefix, "H5version.h'\n";
create_public($prefix);

View File

@@ -40,6 +40,7 @@ make distclean: remove all files generated by make, make check, or
make check-p: Only run parallel tests
make check-s: Only run serial tests
make check-vfd: Run tests with each virtual file driver
make check-vol: Run tests with each virtual object layer connector
HDF5 uses Automake, so any standard Automake targets not listed here
should also work.

View File

@@ -1,33 +0,0 @@
#! /bin/sh
#
# Copyright by The HDF Group.
# Copyright by the Board of Trustees of the University of Illinois.
# All rights reserved.
#
# This file is part of HDF5. The full HDF5 copyright notice, including
# terms governing use, modification, and redistribution, is contained in
# the COPYING file, which can be found at the root of the source code
# distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases.
# If you do not have access to either file, you may request a copy from
# help@hdfgroup.org.
#
# This is a small program which will create directories n-levels deep.
# You just call it with something like:
#
# mkdirs /tmp/foo/bar/baz
#
# and it will create all the directories from /tmp down to baz which
# don't exist.
#
chmodprog="${CHMODPROG-chmod}"
mkdirprog="${MKDIRPROG-mkdir}"
make_dir () {
if test ! -d $1; then
make_dir `echo $1 | sed -e 's#/[^/]*$##'`
$mkdirprog $1
$chmodprog 755 $1
fi
}
make_dir `echo $1 | sed -e 's#/$##'`

View File

@@ -1,43 +0,0 @@
#!/bin/sh
#
# Copyright by The HDF Group.
# Copyright by the Board of Trustees of the University of Illinois.
# All rights reserved.
#
# This file is part of HDF5. The full HDF5 copyright notice, including
# terms governing use, modification, and redistribution, is contained in
# the COPYING file, which can be found at the root of the source code
# distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases.
# If you do not have access to either file, you may request a copy from
# help@hdfgroup.org.
#
# Compare the modification time of file argument 1 against other file arguments.
# Return true (0) if argument 1 is newer than all others, otherwise return
# false (1). If any of the argument is not a file, return false (1).
#
# Programmer: Albert Cheng
# Created Date: 2005/07/06
# Modification:
# Albert Cheng 2005/8/30
# Changed from two arguments to mulitple arguments.
if test $# -lt 2; then
exit 1
fi
if test ! -f $1; then
exit 1
fi
f1=$1
shift
for f in $*; do
if test ! -f $f; then
exit 1
fi
if test X = X`find $f1 -newer $f -print`; then
exit 1
fi
done
# passed all tests. Must be a file newer than all others.
exit 0

View File

@@ -4,7 +4,7 @@
## This file is part of HDF5. The full HDF5 copyright notice, including
## terms governing use, modification, and redistribution, is contained in
## the COPYING file, which can be found at the root of the source code
## distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases.
## distribution tree, or in https://www.hdfgroup.org/licenses.
## If you do not have access to either file, you may request a copy from
## help@hdfgroup.org.
@@ -61,26 +61,21 @@ STDOUT_FILTER() {
# Remove them from the stderr result file.
# $1 is the file name of the file to be filtered.
# Cases of filter needed:
# 1. MPE:
# In parallel mode and if MPE library is used, it prints the following
# two message lines whether the MPE tracing is used or not.
# Writing logfile.
# Finished writing logfile.
# 2. LANL MPI:
# * LANL MPI:
# The LANL MPI will print some messages like the following,
# LA-MPI: *** mpirun (1.5.10)
# LA-MPI: *** 3 process(es) on 2 host(s): 2*fln21 1*fln22
# LA-MPI: *** libmpi (1.5.10)
# LA-MPI: *** Copyright 2001-2004, ACL, Los Alamos National Laboratory
# 3. h5diff debug output:
# * h5diff debug output:
# Debug output all have prefix "h5diff debug: ".
# 4. AIX system prints messages like these when it is aborting:
# * AIX system prints messages like these when it is aborting:
# ERROR: 0031-300 Forcing all remote tasks to exit due to exit code 1 in task 0
# ERROR: 0031-250 task 4: Terminated
# ERROR: 0031-250 task 3: Terminated
# ERROR: 0031-250 task 2: Terminated
# ERROR: 0031-250 task 1: Terminated
# 5. LLNL Blue-Gene mpirun prints messages like there when it exit non-zero:
# * LLNL Blue-Gene mpirun prints messages like there when it exit non-zero:
# <Apr 12 15:01:49.075658> BE_MPI (ERROR): The error message in the job record is as follows:
# <Apr 12 15:01:49.075736> BE_MPI (ERROR): "killed by exit(1) on node 0"
STDERR_FILTER() {
@@ -91,12 +86,6 @@ STDERR_FILTER() {
cp $result_file $tmp_file
sed -e '/ BE_MPI (ERROR): /d' \
< $tmp_file > $result_file
# Filter MPE messages
if test -n "$pmode"; then
cp $result_file $tmp_file
sed -e '/^Writing logfile./d' -e '/^Finished writing logfile./d' \
< $tmp_file > $result_file
fi
# Filter LANL MPI messages
# and LLNL srun messages
# and AIX error messages

View File

@@ -1,13 +1,12 @@
#! /bin/sh
#
# Copyright by The HDF Group.
# Copyright by the Board of Trustees of the University of Illinois.
# All rights reserved.
#
# This file is part of HDF5. The full HDF5 copyright notice, including
# terms governing use, modification, and redistribution, is contained in
# the COPYING file, which can be found at the root of the source code
# distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases.
# distribution tree, or in https://www.hdfgroup.org/licenses.
# If you do not have access to either file, you may request a copy from
# help@hdfgroup.org.
#

View File

@@ -2,13 +2,12 @@
# makeTarFiles.pl
# Copyright by The HDF Group.
# Copyright by the Board of Trustees of the University of Illinois.
# All rights reserved.
#
# This file is part of HDF5. The full HDF5 copyright notice, including
# terms governing use, modification, and redistribution, is contained in
# the COPYING file, which can be found at the root of the source code
# distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases.
# distribution tree, or in https://www.hdfgroup.org/licenses.
# If you do not have access to either file, you may request a copy from
# help@hdfgroup.org.
#

View File

@@ -1,215 +0,0 @@
#!/usr/bin/perl
# makeInternalREADME.pl
#
# Copyright by The HDF Group.
# All rights reserved.
#
# This file is part of HDF4. The full HDF4 copyright notice, including
# terms governing use, modification, and redistribution, is contained in
# the files COPYING and Copyright.html. COPYING can be found at the root
# of the source code distribution tree; Copyright.html can be found at the
# root level of an installed copy of the electronic HDF4 document set and
# is linked from the top-level documents page. It can also be found at
# http://hdfgroup.org/HDF4/doc/Copyright.html. If you do not have
# access to either file, you may request a copy from help@hdfgroup.org.
#
use warnings;
use strict;
my $section2="For information on compilers and settings used to build these HDF5
libraries, please refer to:
./lib/libhdf5.settings
The contents of this directory are:
COPYING - Copyright notice
README - This file
RELEASE.txt - Detailed information regarding this release
bin/ - Directory containing HDF5 pre-compiled utilities
include/ - Directory containing HDF5 include files
lib/ - Directory containing HDF5 libraries and settings
share/ - Directory containing example code in C, C++, and
Fortran using HDF5 and HDF5 HL library APIs. The
shell scripts provided with these examples will
compile and run them, and will also test the
h5cc, h5c++, and h5fc compile scripts found
in the installed bin directory.
These binaries were built with the ZLIB and SZIP (version 2.1, Encoder
ENABLED) external libraries which are included in the lib directory for
convenience.
We also provide the ZLIB and SZIP source code on our ftp server at:
ftp://ftp.hdfgroup.org/lib-external/
The official ZLIB and SZIP pages are at:
ZLIB: http://www.zlib.net/
SZIP: http://hdfgroup.org/doc_resource/SZIP/
";
my $section3 = "If using the shared libraries, you must add the HDF5 library path
to the LD_LIBRARY_PATH variable.
";
my $section4 = "We provide scripts for compiling applications with the HDF5 libraries:
bin/h5cc - for C
bin/h5fc - for F90 (if Fortran 90 library is included with the binaries)
bin/h5c++ - for C++ (if C++ library is included with the binaries)
After you have installed the binaries to their final destination, you can use
these scripts (h5cc, h5fc, h5c++) to compile. However, you must first run
./h5redeploy in the bin directory to change site specific paths in the scripts.
You may also need to change other variables in the scripts, depending
on how things are set up on your system. Here are some of the variables
to check:
prefix - Path to the HDF5 top level installation directory
CCBASE - Name of the C compiler
CLINKERBASE - Name of the linker
LIBS - Libraries your application will link with
For further details refer to the INSTALL files in
ftp://ftp.hdfgroup.org/HDF5/current/src/unpacked/release_docs/
or in the ./release_docs/ directory of the HDF5 source code, which can be found
on the HDF Group ftp server at ftp://ftp.hdfgroup.org/HDF5/current/src/.
Please send questions, comments, and suggestions to the appropriate
contact address from http://www.hdfgroup.org/about/contact.html
";
my $indirectory = ".";
$indirectory = shift;
my $linktype = "shared";
if ($indirectory =~ /static/) {
$linktype = "static";
}
my $modestring="";
if ($indirectory =~ /32/) {
$modestring = "in 32 bit mode ";
}
my $version;
my $outfile = "$indirectory/README";
open OUTFILE, ">$outfile" or die "$!Couldn't open $outfile - check permissions for $indirectory\n";
my $hostname;
my $cmd = "grep \"HDF5 Version\" $indirectory/lib/libhdf5.settings";
$_ = `$cmd`;
#print OUTFILE $_, "\n";
s/HDF5 Version://;
s/^\s+//;
chomp;
$version = $_;
#print OUTFILE $_, "\n";
my $versionstring= "This directory contains the $linktype binary distribution of HDF5-".$version;
$cmd = "grep \"Uname information:\" $indirectory/lib/libhdf5.settings";
$_ = `$cmd`;
s/Uname information://;
s/^\s+//;
#print OUTFILE $_;
chomp;
#s/(^\w+)(\s)(\S+)/$1/;
#s/(^.*)(-)(.*)(200[7-8])(.*)(\s)(\S+)/$1 $5/;
#my $platformstring = "\nthat was compiled on:" . $_ . " ";
my $platformstring = "";
my $hostnamestring = $_;
my @hostnamestring = split / /, $hostnamestring;
#print OUTFILE "Size of hostnamestring is ", scalar @hostnamestring, "\n";
#print OUTFILE $hostnamestring[0] . "\t" . $hostnamestring[2]."\t".$hostnamestring[19]."\n";
$hostname = $hostnamestring[1];
#my $size = scalar @hostnamestring;
if ($hostname =~ /loyalty/) {
$platformstring = "\nthat was compiled " . $modestring . "on: " . $hostnamestring[0]." " . $hostnamestring[2]." " . $hostnamestring[-1] . " ";
}
elsif ($hostname =~ /freedom/) {
$platformstring = "\nthat was compiled " . $modestring . "on: " . $hostnamestring[0]." " . $hostnamestring[2]." " . $hostnamestring[-1] . " ";
} elsif ($hostname =~ /emu/) {
$platformstring = "\nthat was compiled " . $modestring . "on: " . $hostnamestring[0]." " . $hostnamestring[2] . " " . $hostnamestring[-2] . " ";
} elsif ($hostname =~ /fred/) {
$platformstring = "\nthat was compiled " . $modestring . "on: " . $hostnamestring[0]." " . $hostnamestring[2] . " " . $hostnamestring[-1] . " ";
} else {
$_ = $hostnamestring[2];
my $pos = index $_, '-';
my $os = substr $_, 0, $pos;
$platformstring = "\nthat was compiled " . $modestring . "on: " . $hostnamestring[0] . " " . $os . " " . $hostnamestring[-2] . " ";
}
my $mappingstring = "";
#no mappingstring for 1.6. Put it back for 1.8.
#$cmd = "grep \"Default API Mapping:\" $indirectory/lib/libhdf5.settings";
#$_ = `$cmd`;
#s/Default API Mapping://;
#s/^\s+//;
#chomp;
#if (/v\d+/) {
# s/v//;
# s/(\d)(\d)/$1\.$2/g;
# $mappingstring = "using the default\nAPI mapping for VERSION ".$_.".";
#
#}
print OUTFILE $versionstring;
print OUTFILE $platformstring."\n\n";
#print OUTFILE $mappingstring;
#if ($hostname eq "loyalty.hdfgroup.uiuc.edu" || $hostname eq "freedom.hdfgroup.uiuc.edu") {
# print OUTFILE " It includes the C APIs,\nbuilt using the following ";
# print OUTFILE "compilers:\n\n";
#}
#else {
if ($linktype eq "shared" && !($hostname =~ /32/)) {
print OUTFILE "\n\nIt includes the C, C++, F90 and Java APIs, built using the following\n";
} else {
print OUTFILE "\n\nIt includes the C, C++, and F90 APIs, built using the following\n";
}
print OUTFILE "compilers:\n\n";
#}
# Only the gcc compiler version is in libhdf5.settings, so for now I looked
# up the versions and hardcoded them here. We will put them in libhdf5.settings
# for the next release.
if ($indirectory =~ /gnu484/) {
print OUTFILE "\tgcc, g++, and gfortran 4.8.4\n\n";
} elsif ($hostname =~ /jam/ || $hostname =~ /koala/) {
print OUTFILE "\tgcc, g++, and gfortran 4.1.2\n\n";
} elsif ($hostname =~ /platypus/) {
print OUTFILE "\tgcc, g++, and gfortran 4.4.7\n\n";
if ($linktype eq "shared" && !($hostname =~ /32/)) {
print OUTFILE "\tjava 1.8.0_51\n\n";
}
} elsif ($hostname =~ /moohan/) {
print OUTFILE "\tgcc, g++, and gfortran 4.8.5\n\n";
if ($linktype eq "shared" && !($hostname =~ /32/)) {
print OUTFILE "\tjava 1.8.0_51\n\n";
}
} elsif ($hostname =~ /emu/) {
print OUTFILE "\tSun C and C++ 5.12, Sun Fortran 95 8.6\n\n";
} elsif ($hostname =~ /loyalty/ || $hostname =~ /freedom/) {
print OUTFILE "\tgcc, g++, and gfortran 4.6.1\n\n";
} elsif ($hostname =~ /duck/) {
print OUTFILE "\tApple clang/clang++ 3.0 from Xcode 4.6.1 and gfortran 4.8.2\n\n";
} elsif ($hostname =~ /kite/) {
print OUTFILE "\tApple clang/clang++ 5.1 from Xcode 5.0.2 and gfortran 4.8.2\n\n";
} elsif ($hostname =~ /quail/) {
print OUTFILE "\tgcc, g++ 5.1 from Xcode 5.1 and gfortran 4.8.2\n\n";
} elsif ($hostname =~ /osx1010test/) {
print OUTFILE "\tgcc, g++ 5.1 from Xcode 5.1 and gfortran 4.8.2\n\n";
}
print OUTFILE $section2;
print OUTFILE $section3;
print OUTFILE $section4;

View File

@@ -1,182 +0,0 @@
#!/usr/bin/perl
# makeOuterREADME.pl
# Copyright by The HDF Group.
# All rights reserved.
#
# This file is part of HDF4. The full HDF4 copyright notice, including
# terms governing use, modification, and redistribution, is contained in
# the files COPYING and Copyright.html. COPYING can be found at the root
# of the source code distribution tree; Copyright.html can be found at the
# root level of an installed copy of the electronic HDF4 document set and
# is linked from the top-level documents page. It can also be found at
# http://hdfgroup.org/HDF4/doc/Copyright.html. If you do not have
# access to either file, you may request a copy from help@hdfgroup.org.
#
use warnings;
use strict;
my $indirectory = ".";
$indirectory = shift;
my $outdirectory = ".";
$outdirectory = shift;
my $outsubdir = shift;
my $version;
my $outfile = "$outdirectory/$outsubdir/README";
open OUTFILE, ">$outfile";
my $hostname="";
my $cmd = "grep \"HDF5 Version\" $indirectory-static/lib/libhdf5.settings";
$_ = `$cmd`;
print OUTFILE $_, "\n";
s/HDF5 Version://;
s/^\s+//;
chomp;
$version = $_;
#print OUTFILE $_, "\n";
my $versionstring= "This directory contains the precompiled HDF5 $version binary distribution\n(include files, libraries, utilities) for";
$cmd = "grep \"Uname information:\" $indirectory-static/lib/libhdf5.settings";
$_ = `$cmd`;
s/Uname information://;
s/^\s+//;
chomp;
print "String to work with is $_\n";
my $platformstring = "";
my $hostnamestring = $_;
my @hostnamestring = split / /, $hostnamestring;
$platformstring = "$hostnamestring[0] ";
if ($indirectory =~ /jam/ || $indirectory =~ /koala/) {
$hostnamestring = $hostnamestring[2];
my $pos = index $hostnamestring, "-";
if ($pos > 0) {
$platformstring .= substr $hostnamestring, 0, $pos;
} else {
$platformstring .= $hostnamestring[2];
}
$platformstring .= " ".$hostnamestring[-3];
} elsif ($indirectory =~ /linew/) {
$platformstring .= "$hostnamestring[2] $hostnamestring[-2]";
} else {
$platformstring .= "$hostnamestring[2] $hostnamestring[-1]";
}
print OUTFILE $versionstring." ".$platformstring.":\n\n";
my $line1;
my $line3;
my $line5;
my $compilerstring="";
my $compilerstring1="";
my $compilerstring2="";
print $indirectory, "\n";
if ($indirectory =~ /ostrich/) {
# $line1 = " hdf5-$version-$outsubdir-16API.tar.gz - Includes C, C++, F90 APIs (using\n";
$line3 = " hdf5-$version-$outsubdir-static.tar.gz - Includes C, C++, F90 APIs (using";
$line5 = " hdf5-$version-$outsubdir-shared.tar.gz - Includes C, C++, F90 APIs (using";
$compilerstring = " gcc, g++, and gfortran 4.4.7)";
}
elsif ($indirectory =~ /platypus/) {
# $line1 = " hdf5-$version-$outsubdir-16API.tar.gz - Includes C, C++, F90 APIs (using\n";
$line3 = " hdf5-$version-$outsubdir-static.tar.gz - Includes C, C++, F90 APIs (using";
$compilerstring1 = " gcc, g++, and gfortran 4.4.7)\n";
if ($indirectory =~ /32/) {
$line5 = " hdf5-$version-$outsubdir-shared.tar.gz - Includes C, C++, F90 and Java APIs (using";
$compilerstring2 = " gcc, g++, and gfortran 4.4.7)\n";
} else {
$line5 = " hdf5-$version-$outsubdir-shared.tar.gz - Includes C, C++, F90 and Java APIs (using";
$compilerstring2 = " gcc, g++, and gfortran 4.4.7 and java 1.8.0_51)\n";
}
}
elsif ($indirectory =~ /moohan/) {
# $line1 = " hdf5-$version-$outsubdir-16API.tar.gz - Includes C, C++, F90 APIs (using\n";
$line3 = " hdf5-$version-$outsubdir-static.tar.gz - Includes C, C++, F90 APIs (using";
$compilerstring1 = " gcc, g++, and gfortran 4.8.5)\n";
if ($indirectory =~ /32/) {
$line5 = " hdf5-$version-$outsubdir-shared.tar.gz - Includes C, C++, F90 and Java APIs (using";
$compilerstring2 = " gcc, g++, and gfortran 4.4.7)\n";
} else {
$line5 = " hdf5-$version-$outsubdir-shared.tar.gz - Includes C, C++, F90 and Java APIs (using";
$compilerstring2 = " gcc, g++, and gfortran 4.8.5 and java 1.8.0_51)\n";
}
}
elsif ($indirectory =~ /emu/) {
# $line1 = " hdf5-$version-$outsubdir-16API.tar.gz - Includes C, C++, F90 APIs (using\n";
$line3 = " hdf5-$version-$outsubdir-static.tar.gz - Includes C, C++, F90 APIs (using";
$line5 = " hdf5-$version-$outsubdir-shared.tar.gz - Includes C, C++, F90 APIs (using";
$compilerstring = " Sun C and C++ 5.12, Sun Fortran 95 8.6)\n";
}
elsif ($indirectory =~ /kite/) {
$line3 = " hfd5-$version-$outsubdir-static.tar.gz - Includes C, C++, F90 APIs (using";
$line5 = " hfd5-$version-$outsubdir-shared.tar.gz - Includes C, C++, F90 APIs (using";
$compilerstring = " Apple clang/clang++ 5.1 from Xcode 5.0.2,
gfortran 4.8.2)\n";
}
elsif ($indirectory =~ /quail/) {
$line3 = " hfd5-$version-$outsubdir-static.tar.gz - Includes C, C++, F90 APIs (using";
$line5 = " hfd5-$version-$outsubdir-shared.tar.gz - Includes C, C++, F90 APIs (using";
$compilerstring = " Apple clang/clang++ 6.0 from Xcode 5.1,
gfortran 4.9.2)\n";
}
elsif ($indirectory =~ /osx1010test/) {
$line3 = " hdf5-$version-$outsubdir-static.tar.gz - Includes C, C++, F90 APIs (using";
$line5 = " hdf5-$version-$outsubdir-shared.tar.gz - Includes C, C++, F90 APIs (using";
$compilerstring = " Apple clang/clang++ 6.1 from Xcode 6.1,
gfortran 4.9.2)\n";
}
elsif ($indirectory =~ /osx1011test/) {
$line3 = " hdf5-$version-$outsubdir-static.tar.gz - Includes C, C++, F90 APIs (using";
$line5 = " hdf5-$version-$outsubdir-shared.tar.gz - Includes C, C++, F90 APIs (using";
$compilerstring = " Apple clang/clang++ 7.0.2 from Xcode 7.0,
gfortran 5.2.0)\n";
}
print OUTFILE $line3;
print OUTFILE $compilerstring1."\n";
if ($line5 ne "") {
print OUTFILE $line5;
print OUTFILE $compilerstring2."\n";
}
#elsif ($indirectory =~ /-16API/) {
# print OUTFILE $line1;
# print OUTFILE $compilerstring;
# print OUTFILE " USES THE VERSION 1.6 DEFAULT API\n";
# print OUTFILE " MAPPING.\n\n";
#}
print OUTFILE " utilities/ - Directory containing the compiled HDF5 utilities.\n";
print OUTFILE " These utilities are STATICALLY linked and will run as is.\n\n";
#print OUTFILE " The tools can be downloaded separately, or ALL in one\n";
#print OUTFILE " compressed file (5-$version-$outsubdir-static-util.tar.gz).\n\n";
print OUTFILE "\n";
print OUTFILE "To obtain the HDF5 distribution, 'unzip' and 'untar' the distribution\n";
print OUTFILE "file:\n\n";
print OUTFILE " gzip -cd <gz file from above> | tar xvf -\n";
#$cmd = "grep \"Configured by:\" $indirectory/$key-static/lib/libhdf5.settings";
#$_ = `$cmd`;
#s/Configured by://;
#s/^\s+//;
#print OUTFILE $_;
#chomp;
#my $hostnamestring = $_;
#s/(^\w+)(\s)(\S+)/$1/;
#s/(^.*)(-)(.*)(200[7-8])(.*)(\s)(\S+)/$1 $5/;
#my $platformstring = $_ . ":\n\n";
#my @hostnamestring = split /@/, $hostnamestring;
#print "Size of hostnamestring is ", scalar @hostnamestring, "\n";
#print $hostnamestring[0] . "\t" . $hostnamestring[2]."\t".$hostnamestring[19]."\n";
#my $platformstring = $hostnamestring[1].":\n\n";
#$hostnamestring = $hostnamestring[1];
#my $pos = index $hostnamestring, ".";
#if ($pos > 0) {
# @hostnamestring = split /\./, $hostnamestring;
# $platformstring = $hostnamestring[0].":\n\n";
#}

View File

@@ -1,36 +1,17 @@
#!/bin/sh
#
# Copyright by The HDF Group.
# Copyright by the Board of Trustees of the University of Illinois.
# All rights reserved.
#
# This file is part of HDF5. The full HDF5 copyright notice, including
# terms governing use, modification, and redistribution, is contained in
# the COPYING file, which can be found at the root of the source code
# distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases.
# distribution tree, or in https://www.hdfgroup.org/licenses.
# If you do not have access to either file, you may request a copy from
# help@hdfgroup.org.
#
# Make a release of hdf5.
#
# Programmer: Robb Matzke
# Creation date: on or before 1998-01-29.
#
# Modifications
# Robb Matzke, 1999-07-16
# The SunOS 5.6 sed *must* have slashes as delimiters. I changed things like
# `sed s+/CVS++' to `sed 's/\/CVS//'
#
# Albert Cheng, 1999-10-26
# Moved the MANIFEST checking to a separate command file so that
# it can be invoked individually.
#
# Albert Cheng, 2004-08-14
# Added the --private option.
#
# James Laird, 2005-09-07
# Added the md5 method.
# Function definitions
#
@@ -38,49 +19,56 @@
USAGE()
{
cat << EOF
Usage: $0 -d <dir> [--docver BRANCHNAME] [-h] [--nocheck] [--private] <methods> ...
-d DIR The name of the directory where the releas(es) should be
Usage: $0 -d <dir> [--docver BRANCHNAME] [-h] [--private] <methods> ...
-d DIR The name of the directory where the release(s) should be
placed.
--docver BRANCHNAME This is added for 1.8 and beyond to get the correct
version of documentation files from the hdf5docs
repository. BRANCHNAME for v1.8 should be hdf5_1_8.
-h print the help page.
--nocheck Ignore errors in MANIFEST file.
--private Make a private release with today's date in version information.
--private Make a private release with today's date in version information.
This must be run at the top level of the source directory.
The other command-line options are the names of the programs to use
for compressing the resulting tar archive (if none are given then
"tar" is assumed):
tar -- use tar and don't do any compressing.
gzip -- use gzip with "-9" and append ".gz" to the output name.
cmake-tgz -- create a tar file using the gzip default level with a build-unix.sh
tar -- use tar and don't do any compressing.
gzip -- use gzip with "-9" and append ".gz" to the output name.
bzip2 -- use bzip2 with "-9" and append ".bz2" to the output name.
zip -- convert all text files to DOS style and form a zip file for Windows use.
cmake-tgz -- create a tar file using the gzip default level with a build-unix.sh
command file and all other CMake files needed to build HDF5 source
using CMake on unix machines.
bzip2 -- use bzip2 with "-9" and append ".bz2" to the output name.
zip -- convert all text files to DOS style and form a zip file for Windows use.
cmake-zip -- convert all text files to DOS style and create a zip file inluding cmake
scripts and .bat files to build HDF5 source using CMake on Windows.
cmake-zip -- convert all text files to DOS style and create a zip file including cmake
scripts and .bat files to build HDF5 source using CMake on Windows.
hpc-cmake-tgz
-- create a tar file using the gzip default level with a build-unix.sh
command file and all other CMake files needed to build HDF5 source
using CMake on unix machines, with HDF5options.cmake files for serial
and parallel builds on machines requiring batch jobs to run tests.
The default is for parallel build, with serial only build by changing
the HDF5options.cmake symlink to ser-HDF5options.cmake. More
information is available in the README_HPC file.
doc -- produce the latest doc tree in addition to the archive.
An md5 checksum is produced for each archive created and stored in the md5 file.
A sha256 checksum is produced for each archive created and stored in the sha256 file.
Examples:
$ bin/release -d /tmp
/tmp/hdf5-1.8.13-RELEASE.txt
/tmp/hdf5-1.8.13.md5
/tmp/hdf5-1.8.13.sha256
/tmp/hdf5-1.8.13.tar
$ bin/release -d /tmp gzip
/tmp/hdf5-1.8.13-RELEASE.txt
/tmp/hdf5-1.8.13.md5
/tmp/hdf5-1.8.13.sha256
/tmp/hdf5-1.8.13.tar.gz
$ bin/release -d /tmp tar gzip zip
/tmp/hdf5-1.8.13-RELEASE.txt
/tmp/hdf5-1.8.13.md5
/tmp/hdf5-1.8.13.sha256
/tmp/hdf5-1.8.13.tar
/tmp/hdf5-1.8.13.tar.gz
/tmp/hdf5-1.8.13.tar.zip
@@ -92,11 +80,6 @@ EOF
# Function name: tar2zip
# Convert the release tarball to a Windows zipball.
#
# Programmer: Albert Cheng
# Creation date: 2014-04-23
#
# Modifications
#
# Steps:
# 1. untar the tarball in a temporary directory;
# Note: do this in a temporary directory to avoid changing
@@ -114,8 +97,8 @@ EOF
tar2zip()
{
if [ $# -ne 3 ]; then
echo "usage: tar2zip <tarfilename> <zipfilename>"
return 1
echo "usage: tar2zip <tarfilename> <zipfilename>"
return 1
fi
ztmpdir=/tmp/ztmpdir$$
mkdir -p $ztmpdir
@@ -127,23 +110,23 @@ tar2zip()
(cd $ztmpdir; tar xf -) < $tarfile
# sanity check
if [ ! -d $ztmpdir/$version ]; then
echo "untar did not create $ztmpdir/$version source dir"
# cleanup
rm -rf $ztmpdir
return 1
echo "untar did not create $ztmpdir/$version source dir"
# cleanup
rm -rf $ztmpdir
return 1
fi
# step 2: convert text files
# There maybe a simpler way to do this.
# options used in unix2dos:
# -k Keep the date stamp
# -k Keep the date stamp
# -q quiet mode
# grep redirect output to /dev/null because -q or -s are not portable.
find $ztmpdir/$version | \
while read inf; do \
if file $inf | grep "$inf\: .*text" > /dev/null 2>&1 ; then \
unix2dos -q -k $inf; \
fi\
done
while read inf; do \
if file $inf | grep "$inf\: .*text" > /dev/null 2>&1 ; then \
unix2dos -q -k $inf; \
fi\
done
# step 3: make zipball
# -9 maximum compression
# -y Store symbolic links as such in the zip archive
@@ -159,24 +142,19 @@ tar2zip()
# Function name: tar2cmakezip
# Convert the release tarball to a Windows zipball with files to run CMake build.
#
# Programmer: Larry Knox
# Creation date: 2017-02-20
#
# Modifications
#
# Steps:
# 1. untar the tarball in a temporary directory;
# Note: do this in a temporary directory to avoid changing
# the original source directory which may be around.
# 2. add build-unix.sh script.
# 3. add SZIP.tar.gz, ZLib.tar.gz and cmake files to top level directory.
# 3. add LIBAEC.tar.gz, ZLib.tar.gz and cmake files to top level directory.
# 4. create gzipped tar file with these contents:
# build-unix.sh script
# hdf5-<version> source code directory extracted from tar file
# CTestScript.cmake cmake file copied from <hdf5 source code>/config/cmake/scripts
# HDF5config.cmake cmake file copied from <hdf5 source code>/config/cmake/scripts
# HDF5options.cmake cmake file copied from <hdf5 source code>/config/cmake/scripts
# SZip.tar.gz copied from /mnt/scr1/pre-release/hdf5/CMake
# LIBAEC.tar.gz copied from /mnt/scr1/pre-release/hdf5/CMake
# ZLib.tar.gz copied from /mnt/scr1/pre-release/hdf5/CMake
@@ -189,13 +167,13 @@ tar2zip()
#
# need function to create another temporary directory, extract the
# $tmpdir/$HDF5_VERS.tar into it, create build-VS*.bat files,
# add CTestScript.cmake, HDF5config.cmake, SZIP.tar.gz
# add CTestScript.cmake, HDF5config.cmake, LIBAEC.tar.gz
# ZLib.tar.gz, HDF5 examples, and then zip it.
tar2cmakezip()
{
if [ $# -ne 3 ]; then
echo "usage: tar2cmakezip <tarfilename> <zipfilename>"
return 1
echo "usage: tar2cmakezip <tarfilename> <zipfilename>"
return 1
fi
cmziptmpdir=/tmp/cmziptmpdir$$
cmziptmpsubdir=$cmziptmpdir/CMake-$HDF5_VERS
@@ -208,10 +186,10 @@ tar2cmakezip()
(cd $cmziptmpsubdir; tar xf -) < $tarfile
# sanity check
if [ ! -d $cmziptmpsubdir/$version ]; then
echo "untar did not create $cmziptmpsubdir/$version source dir"
# cleanup
rm -rf $cmziptmpdir
return 1
echo "untar did not create $cmziptmpsubdir/$version source dir"
# cleanup
rm -rf $cmziptmpdir
return 1
fi
# step 2: add batch file for building CMake on window
@@ -221,11 +199,14 @@ tar2cmakezip()
(cd $cmziptmpsubdir; echo "ctest -S HDF5config.cmake,BUILD_GENERATOR=VS201564 -C Release -V -O hdf5.log" > build-VS2015-64.bat; chmod 755 build-VS2015-64.bat)
(cd $cmziptmpsubdir; echo "ctest -S HDF5config.cmake,BUILD_GENERATOR=VS2017 -C Release -V -O hdf5.log" > build-VS2017-32.bat; chmod 755 build-VS2017-32.bat)
(cd $cmziptmpsubdir; echo "ctest -S HDF5config.cmake,BUILD_GENERATOR=VS201764 -C Release -V -O hdf5.log" > build-VS2017-64.bat; chmod 755 build-VS2017-64.bat)
(cd $cmziptmpsubdir; echo "ctest -S HDF5config.cmake,BUILD_GENERATOR=VS2019 -C Release -V -O hdf5.log" > build-VS2019-32.bat; chmod 755 build-VS2019-32.bat)
(cd $cmziptmpsubdir; echo "ctest -S HDF5config.cmake,BUILD_GENERATOR=VS201964 -C Release -V -O hdf5.log" > build-VS2019-64.bat; chmod 755 build-VS2019-64.bat)
# step 3: add SZIP.tar.gz, ZLib.tar.gz and cmake files
cp /mnt/scr1/pre-release/hdf5/CMake/SZip.tar.gz $cmziptmpsubdir
# step 3: add LIBAEC.tar.gz, ZLib.tar.gz and cmake files
cp /mnt/scr1/pre-release/hdf5/CMake/LIBAEC.tar.gz $cmziptmpsubdir
cp /mnt/scr1/pre-release/hdf5/CMake/ZLib.tar.gz $cmziptmpsubdir
cp /mnt/scr1/pre-release/hdf5/CMake/HDF5Examples-1.10.8-Source.tar.gz $cmziptmpsubdir
cp /mnt/scr1/pre-release/hdf5/CMake/HDF5Examples-2.0.2-Source.zip $cmziptmpsubdir
cp /mnt/scr1/pre-release/hdf5/CMake/hdf5_plugins-master.zip $cmziptmpsubdir
cp $cmziptmpsubdir/$version/config/cmake/scripts/CTestScript.cmake $cmziptmpsubdir
cp $cmziptmpsubdir/$version/config/cmake/scripts/HDF5config.cmake $cmziptmpsubdir
cp $cmziptmpsubdir/$version/config/cmake/scripts/HDF5options.cmake $cmziptmpsubdir
@@ -233,15 +214,15 @@ tar2cmakezip()
# step 4: convert text files
# There maybe a simpler way to do this.
# options used in unix2dos:
# -k Keep the date stamp
# -k Keep the date stamp
# -q quiet mode
# grep redirect output to /dev/null because -q or -s are not portable.
find $cmziptmpsubdir/$version | \
while read inf; do \
if file $inf | grep "$inf\: .*text" > /dev/null 2>&1 ; then \
unix2dos -q -k $inf; \
fi\
done
while read inf; do \
if file $inf | grep "$inf\: .*text" > /dev/null 2>&1 ; then \
unix2dos -q -k $inf; \
fi\
done
# step 3: make zipball
# -9 maximum compression
@@ -256,26 +237,22 @@ tar2cmakezip()
}
# Function name: tar2cmaketgz
# Convert the release tarball to a Windows zipball with files to run CMake build.
# Convert the release tarball to a gzipped tar file with files to run CMake build.
#
# Programmer: Larry Knox
# Creation date: 2017-02-20
#
# Modifications
#
# Steps:
# 1. untar the tarball in a temporary directory;
# Note: do this in a temporary directory to avoid changing
# the original source directory which may be around.
# 2. add build-unix.sh script.
# 3. add SZIP.tar.gz, ZLib.tar.gz and cmake files to top level directory.
# 3. add LIBAEC.tar.gz, ZLib.tar.gz and cmake files to top level directory.
# 4. create gzipped tar file with these contents:
# build-unix.sh script
# hdf5-<version> source code directory extracted from tar file
# CTestScript.cmake cmake file copied from <hdf5 source code>/config/cmake/scripts
# HDF5config.cmake cmake file copied from <hdf5 source code>/config/cmake/scripts
# HDF5options.cmake cmake file copied from <hdf5 source code>/config/cmake/scripts
# SZip.tar.gz copied from /mnt/scr1/pre-release/hdf5/CMake
# LIBAEC.tar.gz copied from /mnt/scr1/pre-release/hdf5/CMake
# ZLib.tar.gz copied from /mnt/scr1/pre-release/hdf5/CMake
@@ -288,13 +265,13 @@ tar2cmakezip()
#
# need function to create another temporary directory, extract the
# $tmpdir/$HDF5_VERS.tar into it, create build-unix.sh,
# add CTestScript.cmake, HDF5config.cmake, SZIP.tar.gz
# add CTestScript.cmake, HDF5config.cmake, LIBAEC.tar.gz
# ZLib.tar.gz, HDF5 examples, and then tar.gz it.
tar2cmaketgz()
{
if [ $# -ne 3 ]; then
echo "usage: tar2cmaketgz <tarfilename> <tgzfilename>"
return 1
echo "usage: tar2cmaketgz <tarfilename> <tgzfilename>"
return 1
fi
cmgztmpdir=/tmp/cmgztmpdir$$
cmgztmpsubdir=$cmgztmpdir/CMake-$HDF5_VERS
@@ -307,25 +284,109 @@ tar2cmaketgz()
(cd $cmgztmpsubdir; tar xf -) < $tarfile
# sanity check
if [ ! -d $cmgztmpsubdir/$version ]; then
echo "untar did not create $cmgztmpsubdir/$version source dir"
# cleanup
rm -rf $cmgztmpdir
return 1
echo "untar did not create $cmgztmpsubdir/$version source dir"
# cleanup
rm -rf $cmgztmpdir
return 1
fi
# step 2: add build-unix.sh script
(cd $cmgztmpsubdir; echo "ctest -S HDF5config.cmake,BUILD_GENERATOR=Unix -C Release -V -O hdf5.log" > build-unix.sh; chmod 755 build-unix.sh)
# step 3: add SZIP.tar.gz, ZLib.tar.gz and cmake files
cp /mnt/scr1/pre-release/hdf5/CMake/SZip.tar.gz $cmgztmpsubdir
# step 3: add LIBAEC.tar.gz, ZLib.tar.gz and cmake files
cp /mnt/scr1/pre-release/hdf5/CMake/LIBAEC.tar.gz $cmgztmpsubdir
cp /mnt/scr1/pre-release/hdf5/CMake/ZLib.tar.gz $cmgztmpsubdir
cp /mnt/scr1/pre-release/hdf5/CMake/HDF5Examples-1.10.8-Source.tar.gz $cmgztmpsubdir
cp /mnt/scr1/pre-release/hdf5/CMake/HDF5Examples-2.0.2-Source.tar.gz $cmgztmpsubdir
cp /mnt/scr1/pre-release/hdf5/CMake/hdf5_plugins-master.tar.gz $cmgztmpsubdir
cp $cmgztmpsubdir/$version/config/cmake/scripts/CTestScript.cmake $cmgztmpsubdir
cp $cmgztmpsubdir/$version/config/cmake/scripts/HDF5config.cmake $cmgztmpsubdir
cp $cmgztmpsubdir/$version/config/cmake/scripts/HDF5options.cmake $cmgztmpsubdir
tar czf $DEST/CMake-$HDF5_VERS.tar.gz -C $cmgztmpdir . || exit 1
tar czf $DEST/CMake-$HDF5_VERS.tar.gz -C $cmgztmpdir . || exit 1
# cleanup
rm -rf $cmgztmpdir
}
# Function name: tar2hpccmaketgz
# Convert the release tarball to a gzipped tarfile with files to run CMake build
# and HDF5options.cmake files for parallel or serial only builds where build
# tests are run on compute nodes using batch scripts.
#
# Steps:
# 1. untar the tarball in a temporary directory;
# Note: do this in a temporary directory to avoid changing
# the original source directory which may be around.
# 2. add build-unix.sh script.
# 3. add LIBAEC.tar.gz, ZLib.tar.gz and cmake files to top level directory.
# 4. create gzipped tar file with these contents:
# build-unix.sh script
# hdf5-<version> source code directory extracted from tar file
# CTestScript.cmake cmake file copied from <hdf5 source code>/config/cmake/scripts
# HDF5config.cmake cmake file copied from <hdf5 source code>/config/cmake/scripts
# HDF5options.cmake cmake file copied from <hdf5 source code>/config/cmake/scripts
# LIBAEC.tar.gz copied from /mnt/scr1/pre-release/hdf5/CMake
# ZLib.tar.gz copied from /mnt/scr1/pre-release/hdf5/CMake
#
# 5. For HPC-CMake tgz file the following are also needed in the top-level directory:
# README_HPC copied from release_docs
# ser-HDF5options.cmake copied from <hdf5 source code>/config/cmake/scripts/HPC
# par-HDF5options.cmake copied from <hdf5 source code>/config/cmake/scripts/HPC
# HDF5options.cmake symlink to par-HDF5options.cmake
#
# Parameters:
# $1 version
# $2 release tarball
# $3 output zipball file name
#
# Returns 0 if successful; 1 otherwise
#
# need function to create another temporary directory, extract the
# $tmpdir/$HDF5_VERS.tar into it, create build-unix.sh,
# add CTestScript.cmake, HDF5config.cmake, LIBAEC.tar.gz
# ZLib.tar.gz, HDF5 examples, and then tar.gz it.
tar2hpccmaketgz()
{
if [ $# -ne 3 ]; then
echo "usage: tar2hpccmaketgz <tarfilename> <tgzfilename>"
return 1
fi
cmgztmpdir=/tmp/cmgztmpdir$$
cmgztmpsubdir=$cmgztmpdir/HPC-CMake-$HDF5_VERS
mkdir -p $cmgztmpsubdir
version=$1
tarfile=$2
tgzfile=$3
# step 1: untar tarball in cmgztmpdir
(cd $cmgztmpsubdir; tar xf -) < $tarfile
# sanity check
if [ ! -d $cmgztmpsubdir/$version ]; then
echo "untar did not create $cmgztmpsubdir/$version source dir"
# cleanup
rm -rf $cmgztmpdir
return 1
fi
# step 2: add build-unix.sh script
(cd $cmgztmpsubdir; echo "ctest -S HDF5config.cmake,BUILD_GENERATOR=Unix -C Release -V -O hdf5.log" > build-unix.sh; chmod 755 build-unix.sh)
# step 3: add LIBAEC.tar.gz, ZLib.tar.gz and cmake files
cp /mnt/scr1/pre-release/hdf5/CMake/LIBAEC.tar.gz $cmgztmpsubdir
cp /mnt/scr1/pre-release/hdf5/CMake/ZLib.tar.gz $cmgztmpsubdir
cp /mnt/scr1/pre-release/hdf5/CMake/HDF5Examples-2.0.2-Source.tar.gz $cmgztmpsubdir
cp /mnt/scr1/pre-release/hdf5/CMake/hdf5_plugins-master.tar.gz $cmgztmpsubdir
cp $cmgztmpsubdir/$version/config/cmake/scripts/CTestScript.cmake $cmgztmpsubdir
cp $cmgztmpsubdir/$version/config/cmake/scripts/HDF5config.cmake $cmgztmpsubdir
cp $cmgztmpsubdir/$version/release_docs/README_HPC $cmgztmpsubdir
cp $cmgztmpsubdir/$version/config/cmake/scripts/HPC/ser-HDF5options.cmake $cmgztmpsubdir
cp $cmgztmpsubdir/$version/config/cmake/scripts/HPC/par-HDF5options.cmake $cmgztmpsubdir
(cd $cmgztmpsubdir; ln -s par-HDF5options.cmake HDF5options.cmake)
tar czf $DEST/HPC-CMake-$HDF5_VERS.tar.gz -C $cmgztmpdir . || exit 1
# cleanup
rm -rf $cmgztmpdir
}
@@ -343,11 +404,10 @@ VERS=`perl bin/h5vers`
VERS_OLD=
test "$VERS" || exit 1
verbose=yes
check=yes
release_date=`date +%F`
today=`date +%Y%m%d`
pmode='no'
tmpdir="../#release_tmp.$$" # tmp work directory
tmpdir="../#release_tmp.$$" # tmp work directory
DOC_URL=https://git@bitbucket.hdfgroup.org/scm/hdffv/hdf5doc.git
CPPLUS_RM_NAME=cpplus_RM
MAINT_MODE_ENABLED=""
@@ -364,11 +424,11 @@ fi
RESTORE_VERSION()
{
if [ X-${VERS_OLD} != X- ]; then
echo restoring version information back to $VERS_OLD
rm -f config/lt_vers.am
cp $tmpdir/lt_vers.am config/lt_vers.am
bin/h5vers -s $VERS_OLD
VERS_OLD=
echo restoring version information back to $VERS_OLD
rm -f config/lt_vers.am
cp $tmpdir/lt_vers.am config/lt_vers.am
bin/h5vers -s $VERS_OLD
VERS_OLD=
fi
}
@@ -378,32 +438,29 @@ while [ -n "$1" ]; do
arg=$1
shift
case "$arg" in
-d)
DEST=$1
shift
;;
--nocheck)
check=no
;;
-h)
USAGE
exit 0
;;
--private)
pmode=yes
;;
-d)
DEST=$1
shift
;;
-h)
USAGE
exit 0
;;
--private)
pmode=yes
;;
--docver)
DOCVERSION=$1
shift
;;
-*)
echo "Unknown switch: $arg" 1>&2
USAGE
exit 1
;;
*)
methods="$methods $arg"
;;
-*)
echo "Unknown switch: $arg" 1>&2
USAGE
exit 1
;;
*)
methods="$methods $arg"
;;
esac
done
@@ -412,7 +469,7 @@ if [ "X$methods" = "X" ]; then
methods="tar"
fi
# Create the temporay work directory.
# Create the temporary work directory.
if mkdir $tmpdir; then
echo "temporary work directory for release. "\
"Can be deleted after release completes." > $tmpdir/README
@@ -446,35 +503,17 @@ if [ ! -d $DEST ]; then
exit 1
fi
# Check the validity of the MANIFEST file.
bin/chkmanifest || fail=yes
if [ "X$fail" = "Xyes" ]; then
if [ $check = yes ]; then
echo ""
echo "Note! If you are running bin/release in a development branch"
echo "later than v 1.8 the MANIFEST check is expected to fail when"
echo "autogen.sh has not been run successfully. Either run autogen.sh "
echo "with /usr/hdf/bin/AUTOTOOLS at the beginning of PATH or add the"
echo "--nocheck argument to the bin/release command."
exit 1
else
echo "Continuing anyway..."
fi
fi
# Create a manifest that contains only files for distribution.
MANIFEST=$tmpdir/H5_MANIFEST
grep '^\.' MANIFEST | grep -v _DO_NOT_DISTRIBUTE_ >$MANIFEST
# Prepare the source tree for a release.
# Create a symlink to the source so files in the tarball have the prefix
# we want (gnu's --transform isn't portable)
ln -s `pwd` $tmpdir/$HDF5_VERS || exit 1
# Save a backup copy of Makefile if exists.
test -f Makefile && mv Makefile $tmpdir/Makefile.x
cp -p Makefile.dist Makefile
# Update README.txt and release_docs/RELEASE.txt with release information in
# Update README.md and release_docs/RELEASE.txt with release information in
# line 1.
for f in README.txt release_docs/RELEASE.txt; do
for f in README.md release_docs/RELEASE.txt; do
echo "HDF5 version $VERS released on $release_date" >$f.x
sed -e 1d $f >>$f.x
mv $f.x $f
@@ -482,74 +521,75 @@ for f in README.txt release_docs/RELEASE.txt; do
chmod 644 $f
done
# trunk is different than branches.
# develop is different than branches.
if [ "${DOCVERSION}" ]; then
DOC_URL="$DOC_URL -b ${DOCVERSION}"
fi
# Create the tar file
test "$verbose" && echo " Running tar..." 1>&2
( \
cd $tmpdir; \
tar cf $HDF5_VERS.tar $HDF5_VERS/Makefile \
`sed 's/^\.\//hdf5-'$VERS'\//' $MANIFEST` || exit 1 \
)
(cd "$tmpdir" && exec tar -ch --exclude-vcs -f "$HDF5_VERS.tar" "./$HDF5_VERS" || exit 1 )
# Compress
MD5file=$HDF5_VERS.md5
cp /dev/null $DEST/$MD5file
SHA256=$HDF5_VERS.sha256
cp /dev/null $DEST/$SHA256
for comp in $methods; do
case $comp in
tar)
cp -p $tmpdir/$HDF5_VERS.tar $DEST/$HDF5_VERS.tar
(cd $DEST; md5sum $HDF5_VERS.tar >> $MD5file)
;;
gzip)
test "$verbose" && echo " Running gzip..." 1>&2
gzip -9 <$tmpdir/$HDF5_VERS.tar >$DEST/$HDF5_VERS.tar.gz
(cd $DEST; md5sum $HDF5_VERS.tar.gz >> $MD5file)
;;
cmake-tgz)
test "$verbose" && echo " Creating CMake tar.gz file..." 1>&2
tar2cmaketgz $HDF5_VERS $tmpdir/$HDF5_VERS.tar $DEST/CMake-$HDF5_VERS.tar.gz 1>&2
(cd $DEST; md5sum CMake-$HDF5_VERS.tar.gz >> $MD5file)
tar)
cp -p $tmpdir/$HDF5_VERS.tar $DEST/$HDF5_VERS.tar
(cd $DEST; sha256sum $HDF5_VERS.tar >> $SHA256)
;;
gzip)
test "$verbose" && echo " Running gzip..." 1>&2
gzip -9 <$tmpdir/$HDF5_VERS.tar >$DEST/$HDF5_VERS.tar.gz
(cd $DEST; sha256sum $HDF5_VERS.tar.gz >> $SHA256)
;;
cmake-tgz)
test "$verbose" && echo " Creating CMake tar.gz file..." 1>&2
tar2cmaketgz $HDF5_VERS $tmpdir/$HDF5_VERS.tar $DEST/CMake-$HDF5_VERS.tar.gz 1>&2
(cd $DEST; sha256sum CMake-$HDF5_VERS.tar.gz >> $SHA256)
;;
hpc-cmake-tgz)
test "$verbose" && echo " Creating HPC-CMake tar.gz file..." 1>&2
tar2hpccmaketgz $HDF5_VERS $tmpdir/$HDF5_VERS.tar $DEST/HPC-CMake-$HDF5_VERS.tar.gz 1>&2
(cd $DEST; sha256sum HPC-CMake-$HDF5_VERS.tar.gz >> $SHA256)
;;
bzip2)
test "$verbose" && echo " Running bzip2..." 1>&2
bzip2 -9 <$tmpdir/$HDF5_VERS.tar >$DEST/$HDF5_VERS.tar.bz2
(cd $DEST; sha256sum $HDF5_VERS.tar.bz2 >> $SHA256)
;;
zip)
test "$verbose" && echo " Creating zip ball..." 1>&2
tar2zip $HDF5_VERS $tmpdir/$HDF5_VERS.tar $DEST/$HDF5_VERS.zip 1>&2
(cd $DEST; sha256sum $HDF5_VERS.zip >> $SHA256)
;;
bzip2)
test "$verbose" && echo " Running bzip2..." 1>&2
bzip2 -9 <$tmpdir/$HDF5_VERS.tar >$DEST/$HDF5_VERS.tar.bz2
(cd $DEST; md5sum $HDF5_VERS.tar.bz2 >> $MD5file)
;;
zip)
test "$verbose" && echo " Creating zip ball..." 1>&2
tar2zip $HDF5_VERS $tmpdir/$HDF5_VERS.tar $DEST/$HDF5_VERS.zip 1>&2
(cd $DEST; md5sum $HDF5_VERS.zip >> $MD5file)
;;
cmake-zip)
test "$verbose" && echo " Creating CMake-zip ball..." 1>&2
tar2cmakezip $HDF5_VERS $tmpdir/$HDF5_VERS.tar $DEST/CMake-$HDF5_VERS.zip 1>&2
(cd $DEST; md5sum CMake-$HDF5_VERS.zip >> $MD5file)
(cd $DEST; sha256sum CMake-$HDF5_VERS.zip >> $SHA256)
;;
doc)
doc)
if [ "${DOCVERSION}" = "" ]; then
DOCVERSION=master
fi
test "$verbose" && echo " Creating docs..." 1>&2
# Check out docs from git repo
(cd $tmpdir; git clone -q $DOC_URL ${DOCVERSION} > /dev/null) || exit 1
test "$verbose" && echo " Creating docs..." 1>&2
# Check out docs from git repo
(cd $tmpdir; git clone -q $DOC_URL ${DOCVERSION} > /dev/null) || exit 1
# Create doxygen C++ RM
(cd c++/src && doxygen cpp_doc_config > /dev/null ) || exit 1
# Replace version of C++ RM with just-created version
rm -rf $tmpdir/${DOCVERSION}/html/$CPPLUS_RM_NAME || exit 1
mv c++/src/$CPPLUS_RM_NAME $tmpdir/${DOCVERSION}/html/$CPPLUS_RM_NAME || exit 1
(cd c++/src && doxygen cpp_doc_config > /dev/null ) || exit 1
# Replace version of C++ RM with just-created version
rm -rf $tmpdir/${DOCVERSION}/html/$CPPLUS_RM_NAME || exit 1
mv c++/src/$CPPLUS_RM_NAME $tmpdir/${DOCVERSION}/html/$CPPLUS_RM_NAME || exit 1
# Compress the docs and move them to the release area
mv $tmpdir/${DOCVERSION} $tmpdir/${HDF5_VERS}_docs || exit 1
(cd $tmpdir && tar cf ${HDF5_VERS}_docs.tar ${HDF5_VERS}_docs) || exit 1
mv $tmpdir/${HDF5_VERS}_docs.tar $DEST || exit 1
;;
*)
echo "***Error*** Unknown method $comp"
exit 1
;;
mv $tmpdir/${DOCVERSION} $tmpdir/${HDF5_VERS}_docs || exit 1
(cd $tmpdir && tar cf ${HDF5_VERS}_docs.tar ${HDF5_VERS}_docs) || exit 1
mv $tmpdir/${HDF5_VERS}_docs.tar $DEST || exit 1
;;
*)
echo "***Error*** Unknown method $comp"
exit 1
;;
esac
done
@@ -575,4 +615,6 @@ fi
# Remove temporary things
rm -rf $tmpdir
echo "DONE"
exit 0

View File

@@ -1,12 +1,12 @@
#!/bin/sh
#
# Copyright by The HDF Group.
# All rights reserved.
#
# This file is part of HDF5. The full HDF5 copyright notice, including
# terms governing use, modification, and redistribution, is contained in
# Copyright by The HDF Group.
# All rights reserved.
#
# This file is part of HDF5. The full HDF5 copyright notice, including
# terms governing use, modification, and redistribution, is contained in
# the COPYING file, which can be found at the root of the source code
# distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases.
# distribution tree, or in https://www.hdfgroup.org/licenses.
# If you do not have access to either file, you may request a copy from
# help@hdfgroup.org.
#
@@ -48,6 +48,9 @@ rm -f bin/missing
rm -f bin/test-driver
rm -f bin/depcomp
echo "Remove files generated by autoheader"
rm -f src/H5config.h.in
echo "Remove files generated by bin/make_err"
rm -f src/H5Epubgen.h
rm -f src/H5Einit.h

View File

@@ -1,16 +1,16 @@
#!/usr/bin/perl -w
#!/usr/bin/env perl
require 5.003;
use warnings;
$indent=4;
#
# Copyright by The HDF Group.
# Copyright by the Board of Trustees of the University of Illinois.
# All rights reserved.
#
# This file is part of HDF5. The full HDF5 copyright notice, including
# terms governing use, modification, and redistribution, is contained in
# the COPYING file, which can be found at the root of the source code
# distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases.
# distribution tree, or in https://www.hdfgroup.org/licenses.
# If you do not have access to either file, you may request a copy from
# help@hdfgroup.org.
#

View File

@@ -1,966 +0,0 @@
#! /bin/sh
#
# Copyright by The HDF Group.
# Copyright by the Board of Trustees of the University of Illinois.
# All rights reserved.
#
# This file is part of HDF5. The full HDF5 copyright notice, including
# terms governing use, modification, and redistribution, is contained in
# the COPYING file, which can be found at the root of the source code
# distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases.
# If you do not have access to either file, you may request a copy from
# help@hdfgroup.org.
#
# run the hdf5/bin/snapshot
# Usage:
# runtest run the test for the local host
# runtest <hostname> run the test for <hostname>
# runtest -all run the test for all predefined hosts
#
# Assumptions in knowing where to find the right scripts to execute.
# 1. assume we are at the top level of the hdf5 source. So, bin/* are
# where the script files are.
# 2. after the cvs update is completed, we can go to the snapshot area
# hdf5 source tree and use the bin/* there.
# 3. Cannot use the snapshot area scripts from the beginning because
# for one, the current directory is renamed as previous right after
# a snapshot release; and for another, some scripts may be changed
# by the cvs update while it is being used.
# local setup
DEBUGMODE=""
test -n "$DEBUGMODE" && echo "******** DEBUGMODE is $DEBUGMODE ************"
WHEREAMI='pwd'
CMD=
# the name of this program
PROGNAME="bin/runtest $DEBUGMODE"
# Setup
HOSTNAME=`hostname | cut -f1 -d.` # no domain part
TODAY=`date +%m%d%a`
WEEKDAY=`date +%a`
H5VER= # default to current CVS version
H5VERSION= # default to current CVS version
n_test=0 # Number of tests ran
n_pass=0 # Number of tests passed
n_fail=0 # Number of tests failed
n_skip=0 # Number of tests skipped
# Default to do checkout (only once) and test, no release.
# Will run test only if there is significant differences from previous version.
# If srcdir is not used, don't launched multiple tests
SNAPSHOT="${DEBUGMODE:+echo }bin/snapshot"
SRCDIR="srcdir"
# Default standard Snaptest commands
SNAPCMD="$SRCDIR test clean"
# Default Standard snaptest command options
STANDARD_OPT=""
ENABLE_PARALLEL="--enable-parallel"
CONFIGNAME=$HOSTNAME # Name used in the SNAPTESTCFG file
# test host default as local host.
TESTHOST=""
#################################
# Function definitions
#################################
# Print messages to stdout
# Use this to show output heading to stdout
PRINT()
{
echo "$*"
}
# Show seconds since midnight.
# This is used to calculate seconds elapsed
SecOfDay()
{
set `date '+%H %M %S'`
t_sec=`expr $1 \* 3600 + $2 \* 60 + $3`
echo $t_sec
}
# Calculated the elapsed time (in seconds) between the first
# and second time. If second time is smaller than the first,
# we assume the clock has passed midnight and calculate appropriately.
ElapsedTime()
{
if [ $2 -lt $1 ]; then
t_sec=`expr 3600 \* 24 - $1 + $2`
else
t_sec=`expr $2 - $1`
fi
echo `expr $t_sec / 60`m `expr $t_sec % 60`s
}
# Report errors
# $1--an error message to be printed
REPORT_ERR()
{
ERRMSG=$1
# print it with a banner shifted right a bit
PRINT " *************************************"
PRINT " `date`"
PRINT " $ERRMSG"
PRINT " *************************************"
# report it in the FAILED-LOG file too
PRINT "$ERRMSG" >> $FAILEDLOG
}
#
# Report results of the last test done
REPORT_RESULT()
{
if [ $retcode -eq 0 ]; then
if [ $skiptest = yes ]; then
n_skip=`expr $n_skip + 1`
PRINT "SKIPPED ${HOSTNAME}: $TEST_TYPE" | tee -a $SKIPPEDLOG
else
n_pass=`expr $n_pass + 1`
PRINT "PASSED ${HOSTNAME}: $TEST_TYPE" | tee -a $PASSEDLOG
fi
else
# test failed.
n_fail=`expr $n_fail + 1`
REPORT_ERR "****FAILED ${HOSTNAME}: $TEST_TYPE****"
fi
}
# Print a blank line
PRINT_BLANK()
{
PRINT
}
# Print test trailer
PRINT_TEST_TRAILER()
{
PRINT "*** finished $TEST_TYPE tests for $HOSTNAME ***"
date; EndTime=`SecOfDay`
PRINT Total time = `ElapsedTime $StartTime $EndTime`
PRINT_BLANK
}
# Print trailer summary
PRINT_TRAILER()
{
PRINT "*** finished tests in $HOSTNAME ***"
date; TotalEndTime=`SecOfDay`
PRINT "${HOSTNAME}: Ran $n_test($n_pass/$n_fail/$n_skip) $runtest_type, Grand total test time = " \
"`ElapsedTime $TotalStartTime $TotalEndTime`" | tee -a $TIMELOG
PRINT_BLANK
}
# Figure out which remote command to use to reach a host.
# Try ssh first, then rsh since fewer machines support rsh exec.
# $1--hostname to reach.
CHECK_RSH()
{
# Figure out how to use ping command in this host.
# Some hosts use "ping host count", some use "ping -c count host".
# Test "ping -c 3 -w 5" since it has timeout feature.
# Test "ping -c ..." style before "ping host 3" because some machines
# that recognize -c treat 'ping localhost 3' as to ping host '3'.
if [ -z "$PING" ]; then
if ping -c 3 -w 5 localhost >/dev/null 2>&1; then
PING='ping -c 3 -w 5'
PINGCOUNT=
elif ping -c 3 localhost >/dev/null 2>&1; then
PING='ping -c 3'
PINGCOUNT=
elif ping localhost 3 >/dev/null 2>&1; then
PING=ping
PINGCOUNT=3
else # don't know how to use ping.
PING=no_ping
PINGCOUNT=
fi
fi
#
host=$1
# Try remote command with host if it responds to ping.
# Still try it if we don't know how to do ping.
if [ no_ping = "$PING" ] || $PING $host $PINGCOUNT >/dev/null 2>&1; then
if ssh $host -n hostname >/dev/null 2>&1; then
RSH=ssh
elif rsh $host -n hostname >/dev/null 2>&1; then
RSH=rsh
else
PRINT cannot remote command with $host
RSH="NoRemoteCommand"
fi
else
RSH="NotReachable"
fi
}
# Wait for a file for at most number of minutes
# $1--the file
# $2--number of minutes
# WAIT_STATUS set to:
# -1 if errors encountered
# 0 if file found within time limit
# 1 if file not found within time limit
WAITFOR()
{
wait_file=$1
nminutes=$2
if [ -z "$wait_file" -o ! "$nminutes" -ge 0 ]
then
PRINT "errors in argument of WAITFOR(): wait_file($1) or nminutes($2)"
WAIT_STATUS=-1
return
fi
while [ ! -f $wait_file ]; do
if [ $nminutes -gt 0 ]; then
PRINT "Wait For $wait_file to appear"
sleep 60 #sleep 1 minute
else
WAIT_STATUS=1
return
fi
nminutes=`expr $nminutes - 1`
done
WAIT_STATUS=0
return
}
# Wait till a file disappears for at most number of minutes.
# Useful to wait till a lock is removed by another process.
# $1--the file
# $2--number of minutes
# WAIT_STATUS set to:
# -1 if errors encountered
# 0 if file disappears within time limit
# 1 if file has not disappeared within time limit
WAITTILL()
{
wait_file=$1
nminutes=$2
if [ -z "$wait_file" -o ! "$nminutes" -ge 0 ]
then
PRINT "errors in argument of WAITTILL(): wait_file($1) or nminutes($2)"
WAIT_STATUS=-1
return
fi
while [ -f $wait_file ]; do
if [ $nminutes -gt 0 ]; then
PRINT "Wait till $wait_file has disappeared"
sleep 60 #sleep 1 minute
else
WAIT_STATUS=1
return
fi
nminutes=`expr $nminutes - 1`
done
WAIT_STATUS=0
return
}
# Run one snapshot test
# $*--Types of test being run
RUNSNAPTEST()
{
SNAPCMD_OPT="$STANDARD_OPT" # snapshot test option
SRCDIRNAME=${HOSTNAME}
# restore CC, PATH in case they were changed in the last test.
CC="$CC_SAVED"
PATH=$PATH_SAVED
export PATH # DEC OSF1 needs to export PATH explicitly
TEST_TYPE=$*
retcode=0
skiptest=no
date
PRINT "*** starting $TEST_TYPE tests in $HOSTNAME ***"
PRINT "Uname -a: `uname -a`"
# Parse the test type and set options accordingly.
# See comments of SNAPTEST_CONFIG_PARSE().
while [ $# -gt 0 ]; do
case $1 in
-n32) # want -n32 option
SRCDIRNAME=${SRCDIRNAME}-n32
CC="cc -n32"
export CC
;;
-64) # want -64 option
SRCDIRNAME=${SRCDIRNAME}-64
CC="cc -64"
export CC
;;
parallel) # want parallel test
SNAPCMD_OPT="$SNAPCMD_OPT $ENABLE_PARALLEL"
SRCDIRNAME=${SRCDIRNAME}-pp
;;
standard) # standard test
;;
--*)
# option for configure
SNAPCMD_OPT="$SNAPCMD_OPT $1"
;;
op-configure)
# option for configure
SNAPCMD_OPT="$SNAPCMD_OPT $1 $2"
shift
;;
op-snapshot)
# option for snapshot
shift
SNAPCMD_OPT="$SNAPCMD_OPT $1"
;;
setenv)
# pass them along to snapshot set environment variable
shift
SNAPCMD_OPT="$SNAPCMD_OPT setenv $1 $2"
shift
;;
setenvN)
# set environment variable with $1 values
# e.g., setenvN 3 x a b c is same as setenv x="a b c".
# pass them along to snapshot set environment variable
shift
envN=$1
shift
envname=$1
SNAPCMD_OPT="$SNAPCMD_OPT setenvN $envN $envname"
envalue=
while test $envN -gt 0; do
shift
envalue="$envalue $1"
envN=`expr $envN - 1`
done
SNAPCMD_OPT="$SNAPCMD_OPT $envalue"
;;
skip)
# skip this test
skiptest=yes
;;
srcdirname)
# Use this before using parallel and -n32 since this overrides
# the others.
shift
SRCDIRNAME=$1
;;
deploy)
# deploy the built binary.
shift
SNAPCMD_OPT="$SNAPCMD_OPT deploy $1"
;;
deploydir)
# default directory for deployment.
shift
SNAPCMD_OPT="$SNAPCMD_OPT deploydir $1"
;;
*) # unknown test
PRINT "$0: unknown type of test ($1)"
retcode=1
;;
esac
shift
done
if [ $retcode -ne 0 -o $skiptest = yes ]; then
errcode=$retcode
return $retcode
fi
# Track down the zlib software
ans=`$SNAPYARD/current/bin/locate_sw zlib`
if [ $? = 0 ]; then
Z_INC=`echo $ans | cut -f1 -d,`
Z_LIB=`echo $ans | cut -f2 -d,`
SNAPCMD_OPT="$SNAPCMD_OPT zlib $Z_INC,$Z_LIB"
else
# cannot locate zlib software.
# continue the test, maybe configure can find it.
:
fi
if [ -n "${SRCDIRNAME}" ]; then
SNAPCMD_OPT="$SNAPCMD_OPT srcdirname ${SRCDIRNAME}"
fi
# Setup log file name to save test output
THIS_MINUTE=`date +%H%M`
LOGFILE=${LOGBASENAME}/${SRCDIRNAME}_${TODAY}_${THIS_MINUTE}
PRINT "Running snapshot with output saved in"
PRINT " $LOGFILE"
(date; PRINT Hostname=$HOSTNAME) >> $LOGFILE
(
cd $SNAPYARD/current
$SNAPSHOT $SNAPCMD $SNAPCMD_OPT
) >> $LOGFILE 2>&1
retcode=$?
[ $retcode -ne 0 ] && errcode=$retcode
date >> $LOGFILE
if [ $retcode -ne 0 ]; then
# Dump the first 10 lines and the last 30 lines of the LOGFILE.
( ntail=30
echo =========================
echo "Dumping logfile of ${HOSTNAME}: $TEST_TYPE"
echo "Last $ntail lines of $LOGFILE"
echo =========================
tail -$ntail $LOGFILE
echo =========================
echo Dumping done
echo =========================
echo ""
) >> $FAILEDDETAIL
fi
}
TIMELIMIT_PARSE()
{
# Function returns timeparam for timekeeper via standard out -
# any debug statements should be 'echo "Debug string" >&2' or timekeeper
# will declare timeparam to be non-numeric and ignore it.
while read x y ; do
# Scan for entry for this weekday.
xd=`echo $x | cut -f1 -d/`
if [ "$xd" = ${WEEKDAY} ]; then
# strip away the weekday/ part.
timeparam=`echo $x | cut -f2 -d/`
break
fi
case "$x" in
'' | '#'*)
# blank or comment lines. Continue.
;;
???/*)
# Ignore any entry not of this weekday.
;;
*)
timeparam="$x"
;;
esac
done
echo $timeparam
return
}
# configuration parsing.
# Taking configuration from input.
# This should be invoke with configure file as stdin.
# Syntax of the configure file:
# All lines started with the # are comment lines and are ignored.
# Blank lines are ignored too.
# Each config line starts with a "Scope" followed by test types.
#
# Scope can be:
# standard ... # what the standard test types are.
# <host>: <test> Do <test> for <host>
# all: <test> Do <test> for all hosts.
# <weekday>/... Use this scope if the <weekday> matches.
# <weekday> can be {Mon,Tue,Wed,Thu,Fri,Sat,Sun}
# If no <host>: input for a <host>, the standard test is used.
#
# Test types:
# standard tests defined in standard scope.
# -n32 -n32 mode. Apply to 64/32 bit OS such as IRIX64.
# parallel parallel mode.
# op-configure <option> configure option
# op-snapshot <option> snapshot option
# --* configure option
# setenv <name> <value> set environment variable <name> to <value>
# Pass along to snapshot
# setenvN <N> <name> <value> ...
# set environment variable with <N> values
# e.g., setenvN 3 x a b c is same as setenv x="a b c".
# Pass along to snapshot.
# skip skip this test
# srcdirname <name> use <name> as the build-directory.
# deploy <name> deploy the built binary at directory <name>.
# deploydir <name> use <name> as the default directory for deployment.
SNAPTEST_CONFIG_PARSE()
{
while read x y ; do
# Scan for entry for this weekday.
xd=`echo $x | cut -f1 -d/`
if [ "$xd" = ${WEEKDAY} ]; then
# strip away the weekday/ part.
x=`echo $x | cut -f2 -d/`
fi
case "$x" in
'' | '#'*)
# blank or comment lines. Continue.
;;
???/*)
# Ignore any entry not of this weekday.
;;
standard)
#standard configuration
STANDARD_OPT="$y"
;;
all: | ${CONFIGNAME}:)
# types of test for all hosts or this host
if [ -n "$TEST_TYPES" ]; then
TEST_TYPES="$TEST_TYPES ; $y"
else
TEST_TYPES="$y"
fi
;;
*:) # ignore types of test for other hosts
;;
*) # unknown configuration option
PRINT $x $y
PRINT "***Unknown configuration option. Ignored.***"
;;
esac
done
}
# Snap Test configuration parsing.
# If TEST_TYPES is not set, set it to do the "standard" test.
SNAPTEST_CONFIG()
{
TEST_TYPES=
STANDARD_OPT=
if [ -f $SNAPTESTCFG ]; then
SNAPTEST_CONFIG_PARSE < $SNAPTESTCFG
fi
TEST_TYPES=${TEST_TYPES:-'standard'}
}
# Show usage page
USAGE()
{
cat <<EOF
Usage: runtest [-h] [-debug] [-r<version>] [-all] [-nocvs] [-nodiff] [<host> ...]
-h
print this help page
-debug
turn on debug mode
-r<version>
do runtest for <version>
-all
launch tests for all pre-defined testing hosts
-nocvs
do not do cvs commands
-nodiff
do not do diff commands
-setup
setup the directory structure for snapshot test
-configname <name>
use <name> as hostname in the parsing of the snaptest configure file
<host>
launch tests for <host>
-all and <host> are contradictory and whichever is specified last, is
the one to take effect. If neither are given, do the test for the
local host.
EOF
}
# Verify if directory ($1) exists. If not, create it.
CHECK_DIR()
{
dir=$1
if test ! -e $1; then
echo mkdir $1
mkdir $1
errcode=$?
elif test ! -d $1; then
echo $1 is not a directory
errcode=1
fi
}
#################################
# Main
#################################
#################################
# Set up global variables
#################################
retcode=0 # error code of individula task
errcode=0 # error code of the whole test
skiptest=no # if test is skipped
CC_SAVED="$CC" # CC & PATH maybe changed within a test.
PATH_SAVED=$PATH # These save the original values.
timelimit=300 # default time limit (minutes) for the timekeeper
#################################
# Parse options
#################################
while [ $# -gt 0 ]; do
case "$1" in
-h) # help--show usage
USAGE
exit 0
;;
-debug*)
# set debug mode
DEBUGMODE="$1"
SNAPSHOT="echo bin/snapshot"
PROGNAME="$PROGNAME $DEBUGMODE"
PRINT "******** DEBUGMODE is $DEBUGMODE ************"
;;
-r*)
# version string
H5VER="$1"
;;
-all)
# Test all hosts.
TESTHOST=-all
;;
-nocvs)
# do not do cvs commands.
NOCVS=nocvs
;;
-nodiff)
# do not do diff commands.
NODIFF=nodiff
;;
-configname)
# use <name> as hostname in the parsing of the snaptest configure file.
shift
CONFIGNAME=$1
;;
-setup)
# setup the directory structure for snapshot test.
CMD=setup
;;
-*) # Unknow option
PRINT "Unknown option ($1)"
USAGE
exit 1
;;
*)
TESTHOST=$*
break
;;
esac
shift
done
# setup H5VER if not set yet
if [ -z "$H5VER" -a -f bin/snapshot_version ]
then
. bin/snapshot_version
fi
if [ -n "$H5VER" ]
then
H5VERSION=hdf5_`echo $H5VER | sed -e s/-r// -e s/\\\./_/g`
PROGNAME="$PROGNAME $H5VER"
else
H5VERSION=hdf5
fi
#################################
# Setup snapshot test directories
#################################
BASEDIR=${HOME}/snapshots-${H5VERSION}
# initial processing of setup option if requested
if test x-$CMD = x-setup; then
CHECK_DIR $BASEDIR
test $errcode -ne 0 && exit 1
elif [ ! -d ${BASEDIR} ]; then
echo "BASEDIR ($BASEDIR) does not exist"
exit 1
fi
# Show the real physical path rather than the symbolic path
SNAPYARD=`cd $BASEDIR && /bin/pwd`
# Log file basename
LOGDIR=${SNAPYARD}/log
LOGBASENAME=${LOGDIR}
PASSEDLOG=${LOGDIR}/PASSED_LOG_${TODAY}
FAILEDLOG=${LOGDIR}/FAILED_LOG_${TODAY}
FAILEDDETAIL=${LOGDIR}/FAILED_DETAIL_${TODAY}
SKIPPEDLOG=${LOGDIR}/SKIPPED_LOG_${TODAY}
TIMELOG=${LOGDIR}/TIME_LOG_${TODAY}
TIMEKEEPERLOG=${LOGDIR}/TIMEKEEPER_LOG_${TODAY}
CVSLOG=${LOGDIR}/CVS_LOG_${TODAY}
CVSLOG_LOCK=${LOGDIR}/CVS_LOG_LOCK_${TODAY}
DIFFLOG=${LOGDIR}/DIFF_LOG_${TODAY}
COPYRIGHT_ERR=${LOGDIR}/COPYRIGHT_ERR_${TODAY}
# Snap Test hosts and Configuration files
ALLHOSTSFILE=${SNAPYARD}/allhostfile
SNAPTESTCFG=${SNAPYARD}/snaptest.cfg
TIMELIMIT=${SNAPYARD}/timelimit
TMPFILE="${LOGDIR}/#runtest.${TODAY}.$$"
# more processing of setup option if requested
if test x-$CMD = x-setup; then
CHECK_DIR $LOGDIR
test $errcode -ne 0 && exit 1
CHECK_DIR $LOGDIR/OLD
test $errcode -ne 0 && exit 1
CHECK_DIR $SNAPYARD/TestDir
test $errcode -ne 0 && exit 1
# create empty test hosts or configure files if non-existing
for f in $ALLHOSTSFILE $SNAPTESTCFG; do
if test ! -f $f; then
echo Creating $f
touch $f
fi
done
# create or update the current source.
echo update current source
$SNAPSHOT checkout
# setup completed. Exit.
exit 0
fi
#################################
# Show some host status numbers
#################################
# df sometimes hangs due to file system problems. Invoke it as background
# process and give it 10 seconds to finish. If it hangs, just continue.
uptime
df &
sleep 10
#################################
# Setup test host(s)
#################################
if [ "$TESTHOST" = -all ]; then
if [ -f $ALLHOSTSFILE ]; then
TESTHOST=`sed -e '/^#/d;/^ *$/d' $ALLHOSTSFILE`
else
PRINT "could not access the all-hosts-file ($ALLHOSTSFILE)"
USAGE
exit 1
fi
fi
#################################
# Setup to print a trailer summary when exiting not via
# the normal end of the script.
#################################
trap PRINT_TRAILER 0
#
TotalStartTime=`SecOfDay`
# Process the configuration
SNAPTEST_CONFIG
PRINT STANDARD_OPT=$STANDARD_OPT
PRINT TEST_TYPES=$TEST_TYPES
PRINT_BLANK
# Do a checkout if one has not been done today.
# Then check MANIFEST file and copyrights noitces.
if [ -z "$NOCVS" ]; then
PRINT "Running CVS checkout with output saved in"
PRINT " $CVSLOG"
# Set CVS lock first
touch $CVSLOG_LOCK
($SNAPSHOT checkout ) >> $CVSLOG 2>&1
# Save error code and remove the lock
errcode=$?
rm -f $CVSLOG_LOCK
if [ $errcode -ne 0 ]; then
# test failed.
REPORT_ERR "****FAILED ${HOSTNAME}: CVS checkout****"
exit $errcode
fi
# ===================
# Check MANIFEST file
# ===================
PRINT Checking MAINFEST file ...
(cd $SNAPYARD/current; bin/chkmanifest) > $TMPFILE 2>&1
errcode=$?
if [ $errcode -eq 0 ]; then
# test passed.
cat $TMPFILE
else
# test failed.
REPORT_ERR "****FAILED ${HOSTNAME}: MANIFEST check****"
( echo =========================
echo "MANIFEST checking failed output"
echo =========================
cat $TMPFILE
echo =========================
echo "MANIFEST checking failed output done"
echo =========================
echo ""
) >> $FAILEDDETAIL
fi
rm $TMPFILE
PRINT_BLANK
# No copyright checking until what need copyright is decided. 2006/4/7.
if false; then
# ======================
# Check Copyright notice
# ======================
PRINT Checking Copyrights notices ...
if (cd $SNAPYARD/current; bin/chkcopyright) > $TMPFILE 2>&1 ; then
echo Passed.
else
# Save the output and report some of it.
# Do not report it as failed for runtest yet.
# Send a separate report mail via hardcoding.
# Need fixes/cleanup later.
echo "Failed. See detail in another report mail"
cp $TMPFILE $COPYRIGHT_ERR
nheadlines=300
ntaillines=5 # Number of lines in report summary.
(
echo =========================
echo "Copyright checking failed. Showing first $nheadlines lines of output."
echo "Complete output is in file $COPYRIGHT_ERR"
echo =========================
nreportlines=`wc -l < $COPYRIGHT_ERR`
if [ $nreportlines -le `expr $nheadlines + $ntaillines` ]; then
# Just print the whole file.
cat $COPYRIGHT_ERR
else
# Show the first $nheadlines plus report summary
head -$nheadlines $COPYRIGHT_ERR
echo ...
tail -$ntaillines $COPYRIGHT_ERR
fi
) | Mail -s "${H5VERSION} Copyrights check Failed" hdf5lib
fi
rm $TMPFILE
PRINT_BLANK
fi
else
# make sure the cvs update, if done by another host, has completed.
# First wait for the presence of $CVSLOG which signals some host
# has started the cvs update. Then wait for the absense of $CVSLOG_LOCK
# which signals the host has completed the cvs update.
WAITFOR $CVSLOG 90
if [ $WAIT_STATUS -ne 0 ]; then
errcode=$WAIT_STATUS
REPORT_ERR "****FAILED ${HOSTNAME}: Time expired waiting CVS update to start****"
exit $errcode
fi
WAITTILL $CVSLOG_LOCK 10
if [ $WAIT_STATUS -ne 0 ]; then
errcode=$WAIT_STATUS
REPORT_ERR "****FAILED ${HOSTNAME}: Time expired waiting CVS update to finish****"
exit $errcode
fi
fi
# run a snapshot diff to see if any significant differences between
# the current and previous versions
if [ -z "$NODIFF" ]; then
$SNAPSHOT diff >> $DIFFLOG 2>&1
errcode=$?
# check the errcode only if NOT in DEBUG MODE
if [ -z "$DEBUGMODE" -a $errcode -eq 0 ]; then
# no need to run test
PRINT "NO TEST: no significant differences between current and previous versions" |
tee -a $PASSEDLOG
exit 0
fi
fi
# we can use the version of script in SNAPYARD/current now.
# Don't do the diff or cvs update any more.
PROGNAME="$SNAPYARD/current/$PROGNAME -nodiff -nocvs"
# Decide to do test for the local host or for remote hosts
if [ -n "$TESTHOST" -a $HOSTNAME != "$TESTHOST" ]; then
date
PRINT "*** launching tests from $HOSTNAME ***"
PRINT_BLANK
TEST_TYPE="launching"
cd ${SNAPYARD}/log
# Fork off timekeeper if concurrent tests will be used.
if [ -n "$SRCDIR" ]; then
timelimit=`TIMELIMIT_PARSE < $TIMELIMIT`
($SNAPYARD/current/bin/timekeeper $timelimit > $TIMEKEEPERLOG 2>&1 &)
PRINT " Fork off timekeeper $timelimit"
fi
runtest_type="hosts"
for h in $TESTHOST; do
# Must do CONFIGNAME before $h got changed by the second cut.
# cut returns the whole string if there is no / in the string
# at all. But that works okay for the CONFIGNAME too.
CONFIGNAME=`echo $h | cut -f2 -d/`
h=`echo $h | cut -f1 -d/`
n_test=`expr $n_test + 1`
TMP_OUTPUT="#${h}_${CONFIGNAME}.out"
(PRINT "=============="
PRINT "Testing $h"
PRINT "==============") > $TMP_OUTPUT
CHECK_RSH $h
# run the remote shell command with output to $TMP_OUTPUT
case "$RSH" in
rsh|ssh)
CMD="$RSH $h -n $PROGNAME -configname $CONFIGNAME"
PRINT $CMD
# launch concurrent tests only if srcdir is used
if [ -n "$SRCDIR" ]; then
$CMD || REPORT_ERR "****FAILED ${h}: Abnormal exit from runtest****" && PRINT_BLANK &
echo $! > PID.${h}_${CONFIGNAME}
else
$CMD || REPORT_ERR "****FAILED ${h}: Abnormal exit from runtest****" && PRINT_BLANK
fi
;;
NoRemoteCommand)
PRINT $h does not accept Remote Command "(`date`)"
;;
NotReachable)
PRINT $h is not reachable "(`date`)"
;;
*)
PRINT "CHECK_RSH for $h returned unknow result ($RSH)"
;;
esac >> $TMP_OUTPUT 2>&1
done
# wait for all launched tests to finish, then cat them back out.
wait
# Pause a moment in case the timekeeper is terminating processes.
wait 30
for h in $TESTHOST; do
CONFIGNAME=`echo $h | cut -f2 -d/`
h=`echo $h | cut -f1 -d/`
TMP_OUTPUT="#${h}_${CONFIGNAME}.out"
cat $TMP_OUTPUT
# Verify test script did complete by checking the last lines
(tail -5 $TMP_OUTPUT | grep -s 'Grand total' > /dev/null 2>&1) ||
(REPORT_ERR "****FAILED ${h}: snaptest did not complete****" &&
PRINT_BLANK)
rm -f $TMP_OUTPUT PID.${h}_${CONFIGNAME}
done
exit 0
fi
# run the test(s)
# Note that first field is cut without -s but all subsequent cut
# must use -s. If -s is not used at all, a $TEST_TYPES that has
# no ';' (only 1 test), will pass through intact in all cut. That
# results in infinite looping.
# If -s is used with the first field, it will suppress completely
# a $TYPE_TYPES that has no ';' (only 1 tst ). That results in no
# test at all.
# Note that n_test must start as 1.
#
n_test=1
runtest_type="tests"
TEST="`echo $TEST_TYPES | cut -f$n_test -d';'`"
while [ -n "$TEST" ]; do
StartTime=`SecOfDay`
RUNSNAPTEST $TEST
REPORT_RESULT
PRINT_TEST_TRAILER
n_test=`expr $n_test + 1`
TEST="`echo $TEST_TYPES | cut -f$n_test -s -d';'`"
done
# dec n_test to show the actual number of tests ran.
n_test=`expr $n_test - 1`
PRINT_TRAILER
# disable trailer summary printing since all trailers have been
# printed and we are exiting normally.
trap 0
exit $errcode

View File

@@ -1,828 +0,0 @@
#!/bin/sh
#
# Copyright by The HDF Group.
# Copyright by the Board of Trustees of the University of Illinois.
# All rights reserved.
#
# This file is part of HDF5. The full HDF5 copyright notice, including
# terms governing use, modification, and redistribution, is contained in
# the COPYING file, which can be found at the root of the source code
# distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases.
# If you do not have access to either file, you may request a copy from
# help@hdfgroup.org.
# This script should be run nightly from cron. It checks out the source
# from the source repository and compares it against the previous
# snapshot. If anything significant changed then a new snapshot is
# created, the minor version number is incremented, and the change is
# checked back into the source repository.
#
# function definitions
TIMESTAMP()
{
echo "=====" "$1": "`date`" "====="
}
EXIT_BANNER()
{
TIMESTAMP "Exit $PROGNAME with status=$?"
}
# Show current total disk usage.
DISKUSAGE()
{
du -ks | \
( read x y; echo "Disk Usage=$x KB" )
}
# function provided for testing software downloaded as tar files. A version of
# this function that properly extracts the downloaded files can be provided in
# the snapshots-${sw}-overrides file.
EXTRACT()
{
echo "Error: ${SWVERSION} is in source repository - does not need extraction."
}
# Standard procedure for checking out or updating source code from an hdfgroup
# git repository. Override the function for other repositories or procedures.
SOURCE_CHECKOUT()
{
if test -n $GIT_URL; then
if [ -n "$AUTOGEN" ]; then
echo "Creating fresh clone of $GIT_URL in $BASEDIR/current_src"
# Check out the current version from source repository.
(cd $BASEDIR; rm -rf current_src
if test -z $GIT_BRANCH; then
echo "Testing empty branch $GIT_BRANCH."
git clone $GIT_URL current_src
else
echo "Testing branch $GIT_BRANCH."
git clone $GIT_URL -b $GIT_BRANCH current_src
fi
) || exit 1
else
echo "Creating fresh clone of $GIT_URL in $BASEDIR/current"
# Check out the current version from source repository.
(cd $BASEDIR; rm -rf current
if test -n $GIT_BRANCH; then
git clone $GIT_URL -b $GIT_BRANCH current
else
git clone $GIT_URL current
fi ) || exit 1
fi
else
echo "Warning! Source directory ("current") is not checked out from git."
fi
}
# Standard procedure for running the configure command in a build (test)
# directory
RUNCONFIGURE()
{
if [ "${CURRENT}" != "${TESTDIR}" -a "$CPSRC" = "yes" ]; then
echo "Copying source files to ${TESTDIR}."
cp -pr ${CURRENT}/* ${TESTDIR}
cd ${TESTDIR}
./${CONFIGURE}
elif [ -n "${AUTOGEN}" ]; then
${CURRENTSRC}/${CONFIGURE}
else
${CURRENT}/${CONFIGURE}
fi
}
# Sometimes "make distclean" doesn't adequately remove files from the previous
# build. If a build (test) directory was used, its contents can be entirely
# deleted to provide a clean start. If the test is building in the source
# directory, the contents can't be deleted, so run "make distclean".
DISTCLEAN()
{
if [ "${srcdir}" = "yes" -a -n "${SRCDIRNAME}" -a -d ${BASEDIR}/TestDir/${SRCDIRNAME} ]; then
echo "Remove contents of $SRCDIRNAME.\n"
rm -rf ${BASEDIR}/TestDir/${SRCDIRNAME}/*
else
echo "$MAKE distclean"
(cd ${TESTDIR} && ${MAKE} distclean)
fi
}
# Several of the software packages tested do not support make check-install.
# Those that support it should have a version of this function in their
# override with the following lines:
# TIMESTAMP "check-install $1"
# ${MAKE} check-install $1
CHECKINSTALL()
{
echo "check-install is not supported for ${SWVERSION}"
}
# Function for hdf4 and hdf5 to override to check in changes after snapshot.
# Safety measure to avoid unintended checkins to other repositories.
COMMITSNAPSHOT()
{
echo "original hdf5 script committed code changes back into git."
}
DISPLAYUSAGE()
{
set -
cat <<EOF
Usage: $PROGNAME [all] [checkout] [ftp <URL> [diff] [test] [srcdir] [release] [help]
[clean] [distclean] [echo] [deploy <dir>] [deploydir <dir>]
[zlib <zlib_path>] [releasedir <dir>] [srcdirname <dir>] [check-vfd]
[exec <command>] [module-load <module-list>] [op-configure <option>]
[--<option>]
all: Run all commands (checkout, test & release)
[Default is all]
checkout: Run source checkout
diff: Run diff on current and previous versions. Exit 0 if
no significant differences are found. Otherwise, non-zero.
deploy: deploy binary to directory <dir>
deploydir: use <dir> as the default directory for deployment
test: Run test
release: Run release
clean: Run make clean
distclean:Run make distclean
echo: Turn on echo mode (set -x)
setenv <name> <value>:
Set environment variable <name> to <value>.
setenvN <N> <name> <value> ...:
Set environment variable with <N> values.
E.g., setenvN 3 x a b c is same as setenv x="a b c".
srcdir: Use srcdir option (does not imply other commands)
"snapshot srcdir" is equivalent to "snapshot srcdir all"
"snapshot srcdir checkout" is equivalent to "snapshot checkout"
srcdirname <dir>:
Use <dir> as the srcdir testing directory if srcdir is choosen.
If <dir> starts with '-', it is append to the default name
E.g., "snapshot srcdir srcdirname -xx" uses hostname-xx
[Default is hostname]
help: Print this message
echo: Turn on shell echo
zlib <zlib_path>:
Use <zlib_path> as the ZLIB locations
[Default is $ZLIB_default]
releasedir <dir>:
Use <dir> as the release directory
[Default is $ReleaseDir_default]
check-vfd:
Run make check-vfd instead of just make check.
exttest <testscript>;
Run testscript;
exec <command>:
Run <command>;
module-load <module-list>:
Load modules in comma-separated <module-list>;
op-configure <option>:
Pass <option> to the configure command
E.g., "snapshot op-configure --enable-parallel"
configures for parallel mode
--<option>:
Pass --<option> to the configure command
E.g., "snapshot --enable-parallel"
configures for parallel mode
EOF
exit $errcode
}
# MAIN
# SGI /bin/sh replaces $0 as function name if used in a function.
# Set the name here to avoid that ambiguity and better style too.
PROGNAME=$0
SNAPSHOTNAME=
HDFREPOS=
DOCVERSION=""
MODULELIST=""
if [ -f bin/snapshot_params ]; then
. bin/snapshot_params
echo "Added snapshot_params."
fi
if [ -z "$SWVER" -a -f bin/snapshot_version ]
then
. bin/snapshot_version
echo "Added snapshot_version."
fi
if [ -n ${HDFREPOS} -a -f bin/snapshot-${HDFREPOS}-overrides ]; then
. bin/snapshot-${HDFREPOS}-overrides
echo "Added snapshot-${HDFREPOS}-overrides."
fi
echo "====================================="
echo "$PROGNAME $*"
echo "====================================="
TIMESTAMP MAIN
uname -a
# setup exit banner message
trap EXIT_BANNER 0 1 2 9 15
# Dump environment variables before option parsing
echo ===Dumping environment variables before option parsing ===
printenv | sort
echo ===Done Dumping environment variables before option parsing ===
# snapshots release directory. Default relative to $BASEDIR.
ReleaseDir_default=release_dir
# Where is the zlib library?
# At NCSA, half of the machines have it in /usr/lib, the other half at
# /usr/ncsa/lib. Leave it unset.
ZLIB_default=
ZLIB=$ZLIB_default
# What compression methods to use? (md5 does checksum). Doc was apparently
# added as a compression method to create a separate tarfile containing the
# documentation files for v 1.8 and above.
if [ "${SWVERSION}" = "hdf5_1_6" ]; then
METHODS="gzip bzip2 md5"
else
METHODS="gzip bzip2 doc"
fi
# Use User's MAKE if set. Else use generic make.
MAKE=${MAKE:-make}
# Default check action.
CHECKVAL=check
#
# Command options
cmd="all"
test_opt=""
errcode=0
AUTOGEN=""
EXTTEST=""
EXEC_CMD_ARG=""
while [ $# -gt 0 ] ; do
case "$1" in
all)
cmd="all"
;;
checkout-autogen)
cmdcheckout="checkout"
AUTOGEN="autogen"
cmd=""
;;
checkout)
cmdcheckout="checkout"
cmd=""
;;
ftp)
echo "Setting ftp flags in snapshot script"
cmdcheckout="checkout"
cmdftp="ftp"
cmd=""
shift
if [ $# -lt 1 ]; then
echo "URL missing"
errcode=1
cmd="help"
break
fi
ftp_url="$1"
echo "ftp_url is $ftp_url"
;;
diff)
cmddiff="diff"
cmd=""
;;
deploy)
# deploy the built binary.
shift
if [ $# -lt 1 ]; then
echo "deploy <dir> missing"
errcode=1
cmd="help"
break
fi
cmddeploy="deploy"
DEPLOYDIRNAME="$1"
;;
deploydir)
# default directory for deployment.
shift
if [ $# -lt 1 ]; then
echo "deploydir <dir> missing"
errcode=1
cmd="help"
break
fi
deploydir="$1"
;;
test)
cmdtest="test"
cmd=""
;;
setenv)
# set environment variable
shift
eval $1="$2"
export $1
shift
;;
setenvN)
# set environment variable with $1 values
# e.g., setenvN 3 x a b c is same as setenv x="a b c".
# a kludge now--the extra single quotes are needed
# else eval complains.
shift
envN=$1
shift
envname=$1
envalue=
while test $envN -gt 0; do
shift
envalue="$envalue $1"
envN=`expr $envN - 1`
done
eval $envname="'$envalue'"
export $envname
;;
srcdir)
#use srcdir option for test
srcdir="yes"
;;
srcdirname)
shift
if [ $# -lt 1 ]; then
echo "srcdirname <dir> missing"
errcode=1
cmd="help"
break
fi
SRCDIRNAME="$1"
;;
release)
cmdrel="release"
cmd=""
;;
autogen-release)
cmdrel="autogen-release"
cmd=""
;;
clean | distclean)
cmdclean="$1"
cmd=""
;;
help)
cmd="help"
break
;;
echo)
set -x
break
;;
zlib)
shift
if [ $# -lt 1 ]; then
echo "ZLIB information missing"
errcode=1
cmd="help"
break
fi
ZLIB="$1"
;;
releasedir)
shift
if [ $# -lt 1 ]; then
echo "Release directory name missing"
errcode=1
cmd="help"
break
fi
ReleaseDir="$1"
;;
exttest)
shift
if [ $# -lt 1 ]; then
echo "exttest script name missing"
errcode=1
cmd="help"
break
fi
cmd=""
EXTTEST="$1"
;;
exec)
shift
if [ $# -lt 1 ]; then
echo "exec command name missing"
errcode=1
cmd="help"
break
fi
cmd=""
EXEC_CMD_ARG="$@"
# exit the parsing while loop since all arguments have been consummed.
break
;;
check-vfd)
CHECKVAL=check-vfd
;;
module-load)
shift
if [ $# -lt 1 ]; then
echo "missing module list to load"
errcode=1
cmd="help"
break
fi
MODULELIST="$1"
;;
--*)
OP_CONFIGURE="$OP_CONFIGURE $1"
;;
op-configure)
shift
if [ $# -lt 1 ]; then
echo "op-configure option missing"
errcode=1
cmd="help"
break
fi
OP_CONFIGURE="$OP_CONFIGURE $1"
;;
*)
echo "Unkown option $1"
errcode=1
cmd="help"
break
;;
esac
shift
done
if [ -n "$MODULELIST" ]; then
. ~/.bashrc
module use /opt/pkgs/modules/all
# load module command will take a space separated list of modules.
# If we have a comma separated list, convert ',' to ' '.
MODULELIST="$( echo -e "$MODULELIST" | tr ',' ' ' )"
module load $MODULELIST
fi
# Dump environment variables after option parsing
echo ===Dumping environment variables after option parsing ===
printenv | sort
echo ===Done Dumping environment variables after option parsing ===
if [ "$cmd" = help ]; then
DISPLAYUSAGE
fi
# Setup the proper configure option (--with-zlib) to use zlib library
# provide ZLIB is non-empty.
ZLIB=${ZLIB:+"--with-zlib="$ZLIB}
# Adding --prefix as a configure option will put the path to the deploy
# directory in the initial libhdf5*.la files
if [ -n "$DEPLOYDIRNAME" ]; then
OP_CONFIGURE="$OP_CONFIGURE --prefix=${deploydir}/${DEPLOYDIRNAME}"
fi
CONFIGURE="configure $OP_CONFIGURE"
# echo "Configure command is $CONFIGURE"
# Execute the requests
snapshot=yes
BASEDIR=${HOME}/snapshots-${SNAPSHOTNAME}
if [ ! -d ${BASEDIR} ]; then
echo "BASEDIR ($BASEDIR) does not exist"
exit 1
fi
CURRENT=${BASEDIR}/current
PREVIOUS=${BASEDIR}/previous
ReleaseDir=${ReleaseDir:=${BASEDIR}/${ReleaseDir_default}}
HOSTNAME=`hostname | cut -f1 -d.` # no domain part
# Try finding a version of diff that supports the -I option too.
DIFF=diff
for d in `echo $PATH | sed -e 's/:/ /g'` ; do
test -x $d/diff && $d/diff -I XYZ /dev/null /dev/null > /dev/null 2>&1 &&
DIFF=$d/diff && break
done
#=============================
# Run source checkout
#=============================
if [ "$cmd" = "all" -o -n "$cmdcheckout" ]; then
TIMESTAMP "checkout"
# ${BASEDIR}/bin is now updated from git by EveningMaint or DailyMaint
# to avoid updating the scripts in ${BASEDIR}/bin while they are running.
if [ -z "$AUTOGEN" ]; then
# If there is a Makefile in ${CURRENT}, the last test done in it
# has not been distclean'ed. They would interfere with other
# --srcdir build since make considers the files in ${CURRENT}
# take precedence over files in its own build-directory. Run
# a "make distclean" to clean them all out. This is not really
# part of the "checkout" functions but this is the most convenient
# spot to do the distclean. We will also continue the checkout process
# regardless of the return code of distclean.
( cd ${CURRENT}; test -f Makefile && ${MAKE} distclean)
fi
# echo "cmdftp is $cmdftp; ftp_url is $ftp_url"
if [ -n "$cmdftp" ]; then
echo "Get the NetCDF4 source from their ftp server."
echo "Command executed is: 2>&1 wget -N $ftp_url"
cd ${BASEDIR};
WGET_OUTPUT="`2>&1 wget -N $ftp_url`"
errcode=$?
if [[ $errcode -ne 0 ]]; then
exit $errcode
fi
if [ $? -ne 0 ];then
echo $0: "$WGET_OUTPUT" Exiting.
exit 1
fi
# echo "Wget output was $WGET_OUTPUT"
if echo "$WGET_OUTPUT" | fgrep 'not retrieving' &> /dev/null
then
echo "Snapshot unchanged"
else
echo "New snapshot downloaded"
EXTRACT
fi
else
SOURCE_CHECKOUT
fi
fi # Do source checkout
#=============================
# Run Test the HDF5 library
#=============================
if [ "$cmd" = "all" -o -n "$cmdtest" -o -n "$cmddiff" ]; then
TIMESTAMP "Run Tests"
# setup if srcdir is used.
if [ -z "$srcdir" ]; then
TESTDIR=${CURRENT}
else
#create TESTDIR if not exist yet
case "$SRCDIRNAME" in
"")
SRCDIRNAME=$HOSTNAME
;;
-*)
SRCDIRNAME="$HOSTNAME$SRCDIRNAME"
;;
esac
TESTDIR=${BASEDIR}/TestDir/${SRCDIRNAME}
test -d ${TESTDIR} || mkdir ${TESTDIR}
# set TESTDIR to use the direct path to the local test directory
# rather than the path through ${BASEDIR}.
cd ${TESTDIR}
TESTDIR=`pwd -P`
cd ${CURRENT}
fi
# Make sure current version exists and is clean
if [ -d ${TESTDIR} ]; then
DISTCLEAN
else
errcode=$?
snapshot=no
exit $errcode
fi
# Compare it with the previous version. Compare only files listed in
# the MANIFEST plus the MANIFEST itself.
if [ -d ${PREVIOUS} ]; then
if [ -z "${AUTOGEN}" ]; then
CURRENTSRC=${CURRENT}
else
CURRENTSRC=${BASEDIR}/current_src
fi
if (${DIFF} -c ${PREVIOUS}/MANIFEST ${CURRENTSRC}/MANIFEST); then
snapshot=no
for src in `grep '^\.' ${CURRENTSRC}/MANIFEST|expand|cut -f1 -d' '`; do
if ${DIFF} -I H5_VERS_RELEASE -I " released on " \
-I " currently under development" \
${PREVIOUS}/$src ${CURRENTSRC}/$src
then
: #continue
else
snapshot=yes
break
fi
done
fi
fi
# if diff is choosen, exit 0 if no significant differences are found.
# otherwise, exit 1. This includes cases of other failures.
if [ -n "$cmddiff" ]; then
if [ $snapshot = no ]; then
exit 0
else
exit 1
fi
fi
#=============================
# Execute command if defined
#=============================
#echo BEFORE EXEC command
#echo EXEC_CMD_ARG=${EXEC_CMD_ARG}
if [ -n "$EXEC_CMD_ARG" ]; then
TIMESTAMP ${EXEC_CMD_ARG}
TESTDIR=${BASEDIR}/TestDir/${SRCDIRNAME}
test -d ${TESTDIR} || mkdir ${TESTDIR}
if cd ${TESTDIR}; then
# clean up the directory before executing the command
# Do we need to clean first?
# rm -rf *
#
# If EXEC_CMD_ARG starts with a '/', it has an absolute path, else it is
# relative to the BASEDIR.
case "$EXEC_CMD_ARG" in
/*)
${EXEC_CMD_ARG}
;;
*)
${BASEDIR}/${EXEC_CMD_ARG}
;;
esac
errcode=$?
else
echo "${TESTDIR} not accessible"
errcode=1
fi
# exit snapshot since nothing else to do, for now.
exit $errcode
fi
# Build, run tests and install procedures
if [ "$snapshot" = "yes" ] && [ "$NOMAKE" != "yes" ]; then
FAIL_SECTION=""
if [ -f ${TESTDIR}/failsection ]; then
rm ${TESTDIR}/failsection
fi
if (cd ${TESTDIR} && \
TIMESTAMP "configure" && echo "configure" > ${TESTDIR}/failsection && \
RUNCONFIGURE && \
sleep 2 && \
TIMESTAMP "make" && echo "make" > ${TESTDIR}/failsection && \
${MAKE} && DISKUSAGE \
TIMESTAMP ${CHECKVAL} && echo "make check" > ${TESTDIR}/failsection && \
${MAKE} ${CHECKVAL} && DISKUSAGE \
TIMESTAMP "install" && echo "make install" > ${TESTDIR}/failsection && \
${MAKE} install && DISKUSAGE \
TIMESTAMP "check-install" && echo "make check-install" > ${TESTDIR}/failsection && \
CHECKINSTALL && DISKUSAGE \
TIMESTAMP "uninstall" && echo "make uninstall" > ${TESTDIR}/failsection && \
${MAKE} uninstall && DISKUSAGE); then
:
else
errcode=$?
FAIL_SECTION=`cat ${TESTDIR}/failsection`
echo "Failed running ${FAIL_SECTION}"
snapshot=no
exit $errcode
fi
elif [ $CPSRC ]; then
cp -pr ${CURRENT}/* ${TESTDIR}
else
cmdclean=""
fi
fi # Test the HDF5 library
# Run external test if configured
#=============================
#=============================
#if [ -d "$CURRENT" ]; then
if [ "$EXTTEST" != "" ]; then
TIMESTAMP ${EXTTEST}
TESTDIR=${BASEDIR}/TestDir/${SRCDIRNAME}
test -d ${TESTDIR} || mkdir ${TESTDIR}
cd ${TESTDIR}
sleep 1
TIMESTAMP $pwd
ls
${BASEDIR}/${EXTTEST}
errcode=$?
exit $errcode
fi
#=============================
# Run deployment if requested.
#=============================
if [ -n "$DEPLOYDIRNAME" ]; then
# The daily tests deploy to .../hdf5/... or .../hdf4/... except on cobalt where the
# deploy directory is in .../HDF5/... lc will take care of this. If hdf4 or hdf5
# either upper or lower case isn't in the path, RELEASE.txt won't be found unless
# it is in $CURRENT.
POS4=`perl -e "print index(lc(\"${deploydir}/${DEPLOYDIRNAME}\"), 'hdf4')"`
POS5=`perl -e "print index(lc(\"${deploydir}/${DEPLOYDIRNAME}\"), 'hdf5')"`
if [ "${POS4}" -ge "0" ]; then
RELEASE_TXT_LOC="release_notes"
elif [ "${POS5}" -ge "0" ]; then
RELEASE_TXT_LOC="release_docs"
else
RELEASE_TXT_LOC=""
fi
if [ "$snapshot" = "yes" ]; then
TIMESTAMP "deploy"
if (cd ${TESTDIR} &&
${BASEDIR}/bin/deploy ${deploydir}/${DEPLOYDIRNAME} && \
TIMESTAMP "clean" && \
${MAKE} clean && \
TIMESTAMP "check-install prefix=${deploydir}/${DEPLOYDIRNAME}" && \
CHECKINSTALL prefix=${deploydir}/${DEPLOYDIRNAME}); then
cd ${CURRENT}
cp ${RELEASE_TXT_LOC}/RELEASE.txt ${deploydir}/${DEPLOYDIRNAME}
cp COPYING ${deploydir}/${DEPLOYDIRNAME}
#: #continue
else
errcode=$?
exit $errcode
fi
fi
fi # Deploy
#=============================
# Run Release snapshot, update version, and commit to source repository
#=============================
if [ "$cmd" = "all" -o -n "$cmdrel" ]; then
if [ "$snapshot" = "yes" ]; then
TIMESTAMP "release"
DISTCLEAN
(
# Turn on exit on error in the sub-shell so that it does not
# commit source if errors encounter here.
set -e
if [ "$cmdrel" = "autogen-release" ]; then
cd ${BASEDIR}/current_src
else
cd ${CURRENT}
fi
if [ "$HDFREPOS" = "hdf4" ]; then
RELEASE_VERSION="`perl bin/h4vers -v`"
echo "Making snapshot release ($RELEASE_VERSION) to ${ReleaseDir}..."
bin/release -d $ReleaseDir $METHODS
perl bin/h4vers -i
elif [ "$HDFREPOS" = "hdf5" ]; then
RELEASE_VERSION="`perl bin/h5vers -v`"
echo "Making snapshot release ($RELEASE_VERSION) to ${ReleaseDir}..."
if [ "${DOCVERSION}" ]; then
bin/release -d $ReleaseDir --docver ${DOCVERSION} $METHODS
else
bin/release -d $ReleaseDir $METHODS
fi
perl bin/h5vers -i
else
echo "need real release steps. For now, only move current version to previous"
fi
COMMITSNAPSHOT
)
errcode=$?
fi
# Replace the previous version with the current version.
# Should check if the errcode of the release process but there
# are other failures after release was done (e.g. h5vers or git failures)
# that should allow the replacement to occure.
rm -rf ${PREVIOUS}
mv ${CURRENT} ${PREVIOUS}
fi #Release snapshot
#=============================
# Clean the test area. Default is no clean.
#=============================
if [ -n "$cmdclean" ] && [ "$NOMAKE" != "yes" ]; then
TIMESTAMP "clean"
# setup if srcdir is used.
if [ -z "$srcdir" ]; then
TESTDIR=${CURRENT}
else
case "$SRCDIRNAME" in
"")
SRCDIRNAME=$HOSTNAME
;;
-*)
SRCDIRNAME="$HOSTNAME$SRCDIRNAME"
;;
esac
TESTDIR=${BASEDIR}/TestDir/${SRCDIRNAME}
fi
# clean it
if (cd ${TESTDIR} && ${MAKE} $cmdclean ) then
:
else
errcode=$?
snapshot=no
exit $errcode
fi
fi # Clean the Test directory
exit $errcode

View File

@@ -1,19 +0,0 @@
#
# Copyright by The HDF Group.
# Copyright by the Board of Trustees of the University of Illinois.
# All rights reserved.
#
# This file is part of HDF5. The full HDF5 copyright notice, including
# terms governing use, modification, and redistribution, is contained in
# the COPYING file, which can be found at the root of the source code
# distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases.
# If you do not have access to either file, you may request a copy from
# help@hdfgroup.org.
#
# default version for snapshot test
# H5VERSION matches with a source version symbolic name. Will test use the
# latest revision of that branch. If set to "hdf5", it uses the main
# version.
# H5VER tells runtest which version to run
H5VERSION=hdf5

View File

@@ -1,13 +1,12 @@
#!/bin/sh
#
# Copyright by The HDF Group.
# Copyright by the Board of Trustees of the University of Illinois.
# All rights reserved.
#
# This file is part of HDF5. The full HDF5 copyright notice, including
# terms governing use, modification, and redistribution, is contained in
# the COPYING file, which can be found at the root of the source code
# distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases.
# distribution tree, or in https://www.hdfgroup.org/licenses.
# If you do not have access to either file, you may request a copy from
# help@hdfgroup.org.
#

View File

@@ -1,129 +0,0 @@
#!/bin/sh
##
# Copyright by The HDF Group.
# Copyright by the Board of Trustees of the University of Illinois.
# All rights reserved.
#
# This file is part of HDF5. The full HDF5 copyright notice, including
# terms governing use, modification, and redistribution, is contained in
# the COPYING file, which can be found at the root of the source code
# distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases.
# If you do not have access to either file, you may request a copy from
# help@hdfgroup.org.
##
# As a time keeper of the remote daily test process launched by runtest.
# It sleeps for a certain time and then wakes up to hangup those processes
# that are still around, assuming they have run too long.
#
# Programmer: Albert Cheng
# Created Date: 2004/12/23
# variable initialization
waitminutes=300 # default to 5 hours == 300 minutes
debugtimelimit=
debugflag= # no debug
# Function definitions
#
# PRINTMSG
# Print a one line message left justified in a field of 70 characters
# without newline. More output for this line later.
#
PRINTMSG() {
SPACES=" "
echo "$* $SPACES" | cut -c1-70 | tr -d '\012'
}
USAGE()
{
echo "Usage: %0 [-h] [-debug] [<time-limit>]"
echo " Run timekeeper with <time-limit> minutes, default is $waitminutes."
echo " If <time-limit> is in the form of HH:MM, it means wait till then."
echo " -h print this help page"
echo " -debug run debug mode"
}
ParseOption()
{
if [ $# -gt 0 -a "$1" = -h ]; then
shift
USAGE
exit 0
fi
if [ $# -gt 0 -a "$1" = -debug ]; then
shift
debugflag=yes
waitminutes=1 # use shorter time for debug
fi
if [ $# -gt 0 ]; then
targettime=$1
shift
# find out it is minutes to wait or HH:MM to wake up
case $targettime in
*:*) # HH:MM
currenttime=`date +%H:%M`
currenthour=`echo $currenttime | cut -f1 -d:`
currentminute=`echo $currenttime | cut -f2 -d:`
targethour=`echo $targettime | cut -f1 -d:`
targetminute=`echo $targettime | cut -f2 -d:`
waitminutes=`expr \( $targethour - $currenthour \) \* 60 + $targetminute - $currentminute`
if test $waitminutes -le 0; then
# target time is in tomorrow, add 1 day of minutes
waitminutes=`expr 24 \* 60 + $waitminutes`
fi
;;
*)
waitminutes=$targettime
;;
esac
fi
}
# Main body
echo "Timekeeper started at `date`"
ParseOption $*
waitperiod=`expr $waitminutes \* 60` # convert to seconds
if [ -z "$debugflag" ]; then
# normal time keeping mode
# sleep first
echo Timekeeper sleeping for $waitperiod seconds
sleep $waitperiod
# Look for any processes still around
echo "Timekeeper woke up at `date`, looking for processes to terminate..."
for x in PID.* ; do
if [ -f $x ]; then
pid=`cat $x`
# check if process is still around
if test X$pid \!= X && ps -p $pid > /dev/null; then
echo "terminating process $x ($pid)"
kill -HUP $pid
echo "Remote shell command ended. But some processes might still be"
echo "running in the remote machine. Login there to verify."
fi
fi
done
else
# Debug mode. Launch two rsh process, one ends before, the other after
# waitperiod. Must launch timekeeper from a subshell, else the debug
# will wait for it too.
myhostname=`hostname`
( $0 $waitminutes &)
debugtimelimit=`expr $waitperiod - 10`
echo rsh $myhostname sleep $debugtimelimit
rsh $myhostname sleep $debugtimelimit &
echo $! > PID.before
debugtimelimit=`expr $waitperiod + 10`
echo rsh $myhostname sleep $debugtimelimit
rsh $myhostname sleep $debugtimelimit &
echo $! > PID.after
wait
rm PID.before PID.after
fi
echo "Timekeeper ended at `date`"

422
bin/trace
View File

@@ -1,17 +1,17 @@
#!/usr/bin/perl -w
#!/usr/bin/env perl
##
# Copyright by The HDF Group.
# Copyright by the Board of Trustees of the University of Illinois.
# All rights reserved.
#
# This file is part of HDF5. The full HDF5 copyright notice, including
# terms governing use, modification, and redistribution, is contained in
# the COPYING file, which can be found at the root of the source code
# distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases.
# distribution tree, or in https://www.hdfgroup.org/licenses.
# If you do not have access to either file, you may request a copy from
# help@hdfgroup.org.
##
require 5.003;
use warnings;
$Source = "";
##############################################################################
@@ -27,56 +27,106 @@ $Source = "";
# usually the same as the package name.
#
%TypeString = ("haddr_t" => "a",
"H5A_info_t" => "Ai",
"H5A_operator1_t" => "Ao",
"H5A_operator2_t" => "AO",
"hbool_t" => "b",
"H5AC_cache_config_t" => "Cc",
"H5AC_cache_image_config_t" => "CC",
"double" => "d",
"H5D_alloc_time_t" => "Da",
"H5D_append_cb_t" => "DA",
"H5FD_mpio_collective_opt_t" => "Dc",
"H5D_fill_time_t" => "Df",
"H5D_fill_value_t" => "DF",
"H5D_gather_func_t" => "Dg",
"H5FD_mpio_chunk_opt_t" => "Dh",
"H5D_mpio_actual_io_mode_t" => "Di",
"H5FD_file_image_callbacks_t" => "DI",
"H5D_chunk_index_t" => "Dk",
"H5D_layout_t" => "Dl",
"H5D_mpio_no_collective_cause_t" => "Dn",
"H5D_mpio_actual_chunk_opt_mode_t" => "Do",
"H5D_operator_t" => "DO",
"H5D_space_status_t" => "Ds",
"H5D_vds_view_t" => "Dv",
"H5D_scatter_func_t" => "DS",
"H5FD_mpio_xfer_t" => "Dt",
"H5D_vds_view_t" => "Dv",
"H5FD_class_value_t" => "DV",
"H5D_chunk_iter_op_t" => "x",
"herr_t" => "e",
"H5E_auto1_t" => "Ea",
"H5E_auto2_t" => "EA",
"H5ES_event_complete_func_t" => "EC",
"H5E_direction_t" => "Ed",
"H5E_error_t" => "Ee",
"H5ES_event_insert_func_t" => "EI",
"H5ES_status_t" => "Es",
"H5E_type_t" => "Et",
"H5FD_class_t" => "FC",
"H5F_close_degree_t" => "Fd",
"H5F_fspace_strategy_t" => "Ff",
"H5F_file_space_type_t" => "Ff",
"H5F_flush_cb_t" => "FF",
"H5F_info2_t" => "FI",
"H5F_mem_t" => "Fm",
"H5F_scope_t" => "Fs",
"H5F_fspace_type_t" => "Ft",
"H5F_file_space_type_t" => "Ft",
"H5F_libver_t" => "Fv",
"H5G_iterate_t" => "Gi",
"H5G_obj_t" => "Go",
"H5G_stat_t" => "Gs",
"hsize_t" => "h",
"H5_atclose_func_t" => "Hc",
"hssize_t" => "Hs",
"H5E_major_t" => "i",
"H5E_minor_t" => "i",
"H5_iter_order_t" => "Io",
"H5_index_t" => "Ii",
"H5E_major_t" => "i", # H5E_major_t is typedef'd to hid_t
"H5E_minor_t" => "i", # H5E_minor_t is typedef'd to hid_t
"hid_t" => "i",
"H5I_future_discard_func_t" => "ID",
"H5I_free_t" => "If",
"H5_index_t" => "Ii",
"H5I_iterate_func_t" => "II",
"H5_iter_order_t" => "Io",
"H5FD_subfiling_ioc_select_t" => "IO",
"H5I_future_realize_func_t" => "IR",
"int" => "Is",
"int32_t" => "Is",
"H5I_search_func_t" => "IS",
"H5I_type_t" => "It",
"unsigned" => "Iu",
"unsigned int" => "Iu",
"uint32_t" => "Iu",
"H5I_type_t" => "It",
"H5O_token_t" => "k",
"H5L_iterate1_t" => "Li",
"H5L_iterate2_t" => "LI",
"H5G_link_t" => "Ll", #Same as H5L_type_t now
"H5L_type_t" => "Ll",
"H5L_elink_traverse_t" => "Lt",
"H5MM_allocate_t" => "Ma",
"MPI_Comm" => "Mc",
"H5MM_free_t" => "Mf",
"MPI_Info" => "Mi",
"H5M_iterate_t" => 'MI',
"H5FD_mem_t" => "Mt",
"off_t" => "o",
"H5O_iterate1_t" => "Oi",
"H5O_iterate2_t" => "OI",
"H5O_mcdt_search_cb_t" => "Os",
"H5O_type_t" => "Ot",
"H5P_class_t" => "p",
"hobj_ref_t" => "r",
"H5P_cls_create_func_t" => "Pc",
"H5P_prp_create_func_t" => "PC",
"H5P_prp_delete_func_t" => "PD",
"H5P_prp_get_func_t" => "PG",
"H5P_iterate_t" => "Pi",
"H5P_cls_close_func_t" => "Pl",
"H5P_prp_close_func_t" => "PL",
"H5P_prp_compare_func_t" => "PM",
"H5P_cls_copy_func_t" => "Po",
"H5P_prp_copy_func_t" => "PO",
"H5P_prp_set_func_t" => "PS",
"hdset_reg_ref_t" => "Rd",
"hobj_ref_t" => "Ro",
"H5R_ref_t" => "Rr",
"H5R_type_t" => "Rt",
"char" => "s",
"unsigned char" => "s",
@@ -85,79 +135,86 @@ $Source = "";
"H5S_sel_type" => "St",
"htri_t" => "t",
"H5T_cset_t", => "Tc",
"H5T_conv_t" => "TC",
"H5T_direction_t", => "Td",
"H5T_pers_t" => "Te",
"H5T_conv_except_func_t" => "TE",
"H5T_norm_t" => "Tn",
"H5T_order_t" => "To",
"H5T_pad_t" => "Tp",
"H5T_pers_t" => "Te",
"H5T_sign_t" => "Ts",
"H5T_class_t" => "Tt",
"H5T_str_t" => "Tz",
"unsigned long" => "Ul",
"unsigned long long" => "UL",
"void" => "x",
"FILE" => "x",
"H5A_operator_t" => "x",
"H5A_operator1_t" => "x",
"H5A_operator2_t" => "x",
"H5A_info_t" => "x",
"H5AC_cache_config_t" => "x",
"H5AC_cache_image_config_t" => "x",
"H5D_append_cb_t" => "x",
"H5D_gather_func_t" => "x",
"H5D_operator_t" => "x",
"H5D_scatter_func_t" => "x",
"H5E_auto_t" => "x",
"H5E_auto1_t" => "x",
"H5E_auto2_t" => "x",
"H5E_walk_t" => "x",
"H5E_walk1_t" => "x",
"H5E_walk2_t" => "x",
"H5F_flush_cb_t" => "x",
"H5F_info1_t" => "x",
"H5F_info2_t" => "x",
"H5F_retry_info_t" => "x",
"H5FD_t" => "x",
"H5FD_class_t" => "x",
"H5FD_stream_fapl_t" => "x",
"H5FD_file_image_callbacks_t" => "x",
"H5G_iterate_t" => "x",
"H5G_info_t" => "x",
"H5I_free_t" => "x",
"H5I_search_func_t" => "x",
"H5L_class_t" => "x",
"H5L_elink_traverse_t" => "x",
"H5L_iterate_t" => "x",
"H5MM_allocate_t" => "x",
"H5MM_free_t" => "x",
"H5O_info_t" => "x",
"H5O_iterate_t" => "x",
"H5O_mcdt_search_cb_t" => "x",
"H5P_cls_create_func_t" => "x",
"H5P_cls_copy_func_t" => "x",
"H5P_cls_close_func_t" => "x",
"H5P_iterate_t" => "x",
"H5P_prp_create_func_t" => "x",
"H5P_prp_copy_func_t" => "x",
"H5P_prp_close_func_t" => "x",
"H5P_prp_delete_func_t" => "x",
"H5P_prp_get_func_t" => "x",
"H5P_prp_set_func_t" => "x",
"H5P_prp_compare_func_t" => "x",
"H5T_cdata_t" => "x",
"H5T_conv_t" => "x",
"H5T_conv_except_func_t" => "x",
"H5Z_func_t" => "x",
"H5Z_filter_func_t" => "x",
"uint64_t" => "UL",
"H5VL_attr_get_t" => "Va",
"H5VL_blob_optional_t" => "VA",
"H5VL_attr_specific_t" => "Vb",
"H5VL_blob_specific_t" => "VB",
"H5VL_dataset_get_t" => "Vc",
"H5VL_class_value_t" => "VC",
"H5VL_dataset_specific_t" => "Vd",
"H5VL_datatype_get_t" => "Ve",
"H5VL_datatype_specific_t" => "Vf",
"H5VL_file_get_t" => "Vg",
"H5VL_file_specific_t" => "Vh",
"H5VL_group_get_t" => "Vi",
"H5VL_group_specific_t" => "Vj",
"H5VL_link_create_t" => "Vk",
"H5VL_link_get_t" => "Vl",
"H5VL_get_conn_lvl_t" => "VL",
"H5VL_link_specific_t" => "Vm",
"H5VL_object_get_t" => "Vn",
"H5VL_request_notify_t" => "VN",
"H5VL_object_specific_t" => "Vo",
"H5VL_request_specific_t" => "Vr",
"H5VL_attr_optional_t" => "Vs",
"H5VL_subclass_t" => "VS",
"H5VL_dataset_optional_t" => "Vt",
"H5VL_datatype_optional_t" => "Vu",
"H5VL_file_optional_t" => "Vv",
"H5VL_group_optional_t" => "Vw",
"H5VL_link_optional_t" => "Vx",
"H5VL_object_optional_t" => "Vy",
"H5VL_request_optional_t" => "Vz",
"va_list" => "x",
"void" => "x",
"size_t" => "z",
"H5Z_SO_scale_type_t" => "Za",
"H5Z_class_t" => "Zc",
"H5Z_EDC_t" => "Ze",
"H5Z_filter_t" => "Zf",
"H5Z_filter_func_t" => "ZF",
"ssize_t" => "Zs",
# Types below must be defined here, as they appear in function arguments,
# but they are not yet supported in the H5_trace_args() routine yet. If
# they are used as an actual parameter type (and not just as a pointer to
# to the type), they must have a "real" abbreviation added (like the ones
# above), moved to the section of entries above, and support for displaying
# the type must be added to H5_trace_args().
"H5ES_err_info_t" => "#",
"H5FD_t" => "#",
"H5FD_hdfs_fapl_t" => "#",
"H5FD_mirror_fapl_t" => "#",
"H5FD_onion_fapl_t" => "#",
"H5FD_ros3_fapl_t" => "#",
"H5FD_splitter_vfd_config_t" => "#",
"H5L_class_t" => "#",
"H5VL_class_t" => "#",
"H5VL_loc_params_t" => "#",
"H5VL_request_status_t" => "#",
);
##############################################################################
# Maximum length of H5TRACE macro line
# If the ColumnLimit in .clang-format is changed, this value will need to be updated
#
my $max_trace_macro_line_len = 110;
##############################################################################
# Print an error message.
#
@@ -188,8 +245,15 @@ sub argstring ($$$) {
# Normalize the data type by removing redundant white space,
# certain type qualifiers, and indirection.
$atype =~ s/^\bconst\b//;
$atype =~ s/^\bconst\b//; # Leading const
$atype =~ s/\s*const\s*//; # const after type, possibly in the middle of '*'s
$atype =~ s/^\bstatic\b//;
$atype =~ s/\bH5_ATTR_UNUSED\b//g;
$atype =~ s/\bH5_ATTR_DEPRECATED_USED\b//g;
$atype =~ s/\bH5_ATTR_NDEBUG_UNUSED\b//g;
$atype =~ s/\bH5_ATTR_DEBUG_API_USED\b//g;
$atype =~ s/\bH5_ATTR_PARALLEL_UNUSED\b//g;
$atype =~ s/\bH5_ATTR_PARALLEL_USED\b//g;
$atype =~ s/\s+/ /g;
$ptr = length $1 if $atype =~ s/(\*+)//;
$atype =~ s/^\s+//;
@@ -207,53 +271,65 @@ sub argstring ($$$) {
--$ptr;
$tstr = $TypeString{"$atype*"};
} elsif (!exists $TypeString{$atype}) {
errmesg $file, $func, "untraceable type \`$atype", '*'x$ptr, "\'";
# Defer throwing error until type is actually used
# errmesg $file, $func, "untraceable type \`$atype", '*'x$ptr, "\'";
} else {
$tstr = $TypeString{$atype};
}
return ("*" x $ptr) . ($array?"[$array]":"") . $tstr;
return ("*" x $ptr) . ($array ? "[$array]" : "") . $tstr;
}
##############################################################################
# Given information about an API function, rewrite that function with
# updated tracing information.
#
my $file_api = 0;
my $file_args = 0;
my $total_api = 0;
my $total_args = 0;
sub rewrite_func ($$$$$) {
my ($file, $type, $name, $args, $body) = @_;
my ($arg,$trace);
my (@arg_name, @arg_str);
my ($arg, $trace, $argtrace);
my (@arg_name, @arg_str, @arg_type);
local $_;
# Keep copy of original arguments
my $orig_args = $args;
# Parse return value
my $rettype = argstring $file, $name, $type;
goto error if $rettype =~ /!/;
# Parse arguments
if ($args eq "void") {
$trace = "H5TRACE0(\"$rettype\",\"\");\n";
$trace = "H5TRACE0(\"$rettype\", \"\");\n";
$argtrace = "H5ARG_TRACE0(\"\")";
} else {
# Split arguments. First convert `/*in,out*/' to get rid of the
# comma, then split the arguments on commas.
$args =~ s/(\/\*\s*in),\s*(out\s*\*\/)/$1_$2/g;
# comma and remove lines beginning with a '#', then split the arguments
# on commas.
$args =~ s/(\/\*\s*in),\s*(out\s*\*\/)/$1_$2/g; # Get rid of comma in 'in,out'
$args =~ s/H5FL_TRACK_PARAMS//g; # Remove free list macro
$args =~ s/\n#.*?\n/\n/g; # Remove lines beginning with '#'
my @args = split /,[\s\n]*/, $args;
my $argno = 0;
my %names;
for $arg (@args) {
if($arg=~/\w*\.{3}\w*/){
if($arg=~/\w*\.{3}\w*/){ # Skip "..." for varargs parameter
next;
}
unless ($arg=~/^(([a-z_A-Z]\w*\s+)+\**)
unless ($arg=~/^((\s*[a-z_A-Z](\w|\*)*\s+)+(\s*\*\s*|\s*const\s*|\s*volatile\s*)*)
([a-z_A-Z]\w*)(\[.*?\])?
(\s*\/\*\s*(in|out|in_out)\s*\*\/)?\s*$/x) {
errmesg $file, $name, "unable to parse \`$arg\'";
goto error;
} else {
my ($atype, $aname, $array, $adir) = ($1, $3, $4, $6);
my ($atype, $aname, $array, $adir) = ($1, $5, $6, $8);
$names{$aname} = $argno++;
$adir ||= "in";
$atype =~ s/\s+$//;
push @arg_name, $aname;
push @arg_type, $atype;
if ($adir eq "out") {
push @arg_str, "x";
@@ -274,71 +350,184 @@ sub rewrite_func ($$$$$) {
}
}
}
# Compose the trace macro
$trace = "H5TRACE" . scalar(@arg_str) . "(\"$rettype\", \"";
$argtrace = "H5ARG_TRACE" . scalar(@arg_str) . "(__func__, \"";
$trace .= join("", @arg_str) . "\"";
my $len = 4 + length $trace;
for (@arg_name) {
if ($len + length >= 77) {
$trace .= ",\n $_";
$len = 13 + length;
$argtrace .= join("", @arg_str) . "\"";
# Add 4 for indenting the line
my $len = 4 + length($trace);
for my $i (0 .. $#arg_name) {
# Handle wrapping
# Be VERY careful here! clang-format and this script MUST agree
# on which lines get wrapped or there will be churn as each tries
# to undo the other's output.
#
# TWO cases must be handled:
# 1) The argument is that last one and ');' will be appended
# 2) The argument is NOT the last one and ',' will be appended
#
# NB: clang-format does NOT consider terminal newlines when
# counting columns for the ColumnLimit
#
# The extra '2' added after $len includes the ', ' that would be
# added BEFORE the argument.
#
my $adjust = ($i + 1 == scalar(@arg_str)) ? 2 : 1;
my $len_if_added = $len + 2 + length($arg_name[$i]) + $adjust;
# Wrap lines that will be longer than the limit
if ($len_if_added > $max_trace_macro_line_len) {
# Wrap line, with indentation
$trace .= ",\n ";
$len = 13; # Set to 13, for indentation
# Indent an extra space to account for extra digit in 'H5TRACE' macro
if (scalar(@arg_str) >= 10) {
$trace .= " ";
$len++;
}
} else {
$trace .= ", $_";
$len += 1 + length;
$trace .= ", ";
$len += 2; # Add 2, for ', '
}
# Append argument
$trace .= "$arg_name[$i]";
$argtrace .= ", $arg_name[$i]";
# Add length of appended argument name
$len += length($arg_name[$i]);
}
# Append final ');' for macro
$trace .= ");\n";
}
goto error if grep {/!/} @arg_str;
# The H5TRACE() statement
if ($body =~ /\/\*[ \t]*NO[ \t]*TRACE[ \t]*\*\//) {
# Ignored due to NO TRACE comment.
} elsif ($body =~ s/((\n[ \t]*)H5TRACE\d+\s*\(.*?\);)\n/"$2$trace"/es) {
# Replaced an H5TRACE macro.
} elsif ($body=~s/((\n[ \t]*)FUNC_ENTER\w*\s*(\(.*?\))?;??)\n/"$1$2$trace"/es) {
# Added an H5TRACE macro after a FUNC_ENTER macro.
} else {
errmesg $file, $name, "unable to insert tracing information";
print "body = ", $body, "\n";
goto error;
$argtrace .= ")";
}
# Check for API / non-API routine name
if( $name =~ /H5[A-Z]{0,2}[a-z].*/) {
# The H5TRACE() statement, for API routines
if ($body =~ /\/\*[ \t]*NO[ \t]*TRACE[ \t]*\*\//) {
# Ignored due to NO TRACE comment.
} else {
# Check for known, but unsupported type
if ( $trace =~ /(^#)|([^*]#)/ ) {
# Check for unsupported return type
if ( $type =~ /(^#)|([^*]#)/ ) {
errmesg $file, $name, "unsupported type in return type\nAdd to TypeString hash in trace script and update H5_trace_args()";
print "type = '$type'\n";
}
# Check for unsupported argument type
$index = 0;
for (@arg_str) {
if ( $_ =~ /(^#)|([^*]#)/ ) {
errmesg $file, $name, "unsupported type in args\nAdd to TypeString hash in trace script and update H5_trace_args()";
print "type = $arg_type[$index]\n";
}
$index++;
}
goto error;
}
# Check for unknown (and therefore unsupported) type
if ( $trace =~ /(^!)|([^*]!)/ ) {
# Check for unsupported return type
if ( $type =~ /(^!)|([^*]!)/ ) {
errmesg $file, $name, "unknown type in return type\nAdd to TypeString hash in trace script and also update H5_trace_args() if used by value";
print "type = '$type'\n";
}
# Check for unsupported argument type
$index = 0;
for (@arg_str) {
if ( $_ =~ /(^!)|([^*]!)/ ) {
errmesg $file, $name, "unknown type in args\nAdd to TypeString hash in trace script and also update H5_trace_args() if used by value";
print "type = $arg_type[$index]\n";
}
$index++;
}
goto error;
}
if ($body =~ s/((\n[ \t]*)H5TRACE\d+\s*\(.*?\);)\n/"$2$trace"/es) {
# Replaced an H5TRACE macro.
} elsif ($body=~s/((\n[ \t]*)FUNC_ENTER\w*[ \t]*(\(.*?\))?;??)\n/"$1$2$trace"/es) {
# Added an H5TRACE macro after a FUNC_ENTER macro.
} else {
errmesg $file, $name, "unable to insert tracing information";
print "body = ", $body, "\n";
goto error;
}
}
#Increment # of API routines modified
$file_api++;
}
# Check for H5ARG_TRACE macros in non-API routines
if ( $body =~ /H5ARG_TRACE/ ) {
# Check for untraceable type (deferred until $argtrace used)
if ( $argtrace =~ /(^!)|([^*]!)/ ) {
errmesg $file, $name, "untraceable type in args";
print "args = '$orig_args'\n";
goto error;
}
# Replace / update H5ARG_TRACE macro.
$body =~ s/(H5ARG_TRACE(\d+\s*\(.*?\))?)/"$argtrace"/esg;
#Increment # of non-API routines modified
$file_args++;
}
error:
return "\n$type\n$name($args)\n$body";
return "\n$type\n$name($orig_args)\n$body";
}
##############################################################################
# Process each source file, rewriting API functions with updated
# tracing information.
#
my $total_api = 0;
for $file (@ARGV) {
$file_api = 0;
$file_args = 0;
# Ignore some files that do not need tracing macros
unless ($file eq "H5FDmulti.c" or $file eq "src/H5FDmulti.c" or $file eq "H5FDstdio.c" or $file eq "src/H5FDstdio.c") {
unless ($file eq "H5FDmulti.c" or $file eq "src/H5FDmulti.c" or $file eq "H5FDstdio.c" or $file eq "src/H5FDstdio.c" or $file eq "src/H5TS.c" or $file eq "src/H5FDperform.c") {
# Snarf up the entire file
open SOURCE, $file or die "$file: $!\n";
$Source = join "", <SOURCE>;
close SOURCE;
# Make modifications
# Make a copy of the original data
my $original = $Source;
my $napi = $Source =~ s/\n([A-Za-z]\w*(\s+[A-Za-z]\w*)*\s*\**)\n #type
(H5[A-Z]{0,2}[^_A-Z0-9]\w*) #name
\s*\((.*?)\)\s* #args
(\{.*?\n\}[^\n]*) #body
/rewrite_func($file,$1,$3,$4,$5)/segx;
$total_api += $napi;
# Make modifications
$Source =~ s/\n([A-Za-z]\w*(\s+[A-Za-z]\w*)*\s*\**)\n #type
(H5[A-Z]{0,2}_?[a-zA-Z0-9_]\w*) #name
\s*\((.*?)\)\s* #args
(\{.*?\n\}[^\n]*) #body
/rewrite_func($file,$1,$3,$4,$5)/segx;
# If the source changed then print out the new version
if ($original ne $Source) {
printf "%s: instrumented %d API function%s\n",
$file, $napi, 1==$napi?"":"s";
printf "%s: instrumented %d API function%s and %d argument list%s\n",
$file, $file_api, (1 == $file_api ? "" : "s"),
$file_args, (1 == $file_args ? "" : "s");
rename $file, "$file~" or die "unable to make backup";
open SOURCE, ">$file" or die "unable to modify source";
print SOURCE $Source;
close SOURCE;
$total_api += $file_api;
$total_args += $file_args;
}
}
}
@@ -350,6 +539,9 @@ if ($found_errors eq 1) {
printf "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\n";
exit 1;
} else {
printf "Finished processing HDF5 API calls\n";
printf "Finished processing HDF5 API calls:\n";
printf "\tinstrumented %d API function%s and %d argument list%s\n",
$total_api, (1 == $total_api ? "" : "s"),
$total_args, (1 == $total_args ? "" : "s");
}

549
bin/warnhist Executable file
View File

@@ -0,0 +1,549 @@
#!/usr/bin/env perl
require 5.003;
use warnings;
#
# Copyright by The HDF Group.
# All rights reserved.
#
# This file is part of HDF5. The full HDF5 copyright notice, including
# terms governing use, modification, and redistribution, is contained in
# the COPYING file, which can be found at the root of the source code
# distribution tree, or in https://www.hdfgroup.org/licenses.
# If you do not have access to either file, you may request a copy from
# help@hdfgroup.org.
#
# Quincey Koziol
# 9 Aug 2013
#
# Purpose: Given an input file containing the output from a build of the
# library, gather the file names and line numbers, alias
# identical types of warnings together into a single bin and
# report the number of warnings for each type of warning, each file
# and the total count of warnings
# Perl modules/settings
use strict;
use Getopt::Std;
# Global variables, for accumulating information
my $totalcount = 0;
my $notecount = 0;
my $dupcount = 0;
my %warn_count = ();
my $warncount;
my %warn_file = ();
my %warn_file_line = ();
my %warn_file_line_offset = ();
my %file_count = ();
my $filecount;
my $ignorecount = 0;
my @ignorenames;
my %ignored_files = ();
my %warn_file_indices = ();
my %file_warn_indices = ();
my @warn_match_strings;
my @file_match_strings;
my %file_warn = ();
my %file_warn_line = ();
my $current_warning = 0;
my $current_file = 0;
my $warn_index;
my $genericize = 1;
# Info about last name / line / offset for file
my $last_c_name;
my $last_fort_name;
my $last_fort_line;
my $last_fort_offset;
# Display usage
sub do_help {
print "Usage: 'warnhist [-h, --help] [-t <prefix>] [-w <n>] [-W] [-f <n>] [-F] [-s <warning string list>] [-S <file string list] [-l] [-u] [-i <name list>] [file]'\n";
print "\t-h, --help\tDisplay this usage\n";
print "\t-t <prefix>\tTrim pathname prefix from filenames, <prefix>\n";
print "\t-w <n>\tDisplay files for a given warning index list, <n>\n";
print "\t\t<n> can be a single value, a range, or a comma separated list\n";
print "\t\tFor example: '0' or '0,4' or '8-10' or '0,2-4,8-10,13'\n";
print "\t-W\tDisplay files for all warnings\n";
print "\t-f <n>\tDisplay warnings for a given file index list, <n>\n";
print "\t\t<n> can be a single value, a range, or a comma separated list\n";
print "\t\tFor example: '0' or '0,4' or '8-10' or '0,2-4,8-10,13'\n";
print "\t-F\tDisplay warnings for all files\n";
print "\t-s <warning string list>\tDisplay files for warnings which contain a string, <warning string list>\n";
print "\t\t<warning string list> is a comma separated list, with no spaces\n";
print "\t\tFor example: 'Wunused-dummy-argument' or 'Wunused-dummy-argument,Wunused-variable'\n";
print "\t-S <file string list>\tDisplay warnings for files which contain a string, <file string list>\n";
print "\t\t<file string list> is a comma separated list, with no spaces\n";
print "\t\tFor example: 'H5Fint' or 'H5Fint,H5Gnode'\n";
print "\t-l\tDisplay line numbers for file/warning\n";
print "\t-u\tLeave 'unique' types in warnings, instead of genericizing them\n";
print "\t-i <name list>\tIgnore named files, <name list>\n";
print "\t\t<name list> is a comma separated list, with no spaces\n";
print "\t\tFor example: 'H5LTparse' or 'H5LTparse,H5LTanalyze'\n";
print "\tfile\tFilename containing build output\n";
print "\t\tIf no file is given, standard input is used.\n";
exit;
}
sub main::HELP_MESSAGE {
do_help();
}
# declare the Perl command line flags/options we want to allow
my %options=();
getopts("FWhut:w:f:s:S:i:l", \%options);
# Display usage, if requested
if($options{h}) {
do_help();
}
# Parse list of file names to ignore
if(exists $options{i}) {
@ignorenames = split /,/, $options{i};
#print STDERR @ignorenames;
}
# Parse list of warning indices to expand file names
if(exists $options{w}) {
my @tmp_indices;
@tmp_indices = split /,/, $options{w};
#print STDERR @tmp_indices;
for my $x (@tmp_indices) {
#print STDERR "x = '$x'\n";
if($x =~ /\-/) {
my $start_index;
my $end_index;
#print STDERR "matched = '$x'\n";
($start_index, $end_index) = split /\-/, $x;
#print STDERR "start_index = '$start_index', end_index = '$end_index'\n";
for my $y ($start_index..$end_index) {
#print STDERR "y = '$y'\n";
if(!exists $warn_file_indices{$y}) {
$warn_file_indices{$y} = $y;
}
}
}
else {
if(!exists $warn_file_indices{$x}) {
$warn_file_indices{$x} = $x;
}
}
}
#foreach (sort keys %warn_file_indices) {
# print STDERR "$_ : $warn_file_indices{$_}\n";
#}
}
# Parse list of warning strings to expand file names
if(exists $options{s}) {
@warn_match_strings = split /,/, $options{s};
# print STDERR @warn_match_strings;
}
# Parse list of file indices to expand warnings
if(exists $options{f}) {
my @tmp_indices;
@tmp_indices = split /,/, $options{f};
#print STDERR @tmp_indices;
for my $x (@tmp_indices) {
#print STDERR "x = '$x'\n";
if($x =~ /\-/) {
my $start_index;
my $end_index;
#print STDERR "matched = '$x'\n";
($start_index, $end_index) = split /\-/, $x;
#print STDERR "start_index = '$start_index', end_index = '$end_index'\n";
for my $y ($start_index..$end_index) {
#print STDERR "y = '$y'\n";
if(!exists $file_warn_indices{$y}) {
$file_warn_indices{$y} = $y;
}
}
}
else {
if(!exists $file_warn_indices{$x}) {
$file_warn_indices{$x} = $x;
}
}
}
#foreach (sort keys %warn_file_indices) {
# print STDERR "$_ : $warn_file_indices{$_}\n";
#}
}
# Parse list of warning strings for files to expand warnings
if(exists $options{S}) {
@file_match_strings = split /,/, $options{S};
# print STDERR @file_match_strings;
}
# Check if warnings should stay unique and not be "genericized"
if($options{u}) {
$genericize = 0;
}
PARSE_LINES:
while (<>) {
my $name;
my $line;
my $prev_line;
my $toss;
my $offset;
my $warning;
my $extra;
my $extra2;
# Retain last FORTRAN compile line, which comes a few lines before warning
if($_ =~ /.*\.[fF]90:.*/) {
($last_fort_name, $last_fort_line, $last_fort_offset) = split /\:/, $_;
($last_fort_line, $toss) = split /\./, $last_fort_line;
}
# Retain last C/C++ compile line, which possibly comes a few lines before warning
if($_ =~ /.*[A-Za-z0-9_]\.[cC]:.*/) {
($last_c_name, $toss) = split /\:/, $_;
}
# Retain C/C++ compile line, which comes with the line of warning
if($_ =~ /.*[A-Za-z0-9_]\.[chC]\(.*[0-9]\):.*#.*/) {
$last_c_name = $_;
}
# Skip lines that don't have the word "warning"
next if $_ !~ /[Ww]arning/;
# Skip warnings from linker
next if $_ =~ /ld: warning:/;
# Skip warnings from build_py and install_lib
next if $_ =~ /warning: (build_py|install_lib)/;
# Skip variables with the word 'warning' in them
next if $_ =~ /_warning_/;
# Skip AMD Optimizing Compiler (aocc) lines "<#> warning(s) generated."
next if $_ =~ / warnings? generated\./;
# "Hide" the C++ '::' symbol until we've parsed out the parts of the line
while($_ =~ /\:\:/) {
$_ =~ s/\:\:/@@@@/g;
}
# Check for weird formatting of warning message
$line = "??";
$offset = "??";
if($_ =~ /^cc1: warning:.*/) {
$name = $last_c_name;
($toss, $toss, $warning, $extra, $extra2) = split /\:/, $_;
# Check for CMAKE build with warning on first line and no filename
} elsif($_ =~ /^\s*[Ww]arning:.*/) {
$name = $last_c_name;
($toss, $warning, $extra, $extra2) = split /\:/, $_;
# Check for file-scope gcc Fortran warning output
} elsif($_ =~ /f\d\d\d: Warning:/) {
# These are interspersed with the "compiling a file" output
# when compiling with `make -j` and thus difficult to tie to
# any particular file. They are due to things like inappropriate
# build options and don't have a line number.
#
# They start with f, as in f951
$name = "(generic)";
$line = int(rand(1000000)); # Hack to avoid counting as duplictates
($warning) = $_ =~ /\[(.*)\]/x;
# Check for FORTRAN warning output
} elsif($_ =~ /^Warning:.*/) {
$name = $last_fort_name;
$line = $last_fort_line;
$offset = $last_fort_offset;
($toss, $warning, $extra, $extra2) = split /\:/, $_;
# Check for improperly parsed filename or line
if($name =~ /^$/) {
print "Filename is a null string! Input line #$. is: '$_'";
next
}
if($line =~ /^$/) {
print "Line is a null string! Input line #$. is: '$_'";
next
}
# Check for non-GCC warning (Solaris/Oracle?)
} elsif($_ =~ /^\".*, line [0-9]+: *[Ww]arning:.*/) {
($name, $toss, $warning, $extra, $extra2) = split /\:/, $_;
($name, $line) = split /\,/, $name;
$name =~ s/^\"//g;
$name =~ s/\"$//g;
$line =~ s/^\s*line\s*//g;
# Check for Intel icc warning
} elsif($_ =~ /.*[A-Za-z0-9_]\.[chC]\(.*[0-9]\):.*#.*/) {
($last_c_name, $toss, $warning) = split /\:/, $last_c_name;
($name, $line) = split /\(/, $last_c_name;
$line =~ s/\)//g;
} else {
# Check for 'character offset' field appended to file & line #
# (This is probably specific to GCC)
if($_ =~ /^.*[0-9]+\:[0-9]+\:/) {
($name, $line, $offset, $toss, $warning, $extra, $extra2) = split /\:/, $_;
} else {
($name, $line, $toss, $warning, $extra, $extra2) = split /\:/, $_;
}
}
# Check for extra ':' followed by more text in original warning string,
# and append the ':' and text back onto the parsed warning
# (Use 'length $extra' idiom to avoid warning when $extra is undefined)
if(length $extra ) {
$warning = join ':', $warning, $extra;
}
if(length $extra2 ) {
$warning = join ':', $warning, $extra2;
}
# Restore the C++ '::' symbol now that we've parsed out the parts of the line
while($warning =~ /@@@@/) {
$warning =~ s/@@@@/\:\:/g;
}
# Trim leading '..' paths from filename
while($name =~ /^\.\.\//) {
$name =~ s/^\.\.\///g;
}
# Check for trimming prefix
if((exists $options{t}) && ($name =~ /$options{t}/)) {
$name =~ s/^$options{t}\///g;
}
# Check for ignored file
if(exists $options{i}) {
for my $x (@ignorenames) {
if($name =~ /$x/) {
$ignorecount++;
if(!(exists $ignored_files{$name})) {
$ignored_files{$name} = $name;
}
next PARSE_LINES;
}
}
}
# Check for improperly parsed warning (usually an undefined warning string)
if(!defined $warning) {
print "Warning Undefined! Input line is: '$_'";
next
}
# Get rid of leading & trailing whitespace
$warning =~ s/^\s//g;
$warning =~ s/\s$//g;
# Check for improperly parsed warning
if($warning =~ /^$/) {
print "Warning is a null string! Input line is: '$_'";
next
}
# Convert all quotes to '
$warning =~ s//'/g;
$warning =~ s//'/g;
$warning =~ s/"/'/g;
#
# These skipped messages & "genericizations" may be specific to GCC
# Skip supplemental warning message
if($warning =~ /near initialization for/) {
$notecount++;
next
}
# Skip C++ supplemental warning message
if($warning =~ /in call to/) {
$notecount++;
next
}
# Skip GCC warning that should be a note
if($_ =~ /\(this will be reported only once per input file\)/) {
$notecount++;
next
}
if($genericize) {
# Eliminate C/C++ "{aka <some type>}" and "{aka '<some type>'}" info
if($warning =~ /\s(\{|\()aka '?[A-Za-z_0-9\(\)\*\,\[\]\.\<\>\&\:\+\#]+[A-Za-z_0-9\(\)\*\,\[\]\.\<\>\&\:\+\#\ ]*'?(\}|\))/) {
$warning =~ s/\s(\{|\()aka '?[A-Za-z_0-9\(\)\*\,\[\]\.\<\>\&\:\+\#]+[A-Za-z_0-9\(\)\*\,\[\]\.\<\>\&\:\+\#\ ]*'?(\}|\))//g;
}
# Genericize C/C++ '<some type>', printf format '%<some format>', and
# "unknown warning group" into '-'
if($warning =~ /'[A-Za-z_0-9\(\)\*\,\[\]\.\<\>\&\:\+\#\-\=]+[A-Za-z_0-9\(\)\*\,\[\]\.\<\>\&\:\+\#\-\=\ ]*'/) {
$warning =~ s/'[A-Za-z_0-9\(\)\*\,\[\]\.\<\>\&\:\+\#\-\=]+[A-Za-z_0-9\(\)\*\,\[\]\.\<\>\&\:\+\#\-\=\ ]*'/'-'/g;
}
if($warning =~ /'%[\#0\-\ \+]*[,;\:_]?[0-9\*]*\.?[0-9\*]*[hjltzL]*[aAcdeEfFgGinosuxX]'/) {
$warning =~ s/'%[\#0\-\ \+]*[,;\:_]?[0-9\*]*\.?[0-9\*]*[hjltzL]*[aAcdeEfFgGinosuxX]'/'-'/g;
}
# Genericize C/C++ "<macro>" warnings into "-"
if($warning =~ /"[A-Za-z_0-9]*"/) {
$warning =~ s/"[A-Za-z_0-9]*"/"-"/g;
}
# Genericize [GCC?] C/C++ warning text about suggested attribute
if($warning =~ /attribute=[A-Za-z_0-9]*\]/) {
$warning =~ s/=[A-Za-z_0-9]*\]/=-\]/g;
}
# Genericize FORTRAN "at (<n>)" into "at (-)", "REAL(<n>)" into "REAL(-)",
# and "INTEGER(<n>)" into "INTEGER(-)"
if($warning =~ /.*at\s\([0-9]+\).*/) {
$warning =~ s/at\s\([0-9]+\)/at \(-\)/g;
}
if($warning =~ /.*REAL\([0-9]+\).*/) {
$warning =~ s/REAL\([0-9]+\)/REAL\(-\)/g;
}
if($warning =~ /.*INTEGER\([0-9]+\).*/) {
$warning =~ s/INTEGER\([0-9]+\)/INTEGER\(-\)/g;
}
# Genericize standalone numbers in warnings
if($warning =~ /(\s|')-?[0-9]+(\s|')/) {
$warning =~ s/-?[0-9]+/-/g;
}
# Genericize unusual GCC/G++/GFORTRAN warnings that aren't handled above
if($warning =~ /\[deprecation\] [A-Za-z_0-9]*\([A-Za-z_,0-9]*\) in [A-Za-z_0-9]* has been deprecated.*/) {
$warning =~ s/[A-Za-z_0-9]*\([A-Za-z_,0-9]*\) in [A-Za-z_0-9]*/-\(-\) in -/g;
}
}
# <end possible GCC-specific code>
# Check if we've already seen this warning on this line in this file
# (Can happen for warnings from inside header files)
if( !exists $warn_file_line_offset{$warning}{$name}{$line}{$offset} ) {
# Increment count for [generic] warning
$warn_count{$warning}++;
$warn_file{$warning}{$name}++;
$warn_file_line{$warning}{$name}{$line}++;
$warn_file_line_offset{$warning}{$name}{$line}{$offset}++;
# Increment count for filename
$file_count{$name}++;
$file_warn{$name}{$warning}++;
$file_warn_line{$name}{$warning}{$line}++;
# Increment total count of warnings
$totalcount++;
}
else {
# Increment count of duplicate warnings
$dupcount++;
}
# print STDERR "name = $name\n";
# print STDERR "line = $line\n";
# print STDERR "offset = $offset\n";
# print STDERR "warning = \"$warning\"\n";
}
print "Total unique [non-ignored] warnings: $totalcount\n";
print "Ignored notes / supplemental warning lines [not counted in unique warnings]: $notecount\n";
print "Duplicated warning lines [not counted in unique warnings]: $dupcount\n";
print "Total ignored warnings: $ignorecount\n";
$warncount = keys %warn_count;
print "Total unique kinds of warnings: $warncount\n";
$filecount = keys %file_count;
print "Total files with warnings: $filecount\n\n";
# Print warnings in decreasing frequency
print "# of Warnings by frequency (file count)\n";
print "=======================================\n";
for my $x (sort {$warn_count{$b} <=> $warn_count{$a}} keys(%warn_count)) {
printf ("[%2d] %4d (%2d) - %s\n", $current_warning++, $warn_count{$x}, scalar(keys %{$warn_file{$x}}), $x);
if((exists $options{W}) || (exists $options{w}) || (exists $options{s})) {
my $curr_index = $current_warning - 1;
my $match = 0;
# Check for string from list in current warning
if(exists $options{s}) {
for my $y (@warn_match_strings) {
# print STDERR "y = '$y'\n";
if($x =~ /$y/) {
# print STDERR "matched warning = '$x'\n";
$match = 1;
last;
}
}
}
# Check if current warning index matches
if((exists $warn_file_indices{$curr_index}) && $curr_index == $warn_file_indices{$curr_index}) {
$match = 1;
}
if($match) {
for my $y (sort {$warn_file{$x}{$b} <=> $warn_file{$x}{$a}} keys(%{$warn_file{$x}})) {
printf ("\t%4d - %s\n", $warn_file{$x}{$y}, $y);
if(exists $options{l}) {
my $lines = join ", ", sort {$a <=> $b} keys %{$warn_file_line{$x}{$y}};
printf("\t\tLines: $lines \n");
}
}
}
}
}
# Print warnings in decreasing frequency, by filename
print "\n# of Warnings by filename (warning type)\n";
print "========================================\n";
for my $x (sort {$file_count{$b} <=> $file_count{$a}} keys(%file_count)) {
printf ("[%3d] %4d (%2d) - %s\n", $current_file++, $file_count{$x}, scalar(keys %{$file_warn{$x}}), $x);
if((exists $options{F}) || (exists $options{f}) || (exists $options{S})) {
my $curr_index = $current_file - 1;
my $match = 0;
# Check for string from list in current file
if(exists $options{S}) {
for my $y (@file_match_strings) {
# print STDERR "y = '$y'\n";
if($x =~ /$y/) {
# print STDERR "matched warning = '$x'\n";
$match = 1;
last;
}
}
}
# Check if current file index matches
if((exists $file_warn_indices{$curr_index}) && $curr_index == $file_warn_indices{$curr_index}) {
$match = 1;
}
if($match) {
for my $y (sort {$file_warn{$x}{$b} <=> $file_warn{$x}{$a}} keys(%{$file_warn{$x}})) {
printf ("\t%4d - %s\n", $file_warn{$x}{$y}, $y);
if(exists $options{l}) {
my $lines = join ", ", sort {$a <=> $b} keys %{$file_warn_line{$x}{$y}};
printf("\t\tLines: $lines \n");
}
}
}
}
}
# Print names of files that were ignored
# Check for ignored file
if(exists $options{i}) {
print "\nIgnored filenames\n";
print "=================\n";
for my $x (sort keys(%ignored_files)) {
print "$x\n";
}
}

View File

@@ -1,76 +0,0 @@
#!/bin/sh
#
# Copyright by The HDF Group.
# Copyright by the Board of Trustees of the University of Illinois.
# All rights reserved.
#
# This file is part of HDF5. The full HDF5 copyright notice, including
# terms governing use, modification, and redistribution, is contained in
# the COPYING file, which can be found at the root of the source code
# distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases.
# If you do not have access to either file, you may request a copy from
# help@hdfgroup.org.
#
# Fix configure file so that it can launch configure testing executable
# via the proper launching command, e.g., yod. (Thus the name yodconfigure
# is used.)
#
# Author: Albert Cheng
if [ "$1" = -f ]; then
FORCEMODE=yes
echo turn FORCEMODE to $FORCEMODE
shift
fi
if [ $# -ne 1 ]; then
echo "Usage: $0 [-f] <configure file>"
echo " -f apply the change even if it has been applied already."
exit 1
fi
confile=$1
if [ ! -w $confile ]; then
echo "$0: $confile is not writable"
exit 1
fi
ACTRY_NAME="ACTRY()"
if grep ^"$ACTRY_NAME"$ $confile >/dev/null 2>&1 && [ "$FORCEMODE" != yes ]; then
echo "$0: $confile is already yodconfigure ready. Use -f to force yodconfigure again."
exit 1
fi
# Insert the ACTRY function after the 1st line which is the #!/bin/sh.
# Change all "eval $ac_try" commands to call ACTRY.
# auto-configure have changed the ac_try syntax from 'eval $ac_try' to
# 'eval "$ac_try"'. Thus requiring two very similar global-substitute.
# The single quotes around EOF tell shell NOT to expand or do substitution in
# the body of ed input.
#
ed - $confile <<'EOF'
1a
# ===inserted by yodconfigure ====
# ACTRY will figure out when it is approprirate to run the command by the
# $RUNSERIAL launcher (e.g., yod -sz 1) and when to just run it as is.
# So far, ./a.out and ./conftest are names of real executable that should
# be run by $RUNSERIAL.
#
# (uncomment the echo line if you want to see what is going on.)
ACTRY()
{
#echo ACTRY: args are: $* > /dev/tty
if [ "$1" = ./a.out -o "$1" = ./conftest ]; then
# echo $RUNSERIAL $* > /dev/tty
$RUNSERIAL $*
else
$*
fi
}
# === end of ACTRY inserted by yodconfigure ====
.
g/eval $ac_try/s/eval/eval ACTRY/
g/eval "$ac_try"/s/eval/eval ACTRY/
w
q
EOF

View File

@@ -1,4 +1,4 @@
cmake_minimum_required (VERSION 3.10)
cmake_minimum_required (VERSION 3.18)
project (HDF5_CPP CXX)
add_subdirectory (src)

View File

@@ -1,13 +0,0 @@
Copyright by The HDF Group and
The Board of Trustees of the University of Illinois.
All rights reserved.
The files and subdirectories in this directory are part of HDF5.
The full HDF5 copyright notice, including terms governing use,
modification, and redistribution, is contained in the COPYING file
which can be found at the root of the source code distribution tree
or in https://support.hdfgroup.org/ftp/HDF5/releases. If you do
not have access to either file, you may request a copy from
help@hdfgroup.org.

View File

@@ -1,12 +1,11 @@
#
# Copyright by The HDF Group.
# Copyright by the Board of Trustees of the University of Illinois.
# All rights reserved.
#
# This file is part of HDF5. The full HDF5 copyright notice, including
# terms governing use, modification, and redistribution, is contained in
# the COPYING file, which can be found at the root of the source code
# distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases.
# distribution tree, or in https://www.hdfgroup.org/licenses.
# If you do not have access to either file, you may request a copy from
# help@hdfgroup.org.
##
@@ -14,13 +13,20 @@
## Run automake to generate a Makefile.in from this file.
#
# Top-level HDF5-C++ Makefile(.in)
#
#
include $(top_srcdir)/config/commence.am
if BUILD_TESTS_CONDITIONAL
TEST_DIR = test
else
TEST_DIR=
endif
## Only recurse into subdirectories if C++ interface is enabled.
if BUILD_CXX_CONDITIONAL
SUBDIRS=src test
SUBDIRS=src $(TEST_DIR)
endif
DIST_SUBDIRS = src test examples

View File

@@ -1,4 +1,4 @@
cmake_minimum_required (VERSION 3.10)
cmake_minimum_required (VERSION 3.18)
project (HDF5_CPP_EXAMPLES CXX)
# --------------------------------------------------------------------
@@ -34,20 +34,54 @@ set (tutr_examples
foreach (example ${examples})
add_executable (cpp_ex_${example} ${HDF5_CPP_EXAMPLES_SOURCE_DIR}/${example}.cpp)
target_include_directories(cpp_ex_${example} PRIVATE "${HDF5_SRC_DIR};${HDF5_BINARY_DIR};$<$<BOOL:${HDF5_ENABLE_PARALLEL}>:${MPI_C_INCLUDE_DIRS}>")
TARGET_C_PROPERTIES (cpp_ex_${example} STATIC)
target_link_libraries (cpp_ex_${example} PRIVATE ${HDF5_CPP_LIB_TARGET} ${HDF5_LIB_TARGET})
target_include_directories (cpp_ex_${example} PRIVATE "${HDF5_SRC_INCLUDE_DIRS};${HDF5_SRC_BINARY_DIR};$<$<BOOL:${HDF5_ENABLE_PARALLEL}>:${MPI_C_INCLUDE_DIRS}>")
if (NOT BUILD_SHARED_LIBS)
TARGET_C_PROPERTIES (cpp_ex_${example} STATIC)
target_link_libraries (cpp_ex_${example} PRIVATE ${HDF5_CPP_LIB_TARGET} ${HDF5_LIB_TARGET})
else ()
TARGET_C_PROPERTIES (cpp_ex_${example} SHARED)
target_link_libraries (cpp_ex_${example} PRIVATE ${HDF5_CPP_LIBSH_TARGET} ${HDF5_LIBSH_TARGET})
if (MINGW AND HDF5_MINGW_STATIC_GCC_LIBS)
target_link_options (${HDF5_CPP_LIBSH_TARGET}
PRIVATE -static-libgcc -static-libstdc++
)
endif ()
endif ()
set_target_properties (cpp_ex_${example} PROPERTIES FOLDER examples/cpp)
#-----------------------------------------------------------------------------
# Add Target to clang-format
#-----------------------------------------------------------------------------
if (HDF5_ENABLE_FORMATTERS)
clang_format (HDF5_CPP_EXAMPLES_${example}_FORMAT cpp_ex_${example})
endif ()
endforeach ()
foreach (example ${tutr_examples})
add_executable (cpp_ex_${example} ${HDF5_CPP_EXAMPLES_SOURCE_DIR}/${example}.cpp)
target_include_directories(cpp_ex_${example} PRIVATE "${HDF5_SRC_DIR};${HDF5_BINARY_DIR};$<$<BOOL:${HDF5_ENABLE_PARALLEL}>:${MPI_C_INCLUDE_DIRS}>")
TARGET_C_PROPERTIES (cpp_ex_${example} STATIC)
target_link_libraries (cpp_ex_${example} PRIVATE ${HDF5_CPP_LIB_TARGET} ${HDF5_LIB_TARGET})
target_include_directories (cpp_ex_${example} PRIVATE "${HDF5_SRC_INCLUDE_DIRS};${HDF5_SRC_BINARY_DIR};$<$<BOOL:${HDF5_ENABLE_PARALLEL}>:${MPI_C_INCLUDE_DIRS}>")
if (NOT BUILD_SHARED_LIBS)
TARGET_C_PROPERTIES (cpp_ex_${example} STATIC)
target_link_libraries (cpp_ex_${example} PRIVATE ${HDF5_CPP_LIB_TARGET} ${HDF5_LIB_TARGET})
else ()
TARGET_C_PROPERTIES (cpp_ex_${example} SHARED)
target_link_libraries (cpp_ex_${example} PRIVATE ${HDF5_CPP_LIBSH_TARGET} ${HDF5_LIBSH_TARGET})
if (MINGW AND HDF5_MINGW_STATIC_GCC_LIBS)
target_link_options (${HDF5_CPP_LIBSH_TARGET}
PRIVATE -static-libgcc -static-libstdc++
)
endif ()
endif ()
set_target_properties (cpp_ex_${example} PROPERTIES FOLDER examples/cpp)
#-----------------------------------------------------------------------------
# Add Target to clang-format
#-----------------------------------------------------------------------------
if (HDF5_ENABLE_FORMATTERS)
clang_format (HDF5_CPP_EXAMPLES_${example}_FORMAT cpp_ex_${example})
endif ()
endforeach ()
if (BUILD_TESTING)
if (BUILD_TESTING AND HDF5_TEST_CPP AND HDF5_TEST_EXAMPLES AND HDF5_TEST_SERIAL)
include (CMakeTests.cmake)
endif ()

View File

@@ -5,7 +5,7 @@
# This file is part of HDF5. The full HDF5 copyright notice, including
# terms governing use, modification, and redistribution, is contained in
# the COPYING file, which can be found at the root of the source code
# distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases.
# distribution tree, or in https://www.hdfgroup.org/licenses.
# If you do not have access to either file, you may request a copy from
# help@hdfgroup.org.
#
@@ -16,81 +16,106 @@
##############################################################################
##############################################################################
# Remove any output file left over from previous test run
add_test (
NAME CPP_ex-clear-objects
COMMAND ${CMAKE_COMMAND}
-E remove
Group.h5
SDS.h5
SDScompound.h5
SDSextendible.h5
Select.h5
)
if (NOT "${last_test}" STREQUAL "")
set_tests_properties (CPP_ex-clear-objects PROPERTIES DEPENDS ${last_test})
endif ()
set (last_test "CPP_ex-clear-objects")
set (CPP_EX_CLEANFILES
Group.h5
SDS.h5
SDScompound.h5
SDSextendible.h5
Select.h5
)
add_test (
NAME CPP_ex-clear-objects
COMMAND ${CMAKE_COMMAND}
-E remove ${CPP_EX_CLEANFILES}
)
set_tests_properties (CPP_ex-clear-objects PROPERTIES
FIXTURES_SETUP clear_cppex
WORKING_DIRECTORY ${PROJECT_BINARY_DIR}
)
add_test (
NAME CPP_ex-clean-objects
COMMAND ${CMAKE_COMMAND}
-E remove ${CPP_EX_CLEANFILES}
)
set_tests_properties (CPP_ex-clean-objects PROPERTIES
FIXTURES_CLEANUP clear_cppex
WORKING_DIRECTORY ${PROJECT_BINARY_DIR}
)
foreach (example ${examples})
if (HDF5_ENABLE_USING_MEMCHECKER)
add_test (NAME CPP_ex_${example} COMMAND $<TARGET_FILE:cpp_ex_${example}>)
else ()
add_test (NAME CPP_ex_${example} COMMAND "${CMAKE_COMMAND}"
-D "TEST_PROGRAM=$<TARGET_FILE:cpp_ex_${example}>"
-D "TEST_ARGS:STRING="
-D "TEST_EXPECT=0"
-D "TEST_SKIP_COMPARE=TRUE"
-D "TEST_OUTPUT=cpp_ex_${example}.txt"
#-D "TEST_REFERENCE=cpp_ex_${example}.out"
-D "TEST_FOLDER=${PROJECT_BINARY_DIR}"
-P "${HDF_RESOURCES_EXT_DIR}/runTest.cmake"
)
endif ()
if (NOT "${last_test}" STREQUAL "")
set_tests_properties (CPP_ex_${example} PROPERTIES DEPENDS ${last_test})
endif ()
set (last_test "CPP_ex_${example}")
endforeach ()
foreach (example ${examples})
if (HDF5_ENABLE_USING_MEMCHECKER)
add_test (NAME CPP_ex_${example} COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $<TARGET_FILE:cpp_ex_${example}>)
else ()
add_test (NAME CPP_ex_${example} COMMAND "${CMAKE_COMMAND}"
-D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}"
-D "TEST_PROGRAM=$<TARGET_FILE:cpp_ex_${example}>"
-D "TEST_ARGS:STRING="
-D "TEST_EXPECT=0"
-D "TEST_SKIP_COMPARE=TRUE"
-D "TEST_OUTPUT=cpp_ex_${example}.txt"
#-D "TEST_REFERENCE=cpp_ex_${example}.out"
-D "TEST_FOLDER=${PROJECT_BINARY_DIR}"
-P "${HDF_RESOURCES_DIR}/runTest.cmake"
)
endif ()
set_tests_properties (CPP_ex_${example} PROPERTIES FIXTURES_REQUIRED clear_cppex)
if (last_test)
set_tests_properties (CPP_ex_${example} PROPERTIES DEPENDS ${last_test})
endif ()
set (last_test "CPP_ex_${example}")
endforeach ()
#the following dependencies are handled by the order of the files
# SET_TESTS_PROPERTIES(CPP_ex_readdata PROPERTIES DEPENDS CPP_ex_create)
# SET_TESTS_PROPERTIES(CPP_ex_chunks PROPERTIES DEPENDS CPP_ex_extend_ds)
set (CPP_EX_TUTR_CLEANFILES
h5tutr_cmprss.h5
h5tutr_dset.h5
h5tutr_extend.h5
h5tutr_group.h5
h5tutr_groups.h5
h5tutr_subset.h5
)
add_test (
NAME CPP_ex_tutr-clear-objects
COMMAND ${CMAKE_COMMAND}
-E remove ${CPP_EX_TUTR_CLEANFILES}
)
set_tests_properties (CPP_ex_tutr-clear-objects PROPERTIES
FIXTURES_SETUP clear_cppex_tutr
WORKING_DIRECTORY ${PROJECT_BINARY_DIR}
)
add_test (
NAME CPP_ex_tutr-clean-objects
COMMAND ${CMAKE_COMMAND}
-E remove ${CPP_EX_TUTR_CLEANFILES}
)
set_tests_properties (CPP_ex_tutr-clean-objects PROPERTIES
FIXTURES_CLEANUP clear_cppex_tutr
WORKING_DIRECTORY ${PROJECT_BINARY_DIR}
)
add_test (
NAME CPP_ex_tutr-clear-objects
COMMAND ${CMAKE_COMMAND}
-E remove
h5tutr_cmprss.h5
h5tutr_dset.h5
h5tutr_extend.h5
h5tutr_group.h5
h5tutr_groups.h5
h5tutr_subset.h5
)
if (NOT "${last_test}" STREQUAL "")
set_tests_properties (CPP_ex_tutr-clear-objects PROPERTIES DEPENDS ${last_test})
foreach (example ${tutr_examples})
if (HDF5_ENABLE_USING_MEMCHECKER)
add_test (NAME CPP_ex_${example} COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $<TARGET_FILE:cpp_ex_${example}>)
else ()
add_test (NAME CPP_ex_${example} COMMAND "${CMAKE_COMMAND}"
-D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}"
-D "TEST_PROGRAM=$<TARGET_FILE:cpp_ex_${example}>"
-D "TEST_ARGS:STRING="
-D "TEST_EXPECT=0"
-D "TEST_SKIP_COMPARE=TRUE"
-D "TEST_OUTPUT=tutr_cpp_ex_${example}.txt"
#-D "TEST_REFERENCE=cpp_ex_tutr_${example}.out"
-D "TEST_FOLDER=${PROJECT_BINARY_DIR}"
-P "${HDF_RESOURCES_DIR}/runTest.cmake"
)
endif ()
set (last_test "CPP_ex_tutr-clear-objects")
foreach (example ${tutr_examples})
if (HDF5_ENABLE_USING_MEMCHECKER)
add_test (NAME CPP_ex_${example} COMMAND $<TARGET_FILE:cpp_ex_${example}>)
else ()
add_test (NAME CPP_ex_${example} COMMAND "${CMAKE_COMMAND}"
-D "TEST_PROGRAM=$<TARGET_FILE:cpp_ex_${example}>"
-D "TEST_ARGS:STRING="
-D "TEST_EXPECT=0"
-D "TEST_SKIP_COMPARE=TRUE"
-D "TEST_OUTPUT=cpp_ex_${example}.txt"
#-D "TEST_REFERENCE=cpp_ex_${example}.out"
-D "TEST_FOLDER=${PROJECT_BINARY_DIR}"
-P "${HDF_RESOURCES_EXT_DIR}/runTest.cmake"
)
endif ()
if (NOT "${last_test}" STREQUAL "")
set_tests_properties (CPP_ex_${example} PROPERTIES DEPENDS ${last_test})
endif ()
set (last_test "CPP_ex_${example}")
endforeach ()
set_tests_properties (CPP_ex_${example} PROPERTIES FIXTURES_REQUIRED clear_cppex_tutr)
if (last_test)
set_tests_properties (CPP_ex_${example} PROPERTIES DEPENDS ${last_test})
endif ()
set (last_test "CPP_ex_${example}")
endforeach ()
#the following dependencies are handled by the order of the files
# SET_TESTS_PROPERTIES(CPP_ex_h5tutr_crtatt PROPERTIES DEPENDS CPP_ex_h5tutr_crtdat)
# SET_TESTS_PROPERTIES(CPP_ex_h5tutr_rdwt PROPERTIES DEPENDS CPP_ex_h5tutr_crtdat)

View File

@@ -1,12 +1,11 @@
#
# Copyright by The HDF Group.
# Copyright by the Board of Trustees of the University of Illinois.
# All rights reserved.
#
# This file is part of HDF5. The full HDF5 copyright notice, including
# terms governing use, modification, and redistribution, is contained in
# the COPYING file, which can be found at the root of the source code
# distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases.
# distribution tree, or in https://www.hdfgroup.org/licenses.
# If you do not have access to either file, you may request a copy from
# help@hdfgroup.org.
##
@@ -49,8 +48,8 @@ CXX_API=yes
# Where to install examples
# Note: no '/' after DESTDIR. Explanation in commence.am
EXAMPLEDIR=${DESTDIR}$(exec_prefix)/share/hdf5_examples/c++
EXAMPLETOPDIR=${DESTDIR}$(exec_prefix)/share/hdf5_examples
EXAMPLEDIR=${DESTDIR}$(examplesdir)/c++
EXAMPLETOPDIR=${DESTDIR}$(examplesdir)
# How to build programs using h5c++
$(EXTRA_PROG): $(H5CPP)

View File

@@ -1,12 +1,11 @@
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* Copyright by The HDF Group. *
* Copyright by the Board of Trustees of the University of Illinois. *
* All rights reserved. *
* *
* This file is part of HDF5. The full HDF5 copyright notice, including *
* terms governing use, modification, and redistribution, is contained in *
* the COPYING file, which can be found at the root of the source code *
* distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases. *
* distribution tree, or in https://www.hdfgroup.org/licenses. *
* If you do not have access to either file, you may request a copy from *
* help@hdfgroup.org. *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
@@ -16,11 +15,7 @@
* We will read from the file created by extend.cpp
*/
#ifdef OLD_HEADER_FILENAME
#include <iostream.h>
#else
#include <iostream>
#endif
using std::cout;
using std::endl;
@@ -28,203 +23,195 @@ using std::endl;
#include "H5Cpp.h"
using namespace H5;
const H5std_string FILE_NAME( "SDSextendible.h5" );
const H5std_string DATASET_NAME( "ExtendibleArray" );
const int NX = 10;
const int NY = 5;
const int RANK = 2;
const int RANKC = 1;
const H5std_string FILE_NAME("SDSextendible.h5");
const H5std_string DATASET_NAME("ExtendibleArray");
const int NX = 10;
const int NY = 5;
const int RANK = 2;
const int RANKC = 1;
int main (void)
int
main(void)
{
hsize_t i, j;
hsize_t i, j;
// Try block to detect exceptions raised by any of the calls inside it
try
{
/*
* Turn off the auto-printing when failure occurs so that we can
* handle the errors appropriately
*/
Exception::dontPrint();
try {
/*
* Turn off the auto-printing when failure occurs so that we can
* handle the errors appropriately
*/
Exception::dontPrint();
/*
* Open the file and the dataset.
*/
H5File file( FILE_NAME, H5F_ACC_RDONLY );
DataSet dataset = file.openDataSet( DATASET_NAME );
/*
* Open the file and the dataset.
*/
H5File file(FILE_NAME, H5F_ACC_RDONLY);
DataSet dataset = file.openDataSet(DATASET_NAME);
/*
* Get filespace for rank and dimension
*/
DataSpace filespace = dataset.getSpace();
/*
* Get filespace for rank and dimension
*/
DataSpace filespace = dataset.getSpace();
/*
* Get number of dimensions in the file dataspace
*/
int rank = filespace.getSimpleExtentNdims();
/*
* Get number of dimensions in the file dataspace
*/
int rank = filespace.getSimpleExtentNdims();
/*
* Get and print the dimension sizes of the file dataspace
*/
hsize_t dims[2]; // dataset dimensions
rank = filespace.getSimpleExtentDims( dims );
cout << "dataset rank = " << rank << ", dimensions "
<< (unsigned long)(dims[0]) << " x "
<< (unsigned long)(dims[1]) << endl;
/*
* Get and print the dimension sizes of the file dataspace
*/
hsize_t dims[2]; // dataset dimensions
rank = filespace.getSimpleExtentDims(dims);
cout << "dataset rank = " << rank << ", dimensions " << (unsigned long)(dims[0]) << " x "
<< (unsigned long)(dims[1]) << endl;
/*
* Define the memory space to read dataset.
*/
DataSpace mspace1(RANK, dims);
/*
* Define the memory space to read dataset.
*/
DataSpace mspace1(RANK, dims);
/*
* Read dataset back and display.
*/
int data_out[NX][NY]; // buffer for dataset to be read
dataset.read( data_out, PredType::NATIVE_INT, mspace1, filespace );
/*
* Read dataset back and display.
*/
int data_out[NX][NY]; // buffer for dataset to be read
dataset.read(data_out, PredType::NATIVE_INT, mspace1, filespace);
cout << "\n";
cout << "Dataset: \n";
for (j = 0; j < dims[0]; j++)
{
for (i = 0; i < dims[1]; i++)
cout << data_out[j][i] << " ";
cout << endl;
}
cout << "\n";
cout << "Dataset: \n";
for (j = 0; j < dims[0]; j++) {
for (i = 0; i < dims[1]; i++)
cout << data_out[j][i] << " ";
cout << endl;
}
/*
* dataset rank 2, dimensions 10 x 5
* chunk rank 2, dimensions 2 x 5
/*
* dataset rank 2, dimensions 10 x 5
* chunk rank 2, dimensions 2 x 5
* Dataset:
* 1 1 1 3 3
* 1 1 1 3 3
* 1 1 1 0 0
* 2 0 0 0 0
* 2 0 0 0 0
* 2 0 0 0 0
* 2 0 0 0 0
* 2 0 0 0 0
* 2 0 0 0 0
* 2 0 0 0 0
*/
* Dataset:
* 1 1 1 3 3
* 1 1 1 3 3
* 1 1 1 0 0
* 2 0 0 0 0
* 2 0 0 0 0
* 2 0 0 0 0
* 2 0 0 0 0
* 2 0 0 0 0
* 2 0 0 0 0
* 2 0 0 0 0
*/
/*
* Read the third column from the dataset.
* First define memory dataspace, then define hyperslab
* and read it into column array.
*/
hsize_t col_dims[1];
col_dims[0] = 10;
DataSpace mspace2( RANKC, col_dims );
/*
* Read the third column from the dataset.
* First define memory dataspace, then define hyperslab
* and read it into column array.
*/
hsize_t col_dims[1];
col_dims[0] = 10;
DataSpace mspace2(RANKC, col_dims);
/*
* Define the column (hyperslab) to read.
*/
hsize_t offset[2] = { 0, 2 };
hsize_t count[2] = { 10, 1 };
int column[10]; // buffer for column to be read
/*
* Define the column (hyperslab) to read.
*/
hsize_t offset[2] = {0, 2};
hsize_t count[2] = {10, 1};
int column[10]; // buffer for column to be read
/*
* Define hyperslab and read.
*/
filespace.selectHyperslab( H5S_SELECT_SET, count, offset );
dataset.read( column, PredType::NATIVE_INT, mspace2, filespace );
/*
* Define hyperslab and read.
*/
filespace.selectHyperslab(H5S_SELECT_SET, count, offset);
dataset.read(column, PredType::NATIVE_INT, mspace2, filespace);
cout << endl;
cout << "Third column: " << endl;
for (i = 0; i < 10; i++)
cout << column[i] << endl;
cout << endl;
cout << "Third column: " << endl;
for (i = 0; i < 10; i++)
cout << column[i] << endl;
/*
* Third column:
* 1
* 1
* 1
* 0
* 0
* 0
* 0
* 0
* 0
* 0
*/
/*
* Third column:
* 1
* 1
* 1
* 0
* 0
* 0
* 0
* 0
* 0
* 0
*/
/*
* Get creation properties list.
*/
DSetCreatPropList cparms = dataset.getCreatePlist();
/*
* Get creation properties list.
*/
DSetCreatPropList cparms = dataset.getCreatePlist();
/*
* Check if dataset is chunked.
*/
hsize_t chunk_dims[2];
int rank_chunk;
if( H5D_CHUNKED == cparms.getLayout() )
{
/*
* Get chunking information: rank and dimensions
*/
rank_chunk = cparms.getChunk( 2, chunk_dims);
cout << "chunk rank " << rank_chunk << "dimensions "
<< (unsigned long)(chunk_dims[0]) << " x "
<< (unsigned long)(chunk_dims[1]) << endl;
/*
* Check if dataset is chunked.
*/
hsize_t chunk_dims[2];
int rank_chunk;
if (H5D_CHUNKED == cparms.getLayout()) {
/*
* Get chunking information: rank and dimensions
*/
rank_chunk = cparms.getChunk(2, chunk_dims);
cout << "chunk rank " << rank_chunk << "dimensions " << (unsigned long)(chunk_dims[0]) << " x "
<< (unsigned long)(chunk_dims[1]) << endl;
/*
* Define the memory space to read a chunk.
*/
DataSpace mspace3( rank_chunk, chunk_dims );
/*
* Define the memory space to read a chunk.
*/
DataSpace mspace3(rank_chunk, chunk_dims);
/*
* Define chunk in the file (hyperslab) to read.
*/
offset[0] = 2;
offset[1] = 0;
count[0] = chunk_dims[0];
count[1] = chunk_dims[1];
filespace.selectHyperslab( H5S_SELECT_SET, count, offset );
/*
* Define chunk in the file (hyperslab) to read.
*/
offset[0] = 2;
offset[1] = 0;
count[0] = chunk_dims[0];
count[1] = chunk_dims[1];
filespace.selectHyperslab(H5S_SELECT_SET, count, offset);
/*
* Read chunk back and display.
*/
int chunk_out[2][5]; // buffer for chunk to be read
dataset.read( chunk_out, PredType::NATIVE_INT, mspace3, filespace );
cout << endl;
cout << "Chunk:" << endl;
for (j = 0; j < chunk_dims[0]; j++)
{
for (i = 0; i < chunk_dims[1]; i++)
cout << chunk_out[j][i] << " ";
cout << endl;
}
/*
* Chunk:
* 1 1 1 0 0
* 2 0 0 0 0
*/
}
} // end of try block
/*
* Read chunk back and display.
*/
int chunk_out[2][5]; // buffer for chunk to be read
dataset.read(chunk_out, PredType::NATIVE_INT, mspace3, filespace);
cout << endl;
cout << "Chunk:" << endl;
for (j = 0; j < chunk_dims[0]; j++) {
for (i = 0; i < chunk_dims[1]; i++)
cout << chunk_out[j][i] << " ";
cout << endl;
}
/*
* Chunk:
* 1 1 1 0 0
* 2 0 0 0 0
*/
}
} // end of try block
// catch failure caused by the H5File operations
catch( FileIException error )
{
error.printErrorStack();
return -1;
catch (FileIException error) {
error.printErrorStack();
return -1;
}
// catch failure caused by the DataSet operations
catch( DataSetIException error )
{
error.printErrorStack();
return -1;
catch (DataSetIException error) {
error.printErrorStack();
return -1;
}
// catch failure caused by the DataSpace operations
catch( DataSpaceIException error )
{
error.printErrorStack();
return -1;
catch (DataSpaceIException error) {
error.printErrorStack();
return -1;
}
return 0;
}

View File

@@ -1,12 +1,11 @@
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* Copyright by The HDF Group. *
* Copyright by the Board of Trustees of the University of Illinois. *
* All rights reserved. *
* *
* This file is part of HDF5. The full HDF5 copyright notice, including *
* terms governing use, modification, and redistribution, is contained in *
* the COPYING file, which can be found at the root of the source code *
* distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases. *
* distribution tree, or in https://www.hdfgroup.org/licenses. *
* If you do not have access to either file, you may request a copy from *
* help@hdfgroup.org. *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
@@ -17,11 +16,7 @@
* and read back fields' subsets.
*/
#ifdef OLD_HEADER_FILENAME
#include <iostream.h>
#else
#include <iostream>
#endif
using std::cout;
using std::endl;
@@ -29,175 +24,170 @@ using std::endl;
#include "H5Cpp.h"
using namespace H5;
const H5std_string FILE_NAME( "SDScompound.h5" );
const H5std_string DATASET_NAME( "ArrayOfStructures" );
const H5std_string MEMBER1( "a_name" );
const H5std_string MEMBER2( "b_name" );
const H5std_string MEMBER3( "c_name" );
const int LENGTH = 10;
const int RANK = 1;
const H5std_string FILE_NAME("SDScompound.h5");
const H5std_string DATASET_NAME("ArrayOfStructures");
const H5std_string MEMBER1("a_name");
const H5std_string MEMBER2("b_name");
const H5std_string MEMBER3("c_name");
const int LENGTH = 10;
const int RANK = 1;
int main(void)
int
main(void)
{
/* First structure and dataset*/
typedef struct s1_t {
int a;
float b;
double c;
} s1_t;
/* First structure and dataset*/
typedef struct s1_t {
int a;
float b;
double c;
} s1_t;
/* Second structure (subset of s1_t) and dataset*/
typedef struct s2_t {
double c;
int a;
} s2_t;
/* Second structure (subset of s1_t) and dataset*/
typedef struct s2_t {
double c;
int a;
} s2_t;
// Try block to detect exceptions raised by any of the calls inside it
try
{
/*
* Initialize the data
*/
int i;
s1_t s1[LENGTH];
for (i = 0; i< LENGTH; i++)
{
s1[i].a = i;
s1[i].b = i*i;
s1[i].c = 1./(i+1);
}
// Try block to detect exceptions raised by any of the calls inside it
try {
/*
* Initialize the data
*/
int i;
s1_t s1[LENGTH];
for (i = 0; i < LENGTH; i++) {
s1[i].a = i;
s1[i].b = i * i;
s1[i].c = 1. / (i + 1);
}
/*
* Turn off the auto-printing when failure occurs so that we can
* handle the errors appropriately
*/
Exception::dontPrint();
/*
* Turn off the auto-printing when failure occurs so that we can
* handle the errors appropriately
*/
Exception::dontPrint();
/*
* Create the data space.
*/
hsize_t dim[] = {LENGTH}; /* Dataspace dimensions */
DataSpace space( RANK, dim );
/*
* Create the data space.
*/
hsize_t dim[] = {LENGTH}; /* Dataspace dimensions */
DataSpace space(RANK, dim);
/*
* Create the file.
*/
H5File* file = new H5File( FILE_NAME, H5F_ACC_TRUNC );
/*
* Create the file.
*/
H5File *file = new H5File(FILE_NAME, H5F_ACC_TRUNC);
/*
* Create the memory datatype.
*/
CompType mtype1( sizeof(s1_t) );
mtype1.insertMember( MEMBER1, HOFFSET(s1_t, a), PredType::NATIVE_INT);
mtype1.insertMember( MEMBER3, HOFFSET(s1_t, c), PredType::NATIVE_DOUBLE);
mtype1.insertMember( MEMBER2, HOFFSET(s1_t, b), PredType::NATIVE_FLOAT);
/*
* Create the memory datatype.
*/
CompType mtype1(sizeof(s1_t));
mtype1.insertMember(MEMBER1, HOFFSET(s1_t, a), PredType::NATIVE_INT);
mtype1.insertMember(MEMBER3, HOFFSET(s1_t, c), PredType::NATIVE_DOUBLE);
mtype1.insertMember(MEMBER2, HOFFSET(s1_t, b), PredType::NATIVE_FLOAT);
/*
* Create the dataset.
*/
DataSet* dataset;
dataset = new DataSet(file->createDataSet(DATASET_NAME, mtype1, space));
/*
* Create the dataset.
*/
DataSet *dataset;
dataset = new DataSet(file->createDataSet(DATASET_NAME, mtype1, space));
/*
* Write data to the dataset;
*/
dataset->write( s1, mtype1 );
/*
* Write data to the dataset;
*/
dataset->write(s1, mtype1);
/*
* Release resources
*/
delete dataset;
delete file;
/*
* Release resources
*/
delete dataset;
delete file;
/*
* Open the file and the dataset.
*/
file = new H5File( FILE_NAME, H5F_ACC_RDONLY );
dataset = new DataSet (file->openDataSet( DATASET_NAME ));
/*
* Open the file and the dataset.
*/
file = new H5File(FILE_NAME, H5F_ACC_RDONLY);
dataset = new DataSet(file->openDataSet(DATASET_NAME));
/*
* Create a datatype for s2
*/
CompType mtype2( sizeof(s2_t) );
/*
* Create a datatype for s2
*/
CompType mtype2(sizeof(s2_t));
mtype2.insertMember( MEMBER3, HOFFSET(s2_t, c), PredType::NATIVE_DOUBLE);
mtype2.insertMember( MEMBER1, HOFFSET(s2_t, a), PredType::NATIVE_INT);
mtype2.insertMember(MEMBER3, HOFFSET(s2_t, c), PredType::NATIVE_DOUBLE);
mtype2.insertMember(MEMBER1, HOFFSET(s2_t, a), PredType::NATIVE_INT);
/*
* Read two fields c and a from s1 dataset. Fields in the file
* are found by their names "c_name" and "a_name".
*/
s2_t s2[LENGTH];
dataset->read( s2, mtype2 );
/*
* Read two fields c and a from s1 dataset. Fields in the file
* are found by their names "c_name" and "a_name".
*/
s2_t s2[LENGTH];
dataset->read(s2, mtype2);
/*
* Display the fields
*/
cout << endl << "Field c : " << endl;
for( i = 0; i < LENGTH; i++)
cout << s2[i].c << " ";
cout << endl;
/*
* Display the fields
*/
cout << endl << "Field c : " << endl;
for (i = 0; i < LENGTH; i++)
cout << s2[i].c << " ";
cout << endl;
cout << endl << "Field a : " << endl;
for( i = 0; i < LENGTH; i++)
cout << s2[i].a << " ";
cout << endl;
cout << endl << "Field a : " << endl;
for (i = 0; i < LENGTH; i++)
cout << s2[i].a << " ";
cout << endl;
/*
* Create a datatype for s3.
*/
CompType mtype3( sizeof(float) );
/*
* Create a datatype for s3.
*/
CompType mtype3(sizeof(float));
mtype3.insertMember( MEMBER2, 0, PredType::NATIVE_FLOAT);
mtype3.insertMember(MEMBER2, 0, PredType::NATIVE_FLOAT);
/*
* Read field b from s1 dataset. Field in the file is found by its name.
*/
float s3[LENGTH]; // Third "structure" - used to read float field of s1
dataset->read( s3, mtype3 );
/*
* Read field b from s1 dataset. Field in the file is found by its name.
*/
float s3[LENGTH]; // Third "structure" - used to read float field of s1
dataset->read(s3, mtype3);
/*
* Display the field
*/
cout << endl << "Field b : " << endl;
for( i = 0; i < LENGTH; i++)
cout << s3[i] << " ";
cout << endl;
/*
* Display the field
*/
cout << endl << "Field b : " << endl;
for (i = 0; i < LENGTH; i++)
cout << s3[i] << " ";
cout << endl;
/*
* Release resources
*/
delete dataset;
delete file;
} // end of try block
/*
* Release resources
*/
delete dataset;
delete file;
} // end of try block
// catch failure caused by the H5File operations
catch( FileIException error )
{
error.printErrorStack();
return -1;
}
// catch failure caused by the H5File operations
catch (FileIException error) {
error.printErrorStack();
return -1;
}
// catch failure caused by the DataSet operations
catch( DataSetIException error )
{
error.printErrorStack();
return -1;
}
// catch failure caused by the DataSet operations
catch (DataSetIException error) {
error.printErrorStack();
return -1;
}
// catch failure caused by the DataSpace operations
catch( DataSpaceIException error )
{
error.printErrorStack();
return -1;
}
// catch failure caused by the DataSpace operations
catch (DataSpaceIException error) {
error.printErrorStack();
return -1;
}
// catch failure caused by the DataSpace operations
catch( DataTypeIException error )
{
error.printErrorStack();
return -1;
}
// catch failure caused by the DataSpace operations
catch (DataTypeIException error) {
error.printErrorStack();
return -1;
}
return 0;
return 0;
}

View File

@@ -1,12 +1,11 @@
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* Copyright by The HDF Group. *
* Copyright by the Board of Trustees of the University of Illinois. *
* All rights reserved. *
* *
* This file is part of HDF5. The full HDF5 copyright notice, including *
* terms governing use, modification, and redistribution, is contained in *
* the COPYING file, which can be found at the root of the source code *
* distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases. *
* distribution tree, or in https://www.hdfgroup.org/licenses. *
* If you do not have access to either file, you may request a copy from *
* help@hdfgroup.org. *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
@@ -15,115 +14,105 @@
* This example writes a dataset to a new HDF5 file.
*/
#ifdef OLD_HEADER_FILENAME
#include <iostream.h>
#else
#include <iostream>
#endif
#include <string>
#include "H5Cpp.h"
using namespace H5;
const H5std_string FILE_NAME( "SDS.h5" );
const H5std_string DATASET_NAME( "IntArray" );
const int NX = 5; // dataset dimensions
const int NY = 6;
const int RANK = 2;
const H5std_string FILE_NAME("SDS.h5");
const H5std_string DATASET_NAME("IntArray");
const int NX = 5; // dataset dimensions
const int NY = 6;
const int RANK = 2;
int main (void)
int
main(void)
{
/*
* Data initialization.
*/
int i, j;
int data[NX][NY]; // buffer for data to write
for (j = 0; j < NX; j++)
{
for (i = 0; i < NY; i++)
data[j][i] = i + j;
}
/*
* 0 1 2 3 4 5
* 1 2 3 4 5 6
* 2 3 4 5 6 7
* 3 4 5 6 7 8
* 4 5 6 7 8 9
*/
/*
* Data initialization.
*/
int i, j;
int data[NX][NY]; // buffer for data to write
for (j = 0; j < NX; j++) {
for (i = 0; i < NY; i++)
data[j][i] = i + j;
}
/*
* 0 1 2 3 4 5
* 1 2 3 4 5 6
* 2 3 4 5 6 7
* 3 4 5 6 7 8
* 4 5 6 7 8 9
*/
// Try block to detect exceptions raised by any of the calls inside it
try
{
/*
* Turn off the auto-printing when failure occurs so that we can
* handle the errors appropriately
*/
Exception::dontPrint();
// Try block to detect exceptions raised by any of the calls inside it
try {
/*
* Turn off the auto-printing when failure occurs so that we can
* handle the errors appropriately
*/
Exception::dontPrint();
/*
* Create a new file using H5F_ACC_TRUNC access,
* default file creation properties, and default file
* access properties.
*/
H5File file( FILE_NAME, H5F_ACC_TRUNC );
/*
* Create a new file using H5F_ACC_TRUNC access,
* default file creation properties, and default file
* access properties.
*/
H5File file(FILE_NAME, H5F_ACC_TRUNC);
/*
* Define the size of the array and create the data space for fixed
* size dataset.
*/
hsize_t dimsf[2]; // dataset dimensions
dimsf[0] = NX;
dimsf[1] = NY;
DataSpace dataspace( RANK, dimsf );
/*
* Define the size of the array and create the data space for fixed
* size dataset.
*/
hsize_t dimsf[2]; // dataset dimensions
dimsf[0] = NX;
dimsf[1] = NY;
DataSpace dataspace(RANK, dimsf);
/*
* Define datatype for the data in the file.
* We will store little endian INT numbers.
*/
IntType datatype( PredType::NATIVE_INT );
datatype.setOrder( H5T_ORDER_LE );
/*
* Define datatype for the data in the file.
* We will store little endian INT numbers.
*/
IntType datatype(PredType::NATIVE_INT);
datatype.setOrder(H5T_ORDER_LE);
/*
* Create a new dataset within the file using defined dataspace and
* datatype and default dataset creation properties.
*/
DataSet dataset = file.createDataSet( DATASET_NAME, datatype, dataspace );
/*
* Create a new dataset within the file using defined dataspace and
* datatype and default dataset creation properties.
*/
DataSet dataset = file.createDataSet(DATASET_NAME, datatype, dataspace);
/*
* Write the data to the dataset using default memory space, file
* space, and transfer properties.
*/
dataset.write( data, PredType::NATIVE_INT );
} // end of try block
/*
* Write the data to the dataset using default memory space, file
* space, and transfer properties.
*/
dataset.write(data, PredType::NATIVE_INT);
} // end of try block
// catch failure caused by the H5File operations
catch( FileIException error )
{
error.printErrorStack();
return -1;
}
// catch failure caused by the H5File operations
catch (FileIException error) {
error.printErrorStack();
return -1;
}
// catch failure caused by the DataSet operations
catch( DataSetIException error )
{
error.printErrorStack();
return -1;
}
// catch failure caused by the DataSet operations
catch (DataSetIException error) {
error.printErrorStack();
return -1;
}
// catch failure caused by the DataSpace operations
catch( DataSpaceIException error )
{
error.printErrorStack();
return -1;
}
// catch failure caused by the DataSpace operations
catch (DataSpaceIException error) {
error.printErrorStack();
return -1;
}
// catch failure caused by the DataSpace operations
catch( DataTypeIException error )
{
error.printErrorStack();
return -1;
}
// catch failure caused by the DataSpace operations
catch (DataTypeIException error) {
error.printErrorStack();
return -1;
}
return 0; // successfully terminated
return 0; // successfully terminated
}

View File

@@ -1,12 +1,11 @@
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* Copyright by The HDF Group. *
* Copyright by the Board of Trustees of the University of Illinois. *
* All rights reserved. *
* *
* This file is part of HDF5. The full HDF5 copyright notice, including *
* terms governing use, modification, and redistribution, is contained in *
* the COPYING file, which can be found at the root of the source code *
* distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases. *
* distribution tree, or in https://www.hdfgroup.org/licenses. *
* If you do not have access to either file, you may request a copy from *
* help@hdfgroup.org. *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
@@ -18,11 +17,7 @@
*
*/
#ifdef OLD_HEADER_FILENAME
#include <iostream.h>
#else
#include <iostream>
#endif
#include <string>
using std::cout;
@@ -32,201 +27,195 @@ using std::endl;
#include "H5Cpp.h"
using namespace H5;
const H5std_string FILE_NAME( "SDSextendible.h5" );
const H5std_string DATASET_NAME( "ExtendibleArray" );
const int NX = 10;
const int NY = 5;
const int RANK = 2;
const H5std_string FILE_NAME("SDSextendible.h5");
const H5std_string DATASET_NAME("ExtendibleArray");
const int NX = 10;
const int NY = 5;
const int RANK = 2;
int main (void)
int
main(void)
{
/*
* Try block to detect exceptions raised by any of the calls inside it
*/
try
{
/*
* Turn off the auto-printing when failure occurs so that we can
* handle the errors appropriately
*/
Exception::dontPrint();
/*
* Try block to detect exceptions raised by any of the calls inside it
*/
try {
/*
* Turn off the auto-printing when failure occurs so that we can
* handle the errors appropriately
*/
Exception::dontPrint();
/*
* Create the data space with unlimited dimensions.
*/
hsize_t dims[2] = { 3, 3}; // dataset dimensions at creation
hsize_t maxdims[2] = {H5S_UNLIMITED, H5S_UNLIMITED};
DataSpace mspace1( RANK, dims, maxdims);
/*
* Create the data space with unlimited dimensions.
*/
hsize_t dims[2] = {3, 3}; // dataset dimensions at creation
hsize_t maxdims[2] = {H5S_UNLIMITED, H5S_UNLIMITED};
DataSpace mspace1(RANK, dims, maxdims);
/*
* Create a new file. If file exists its contents will be overwritten.
*/
H5File file( FILE_NAME, H5F_ACC_TRUNC );
/*
* Create a new file. If file exists its contents will be overwritten.
*/
H5File file(FILE_NAME, H5F_ACC_TRUNC);
/*
* Modify dataset creation properties, i.e. enable chunking.
*/
DSetCreatPropList cparms;
/*
* Modify dataset creation properties, i.e. enable chunking.
*/
DSetCreatPropList cparms;
hsize_t chunk_dims[2] ={2, 5};
cparms.setChunk( RANK, chunk_dims );
hsize_t chunk_dims[2] = {2, 5};
cparms.setChunk(RANK, chunk_dims);
/*
* Set fill value for the dataset
*/
int fill_val = 0;
cparms.setFillValue( PredType::NATIVE_INT, &fill_val);
/*
* Set fill value for the dataset
*/
int fill_val = 0;
cparms.setFillValue(PredType::NATIVE_INT, &fill_val);
/*
* Create a new dataset within the file using cparms
* creation properties.
*/
DataSet dataset = file.createDataSet( DATASET_NAME, PredType::NATIVE_INT, mspace1, cparms);
/*
* Create a new dataset within the file using cparms
* creation properties.
*/
DataSet dataset = file.createDataSet(DATASET_NAME, PredType::NATIVE_INT, mspace1, cparms);
/*
* Extend the dataset. This call assures that dataset is at least 3 x 3.
*/
hsize_t size[2];
size[0] = 3;
size[1] = 3;
dataset.extend( size );
/*
* Extend the dataset. This call assures that dataset is at least 3 x 3.
*/
hsize_t size[2];
size[0] = 3;
size[1] = 3;
dataset.extend(size);
/*
* Select a hyperslab.
*/
DataSpace fspace1 = dataset.getSpace ();
hsize_t offset[2];
offset[0] = 0;
offset[1] = 0;
hsize_t dims1[2] = { 3, 3}; /* data1 dimensions */
fspace1.selectHyperslab( H5S_SELECT_SET, dims1, offset );
/*
* Select a hyperslab.
*/
DataSpace fspace1 = dataset.getSpace();
hsize_t offset[2];
offset[0] = 0;
offset[1] = 0;
hsize_t dims1[2] = {3, 3}; /* data1 dimensions */
fspace1.selectHyperslab(H5S_SELECT_SET, dims1, offset);
/*
* Write the data to the hyperslab.
*/
int data1[3][3] = { {1, 1, 1}, /* data to write */
{1, 1, 1},
{1, 1, 1} };
dataset.write( data1, PredType::NATIVE_INT, mspace1, fspace1 );
/*
* Write the data to the hyperslab.
*/
int data1[3][3] = {{1, 1, 1}, /* data to write */
{1, 1, 1},
{1, 1, 1}};
dataset.write(data1, PredType::NATIVE_INT, mspace1, fspace1);
/*
* Extend the dataset. Dataset becomes 10 x 3.
*/
hsize_t dims2[2] = { 7, 1}; /* data2 dimensions */
dims[0] = dims1[0] + dims2[0];
size[0] = dims[0];
size[1] = dims[1];
dataset.extend( size );
/*
* Extend the dataset. Dataset becomes 10 x 3.
*/
hsize_t dims2[2] = {7, 1}; /* data2 dimensions */
dims[0] = dims1[0] + dims2[0];
size[0] = dims[0];
size[1] = dims[1];
dataset.extend(size);
/*
* Select a hyperslab.
*/
DataSpace fspace2 = dataset.getSpace ();
offset[0] = 3;
offset[1] = 0;
fspace2.selectHyperslab( H5S_SELECT_SET, dims2, offset );
/*
* Select a hyperslab.
*/
DataSpace fspace2 = dataset.getSpace();
offset[0] = 3;
offset[1] = 0;
fspace2.selectHyperslab(H5S_SELECT_SET, dims2, offset);
/*
* Define memory space
*/
DataSpace mspace2( RANK, dims2 );
/*
* Define memory space
*/
DataSpace mspace2(RANK, dims2);
/*
* Write the data to the hyperslab.
*/
int data2[7] = { 2, 2, 2, 2, 2, 2, 2};
dataset.write( data2, PredType::NATIVE_INT, mspace2, fspace2 );
/*
* Write the data to the hyperslab.
*/
int data2[7] = {2, 2, 2, 2, 2, 2, 2};
dataset.write(data2, PredType::NATIVE_INT, mspace2, fspace2);
/*
* Extend the dataset. Dataset becomes 10 x 5.
*/
hsize_t dims3[2] = { 2, 2}; /* data3 dimensions */
dims[1] = dims1[1] + dims3[1];
size[0] = dims[0];
size[1] = dims[1];
dataset.extend( size );
/*
* Extend the dataset. Dataset becomes 10 x 5.
*/
hsize_t dims3[2] = {2, 2}; /* data3 dimensions */
dims[1] = dims1[1] + dims3[1];
size[0] = dims[0];
size[1] = dims[1];
dataset.extend(size);
/*
* Select a hyperslab
*/
DataSpace fspace3 = dataset.getSpace ();
offset[0] = 0;
offset[1] = 3;
fspace3.selectHyperslab( H5S_SELECT_SET, dims3, offset );
/*
* Select a hyperslab
*/
DataSpace fspace3 = dataset.getSpace();
offset[0] = 0;
offset[1] = 3;
fspace3.selectHyperslab(H5S_SELECT_SET, dims3, offset);
/*
* Define memory space.
*/
DataSpace mspace3( RANK, dims3 );
/*
* Define memory space.
*/
DataSpace mspace3(RANK, dims3);
/*
* Write the data to the hyperslab.
*/
int data3[2][2] = { {3, 3}, {3, 3} };
dataset.write( data3, PredType::NATIVE_INT, mspace3, fspace3 );
/*
* Write the data to the hyperslab.
*/
int data3[2][2] = {{3, 3}, {3, 3}};
dataset.write(data3, PredType::NATIVE_INT, mspace3, fspace3);
/*
* Read the data from this dataset and display it.
*/
int i, j;
int data_out[NX][NY];
for (i = 0; i < NX; i++)
{
for (j = 0; j < NY; j++)
data_out[i][j] = 0;
}
dataset.read( data_out, PredType::NATIVE_INT );
/*
* Resulting dataset
*
* 1 1 1 3 3
* 1 1 1 3 3
* 1 1 1 0 0
* 2 0 0 0 0
* 2 0 0 0 0
* 2 0 0 0 0
* 2 0 0 0 0
* 2 0 0 0 0
* 2 0 0 0 0
* 2 0 0 0 0
*/
/*
* Display the result.
*/
for (i=0; i < NX; i++)
{
for(j=0; j < NY; j++)
cout << data_out[i][j] << " ";
cout << endl;
}
} // end of try block
/*
* Read the data from this dataset and display it.
*/
int i, j;
int data_out[NX][NY];
for (i = 0; i < NX; i++) {
for (j = 0; j < NY; j++)
data_out[i][j] = 0;
}
dataset.read(data_out, PredType::NATIVE_INT);
/*
* Resulting dataset
*
* 1 1 1 3 3
* 1 1 1 3 3
* 1 1 1 0 0
* 2 0 0 0 0
* 2 0 0 0 0
* 2 0 0 0 0
* 2 0 0 0 0
* 2 0 0 0 0
* 2 0 0 0 0
* 2 0 0 0 0
*/
/*
* Display the result.
*/
for (i = 0; i < NX; i++) {
for (j = 0; j < NY; j++)
cout << data_out[i][j] << " ";
cout << endl;
}
} // end of try block
// catch failure caused by the H5File operations
catch( FileIException error )
{
error.printErrorStack();
return -1;
}
// catch failure caused by the H5File operations
catch (FileIException error) {
error.printErrorStack();
return -1;
}
// catch failure caused by the DataSet operations
catch( DataSetIException error )
{
error.printErrorStack();
return -1;
}
// catch failure caused by the DataSet operations
catch (DataSetIException error) {
error.printErrorStack();
return -1;
}
// catch failure caused by the DataSpace operations
catch( DataSpaceIException error )
{
error.printErrorStack();
return -1;
}
// catch failure caused by the DataSpace operations
catch (DataSpaceIException error) {
error.printErrorStack();
return -1;
}
// catch failure caused by the DataSpace operations
catch( DataTypeIException error )
{
error.printErrorStack();
return -1;
}
return 0;
// catch failure caused by the DataSpace operations
catch (DataTypeIException error) {
error.printErrorStack();
return -1;
}
return 0;
}

View File

@@ -1,12 +1,11 @@
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* Copyright by The HDF Group. *
* Copyright by the Board of Trustees of the University of Illinois. *
* All rights reserved. *
* *
* This file is part of HDF5. The full HDF5 copyright notice, including *
* terms governing use, modification, and redistribution, is contained in *
* the COPYING file, which can be found at the root of the source code *
* distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases. *
* distribution tree, or in https://www.hdfgroup.org/licenses. *
* If you do not have access to either file, you may request a copy from *
* help@hdfgroup.org. *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
@@ -20,11 +19,7 @@
* the C version is used in this example.
*/
#ifdef OLD_HEADER_FILENAME
#include <iostream.h>
#else
#include <iostream>
#endif
using std::cout;
using std::endl;
@@ -32,185 +27,176 @@ using std::endl;
#include "H5Cpp.h"
using namespace H5;
const H5std_string FILE_NAME( "Group.h5" );
const int RANK = 2;
const H5std_string FILE_NAME("Group.h5");
const int RANK = 2;
// Operator function
extern "C" herr_t file_info(hid_t loc_id, const char *name, const H5L_info_t *linfo,
void *opdata);
extern "C" herr_t file_info(hid_t loc_id, const char *name, const H5L_info2_t *linfo, void *opdata);
int main(void)
int
main(void)
{
hsize_t dims[2];
hsize_t cdims[2];
hsize_t dims[2];
hsize_t cdims[2];
// Try block to detect exceptions raised by any of the calls inside it
try
{
/*
* Turn off the auto-printing when failure occurs so that we can
* handle the errors appropriately
*/
Exception::dontPrint();
try {
/*
* Turn off the auto-printing when failure occurs so that we can
* handle the errors appropriately
*/
Exception::dontPrint();
/*
* Create the named file, truncating the existing one if any,
* using default create and access property lists.
*/
H5File *file = new H5File( FILE_NAME, H5F_ACC_TRUNC );
/*
* Create the named file, truncating the existing one if any,
* using default create and access property lists.
*/
H5File *file = new H5File(FILE_NAME, H5F_ACC_TRUNC);
/*
* Create a group in the file
*/
Group* group = new Group( file->createGroup( "/Data" ));
/*
* Create a group in the file
*/
Group *group = new Group(file->createGroup("/Data"));
/*
* Create dataset "Compressed Data" in the group using absolute
* name. Dataset creation property list is modified to use
* GZIP compression with the compression effort set to 6.
* Note that compression can be used only when dataset is chunked.
*/
dims[0] = 1000;
dims[1] = 20;
cdims[0] = 20;
cdims[1] = 20;
DataSpace *dataspace = new DataSpace(RANK, dims); // create new dspace
DSetCreatPropList ds_creatplist; // create dataset creation prop list
ds_creatplist.setChunk( 2, cdims ); // then modify it for compression
ds_creatplist.setDeflate( 6 );
/*
* Create dataset "Compressed Data" in the group using absolute
* name. Dataset creation property list is modified to use
* GZIP compression with the compression effort set to 6.
* Note that compression can be used only when dataset is chunked.
*/
dims[0] = 1000;
dims[1] = 20;
cdims[0] = 20;
cdims[1] = 20;
DataSpace *dataspace = new DataSpace(RANK, dims); // create new dspace
DSetCreatPropList ds_creatplist; // create dataset creation prop list
ds_creatplist.setChunk(2, cdims); // then modify it for compression
ds_creatplist.setDeflate(6);
/*
* Create the first dataset.
*/
DataSet* dataset = new DataSet(file->createDataSet(
"/Data/Compressed_Data", PredType::NATIVE_INT,
*dataspace, ds_creatplist ));
/*
* Create the first dataset.
*/
DataSet *dataset = new DataSet(
file->createDataSet("/Data/Compressed_Data", PredType::NATIVE_INT, *dataspace, ds_creatplist));
/*
* Close the first dataset.
*/
delete dataset;
delete dataspace;
/*
* Close the first dataset.
*/
delete dataset;
delete dataspace;
/*
* Create the second dataset.
*/
dims[0] = 500;
dims[1] = 20;
dataspace = new DataSpace(RANK, dims); // create second dspace
dataset = new DataSet(file->createDataSet("/Data/Float_Data",
PredType::NATIVE_FLOAT, *dataspace));
/*
* Create the second dataset.
*/
dims[0] = 500;
dims[1] = 20;
dataspace = new DataSpace(RANK, dims); // create second dspace
dataset = new DataSet(file->createDataSet("/Data/Float_Data", PredType::NATIVE_FLOAT, *dataspace));
delete dataset;
delete dataspace;
delete group;
delete file;
delete dataset;
delete dataspace;
delete group;
delete file;
/*
* Now reopen the file and group in the file.
*/
file = new H5File(FILE_NAME, H5F_ACC_RDWR);
group = new Group(file->openGroup("Data"));
/*
* Now reopen the file and group in the file.
*/
file = new H5File(FILE_NAME, H5F_ACC_RDWR);
group = new Group(file->openGroup("Data"));
/*
* Access "Compressed_Data" dataset in the group.
*/
try { // to determine if the dataset exists in the group
dataset = new DataSet( group->openDataSet( "Compressed_Data" ));
}
catch( GroupIException not_found_error ) {
cout << " Dataset is not found." << endl;
}
cout << "dataset \"/Data/Compressed_Data\" is open" << endl;
/*
* Access "Compressed_Data" dataset in the group.
*/
try { // to determine if the dataset exists in the group
dataset = new DataSet(group->openDataSet("Compressed_Data"));
}
catch (GroupIException not_found_error) {
cout << " Dataset is not found." << endl;
}
cout << "dataset \"/Data/Compressed_Data\" is open" << endl;
/*
* Close the dataset.
*/
delete dataset;
/*
* Close the dataset.
*/
delete dataset;
/*
* Create hard link to the Data group.
*/
file->link( H5L_TYPE_HARD, "Data", "Data_new" );
/*
* Create hard link to the Data group.
*/
file->link(H5L_TYPE_HARD, "Data", "Data_new");
/*
* We can access "Compressed_Data" dataset using created
* hard link "Data_new".
*/
try { // to determine if the dataset exists in the file
dataset = new DataSet(file->openDataSet( "/Data_new/Compressed_Data" ));
}
catch( FileIException not_found_error )
{
cout << " Dataset is not found." << endl;
}
cout << "dataset \"/Data_new/Compressed_Data\" is open" << endl;
/*
* We can access "Compressed_Data" dataset using created
* hard link "Data_new".
*/
try { // to determine if the dataset exists in the file
dataset = new DataSet(file->openDataSet("/Data_new/Compressed_Data"));
}
catch (FileIException not_found_error) {
cout << " Dataset is not found." << endl;
}
cout << "dataset \"/Data_new/Compressed_Data\" is open" << endl;
/*
* Close the dataset.
*/
delete dataset;
/*
* Close the dataset.
*/
delete dataset;
/*
* Use iterator to see the names of the objects in the file
* root directory.
*/
cout << endl << "Iterating over elements in the file" << endl;
herr_t idx = H5Literate(file->getId(), H5_INDEX_NAME, H5_ITER_INC, NULL, file_info, NULL);
cout << endl;
/*
* Use iterator to see the names of the objects in the file
* root directory.
*/
cout << endl << "Iterating over elements in the file" << endl;
herr_t idx = H5Literate2(file->getId(), H5_INDEX_NAME, H5_ITER_INC, NULL, file_info, NULL);
cout << endl;
/*
* Unlink name "Data" and use iterator to see the names
* of the objects in the file root direvtory.
*/
cout << "Unlinking..." << endl;
try { // attempt to unlink the dataset
file->unlink( "Data" );
}
catch( FileIException unlink_error )
{
cout << " unlink failed." << endl;
}
cout << "\"Data\" is unlinked" << endl;
/*
* Unlink name "Data" and use iterator to see the names
* of the objects in the file root direvtory.
*/
cout << "Unlinking..." << endl;
try { // attempt to unlink the dataset
file->unlink("Data");
}
catch (FileIException unlink_error) {
cout << " unlink failed." << endl;
}
cout << "\"Data\" is unlinked" << endl;
cout << endl << "Iterating over elements in the file again" << endl;
idx = H5Literate(file->getId(), H5_INDEX_NAME, H5_ITER_INC, NULL, file_info, NULL);
cout << endl;
cout << endl << "Iterating over elements in the file again" << endl;
idx = H5Literate2(file->getId(), H5_INDEX_NAME, H5_ITER_INC, NULL, file_info, NULL);
cout << endl;
/*
* Close the group and file.
*/
delete group;
delete file;
} // end of try block
/*
* Close the group and file.
*/
delete group;
delete file;
} // end of try block
// catch failure caused by the H5File operations
catch( FileIException error )
{
error.printErrorStack();
return -1;
catch (FileIException error) {
error.printErrorStack();
return -1;
}
// catch failure caused by the DataSet operations
catch( DataSetIException error )
{
error.printErrorStack();
return -1;
catch (DataSetIException error) {
error.printErrorStack();
return -1;
}
// catch failure caused by the DataSpace operations
catch( DataSpaceIException error )
{
error.printErrorStack();
return -1;
catch (DataSpaceIException error) {
error.printErrorStack();
return -1;
}
// catch failure caused by the Attribute operations
catch( AttributeIException error )
{
error.printErrorStack();
return -1;
catch (AttributeIException error) {
error.printErrorStack();
return -1;
}
return 0;
}
@@ -219,7 +205,7 @@ int main(void)
* Operator function.
*/
herr_t
file_info(hid_t loc_id, const char *name, const H5L_info_t *linfo, void *opdata)
file_info(hid_t loc_id, const char *name, const H5L_info2_t *linfo, void *opdata)
{
hid_t group;
@@ -236,4 +222,3 @@ file_info(hid_t loc_id, const char *name, const H5L_info_t *linfo, void *opdata)
H5Gclose(group);
return 0;
}

Some files were not shown because too many files have changed in this diff Show More