hdf5/bin
Quincey Koziol 850d6c8f06
Pause recording errors instead of clearing the error stack (#4475)
An internal capability that's similar to the H5E_BEGIN_TRY / H5E_END_TRY
macros in H5Epublic.h, but more efficient since we can avoid pushing errors on
the stack entirely (and those macros use public API routines).

This capability (and other techniques) can be used to remove use of
H5E_clear_stack() and H5E_BEGIN_TRY / H5E_END_TRY within library routines.

We want to remove H5E_clear_stack() because it can trigger calls to the H5I
interface from within the H5E code, which creates a great deal of complexity
for threadsafe code.  And we want to remove H5E_BEGIN_TRY / H5E_END_TRY's
because they make public API calls from within the library code.

Also some other minor tidying in routines related to removing the use of
H5E_clear_stack() and H5E_BEGIN_TRY / H5E_END_TRY from H5Fint.c
2024-06-18 14:17:43 -07:00
..
batch
pkgscrpts
buildhdf5 Remove programmer/date from comments (#3210) 2023-06-29 12:13:29 -07:00
checkapi
chkcopyright Replace support.hdfgroup.org URLs for alternative COPYING file (#3228) 2023-07-12 17:33:58 -05:00
cmakehdf5 Deprecate bin/cmakehdf5 (#4127) 2024-03-13 08:02:47 -07:00
debug-ohdr
format_source Pause recording errors instead of clearing the error stack (#4475) 2024-06-18 14:17:43 -07:00
genparser
h5cc.in Removed duplicate entries in compile line for h5* compiler wrappers (#4360) 2024-04-09 17:01:00 -07:00
h5redeploy.in
h5vers Refactor error handling code to eliminate internal ID calls (#4453) 2024-05-09 07:41:57 -07:00
iostats
make_err Refactor error handling code to eliminate internal ID calls (#4453) 2024-05-09 07:41:57 -07:00
make_overflow Remove programmer/date from comments (#3210) 2023-06-29 12:13:29 -07:00
make_vers Remove programmer/date from comments (#3210) 2023-06-29 12:13:29 -07:00
Makefile.am
makehelp
output_filter.sh Remove programmer/date from comments (#3210) 2023-06-29 12:13:29 -07:00
README.md Remove TRACE macros (#4341) 2024-04-12 09:16:41 -07:00
release Updates for release_docs/NEWSLETTER.txt. (#4423) 2024-04-19 09:03:07 -07:00
restore.sh
runbkgprog
switch_maint_mode Remove programmer/date from comments (#3210) 2023-06-29 12:13:29 -07:00
trace Change type of offset arg in H5Pset_external to HDoff_t (#3505) 2024-06-04 14:16:27 -07:00
warnhist Add 'warning density' computation to the warnhist script (#3910) 2023-12-29 08:42:35 -06:00

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
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 Updates H5ARG_TRACE macros in H5ES_insert() calls (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.