Skip to content

Commit

Permalink
Merge branch 'develop' into feature/new_datatypes
Browse files Browse the repository at this point in the history
  • Loading branch information
derobins authored Mar 18, 2024
2 parents 844172a + 4e222bf commit 36cc25b
Show file tree
Hide file tree
Showing 102 changed files with 750 additions and 262 deletions.
4 changes: 2 additions & 2 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -919,8 +919,8 @@ if (HDF5_ENABLE_THREADSAFE)
message (VERBOSE " **** Allowing unsupported HL and thread-safety options **** ")
endif ()
endif ()
if (H5_HAVE_IOEO)
message (VERBOSE " **** Win32 threads requires WINVER>=0x600 (Windows Vista/7/8) **** ")
if (WIN32)
# When Win32 is available, we use those threads
set (H5_HAVE_WIN_THREADS 1)
else ()
if (NOT H5_HAVE_PTHREAD_H)
Expand Down
2 changes: 1 addition & 1 deletion HDF5Examples/C/H5T/h5ex_t_array.c
Original file line number Diff line number Diff line change
Expand Up @@ -144,7 +144,7 @@ main(void)
* Output the data to the screen.
*/
for (i = 0; i < dims[0]; i++) {
printf("%s[%llu]:\n", DATASET, i);
printf("%s[%" PRIuHSIZE "]:\n", DATASET, i);
for (j = 0; j < adims[0]; j++) {
printf(" [");
for (k = 0; k < adims[1]; k++)
Expand Down
2 changes: 1 addition & 1 deletion HDF5Examples/C/H5T/h5ex_t_arrayatt.c
Original file line number Diff line number Diff line change
Expand Up @@ -155,7 +155,7 @@ main(void)
* Output the data to the screen.
*/
for (i = 0; i < dims[0]; i++) {
printf("%s[%llu]:\n", ATTRIBUTE, i);
printf("%s[%" PRIuHSIZE "]:\n", ATTRIBUTE, i);
for (j = 0; j < adims[0]; j++) {
printf(" [");
for (k = 0; k < adims[1]; k++)
Expand Down
2 changes: 1 addition & 1 deletion HDF5Examples/C/H5T/h5ex_t_cmpd.c
Original file line number Diff line number Diff line change
Expand Up @@ -136,7 +136,7 @@ main(void)
* Output the data to the screen.
*/
for (i = 0; i < dims[0]; i++) {
printf("%s[%llu]:\n", DATASET, i);
printf("%s[%" PRIuHSIZE "]:\n", DATASET, i);
printf("Serial number : %d\n", rdata[i].serial_no);
printf("Location : %s\n", rdata[i].location);
printf("Temperature (F) : %f\n", rdata[i].temperature);
Expand Down
2 changes: 1 addition & 1 deletion HDF5Examples/C/H5T/h5ex_t_cmpdatt.c
Original file line number Diff line number Diff line change
Expand Up @@ -146,7 +146,7 @@ main(void)
* Output the data to the screen.
*/
for (i = 0; i < dims[0]; i++) {
printf("%s[%llu]:\n", ATTRIBUTE, i);
printf("%s[%" PRIuHSIZE "]:\n", ATTRIBUTE, i);
printf("Serial number : %d\n", rdata[i].serial_no);
printf("Location : %s\n", rdata[i].location);
printf("Temperature (F) : %f\n", rdata[i].temperature);
Expand Down
2 changes: 1 addition & 1 deletion HDF5Examples/C/H5T/h5ex_t_cpxcmpd.c
Original file line number Diff line number Diff line change
Expand Up @@ -293,7 +293,7 @@ main(void)
* Output the data to the screen.
*/
for (i = 0; i < dims[0]; i++) {
printf("%s[%llu]:\n", DATASET, i);
printf("%s[%" PRIuHSIZE "]:\n", DATASET, i);
printf(" Vehicle name :\n %s\n", rdata[i].name);
printf(" Sensor locations :\n");
for (j = 0; j < rdata[i].sensors.len; j++)
Expand Down
2 changes: 1 addition & 1 deletion HDF5Examples/C/H5T/h5ex_t_cpxcmpdatt.c
Original file line number Diff line number Diff line change
Expand Up @@ -304,7 +304,7 @@ main(void)
* Output the data to the screen.
*/
for (i = 0; i < dims[0]; i++) {
printf("%s[%llu]:\n", ATTRIBUTE, i);
printf("%s[%" PRIuHSIZE "]:\n", ATTRIBUTE, i);
printf(" Vehicle name :\n %s\n", rdata[i].name);
printf(" Sensor locations :\n");
for (j = 0; j < rdata[i].sensors.len; j++)
Expand Down
5 changes: 4 additions & 1 deletion HDF5Examples/C/H5T/h5ex_t_objref.c
Original file line number Diff line number Diff line change
Expand Up @@ -135,7 +135,7 @@ main(void)
* Output the data to the screen.
*/
for (i = 0; i < dims[0]; i++) {
printf("%s[%llu]:\n ->", DATASET, i);
printf("%s[%" PRIuHSIZE "]:\n ->", DATASET, i);

/*
* Open the referenced object, get its name and type.
Expand Down Expand Up @@ -174,6 +174,9 @@ main(void)
case H5O_TYPE_NAMED_DATATYPE:
printf("Named Datatype");
break;
case H5O_TYPE_MAP:
printf("Map Object");
break;
case H5O_TYPE_UNKNOWN:
case H5O_TYPE_NTYPES:
printf("Unknown");
Expand Down
5 changes: 4 additions & 1 deletion HDF5Examples/C/H5T/h5ex_t_objrefatt.c
Original file line number Diff line number Diff line change
Expand Up @@ -147,7 +147,7 @@ main(void)
* Output the data to the screen.
*/
for (i = 0; i < dims[0]; i++) {
printf("%s[%llu]:\n ->", ATTRIBUTE, i);
printf("%s[%" PRIuHSIZE "]:\n ->", ATTRIBUTE, i);

/*
* Open the referenced object, get its name and type.
Expand Down Expand Up @@ -186,6 +186,9 @@ main(void)
case H5O_TYPE_NAMED_DATATYPE:
printf("Named Datatype");
break;
case H5O_TYPE_MAP:
printf("Map Object");
break;
case H5O_TYPE_UNKNOWN:
case H5O_TYPE_NTYPES:
printf("Unknown");
Expand Down
2 changes: 1 addition & 1 deletion HDF5Examples/C/H5T/h5ex_t_opaqueatt.c
Original file line number Diff line number Diff line change
Expand Up @@ -121,7 +121,7 @@ main(void)
*/
printf("Datatype tag for %s is: \"%s\"\n", ATTRIBUTE, tag);
for (i = 0; i < dims[0]; i++) {
printf("%s[%llu]: ", ATTRIBUTE, i);
printf("%s[%" PRIuHSIZE "]: ", ATTRIBUTE, i);
for (j = 0; j < len; j++)
printf("%c", rdata[j + i * len]);
printf("\n");
Expand Down
2 changes: 1 addition & 1 deletion HDF5Examples/C/H5T/h5ex_t_regref.c
Original file line number Diff line number Diff line change
Expand Up @@ -168,7 +168,7 @@ main(void)
* Output the data to the screen.
*/
for (i = 0; i < dims[0]; i++) {
printf("%s[%llu]:\n ->", DATASET, i);
printf("%s[%" PRIuHSIZE "]:\n ->", DATASET, i);

/*
* Open the referenced object, retrieve its region as a
Expand Down
2 changes: 1 addition & 1 deletion HDF5Examples/C/H5T/h5ex_t_regrefatt.c
Original file line number Diff line number Diff line change
Expand Up @@ -183,7 +183,7 @@ main(void)
* Output the data to the screen.
*/
for (i = 0; i < dims[0]; i++) {
printf("%s[%llu]:\n ->", ATTRIBUTE, i);
printf("%s[%" PRIuHSIZE "]:\n ->", ATTRIBUTE, i);

/*
* Open the referenced object, retrieve its region as a
Expand Down
2 changes: 1 addition & 1 deletion HDF5Examples/C/H5T/h5ex_t_vlen.c
Original file line number Diff line number Diff line change
Expand Up @@ -118,7 +118,7 @@ main(void)
* Output the variable-length data to the screen.
*/
for (i = 0; i < dims[0]; i++) {
printf("%s[%llu]:\n {", DATASET, i);
printf("%s[%" PRIuHSIZE "]:\n {", DATASET, i);
ptr = rdata[i].p;
for (j = 0; j < rdata[i].len; j++) {
printf(" %d", ptr[j]);
Expand Down
2 changes: 1 addition & 1 deletion HDF5Examples/C/H5T/h5ex_t_vlenatt.c
Original file line number Diff line number Diff line change
Expand Up @@ -128,7 +128,7 @@ main(void)
* Output the variable-length data to the screen.
*/
for (i = 0; i < dims[0]; i++) {
printf("%s[%llu]:\n {", ATTRIBUTE, i);
printf("%s[%" PRIuHSIZE "]:\n {", ATTRIBUTE, i);
ptr = rdata[i].p;
for (j = 0; j < rdata[i].len; j++) {
printf(" %d", ptr[j]);
Expand Down
66 changes: 8 additions & 58 deletions config/cmake/ConfigureChecks.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -143,7 +143,6 @@ else ()
endif ()

if (CYGWIN)
set (${HDF_PREFIX}_HAVE_LSEEK64 0)
set (CMAKE_REQUIRED_DEFINITIONS "${CMAKE_REQUIRED_DEFINITIONS} -D_GNU_SOURCE")
add_definitions ("-D_GNU_SOURCE")
endif ()
Expand Down Expand Up @@ -262,6 +261,13 @@ endif ()
#
# https://docs.oracle.com/cd/E23824_01/html/821-1474/lfcompile-5.html

# MinGW and Cygwin
if (MINGW OR CYGWIN)
set (CMAKE_REQUIRED_DEFINITIONS
"${CURRENT_TEST_DEFINITIONS} -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE"
)
endif ()

#-----------------------------------------------------------------------------
# Check the size in bytes of all the int and float types
#-----------------------------------------------------------------------------
Expand Down Expand Up @@ -327,7 +333,7 @@ if (MINGW OR NOT WINDOWS)
endif ()

HDF_CHECK_TYPE_SIZE (off_t ${HDF_PREFIX}_SIZEOF_OFF_T)
HDF_CHECK_TYPE_SIZE (time_t ${HDF_PREFIX}_SIZEOF_TIME_T)
HDF_CHECK_TYPE_SIZE (time_t ${HDF_PREFIX}_SIZEOF_TIME_T)

#-----------------------------------------------------------------------------
# Extra C99 types
Expand Down Expand Up @@ -440,62 +446,6 @@ if (MINGW OR NOT WINDOWS)
endforeach ()
endif ()

#-----------------------------------------------------------------------------
# Check if InitOnceExecuteOnce is available
#-----------------------------------------------------------------------------
if (WINDOWS)
if (NOT HDF_NO_IOEO_TEST)
message (VERBOSE "Checking for InitOnceExecuteOnce:")
if (NOT DEFINED ${HDF_PREFIX}_HAVE_IOEO)
if (LARGEFILE)
set (CMAKE_REQUIRED_DEFINITIONS
"${CURRENT_TEST_DEFINITIONS} -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -D_LARGEFILE_SOURCE"
)
endif ()
set (MACRO_CHECK_FUNCTION_DEFINITIONS "-DHAVE_IOEO ${CMAKE_REQUIRED_FLAGS}")
if (CMAKE_REQUIRED_INCLUDES)
set (CHECK_C_SOURCE_COMPILES_ADD_INCLUDES "-DINCLUDE_DIRECTORIES:STRING=${CMAKE_REQUIRED_INCLUDES}")
else ()
set (CHECK_C_SOURCE_COMPILES_ADD_INCLUDES)
endif ()

TRY_RUN(HAVE_IOEO_EXITCODE HAVE_IOEO_COMPILED
${CMAKE_BINARY_DIR}
${HDF_RESOURCES_DIR}/HDFTests.c
COMPILE_DEFINITIONS "${CMAKE_REQUIRED_DEFINITIONS} ${MACRO_CHECK_FUNCTION_DEFINITIONS}"
LINK_LIBRARIES "${HDF5_REQUIRED_LIBRARIES}"
CMAKE_FLAGS "${CHECK_C_SOURCE_COMPILES_ADD_INCLUDES} -DCMAKE_SKIP_RPATH:BOOL=${CMAKE_SKIP_RPATH}"
COMPILE_OUTPUT_VARIABLE OUTPUT
)
# if it did not compile make the return value fail code of 1
if (NOT HAVE_IOEO_COMPILED)
set (HAVE_IOEO_EXITCODE 1)
endif ()
# if the return value was 0 then it worked
if ("${HAVE_IOEO_EXITCODE}" EQUAL 0)
set (${HDF_PREFIX}_HAVE_IOEO 1 CACHE INTERNAL "Test InitOnceExecuteOnce")
message (VERBOSE "Performing Test InitOnceExecuteOnce - Success")
file (APPEND ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeOutput.log
"Performing C SOURCE FILE Test InitOnceExecuteOnce succeeded with the following output:\n"
"${OUTPUT}\n"
"Return value: ${HAVE_IOEO}\n")
else ()
if (CMAKE_CROSSCOMPILING AND "${HAVE_IOEO_EXITCODE}" MATCHES "FAILED_TO_RUN")
set (${HDF_PREFIX}_HAVE_IOEO "${HAVE_IOEO_EXITCODE}")
else ()
set (${HDF_PREFIX}_HAVE_IOEO "" CACHE INTERNAL "Test InitOnceExecuteOnce")
endif ()

message (VERBOSE "Performing Test InitOnceExecuteOnce - Failed")
file (APPEND ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeError.log
"Performing InitOnceExecuteOnce Test failed with the following output:\n"
"${OUTPUT}\n"
"Return value: ${HAVE_IOEO_EXITCODE}\n")
endif ()
endif ()
endif ()
endif ()

# ----------------------------------------------------------------------
# Set the flag to indicate that the machine can handle converting
# denormalized floating-point values.
Expand Down
6 changes: 0 additions & 6 deletions config/cmake/H5pubconf.h.in
Original file line number Diff line number Diff line change
Expand Up @@ -222,9 +222,6 @@
/* Define to 1 if you have the `z' library (-lz). */
#cmakedefine H5_HAVE_LIBZ @H5_HAVE_LIBZ@

/* Define to 1 if you have the `lseek64' function. */
#cmakedefine H5_HAVE_LSEEK64 @H5_HAVE_LSEEK64@

/* Define if the map API (H5M) should be compiled */
#cmakedefine H5_HAVE_MAP_API @H5_HAVE_MAP_API@

Expand Down Expand Up @@ -289,9 +286,6 @@
compiled */
#cmakedefine H5_HAVE_ROS3_VFD @H5_HAVE_ROS3_VFD@

/* Define to 1 if you have the `stat64' function. */
#cmakedefine H5_HAVE_STAT64 @H5_HAVE_STAT64@

/* Define if struct stat has the st_blocks field */
#cmakedefine H5_HAVE_STAT_ST_BLOCKS @H5_HAVE_STAT_ST_BLOCKS@

Expand Down
18 changes: 0 additions & 18 deletions config/cmake/HDFTests.c
Original file line number Diff line number Diff line change
Expand Up @@ -126,21 +126,3 @@ main(void)
#endif
}
#endif

#ifdef HAVE_IOEO

#include <windows.h>
typedef void (WINAPI *PGNSI)(LPSYSTEM_INFO);
int main ()
{
PGNSI pGNSI;

pGNSI = (PGNSI) GetProcAddress(GetModuleHandle(TEXT("kernel32.dll")), "InitOnceExecuteOnce");

if (NULL == pGNSI)
return 1;
else
return 0;
}

#endif /* HAVE_IOEO */
1 change: 0 additions & 1 deletion doxygen/aliases
Original file line number Diff line number Diff line change
Expand Up @@ -235,7 +235,6 @@ ALIASES += sa_metadata_ops="\sa \li H5Pget_all_coll_metadata_ops() \li H5Pget_co
################################################################################

ALIASES += ref_cons_semantics="<a href=\"https://portal.hdfgroup.org/display/HDF5/Enabling+a+Strict+Consistency+Semantics+Model+in+Parallel+HDF5\">Enabling a Strict Consistency Semantics Model in Parallel HDF5</a>"
ALIASES += ref_dld_filters="<a href=\"https://portal.hdfgroup.org/display/HDF5/HDF5+Dynamically+Loaded+Filters\">HDF5 Dynamically Loaded Filters</a>"
ALIASES += ref_file_image_ops="<a href=\"https://portal.hdfgroup.org/display/HDF5/HDF5+File+Image+Operations\">HDF5 File Image Operations</a>"
ALIASES += ref_filter_pipe="<a href=\"https://portal.hdfgroup.org/display/HDF5/HDF5+Data+Flow+Pipeline+for+H5Dread\">Data Flow Pipeline for H5Dread()</a>"
ALIASES += ref_group_impls="<a href=\"https://portal.hdfgroup.org/display/HDF5/Groups\">Group implementations in HDF5</a>"
Expand Down
2 changes: 2 additions & 0 deletions doxygen/dox/UsersGuide.dox
Original file line number Diff line number Diff line change
Expand Up @@ -134,6 +134,7 @@ HDF5 Release 1.14
<li> \ref subsubsec_dataset_transfer_props
<li> \ref subsubsec_dataset_transfer_store
<li> \ref subsubsec_dataset_transfer_partial
<li> \ref subsubsec_dataset_transfer_dyn_filter
</ul>
\li \ref subsec_dataset_allocation
<ul>
Expand All @@ -147,6 +148,7 @@ HDF5 Release 1.14
<li> \ref subsubsec_dataset_filters_nbit
<li> \ref subsubsec_dataset_filters_scale
<li> \ref subsubsec_dataset_filters_szip
<li> \ref subsubsec_dataset_filters_dyn
</ul>

\ref sec_datatype
Expand Down
4 changes: 2 additions & 2 deletions doxygen/examples/H5.format.1.1.html
Original file line number Diff line number Diff line change
Expand Up @@ -5436,8 +5436,8 @@ <h4><a name="FilterMessage">Name: Data Storage - Filter Pipeline</a></h4>
filters requested and supported by third parties.
Filters supported by The HDF Group are documented immediately
below. Information on 3rd-party filters can be found at
<a href="/services/contributions.html#filters">
<code>https://support.hdfgroup.org/services/contributions.html#filters</code></a>.
<a href="https://portal.hdfgroup.org/documentation/hdf5-docs/registered_filter_plugins.html">
<code>https://portal.hdfgroup.org/documentation/hdf5-docs/registered_filter_plugins.html</code></a>.
<a href="#Footnote1Change"><sup><small>1</small></sup></a>
<p>
To request a filter identifier, please contact
Expand Down
10 changes: 4 additions & 6 deletions doxygen/examples/H5.format.2.0.html
Original file line number Diff line number Diff line change
Expand Up @@ -12598,9 +12598,8 @@ <h4>
HDF5 Library and for filters requested and supported by third
parties. Filters supported by The HDF Group are documented
immediately below. Information on 3rd-party filters can be found at
The HDF Group&rsquo;s <a
href="http://www.hdfgroup.org/services/contributions.html">
Contributions</a> page.
The HDF Group&rsquo;s <a href="https://portal.hdfgroup.org/documentation/hdf5-docs/registered_filter_plugins.html">
Registered Filters</a> page.
</p>

<p>
Expand Down Expand Up @@ -12854,9 +12853,8 @@ <h4>
HDF5 Library and for filters requested and supported by third
parties. Filters supported by The HDF Group are documented
immediately below. Information on 3rd-party filters can be found at
The HDF Group&rsquo;s <a
href="http://www.hdfgroup.org/services/contributions.html">
Contributions</a> page.
The HDF Group&rsquo;s <a href="https://portal.hdfgroup.org/documentation/hdf5-docs/registered_filter_plugins.html">
Registered Filters</a> page.
</p>

<p>
Expand Down
8 changes: 4 additions & 4 deletions doxygen/examples/H5.format.html
Original file line number Diff line number Diff line change
Expand Up @@ -14226,8 +14226,8 @@ <h4><a name="FilterMessage">IV.A.2.l. The Data Storage - Filter
Filters supported by The HDF Group are documented immediately
below. Information on 3rd-party filters can be found at
The HDF Group&rsquo;s
<a href="http://www.hdfgroup.org/services/contributions.html">
Contributions</a> page.</p>
<a href="https://portal.hdfgroup.org/documentation/hdf5-docs/registered_filter_plugins.html">
Registered Filters</a> page.</p>

<p>
To request a filter identifier, please contact
Expand Down Expand Up @@ -14488,8 +14488,8 @@ <h4><a name="FilterMessage">IV.A.2.l. The Data Storage - Filter
Filters supported by The HDF Group are documented immediately
below. Information on 3rd-party filters can be found at
The HDF Group&rsquo;s
<a href="http://www.hdfgroup.org/services/contributions.html">
Contributions</a> page.</p>
<a href="https://portal.hdfgroup.org/documentation/hdf5-docs/registered_filter_plugins.html">
Registered Filters</a> page.</p>

<p>
To request a filter identifier, please contact
Expand Down
4 changes: 2 additions & 2 deletions java/src/jni/h5pImp.c
Original file line number Diff line number Diff line change
Expand Up @@ -563,8 +563,8 @@ Java_hdf_hdf5lib_H5_H5Pisa_1class(JNIEnv *env, jclass clss, jlong plid, jlong pc
JNIEXPORT jint JNICALL
Java_hdf_hdf5lib_H5_H5Pget(JNIEnv *env, jclass clss, jlong plid, jstring name)
{
const char *cstr = NULL;
jint val;
const char *cstr = NULL;
jint val = -1;
herr_t status = FAIL;

UNUSED(clss);
Expand Down
2 changes: 1 addition & 1 deletion m4/aclocal_fc.m4
Original file line number Diff line number Diff line change
Expand Up @@ -159,7 +159,7 @@ dnl disable Fortran 2003 if it does not.

AC_DEFUN([PAC_PROG_FC_HAVE_F2003_REQUIREMENTS],[
HAVE_F2003_REQUIREMENTS="no"
AC_MSG_CHECKING([if Fortran compiler version compatible with Fortran 2003 HDF])
AC_MSG_CHECKING([if Fortran compiler version compatible with Fortran 2003])
TEST_SRC="`sed -n '/PROG_FC_HAVE_F2003_REQUIREMENTS/,/END PROGRAM PROG_FC_HAVE_F2003_REQUIREMENTS/p' $srcdir/m4/aclocal_fc.f90`"
AC_COMPILE_IFELSE([$TEST_SRC], [AC_MSG_RESULT([yes])
HAVE_F2003_REQUIREMENTS="yes"],
Expand Down
Loading

0 comments on commit 36cc25b

Please sign in to comment.