From 0b8f6406ec7f205549ee3de9f912b5f6c1253a91 Mon Sep 17 00:00:00 2001 From: Allen Byrne Date: Mon, 11 Aug 2025 14:59:50 -0500 Subject: [PATCH 01/49] Rework Fortran configure to allow cross compile overrides --- config/HDF5UseFortran.cmake | 373 +++++++++++++++++++++--------------- 1 file changed, 214 insertions(+), 159 deletions(-) diff --git a/config/HDF5UseFortran.cmake b/config/HDF5UseFortran.cmake index 3b502cd19c9..514f52868fe 100644 --- a/config/HDF5UseFortran.cmake +++ b/config/HDF5UseFortran.cmake @@ -140,83 +140,103 @@ endif () #----------------------------------------------------------------------------- # Determine the available KINDs for REALs and INTEGERs #----------------------------------------------------------------------------- -if (${HAVE_ISO_FORTRAN_ENV}) - READ_SOURCE ("PROGRAM FC08_AVAIL_KINDS" "END PROGRAM FC08_AVAIL_KINDS" SOURCE_CODE) -else () - READ_SOURCE ("PROGRAM FC_AVAIL_KINDS" "END PROGRAM FC_AVAIL_KINDS" SOURCE_CODE) -endif () - -FORTRAN_RUN ("REAL and INTEGER KINDs" - "${SOURCE_CODE}" - XX - YY - FC_AVAIL_KINDS_RESULT - PROG_OUTPUT -) -# dnl The output from the above program will be: -# dnl -- LINE 1 -- valid integer kinds (comma separated list) -# dnl -- LINE 2 -- valid real kinds (comma separated list) -# dnl -- LINE 3 -- max decimal precision for reals -# dnl -- LINE 4 -- number of valid integer kinds -# dnl -- LINE 5 -- number of valid real kinds -# dnl -- LINE 6 -- number of valid logical kinds -# dnl -- LINE 7 -- valid logical kinds (comma separated list) - -# -# Convert the string to a list of strings by replacing the carriage return with a semicolon -string (REGEX REPLACE "[\r\n]+" ";" PROG_OUTPUT "${PROG_OUTPUT}") - -list (GET PROG_OUTPUT 0 pac_validIntKinds) -list (GET PROG_OUTPUT 1 pac_validRealKinds) -list (GET PROG_OUTPUT 2 pac_fc_max_real_precision) +if (NOT CMAKE_CROSSCOMPILING) + if (${HAVE_ISO_FORTRAN_ENV}) + READ_SOURCE ("PROGRAM FC08_AVAIL_KINDS" "END PROGRAM FC08_AVAIL_KINDS" SOURCE_CODE) + else () + READ_SOURCE ("PROGRAM FC_AVAIL_KINDS" "END PROGRAM FC_AVAIL_KINDS" SOURCE_CODE) + endif () -# If the lists are empty then something went wrong. -if (NOT pac_validIntKinds) + FORTRAN_RUN ("REAL and INTEGER KINDs" + "${SOURCE_CODE}" + XX + YY + FC_AVAIL_KINDS_RESULT + PROG_OUTPUT + ) + # dnl The output from the above program will be: + # dnl -- LINE 1 -- valid integer kinds (comma separated list) + # dnl -- LINE 2 -- valid real kinds (comma separated list) + # dnl -- LINE 3 -- max decimal precision for reals + # dnl -- LINE 4 -- number of valid integer kinds + # dnl -- LINE 5 -- number of valid real kinds + # dnl -- LINE 6 -- number of valid logical kinds + # dnl -- LINE 7 -- valid logical kinds (comma separated list) + + # + # Convert the string to a list of strings by replacing the carriage return with a semicolon + string (REGEX REPLACE "[\r\n]+" ";" PROG_OUTPUT "${PROG_OUTPUT}") + + list (GET PROG_OUTPUT 0 pac_validIntKinds) + list (GET PROG_OUTPUT 1 pac_validRealKinds) + list (GET PROG_OUTPUT 2 pac_fc_max_real_precision) + + # If the lists are empty then something went wrong. + if (NOT pac_validIntKinds) message (FATAL_ERROR "Failed to find available INTEGER KINDs for Fortran") -endif () -if (NOT pac_validRealKinds) + endif () + if (NOT pac_validRealKinds) message (FATAL_ERROR "Failed to find available REAL KINDs for Fortran") -endif () -if (NOT pac_fc_max_real_precision) + endif () + if (NOT pac_fc_max_real_precision) message (FATAL_ERROR "No output from Fortran decimal precision program") -endif () -set (${HDF_PREFIX}_PAC_FC_MAX_REAL_PRECISION ${pac_fc_max_real_precision} CACHE INTERNAL "Maximum decimal precision for REALs in Fortran") - -set (PAC_FC_ALL_INTEGER_KINDS "\{${pac_validIntKinds}\}") -set (PAC_FC_ALL_REAL_KINDS "\{${pac_validRealKinds}\}") + endif () + set (${HDF_PREFIX}_PAC_FC_MAX_REAL_PRECISION ${pac_fc_max_real_precision} CACHE INTERNAL "Maximum decimal precision for REALs in Fortran") -list (GET PROG_OUTPUT 3 NUM_IKIND) -list (GET PROG_OUTPUT 4 NUM_RKIND) + set (PAC_FC_ALL_INTEGER_KINDS "\{${pac_validIntKinds}\}") + set (PAC_FC_ALL_REAL_KINDS "\{${pac_validRealKinds}\}") -set (PAC_FORTRAN_NUM_INTEGER_KINDS "${NUM_IKIND}") + list (GET PROG_OUTPUT 3 NUM_IKIND) + list (GET PROG_OUTPUT 4 NUM_RKIND) -set (${HDF_PREFIX}_H5CONFIG_F_NUM_IKIND "INTEGER, PARAMETER :: num_ikinds = ${NUM_IKIND}") -set (${HDF_PREFIX}_H5CONFIG_F_IKIND "INTEGER, DIMENSION(1:num_ikinds) :: ikind = (/${pac_validIntKinds}/)") + set (PAC_FORTRAN_NUM_INTEGER_KINDS "${NUM_IKIND}") + set (PAC_FORTRAN_NUM_REAL_KINDS "${NUM_RKIND}") -message (STATUS "....NUMBER OF INTEGER KINDS FOUND ${PAC_FORTRAN_NUM_INTEGER_KINDS}") -message (STATUS "....REAL KINDS FOUND ${PAC_FC_ALL_REAL_KINDS}") -message (STATUS "....INTEGER KINDS FOUND ${PAC_FC_ALL_INTEGER_KINDS}") -message (STATUS "....MAX DECIMAL PRECISION ${pac_fc_max_real_precision}") + set (${HDF_PREFIX}_H5CONFIG_F_NUM_IKIND "INTEGER, PARAMETER :: num_ikinds = ${NUM_IKIND}") + set (${HDF_PREFIX}_H5CONFIG_F_IKIND "INTEGER, DIMENSION(1:num_ikinds) :: ikind = (/${pac_validIntKinds}/)") -if (${HAVE_ISO_FORTRAN_ENV}) - - list (GET PROG_OUTPUT 5 NUM_LKIND) - set (PAC_FORTRAN_NUM_LOGICAL_KINDS "${NUM_LKIND}") + if (${HAVE_ISO_FORTRAN_ENV}) + list (GET PROG_OUTPUT 5 NUM_LKIND) + set (PAC_FORTRAN_NUM_LOGICAL_KINDS "${NUM_LKIND}") - list (GET PROG_OUTPUT 6 pac_validLogicalKinds) - # If the list is empty then something went wrong. - if (NOT pac_validLogicalKinds) + list (GET PROG_OUTPUT 6 pac_validLogicalKinds) + # If the list is empty then something went wrong. + if (NOT pac_validLogicalKinds) message (FATAL_ERROR "Failed to find available LOGICAL KINDs for Fortran") + endif () + + set (PAC_FC_ALL_LOGICAL_KINDS "\{${pac_validLogicalKinds}\}") + message (STATUS "....LOGICAL KINDS FOUND ${PAC_FC_ALL_LOGICAL_KINDS}") + endif () +else () + # Use the default if there's no cache variable and cross-compiling + message (VERBOSE "Find available INTEGER KINDs for Fortran... yes (cross-compile default)") + set (PAC_FC_ALL_INTEGER_KINDS "\{1,2,4,8,16\}" CACHE INTERNAL "Find available INTEGER KINDs for Fortran") + set (PAC_FC_ALL_REAL_KINDS "\{4,8,10,16\}" CACHE INTERNAL "Find available REAL KINDs for Fortran") + set (${HDF_PREFIX}_PAC_FC_MAX_REAL_PRECISION 33 CACHE INTERNAL "Maximum decimal precision for REALs in Fortran") + set (PAC_FORTRAN_NUM_INTEGER_KINDS "5" CACHE INTERNAL "Number of valid integer kinds for Fortran") + set (PAC_FORTRAN_NUM_REAL_KINDS "4" CACHE INTERNAL "Number of valid real kinds for Fortran") + + set (${HDF_PREFIX}_H5CONFIG_F_NUM_IKIND "INTEGER, PARAMETER :: num_ikinds = 4") + set (${HDF_PREFIX}_H5CONFIG_F_IKIND "INTEGER, DIMENSION(1:num_ikinds) :: ikind = (1,2,4,8,16)") + + if (${HAVE_ISO_FORTRAN_ENV}) + set (PAC_FORTRAN_NUM_LOGICAL_KINDS "5" CACHE INTERNAL "Find available LOGICAL KINDs for Fortran") + set (PAC_FC_ALL_LOGICAL_KINDS "\{1,2,4,8,16\}" CACHE INTERNAL "LOGICAL KINDS FOUND for Fortran") endif () +endif () - set (PAC_FC_ALL_LOGICAL_KINDS "\{${pac_validLogicalKinds}\}") - message (STATUS "....LOGICAL KINDS FOUND ${PAC_FC_ALL_LOGICAL_KINDS}") +message (STATUS "....NUMBER OF INTEGER KINDS FOUND ${PAC_FORTRAN_NUM_INTEGER_KINDS}") +message (STATUS "....REAL KINDS FOUND ${PAC_FC_ALL_REAL_KINDS}") +message (STATUS "....INTEGER KINDS FOUND ${PAC_FC_ALL_INTEGER_KINDS}") +message (STATUS "....MAX DECIMAL PRECISION ${${HDF_PREFIX}_PAC_FC_MAX_REAL_PRECISION}") +if (${HAVE_ISO_FORTRAN_ENV}) # ******************** # LOGICAL KIND FOR MPI # ******************** if (HDF5_ENABLE_PARALLEL AND BUILD_TESTING) - string (REGEX REPLACE "," ";" VAR "${pac_validLogicalKinds}") + string (REGEX REPLACE "," ";" VAR "${PAC_FC_ALL_LOGICAL_KINDS}") set(CMAKE_REQUIRED_QUIET TRUE) set(save_CMAKE_Fortran_FLAGS ${CMAKE_Fortran_FLAGS}) @@ -259,85 +279,104 @@ endif() # ********** # INTEGERS # ********** -string (REGEX REPLACE "," ";" VAR "${pac_validIntKinds}") - -foreach (KIND ${VAR}) - set (PROG_SRC_${KIND} - " - PROGRAM main - USE ISO_C_BINDING - USE, INTRINSIC :: ISO_FORTRAN_ENV, ONLY : stdout=>OUTPUT_UNIT - IMPLICIT NONE - INTEGER (KIND=${KIND}) a - WRITE(stdout,'(I0)') ${FC_SIZEOF_A} - END - " - ) - FORTRAN_RUN("INTEGER KIND SIZEOF" ${PROG_SRC_${KIND}} XX YY VALIDINTKINDS_RESULT_${KIND} PROG_OUTPUT1) - string (REGEX REPLACE "[\r\n]+" "" PROG_OUTPUT1 "${PROG_OUTPUT1}") - set (pack_int_sizeof "${pack_int_sizeof} ${PROG_OUTPUT1},") -endforeach () +if (NOT CMAKE_CROSSCOMPILING) + string (REGEX REPLACE "," ";" VAR "${pac_validIntKinds}") + + foreach (KIND ${VAR}) + set (PROG_SRC_${KIND} + " + PROGRAM main + USE ISO_C_BINDING + USE, INTRINSIC :: ISO_FORTRAN_ENV, ONLY : stdout=>OUTPUT_UNIT + IMPLICIT NONE + INTEGER (KIND=${KIND}) a + WRITE(stdout,'(I0)') ${FC_SIZEOF_A} + END + " + ) + FORTRAN_RUN("INTEGER KIND SIZEOF" ${PROG_SRC_${KIND}} XX YY VALIDINTKINDS_RESULT_${KIND} PROG_OUTPUT1) + string (REGEX REPLACE "[\r\n]+" "" PROG_OUTPUT1 "${PROG_OUTPUT1}") + set (pack_int_sizeof "${pack_int_sizeof} ${PROG_OUTPUT1},") + endforeach () -if (pack_int_sizeof STREQUAL "") - message (FATAL_ERROR "Failed to find available INTEGER KINDs for Fortran") -endif () + if (pack_int_sizeof STREQUAL "") + message (FATAL_ERROR "Failed to find available INTEGER KINDs for Fortran") + endif () + + string (STRIP ${pack_int_sizeof} pack_int_sizeof) -string (STRIP ${pack_int_sizeof} pack_int_sizeof) + #Remove trailing comma + string (REGEX REPLACE ",$" "" pack_int_sizeof "${pack_int_sizeof}") + #Remove spaces + string (REGEX REPLACE " " "" pack_int_sizeof "${pack_int_sizeof}") -#Remove trailing comma -string (REGEX REPLACE ",$" "" pack_int_sizeof "${pack_int_sizeof}") -#Remove spaces -string (REGEX REPLACE " " "" pack_int_sizeof "${pack_int_sizeof}") + set (PAC_FC_ALL_INTEGER_KINDS_SIZEOF "\{${pack_int_sizeof}\}") +else () + # Use the default if there's no cache variable and cross-compiling + message (VERBOSE "Find available INTEGER KINDs for Fortran... yes (cross-compile default)") + set (PAC_FC_ALL_INTEGER_KINDS_SIZEOF "1,2,4,8,16" CACHE INTERNAL "Find available INTEGER KINDs for Fortran") +endif () -set (PAC_FC_ALL_INTEGER_KINDS_SIZEOF "\{${pack_int_sizeof}\}") +if (PAC_FC_ALL_INTEGER_KINDS_SIZEOF STREQUAL "") + message (FATAL_ERROR "Failed to find available INTEGER KINDs for Fortran") +endif () message (VERBOSE "....FOUND SIZEOF for INTEGER KINDs ${PAC_FC_ALL_INTEGER_KINDS_SIZEOF}") # ********** # REALS # ********** -string (REGEX REPLACE "," ";" VAR "${pac_validRealKinds}") - -#find the maximum kind of the real -list (LENGTH VAR LEN_VAR) -math (EXPR _LEN "${LEN_VAR}-1") -list (GET VAR ${_LEN} max_real_fortran_kind) - -foreach (KIND ${VAR} ) - set (PROG_SRC2_${KIND} - " - PROGRAM main - USE ISO_C_BINDING - USE, INTRINSIC :: ISO_FORTRAN_ENV, ONLY : stdout=>OUTPUT_UNIT - IMPLICIT NONE - REAL (KIND=${KIND}) a - WRITE(stdout,'(I0)') ${FC_SIZEOF_A} - END - " - ) - FORTRAN_RUN ("REAL KIND SIZEOF" ${PROG_SRC2_${KIND}} XX YY VALIDREALKINDS_RESULT_${KIND} PROG_OUTPUT2) - string (REGEX REPLACE "[\r\n]+" "" PROG_OUTPUT2 "${PROG_OUTPUT2}") - set (pack_real_sizeof "${pack_real_sizeof} ${PROG_OUTPUT2},") -endforeach () +if (NOT CMAKE_CROSSCOMPILING) + string (REGEX REPLACE "," ";" VAR "${pac_validRealKinds}") + + #find the maximum kind of the real + list (LENGTH VAR LEN_VAR) + math (EXPR _LEN "${LEN_VAR}-1") + list (GET VAR ${_LEN} max_real_fortran_kind) + + foreach (KIND ${VAR} ) + set (PROG_SRC2_${KIND} + " + PROGRAM main + USE ISO_C_BINDING + USE, INTRINSIC :: ISO_FORTRAN_ENV, ONLY : stdout=>OUTPUT_UNIT + IMPLICIT NONE + REAL (KIND=${KIND}) a + WRITE(stdout,'(I0)') ${FC_SIZEOF_A} + END + " + ) + FORTRAN_RUN ("REAL KIND SIZEOF" ${PROG_SRC2_${KIND}} XX YY VALIDREALKINDS_RESULT_${KIND} PROG_OUTPUT2) + string (REGEX REPLACE "[\r\n]+" "" PROG_OUTPUT2 "${PROG_OUTPUT2}") + set (pack_real_sizeof "${pack_real_sizeof} ${PROG_OUTPUT2},") + endforeach () -if (pack_real_sizeof STREQUAL "") - message (FATAL_ERROR "Failed to find available REAL KINDs for Fortran") -endif () + if (pack_real_sizeof STREQUAL "") + message (FATAL_ERROR "Failed to find available REAL KINDs for Fortran") + endif () -string(STRIP ${pack_real_sizeof} pack_real_sizeof) + string(STRIP ${pack_real_sizeof} pack_real_sizeof) -#Remove trailing comma -string (REGEX REPLACE ",$" "" pack_real_sizeof "${pack_real_sizeof}") -#Remove spaces -string (REGEX REPLACE " " "" pack_real_sizeof "${pack_real_sizeof}") + #Remove trailing comma + string (REGEX REPLACE ",$" "" pack_real_sizeof "${pack_real_sizeof}") + #Remove spaces + string (REGEX REPLACE " " "" pack_real_sizeof "${pack_real_sizeof}") -set (${HDF_PREFIX}_H5CONFIG_F_RKIND_SIZEOF "INTEGER, DIMENSION(1:num_rkinds) :: rkind_sizeof = (/${pack_real_sizeof}/)") + set (PAC_FC_ALL_REAL_KINDS_SIZEOF "\{${pack_real_sizeof}\}") +else () + # Use the default if there's no cache variable and cross-compiling + message (VERBOSE "Find available REAL KINDs for Fortran... yes (cross-compile default)") + set (PAC_FC_ALL_REAL_KINDS_SIZEOF "\{4,8,16,16\}" CACHE INTERNAL "Find available REAL KINDs for Fortran") +endif () -message (STATUS "....FOUND SIZEOF for REAL KINDs \{${pack_real_sizeof}\}") +if (PAC_FC_ALL_REAL_KINDS_SIZEOF STREQUAL "") + message (FATAL_ERROR "Failed to find available REAL KINDs for Fortran") +endif () -set (PAC_FC_ALL_REAL_KINDS_SIZEOF "\{${pack_real_sizeof}\}") +set (${HDF_PREFIX}_H5CONFIG_F_RKIND_SIZEOF "INTEGER, DIMENSION(1:num_rkinds) :: rkind_sizeof = (/${PAC_FC_ALL_REAL_KINDS_SIZEOF}/)") +message (STATUS "....FOUND SIZEOF for REAL KINDs \{${PAC_FC_ALL_REAL_KINDS_SIZEOF}\}") #find the maximum kind of the real -string (REGEX REPLACE "," ";" VAR "${pack_real_sizeof}") +string (REGEX REPLACE "," ";" VAR "${PAC_FC_ALL_REAL_KINDS_SIZEOF}") list (LENGTH VAR LEN_VAR) math (EXPR _LEN "${LEN_VAR}-1") list (GET VAR ${_LEN} max_real_fortran_sizeof) @@ -345,42 +384,58 @@ list (GET VAR ${_LEN} max_real_fortran_sizeof) #----------------------------------------------------------------------------- # Find sizeof of native kinds #----------------------------------------------------------------------------- -set (PROG_SRC3 - " - PROGRAM main - USE ISO_C_BINDING - USE, INTRINSIC :: ISO_FORTRAN_ENV, ONLY : stdout=>OUTPUT_UNIT - IMPLICIT NONE - INTEGER a - REAL b - DOUBLE PRECISION c - WRITE(stdout,*) ${FC_SIZEOF_A} - WRITE(stdout,*) kind(a) - WRITE(stdout,*) ${FC_SIZEOF_B} - WRITE(stdout,*) kind(b) - WRITE(stdout,*) ${FC_SIZEOF_C} - WRITE(stdout,*) kind(c) - END - " -) -FORTRAN_RUN ("SIZEOF NATIVE KINDs" ${PROG_SRC3} XX YY PAC_SIZEOF_NATIVE_KINDS_RESULT PROG_OUTPUT3) -# The output from the above program will be: -# -- LINE 1 -- sizeof INTEGER -# -- LINE 2 -- kind of INTEGER -# -- LINE 3 -- sizeof REAL -# -- LINE 4 -- kind of REAL -# -- LINE 5 -- sizeof DOUBLE PRECISION -# -- LINE 6 -- kind of DOUBLE PRECISION -# -# Convert the string to a list of strings by replacing the carriage return with a semicolon -string (REGEX REPLACE "[\r\n]+" ";" PROG_OUTPUT3 "${PROG_OUTPUT3}") - -list (GET PROG_OUTPUT3 0 PAC_FORTRAN_NATIVE_INTEGER_SIZEOF) -list (GET PROG_OUTPUT3 1 PAC_FORTRAN_NATIVE_INTEGER_KIND) -list (GET PROG_OUTPUT3 2 PAC_FORTRAN_NATIVE_REAL_SIZEOF) -list (GET PROG_OUTPUT3 3 PAC_FORTRAN_NATIVE_REAL_KIND) -list (GET PROG_OUTPUT3 4 PAC_FORTRAN_NATIVE_DOUBLE_SIZEOF) -list (GET PROG_OUTPUT3 5 PAC_FORTRAN_NATIVE_DOUBLE_KIND) +if (NOT CMAKE_CROSSCOMPILING) + set (PROG_SRC3 + " + PROGRAM main + USE ISO_C_BINDING + USE, INTRINSIC :: ISO_FORTRAN_ENV, ONLY : stdout=>OUTPUT_UNIT + IMPLICIT NONE + INTEGER a + REAL b + DOUBLE PRECISION c + WRITE(stdout,*) ${FC_SIZEOF_A} + WRITE(stdout,*) kind(a) + WRITE(stdout,*) ${FC_SIZEOF_B} + WRITE(stdout,*) kind(b) + WRITE(stdout,*) ${FC_SIZEOF_C} + WRITE(stdout,*) kind(c) + END + " + ) + FORTRAN_RUN ("SIZEOF NATIVE KINDs" ${PROG_SRC3} XX YY PAC_SIZEOF_NATIVE_KINDS_RESULT PROG_OUTPUT3) + # The output from the above program will be: + # -- LINE 1 -- sizeof INTEGER + # -- LINE 2 -- kind of INTEGER + # -- LINE 3 -- sizeof REAL + # -- LINE 4 -- kind of REAL + # -- LINE 5 -- sizeof DOUBLE PRECISION + # -- LINE 6 -- kind of DOUBLE PRECISION + # + # Convert the string to a list of strings by replacing the carriage return with a semicolon + string (REGEX REPLACE "[\r\n]+" ";" PROG_OUTPUT3 "${PROG_OUTPUT3}") + + list (GET PROG_OUTPUT3 0 PAC_FORTRAN_NATIVE_INTEGER_SIZEOF) + list (GET PROG_OUTPUT3 1 PAC_FORTRAN_NATIVE_INTEGER_KIND) + list (GET PROG_OUTPUT3 2 PAC_FORTRAN_NATIVE_REAL_SIZEOF) + list (GET PROG_OUTPUT3 3 PAC_FORTRAN_NATIVE_REAL_KIND) + list (GET PROG_OUTPUT3 4 PAC_FORTRAN_NATIVE_DOUBLE_SIZEOF) + list (GET PROG_OUTPUT3 5 PAC_FORTRAN_NATIVE_DOUBLE_KIND) +else () + # Use the default if there's no cache variable and cross-compiling + message (VERBOSE "Find sizeof of native kinds sizeof INTEGER... yes (cross-compile default)") + set (PAC_FORTRAN_NATIVE_INTEGER_SIZEOF 4 CACHE INTERNAL "Find sizeof of native kinds sizeof INTEGER") + message (VERBOSE "Find sizeof of native kinds kind of INTEGER... yes (cross-compile default)") + set (PAC_FORTRAN_NATIVE_INTEGER_KIND 4 CACHE INTERNAL "Find sizeof of native kinds kind of INTEGER") + message (VERBOSE "Find sizeof of native kinds sizeof REAL... yes (cross-compile default)") + set (PAC_FORTRAN_NATIVE_REAL_SIZEOF 4 CACHE INTERNAL "Find sizeof of native kinds sizeof REAL") + message (VERBOSE "Find sizeof of native kinds kind of REAL... yes (cross-compile default)") + set (PAC_FORTRAN_NATIVE_REAL_KIND 4 CACHE INTERNAL "Find sizeof of native kinds kind of REAL") + message (VERBOSE "Find sizeof of native kinds sizeof DOUBLE PRECISION... yes (cross-compile default)") + set (PAC_FORTRAN_NATIVE_DOUBLE_SIZEOF 8 CACHE INTERNAL "Find sizeof of native kinds sizeof DOUBLE PRECISION") + message (VERBOSE "Find sizeof of native kinds kind of DOUBLE PRECISION... yes (cross-compile default)") + set (PAC_FORTRAN_NATIVE_DOUBLE_KIND 8 CACHE INTERNAL "Find sizeof of native kinds kind of DOUBLE PRECISION") +endif () if (NOT PAC_FORTRAN_NATIVE_INTEGER_SIZEOF) message (FATAL_ERROR "Failed to find SIZEOF NATIVE INTEGER KINDs for Fortran") @@ -414,11 +469,11 @@ if (${${HDF_PREFIX}_HAVE_FLOAT128}) !!! Fortran interfaces will not be generated for REAL(KIND=${max_real_fortran_kind}) !!!") string (REGEX REPLACE ",[0-9]+}" "}" PAC_FC_ALL_REAL_KINDS ${PAC_FC_ALL_REAL_KINDS}) string (REGEX REPLACE ",[0-9]+}" "}" PAC_FC_ALL_REAL_KINDS_SIZEOF ${PAC_FC_ALL_REAL_KINDS_SIZEOF}) - math (EXPR NUM_RKIND "${NUM_RKIND} - 1") + math (EXPR PAC_FORTRAN_NUM_REAL_KINDS "${PAC_FORTRAN_NUM_REAL_KINDS} - 1") endif () endif () -set (${HDF_PREFIX}_H5CONFIG_F_NUM_RKIND "INTEGER, PARAMETER :: num_rkinds = ${NUM_RKIND}") +set (${HDF_PREFIX}_H5CONFIG_F_NUM_RKIND "INTEGER, PARAMETER :: num_rkinds = ${PAC_FORTRAN_NUM_REAL_KINDS}") string (REGEX REPLACE "{" "" OUT_VAR1 ${PAC_FC_ALL_REAL_KINDS}) string (REGEX REPLACE "}" "" OUT_VAR1 ${OUT_VAR1}) From 5e01b7e91d6c3b4d7d022e648a42674f268b50b7 Mon Sep 17 00:00:00 2001 From: Allen Byrne Date: Tue, 12 Aug 2025 11:22:24 -0500 Subject: [PATCH 02/49] Add cross-compile template toolchain and use gfortran in defaults --- config/HDF5UseFortran.cmake | 18 ++++----- config/toolchain/crosscompile-readme.cmake | 43 ++++++++++++++++++++++ 2 files changed, 52 insertions(+), 9 deletions(-) create mode 100644 config/toolchain/crosscompile-readme.cmake diff --git a/config/HDF5UseFortran.cmake b/config/HDF5UseFortran.cmake index 514f52868fe..d3ef988ba7e 100644 --- a/config/HDF5UseFortran.cmake +++ b/config/HDF5UseFortran.cmake @@ -210,7 +210,7 @@ if (NOT CMAKE_CROSSCOMPILING) endif () else () # Use the default if there's no cache variable and cross-compiling - message (VERBOSE "Find available INTEGER KINDs for Fortran... yes (cross-compile default)") + message (VERBOSE "Find available INTEGER KINDs for Fortran... yes (cross-compile gfortran default)") set (PAC_FC_ALL_INTEGER_KINDS "\{1,2,4,8,16\}" CACHE INTERNAL "Find available INTEGER KINDs for Fortran") set (PAC_FC_ALL_REAL_KINDS "\{4,8,10,16\}" CACHE INTERNAL "Find available REAL KINDs for Fortran") set (${HDF_PREFIX}_PAC_FC_MAX_REAL_PRECISION 33 CACHE INTERNAL "Maximum decimal precision for REALs in Fortran") @@ -313,7 +313,7 @@ if (NOT CMAKE_CROSSCOMPILING) set (PAC_FC_ALL_INTEGER_KINDS_SIZEOF "\{${pack_int_sizeof}\}") else () # Use the default if there's no cache variable and cross-compiling - message (VERBOSE "Find available INTEGER KINDs for Fortran... yes (cross-compile default)") + message (VERBOSE "Find available INTEGER KINDs for Fortran... yes (cross-compile gfortran default)") set (PAC_FC_ALL_INTEGER_KINDS_SIZEOF "1,2,4,8,16" CACHE INTERNAL "Find available INTEGER KINDs for Fortran") endif () @@ -364,7 +364,7 @@ if (NOT CMAKE_CROSSCOMPILING) set (PAC_FC_ALL_REAL_KINDS_SIZEOF "\{${pack_real_sizeof}\}") else () # Use the default if there's no cache variable and cross-compiling - message (VERBOSE "Find available REAL KINDs for Fortran... yes (cross-compile default)") + message (VERBOSE "Find available REAL KINDs for Fortran... yes (cross-compile gfortran default)") set (PAC_FC_ALL_REAL_KINDS_SIZEOF "\{4,8,16,16\}" CACHE INTERNAL "Find available REAL KINDs for Fortran") endif () @@ -423,17 +423,17 @@ if (NOT CMAKE_CROSSCOMPILING) list (GET PROG_OUTPUT3 5 PAC_FORTRAN_NATIVE_DOUBLE_KIND) else () # Use the default if there's no cache variable and cross-compiling - message (VERBOSE "Find sizeof of native kinds sizeof INTEGER... yes (cross-compile default)") + message (VERBOSE "Find sizeof of native kinds sizeof INTEGER... yes (cross-compile gfortran default)") set (PAC_FORTRAN_NATIVE_INTEGER_SIZEOF 4 CACHE INTERNAL "Find sizeof of native kinds sizeof INTEGER") - message (VERBOSE "Find sizeof of native kinds kind of INTEGER... yes (cross-compile default)") + message (VERBOSE "Find sizeof of native kinds kind of INTEGER... yes (cross-compile gfortran default)") set (PAC_FORTRAN_NATIVE_INTEGER_KIND 4 CACHE INTERNAL "Find sizeof of native kinds kind of INTEGER") - message (VERBOSE "Find sizeof of native kinds sizeof REAL... yes (cross-compile default)") + message (VERBOSE "Find sizeof of native kinds sizeof REAL... yes (cross-compile gfortran default)") set (PAC_FORTRAN_NATIVE_REAL_SIZEOF 4 CACHE INTERNAL "Find sizeof of native kinds sizeof REAL") - message (VERBOSE "Find sizeof of native kinds kind of REAL... yes (cross-compile default)") + message (VERBOSE "Find sizeof of native kinds kind of REAL... yes (cross-compile gfortran default)") set (PAC_FORTRAN_NATIVE_REAL_KIND 4 CACHE INTERNAL "Find sizeof of native kinds kind of REAL") - message (VERBOSE "Find sizeof of native kinds sizeof DOUBLE PRECISION... yes (cross-compile default)") + message (VERBOSE "Find sizeof of native kinds sizeof DOUBLE PRECISION... yes (cross-compile gfortran default)") set (PAC_FORTRAN_NATIVE_DOUBLE_SIZEOF 8 CACHE INTERNAL "Find sizeof of native kinds sizeof DOUBLE PRECISION") - message (VERBOSE "Find sizeof of native kinds kind of DOUBLE PRECISION... yes (cross-compile default)") + message (VERBOSE "Find sizeof of native kinds kind of DOUBLE PRECISION... yes (cross-compile gfortran default)") set (PAC_FORTRAN_NATIVE_DOUBLE_KIND 8 CACHE INTERNAL "Find sizeof of native kinds kind of DOUBLE PRECISION") endif () diff --git a/config/toolchain/crosscompile-readme.cmake b/config/toolchain/crosscompile-readme.cmake new file mode 100644 index 00000000000..232fca76eb1 --- /dev/null +++ b/config/toolchain/crosscompile-readme.cmake @@ -0,0 +1,43 @@ +# This CMake toolchain file configures cross-compilation settings for building HDF5 on non-native platforms. +# Copy this file and rename it (e.g., to crosscompile-myplatform.cmake). +# Replace the placeholder values with actual values for your target system and compilers. +# Then use this file with CMake by specifying it with the -DCMAKE_TOOLCHAIN_FILE option. + +# Set the target system name for cross-compiling +set (CMAKE_SYSTEM_NAME system_name) + +# Specify the compiler vendor and compilers for C, C++, and Fortran +set (CMAKE_COMPILER_VENDOR "compiler_name") +set (CMAKE_C_COMPILER compiler_cc) +set (CMAKE_CXX_COMPILER compiler_c++) +set (CMAKE_Fortran_COMPILER compiler_fortran) + +# Optional: Specify an emulator for running binaries during cross-compilation +set (CMAKE_CROSSCOMPILING_EMULATOR "") + +# Fortran kind and precision settings for cross-compiling +set (PAC_FC_ALL_INTEGER_KINDS "\{x,y,z\}" CACHE INTERNAL "Find available INTEGER KINDs for Fortran") +set (PAC_FC_ALL_REAL_KINDS "\{x,y,z\}" CACHE INTERNAL "Find available REAL KINDs for Fortran") +set (${HDF_PREFIX}_PAC_FC_MAX_REAL_PRECISION X CACHE INTERNAL "Maximum decimal precision for REALs in Fortran") +set (PAC_FORTRAN_NUM_INTEGER_KINDS "Y" CACHE INTERNAL "Number of valid integer kinds for Fortran") +set (PAC_FORTRAN_NUM_REAL_KINDS "Z" CACHE INTERNAL "Number of valid real kinds for Fortran") + +# Fortran configuration variables for HDF5 +set (${HDF_PREFIX}_H5CONFIG_F_NUM_IKIND "INTEGER, PARAMETER :: num_ikinds = Y") +set (${HDF_PREFIX}_H5CONFIG_F_IKIND "INTEGER, DIMENSION(1:num_ikinds) :: ikind = (x,y,z)") + +# If using ISO_FORTRAN_ENV, set logical kind variables +if (${PAC_USE_ISO_FORTRAN_ENV}) + set (PAC_FORTRAN_NUM_LOGICAL_KINDS "W" CACHE INTERNAL "Find available LOGICAL KINDs for Fortran") + set (PAC_FC_ALL_LOGICAL_KINDS "\{x,y,z\}" CACHE INTERNAL "LOGICAL KINDS FOUND for Fortran") +endif () + +# Native kind and sizeof settings for Fortran types +set (PAC_FC_ALL_INTEGER_KINDS_SIZEOF "x,y,z" CACHE INTERNAL "Find available INTEGER KINDs for Fortran") +set (PAC_FC_ALL_REAL_KINDS_SIZEOF "\{x,y,z\}" CACHE INTERNAL "Find available REAL KINDs for Fortran") +set (PAC_FORTRAN_NATIVE_INTEGER_SIZEOF i CACHE INTERNAL "Find sizeof of native kinds sizeof INTEGER") +set (PAC_FORTRAN_NATIVE_INTEGER_KIND j CACHE INTERNAL "Find sizeof of native kinds kind of INTEGER") +set (PAC_FORTRAN_NATIVE_REAL_SIZEOF k CACHE INTERNAL "Find sizeof of native kinds sizeof REAL") +set (PAC_FORTRAN_NATIVE_REAL_KIND m CACHE INTERNAL "Find sizeof of native kinds kind of REAL") +set (PAC_FORTRAN_NATIVE_DOUBLE_SIZEOF n CACHE INTERNAL "Find sizeof of native kinds sizeof DOUBLE PRECISION") +set (PAC_FORTRAN_NATIVE_DOUBLE_KIND o CACHE INTERNAL "Find sizeof of native kinds kind of DOUBLE PRECISION") From 88a5c69feb3c976b40b900ecb70b94c8368b3a13 Mon Sep 17 00:00:00 2001 From: Allen Byrne Date: Tue, 12 Aug 2025 11:45:15 -0500 Subject: [PATCH 03/49] Add cross-compile action --- .github/workflows/cmake.yml | 6 +++ .github/workflows/cross-compile.yaml | 80 ++++++++++++++++++++++++++++ 2 files changed, 86 insertions(+) create mode 100644 .github/workflows/cross-compile.yaml diff --git a/.github/workflows/cmake.yml b/.github/workflows/cmake.yml index 0e89291dfe4..e5c4368b6bd 100644 --- a/.github/workflows/cmake.yml +++ b/.github/workflows/cmake.yml @@ -79,6 +79,12 @@ jobs: thread_safety: "" build_mode: "Debug" + call-release-cross: + name: "CMake Release Cross Compile Workflows" + uses: ./.github/workflows/Cross-compile.yml + with: + build_mode: "Release" + call-release-cmake: name: "CMake Release Workflows" uses: ./.github/workflows/main-cmake.yml diff --git a/.github/workflows/cross-compile.yaml b/.github/workflows/cross-compile.yaml new file mode 100644 index 00000000000..ce039b55b27 --- /dev/null +++ b/.github/workflows/cross-compile.yaml @@ -0,0 +1,80 @@ +name: hdf5 dev CMake CI + +# Triggers the workflow on a call from another workflow +on: + workflow_call: + inputs: + build_mode: + description: "release vs. debug build" + required: true + type: string + +permissions: + contents: read + +jobs: + build_and_test_linux: + name: "Ubuntu mingw64-${{ inputs.build_mode }}-${{ inputs.thread_safety }}-${{ inputs.concurrent }}" + runs-on: ubuntu-24.04 + steps: + - name: Install CMake Dependencies (Linux) + run: | + sudo apt-get update + sudo apt-get install ninja-build graphviz + sudo apt install libssl3 libssl-dev libcurl4 libcurl4-openssl-dev + + - name: Install Dependencies + uses: ssciwr/doxygen-install@v1 + with: + version: "1.13.2" + + # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it + - name: Get Sources + uses: actions/checkout@v4.1.7 + + # CMAKE CONFIGURE + - name: CMake Configure + run: | + mkdir "${{ runner.workspace }}/build" + cd "${{ runner.workspace }}/build" + cmake -C $GITHUB_WORKSPACE/config/cmake/cacheinit.cmake \ + -G Ninja \ + --log-level=VERBOSE \ + -DCMAKE_TOOLCHAIN_FILE:STRING=config/toolchain/mingw64.cmake") + -DCMAKE_BUILD_TYPE=${{ inputs.build_mode }} \ + -DHDF5_ENABLE_DOXY_WARNINGS:BOOL=ON \ + -DHDF5_BUILD_DOC:BOOL=ON \ + -DHDF5_ENABLE_ZLIB_SUPPORT:BOOL=ON \ + -DHDF5_ENABLE_SZIP_SUPPORT:BOOL=ON \ + -DLIBAEC_USE_LOCALCONTENT:BOOL=OFF \ + -DZLIB_USE_LOCALCONTENT:BOOL=OFF \ + -DHDF5_PACK_EXAMPLES:BOOL=ON \ + -DHDF5_PACKAGE_EXTLIBS:BOOL=ON \ + $GITHUB_WORKSPACE + shell: bash + + # BUILD + - name: CMake Build + run: cmake --build . --parallel 3 --config ${{ inputs.build_mode }} + working-directory: ${{ runner.workspace }}/build + + # RUN TESTS + - name: CMake Run Tests + run: ctest . --parallel 2 -C ${{ inputs.build_mode }} -V + working-directory: ${{ runner.workspace }}/build + + - name: CMake Run Package + run: cpack -C ${{ inputs.build_mode }} -V + working-directory: ${{ runner.workspace }}/build + + - name: List files in the space + run: | + ls -l ${{ runner.workspace }}/build + + - name: Save published binary (linux) + uses: actions/upload-artifact@v4 + with: + name: tgz-ubuntu-2404_mingw64-${{ inputs.build_mode }}-binary + path: ${{ runner.workspace }}/build/HDF5-*-Linux.tar.gz + if-no-files-found: error # 'warn' or 'ignore' are also available, defaults to `warn` + if: ${{ inputs.build_mode != 'Debug' }} From 1d8d13aa0cf4bb7a45eabcbf28c84cba958eef7e Mon Sep 17 00:00:00 2001 From: Allen Byrne Date: Tue, 12 Aug 2025 11:46:27 -0500 Subject: [PATCH 04/49] install mingw --- .github/workflows/cross-compile.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/cross-compile.yaml b/.github/workflows/cross-compile.yaml index ce039b55b27..bcec0ae36d4 100644 --- a/.github/workflows/cross-compile.yaml +++ b/.github/workflows/cross-compile.yaml @@ -22,6 +22,7 @@ jobs: sudo apt-get update sudo apt-get install ninja-build graphviz sudo apt install libssl3 libssl-dev libcurl4 libcurl4-openssl-dev + sudo apt install mingw-w64 - name: Install Dependencies uses: ssciwr/doxygen-install@v1 From 4c34d6b6699e6fa7301ada13b613f196b124d17d Mon Sep 17 00:00:00 2001 From: Allen Byrne Date: Tue, 12 Aug 2025 11:47:46 -0500 Subject: [PATCH 05/49] correct yaml name --- .github/workflows/cmake.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/cmake.yml b/.github/workflows/cmake.yml index e5c4368b6bd..640715114ee 100644 --- a/.github/workflows/cmake.yml +++ b/.github/workflows/cmake.yml @@ -81,7 +81,7 @@ jobs: call-release-cross: name: "CMake Release Cross Compile Workflows" - uses: ./.github/workflows/Cross-compile.yml + uses: ./.github/workflows/cross-compile.yml with: build_mode: "Release" From 84aafb481188ee4db49ba7617bfd4c7ffbdf19bb Mon Sep 17 00:00:00 2001 From: Allen Byrne Date: Tue, 12 Aug 2025 11:49:03 -0500 Subject: [PATCH 06/49] Fix ext name --- .github/workflows/{cross-compile.yaml => cross-compile.yml} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename .github/workflows/{cross-compile.yaml => cross-compile.yml} (100%) diff --git a/.github/workflows/cross-compile.yaml b/.github/workflows/cross-compile.yml similarity index 100% rename from .github/workflows/cross-compile.yaml rename to .github/workflows/cross-compile.yml From e10dc8d4e04210a37dbda808b52e2c8c88cead96 Mon Sep 17 00:00:00 2001 From: Allen Byrne Date: Tue, 12 Aug 2025 11:52:19 -0500 Subject: [PATCH 07/49] disable plugins until fixed --- .github/workflows/cross-compile.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/cross-compile.yml b/.github/workflows/cross-compile.yml index bcec0ae36d4..81433fb57d2 100644 --- a/.github/workflows/cross-compile.yml +++ b/.github/workflows/cross-compile.yml @@ -45,6 +45,7 @@ jobs: -DCMAKE_BUILD_TYPE=${{ inputs.build_mode }} \ -DHDF5_ENABLE_DOXY_WARNINGS:BOOL=ON \ -DHDF5_BUILD_DOC:BOOL=ON \ + -DHDF5_ENABLE_PLUGIN_SUPPORT:BOOL=OFF \ -DHDF5_ENABLE_ZLIB_SUPPORT:BOOL=ON \ -DHDF5_ENABLE_SZIP_SUPPORT:BOOL=ON \ -DLIBAEC_USE_LOCALCONTENT:BOOL=OFF \ From c528c126414b4b6a5ab3fae308c54dd26c5875bd Mon Sep 17 00:00:00 2001 From: Allen Byrne Date: Tue, 12 Aug 2025 12:30:50 -0500 Subject: [PATCH 08/49] correct syntax --- .github/workflows/cross-compile.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/cross-compile.yml b/.github/workflows/cross-compile.yml index 81433fb57d2..69e6e8ad731 100644 --- a/.github/workflows/cross-compile.yml +++ b/.github/workflows/cross-compile.yml @@ -41,7 +41,7 @@ jobs: cmake -C $GITHUB_WORKSPACE/config/cmake/cacheinit.cmake \ -G Ninja \ --log-level=VERBOSE \ - -DCMAKE_TOOLCHAIN_FILE:STRING=config/toolchain/mingw64.cmake") + -DCMAKE_TOOLCHAIN_FILE:STRING=config/toolchain/mingw64.cmake \ -DCMAKE_BUILD_TYPE=${{ inputs.build_mode }} \ -DHDF5_ENABLE_DOXY_WARNINGS:BOOL=ON \ -DHDF5_BUILD_DOC:BOOL=ON \ From b590e5c6fb5ae753c0ad2bbe721ad0ffc1e05281 Mon Sep 17 00:00:00 2001 From: Allen Byrne Date: Tue, 12 Aug 2025 13:24:31 -0500 Subject: [PATCH 09/49] Try setup-mingw --- .github/workflows/cross-compile.yml | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/.github/workflows/cross-compile.yml b/.github/workflows/cross-compile.yml index 69e6e8ad731..6a42e82feb8 100644 --- a/.github/workflows/cross-compile.yml +++ b/.github/workflows/cross-compile.yml @@ -14,7 +14,7 @@ permissions: jobs: build_and_test_linux: - name: "Ubuntu mingw64-${{ inputs.build_mode }}-${{ inputs.thread_safety }}-${{ inputs.concurrent }}" + name: "Ubuntu mingw64-${{ inputs.build_mode }}" runs-on: ubuntu-24.04 steps: - name: Install CMake Dependencies (Linux) @@ -22,7 +22,11 @@ jobs: sudo apt-get update sudo apt-get install ninja-build graphviz sudo apt install libssl3 libssl-dev libcurl4 libcurl4-openssl-dev - sudo apt install mingw-w64 + + - name: Set up MinGW + uses: egor-tensin/setup-mingw@v2 + with: + platform: x64 - name: Install Dependencies uses: ssciwr/doxygen-install@v1 From d871ee07c82e799999d410f12bd5c89b6833a53f Mon Sep 17 00:00:00 2001 From: Allen Byrne Date: Tue, 12 Aug 2025 14:03:15 -0500 Subject: [PATCH 10/49] Try a different toolchain with paths --- config/toolchain/mingw64.cmake | 14 -------------- 1 file changed, 14 deletions(-) delete mode 100644 config/toolchain/mingw64.cmake diff --git a/config/toolchain/mingw64.cmake b/config/toolchain/mingw64.cmake deleted file mode 100644 index d4d2e4e0532..00000000000 --- a/config/toolchain/mingw64.cmake +++ /dev/null @@ -1,14 +0,0 @@ -set (TOOLCHAIN_PREFIX x86_64-w64-mingw32) -set (CMAKE_SYSTEM_NAME Windows) -set (CMAKE_C_COMPILER ${TOOLCHAIN_PREFIX}-gcc) -set (CMAKE_CXX_COMPILER ${TOOLCHAIN_PREFIX}-g++) -set (CMAKE_RC_COMPILER ${TOOLCHAIN_PREFIX}-windres) -set (CMAKE_Fortran_COMPILER ${TOOLCHAIN_PREFIX}-gfortran) -set (CMAKE_FIND_ROOT_PATH /usr/${TOOLCHAIN_PREFIX}) -set (CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER) -set (CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY) -set (CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY) -set (CMAKE_CROSSCOMPILING_EMULATOR wine64) - -include_directories(/usr/${TOOLCHAIN_PREFIX}/include) -set (CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS On CACHE BOOL "Export windows symbols") From b0f0efb8ba0f24b836447bf8ca48dbd571588f63 Mon Sep 17 00:00:00 2001 From: Allen Byrne Date: Tue, 12 Aug 2025 14:08:59 -0500 Subject: [PATCH 11/49] fix toolchain --- config/toolchain/mingw64.cmake | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 config/toolchain/mingw64.cmake diff --git a/config/toolchain/mingw64.cmake b/config/toolchain/mingw64.cmake new file mode 100644 index 00000000000..0e9b31350ba --- /dev/null +++ b/config/toolchain/mingw64.cmake @@ -0,0 +1,34 @@ +set (TOOLCHAIN_PREFIX x86_64-w64-mingw32) +set (CMAKE_SYSTEM_NAME Windows) +set (CMAKE_SYSTEM_PROCESSOR x86_64) + +# specify the cross compiler +if (NOT DEFINED ENV{CC}) + set (CMAKE_C_COMPILER /usr/bin/${TOOLCHAIN_PREFIX}-gcc) +endif () +if (NOT DEFINED ENV{CXX}) +set (CMAKE_CXX_COMPILER /usr/bin/${TOOLCHAIN_PREFIX}-g++) +endif () +if (NOT DEFINED ENV{FC}) +set (CMAKE_Fortran_COMPILER /usr/bin/${TOOLCHAIN_PREFIX}-gfortran) +# set the resource compiler (RHBZ #652435) +endif () +if (NOT DEFINED ENV{RC}) +set (CMAKE_RC_COMPILER /usr/bin/${TOOLCHAIN_PREFIX}-windres) +endif () + +set (CMAKE_FIND_ROOT_PATH /usr/${TOOLCHAIN_PREFIX}/sys-root/mingw) + +# search for programs in the build host directories +set (CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER) +# for libraries, headers and packages in the target directories +set (CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY) +set (CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY) +set (CMAKE_FIND_ROOT_PATH_MODE_PACKAGE ONLY) +set (CMAKE_CROSSCOMPILING_EMULATOR wine64) + +include_directories (/usr/${TOOLCHAIN_PREFIX}/include) +set (CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS On CACHE BOOL "Export windows symbols") + +set (CMAKE_AR:FILEPATH /usr/bin/${TOOLCHAIN_PREFIX}-ar) +set (CMAKE_RANLIB:FILEPATH /usr/bin/${TOOLCHAIN_PREFIX}2-ranlib) From 239db8ea3712c0502529707d6a373e6042bf8ad2 Mon Sep 17 00:00:00 2001 From: Allen Byrne Date: Tue, 12 Aug 2025 14:17:10 -0500 Subject: [PATCH 12/49] Try explict install of gfortran --- .github/workflows/cross-compile.yml | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/.github/workflows/cross-compile.yml b/.github/workflows/cross-compile.yml index 6a42e82feb8..71c66496520 100644 --- a/.github/workflows/cross-compile.yml +++ b/.github/workflows/cross-compile.yml @@ -22,11 +22,8 @@ jobs: sudo apt-get update sudo apt-get install ninja-build graphviz sudo apt install libssl3 libssl-dev libcurl4 libcurl4-openssl-dev - - - name: Set up MinGW - uses: egor-tensin/setup-mingw@v2 - with: - platform: x64 + sudo apt-get install -y mingw-w64 + sudo apt-get install gfortran-mingw-w64-x86-64-win32 - name: Install Dependencies uses: ssciwr/doxygen-install@v1 From 8fe8f0bb06f00420168ece93425c6a261825fa83 Mon Sep 17 00:00:00 2001 From: Allen Byrne Date: Tue, 12 Aug 2025 14:29:58 -0500 Subject: [PATCH 13/49] Disable java --- .github/workflows/cross-compile.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/cross-compile.yml b/.github/workflows/cross-compile.yml index 71c66496520..21b5f8c11ca 100644 --- a/.github/workflows/cross-compile.yml +++ b/.github/workflows/cross-compile.yml @@ -46,6 +46,7 @@ jobs: -DCMAKE_BUILD_TYPE=${{ inputs.build_mode }} \ -DHDF5_ENABLE_DOXY_WARNINGS:BOOL=ON \ -DHDF5_BUILD_DOC:BOOL=ON \ + -DHDF5_BUILD_JAVA:BOOL=OFF \ -DHDF5_ENABLE_PLUGIN_SUPPORT:BOOL=OFF \ -DHDF5_ENABLE_ZLIB_SUPPORT:BOOL=ON \ -DHDF5_ENABLE_SZIP_SUPPORT:BOOL=ON \ From 4b17b90a4dfb48fa652ff51e86315dec9e5c77f6 Mon Sep 17 00:00:00 2001 From: Allen Byrne Date: Tue, 12 Aug 2025 15:13:26 -0500 Subject: [PATCH 14/49] Adjust default values --- config/HDF5UseFortran.cmake | 4 ++-- config/toolchain/crosscompile-readme.cmake | 4 ++-- config/toolchain/mingw64.cmake | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/config/HDF5UseFortran.cmake b/config/HDF5UseFortran.cmake index d3ef988ba7e..85b488dc17f 100644 --- a/config/HDF5UseFortran.cmake +++ b/config/HDF5UseFortran.cmake @@ -218,7 +218,7 @@ else () set (PAC_FORTRAN_NUM_REAL_KINDS "4" CACHE INTERNAL "Number of valid real kinds for Fortran") set (${HDF_PREFIX}_H5CONFIG_F_NUM_IKIND "INTEGER, PARAMETER :: num_ikinds = 4") - set (${HDF_PREFIX}_H5CONFIG_F_IKIND "INTEGER, DIMENSION(1:num_ikinds) :: ikind = (1,2,4,8,16)") + set (${HDF_PREFIX}_H5CONFIG_F_IKIND "INTEGER, DIMENSION(1:num_ikinds) :: ikind = (1,2,4,8,16/)") if (${HAVE_ISO_FORTRAN_ENV}) set (PAC_FORTRAN_NUM_LOGICAL_KINDS "5" CACHE INTERNAL "Find available LOGICAL KINDs for Fortran") @@ -314,7 +314,7 @@ if (NOT CMAKE_CROSSCOMPILING) else () # Use the default if there's no cache variable and cross-compiling message (VERBOSE "Find available INTEGER KINDs for Fortran... yes (cross-compile gfortran default)") - set (PAC_FC_ALL_INTEGER_KINDS_SIZEOF "1,2,4,8,16" CACHE INTERNAL "Find available INTEGER KINDs for Fortran") + set (PAC_FC_ALL_INTEGER_KINDS_SIZEOF "\{1,2,4,8,16\}" CACHE INTERNAL "Find available INTEGER KINDs for Fortran") endif () if (PAC_FC_ALL_INTEGER_KINDS_SIZEOF STREQUAL "") diff --git a/config/toolchain/crosscompile-readme.cmake b/config/toolchain/crosscompile-readme.cmake index 232fca76eb1..8a19b93f4ff 100644 --- a/config/toolchain/crosscompile-readme.cmake +++ b/config/toolchain/crosscompile-readme.cmake @@ -24,7 +24,7 @@ set (PAC_FORTRAN_NUM_REAL_KINDS "Z" CACHE INTERNAL "Number of valid real kinds f # Fortran configuration variables for HDF5 set (${HDF_PREFIX}_H5CONFIG_F_NUM_IKIND "INTEGER, PARAMETER :: num_ikinds = Y") -set (${HDF_PREFIX}_H5CONFIG_F_IKIND "INTEGER, DIMENSION(1:num_ikinds) :: ikind = (x,y,z)") +set (${HDF_PREFIX}_H5CONFIG_F_IKIND "INTEGER, DIMENSION(1:num_ikinds) :: ikind = (x,y,z/)") # If using ISO_FORTRAN_ENV, set logical kind variables if (${PAC_USE_ISO_FORTRAN_ENV}) @@ -33,7 +33,7 @@ if (${PAC_USE_ISO_FORTRAN_ENV}) endif () # Native kind and sizeof settings for Fortran types -set (PAC_FC_ALL_INTEGER_KINDS_SIZEOF "x,y,z" CACHE INTERNAL "Find available INTEGER KINDs for Fortran") +set (PAC_FC_ALL_INTEGER_KINDS_SIZEOF "\{x,y,z\}" CACHE INTERNAL "Find available INTEGER KINDs for Fortran") set (PAC_FC_ALL_REAL_KINDS_SIZEOF "\{x,y,z\}" CACHE INTERNAL "Find available REAL KINDs for Fortran") set (PAC_FORTRAN_NATIVE_INTEGER_SIZEOF i CACHE INTERNAL "Find sizeof of native kinds sizeof INTEGER") set (PAC_FORTRAN_NATIVE_INTEGER_KIND j CACHE INTERNAL "Find sizeof of native kinds kind of INTEGER") diff --git a/config/toolchain/mingw64.cmake b/config/toolchain/mingw64.cmake index 0e9b31350ba..9b24eeebb27 100644 --- a/config/toolchain/mingw64.cmake +++ b/config/toolchain/mingw64.cmake @@ -31,4 +31,4 @@ include_directories (/usr/${TOOLCHAIN_PREFIX}/include) set (CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS On CACHE BOOL "Export windows symbols") set (CMAKE_AR:FILEPATH /usr/bin/${TOOLCHAIN_PREFIX}-ar) -set (CMAKE_RANLIB:FILEPATH /usr/bin/${TOOLCHAIN_PREFIX}2-ranlib) +set (CMAKE_RANLIB:FILEPATH /usr/bin/${TOOLCHAIN_PREFIX}-ranlib) From de00e4999d124181abeb5c3f473e09a16e584c0a Mon Sep 17 00:00:00 2001 From: Allen Byrne Date: Tue, 12 Aug 2025 15:43:29 -0500 Subject: [PATCH 15/49] Adjust values and syntax --- config/HDF5UseFortran.cmake | 4 ++-- config/toolchain/crosscompile-readme.cmake | 2 +- config/toolchain/mingw64.cmake | 1 - 3 files changed, 3 insertions(+), 4 deletions(-) diff --git a/config/HDF5UseFortran.cmake b/config/HDF5UseFortran.cmake index 85b488dc17f..30ed75d04f7 100644 --- a/config/HDF5UseFortran.cmake +++ b/config/HDF5UseFortran.cmake @@ -217,8 +217,8 @@ else () set (PAC_FORTRAN_NUM_INTEGER_KINDS "5" CACHE INTERNAL "Number of valid integer kinds for Fortran") set (PAC_FORTRAN_NUM_REAL_KINDS "4" CACHE INTERNAL "Number of valid real kinds for Fortran") - set (${HDF_PREFIX}_H5CONFIG_F_NUM_IKIND "INTEGER, PARAMETER :: num_ikinds = 4") - set (${HDF_PREFIX}_H5CONFIG_F_IKIND "INTEGER, DIMENSION(1:num_ikinds) :: ikind = (1,2,4,8,16/)") + set (${HDF_PREFIX}_H5CONFIG_F_NUM_IKIND "INTEGER, PARAMETER :: num_ikinds = 5") + set (${HDF_PREFIX}_H5CONFIG_F_IKIND "INTEGER, DIMENSION(1:num_ikinds) :: ikind = (/1,2,4,8,16/)") if (${HAVE_ISO_FORTRAN_ENV}) set (PAC_FORTRAN_NUM_LOGICAL_KINDS "5" CACHE INTERNAL "Find available LOGICAL KINDs for Fortran") diff --git a/config/toolchain/crosscompile-readme.cmake b/config/toolchain/crosscompile-readme.cmake index 8a19b93f4ff..0a62f107f83 100644 --- a/config/toolchain/crosscompile-readme.cmake +++ b/config/toolchain/crosscompile-readme.cmake @@ -24,7 +24,7 @@ set (PAC_FORTRAN_NUM_REAL_KINDS "Z" CACHE INTERNAL "Number of valid real kinds f # Fortran configuration variables for HDF5 set (${HDF_PREFIX}_H5CONFIG_F_NUM_IKIND "INTEGER, PARAMETER :: num_ikinds = Y") -set (${HDF_PREFIX}_H5CONFIG_F_IKIND "INTEGER, DIMENSION(1:num_ikinds) :: ikind = (x,y,z/)") +set (${HDF_PREFIX}_H5CONFIG_F_IKIND "INTEGER, DIMENSION(1:num_ikinds) :: ikind = (/x,y,z/)") # If using ISO_FORTRAN_ENV, set logical kind variables if (${PAC_USE_ISO_FORTRAN_ENV}) diff --git a/config/toolchain/mingw64.cmake b/config/toolchain/mingw64.cmake index 9b24eeebb27..d9ffff87165 100644 --- a/config/toolchain/mingw64.cmake +++ b/config/toolchain/mingw64.cmake @@ -27,7 +27,6 @@ set (CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY) set (CMAKE_FIND_ROOT_PATH_MODE_PACKAGE ONLY) set (CMAKE_CROSSCOMPILING_EMULATOR wine64) -include_directories (/usr/${TOOLCHAIN_PREFIX}/include) set (CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS On CACHE BOOL "Export windows symbols") set (CMAKE_AR:FILEPATH /usr/bin/${TOOLCHAIN_PREFIX}-ar) From 4e2e99060cb13912fb013e7d441dd7f12a83713b Mon Sep 17 00:00:00 2001 From: Allen Byrne Date: Tue, 2 Sep 2025 17:13:54 -0500 Subject: [PATCH 16/49] Add support for Fortran pregen files --- CMakeLists.txt | 6 + config/fortpregen/gfortran/H5LTff_gen.F90 | 6515 ++++++++++++++ config/fortpregen/gfortran/H5TBff_gen.F90 | 465 + config/fortpregen/gfortran/H5_gen.F90 | 7725 +++++++++++++++++ config/fortpregen/gfortran/H5f90i_gen.h | 49 + .../fortpregen/gfortran/H5fortran_types.F90 | 42 + config/fortpregen/gfortran/tf_gen.F90 | 387 + fortran/src/CMakeLists.txt | 98 +- fortran/test/CMakeLists.txt | 46 +- hl/fortran/src/CMakeLists.txt | 47 +- 10 files changed, 15347 insertions(+), 33 deletions(-) create mode 100644 config/fortpregen/gfortran/H5LTff_gen.F90 create mode 100644 config/fortpregen/gfortran/H5TBff_gen.F90 create mode 100644 config/fortpregen/gfortran/H5_gen.F90 create mode 100644 config/fortpregen/gfortran/H5f90i_gen.h create mode 100644 config/fortpregen/gfortran/H5fortran_types.F90 create mode 100644 config/fortpregen/gfortran/tf_gen.F90 diff --git a/CMakeLists.txt b/CMakeLists.txt index 5ad3134263a..b9ec381832f 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -325,6 +325,12 @@ set (HDF5_DOXYGEN_DIR ${HDF5_SOURCE_DIR}/doxygen) set (HDF5_SRC_INCLUDE_DIRS ${HDF5_SRC_DIR}) +if (HDF5_USE_PREGEN) + set (HDF5_GENERATED_SOURCE_DIR ${HDF5_USE_PREGEN_DIR}) +else () + set (HDF5_GENERATED_SOURCE_DIR ${HDF5_F90_SRC_BINARY_DIR}) +endif () + #----------------------------------------------------------------------------- # parse the full version number from H5public.h and include in H5_VERS_INFO #----------------------------------------------------------------------------- diff --git a/config/fortpregen/gfortran/H5LTff_gen.F90 b/config/fortpregen/gfortran/H5LTff_gen.F90 new file mode 100644 index 00000000000..5f7aca790f3 --- /dev/null +++ b/config/fortpregen/gfortran/H5LTff_gen.F90 @@ -0,0 +1,6515 @@ +!****h* ROBODoc/H5LTff_gen.F90 +! +! NAME +! H5LTff_gen +! +! PURPOSE +! This module is generated at build by H5HL_buildiface.F90 to handle all the +! detected REAL/INTEGER KINDs for APIs being passed those KINDs. Currently these +! are H5LT and H5TB APIs +! +! COPYRIGHT +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! 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 LICENSE 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. * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! +! AUTHOR +! H5HL_buildiface.F90 +! +!***** + +MODULE H5LT + USE, INTRINSIC :: ISO_C_BINDING + USE h5fortran_types + USE H5LT_CONST + IMPLICIT NONE + INTERFACE h5ltmake_dataset_f + MODULE PROCEDURE h5ltmake_dataset_real_kind_4_rank_0 + MODULE PROCEDURE h5ltmake_dataset_real_kind_4_rank_1 + MODULE PROCEDURE h5ltmake_dataset_real_kind_4_rank_2 + MODULE PROCEDURE h5ltmake_dataset_real_kind_4_rank_3 + MODULE PROCEDURE h5ltmake_dataset_real_kind_4_rank_4 + MODULE PROCEDURE h5ltmake_dataset_real_kind_4_rank_5 + MODULE PROCEDURE h5ltmake_dataset_real_kind_4_rank_6 + MODULE PROCEDURE h5ltmake_dataset_real_kind_4_rank_7 + MODULE PROCEDURE h5ltmake_dataset_real_kind_8_rank_0 + MODULE PROCEDURE h5ltmake_dataset_real_kind_8_rank_1 + MODULE PROCEDURE h5ltmake_dataset_real_kind_8_rank_2 + MODULE PROCEDURE h5ltmake_dataset_real_kind_8_rank_3 + MODULE PROCEDURE h5ltmake_dataset_real_kind_8_rank_4 + MODULE PROCEDURE h5ltmake_dataset_real_kind_8_rank_5 + MODULE PROCEDURE h5ltmake_dataset_real_kind_8_rank_6 + MODULE PROCEDURE h5ltmake_dataset_real_kind_8_rank_7 + MODULE PROCEDURE h5ltmake_dataset_real_kind_10_rank_0 + MODULE PROCEDURE h5ltmake_dataset_real_kind_10_rank_1 + MODULE PROCEDURE h5ltmake_dataset_real_kind_10_rank_2 + MODULE PROCEDURE h5ltmake_dataset_real_kind_10_rank_3 + MODULE PROCEDURE h5ltmake_dataset_real_kind_10_rank_4 + MODULE PROCEDURE h5ltmake_dataset_real_kind_10_rank_5 + MODULE PROCEDURE h5ltmake_dataset_real_kind_10_rank_6 + MODULE PROCEDURE h5ltmake_dataset_real_kind_10_rank_7 + MODULE PROCEDURE h5ltmake_dataset_real_kind_16_rank_0 + MODULE PROCEDURE h5ltmake_dataset_real_kind_16_rank_1 + MODULE PROCEDURE h5ltmake_dataset_real_kind_16_rank_2 + MODULE PROCEDURE h5ltmake_dataset_real_kind_16_rank_3 + MODULE PROCEDURE h5ltmake_dataset_real_kind_16_rank_4 + MODULE PROCEDURE h5ltmake_dataset_real_kind_16_rank_5 + MODULE PROCEDURE h5ltmake_dataset_real_kind_16_rank_6 + MODULE PROCEDURE h5ltmake_dataset_real_kind_16_rank_7 + MODULE PROCEDURE h5ltmake_dataset_integer_kind_1_rank_0 + MODULE PROCEDURE h5ltmake_dataset_integer_kind_1_rank_1 + MODULE PROCEDURE h5ltmake_dataset_integer_kind_1_rank_2 + MODULE PROCEDURE h5ltmake_dataset_integer_kind_1_rank_3 + MODULE PROCEDURE h5ltmake_dataset_integer_kind_1_rank_4 + MODULE PROCEDURE h5ltmake_dataset_integer_kind_1_rank_5 + MODULE PROCEDURE h5ltmake_dataset_integer_kind_1_rank_6 + MODULE PROCEDURE h5ltmake_dataset_integer_kind_1_rank_7 + MODULE PROCEDURE h5ltmake_dataset_integer_kind_2_rank_0 + MODULE PROCEDURE h5ltmake_dataset_integer_kind_2_rank_1 + MODULE PROCEDURE h5ltmake_dataset_integer_kind_2_rank_2 + MODULE PROCEDURE h5ltmake_dataset_integer_kind_2_rank_3 + MODULE PROCEDURE h5ltmake_dataset_integer_kind_2_rank_4 + MODULE PROCEDURE h5ltmake_dataset_integer_kind_2_rank_5 + MODULE PROCEDURE h5ltmake_dataset_integer_kind_2_rank_6 + MODULE PROCEDURE h5ltmake_dataset_integer_kind_2_rank_7 + MODULE PROCEDURE h5ltmake_dataset_integer_kind_4_rank_0 + MODULE PROCEDURE h5ltmake_dataset_integer_kind_4_rank_1 + MODULE PROCEDURE h5ltmake_dataset_integer_kind_4_rank_2 + MODULE PROCEDURE h5ltmake_dataset_integer_kind_4_rank_3 + MODULE PROCEDURE h5ltmake_dataset_integer_kind_4_rank_4 + MODULE PROCEDURE h5ltmake_dataset_integer_kind_4_rank_5 + MODULE PROCEDURE h5ltmake_dataset_integer_kind_4_rank_6 + MODULE PROCEDURE h5ltmake_dataset_integer_kind_4_rank_7 + MODULE PROCEDURE h5ltmake_dataset_integer_kind_8_rank_0 + MODULE PROCEDURE h5ltmake_dataset_integer_kind_8_rank_1 + MODULE PROCEDURE h5ltmake_dataset_integer_kind_8_rank_2 + MODULE PROCEDURE h5ltmake_dataset_integer_kind_8_rank_3 + MODULE PROCEDURE h5ltmake_dataset_integer_kind_8_rank_4 + MODULE PROCEDURE h5ltmake_dataset_integer_kind_8_rank_5 + MODULE PROCEDURE h5ltmake_dataset_integer_kind_8_rank_6 + MODULE PROCEDURE h5ltmake_dataset_integer_kind_8_rank_7 + MODULE PROCEDURE h5ltmake_dataset_integer_kind_16_rank_0 + MODULE PROCEDURE h5ltmake_dataset_integer_kind_16_rank_1 + MODULE PROCEDURE h5ltmake_dataset_integer_kind_16_rank_2 + MODULE PROCEDURE h5ltmake_dataset_integer_kind_16_rank_3 + MODULE PROCEDURE h5ltmake_dataset_integer_kind_16_rank_4 + MODULE PROCEDURE h5ltmake_dataset_integer_kind_16_rank_5 + MODULE PROCEDURE h5ltmake_dataset_integer_kind_16_rank_6 + MODULE PROCEDURE h5ltmake_dataset_integer_kind_16_rank_7 + END INTERFACE + INTERFACE h5ltread_dataset_f + MODULE PROCEDURE h5ltread_dataset_real_kind_4_rank_0 + MODULE PROCEDURE h5ltread_dataset_real_kind_4_rank_1 + MODULE PROCEDURE h5ltread_dataset_real_kind_4_rank_2 + MODULE PROCEDURE h5ltread_dataset_real_kind_4_rank_3 + MODULE PROCEDURE h5ltread_dataset_real_kind_4_rank_4 + MODULE PROCEDURE h5ltread_dataset_real_kind_4_rank_5 + MODULE PROCEDURE h5ltread_dataset_real_kind_4_rank_6 + MODULE PROCEDURE h5ltread_dataset_real_kind_4_rank_7 + MODULE PROCEDURE h5ltread_dataset_real_kind_8_rank_0 + MODULE PROCEDURE h5ltread_dataset_real_kind_8_rank_1 + MODULE PROCEDURE h5ltread_dataset_real_kind_8_rank_2 + MODULE PROCEDURE h5ltread_dataset_real_kind_8_rank_3 + MODULE PROCEDURE h5ltread_dataset_real_kind_8_rank_4 + MODULE PROCEDURE h5ltread_dataset_real_kind_8_rank_5 + MODULE PROCEDURE h5ltread_dataset_real_kind_8_rank_6 + MODULE PROCEDURE h5ltread_dataset_real_kind_8_rank_7 + MODULE PROCEDURE h5ltread_dataset_real_kind_10_rank_0 + MODULE PROCEDURE h5ltread_dataset_real_kind_10_rank_1 + MODULE PROCEDURE h5ltread_dataset_real_kind_10_rank_2 + MODULE PROCEDURE h5ltread_dataset_real_kind_10_rank_3 + MODULE PROCEDURE h5ltread_dataset_real_kind_10_rank_4 + MODULE PROCEDURE h5ltread_dataset_real_kind_10_rank_5 + MODULE PROCEDURE h5ltread_dataset_real_kind_10_rank_6 + MODULE PROCEDURE h5ltread_dataset_real_kind_10_rank_7 + MODULE PROCEDURE h5ltread_dataset_real_kind_16_rank_0 + MODULE PROCEDURE h5ltread_dataset_real_kind_16_rank_1 + MODULE PROCEDURE h5ltread_dataset_real_kind_16_rank_2 + MODULE PROCEDURE h5ltread_dataset_real_kind_16_rank_3 + MODULE PROCEDURE h5ltread_dataset_real_kind_16_rank_4 + MODULE PROCEDURE h5ltread_dataset_real_kind_16_rank_5 + MODULE PROCEDURE h5ltread_dataset_real_kind_16_rank_6 + MODULE PROCEDURE h5ltread_dataset_real_kind_16_rank_7 + MODULE PROCEDURE h5ltread_dataset_integer_kind_1_rank_0 + MODULE PROCEDURE h5ltread_dataset_integer_kind_1_rank_1 + MODULE PROCEDURE h5ltread_dataset_integer_kind_1_rank_2 + MODULE PROCEDURE h5ltread_dataset_integer_kind_1_rank_3 + MODULE PROCEDURE h5ltread_dataset_integer_kind_1_rank_4 + MODULE PROCEDURE h5ltread_dataset_integer_kind_1_rank_5 + MODULE PROCEDURE h5ltread_dataset_integer_kind_1_rank_6 + MODULE PROCEDURE h5ltread_dataset_integer_kind_1_rank_7 + MODULE PROCEDURE h5ltread_dataset_integer_kind_2_rank_0 + MODULE PROCEDURE h5ltread_dataset_integer_kind_2_rank_1 + MODULE PROCEDURE h5ltread_dataset_integer_kind_2_rank_2 + MODULE PROCEDURE h5ltread_dataset_integer_kind_2_rank_3 + MODULE PROCEDURE h5ltread_dataset_integer_kind_2_rank_4 + MODULE PROCEDURE h5ltread_dataset_integer_kind_2_rank_5 + MODULE PROCEDURE h5ltread_dataset_integer_kind_2_rank_6 + MODULE PROCEDURE h5ltread_dataset_integer_kind_2_rank_7 + MODULE PROCEDURE h5ltread_dataset_integer_kind_4_rank_0 + MODULE PROCEDURE h5ltread_dataset_integer_kind_4_rank_1 + MODULE PROCEDURE h5ltread_dataset_integer_kind_4_rank_2 + MODULE PROCEDURE h5ltread_dataset_integer_kind_4_rank_3 + MODULE PROCEDURE h5ltread_dataset_integer_kind_4_rank_4 + MODULE PROCEDURE h5ltread_dataset_integer_kind_4_rank_5 + MODULE PROCEDURE h5ltread_dataset_integer_kind_4_rank_6 + MODULE PROCEDURE h5ltread_dataset_integer_kind_4_rank_7 + MODULE PROCEDURE h5ltread_dataset_integer_kind_8_rank_0 + MODULE PROCEDURE h5ltread_dataset_integer_kind_8_rank_1 + MODULE PROCEDURE h5ltread_dataset_integer_kind_8_rank_2 + MODULE PROCEDURE h5ltread_dataset_integer_kind_8_rank_3 + MODULE PROCEDURE h5ltread_dataset_integer_kind_8_rank_4 + MODULE PROCEDURE h5ltread_dataset_integer_kind_8_rank_5 + MODULE PROCEDURE h5ltread_dataset_integer_kind_8_rank_6 + MODULE PROCEDURE h5ltread_dataset_integer_kind_8_rank_7 + MODULE PROCEDURE h5ltread_dataset_integer_kind_16_rank_0 + MODULE PROCEDURE h5ltread_dataset_integer_kind_16_rank_1 + MODULE PROCEDURE h5ltread_dataset_integer_kind_16_rank_2 + MODULE PROCEDURE h5ltread_dataset_integer_kind_16_rank_3 + MODULE PROCEDURE h5ltread_dataset_integer_kind_16_rank_4 + MODULE PROCEDURE h5ltread_dataset_integer_kind_16_rank_5 + MODULE PROCEDURE h5ltread_dataset_integer_kind_16_rank_6 + MODULE PROCEDURE h5ltread_dataset_integer_kind_16_rank_7 + END INTERFACE + INTERFACE h5ltread_dataset_int_f + MODULE PROCEDURE h5ltread_dataset_int_kind_1_rank_0 + MODULE PROCEDURE h5ltread_dataset_int_kind_1_rank_1 + MODULE PROCEDURE h5ltread_dataset_int_kind_1_rank_2 + MODULE PROCEDURE h5ltread_dataset_int_kind_1_rank_3 + MODULE PROCEDURE h5ltread_dataset_int_kind_1_rank_4 + MODULE PROCEDURE h5ltread_dataset_int_kind_1_rank_5 + MODULE PROCEDURE h5ltread_dataset_int_kind_1_rank_6 + MODULE PROCEDURE h5ltread_dataset_int_kind_1_rank_7 + MODULE PROCEDURE h5ltread_dataset_int_kind_2_rank_0 + MODULE PROCEDURE h5ltread_dataset_int_kind_2_rank_1 + MODULE PROCEDURE h5ltread_dataset_int_kind_2_rank_2 + MODULE PROCEDURE h5ltread_dataset_int_kind_2_rank_3 + MODULE PROCEDURE h5ltread_dataset_int_kind_2_rank_4 + MODULE PROCEDURE h5ltread_dataset_int_kind_2_rank_5 + MODULE PROCEDURE h5ltread_dataset_int_kind_2_rank_6 + MODULE PROCEDURE h5ltread_dataset_int_kind_2_rank_7 + MODULE PROCEDURE h5ltread_dataset_int_kind_4_rank_0 + MODULE PROCEDURE h5ltread_dataset_int_kind_4_rank_1 + MODULE PROCEDURE h5ltread_dataset_int_kind_4_rank_2 + MODULE PROCEDURE h5ltread_dataset_int_kind_4_rank_3 + MODULE PROCEDURE h5ltread_dataset_int_kind_4_rank_4 + MODULE PROCEDURE h5ltread_dataset_int_kind_4_rank_5 + MODULE PROCEDURE h5ltread_dataset_int_kind_4_rank_6 + MODULE PROCEDURE h5ltread_dataset_int_kind_4_rank_7 + MODULE PROCEDURE h5ltread_dataset_int_kind_8_rank_0 + MODULE PROCEDURE h5ltread_dataset_int_kind_8_rank_1 + MODULE PROCEDURE h5ltread_dataset_int_kind_8_rank_2 + MODULE PROCEDURE h5ltread_dataset_int_kind_8_rank_3 + MODULE PROCEDURE h5ltread_dataset_int_kind_8_rank_4 + MODULE PROCEDURE h5ltread_dataset_int_kind_8_rank_5 + MODULE PROCEDURE h5ltread_dataset_int_kind_8_rank_6 + MODULE PROCEDURE h5ltread_dataset_int_kind_8_rank_7 + MODULE PROCEDURE h5ltread_dataset_int_kind_16_rank_0 + MODULE PROCEDURE h5ltread_dataset_int_kind_16_rank_1 + MODULE PROCEDURE h5ltread_dataset_int_kind_16_rank_2 + MODULE PROCEDURE h5ltread_dataset_int_kind_16_rank_3 + MODULE PROCEDURE h5ltread_dataset_int_kind_16_rank_4 + MODULE PROCEDURE h5ltread_dataset_int_kind_16_rank_5 + MODULE PROCEDURE h5ltread_dataset_int_kind_16_rank_6 + MODULE PROCEDURE h5ltread_dataset_int_kind_16_rank_7 + END INTERFACE + INTERFACE h5ltmake_dataset_int_f + MODULE PROCEDURE h5ltmake_dataset_int_kind_1_rank_0 + MODULE PROCEDURE h5ltmake_dataset_int_kind_1_rank_1 + MODULE PROCEDURE h5ltmake_dataset_int_kind_1_rank_2 + MODULE PROCEDURE h5ltmake_dataset_int_kind_1_rank_3 + MODULE PROCEDURE h5ltmake_dataset_int_kind_1_rank_4 + MODULE PROCEDURE h5ltmake_dataset_int_kind_1_rank_5 + MODULE PROCEDURE h5ltmake_dataset_int_kind_1_rank_6 + MODULE PROCEDURE h5ltmake_dataset_int_kind_1_rank_7 + MODULE PROCEDURE h5ltmake_dataset_int_kind_2_rank_0 + MODULE PROCEDURE h5ltmake_dataset_int_kind_2_rank_1 + MODULE PROCEDURE h5ltmake_dataset_int_kind_2_rank_2 + MODULE PROCEDURE h5ltmake_dataset_int_kind_2_rank_3 + MODULE PROCEDURE h5ltmake_dataset_int_kind_2_rank_4 + MODULE PROCEDURE h5ltmake_dataset_int_kind_2_rank_5 + MODULE PROCEDURE h5ltmake_dataset_int_kind_2_rank_6 + MODULE PROCEDURE h5ltmake_dataset_int_kind_2_rank_7 + MODULE PROCEDURE h5ltmake_dataset_int_kind_4_rank_0 + MODULE PROCEDURE h5ltmake_dataset_int_kind_4_rank_1 + MODULE PROCEDURE h5ltmake_dataset_int_kind_4_rank_2 + MODULE PROCEDURE h5ltmake_dataset_int_kind_4_rank_3 + MODULE PROCEDURE h5ltmake_dataset_int_kind_4_rank_4 + MODULE PROCEDURE h5ltmake_dataset_int_kind_4_rank_5 + MODULE PROCEDURE h5ltmake_dataset_int_kind_4_rank_6 + MODULE PROCEDURE h5ltmake_dataset_int_kind_4_rank_7 + MODULE PROCEDURE h5ltmake_dataset_int_kind_8_rank_0 + MODULE PROCEDURE h5ltmake_dataset_int_kind_8_rank_1 + MODULE PROCEDURE h5ltmake_dataset_int_kind_8_rank_2 + MODULE PROCEDURE h5ltmake_dataset_int_kind_8_rank_3 + MODULE PROCEDURE h5ltmake_dataset_int_kind_8_rank_4 + MODULE PROCEDURE h5ltmake_dataset_int_kind_8_rank_5 + MODULE PROCEDURE h5ltmake_dataset_int_kind_8_rank_6 + MODULE PROCEDURE h5ltmake_dataset_int_kind_8_rank_7 + MODULE PROCEDURE h5ltmake_dataset_int_kind_16_rank_0 + MODULE PROCEDURE h5ltmake_dataset_int_kind_16_rank_1 + MODULE PROCEDURE h5ltmake_dataset_int_kind_16_rank_2 + MODULE PROCEDURE h5ltmake_dataset_int_kind_16_rank_3 + MODULE PROCEDURE h5ltmake_dataset_int_kind_16_rank_4 + MODULE PROCEDURE h5ltmake_dataset_int_kind_16_rank_5 + MODULE PROCEDURE h5ltmake_dataset_int_kind_16_rank_6 + MODULE PROCEDURE h5ltmake_dataset_int_kind_16_rank_7 + END INTERFACE + INTERFACE h5ltmake_dataset_float_f + MODULE PROCEDURE h5ltmake_dataset_float_kind_4_rank_0 + MODULE PROCEDURE h5ltmake_dataset_float_kind_4_rank_1 + MODULE PROCEDURE h5ltmake_dataset_float_kind_4_rank_2 + MODULE PROCEDURE h5ltmake_dataset_float_kind_4_rank_3 + MODULE PROCEDURE h5ltmake_dataset_float_kind_4_rank_4 + MODULE PROCEDURE h5ltmake_dataset_float_kind_4_rank_5 + MODULE PROCEDURE h5ltmake_dataset_float_kind_4_rank_6 + MODULE PROCEDURE h5ltmake_dataset_float_kind_4_rank_7 + MODULE PROCEDURE h5ltmake_dataset_float_kind_8_rank_0 + MODULE PROCEDURE h5ltmake_dataset_float_kind_8_rank_1 + MODULE PROCEDURE h5ltmake_dataset_float_kind_8_rank_2 + MODULE PROCEDURE h5ltmake_dataset_float_kind_8_rank_3 + MODULE PROCEDURE h5ltmake_dataset_float_kind_8_rank_4 + MODULE PROCEDURE h5ltmake_dataset_float_kind_8_rank_5 + MODULE PROCEDURE h5ltmake_dataset_float_kind_8_rank_6 + MODULE PROCEDURE h5ltmake_dataset_float_kind_8_rank_7 + MODULE PROCEDURE h5ltmake_dataset_float_kind_10_rank_0 + MODULE PROCEDURE h5ltmake_dataset_float_kind_10_rank_1 + MODULE PROCEDURE h5ltmake_dataset_float_kind_10_rank_2 + MODULE PROCEDURE h5ltmake_dataset_float_kind_10_rank_3 + MODULE PROCEDURE h5ltmake_dataset_float_kind_10_rank_4 + MODULE PROCEDURE h5ltmake_dataset_float_kind_10_rank_5 + MODULE PROCEDURE h5ltmake_dataset_float_kind_10_rank_6 + MODULE PROCEDURE h5ltmake_dataset_float_kind_10_rank_7 + MODULE PROCEDURE h5ltmake_dataset_float_kind_16_rank_0 + MODULE PROCEDURE h5ltmake_dataset_float_kind_16_rank_1 + MODULE PROCEDURE h5ltmake_dataset_float_kind_16_rank_2 + MODULE PROCEDURE h5ltmake_dataset_float_kind_16_rank_3 + MODULE PROCEDURE h5ltmake_dataset_float_kind_16_rank_4 + MODULE PROCEDURE h5ltmake_dataset_float_kind_16_rank_5 + MODULE PROCEDURE h5ltmake_dataset_float_kind_16_rank_6 + MODULE PROCEDURE h5ltmake_dataset_float_kind_16_rank_7 + END INTERFACE + INTERFACE h5ltmake_dataset_double_f + MODULE PROCEDURE h5ltmake_dataset_double_kind_4_rank_0 + MODULE PROCEDURE h5ltmake_dataset_double_kind_4_rank_1 + MODULE PROCEDURE h5ltmake_dataset_double_kind_4_rank_2 + MODULE PROCEDURE h5ltmake_dataset_double_kind_4_rank_3 + MODULE PROCEDURE h5ltmake_dataset_double_kind_4_rank_4 + MODULE PROCEDURE h5ltmake_dataset_double_kind_4_rank_5 + MODULE PROCEDURE h5ltmake_dataset_double_kind_4_rank_6 + MODULE PROCEDURE h5ltmake_dataset_double_kind_4_rank_7 + MODULE PROCEDURE h5ltmake_dataset_double_kind_8_rank_0 + MODULE PROCEDURE h5ltmake_dataset_double_kind_8_rank_1 + MODULE PROCEDURE h5ltmake_dataset_double_kind_8_rank_2 + MODULE PROCEDURE h5ltmake_dataset_double_kind_8_rank_3 + MODULE PROCEDURE h5ltmake_dataset_double_kind_8_rank_4 + MODULE PROCEDURE h5ltmake_dataset_double_kind_8_rank_5 + MODULE PROCEDURE h5ltmake_dataset_double_kind_8_rank_6 + MODULE PROCEDURE h5ltmake_dataset_double_kind_8_rank_7 + MODULE PROCEDURE h5ltmake_dataset_double_kind_10_rank_0 + MODULE PROCEDURE h5ltmake_dataset_double_kind_10_rank_1 + MODULE PROCEDURE h5ltmake_dataset_double_kind_10_rank_2 + MODULE PROCEDURE h5ltmake_dataset_double_kind_10_rank_3 + MODULE PROCEDURE h5ltmake_dataset_double_kind_10_rank_4 + MODULE PROCEDURE h5ltmake_dataset_double_kind_10_rank_5 + MODULE PROCEDURE h5ltmake_dataset_double_kind_10_rank_6 + MODULE PROCEDURE h5ltmake_dataset_double_kind_10_rank_7 + MODULE PROCEDURE h5ltmake_dataset_double_kind_16_rank_0 + MODULE PROCEDURE h5ltmake_dataset_double_kind_16_rank_1 + MODULE PROCEDURE h5ltmake_dataset_double_kind_16_rank_2 + MODULE PROCEDURE h5ltmake_dataset_double_kind_16_rank_3 + MODULE PROCEDURE h5ltmake_dataset_double_kind_16_rank_4 + MODULE PROCEDURE h5ltmake_dataset_double_kind_16_rank_5 + MODULE PROCEDURE h5ltmake_dataset_double_kind_16_rank_6 + MODULE PROCEDURE h5ltmake_dataset_double_kind_16_rank_7 + END INTERFACE + INTERFACE h5ltread_dataset_float_f + MODULE PROCEDURE h5ltread_dataset_float_kind_4_rank_0 + MODULE PROCEDURE h5ltread_dataset_float_kind_4_rank_1 + MODULE PROCEDURE h5ltread_dataset_float_kind_4_rank_2 + MODULE PROCEDURE h5ltread_dataset_float_kind_4_rank_3 + MODULE PROCEDURE h5ltread_dataset_float_kind_4_rank_4 + MODULE PROCEDURE h5ltread_dataset_float_kind_4_rank_5 + MODULE PROCEDURE h5ltread_dataset_float_kind_4_rank_6 + MODULE PROCEDURE h5ltread_dataset_float_kind_4_rank_7 + MODULE PROCEDURE h5ltread_dataset_float_kind_8_rank_0 + MODULE PROCEDURE h5ltread_dataset_float_kind_8_rank_1 + MODULE PROCEDURE h5ltread_dataset_float_kind_8_rank_2 + MODULE PROCEDURE h5ltread_dataset_float_kind_8_rank_3 + MODULE PROCEDURE h5ltread_dataset_float_kind_8_rank_4 + MODULE PROCEDURE h5ltread_dataset_float_kind_8_rank_5 + MODULE PROCEDURE h5ltread_dataset_float_kind_8_rank_6 + MODULE PROCEDURE h5ltread_dataset_float_kind_8_rank_7 + MODULE PROCEDURE h5ltread_dataset_float_kind_10_rank_0 + MODULE PROCEDURE h5ltread_dataset_float_kind_10_rank_1 + MODULE PROCEDURE h5ltread_dataset_float_kind_10_rank_2 + MODULE PROCEDURE h5ltread_dataset_float_kind_10_rank_3 + MODULE PROCEDURE h5ltread_dataset_float_kind_10_rank_4 + MODULE PROCEDURE h5ltread_dataset_float_kind_10_rank_5 + MODULE PROCEDURE h5ltread_dataset_float_kind_10_rank_6 + MODULE PROCEDURE h5ltread_dataset_float_kind_10_rank_7 + MODULE PROCEDURE h5ltread_dataset_float_kind_16_rank_0 + MODULE PROCEDURE h5ltread_dataset_float_kind_16_rank_1 + MODULE PROCEDURE h5ltread_dataset_float_kind_16_rank_2 + MODULE PROCEDURE h5ltread_dataset_float_kind_16_rank_3 + MODULE PROCEDURE h5ltread_dataset_float_kind_16_rank_4 + MODULE PROCEDURE h5ltread_dataset_float_kind_16_rank_5 + MODULE PROCEDURE h5ltread_dataset_float_kind_16_rank_6 + MODULE PROCEDURE h5ltread_dataset_float_kind_16_rank_7 + END INTERFACE + INTERFACE h5ltread_dataset_double_f + MODULE PROCEDURE h5ltread_dataset_double_kind_4_rank_0 + MODULE PROCEDURE h5ltread_dataset_double_kind_4_rank_1 + MODULE PROCEDURE h5ltread_dataset_double_kind_4_rank_2 + MODULE PROCEDURE h5ltread_dataset_double_kind_4_rank_3 + MODULE PROCEDURE h5ltread_dataset_double_kind_4_rank_4 + MODULE PROCEDURE h5ltread_dataset_double_kind_4_rank_5 + MODULE PROCEDURE h5ltread_dataset_double_kind_4_rank_6 + MODULE PROCEDURE h5ltread_dataset_double_kind_4_rank_7 + MODULE PROCEDURE h5ltread_dataset_double_kind_8_rank_0 + MODULE PROCEDURE h5ltread_dataset_double_kind_8_rank_1 + MODULE PROCEDURE h5ltread_dataset_double_kind_8_rank_2 + MODULE PROCEDURE h5ltread_dataset_double_kind_8_rank_3 + MODULE PROCEDURE h5ltread_dataset_double_kind_8_rank_4 + MODULE PROCEDURE h5ltread_dataset_double_kind_8_rank_5 + MODULE PROCEDURE h5ltread_dataset_double_kind_8_rank_6 + MODULE PROCEDURE h5ltread_dataset_double_kind_8_rank_7 + MODULE PROCEDURE h5ltread_dataset_double_kind_10_rank_0 + MODULE PROCEDURE h5ltread_dataset_double_kind_10_rank_1 + MODULE PROCEDURE h5ltread_dataset_double_kind_10_rank_2 + MODULE PROCEDURE h5ltread_dataset_double_kind_10_rank_3 + MODULE PROCEDURE h5ltread_dataset_double_kind_10_rank_4 + MODULE PROCEDURE h5ltread_dataset_double_kind_10_rank_5 + MODULE PROCEDURE h5ltread_dataset_double_kind_10_rank_6 + MODULE PROCEDURE h5ltread_dataset_double_kind_10_rank_7 + MODULE PROCEDURE h5ltread_dataset_double_kind_16_rank_0 + MODULE PROCEDURE h5ltread_dataset_double_kind_16_rank_1 + MODULE PROCEDURE h5ltread_dataset_double_kind_16_rank_2 + MODULE PROCEDURE h5ltread_dataset_double_kind_16_rank_3 + MODULE PROCEDURE h5ltread_dataset_double_kind_16_rank_4 + MODULE PROCEDURE h5ltread_dataset_double_kind_16_rank_5 + MODULE PROCEDURE h5ltread_dataset_double_kind_16_rank_6 + MODULE PROCEDURE h5ltread_dataset_double_kind_16_rank_7 + END INTERFACE +CONTAINS +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_real_kind_4_rank_0 +!DEC$endif + SUBROUTINE h5ltmake_dataset_real_kind_4_rank_0(loc_id,dset_name,rank,dims,type_id,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + REAL(KIND=4),INTENT(IN), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,type_id,f_ptr) + END SUBROUTINE h5ltmake_dataset_real_kind_4_rank_0 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_real_kind_4_rank_1 +!DEC$endif + SUBROUTINE h5ltmake_dataset_real_kind_4_rank_1(loc_id,dset_name,rank,dims,type_id,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + REAL(KIND=4),INTENT(IN), DIMENSION(dims(1)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,type_id,f_ptr) + END SUBROUTINE h5ltmake_dataset_real_kind_4_rank_1 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_real_kind_4_rank_2 +!DEC$endif + SUBROUTINE h5ltmake_dataset_real_kind_4_rank_2(loc_id,dset_name,rank,dims,type_id,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + REAL(KIND=4),INTENT(IN), DIMENSION(dims(1),dims(2)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,type_id,f_ptr) + END SUBROUTINE h5ltmake_dataset_real_kind_4_rank_2 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_real_kind_4_rank_3 +!DEC$endif + SUBROUTINE h5ltmake_dataset_real_kind_4_rank_3(loc_id,dset_name,rank,dims,type_id,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + REAL(KIND=4),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,type_id,f_ptr) + END SUBROUTINE h5ltmake_dataset_real_kind_4_rank_3 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_real_kind_4_rank_4 +!DEC$endif + SUBROUTINE h5ltmake_dataset_real_kind_4_rank_4(loc_id,dset_name,rank,dims,type_id,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + REAL(KIND=4),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,type_id,f_ptr) + END SUBROUTINE h5ltmake_dataset_real_kind_4_rank_4 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_real_kind_4_rank_5 +!DEC$endif + SUBROUTINE h5ltmake_dataset_real_kind_4_rank_5(loc_id,dset_name,rank,dims,type_id,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + REAL(KIND=4),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,type_id,f_ptr) + END SUBROUTINE h5ltmake_dataset_real_kind_4_rank_5 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_real_kind_4_rank_6 +!DEC$endif + SUBROUTINE h5ltmake_dataset_real_kind_4_rank_6(loc_id,dset_name,rank,dims,type_id,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + REAL(KIND=4),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,type_id,f_ptr) + END SUBROUTINE h5ltmake_dataset_real_kind_4_rank_6 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_real_kind_4_rank_7 +!DEC$endif + SUBROUTINE h5ltmake_dataset_real_kind_4_rank_7(loc_id,dset_name,rank,dims,type_id,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + REAL(KIND=4),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1,1,1)) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,type_id,f_ptr) + END SUBROUTINE h5ltmake_dataset_real_kind_4_rank_7 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_real_kind_8_rank_0 +!DEC$endif + SUBROUTINE h5ltmake_dataset_real_kind_8_rank_0(loc_id,dset_name,rank,dims,type_id,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + REAL(KIND=8),INTENT(IN), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,type_id,f_ptr) + END SUBROUTINE h5ltmake_dataset_real_kind_8_rank_0 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_real_kind_8_rank_1 +!DEC$endif + SUBROUTINE h5ltmake_dataset_real_kind_8_rank_1(loc_id,dset_name,rank,dims,type_id,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + REAL(KIND=8),INTENT(IN), DIMENSION(dims(1)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,type_id,f_ptr) + END SUBROUTINE h5ltmake_dataset_real_kind_8_rank_1 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_real_kind_8_rank_2 +!DEC$endif + SUBROUTINE h5ltmake_dataset_real_kind_8_rank_2(loc_id,dset_name,rank,dims,type_id,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + REAL(KIND=8),INTENT(IN), DIMENSION(dims(1),dims(2)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,type_id,f_ptr) + END SUBROUTINE h5ltmake_dataset_real_kind_8_rank_2 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_real_kind_8_rank_3 +!DEC$endif + SUBROUTINE h5ltmake_dataset_real_kind_8_rank_3(loc_id,dset_name,rank,dims,type_id,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + REAL(KIND=8),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,type_id,f_ptr) + END SUBROUTINE h5ltmake_dataset_real_kind_8_rank_3 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_real_kind_8_rank_4 +!DEC$endif + SUBROUTINE h5ltmake_dataset_real_kind_8_rank_4(loc_id,dset_name,rank,dims,type_id,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + REAL(KIND=8),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,type_id,f_ptr) + END SUBROUTINE h5ltmake_dataset_real_kind_8_rank_4 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_real_kind_8_rank_5 +!DEC$endif + SUBROUTINE h5ltmake_dataset_real_kind_8_rank_5(loc_id,dset_name,rank,dims,type_id,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + REAL(KIND=8),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,type_id,f_ptr) + END SUBROUTINE h5ltmake_dataset_real_kind_8_rank_5 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_real_kind_8_rank_6 +!DEC$endif + SUBROUTINE h5ltmake_dataset_real_kind_8_rank_6(loc_id,dset_name,rank,dims,type_id,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + REAL(KIND=8),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,type_id,f_ptr) + END SUBROUTINE h5ltmake_dataset_real_kind_8_rank_6 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_real_kind_8_rank_7 +!DEC$endif + SUBROUTINE h5ltmake_dataset_real_kind_8_rank_7(loc_id,dset_name,rank,dims,type_id,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + REAL(KIND=8),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1,1,1)) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,type_id,f_ptr) + END SUBROUTINE h5ltmake_dataset_real_kind_8_rank_7 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_real_kind_10_rank_0 +!DEC$endif + SUBROUTINE h5ltmake_dataset_real_kind_10_rank_0(loc_id,dset_name,rank,dims,type_id,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + REAL(KIND=10),INTENT(IN), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,type_id,f_ptr) + END SUBROUTINE h5ltmake_dataset_real_kind_10_rank_0 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_real_kind_10_rank_1 +!DEC$endif + SUBROUTINE h5ltmake_dataset_real_kind_10_rank_1(loc_id,dset_name,rank,dims,type_id,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + REAL(KIND=10),INTENT(IN), DIMENSION(dims(1)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,type_id,f_ptr) + END SUBROUTINE h5ltmake_dataset_real_kind_10_rank_1 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_real_kind_10_rank_2 +!DEC$endif + SUBROUTINE h5ltmake_dataset_real_kind_10_rank_2(loc_id,dset_name,rank,dims,type_id,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + REAL(KIND=10),INTENT(IN), DIMENSION(dims(1),dims(2)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,type_id,f_ptr) + END SUBROUTINE h5ltmake_dataset_real_kind_10_rank_2 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_real_kind_10_rank_3 +!DEC$endif + SUBROUTINE h5ltmake_dataset_real_kind_10_rank_3(loc_id,dset_name,rank,dims,type_id,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + REAL(KIND=10),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,type_id,f_ptr) + END SUBROUTINE h5ltmake_dataset_real_kind_10_rank_3 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_real_kind_10_rank_4 +!DEC$endif + SUBROUTINE h5ltmake_dataset_real_kind_10_rank_4(loc_id,dset_name,rank,dims,type_id,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + REAL(KIND=10),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,type_id,f_ptr) + END SUBROUTINE h5ltmake_dataset_real_kind_10_rank_4 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_real_kind_10_rank_5 +!DEC$endif + SUBROUTINE h5ltmake_dataset_real_kind_10_rank_5(loc_id,dset_name,rank,dims,type_id,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + REAL(KIND=10),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,type_id,f_ptr) + END SUBROUTINE h5ltmake_dataset_real_kind_10_rank_5 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_real_kind_10_rank_6 +!DEC$endif + SUBROUTINE h5ltmake_dataset_real_kind_10_rank_6(loc_id,dset_name,rank,dims,type_id,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + REAL(KIND=10),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,type_id,f_ptr) + END SUBROUTINE h5ltmake_dataset_real_kind_10_rank_6 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_real_kind_10_rank_7 +!DEC$endif + SUBROUTINE h5ltmake_dataset_real_kind_10_rank_7(loc_id,dset_name,rank,dims,type_id,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + REAL(KIND=10),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1,1,1)) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,type_id,f_ptr) + END SUBROUTINE h5ltmake_dataset_real_kind_10_rank_7 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_real_kind_16_rank_0 +!DEC$endif + SUBROUTINE h5ltmake_dataset_real_kind_16_rank_0(loc_id,dset_name,rank,dims,type_id,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + REAL(KIND=16),INTENT(IN), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,type_id,f_ptr) + END SUBROUTINE h5ltmake_dataset_real_kind_16_rank_0 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_real_kind_16_rank_1 +!DEC$endif + SUBROUTINE h5ltmake_dataset_real_kind_16_rank_1(loc_id,dset_name,rank,dims,type_id,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + REAL(KIND=16),INTENT(IN), DIMENSION(dims(1)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,type_id,f_ptr) + END SUBROUTINE h5ltmake_dataset_real_kind_16_rank_1 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_real_kind_16_rank_2 +!DEC$endif + SUBROUTINE h5ltmake_dataset_real_kind_16_rank_2(loc_id,dset_name,rank,dims,type_id,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + REAL(KIND=16),INTENT(IN), DIMENSION(dims(1),dims(2)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,type_id,f_ptr) + END SUBROUTINE h5ltmake_dataset_real_kind_16_rank_2 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_real_kind_16_rank_3 +!DEC$endif + SUBROUTINE h5ltmake_dataset_real_kind_16_rank_3(loc_id,dset_name,rank,dims,type_id,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + REAL(KIND=16),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,type_id,f_ptr) + END SUBROUTINE h5ltmake_dataset_real_kind_16_rank_3 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_real_kind_16_rank_4 +!DEC$endif + SUBROUTINE h5ltmake_dataset_real_kind_16_rank_4(loc_id,dset_name,rank,dims,type_id,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + REAL(KIND=16),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,type_id,f_ptr) + END SUBROUTINE h5ltmake_dataset_real_kind_16_rank_4 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_real_kind_16_rank_5 +!DEC$endif + SUBROUTINE h5ltmake_dataset_real_kind_16_rank_5(loc_id,dset_name,rank,dims,type_id,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + REAL(KIND=16),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,type_id,f_ptr) + END SUBROUTINE h5ltmake_dataset_real_kind_16_rank_5 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_real_kind_16_rank_6 +!DEC$endif + SUBROUTINE h5ltmake_dataset_real_kind_16_rank_6(loc_id,dset_name,rank,dims,type_id,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + REAL(KIND=16),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,type_id,f_ptr) + END SUBROUTINE h5ltmake_dataset_real_kind_16_rank_6 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_real_kind_16_rank_7 +!DEC$endif + SUBROUTINE h5ltmake_dataset_real_kind_16_rank_7(loc_id,dset_name,rank,dims,type_id,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + REAL(KIND=16),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1,1,1)) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,type_id,f_ptr) + END SUBROUTINE h5ltmake_dataset_real_kind_16_rank_7 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_real_kind_4_rank_0 +!DEC$endif + SUBROUTINE h5ltread_dataset_real_kind_4_rank_0(loc_id,dset_name,type_id,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=4),INTENT(INOUT), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,type_id,f_ptr) + END SUBROUTINE h5ltread_dataset_real_kind_4_rank_0 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_real_kind_4_rank_1 +!DEC$endif + SUBROUTINE h5ltread_dataset_real_kind_4_rank_1(loc_id,dset_name,type_id,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=4),INTENT(INOUT), DIMENSION(dims(1)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,type_id,f_ptr) + END SUBROUTINE h5ltread_dataset_real_kind_4_rank_1 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_real_kind_4_rank_2 +!DEC$endif + SUBROUTINE h5ltread_dataset_real_kind_4_rank_2(loc_id,dset_name,type_id,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=4),INTENT(INOUT), DIMENSION(dims(1),dims(2)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,type_id,f_ptr) + END SUBROUTINE h5ltread_dataset_real_kind_4_rank_2 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_real_kind_4_rank_3 +!DEC$endif + SUBROUTINE h5ltread_dataset_real_kind_4_rank_3(loc_id,dset_name,type_id,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=4),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,type_id,f_ptr) + END SUBROUTINE h5ltread_dataset_real_kind_4_rank_3 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_real_kind_4_rank_4 +!DEC$endif + SUBROUTINE h5ltread_dataset_real_kind_4_rank_4(loc_id,dset_name,type_id,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=4),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,type_id,f_ptr) + END SUBROUTINE h5ltread_dataset_real_kind_4_rank_4 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_real_kind_4_rank_5 +!DEC$endif + SUBROUTINE h5ltread_dataset_real_kind_4_rank_5(loc_id,dset_name,type_id,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=4),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,type_id,f_ptr) + END SUBROUTINE h5ltread_dataset_real_kind_4_rank_5 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_real_kind_4_rank_6 +!DEC$endif + SUBROUTINE h5ltread_dataset_real_kind_4_rank_6(loc_id,dset_name,type_id,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=4),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,type_id,f_ptr) + END SUBROUTINE h5ltread_dataset_real_kind_4_rank_6 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_real_kind_4_rank_7 +!DEC$endif + SUBROUTINE h5ltread_dataset_real_kind_4_rank_7(loc_id,dset_name,type_id,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=4),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1,1,1)) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,type_id,f_ptr) + END SUBROUTINE h5ltread_dataset_real_kind_4_rank_7 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_real_kind_8_rank_0 +!DEC$endif + SUBROUTINE h5ltread_dataset_real_kind_8_rank_0(loc_id,dset_name,type_id,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=8),INTENT(INOUT), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,type_id,f_ptr) + END SUBROUTINE h5ltread_dataset_real_kind_8_rank_0 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_real_kind_8_rank_1 +!DEC$endif + SUBROUTINE h5ltread_dataset_real_kind_8_rank_1(loc_id,dset_name,type_id,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=8),INTENT(INOUT), DIMENSION(dims(1)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,type_id,f_ptr) + END SUBROUTINE h5ltread_dataset_real_kind_8_rank_1 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_real_kind_8_rank_2 +!DEC$endif + SUBROUTINE h5ltread_dataset_real_kind_8_rank_2(loc_id,dset_name,type_id,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=8),INTENT(INOUT), DIMENSION(dims(1),dims(2)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,type_id,f_ptr) + END SUBROUTINE h5ltread_dataset_real_kind_8_rank_2 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_real_kind_8_rank_3 +!DEC$endif + SUBROUTINE h5ltread_dataset_real_kind_8_rank_3(loc_id,dset_name,type_id,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=8),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,type_id,f_ptr) + END SUBROUTINE h5ltread_dataset_real_kind_8_rank_3 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_real_kind_8_rank_4 +!DEC$endif + SUBROUTINE h5ltread_dataset_real_kind_8_rank_4(loc_id,dset_name,type_id,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=8),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,type_id,f_ptr) + END SUBROUTINE h5ltread_dataset_real_kind_8_rank_4 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_real_kind_8_rank_5 +!DEC$endif + SUBROUTINE h5ltread_dataset_real_kind_8_rank_5(loc_id,dset_name,type_id,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=8),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,type_id,f_ptr) + END SUBROUTINE h5ltread_dataset_real_kind_8_rank_5 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_real_kind_8_rank_6 +!DEC$endif + SUBROUTINE h5ltread_dataset_real_kind_8_rank_6(loc_id,dset_name,type_id,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=8),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,type_id,f_ptr) + END SUBROUTINE h5ltread_dataset_real_kind_8_rank_6 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_real_kind_8_rank_7 +!DEC$endif + SUBROUTINE h5ltread_dataset_real_kind_8_rank_7(loc_id,dset_name,type_id,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=8),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1,1,1)) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,type_id,f_ptr) + END SUBROUTINE h5ltread_dataset_real_kind_8_rank_7 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_real_kind_10_rank_0 +!DEC$endif + SUBROUTINE h5ltread_dataset_real_kind_10_rank_0(loc_id,dset_name,type_id,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=10),INTENT(INOUT), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,type_id,f_ptr) + END SUBROUTINE h5ltread_dataset_real_kind_10_rank_0 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_real_kind_10_rank_1 +!DEC$endif + SUBROUTINE h5ltread_dataset_real_kind_10_rank_1(loc_id,dset_name,type_id,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=10),INTENT(INOUT), DIMENSION(dims(1)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,type_id,f_ptr) + END SUBROUTINE h5ltread_dataset_real_kind_10_rank_1 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_real_kind_10_rank_2 +!DEC$endif + SUBROUTINE h5ltread_dataset_real_kind_10_rank_2(loc_id,dset_name,type_id,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=10),INTENT(INOUT), DIMENSION(dims(1),dims(2)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,type_id,f_ptr) + END SUBROUTINE h5ltread_dataset_real_kind_10_rank_2 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_real_kind_10_rank_3 +!DEC$endif + SUBROUTINE h5ltread_dataset_real_kind_10_rank_3(loc_id,dset_name,type_id,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=10),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,type_id,f_ptr) + END SUBROUTINE h5ltread_dataset_real_kind_10_rank_3 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_real_kind_10_rank_4 +!DEC$endif + SUBROUTINE h5ltread_dataset_real_kind_10_rank_4(loc_id,dset_name,type_id,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=10),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,type_id,f_ptr) + END SUBROUTINE h5ltread_dataset_real_kind_10_rank_4 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_real_kind_10_rank_5 +!DEC$endif + SUBROUTINE h5ltread_dataset_real_kind_10_rank_5(loc_id,dset_name,type_id,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=10),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,type_id,f_ptr) + END SUBROUTINE h5ltread_dataset_real_kind_10_rank_5 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_real_kind_10_rank_6 +!DEC$endif + SUBROUTINE h5ltread_dataset_real_kind_10_rank_6(loc_id,dset_name,type_id,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=10),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,type_id,f_ptr) + END SUBROUTINE h5ltread_dataset_real_kind_10_rank_6 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_real_kind_10_rank_7 +!DEC$endif + SUBROUTINE h5ltread_dataset_real_kind_10_rank_7(loc_id,dset_name,type_id,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=10),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1,1,1)) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,type_id,f_ptr) + END SUBROUTINE h5ltread_dataset_real_kind_10_rank_7 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_real_kind_16_rank_0 +!DEC$endif + SUBROUTINE h5ltread_dataset_real_kind_16_rank_0(loc_id,dset_name,type_id,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=16),INTENT(INOUT), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,type_id,f_ptr) + END SUBROUTINE h5ltread_dataset_real_kind_16_rank_0 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_real_kind_16_rank_1 +!DEC$endif + SUBROUTINE h5ltread_dataset_real_kind_16_rank_1(loc_id,dset_name,type_id,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=16),INTENT(INOUT), DIMENSION(dims(1)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,type_id,f_ptr) + END SUBROUTINE h5ltread_dataset_real_kind_16_rank_1 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_real_kind_16_rank_2 +!DEC$endif + SUBROUTINE h5ltread_dataset_real_kind_16_rank_2(loc_id,dset_name,type_id,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=16),INTENT(INOUT), DIMENSION(dims(1),dims(2)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,type_id,f_ptr) + END SUBROUTINE h5ltread_dataset_real_kind_16_rank_2 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_real_kind_16_rank_3 +!DEC$endif + SUBROUTINE h5ltread_dataset_real_kind_16_rank_3(loc_id,dset_name,type_id,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=16),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,type_id,f_ptr) + END SUBROUTINE h5ltread_dataset_real_kind_16_rank_3 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_real_kind_16_rank_4 +!DEC$endif + SUBROUTINE h5ltread_dataset_real_kind_16_rank_4(loc_id,dset_name,type_id,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=16),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,type_id,f_ptr) + END SUBROUTINE h5ltread_dataset_real_kind_16_rank_4 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_real_kind_16_rank_5 +!DEC$endif + SUBROUTINE h5ltread_dataset_real_kind_16_rank_5(loc_id,dset_name,type_id,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=16),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,type_id,f_ptr) + END SUBROUTINE h5ltread_dataset_real_kind_16_rank_5 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_real_kind_16_rank_6 +!DEC$endif + SUBROUTINE h5ltread_dataset_real_kind_16_rank_6(loc_id,dset_name,type_id,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=16),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,type_id,f_ptr) + END SUBROUTINE h5ltread_dataset_real_kind_16_rank_6 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_real_kind_16_rank_7 +!DEC$endif + SUBROUTINE h5ltread_dataset_real_kind_16_rank_7(loc_id,dset_name,type_id,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=16),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1,1,1)) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,type_id,f_ptr) + END SUBROUTINE h5ltread_dataset_real_kind_16_rank_7 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_float_kind_4_rank_0 +!DEC$endif + SUBROUTINE h5ltmake_dataset_float_kind_4_rank_0(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=4),INTENT(IN), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_REAL,f_ptr) + END SUBROUTINE h5ltmake_dataset_float_kind_4_rank_0 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_float_kind_4_rank_1 +!DEC$endif + SUBROUTINE h5ltmake_dataset_float_kind_4_rank_1(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=4),INTENT(IN), DIMENSION(dims(1)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_REAL,f_ptr) + END SUBROUTINE h5ltmake_dataset_float_kind_4_rank_1 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_float_kind_4_rank_2 +!DEC$endif + SUBROUTINE h5ltmake_dataset_float_kind_4_rank_2(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=4),INTENT(IN), DIMENSION(dims(1),dims(2)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_REAL,f_ptr) + END SUBROUTINE h5ltmake_dataset_float_kind_4_rank_2 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_float_kind_4_rank_3 +!DEC$endif + SUBROUTINE h5ltmake_dataset_float_kind_4_rank_3(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=4),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_REAL,f_ptr) + END SUBROUTINE h5ltmake_dataset_float_kind_4_rank_3 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_float_kind_4_rank_4 +!DEC$endif + SUBROUTINE h5ltmake_dataset_float_kind_4_rank_4(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=4),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_REAL,f_ptr) + END SUBROUTINE h5ltmake_dataset_float_kind_4_rank_4 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_float_kind_4_rank_5 +!DEC$endif + SUBROUTINE h5ltmake_dataset_float_kind_4_rank_5(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=4),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_REAL,f_ptr) + END SUBROUTINE h5ltmake_dataset_float_kind_4_rank_5 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_float_kind_4_rank_6 +!DEC$endif + SUBROUTINE h5ltmake_dataset_float_kind_4_rank_6(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=4),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_REAL,f_ptr) + END SUBROUTINE h5ltmake_dataset_float_kind_4_rank_6 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_float_kind_4_rank_7 +!DEC$endif + SUBROUTINE h5ltmake_dataset_float_kind_4_rank_7(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=4),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1,1,1)) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_REAL,f_ptr) + END SUBROUTINE h5ltmake_dataset_float_kind_4_rank_7 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_float_kind_8_rank_0 +!DEC$endif + SUBROUTINE h5ltmake_dataset_float_kind_8_rank_0(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=8),INTENT(IN), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_REAL,f_ptr) + END SUBROUTINE h5ltmake_dataset_float_kind_8_rank_0 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_float_kind_8_rank_1 +!DEC$endif + SUBROUTINE h5ltmake_dataset_float_kind_8_rank_1(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=8),INTENT(IN), DIMENSION(dims(1)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_REAL,f_ptr) + END SUBROUTINE h5ltmake_dataset_float_kind_8_rank_1 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_float_kind_8_rank_2 +!DEC$endif + SUBROUTINE h5ltmake_dataset_float_kind_8_rank_2(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=8),INTENT(IN), DIMENSION(dims(1),dims(2)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_REAL,f_ptr) + END SUBROUTINE h5ltmake_dataset_float_kind_8_rank_2 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_float_kind_8_rank_3 +!DEC$endif + SUBROUTINE h5ltmake_dataset_float_kind_8_rank_3(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=8),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_REAL,f_ptr) + END SUBROUTINE h5ltmake_dataset_float_kind_8_rank_3 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_float_kind_8_rank_4 +!DEC$endif + SUBROUTINE h5ltmake_dataset_float_kind_8_rank_4(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=8),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_REAL,f_ptr) + END SUBROUTINE h5ltmake_dataset_float_kind_8_rank_4 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_float_kind_8_rank_5 +!DEC$endif + SUBROUTINE h5ltmake_dataset_float_kind_8_rank_5(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=8),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_REAL,f_ptr) + END SUBROUTINE h5ltmake_dataset_float_kind_8_rank_5 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_float_kind_8_rank_6 +!DEC$endif + SUBROUTINE h5ltmake_dataset_float_kind_8_rank_6(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=8),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_REAL,f_ptr) + END SUBROUTINE h5ltmake_dataset_float_kind_8_rank_6 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_float_kind_8_rank_7 +!DEC$endif + SUBROUTINE h5ltmake_dataset_float_kind_8_rank_7(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=8),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1,1,1)) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_REAL,f_ptr) + END SUBROUTINE h5ltmake_dataset_float_kind_8_rank_7 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_float_kind_10_rank_0 +!DEC$endif + SUBROUTINE h5ltmake_dataset_float_kind_10_rank_0(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=10),INTENT(IN), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_REAL,f_ptr) + END SUBROUTINE h5ltmake_dataset_float_kind_10_rank_0 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_float_kind_10_rank_1 +!DEC$endif + SUBROUTINE h5ltmake_dataset_float_kind_10_rank_1(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=10),INTENT(IN), DIMENSION(dims(1)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_REAL,f_ptr) + END SUBROUTINE h5ltmake_dataset_float_kind_10_rank_1 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_float_kind_10_rank_2 +!DEC$endif + SUBROUTINE h5ltmake_dataset_float_kind_10_rank_2(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=10),INTENT(IN), DIMENSION(dims(1),dims(2)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_REAL,f_ptr) + END SUBROUTINE h5ltmake_dataset_float_kind_10_rank_2 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_float_kind_10_rank_3 +!DEC$endif + SUBROUTINE h5ltmake_dataset_float_kind_10_rank_3(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=10),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_REAL,f_ptr) + END SUBROUTINE h5ltmake_dataset_float_kind_10_rank_3 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_float_kind_10_rank_4 +!DEC$endif + SUBROUTINE h5ltmake_dataset_float_kind_10_rank_4(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=10),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_REAL,f_ptr) + END SUBROUTINE h5ltmake_dataset_float_kind_10_rank_4 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_float_kind_10_rank_5 +!DEC$endif + SUBROUTINE h5ltmake_dataset_float_kind_10_rank_5(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=10),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_REAL,f_ptr) + END SUBROUTINE h5ltmake_dataset_float_kind_10_rank_5 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_float_kind_10_rank_6 +!DEC$endif + SUBROUTINE h5ltmake_dataset_float_kind_10_rank_6(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=10),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_REAL,f_ptr) + END SUBROUTINE h5ltmake_dataset_float_kind_10_rank_6 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_float_kind_10_rank_7 +!DEC$endif + SUBROUTINE h5ltmake_dataset_float_kind_10_rank_7(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=10),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1,1,1)) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_REAL,f_ptr) + END SUBROUTINE h5ltmake_dataset_float_kind_10_rank_7 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_float_kind_16_rank_0 +!DEC$endif + SUBROUTINE h5ltmake_dataset_float_kind_16_rank_0(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=16),INTENT(IN), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_REAL,f_ptr) + END SUBROUTINE h5ltmake_dataset_float_kind_16_rank_0 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_float_kind_16_rank_1 +!DEC$endif + SUBROUTINE h5ltmake_dataset_float_kind_16_rank_1(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=16),INTENT(IN), DIMENSION(dims(1)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_REAL,f_ptr) + END SUBROUTINE h5ltmake_dataset_float_kind_16_rank_1 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_float_kind_16_rank_2 +!DEC$endif + SUBROUTINE h5ltmake_dataset_float_kind_16_rank_2(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=16),INTENT(IN), DIMENSION(dims(1),dims(2)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_REAL,f_ptr) + END SUBROUTINE h5ltmake_dataset_float_kind_16_rank_2 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_float_kind_16_rank_3 +!DEC$endif + SUBROUTINE h5ltmake_dataset_float_kind_16_rank_3(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=16),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_REAL,f_ptr) + END SUBROUTINE h5ltmake_dataset_float_kind_16_rank_3 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_float_kind_16_rank_4 +!DEC$endif + SUBROUTINE h5ltmake_dataset_float_kind_16_rank_4(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=16),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_REAL,f_ptr) + END SUBROUTINE h5ltmake_dataset_float_kind_16_rank_4 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_float_kind_16_rank_5 +!DEC$endif + SUBROUTINE h5ltmake_dataset_float_kind_16_rank_5(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=16),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_REAL,f_ptr) + END SUBROUTINE h5ltmake_dataset_float_kind_16_rank_5 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_float_kind_16_rank_6 +!DEC$endif + SUBROUTINE h5ltmake_dataset_float_kind_16_rank_6(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=16),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_REAL,f_ptr) + END SUBROUTINE h5ltmake_dataset_float_kind_16_rank_6 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_float_kind_16_rank_7 +!DEC$endif + SUBROUTINE h5ltmake_dataset_float_kind_16_rank_7(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=16),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1,1,1)) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_REAL,f_ptr) + END SUBROUTINE h5ltmake_dataset_float_kind_16_rank_7 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_float_kind_4_rank_0 +!DEC$endif + SUBROUTINE h5ltread_dataset_float_kind_4_rank_0(loc_id,dset_name,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=4),INTENT(INOUT), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,H5T_NATIVE_REAL,f_ptr) + END SUBROUTINE h5ltread_dataset_float_kind_4_rank_0 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_float_kind_4_rank_1 +!DEC$endif + SUBROUTINE h5ltread_dataset_float_kind_4_rank_1(loc_id,dset_name,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=4),INTENT(INOUT), DIMENSION(dims(1)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,H5T_NATIVE_REAL,f_ptr) + END SUBROUTINE h5ltread_dataset_float_kind_4_rank_1 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_float_kind_4_rank_2 +!DEC$endif + SUBROUTINE h5ltread_dataset_float_kind_4_rank_2(loc_id,dset_name,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=4),INTENT(INOUT), DIMENSION(dims(1),dims(2)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,H5T_NATIVE_REAL,f_ptr) + END SUBROUTINE h5ltread_dataset_float_kind_4_rank_2 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_float_kind_4_rank_3 +!DEC$endif + SUBROUTINE h5ltread_dataset_float_kind_4_rank_3(loc_id,dset_name,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=4),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,H5T_NATIVE_REAL,f_ptr) + END SUBROUTINE h5ltread_dataset_float_kind_4_rank_3 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_float_kind_4_rank_4 +!DEC$endif + SUBROUTINE h5ltread_dataset_float_kind_4_rank_4(loc_id,dset_name,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=4),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,H5T_NATIVE_REAL,f_ptr) + END SUBROUTINE h5ltread_dataset_float_kind_4_rank_4 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_float_kind_4_rank_5 +!DEC$endif + SUBROUTINE h5ltread_dataset_float_kind_4_rank_5(loc_id,dset_name,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=4),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,H5T_NATIVE_REAL,f_ptr) + END SUBROUTINE h5ltread_dataset_float_kind_4_rank_5 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_float_kind_4_rank_6 +!DEC$endif + SUBROUTINE h5ltread_dataset_float_kind_4_rank_6(loc_id,dset_name,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=4),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,H5T_NATIVE_REAL,f_ptr) + END SUBROUTINE h5ltread_dataset_float_kind_4_rank_6 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_float_kind_4_rank_7 +!DEC$endif + SUBROUTINE h5ltread_dataset_float_kind_4_rank_7(loc_id,dset_name,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=4),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1,1,1)) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,H5T_NATIVE_REAL,f_ptr) + END SUBROUTINE h5ltread_dataset_float_kind_4_rank_7 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_float_kind_8_rank_0 +!DEC$endif + SUBROUTINE h5ltread_dataset_float_kind_8_rank_0(loc_id,dset_name,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=8),INTENT(INOUT), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,H5T_NATIVE_REAL,f_ptr) + END SUBROUTINE h5ltread_dataset_float_kind_8_rank_0 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_float_kind_8_rank_1 +!DEC$endif + SUBROUTINE h5ltread_dataset_float_kind_8_rank_1(loc_id,dset_name,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=8),INTENT(INOUT), DIMENSION(dims(1)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,H5T_NATIVE_REAL,f_ptr) + END SUBROUTINE h5ltread_dataset_float_kind_8_rank_1 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_float_kind_8_rank_2 +!DEC$endif + SUBROUTINE h5ltread_dataset_float_kind_8_rank_2(loc_id,dset_name,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=8),INTENT(INOUT), DIMENSION(dims(1),dims(2)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,H5T_NATIVE_REAL,f_ptr) + END SUBROUTINE h5ltread_dataset_float_kind_8_rank_2 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_float_kind_8_rank_3 +!DEC$endif + SUBROUTINE h5ltread_dataset_float_kind_8_rank_3(loc_id,dset_name,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=8),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,H5T_NATIVE_REAL,f_ptr) + END SUBROUTINE h5ltread_dataset_float_kind_8_rank_3 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_float_kind_8_rank_4 +!DEC$endif + SUBROUTINE h5ltread_dataset_float_kind_8_rank_4(loc_id,dset_name,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=8),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,H5T_NATIVE_REAL,f_ptr) + END SUBROUTINE h5ltread_dataset_float_kind_8_rank_4 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_float_kind_8_rank_5 +!DEC$endif + SUBROUTINE h5ltread_dataset_float_kind_8_rank_5(loc_id,dset_name,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=8),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,H5T_NATIVE_REAL,f_ptr) + END SUBROUTINE h5ltread_dataset_float_kind_8_rank_5 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_float_kind_8_rank_6 +!DEC$endif + SUBROUTINE h5ltread_dataset_float_kind_8_rank_6(loc_id,dset_name,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=8),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,H5T_NATIVE_REAL,f_ptr) + END SUBROUTINE h5ltread_dataset_float_kind_8_rank_6 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_float_kind_8_rank_7 +!DEC$endif + SUBROUTINE h5ltread_dataset_float_kind_8_rank_7(loc_id,dset_name,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=8),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1,1,1)) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,H5T_NATIVE_REAL,f_ptr) + END SUBROUTINE h5ltread_dataset_float_kind_8_rank_7 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_float_kind_10_rank_0 +!DEC$endif + SUBROUTINE h5ltread_dataset_float_kind_10_rank_0(loc_id,dset_name,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=10),INTENT(INOUT), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,H5T_NATIVE_REAL,f_ptr) + END SUBROUTINE h5ltread_dataset_float_kind_10_rank_0 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_float_kind_10_rank_1 +!DEC$endif + SUBROUTINE h5ltread_dataset_float_kind_10_rank_1(loc_id,dset_name,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=10),INTENT(INOUT), DIMENSION(dims(1)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,H5T_NATIVE_REAL,f_ptr) + END SUBROUTINE h5ltread_dataset_float_kind_10_rank_1 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_float_kind_10_rank_2 +!DEC$endif + SUBROUTINE h5ltread_dataset_float_kind_10_rank_2(loc_id,dset_name,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=10),INTENT(INOUT), DIMENSION(dims(1),dims(2)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,H5T_NATIVE_REAL,f_ptr) + END SUBROUTINE h5ltread_dataset_float_kind_10_rank_2 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_float_kind_10_rank_3 +!DEC$endif + SUBROUTINE h5ltread_dataset_float_kind_10_rank_3(loc_id,dset_name,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=10),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,H5T_NATIVE_REAL,f_ptr) + END SUBROUTINE h5ltread_dataset_float_kind_10_rank_3 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_float_kind_10_rank_4 +!DEC$endif + SUBROUTINE h5ltread_dataset_float_kind_10_rank_4(loc_id,dset_name,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=10),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,H5T_NATIVE_REAL,f_ptr) + END SUBROUTINE h5ltread_dataset_float_kind_10_rank_4 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_float_kind_10_rank_5 +!DEC$endif + SUBROUTINE h5ltread_dataset_float_kind_10_rank_5(loc_id,dset_name,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=10),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,H5T_NATIVE_REAL,f_ptr) + END SUBROUTINE h5ltread_dataset_float_kind_10_rank_5 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_float_kind_10_rank_6 +!DEC$endif + SUBROUTINE h5ltread_dataset_float_kind_10_rank_6(loc_id,dset_name,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=10),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,H5T_NATIVE_REAL,f_ptr) + END SUBROUTINE h5ltread_dataset_float_kind_10_rank_6 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_float_kind_10_rank_7 +!DEC$endif + SUBROUTINE h5ltread_dataset_float_kind_10_rank_7(loc_id,dset_name,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=10),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1,1,1)) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,H5T_NATIVE_REAL,f_ptr) + END SUBROUTINE h5ltread_dataset_float_kind_10_rank_7 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_float_kind_16_rank_0 +!DEC$endif + SUBROUTINE h5ltread_dataset_float_kind_16_rank_0(loc_id,dset_name,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=16),INTENT(INOUT), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,H5T_NATIVE_REAL,f_ptr) + END SUBROUTINE h5ltread_dataset_float_kind_16_rank_0 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_float_kind_16_rank_1 +!DEC$endif + SUBROUTINE h5ltread_dataset_float_kind_16_rank_1(loc_id,dset_name,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=16),INTENT(INOUT), DIMENSION(dims(1)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,H5T_NATIVE_REAL,f_ptr) + END SUBROUTINE h5ltread_dataset_float_kind_16_rank_1 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_float_kind_16_rank_2 +!DEC$endif + SUBROUTINE h5ltread_dataset_float_kind_16_rank_2(loc_id,dset_name,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=16),INTENT(INOUT), DIMENSION(dims(1),dims(2)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,H5T_NATIVE_REAL,f_ptr) + END SUBROUTINE h5ltread_dataset_float_kind_16_rank_2 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_float_kind_16_rank_3 +!DEC$endif + SUBROUTINE h5ltread_dataset_float_kind_16_rank_3(loc_id,dset_name,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=16),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,H5T_NATIVE_REAL,f_ptr) + END SUBROUTINE h5ltread_dataset_float_kind_16_rank_3 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_float_kind_16_rank_4 +!DEC$endif + SUBROUTINE h5ltread_dataset_float_kind_16_rank_4(loc_id,dset_name,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=16),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,H5T_NATIVE_REAL,f_ptr) + END SUBROUTINE h5ltread_dataset_float_kind_16_rank_4 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_float_kind_16_rank_5 +!DEC$endif + SUBROUTINE h5ltread_dataset_float_kind_16_rank_5(loc_id,dset_name,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=16),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,H5T_NATIVE_REAL,f_ptr) + END SUBROUTINE h5ltread_dataset_float_kind_16_rank_5 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_float_kind_16_rank_6 +!DEC$endif + SUBROUTINE h5ltread_dataset_float_kind_16_rank_6(loc_id,dset_name,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=16),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,H5T_NATIVE_REAL,f_ptr) + END SUBROUTINE h5ltread_dataset_float_kind_16_rank_6 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_float_kind_16_rank_7 +!DEC$endif + SUBROUTINE h5ltread_dataset_float_kind_16_rank_7(loc_id,dset_name,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=16),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1,1,1)) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,H5T_NATIVE_REAL,f_ptr) + END SUBROUTINE h5ltread_dataset_float_kind_16_rank_7 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_double_kind_4_rank_0 +!DEC$endif + SUBROUTINE h5ltmake_dataset_double_kind_4_rank_0(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=4),INTENT(IN), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_DOUBLE,f_ptr) + END SUBROUTINE h5ltmake_dataset_double_kind_4_rank_0 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_double_kind_4_rank_1 +!DEC$endif + SUBROUTINE h5ltmake_dataset_double_kind_4_rank_1(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=4),INTENT(IN), DIMENSION(dims(1)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_DOUBLE,f_ptr) + END SUBROUTINE h5ltmake_dataset_double_kind_4_rank_1 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_double_kind_4_rank_2 +!DEC$endif + SUBROUTINE h5ltmake_dataset_double_kind_4_rank_2(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=4),INTENT(IN), DIMENSION(dims(1),dims(2)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_DOUBLE,f_ptr) + END SUBROUTINE h5ltmake_dataset_double_kind_4_rank_2 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_double_kind_4_rank_3 +!DEC$endif + SUBROUTINE h5ltmake_dataset_double_kind_4_rank_3(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=4),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_DOUBLE,f_ptr) + END SUBROUTINE h5ltmake_dataset_double_kind_4_rank_3 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_double_kind_4_rank_4 +!DEC$endif + SUBROUTINE h5ltmake_dataset_double_kind_4_rank_4(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=4),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_DOUBLE,f_ptr) + END SUBROUTINE h5ltmake_dataset_double_kind_4_rank_4 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_double_kind_4_rank_5 +!DEC$endif + SUBROUTINE h5ltmake_dataset_double_kind_4_rank_5(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=4),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_DOUBLE,f_ptr) + END SUBROUTINE h5ltmake_dataset_double_kind_4_rank_5 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_double_kind_4_rank_6 +!DEC$endif + SUBROUTINE h5ltmake_dataset_double_kind_4_rank_6(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=4),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_DOUBLE,f_ptr) + END SUBROUTINE h5ltmake_dataset_double_kind_4_rank_6 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_double_kind_4_rank_7 +!DEC$endif + SUBROUTINE h5ltmake_dataset_double_kind_4_rank_7(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=4),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1,1,1)) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_DOUBLE,f_ptr) + END SUBROUTINE h5ltmake_dataset_double_kind_4_rank_7 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_double_kind_8_rank_0 +!DEC$endif + SUBROUTINE h5ltmake_dataset_double_kind_8_rank_0(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=8),INTENT(IN), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_DOUBLE,f_ptr) + END SUBROUTINE h5ltmake_dataset_double_kind_8_rank_0 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_double_kind_8_rank_1 +!DEC$endif + SUBROUTINE h5ltmake_dataset_double_kind_8_rank_1(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=8),INTENT(IN), DIMENSION(dims(1)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_DOUBLE,f_ptr) + END SUBROUTINE h5ltmake_dataset_double_kind_8_rank_1 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_double_kind_8_rank_2 +!DEC$endif + SUBROUTINE h5ltmake_dataset_double_kind_8_rank_2(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=8),INTENT(IN), DIMENSION(dims(1),dims(2)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_DOUBLE,f_ptr) + END SUBROUTINE h5ltmake_dataset_double_kind_8_rank_2 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_double_kind_8_rank_3 +!DEC$endif + SUBROUTINE h5ltmake_dataset_double_kind_8_rank_3(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=8),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_DOUBLE,f_ptr) + END SUBROUTINE h5ltmake_dataset_double_kind_8_rank_3 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_double_kind_8_rank_4 +!DEC$endif + SUBROUTINE h5ltmake_dataset_double_kind_8_rank_4(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=8),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_DOUBLE,f_ptr) + END SUBROUTINE h5ltmake_dataset_double_kind_8_rank_4 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_double_kind_8_rank_5 +!DEC$endif + SUBROUTINE h5ltmake_dataset_double_kind_8_rank_5(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=8),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_DOUBLE,f_ptr) + END SUBROUTINE h5ltmake_dataset_double_kind_8_rank_5 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_double_kind_8_rank_6 +!DEC$endif + SUBROUTINE h5ltmake_dataset_double_kind_8_rank_6(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=8),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_DOUBLE,f_ptr) + END SUBROUTINE h5ltmake_dataset_double_kind_8_rank_6 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_double_kind_8_rank_7 +!DEC$endif + SUBROUTINE h5ltmake_dataset_double_kind_8_rank_7(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=8),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1,1,1)) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_DOUBLE,f_ptr) + END SUBROUTINE h5ltmake_dataset_double_kind_8_rank_7 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_double_kind_10_rank_0 +!DEC$endif + SUBROUTINE h5ltmake_dataset_double_kind_10_rank_0(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=10),INTENT(IN), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_DOUBLE,f_ptr) + END SUBROUTINE h5ltmake_dataset_double_kind_10_rank_0 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_double_kind_10_rank_1 +!DEC$endif + SUBROUTINE h5ltmake_dataset_double_kind_10_rank_1(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=10),INTENT(IN), DIMENSION(dims(1)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_DOUBLE,f_ptr) + END SUBROUTINE h5ltmake_dataset_double_kind_10_rank_1 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_double_kind_10_rank_2 +!DEC$endif + SUBROUTINE h5ltmake_dataset_double_kind_10_rank_2(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=10),INTENT(IN), DIMENSION(dims(1),dims(2)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_DOUBLE,f_ptr) + END SUBROUTINE h5ltmake_dataset_double_kind_10_rank_2 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_double_kind_10_rank_3 +!DEC$endif + SUBROUTINE h5ltmake_dataset_double_kind_10_rank_3(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=10),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_DOUBLE,f_ptr) + END SUBROUTINE h5ltmake_dataset_double_kind_10_rank_3 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_double_kind_10_rank_4 +!DEC$endif + SUBROUTINE h5ltmake_dataset_double_kind_10_rank_4(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=10),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_DOUBLE,f_ptr) + END SUBROUTINE h5ltmake_dataset_double_kind_10_rank_4 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_double_kind_10_rank_5 +!DEC$endif + SUBROUTINE h5ltmake_dataset_double_kind_10_rank_5(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=10),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_DOUBLE,f_ptr) + END SUBROUTINE h5ltmake_dataset_double_kind_10_rank_5 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_double_kind_10_rank_6 +!DEC$endif + SUBROUTINE h5ltmake_dataset_double_kind_10_rank_6(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=10),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_DOUBLE,f_ptr) + END SUBROUTINE h5ltmake_dataset_double_kind_10_rank_6 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_double_kind_10_rank_7 +!DEC$endif + SUBROUTINE h5ltmake_dataset_double_kind_10_rank_7(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=10),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1,1,1)) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_DOUBLE,f_ptr) + END SUBROUTINE h5ltmake_dataset_double_kind_10_rank_7 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_double_kind_16_rank_0 +!DEC$endif + SUBROUTINE h5ltmake_dataset_double_kind_16_rank_0(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=16),INTENT(IN), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_DOUBLE,f_ptr) + END SUBROUTINE h5ltmake_dataset_double_kind_16_rank_0 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_double_kind_16_rank_1 +!DEC$endif + SUBROUTINE h5ltmake_dataset_double_kind_16_rank_1(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=16),INTENT(IN), DIMENSION(dims(1)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_DOUBLE,f_ptr) + END SUBROUTINE h5ltmake_dataset_double_kind_16_rank_1 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_double_kind_16_rank_2 +!DEC$endif + SUBROUTINE h5ltmake_dataset_double_kind_16_rank_2(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=16),INTENT(IN), DIMENSION(dims(1),dims(2)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_DOUBLE,f_ptr) + END SUBROUTINE h5ltmake_dataset_double_kind_16_rank_2 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_double_kind_16_rank_3 +!DEC$endif + SUBROUTINE h5ltmake_dataset_double_kind_16_rank_3(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=16),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_DOUBLE,f_ptr) + END SUBROUTINE h5ltmake_dataset_double_kind_16_rank_3 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_double_kind_16_rank_4 +!DEC$endif + SUBROUTINE h5ltmake_dataset_double_kind_16_rank_4(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=16),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_DOUBLE,f_ptr) + END SUBROUTINE h5ltmake_dataset_double_kind_16_rank_4 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_double_kind_16_rank_5 +!DEC$endif + SUBROUTINE h5ltmake_dataset_double_kind_16_rank_5(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=16),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_DOUBLE,f_ptr) + END SUBROUTINE h5ltmake_dataset_double_kind_16_rank_5 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_double_kind_16_rank_6 +!DEC$endif + SUBROUTINE h5ltmake_dataset_double_kind_16_rank_6(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=16),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_DOUBLE,f_ptr) + END SUBROUTINE h5ltmake_dataset_double_kind_16_rank_6 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_double_kind_16_rank_7 +!DEC$endif + SUBROUTINE h5ltmake_dataset_double_kind_16_rank_7(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=16),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1,1,1)) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id,namelen,dset_name,rank,dims,H5T_NATIVE_DOUBLE,f_ptr) + END SUBROUTINE h5ltmake_dataset_double_kind_16_rank_7 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_double_kind_4_rank_0 +!DEC$endif + SUBROUTINE h5ltread_dataset_double_kind_4_rank_0(loc_id,dset_name,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=4),INTENT(INOUT), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,H5T_NATIVE_DOUBLE,f_ptr) + END SUBROUTINE h5ltread_dataset_double_kind_4_rank_0 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_double_kind_4_rank_1 +!DEC$endif + SUBROUTINE h5ltread_dataset_double_kind_4_rank_1(loc_id,dset_name,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=4),INTENT(INOUT), DIMENSION(dims(1)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,H5T_NATIVE_DOUBLE,f_ptr) + END SUBROUTINE h5ltread_dataset_double_kind_4_rank_1 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_double_kind_4_rank_2 +!DEC$endif + SUBROUTINE h5ltread_dataset_double_kind_4_rank_2(loc_id,dset_name,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=4),INTENT(INOUT), DIMENSION(dims(1),dims(2)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,H5T_NATIVE_DOUBLE,f_ptr) + END SUBROUTINE h5ltread_dataset_double_kind_4_rank_2 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_double_kind_4_rank_3 +!DEC$endif + SUBROUTINE h5ltread_dataset_double_kind_4_rank_3(loc_id,dset_name,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=4),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,H5T_NATIVE_DOUBLE,f_ptr) + END SUBROUTINE h5ltread_dataset_double_kind_4_rank_3 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_double_kind_4_rank_4 +!DEC$endif + SUBROUTINE h5ltread_dataset_double_kind_4_rank_4(loc_id,dset_name,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=4),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,H5T_NATIVE_DOUBLE,f_ptr) + END SUBROUTINE h5ltread_dataset_double_kind_4_rank_4 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_double_kind_4_rank_5 +!DEC$endif + SUBROUTINE h5ltread_dataset_double_kind_4_rank_5(loc_id,dset_name,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=4),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,H5T_NATIVE_DOUBLE,f_ptr) + END SUBROUTINE h5ltread_dataset_double_kind_4_rank_5 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_double_kind_4_rank_6 +!DEC$endif + SUBROUTINE h5ltread_dataset_double_kind_4_rank_6(loc_id,dset_name,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=4),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,H5T_NATIVE_DOUBLE,f_ptr) + END SUBROUTINE h5ltread_dataset_double_kind_4_rank_6 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_double_kind_4_rank_7 +!DEC$endif + SUBROUTINE h5ltread_dataset_double_kind_4_rank_7(loc_id,dset_name,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=4),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1,1,1)) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,H5T_NATIVE_DOUBLE,f_ptr) + END SUBROUTINE h5ltread_dataset_double_kind_4_rank_7 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_double_kind_8_rank_0 +!DEC$endif + SUBROUTINE h5ltread_dataset_double_kind_8_rank_0(loc_id,dset_name,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=8),INTENT(INOUT), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,H5T_NATIVE_DOUBLE,f_ptr) + END SUBROUTINE h5ltread_dataset_double_kind_8_rank_0 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_double_kind_8_rank_1 +!DEC$endif + SUBROUTINE h5ltread_dataset_double_kind_8_rank_1(loc_id,dset_name,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=8),INTENT(INOUT), DIMENSION(dims(1)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,H5T_NATIVE_DOUBLE,f_ptr) + END SUBROUTINE h5ltread_dataset_double_kind_8_rank_1 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_double_kind_8_rank_2 +!DEC$endif + SUBROUTINE h5ltread_dataset_double_kind_8_rank_2(loc_id,dset_name,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=8),INTENT(INOUT), DIMENSION(dims(1),dims(2)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,H5T_NATIVE_DOUBLE,f_ptr) + END SUBROUTINE h5ltread_dataset_double_kind_8_rank_2 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_double_kind_8_rank_3 +!DEC$endif + SUBROUTINE h5ltread_dataset_double_kind_8_rank_3(loc_id,dset_name,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=8),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,H5T_NATIVE_DOUBLE,f_ptr) + END SUBROUTINE h5ltread_dataset_double_kind_8_rank_3 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_double_kind_8_rank_4 +!DEC$endif + SUBROUTINE h5ltread_dataset_double_kind_8_rank_4(loc_id,dset_name,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=8),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,H5T_NATIVE_DOUBLE,f_ptr) + END SUBROUTINE h5ltread_dataset_double_kind_8_rank_4 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_double_kind_8_rank_5 +!DEC$endif + SUBROUTINE h5ltread_dataset_double_kind_8_rank_5(loc_id,dset_name,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=8),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,H5T_NATIVE_DOUBLE,f_ptr) + END SUBROUTINE h5ltread_dataset_double_kind_8_rank_5 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_double_kind_8_rank_6 +!DEC$endif + SUBROUTINE h5ltread_dataset_double_kind_8_rank_6(loc_id,dset_name,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=8),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,H5T_NATIVE_DOUBLE,f_ptr) + END SUBROUTINE h5ltread_dataset_double_kind_8_rank_6 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_double_kind_8_rank_7 +!DEC$endif + SUBROUTINE h5ltread_dataset_double_kind_8_rank_7(loc_id,dset_name,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=8),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1,1,1)) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,H5T_NATIVE_DOUBLE,f_ptr) + END SUBROUTINE h5ltread_dataset_double_kind_8_rank_7 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_double_kind_10_rank_0 +!DEC$endif + SUBROUTINE h5ltread_dataset_double_kind_10_rank_0(loc_id,dset_name,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=10),INTENT(INOUT), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,H5T_NATIVE_DOUBLE,f_ptr) + END SUBROUTINE h5ltread_dataset_double_kind_10_rank_0 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_double_kind_10_rank_1 +!DEC$endif + SUBROUTINE h5ltread_dataset_double_kind_10_rank_1(loc_id,dset_name,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=10),INTENT(INOUT), DIMENSION(dims(1)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,H5T_NATIVE_DOUBLE,f_ptr) + END SUBROUTINE h5ltread_dataset_double_kind_10_rank_1 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_double_kind_10_rank_2 +!DEC$endif + SUBROUTINE h5ltread_dataset_double_kind_10_rank_2(loc_id,dset_name,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=10),INTENT(INOUT), DIMENSION(dims(1),dims(2)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,H5T_NATIVE_DOUBLE,f_ptr) + END SUBROUTINE h5ltread_dataset_double_kind_10_rank_2 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_double_kind_10_rank_3 +!DEC$endif + SUBROUTINE h5ltread_dataset_double_kind_10_rank_3(loc_id,dset_name,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=10),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,H5T_NATIVE_DOUBLE,f_ptr) + END SUBROUTINE h5ltread_dataset_double_kind_10_rank_3 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_double_kind_10_rank_4 +!DEC$endif + SUBROUTINE h5ltread_dataset_double_kind_10_rank_4(loc_id,dset_name,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=10),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,H5T_NATIVE_DOUBLE,f_ptr) + END SUBROUTINE h5ltread_dataset_double_kind_10_rank_4 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_double_kind_10_rank_5 +!DEC$endif + SUBROUTINE h5ltread_dataset_double_kind_10_rank_5(loc_id,dset_name,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=10),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,H5T_NATIVE_DOUBLE,f_ptr) + END SUBROUTINE h5ltread_dataset_double_kind_10_rank_5 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_double_kind_10_rank_6 +!DEC$endif + SUBROUTINE h5ltread_dataset_double_kind_10_rank_6(loc_id,dset_name,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=10),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,H5T_NATIVE_DOUBLE,f_ptr) + END SUBROUTINE h5ltread_dataset_double_kind_10_rank_6 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_double_kind_10_rank_7 +!DEC$endif + SUBROUTINE h5ltread_dataset_double_kind_10_rank_7(loc_id,dset_name,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=10),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1,1,1)) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,H5T_NATIVE_DOUBLE,f_ptr) + END SUBROUTINE h5ltread_dataset_double_kind_10_rank_7 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_double_kind_16_rank_0 +!DEC$endif + SUBROUTINE h5ltread_dataset_double_kind_16_rank_0(loc_id,dset_name,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=16),INTENT(INOUT), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,H5T_NATIVE_DOUBLE,f_ptr) + END SUBROUTINE h5ltread_dataset_double_kind_16_rank_0 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_double_kind_16_rank_1 +!DEC$endif + SUBROUTINE h5ltread_dataset_double_kind_16_rank_1(loc_id,dset_name,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=16),INTENT(INOUT), DIMENSION(dims(1)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,H5T_NATIVE_DOUBLE,f_ptr) + END SUBROUTINE h5ltread_dataset_double_kind_16_rank_1 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_double_kind_16_rank_2 +!DEC$endif + SUBROUTINE h5ltread_dataset_double_kind_16_rank_2(loc_id,dset_name,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=16),INTENT(INOUT), DIMENSION(dims(1),dims(2)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,H5T_NATIVE_DOUBLE,f_ptr) + END SUBROUTINE h5ltread_dataset_double_kind_16_rank_2 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_double_kind_16_rank_3 +!DEC$endif + SUBROUTINE h5ltread_dataset_double_kind_16_rank_3(loc_id,dset_name,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=16),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,H5T_NATIVE_DOUBLE,f_ptr) + END SUBROUTINE h5ltread_dataset_double_kind_16_rank_3 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_double_kind_16_rank_4 +!DEC$endif + SUBROUTINE h5ltread_dataset_double_kind_16_rank_4(loc_id,dset_name,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=16),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,H5T_NATIVE_DOUBLE,f_ptr) + END SUBROUTINE h5ltread_dataset_double_kind_16_rank_4 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_double_kind_16_rank_5 +!DEC$endif + SUBROUTINE h5ltread_dataset_double_kind_16_rank_5(loc_id,dset_name,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=16),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,H5T_NATIVE_DOUBLE,f_ptr) + END SUBROUTINE h5ltread_dataset_double_kind_16_rank_5 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_double_kind_16_rank_6 +!DEC$endif + SUBROUTINE h5ltread_dataset_double_kind_16_rank_6(loc_id,dset_name,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=16),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,H5T_NATIVE_DOUBLE,f_ptr) + END SUBROUTINE h5ltread_dataset_double_kind_16_rank_6 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_double_kind_16_rank_7 +!DEC$endif + SUBROUTINE h5ltread_dataset_double_kind_16_rank_7(loc_id,dset_name,buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + REAL(KIND=16),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1,1,1)) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id,namelen,dset_name,H5T_NATIVE_DOUBLE,f_ptr) + END SUBROUTINE h5ltread_dataset_double_kind_16_rank_7 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_integer_kind_1_rank_0 +!DEC$endif + SUBROUTINE h5ltmake_dataset_integer_kind_1_rank_0(loc_id,dset_name,rank,dims,type_id,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(KIND=1),INTENT(IN), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id, namelen, dset_name, rank, dims, type_id, f_ptr) + END SUBROUTINE h5ltmake_dataset_integer_kind_1_rank_0 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_integer_kind_1_rank_1 +!DEC$endif + SUBROUTINE h5ltmake_dataset_integer_kind_1_rank_1(loc_id,dset_name,rank,dims,type_id,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(KIND=1),INTENT(IN), DIMENSION(dims(1)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id, namelen, dset_name, rank, dims, type_id, f_ptr) + END SUBROUTINE h5ltmake_dataset_integer_kind_1_rank_1 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_integer_kind_1_rank_2 +!DEC$endif + SUBROUTINE h5ltmake_dataset_integer_kind_1_rank_2(loc_id,dset_name,rank,dims,type_id,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(KIND=1),INTENT(IN), DIMENSION(dims(1),dims(2)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id, namelen, dset_name, rank, dims, type_id, f_ptr) + END SUBROUTINE h5ltmake_dataset_integer_kind_1_rank_2 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_integer_kind_1_rank_3 +!DEC$endif + SUBROUTINE h5ltmake_dataset_integer_kind_1_rank_3(loc_id,dset_name,rank,dims,type_id,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(KIND=1),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id, namelen, dset_name, rank, dims, type_id, f_ptr) + END SUBROUTINE h5ltmake_dataset_integer_kind_1_rank_3 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_integer_kind_1_rank_4 +!DEC$endif + SUBROUTINE h5ltmake_dataset_integer_kind_1_rank_4(loc_id,dset_name,rank,dims,type_id,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(KIND=1),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id, namelen, dset_name, rank, dims, type_id, f_ptr) + END SUBROUTINE h5ltmake_dataset_integer_kind_1_rank_4 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_integer_kind_1_rank_5 +!DEC$endif + SUBROUTINE h5ltmake_dataset_integer_kind_1_rank_5(loc_id,dset_name,rank,dims,type_id,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(KIND=1),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id, namelen, dset_name, rank, dims, type_id, f_ptr) + END SUBROUTINE h5ltmake_dataset_integer_kind_1_rank_5 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_integer_kind_1_rank_6 +!DEC$endif + SUBROUTINE h5ltmake_dataset_integer_kind_1_rank_6(loc_id,dset_name,rank,dims,type_id,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(KIND=1),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id, namelen, dset_name, rank, dims, type_id, f_ptr) + END SUBROUTINE h5ltmake_dataset_integer_kind_1_rank_6 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_integer_kind_1_rank_7 +!DEC$endif + SUBROUTINE h5ltmake_dataset_integer_kind_1_rank_7(loc_id,dset_name,rank,dims,type_id,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(KIND=1),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1,1,1)) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id, namelen, dset_name, rank, dims, type_id, f_ptr) + END SUBROUTINE h5ltmake_dataset_integer_kind_1_rank_7 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_integer_kind_2_rank_0 +!DEC$endif + SUBROUTINE h5ltmake_dataset_integer_kind_2_rank_0(loc_id,dset_name,rank,dims,type_id,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(KIND=2),INTENT(IN), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id, namelen, dset_name, rank, dims, type_id, f_ptr) + END SUBROUTINE h5ltmake_dataset_integer_kind_2_rank_0 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_integer_kind_2_rank_1 +!DEC$endif + SUBROUTINE h5ltmake_dataset_integer_kind_2_rank_1(loc_id,dset_name,rank,dims,type_id,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(KIND=2),INTENT(IN), DIMENSION(dims(1)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id, namelen, dset_name, rank, dims, type_id, f_ptr) + END SUBROUTINE h5ltmake_dataset_integer_kind_2_rank_1 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_integer_kind_2_rank_2 +!DEC$endif + SUBROUTINE h5ltmake_dataset_integer_kind_2_rank_2(loc_id,dset_name,rank,dims,type_id,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(KIND=2),INTENT(IN), DIMENSION(dims(1),dims(2)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id, namelen, dset_name, rank, dims, type_id, f_ptr) + END SUBROUTINE h5ltmake_dataset_integer_kind_2_rank_2 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_integer_kind_2_rank_3 +!DEC$endif + SUBROUTINE h5ltmake_dataset_integer_kind_2_rank_3(loc_id,dset_name,rank,dims,type_id,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(KIND=2),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id, namelen, dset_name, rank, dims, type_id, f_ptr) + END SUBROUTINE h5ltmake_dataset_integer_kind_2_rank_3 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_integer_kind_2_rank_4 +!DEC$endif + SUBROUTINE h5ltmake_dataset_integer_kind_2_rank_4(loc_id,dset_name,rank,dims,type_id,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(KIND=2),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id, namelen, dset_name, rank, dims, type_id, f_ptr) + END SUBROUTINE h5ltmake_dataset_integer_kind_2_rank_4 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_integer_kind_2_rank_5 +!DEC$endif + SUBROUTINE h5ltmake_dataset_integer_kind_2_rank_5(loc_id,dset_name,rank,dims,type_id,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(KIND=2),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id, namelen, dset_name, rank, dims, type_id, f_ptr) + END SUBROUTINE h5ltmake_dataset_integer_kind_2_rank_5 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_integer_kind_2_rank_6 +!DEC$endif + SUBROUTINE h5ltmake_dataset_integer_kind_2_rank_6(loc_id,dset_name,rank,dims,type_id,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(KIND=2),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id, namelen, dset_name, rank, dims, type_id, f_ptr) + END SUBROUTINE h5ltmake_dataset_integer_kind_2_rank_6 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_integer_kind_2_rank_7 +!DEC$endif + SUBROUTINE h5ltmake_dataset_integer_kind_2_rank_7(loc_id,dset_name,rank,dims,type_id,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(KIND=2),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1,1,1)) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id, namelen, dset_name, rank, dims, type_id, f_ptr) + END SUBROUTINE h5ltmake_dataset_integer_kind_2_rank_7 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_integer_kind_4_rank_0 +!DEC$endif + SUBROUTINE h5ltmake_dataset_integer_kind_4_rank_0(loc_id,dset_name,rank,dims,type_id,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(KIND=4),INTENT(IN), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id, namelen, dset_name, rank, dims, type_id, f_ptr) + END SUBROUTINE h5ltmake_dataset_integer_kind_4_rank_0 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_integer_kind_4_rank_1 +!DEC$endif + SUBROUTINE h5ltmake_dataset_integer_kind_4_rank_1(loc_id,dset_name,rank,dims,type_id,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(KIND=4),INTENT(IN), DIMENSION(dims(1)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id, namelen, dset_name, rank, dims, type_id, f_ptr) + END SUBROUTINE h5ltmake_dataset_integer_kind_4_rank_1 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_integer_kind_4_rank_2 +!DEC$endif + SUBROUTINE h5ltmake_dataset_integer_kind_4_rank_2(loc_id,dset_name,rank,dims,type_id,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(KIND=4),INTENT(IN), DIMENSION(dims(1),dims(2)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id, namelen, dset_name, rank, dims, type_id, f_ptr) + END SUBROUTINE h5ltmake_dataset_integer_kind_4_rank_2 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_integer_kind_4_rank_3 +!DEC$endif + SUBROUTINE h5ltmake_dataset_integer_kind_4_rank_3(loc_id,dset_name,rank,dims,type_id,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(KIND=4),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id, namelen, dset_name, rank, dims, type_id, f_ptr) + END SUBROUTINE h5ltmake_dataset_integer_kind_4_rank_3 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_integer_kind_4_rank_4 +!DEC$endif + SUBROUTINE h5ltmake_dataset_integer_kind_4_rank_4(loc_id,dset_name,rank,dims,type_id,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(KIND=4),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id, namelen, dset_name, rank, dims, type_id, f_ptr) + END SUBROUTINE h5ltmake_dataset_integer_kind_4_rank_4 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_integer_kind_4_rank_5 +!DEC$endif + SUBROUTINE h5ltmake_dataset_integer_kind_4_rank_5(loc_id,dset_name,rank,dims,type_id,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(KIND=4),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id, namelen, dset_name, rank, dims, type_id, f_ptr) + END SUBROUTINE h5ltmake_dataset_integer_kind_4_rank_5 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_integer_kind_4_rank_6 +!DEC$endif + SUBROUTINE h5ltmake_dataset_integer_kind_4_rank_6(loc_id,dset_name,rank,dims,type_id,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(KIND=4),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id, namelen, dset_name, rank, dims, type_id, f_ptr) + END SUBROUTINE h5ltmake_dataset_integer_kind_4_rank_6 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_integer_kind_4_rank_7 +!DEC$endif + SUBROUTINE h5ltmake_dataset_integer_kind_4_rank_7(loc_id,dset_name,rank,dims,type_id,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(KIND=4),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1,1,1)) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id, namelen, dset_name, rank, dims, type_id, f_ptr) + END SUBROUTINE h5ltmake_dataset_integer_kind_4_rank_7 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_integer_kind_8_rank_0 +!DEC$endif + SUBROUTINE h5ltmake_dataset_integer_kind_8_rank_0(loc_id,dset_name,rank,dims,type_id,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(KIND=8),INTENT(IN), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id, namelen, dset_name, rank, dims, type_id, f_ptr) + END SUBROUTINE h5ltmake_dataset_integer_kind_8_rank_0 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_integer_kind_8_rank_1 +!DEC$endif + SUBROUTINE h5ltmake_dataset_integer_kind_8_rank_1(loc_id,dset_name,rank,dims,type_id,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(KIND=8),INTENT(IN), DIMENSION(dims(1)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id, namelen, dset_name, rank, dims, type_id, f_ptr) + END SUBROUTINE h5ltmake_dataset_integer_kind_8_rank_1 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_integer_kind_8_rank_2 +!DEC$endif + SUBROUTINE h5ltmake_dataset_integer_kind_8_rank_2(loc_id,dset_name,rank,dims,type_id,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(KIND=8),INTENT(IN), DIMENSION(dims(1),dims(2)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id, namelen, dset_name, rank, dims, type_id, f_ptr) + END SUBROUTINE h5ltmake_dataset_integer_kind_8_rank_2 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_integer_kind_8_rank_3 +!DEC$endif + SUBROUTINE h5ltmake_dataset_integer_kind_8_rank_3(loc_id,dset_name,rank,dims,type_id,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(KIND=8),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id, namelen, dset_name, rank, dims, type_id, f_ptr) + END SUBROUTINE h5ltmake_dataset_integer_kind_8_rank_3 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_integer_kind_8_rank_4 +!DEC$endif + SUBROUTINE h5ltmake_dataset_integer_kind_8_rank_4(loc_id,dset_name,rank,dims,type_id,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(KIND=8),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id, namelen, dset_name, rank, dims, type_id, f_ptr) + END SUBROUTINE h5ltmake_dataset_integer_kind_8_rank_4 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_integer_kind_8_rank_5 +!DEC$endif + SUBROUTINE h5ltmake_dataset_integer_kind_8_rank_5(loc_id,dset_name,rank,dims,type_id,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(KIND=8),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id, namelen, dset_name, rank, dims, type_id, f_ptr) + END SUBROUTINE h5ltmake_dataset_integer_kind_8_rank_5 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_integer_kind_8_rank_6 +!DEC$endif + SUBROUTINE h5ltmake_dataset_integer_kind_8_rank_6(loc_id,dset_name,rank,dims,type_id,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(KIND=8),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id, namelen, dset_name, rank, dims, type_id, f_ptr) + END SUBROUTINE h5ltmake_dataset_integer_kind_8_rank_6 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_integer_kind_8_rank_7 +!DEC$endif + SUBROUTINE h5ltmake_dataset_integer_kind_8_rank_7(loc_id,dset_name,rank,dims,type_id,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(KIND=8),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1,1,1)) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id, namelen, dset_name, rank, dims, type_id, f_ptr) + END SUBROUTINE h5ltmake_dataset_integer_kind_8_rank_7 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_integer_kind_16_rank_0 +!DEC$endif + SUBROUTINE h5ltmake_dataset_integer_kind_16_rank_0(loc_id,dset_name,rank,dims,type_id,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(KIND=16),INTENT(IN), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id, namelen, dset_name, rank, dims, type_id, f_ptr) + END SUBROUTINE h5ltmake_dataset_integer_kind_16_rank_0 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_integer_kind_16_rank_1 +!DEC$endif + SUBROUTINE h5ltmake_dataset_integer_kind_16_rank_1(loc_id,dset_name,rank,dims,type_id,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(KIND=16),INTENT(IN), DIMENSION(dims(1)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id, namelen, dset_name, rank, dims, type_id, f_ptr) + END SUBROUTINE h5ltmake_dataset_integer_kind_16_rank_1 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_integer_kind_16_rank_2 +!DEC$endif + SUBROUTINE h5ltmake_dataset_integer_kind_16_rank_2(loc_id,dset_name,rank,dims,type_id,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(KIND=16),INTENT(IN), DIMENSION(dims(1),dims(2)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id, namelen, dset_name, rank, dims, type_id, f_ptr) + END SUBROUTINE h5ltmake_dataset_integer_kind_16_rank_2 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_integer_kind_16_rank_3 +!DEC$endif + SUBROUTINE h5ltmake_dataset_integer_kind_16_rank_3(loc_id,dset_name,rank,dims,type_id,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(KIND=16),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id, namelen, dset_name, rank, dims, type_id, f_ptr) + END SUBROUTINE h5ltmake_dataset_integer_kind_16_rank_3 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_integer_kind_16_rank_4 +!DEC$endif + SUBROUTINE h5ltmake_dataset_integer_kind_16_rank_4(loc_id,dset_name,rank,dims,type_id,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(KIND=16),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id, namelen, dset_name, rank, dims, type_id, f_ptr) + END SUBROUTINE h5ltmake_dataset_integer_kind_16_rank_4 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_integer_kind_16_rank_5 +!DEC$endif + SUBROUTINE h5ltmake_dataset_integer_kind_16_rank_5(loc_id,dset_name,rank,dims,type_id,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(KIND=16),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id, namelen, dset_name, rank, dims, type_id, f_ptr) + END SUBROUTINE h5ltmake_dataset_integer_kind_16_rank_5 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_integer_kind_16_rank_6 +!DEC$endif + SUBROUTINE h5ltmake_dataset_integer_kind_16_rank_6(loc_id,dset_name,rank,dims,type_id,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(KIND=16),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id, namelen, dset_name, rank, dims, type_id, f_ptr) + END SUBROUTINE h5ltmake_dataset_integer_kind_16_rank_6 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_integer_kind_16_rank_7 +!DEC$endif + SUBROUTINE h5ltmake_dataset_integer_kind_16_rank_7(loc_id,dset_name,rank,dims,type_id,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(KIND=16),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1,1,1)) + namelen = LEN(dset_name) + errcode = h5ltmake_dataset_c(loc_id, namelen, dset_name, rank, dims, type_id, f_ptr) + END SUBROUTINE h5ltmake_dataset_integer_kind_16_rank_7 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_int_kind_1_rank_0 +!DEC$endif + SUBROUTINE h5ltmake_dataset_int_kind_1_rank_0(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(KIND=1),INTENT(IN), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + INTEGER(hid_t) :: type_id + f_ptr = C_LOC(buf ) + namelen = LEN(dset_name) + type_id = h5kind_to_type(KIND(buf ), H5_INTEGER_KIND) + errcode = h5ltmake_dataset_c(loc_id, namelen, dset_name, rank, dims, type_id, f_ptr) + END SUBROUTINE h5ltmake_dataset_int_kind_1_rank_0 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_int_kind_1_rank_1 +!DEC$endif + SUBROUTINE h5ltmake_dataset_int_kind_1_rank_1(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(KIND=1),INTENT(IN), DIMENSION(dims(1)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + INTEGER(hid_t) :: type_id + f_ptr = C_LOC(buf(1) ) + namelen = LEN(dset_name) + type_id = h5kind_to_type(KIND(buf(1) ), H5_INTEGER_KIND) + errcode = h5ltmake_dataset_c(loc_id, namelen, dset_name, rank, dims, type_id, f_ptr) + END SUBROUTINE h5ltmake_dataset_int_kind_1_rank_1 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_int_kind_1_rank_2 +!DEC$endif + SUBROUTINE h5ltmake_dataset_int_kind_1_rank_2(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(KIND=1),INTENT(IN), DIMENSION(dims(1),dims(2)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + INTEGER(hid_t) :: type_id + f_ptr = C_LOC(buf(1,1) ) + namelen = LEN(dset_name) + type_id = h5kind_to_type(KIND(buf(1,1) ), H5_INTEGER_KIND) + errcode = h5ltmake_dataset_c(loc_id, namelen, dset_name, rank, dims, type_id, f_ptr) + END SUBROUTINE h5ltmake_dataset_int_kind_1_rank_2 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_int_kind_1_rank_3 +!DEC$endif + SUBROUTINE h5ltmake_dataset_int_kind_1_rank_3(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(KIND=1),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + INTEGER(hid_t) :: type_id + f_ptr = C_LOC(buf(1,1,1) ) + namelen = LEN(dset_name) + type_id = h5kind_to_type(KIND(buf(1,1,1) ), H5_INTEGER_KIND) + errcode = h5ltmake_dataset_c(loc_id, namelen, dset_name, rank, dims, type_id, f_ptr) + END SUBROUTINE h5ltmake_dataset_int_kind_1_rank_3 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_int_kind_1_rank_4 +!DEC$endif + SUBROUTINE h5ltmake_dataset_int_kind_1_rank_4(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(KIND=1),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + INTEGER(hid_t) :: type_id + f_ptr = C_LOC(buf(1,1,1,1) ) + namelen = LEN(dset_name) + type_id = h5kind_to_type(KIND(buf(1,1,1,1) ), H5_INTEGER_KIND) + errcode = h5ltmake_dataset_c(loc_id, namelen, dset_name, rank, dims, type_id, f_ptr) + END SUBROUTINE h5ltmake_dataset_int_kind_1_rank_4 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_int_kind_1_rank_5 +!DEC$endif + SUBROUTINE h5ltmake_dataset_int_kind_1_rank_5(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(KIND=1),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + INTEGER(hid_t) :: type_id + f_ptr = C_LOC(buf(1,1,1,1,1) ) + namelen = LEN(dset_name) + type_id = h5kind_to_type(KIND(buf(1,1,1,1,1) ), H5_INTEGER_KIND) + errcode = h5ltmake_dataset_c(loc_id, namelen, dset_name, rank, dims, type_id, f_ptr) + END SUBROUTINE h5ltmake_dataset_int_kind_1_rank_5 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_int_kind_1_rank_6 +!DEC$endif + SUBROUTINE h5ltmake_dataset_int_kind_1_rank_6(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(KIND=1),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + INTEGER(hid_t) :: type_id + f_ptr = C_LOC(buf(1,1,1,1,1,1) ) + namelen = LEN(dset_name) + type_id = h5kind_to_type(KIND(buf(1,1,1,1,1,1) ), H5_INTEGER_KIND) + errcode = h5ltmake_dataset_c(loc_id, namelen, dset_name, rank, dims, type_id, f_ptr) + END SUBROUTINE h5ltmake_dataset_int_kind_1_rank_6 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_int_kind_1_rank_7 +!DEC$endif + SUBROUTINE h5ltmake_dataset_int_kind_1_rank_7(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(KIND=1),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + INTEGER(hid_t) :: type_id + f_ptr = C_LOC(buf(1,1,1,1,1,1,1)) + namelen = LEN(dset_name) + type_id = h5kind_to_type(KIND(buf(1,1,1,1,1,1,1)), H5_INTEGER_KIND) + errcode = h5ltmake_dataset_c(loc_id, namelen, dset_name, rank, dims, type_id, f_ptr) + END SUBROUTINE h5ltmake_dataset_int_kind_1_rank_7 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_int_kind_2_rank_0 +!DEC$endif + SUBROUTINE h5ltmake_dataset_int_kind_2_rank_0(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(KIND=2),INTENT(IN), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + INTEGER(hid_t) :: type_id + f_ptr = C_LOC(buf ) + namelen = LEN(dset_name) + type_id = h5kind_to_type(KIND(buf ), H5_INTEGER_KIND) + errcode = h5ltmake_dataset_c(loc_id, namelen, dset_name, rank, dims, type_id, f_ptr) + END SUBROUTINE h5ltmake_dataset_int_kind_2_rank_0 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_int_kind_2_rank_1 +!DEC$endif + SUBROUTINE h5ltmake_dataset_int_kind_2_rank_1(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(KIND=2),INTENT(IN), DIMENSION(dims(1)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + INTEGER(hid_t) :: type_id + f_ptr = C_LOC(buf(1) ) + namelen = LEN(dset_name) + type_id = h5kind_to_type(KIND(buf(1) ), H5_INTEGER_KIND) + errcode = h5ltmake_dataset_c(loc_id, namelen, dset_name, rank, dims, type_id, f_ptr) + END SUBROUTINE h5ltmake_dataset_int_kind_2_rank_1 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_int_kind_2_rank_2 +!DEC$endif + SUBROUTINE h5ltmake_dataset_int_kind_2_rank_2(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(KIND=2),INTENT(IN), DIMENSION(dims(1),dims(2)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + INTEGER(hid_t) :: type_id + f_ptr = C_LOC(buf(1,1) ) + namelen = LEN(dset_name) + type_id = h5kind_to_type(KIND(buf(1,1) ), H5_INTEGER_KIND) + errcode = h5ltmake_dataset_c(loc_id, namelen, dset_name, rank, dims, type_id, f_ptr) + END SUBROUTINE h5ltmake_dataset_int_kind_2_rank_2 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_int_kind_2_rank_3 +!DEC$endif + SUBROUTINE h5ltmake_dataset_int_kind_2_rank_3(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(KIND=2),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + INTEGER(hid_t) :: type_id + f_ptr = C_LOC(buf(1,1,1) ) + namelen = LEN(dset_name) + type_id = h5kind_to_type(KIND(buf(1,1,1) ), H5_INTEGER_KIND) + errcode = h5ltmake_dataset_c(loc_id, namelen, dset_name, rank, dims, type_id, f_ptr) + END SUBROUTINE h5ltmake_dataset_int_kind_2_rank_3 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_int_kind_2_rank_4 +!DEC$endif + SUBROUTINE h5ltmake_dataset_int_kind_2_rank_4(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(KIND=2),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + INTEGER(hid_t) :: type_id + f_ptr = C_LOC(buf(1,1,1,1) ) + namelen = LEN(dset_name) + type_id = h5kind_to_type(KIND(buf(1,1,1,1) ), H5_INTEGER_KIND) + errcode = h5ltmake_dataset_c(loc_id, namelen, dset_name, rank, dims, type_id, f_ptr) + END SUBROUTINE h5ltmake_dataset_int_kind_2_rank_4 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_int_kind_2_rank_5 +!DEC$endif + SUBROUTINE h5ltmake_dataset_int_kind_2_rank_5(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(KIND=2),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + INTEGER(hid_t) :: type_id + f_ptr = C_LOC(buf(1,1,1,1,1) ) + namelen = LEN(dset_name) + type_id = h5kind_to_type(KIND(buf(1,1,1,1,1) ), H5_INTEGER_KIND) + errcode = h5ltmake_dataset_c(loc_id, namelen, dset_name, rank, dims, type_id, f_ptr) + END SUBROUTINE h5ltmake_dataset_int_kind_2_rank_5 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_int_kind_2_rank_6 +!DEC$endif + SUBROUTINE h5ltmake_dataset_int_kind_2_rank_6(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(KIND=2),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + INTEGER(hid_t) :: type_id + f_ptr = C_LOC(buf(1,1,1,1,1,1) ) + namelen = LEN(dset_name) + type_id = h5kind_to_type(KIND(buf(1,1,1,1,1,1) ), H5_INTEGER_KIND) + errcode = h5ltmake_dataset_c(loc_id, namelen, dset_name, rank, dims, type_id, f_ptr) + END SUBROUTINE h5ltmake_dataset_int_kind_2_rank_6 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_int_kind_2_rank_7 +!DEC$endif + SUBROUTINE h5ltmake_dataset_int_kind_2_rank_7(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(KIND=2),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + INTEGER(hid_t) :: type_id + f_ptr = C_LOC(buf(1,1,1,1,1,1,1)) + namelen = LEN(dset_name) + type_id = h5kind_to_type(KIND(buf(1,1,1,1,1,1,1)), H5_INTEGER_KIND) + errcode = h5ltmake_dataset_c(loc_id, namelen, dset_name, rank, dims, type_id, f_ptr) + END SUBROUTINE h5ltmake_dataset_int_kind_2_rank_7 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_int_kind_4_rank_0 +!DEC$endif + SUBROUTINE h5ltmake_dataset_int_kind_4_rank_0(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(KIND=4),INTENT(IN), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + INTEGER(hid_t) :: type_id + f_ptr = C_LOC(buf ) + namelen = LEN(dset_name) + type_id = h5kind_to_type(KIND(buf ), H5_INTEGER_KIND) + errcode = h5ltmake_dataset_c(loc_id, namelen, dset_name, rank, dims, type_id, f_ptr) + END SUBROUTINE h5ltmake_dataset_int_kind_4_rank_0 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_int_kind_4_rank_1 +!DEC$endif + SUBROUTINE h5ltmake_dataset_int_kind_4_rank_1(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(KIND=4),INTENT(IN), DIMENSION(dims(1)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + INTEGER(hid_t) :: type_id + f_ptr = C_LOC(buf(1) ) + namelen = LEN(dset_name) + type_id = h5kind_to_type(KIND(buf(1) ), H5_INTEGER_KIND) + errcode = h5ltmake_dataset_c(loc_id, namelen, dset_name, rank, dims, type_id, f_ptr) + END SUBROUTINE h5ltmake_dataset_int_kind_4_rank_1 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_int_kind_4_rank_2 +!DEC$endif + SUBROUTINE h5ltmake_dataset_int_kind_4_rank_2(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(KIND=4),INTENT(IN), DIMENSION(dims(1),dims(2)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + INTEGER(hid_t) :: type_id + f_ptr = C_LOC(buf(1,1) ) + namelen = LEN(dset_name) + type_id = h5kind_to_type(KIND(buf(1,1) ), H5_INTEGER_KIND) + errcode = h5ltmake_dataset_c(loc_id, namelen, dset_name, rank, dims, type_id, f_ptr) + END SUBROUTINE h5ltmake_dataset_int_kind_4_rank_2 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_int_kind_4_rank_3 +!DEC$endif + SUBROUTINE h5ltmake_dataset_int_kind_4_rank_3(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(KIND=4),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + INTEGER(hid_t) :: type_id + f_ptr = C_LOC(buf(1,1,1) ) + namelen = LEN(dset_name) + type_id = h5kind_to_type(KIND(buf(1,1,1) ), H5_INTEGER_KIND) + errcode = h5ltmake_dataset_c(loc_id, namelen, dset_name, rank, dims, type_id, f_ptr) + END SUBROUTINE h5ltmake_dataset_int_kind_4_rank_3 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_int_kind_4_rank_4 +!DEC$endif + SUBROUTINE h5ltmake_dataset_int_kind_4_rank_4(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(KIND=4),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + INTEGER(hid_t) :: type_id + f_ptr = C_LOC(buf(1,1,1,1) ) + namelen = LEN(dset_name) + type_id = h5kind_to_type(KIND(buf(1,1,1,1) ), H5_INTEGER_KIND) + errcode = h5ltmake_dataset_c(loc_id, namelen, dset_name, rank, dims, type_id, f_ptr) + END SUBROUTINE h5ltmake_dataset_int_kind_4_rank_4 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_int_kind_4_rank_5 +!DEC$endif + SUBROUTINE h5ltmake_dataset_int_kind_4_rank_5(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(KIND=4),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + INTEGER(hid_t) :: type_id + f_ptr = C_LOC(buf(1,1,1,1,1) ) + namelen = LEN(dset_name) + type_id = h5kind_to_type(KIND(buf(1,1,1,1,1) ), H5_INTEGER_KIND) + errcode = h5ltmake_dataset_c(loc_id, namelen, dset_name, rank, dims, type_id, f_ptr) + END SUBROUTINE h5ltmake_dataset_int_kind_4_rank_5 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_int_kind_4_rank_6 +!DEC$endif + SUBROUTINE h5ltmake_dataset_int_kind_4_rank_6(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(KIND=4),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + INTEGER(hid_t) :: type_id + f_ptr = C_LOC(buf(1,1,1,1,1,1) ) + namelen = LEN(dset_name) + type_id = h5kind_to_type(KIND(buf(1,1,1,1,1,1) ), H5_INTEGER_KIND) + errcode = h5ltmake_dataset_c(loc_id, namelen, dset_name, rank, dims, type_id, f_ptr) + END SUBROUTINE h5ltmake_dataset_int_kind_4_rank_6 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_int_kind_4_rank_7 +!DEC$endif + SUBROUTINE h5ltmake_dataset_int_kind_4_rank_7(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(KIND=4),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + INTEGER(hid_t) :: type_id + f_ptr = C_LOC(buf(1,1,1,1,1,1,1)) + namelen = LEN(dset_name) + type_id = h5kind_to_type(KIND(buf(1,1,1,1,1,1,1)), H5_INTEGER_KIND) + errcode = h5ltmake_dataset_c(loc_id, namelen, dset_name, rank, dims, type_id, f_ptr) + END SUBROUTINE h5ltmake_dataset_int_kind_4_rank_7 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_int_kind_8_rank_0 +!DEC$endif + SUBROUTINE h5ltmake_dataset_int_kind_8_rank_0(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(KIND=8),INTENT(IN), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + INTEGER(hid_t) :: type_id + f_ptr = C_LOC(buf ) + namelen = LEN(dset_name) + type_id = h5kind_to_type(KIND(buf ), H5_INTEGER_KIND) + errcode = h5ltmake_dataset_c(loc_id, namelen, dset_name, rank, dims, type_id, f_ptr) + END SUBROUTINE h5ltmake_dataset_int_kind_8_rank_0 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_int_kind_8_rank_1 +!DEC$endif + SUBROUTINE h5ltmake_dataset_int_kind_8_rank_1(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(KIND=8),INTENT(IN), DIMENSION(dims(1)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + INTEGER(hid_t) :: type_id + f_ptr = C_LOC(buf(1) ) + namelen = LEN(dset_name) + type_id = h5kind_to_type(KIND(buf(1) ), H5_INTEGER_KIND) + errcode = h5ltmake_dataset_c(loc_id, namelen, dset_name, rank, dims, type_id, f_ptr) + END SUBROUTINE h5ltmake_dataset_int_kind_8_rank_1 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_int_kind_8_rank_2 +!DEC$endif + SUBROUTINE h5ltmake_dataset_int_kind_8_rank_2(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(KIND=8),INTENT(IN), DIMENSION(dims(1),dims(2)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + INTEGER(hid_t) :: type_id + f_ptr = C_LOC(buf(1,1) ) + namelen = LEN(dset_name) + type_id = h5kind_to_type(KIND(buf(1,1) ), H5_INTEGER_KIND) + errcode = h5ltmake_dataset_c(loc_id, namelen, dset_name, rank, dims, type_id, f_ptr) + END SUBROUTINE h5ltmake_dataset_int_kind_8_rank_2 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_int_kind_8_rank_3 +!DEC$endif + SUBROUTINE h5ltmake_dataset_int_kind_8_rank_3(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(KIND=8),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + INTEGER(hid_t) :: type_id + f_ptr = C_LOC(buf(1,1,1) ) + namelen = LEN(dset_name) + type_id = h5kind_to_type(KIND(buf(1,1,1) ), H5_INTEGER_KIND) + errcode = h5ltmake_dataset_c(loc_id, namelen, dset_name, rank, dims, type_id, f_ptr) + END SUBROUTINE h5ltmake_dataset_int_kind_8_rank_3 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_int_kind_8_rank_4 +!DEC$endif + SUBROUTINE h5ltmake_dataset_int_kind_8_rank_4(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(KIND=8),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + INTEGER(hid_t) :: type_id + f_ptr = C_LOC(buf(1,1,1,1) ) + namelen = LEN(dset_name) + type_id = h5kind_to_type(KIND(buf(1,1,1,1) ), H5_INTEGER_KIND) + errcode = h5ltmake_dataset_c(loc_id, namelen, dset_name, rank, dims, type_id, f_ptr) + END SUBROUTINE h5ltmake_dataset_int_kind_8_rank_4 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_int_kind_8_rank_5 +!DEC$endif + SUBROUTINE h5ltmake_dataset_int_kind_8_rank_5(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(KIND=8),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + INTEGER(hid_t) :: type_id + f_ptr = C_LOC(buf(1,1,1,1,1) ) + namelen = LEN(dset_name) + type_id = h5kind_to_type(KIND(buf(1,1,1,1,1) ), H5_INTEGER_KIND) + errcode = h5ltmake_dataset_c(loc_id, namelen, dset_name, rank, dims, type_id, f_ptr) + END SUBROUTINE h5ltmake_dataset_int_kind_8_rank_5 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_int_kind_8_rank_6 +!DEC$endif + SUBROUTINE h5ltmake_dataset_int_kind_8_rank_6(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(KIND=8),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + INTEGER(hid_t) :: type_id + f_ptr = C_LOC(buf(1,1,1,1,1,1) ) + namelen = LEN(dset_name) + type_id = h5kind_to_type(KIND(buf(1,1,1,1,1,1) ), H5_INTEGER_KIND) + errcode = h5ltmake_dataset_c(loc_id, namelen, dset_name, rank, dims, type_id, f_ptr) + END SUBROUTINE h5ltmake_dataset_int_kind_8_rank_6 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_int_kind_8_rank_7 +!DEC$endif + SUBROUTINE h5ltmake_dataset_int_kind_8_rank_7(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(KIND=8),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + INTEGER(hid_t) :: type_id + f_ptr = C_LOC(buf(1,1,1,1,1,1,1)) + namelen = LEN(dset_name) + type_id = h5kind_to_type(KIND(buf(1,1,1,1,1,1,1)), H5_INTEGER_KIND) + errcode = h5ltmake_dataset_c(loc_id, namelen, dset_name, rank, dims, type_id, f_ptr) + END SUBROUTINE h5ltmake_dataset_int_kind_8_rank_7 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_int_kind_16_rank_0 +!DEC$endif + SUBROUTINE h5ltmake_dataset_int_kind_16_rank_0(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(KIND=16),INTENT(IN), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + INTEGER(hid_t) :: type_id + f_ptr = C_LOC(buf ) + namelen = LEN(dset_name) + type_id = h5kind_to_type(KIND(buf ), H5_INTEGER_KIND) + errcode = h5ltmake_dataset_c(loc_id, namelen, dset_name, rank, dims, type_id, f_ptr) + END SUBROUTINE h5ltmake_dataset_int_kind_16_rank_0 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_int_kind_16_rank_1 +!DEC$endif + SUBROUTINE h5ltmake_dataset_int_kind_16_rank_1(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(KIND=16),INTENT(IN), DIMENSION(dims(1)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + INTEGER(hid_t) :: type_id + f_ptr = C_LOC(buf(1) ) + namelen = LEN(dset_name) + type_id = h5kind_to_type(KIND(buf(1) ), H5_INTEGER_KIND) + errcode = h5ltmake_dataset_c(loc_id, namelen, dset_name, rank, dims, type_id, f_ptr) + END SUBROUTINE h5ltmake_dataset_int_kind_16_rank_1 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_int_kind_16_rank_2 +!DEC$endif + SUBROUTINE h5ltmake_dataset_int_kind_16_rank_2(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(KIND=16),INTENT(IN), DIMENSION(dims(1),dims(2)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + INTEGER(hid_t) :: type_id + f_ptr = C_LOC(buf(1,1) ) + namelen = LEN(dset_name) + type_id = h5kind_to_type(KIND(buf(1,1) ), H5_INTEGER_KIND) + errcode = h5ltmake_dataset_c(loc_id, namelen, dset_name, rank, dims, type_id, f_ptr) + END SUBROUTINE h5ltmake_dataset_int_kind_16_rank_2 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_int_kind_16_rank_3 +!DEC$endif + SUBROUTINE h5ltmake_dataset_int_kind_16_rank_3(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(KIND=16),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + INTEGER(hid_t) :: type_id + f_ptr = C_LOC(buf(1,1,1) ) + namelen = LEN(dset_name) + type_id = h5kind_to_type(KIND(buf(1,1,1) ), H5_INTEGER_KIND) + errcode = h5ltmake_dataset_c(loc_id, namelen, dset_name, rank, dims, type_id, f_ptr) + END SUBROUTINE h5ltmake_dataset_int_kind_16_rank_3 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_int_kind_16_rank_4 +!DEC$endif + SUBROUTINE h5ltmake_dataset_int_kind_16_rank_4(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(KIND=16),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + INTEGER(hid_t) :: type_id + f_ptr = C_LOC(buf(1,1,1,1) ) + namelen = LEN(dset_name) + type_id = h5kind_to_type(KIND(buf(1,1,1,1) ), H5_INTEGER_KIND) + errcode = h5ltmake_dataset_c(loc_id, namelen, dset_name, rank, dims, type_id, f_ptr) + END SUBROUTINE h5ltmake_dataset_int_kind_16_rank_4 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_int_kind_16_rank_5 +!DEC$endif + SUBROUTINE h5ltmake_dataset_int_kind_16_rank_5(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(KIND=16),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + INTEGER(hid_t) :: type_id + f_ptr = C_LOC(buf(1,1,1,1,1) ) + namelen = LEN(dset_name) + type_id = h5kind_to_type(KIND(buf(1,1,1,1,1) ), H5_INTEGER_KIND) + errcode = h5ltmake_dataset_c(loc_id, namelen, dset_name, rank, dims, type_id, f_ptr) + END SUBROUTINE h5ltmake_dataset_int_kind_16_rank_5 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_int_kind_16_rank_6 +!DEC$endif + SUBROUTINE h5ltmake_dataset_int_kind_16_rank_6(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(KIND=16),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + INTEGER(hid_t) :: type_id + f_ptr = C_LOC(buf(1,1,1,1,1,1) ) + namelen = LEN(dset_name) + type_id = h5kind_to_type(KIND(buf(1,1,1,1,1,1) ), H5_INTEGER_KIND) + errcode = h5ltmake_dataset_c(loc_id, namelen, dset_name, rank, dims, type_id, f_ptr) + END SUBROUTINE h5ltmake_dataset_int_kind_16_rank_6 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltmake_dataset_int_kind_16_rank_7 +!DEC$endif + SUBROUTINE h5ltmake_dataset_int_kind_16_rank_7(loc_id,dset_name,rank,dims,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(IN) :: rank + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(KIND=16),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + INTEGER(hid_t) :: type_id + f_ptr = C_LOC(buf(1,1,1,1,1,1,1)) + namelen = LEN(dset_name) + type_id = h5kind_to_type(KIND(buf(1,1,1,1,1,1,1)), H5_INTEGER_KIND) + errcode = h5ltmake_dataset_c(loc_id, namelen, dset_name, rank, dims, type_id, f_ptr) + END SUBROUTINE h5ltmake_dataset_int_kind_16_rank_7 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_integer_kind_1_rank_0 +!DEC$endif + SUBROUTINE h5ltread_dataset_integer_kind_1_rank_0(loc_id,dset_name, type_id, buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(KIND=1),INTENT(INOUT), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id, namelen, dset_name, type_id, f_ptr) + END SUBROUTINE h5ltread_dataset_integer_kind_1_rank_0 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_integer_kind_1_rank_1 +!DEC$endif + SUBROUTINE h5ltread_dataset_integer_kind_1_rank_1(loc_id,dset_name, type_id, buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(KIND=1),INTENT(INOUT), DIMENSION(dims(1)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id, namelen, dset_name, type_id, f_ptr) + END SUBROUTINE h5ltread_dataset_integer_kind_1_rank_1 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_integer_kind_1_rank_2 +!DEC$endif + SUBROUTINE h5ltread_dataset_integer_kind_1_rank_2(loc_id,dset_name, type_id, buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(KIND=1),INTENT(INOUT), DIMENSION(dims(1),dims(2)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id, namelen, dset_name, type_id, f_ptr) + END SUBROUTINE h5ltread_dataset_integer_kind_1_rank_2 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_integer_kind_1_rank_3 +!DEC$endif + SUBROUTINE h5ltread_dataset_integer_kind_1_rank_3(loc_id,dset_name, type_id, buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(KIND=1),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id, namelen, dset_name, type_id, f_ptr) + END SUBROUTINE h5ltread_dataset_integer_kind_1_rank_3 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_integer_kind_1_rank_4 +!DEC$endif + SUBROUTINE h5ltread_dataset_integer_kind_1_rank_4(loc_id,dset_name, type_id, buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(KIND=1),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id, namelen, dset_name, type_id, f_ptr) + END SUBROUTINE h5ltread_dataset_integer_kind_1_rank_4 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_integer_kind_1_rank_5 +!DEC$endif + SUBROUTINE h5ltread_dataset_integer_kind_1_rank_5(loc_id,dset_name, type_id, buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(KIND=1),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id, namelen, dset_name, type_id, f_ptr) + END SUBROUTINE h5ltread_dataset_integer_kind_1_rank_5 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_integer_kind_1_rank_6 +!DEC$endif + SUBROUTINE h5ltread_dataset_integer_kind_1_rank_6(loc_id,dset_name, type_id, buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(KIND=1),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id, namelen, dset_name, type_id, f_ptr) + END SUBROUTINE h5ltread_dataset_integer_kind_1_rank_6 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_integer_kind_1_rank_7 +!DEC$endif + SUBROUTINE h5ltread_dataset_integer_kind_1_rank_7(loc_id,dset_name, type_id, buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(KIND=1),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1,1,1)) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id, namelen, dset_name, type_id, f_ptr) + END SUBROUTINE h5ltread_dataset_integer_kind_1_rank_7 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_integer_kind_2_rank_0 +!DEC$endif + SUBROUTINE h5ltread_dataset_integer_kind_2_rank_0(loc_id,dset_name, type_id, buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(KIND=2),INTENT(INOUT), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id, namelen, dset_name, type_id, f_ptr) + END SUBROUTINE h5ltread_dataset_integer_kind_2_rank_0 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_integer_kind_2_rank_1 +!DEC$endif + SUBROUTINE h5ltread_dataset_integer_kind_2_rank_1(loc_id,dset_name, type_id, buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(KIND=2),INTENT(INOUT), DIMENSION(dims(1)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id, namelen, dset_name, type_id, f_ptr) + END SUBROUTINE h5ltread_dataset_integer_kind_2_rank_1 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_integer_kind_2_rank_2 +!DEC$endif + SUBROUTINE h5ltread_dataset_integer_kind_2_rank_2(loc_id,dset_name, type_id, buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(KIND=2),INTENT(INOUT), DIMENSION(dims(1),dims(2)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id, namelen, dset_name, type_id, f_ptr) + END SUBROUTINE h5ltread_dataset_integer_kind_2_rank_2 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_integer_kind_2_rank_3 +!DEC$endif + SUBROUTINE h5ltread_dataset_integer_kind_2_rank_3(loc_id,dset_name, type_id, buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(KIND=2),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id, namelen, dset_name, type_id, f_ptr) + END SUBROUTINE h5ltread_dataset_integer_kind_2_rank_3 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_integer_kind_2_rank_4 +!DEC$endif + SUBROUTINE h5ltread_dataset_integer_kind_2_rank_4(loc_id,dset_name, type_id, buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(KIND=2),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id, namelen, dset_name, type_id, f_ptr) + END SUBROUTINE h5ltread_dataset_integer_kind_2_rank_4 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_integer_kind_2_rank_5 +!DEC$endif + SUBROUTINE h5ltread_dataset_integer_kind_2_rank_5(loc_id,dset_name, type_id, buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(KIND=2),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id, namelen, dset_name, type_id, f_ptr) + END SUBROUTINE h5ltread_dataset_integer_kind_2_rank_5 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_integer_kind_2_rank_6 +!DEC$endif + SUBROUTINE h5ltread_dataset_integer_kind_2_rank_6(loc_id,dset_name, type_id, buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(KIND=2),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id, namelen, dset_name, type_id, f_ptr) + END SUBROUTINE h5ltread_dataset_integer_kind_2_rank_6 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_integer_kind_2_rank_7 +!DEC$endif + SUBROUTINE h5ltread_dataset_integer_kind_2_rank_7(loc_id,dset_name, type_id, buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(KIND=2),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1,1,1)) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id, namelen, dset_name, type_id, f_ptr) + END SUBROUTINE h5ltread_dataset_integer_kind_2_rank_7 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_integer_kind_4_rank_0 +!DEC$endif + SUBROUTINE h5ltread_dataset_integer_kind_4_rank_0(loc_id,dset_name, type_id, buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(KIND=4),INTENT(INOUT), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id, namelen, dset_name, type_id, f_ptr) + END SUBROUTINE h5ltread_dataset_integer_kind_4_rank_0 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_integer_kind_4_rank_1 +!DEC$endif + SUBROUTINE h5ltread_dataset_integer_kind_4_rank_1(loc_id,dset_name, type_id, buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(KIND=4),INTENT(INOUT), DIMENSION(dims(1)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id, namelen, dset_name, type_id, f_ptr) + END SUBROUTINE h5ltread_dataset_integer_kind_4_rank_1 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_integer_kind_4_rank_2 +!DEC$endif + SUBROUTINE h5ltread_dataset_integer_kind_4_rank_2(loc_id,dset_name, type_id, buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(KIND=4),INTENT(INOUT), DIMENSION(dims(1),dims(2)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id, namelen, dset_name, type_id, f_ptr) + END SUBROUTINE h5ltread_dataset_integer_kind_4_rank_2 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_integer_kind_4_rank_3 +!DEC$endif + SUBROUTINE h5ltread_dataset_integer_kind_4_rank_3(loc_id,dset_name, type_id, buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(KIND=4),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id, namelen, dset_name, type_id, f_ptr) + END SUBROUTINE h5ltread_dataset_integer_kind_4_rank_3 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_integer_kind_4_rank_4 +!DEC$endif + SUBROUTINE h5ltread_dataset_integer_kind_4_rank_4(loc_id,dset_name, type_id, buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(KIND=4),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id, namelen, dset_name, type_id, f_ptr) + END SUBROUTINE h5ltread_dataset_integer_kind_4_rank_4 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_integer_kind_4_rank_5 +!DEC$endif + SUBROUTINE h5ltread_dataset_integer_kind_4_rank_5(loc_id,dset_name, type_id, buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(KIND=4),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id, namelen, dset_name, type_id, f_ptr) + END SUBROUTINE h5ltread_dataset_integer_kind_4_rank_5 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_integer_kind_4_rank_6 +!DEC$endif + SUBROUTINE h5ltread_dataset_integer_kind_4_rank_6(loc_id,dset_name, type_id, buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(KIND=4),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id, namelen, dset_name, type_id, f_ptr) + END SUBROUTINE h5ltread_dataset_integer_kind_4_rank_6 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_integer_kind_4_rank_7 +!DEC$endif + SUBROUTINE h5ltread_dataset_integer_kind_4_rank_7(loc_id,dset_name, type_id, buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(KIND=4),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1,1,1)) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id, namelen, dset_name, type_id, f_ptr) + END SUBROUTINE h5ltread_dataset_integer_kind_4_rank_7 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_integer_kind_8_rank_0 +!DEC$endif + SUBROUTINE h5ltread_dataset_integer_kind_8_rank_0(loc_id,dset_name, type_id, buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(KIND=8),INTENT(INOUT), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id, namelen, dset_name, type_id, f_ptr) + END SUBROUTINE h5ltread_dataset_integer_kind_8_rank_0 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_integer_kind_8_rank_1 +!DEC$endif + SUBROUTINE h5ltread_dataset_integer_kind_8_rank_1(loc_id,dset_name, type_id, buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(KIND=8),INTENT(INOUT), DIMENSION(dims(1)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id, namelen, dset_name, type_id, f_ptr) + END SUBROUTINE h5ltread_dataset_integer_kind_8_rank_1 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_integer_kind_8_rank_2 +!DEC$endif + SUBROUTINE h5ltread_dataset_integer_kind_8_rank_2(loc_id,dset_name, type_id, buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(KIND=8),INTENT(INOUT), DIMENSION(dims(1),dims(2)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id, namelen, dset_name, type_id, f_ptr) + END SUBROUTINE h5ltread_dataset_integer_kind_8_rank_2 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_integer_kind_8_rank_3 +!DEC$endif + SUBROUTINE h5ltread_dataset_integer_kind_8_rank_3(loc_id,dset_name, type_id, buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(KIND=8),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id, namelen, dset_name, type_id, f_ptr) + END SUBROUTINE h5ltread_dataset_integer_kind_8_rank_3 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_integer_kind_8_rank_4 +!DEC$endif + SUBROUTINE h5ltread_dataset_integer_kind_8_rank_4(loc_id,dset_name, type_id, buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(KIND=8),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id, namelen, dset_name, type_id, f_ptr) + END SUBROUTINE h5ltread_dataset_integer_kind_8_rank_4 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_integer_kind_8_rank_5 +!DEC$endif + SUBROUTINE h5ltread_dataset_integer_kind_8_rank_5(loc_id,dset_name, type_id, buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(KIND=8),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id, namelen, dset_name, type_id, f_ptr) + END SUBROUTINE h5ltread_dataset_integer_kind_8_rank_5 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_integer_kind_8_rank_6 +!DEC$endif + SUBROUTINE h5ltread_dataset_integer_kind_8_rank_6(loc_id,dset_name, type_id, buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(KIND=8),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id, namelen, dset_name, type_id, f_ptr) + END SUBROUTINE h5ltread_dataset_integer_kind_8_rank_6 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_integer_kind_8_rank_7 +!DEC$endif + SUBROUTINE h5ltread_dataset_integer_kind_8_rank_7(loc_id,dset_name, type_id, buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(KIND=8),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1,1,1)) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id, namelen, dset_name, type_id, f_ptr) + END SUBROUTINE h5ltread_dataset_integer_kind_8_rank_7 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_integer_kind_16_rank_0 +!DEC$endif + SUBROUTINE h5ltread_dataset_integer_kind_16_rank_0(loc_id,dset_name, type_id, buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(KIND=16),INTENT(INOUT), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id, namelen, dset_name, type_id, f_ptr) + END SUBROUTINE h5ltread_dataset_integer_kind_16_rank_0 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_integer_kind_16_rank_1 +!DEC$endif + SUBROUTINE h5ltread_dataset_integer_kind_16_rank_1(loc_id,dset_name, type_id, buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(KIND=16),INTENT(INOUT), DIMENSION(dims(1)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id, namelen, dset_name, type_id, f_ptr) + END SUBROUTINE h5ltread_dataset_integer_kind_16_rank_1 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_integer_kind_16_rank_2 +!DEC$endif + SUBROUTINE h5ltread_dataset_integer_kind_16_rank_2(loc_id,dset_name, type_id, buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(KIND=16),INTENT(INOUT), DIMENSION(dims(1),dims(2)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id, namelen, dset_name, type_id, f_ptr) + END SUBROUTINE h5ltread_dataset_integer_kind_16_rank_2 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_integer_kind_16_rank_3 +!DEC$endif + SUBROUTINE h5ltread_dataset_integer_kind_16_rank_3(loc_id,dset_name, type_id, buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(KIND=16),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id, namelen, dset_name, type_id, f_ptr) + END SUBROUTINE h5ltread_dataset_integer_kind_16_rank_3 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_integer_kind_16_rank_4 +!DEC$endif + SUBROUTINE h5ltread_dataset_integer_kind_16_rank_4(loc_id,dset_name, type_id, buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(KIND=16),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id, namelen, dset_name, type_id, f_ptr) + END SUBROUTINE h5ltread_dataset_integer_kind_16_rank_4 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_integer_kind_16_rank_5 +!DEC$endif + SUBROUTINE h5ltread_dataset_integer_kind_16_rank_5(loc_id,dset_name, type_id, buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(KIND=16),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id, namelen, dset_name, type_id, f_ptr) + END SUBROUTINE h5ltread_dataset_integer_kind_16_rank_5 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_integer_kind_16_rank_6 +!DEC$endif + SUBROUTINE h5ltread_dataset_integer_kind_16_rank_6(loc_id,dset_name, type_id, buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(KIND=16),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1,1) ) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id, namelen, dset_name, type_id, f_ptr) + END SUBROUTINE h5ltread_dataset_integer_kind_16_rank_6 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_integer_kind_16_rank_7 +!DEC$endif + SUBROUTINE h5ltread_dataset_integer_kind_16_rank_7(loc_id,dset_name, type_id, buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(hid_t), INTENT(in) :: type_id + INTEGER(KIND=16),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + f_ptr = C_LOC(buf(1,1,1,1,1,1,1)) + namelen = LEN(dset_name) + errcode = h5ltread_dataset_c(loc_id, namelen, dset_name, type_id, f_ptr) + END SUBROUTINE h5ltread_dataset_integer_kind_16_rank_7 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_int_kind_1_rank_0 +!DEC$endif + SUBROUTINE h5ltread_dataset_int_kind_1_rank_0(loc_id,dset_name, buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(KIND=1),INTENT(INOUT), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + INTEGER(hid_t) :: type_id + f_ptr = C_LOC(buf ) + namelen = LEN(dset_name) + type_id = h5kind_to_type(KIND(buf ), H5_INTEGER_KIND) + errcode = h5ltread_dataset_c(loc_id, namelen, dset_name, type_id, f_ptr) + END SUBROUTINE h5ltread_dataset_int_kind_1_rank_0 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_int_kind_1_rank_1 +!DEC$endif + SUBROUTINE h5ltread_dataset_int_kind_1_rank_1(loc_id,dset_name, buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(KIND=1),INTENT(INOUT), DIMENSION(dims(1)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + INTEGER(hid_t) :: type_id + f_ptr = C_LOC(buf(1) ) + namelen = LEN(dset_name) + type_id = h5kind_to_type(KIND(buf(1) ), H5_INTEGER_KIND) + errcode = h5ltread_dataset_c(loc_id, namelen, dset_name, type_id, f_ptr) + END SUBROUTINE h5ltread_dataset_int_kind_1_rank_1 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_int_kind_1_rank_2 +!DEC$endif + SUBROUTINE h5ltread_dataset_int_kind_1_rank_2(loc_id,dset_name, buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(KIND=1),INTENT(INOUT), DIMENSION(dims(1),dims(2)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + INTEGER(hid_t) :: type_id + f_ptr = C_LOC(buf(1,1) ) + namelen = LEN(dset_name) + type_id = h5kind_to_type(KIND(buf(1,1) ), H5_INTEGER_KIND) + errcode = h5ltread_dataset_c(loc_id, namelen, dset_name, type_id, f_ptr) + END SUBROUTINE h5ltread_dataset_int_kind_1_rank_2 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_int_kind_1_rank_3 +!DEC$endif + SUBROUTINE h5ltread_dataset_int_kind_1_rank_3(loc_id,dset_name, buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(KIND=1),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + INTEGER(hid_t) :: type_id + f_ptr = C_LOC(buf(1,1,1) ) + namelen = LEN(dset_name) + type_id = h5kind_to_type(KIND(buf(1,1,1) ), H5_INTEGER_KIND) + errcode = h5ltread_dataset_c(loc_id, namelen, dset_name, type_id, f_ptr) + END SUBROUTINE h5ltread_dataset_int_kind_1_rank_3 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_int_kind_1_rank_4 +!DEC$endif + SUBROUTINE h5ltread_dataset_int_kind_1_rank_4(loc_id,dset_name, buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(KIND=1),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + INTEGER(hid_t) :: type_id + f_ptr = C_LOC(buf(1,1,1,1) ) + namelen = LEN(dset_name) + type_id = h5kind_to_type(KIND(buf(1,1,1,1) ), H5_INTEGER_KIND) + errcode = h5ltread_dataset_c(loc_id, namelen, dset_name, type_id, f_ptr) + END SUBROUTINE h5ltread_dataset_int_kind_1_rank_4 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_int_kind_1_rank_5 +!DEC$endif + SUBROUTINE h5ltread_dataset_int_kind_1_rank_5(loc_id,dset_name, buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(KIND=1),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + INTEGER(hid_t) :: type_id + f_ptr = C_LOC(buf(1,1,1,1,1) ) + namelen = LEN(dset_name) + type_id = h5kind_to_type(KIND(buf(1,1,1,1,1) ), H5_INTEGER_KIND) + errcode = h5ltread_dataset_c(loc_id, namelen, dset_name, type_id, f_ptr) + END SUBROUTINE h5ltread_dataset_int_kind_1_rank_5 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_int_kind_1_rank_6 +!DEC$endif + SUBROUTINE h5ltread_dataset_int_kind_1_rank_6(loc_id,dset_name, buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(KIND=1),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + INTEGER(hid_t) :: type_id + f_ptr = C_LOC(buf(1,1,1,1,1,1) ) + namelen = LEN(dset_name) + type_id = h5kind_to_type(KIND(buf(1,1,1,1,1,1) ), H5_INTEGER_KIND) + errcode = h5ltread_dataset_c(loc_id, namelen, dset_name, type_id, f_ptr) + END SUBROUTINE h5ltread_dataset_int_kind_1_rank_6 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_int_kind_1_rank_7 +!DEC$endif + SUBROUTINE h5ltread_dataset_int_kind_1_rank_7(loc_id,dset_name, buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(KIND=1),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + INTEGER(hid_t) :: type_id + f_ptr = C_LOC(buf(1,1,1,1,1,1,1)) + namelen = LEN(dset_name) + type_id = h5kind_to_type(KIND(buf(1,1,1,1,1,1,1)), H5_INTEGER_KIND) + errcode = h5ltread_dataset_c(loc_id, namelen, dset_name, type_id, f_ptr) + END SUBROUTINE h5ltread_dataset_int_kind_1_rank_7 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_int_kind_2_rank_0 +!DEC$endif + SUBROUTINE h5ltread_dataset_int_kind_2_rank_0(loc_id,dset_name, buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(KIND=2),INTENT(INOUT), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + INTEGER(hid_t) :: type_id + f_ptr = C_LOC(buf ) + namelen = LEN(dset_name) + type_id = h5kind_to_type(KIND(buf ), H5_INTEGER_KIND) + errcode = h5ltread_dataset_c(loc_id, namelen, dset_name, type_id, f_ptr) + END SUBROUTINE h5ltread_dataset_int_kind_2_rank_0 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_int_kind_2_rank_1 +!DEC$endif + SUBROUTINE h5ltread_dataset_int_kind_2_rank_1(loc_id,dset_name, buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(KIND=2),INTENT(INOUT), DIMENSION(dims(1)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + INTEGER(hid_t) :: type_id + f_ptr = C_LOC(buf(1) ) + namelen = LEN(dset_name) + type_id = h5kind_to_type(KIND(buf(1) ), H5_INTEGER_KIND) + errcode = h5ltread_dataset_c(loc_id, namelen, dset_name, type_id, f_ptr) + END SUBROUTINE h5ltread_dataset_int_kind_2_rank_1 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_int_kind_2_rank_2 +!DEC$endif + SUBROUTINE h5ltread_dataset_int_kind_2_rank_2(loc_id,dset_name, buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(KIND=2),INTENT(INOUT), DIMENSION(dims(1),dims(2)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + INTEGER(hid_t) :: type_id + f_ptr = C_LOC(buf(1,1) ) + namelen = LEN(dset_name) + type_id = h5kind_to_type(KIND(buf(1,1) ), H5_INTEGER_KIND) + errcode = h5ltread_dataset_c(loc_id, namelen, dset_name, type_id, f_ptr) + END SUBROUTINE h5ltread_dataset_int_kind_2_rank_2 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_int_kind_2_rank_3 +!DEC$endif + SUBROUTINE h5ltread_dataset_int_kind_2_rank_3(loc_id,dset_name, buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(KIND=2),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + INTEGER(hid_t) :: type_id + f_ptr = C_LOC(buf(1,1,1) ) + namelen = LEN(dset_name) + type_id = h5kind_to_type(KIND(buf(1,1,1) ), H5_INTEGER_KIND) + errcode = h5ltread_dataset_c(loc_id, namelen, dset_name, type_id, f_ptr) + END SUBROUTINE h5ltread_dataset_int_kind_2_rank_3 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_int_kind_2_rank_4 +!DEC$endif + SUBROUTINE h5ltread_dataset_int_kind_2_rank_4(loc_id,dset_name, buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(KIND=2),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + INTEGER(hid_t) :: type_id + f_ptr = C_LOC(buf(1,1,1,1) ) + namelen = LEN(dset_name) + type_id = h5kind_to_type(KIND(buf(1,1,1,1) ), H5_INTEGER_KIND) + errcode = h5ltread_dataset_c(loc_id, namelen, dset_name, type_id, f_ptr) + END SUBROUTINE h5ltread_dataset_int_kind_2_rank_4 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_int_kind_2_rank_5 +!DEC$endif + SUBROUTINE h5ltread_dataset_int_kind_2_rank_5(loc_id,dset_name, buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(KIND=2),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + INTEGER(hid_t) :: type_id + f_ptr = C_LOC(buf(1,1,1,1,1) ) + namelen = LEN(dset_name) + type_id = h5kind_to_type(KIND(buf(1,1,1,1,1) ), H5_INTEGER_KIND) + errcode = h5ltread_dataset_c(loc_id, namelen, dset_name, type_id, f_ptr) + END SUBROUTINE h5ltread_dataset_int_kind_2_rank_5 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_int_kind_2_rank_6 +!DEC$endif + SUBROUTINE h5ltread_dataset_int_kind_2_rank_6(loc_id,dset_name, buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(KIND=2),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + INTEGER(hid_t) :: type_id + f_ptr = C_LOC(buf(1,1,1,1,1,1) ) + namelen = LEN(dset_name) + type_id = h5kind_to_type(KIND(buf(1,1,1,1,1,1) ), H5_INTEGER_KIND) + errcode = h5ltread_dataset_c(loc_id, namelen, dset_name, type_id, f_ptr) + END SUBROUTINE h5ltread_dataset_int_kind_2_rank_6 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_int_kind_2_rank_7 +!DEC$endif + SUBROUTINE h5ltread_dataset_int_kind_2_rank_7(loc_id,dset_name, buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(KIND=2),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + INTEGER(hid_t) :: type_id + f_ptr = C_LOC(buf(1,1,1,1,1,1,1)) + namelen = LEN(dset_name) + type_id = h5kind_to_type(KIND(buf(1,1,1,1,1,1,1)), H5_INTEGER_KIND) + errcode = h5ltread_dataset_c(loc_id, namelen, dset_name, type_id, f_ptr) + END SUBROUTINE h5ltread_dataset_int_kind_2_rank_7 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_int_kind_4_rank_0 +!DEC$endif + SUBROUTINE h5ltread_dataset_int_kind_4_rank_0(loc_id,dset_name, buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(KIND=4),INTENT(INOUT), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + INTEGER(hid_t) :: type_id + f_ptr = C_LOC(buf ) + namelen = LEN(dset_name) + type_id = h5kind_to_type(KIND(buf ), H5_INTEGER_KIND) + errcode = h5ltread_dataset_c(loc_id, namelen, dset_name, type_id, f_ptr) + END SUBROUTINE h5ltread_dataset_int_kind_4_rank_0 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_int_kind_4_rank_1 +!DEC$endif + SUBROUTINE h5ltread_dataset_int_kind_4_rank_1(loc_id,dset_name, buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(KIND=4),INTENT(INOUT), DIMENSION(dims(1)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + INTEGER(hid_t) :: type_id + f_ptr = C_LOC(buf(1) ) + namelen = LEN(dset_name) + type_id = h5kind_to_type(KIND(buf(1) ), H5_INTEGER_KIND) + errcode = h5ltread_dataset_c(loc_id, namelen, dset_name, type_id, f_ptr) + END SUBROUTINE h5ltread_dataset_int_kind_4_rank_1 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_int_kind_4_rank_2 +!DEC$endif + SUBROUTINE h5ltread_dataset_int_kind_4_rank_2(loc_id,dset_name, buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(KIND=4),INTENT(INOUT), DIMENSION(dims(1),dims(2)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + INTEGER(hid_t) :: type_id + f_ptr = C_LOC(buf(1,1) ) + namelen = LEN(dset_name) + type_id = h5kind_to_type(KIND(buf(1,1) ), H5_INTEGER_KIND) + errcode = h5ltread_dataset_c(loc_id, namelen, dset_name, type_id, f_ptr) + END SUBROUTINE h5ltread_dataset_int_kind_4_rank_2 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_int_kind_4_rank_3 +!DEC$endif + SUBROUTINE h5ltread_dataset_int_kind_4_rank_3(loc_id,dset_name, buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(KIND=4),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + INTEGER(hid_t) :: type_id + f_ptr = C_LOC(buf(1,1,1) ) + namelen = LEN(dset_name) + type_id = h5kind_to_type(KIND(buf(1,1,1) ), H5_INTEGER_KIND) + errcode = h5ltread_dataset_c(loc_id, namelen, dset_name, type_id, f_ptr) + END SUBROUTINE h5ltread_dataset_int_kind_4_rank_3 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_int_kind_4_rank_4 +!DEC$endif + SUBROUTINE h5ltread_dataset_int_kind_4_rank_4(loc_id,dset_name, buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(KIND=4),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + INTEGER(hid_t) :: type_id + f_ptr = C_LOC(buf(1,1,1,1) ) + namelen = LEN(dset_name) + type_id = h5kind_to_type(KIND(buf(1,1,1,1) ), H5_INTEGER_KIND) + errcode = h5ltread_dataset_c(loc_id, namelen, dset_name, type_id, f_ptr) + END SUBROUTINE h5ltread_dataset_int_kind_4_rank_4 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_int_kind_4_rank_5 +!DEC$endif + SUBROUTINE h5ltread_dataset_int_kind_4_rank_5(loc_id,dset_name, buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(KIND=4),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + INTEGER(hid_t) :: type_id + f_ptr = C_LOC(buf(1,1,1,1,1) ) + namelen = LEN(dset_name) + type_id = h5kind_to_type(KIND(buf(1,1,1,1,1) ), H5_INTEGER_KIND) + errcode = h5ltread_dataset_c(loc_id, namelen, dset_name, type_id, f_ptr) + END SUBROUTINE h5ltread_dataset_int_kind_4_rank_5 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_int_kind_4_rank_6 +!DEC$endif + SUBROUTINE h5ltread_dataset_int_kind_4_rank_6(loc_id,dset_name, buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(KIND=4),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + INTEGER(hid_t) :: type_id + f_ptr = C_LOC(buf(1,1,1,1,1,1) ) + namelen = LEN(dset_name) + type_id = h5kind_to_type(KIND(buf(1,1,1,1,1,1) ), H5_INTEGER_KIND) + errcode = h5ltread_dataset_c(loc_id, namelen, dset_name, type_id, f_ptr) + END SUBROUTINE h5ltread_dataset_int_kind_4_rank_6 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_int_kind_4_rank_7 +!DEC$endif + SUBROUTINE h5ltread_dataset_int_kind_4_rank_7(loc_id,dset_name, buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(KIND=4),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + INTEGER(hid_t) :: type_id + f_ptr = C_LOC(buf(1,1,1,1,1,1,1)) + namelen = LEN(dset_name) + type_id = h5kind_to_type(KIND(buf(1,1,1,1,1,1,1)), H5_INTEGER_KIND) + errcode = h5ltread_dataset_c(loc_id, namelen, dset_name, type_id, f_ptr) + END SUBROUTINE h5ltread_dataset_int_kind_4_rank_7 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_int_kind_8_rank_0 +!DEC$endif + SUBROUTINE h5ltread_dataset_int_kind_8_rank_0(loc_id,dset_name, buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(KIND=8),INTENT(INOUT), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + INTEGER(hid_t) :: type_id + f_ptr = C_LOC(buf ) + namelen = LEN(dset_name) + type_id = h5kind_to_type(KIND(buf ), H5_INTEGER_KIND) + errcode = h5ltread_dataset_c(loc_id, namelen, dset_name, type_id, f_ptr) + END SUBROUTINE h5ltread_dataset_int_kind_8_rank_0 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_int_kind_8_rank_1 +!DEC$endif + SUBROUTINE h5ltread_dataset_int_kind_8_rank_1(loc_id,dset_name, buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(KIND=8),INTENT(INOUT), DIMENSION(dims(1)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + INTEGER(hid_t) :: type_id + f_ptr = C_LOC(buf(1) ) + namelen = LEN(dset_name) + type_id = h5kind_to_type(KIND(buf(1) ), H5_INTEGER_KIND) + errcode = h5ltread_dataset_c(loc_id, namelen, dset_name, type_id, f_ptr) + END SUBROUTINE h5ltread_dataset_int_kind_8_rank_1 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_int_kind_8_rank_2 +!DEC$endif + SUBROUTINE h5ltread_dataset_int_kind_8_rank_2(loc_id,dset_name, buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(KIND=8),INTENT(INOUT), DIMENSION(dims(1),dims(2)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + INTEGER(hid_t) :: type_id + f_ptr = C_LOC(buf(1,1) ) + namelen = LEN(dset_name) + type_id = h5kind_to_type(KIND(buf(1,1) ), H5_INTEGER_KIND) + errcode = h5ltread_dataset_c(loc_id, namelen, dset_name, type_id, f_ptr) + END SUBROUTINE h5ltread_dataset_int_kind_8_rank_2 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_int_kind_8_rank_3 +!DEC$endif + SUBROUTINE h5ltread_dataset_int_kind_8_rank_3(loc_id,dset_name, buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(KIND=8),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + INTEGER(hid_t) :: type_id + f_ptr = C_LOC(buf(1,1,1) ) + namelen = LEN(dset_name) + type_id = h5kind_to_type(KIND(buf(1,1,1) ), H5_INTEGER_KIND) + errcode = h5ltread_dataset_c(loc_id, namelen, dset_name, type_id, f_ptr) + END SUBROUTINE h5ltread_dataset_int_kind_8_rank_3 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_int_kind_8_rank_4 +!DEC$endif + SUBROUTINE h5ltread_dataset_int_kind_8_rank_4(loc_id,dset_name, buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(KIND=8),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + INTEGER(hid_t) :: type_id + f_ptr = C_LOC(buf(1,1,1,1) ) + namelen = LEN(dset_name) + type_id = h5kind_to_type(KIND(buf(1,1,1,1) ), H5_INTEGER_KIND) + errcode = h5ltread_dataset_c(loc_id, namelen, dset_name, type_id, f_ptr) + END SUBROUTINE h5ltread_dataset_int_kind_8_rank_4 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_int_kind_8_rank_5 +!DEC$endif + SUBROUTINE h5ltread_dataset_int_kind_8_rank_5(loc_id,dset_name, buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(KIND=8),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + INTEGER(hid_t) :: type_id + f_ptr = C_LOC(buf(1,1,1,1,1) ) + namelen = LEN(dset_name) + type_id = h5kind_to_type(KIND(buf(1,1,1,1,1) ), H5_INTEGER_KIND) + errcode = h5ltread_dataset_c(loc_id, namelen, dset_name, type_id, f_ptr) + END SUBROUTINE h5ltread_dataset_int_kind_8_rank_5 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_int_kind_8_rank_6 +!DEC$endif + SUBROUTINE h5ltread_dataset_int_kind_8_rank_6(loc_id,dset_name, buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(KIND=8),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + INTEGER(hid_t) :: type_id + f_ptr = C_LOC(buf(1,1,1,1,1,1) ) + namelen = LEN(dset_name) + type_id = h5kind_to_type(KIND(buf(1,1,1,1,1,1) ), H5_INTEGER_KIND) + errcode = h5ltread_dataset_c(loc_id, namelen, dset_name, type_id, f_ptr) + END SUBROUTINE h5ltread_dataset_int_kind_8_rank_6 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_int_kind_8_rank_7 +!DEC$endif + SUBROUTINE h5ltread_dataset_int_kind_8_rank_7(loc_id,dset_name, buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(KIND=8),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + INTEGER(hid_t) :: type_id + f_ptr = C_LOC(buf(1,1,1,1,1,1,1)) + namelen = LEN(dset_name) + type_id = h5kind_to_type(KIND(buf(1,1,1,1,1,1,1)), H5_INTEGER_KIND) + errcode = h5ltread_dataset_c(loc_id, namelen, dset_name, type_id, f_ptr) + END SUBROUTINE h5ltread_dataset_int_kind_8_rank_7 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_int_kind_16_rank_0 +!DEC$endif + SUBROUTINE h5ltread_dataset_int_kind_16_rank_0(loc_id,dset_name, buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(KIND=16),INTENT(INOUT), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + INTEGER(hid_t) :: type_id + f_ptr = C_LOC(buf ) + namelen = LEN(dset_name) + type_id = h5kind_to_type(KIND(buf ), H5_INTEGER_KIND) + errcode = h5ltread_dataset_c(loc_id, namelen, dset_name, type_id, f_ptr) + END SUBROUTINE h5ltread_dataset_int_kind_16_rank_0 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_int_kind_16_rank_1 +!DEC$endif + SUBROUTINE h5ltread_dataset_int_kind_16_rank_1(loc_id,dset_name, buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(KIND=16),INTENT(INOUT), DIMENSION(dims(1)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + INTEGER(hid_t) :: type_id + f_ptr = C_LOC(buf(1) ) + namelen = LEN(dset_name) + type_id = h5kind_to_type(KIND(buf(1) ), H5_INTEGER_KIND) + errcode = h5ltread_dataset_c(loc_id, namelen, dset_name, type_id, f_ptr) + END SUBROUTINE h5ltread_dataset_int_kind_16_rank_1 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_int_kind_16_rank_2 +!DEC$endif + SUBROUTINE h5ltread_dataset_int_kind_16_rank_2(loc_id,dset_name, buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(KIND=16),INTENT(INOUT), DIMENSION(dims(1),dims(2)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + INTEGER(hid_t) :: type_id + f_ptr = C_LOC(buf(1,1) ) + namelen = LEN(dset_name) + type_id = h5kind_to_type(KIND(buf(1,1) ), H5_INTEGER_KIND) + errcode = h5ltread_dataset_c(loc_id, namelen, dset_name, type_id, f_ptr) + END SUBROUTINE h5ltread_dataset_int_kind_16_rank_2 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_int_kind_16_rank_3 +!DEC$endif + SUBROUTINE h5ltread_dataset_int_kind_16_rank_3(loc_id,dset_name, buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(KIND=16),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + INTEGER(hid_t) :: type_id + f_ptr = C_LOC(buf(1,1,1) ) + namelen = LEN(dset_name) + type_id = h5kind_to_type(KIND(buf(1,1,1) ), H5_INTEGER_KIND) + errcode = h5ltread_dataset_c(loc_id, namelen, dset_name, type_id, f_ptr) + END SUBROUTINE h5ltread_dataset_int_kind_16_rank_3 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_int_kind_16_rank_4 +!DEC$endif + SUBROUTINE h5ltread_dataset_int_kind_16_rank_4(loc_id,dset_name, buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(KIND=16),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + INTEGER(hid_t) :: type_id + f_ptr = C_LOC(buf(1,1,1,1) ) + namelen = LEN(dset_name) + type_id = h5kind_to_type(KIND(buf(1,1,1,1) ), H5_INTEGER_KIND) + errcode = h5ltread_dataset_c(loc_id, namelen, dset_name, type_id, f_ptr) + END SUBROUTINE h5ltread_dataset_int_kind_16_rank_4 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_int_kind_16_rank_5 +!DEC$endif + SUBROUTINE h5ltread_dataset_int_kind_16_rank_5(loc_id,dset_name, buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(KIND=16),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + INTEGER(hid_t) :: type_id + f_ptr = C_LOC(buf(1,1,1,1,1) ) + namelen = LEN(dset_name) + type_id = h5kind_to_type(KIND(buf(1,1,1,1,1) ), H5_INTEGER_KIND) + errcode = h5ltread_dataset_c(loc_id, namelen, dset_name, type_id, f_ptr) + END SUBROUTINE h5ltread_dataset_int_kind_16_rank_5 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_int_kind_16_rank_6 +!DEC$endif + SUBROUTINE h5ltread_dataset_int_kind_16_rank_6(loc_id,dset_name, buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(KIND=16),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + INTEGER(hid_t) :: type_id + f_ptr = C_LOC(buf(1,1,1,1,1,1) ) + namelen = LEN(dset_name) + type_id = h5kind_to_type(KIND(buf(1,1,1,1,1,1) ), H5_INTEGER_KIND) + errcode = h5ltread_dataset_c(loc_id, namelen, dset_name, type_id, f_ptr) + END SUBROUTINE h5ltread_dataset_int_kind_16_rank_6 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5ltread_dataset_int_kind_16_rank_7 +!DEC$endif + SUBROUTINE h5ltread_dataset_int_kind_16_rank_7(loc_id,dset_name, buf,dims,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER(hsize_t), DIMENSION(*), INTENT(in) :: dims + INTEGER(KIND=16),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + INTEGER(size_t) :: namelen + INTEGER(hid_t) :: type_id + f_ptr = C_LOC(buf(1,1,1,1,1,1,1)) + namelen = LEN(dset_name) + type_id = h5kind_to_type(KIND(buf(1,1,1,1,1,1,1)), H5_INTEGER_KIND) + errcode = h5ltread_dataset_c(loc_id, namelen, dset_name, type_id, f_ptr) + END SUBROUTINE h5ltread_dataset_int_kind_16_rank_7 +END MODULE H5LT diff --git a/config/fortpregen/gfortran/H5TBff_gen.F90 b/config/fortpregen/gfortran/H5TBff_gen.F90 new file mode 100644 index 00000000000..f650e53f637 --- /dev/null +++ b/config/fortpregen/gfortran/H5TBff_gen.F90 @@ -0,0 +1,465 @@ +!****h* ROBODoc/H5TBff_gen.F90 +! +! NAME +! H5TBff_gen +! +! PURPOSE +! This module is generated at build by H5HL_buildiface.F90 to handle all the +! detected REAL/INTEGER KINDs for APIs being passed those KINDs. Currently these +! are H5LT and H5TB APIs +! +! COPYRIGHT +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! 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 LICENSE 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. * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! +! AUTHOR +! H5HL_buildiface.F90 +! +!***** + +MODULE H5TB + USE, INTRINSIC :: ISO_C_BINDING + USE h5fortran_types + USE H5TB_CONST + IMPLICIT NONE + INTERFACE h5tbwrite_field_name_f + MODULE PROCEDURE h5tbwrite_field_name_kind_4_rank_1 + MODULE PROCEDURE h5tbwrite_field_name_kind_8_rank_1 + MODULE PROCEDURE h5tbwrite_field_name_kind_10_rank_1 + MODULE PROCEDURE h5tbwrite_field_name_kind_16_rank_1 + END INTERFACE + INTERFACE h5tbread_field_name_f + MODULE PROCEDURE h5tbread_field_name_kind_4_rank_1 + MODULE PROCEDURE h5tbread_field_name_kind_8_rank_1 + MODULE PROCEDURE h5tbread_field_name_kind_10_rank_1 + MODULE PROCEDURE h5tbread_field_name_kind_16_rank_1 + END INTERFACE + INTERFACE h5tbwrite_field_index_f + MODULE PROCEDURE h5tbwrite_field_index_kind_4_rank_1 + MODULE PROCEDURE h5tbwrite_field_index_kind_8_rank_1 + MODULE PROCEDURE h5tbwrite_field_index_kind_10_rank_1 + MODULE PROCEDURE h5tbwrite_field_index_kind_16_rank_1 + END INTERFACE + INTERFACE h5tbread_field_index_f + MODULE PROCEDURE h5tbread_field_index_kind_4_rank_1 + MODULE PROCEDURE h5tbread_field_index_kind_8_rank_1 + MODULE PROCEDURE h5tbread_field_index_kind_10_rank_1 + MODULE PROCEDURE h5tbread_field_index_kind_16_rank_1 + END INTERFACE + INTERFACE h5tbinsert_field_f + MODULE PROCEDURE h5tbinsert_field_kind_4_rank_1 + MODULE PROCEDURE h5tbinsert_field_kind_8_rank_1 + MODULE PROCEDURE h5tbinsert_field_kind_10_rank_1 + MODULE PROCEDURE h5tbinsert_field_kind_16_rank_1 + END INTERFACE +CONTAINS +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5tbwrite_field_name_kind_4_rank_1 +!DEC$endif + SUBROUTINE h5tbwrite_field_name_kind_4_rank_1(loc_id,dset_name,field_name,start, nrecords,type_size,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + CHARACTER(LEN=*), INTENT(in) :: field_name + INTEGER(hsize_t), INTENT(in) :: start + INTEGER(hsize_t), INTENT(in) :: nrecords + INTEGER(size_t), INTENT(in) :: type_size + REAL(KIND=4),INTENT(IN), DIMENSION(*), TARGET :: buf + INTEGER :: errcode + INTEGER(size_t) :: namelen + INTEGER(size_t) :: namelen1 + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1) ) + namelen = LEN(dset_name) + namelen1 = LEN(field_name) + errcode = h5tbwrite_field_name_c(loc_id,namelen,dset_name,namelen1,field_name,start,nrecords,type_size,f_ptr) + END SUBROUTINE h5tbwrite_field_name_kind_4_rank_1 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5tbwrite_field_name_kind_8_rank_1 +!DEC$endif + SUBROUTINE h5tbwrite_field_name_kind_8_rank_1(loc_id,dset_name,field_name,start, nrecords,type_size,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + CHARACTER(LEN=*), INTENT(in) :: field_name + INTEGER(hsize_t), INTENT(in) :: start + INTEGER(hsize_t), INTENT(in) :: nrecords + INTEGER(size_t), INTENT(in) :: type_size + REAL(KIND=8),INTENT(IN), DIMENSION(*), TARGET :: buf + INTEGER :: errcode + INTEGER(size_t) :: namelen + INTEGER(size_t) :: namelen1 + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1) ) + namelen = LEN(dset_name) + namelen1 = LEN(field_name) + errcode = h5tbwrite_field_name_c(loc_id,namelen,dset_name,namelen1,field_name,start,nrecords,type_size,f_ptr) + END SUBROUTINE h5tbwrite_field_name_kind_8_rank_1 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5tbwrite_field_name_kind_10_rank_1 +!DEC$endif + SUBROUTINE h5tbwrite_field_name_kind_10_rank_1(loc_id,dset_name,field_name,start, nrecords,type_size,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + CHARACTER(LEN=*), INTENT(in) :: field_name + INTEGER(hsize_t), INTENT(in) :: start + INTEGER(hsize_t), INTENT(in) :: nrecords + INTEGER(size_t), INTENT(in) :: type_size + REAL(KIND=10),INTENT(IN), DIMENSION(*), TARGET :: buf + INTEGER :: errcode + INTEGER(size_t) :: namelen + INTEGER(size_t) :: namelen1 + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1) ) + namelen = LEN(dset_name) + namelen1 = LEN(field_name) + errcode = h5tbwrite_field_name_c(loc_id,namelen,dset_name,namelen1,field_name,start,nrecords,type_size,f_ptr) + END SUBROUTINE h5tbwrite_field_name_kind_10_rank_1 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5tbwrite_field_name_kind_16_rank_1 +!DEC$endif + SUBROUTINE h5tbwrite_field_name_kind_16_rank_1(loc_id,dset_name,field_name,start, nrecords,type_size,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + CHARACTER(LEN=*), INTENT(in) :: field_name + INTEGER(hsize_t), INTENT(in) :: start + INTEGER(hsize_t), INTENT(in) :: nrecords + INTEGER(size_t), INTENT(in) :: type_size + REAL(KIND=16),INTENT(IN), DIMENSION(*), TARGET :: buf + INTEGER :: errcode + INTEGER(size_t) :: namelen + INTEGER(size_t) :: namelen1 + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1) ) + namelen = LEN(dset_name) + namelen1 = LEN(field_name) + errcode = h5tbwrite_field_name_c(loc_id,namelen,dset_name,namelen1,field_name,start,nrecords,type_size,f_ptr) + END SUBROUTINE h5tbwrite_field_name_kind_16_rank_1 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5tbread_field_name_kind_4_rank_1 +!DEC$endif + SUBROUTINE h5tbread_field_name_kind_4_rank_1(loc_id,dset_name,field_name,start, nrecords,type_size,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + CHARACTER(LEN=*), INTENT(in) :: field_name + INTEGER(hsize_t), INTENT(in) :: start + INTEGER(hsize_t), INTENT(in) :: nrecords + INTEGER(size_t), INTENT(in) :: type_size + REAL(KIND=4),INTENT(INOUT), DIMENSION(*), TARGET :: buf + INTEGER :: errcode + INTEGER(size_t) :: namelen + INTEGER(size_t) :: namelen1 + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1) ) + namelen = LEN(dset_name) + namelen1 = LEN(field_name) + errcode = h5tbread_field_name_c(loc_id,namelen,dset_name,namelen1,field_name,start,nrecords,type_size,f_ptr) + END SUBROUTINE h5tbread_field_name_kind_4_rank_1 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5tbread_field_name_kind_8_rank_1 +!DEC$endif + SUBROUTINE h5tbread_field_name_kind_8_rank_1(loc_id,dset_name,field_name,start, nrecords,type_size,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + CHARACTER(LEN=*), INTENT(in) :: field_name + INTEGER(hsize_t), INTENT(in) :: start + INTEGER(hsize_t), INTENT(in) :: nrecords + INTEGER(size_t), INTENT(in) :: type_size + REAL(KIND=8),INTENT(INOUT), DIMENSION(*), TARGET :: buf + INTEGER :: errcode + INTEGER(size_t) :: namelen + INTEGER(size_t) :: namelen1 + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1) ) + namelen = LEN(dset_name) + namelen1 = LEN(field_name) + errcode = h5tbread_field_name_c(loc_id,namelen,dset_name,namelen1,field_name,start,nrecords,type_size,f_ptr) + END SUBROUTINE h5tbread_field_name_kind_8_rank_1 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5tbread_field_name_kind_10_rank_1 +!DEC$endif + SUBROUTINE h5tbread_field_name_kind_10_rank_1(loc_id,dset_name,field_name,start, nrecords,type_size,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + CHARACTER(LEN=*), INTENT(in) :: field_name + INTEGER(hsize_t), INTENT(in) :: start + INTEGER(hsize_t), INTENT(in) :: nrecords + INTEGER(size_t), INTENT(in) :: type_size + REAL(KIND=10),INTENT(INOUT), DIMENSION(*), TARGET :: buf + INTEGER :: errcode + INTEGER(size_t) :: namelen + INTEGER(size_t) :: namelen1 + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1) ) + namelen = LEN(dset_name) + namelen1 = LEN(field_name) + errcode = h5tbread_field_name_c(loc_id,namelen,dset_name,namelen1,field_name,start,nrecords,type_size,f_ptr) + END SUBROUTINE h5tbread_field_name_kind_10_rank_1 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5tbread_field_name_kind_16_rank_1 +!DEC$endif + SUBROUTINE h5tbread_field_name_kind_16_rank_1(loc_id,dset_name,field_name,start, nrecords,type_size,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + CHARACTER(LEN=*), INTENT(in) :: field_name + INTEGER(hsize_t), INTENT(in) :: start + INTEGER(hsize_t), INTENT(in) :: nrecords + INTEGER(size_t), INTENT(in) :: type_size + REAL(KIND=16),INTENT(INOUT), DIMENSION(*), TARGET :: buf + INTEGER :: errcode + INTEGER(size_t) :: namelen + INTEGER(size_t) :: namelen1 + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1) ) + namelen = LEN(dset_name) + namelen1 = LEN(field_name) + errcode = h5tbread_field_name_c(loc_id,namelen,dset_name,namelen1,field_name,start,nrecords,type_size,f_ptr) + END SUBROUTINE h5tbread_field_name_kind_16_rank_1 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5tbwrite_field_index_kind_4_rank_1 +!DEC$endif + SUBROUTINE h5tbwrite_field_index_kind_4_rank_1(loc_id,dset_name,field_index,start, nrecords,type_size,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(in) :: field_index + INTEGER(hsize_t), INTENT(in) :: start + INTEGER(hsize_t), INTENT(in) :: nrecords + INTEGER(size_t), INTENT(in) :: type_size + REAL(KIND=4),INTENT(IN), DIMENSION(*), TARGET :: buf + INTEGER :: errcode + INTEGER(size_t) :: namelen + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1) ) + namelen = LEN(dset_name) + errcode = h5tbwrite_field_index_c(loc_id,namelen,dset_name,field_index,start,nrecords,type_size,f_ptr) + END SUBROUTINE h5tbwrite_field_index_kind_4_rank_1 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5tbwrite_field_index_kind_8_rank_1 +!DEC$endif + SUBROUTINE h5tbwrite_field_index_kind_8_rank_1(loc_id,dset_name,field_index,start, nrecords,type_size,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(in) :: field_index + INTEGER(hsize_t), INTENT(in) :: start + INTEGER(hsize_t), INTENT(in) :: nrecords + INTEGER(size_t), INTENT(in) :: type_size + REAL(KIND=8),INTENT(IN), DIMENSION(*), TARGET :: buf + INTEGER :: errcode + INTEGER(size_t) :: namelen + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1) ) + namelen = LEN(dset_name) + errcode = h5tbwrite_field_index_c(loc_id,namelen,dset_name,field_index,start,nrecords,type_size,f_ptr) + END SUBROUTINE h5tbwrite_field_index_kind_8_rank_1 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5tbwrite_field_index_kind_10_rank_1 +!DEC$endif + SUBROUTINE h5tbwrite_field_index_kind_10_rank_1(loc_id,dset_name,field_index,start, nrecords,type_size,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(in) :: field_index + INTEGER(hsize_t), INTENT(in) :: start + INTEGER(hsize_t), INTENT(in) :: nrecords + INTEGER(size_t), INTENT(in) :: type_size + REAL(KIND=10),INTENT(IN), DIMENSION(*), TARGET :: buf + INTEGER :: errcode + INTEGER(size_t) :: namelen + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1) ) + namelen = LEN(dset_name) + errcode = h5tbwrite_field_index_c(loc_id,namelen,dset_name,field_index,start,nrecords,type_size,f_ptr) + END SUBROUTINE h5tbwrite_field_index_kind_10_rank_1 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5tbwrite_field_index_kind_16_rank_1 +!DEC$endif + SUBROUTINE h5tbwrite_field_index_kind_16_rank_1(loc_id,dset_name,field_index,start, nrecords,type_size,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(in) :: field_index + INTEGER(hsize_t), INTENT(in) :: start + INTEGER(hsize_t), INTENT(in) :: nrecords + INTEGER(size_t), INTENT(in) :: type_size + REAL(KIND=16),INTENT(IN), DIMENSION(*), TARGET :: buf + INTEGER :: errcode + INTEGER(size_t) :: namelen + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1) ) + namelen = LEN(dset_name) + errcode = h5tbwrite_field_index_c(loc_id,namelen,dset_name,field_index,start,nrecords,type_size,f_ptr) + END SUBROUTINE h5tbwrite_field_index_kind_16_rank_1 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5tbread_field_index_kind_4_rank_1 +!DEC$endif + SUBROUTINE h5tbread_field_index_kind_4_rank_1(loc_id,dset_name,field_index,start, nrecords,type_size,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(in) :: field_index + INTEGER(hsize_t), INTENT(in) :: start + INTEGER(hsize_t), INTENT(in) :: nrecords + INTEGER(size_t), INTENT(in) :: type_size + REAL(KIND=4),INTENT(INOUT), DIMENSION(*), TARGET :: buf + INTEGER :: errcode + INTEGER(size_t) :: namelen + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1) ) + namelen = LEN(dset_name) + errcode = h5tbread_field_index_c(loc_id,namelen,dset_name,field_index,start,nrecords,type_size,f_ptr) + END SUBROUTINE h5tbread_field_index_kind_4_rank_1 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5tbread_field_index_kind_8_rank_1 +!DEC$endif + SUBROUTINE h5tbread_field_index_kind_8_rank_1(loc_id,dset_name,field_index,start, nrecords,type_size,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(in) :: field_index + INTEGER(hsize_t), INTENT(in) :: start + INTEGER(hsize_t), INTENT(in) :: nrecords + INTEGER(size_t), INTENT(in) :: type_size + REAL(KIND=8),INTENT(INOUT), DIMENSION(*), TARGET :: buf + INTEGER :: errcode + INTEGER(size_t) :: namelen + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1) ) + namelen = LEN(dset_name) + errcode = h5tbread_field_index_c(loc_id,namelen,dset_name,field_index,start,nrecords,type_size,f_ptr) + END SUBROUTINE h5tbread_field_index_kind_8_rank_1 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5tbread_field_index_kind_10_rank_1 +!DEC$endif + SUBROUTINE h5tbread_field_index_kind_10_rank_1(loc_id,dset_name,field_index,start, nrecords,type_size,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(in) :: field_index + INTEGER(hsize_t), INTENT(in) :: start + INTEGER(hsize_t), INTENT(in) :: nrecords + INTEGER(size_t), INTENT(in) :: type_size + REAL(KIND=10),INTENT(INOUT), DIMENSION(*), TARGET :: buf + INTEGER :: errcode + INTEGER(size_t) :: namelen + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1) ) + namelen = LEN(dset_name) + errcode = h5tbread_field_index_c(loc_id,namelen,dset_name,field_index,start,nrecords,type_size,f_ptr) + END SUBROUTINE h5tbread_field_index_kind_10_rank_1 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5tbread_field_index_kind_16_rank_1 +!DEC$endif + SUBROUTINE h5tbread_field_index_kind_16_rank_1(loc_id,dset_name,field_index,start, nrecords,type_size,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t) , INTENT(IN) :: loc_id + CHARACTER(LEN=*), INTENT(IN) :: dset_name + INTEGER, INTENT(in) :: field_index + INTEGER(hsize_t), INTENT(in) :: start + INTEGER(hsize_t), INTENT(in) :: nrecords + INTEGER(size_t), INTENT(in) :: type_size + REAL(KIND=16),INTENT(INOUT), DIMENSION(*), TARGET :: buf + INTEGER :: errcode + INTEGER(size_t) :: namelen + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1) ) + namelen = LEN(dset_name) + errcode = h5tbread_field_index_c(loc_id,namelen,dset_name,field_index,start,nrecords,type_size,f_ptr) + END SUBROUTINE h5tbread_field_index_kind_16_rank_1 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5tbinsert_field_kind_4_rank_1 +!DEC$endif + SUBROUTINE h5tbinsert_field_kind_4_rank_1(loc_id,dset_name,field_name,field_type,field_index,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t), INTENT(in) :: loc_id + CHARACTER(LEN=*), INTENT(in) :: dset_name + CHARACTER(LEN=*), INTENT(in) :: field_name + INTEGER(hid_t), INTENT(in) :: field_type + INTEGER, INTENT(in) :: field_index + REAL(KIND=4), INTENT(IN), DIMENSION(*), TARGET :: buf + INTEGER(size_t) :: namelen + INTEGER(size_t) :: namelen1 + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1) ) + namelen = LEN(dset_name) + namelen1 = LEN(field_name) + errcode = h5tbinsert_field_c(loc_id,namelen,dset_name,namelen1,field_name,field_type,field_index,f_ptr) + END SUBROUTINE h5tbinsert_field_kind_4_rank_1 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5tbinsert_field_kind_8_rank_1 +!DEC$endif + SUBROUTINE h5tbinsert_field_kind_8_rank_1(loc_id,dset_name,field_name,field_type,field_index,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t), INTENT(in) :: loc_id + CHARACTER(LEN=*), INTENT(in) :: dset_name + CHARACTER(LEN=*), INTENT(in) :: field_name + INTEGER(hid_t), INTENT(in) :: field_type + INTEGER, INTENT(in) :: field_index + REAL(KIND=8), INTENT(IN), DIMENSION(*), TARGET :: buf + INTEGER(size_t) :: namelen + INTEGER(size_t) :: namelen1 + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1) ) + namelen = LEN(dset_name) + namelen1 = LEN(field_name) + errcode = h5tbinsert_field_c(loc_id,namelen,dset_name,namelen1,field_name,field_type,field_index,f_ptr) + END SUBROUTINE h5tbinsert_field_kind_8_rank_1 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5tbinsert_field_kind_10_rank_1 +!DEC$endif + SUBROUTINE h5tbinsert_field_kind_10_rank_1(loc_id,dset_name,field_name,field_type,field_index,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t), INTENT(in) :: loc_id + CHARACTER(LEN=*), INTENT(in) :: dset_name + CHARACTER(LEN=*), INTENT(in) :: field_name + INTEGER(hid_t), INTENT(in) :: field_type + INTEGER, INTENT(in) :: field_index + REAL(KIND=10), INTENT(IN), DIMENSION(*), TARGET :: buf + INTEGER(size_t) :: namelen + INTEGER(size_t) :: namelen1 + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1) ) + namelen = LEN(dset_name) + namelen1 = LEN(field_name) + errcode = h5tbinsert_field_c(loc_id,namelen,dset_name,namelen1,field_name,field_type,field_index,f_ptr) + END SUBROUTINE h5tbinsert_field_kind_10_rank_1 +!DEC$if defined(BUILD_HDF5_HL_DLL) +!DEC$attributes dllexport :: h5tbinsert_field_kind_16_rank_1 +!DEC$endif + SUBROUTINE h5tbinsert_field_kind_16_rank_1(loc_id,dset_name,field_name,field_type,field_index,buf,errcode) + IMPLICIT NONE + INTEGER(hid_t), INTENT(in) :: loc_id + CHARACTER(LEN=*), INTENT(in) :: dset_name + CHARACTER(LEN=*), INTENT(in) :: field_name + INTEGER(hid_t), INTENT(in) :: field_type + INTEGER, INTENT(in) :: field_index + REAL(KIND=16), INTENT(IN), DIMENSION(*), TARGET :: buf + INTEGER(size_t) :: namelen + INTEGER(size_t) :: namelen1 + INTEGER :: errcode + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1) ) + namelen = LEN(dset_name) + namelen1 = LEN(field_name) + errcode = h5tbinsert_field_c(loc_id,namelen,dset_name,namelen1,field_name,field_type,field_index,f_ptr) + END SUBROUTINE h5tbinsert_field_kind_16_rank_1 +END MODULE H5TB diff --git a/config/fortpregen/gfortran/H5_gen.F90 b/config/fortpregen/gfortran/H5_gen.F90 new file mode 100644 index 00000000000..e090fc755e3 --- /dev/null +++ b/config/fortpregen/gfortran/H5_gen.F90 @@ -0,0 +1,7725 @@ +!****h* ROBODoc/H5_gen.F90 +! +! NAME +! H5_gen +! +! PURPOSE +! This module is generated at build by H5_buildiface.F90 to handle all the +! detected KINDs for APIs being passed INTEGERs, REALs and CHARACTERs. Currently +! these are H5A, H5D and H5P APIs +! +! COPYRIGHT +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! 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 LICENSE 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. * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! +! AUTHOR +! H5_buildiface.F90 +! +!***** + +MODULE H5_GEN + USE, INTRINSIC :: ISO_C_BINDING, ONLY : C_PTR, C_LOC + USE H5GLOBAL + USE H5A + USE H5D + USE H5P + IMPLICIT NONE + PRIVATE h5awrite_rkind_4_rank_0 + PRIVATE h5awrite_rkind_4_rank_1 + PRIVATE h5awrite_rkind_4_rank_2 + PRIVATE h5awrite_rkind_4_rank_3 + PRIVATE h5awrite_rkind_4_rank_4 + PRIVATE h5awrite_rkind_4_rank_5 + PRIVATE h5awrite_rkind_4_rank_6 + PRIVATE h5awrite_rkind_4_rank_7 + PRIVATE h5awrite_rkind_8_rank_0 + PRIVATE h5awrite_rkind_8_rank_1 + PRIVATE h5awrite_rkind_8_rank_2 + PRIVATE h5awrite_rkind_8_rank_3 + PRIVATE h5awrite_rkind_8_rank_4 + PRIVATE h5awrite_rkind_8_rank_5 + PRIVATE h5awrite_rkind_8_rank_6 + PRIVATE h5awrite_rkind_8_rank_7 + PRIVATE h5awrite_rkind_10_rank_0 + PRIVATE h5awrite_rkind_10_rank_1 + PRIVATE h5awrite_rkind_10_rank_2 + PRIVATE h5awrite_rkind_10_rank_3 + PRIVATE h5awrite_rkind_10_rank_4 + PRIVATE h5awrite_rkind_10_rank_5 + PRIVATE h5awrite_rkind_10_rank_6 + PRIVATE h5awrite_rkind_10_rank_7 + PRIVATE h5awrite_rkind_16_rank_0 + PRIVATE h5awrite_rkind_16_rank_1 + PRIVATE h5awrite_rkind_16_rank_2 + PRIVATE h5awrite_rkind_16_rank_3 + PRIVATE h5awrite_rkind_16_rank_4 + PRIVATE h5awrite_rkind_16_rank_5 + PRIVATE h5awrite_rkind_16_rank_6 + PRIVATE h5awrite_rkind_16_rank_7 + PRIVATE h5awrite_ikind_1_rank_0 + PRIVATE h5awrite_ikind_1_rank_1 + PRIVATE h5awrite_ikind_1_rank_2 + PRIVATE h5awrite_ikind_1_rank_3 + PRIVATE h5awrite_ikind_1_rank_4 + PRIVATE h5awrite_ikind_1_rank_5 + PRIVATE h5awrite_ikind_1_rank_6 + PRIVATE h5awrite_ikind_1_rank_7 + PRIVATE h5awrite_ikind_2_rank_0 + PRIVATE h5awrite_ikind_2_rank_1 + PRIVATE h5awrite_ikind_2_rank_2 + PRIVATE h5awrite_ikind_2_rank_3 + PRIVATE h5awrite_ikind_2_rank_4 + PRIVATE h5awrite_ikind_2_rank_5 + PRIVATE h5awrite_ikind_2_rank_6 + PRIVATE h5awrite_ikind_2_rank_7 + PRIVATE h5awrite_ikind_4_rank_0 + PRIVATE h5awrite_ikind_4_rank_1 + PRIVATE h5awrite_ikind_4_rank_2 + PRIVATE h5awrite_ikind_4_rank_3 + PRIVATE h5awrite_ikind_4_rank_4 + PRIVATE h5awrite_ikind_4_rank_5 + PRIVATE h5awrite_ikind_4_rank_6 + PRIVATE h5awrite_ikind_4_rank_7 + PRIVATE h5awrite_ikind_8_rank_0 + PRIVATE h5awrite_ikind_8_rank_1 + PRIVATE h5awrite_ikind_8_rank_2 + PRIVATE h5awrite_ikind_8_rank_3 + PRIVATE h5awrite_ikind_8_rank_4 + PRIVATE h5awrite_ikind_8_rank_5 + PRIVATE h5awrite_ikind_8_rank_6 + PRIVATE h5awrite_ikind_8_rank_7 + PRIVATE h5awrite_ikind_16_rank_0 + PRIVATE h5awrite_ikind_16_rank_1 + PRIVATE h5awrite_ikind_16_rank_2 + PRIVATE h5awrite_ikind_16_rank_3 + PRIVATE h5awrite_ikind_16_rank_4 + PRIVATE h5awrite_ikind_16_rank_5 + PRIVATE h5awrite_ikind_16_rank_6 + PRIVATE h5awrite_ikind_16_rank_7 + PRIVATE h5awrite_ckind_rank_1 + PRIVATE h5awrite_ckind_rank_2 + PRIVATE h5awrite_ckind_rank_3 + PRIVATE h5awrite_ckind_rank_4 + PRIVATE h5awrite_ckind_rank_5 + PRIVATE h5awrite_ckind_rank_6 + PRIVATE h5awrite_ckind_rank_7 + PRIVATE h5aread_rkind_4_rank_0 + PRIVATE h5aread_rkind_4_rank_1 + PRIVATE h5aread_rkind_4_rank_2 + PRIVATE h5aread_rkind_4_rank_3 + PRIVATE h5aread_rkind_4_rank_4 + PRIVATE h5aread_rkind_4_rank_5 + PRIVATE h5aread_rkind_4_rank_6 + PRIVATE h5aread_rkind_4_rank_7 + PRIVATE h5aread_rkind_8_rank_0 + PRIVATE h5aread_rkind_8_rank_1 + PRIVATE h5aread_rkind_8_rank_2 + PRIVATE h5aread_rkind_8_rank_3 + PRIVATE h5aread_rkind_8_rank_4 + PRIVATE h5aread_rkind_8_rank_5 + PRIVATE h5aread_rkind_8_rank_6 + PRIVATE h5aread_rkind_8_rank_7 + PRIVATE h5aread_rkind_10_rank_0 + PRIVATE h5aread_rkind_10_rank_1 + PRIVATE h5aread_rkind_10_rank_2 + PRIVATE h5aread_rkind_10_rank_3 + PRIVATE h5aread_rkind_10_rank_4 + PRIVATE h5aread_rkind_10_rank_5 + PRIVATE h5aread_rkind_10_rank_6 + PRIVATE h5aread_rkind_10_rank_7 + PRIVATE h5aread_rkind_16_rank_0 + PRIVATE h5aread_rkind_16_rank_1 + PRIVATE h5aread_rkind_16_rank_2 + PRIVATE h5aread_rkind_16_rank_3 + PRIVATE h5aread_rkind_16_rank_4 + PRIVATE h5aread_rkind_16_rank_5 + PRIVATE h5aread_rkind_16_rank_6 + PRIVATE h5aread_rkind_16_rank_7 + PRIVATE h5aread_ikind_1_rank_0 + PRIVATE h5aread_ikind_1_rank_1 + PRIVATE h5aread_ikind_1_rank_2 + PRIVATE h5aread_ikind_1_rank_3 + PRIVATE h5aread_ikind_1_rank_4 + PRIVATE h5aread_ikind_1_rank_5 + PRIVATE h5aread_ikind_1_rank_6 + PRIVATE h5aread_ikind_1_rank_7 + PRIVATE h5aread_ikind_2_rank_0 + PRIVATE h5aread_ikind_2_rank_1 + PRIVATE h5aread_ikind_2_rank_2 + PRIVATE h5aread_ikind_2_rank_3 + PRIVATE h5aread_ikind_2_rank_4 + PRIVATE h5aread_ikind_2_rank_5 + PRIVATE h5aread_ikind_2_rank_6 + PRIVATE h5aread_ikind_2_rank_7 + PRIVATE h5aread_ikind_4_rank_0 + PRIVATE h5aread_ikind_4_rank_1 + PRIVATE h5aread_ikind_4_rank_2 + PRIVATE h5aread_ikind_4_rank_3 + PRIVATE h5aread_ikind_4_rank_4 + PRIVATE h5aread_ikind_4_rank_5 + PRIVATE h5aread_ikind_4_rank_6 + PRIVATE h5aread_ikind_4_rank_7 + PRIVATE h5aread_ikind_8_rank_0 + PRIVATE h5aread_ikind_8_rank_1 + PRIVATE h5aread_ikind_8_rank_2 + PRIVATE h5aread_ikind_8_rank_3 + PRIVATE h5aread_ikind_8_rank_4 + PRIVATE h5aread_ikind_8_rank_5 + PRIVATE h5aread_ikind_8_rank_6 + PRIVATE h5aread_ikind_8_rank_7 + PRIVATE h5aread_ikind_16_rank_0 + PRIVATE h5aread_ikind_16_rank_1 + PRIVATE h5aread_ikind_16_rank_2 + PRIVATE h5aread_ikind_16_rank_3 + PRIVATE h5aread_ikind_16_rank_4 + PRIVATE h5aread_ikind_16_rank_5 + PRIVATE h5aread_ikind_16_rank_6 + PRIVATE h5aread_ikind_16_rank_7 + PRIVATE h5aread_ckind_rank_1 + PRIVATE h5aread_ckind_rank_2 + PRIVATE h5aread_ckind_rank_3 + PRIVATE h5aread_ckind_rank_4 + PRIVATE h5aread_ckind_rank_5 + PRIVATE h5aread_ckind_rank_6 + PRIVATE h5aread_ckind_rank_7 + PRIVATE h5dwrite_rkind_4_rank_0 + PRIVATE h5dwrite_rkind_4_rank_1 + PRIVATE h5dwrite_rkind_4_rank_2 + PRIVATE h5dwrite_rkind_4_rank_3 + PRIVATE h5dwrite_rkind_4_rank_4 + PRIVATE h5dwrite_rkind_4_rank_5 + PRIVATE h5dwrite_rkind_4_rank_6 + PRIVATE h5dwrite_rkind_4_rank_7 + PRIVATE h5dwrite_rkind_8_rank_0 + PRIVATE h5dwrite_rkind_8_rank_1 + PRIVATE h5dwrite_rkind_8_rank_2 + PRIVATE h5dwrite_rkind_8_rank_3 + PRIVATE h5dwrite_rkind_8_rank_4 + PRIVATE h5dwrite_rkind_8_rank_5 + PRIVATE h5dwrite_rkind_8_rank_6 + PRIVATE h5dwrite_rkind_8_rank_7 + PRIVATE h5dwrite_rkind_10_rank_0 + PRIVATE h5dwrite_rkind_10_rank_1 + PRIVATE h5dwrite_rkind_10_rank_2 + PRIVATE h5dwrite_rkind_10_rank_3 + PRIVATE h5dwrite_rkind_10_rank_4 + PRIVATE h5dwrite_rkind_10_rank_5 + PRIVATE h5dwrite_rkind_10_rank_6 + PRIVATE h5dwrite_rkind_10_rank_7 + PRIVATE h5dwrite_rkind_16_rank_0 + PRIVATE h5dwrite_rkind_16_rank_1 + PRIVATE h5dwrite_rkind_16_rank_2 + PRIVATE h5dwrite_rkind_16_rank_3 + PRIVATE h5dwrite_rkind_16_rank_4 + PRIVATE h5dwrite_rkind_16_rank_5 + PRIVATE h5dwrite_rkind_16_rank_6 + PRIVATE h5dwrite_rkind_16_rank_7 + PRIVATE h5dwrite_ikind_1_rank_0 + PRIVATE h5dwrite_ikind_1_rank_1 + PRIVATE h5dwrite_ikind_1_rank_2 + PRIVATE h5dwrite_ikind_1_rank_3 + PRIVATE h5dwrite_ikind_1_rank_4 + PRIVATE h5dwrite_ikind_1_rank_5 + PRIVATE h5dwrite_ikind_1_rank_6 + PRIVATE h5dwrite_ikind_1_rank_7 + PRIVATE h5dwrite_ikind_2_rank_0 + PRIVATE h5dwrite_ikind_2_rank_1 + PRIVATE h5dwrite_ikind_2_rank_2 + PRIVATE h5dwrite_ikind_2_rank_3 + PRIVATE h5dwrite_ikind_2_rank_4 + PRIVATE h5dwrite_ikind_2_rank_5 + PRIVATE h5dwrite_ikind_2_rank_6 + PRIVATE h5dwrite_ikind_2_rank_7 + PRIVATE h5dwrite_ikind_4_rank_0 + PRIVATE h5dwrite_ikind_4_rank_1 + PRIVATE h5dwrite_ikind_4_rank_2 + PRIVATE h5dwrite_ikind_4_rank_3 + PRIVATE h5dwrite_ikind_4_rank_4 + PRIVATE h5dwrite_ikind_4_rank_5 + PRIVATE h5dwrite_ikind_4_rank_6 + PRIVATE h5dwrite_ikind_4_rank_7 + PRIVATE h5dwrite_ikind_8_rank_0 + PRIVATE h5dwrite_ikind_8_rank_1 + PRIVATE h5dwrite_ikind_8_rank_2 + PRIVATE h5dwrite_ikind_8_rank_3 + PRIVATE h5dwrite_ikind_8_rank_4 + PRIVATE h5dwrite_ikind_8_rank_5 + PRIVATE h5dwrite_ikind_8_rank_6 + PRIVATE h5dwrite_ikind_8_rank_7 + PRIVATE h5dwrite_ikind_16_rank_0 + PRIVATE h5dwrite_ikind_16_rank_1 + PRIVATE h5dwrite_ikind_16_rank_2 + PRIVATE h5dwrite_ikind_16_rank_3 + PRIVATE h5dwrite_ikind_16_rank_4 + PRIVATE h5dwrite_ikind_16_rank_5 + PRIVATE h5dwrite_ikind_16_rank_6 + PRIVATE h5dwrite_ikind_16_rank_7 + PRIVATE h5dwrite_ckind_rank_1 + PRIVATE h5dwrite_ckind_rank_2 + PRIVATE h5dwrite_ckind_rank_3 + PRIVATE h5dwrite_ckind_rank_4 + PRIVATE h5dwrite_ckind_rank_5 + PRIVATE h5dwrite_ckind_rank_6 + PRIVATE h5dwrite_ckind_rank_7 + PRIVATE h5dread_rkind_4_rank_0 + PRIVATE h5dread_rkind_4_rank_1 + PRIVATE h5dread_rkind_4_rank_2 + PRIVATE h5dread_rkind_4_rank_3 + PRIVATE h5dread_rkind_4_rank_4 + PRIVATE h5dread_rkind_4_rank_5 + PRIVATE h5dread_rkind_4_rank_6 + PRIVATE h5dread_rkind_4_rank_7 + PRIVATE h5dread_rkind_8_rank_0 + PRIVATE h5dread_rkind_8_rank_1 + PRIVATE h5dread_rkind_8_rank_2 + PRIVATE h5dread_rkind_8_rank_3 + PRIVATE h5dread_rkind_8_rank_4 + PRIVATE h5dread_rkind_8_rank_5 + PRIVATE h5dread_rkind_8_rank_6 + PRIVATE h5dread_rkind_8_rank_7 + PRIVATE h5dread_rkind_10_rank_0 + PRIVATE h5dread_rkind_10_rank_1 + PRIVATE h5dread_rkind_10_rank_2 + PRIVATE h5dread_rkind_10_rank_3 + PRIVATE h5dread_rkind_10_rank_4 + PRIVATE h5dread_rkind_10_rank_5 + PRIVATE h5dread_rkind_10_rank_6 + PRIVATE h5dread_rkind_10_rank_7 + PRIVATE h5dread_rkind_16_rank_0 + PRIVATE h5dread_rkind_16_rank_1 + PRIVATE h5dread_rkind_16_rank_2 + PRIVATE h5dread_rkind_16_rank_3 + PRIVATE h5dread_rkind_16_rank_4 + PRIVATE h5dread_rkind_16_rank_5 + PRIVATE h5dread_rkind_16_rank_6 + PRIVATE h5dread_rkind_16_rank_7 + PRIVATE h5dread_ikind_1_rank_0 + PRIVATE h5dread_ikind_1_rank_1 + PRIVATE h5dread_ikind_1_rank_2 + PRIVATE h5dread_ikind_1_rank_3 + PRIVATE h5dread_ikind_1_rank_4 + PRIVATE h5dread_ikind_1_rank_5 + PRIVATE h5dread_ikind_1_rank_6 + PRIVATE h5dread_ikind_1_rank_7 + PRIVATE h5dread_ikind_2_rank_0 + PRIVATE h5dread_ikind_2_rank_1 + PRIVATE h5dread_ikind_2_rank_2 + PRIVATE h5dread_ikind_2_rank_3 + PRIVATE h5dread_ikind_2_rank_4 + PRIVATE h5dread_ikind_2_rank_5 + PRIVATE h5dread_ikind_2_rank_6 + PRIVATE h5dread_ikind_2_rank_7 + PRIVATE h5dread_ikind_4_rank_0 + PRIVATE h5dread_ikind_4_rank_1 + PRIVATE h5dread_ikind_4_rank_2 + PRIVATE h5dread_ikind_4_rank_3 + PRIVATE h5dread_ikind_4_rank_4 + PRIVATE h5dread_ikind_4_rank_5 + PRIVATE h5dread_ikind_4_rank_6 + PRIVATE h5dread_ikind_4_rank_7 + PRIVATE h5dread_ikind_8_rank_0 + PRIVATE h5dread_ikind_8_rank_1 + PRIVATE h5dread_ikind_8_rank_2 + PRIVATE h5dread_ikind_8_rank_3 + PRIVATE h5dread_ikind_8_rank_4 + PRIVATE h5dread_ikind_8_rank_5 + PRIVATE h5dread_ikind_8_rank_6 + PRIVATE h5dread_ikind_8_rank_7 + PRIVATE h5dread_ikind_16_rank_0 + PRIVATE h5dread_ikind_16_rank_1 + PRIVATE h5dread_ikind_16_rank_2 + PRIVATE h5dread_ikind_16_rank_3 + PRIVATE h5dread_ikind_16_rank_4 + PRIVATE h5dread_ikind_16_rank_5 + PRIVATE h5dread_ikind_16_rank_6 + PRIVATE h5dread_ikind_16_rank_7 + PRIVATE h5dread_ckind_rank_1 + PRIVATE h5dread_ckind_rank_2 + PRIVATE h5dread_ckind_rank_3 + PRIVATE h5dread_ckind_rank_4 + PRIVATE h5dread_ckind_rank_5 + PRIVATE h5dread_ckind_rank_6 + PRIVATE h5dread_ckind_rank_7 + PRIVATE h5pset_fill_value_kind_4 + PRIVATE h5pset_fill_value_kind_8 + PRIVATE h5pset_fill_value_kind_10 + PRIVATE h5pset_fill_value_kind_16 + PRIVATE h5pget_fill_value_kind_4 + PRIVATE h5pget_fill_value_kind_8 + PRIVATE h5pget_fill_value_kind_10 + PRIVATE h5pget_fill_value_kind_16 + PRIVATE h5pset_kind_4 + PRIVATE h5pset_kind_8 + PRIVATE h5pset_kind_10 + PRIVATE h5pset_kind_16 + PRIVATE h5pget_kind_4 + PRIVATE h5pget_kind_8 + PRIVATE h5pget_kind_10 + PRIVATE h5pget_kind_16 + PRIVATE h5pregister_kind_4 + PRIVATE h5pregister_kind_8 + PRIVATE h5pregister_kind_10 + PRIVATE h5pregister_kind_16 + PRIVATE h5pinsert_kind_4 + PRIVATE h5pinsert_kind_8 + PRIVATE h5pinsert_kind_10 + PRIVATE h5pinsert_kind_16 + INTERFACE h5awrite_f + MODULE PROCEDURE h5awrite_rkind_4_rank_0 + MODULE PROCEDURE h5awrite_rkind_4_rank_1 + MODULE PROCEDURE h5awrite_rkind_4_rank_2 + MODULE PROCEDURE h5awrite_rkind_4_rank_3 + MODULE PROCEDURE h5awrite_rkind_4_rank_4 + MODULE PROCEDURE h5awrite_rkind_4_rank_5 + MODULE PROCEDURE h5awrite_rkind_4_rank_6 + MODULE PROCEDURE h5awrite_rkind_4_rank_7 + MODULE PROCEDURE h5awrite_rkind_8_rank_0 + MODULE PROCEDURE h5awrite_rkind_8_rank_1 + MODULE PROCEDURE h5awrite_rkind_8_rank_2 + MODULE PROCEDURE h5awrite_rkind_8_rank_3 + MODULE PROCEDURE h5awrite_rkind_8_rank_4 + MODULE PROCEDURE h5awrite_rkind_8_rank_5 + MODULE PROCEDURE h5awrite_rkind_8_rank_6 + MODULE PROCEDURE h5awrite_rkind_8_rank_7 + MODULE PROCEDURE h5awrite_rkind_10_rank_0 + MODULE PROCEDURE h5awrite_rkind_10_rank_1 + MODULE PROCEDURE h5awrite_rkind_10_rank_2 + MODULE PROCEDURE h5awrite_rkind_10_rank_3 + MODULE PROCEDURE h5awrite_rkind_10_rank_4 + MODULE PROCEDURE h5awrite_rkind_10_rank_5 + MODULE PROCEDURE h5awrite_rkind_10_rank_6 + MODULE PROCEDURE h5awrite_rkind_10_rank_7 + MODULE PROCEDURE h5awrite_rkind_16_rank_0 + MODULE PROCEDURE h5awrite_rkind_16_rank_1 + MODULE PROCEDURE h5awrite_rkind_16_rank_2 + MODULE PROCEDURE h5awrite_rkind_16_rank_3 + MODULE PROCEDURE h5awrite_rkind_16_rank_4 + MODULE PROCEDURE h5awrite_rkind_16_rank_5 + MODULE PROCEDURE h5awrite_rkind_16_rank_6 + MODULE PROCEDURE h5awrite_rkind_16_rank_7 + MODULE PROCEDURE h5awrite_ikind_1_rank_0 + MODULE PROCEDURE h5awrite_ikind_1_rank_1 + MODULE PROCEDURE h5awrite_ikind_1_rank_2 + MODULE PROCEDURE h5awrite_ikind_1_rank_3 + MODULE PROCEDURE h5awrite_ikind_1_rank_4 + MODULE PROCEDURE h5awrite_ikind_1_rank_5 + MODULE PROCEDURE h5awrite_ikind_1_rank_6 + MODULE PROCEDURE h5awrite_ikind_1_rank_7 + MODULE PROCEDURE h5awrite_ikind_2_rank_0 + MODULE PROCEDURE h5awrite_ikind_2_rank_1 + MODULE PROCEDURE h5awrite_ikind_2_rank_2 + MODULE PROCEDURE h5awrite_ikind_2_rank_3 + MODULE PROCEDURE h5awrite_ikind_2_rank_4 + MODULE PROCEDURE h5awrite_ikind_2_rank_5 + MODULE PROCEDURE h5awrite_ikind_2_rank_6 + MODULE PROCEDURE h5awrite_ikind_2_rank_7 + MODULE PROCEDURE h5awrite_ikind_4_rank_0 + MODULE PROCEDURE h5awrite_ikind_4_rank_1 + MODULE PROCEDURE h5awrite_ikind_4_rank_2 + MODULE PROCEDURE h5awrite_ikind_4_rank_3 + MODULE PROCEDURE h5awrite_ikind_4_rank_4 + MODULE PROCEDURE h5awrite_ikind_4_rank_5 + MODULE PROCEDURE h5awrite_ikind_4_rank_6 + MODULE PROCEDURE h5awrite_ikind_4_rank_7 + MODULE PROCEDURE h5awrite_ikind_8_rank_0 + MODULE PROCEDURE h5awrite_ikind_8_rank_1 + MODULE PROCEDURE h5awrite_ikind_8_rank_2 + MODULE PROCEDURE h5awrite_ikind_8_rank_3 + MODULE PROCEDURE h5awrite_ikind_8_rank_4 + MODULE PROCEDURE h5awrite_ikind_8_rank_5 + MODULE PROCEDURE h5awrite_ikind_8_rank_6 + MODULE PROCEDURE h5awrite_ikind_8_rank_7 + MODULE PROCEDURE h5awrite_ikind_16_rank_0 + MODULE PROCEDURE h5awrite_ikind_16_rank_1 + MODULE PROCEDURE h5awrite_ikind_16_rank_2 + MODULE PROCEDURE h5awrite_ikind_16_rank_3 + MODULE PROCEDURE h5awrite_ikind_16_rank_4 + MODULE PROCEDURE h5awrite_ikind_16_rank_5 + MODULE PROCEDURE h5awrite_ikind_16_rank_6 + MODULE PROCEDURE h5awrite_ikind_16_rank_7 + MODULE PROCEDURE h5awrite_ckind_rank_1 + MODULE PROCEDURE h5awrite_ckind_rank_2 + MODULE PROCEDURE h5awrite_ckind_rank_3 + MODULE PROCEDURE h5awrite_ckind_rank_4 + MODULE PROCEDURE h5awrite_ckind_rank_5 + MODULE PROCEDURE h5awrite_ckind_rank_6 + MODULE PROCEDURE h5awrite_ckind_rank_7 + END INTERFACE + INTERFACE h5aread_f + MODULE PROCEDURE h5aread_rkind_4_rank_0 + MODULE PROCEDURE h5aread_rkind_4_rank_1 + MODULE PROCEDURE h5aread_rkind_4_rank_2 + MODULE PROCEDURE h5aread_rkind_4_rank_3 + MODULE PROCEDURE h5aread_rkind_4_rank_4 + MODULE PROCEDURE h5aread_rkind_4_rank_5 + MODULE PROCEDURE h5aread_rkind_4_rank_6 + MODULE PROCEDURE h5aread_rkind_4_rank_7 + MODULE PROCEDURE h5aread_rkind_8_rank_0 + MODULE PROCEDURE h5aread_rkind_8_rank_1 + MODULE PROCEDURE h5aread_rkind_8_rank_2 + MODULE PROCEDURE h5aread_rkind_8_rank_3 + MODULE PROCEDURE h5aread_rkind_8_rank_4 + MODULE PROCEDURE h5aread_rkind_8_rank_5 + MODULE PROCEDURE h5aread_rkind_8_rank_6 + MODULE PROCEDURE h5aread_rkind_8_rank_7 + MODULE PROCEDURE h5aread_rkind_10_rank_0 + MODULE PROCEDURE h5aread_rkind_10_rank_1 + MODULE PROCEDURE h5aread_rkind_10_rank_2 + MODULE PROCEDURE h5aread_rkind_10_rank_3 + MODULE PROCEDURE h5aread_rkind_10_rank_4 + MODULE PROCEDURE h5aread_rkind_10_rank_5 + MODULE PROCEDURE h5aread_rkind_10_rank_6 + MODULE PROCEDURE h5aread_rkind_10_rank_7 + MODULE PROCEDURE h5aread_rkind_16_rank_0 + MODULE PROCEDURE h5aread_rkind_16_rank_1 + MODULE PROCEDURE h5aread_rkind_16_rank_2 + MODULE PROCEDURE h5aread_rkind_16_rank_3 + MODULE PROCEDURE h5aread_rkind_16_rank_4 + MODULE PROCEDURE h5aread_rkind_16_rank_5 + MODULE PROCEDURE h5aread_rkind_16_rank_6 + MODULE PROCEDURE h5aread_rkind_16_rank_7 + MODULE PROCEDURE h5aread_ikind_1_rank_0 + MODULE PROCEDURE h5aread_ikind_1_rank_1 + MODULE PROCEDURE h5aread_ikind_1_rank_2 + MODULE PROCEDURE h5aread_ikind_1_rank_3 + MODULE PROCEDURE h5aread_ikind_1_rank_4 + MODULE PROCEDURE h5aread_ikind_1_rank_5 + MODULE PROCEDURE h5aread_ikind_1_rank_6 + MODULE PROCEDURE h5aread_ikind_1_rank_7 + MODULE PROCEDURE h5aread_ikind_2_rank_0 + MODULE PROCEDURE h5aread_ikind_2_rank_1 + MODULE PROCEDURE h5aread_ikind_2_rank_2 + MODULE PROCEDURE h5aread_ikind_2_rank_3 + MODULE PROCEDURE h5aread_ikind_2_rank_4 + MODULE PROCEDURE h5aread_ikind_2_rank_5 + MODULE PROCEDURE h5aread_ikind_2_rank_6 + MODULE PROCEDURE h5aread_ikind_2_rank_7 + MODULE PROCEDURE h5aread_ikind_4_rank_0 + MODULE PROCEDURE h5aread_ikind_4_rank_1 + MODULE PROCEDURE h5aread_ikind_4_rank_2 + MODULE PROCEDURE h5aread_ikind_4_rank_3 + MODULE PROCEDURE h5aread_ikind_4_rank_4 + MODULE PROCEDURE h5aread_ikind_4_rank_5 + MODULE PROCEDURE h5aread_ikind_4_rank_6 + MODULE PROCEDURE h5aread_ikind_4_rank_7 + MODULE PROCEDURE h5aread_ikind_8_rank_0 + MODULE PROCEDURE h5aread_ikind_8_rank_1 + MODULE PROCEDURE h5aread_ikind_8_rank_2 + MODULE PROCEDURE h5aread_ikind_8_rank_3 + MODULE PROCEDURE h5aread_ikind_8_rank_4 + MODULE PROCEDURE h5aread_ikind_8_rank_5 + MODULE PROCEDURE h5aread_ikind_8_rank_6 + MODULE PROCEDURE h5aread_ikind_8_rank_7 + MODULE PROCEDURE h5aread_ikind_16_rank_0 + MODULE PROCEDURE h5aread_ikind_16_rank_1 + MODULE PROCEDURE h5aread_ikind_16_rank_2 + MODULE PROCEDURE h5aread_ikind_16_rank_3 + MODULE PROCEDURE h5aread_ikind_16_rank_4 + MODULE PROCEDURE h5aread_ikind_16_rank_5 + MODULE PROCEDURE h5aread_ikind_16_rank_6 + MODULE PROCEDURE h5aread_ikind_16_rank_7 + MODULE PROCEDURE h5aread_ckind_rank_1 + MODULE PROCEDURE h5aread_ckind_rank_2 + MODULE PROCEDURE h5aread_ckind_rank_3 + MODULE PROCEDURE h5aread_ckind_rank_4 + MODULE PROCEDURE h5aread_ckind_rank_5 + MODULE PROCEDURE h5aread_ckind_rank_6 + MODULE PROCEDURE h5aread_ckind_rank_7 + END INTERFACE + INTERFACE h5dwrite_f + MODULE PROCEDURE h5dwrite_rkind_4_rank_0 + MODULE PROCEDURE h5dwrite_rkind_4_rank_1 + MODULE PROCEDURE h5dwrite_rkind_4_rank_2 + MODULE PROCEDURE h5dwrite_rkind_4_rank_3 + MODULE PROCEDURE h5dwrite_rkind_4_rank_4 + MODULE PROCEDURE h5dwrite_rkind_4_rank_5 + MODULE PROCEDURE h5dwrite_rkind_4_rank_6 + MODULE PROCEDURE h5dwrite_rkind_4_rank_7 + MODULE PROCEDURE h5dwrite_rkind_8_rank_0 + MODULE PROCEDURE h5dwrite_rkind_8_rank_1 + MODULE PROCEDURE h5dwrite_rkind_8_rank_2 + MODULE PROCEDURE h5dwrite_rkind_8_rank_3 + MODULE PROCEDURE h5dwrite_rkind_8_rank_4 + MODULE PROCEDURE h5dwrite_rkind_8_rank_5 + MODULE PROCEDURE h5dwrite_rkind_8_rank_6 + MODULE PROCEDURE h5dwrite_rkind_8_rank_7 + MODULE PROCEDURE h5dwrite_rkind_10_rank_0 + MODULE PROCEDURE h5dwrite_rkind_10_rank_1 + MODULE PROCEDURE h5dwrite_rkind_10_rank_2 + MODULE PROCEDURE h5dwrite_rkind_10_rank_3 + MODULE PROCEDURE h5dwrite_rkind_10_rank_4 + MODULE PROCEDURE h5dwrite_rkind_10_rank_5 + MODULE PROCEDURE h5dwrite_rkind_10_rank_6 + MODULE PROCEDURE h5dwrite_rkind_10_rank_7 + MODULE PROCEDURE h5dwrite_rkind_16_rank_0 + MODULE PROCEDURE h5dwrite_rkind_16_rank_1 + MODULE PROCEDURE h5dwrite_rkind_16_rank_2 + MODULE PROCEDURE h5dwrite_rkind_16_rank_3 + MODULE PROCEDURE h5dwrite_rkind_16_rank_4 + MODULE PROCEDURE h5dwrite_rkind_16_rank_5 + MODULE PROCEDURE h5dwrite_rkind_16_rank_6 + MODULE PROCEDURE h5dwrite_rkind_16_rank_7 + MODULE PROCEDURE h5dwrite_ikind_1_rank_0 + MODULE PROCEDURE h5dwrite_ikind_1_rank_1 + MODULE PROCEDURE h5dwrite_ikind_1_rank_2 + MODULE PROCEDURE h5dwrite_ikind_1_rank_3 + MODULE PROCEDURE h5dwrite_ikind_1_rank_4 + MODULE PROCEDURE h5dwrite_ikind_1_rank_5 + MODULE PROCEDURE h5dwrite_ikind_1_rank_6 + MODULE PROCEDURE h5dwrite_ikind_1_rank_7 + MODULE PROCEDURE h5dwrite_ikind_2_rank_0 + MODULE PROCEDURE h5dwrite_ikind_2_rank_1 + MODULE PROCEDURE h5dwrite_ikind_2_rank_2 + MODULE PROCEDURE h5dwrite_ikind_2_rank_3 + MODULE PROCEDURE h5dwrite_ikind_2_rank_4 + MODULE PROCEDURE h5dwrite_ikind_2_rank_5 + MODULE PROCEDURE h5dwrite_ikind_2_rank_6 + MODULE PROCEDURE h5dwrite_ikind_2_rank_7 + MODULE PROCEDURE h5dwrite_ikind_4_rank_0 + MODULE PROCEDURE h5dwrite_ikind_4_rank_1 + MODULE PROCEDURE h5dwrite_ikind_4_rank_2 + MODULE PROCEDURE h5dwrite_ikind_4_rank_3 + MODULE PROCEDURE h5dwrite_ikind_4_rank_4 + MODULE PROCEDURE h5dwrite_ikind_4_rank_5 + MODULE PROCEDURE h5dwrite_ikind_4_rank_6 + MODULE PROCEDURE h5dwrite_ikind_4_rank_7 + MODULE PROCEDURE h5dwrite_ikind_8_rank_0 + MODULE PROCEDURE h5dwrite_ikind_8_rank_1 + MODULE PROCEDURE h5dwrite_ikind_8_rank_2 + MODULE PROCEDURE h5dwrite_ikind_8_rank_3 + MODULE PROCEDURE h5dwrite_ikind_8_rank_4 + MODULE PROCEDURE h5dwrite_ikind_8_rank_5 + MODULE PROCEDURE h5dwrite_ikind_8_rank_6 + MODULE PROCEDURE h5dwrite_ikind_8_rank_7 + MODULE PROCEDURE h5dwrite_ikind_16_rank_0 + MODULE PROCEDURE h5dwrite_ikind_16_rank_1 + MODULE PROCEDURE h5dwrite_ikind_16_rank_2 + MODULE PROCEDURE h5dwrite_ikind_16_rank_3 + MODULE PROCEDURE h5dwrite_ikind_16_rank_4 + MODULE PROCEDURE h5dwrite_ikind_16_rank_5 + MODULE PROCEDURE h5dwrite_ikind_16_rank_6 + MODULE PROCEDURE h5dwrite_ikind_16_rank_7 + MODULE PROCEDURE h5dwrite_ckind_rank_1 + MODULE PROCEDURE h5dwrite_ckind_rank_2 + MODULE PROCEDURE h5dwrite_ckind_rank_3 + MODULE PROCEDURE h5dwrite_ckind_rank_4 + MODULE PROCEDURE h5dwrite_ckind_rank_5 + MODULE PROCEDURE h5dwrite_ckind_rank_6 + MODULE PROCEDURE h5dwrite_ckind_rank_7 + END INTERFACE + INTERFACE h5dread_f + MODULE PROCEDURE h5dread_rkind_4_rank_0 + MODULE PROCEDURE h5dread_rkind_4_rank_1 + MODULE PROCEDURE h5dread_rkind_4_rank_2 + MODULE PROCEDURE h5dread_rkind_4_rank_3 + MODULE PROCEDURE h5dread_rkind_4_rank_4 + MODULE PROCEDURE h5dread_rkind_4_rank_5 + MODULE PROCEDURE h5dread_rkind_4_rank_6 + MODULE PROCEDURE h5dread_rkind_4_rank_7 + MODULE PROCEDURE h5dread_rkind_8_rank_0 + MODULE PROCEDURE h5dread_rkind_8_rank_1 + MODULE PROCEDURE h5dread_rkind_8_rank_2 + MODULE PROCEDURE h5dread_rkind_8_rank_3 + MODULE PROCEDURE h5dread_rkind_8_rank_4 + MODULE PROCEDURE h5dread_rkind_8_rank_5 + MODULE PROCEDURE h5dread_rkind_8_rank_6 + MODULE PROCEDURE h5dread_rkind_8_rank_7 + MODULE PROCEDURE h5dread_rkind_10_rank_0 + MODULE PROCEDURE h5dread_rkind_10_rank_1 + MODULE PROCEDURE h5dread_rkind_10_rank_2 + MODULE PROCEDURE h5dread_rkind_10_rank_3 + MODULE PROCEDURE h5dread_rkind_10_rank_4 + MODULE PROCEDURE h5dread_rkind_10_rank_5 + MODULE PROCEDURE h5dread_rkind_10_rank_6 + MODULE PROCEDURE h5dread_rkind_10_rank_7 + MODULE PROCEDURE h5dread_rkind_16_rank_0 + MODULE PROCEDURE h5dread_rkind_16_rank_1 + MODULE PROCEDURE h5dread_rkind_16_rank_2 + MODULE PROCEDURE h5dread_rkind_16_rank_3 + MODULE PROCEDURE h5dread_rkind_16_rank_4 + MODULE PROCEDURE h5dread_rkind_16_rank_5 + MODULE PROCEDURE h5dread_rkind_16_rank_6 + MODULE PROCEDURE h5dread_rkind_16_rank_7 + MODULE PROCEDURE h5dread_ikind_1_rank_0 + MODULE PROCEDURE h5dread_ikind_1_rank_1 + MODULE PROCEDURE h5dread_ikind_1_rank_2 + MODULE PROCEDURE h5dread_ikind_1_rank_3 + MODULE PROCEDURE h5dread_ikind_1_rank_4 + MODULE PROCEDURE h5dread_ikind_1_rank_5 + MODULE PROCEDURE h5dread_ikind_1_rank_6 + MODULE PROCEDURE h5dread_ikind_1_rank_7 + MODULE PROCEDURE h5dread_ikind_2_rank_0 + MODULE PROCEDURE h5dread_ikind_2_rank_1 + MODULE PROCEDURE h5dread_ikind_2_rank_2 + MODULE PROCEDURE h5dread_ikind_2_rank_3 + MODULE PROCEDURE h5dread_ikind_2_rank_4 + MODULE PROCEDURE h5dread_ikind_2_rank_5 + MODULE PROCEDURE h5dread_ikind_2_rank_6 + MODULE PROCEDURE h5dread_ikind_2_rank_7 + MODULE PROCEDURE h5dread_ikind_4_rank_0 + MODULE PROCEDURE h5dread_ikind_4_rank_1 + MODULE PROCEDURE h5dread_ikind_4_rank_2 + MODULE PROCEDURE h5dread_ikind_4_rank_3 + MODULE PROCEDURE h5dread_ikind_4_rank_4 + MODULE PROCEDURE h5dread_ikind_4_rank_5 + MODULE PROCEDURE h5dread_ikind_4_rank_6 + MODULE PROCEDURE h5dread_ikind_4_rank_7 + MODULE PROCEDURE h5dread_ikind_8_rank_0 + MODULE PROCEDURE h5dread_ikind_8_rank_1 + MODULE PROCEDURE h5dread_ikind_8_rank_2 + MODULE PROCEDURE h5dread_ikind_8_rank_3 + MODULE PROCEDURE h5dread_ikind_8_rank_4 + MODULE PROCEDURE h5dread_ikind_8_rank_5 + MODULE PROCEDURE h5dread_ikind_8_rank_6 + MODULE PROCEDURE h5dread_ikind_8_rank_7 + MODULE PROCEDURE h5dread_ikind_16_rank_0 + MODULE PROCEDURE h5dread_ikind_16_rank_1 + MODULE PROCEDURE h5dread_ikind_16_rank_2 + MODULE PROCEDURE h5dread_ikind_16_rank_3 + MODULE PROCEDURE h5dread_ikind_16_rank_4 + MODULE PROCEDURE h5dread_ikind_16_rank_5 + MODULE PROCEDURE h5dread_ikind_16_rank_6 + MODULE PROCEDURE h5dread_ikind_16_rank_7 + MODULE PROCEDURE h5dread_ckind_rank_1 + MODULE PROCEDURE h5dread_ckind_rank_2 + MODULE PROCEDURE h5dread_ckind_rank_3 + MODULE PROCEDURE h5dread_ckind_rank_4 + MODULE PROCEDURE h5dread_ckind_rank_5 + MODULE PROCEDURE h5dread_ckind_rank_6 + MODULE PROCEDURE h5dread_ckind_rank_7 + END INTERFACE + INTERFACE h5pset_fill_value_f + MODULE PROCEDURE h5pset_fill_value_kind_4 + MODULE PROCEDURE h5pset_fill_value_kind_8 + MODULE PROCEDURE h5pset_fill_value_kind_10 + MODULE PROCEDURE h5pset_fill_value_kind_16 + END INTERFACE + INTERFACE h5pget_fill_value_f + MODULE PROCEDURE h5pget_fill_value_kind_4 + MODULE PROCEDURE h5pget_fill_value_kind_8 + MODULE PROCEDURE h5pget_fill_value_kind_10 + MODULE PROCEDURE h5pget_fill_value_kind_16 + END INTERFACE + INTERFACE h5pset_f + MODULE PROCEDURE h5pset_kind_4 + MODULE PROCEDURE h5pset_kind_8 + MODULE PROCEDURE h5pset_kind_10 + MODULE PROCEDURE h5pset_kind_16 + END INTERFACE + INTERFACE h5pget_f + MODULE PROCEDURE h5pget_kind_4 + MODULE PROCEDURE h5pget_kind_8 + MODULE PROCEDURE h5pget_kind_10 + MODULE PROCEDURE h5pget_kind_16 + END INTERFACE + INTERFACE h5pregister_f + MODULE PROCEDURE h5pregister_kind_4 + MODULE PROCEDURE h5pregister_kind_8 + MODULE PROCEDURE h5pregister_kind_10 + MODULE PROCEDURE h5pregister_kind_16 + END INTERFACE + INTERFACE h5pinsert_f + MODULE PROCEDURE h5pinsert_kind_4 + MODULE PROCEDURE h5pinsert_kind_8 + MODULE PROCEDURE h5pinsert_kind_10 + MODULE PROCEDURE h5pinsert_kind_16 + END INTERFACE +CONTAINS +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5awrite_rkind_4_rank_0 +!DEC$endif + SUBROUTINE h5awrite_rkind_4_rank_0(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=4),INTENT(IN), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf) + hdferr = H5Awrite_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5awrite_rkind_4_rank_0 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5awrite_rkind_4_rank_1 +!DEC$endif + SUBROUTINE h5awrite_rkind_4_rank_1(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=4),INTENT(IN), DIMENSION(dims(1)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1)) + hdferr = H5Awrite_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5awrite_rkind_4_rank_1 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5awrite_rkind_4_rank_2 +!DEC$endif + SUBROUTINE h5awrite_rkind_4_rank_2(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=4),INTENT(IN), DIMENSION(dims(1),dims(2)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1)) + hdferr = H5Awrite_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5awrite_rkind_4_rank_2 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5awrite_rkind_4_rank_3 +!DEC$endif + SUBROUTINE h5awrite_rkind_4_rank_3(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=4),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1)) + hdferr = H5Awrite_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5awrite_rkind_4_rank_3 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5awrite_rkind_4_rank_4 +!DEC$endif + SUBROUTINE h5awrite_rkind_4_rank_4(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=4),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1,1)) + hdferr = H5Awrite_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5awrite_rkind_4_rank_4 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5awrite_rkind_4_rank_5 +!DEC$endif + SUBROUTINE h5awrite_rkind_4_rank_5(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=4),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1,1,1)) + hdferr = H5Awrite_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5awrite_rkind_4_rank_5 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5awrite_rkind_4_rank_6 +!DEC$endif + SUBROUTINE h5awrite_rkind_4_rank_6(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=4),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1,1,1,1)) + hdferr = H5Awrite_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5awrite_rkind_4_rank_6 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5awrite_rkind_4_rank_7 +!DEC$endif + SUBROUTINE h5awrite_rkind_4_rank_7(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=4),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1,1,1,1,1)) + hdferr = H5Awrite_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5awrite_rkind_4_rank_7 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5awrite_rkind_8_rank_0 +!DEC$endif + SUBROUTINE h5awrite_rkind_8_rank_0(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=8),INTENT(IN), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf) + hdferr = H5Awrite_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5awrite_rkind_8_rank_0 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5awrite_rkind_8_rank_1 +!DEC$endif + SUBROUTINE h5awrite_rkind_8_rank_1(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=8),INTENT(IN), DIMENSION(dims(1)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1)) + hdferr = H5Awrite_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5awrite_rkind_8_rank_1 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5awrite_rkind_8_rank_2 +!DEC$endif + SUBROUTINE h5awrite_rkind_8_rank_2(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=8),INTENT(IN), DIMENSION(dims(1),dims(2)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1)) + hdferr = H5Awrite_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5awrite_rkind_8_rank_2 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5awrite_rkind_8_rank_3 +!DEC$endif + SUBROUTINE h5awrite_rkind_8_rank_3(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=8),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1)) + hdferr = H5Awrite_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5awrite_rkind_8_rank_3 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5awrite_rkind_8_rank_4 +!DEC$endif + SUBROUTINE h5awrite_rkind_8_rank_4(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=8),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1,1)) + hdferr = H5Awrite_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5awrite_rkind_8_rank_4 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5awrite_rkind_8_rank_5 +!DEC$endif + SUBROUTINE h5awrite_rkind_8_rank_5(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=8),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1,1,1)) + hdferr = H5Awrite_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5awrite_rkind_8_rank_5 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5awrite_rkind_8_rank_6 +!DEC$endif + SUBROUTINE h5awrite_rkind_8_rank_6(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=8),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1,1,1,1)) + hdferr = H5Awrite_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5awrite_rkind_8_rank_6 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5awrite_rkind_8_rank_7 +!DEC$endif + SUBROUTINE h5awrite_rkind_8_rank_7(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=8),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1,1,1,1,1)) + hdferr = H5Awrite_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5awrite_rkind_8_rank_7 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5awrite_rkind_10_rank_0 +!DEC$endif + SUBROUTINE h5awrite_rkind_10_rank_0(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=10),INTENT(IN), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf) + hdferr = H5Awrite_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5awrite_rkind_10_rank_0 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5awrite_rkind_10_rank_1 +!DEC$endif + SUBROUTINE h5awrite_rkind_10_rank_1(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=10),INTENT(IN), DIMENSION(dims(1)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1)) + hdferr = H5Awrite_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5awrite_rkind_10_rank_1 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5awrite_rkind_10_rank_2 +!DEC$endif + SUBROUTINE h5awrite_rkind_10_rank_2(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=10),INTENT(IN), DIMENSION(dims(1),dims(2)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1)) + hdferr = H5Awrite_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5awrite_rkind_10_rank_2 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5awrite_rkind_10_rank_3 +!DEC$endif + SUBROUTINE h5awrite_rkind_10_rank_3(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=10),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1)) + hdferr = H5Awrite_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5awrite_rkind_10_rank_3 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5awrite_rkind_10_rank_4 +!DEC$endif + SUBROUTINE h5awrite_rkind_10_rank_4(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=10),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1,1)) + hdferr = H5Awrite_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5awrite_rkind_10_rank_4 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5awrite_rkind_10_rank_5 +!DEC$endif + SUBROUTINE h5awrite_rkind_10_rank_5(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=10),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1,1,1)) + hdferr = H5Awrite_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5awrite_rkind_10_rank_5 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5awrite_rkind_10_rank_6 +!DEC$endif + SUBROUTINE h5awrite_rkind_10_rank_6(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=10),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1,1,1,1)) + hdferr = H5Awrite_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5awrite_rkind_10_rank_6 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5awrite_rkind_10_rank_7 +!DEC$endif + SUBROUTINE h5awrite_rkind_10_rank_7(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=10),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1,1,1,1,1)) + hdferr = H5Awrite_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5awrite_rkind_10_rank_7 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5awrite_rkind_16_rank_0 +!DEC$endif + SUBROUTINE h5awrite_rkind_16_rank_0(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=16),INTENT(IN), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf) + hdferr = H5Awrite_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5awrite_rkind_16_rank_0 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5awrite_rkind_16_rank_1 +!DEC$endif + SUBROUTINE h5awrite_rkind_16_rank_1(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=16),INTENT(IN), DIMENSION(dims(1)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1)) + hdferr = H5Awrite_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5awrite_rkind_16_rank_1 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5awrite_rkind_16_rank_2 +!DEC$endif + SUBROUTINE h5awrite_rkind_16_rank_2(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=16),INTENT(IN), DIMENSION(dims(1),dims(2)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1)) + hdferr = H5Awrite_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5awrite_rkind_16_rank_2 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5awrite_rkind_16_rank_3 +!DEC$endif + SUBROUTINE h5awrite_rkind_16_rank_3(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=16),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1)) + hdferr = H5Awrite_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5awrite_rkind_16_rank_3 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5awrite_rkind_16_rank_4 +!DEC$endif + SUBROUTINE h5awrite_rkind_16_rank_4(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=16),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1,1)) + hdferr = H5Awrite_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5awrite_rkind_16_rank_4 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5awrite_rkind_16_rank_5 +!DEC$endif + SUBROUTINE h5awrite_rkind_16_rank_5(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=16),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1,1,1)) + hdferr = H5Awrite_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5awrite_rkind_16_rank_5 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5awrite_rkind_16_rank_6 +!DEC$endif + SUBROUTINE h5awrite_rkind_16_rank_6(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=16),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1,1,1,1)) + hdferr = H5Awrite_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5awrite_rkind_16_rank_6 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5awrite_rkind_16_rank_7 +!DEC$endif + SUBROUTINE h5awrite_rkind_16_rank_7(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=16),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1,1,1,1,1)) + hdferr = H5Awrite_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5awrite_rkind_16_rank_7 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5awrite_ikind_1_rank_0 +!DEC$endif + SUBROUTINE h5awrite_ikind_1_rank_0(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=1),INTENT(IN), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf) + hdferr = H5Awrite_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5awrite_ikind_1_rank_0 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5awrite_ikind_1_rank_1 +!DEC$endif + SUBROUTINE h5awrite_ikind_1_rank_1(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=1),INTENT(IN), DIMENSION(dims(1)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1)) + hdferr = H5Awrite_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5awrite_ikind_1_rank_1 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5awrite_ikind_1_rank_2 +!DEC$endif + SUBROUTINE h5awrite_ikind_1_rank_2(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=1),INTENT(IN), DIMENSION(dims(1),dims(2)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1)) + hdferr = H5Awrite_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5awrite_ikind_1_rank_2 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5awrite_ikind_1_rank_3 +!DEC$endif + SUBROUTINE h5awrite_ikind_1_rank_3(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=1),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1)) + hdferr = H5Awrite_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5awrite_ikind_1_rank_3 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5awrite_ikind_1_rank_4 +!DEC$endif + SUBROUTINE h5awrite_ikind_1_rank_4(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=1),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1,1)) + hdferr = H5Awrite_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5awrite_ikind_1_rank_4 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5awrite_ikind_1_rank_5 +!DEC$endif + SUBROUTINE h5awrite_ikind_1_rank_5(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=1),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1,1,1)) + hdferr = H5Awrite_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5awrite_ikind_1_rank_5 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5awrite_ikind_1_rank_6 +!DEC$endif + SUBROUTINE h5awrite_ikind_1_rank_6(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=1),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1,1,1,1)) + hdferr = H5Awrite_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5awrite_ikind_1_rank_6 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5awrite_ikind_1_rank_7 +!DEC$endif + SUBROUTINE h5awrite_ikind_1_rank_7(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=1),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1,1,1,1,1)) + hdferr = H5Awrite_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5awrite_ikind_1_rank_7 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5awrite_ikind_2_rank_0 +!DEC$endif + SUBROUTINE h5awrite_ikind_2_rank_0(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=2),INTENT(IN), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf) + hdferr = H5Awrite_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5awrite_ikind_2_rank_0 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5awrite_ikind_2_rank_1 +!DEC$endif + SUBROUTINE h5awrite_ikind_2_rank_1(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=2),INTENT(IN), DIMENSION(dims(1)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1)) + hdferr = H5Awrite_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5awrite_ikind_2_rank_1 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5awrite_ikind_2_rank_2 +!DEC$endif + SUBROUTINE h5awrite_ikind_2_rank_2(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=2),INTENT(IN), DIMENSION(dims(1),dims(2)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1)) + hdferr = H5Awrite_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5awrite_ikind_2_rank_2 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5awrite_ikind_2_rank_3 +!DEC$endif + SUBROUTINE h5awrite_ikind_2_rank_3(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=2),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1)) + hdferr = H5Awrite_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5awrite_ikind_2_rank_3 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5awrite_ikind_2_rank_4 +!DEC$endif + SUBROUTINE h5awrite_ikind_2_rank_4(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=2),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1,1)) + hdferr = H5Awrite_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5awrite_ikind_2_rank_4 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5awrite_ikind_2_rank_5 +!DEC$endif + SUBROUTINE h5awrite_ikind_2_rank_5(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=2),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1,1,1)) + hdferr = H5Awrite_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5awrite_ikind_2_rank_5 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5awrite_ikind_2_rank_6 +!DEC$endif + SUBROUTINE h5awrite_ikind_2_rank_6(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=2),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1,1,1,1)) + hdferr = H5Awrite_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5awrite_ikind_2_rank_6 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5awrite_ikind_2_rank_7 +!DEC$endif + SUBROUTINE h5awrite_ikind_2_rank_7(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=2),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1,1,1,1,1)) + hdferr = H5Awrite_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5awrite_ikind_2_rank_7 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5awrite_ikind_4_rank_0 +!DEC$endif + SUBROUTINE h5awrite_ikind_4_rank_0(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=4),INTENT(IN), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf) + hdferr = H5Awrite_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5awrite_ikind_4_rank_0 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5awrite_ikind_4_rank_1 +!DEC$endif + SUBROUTINE h5awrite_ikind_4_rank_1(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=4),INTENT(IN), DIMENSION(dims(1)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1)) + hdferr = H5Awrite_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5awrite_ikind_4_rank_1 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5awrite_ikind_4_rank_2 +!DEC$endif + SUBROUTINE h5awrite_ikind_4_rank_2(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=4),INTENT(IN), DIMENSION(dims(1),dims(2)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1)) + hdferr = H5Awrite_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5awrite_ikind_4_rank_2 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5awrite_ikind_4_rank_3 +!DEC$endif + SUBROUTINE h5awrite_ikind_4_rank_3(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=4),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1)) + hdferr = H5Awrite_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5awrite_ikind_4_rank_3 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5awrite_ikind_4_rank_4 +!DEC$endif + SUBROUTINE h5awrite_ikind_4_rank_4(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=4),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1,1)) + hdferr = H5Awrite_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5awrite_ikind_4_rank_4 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5awrite_ikind_4_rank_5 +!DEC$endif + SUBROUTINE h5awrite_ikind_4_rank_5(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=4),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1,1,1)) + hdferr = H5Awrite_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5awrite_ikind_4_rank_5 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5awrite_ikind_4_rank_6 +!DEC$endif + SUBROUTINE h5awrite_ikind_4_rank_6(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=4),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1,1,1,1)) + hdferr = H5Awrite_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5awrite_ikind_4_rank_6 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5awrite_ikind_4_rank_7 +!DEC$endif + SUBROUTINE h5awrite_ikind_4_rank_7(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=4),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1,1,1,1,1)) + hdferr = H5Awrite_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5awrite_ikind_4_rank_7 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5awrite_ikind_8_rank_0 +!DEC$endif + SUBROUTINE h5awrite_ikind_8_rank_0(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=8),INTENT(IN), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf) + hdferr = H5Awrite_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5awrite_ikind_8_rank_0 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5awrite_ikind_8_rank_1 +!DEC$endif + SUBROUTINE h5awrite_ikind_8_rank_1(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=8),INTENT(IN), DIMENSION(dims(1)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1)) + hdferr = H5Awrite_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5awrite_ikind_8_rank_1 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5awrite_ikind_8_rank_2 +!DEC$endif + SUBROUTINE h5awrite_ikind_8_rank_2(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=8),INTENT(IN), DIMENSION(dims(1),dims(2)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1)) + hdferr = H5Awrite_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5awrite_ikind_8_rank_2 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5awrite_ikind_8_rank_3 +!DEC$endif + SUBROUTINE h5awrite_ikind_8_rank_3(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=8),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1)) + hdferr = H5Awrite_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5awrite_ikind_8_rank_3 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5awrite_ikind_8_rank_4 +!DEC$endif + SUBROUTINE h5awrite_ikind_8_rank_4(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=8),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1,1)) + hdferr = H5Awrite_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5awrite_ikind_8_rank_4 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5awrite_ikind_8_rank_5 +!DEC$endif + SUBROUTINE h5awrite_ikind_8_rank_5(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=8),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1,1,1)) + hdferr = H5Awrite_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5awrite_ikind_8_rank_5 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5awrite_ikind_8_rank_6 +!DEC$endif + SUBROUTINE h5awrite_ikind_8_rank_6(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=8),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1,1,1,1)) + hdferr = H5Awrite_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5awrite_ikind_8_rank_6 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5awrite_ikind_8_rank_7 +!DEC$endif + SUBROUTINE h5awrite_ikind_8_rank_7(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=8),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1,1,1,1,1)) + hdferr = H5Awrite_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5awrite_ikind_8_rank_7 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5awrite_ikind_16_rank_0 +!DEC$endif + SUBROUTINE h5awrite_ikind_16_rank_0(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=16),INTENT(IN), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf) + hdferr = H5Awrite_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5awrite_ikind_16_rank_0 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5awrite_ikind_16_rank_1 +!DEC$endif + SUBROUTINE h5awrite_ikind_16_rank_1(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=16),INTENT(IN), DIMENSION(dims(1)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1)) + hdferr = H5Awrite_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5awrite_ikind_16_rank_1 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5awrite_ikind_16_rank_2 +!DEC$endif + SUBROUTINE h5awrite_ikind_16_rank_2(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=16),INTENT(IN), DIMENSION(dims(1),dims(2)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1)) + hdferr = H5Awrite_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5awrite_ikind_16_rank_2 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5awrite_ikind_16_rank_3 +!DEC$endif + SUBROUTINE h5awrite_ikind_16_rank_3(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=16),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1)) + hdferr = H5Awrite_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5awrite_ikind_16_rank_3 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5awrite_ikind_16_rank_4 +!DEC$endif + SUBROUTINE h5awrite_ikind_16_rank_4(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=16),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1,1)) + hdferr = H5Awrite_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5awrite_ikind_16_rank_4 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5awrite_ikind_16_rank_5 +!DEC$endif + SUBROUTINE h5awrite_ikind_16_rank_5(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=16),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1,1,1)) + hdferr = H5Awrite_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5awrite_ikind_16_rank_5 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5awrite_ikind_16_rank_6 +!DEC$endif + SUBROUTINE h5awrite_ikind_16_rank_6(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=16),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1,1,1,1)) + hdferr = H5Awrite_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5awrite_ikind_16_rank_6 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5awrite_ikind_16_rank_7 +!DEC$endif + SUBROUTINE h5awrite_ikind_16_rank_7(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=16),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1,1,1,1,1)) + hdferr = H5Awrite_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5awrite_ikind_16_rank_7 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5awrite_ckind_rank_1 +!DEC$endif + SUBROUTINE h5awrite_ckind_rank_1(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + CHARACTER(LEN=*) , INTENT(IN), DIMENSION(dims(1)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1)(1:1)) + hdferr = H5Awrite_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5awrite_ckind_rank_1 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5awrite_ckind_rank_2 +!DEC$endif + SUBROUTINE h5awrite_ckind_rank_2(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + CHARACTER(LEN=*) , INTENT(IN), DIMENSION(dims(1),dims(2)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1)(1:1)) + hdferr = H5Awrite_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5awrite_ckind_rank_2 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5awrite_ckind_rank_3 +!DEC$endif + SUBROUTINE h5awrite_ckind_rank_3(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + CHARACTER(LEN=*) , INTENT(IN), DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1)(1:1)) + hdferr = H5Awrite_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5awrite_ckind_rank_3 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5awrite_ckind_rank_4 +!DEC$endif + SUBROUTINE h5awrite_ckind_rank_4(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + CHARACTER(LEN=*) , INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1,1)(1:1)) + hdferr = H5Awrite_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5awrite_ckind_rank_4 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5awrite_ckind_rank_5 +!DEC$endif + SUBROUTINE h5awrite_ckind_rank_5(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + CHARACTER(LEN=*) , INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1,1,1)(1:1)) + hdferr = H5Awrite_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5awrite_ckind_rank_5 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5awrite_ckind_rank_6 +!DEC$endif + SUBROUTINE h5awrite_ckind_rank_6(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + CHARACTER(LEN=*) , INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1,1,1,1)(1:1)) + hdferr = H5Awrite_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5awrite_ckind_rank_6 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5awrite_ckind_rank_7 +!DEC$endif + SUBROUTINE h5awrite_ckind_rank_7(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + CHARACTER(LEN=*) , INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1,1,1,1,1)(1:1)) + hdferr = H5Awrite_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5awrite_ckind_rank_7 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5aread_rkind_4_rank_0 +!DEC$endif + SUBROUTINE h5aread_rkind_4_rank_0(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=4),INTENT(INOUT), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf) + hdferr = H5Aread_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5aread_rkind_4_rank_0 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5aread_rkind_4_rank_1 +!DEC$endif + SUBROUTINE h5aread_rkind_4_rank_1(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=4),INTENT(INOUT), DIMENSION(dims(1)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1)) + hdferr = H5Aread_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5aread_rkind_4_rank_1 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5aread_rkind_4_rank_2 +!DEC$endif + SUBROUTINE h5aread_rkind_4_rank_2(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=4),INTENT(INOUT), DIMENSION(dims(1),dims(2)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1)) + hdferr = H5Aread_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5aread_rkind_4_rank_2 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5aread_rkind_4_rank_3 +!DEC$endif + SUBROUTINE h5aread_rkind_4_rank_3(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=4),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1)) + hdferr = H5Aread_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5aread_rkind_4_rank_3 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5aread_rkind_4_rank_4 +!DEC$endif + SUBROUTINE h5aread_rkind_4_rank_4(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=4),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1,1)) + hdferr = H5Aread_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5aread_rkind_4_rank_4 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5aread_rkind_4_rank_5 +!DEC$endif + SUBROUTINE h5aread_rkind_4_rank_5(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=4),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1,1,1)) + hdferr = H5Aread_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5aread_rkind_4_rank_5 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5aread_rkind_4_rank_6 +!DEC$endif + SUBROUTINE h5aread_rkind_4_rank_6(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=4),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1,1,1,1)) + hdferr = H5Aread_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5aread_rkind_4_rank_6 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5aread_rkind_4_rank_7 +!DEC$endif + SUBROUTINE h5aread_rkind_4_rank_7(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=4),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1,1,1,1,1)) + hdferr = H5Aread_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5aread_rkind_4_rank_7 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5aread_rkind_8_rank_0 +!DEC$endif + SUBROUTINE h5aread_rkind_8_rank_0(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=8),INTENT(INOUT), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf) + hdferr = H5Aread_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5aread_rkind_8_rank_0 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5aread_rkind_8_rank_1 +!DEC$endif + SUBROUTINE h5aread_rkind_8_rank_1(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=8),INTENT(INOUT), DIMENSION(dims(1)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1)) + hdferr = H5Aread_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5aread_rkind_8_rank_1 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5aread_rkind_8_rank_2 +!DEC$endif + SUBROUTINE h5aread_rkind_8_rank_2(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=8),INTENT(INOUT), DIMENSION(dims(1),dims(2)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1)) + hdferr = H5Aread_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5aread_rkind_8_rank_2 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5aread_rkind_8_rank_3 +!DEC$endif + SUBROUTINE h5aread_rkind_8_rank_3(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=8),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1)) + hdferr = H5Aread_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5aread_rkind_8_rank_3 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5aread_rkind_8_rank_4 +!DEC$endif + SUBROUTINE h5aread_rkind_8_rank_4(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=8),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1,1)) + hdferr = H5Aread_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5aread_rkind_8_rank_4 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5aread_rkind_8_rank_5 +!DEC$endif + SUBROUTINE h5aread_rkind_8_rank_5(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=8),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1,1,1)) + hdferr = H5Aread_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5aread_rkind_8_rank_5 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5aread_rkind_8_rank_6 +!DEC$endif + SUBROUTINE h5aread_rkind_8_rank_6(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=8),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1,1,1,1)) + hdferr = H5Aread_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5aread_rkind_8_rank_6 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5aread_rkind_8_rank_7 +!DEC$endif + SUBROUTINE h5aread_rkind_8_rank_7(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=8),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1,1,1,1,1)) + hdferr = H5Aread_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5aread_rkind_8_rank_7 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5aread_rkind_10_rank_0 +!DEC$endif + SUBROUTINE h5aread_rkind_10_rank_0(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=10),INTENT(INOUT), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf) + hdferr = H5Aread_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5aread_rkind_10_rank_0 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5aread_rkind_10_rank_1 +!DEC$endif + SUBROUTINE h5aread_rkind_10_rank_1(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=10),INTENT(INOUT), DIMENSION(dims(1)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1)) + hdferr = H5Aread_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5aread_rkind_10_rank_1 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5aread_rkind_10_rank_2 +!DEC$endif + SUBROUTINE h5aread_rkind_10_rank_2(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=10),INTENT(INOUT), DIMENSION(dims(1),dims(2)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1)) + hdferr = H5Aread_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5aread_rkind_10_rank_2 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5aread_rkind_10_rank_3 +!DEC$endif + SUBROUTINE h5aread_rkind_10_rank_3(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=10),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1)) + hdferr = H5Aread_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5aread_rkind_10_rank_3 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5aread_rkind_10_rank_4 +!DEC$endif + SUBROUTINE h5aread_rkind_10_rank_4(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=10),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1,1)) + hdferr = H5Aread_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5aread_rkind_10_rank_4 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5aread_rkind_10_rank_5 +!DEC$endif + SUBROUTINE h5aread_rkind_10_rank_5(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=10),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1,1,1)) + hdferr = H5Aread_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5aread_rkind_10_rank_5 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5aread_rkind_10_rank_6 +!DEC$endif + SUBROUTINE h5aread_rkind_10_rank_6(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=10),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1,1,1,1)) + hdferr = H5Aread_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5aread_rkind_10_rank_6 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5aread_rkind_10_rank_7 +!DEC$endif + SUBROUTINE h5aread_rkind_10_rank_7(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=10),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1,1,1,1,1)) + hdferr = H5Aread_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5aread_rkind_10_rank_7 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5aread_rkind_16_rank_0 +!DEC$endif + SUBROUTINE h5aread_rkind_16_rank_0(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=16),INTENT(INOUT), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf) + hdferr = H5Aread_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5aread_rkind_16_rank_0 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5aread_rkind_16_rank_1 +!DEC$endif + SUBROUTINE h5aread_rkind_16_rank_1(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=16),INTENT(INOUT), DIMENSION(dims(1)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1)) + hdferr = H5Aread_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5aread_rkind_16_rank_1 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5aread_rkind_16_rank_2 +!DEC$endif + SUBROUTINE h5aread_rkind_16_rank_2(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=16),INTENT(INOUT), DIMENSION(dims(1),dims(2)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1)) + hdferr = H5Aread_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5aread_rkind_16_rank_2 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5aread_rkind_16_rank_3 +!DEC$endif + SUBROUTINE h5aread_rkind_16_rank_3(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=16),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1)) + hdferr = H5Aread_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5aread_rkind_16_rank_3 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5aread_rkind_16_rank_4 +!DEC$endif + SUBROUTINE h5aread_rkind_16_rank_4(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=16),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1,1)) + hdferr = H5Aread_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5aread_rkind_16_rank_4 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5aread_rkind_16_rank_5 +!DEC$endif + SUBROUTINE h5aread_rkind_16_rank_5(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=16),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1,1,1)) + hdferr = H5Aread_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5aread_rkind_16_rank_5 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5aread_rkind_16_rank_6 +!DEC$endif + SUBROUTINE h5aread_rkind_16_rank_6(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=16),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1,1,1,1)) + hdferr = H5Aread_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5aread_rkind_16_rank_6 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5aread_rkind_16_rank_7 +!DEC$endif + SUBROUTINE h5aread_rkind_16_rank_7(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=16),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1,1,1,1,1)) + hdferr = H5Aread_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5aread_rkind_16_rank_7 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5aread_ikind_1_rank_0 +!DEC$endif + SUBROUTINE h5aread_ikind_1_rank_0(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=1),INTENT(INOUT), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf) + hdferr = H5Aread_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5aread_ikind_1_rank_0 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5aread_ikind_1_rank_1 +!DEC$endif + SUBROUTINE h5aread_ikind_1_rank_1(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=1),INTENT(INOUT), DIMENSION(dims(1)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1)) + hdferr = H5Aread_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5aread_ikind_1_rank_1 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5aread_ikind_1_rank_2 +!DEC$endif + SUBROUTINE h5aread_ikind_1_rank_2(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=1),INTENT(INOUT), DIMENSION(dims(1),dims(2)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1)) + hdferr = H5Aread_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5aread_ikind_1_rank_2 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5aread_ikind_1_rank_3 +!DEC$endif + SUBROUTINE h5aread_ikind_1_rank_3(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=1),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1)) + hdferr = H5Aread_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5aread_ikind_1_rank_3 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5aread_ikind_1_rank_4 +!DEC$endif + SUBROUTINE h5aread_ikind_1_rank_4(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=1),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1,1)) + hdferr = H5Aread_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5aread_ikind_1_rank_4 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5aread_ikind_1_rank_5 +!DEC$endif + SUBROUTINE h5aread_ikind_1_rank_5(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=1),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1,1,1)) + hdferr = H5Aread_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5aread_ikind_1_rank_5 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5aread_ikind_1_rank_6 +!DEC$endif + SUBROUTINE h5aread_ikind_1_rank_6(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=1),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1,1,1,1)) + hdferr = H5Aread_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5aread_ikind_1_rank_6 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5aread_ikind_1_rank_7 +!DEC$endif + SUBROUTINE h5aread_ikind_1_rank_7(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=1),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1,1,1,1,1)) + hdferr = H5Aread_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5aread_ikind_1_rank_7 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5aread_ikind_2_rank_0 +!DEC$endif + SUBROUTINE h5aread_ikind_2_rank_0(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=2),INTENT(INOUT), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf) + hdferr = H5Aread_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5aread_ikind_2_rank_0 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5aread_ikind_2_rank_1 +!DEC$endif + SUBROUTINE h5aread_ikind_2_rank_1(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=2),INTENT(INOUT), DIMENSION(dims(1)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1)) + hdferr = H5Aread_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5aread_ikind_2_rank_1 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5aread_ikind_2_rank_2 +!DEC$endif + SUBROUTINE h5aread_ikind_2_rank_2(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=2),INTENT(INOUT), DIMENSION(dims(1),dims(2)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1)) + hdferr = H5Aread_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5aread_ikind_2_rank_2 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5aread_ikind_2_rank_3 +!DEC$endif + SUBROUTINE h5aread_ikind_2_rank_3(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=2),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1)) + hdferr = H5Aread_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5aread_ikind_2_rank_3 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5aread_ikind_2_rank_4 +!DEC$endif + SUBROUTINE h5aread_ikind_2_rank_4(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=2),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1,1)) + hdferr = H5Aread_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5aread_ikind_2_rank_4 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5aread_ikind_2_rank_5 +!DEC$endif + SUBROUTINE h5aread_ikind_2_rank_5(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=2),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1,1,1)) + hdferr = H5Aread_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5aread_ikind_2_rank_5 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5aread_ikind_2_rank_6 +!DEC$endif + SUBROUTINE h5aread_ikind_2_rank_6(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=2),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1,1,1,1)) + hdferr = H5Aread_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5aread_ikind_2_rank_6 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5aread_ikind_2_rank_7 +!DEC$endif + SUBROUTINE h5aread_ikind_2_rank_7(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=2),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1,1,1,1,1)) + hdferr = H5Aread_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5aread_ikind_2_rank_7 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5aread_ikind_4_rank_0 +!DEC$endif + SUBROUTINE h5aread_ikind_4_rank_0(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=4),INTENT(INOUT), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf) + hdferr = H5Aread_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5aread_ikind_4_rank_0 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5aread_ikind_4_rank_1 +!DEC$endif + SUBROUTINE h5aread_ikind_4_rank_1(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=4),INTENT(INOUT), DIMENSION(dims(1)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1)) + hdferr = H5Aread_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5aread_ikind_4_rank_1 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5aread_ikind_4_rank_2 +!DEC$endif + SUBROUTINE h5aread_ikind_4_rank_2(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=4),INTENT(INOUT), DIMENSION(dims(1),dims(2)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1)) + hdferr = H5Aread_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5aread_ikind_4_rank_2 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5aread_ikind_4_rank_3 +!DEC$endif + SUBROUTINE h5aread_ikind_4_rank_3(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=4),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1)) + hdferr = H5Aread_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5aread_ikind_4_rank_3 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5aread_ikind_4_rank_4 +!DEC$endif + SUBROUTINE h5aread_ikind_4_rank_4(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=4),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1,1)) + hdferr = H5Aread_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5aread_ikind_4_rank_4 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5aread_ikind_4_rank_5 +!DEC$endif + SUBROUTINE h5aread_ikind_4_rank_5(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=4),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1,1,1)) + hdferr = H5Aread_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5aread_ikind_4_rank_5 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5aread_ikind_4_rank_6 +!DEC$endif + SUBROUTINE h5aread_ikind_4_rank_6(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=4),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1,1,1,1)) + hdferr = H5Aread_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5aread_ikind_4_rank_6 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5aread_ikind_4_rank_7 +!DEC$endif + SUBROUTINE h5aread_ikind_4_rank_7(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=4),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1,1,1,1,1)) + hdferr = H5Aread_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5aread_ikind_4_rank_7 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5aread_ikind_8_rank_0 +!DEC$endif + SUBROUTINE h5aread_ikind_8_rank_0(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=8),INTENT(INOUT), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf) + hdferr = H5Aread_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5aread_ikind_8_rank_0 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5aread_ikind_8_rank_1 +!DEC$endif + SUBROUTINE h5aread_ikind_8_rank_1(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=8),INTENT(INOUT), DIMENSION(dims(1)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1)) + hdferr = H5Aread_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5aread_ikind_8_rank_1 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5aread_ikind_8_rank_2 +!DEC$endif + SUBROUTINE h5aread_ikind_8_rank_2(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=8),INTENT(INOUT), DIMENSION(dims(1),dims(2)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1)) + hdferr = H5Aread_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5aread_ikind_8_rank_2 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5aread_ikind_8_rank_3 +!DEC$endif + SUBROUTINE h5aread_ikind_8_rank_3(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=8),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1)) + hdferr = H5Aread_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5aread_ikind_8_rank_3 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5aread_ikind_8_rank_4 +!DEC$endif + SUBROUTINE h5aread_ikind_8_rank_4(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=8),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1,1)) + hdferr = H5Aread_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5aread_ikind_8_rank_4 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5aread_ikind_8_rank_5 +!DEC$endif + SUBROUTINE h5aread_ikind_8_rank_5(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=8),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1,1,1)) + hdferr = H5Aread_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5aread_ikind_8_rank_5 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5aread_ikind_8_rank_6 +!DEC$endif + SUBROUTINE h5aread_ikind_8_rank_6(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=8),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1,1,1,1)) + hdferr = H5Aread_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5aread_ikind_8_rank_6 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5aread_ikind_8_rank_7 +!DEC$endif + SUBROUTINE h5aread_ikind_8_rank_7(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=8),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1,1,1,1,1)) + hdferr = H5Aread_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5aread_ikind_8_rank_7 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5aread_ikind_16_rank_0 +!DEC$endif + SUBROUTINE h5aread_ikind_16_rank_0(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=16),INTENT(INOUT), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf) + hdferr = H5Aread_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5aread_ikind_16_rank_0 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5aread_ikind_16_rank_1 +!DEC$endif + SUBROUTINE h5aread_ikind_16_rank_1(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=16),INTENT(INOUT), DIMENSION(dims(1)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1)) + hdferr = H5Aread_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5aread_ikind_16_rank_1 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5aread_ikind_16_rank_2 +!DEC$endif + SUBROUTINE h5aread_ikind_16_rank_2(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=16),INTENT(INOUT), DIMENSION(dims(1),dims(2)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1)) + hdferr = H5Aread_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5aread_ikind_16_rank_2 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5aread_ikind_16_rank_3 +!DEC$endif + SUBROUTINE h5aread_ikind_16_rank_3(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=16),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1)) + hdferr = H5Aread_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5aread_ikind_16_rank_3 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5aread_ikind_16_rank_4 +!DEC$endif + SUBROUTINE h5aread_ikind_16_rank_4(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=16),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1,1)) + hdferr = H5Aread_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5aread_ikind_16_rank_4 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5aread_ikind_16_rank_5 +!DEC$endif + SUBROUTINE h5aread_ikind_16_rank_5(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=16),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1,1,1)) + hdferr = H5Aread_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5aread_ikind_16_rank_5 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5aread_ikind_16_rank_6 +!DEC$endif + SUBROUTINE h5aread_ikind_16_rank_6(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=16),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1,1,1,1)) + hdferr = H5Aread_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5aread_ikind_16_rank_6 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5aread_ikind_16_rank_7 +!DEC$endif + SUBROUTINE h5aread_ikind_16_rank_7(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=16),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1,1,1,1,1)) + hdferr = H5Aread_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5aread_ikind_16_rank_7 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5aread_ckind_rank_1 +!DEC$endif + SUBROUTINE h5aread_ckind_rank_1(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + CHARACTER(LEN=*), INTENT(IN), DIMENSION(dims(1)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1)(1:1)) + hdferr = H5Aread_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5aread_ckind_rank_1 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5aread_ckind_rank_2 +!DEC$endif + SUBROUTINE h5aread_ckind_rank_2(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + CHARACTER(LEN=*), INTENT(IN), DIMENSION(dims(1),dims(2)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1)(1:1)) + hdferr = H5Aread_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5aread_ckind_rank_2 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5aread_ckind_rank_3 +!DEC$endif + SUBROUTINE h5aread_ckind_rank_3(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + CHARACTER(LEN=*), INTENT(IN), DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1)(1:1)) + hdferr = H5Aread_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5aread_ckind_rank_3 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5aread_ckind_rank_4 +!DEC$endif + SUBROUTINE h5aread_ckind_rank_4(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + CHARACTER(LEN=*), INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1,1)(1:1)) + hdferr = H5Aread_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5aread_ckind_rank_4 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5aread_ckind_rank_5 +!DEC$endif + SUBROUTINE h5aread_ckind_rank_5(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + CHARACTER(LEN=*), INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1,1,1)(1:1)) + hdferr = H5Aread_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5aread_ckind_rank_5 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5aread_ckind_rank_6 +!DEC$endif + SUBROUTINE h5aread_ckind_rank_6(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + CHARACTER(LEN=*), INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1,1,1,1)(1:1)) + hdferr = H5Aread_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5aread_ckind_rank_6 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5aread_ckind_rank_7 +!DEC$endif + SUBROUTINE h5aread_ckind_rank_7(attr_id, memtype_id, buf, dims, hdferr) + IMPLICIT NONE + INTEGER(HID_T) , INTENT(IN) :: attr_id + INTEGER(HID_T) , INTENT(IN) :: memtype_id + INTEGER(HSIZE_T) , INTENT(IN), DIMENSION(*) :: dims + CHARACTER(LEN=*), INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf + INTEGER , INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(buf(1,1,1,1,1,1,1)(1:1)) + hdferr = H5Aread_f_c(attr_id, memtype_id, f_ptr) + END SUBROUTINE h5aread_ckind_rank_7 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dread_rkind_4_rank_0 +!DEC$endif + SUBROUTINE h5dread_rkind_4_rank_0(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=4),INTENT(INOUT), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf) + hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dread_rkind_4_rank_0 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dread_rkind_4_rank_1 +!DEC$endif + SUBROUTINE h5dread_rkind_4_rank_1(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=4),INTENT(INOUT), DIMENSION(dims(1)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1)) + hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dread_rkind_4_rank_1 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dread_rkind_4_rank_2 +!DEC$endif + SUBROUTINE h5dread_rkind_4_rank_2(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=4),INTENT(INOUT), DIMENSION(dims(1),dims(2)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1)) + hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dread_rkind_4_rank_2 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dread_rkind_4_rank_3 +!DEC$endif + SUBROUTINE h5dread_rkind_4_rank_3(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=4),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1)) + hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dread_rkind_4_rank_3 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dread_rkind_4_rank_4 +!DEC$endif + SUBROUTINE h5dread_rkind_4_rank_4(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=4),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1,1)) + hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dread_rkind_4_rank_4 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dread_rkind_4_rank_5 +!DEC$endif + SUBROUTINE h5dread_rkind_4_rank_5(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=4),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1,1,1)) + hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dread_rkind_4_rank_5 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dread_rkind_4_rank_6 +!DEC$endif + SUBROUTINE h5dread_rkind_4_rank_6(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=4),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1,1,1,1)) + hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dread_rkind_4_rank_6 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dread_rkind_4_rank_7 +!DEC$endif + SUBROUTINE h5dread_rkind_4_rank_7(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=4),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1,1,1,1,1)) + hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dread_rkind_4_rank_7 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dread_rkind_8_rank_0 +!DEC$endif + SUBROUTINE h5dread_rkind_8_rank_0(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=8),INTENT(INOUT), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf) + hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dread_rkind_8_rank_0 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dread_rkind_8_rank_1 +!DEC$endif + SUBROUTINE h5dread_rkind_8_rank_1(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=8),INTENT(INOUT), DIMENSION(dims(1)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1)) + hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dread_rkind_8_rank_1 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dread_rkind_8_rank_2 +!DEC$endif + SUBROUTINE h5dread_rkind_8_rank_2(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=8),INTENT(INOUT), DIMENSION(dims(1),dims(2)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1)) + hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dread_rkind_8_rank_2 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dread_rkind_8_rank_3 +!DEC$endif + SUBROUTINE h5dread_rkind_8_rank_3(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=8),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1)) + hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dread_rkind_8_rank_3 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dread_rkind_8_rank_4 +!DEC$endif + SUBROUTINE h5dread_rkind_8_rank_4(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=8),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1,1)) + hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dread_rkind_8_rank_4 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dread_rkind_8_rank_5 +!DEC$endif + SUBROUTINE h5dread_rkind_8_rank_5(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=8),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1,1,1)) + hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dread_rkind_8_rank_5 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dread_rkind_8_rank_6 +!DEC$endif + SUBROUTINE h5dread_rkind_8_rank_6(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=8),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1,1,1,1)) + hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dread_rkind_8_rank_6 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dread_rkind_8_rank_7 +!DEC$endif + SUBROUTINE h5dread_rkind_8_rank_7(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=8),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1,1,1,1,1)) + hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dread_rkind_8_rank_7 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dread_rkind_10_rank_0 +!DEC$endif + SUBROUTINE h5dread_rkind_10_rank_0(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=10),INTENT(INOUT), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf) + hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dread_rkind_10_rank_0 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dread_rkind_10_rank_1 +!DEC$endif + SUBROUTINE h5dread_rkind_10_rank_1(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=10),INTENT(INOUT), DIMENSION(dims(1)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1)) + hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dread_rkind_10_rank_1 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dread_rkind_10_rank_2 +!DEC$endif + SUBROUTINE h5dread_rkind_10_rank_2(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=10),INTENT(INOUT), DIMENSION(dims(1),dims(2)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1)) + hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dread_rkind_10_rank_2 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dread_rkind_10_rank_3 +!DEC$endif + SUBROUTINE h5dread_rkind_10_rank_3(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=10),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1)) + hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dread_rkind_10_rank_3 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dread_rkind_10_rank_4 +!DEC$endif + SUBROUTINE h5dread_rkind_10_rank_4(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=10),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1,1)) + hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dread_rkind_10_rank_4 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dread_rkind_10_rank_5 +!DEC$endif + SUBROUTINE h5dread_rkind_10_rank_5(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=10),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1,1,1)) + hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dread_rkind_10_rank_5 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dread_rkind_10_rank_6 +!DEC$endif + SUBROUTINE h5dread_rkind_10_rank_6(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=10),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1,1,1,1)) + hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dread_rkind_10_rank_6 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dread_rkind_10_rank_7 +!DEC$endif + SUBROUTINE h5dread_rkind_10_rank_7(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=10),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1,1,1,1,1)) + hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dread_rkind_10_rank_7 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dread_rkind_16_rank_0 +!DEC$endif + SUBROUTINE h5dread_rkind_16_rank_0(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=16),INTENT(INOUT), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf) + hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dread_rkind_16_rank_0 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dread_rkind_16_rank_1 +!DEC$endif + SUBROUTINE h5dread_rkind_16_rank_1(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=16),INTENT(INOUT), DIMENSION(dims(1)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1)) + hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dread_rkind_16_rank_1 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dread_rkind_16_rank_2 +!DEC$endif + SUBROUTINE h5dread_rkind_16_rank_2(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=16),INTENT(INOUT), DIMENSION(dims(1),dims(2)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1)) + hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dread_rkind_16_rank_2 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dread_rkind_16_rank_3 +!DEC$endif + SUBROUTINE h5dread_rkind_16_rank_3(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=16),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1)) + hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dread_rkind_16_rank_3 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dread_rkind_16_rank_4 +!DEC$endif + SUBROUTINE h5dread_rkind_16_rank_4(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=16),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1,1)) + hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dread_rkind_16_rank_4 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dread_rkind_16_rank_5 +!DEC$endif + SUBROUTINE h5dread_rkind_16_rank_5(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=16),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1,1,1)) + hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dread_rkind_16_rank_5 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dread_rkind_16_rank_6 +!DEC$endif + SUBROUTINE h5dread_rkind_16_rank_6(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=16),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1,1,1,1)) + hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dread_rkind_16_rank_6 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dread_rkind_16_rank_7 +!DEC$endif + SUBROUTINE h5dread_rkind_16_rank_7(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=16),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1,1,1,1,1)) + hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dread_rkind_16_rank_7 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dread_ikind_1_rank_0 +!DEC$endif + SUBROUTINE h5dread_ikind_1_rank_0(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=1),INTENT(INOUT), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf) + hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dread_ikind_1_rank_0 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dread_ikind_1_rank_1 +!DEC$endif + SUBROUTINE h5dread_ikind_1_rank_1(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=1),INTENT(INOUT), DIMENSION(dims(1)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1)) + hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dread_ikind_1_rank_1 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dread_ikind_1_rank_2 +!DEC$endif + SUBROUTINE h5dread_ikind_1_rank_2(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=1),INTENT(INOUT), DIMENSION(dims(1),dims(2)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1)) + hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dread_ikind_1_rank_2 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dread_ikind_1_rank_3 +!DEC$endif + SUBROUTINE h5dread_ikind_1_rank_3(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=1),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1)) + hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dread_ikind_1_rank_3 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dread_ikind_1_rank_4 +!DEC$endif + SUBROUTINE h5dread_ikind_1_rank_4(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=1),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1,1)) + hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dread_ikind_1_rank_4 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dread_ikind_1_rank_5 +!DEC$endif + SUBROUTINE h5dread_ikind_1_rank_5(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=1),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1,1,1)) + hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dread_ikind_1_rank_5 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dread_ikind_1_rank_6 +!DEC$endif + SUBROUTINE h5dread_ikind_1_rank_6(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=1),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1,1,1,1)) + hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dread_ikind_1_rank_6 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dread_ikind_1_rank_7 +!DEC$endif + SUBROUTINE h5dread_ikind_1_rank_7(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=1),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1,1,1,1,1)) + hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dread_ikind_1_rank_7 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dread_ikind_2_rank_0 +!DEC$endif + SUBROUTINE h5dread_ikind_2_rank_0(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=2),INTENT(INOUT), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf) + hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dread_ikind_2_rank_0 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dread_ikind_2_rank_1 +!DEC$endif + SUBROUTINE h5dread_ikind_2_rank_1(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=2),INTENT(INOUT), DIMENSION(dims(1)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1)) + hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dread_ikind_2_rank_1 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dread_ikind_2_rank_2 +!DEC$endif + SUBROUTINE h5dread_ikind_2_rank_2(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=2),INTENT(INOUT), DIMENSION(dims(1),dims(2)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1)) + hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dread_ikind_2_rank_2 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dread_ikind_2_rank_3 +!DEC$endif + SUBROUTINE h5dread_ikind_2_rank_3(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=2),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1)) + hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dread_ikind_2_rank_3 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dread_ikind_2_rank_4 +!DEC$endif + SUBROUTINE h5dread_ikind_2_rank_4(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=2),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1,1)) + hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dread_ikind_2_rank_4 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dread_ikind_2_rank_5 +!DEC$endif + SUBROUTINE h5dread_ikind_2_rank_5(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=2),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1,1,1)) + hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dread_ikind_2_rank_5 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dread_ikind_2_rank_6 +!DEC$endif + SUBROUTINE h5dread_ikind_2_rank_6(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=2),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1,1,1,1)) + hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dread_ikind_2_rank_6 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dread_ikind_2_rank_7 +!DEC$endif + SUBROUTINE h5dread_ikind_2_rank_7(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=2),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1,1,1,1,1)) + hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dread_ikind_2_rank_7 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dread_ikind_4_rank_0 +!DEC$endif + SUBROUTINE h5dread_ikind_4_rank_0(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=4),INTENT(INOUT), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf) + hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dread_ikind_4_rank_0 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dread_ikind_4_rank_1 +!DEC$endif + SUBROUTINE h5dread_ikind_4_rank_1(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=4),INTENT(INOUT), DIMENSION(dims(1)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1)) + hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dread_ikind_4_rank_1 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dread_ikind_4_rank_2 +!DEC$endif + SUBROUTINE h5dread_ikind_4_rank_2(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=4),INTENT(INOUT), DIMENSION(dims(1),dims(2)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1)) + hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dread_ikind_4_rank_2 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dread_ikind_4_rank_3 +!DEC$endif + SUBROUTINE h5dread_ikind_4_rank_3(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=4),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1)) + hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dread_ikind_4_rank_3 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dread_ikind_4_rank_4 +!DEC$endif + SUBROUTINE h5dread_ikind_4_rank_4(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=4),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1,1)) + hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dread_ikind_4_rank_4 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dread_ikind_4_rank_5 +!DEC$endif + SUBROUTINE h5dread_ikind_4_rank_5(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=4),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1,1,1)) + hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dread_ikind_4_rank_5 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dread_ikind_4_rank_6 +!DEC$endif + SUBROUTINE h5dread_ikind_4_rank_6(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=4),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1,1,1,1)) + hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dread_ikind_4_rank_6 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dread_ikind_4_rank_7 +!DEC$endif + SUBROUTINE h5dread_ikind_4_rank_7(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=4),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1,1,1,1,1)) + hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dread_ikind_4_rank_7 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dread_ikind_8_rank_0 +!DEC$endif + SUBROUTINE h5dread_ikind_8_rank_0(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=8),INTENT(INOUT), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf) + hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dread_ikind_8_rank_0 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dread_ikind_8_rank_1 +!DEC$endif + SUBROUTINE h5dread_ikind_8_rank_1(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=8),INTENT(INOUT), DIMENSION(dims(1)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1)) + hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dread_ikind_8_rank_1 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dread_ikind_8_rank_2 +!DEC$endif + SUBROUTINE h5dread_ikind_8_rank_2(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=8),INTENT(INOUT), DIMENSION(dims(1),dims(2)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1)) + hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dread_ikind_8_rank_2 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dread_ikind_8_rank_3 +!DEC$endif + SUBROUTINE h5dread_ikind_8_rank_3(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=8),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1)) + hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dread_ikind_8_rank_3 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dread_ikind_8_rank_4 +!DEC$endif + SUBROUTINE h5dread_ikind_8_rank_4(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=8),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1,1)) + hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dread_ikind_8_rank_4 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dread_ikind_8_rank_5 +!DEC$endif + SUBROUTINE h5dread_ikind_8_rank_5(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=8),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1,1,1)) + hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dread_ikind_8_rank_5 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dread_ikind_8_rank_6 +!DEC$endif + SUBROUTINE h5dread_ikind_8_rank_6(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=8),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1,1,1,1)) + hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dread_ikind_8_rank_6 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dread_ikind_8_rank_7 +!DEC$endif + SUBROUTINE h5dread_ikind_8_rank_7(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=8),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1,1,1,1,1)) + hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dread_ikind_8_rank_7 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dread_ikind_16_rank_0 +!DEC$endif + SUBROUTINE h5dread_ikind_16_rank_0(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=16),INTENT(INOUT), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf) + hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dread_ikind_16_rank_0 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dread_ikind_16_rank_1 +!DEC$endif + SUBROUTINE h5dread_ikind_16_rank_1(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=16),INTENT(INOUT), DIMENSION(dims(1)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1)) + hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dread_ikind_16_rank_1 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dread_ikind_16_rank_2 +!DEC$endif + SUBROUTINE h5dread_ikind_16_rank_2(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=16),INTENT(INOUT), DIMENSION(dims(1),dims(2)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1)) + hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dread_ikind_16_rank_2 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dread_ikind_16_rank_3 +!DEC$endif + SUBROUTINE h5dread_ikind_16_rank_3(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=16),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1)) + hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dread_ikind_16_rank_3 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dread_ikind_16_rank_4 +!DEC$endif + SUBROUTINE h5dread_ikind_16_rank_4(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=16),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1,1)) + hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dread_ikind_16_rank_4 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dread_ikind_16_rank_5 +!DEC$endif + SUBROUTINE h5dread_ikind_16_rank_5(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=16),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1,1,1)) + hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dread_ikind_16_rank_5 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dread_ikind_16_rank_6 +!DEC$endif + SUBROUTINE h5dread_ikind_16_rank_6(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=16),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1,1,1,1)) + hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dread_ikind_16_rank_6 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dread_ikind_16_rank_7 +!DEC$endif + SUBROUTINE h5dread_ikind_16_rank_7(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=16),INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1,1,1,1,1)) + hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dread_ikind_16_rank_7 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dread_ckind_rank_1 +!DEC$endif + SUBROUTINE h5dread_ckind_rank_1(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + CHARACTER(LEN=*), INTENT(INOUT), DIMENSION(dims(1)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1)(1:1)) + hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dread_ckind_rank_1 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dread_ckind_rank_2 +!DEC$endif + SUBROUTINE h5dread_ckind_rank_2(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + CHARACTER(LEN=*), INTENT(INOUT), DIMENSION(dims(1),dims(2)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1)(1:1)) + hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dread_ckind_rank_2 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dread_ckind_rank_3 +!DEC$endif + SUBROUTINE h5dread_ckind_rank_3(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + CHARACTER(LEN=*), INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1)(1:1)) + hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dread_ckind_rank_3 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dread_ckind_rank_4 +!DEC$endif + SUBROUTINE h5dread_ckind_rank_4(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + CHARACTER(LEN=*), INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1,1)(1:1)) + hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dread_ckind_rank_4 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dread_ckind_rank_5 +!DEC$endif + SUBROUTINE h5dread_ckind_rank_5(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + CHARACTER(LEN=*), INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1,1,1)(1:1)) + hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dread_ckind_rank_5 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dread_ckind_rank_6 +!DEC$endif + SUBROUTINE h5dread_ckind_rank_6(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + CHARACTER(LEN=*), INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1,1,1,1)(1:1)) + hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dread_ckind_rank_6 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dread_ckind_rank_7 +!DEC$endif + SUBROUTINE h5dread_ckind_rank_7(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + CHARACTER(LEN=*), INTENT(INOUT), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1,1,1,1,1)(1:1)) + hdferr = h5dread_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dread_ckind_rank_7 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dwrite_rkind_4_rank_0 +!DEC$endif + SUBROUTINE h5dwrite_rkind_4_rank_0(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=4),INTENT(IN), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf) + hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dwrite_rkind_4_rank_0 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dwrite_rkind_4_rank_1 +!DEC$endif + SUBROUTINE h5dwrite_rkind_4_rank_1(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=4),INTENT(IN), DIMENSION(dims(1)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1)) + hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dwrite_rkind_4_rank_1 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dwrite_rkind_4_rank_2 +!DEC$endif + SUBROUTINE h5dwrite_rkind_4_rank_2(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=4),INTENT(IN), DIMENSION(dims(1),dims(2)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1)) + hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dwrite_rkind_4_rank_2 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dwrite_rkind_4_rank_3 +!DEC$endif + SUBROUTINE h5dwrite_rkind_4_rank_3(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=4),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1)) + hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dwrite_rkind_4_rank_3 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dwrite_rkind_4_rank_4 +!DEC$endif + SUBROUTINE h5dwrite_rkind_4_rank_4(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=4),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1,1)) + hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dwrite_rkind_4_rank_4 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dwrite_rkind_4_rank_5 +!DEC$endif + SUBROUTINE h5dwrite_rkind_4_rank_5(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=4),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1,1,1)) + hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dwrite_rkind_4_rank_5 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dwrite_rkind_4_rank_6 +!DEC$endif + SUBROUTINE h5dwrite_rkind_4_rank_6(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=4),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1,1,1,1)) + hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dwrite_rkind_4_rank_6 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dwrite_rkind_4_rank_7 +!DEC$endif + SUBROUTINE h5dwrite_rkind_4_rank_7(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=4),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1,1,1,1,1)) + hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dwrite_rkind_4_rank_7 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dwrite_rkind_8_rank_0 +!DEC$endif + SUBROUTINE h5dwrite_rkind_8_rank_0(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=8),INTENT(IN), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf) + hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dwrite_rkind_8_rank_0 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dwrite_rkind_8_rank_1 +!DEC$endif + SUBROUTINE h5dwrite_rkind_8_rank_1(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=8),INTENT(IN), DIMENSION(dims(1)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1)) + hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dwrite_rkind_8_rank_1 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dwrite_rkind_8_rank_2 +!DEC$endif + SUBROUTINE h5dwrite_rkind_8_rank_2(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=8),INTENT(IN), DIMENSION(dims(1),dims(2)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1)) + hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dwrite_rkind_8_rank_2 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dwrite_rkind_8_rank_3 +!DEC$endif + SUBROUTINE h5dwrite_rkind_8_rank_3(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=8),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1)) + hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dwrite_rkind_8_rank_3 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dwrite_rkind_8_rank_4 +!DEC$endif + SUBROUTINE h5dwrite_rkind_8_rank_4(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=8),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1,1)) + hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dwrite_rkind_8_rank_4 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dwrite_rkind_8_rank_5 +!DEC$endif + SUBROUTINE h5dwrite_rkind_8_rank_5(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=8),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1,1,1)) + hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dwrite_rkind_8_rank_5 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dwrite_rkind_8_rank_6 +!DEC$endif + SUBROUTINE h5dwrite_rkind_8_rank_6(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=8),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1,1,1,1)) + hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dwrite_rkind_8_rank_6 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dwrite_rkind_8_rank_7 +!DEC$endif + SUBROUTINE h5dwrite_rkind_8_rank_7(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=8),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1,1,1,1,1)) + hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dwrite_rkind_8_rank_7 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dwrite_rkind_10_rank_0 +!DEC$endif + SUBROUTINE h5dwrite_rkind_10_rank_0(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=10),INTENT(IN), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf) + hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dwrite_rkind_10_rank_0 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dwrite_rkind_10_rank_1 +!DEC$endif + SUBROUTINE h5dwrite_rkind_10_rank_1(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=10),INTENT(IN), DIMENSION(dims(1)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1)) + hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dwrite_rkind_10_rank_1 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dwrite_rkind_10_rank_2 +!DEC$endif + SUBROUTINE h5dwrite_rkind_10_rank_2(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=10),INTENT(IN), DIMENSION(dims(1),dims(2)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1)) + hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dwrite_rkind_10_rank_2 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dwrite_rkind_10_rank_3 +!DEC$endif + SUBROUTINE h5dwrite_rkind_10_rank_3(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=10),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1)) + hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dwrite_rkind_10_rank_3 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dwrite_rkind_10_rank_4 +!DEC$endif + SUBROUTINE h5dwrite_rkind_10_rank_4(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=10),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1,1)) + hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dwrite_rkind_10_rank_4 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dwrite_rkind_10_rank_5 +!DEC$endif + SUBROUTINE h5dwrite_rkind_10_rank_5(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=10),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1,1,1)) + hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dwrite_rkind_10_rank_5 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dwrite_rkind_10_rank_6 +!DEC$endif + SUBROUTINE h5dwrite_rkind_10_rank_6(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=10),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1,1,1,1)) + hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dwrite_rkind_10_rank_6 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dwrite_rkind_10_rank_7 +!DEC$endif + SUBROUTINE h5dwrite_rkind_10_rank_7(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=10),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1,1,1,1,1)) + hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dwrite_rkind_10_rank_7 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dwrite_rkind_16_rank_0 +!DEC$endif + SUBROUTINE h5dwrite_rkind_16_rank_0(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=16),INTENT(IN), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf) + hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dwrite_rkind_16_rank_0 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dwrite_rkind_16_rank_1 +!DEC$endif + SUBROUTINE h5dwrite_rkind_16_rank_1(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=16),INTENT(IN), DIMENSION(dims(1)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1)) + hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dwrite_rkind_16_rank_1 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dwrite_rkind_16_rank_2 +!DEC$endif + SUBROUTINE h5dwrite_rkind_16_rank_2(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=16),INTENT(IN), DIMENSION(dims(1),dims(2)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1)) + hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dwrite_rkind_16_rank_2 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dwrite_rkind_16_rank_3 +!DEC$endif + SUBROUTINE h5dwrite_rkind_16_rank_3(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=16),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1)) + hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dwrite_rkind_16_rank_3 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dwrite_rkind_16_rank_4 +!DEC$endif + SUBROUTINE h5dwrite_rkind_16_rank_4(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=16),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1,1)) + hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dwrite_rkind_16_rank_4 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dwrite_rkind_16_rank_5 +!DEC$endif + SUBROUTINE h5dwrite_rkind_16_rank_5(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=16),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1,1,1)) + hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dwrite_rkind_16_rank_5 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dwrite_rkind_16_rank_6 +!DEC$endif + SUBROUTINE h5dwrite_rkind_16_rank_6(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=16),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1,1,1,1)) + hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dwrite_rkind_16_rank_6 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dwrite_rkind_16_rank_7 +!DEC$endif + SUBROUTINE h5dwrite_rkind_16_rank_7(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + REAL(KIND=16),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1,1,1,1,1)) + hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dwrite_rkind_16_rank_7 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dwrite_ikind_1_rank_0 +!DEC$endif + SUBROUTINE h5dwrite_ikind_1_rank_0(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=1),INTENT(IN), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf) + hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dwrite_ikind_1_rank_0 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dwrite_ikind_1_rank_1 +!DEC$endif + SUBROUTINE h5dwrite_ikind_1_rank_1(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=1),INTENT(IN), DIMENSION(dims(1)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1)) + hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dwrite_ikind_1_rank_1 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dwrite_ikind_1_rank_2 +!DEC$endif + SUBROUTINE h5dwrite_ikind_1_rank_2(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=1),INTENT(IN), DIMENSION(dims(1),dims(2)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1)) + hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dwrite_ikind_1_rank_2 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dwrite_ikind_1_rank_3 +!DEC$endif + SUBROUTINE h5dwrite_ikind_1_rank_3(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=1),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1)) + hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dwrite_ikind_1_rank_3 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dwrite_ikind_1_rank_4 +!DEC$endif + SUBROUTINE h5dwrite_ikind_1_rank_4(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=1),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1,1)) + hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dwrite_ikind_1_rank_4 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dwrite_ikind_1_rank_5 +!DEC$endif + SUBROUTINE h5dwrite_ikind_1_rank_5(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=1),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1,1,1)) + hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dwrite_ikind_1_rank_5 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dwrite_ikind_1_rank_6 +!DEC$endif + SUBROUTINE h5dwrite_ikind_1_rank_6(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=1),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1,1,1,1)) + hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dwrite_ikind_1_rank_6 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dwrite_ikind_1_rank_7 +!DEC$endif + SUBROUTINE h5dwrite_ikind_1_rank_7(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=1),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1,1,1,1,1)) + hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dwrite_ikind_1_rank_7 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dwrite_ikind_2_rank_0 +!DEC$endif + SUBROUTINE h5dwrite_ikind_2_rank_0(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=2),INTENT(IN), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf) + hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dwrite_ikind_2_rank_0 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dwrite_ikind_2_rank_1 +!DEC$endif + SUBROUTINE h5dwrite_ikind_2_rank_1(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=2),INTENT(IN), DIMENSION(dims(1)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1)) + hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dwrite_ikind_2_rank_1 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dwrite_ikind_2_rank_2 +!DEC$endif + SUBROUTINE h5dwrite_ikind_2_rank_2(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=2),INTENT(IN), DIMENSION(dims(1),dims(2)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1)) + hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dwrite_ikind_2_rank_2 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dwrite_ikind_2_rank_3 +!DEC$endif + SUBROUTINE h5dwrite_ikind_2_rank_3(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=2),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1)) + hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dwrite_ikind_2_rank_3 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dwrite_ikind_2_rank_4 +!DEC$endif + SUBROUTINE h5dwrite_ikind_2_rank_4(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=2),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1,1)) + hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dwrite_ikind_2_rank_4 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dwrite_ikind_2_rank_5 +!DEC$endif + SUBROUTINE h5dwrite_ikind_2_rank_5(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=2),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1,1,1)) + hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dwrite_ikind_2_rank_5 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dwrite_ikind_2_rank_6 +!DEC$endif + SUBROUTINE h5dwrite_ikind_2_rank_6(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=2),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1,1,1,1)) + hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dwrite_ikind_2_rank_6 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dwrite_ikind_2_rank_7 +!DEC$endif + SUBROUTINE h5dwrite_ikind_2_rank_7(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=2),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1,1,1,1,1)) + hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dwrite_ikind_2_rank_7 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dwrite_ikind_4_rank_0 +!DEC$endif + SUBROUTINE h5dwrite_ikind_4_rank_0(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=4),INTENT(IN), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf) + hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dwrite_ikind_4_rank_0 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dwrite_ikind_4_rank_1 +!DEC$endif + SUBROUTINE h5dwrite_ikind_4_rank_1(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=4),INTENT(IN), DIMENSION(dims(1)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1)) + hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dwrite_ikind_4_rank_1 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dwrite_ikind_4_rank_2 +!DEC$endif + SUBROUTINE h5dwrite_ikind_4_rank_2(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=4),INTENT(IN), DIMENSION(dims(1),dims(2)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1)) + hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dwrite_ikind_4_rank_2 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dwrite_ikind_4_rank_3 +!DEC$endif + SUBROUTINE h5dwrite_ikind_4_rank_3(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=4),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1)) + hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dwrite_ikind_4_rank_3 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dwrite_ikind_4_rank_4 +!DEC$endif + SUBROUTINE h5dwrite_ikind_4_rank_4(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=4),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1,1)) + hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dwrite_ikind_4_rank_4 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dwrite_ikind_4_rank_5 +!DEC$endif + SUBROUTINE h5dwrite_ikind_4_rank_5(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=4),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1,1,1)) + hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dwrite_ikind_4_rank_5 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dwrite_ikind_4_rank_6 +!DEC$endif + SUBROUTINE h5dwrite_ikind_4_rank_6(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=4),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1,1,1,1)) + hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dwrite_ikind_4_rank_6 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dwrite_ikind_4_rank_7 +!DEC$endif + SUBROUTINE h5dwrite_ikind_4_rank_7(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=4),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1,1,1,1,1)) + hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dwrite_ikind_4_rank_7 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dwrite_ikind_8_rank_0 +!DEC$endif + SUBROUTINE h5dwrite_ikind_8_rank_0(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=8),INTENT(IN), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf) + hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dwrite_ikind_8_rank_0 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dwrite_ikind_8_rank_1 +!DEC$endif + SUBROUTINE h5dwrite_ikind_8_rank_1(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=8),INTENT(IN), DIMENSION(dims(1)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1)) + hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dwrite_ikind_8_rank_1 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dwrite_ikind_8_rank_2 +!DEC$endif + SUBROUTINE h5dwrite_ikind_8_rank_2(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=8),INTENT(IN), DIMENSION(dims(1),dims(2)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1)) + hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dwrite_ikind_8_rank_2 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dwrite_ikind_8_rank_3 +!DEC$endif + SUBROUTINE h5dwrite_ikind_8_rank_3(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=8),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1)) + hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dwrite_ikind_8_rank_3 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dwrite_ikind_8_rank_4 +!DEC$endif + SUBROUTINE h5dwrite_ikind_8_rank_4(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=8),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1,1)) + hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dwrite_ikind_8_rank_4 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dwrite_ikind_8_rank_5 +!DEC$endif + SUBROUTINE h5dwrite_ikind_8_rank_5(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=8),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1,1,1)) + hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dwrite_ikind_8_rank_5 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dwrite_ikind_8_rank_6 +!DEC$endif + SUBROUTINE h5dwrite_ikind_8_rank_6(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=8),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1,1,1,1)) + hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dwrite_ikind_8_rank_6 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dwrite_ikind_8_rank_7 +!DEC$endif + SUBROUTINE h5dwrite_ikind_8_rank_7(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=8),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1,1,1,1,1)) + hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dwrite_ikind_8_rank_7 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dwrite_ikind_16_rank_0 +!DEC$endif + SUBROUTINE h5dwrite_ikind_16_rank_0(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=16),INTENT(IN), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf) + hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dwrite_ikind_16_rank_0 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dwrite_ikind_16_rank_1 +!DEC$endif + SUBROUTINE h5dwrite_ikind_16_rank_1(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=16),INTENT(IN), DIMENSION(dims(1)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1)) + hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dwrite_ikind_16_rank_1 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dwrite_ikind_16_rank_2 +!DEC$endif + SUBROUTINE h5dwrite_ikind_16_rank_2(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=16),INTENT(IN), DIMENSION(dims(1),dims(2)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1)) + hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dwrite_ikind_16_rank_2 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dwrite_ikind_16_rank_3 +!DEC$endif + SUBROUTINE h5dwrite_ikind_16_rank_3(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=16),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1)) + hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dwrite_ikind_16_rank_3 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dwrite_ikind_16_rank_4 +!DEC$endif + SUBROUTINE h5dwrite_ikind_16_rank_4(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=16),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1,1)) + hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dwrite_ikind_16_rank_4 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dwrite_ikind_16_rank_5 +!DEC$endif + SUBROUTINE h5dwrite_ikind_16_rank_5(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=16),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1,1,1)) + hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dwrite_ikind_16_rank_5 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dwrite_ikind_16_rank_6 +!DEC$endif + SUBROUTINE h5dwrite_ikind_16_rank_6(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=16),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1,1,1,1)) + hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dwrite_ikind_16_rank_6 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dwrite_ikind_16_rank_7 +!DEC$endif + SUBROUTINE h5dwrite_ikind_16_rank_7(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + INTEGER(KIND=16),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1,1,1,1,1)) + hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dwrite_ikind_16_rank_7 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dwrite_ckind_rank_1 +!DEC$endif + SUBROUTINE h5dwrite_ckind_rank_1(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + CHARACTER(LEN=*),INTENT(IN), DIMENSION(dims(1)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1)(1:1)) + hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dwrite_ckind_rank_1 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dwrite_ckind_rank_2 +!DEC$endif + SUBROUTINE h5dwrite_ckind_rank_2(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + CHARACTER(LEN=*),INTENT(IN), DIMENSION(dims(1),dims(2)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1)(1:1)) + hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dwrite_ckind_rank_2 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dwrite_ckind_rank_3 +!DEC$endif + SUBROUTINE h5dwrite_ckind_rank_3(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + CHARACTER(LEN=*),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1)(1:1)) + hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dwrite_ckind_rank_3 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dwrite_ckind_rank_4 +!DEC$endif + SUBROUTINE h5dwrite_ckind_rank_4(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + CHARACTER(LEN=*),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1,1)(1:1)) + hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dwrite_ckind_rank_4 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dwrite_ckind_rank_5 +!DEC$endif + SUBROUTINE h5dwrite_ckind_rank_5(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + CHARACTER(LEN=*),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1,1,1)(1:1)) + hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dwrite_ckind_rank_5 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dwrite_ckind_rank_6 +!DEC$endif + SUBROUTINE h5dwrite_ckind_rank_6(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + CHARACTER(LEN=*),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1,1,1,1)(1:1)) + hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dwrite_ckind_rank_6 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5dwrite_ckind_rank_7 +!DEC$endif + SUBROUTINE h5dwrite_ckind_rank_7(dset_id, mem_type_id, buf, dims, hdferr, & + mem_space_id, file_space_id, xfer_prp) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: dset_id + INTEGER(HID_T), INTENT(IN) :: mem_type_id + INTEGER(HSIZE_T), INTENT(IN), DIMENSION(*) :: dims + CHARACTER(LEN=*),INTENT(IN), DIMENSION(dims(1),dims(2),dims(3),dims(4),dims(5),dims(6),dims(7)), TARGET :: buf + INTEGER, INTENT(OUT) :: hdferr + INTEGER(HID_T), INTENT(IN), OPTIONAL :: mem_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: file_space_id + INTEGER(HID_T), INTENT(IN), OPTIONAL :: xfer_prp + INTEGER(HID_T) :: xfer_prp_default + INTEGER(HID_T) :: mem_space_id_default + INTEGER(HID_T) :: file_space_id_default + TYPE(C_PTR) :: f_ptr + xfer_prp_default = H5P_DEFAULT_F + mem_space_id_default = H5S_ALL_F + file_space_id_default = H5S_ALL_F + IF(PRESENT(xfer_prp)) xfer_prp_default = xfer_prp + IF(PRESENT(mem_space_id)) mem_space_id_default = mem_space_id + IF(PRESENT(file_space_id)) file_space_id_default = file_space_id + f_ptr = C_LOC(buf(1,1,1,1,1,1,1)(1:1)) + hdferr = h5dwrite_f_c(dset_id, mem_type_id, mem_space_id_default, & + file_space_id_default, xfer_prp_default, f_ptr) + END SUBROUTINE h5dwrite_ckind_rank_7 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5pset_fill_value_kind_4 +!DEC$endif + SUBROUTINE h5pset_fill_value_kind_4(prp_id, type_id, fillvalue, hdferr) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: prp_id + INTEGER(HID_T), INTENT(IN) :: type_id + REAL(KIND=4), INTENT(IN), TARGET :: fillvalue + INTEGER, INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(fillvalue) + hdferr = INT(h5pset_fill_value(prp_id, type_id, f_ptr)) + END SUBROUTINE h5pset_fill_value_kind_4 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5pset_fill_value_kind_8 +!DEC$endif + SUBROUTINE h5pset_fill_value_kind_8(prp_id, type_id, fillvalue, hdferr) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: prp_id + INTEGER(HID_T), INTENT(IN) :: type_id + REAL(KIND=8), INTENT(IN), TARGET :: fillvalue + INTEGER, INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(fillvalue) + hdferr = INT(h5pset_fill_value(prp_id, type_id, f_ptr)) + END SUBROUTINE h5pset_fill_value_kind_8 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5pset_fill_value_kind_10 +!DEC$endif + SUBROUTINE h5pset_fill_value_kind_10(prp_id, type_id, fillvalue, hdferr) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: prp_id + INTEGER(HID_T), INTENT(IN) :: type_id + REAL(KIND=10), INTENT(IN), TARGET :: fillvalue + INTEGER, INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(fillvalue) + hdferr = INT(h5pset_fill_value(prp_id, type_id, f_ptr)) + END SUBROUTINE h5pset_fill_value_kind_10 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5pset_fill_value_kind_16 +!DEC$endif + SUBROUTINE h5pset_fill_value_kind_16(prp_id, type_id, fillvalue, hdferr) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: prp_id + INTEGER(HID_T), INTENT(IN) :: type_id + REAL(KIND=16), INTENT(IN), TARGET :: fillvalue + INTEGER, INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(fillvalue) + hdferr = INT(h5pset_fill_value(prp_id, type_id, f_ptr)) + END SUBROUTINE h5pset_fill_value_kind_16 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5pget_fill_value_kind_4 +!DEC$endif + SUBROUTINE h5pget_fill_value_kind_4(prp_id, type_id, fillvalue, hdferr) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: prp_id + INTEGER(HID_T), INTENT(IN) :: type_id + REAL(KIND=4), INTENT(OUT), TARGET :: fillvalue + INTEGER, INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(fillvalue) + hdferr = INT(h5pget_fill_value(prp_id, type_id, f_ptr)) + END SUBROUTINE h5pget_fill_value_kind_4 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5pget_fill_value_kind_8 +!DEC$endif + SUBROUTINE h5pget_fill_value_kind_8(prp_id, type_id, fillvalue, hdferr) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: prp_id + INTEGER(HID_T), INTENT(IN) :: type_id + REAL(KIND=8), INTENT(OUT), TARGET :: fillvalue + INTEGER, INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(fillvalue) + hdferr = INT(h5pget_fill_value(prp_id, type_id, f_ptr)) + END SUBROUTINE h5pget_fill_value_kind_8 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5pget_fill_value_kind_10 +!DEC$endif + SUBROUTINE h5pget_fill_value_kind_10(prp_id, type_id, fillvalue, hdferr) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: prp_id + INTEGER(HID_T), INTENT(IN) :: type_id + REAL(KIND=10), INTENT(OUT), TARGET :: fillvalue + INTEGER, INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(fillvalue) + hdferr = INT(h5pget_fill_value(prp_id, type_id, f_ptr)) + END SUBROUTINE h5pget_fill_value_kind_10 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5pget_fill_value_kind_16 +!DEC$endif + SUBROUTINE h5pget_fill_value_kind_16(prp_id, type_id, fillvalue, hdferr) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: prp_id + INTEGER(HID_T), INTENT(IN) :: type_id + REAL(KIND=16), INTENT(OUT), TARGET :: fillvalue + INTEGER, INTENT(OUT) :: hdferr + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(fillvalue) + hdferr = INT(h5pget_fill_value(prp_id, type_id, f_ptr)) + END SUBROUTINE h5pget_fill_value_kind_16 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5pset_kind_4 +!DEC$endif + SUBROUTINE h5pset_kind_4(prp_id, name, value, hdferr) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: prp_id + CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: name + REAL(KIND=4), INTENT(IN), TARGET :: value + INTEGER, INTENT(OUT) :: hdferr + INTEGER :: name_len + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(value) + name_len = LEN(name) + hdferr = h5pget_c(prp_id, name, name_len, f_ptr) + END SUBROUTINE h5pset_kind_4 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5pset_kind_8 +!DEC$endif + SUBROUTINE h5pset_kind_8(prp_id, name, value, hdferr) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: prp_id + CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: name + REAL(KIND=8), INTENT(IN), TARGET :: value + INTEGER, INTENT(OUT) :: hdferr + INTEGER :: name_len + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(value) + name_len = LEN(name) + hdferr = h5pget_c(prp_id, name, name_len, f_ptr) + END SUBROUTINE h5pset_kind_8 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5pset_kind_10 +!DEC$endif + SUBROUTINE h5pset_kind_10(prp_id, name, value, hdferr) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: prp_id + CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: name + REAL(KIND=10), INTENT(IN), TARGET :: value + INTEGER, INTENT(OUT) :: hdferr + INTEGER :: name_len + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(value) + name_len = LEN(name) + hdferr = h5pget_c(prp_id, name, name_len, f_ptr) + END SUBROUTINE h5pset_kind_10 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5pset_kind_16 +!DEC$endif + SUBROUTINE h5pset_kind_16(prp_id, name, value, hdferr) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: prp_id + CHARACTER(KIND=C_CHAR), DIMENSION(*), INTENT(IN) :: name + REAL(KIND=16), INTENT(IN), TARGET :: value + INTEGER, INTENT(OUT) :: hdferr + INTEGER :: name_len + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(value) + name_len = LEN(name) + hdferr = h5pget_c(prp_id, name, name_len, f_ptr) + END SUBROUTINE h5pset_kind_16 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5pget_kind_4 +!DEC$endif + SUBROUTINE h5pget_kind_4(prp_id, name, value, hdferr) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: prp_id + CHARACTER(LEN=*), INTENT(IN) :: name + REAL(KIND=4), INTENT(OUT), TARGET :: value + INTEGER, INTENT(OUT) :: hdferr + INTEGER :: name_len + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(value) + name_len = LEN(name) + hdferr = h5pget_c(prp_id, name, name_len, f_ptr) + END SUBROUTINE h5pget_kind_4 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5pget_kind_8 +!DEC$endif + SUBROUTINE h5pget_kind_8(prp_id, name, value, hdferr) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: prp_id + CHARACTER(LEN=*), INTENT(IN) :: name + REAL(KIND=8), INTENT(OUT), TARGET :: value + INTEGER, INTENT(OUT) :: hdferr + INTEGER :: name_len + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(value) + name_len = LEN(name) + hdferr = h5pget_c(prp_id, name, name_len, f_ptr) + END SUBROUTINE h5pget_kind_8 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5pget_kind_10 +!DEC$endif + SUBROUTINE h5pget_kind_10(prp_id, name, value, hdferr) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: prp_id + CHARACTER(LEN=*), INTENT(IN) :: name + REAL(KIND=10), INTENT(OUT), TARGET :: value + INTEGER, INTENT(OUT) :: hdferr + INTEGER :: name_len + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(value) + name_len = LEN(name) + hdferr = h5pget_c(prp_id, name, name_len, f_ptr) + END SUBROUTINE h5pget_kind_10 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5pget_kind_16 +!DEC$endif + SUBROUTINE h5pget_kind_16(prp_id, name, value, hdferr) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: prp_id + CHARACTER(LEN=*), INTENT(IN) :: name + REAL(KIND=16), INTENT(OUT), TARGET :: value + INTEGER, INTENT(OUT) :: hdferr + INTEGER :: name_len + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(value) + name_len = LEN(name) + hdferr = h5pget_c(prp_id, name, name_len, f_ptr) + END SUBROUTINE h5pget_kind_16 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5pregister_kind_4 +!DEC$endif +SUBROUTINE h5pregister_kind_4(class, name, size, value, hdferr) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: class + CHARACTER(LEN=*), INTENT(IN) :: name + INTEGER(SIZE_T), INTENT(IN) :: size + REAL(KIND=4), INTENT(IN), TARGET :: value + INTEGER, INTENT(OUT) :: hdferr + INTEGER :: name_len + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(value) + name_len = LEN(name) + hdferr = h5pregister_c(class, name, name_len, size, f_ptr) +END SUBROUTINE h5pregister_kind_4 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5pregister_kind_8 +!DEC$endif +SUBROUTINE h5pregister_kind_8(class, name, size, value, hdferr) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: class + CHARACTER(LEN=*), INTENT(IN) :: name + INTEGER(SIZE_T), INTENT(IN) :: size + REAL(KIND=8), INTENT(IN), TARGET :: value + INTEGER, INTENT(OUT) :: hdferr + INTEGER :: name_len + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(value) + name_len = LEN(name) + hdferr = h5pregister_c(class, name, name_len, size, f_ptr) +END SUBROUTINE h5pregister_kind_8 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5pregister_kind_10 +!DEC$endif +SUBROUTINE h5pregister_kind_10(class, name, size, value, hdferr) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: class + CHARACTER(LEN=*), INTENT(IN) :: name + INTEGER(SIZE_T), INTENT(IN) :: size + REAL(KIND=10), INTENT(IN), TARGET :: value + INTEGER, INTENT(OUT) :: hdferr + INTEGER :: name_len + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(value) + name_len = LEN(name) + hdferr = h5pregister_c(class, name, name_len, size, f_ptr) +END SUBROUTINE h5pregister_kind_10 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5pregister_kind_16 +!DEC$endif +SUBROUTINE h5pregister_kind_16(class, name, size, value, hdferr) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: class + CHARACTER(LEN=*), INTENT(IN) :: name + INTEGER(SIZE_T), INTENT(IN) :: size + REAL(KIND=16), INTENT(IN), TARGET :: value + INTEGER, INTENT(OUT) :: hdferr + INTEGER :: name_len + TYPE(C_PTR) :: f_ptr + f_ptr = C_LOC(value) + name_len = LEN(name) + hdferr = h5pregister_c(class, name, name_len, size, f_ptr) +END SUBROUTINE h5pregister_kind_16 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5pinsert_kind_4 +!DEC$endif + SUBROUTINE h5pinsert_kind_4(plist, name, size, value, hdferr) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: plist + CHARACTER(LEN=*), INTENT(IN) :: name + INTEGER(SIZE_T), INTENT(IN) :: size + REAL(KIND=4), INTENT(IN), TARGET :: value + INTEGER, INTENT(OUT) :: hdferr + INTEGER :: name_len + TYPE(c_ptr) :: f_ptr + f_ptr = c_loc(value) + name_len = LEN(name) + hdferr = h5pinsert_c(plist, name , name_len, size, f_ptr) + END SUBROUTINE h5pinsert_kind_4 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5pinsert_kind_8 +!DEC$endif + SUBROUTINE h5pinsert_kind_8(plist, name, size, value, hdferr) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: plist + CHARACTER(LEN=*), INTENT(IN) :: name + INTEGER(SIZE_T), INTENT(IN) :: size + REAL(KIND=8), INTENT(IN), TARGET :: value + INTEGER, INTENT(OUT) :: hdferr + INTEGER :: name_len + TYPE(c_ptr) :: f_ptr + f_ptr = c_loc(value) + name_len = LEN(name) + hdferr = h5pinsert_c(plist, name , name_len, size, f_ptr) + END SUBROUTINE h5pinsert_kind_8 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5pinsert_kind_10 +!DEC$endif + SUBROUTINE h5pinsert_kind_10(plist, name, size, value, hdferr) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: plist + CHARACTER(LEN=*), INTENT(IN) :: name + INTEGER(SIZE_T), INTENT(IN) :: size + REAL(KIND=10), INTENT(IN), TARGET :: value + INTEGER, INTENT(OUT) :: hdferr + INTEGER :: name_len + TYPE(c_ptr) :: f_ptr + f_ptr = c_loc(value) + name_len = LEN(name) + hdferr = h5pinsert_c(plist, name , name_len, size, f_ptr) + END SUBROUTINE h5pinsert_kind_10 +!DEC$if defined(BUILD_HDF5_DLL) +!DEC$attributes dllexport :: h5pinsert_kind_16 +!DEC$endif + SUBROUTINE h5pinsert_kind_16(plist, name, size, value, hdferr) + IMPLICIT NONE + INTEGER(HID_T), INTENT(IN) :: plist + CHARACTER(LEN=*), INTENT(IN) :: name + INTEGER(SIZE_T), INTENT(IN) :: size + REAL(KIND=16), INTENT(IN), TARGET :: value + INTEGER, INTENT(OUT) :: hdferr + INTEGER :: name_len + TYPE(c_ptr) :: f_ptr + f_ptr = c_loc(value) + name_len = LEN(name) + hdferr = h5pinsert_c(plist, name , name_len, size, f_ptr) + END SUBROUTINE h5pinsert_kind_16 +END MODULE H5_gen diff --git a/config/fortpregen/gfortran/H5f90i_gen.h b/config/fortpregen/gfortran/H5f90i_gen.h new file mode 100644 index 00000000000..e20505b9956 --- /dev/null +++ b/config/fortpregen/gfortran/H5f90i_gen.h @@ -0,0 +1,49 @@ +/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * + * 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 LICENSE 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. * + * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ + + +#ifndef H5f90i_gen_H +#define H5f90i_gen_H + +/* This file is automatically generated by H5match_types.c at build time. */ + +#include "H5public.h" + +#define c_int_1 char +#define c_int_2 short +#define c_int_4 int +#define c_int_8 long long +#define c_size_t_8 size_t +#define c_time_t_8 time_t +#define c_hsize_t_8 hsize_t +typedef struct {c_int_8 a; c_int_8 b;} c_int_16; +#define c_float_4 float +#define c_float_8 double +#define c_float_10 long double +#define c_float_16 __float128 + +typedef c_int_8 haddr_t_f; +typedef c_hsize_t_8 hsize_t_f; +typedef c_int_8 hssize_t_f; +typedef c_int_8 off_t_f; +typedef c_size_t_8 size_t_f; +typedef c_time_t_8 time_t_f; +typedef c_int_4 int_f; +typedef c_float_4 real_C_FLOAT_f; +typedef c_float_8 real_C_DOUBLE_f; +typedef c_float_10 real_C_LONG_DOUBLE_f; +typedef c_float_16 real_C_FLOAT128_f; +typedef c_int_8 hid_t_f; +typedef c_float_4 real_f; +typedef c_float_8 double_f; + +#endif /* _H5f90i_gen_H */ diff --git a/config/fortpregen/gfortran/H5fortran_types.F90 b/config/fortpregen/gfortran/H5fortran_types.F90 new file mode 100644 index 00000000000..b21853626fe --- /dev/null +++ b/config/fortpregen/gfortran/H5fortran_types.F90 @@ -0,0 +1,42 @@ +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! 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 LICENSE 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. * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! +! +! This file is automatically generated by H5match_types.c and contains HDF5 Fortran90 type definitions. +! + MODULE H5FORTRAN_TYPES + USE ISO_C_BINDING + ! + ! HDF5 integers + ! + INTEGER, PARAMETER :: H5_FORTRAN_NUM_INTEGER_KINDS = 5 + INTEGER, PARAMETER :: HADDR_T = 8 + INTEGER, PARAMETER :: HSIZE_T = 8 + INTEGER, PARAMETER :: HSSIZE_T = 8 + INTEGER, PARAMETER :: OFF_T = 8 + INTEGER, PARAMETER :: SIZE_T = 8 + INTEGER, PARAMETER :: TIME_T = 8 + INTEGER, PARAMETER :: Fortran_INTEGER = 4 + INTEGER, DIMENSION(1:5), PARAMETER :: Fortran_INTEGER_AVAIL_KINDS = (/1,2,4,8,16/) + INTEGER, PARAMETER :: Fortran_REAL_C_FLOAT = 4 + INTEGER, PARAMETER :: Fortran_REAL_C_DOUBLE = 8 + INTEGER, PARAMETER :: Fortran_REAL_C_LONG_DOUBLE = 10 + INTEGER, PARAMETER :: Fortran_REAL_C_FLOAT128 = 16 + INTEGER, PARAMETER :: HID_T = 8 + INTEGER, PARAMETER :: Fortran_REAL = C_FLOAT + INTEGER, PARAMETER :: Fortran_DOUBLE = C_DOUBLE + INTEGER, PARAMETER :: H5R_DSET_REG_REF_BUF_SIZE_F = 12 + INTEGER, PARAMETER :: H5O_MAX_TOKEN_SIZE_F = 16 + + INTEGER(SIZE_T), PARAMETER :: OBJECT_NAMELEN_DEFAULT_F = -1 + + END MODULE H5FORTRAN_TYPES diff --git a/config/fortpregen/gfortran/tf_gen.F90 b/config/fortpregen/gfortran/tf_gen.F90 new file mode 100644 index 00000000000..bb69103f38a --- /dev/null +++ b/config/fortpregen/gfortran/tf_gen.F90 @@ -0,0 +1,387 @@ +!****h* ROBODoc/TH5_MISC_gen.F90 +! +! NAME +! TH5_MISC_gen +! +! PURPOSE +! This module is generated at build by H5_test_buildiface.F90 to handle checking +! in the tests all the detected KINDs. +! +! COPYRIGHT +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! 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 LICENSE 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. * +! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * +! +! AUTHOR +! H5_test_buildiface.F90 +! +!***** + +MODULE TH5_MISC_gen + USE, INTRINSIC :: ISO_C_BINDING + INTERFACE verify + MODULE PROCEDURE verify_real_kind_4 + MODULE PROCEDURE verify_real_kind_8 + MODULE PROCEDURE verify_real_kind_10 + MODULE PROCEDURE verify_real_kind_16 + MODULE PROCEDURE verify_integer_kind_1 + MODULE PROCEDURE verify_integer_kind_2 + MODULE PROCEDURE verify_integer_kind_4 + MODULE PROCEDURE verify_integer_kind_8 + MODULE PROCEDURE verify_integer_kind_16 + MODULE PROCEDURE verify_character + MODULE PROCEDURE verify_logical + MODULE PROCEDURE verify_c_bool + END INTERFACE + INTERFACE check_real_eq + MODULE PROCEDURE real_eq_kind_4 + MODULE PROCEDURE real_eq_kind_8 + MODULE PROCEDURE real_eq_kind_10 + MODULE PROCEDURE real_eq_kind_16 + END INTERFACE +CONTAINS +!DEC$if defined(BUILD_HDF5_TEST_DLL) +!DEC$attributes dllexport :: verify_integer_kind_1 +!DEC$endif + SUBROUTINE verify_integer_kind_1(string,value,correct_value,total_error,chck_eq) + IMPLICIT NONE + CHARACTER(LEN=*) :: string + INTEGER(KIND=1) :: value, correct_value + INTEGER :: total_error + LOGICAL, OPTIONAL :: chck_eq + LOGICAL :: chck_eq_opt + chck_eq_opt = .TRUE. + IF(PRESENT(chck_eq)) chck_eq_opt = chck_eq + IF(chck_eq_opt .EQV. .TRUE.)THEN + IF (value .NE. correct_value) THEN + total_error=total_error+1 + WRITE(*,*) "ERROR: INCORRECT INTEGER VALIDATION ", string + ENDIF + ELSE + IF (value .EQ. correct_value) THEN + total_error=total_error+1 + WRITE(*,*) "ERROR: INCORRECT INTEGER VALIDATION ", string + ENDIF + ENDIF + END SUBROUTINE verify_integer_kind_1 +!DEC$if defined(BUILD_HDF5_TEST_DLL) +!DEC$attributes dllexport :: verify_integer_kind_2 +!DEC$endif + SUBROUTINE verify_integer_kind_2(string,value,correct_value,total_error,chck_eq) + IMPLICIT NONE + CHARACTER(LEN=*) :: string + INTEGER(KIND=2) :: value, correct_value + INTEGER :: total_error + LOGICAL, OPTIONAL :: chck_eq + LOGICAL :: chck_eq_opt + chck_eq_opt = .TRUE. + IF(PRESENT(chck_eq)) chck_eq_opt = chck_eq + IF(chck_eq_opt .EQV. .TRUE.)THEN + IF (value .NE. correct_value) THEN + total_error=total_error+1 + WRITE(*,*) "ERROR: INCORRECT INTEGER VALIDATION ", string + ENDIF + ELSE + IF (value .EQ. correct_value) THEN + total_error=total_error+1 + WRITE(*,*) "ERROR: INCORRECT INTEGER VALIDATION ", string + ENDIF + ENDIF + END SUBROUTINE verify_integer_kind_2 +!DEC$if defined(BUILD_HDF5_TEST_DLL) +!DEC$attributes dllexport :: verify_integer_kind_4 +!DEC$endif + SUBROUTINE verify_integer_kind_4(string,value,correct_value,total_error,chck_eq) + IMPLICIT NONE + CHARACTER(LEN=*) :: string + INTEGER(KIND=4) :: value, correct_value + INTEGER :: total_error + LOGICAL, OPTIONAL :: chck_eq + LOGICAL :: chck_eq_opt + chck_eq_opt = .TRUE. + IF(PRESENT(chck_eq)) chck_eq_opt = chck_eq + IF(chck_eq_opt .EQV. .TRUE.)THEN + IF (value .NE. correct_value) THEN + total_error=total_error+1 + WRITE(*,*) "ERROR: INCORRECT INTEGER VALIDATION ", string + ENDIF + ELSE + IF (value .EQ. correct_value) THEN + total_error=total_error+1 + WRITE(*,*) "ERROR: INCORRECT INTEGER VALIDATION ", string + ENDIF + ENDIF + END SUBROUTINE verify_integer_kind_4 +!DEC$if defined(BUILD_HDF5_TEST_DLL) +!DEC$attributes dllexport :: verify_integer_kind_8 +!DEC$endif + SUBROUTINE verify_integer_kind_8(string,value,correct_value,total_error,chck_eq) + IMPLICIT NONE + CHARACTER(LEN=*) :: string + INTEGER(KIND=8) :: value, correct_value + INTEGER :: total_error + LOGICAL, OPTIONAL :: chck_eq + LOGICAL :: chck_eq_opt + chck_eq_opt = .TRUE. + IF(PRESENT(chck_eq)) chck_eq_opt = chck_eq + IF(chck_eq_opt .EQV. .TRUE.)THEN + IF (value .NE. correct_value) THEN + total_error=total_error+1 + WRITE(*,*) "ERROR: INCORRECT INTEGER VALIDATION ", string + ENDIF + ELSE + IF (value .EQ. correct_value) THEN + total_error=total_error+1 + WRITE(*,*) "ERROR: INCORRECT INTEGER VALIDATION ", string + ENDIF + ENDIF + END SUBROUTINE verify_integer_kind_8 +!DEC$if defined(BUILD_HDF5_TEST_DLL) +!DEC$attributes dllexport :: verify_integer_kind_16 +!DEC$endif + SUBROUTINE verify_integer_kind_16(string,value,correct_value,total_error,chck_eq) + IMPLICIT NONE + CHARACTER(LEN=*) :: string + INTEGER(KIND=16) :: value, correct_value + INTEGER :: total_error + LOGICAL, OPTIONAL :: chck_eq + LOGICAL :: chck_eq_opt + chck_eq_opt = .TRUE. + IF(PRESENT(chck_eq)) chck_eq_opt = chck_eq + IF(chck_eq_opt .EQV. .TRUE.)THEN + IF (value .NE. correct_value) THEN + total_error=total_error+1 + WRITE(*,*) "ERROR: INCORRECT INTEGER VALIDATION ", string + ENDIF + ELSE + IF (value .EQ. correct_value) THEN + total_error=total_error+1 + WRITE(*,*) "ERROR: INCORRECT INTEGER VALIDATION ", string + ENDIF + ENDIF + END SUBROUTINE verify_integer_kind_16 +!DEC$if defined(BUILD_HDF5_TEST_DLL) +!DEC$attributes dllexport :: verify_real_kind_4 +!DEC$endif + SUBROUTINE verify_real_kind_4(string,value,correct_value,total_error,chck_eq) + IMPLICIT NONE + CHARACTER(LEN=*) :: string + REAL(KIND=4) :: value, correct_value + INTEGER :: total_error + LOGICAL, OPTIONAL :: chck_eq + LOGICAL :: chck_eq_opt + chck_eq_opt = .TRUE. + IF(PRESENT(chck_eq)) chck_eq_opt = chck_eq + IF(chck_eq_opt .EQV. .TRUE.)THEN + IF (.NOT.real_eq_kind_4( value, correct_value) ) THEN + total_error=total_error+1 + WRITE(*,*) "ERROR: INCORRECT REAL VALIDATION ", string + ENDIF + ELSE + IF (real_eq_kind_4( value, correct_value) ) THEN + total_error=total_error+1 + WRITE(*,*) "ERROR: INCORRECT REAL VALIDATION ", string + ENDIF + ENDIF + END SUBROUTINE verify_real_kind_4 +!DEC$if defined(BUILD_HDF5_TEST_DLL) +!DEC$attributes dllexport :: real_eq_kind_4 +!DEC$endif + LOGICAL FUNCTION real_eq_kind_4(a,b,ulp) + IMPLICIT NONE + REAL(KIND=4), INTENT (in):: a,b + REAL(KIND=4) :: Rel + INTEGER, OPTIONAL, INTENT( IN ) :: ulp + IF ( PRESENT( ulp ) ) Rel = REAL( ABS(ulp), 4) + Rel = 1.0_4 + real_eq_kind_4 = ABS( a - b ) < ( Rel * SPACING( MAX(ABS(a),ABS(b)) ) ) + END FUNCTION real_eq_kind_4 +!DEC$if defined(BUILD_HDF5_TEST_DLL) +!DEC$attributes dllexport :: verify_real_kind_8 +!DEC$endif + SUBROUTINE verify_real_kind_8(string,value,correct_value,total_error,chck_eq) + IMPLICIT NONE + CHARACTER(LEN=*) :: string + REAL(KIND=8) :: value, correct_value + INTEGER :: total_error + LOGICAL, OPTIONAL :: chck_eq + LOGICAL :: chck_eq_opt + chck_eq_opt = .TRUE. + IF(PRESENT(chck_eq)) chck_eq_opt = chck_eq + IF(chck_eq_opt .EQV. .TRUE.)THEN + IF (.NOT.real_eq_kind_8( value, correct_value) ) THEN + total_error=total_error+1 + WRITE(*,*) "ERROR: INCORRECT REAL VALIDATION ", string + ENDIF + ELSE + IF (real_eq_kind_8( value, correct_value) ) THEN + total_error=total_error+1 + WRITE(*,*) "ERROR: INCORRECT REAL VALIDATION ", string + ENDIF + ENDIF + END SUBROUTINE verify_real_kind_8 +!DEC$if defined(BUILD_HDF5_TEST_DLL) +!DEC$attributes dllexport :: real_eq_kind_8 +!DEC$endif + LOGICAL FUNCTION real_eq_kind_8(a,b,ulp) + IMPLICIT NONE + REAL(KIND=8), INTENT (in):: a,b + REAL(KIND=8) :: Rel + INTEGER, OPTIONAL, INTENT( IN ) :: ulp + IF ( PRESENT( ulp ) ) Rel = REAL( ABS(ulp), 8) + Rel = 1.0_8 + real_eq_kind_8 = ABS( a - b ) < ( Rel * SPACING( MAX(ABS(a),ABS(b)) ) ) + END FUNCTION real_eq_kind_8 +!DEC$if defined(BUILD_HDF5_TEST_DLL) +!DEC$attributes dllexport :: verify_real_kind_10 +!DEC$endif + SUBROUTINE verify_real_kind_10(string,value,correct_value,total_error,chck_eq) + IMPLICIT NONE + CHARACTER(LEN=*) :: string + REAL(KIND=10) :: value, correct_value + INTEGER :: total_error + LOGICAL, OPTIONAL :: chck_eq + LOGICAL :: chck_eq_opt + chck_eq_opt = .TRUE. + IF(PRESENT(chck_eq)) chck_eq_opt = chck_eq + IF(chck_eq_opt .EQV. .TRUE.)THEN + IF (.NOT.real_eq_kind_10( value, correct_value) ) THEN + total_error=total_error+1 + WRITE(*,*) "ERROR: INCORRECT REAL VALIDATION ", string + ENDIF + ELSE + IF (real_eq_kind_10( value, correct_value) ) THEN + total_error=total_error+1 + WRITE(*,*) "ERROR: INCORRECT REAL VALIDATION ", string + ENDIF + ENDIF + END SUBROUTINE verify_real_kind_10 +!DEC$if defined(BUILD_HDF5_TEST_DLL) +!DEC$attributes dllexport :: real_eq_kind_10 +!DEC$endif + LOGICAL FUNCTION real_eq_kind_10(a,b,ulp) + IMPLICIT NONE + REAL(KIND=10), INTENT (in):: a,b + REAL(KIND=10) :: Rel + INTEGER, OPTIONAL, INTENT( IN ) :: ulp + IF ( PRESENT( ulp ) ) Rel = REAL( ABS(ulp), 10) + Rel = 1.0_10 + real_eq_kind_10 = ABS( a - b ) < ( Rel * SPACING( MAX(ABS(a),ABS(b)) ) ) + END FUNCTION real_eq_kind_10 +!DEC$if defined(BUILD_HDF5_TEST_DLL) +!DEC$attributes dllexport :: verify_real_kind_16 +!DEC$endif + SUBROUTINE verify_real_kind_16(string,value,correct_value,total_error,chck_eq) + IMPLICIT NONE + CHARACTER(LEN=*) :: string + REAL(KIND=16) :: value, correct_value + INTEGER :: total_error + LOGICAL, OPTIONAL :: chck_eq + LOGICAL :: chck_eq_opt + chck_eq_opt = .TRUE. + IF(PRESENT(chck_eq)) chck_eq_opt = chck_eq + IF(chck_eq_opt .EQV. .TRUE.)THEN + IF (.NOT.real_eq_kind_16( value, correct_value) ) THEN + total_error=total_error+1 + WRITE(*,*) "ERROR: INCORRECT REAL VALIDATION ", string + ENDIF + ELSE + IF (real_eq_kind_16( value, correct_value) ) THEN + total_error=total_error+1 + WRITE(*,*) "ERROR: INCORRECT REAL VALIDATION ", string + ENDIF + ENDIF + END SUBROUTINE verify_real_kind_16 +!DEC$if defined(BUILD_HDF5_TEST_DLL) +!DEC$attributes dllexport :: real_eq_kind_16 +!DEC$endif + LOGICAL FUNCTION real_eq_kind_16(a,b,ulp) + IMPLICIT NONE + REAL(KIND=16), INTENT (in):: a,b + REAL(KIND=16) :: Rel + INTEGER, OPTIONAL, INTENT( IN ) :: ulp + IF ( PRESENT( ulp ) ) Rel = REAL( ABS(ulp), 16) + Rel = 1.0_16 + real_eq_kind_16 = ABS( a - b ) < ( Rel * SPACING( MAX(ABS(a),ABS(b)) ) ) + END FUNCTION real_eq_kind_16 +!DEC$if defined(BUILD_HDF5_TEST_DLL) +!DEC$attributes dllexport :: verify_character +!DEC$endif + SUBROUTINE verify_character(string,value,correct_value,total_error,chck_eq) + IMPLICIT NONE + CHARACTER*(*) :: string + CHARACTER*(*) :: value, correct_value + INTEGER :: total_error + LOGICAL, OPTIONAL :: chck_eq + LOGICAL :: chck_eq_opt + chck_eq_opt = .TRUE. + IF(PRESENT(chck_eq)) chck_eq_opt = chck_eq + IF(chck_eq_opt .EQV. .TRUE.)THEN + IF (TRIM(value) .NE. TRIM(correct_value)) THEN + total_error = total_error + 1 + WRITE(*,*) "ERROR: INCORRECT VALIDATION ", string + ENDIF + ELSE + IF (TRIM(value) .EQ. TRIM(correct_value)) THEN + total_error = total_error + 1 + WRITE(*,*) "ERROR: INCORRECT VALIDATION ", string + ENDIF + ENDIF + END SUBROUTINE verify_character +!DEC$if defined(BUILD_HDF5_TEST_DLL) +!DEC$attributes dllexport :: verify_logical +!DEC$endif + SUBROUTINE verify_logical(string,value,correct_value,total_error,chck_eq) + IMPLICIT NONE + CHARACTER(LEN=*) :: string + LOGICAL :: value, correct_value + INTEGER :: total_error + LOGICAL, OPTIONAL :: chck_eq + LOGICAL :: chck_eq_opt + chck_eq_opt = .TRUE. + IF(PRESENT(chck_eq)) chck_eq_opt = chck_eq + IF(chck_eq_opt .EQV. .TRUE.)THEN + IF (value .NEQV. correct_value) THEN + total_error = total_error + 1 + WRITE(*,*) "ERROR: INCORRECT VALIDATION ", string + ENDIF + ELSE + IF (value .EQV. correct_value) THEN + total_error = total_error + 1 + WRITE(*,*) "ERROR: INCORRECT VALIDATION ", string + ENDIF + ENDIF + END SUBROUTINE verify_logical +!DEC$if defined(BUILD_HDF5_TEST_DLL) +!DEC$attributes dllexport :: verify_c_bool +!DEC$endif + SUBROUTINE verify_c_bool(string,value,correct_value,total_error,chck_eq) + IMPLICIT NONE + CHARACTER(LEN=*) :: string + LOGICAL(C_BOOL) :: value, correct_value + INTEGER :: total_error + LOGICAL, OPTIONAL :: chck_eq + LOGICAL :: chck_eq_opt + chck_eq_opt = .TRUE. + IF(PRESENT(chck_eq)) chck_eq_opt = chck_eq + IF(chck_eq_opt .EQV. .TRUE.)THEN + IF (value .NEQV. correct_value) THEN + total_error = total_error + 1 + WRITE(*,*) "ERROR: INCORRECT VALIDATION ", string + ENDIF + ELSE + IF (value .EQV. correct_value) THEN + total_error = total_error + 1 + WRITE(*,*) "ERROR: INCORRECT VALIDATION ", string + ENDIF + ENDIF + END SUBROUTINE verify_c_bool +END MODULE TH5_MISC_gen diff --git a/fortran/src/CMakeLists.txt b/fortran/src/CMakeLists.txt index 97414bf68ed..5e7745803db 100644 --- a/fortran/src/CMakeLists.txt +++ b/fortran/src/CMakeLists.txt @@ -99,6 +99,12 @@ configure_file (${HDF5_F90_SRC_SOURCE_DIR}/H5fort_type_defines.h.cmake ${HDF5_F9 set (Fortran_COMPILER_ID CMAKE_Fortran_COMPILER_ID) +if (HDF5_USE_PREGEN) + set (HDF5_GENERATED_SOURCE_DIR ${HDF5_USE_PREGEN_DIR}) +else () + set (HDF5_GENERATED_SOURCE_DIR ${HDF5_F90_BINARY_DIR}) +endif () + #----------------------------------------------------------------------------- # Setup the Fortran auto-detection utilities # H5_buildiface.F90 used to generate various KIND interfaces @@ -138,20 +144,51 @@ add_executable (H5match_types ${HDF5_F90_SRC_SOURCE_DIR}/H5match_types.c ) target_include_directories (H5match_types PRIVATE "${HDF5_SRC_BINARY_DIR};${HDF5_SRC_INCLUDE_DIRS};${HDF5_F90_BINARY_DIR};$<$:${MPI_C_INCLUDE_DIRS}>") - -add_custom_command (TARGET H5match_types POST_BUILD - BYPRODUCTS ${HDF5_F90_BINARY_DIR}/H5f90i_gen.h ${HDF5_F90_BINARY_DIR}/H5fortran_types.F90 - COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ - WORKING_DIRECTORY ${HDF5_F90_BINARY_DIR} -) +# check if a pre-generated H5fortran_types.F90 file is present +if (NOT EXISTS "${HDF5_GENERATED_SOURCE_DIR}/H5fortran_types.F90") + message (STATUS "No pre-generated H5fortran_types.F90 file found - generating one") + # execute the H5match_types program + add_custom_command (TARGET H5match_types POST_BUILD + BYPRODUCTS ${HDF5_F90_BINARY_DIR}/H5f90i_gen.h ${HDF5_F90_BINARY_DIR}/H5fortran_types.F90 + COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ + WORKING_DIRECTORY ${HDF5_F90_BINARY_DIR} + COMMENT "Generating the H5fortran_types.F90 and H5f90i_gen.h files" + ) +else () + message (STATUS "Using existing pre-generated H5fortran_types.F90 file") + add_custom_command ( + OUTPUT gen_SRCS.stamp1 + COMMAND ${CMAKE_COMMAND} + ARGS -E touch gen_SRCS.stamp1 + DEPENDS H5f90i_gen.h H5fortran_types.F90 + WORKING_DIRECTORY ${HDF5_GENERATED_SOURCE_DIR} + COMMENT "Touch existing H5f90i_gen.h H5fortran_types.F90" + ) + set_source_files_properties (${HDF5_GENERATED_SOURCE_DIR}/H5fortran_types.F90 PROPERTIES GENERATED TRUE) + if (BUILD_SHARED_LIBS) + add_custom_command ( + OUTPUT shared/shared_gen_SRCS.stamp1 + BYPRODUCTS shared/H5f90i_gen.h shared/H5fortran_types.F90 + COMMAND ${CMAKE_COMMAND} + ARGS -E copy_if_different H5f90i_gen.h shared/H5f90i_gen.h + COMMAND ${CMAKE_COMMAND} + ARGS -E copy_if_different H5fortran_types.F90 shared/H5fortran_types.F90 + COMMAND ${CMAKE_COMMAND} + ARGS -E touch shared/shared_gen_SRCS.stamp1 + DEPENDS H5f90i_gen.h H5fortran_types.F90 gen_SRCS.stamp1 + WORKING_DIRECTORY ${HDF5_GENERATED_SOURCE_DIR} + COMMENT "Copy existing H5f90i_gen.h H5fortran_types.F90 to shared folder" + ) + endif () +endif () if (BUILD_STATIC_LIBS) add_custom_command (TARGET H5match_types POST_BUILD BYPRODUCTS ${HDF5_F90_BINARY_DIR}/static/H5f90i_gen.h ${HDF5_F90_BINARY_DIR}/static/H5fortran_types.F90 COMMAND ${CMAKE_COMMAND} - ARGS -E copy_if_different ${HDF5_F90_BINARY_DIR}/H5f90i_gen.h ${HDF5_F90_BINARY_DIR}/static/H5f90i_gen.h + ARGS -E copy_if_different ${HDF5_GENERATED_SOURCE_DIR}/H5f90i_gen.h ${HDF5_F90_BINARY_DIR}/static/H5f90i_gen.h COMMAND ${CMAKE_COMMAND} - ARGS -E copy_if_different ${HDF5_F90_BINARY_DIR}/H5fortran_types.F90 ${HDF5_F90_BINARY_DIR}/static/H5fortran_types.F90 + ARGS -E copy_if_different ${HDF5_GENERATED_SOURCE_DIR}/H5fortran_types.F90 ${HDF5_F90_BINARY_DIR}/static/H5fortran_types.F90 WORKING_DIRECTORY ${HDF5_F90_BINARY_DIR}/static ) set_source_files_properties (${HDF5_F90_BINARY_DIR}/static/H5f90i_gen.h PROPERTIES GENERATED TRUE) @@ -161,9 +198,9 @@ if (BUILD_SHARED_LIBS) add_custom_command (TARGET H5match_types POST_BUILD BYPRODUCTS ${HDF5_F90_BINARY_DIR}/shared/H5f90i_gen.h ${HDF5_F90_BINARY_DIR}/shared/H5fortran_types.F90 COMMAND ${CMAKE_COMMAND} - ARGS -E copy_if_different ${HDF5_F90_BINARY_DIR}/H5f90i_gen.h ${HDF5_F90_BINARY_DIR}/shared/H5f90i_gen.h + ARGS -E copy_if_different ${HDF5_GENERATED_SOURCE_DIR}/H5f90i_gen.h ${HDF5_F90_BINARY_DIR}/shared/H5f90i_gen.h COMMAND ${CMAKE_COMMAND} - ARGS -E copy_if_different ${HDF5_F90_BINARY_DIR}/H5fortran_types.F90 ${HDF5_F90_BINARY_DIR}/shared/H5fortran_types.F90 + ARGS -E copy_if_different ${HDF5_GENERATED_SOURCE_DIR}/H5fortran_types.F90 ${HDF5_F90_BINARY_DIR}/shared/H5fortran_types.F90 WORKING_DIRECTORY ${HDF5_F90_BINARY_DIR}/shared ) set_source_files_properties (${HDF5_F90_BINARY_DIR}/shared/H5f90i_gen.h PROPERTIES GENERATED TRUE) @@ -289,22 +326,43 @@ set (f90_F_GEN_SOURCES ${HDF5_F90_SRC_SOURCE_DIR}/H5Dff.F90 ${HDF5_F90_SRC_SOURCE_DIR}/H5Pff.F90 ) -add_custom_command (TARGET H5_buildiface POST_BUILD - BYPRODUCTS ${HDF5_F90_BINARY_DIR}/H5_gen.F90 - COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ - WORKING_DIRECTORY ${HDF5_F90_BINARY_DIR} - COMMENT "Generating the H5_gen.F90 file" -) +# check if a pre-generated H5fortran_types.F90 file is present +if (NOT EXISTS "${HDF5_GENERATED_SOURCE_DIR}/H5_gen.F90") + message (STATUS "No pre-generated H5_gen.F90 file found - generating one") + add_custom_command (TARGET H5_buildiface POST_BUILD + BYPRODUCTS ${HDF5_F90_BINARY_DIR}/H5_gen.F90 + COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ + WORKING_DIRECTORY ${HDF5_F90_BINARY_DIR} + COMMENT "Generating the H5_gen.F90 file" + ) +else () + message (STATUS "Using existing pre-generated H5_gen.F90 file") + add_custom_command ( + OUTPUT gen_SRCS.stamp3 + COMMAND ${CMAKE_COMMAND} + ARGS -E touch gen_SRCS.stamp3 + DEPENDS H5_gen.F90 + WORKING_DIRECTORY ${HDF5_GENERATED_SOURCE_DIR} + COMMENT "Touch existing H5_gen.F90" + ) + set_source_files_properties (${HDF5_GENERATED_SOURCE_DIR}/H5_gen.F90 PROPERTIES GENERATED TRUE) +endif () + +set (f90_gen_deps "") +if (NOT HDF5_USE_PREGEN) + set (f90_gen_deps H5_buildiface) +endif () + if (BUILD_STATIC_LIBS) add_custom_command (TARGET H5_buildiface POST_BUILD BYPRODUCTS ${HDF5_F90_BINARY_DIR}/static/H5_gen.F90 COMMAND ${CMAKE_COMMAND} - ARGS -E copy_if_different ${HDF5_F90_BINARY_DIR}/H5_gen.F90 ${HDF5_F90_BINARY_DIR}/static/H5_gen.F90 + ARGS -E copy_if_different ${HDF5_GENERATED_SOURCE_DIR}/H5_gen.F90 ${HDF5_F90_BINARY_DIR}/static/H5_gen.F90 WORKING_DIRECTORY ${HDF5_F90_BINARY_DIR}/static COMMENT "Generating the H5_gen.F90 file" ) add_custom_target (H5gen ALL - DEPENDS H5_buildiface ${HDF5_F90_BINARY_DIR}/static/H5_gen.F90 + DEPENDS ${f90_gen_deps} ${HDF5_F90_BINARY_DIR}/static/H5_gen.F90 ) set_source_files_properties (${HDF5_F90_BINARY_DIR}/static/H5_gen.F90 PROPERTIES GENERATED TRUE) endif () @@ -313,12 +371,12 @@ if (BUILD_SHARED_LIBS) add_custom_command (TARGET H5_buildiface POST_BUILD BYPRODUCTS ${HDF5_F90_BINARY_DIR}/shared/H5_gen.F90 COMMAND ${CMAKE_COMMAND} - ARGS -E copy_if_different ${HDF5_F90_BINARY_DIR}/H5_gen.F90 ${HDF5_F90_BINARY_DIR}/shared/H5_gen.F90 + ARGS -E copy_if_different ${HDF5_GENERATED_SOURCE_DIR}/H5_gen.F90 ${HDF5_F90_BINARY_DIR}/shared/H5_gen.F90 WORKING_DIRECTORY ${HDF5_F90_BINARY_DIR}/shared COMMENT "Generating the H5_gen.F90 shared file" ) add_custom_target (H5genSH ALL - DEPENDS H5_buildiface ${HDF5_F90_BINARY_DIR}/shared/H5_gen.F90 + DEPENDS ${f90_gen_deps} ${HDF5_F90_BINARY_DIR}/shared/H5_gen.F90 ) set_source_files_properties (${HDF5_F90_BINARY_DIR}/shared/H5_gen.F90 PROPERTIES GENERATED TRUE) endif () diff --git a/fortran/test/CMakeLists.txt b/fortran/test/CMakeLists.txt index 0ea52e385fc..e33f5afcf15 100644 --- a/fortran/test/CMakeLists.txt +++ b/fortran/test/CMakeLists.txt @@ -7,6 +7,12 @@ cmake_minimum_required (VERSION 3.26) project (HDF5_FORTRAN_TESTS C Fortran) +if (HDF5_USE_PREGEN) + set (HDF5_GENERATED_SOURCE_DIR ${HDF5_USE_PREGEN_DIR}) +else () + set (HDF5_GENERATED_SOURCE_DIR ${HDF5_FORTRAN_TESTS_BINARY_DIR}) +endif () + #----------------------------------------------------------------------------- # Setup the Fortran auto-detection utilities # H5_test_buildiface.F90 used to generate various KIND test interfaces @@ -96,26 +102,52 @@ if (HDF5_ENABLE_FORMATTERS) endif () endif () -if (NOT BUILD_SHARED_LIBS) +if (NOT EXISTS "${HDF5_GENERATED_SOURCE_DIR}/tf_gen.F90") + message (STATUS "No pre-generated tf_gen.F90 file found - generating one") add_custom_command (TARGET H5_test_buildiface POST_BUILD - BYPRODUCTS ${HDF5_FORTRAN_TESTS_BINARY_DIR}/static/tf_gen.F90 + BYPRODUCTS ${HDF5_FORTRAN_TESTS_BINARY_DIR}/tf_gen.F90 COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ - WORKING_DIRECTORY ${HDF5_FORTRAN_TESTS_BINARY_DIR}/static + WORKING_DIRECTORY ${HDF5_FORTRAN_TESTS_BINARY_DIR} COMMENT "Generating the tf_gen.F90 static file" ) +else () + message (STATUS "Using existing pre-generated tf_gen.F90 file") + add_custom_command ( + OUTPUT gen_SRCS.stamp4 + COMMAND ${CMAKE_COMMAND} + ARGS -E touch gen_SRCS.stamp4 + DEPENDS tf_gen.F90 + WORKING_DIRECTORY ${HDF5_GENERATED_SOURCE_DIR} + COMMENT "Touch existing tf_gen.F90" + ) + set_source_files_properties (${HDF5_FORTRAN_TESTS_BINARY_DIR}/tf_gen.F90 PROPERTIES GENERATED TRUE) +endif () + +set (test_f90_gen_deps "") +if (NOT HDF5_USE_PREGEN) + set (test_f90_gen_deps H5_test_buildiface) +endif () + +if (NOT BUILD_SHARED_LIBS) + add_custom_command (TARGET H5_test_buildiface POST_BUILD + BYPRODUCTS ${HDF5_FORTRAN_TESTS_BINARY_DIR}/static/tf_gen.F90 + COMMAND ${CMAKE_COMMAND} + ARGS -E copy_if_different ${HDF5_GENERATED_SOURCE_DIR}/tf_gen.F90 ${HDF5_FORTRAN_TESTS_BINARY_DIR}/static/tf_gen.F90 + WORKING_DIRECTORY ${HDF5_FORTRAN_TESTS_BINARY_DIR}/static + ) add_custom_target (H5testgen ALL - DEPENDS H5_test_buildiface ${HDF5_FORTRAN_TESTS_BINARY_DIR}/static/tf_gen.F90 + DEPENDS ${test_f90_gen_deps} ${HDF5_FORTRAN_TESTS_BINARY_DIR}/static/tf_gen.F90 ) set_source_files_properties (${HDF5_FORTRAN_TESTS_BINARY_DIR}/static/tf_gen.F90 PROPERTIES GENERATED TRUE) else () add_custom_command (TARGET H5_test_buildiface POST_BUILD BYPRODUCTS ${HDF5_FORTRAN_TESTS_BINARY_DIR}/shared/tf_gen.F90 - COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ + COMMAND ${CMAKE_COMMAND} + ARGS -E copy_if_different ${HDF5_GENERATED_SOURCE_DIR}/tf_gen.F90 ${HDF5_FORTRAN_TESTS_BINARY_DIR}/shared/tf_gen.F90 WORKING_DIRECTORY ${HDF5_FORTRAN_TESTS_BINARY_DIR}/shared - COMMENT "Generating the tf_gen.F90 shared file" ) add_custom_target (H5testgenSH ALL - DEPENDS H5_test_buildiface ${HDF5_FORTRAN_TESTS_BINARY_DIR}/shared/tf_gen.F90 + DEPENDS ${test_f90_gen_deps} ${HDF5_FORTRAN_TESTS_BINARY_DIR}/shared/tf_gen.F90 ) set_source_files_properties (${HDF5_FORTRAN_TESTS_BINARY_DIR}/shared/tf_gen.F90 PROPERTIES GENERATED TRUE) endif () diff --git a/hl/fortran/src/CMakeLists.txt b/hl/fortran/src/CMakeLists.txt index 8a5ca544357..b1b657addcc 100644 --- a/hl/fortran/src/CMakeLists.txt +++ b/hl/fortran/src/CMakeLists.txt @@ -6,6 +6,12 @@ cmake_minimum_required (VERSION 3.26) project (HDF5_HL_F90_SRC C Fortran) +if (HDF5_USE_PREGEN) + set (HDF5_GENERATED_SOURCE_DIR ${HDF5_USE_PREGEN_DIR}) +else () + set (HDF5_GENERATED_SOURCE_DIR ${HDF5_HL_F90_BINARY_DIR}) +endif () + #----------------------------------------------------------------------------- # configure def file for shared libs on windows if (WIN32) @@ -116,15 +122,42 @@ set (HDF5_HL_F90_F_BASE_SOURCES ${HDF5_HL_F90_SRC_SOURCE_DIR}/H5DOff.F90 ) +if (NOT EXISTS "${HDF5_GENERATED_SOURCE_DIR}/H5LTff_gen.F90") + message (STATUS "No pre-generated H5LTff_gen.F90 H5TBff_gen.F90 file found - generating one") + add_custom_command (TARGET H5HL_buildiface POST_BUILD + BYPRODUCTS ${HDF5_HL_F90_BINARY_DIR}/H5LTff_gen.F90 ${HDF5_HL_F90_BINARY_DIR}/H5TBff_gen.F90 + COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ + WORKING_DIRECTORY ${HDF5_HL_F90_BINARY_DIR} + COMMENT "Generating the H5LTff_gen.F90, H5TBff_gen.F90 files" + ) +else () + message (STATUS "Using existing pre-generated H5LTff_gen.F90 H5TBff_gen.F90 file") + add_custom_command ( + OUTPUT gen_SRCS.stamp5 + COMMAND ${CMAKE_COMMAND} + ARGS -E touch gen_SRCS.stamp5 + DEPENDS H5LTff_gen.F90 H5TBff_gen.F90 + WORKING_DIRECTORY ${HDF5_GENERATED_SOURCE_DIR} + COMMENT "Touch existing H5LTff_gen.F90 H5TBff_gen.F90" + ) +endif () + +set (hl_f90_gen_deps "") +if (NOT HDF5_USE_PREGEN) + set (hl_f90_gen_deps H5HL_buildiface) +endif () + if (BUILD_STATIC_LIBS) add_custom_command (TARGET H5HL_buildiface POST_BUILD BYPRODUCTS ${HDF5_HL_F90_BINARY_DIR}/static/H5LTff_gen.F90 ${HDF5_HL_F90_BINARY_DIR}/static/H5TBff_gen.F90 - COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ + COMMAND ${CMAKE_COMMAND} + ARGS -E copy_if_different ${HDF5_GENERATED_SOURCE_DIR}/H5LTff_gen.F90 ${HDF5_HL_F90_BINARY_DIR}/static/H5LTff_gen.F90 + COMMAND ${CMAKE_COMMAND} + ARGS -E copy_if_different ${HDF5_GENERATED_SOURCE_DIR}/H5TBff_gen.F90 ${HDF5_HL_F90_BINARY_DIR}/static/H5TBff_gen.F90 WORKING_DIRECTORY ${HDF5_HL_F90_BINARY_DIR}/static - COMMENT "Generating the H5LTff_gen.F90, H5TBff_gen.F90 files" ) add_custom_target (H5HLgen ALL - DEPENDS H5HL_buildiface ${HDF5_HL_F90_BINARY_DIR}/static/H5LTff_gen.F90 ${HDF5_HL_F90_BINARY_DIR}/static/H5TBff_gen.F90 + DEPENDS ${hl_f90_gen_deps} ${HDF5_HL_F90_BINARY_DIR}/static/H5LTff_gen.F90 ${HDF5_HL_F90_BINARY_DIR}/static/H5TBff_gen.F90 ) set_source_files_properties ( ${HDF5_HL_F90_BINARY_DIR}/static/H5LTff_gen.F90 @@ -135,12 +168,14 @@ endif () if (BUILD_SHARED_LIBS) add_custom_command (TARGET H5HL_buildiface POST_BUILD BYPRODUCTS ${HDF5_HL_F90_BINARY_DIR}/shared/H5LTff_gen.F90 ${HDF5_HL_F90_BINARY_DIR}/shared/H5TBff_gen.F90 - COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ + COMMAND ${CMAKE_COMMAND} + ARGS -E copy_if_different ${HDF5_GENERATED_SOURCE_DIR}/H5LTff_gen.F90 ${HDF5_HL_F90_BINARY_DIR}/shared/H5LTff_gen.F90 + COMMAND ${CMAKE_COMMAND} + ARGS -E copy_if_different ${HDF5_GENERATED_SOURCE_DIR}/H5TBff_gen.F90 ${HDF5_HL_F90_BINARY_DIR}/shared/H5TBff_gen.F90 WORKING_DIRECTORY ${HDF5_HL_F90_BINARY_DIR}/shared - COMMENT "Generating the H5LTff_gen.F90, H5TBff_gen.F90 shared files" ) add_custom_target (H5HLgenSH ALL - DEPENDS H5HL_buildiface ${HDF5_HL_F90_BINARY_DIR}/shared/H5LTff_gen.F90 ${HDF5_HL_F90_BINARY_DIR}/shared/H5TBff_gen.F90 + DEPENDS ${hl_f90_gen_deps} ${HDF5_HL_F90_BINARY_DIR}/shared/H5LTff_gen.F90 ${HDF5_HL_F90_BINARY_DIR}/shared/H5TBff_gen.F90 ) set_source_files_properties ( ${HDF5_HL_F90_BINARY_DIR}/shared/H5LTff_gen.F90 From 8f03e941f83068262a1f61b045c62a8eb6fb39a2 Mon Sep 17 00:00:00 2001 From: Allen Byrne Date: Tue, 2 Sep 2025 17:28:56 -0500 Subject: [PATCH 17/49] Update workflow with path to files --- .github/workflows/cross-compile.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/cross-compile.yml b/.github/workflows/cross-compile.yml index 21b5f8c11ca..d7b6742dae9 100644 --- a/.github/workflows/cross-compile.yml +++ b/.github/workflows/cross-compile.yml @@ -54,6 +54,8 @@ jobs: -DZLIB_USE_LOCALCONTENT:BOOL=OFF \ -DHDF5_PACK_EXAMPLES:BOOL=ON \ -DHDF5_PACKAGE_EXTLIBS:BOOL=ON \ + -DHDF5_USE_PREGEN:BOOL=ON \ + -DHDF5_USE_PREGEN_DIR:PATH=config/fortpregen/gfortran \ $GITHUB_WORKSPACE shell: bash From 19bff07366f087b15914d6da59110922a2353d52 Mon Sep 17 00:00:00 2001 From: Allen Byrne Date: Tue, 2 Sep 2025 17:38:32 -0500 Subject: [PATCH 18/49] Use full path --- .github/workflows/cross-compile.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/cross-compile.yml b/.github/workflows/cross-compile.yml index d7b6742dae9..43b553210f5 100644 --- a/.github/workflows/cross-compile.yml +++ b/.github/workflows/cross-compile.yml @@ -55,7 +55,7 @@ jobs: -DHDF5_PACK_EXAMPLES:BOOL=ON \ -DHDF5_PACKAGE_EXTLIBS:BOOL=ON \ -DHDF5_USE_PREGEN:BOOL=ON \ - -DHDF5_USE_PREGEN_DIR:PATH=config/fortpregen/gfortran \ + -DHDF5_USE_PREGEN_DIR:PATH=$GITHUB_WORKSPACE/config/fortpregen/gfortran \ $GITHUB_WORKSPACE shell: bash From 6773bc7315516bde9cb250a00a3732f38d5c3800 Mon Sep 17 00:00:00 2001 From: Allen Byrne Date: Wed, 3 Sep 2025 15:17:57 -0500 Subject: [PATCH 19/49] CMAKE_CROSSCOMPILING_EMULATOR is handled by CMake added PATH var --- HDF5Examples/C/H5D/CMakeLists.txt | 19 +- HDF5Examples/C/H5FLT/CMakeLists.txt | 30 +- HDF5Examples/C/H5G/CMakeLists.txt | 51 ++- HDF5Examples/C/H5T/CMakeLists.txt | 22 +- HDF5Examples/C/H5VDS/CMakeLists.txt | 14 +- HDF5Examples/C/HL/CMakeLists.txt | 54 ++- HDF5Examples/C/TUTR/CMakeLists.txt | 8 +- HDF5Examples/CXX/H5D/CMakeLists.txt | 8 +- HDF5Examples/CXX/HL/CMakeLists.txt | 8 +- HDF5Examples/CXX/TUTR/CMakeLists.txt | 8 +- HDF5Examples/FORTRAN/H5D/CMakeLists.txt | 16 +- HDF5Examples/FORTRAN/H5G/CMakeLists.txt | 63 ++- HDF5Examples/FORTRAN/H5T/CMakeLists.txt | 25 +- HDF5Examples/FORTRAN/HL/CMakeLists.txt | 17 +- HDF5Examples/FORTRAN/TUTR/CMakeLists.txt | 8 +- HDF5Examples/PYTHON/CMakeLists.txt | 2 +- HDF5Examples/config/toolchain/aarch64.cmake | 9 +- HDF5Examples/config/toolchain/clang.cmake | 1 + .../toolchain/crosscompile-readme.cmake | 43 +++ HDF5Examples/config/toolchain/intel.cmake | 6 +- HDF5Examples/config/toolchain/mingw64.cmake | 34 +- c++/test/CMakeTests.cmake | 8 +- c++/test/CMakeVFDTests.cmake | 6 +- config/sanitizer/code-coverage.cmake | 74 ++-- config/sanitizer/dependency-graph.cmake | 4 +- config/sanitizer/formatting.cmake | 8 +- config/toolchain/mingw64.cmake | 1 + fortran/src/CMakeLists.txt | 8 +- fortran/test/CMakeLists.txt | 4 +- fortran/test/CMakeTests.cmake | 22 +- hl/c++/test/CMakeTests.cmake | 8 +- hl/fortran/src/CMakeLists.txt | 4 +- hl/fortran/test/CMakeTests.cmake | 4 +- hl/test/CMakeTests.cmake | 15 +- hl/tools/h5watch/CMakeTests.cmake | 13 +- java/test/CMakeLists.txt | 54 +-- test/CMakePassthroughVOLTests.cmake | 27 +- test/CMakeTests.cmake | 118 +++--- test/CMakeVFDTests.cmake | 31 +- test/flushrefreshTest.cmake | 4 +- testpar/CMakeVFDTests.cmake | 3 +- tools/libtest/CMakeTests.cmake | 5 +- tools/test/CMakeLists.txt | 3 +- tools/test/h5copy/CMakeTests.cmake | 363 +++++++++--------- tools/test/h5diff/CMakeTests.cmake | 192 +++++---- tools/test/h5dump/CMakeTests.cmake | 72 ++-- tools/test/h5dump/CMakeTestsPBITS.cmake | 11 +- tools/test/h5dump/CMakeTestsVDS.cmake | 27 +- tools/test/h5dump/CMakeTestsXML.cmake | 12 +- tools/test/h5dump/CMakeVFDTests.cmake | 62 +-- tools/test/h5format_convert/CMakeTests.cmake | 32 +- tools/test/h5import/CMakeTests.cmake | 35 +- tools/test/h5jam/CMakeTests.cmake | 84 ++-- tools/test/h5ls/CMakeTests.cmake | 32 +- tools/test/h5ls/CMakeTestsVDS.cmake | 27 +- tools/test/h5repack/CMakeTests.cmake | 161 +++++--- tools/test/h5repack/CMakeVFDTests.cmake | 2 +- tools/test/h5stat/CMakeTests.cmake | 24 +- tools/test/misc/CMakeLists.txt | 3 +- tools/test/misc/CMakeTestsClear.cmake | 48 ++- tools/test/misc/CMakeTestsMkgrp.cmake | 26 +- tools/test/misc/CMakeTestsRepart.cmake | 19 +- tools/test/perform/CMakeTests.cmake | 32 +- utils/tools/h5dwalk/CMakeLists.txt | 2 +- utils/tools/test/h5dwalk/CMakeTests.cmake | 58 +-- 65 files changed, 1226 insertions(+), 968 deletions(-) create mode 100644 HDF5Examples/config/toolchain/crosscompile-readme.cmake diff --git a/HDF5Examples/C/H5D/CMakeLists.txt b/HDF5Examples/C/H5D/CMakeLists.txt index e01b4d3b96f..f96d993fa74 100644 --- a/HDF5Examples/C/H5D/CMakeLists.txt +++ b/HDF5Examples/C/H5D/CMakeLists.txt @@ -222,13 +222,15 @@ if (H5EX_BUILD_TESTING) ${testname}.h5 ) if (HDF5_ENABLE_USING_MEMCHECKER) - add_test (NAME ${EXAMPLE_VARNAME}_${testname} COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $) - set_tests_properties (${EXAMPLE_VARNAME}_${testname} PROPERTIES DEPENDS ${EXAMPLE_VARNAME}_${testname}-clearall) + add_test (NAME ${EXAMPLE_VARNAME}_${testname} COMMAND $) + set_tests_properties (${EXAMPLE_VARNAME}_${testname} PROPERTIES + DEPENDS ${EXAMPLE_VARNAME}_${testname}-clearall + ENVIRONMENT "${CROSSCOMPILING_PATH}" + ) else () add_test ( NAME ${EXAMPLE_VARNAME}_${testname} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}" @@ -238,12 +240,14 @@ if (H5EX_BUILD_TESTING) -D "TEST_LIBRARY_DIRECTORY=${CMAKE_TEST_LIB_DIRECTORY}" -P "${H5EX_RESOURCES_DIR}/runTest.cmake" ) - set_tests_properties (${EXAMPLE_VARNAME}_${testname} PROPERTIES DEPENDS ${EXAMPLE_VARNAME}_${testname}-clearall) + set_tests_properties (${EXAMPLE_VARNAME}_${testname} PROPERTIES + DEPENDS ${EXAMPLE_VARNAME}_${testname}-clearall + ENVIRONMENT "${CROSSCOMPILING_PATH}" + ) if (HDF5_PROVIDES_TOOLS) add_test ( NAME ${EXAMPLE_VARNAME}_H5DUMP-${testname} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=${H5EX_HDF5_DUMP_EXECUTABLE}" -D "TEST_ARGS:STRING=${ARGN};${testname}.h5" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}" @@ -253,7 +257,10 @@ if (H5EX_BUILD_TESTING) -D "TEST_LIBRARY_DIRECTORY=${CMAKE_TEST_LIB_DIRECTORY}" -P "${H5EX_RESOURCES_DIR}/runTest.cmake" ) - set_tests_properties (${EXAMPLE_VARNAME}_H5DUMP-${testname} PROPERTIES DEPENDS ${EXAMPLE_VARNAME}_${testname}) + set_tests_properties (${EXAMPLE_VARNAME}_H5DUMP-${testname} PROPERTIES + DEPENDS ${EXAMPLE_VARNAME}_${testname} + ENVIRONMENT "${CROSSCOMPILING_PATH}" + ) endif () endif () endmacro () diff --git a/HDF5Examples/C/H5FLT/CMakeLists.txt b/HDF5Examples/C/H5FLT/CMakeLists.txt index fde88e0c5dd..9208d1119a3 100644 --- a/HDF5Examples/C/H5FLT/CMakeLists.txt +++ b/HDF5Examples/C/H5FLT/CMakeLists.txt @@ -212,7 +212,6 @@ if (H5EX_BUILD_TESTING) add_test ( NAME ${EXAMPLE_VARNAME}_${testname}-ERR COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=${ARGN}" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}" @@ -228,7 +227,10 @@ if (H5EX_BUILD_TESTING) -D "TEST_LIBRARY_DIRECTORY=${CMAKE_TEST_LIB_DIRECTORY}" -P "${H5EX_RESOURCES_DIR}/runTest.cmake" ) - set_tests_properties (${EXAMPLE_VARNAME}_${testname}-ERR PROPERTIES DEPENDS ${EXAMPLE_VARNAME}_${testname}-clearall) + set_tests_properties (${EXAMPLE_VARNAME}_${testname}-ERR PROPERTIES + DEPENDS ${EXAMPLE_VARNAME}_${testname}-clearall + ENVIRONMENT "${CROSSCOMPILING_PATH}" + ) add_test ( NAME ${EXAMPLE_VARNAME}_${testname} COMMAND "${CMAKE_COMMAND}" @@ -240,7 +242,6 @@ if (H5EX_BUILD_TESTING) add_test ( NAME ${EXAMPLE_VARNAME}_${testname} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=${ARGN}" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}" @@ -252,7 +253,10 @@ if (H5EX_BUILD_TESTING) -D "TEST_LIBRARY_DIRECTORY=${CMAKE_TEST_LIB_DIRECTORY}" -P "${H5EX_RESOURCES_DIR}/runTest.cmake" ) - set_tests_properties (${EXAMPLE_VARNAME}_${testname} PROPERTIES DEPENDS ${EXAMPLE_VARNAME}_${testname}-clearall) + set_tests_properties (${EXAMPLE_VARNAME}_${testname} PROPERTIES + DEPENDS ${EXAMPLE_VARNAME}_${testname}-clearall + ENVIRONMENT "${CROSSCOMPILING_PATH}" + ) endif () set (last_test "${EXAMPLE_VARNAME}_${testname}") if (HDF5_PROVIDES_TOOLS) @@ -260,7 +264,6 @@ if (H5EX_BUILD_TESTING) add_test ( NAME ${EXAMPLE_VARNAME}_H5DUMP-${testname} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=${H5EX_HDF5_DUMP_EXECUTABLE}" -D "TEST_ARGS:STRING=--enable-error-stack;-p;${testname}.h5" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}" @@ -278,7 +281,6 @@ if (H5EX_BUILD_TESTING) add_test ( NAME ${EXAMPLE_VARNAME}_H5DUMP-${testname} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=${H5EX_HDF5_DUMP_EXECUTABLE}" -D "TEST_ARGS:STRING=--enable-error-stack;-pH;${testname}.h5" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}" @@ -296,7 +298,6 @@ if (H5EX_BUILD_TESTING) add_test ( NAME ${EXAMPLE_VARNAME}_H5DUMP-${testname} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=${H5EX_HDF5_DUMP_EXECUTABLE}" -D "TEST_ARGS:STRING=--enable-error-stack;-p;${testname}.h5" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}" @@ -311,7 +312,10 @@ if (H5EX_BUILD_TESTING) -P "${H5EX_RESOURCES_DIR}/runTest.cmake" ) endif () - set_tests_properties (${EXAMPLE_VARNAME}_H5DUMP-${testname} PROPERTIES DEPENDS ${EXAMPLE_VARNAME}_${testname}) + set_tests_properties (${EXAMPLE_VARNAME}_H5DUMP-${testname} PROPERTIES + DEPENDS ${EXAMPLE_VARNAME}_${testname} + ENVIRONMENT "${CROSSCOMPILING_PATH}" + ) set (last_test "${EXAMPLE_VARNAME}_H5DUMP-${testname}") endif () endmacro () @@ -320,17 +324,17 @@ if (H5EX_BUILD_TESTING) # Copy all the HDF5 files from the source directory into the test directory # -------------------------------------------------------------------- foreach (h5_file ${dyn_examples}) - HDFTEST_COPY_FILE("${PROJECT_SOURCE_DIR}/tfiles/${h5_file}.tst" "${PROJECT_BINARY_DIR}/${h5_file}.tst" "example_files") + HDFTEST_COPY_FILE ("${PROJECT_SOURCE_DIR}/tfiles/${h5_file}.tst" "${PROJECT_BINARY_DIR}/${h5_file}.tst" "example_files") if (WIN32 AND MSVC_VERSION LESS 1900 AND ${h5_file} MATCHES "h5ex_d_zfp") - HDFTEST_COPY_FILE("${PROJECT_SOURCE_DIR}/tfiles/h5ex_d_zfp.wddl" "${PROJECT_BINARY_DIR}/h5ex_d_zfp.ddl" "example_files") + HDFTEST_COPY_FILE ("${PROJECT_SOURCE_DIR}/tfiles/h5ex_d_zfp.wddl" "${PROJECT_BINARY_DIR}/h5ex_d_zfp.ddl" "example_files") else () - HDFTEST_COPY_FILE("${PROJECT_SOURCE_DIR}/tfiles/${h5_file}.ddl" "${PROJECT_BINARY_DIR}/${h5_file}.ddl" "example_files") + HDFTEST_COPY_FILE ("${PROJECT_SOURCE_DIR}/tfiles/${h5_file}.ddl" "${PROJECT_BINARY_DIR}/${h5_file}.ddl" "example_files") endif() endforeach () foreach (h5_file ${LIST_HDF5_TEST_FILES} ${LIST_OTHER_TEST_FILES}) - HDFTEST_COPY_FILE("${PROJECT_SOURCE_DIR}/tfiles/${h5_file}" "${PROJECT_BINARY_DIR}/${h5_file}" "example_files") + HDFTEST_COPY_FILE ("${PROJECT_SOURCE_DIR}/tfiles/${h5_file}" "${PROJECT_BINARY_DIR}/${h5_file}" "example_files") endforeach () - add_custom_target(${EXAMPLE_VARNAME}_example_files ALL COMMENT "Copying files needed by example tests" DEPENDS ${example_files_list}) + add_custom_target (${EXAMPLE_VARNAME}_example_files ALL COMMENT "Copying files needed by example tests" DEPENDS ${example_files_list}) foreach (h5_file ${dyn_examples}) if (NOT HDF5_ENABLE_USING_MEMCHECKER) diff --git a/HDF5Examples/C/H5G/CMakeLists.txt b/HDF5Examples/C/H5G/CMakeLists.txt index 59a0c77f96d..c92a9040332 100644 --- a/HDF5Examples/C/H5G/CMakeLists.txt +++ b/HDF5Examples/C/H5G/CMakeLists.txt @@ -234,13 +234,12 @@ if (H5EX_BUILD_TESTING) ${testname}.h5 ) if (HDF5_ENABLE_USING_MEMCHECKER) - add_test (NAME ${EXAMPLE_VARNAME}_${testname} COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $) + add_test (NAME ${EXAMPLE_VARNAME}_${testname} COMMAND $) set_tests_properties (${EXAMPLE_VARNAME}_${testname} PROPERTIES DEPENDS ${EXAMPLE_VARNAME}_${testname}-clearall) else () add_test ( NAME ${EXAMPLE_VARNAME}_${testname} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}" @@ -250,12 +249,14 @@ if (H5EX_BUILD_TESTING) -D "TEST_LIBRARY_DIRECTORY=${CMAKE_TEST_LIB_DIRECTORY}" -P "${H5EX_RESOURCES_DIR}/runTest.cmake" ) - set_tests_properties (${EXAMPLE_VARNAME}_${testname} PROPERTIES DEPENDS ${EXAMPLE_VARNAME}_${testname}-clearall) + set_tests_properties (${EXAMPLE_VARNAME}_${testname} PROPERTIES + DEPENDS ${EXAMPLE_VARNAME}_${testname}-clearall + ENVIRONMENT "${CROSSCOMPILING_PATH}" + ) if (HDF5_PROVIDES_TOOLS) add_test ( NAME ${EXAMPLE_VARNAME}_H5DUMP-${testname} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=${H5EX_HDF5_DUMP_EXECUTABLE}" -D "TEST_ARGS:STRING=${ARGN};${testname}.h5" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}" @@ -265,20 +266,22 @@ if (H5EX_BUILD_TESTING) -D "TEST_LIBRARY_DIRECTORY=${CMAKE_TEST_LIB_DIRECTORY}" -P "${H5EX_RESOURCES_DIR}/runTest.cmake" ) - set_tests_properties (${EXAMPLE_VARNAME}_H5DUMP-${testname} PROPERTIES DEPENDS ${EXAMPLE_VARNAME}_${testname}) + set_tests_properties (${EXAMPLE_VARNAME}_H5DUMP-${testname} PROPERTIES + DEPENDS ${EXAMPLE_VARNAME}_${testname} + ENVIRONMENT "${CROSSCOMPILING_PATH}" + ) endif () endif () endmacro () macro (ADD_H5_DUMP_TEST testname) if (HDF5_ENABLE_USING_MEMCHECKER) - add_test (NAME ${EXAMPLE_VARNAME}_${testname} COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $) + add_test (NAME ${EXAMPLE_VARNAME}_${testname} COMMAND $) set_tests_properties (${EXAMPLE_VARNAME}_${testname} PROPERTIES DEPENDS ${EXAMPLE_VARNAME}_${testname}-clearall) else () add_test ( NAME ${EXAMPLE_VARNAME}_${testname} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}" @@ -292,7 +295,6 @@ if (H5EX_BUILD_TESTING) add_test ( NAME ${EXAMPLE_VARNAME}_H5DUMP-${testname} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=${H5EX_HDF5_DUMP_EXECUTABLE}" -D "TEST_ARGS:STRING=${ARGN};${testname}.h5" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}" @@ -302,7 +304,10 @@ if (H5EX_BUILD_TESTING) -D "TEST_LIBRARY_DIRECTORY=${CMAKE_TEST_LIB_DIRECTORY}" -P "${H5EX_RESOURCES_DIR}/runTest.cmake" ) - set_tests_properties (${EXAMPLE_VARNAME}_H5DUMP-${testname} PROPERTIES DEPENDS ${EXAMPLE_VARNAME}_${testname}) + set_tests_properties (${EXAMPLE_VARNAME}_H5DUMP-${testname} PROPERTIES + DEPENDS ${EXAMPLE_VARNAME}_${testname} + ENVIRONMENT "${CROSSCOMPILING_PATH}" + ) endif () endif () endmacro () @@ -316,13 +321,12 @@ if (H5EX_BUILD_TESTING) ${testname}2.h5 ) if (HDF5_ENABLE_USING_MEMCHECKER) - add_test (NAME ${EXAMPLE_VARNAME}_${testname} COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $) + add_test (NAME ${EXAMPLE_VARNAME}_${testname} COMMAND $) set_tests_properties (${EXAMPLE_VARNAME}_${testname} PROPERTIES DEPENDS ${EXAMPLE_VARNAME}_${testname}-clearall) else () add_test ( NAME ${EXAMPLE_VARNAME}_${testname} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}" @@ -332,12 +336,14 @@ if (H5EX_BUILD_TESTING) -D "TEST_LIBRARY_DIRECTORY=${CMAKE_TEST_LIB_DIRECTORY}" -P "${H5EX_RESOURCES_DIR}/runTest.cmake" ) - set_tests_properties (${EXAMPLE_VARNAME}_${testname} PROPERTIES DEPENDS ${EXAMPLE_VARNAME}_${testname}-clearall) + set_tests_properties (${EXAMPLE_VARNAME}_${testname} PROPERTIES + DEPENDS ${EXAMPLE_VARNAME}_${testname}-clearall + ENVIRONMENT "${CROSSCOMPILING_PATH}" + ) if (HDF5_PROVIDES_TOOLS) add_test ( NAME ${EXAMPLE_VARNAME}_H5DUMP-${testname}1 COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=${H5EX_HDF5_DUMP_EXECUTABLE}" -D "TEST_ARGS:STRING=${testname}1.h5" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}" @@ -347,11 +353,13 @@ if (H5EX_BUILD_TESTING) -D "TEST_LIBRARY_DIRECTORY=${CMAKE_TEST_LIB_DIRECTORY}" -P "${H5EX_RESOURCES_DIR}/runTest.cmake" ) - set_tests_properties (${EXAMPLE_VARNAME}_H5DUMP-${testname}1 PROPERTIES DEPENDS ${EXAMPLE_VARNAME}_${testname}) + set_tests_properties (${EXAMPLE_VARNAME}_H5DUMP-${testname}1 PROPERTIES + DEPENDS ${EXAMPLE_VARNAME}_${testname} + ENVIRONMENT "${CROSSCOMPILING_PATH}" + ) add_test ( NAME ${EXAMPLE_VARNAME}_H5DUMP-${testname}2 COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=${H5EX_HDF5_DUMP_EXECUTABLE}" -D "TEST_ARGS:STRING=${testname}2.h5" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}" @@ -361,7 +369,10 @@ if (H5EX_BUILD_TESTING) -D "TEST_LIBRARY_DIRECTORY=${CMAKE_TEST_LIB_DIRECTORY}" -P "${H5EX_RESOURCES_DIR}/runTest.cmake" ) - set_tests_properties (${EXAMPLE_VARNAME}_H5DUMP-${testname}2 PROPERTIES DEPENDS ${EXAMPLE_VARNAME}_H5DUMP-${testname}1) + set_tests_properties (${EXAMPLE_VARNAME}_H5DUMP-${testname}2 PROPERTIES + DEPENDS ${EXAMPLE_VARNAME}_H5DUMP-${testname}1 + ENVIRONMENT "${CROSSCOMPILING_PATH}" + ) endif () endif () endmacro () @@ -374,13 +385,12 @@ if (H5EX_BUILD_TESTING) ${testname}.out.tmp ) if (HDF5_ENABLE_USING_MEMCHECKER) - add_test (NAME ${EXAMPLE_VARNAME}_${testname} COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $) + add_test (NAME ${EXAMPLE_VARNAME}_${testname} COMMAND $) set_tests_properties (${EXAMPLE_VARNAME}_${testname} PROPERTIES DEPENDS ${EXAMPLE_VARNAME}_${testname}-clearall) else () add_test ( NAME ${EXAMPLE_VARNAME}_${testname} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=${ARGN}" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}" @@ -390,7 +400,10 @@ if (H5EX_BUILD_TESTING) -D "TEST_LIBRARY_DIRECTORY=${CMAKE_TEST_LIB_DIRECTORY}" -P "${H5EX_RESOURCES_DIR}/runTest.cmake" ) - set_tests_properties (${EXAMPLE_VARNAME}_${testname} PROPERTIES DEPENDS ${EXAMPLE_VARNAME}_${testname}-clearall) + set_tests_properties (${EXAMPLE_VARNAME}_${testname} PROPERTIES + DEPENDS ${EXAMPLE_VARNAME}_${testname}-clearall + ENVIRONMENT "${CROSSCOMPILING_PATH}" + ) endif () endmacro () diff --git a/HDF5Examples/C/H5T/CMakeLists.txt b/HDF5Examples/C/H5T/CMakeLists.txt index 777868a0fdb..8f9a4933488 100644 --- a/HDF5Examples/C/H5T/CMakeLists.txt +++ b/HDF5Examples/C/H5T/CMakeLists.txt @@ -355,13 +355,12 @@ if (H5EX_BUILD_TESTING) ${testname}.h5 ) if (HDF5_ENABLE_USING_MEMCHECKER) - add_test (NAME ${EXAMPLE_VARNAME}_${testname} COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $) + add_test (NAME ${EXAMPLE_VARNAME}_${testname} COMMAND $) set_tests_properties (${EXAMPLE_VARNAME}_${testname} PROPERTIES DEPENDS ${EXAMPLE_VARNAME}_${testname}-clearall) else () add_test ( NAME ${EXAMPLE_VARNAME}_${testname} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}" @@ -371,12 +370,14 @@ if (H5EX_BUILD_TESTING) -D "TEST_LIBRARY_DIRECTORY=${CMAKE_TEST_LIB_DIRECTORY}" -P "${H5EX_RESOURCES_DIR}/runTest.cmake" ) - set_tests_properties (${EXAMPLE_VARNAME}_${testname} PROPERTIES DEPENDS ${EXAMPLE_VARNAME}_${testname}-clearall) + set_tests_properties (${EXAMPLE_VARNAME}_${testname} PROPERTIES + DEPENDS ${EXAMPLE_VARNAME}_${testname}-clearall + ENVIRONMENT "${CROSSCOMPILING_PATH}" + ) if (HDF5_PROVIDES_TOOLS) add_test ( NAME ${EXAMPLE_VARNAME}_H5DUMP-${testname} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=${H5EX_HDF5_DUMP_EXECUTABLE}" -D "TEST_ARGS:STRING=${ARGN};${testname}.h5" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}" @@ -386,7 +387,10 @@ if (H5EX_BUILD_TESTING) -D "TEST_LIBRARY_DIRECTORY=${CMAKE_TEST_LIB_DIRECTORY}" -P "${H5EX_RESOURCES_DIR}/runTest.cmake" ) - set_tests_properties (${EXAMPLE_VARNAME}_H5DUMP-${testname} PROPERTIES DEPENDS ${EXAMPLE_VARNAME}_${testname}) + set_tests_properties (${EXAMPLE_VARNAME}_H5DUMP-${testname} PROPERTIES + DEPENDS ${EXAMPLE_VARNAME}_${testname} + ENVIRONMENT "${CROSSCOMPILING_PATH}" + ) endif () endif () endmacro () @@ -399,13 +403,12 @@ if (H5EX_BUILD_TESTING) ${testname}.h5 ) if (HDF5_ENABLE_USING_MEMCHECKER) - add_test (NAME ${EXAMPLE_VARNAME}_${testname} COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $) + add_test (NAME ${EXAMPLE_VARNAME}_${testname} COMMAND $) set_tests_properties (${EXAMPLE_VARNAME}_${testname} PROPERTIES DEPENDS ${EXAMPLE_VARNAME}_${testname}-clearall) else () add_test ( NAME ${EXAMPLE_VARNAME}_${testname} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=${ARGN}" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}" @@ -415,7 +418,10 @@ if (H5EX_BUILD_TESTING) -D "TEST_LIBRARY_DIRECTORY=${CMAKE_TEST_LIB_DIRECTORY}" -P "${H5EX_RESOURCES_DIR}/runTest.cmake" ) - set_tests_properties (${EXAMPLE_VARNAME}_${testname} PROPERTIES DEPENDS ${EXAMPLE_VARNAME}_${testname}-clearall) + set_tests_properties (${EXAMPLE_VARNAME}_${testname} PROPERTIES + DEPENDS ${EXAMPLE_VARNAME}_${testname}-clearall + ENVIRONMENT "${CROSSCOMPILING_PATH}" + ) endif () endmacro () diff --git a/HDF5Examples/C/H5VDS/CMakeLists.txt b/HDF5Examples/C/H5VDS/CMakeLists.txt index 474fc4eaa59..1875d0c7815 100644 --- a/HDF5Examples/C/H5VDS/CMakeLists.txt +++ b/HDF5Examples/C/H5VDS/CMakeLists.txt @@ -129,13 +129,12 @@ if (H5EX_BUILD_TESTING) ${testname}*.h5 ) if (HDF5_ENABLE_USING_MEMCHECKER) - add_test (NAME ${EXAMPLE_VARNAME}_${testname} COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $) + add_test (NAME ${EXAMPLE_VARNAME}_${testname} COMMAND $) set_tests_properties (${EXAMPLE_VARNAME}_${testname} PROPERTIES DEPENDS ${EXAMPLE_VARNAME}_${testname}-clearall) else () add_test ( NAME ${EXAMPLE_VARNAME}_${testname} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}" @@ -145,12 +144,14 @@ if (H5EX_BUILD_TESTING) -D "TEST_LIBRARY_DIRECTORY=${CMAKE_TEST_LIB_DIRECTORY}" -P "${H5EX_RESOURCES_DIR}/runTest.cmake" ) - set_tests_properties (${EXAMPLE_VARNAME}_${testname} PROPERTIES DEPENDS ${EXAMPLE_VARNAME}_${testname}-clearall) + set_tests_properties (${EXAMPLE_VARNAME}_${testname} PROPERTIES + DEPENDS ${EXAMPLE_VARNAME}_${testname}-clearall + ENVIRONMENT "${CROSSCOMPILING_PATH}" + ) if (HDF5_PROVIDES_TOOLS) add_test ( NAME ${EXAMPLE_VARNAME}_H5DUMP-${testname} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=${H5EX_HDF5_DUMP_EXECUTABLE}" -D "TEST_ARGS:STRING=${ARGN};${testname}.h5" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}" @@ -160,7 +161,10 @@ if (H5EX_BUILD_TESTING) -D "TEST_LIBRARY_DIRECTORY=${CMAKE_TEST_LIB_DIRECTORY}" -P "${H5EX_RESOURCES_DIR}/runTest.cmake" ) - set_tests_properties (${EXAMPLE_VARNAME}_H5DUMP-${testname} PROPERTIES DEPENDS ${EXAMPLE_VARNAME}_${testname}) + set_tests_properties (${EXAMPLE_VARNAME}_H5DUMP-${testname} PROPERTIES + DEPENDS ${EXAMPLE_VARNAME}_${testname} + ENVIRONMENT "${CROSSCOMPILING_PATH}" + ) endif () endif () endmacro () diff --git a/HDF5Examples/C/HL/CMakeLists.txt b/HDF5Examples/C/HL/CMakeLists.txt index 73839ae420f..ae6248977c6 100644 --- a/HDF5Examples/C/HL/CMakeLists.txt +++ b/HDF5Examples/C/HL/CMakeLists.txt @@ -191,13 +191,12 @@ if (H5EX_BUILD_TESTING) ${testname}.h5 ) if (HDF5_ENABLE_USING_MEMCHECKER) - add_test (NAME ${EXAMPLE_VARNAME}_${testname} COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $) + add_test (NAME ${EXAMPLE_VARNAME}_${testname} COMMAND $) set_tests_properties (${EXAMPLE_VARNAME}_${testname} PROPERTIES DEPENDS ${EXAMPLE_VARNAME}_${testname}-clearall) else () add_test ( NAME ${EXAMPLE_VARNAME}_${testname} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}" @@ -207,12 +206,14 @@ if (H5EX_BUILD_TESTING) -D "TEST_LIBRARY_DIRECTORY=${CMAKE_TEST_LIB_DIRECTORY}" -P "${H5EX_RESOURCES_DIR}/runTest.cmake" ) - set_tests_properties (${EXAMPLE_VARNAME}_${testname} PROPERTIES DEPENDS ${EXAMPLE_VARNAME}_${testname}-clearall) + set_tests_properties (${EXAMPLE_VARNAME}_${testname} PROPERTIES + DEPENDS ${EXAMPLE_VARNAME}_${testname}-clearall + ENVIRONMENT "${CROSSCOMPILING_PATH}" + ) if (HDF5_PROVIDES_TOOLS) add_test ( NAME ${EXAMPLE_VARNAME}_H5DUMP-${testname} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=${H5EX_HDF5_DUMP_EXECUTABLE}" -D "TEST_ARGS:STRING=${ARGN};${testname}.h5" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}" @@ -222,7 +223,10 @@ if (H5EX_BUILD_TESTING) -D "TEST_LIBRARY_DIRECTORY=${CMAKE_TEST_LIB_DIRECTORY}" -P "${H5EX_RESOURCES_DIR}/runTest.cmake" ) - set_tests_properties (${EXAMPLE_VARNAME}_H5DUMP-${testname} PROPERTIES DEPENDS ${EXAMPLE_VARNAME}_${testname}) + set_tests_properties (${EXAMPLE_VARNAME}_H5DUMP-${testname} PROPERTIES + DEPENDS ${EXAMPLE_VARNAME}_${testname} + ENVIRONMENT "${CROSSCOMPILING_PATH}" + ) endif () endif () endmacro () @@ -235,13 +239,12 @@ if (H5EX_BUILD_TESTING) ${testname}.h5 ) if (HDF5_ENABLE_USING_MEMCHECKER) - add_test (NAME ${EXAMPLE_VARNAME}_${testname} COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $) + add_test (NAME ${EXAMPLE_VARNAME}_${testname} COMMAND $) set_tests_properties (${EXAMPLE_VARNAME}_${testname} PROPERTIES DEPENDS ${EXAMPLE_VARNAME}_${testname}-clearall) else () add_test ( NAME ${EXAMPLE_VARNAME}_${testname} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=${ARGN}" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}" @@ -251,12 +254,14 @@ if (H5EX_BUILD_TESTING) -D "TEST_LIBRARY_DIRECTORY=${CMAKE_TEST_LIB_DIRECTORY}" -P "${H5EX_RESOURCES_DIR}/runTest.cmake" ) - set_tests_properties (${EXAMPLE_VARNAME}_${testname} PROPERTIES DEPENDS ${EXAMPLE_VARNAME}_${testname}-clearall) + set_tests_properties (${EXAMPLE_VARNAME}_${testname} PROPERTIES + DEPENDS ${EXAMPLE_VARNAME}_${testname}-clearall + ENVIRONMENT "${CROSSCOMPILING_PATH}" + ) if (HDF5_PROVIDES_TOOLS) add_test ( NAME ${EXAMPLE_VARNAME}_H5DUMP-${testname} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=${H5EX_HDF5_DUMP_EXECUTABLE}" -D "TEST_ARGS:STRING=${ARGN};${testname}.h5" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}" @@ -267,7 +272,10 @@ if (H5EX_BUILD_TESTING) -D "TEST_LIBRARY_DIRECTORY=${CMAKE_TEST_LIB_DIRECTORY}" -P "${H5EX_RESOURCES_DIR}/runTest.cmake" ) - set_tests_properties (${EXAMPLE_VARNAME}_H5DUMP-${testname} PROPERTIES DEPENDS ${EXAMPLE_VARNAME}_${testname}) + set_tests_properties (${EXAMPLE_VARNAME}_H5DUMP-${testname} PROPERTIES + DEPENDS ${EXAMPLE_VARNAME}_${testname} + ENVIRONMENT "${CROSSCOMPILING_PATH}" + ) endif () endif () endmacro () @@ -288,15 +296,20 @@ if (H5EX_BUILD_TESTING) h5ex_lite1.h5 ) if (HDF5_ENABLE_USING_MEMCHECKER) - add_test (NAME ${EXAMPLE_VARNAME}_h5ex_lite1 COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $) - set_tests_properties (${EXAMPLE_VARNAME}_h5ex_lite1 PROPERTIES DEPENDS ${EXAMPLE_VARNAME}_h5ex_lite-clearall) - add_test (NAME ${EXAMPLE_VARNAME}_h5ex_lite2 COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $) - set_tests_properties (${EXAMPLE_VARNAME}_h5ex_lite2 PROPERTIES DEPENDS ${EXAMPLE_VARNAME}_h5ex_lite1) + add_test (NAME ${EXAMPLE_VARNAME}_h5ex_lite1 COMMAND $) + set_tests_properties (${EXAMPLE_VARNAME}_h5ex_lite1 PROPERTIES + DEPENDS ${EXAMPLE_VARNAME}_h5ex_lite-clearall + ENVIRONMENT "${CROSSCOMPILING_PATH}" + ) + add_test (NAME ${EXAMPLE_VARNAME}_h5ex_lite2 COMMAND $) + set_tests_properties (${EXAMPLE_VARNAME}_h5ex_lite2 PROPERTIES + DEPENDS ${EXAMPLE_VARNAME}_h5ex_lite1 + ENVIRONMENT "${CROSSCOMPILING_PATH}" + ) else () add_test ( NAME ${EXAMPLE_VARNAME}_h5ex_lite1 COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}" @@ -306,11 +319,13 @@ if (H5EX_BUILD_TESTING) -D "TEST_LIBRARY_DIRECTORY=${CMAKE_TEST_LIB_DIRECTORY}" -P "${H5EX_RESOURCES_DIR}/runTest.cmake" ) - set_tests_properties (${EXAMPLE_VARNAME}_h5ex_lite1 PROPERTIES DEPENDS ${EXAMPLE_VARNAME}_h5ex_lite-clearall) + set_tests_properties (${EXAMPLE_VARNAME}_h5ex_lite1 PROPERTIES + DEPENDS ${EXAMPLE_VARNAME}_h5ex_lite-clearall + ENVIRONMENT "${CROSSCOMPILING_PATH}" + ) add_test ( NAME ${EXAMPLE_VARNAME}_h5ex_lite2 COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}" @@ -320,6 +335,9 @@ if (H5EX_BUILD_TESTING) -D "TEST_LIBRARY_DIRECTORY=${CMAKE_TEST_LIB_DIRECTORY}" -P "${H5EX_RESOURCES_DIR}/runTest.cmake" ) - set_tests_properties (${EXAMPLE_VARNAME}_h5ex_lite2 PROPERTIES DEPENDS ${EXAMPLE_VARNAME}_h5ex_lite1) + set_tests_properties (${EXAMPLE_VARNAME}_h5ex_lite2 PROPERTIES + DEPENDS ${EXAMPLE_VARNAME}_h5ex_lite1 + ENVIRONMENT "${CROSSCOMPILING_PATH}" + ) endif () endif () diff --git a/HDF5Examples/C/TUTR/CMakeLists.txt b/HDF5Examples/C/TUTR/CMakeLists.txt index 7137dbd4113..86df98d6e34 100644 --- a/HDF5Examples/C/TUTR/CMakeLists.txt +++ b/HDF5Examples/C/TUTR/CMakeLists.txt @@ -84,12 +84,11 @@ if (H5EX_BUILD_TESTING) macro (ADD_H5_TEST testname) if (HDF5_USING_ANALYSIS_TOOL) - add_test (NAME ${EXAMPLE_VARNAME}_tutr_${testname} COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $) + add_test (NAME ${EXAMPLE_VARNAME}_tutr_${testname} COMMAND $) else () add_test ( NAME ${EXAMPLE_VARNAME}_tutr_${testname} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}" @@ -100,7 +99,10 @@ if (H5EX_BUILD_TESTING) -P "${H5EX_RESOURCES_DIR}/runTest.cmake" ) endif () - set_tests_properties (${EXAMPLE_VARNAME}_tutr_${testname} PROPERTIES FIXTURES_REQUIRED clear_${EXAMPLE_VARNAME}_tutr) + set_tests_properties (${EXAMPLE_VARNAME}_tutr_${testname} PROPERTIES + FIXTURES_REQUIRED clear_${EXAMPLE_VARNAME}_tutr + ENVIRONMENT "${CROSSCOMPILING_PATH}" + ) if (last_test) set_tests_properties (${EXAMPLE_VARNAME}_tutr_${testname} PROPERTIES DEPENDS ${last_test}) endif () diff --git a/HDF5Examples/CXX/H5D/CMakeLists.txt b/HDF5Examples/CXX/H5D/CMakeLists.txt index 2cecb03c107..4ab4338f7a5 100644 --- a/HDF5Examples/CXX/H5D/CMakeLists.txt +++ b/HDF5Examples/CXX/H5D/CMakeLists.txt @@ -54,12 +54,11 @@ if (H5EX_BUILD_TESTING) macro (ADD_H5_TEST testname) if (HDF5_ENABLE_USING_MEMCHECKER) - add_test (NAME ${EXAMPLE_VARNAME}_cpp_ex_${testname} COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $) + add_test (NAME ${EXAMPLE_VARNAME}_cpp_ex_${testname} COMMAND $) else () add_test ( NAME ${EXAMPLE_VARNAME}_cpp_ex_${testname} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}" @@ -70,7 +69,10 @@ if (H5EX_BUILD_TESTING) -P "${H5EX_RESOURCES_DIR}/runTest.cmake" ) endif () - set_tests_properties (${EXAMPLE_VARNAME}_cpp_ex_${testname} PROPERTIES FIXTURES_REQUIRED clear_${EXAMPLE_VARNAME}_cpp_ex) + set_tests_properties (${EXAMPLE_VARNAME}_cpp_ex_${testname} PROPERTIES + FIXTURES_REQUIRED clear_${EXAMPLE_VARNAME}_cpp_ex + ENVIRONMENT "${CROSSCOMPILING_PATH}" + ) if (last_test) set_tests_properties (${EXAMPLE_VARNAME}_cpp_ex_${testname} PROPERTIES DEPENDS ${last_test}) endif () diff --git a/HDF5Examples/CXX/HL/CMakeLists.txt b/HDF5Examples/CXX/HL/CMakeLists.txt index 0e44354f2c1..a30fb2673a9 100644 --- a/HDF5Examples/CXX/HL/CMakeLists.txt +++ b/HDF5Examples/CXX/HL/CMakeLists.txt @@ -50,12 +50,11 @@ if (H5EX_BUILD_TESTING) macro (ADD_H5_TEST testname) if (HDF5_ENABLE_USING_MEMCHECKER) - add_test (NAME ${EXAMPLE_VARNAME}_cpp_ex_${testname} COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $) + add_test (NAME ${EXAMPLE_VARNAME}_cpp_ex_${testname} COMMAND $) else () add_test ( NAME ${EXAMPLE_VARNAME}_cpp_ex_${testname} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}" @@ -66,7 +65,10 @@ if (H5EX_BUILD_TESTING) -P "${H5EX_RESOURCES_DIR}/runTest.cmake" ) endif () - set_tests_properties (${EXAMPLE_VARNAME}_cpp_ex_${testname} PROPERTIES FIXTURES_REQUIRED clear_${EXAMPLE_VARNAME}_cpp_ex) + set_tests_properties (${EXAMPLE_VARNAME}_cpp_ex_${testname} PROPERTIES + FIXTURES_REQUIRED clear_${EXAMPLE_VARNAME}_cpp_ex + ENVIRONMENT "${CROSSCOMPILING_PATH}" + ) if (last_test) set_tests_properties (${EXAMPLE_VARNAME}_cpp_ex_${testname} PROPERTIES DEPENDS ${last_test}) endif () diff --git a/HDF5Examples/CXX/TUTR/CMakeLists.txt b/HDF5Examples/CXX/TUTR/CMakeLists.txt index 4205c2ba0be..4357759d535 100644 --- a/HDF5Examples/CXX/TUTR/CMakeLists.txt +++ b/HDF5Examples/CXX/TUTR/CMakeLists.txt @@ -34,13 +34,12 @@ if (H5EX_BUILD_TESTING) ${testname}.h5 ) if (HDF5_ENABLE_USING_MEMCHECKER) - add_test (NAME ${EXAMPLE_VARNAME}_cpp_ex_${testname} COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $) + add_test (NAME ${EXAMPLE_VARNAME}_cpp_ex_${testname} COMMAND $) set_tests_properties (${EXAMPLE_VARNAME}_cpp_ex_${testname} PROPERTIES DEPENDS ${EXAMPLE_VARNAME}_cpp_ex_${testname}-clearall) else () add_test ( NAME ${EXAMPLE_VARNAME}_cpp_ex_${testname} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}" @@ -50,7 +49,10 @@ if (H5EX_BUILD_TESTING) -D "TEST_LIBRARY_DIRECTORY=${CMAKE_TEST_LIB_DIRECTORY}" -P "${H5EX_RESOURCES_DIR}/runTest.cmake" ) - set_tests_properties (${EXAMPLE_VARNAME}_cpp_ex_${testname} PROPERTIES DEPENDS ${EXAMPLE_VARNAME}_cpp_ex_${testname}-clearall) + set_tests_properties (${EXAMPLE_VARNAME}_cpp_ex_${testname} PROPERTIES + DEPENDS ${EXAMPLE_VARNAME}_cpp_ex_${testname}-clearall + ENVIRONMENT "${CROSSCOMPILING_PATH}" + ) endif () if (last_test) set_tests_properties (${EXAMPLE_VARNAME}_cpp_ex_${testname} PROPERTIES DEPENDS ${last_test}) diff --git a/HDF5Examples/FORTRAN/H5D/CMakeLists.txt b/HDF5Examples/FORTRAN/H5D/CMakeLists.txt index e93ec709105..7a0539e60fb 100644 --- a/HDF5Examples/FORTRAN/H5D/CMakeLists.txt +++ b/HDF5Examples/FORTRAN/H5D/CMakeLists.txt @@ -245,7 +245,7 @@ if (H5EX_BUILD_TESTING) ${testname}.h5 ) if (HDF5_USING_ANALYSIS_TOOL) - add_test (NAME ${EXAMPLE_VARNAME}_f90_${testname} COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $) + add_test (NAME ${EXAMPLE_VARNAME}_f90_${testname} COMMAND $) set_tests_properties (${EXAMPLE_VARNAME}_f90_${testname} PROPERTIES DEPENDS ${EXAMPLE_VARNAME}_f90_${testname}-clearall) add_test ( NAME ${EXAMPLE_VARNAME}_f90_${testname}-clean @@ -258,7 +258,6 @@ if (H5EX_BUILD_TESTING) add_test ( NAME ${EXAMPLE_VARNAME}_f90_${testname} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}" @@ -268,15 +267,19 @@ if (H5EX_BUILD_TESTING) -D "TEST_LIBRARY_DIRECTORY=${CMAKE_TEST_LIB_DIRECTORY}" -P "${H5EX_RESOURCES_DIR}/runTest.cmake" ) + set_tests_properties (${EXAMPLE_VARNAME}_f90_${testname} PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" + ) if (last_test) - set_tests_properties (${EXAMPLE_VARNAME}_f90_${testname} PROPERTIES DEPENDS ${last_test}) + set_tests_properties (${EXAMPLE_VARNAME}_f90_${testname} PROPERTIES + DEPENDS ${last_test} + ) endif () set (last_test "${EXAMPLE_VARNAME}_f90_${testname}") if (HDF5_PROVIDES_TOOLS) add_test ( NAME ${EXAMPLE_VARNAME}_H5DUMP-f90_${testname} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=${H5EX_HDF5_DUMP_EXECUTABLE}" -D "TEST_ARGS:STRING=${ARGN};${testname}.h5" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}" @@ -286,7 +289,10 @@ if (H5EX_BUILD_TESTING) -D "TEST_LIBRARY_DIRECTORY=${CMAKE_TEST_LIB_DIRECTORY}" -P "${H5EX_RESOURCES_DIR}/runTest.cmake" ) - set_tests_properties (${EXAMPLE_VARNAME}_H5DUMP-f90_${testname} PROPERTIES DEPENDS ${last_test}) + set_tests_properties (${EXAMPLE_VARNAME}_H5DUMP-f90_${testname} PROPERTIES + DEPENDS ${last_test} + ENVIRONMENT "${CROSSCOMPILING_PATH}" + ) set (last_test "${EXAMPLE_VARNAME}_H5DUMP-f90_${testname}") endif () add_test ( diff --git a/HDF5Examples/FORTRAN/H5G/CMakeLists.txt b/HDF5Examples/FORTRAN/H5G/CMakeLists.txt index f6a16bfebcd..b005d319872 100644 --- a/HDF5Examples/FORTRAN/H5G/CMakeLists.txt +++ b/HDF5Examples/FORTRAN/H5G/CMakeLists.txt @@ -192,7 +192,7 @@ if (H5EX_BUILD_TESTING) ${testname}.h5 ) if (HDF5_USING_ANALYSIS_TOOL) - add_test (NAME ${EXAMPLE_VARNAME}_f90_${testname} COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $) + add_test (NAME ${EXAMPLE_VARNAME}_f90_${testname} COMMAND $) set_tests_properties (${EXAMPLE_VARNAME}_f90_${testname} PROPERTIES DEPENDS ${EXAMPLE_VARNAME}_f90_${testname}-clearall) add_test ( NAME ${EXAMPLE_VARNAME}_f90_${testname}-clean @@ -200,12 +200,14 @@ if (H5EX_BUILD_TESTING) -E remove ${testname}.h5 ) - set_tests_properties (${EXAMPLE_VARNAME}_f90_${testname}-clean PROPERTIES DEPENDS ${EXAMPLE_VARNAME}_f90_${testname}) + set_tests_properties (${EXAMPLE_VARNAME}_f90_${testname}-clean PROPERTIES + DEPENDS ${EXAMPLE_VARNAME}_f90_${testname} + ENVIRONMENT "${CROSSCOMPILING_PATH}" + ) else () add_test ( NAME ${EXAMPLE_VARNAME}_f90_${testname} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}" @@ -215,6 +217,9 @@ if (H5EX_BUILD_TESTING) -D "TEST_LIBRARY_DIRECTORY=${CMAKE_TEST_LIB_DIRECTORY}" -P "${H5EX_RESOURCES_DIR}/runTest.cmake" ) + set_tests_properties (${EXAMPLE_VARNAME}_f90_${testname} PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" + ) if (last_test) set_tests_properties (${EXAMPLE_VARNAME}_f90_${testname} PROPERTIES DEPENDS ${last_test}) endif () @@ -223,7 +228,6 @@ if (H5EX_BUILD_TESTING) add_test ( NAME ${EXAMPLE_VARNAME}_H5DUMP-f90_${testname} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=${H5EX_HDF5_DUMP_EXECUTABLE}" -D "TEST_ARGS:STRING=${ARGN};${testname}.h5" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}" @@ -233,7 +237,10 @@ if (H5EX_BUILD_TESTING) -D "TEST_LIBRARY_DIRECTORY=${CMAKE_TEST_LIB_DIRECTORY}" -P "${H5EX_RESOURCES_DIR}/runTest.cmake" ) - set_tests_properties (${EXAMPLE_VARNAME}_H5DUMP-f90_${testname} PROPERTIES DEPENDS ${last_test}) + set_tests_properties (${EXAMPLE_VARNAME}_H5DUMP-f90_${testname} PROPERTIES + DEPENDS ${last_test} + ENVIRONMENT "${CROSSCOMPILING_PATH}" + ) set (last_test "${EXAMPLE_VARNAME}_H5DUMP-f90_${testname}") endif () add_test ( @@ -248,7 +255,7 @@ if (H5EX_BUILD_TESTING) macro (ADD_H5_DUMP_TEST testname) if (HDF5_USING_ANALYSIS_TOOL) - add_test (NAME ${EXAMPLE_VARNAME}_f90_${testname} COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $) + add_test (NAME ${EXAMPLE_VARNAME}_f90_${testname} COMMAND $) set_tests_properties (${EXAMPLE_VARNAME}_f90_${testname} PROPERTIES DEPENDS ${EXAMPLE_VARNAME}_f90_${testname}-clearall) add_test ( NAME ${EXAMPLE_VARNAME}_f90_${testname}-clean @@ -261,7 +268,6 @@ if (H5EX_BUILD_TESTING) add_test ( NAME ${EXAMPLE_VARNAME}_f90_${testname} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}" @@ -271,6 +277,9 @@ if (H5EX_BUILD_TESTING) -D "TEST_LIBRARY_DIRECTORY=${CMAKE_TEST_LIB_DIRECTORY}" -P "${H5EX_RESOURCES_DIR}/runTest.cmake" ) + set_tests_properties (${EXAMPLE_VARNAME}_f90_${testname} PROPERTIES} + ENVIRONMENT "${CROSSCOMPILING_PATH}" + ) if (last_test) set_tests_properties (${EXAMPLE_VARNAME}_f90_${testname} PROPERTIES DEPENDS ${last_test}) endif () @@ -279,7 +288,6 @@ if (H5EX_BUILD_TESTING) add_test ( NAME ${EXAMPLE_VARNAME}_H5DUMP-f90_${testname} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=${H5EX_HDF5_DUMP_EXECUTABLE}" -D "TEST_ARGS:STRING=${ARGN};${testname}.h5" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}" @@ -289,7 +297,10 @@ if (H5EX_BUILD_TESTING) -D "TEST_LIBRARY_DIRECTORY=${CMAKE_TEST_LIB_DIRECTORY}" -P "${H5EX_RESOURCES_DIR}/runTest.cmake" ) - set_tests_properties (${EXAMPLE_VARNAME}_H5DUMP-f90_${testname} PROPERTIES DEPENDS ${last_test}) + set_tests_properties (${EXAMPLE_VARNAME}_H5DUMP-f90_${testname} PROPERTIES + DEPENDS ${last_test} + ENVIRONMENT "${CROSSCOMPILING_PATH}" + ) set (last_test "${EXAMPLE_VARNAME}_H5DUMP-f90_${testname}") endif () add_test ( @@ -312,8 +323,11 @@ if (H5EX_BUILD_TESTING) ${testname}2.h5 ) if (HDF5_USING_ANALYSIS_TOOL) - add_test (NAME ${EXAMPLE_VARNAME}_f90_${testname} COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $) - set_tests_properties (${EXAMPLE_VARNAME}_f90_${testname} PROPERTIES DEPENDS ${EXAMPLE_VARNAME}_f90_${testname}-clearall) + add_test (NAME ${EXAMPLE_VARNAME}_f90_${testname} COMMAND $) + set_tests_properties (${EXAMPLE_VARNAME}_f90_${testname} PROPERTIES + DEPENDS ${EXAMPLE_VARNAME}_f90_${testname}-clearall + ENVIRONMENT "${CROSSCOMPILING_PATH}" + ) add_test ( NAME ${EXAMPLE_VARNAME}_f90_${testname}-clean COMMAND ${CMAKE_COMMAND} @@ -326,7 +340,6 @@ if (H5EX_BUILD_TESTING) add_test ( NAME ${EXAMPLE_VARNAME}_f90_${testname} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}" @@ -340,7 +353,6 @@ if (H5EX_BUILD_TESTING) add_test ( NAME ${EXAMPLE_VARNAME}_f90_${testname} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}" @@ -351,12 +363,14 @@ if (H5EX_BUILD_TESTING) -P "${H5EX_RESOURCES_DIR}/runTest.cmake" ) endif () - set_tests_properties (${EXAMPLE_VARNAME}_f90_${testname} PROPERTIES DEPENDS ${EXAMPLE_VARNAME}_f90_${testname}-clearall) + set_tests_properties (${EXAMPLE_VARNAME}_f90_${testname} PROPERTIES + DEPENDS ${EXAMPLE_VARNAME}_f90_${testname}-clearall + ENVIRONMENT "${CROSSCOMPILING_PATH}" + ) if (HDF5_PROVIDES_TOOLS) add_test ( NAME ${EXAMPLE_VARNAME}_H5DUMP-f90_${testname}1 COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=${H5EX_HDF5_DUMP_EXECUTABLE}" -D "TEST_ARGS:STRING=${testname}1.h5" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}" @@ -366,11 +380,13 @@ if (H5EX_BUILD_TESTING) -D "TEST_LIBRARY_DIRECTORY=${CMAKE_TEST_LIB_DIRECTORY}" -P "${H5EX_RESOURCES_DIR}/runTest.cmake" ) - set_tests_properties (${EXAMPLE_VARNAME}_H5DUMP-f90_${testname}1 PROPERTIES DEPENDS ${EXAMPLE_VARNAME}_f90_${testname}) + set_tests_properties (${EXAMPLE_VARNAME}_H5DUMP-f90_${testname}1 PROPERTIES + DEPENDS ${EXAMPLE_VARNAME}_f90_${testname} + ENVIRONMENT "${CROSSCOMPILING_PATH}" + ) add_test ( NAME ${EXAMPLE_VARNAME}_H5DUMP-f90_${testname}2 COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=${H5EX_HDF5_DUMP_EXECUTABLE}" -D "TEST_ARGS:STRING=${testname}2.h5" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}" @@ -380,7 +396,10 @@ if (H5EX_BUILD_TESTING) -D "TEST_LIBRARY_DIRECTORY=${CMAKE_TEST_LIB_DIRECTORY}" -P "${H5EX_RESOURCES_DIR}/runTest.cmake" ) - set_tests_properties (${EXAMPLE_VARNAME}_H5DUMP-f90_${testname}2 PROPERTIES DEPENDS ${EXAMPLE_VARNAME}_H5DUMP-f90_${testname}1) + set_tests_properties (${EXAMPLE_VARNAME}_H5DUMP-f90_${testname}2 PROPERTIES + DEPENDS ${EXAMPLE_VARNAME}_H5DUMP-f90_${testname}1 + ENVIRONMENT "${CROSSCOMPILING_PATH}" + ) endif () endif () endmacro () @@ -393,12 +412,11 @@ if (H5EX_BUILD_TESTING) ${testname}.out.tmp ) if (HDF5_USING_ANALYSIS_TOOL) - add_test (NAME ${EXAMPLE_VARNAME}_f90_${testname} COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $) + add_test (NAME ${EXAMPLE_VARNAME}_f90_${testname} COMMAND $) else () add_test ( NAME ${EXAMPLE_VARNAME}_f90_${testname} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=${ARGN}" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}" @@ -409,7 +427,10 @@ if (H5EX_BUILD_TESTING) -P "${H5EX_RESOURCES_DIR}/runTest.cmake" ) endif () - set_tests_properties (${EXAMPLE_VARNAME}_f90_${testname} PROPERTIES DEPENDS ${EXAMPLE_VARNAME}_f90_${testname}-clearall) + set_tests_properties (${EXAMPLE_VARNAME}_f90_${testname} PROPERTIES + DEPENDS ${EXAMPLE_VARNAME}_f90_${testname}-clearall + ENVIRONMENT "${CROSSCOMPILING_PATH}" + ) add_test ( NAME ${EXAMPLE_VARNAME}_f90_${testname}-clean COMMAND ${CMAKE_COMMAND} diff --git a/HDF5Examples/FORTRAN/H5T/CMakeLists.txt b/HDF5Examples/FORTRAN/H5T/CMakeLists.txt index ae380cb0b5a..60d71b87598 100644 --- a/HDF5Examples/FORTRAN/H5T/CMakeLists.txt +++ b/HDF5Examples/FORTRAN/H5T/CMakeLists.txt @@ -306,7 +306,7 @@ if (H5EX_BUILD_TESTING) ${testname}.h5 ) if (HDF5_USING_ANALYSIS_TOOL) - add_test (NAME ${EXAMPLE_VARNAME}_f90_${testname} COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $) + add_test (NAME ${EXAMPLE_VARNAME}_f90_${testname} COMMAND $) set_tests_properties (${EXAMPLE_VARNAME}_f90_${testname} PROPERTIES DEPENDS ${EXAMPLE_VARNAME}_f90_${testname}-clearall) add_test ( NAME ${EXAMPLE_VARNAME}_f90_${testname}-clean @@ -314,12 +314,14 @@ if (H5EX_BUILD_TESTING) -E remove ${testname}.h5 ) - set_tests_properties (${EXAMPLE_VARNAME}_f90_${testname}-clean PROPERTIES DEPENDS ${EXAMPLE_VARNAME}_f90_${testname}) + set_tests_properties (${EXAMPLE_VARNAME}_f90_${testname}-clean PROPERTIES + DEPENDS ${EXAMPLE_VARNAME}_f90_${testname} + ENVIRONMENT "${CROSSCOMPILING_PATH}" + ) else () add_test ( NAME ${EXAMPLE_VARNAME}_f90_${testname} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}" @@ -329,6 +331,9 @@ if (H5EX_BUILD_TESTING) -D "TEST_LIBRARY_DIRECTORY=${CMAKE_TEST_LIB_DIRECTORY}" -P "${H5EX_RESOURCES_DIR}/runTest.cmake" ) + set_tests_properties (${EXAMPLE_VARNAME}_f90_${testname} PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" + ) if (last_test) set_tests_properties (${EXAMPLE_VARNAME}_f90_${testname} PROPERTIES DEPENDS ${last_test}) endif () @@ -337,7 +342,6 @@ if (H5EX_BUILD_TESTING) add_test ( NAME ${EXAMPLE_VARNAME}_H5DUMP-f90_${testname} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=${H5EX_HDF5_DUMP_EXECUTABLE}" -D "TEST_ARGS:STRING=${ARGN};${testname}.h5" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}" @@ -347,7 +351,10 @@ if (H5EX_BUILD_TESTING) -D "TEST_LIBRARY_DIRECTORY=${CMAKE_TEST_LIB_DIRECTORY}" -P "${H5EX_RESOURCES_DIR}/runTest.cmake" ) - set_tests_properties (${EXAMPLE_VARNAME}_H5DUMP-f90_${testname} PROPERTIES DEPENDS ${last_test}) + set_tests_properties (${EXAMPLE_VARNAME}_H5DUMP-f90_${testname} PROPERTIES + DEPENDS ${last_test} + ENVIRONMENT "${CROSSCOMPILING_PATH}" + ) set (last_test "${EXAMPLE_VARNAME}_H5DUMP-f90_${testname}") endif () add_test ( @@ -368,12 +375,11 @@ if (H5EX_BUILD_TESTING) ${testname}.h5 ) if (HDF5_USING_ANALYSIS_TOOL) - add_test (NAME ${EXAMPLE_VARNAME}_f90_${testname} COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $) + add_test (NAME ${EXAMPLE_VARNAME}_f90_${testname} COMMAND $) else () add_test ( NAME ${EXAMPLE_VARNAME}_f90_${testname} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=${ARGN}" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}" @@ -384,7 +390,10 @@ if (H5EX_BUILD_TESTING) -P "${H5EX_RESOURCES_DIR}/runTest.cmake" ) endif () - set_tests_properties (${EXAMPLE_VARNAME}_f90_${testname} PROPERTIES DEPENDS ${EXAMPLE_VARNAME}_f90_${testname}-clearall) + set_tests_properties (${EXAMPLE_VARNAME}_f90_${testname} PROPERTIES + DEPENDS ${EXAMPLE_VARNAME}_f90_${testname}-clearall + ENVIRONMENT "${CROSSCOMPILING_PATH}" + ) add_test ( NAME ${EXAMPLE_VARNAME}_f90_${testname}-clean COMMAND ${CMAKE_COMMAND} diff --git a/HDF5Examples/FORTRAN/HL/CMakeLists.txt b/HDF5Examples/FORTRAN/HL/CMakeLists.txt index 7a8b8d13514..98c1ff61cea 100644 --- a/HDF5Examples/FORTRAN/HL/CMakeLists.txt +++ b/HDF5Examples/FORTRAN/HL/CMakeLists.txt @@ -161,7 +161,7 @@ if (H5EX_BUILD_TESTING) ${testname}.h5 ) if (HDF5_ENABLE_USING_MEMCHECKER) - add_test (NAME ${EXAMPLE_VARNAME}_f90_${testname} COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $) + add_test (NAME ${EXAMPLE_VARNAME}_f90_${testname} COMMAND $) set_tests_properties (${EXAMPLE_VARNAME}_f90_${testname} PROPERTIES DEPENDS ${EXAMPLE_VARNAME}_f90_${testname}-clearall) add_test ( NAME ${EXAMPLE_VARNAME}_f90_${testname}-clean @@ -169,12 +169,14 @@ if (H5EX_BUILD_TESTING) -E remove ${testname}.h5 ) - set_tests_properties (${EXAMPLE_VARNAME}_f90_${testname}-clean PROPERTIES DEPENDS ${EXAMPLE_VARNAME}_f90_${testname}) + set_tests_properties (${EXAMPLE_VARNAME}_f90_${testname}-clean PROPERTIES + DEPENDS ${EXAMPLE_VARNAME}_f90_${testname} + ENVIRONMENT "${CROSSCOMPILING_PATH}" + ) else () add_test ( NAME ${EXAMPLE_VARNAME}_f90_${testname} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}" @@ -184,6 +186,9 @@ if (H5EX_BUILD_TESTING) -D "TEST_LIBRARY_DIRECTORY=${CMAKE_TEST_LIB_DIRECTORY}" -P "${H5EX_RESOURCES_DIR}/runTest.cmake" ) + set_tests_properties (${EXAMPLE_VARNAME}_f90_${testname} PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" + ) if (last_test) set_tests_properties (${EXAMPLE_VARNAME}_f90_${testname} PROPERTIES DEPENDS ${last_test}) endif () @@ -192,7 +197,6 @@ if (H5EX_BUILD_TESTING) add_test ( NAME ${EXAMPLE_VARNAME}_H5DUMP-f90_${testname} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=${H5EX_HDF5_DUMP_EXECUTABLE}" -D "TEST_ARGS:STRING=${ARGN};${testname}.h5" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}" @@ -203,7 +207,10 @@ if (H5EX_BUILD_TESTING) -D "TEST_LIBRARY_DIRECTORY=${CMAKE_TEST_LIB_DIRECTORY}" -P "${H5EX_RESOURCES_DIR}/runTest.cmake" ) - set_tests_properties (${EXAMPLE_VARNAME}_H5DUMP-f90_${testname} PROPERTIES DEPENDS ${last_test}) + set_tests_properties (${EXAMPLE_VARNAME}_H5DUMP-f90_${testname} PROPERTIES + DEPENDS ${last_test} + ENVIRONMENT "${CROSSCOMPILING_PATH}" + ) set (last_test "${EXAMPLE_VARNAME}_H5DUMP-f90_${testname}") endif () add_test ( diff --git a/HDF5Examples/FORTRAN/TUTR/CMakeLists.txt b/HDF5Examples/FORTRAN/TUTR/CMakeLists.txt index e7307fbff4d..cc465c0b81a 100644 --- a/HDF5Examples/FORTRAN/TUTR/CMakeLists.txt +++ b/HDF5Examples/FORTRAN/TUTR/CMakeLists.txt @@ -89,12 +89,11 @@ if (H5EX_BUILD_TESTING) ) macro (ADD_H5_TEST testname) if (HDF5_USING_ANALYSIS_TOOL) - add_test (NAME ${EXAMPLE_VARNAME}_f90_tutr_${testname} COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $) + add_test (NAME ${EXAMPLE_VARNAME}_f90_tutr_${testname} COMMAND $) else () add_test ( NAME ${EXAMPLE_VARNAME}_f90_tutr_${testname} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}" @@ -105,7 +104,10 @@ if (H5EX_BUILD_TESTING) -P "${H5EX_RESOURCES_DIR}/runTest.cmake" ) endif () - set_tests_properties (${EXAMPLE_VARNAME}_f90_tutr_${testname} PROPERTIES FIXTURES_REQUIRED clear_${EXAMPLE_VARNAME}_f90_tutr) + set_tests_properties (${EXAMPLE_VARNAME}_f90_tutr_${testname} PROPERTIES + FIXTURES_REQUIRED clear_${EXAMPLE_VARNAME}_f90_tutr + ENVIRONMENT "${CROSSCOMPILING_PATH}" + ) if (last_test) set_tests_properties (${EXAMPLE_VARNAME}_f90_tutr_${testname} PROPERTIES DEPENDS ${last_test}) endif () diff --git a/HDF5Examples/PYTHON/CMakeLists.txt b/HDF5Examples/PYTHON/CMakeLists.txt index a35b12bcc45..8d8ce393791 100644 --- a/HDF5Examples/PYTHON/CMakeLists.txt +++ b/HDF5Examples/PYTHON/CMakeLists.txt @@ -32,7 +32,7 @@ if (H5EX_BUILD_TESTING) WORKING_DIRECTORY ${PROJECT_BINARY_DIR} ) - add_custom_target(${EXAMPLE_VARNAME}_PY-copy-objects ALL COMMENT "Copying Python source files") + add_custom_target (${EXAMPLE_VARNAME}_PY-copy-objects ALL COMMENT "Copying Python source files") foreach (example_name ${examples}) add_custom_command ( TARGET ${EXAMPLE_VARNAME}_PY-copy-objects diff --git a/HDF5Examples/config/toolchain/aarch64.cmake b/HDF5Examples/config/toolchain/aarch64.cmake index 03f4e5e9f58..fd216a99bb2 100644 --- a/HDF5Examples/config/toolchain/aarch64.cmake +++ b/HDF5Examples/config/toolchain/aarch64.cmake @@ -1,7 +1,7 @@ set(TOOLCHAIN_PREFIX aarch64-linux-gnu) -set(ANDROID_NDK /opt/android-ndk-linux) -set (CMAKE_SYSTEM_NAME Android) -set (CMAKE_ANDROID_ARCH_ABI x86_64) +set(CMAKE_SYSTEM_NAME Linux) +set(CMAKE_SYSTEM_PROCESSOR aarch64) +#set (CMAKE_ANDROID_ARCH_ABI x86_64) #set (CMAKE_ANDROID_STANDALONE_TOOLCHAIN ${ANDROID_NDK}/build/cmake/android.toolchain.cmake) set (CMAKE_C_COMPILER ${TOOLCHAIN_PREFIX}-gcc) set (CMAKE_CXX_COMPILER ${TOOLCHAIN_PREFIX}-g++) @@ -11,7 +11,8 @@ set (CMAKE_FIND_ROOT_PATH /usr/${TOOLCHAIN_PREFIX}) set (CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER) set (CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY) set (CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY) -set (CMAKE_CROSSCOMPILING_EMULATOR qemu-aarch64) +set (CMAKE_FIND_ROOT_PATH_MODE_PACKAGE ONLY) +set(CMAKE_CROSSCOMPILING_EMULATOR "qemu-aarch64-static;-L;/usr/aarch64-linux-gnu/" CACHE FILEPATH "Path to the emulator for the target system.") include_directories(/usr/${TOOLCHAIN_PREFIX}/include) diff --git a/HDF5Examples/config/toolchain/clang.cmake b/HDF5Examples/config/toolchain/clang.cmake index 2d35641a14c..bad6bef16b4 100644 --- a/HDF5Examples/config/toolchain/clang.cmake +++ b/HDF5Examples/config/toolchain/clang.cmake @@ -9,6 +9,7 @@ if(WIN32) else() set (CMAKE_C_COMPILER clang) set (CMAKE_CXX_COMPILER clang++) + #set (CMAKE_Fortran_COMPILER flang) endif() set (CMAKE_EXPORT_COMPILE_COMMANDS ON) diff --git a/HDF5Examples/config/toolchain/crosscompile-readme.cmake b/HDF5Examples/config/toolchain/crosscompile-readme.cmake new file mode 100644 index 00000000000..0a62f107f83 --- /dev/null +++ b/HDF5Examples/config/toolchain/crosscompile-readme.cmake @@ -0,0 +1,43 @@ +# This CMake toolchain file configures cross-compilation settings for building HDF5 on non-native platforms. +# Copy this file and rename it (e.g., to crosscompile-myplatform.cmake). +# Replace the placeholder values with actual values for your target system and compilers. +# Then use this file with CMake by specifying it with the -DCMAKE_TOOLCHAIN_FILE option. + +# Set the target system name for cross-compiling +set (CMAKE_SYSTEM_NAME system_name) + +# Specify the compiler vendor and compilers for C, C++, and Fortran +set (CMAKE_COMPILER_VENDOR "compiler_name") +set (CMAKE_C_COMPILER compiler_cc) +set (CMAKE_CXX_COMPILER compiler_c++) +set (CMAKE_Fortran_COMPILER compiler_fortran) + +# Optional: Specify an emulator for running binaries during cross-compilation +set (CMAKE_CROSSCOMPILING_EMULATOR "") + +# Fortran kind and precision settings for cross-compiling +set (PAC_FC_ALL_INTEGER_KINDS "\{x,y,z\}" CACHE INTERNAL "Find available INTEGER KINDs for Fortran") +set (PAC_FC_ALL_REAL_KINDS "\{x,y,z\}" CACHE INTERNAL "Find available REAL KINDs for Fortran") +set (${HDF_PREFIX}_PAC_FC_MAX_REAL_PRECISION X CACHE INTERNAL "Maximum decimal precision for REALs in Fortran") +set (PAC_FORTRAN_NUM_INTEGER_KINDS "Y" CACHE INTERNAL "Number of valid integer kinds for Fortran") +set (PAC_FORTRAN_NUM_REAL_KINDS "Z" CACHE INTERNAL "Number of valid real kinds for Fortran") + +# Fortran configuration variables for HDF5 +set (${HDF_PREFIX}_H5CONFIG_F_NUM_IKIND "INTEGER, PARAMETER :: num_ikinds = Y") +set (${HDF_PREFIX}_H5CONFIG_F_IKIND "INTEGER, DIMENSION(1:num_ikinds) :: ikind = (/x,y,z/)") + +# If using ISO_FORTRAN_ENV, set logical kind variables +if (${PAC_USE_ISO_FORTRAN_ENV}) + set (PAC_FORTRAN_NUM_LOGICAL_KINDS "W" CACHE INTERNAL "Find available LOGICAL KINDs for Fortran") + set (PAC_FC_ALL_LOGICAL_KINDS "\{x,y,z\}" CACHE INTERNAL "LOGICAL KINDS FOUND for Fortran") +endif () + +# Native kind and sizeof settings for Fortran types +set (PAC_FC_ALL_INTEGER_KINDS_SIZEOF "\{x,y,z\}" CACHE INTERNAL "Find available INTEGER KINDs for Fortran") +set (PAC_FC_ALL_REAL_KINDS_SIZEOF "\{x,y,z\}" CACHE INTERNAL "Find available REAL KINDs for Fortran") +set (PAC_FORTRAN_NATIVE_INTEGER_SIZEOF i CACHE INTERNAL "Find sizeof of native kinds sizeof INTEGER") +set (PAC_FORTRAN_NATIVE_INTEGER_KIND j CACHE INTERNAL "Find sizeof of native kinds kind of INTEGER") +set (PAC_FORTRAN_NATIVE_REAL_SIZEOF k CACHE INTERNAL "Find sizeof of native kinds sizeof REAL") +set (PAC_FORTRAN_NATIVE_REAL_KIND m CACHE INTERNAL "Find sizeof of native kinds kind of REAL") +set (PAC_FORTRAN_NATIVE_DOUBLE_SIZEOF n CACHE INTERNAL "Find sizeof of native kinds sizeof DOUBLE PRECISION") +set (PAC_FORTRAN_NATIVE_DOUBLE_KIND o CACHE INTERNAL "Find sizeof of native kinds kind of DOUBLE PRECISION") diff --git a/HDF5Examples/config/toolchain/intel.cmake b/HDF5Examples/config/toolchain/intel.cmake index f8f60b28b46..f5b227ba2a0 100644 --- a/HDF5Examples/config/toolchain/intel.cmake +++ b/HDF5Examples/config/toolchain/intel.cmake @@ -4,7 +4,11 @@ set(CMAKE_COMPILER_VENDOR "intel") set(CMAKE_C_COMPILER icx) -set(CMAKE_CXX_COMPILER icpx) +if(WIN32) + set(CMAKE_CXX_COMPILER icx) +else() + set(CMAKE_CXX_COMPILER icpx) +endif() set(CMAKE_Fortran_COMPILER ifx) # the following is used if cross-compiling diff --git a/HDF5Examples/config/toolchain/mingw64.cmake b/HDF5Examples/config/toolchain/mingw64.cmake index 1b138919087..24b173d7bbe 100644 --- a/HDF5Examples/config/toolchain/mingw64.cmake +++ b/HDF5Examples/config/toolchain/mingw64.cmake @@ -1,14 +1,34 @@ -set(TOOLCHAIN_PREFIX x86_64-w64-mingw32) +set (TOOLCHAIN_PREFIX x86_64-w64-mingw32) set (CMAKE_SYSTEM_NAME Windows) -set (CMAKE_C_COMPILER ${TOOLCHAIN_PREFIX}-gcc) -set (CMAKE_CXX_COMPILER ${TOOLCHAIN_PREFIX}-g++) -set (CMAKE_RC_COMPILER ${TOOLCHAIN_PREFIX}-windres) -set (CMAKE_Fortran_COMPILER ${TOOLCHAIN_PREFIX}-gfortran) -set (CMAKE_FIND_ROOT_PATH /usr/${TOOLCHAIN_PREFIX}) +set (CMAKE_SYSTEM_PROCESSOR x86_64) + +# specify the cross compiler +if (NOT DEFINED ENV{CC}) + set (CMAKE_C_COMPILER /usr/bin/${TOOLCHAIN_PREFIX}-gcc) +endif () +if (NOT DEFINED ENV{CXX}) +set (CMAKE_CXX_COMPILER /usr/bin/${TOOLCHAIN_PREFIX}-g++) +endif () +if (NOT DEFINED ENV{FC}) +set (CMAKE_Fortran_COMPILER /usr/bin/${TOOLCHAIN_PREFIX}-gfortran) +# set the resource compiler (RHBZ #652435) +endif () +if (NOT DEFINED ENV{RC}) +set (CMAKE_RC_COMPILER /usr/bin/${TOOLCHAIN_PREFIX}-windres) +endif () + +set (CMAKE_FIND_ROOT_PATH /usr/${TOOLCHAIN_PREFIX}/sys-root/mingw) + +# search for programs in the build host directories set (CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER) +# for libraries, headers and packages in the target directories set (CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY) set (CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY) +set (CMAKE_FIND_ROOT_PATH_MODE_PACKAGE ONLY) set (CMAKE_CROSSCOMPILING_EMULATOR wine64) +set (CROSSCOMPILING_PATH "WINEPATH=/usr/${TOOLCHAIN_PREFIX}/sys-root/mingw/bin/") -include_directories(/usr/${TOOLCHAIN_PREFIX}/include) set (CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS On CACHE BOOL "Export windows symbols") + +set (CMAKE_AR:FILEPATH /usr/bin/${TOOLCHAIN_PREFIX}-ar) +set (CMAKE_RANLIB:FILEPATH /usr/bin/${TOOLCHAIN_PREFIX}-ranlib) diff --git a/c++/test/CMakeTests.cmake b/c++/test/CMakeTests.cmake index ce82c6cbd2a..e1113248998 100644 --- a/c++/test/CMakeTests.cmake +++ b/c++/test/CMakeTests.cmake @@ -9,8 +9,8 @@ # If you do not have access to either file, you may request a copy from # help@hdfgroup.org. # -HDFTEST_COPY_FILE("${HDF5_CPP_TEST_SOURCE_DIR}/th5s.h5" "${PROJECT_BINARY_DIR}/th5s.h5" "cpp_testhdf5_files") -add_custom_target(cpp_testhdf5_files ALL COMMENT "Copying files needed by cpp_testhdf5 tests" DEPENDS ${cpp_testhdf5_files_list}) +HDFTEST_COPY_FILE ("${HDF5_CPP_TEST_SOURCE_DIR}/th5s.h5" "${PROJECT_BINARY_DIR}/th5s.h5" "cpp_testhdf5_files") +add_custom_target (cpp_testhdf5_files ALL COMMENT "Copying files needed by cpp_testhdf5 tests" DEPENDS ${cpp_testhdf5_files_list}) ############################################################################## ############################################################################## @@ -18,10 +18,9 @@ add_custom_target(cpp_testhdf5_files ALL COMMENT "Copying files needed by cpp_te ############################################################################## ############################################################################## if (HDF5_ENABLE_USING_MEMCHECKER) - add_test (NAME CPP_testhdf5 COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $) + add_test (NAME CPP_testhdf5 COMMAND $) else () add_test (NAME CPP_testhdf5 COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=" -D "TEST_EXPECT=0" @@ -34,6 +33,7 @@ else () endif () set_tests_properties (CPP_testhdf5 PROPERTIES WORKING_DIRECTORY ${PROJECT_BINARY_DIR} + ENVIRONMENT "${CROSSCOMPILING_PATH}" ) if ("CPP_testhdf5" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") set_tests_properties (CPP_testhdf5 PROPERTIES DISABLED true) diff --git a/c++/test/CMakeVFDTests.cmake b/c++/test/CMakeVFDTests.cmake index 8fd75c693f4..67c69d70b52 100644 --- a/c++/test/CMakeVFDTests.cmake +++ b/c++/test/CMakeVFDTests.cmake @@ -27,7 +27,6 @@ macro (ADD_VFD_TEST vfdname resultcode) add_test ( NAME CPP_VFD-${vfdname}-cpp_testhdf5 COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=" -D "TEST_VFD:STRING=${vfdname}" @@ -36,7 +35,10 @@ macro (ADD_VFD_TEST vfdname resultcode) -D "TEST_FOLDER=${PROJECT_BINARY_DIR}/${vfdname}" -P "${HDF_RESOURCES_DIR}/vfdTest.cmake" ) - set_tests_properties (CPP_VFD-${vfdname}-cpp_testhdf5 PROPERTIES TIMEOUT ${CTEST_SHORT_TIMEOUT}) + set_tests_properties (CPP_VFD-${vfdname}-cpp_testhdf5 PROPERTIES + TIMEOUT ${CTEST_SHORT_TIMEOUT} + ENVIRONMENT "${CROSSCOMPILING_PATH}" + ) if ("CPP_VFD-${vfdname}-cpp_testhdf5" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") set_tests_properties (CPP_VFD-${vfdname}-cpp_testhdf5 PROPERTIES DISABLED true) endif () diff --git a/config/sanitizer/code-coverage.cmake b/config/sanitizer/code-coverage.cmake index 5249ed05af1..107d9f07a4f 100644 --- a/config/sanitizer/code-coverage.cmake +++ b/config/sanitizer/code-coverage.cmake @@ -141,14 +141,14 @@ if(CODE_COVERAGE AND NOT CODE_COVERAGE_ADDED) # Targets if(${CMAKE_VERSION} VERSION_LESS "3.17.0") - add_custom_target( + add_custom_target ( ccov-clean COMMAND ${CMAKE_COMMAND} -E remove -f ${CMAKE_COVERAGE_OUTPUT_DIRECTORY}/binaries.list COMMAND ${CMAKE_COMMAND} -E remove -f ${CMAKE_COVERAGE_OUTPUT_DIRECTORY}/profraw.list) else() - add_custom_target( + add_custom_target ( ccov-clean COMMAND ${CMAKE_COMMAND} -E rm -f ${CMAKE_COVERAGE_OUTPUT_DIRECTORY}/binaries.list @@ -158,7 +158,7 @@ if(CODE_COVERAGE AND NOT CODE_COVERAGE_ADDED) # Used to get the shared object file list before doing the main all- # processing - add_custom_target( + add_custom_target ( ccov-libs COMMAND ; COMMENT "libs ready for coverage report.") @@ -189,7 +189,7 @@ if(CODE_COVERAGE AND NOT CODE_COVERAGE_ADDED) endif() # Targets - add_custom_target(ccov-clean COMMAND ${LCOV_PATH} --directory + add_custom_target (ccov-clean COMMAND ${LCOV_PATH} --directory ${CMAKE_BINARY_DIR} --zerocounters) else() @@ -291,7 +291,7 @@ function(target_code_coverage TARGET_NAME) CMAKE_CXX_COMPILER_ID MATCHES "IntelLLVM" OR CMAKE_C_COMPILER_ID MATCHES "(Apple)?[Cc]lang" OR CMAKE_CXX_COMPILER_ID MATCHES "(Apple)?[Cc]lang") - add_custom_target( + add_custom_target ( ccov-run-${target_code_coverage_COVERAGE_TARGET_NAME} COMMAND ${CMAKE_COMMAND} -E echo "-object=$" >> @@ -332,10 +332,12 @@ function(target_code_coverage TARGET_NAME) # Run the executable, generating raw profile data Make the run data # available for further processing. Separated to allow Windows to run # this target serially. - add_custom_target( + add_custom_target ( ccov-run-${target_code_coverage_COVERAGE_TARGET_NAME} + COMMAND ${CMAKE_COMMAND} + ARGS -E env ${CROSSCOMPILING_PATH} COMMAND - ${CMAKE_COMMAND} -E env ${CMAKE_CROSSCOMPILING_EMULATOR} + ${CMAKE_COMMAND} -E env ${target_code_coverage_PRE_ARGS} LLVM_PROFILE_FILE=${target_code_coverage_COVERAGE_TARGET_NAME}.profraw $ ${target_code_coverage_ARGS} @@ -350,7 +352,7 @@ function(target_code_coverage TARGET_NAME) DEPENDS ccov-libs ${TARGET_NAME}) # Merge the generated profile data so llvm-cov can process it - add_custom_target( + add_custom_target ( ccov-processing-${target_code_coverage_COVERAGE_TARGET_NAME} COMMAND ${LLVM_PROFDATA_PATH} merge -sparse @@ -367,7 +369,7 @@ function(target_code_coverage TARGET_NAME) endif() # Print out details of the coverage information to the command line - add_custom_target( + add_custom_target ( ccov-show-${target_code_coverage_COVERAGE_TARGET_NAME} COMMAND ${LLVM_COV_PATH} show $ ${SO_OBJECTS} @@ -376,7 +378,7 @@ function(target_code_coverage TARGET_NAME) DEPENDS ccov-processing-${target_code_coverage_COVERAGE_TARGET_NAME}) # Print out a summary of the coverage information to the command line - add_custom_target( + add_custom_target ( ccov-report-${target_code_coverage_COVERAGE_TARGET_NAME} COMMAND ${LLVM_COV_PATH} report $ ${SO_OBJECTS} @@ -386,7 +388,7 @@ function(target_code_coverage TARGET_NAME) # Export coverage information so continuous integration tools (e.g. # Jenkins) can consume it - add_custom_target( + add_custom_target ( ccov-export-${target_code_coverage_COVERAGE_TARGET_NAME} COMMAND ${LLVM_COV_PATH} export $ ${SO_OBJECTS} @@ -396,7 +398,7 @@ function(target_code_coverage TARGET_NAME) DEPENDS ccov-processing-${target_code_coverage_COVERAGE_TARGET_NAME}) # Generates HTML output of the coverage information for perusal - add_custom_target( + add_custom_target ( ccov-${target_code_coverage_COVERAGE_TARGET_NAME} COMMAND ${LLVM_COV_PATH} show $ ${SO_OBJECTS} @@ -413,10 +415,12 @@ function(target_code_coverage TARGET_NAME) ) # Run the executable, generating coverage information - add_custom_target( + add_custom_target ( ccov-run-${target_code_coverage_COVERAGE_TARGET_NAME} + COMMAND ${CMAKE_COMMAND} + ARGS -E env ${CROSSCOMPILING_PATH} COMMAND - ${CMAKE_CROSSCOMPILING_EMULATOR} ${target_code_coverage_PRE_ARGS} + ${target_code_coverage_PRE_ARGS} $ ${target_code_coverage_ARGS} DEPENDS ${TARGET_NAME}) @@ -439,12 +443,14 @@ function(target_code_coverage TARGET_NAME) # Capture coverage data if(${CMAKE_VERSION} VERSION_LESS "3.17.0") - add_custom_target( + add_custom_target ( ccov-capture-${target_code_coverage_COVERAGE_TARGET_NAME} COMMAND ${CMAKE_COMMAND} -E remove -f ${COVERAGE_INFO} COMMAND ${LCOV_PATH} --directory ${CMAKE_BINARY_DIR} --zerocounters + COMMAND ${CMAKE_COMMAND} + ARGS -E env ${CROSSCOMPILING_PATH} COMMAND - ${CMAKE_CROSSCOMPILING_EMULATOR} ${target_code_coverage_PRE_ARGS} + ${target_code_coverage_PRE_ARGS} $ ${target_code_coverage_ARGS} COMMAND ${LCOV_PATH} --directory ${CMAKE_BINARY_DIR} --base-directory @@ -453,12 +459,14 @@ function(target_code_coverage TARGET_NAME) COMMAND ${EXCLUDE_COMMAND} DEPENDS ${TARGET_NAME}) else() - add_custom_target( + add_custom_target ( ccov-capture-${target_code_coverage_COVERAGE_TARGET_NAME} COMMAND ${CMAKE_COMMAND} -E rm -f ${COVERAGE_INFO} COMMAND ${LCOV_PATH} --directory ${CMAKE_BINARY_DIR} --zerocounters + COMMAND ${CMAKE_COMMAND} + ARGS -E env ${CROSSCOMPILING_PATH} COMMAND - ${CMAKE_CROSSCOMPILING_EMULATOR} ${target_code_coverage_PRE_ARGS} + ${target_code_coverage_PRE_ARGS} $ ${target_code_coverage_ARGS} COMMAND ${LCOV_PATH} --directory ${CMAKE_BINARY_DIR} --base-directory @@ -469,7 +477,7 @@ function(target_code_coverage TARGET_NAME) endif() # Generates HTML output of the coverage information for perusal - add_custom_target( + add_custom_target ( ccov-${target_code_coverage_COVERAGE_TARGET_NAME} COMMAND ${GENHTML_PATH} -o @@ -489,14 +497,14 @@ function(target_code_coverage TARGET_NAME) # AUTO if(target_code_coverage_AUTO) if(NOT TARGET ccov) - add_custom_target(ccov) + add_custom_target (ccov) endif() add_dependencies(ccov ccov-${target_code_coverage_COVERAGE_TARGET_NAME}) if(NOT CMAKE_C_COMPILER_ID MATCHES "GNU" AND NOT CMAKE_CXX_COMPILER_ID MATCHES "GNU") if(NOT TARGET ccov-report) - add_custom_target(ccov-report) + add_custom_target (ccov-report) endif() add_dependencies( ccov-report @@ -564,7 +572,7 @@ function(add_code_coverage_all_targets) # Merge the profile data for all of the run executables if(WIN32) - add_custom_target( + add_custom_target ( ccov-all-processing COMMAND powershell -Command $$FILELIST = Get-Content @@ -572,7 +580,7 @@ function(add_code_coverage_all_targets) merge -o ${CMAKE_COVERAGE_OUTPUT_DIRECTORY}/all-merged.profdata -sparse $$FILELIST) else() - add_custom_target( + add_custom_target ( ccov-all-processing COMMAND ${LLVM_PROFDATA_PATH} merge -o @@ -590,7 +598,7 @@ function(add_code_coverage_all_targets) # Print summary of the code coverage information to the command line if(WIN32) - add_custom_target( + add_custom_target ( ccov-all-report COMMAND powershell -Command $$FILELIST = Get-Content @@ -600,7 +608,7 @@ function(add_code_coverage_all_targets) ${EXCLUDE_REGEX} DEPENDS ccov-all-processing) else() - add_custom_target( + add_custom_target ( ccov-all-report COMMAND ${LLVM_COV_PATH} report `cat @@ -613,7 +621,7 @@ function(add_code_coverage_all_targets) # Export coverage information so continuous integration tools (e.g. # Jenkins) can consume it if(WIN32) - add_custom_target( + add_custom_target ( ccov-all-export COMMAND powershell -Command $$FILELIST = Get-Content @@ -624,7 +632,7 @@ function(add_code_coverage_all_targets) ${CMAKE_COVERAGE_OUTPUT_DIRECTORY}/coverage.json DEPENDS ccov-all-processing) else() - add_custom_target( + add_custom_target ( ccov-all-export COMMAND ${LLVM_COV_PATH} export `cat @@ -637,7 +645,7 @@ function(add_code_coverage_all_targets) # Generate HTML output of all added targets for perusal if(WIN32) - add_custom_target( + add_custom_target ( ccov-all COMMAND powershell -Command $$FILELIST = Get-Content @@ -649,7 +657,7 @@ function(add_code_coverage_all_targets) -format="html" ${EXCLUDE_REGEX} DEPENDS ccov-all-processing) else() - add_custom_target( + add_custom_target ( ccov-all COMMAND ${LLVM_COV_PATH} show `cat @@ -665,7 +673,7 @@ function(add_code_coverage_all_targets) set(COVERAGE_INFO "${CMAKE_COVERAGE_OUTPUT_DIRECTORY}/all-merged.info") # Nothing required for gcov - add_custom_target(ccov-all-processing COMMAND ;) + add_custom_target (ccov-all-processing COMMAND ;) # Exclusion regex string creation set(EXCLUDE_REGEX) @@ -683,7 +691,7 @@ function(add_code_coverage_all_targets) # Capture coverage data if(${CMAKE_VERSION} VERSION_LESS "3.17.0") - add_custom_target( + add_custom_target ( ccov-all-capture COMMAND ${CMAKE_COMMAND} -E remove -f ${COVERAGE_INFO} COMMAND ${LCOV_PATH} --directory ${CMAKE_BINARY_DIR} --capture @@ -691,7 +699,7 @@ function(add_code_coverage_all_targets) COMMAND ${EXCLUDE_COMMAND} DEPENDS ccov-all-processing) else() - add_custom_target( + add_custom_target ( ccov-all-capture COMMAND ${CMAKE_COMMAND} -E rm -f ${COVERAGE_INFO} COMMAND ${LCOV_PATH} --directory ${CMAKE_BINARY_DIR} --capture @@ -701,7 +709,7 @@ function(add_code_coverage_all_targets) endif() # Generates HTML output of all targets for perusal - add_custom_target( + add_custom_target ( ccov-all COMMAND ${GENHTML_PATH} -o ${CMAKE_COVERAGE_OUTPUT_DIRECTORY}/all-merged ${COVERAGE_INFO} -p ${CMAKE_SOURCE_DIR} diff --git a/config/sanitizer/dependency-graph.cmake b/config/sanitizer/dependency-graph.cmake index bc3446d0e4b..8b6dd253014 100644 --- a/config/sanitizer/dependency-graph.cmake +++ b/config/sanitizer/dependency-graph.cmake @@ -79,7 +79,7 @@ function(gen_dep_graph OUTPUT_TYPE) set(OUT_DIR ${CMAKE_CURRENT_BINARY_DIR}) endif() - add_custom_target( + add_custom_target ( ${TARGET_NAME} COMMAND ${CMAKE_COMMAND} ${CMAKE_SOURCE_DIR} --graphviz=${CMAKE_CURRENT_BINARY_DIR}/graphviz/${TARGET_NAME}.dot @@ -98,7 +98,7 @@ function(gen_dep_graph OUTPUT_TYPE) if(gen_dep_graph_ADD_TO_DEP_GRAPH) if(NOT TARGET dep-graph) - add_custom_target(dep-graph) + add_custom_target (dep-graph) endif() add_dependencies(dep-graph ${TARGET_NAME}) diff --git a/config/sanitizer/formatting.cmake b/config/sanitizer/formatting.cmake index 181351dd25b..5dbc92194f0 100644 --- a/config/sanitizer/formatting.cmake +++ b/config/sanitizer/formatting.cmake @@ -69,11 +69,11 @@ function(clang_format TARGET_NAME) # Make the target if(FORMAT_FILES) - add_custom_target(${TARGET_NAME} COMMAND ${CLANG_FORMAT_EXE} -i + add_custom_target (${TARGET_NAME} COMMAND ${CLANG_FORMAT_EXE} -i -style=file ${FORMAT_FILES}) if(NOT TARGET format) - add_custom_target(format) + add_custom_target (format) endif() add_dependencies(format ${TARGET_NAME}) @@ -123,11 +123,11 @@ function(cmake_format TARGET_NAME) ERROR "Cannot create cmake-format target '${TARGET_NAME}', already exists.") else() - add_custom_target(${TARGET_NAME} COMMAND ${CMAKE_FORMAT_EXE} -i + add_custom_target (${TARGET_NAME} COMMAND ${CMAKE_FORMAT_EXE} -i ${FORMAT_FILES}) if(NOT TARGET cmake-format) - add_custom_target(cmake-format) + add_custom_target (cmake-format) endif() add_dependencies(cmake-format ${TARGET_NAME}) endif() diff --git a/config/toolchain/mingw64.cmake b/config/toolchain/mingw64.cmake index d9ffff87165..24b173d7bbe 100644 --- a/config/toolchain/mingw64.cmake +++ b/config/toolchain/mingw64.cmake @@ -26,6 +26,7 @@ set (CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY) set (CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY) set (CMAKE_FIND_ROOT_PATH_MODE_PACKAGE ONLY) set (CMAKE_CROSSCOMPILING_EMULATOR wine64) +set (CROSSCOMPILING_PATH "WINEPATH=/usr/${TOOLCHAIN_PREFIX}/sys-root/mingw/bin/") set (CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS On CACHE BOOL "Export windows symbols") diff --git a/fortran/src/CMakeLists.txt b/fortran/src/CMakeLists.txt index 5e7745803db..8d59865a24f 100644 --- a/fortran/src/CMakeLists.txt +++ b/fortran/src/CMakeLists.txt @@ -150,7 +150,9 @@ if (NOT EXISTS "${HDF5_GENERATED_SOURCE_DIR}/H5fortran_types.F90") # execute the H5match_types program add_custom_command (TARGET H5match_types POST_BUILD BYPRODUCTS ${HDF5_F90_BINARY_DIR}/H5f90i_gen.h ${HDF5_F90_BINARY_DIR}/H5fortran_types.F90 - COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ + COMMAND ${CMAKE_COMMAND} + ARGS -E env ${CROSSCOMPILING_PATH} + COMMAND $ WORKING_DIRECTORY ${HDF5_F90_BINARY_DIR} COMMENT "Generating the H5fortran_types.F90 and H5f90i_gen.h files" ) @@ -331,7 +333,9 @@ if (NOT EXISTS "${HDF5_GENERATED_SOURCE_DIR}/H5_gen.F90") message (STATUS "No pre-generated H5_gen.F90 file found - generating one") add_custom_command (TARGET H5_buildiface POST_BUILD BYPRODUCTS ${HDF5_F90_BINARY_DIR}/H5_gen.F90 - COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ + COMMAND ${CMAKE_COMMAND} + ARGS -E env ${CROSSCOMPILING_PATH} + COMMAND $ WORKING_DIRECTORY ${HDF5_F90_BINARY_DIR} COMMENT "Generating the H5_gen.F90 file" ) diff --git a/fortran/test/CMakeLists.txt b/fortran/test/CMakeLists.txt index e33f5afcf15..c7b749ef5d7 100644 --- a/fortran/test/CMakeLists.txt +++ b/fortran/test/CMakeLists.txt @@ -106,7 +106,9 @@ if (NOT EXISTS "${HDF5_GENERATED_SOURCE_DIR}/tf_gen.F90") message (STATUS "No pre-generated tf_gen.F90 file found - generating one") add_custom_command (TARGET H5_test_buildiface POST_BUILD BYPRODUCTS ${HDF5_FORTRAN_TESTS_BINARY_DIR}/tf_gen.F90 - COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ + COMMAND ${CMAKE_COMMAND} + ARGS -E env ${CROSSCOMPILING_PATH} + COMMAND $ WORKING_DIRECTORY ${HDF5_FORTRAN_TESTS_BINARY_DIR} COMMENT "Generating the tf_gen.F90 static file" ) diff --git a/fortran/test/CMakeTests.cmake b/fortran/test/CMakeTests.cmake index 66a5f058634..6c712bfa8ee 100644 --- a/fortran/test/CMakeTests.cmake +++ b/fortran/test/CMakeTests.cmake @@ -74,10 +74,9 @@ set_tests_properties (FORTRAN_testhdf5-clean-objects PROPERTIES ) if (HDF5_ENABLE_USING_MEMCHECKER) - add_test (NAME FORTRAN_testhdf5_fortran COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $) + add_test (NAME FORTRAN_testhdf5_fortran COMMAND $) else () add_test (NAME FORTRAN_testhdf5_fortran COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=" -D "TEST_EXPECT=0" @@ -93,6 +92,7 @@ endif () #set_tests_properties (FORTRAN_testhdf5_fortran PROPERTIES PASS_REGULAR_EXPRESSION "[ ]*0 error.s") set_tests_properties (FORTRAN_testhdf5_fortran PROPERTIES FIXTURES_REQUIRED clear_testhdf5_fortran + ENVIRONMENT "${CROSSCOMPILING_PATH}" ) if ("FORTRAN_testhdf5_fortran" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") set_tests_properties (FORTRAN_testhdf5_fortran PROPERTIES DISABLED true) @@ -100,10 +100,9 @@ endif () #-- Adding test for testhdf5_fortran_1_8 if (HDF5_ENABLE_USING_MEMCHECKER) - add_test (NAME FORTRAN_testhdf5_fortran_1_8 COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $) + add_test (NAME FORTRAN_testhdf5_fortran_1_8 COMMAND $) else () add_test (NAME FORTRAN_testhdf5_fortran_1_8 COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=" -D "TEST_EXPECT=0" @@ -120,6 +119,7 @@ endif () set_tests_properties (FORTRAN_testhdf5_fortran_1_8 PROPERTIES DEPENDS FORTRAN_testhdf5_fortran FIXTURES_REQUIRED clear_testhdf5_fortran + ENVIRONMENT "${CROSSCOMPILING_PATH}" ) if ("FORTRAN_testhdf5_fortran_1_8" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") set_tests_properties (FORTRAN_testhdf5_fortran_1_8 PROPERTIES DISABLED true) @@ -127,10 +127,9 @@ endif () #-- Adding test for fortranlib_test_F03 if (HDF5_ENABLE_USING_MEMCHECKER) - add_test (NAME FORTRAN_fortranlib_test_F03 COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $) + add_test (NAME FORTRAN_fortranlib_test_F03 COMMAND $) else () add_test (NAME FORTRAN_fortranlib_test_F03 COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=" -D "TEST_EXPECT=0" @@ -147,6 +146,7 @@ endif () set_tests_properties (FORTRAN_fortranlib_test_F03 PROPERTIES DEPENDS FORTRAN_testhdf5_fortran_1_8 FIXTURES_REQUIRED clear_testhdf5_fortran + ENVIRONMENT "${CROSSCOMPILING_PATH}" ) if ("FORTRAN_fortranlib_test_F03" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") set_tests_properties (FORTRAN_fortranlib_test_F03 PROPERTIES DISABLED true) @@ -154,10 +154,9 @@ endif () #-- Adding test for vol_connector if (HDF5_ENABLE_USING_MEMCHECKER) - add_test (NAME FORTRAN_vol_connector COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $) + add_test (NAME FORTRAN_vol_connector COMMAND $) else () add_test (NAME FORTRAN_vol_connector COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=" -D "TEST_EXPECT=0" @@ -172,6 +171,7 @@ else () endif () set_tests_properties (FORTRAN_vol_connector PROPERTIES FIXTURES_REQUIRED clear_testhdf5_fortran + ENVIRONMENT "${CROSSCOMPILING_PATH}" ) if ("FORTRAN_vol_connector" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") set_tests_properties (FORTRAN_vol_connector PROPERTIES DISABLED true) @@ -184,10 +184,11 @@ add_test ( ) add_test ( NAME FORTRAN_fflush1 - COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ + COMMAND $ ) set_tests_properties (FORTRAN_fflush1 PROPERTIES DEPENDS FORTRAN_flush1-clear-objects + ENVIRONMENT "${CROSSCOMPILING_PATH}" ) if ("FORTRAN_fflush1" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") set_tests_properties (FORTRAN_fflush1 PROPERTIES DISABLED true) @@ -196,7 +197,8 @@ endif () #-- Adding test for fflush2 add_test ( NAME FORTRAN_fflush2 - COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ + COMMAND $ + ENVIRONMENT "${CROSSCOMPILING_PATH}" ) set_tests_properties (FORTRAN_fflush2 PROPERTIES DEPENDS FORTRAN_fflush1 diff --git a/hl/c++/test/CMakeTests.cmake b/hl/c++/test/CMakeTests.cmake index 159597d5b99..eab6cead7a6 100644 --- a/hl/c++/test/CMakeTests.cmake +++ b/hl/c++/test/CMakeTests.cmake @@ -29,10 +29,9 @@ set_tests_properties (HL_CPP_ptableTest-clear-objects PROPERTIES ) if (HDF5_ENABLE_USING_MEMCHECKER) - add_test (NAME HL_CPP_ptableTest COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $) + add_test (NAME HL_CPP_ptableTest COMMAND $) else () add_test (NAME HL_CPP_ptableTest COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=" -D "TEST_EXPECT=0" @@ -43,7 +42,10 @@ else () -P "${HDF_RESOURCES_DIR}/runTest.cmake" ) endif () -set_tests_properties (HL_CPP_ptableTest PROPERTIES DEPENDS HL_CPP_ptableTest-clear-objects) +set_tests_properties (HL_CPP_ptableTest PROPERTIES + DEPENDS HL_CPP_ptableTest-clear-objects + ENVIRONMENT "${CROSSCOMPILING_PATH}" +) if ("HL_CPP_ptableTest" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") set_tests_properties (HL_CPP_ptableTest PROPERTIES DISABLED true) endif () diff --git a/hl/fortran/src/CMakeLists.txt b/hl/fortran/src/CMakeLists.txt index b1b657addcc..4d63e3e5f64 100644 --- a/hl/fortran/src/CMakeLists.txt +++ b/hl/fortran/src/CMakeLists.txt @@ -126,7 +126,9 @@ if (NOT EXISTS "${HDF5_GENERATED_SOURCE_DIR}/H5LTff_gen.F90") message (STATUS "No pre-generated H5LTff_gen.F90 H5TBff_gen.F90 file found - generating one") add_custom_command (TARGET H5HL_buildiface POST_BUILD BYPRODUCTS ${HDF5_HL_F90_BINARY_DIR}/H5LTff_gen.F90 ${HDF5_HL_F90_BINARY_DIR}/H5TBff_gen.F90 - COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ + COMMAND ${CMAKE_COMMAND} + ARGS -E env ${CROSSCOMPILING_PATH} + COMMAND $ WORKING_DIRECTORY ${HDF5_HL_F90_BINARY_DIR} COMMENT "Generating the H5LTff_gen.F90, H5TBff_gen.F90 files" ) diff --git a/hl/fortran/test/CMakeTests.cmake b/hl/fortran/test/CMakeTests.cmake index 3d325916bc1..bbecfce4119 100644 --- a/hl/fortran/test/CMakeTests.cmake +++ b/hl/fortran/test/CMakeTests.cmake @@ -50,10 +50,9 @@ set_tests_properties (HL_FORTRAN_test-clean-objects PROPERTIES macro (ADD_H5_FORTRAN_TEST file) if (HDF5_ENABLE_USING_MEMCHECKER) - add_test (NAME HL_FORTRAN_f90_${file} COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $) + add_test (NAME HL_FORTRAN_f90_${file} COMMAND $) else () add_test (NAME HL_FORTRAN_f90_${file} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=" -D "TEST_EXPECT=0" @@ -67,6 +66,7 @@ macro (ADD_H5_FORTRAN_TEST file) set_tests_properties (HL_FORTRAN_f90_${file} PROPERTIES FIXTURES_REQUIRED clear_HL_FORTRAN_test WORKING_DIRECTORY ${PROJECT_BINARY_DIR} + ENVIRONMENT "${CROSSCOMPILING_PATH}" ) if ("HL_FORTRAN_f90_${file}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") set_tests_properties (HL_FORTRAN_f90_${file} PROPERTIES DISABLED true) diff --git a/hl/test/CMakeTests.cmake b/hl/test/CMakeTests.cmake index ec8f9c9b999..d89405ae9f7 100644 --- a/hl/test/CMakeTests.cmake +++ b/hl/test/CMakeTests.cmake @@ -42,9 +42,9 @@ set (HL_REFERENCE_TEST_FILES #-- Copy the necessary files. # -------------------------------------------------------------------- foreach (h5_file ${HL_REFERENCE_TEST_FILES}) - HDFTEST_COPY_FILE("${PROJECT_SOURCE_DIR}/testfiles/${h5_file}" "${HDF5_HL_TEST_BINARY_DIR}/testfiles/${h5_file}" "hl_test_files") + HDFTEST_COPY_FILE ("${PROJECT_SOURCE_DIR}/testfiles/${h5_file}" "${HDF5_HL_TEST_BINARY_DIR}/testfiles/${h5_file}" "hl_test_files") endforeach () -add_custom_target(hl_test_files ALL COMMENT "Copying files needed by hl_test tests" DEPENDS ${hl_test_files_list}) +add_custom_target (hl_test_files ALL COMMENT "Copying files needed by hl_test tests" DEPENDS ${hl_test_files_list}) # Remove any output file left over from previous test run set (test_hl_CLEANFILES @@ -101,10 +101,12 @@ set_tests_properties (HL_test-clean-objects PROPERTIES macro (HL_ADD_TEST hl_name) set (current_test_name "HL_${hl_name}") if (HDF5_ENABLE_USING_MEMCHECKER) - add_test (NAME HL_${hl_name} COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $) + add_test (NAME HL_${hl_name} COMMAND $) + set_tests_properties (HL_${hl_name} PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" + ) else () add_test (NAME HL_${hl_name} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=" -D "TEST_EXPECT=0" @@ -114,11 +116,13 @@ macro (HL_ADD_TEST hl_name) -D "TEST_FOLDER=${HDF5_HL_TEST_BINARY_DIR}" -P "${HDF_RESOURCES_DIR}/runTest.cmake" ) + set_tests_properties (HL_${hl_name} PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" + ) if ("hl_name" STREQUAL "test_table") add_test ( NAME H5DUMP-HL_${hl_name} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=--enable-error-stack;${hl_name}.h5" -D "TEST_FOLDER=${HDF5_HL_TEST_BINARY_DIR}" @@ -129,6 +133,7 @@ macro (HL_ADD_TEST hl_name) ) set_tests_properties (H5DUMP-HL_${hl_name} PROPERTIES DEPENDS HL_${hl_name} + ENVIRONMENT "${CROSSCOMPILING_PATH}" ) set (current_test_name "H5DUMP-HL_${hl_name}") endif () diff --git a/hl/tools/h5watch/CMakeTests.cmake b/hl/tools/h5watch/CMakeTests.cmake index 7bbc8deac02..cb1bfe3f6d4 100644 --- a/hl/tools/h5watch/CMakeTests.cmake +++ b/hl/tools/h5watch/CMakeTests.cmake @@ -58,9 +58,9 @@ set (H5WATCH_TEST_FILES file (MAKE_DIRECTORY "${PROJECT_BINARY_DIR}/testfiles") foreach (h5watch_file ${H5WATCH_TEST_FILES}) - HDFTEST_COPY_FILE("${PROJECT_SOURCE_DIR}/testfiles/${h5watch_file}" "${PROJECT_BINARY_DIR}/testfiles/${h5watch_file}" "H5WATCH_files") + HDFTEST_COPY_FILE ("${PROJECT_SOURCE_DIR}/testfiles/${h5watch_file}" "${PROJECT_BINARY_DIR}/testfiles/${h5watch_file}" "H5WATCH_files") endforeach () -add_custom_target(H5WATCH_files ALL COMMENT "Copying files needed by H5WATCH tests" DEPENDS ${H5WATCH_files_list}) +add_custom_target (H5WATCH_files ALL COMMENT "Copying files needed by H5WATCH tests" DEPENDS ${H5WATCH_files_list}) ############################################################################## ############################################################################## @@ -73,7 +73,6 @@ add_custom_target(H5WATCH_files ALL COMMENT "Copying files needed by H5WATCH tes add_test ( NAME H5WATCH_ARGS-h5watch-${resultfile} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=${ARGN}" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}/testfiles" @@ -85,6 +84,7 @@ add_custom_target(H5WATCH_files ALL COMMENT "Copying files needed by H5WATCH tes set_tests_properties (H5WATCH_ARGS-h5watch-${resultfile} PROPERTIES DEPENDS ${last_test} FIXTURES_REQUIRED gen_test_watch + ENVIRONMENT "${CROSSCOMPILING_PATH}" ) if ("H5WATCH_ARGS-h5watch-${resultfile}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") set_tests_properties (H5WATCH_ARGS-h5watch-${resultfile} PROPERTIES DISABLED true) @@ -98,7 +98,6 @@ add_custom_target(H5WATCH_files ALL COMMENT "Copying files needed by H5WATCH tes add_test ( NAME H5WATCH_ARGS-h5watch-${resultfile} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=${ARGN}" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}/testfiles" @@ -112,6 +111,7 @@ add_custom_target(H5WATCH_files ALL COMMENT "Copying files needed by H5WATCH tes set_tests_properties (H5WATCH_ARGS-h5watch-${resultfile} PROPERTIES DEPENDS ${last_test} FIXTURES_REQUIRED gen_test_watch + ENVIRONMENT "${CROSSCOMPILING_PATH}" ) if ("H5WATCH_ARGS-h5watch-${resultfile}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") set_tests_properties (H5WATCH_ARGS-h5watch-${resultfile} PROPERTIES DISABLED true) @@ -125,7 +125,6 @@ add_custom_target(H5WATCH_files ALL COMMENT "Copying files needed by H5WATCH tes add_test ( NAME H5WATCH-${resultfile} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=${ARGN}" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}/testfiles" @@ -137,6 +136,7 @@ add_custom_target(H5WATCH_files ALL COMMENT "Copying files needed by H5WATCH tes set_tests_properties (H5WATCH-${resultfile} PROPERTIES DEPENDS ${last_test} FIXTURES_REQUIRED gen_test_watch + ENVIRONMENT "${CROSSCOMPILING_PATH}" ) if ("H5WATCH-${resultfile}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") set_tests_properties (H5WATCH-${resultfile} PROPERTIES DISABLED true) @@ -195,10 +195,11 @@ set_tests_properties (H5WATCH-cleanall-objects PROPERTIES FIXTURES_CLEANUP swmr_ # # ################################################################################################# # create the output files to be used. -add_test (NAME H5WATCH-h5watchgentest COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $) +add_test (NAME H5WATCH-h5watchgentest COMMAND $) set_tests_properties (H5WATCH-h5watchgentest PROPERTIES WORKING_DIRECTORY "${PROJECT_BINARY_DIR}/testfiles" DEPENDS H5WATCH-clearall-objects + ENVIRONMENT "${CROSSCOMPILING_PATH}" ) set_tests_properties (H5WATCH-h5watchgentest PROPERTIES FIXTURES_SETUP gen_test_watch) set_tests_properties (H5WATCH-h5watchgentest PROPERTIES FIXTURES_REQUIRED swmr_vfd_check_compat) diff --git a/java/test/CMakeLists.txt b/java/test/CMakeLists.txt index daaf36fee70..65465041ee4 100644 --- a/java/test/CMakeLists.txt +++ b/java/test/CMakeLists.txt @@ -103,22 +103,22 @@ foreach (test_file ${HDF5_JAVA_TEST_SOURCES}) endforeach () foreach (h5_file ${HDF5_JAVA_TEST_SOURCES}) - HDFTEST_COPY_FILE("${PROJECT_SOURCE_DIR}/testfiles/JUnit-${h5_file}.txt" "${PROJECT_BINARY_DIR}/JUnit-${h5_file}.txt" "${HDF5_JAVA_TEST_LIB_TARGET}_files") + HDFTEST_COPY_FILE ("${PROJECT_SOURCE_DIR}/testfiles/JUnit-${h5_file}.txt" "${PROJECT_BINARY_DIR}/JUnit-${h5_file}.txt" "${HDF5_JAVA_TEST_LIB_TARGET}_files") endforeach () -HDFTEST_COPY_FILE("${PROJECT_SOURCE_DIR}/h5ex_g_iterate.orig" "${PROJECT_BINARY_DIR}/h5ex_g_iterate.hdf" "${HDF5_JAVA_TEST_LIB_TARGET}_files") -HDFTEST_COPY_FILE("${PROJECT_SOURCE_DIR}/h5ex_g_iterate.orig" "${PROJECT_BINARY_DIR}/h5ex_g_iterateL1.hdf" "${HDF5_JAVA_TEST_LIB_TARGET}_files") -HDFTEST_COPY_FILE("${PROJECT_SOURCE_DIR}/h5ex_g_iterate.orig" "${PROJECT_BINARY_DIR}/h5ex_g_iterateL2.hdf" "${HDF5_JAVA_TEST_LIB_TARGET}_files") -HDFTEST_COPY_FILE("${PROJECT_SOURCE_DIR}/h5ex_g_iterate.orig" "${PROJECT_BINARY_DIR}/h5ex_g_iterateO1.hdf" "${HDF5_JAVA_TEST_LIB_TARGET}_files") -HDFTEST_COPY_FILE("${PROJECT_SOURCE_DIR}/h5ex_g_iterate.orig" "${PROJECT_BINARY_DIR}/h5ex_g_iterateO2.hdf" "${HDF5_JAVA_TEST_LIB_TARGET}_files") -HDFTEST_COPY_FILE("${HDF5_TOOLS_TST_DIR}/testfiles/trefer_reg.h5" "${PROJECT_BINARY_DIR}/trefer_reg.h5" "${HDF5_JAVA_TEST_LIB_TARGET}_files") -HDFTEST_COPY_FILE("${HDF5_TOOLS_TST_DIR}/testfiles/trefer_attr.h5" "${PROJECT_BINARY_DIR}/trefer_attr.h5" "${HDF5_JAVA_TEST_LIB_TARGET}_files") -HDFTEST_COPY_FILE("${HDF5_TOOLS_TST_DIR}/testfiles/tdatareg.h5" "${PROJECT_BINARY_DIR}/tdatareg.h5" "${HDF5_JAVA_TEST_LIB_TARGET}_files") -HDFTEST_COPY_FILE("${HDF5_TOOLS_TST_DIR}/testfiles/tattrreg.h5" "${PROJECT_BINARY_DIR}/tattrreg.h5" "${HDF5_JAVA_TEST_LIB_TARGET}_files") -HDFTEST_COPY_FILE("${HDF5_TOOLS_TST_DIR}/testfiles/tintsattrs.h5" "${PROJECT_BINARY_DIR}/tintsattrs.h5" "${HDF5_JAVA_TEST_LIB_TARGET}_files") -HDFTEST_COPY_FILE("${HDF5_TOOLS_TST_DIR}/testfiles/tfloatsattrs.h5" "${PROJECT_BINARY_DIR}/tfloatsattrs.h5" "${HDF5_JAVA_TEST_LIB_TARGET}_files") +HDFTEST_COPY_FILE ("${PROJECT_SOURCE_DIR}/h5ex_g_iterate.orig" "${PROJECT_BINARY_DIR}/h5ex_g_iterate.hdf" "${HDF5_JAVA_TEST_LIB_TARGET}_files") +HDFTEST_COPY_FILE ("${PROJECT_SOURCE_DIR}/h5ex_g_iterate.orig" "${PROJECT_BINARY_DIR}/h5ex_g_iterateL1.hdf" "${HDF5_JAVA_TEST_LIB_TARGET}_files") +HDFTEST_COPY_FILE ("${PROJECT_SOURCE_DIR}/h5ex_g_iterate.orig" "${PROJECT_BINARY_DIR}/h5ex_g_iterateL2.hdf" "${HDF5_JAVA_TEST_LIB_TARGET}_files") +HDFTEST_COPY_FILE ("${PROJECT_SOURCE_DIR}/h5ex_g_iterate.orig" "${PROJECT_BINARY_DIR}/h5ex_g_iterateO1.hdf" "${HDF5_JAVA_TEST_LIB_TARGET}_files") +HDFTEST_COPY_FILE ("${PROJECT_SOURCE_DIR}/h5ex_g_iterate.orig" "${PROJECT_BINARY_DIR}/h5ex_g_iterateO2.hdf" "${HDF5_JAVA_TEST_LIB_TARGET}_files") +HDFTEST_COPY_FILE ("${HDF5_TOOLS_TST_DIR}/testfiles/trefer_reg.h5" "${PROJECT_BINARY_DIR}/trefer_reg.h5" "${HDF5_JAVA_TEST_LIB_TARGET}_files") +HDFTEST_COPY_FILE ("${HDF5_TOOLS_TST_DIR}/testfiles/trefer_attr.h5" "${PROJECT_BINARY_DIR}/trefer_attr.h5" "${HDF5_JAVA_TEST_LIB_TARGET}_files") +HDFTEST_COPY_FILE ("${HDF5_TOOLS_TST_DIR}/testfiles/tdatareg.h5" "${PROJECT_BINARY_DIR}/tdatareg.h5" "${HDF5_JAVA_TEST_LIB_TARGET}_files") +HDFTEST_COPY_FILE ("${HDF5_TOOLS_TST_DIR}/testfiles/tattrreg.h5" "${PROJECT_BINARY_DIR}/tattrreg.h5" "${HDF5_JAVA_TEST_LIB_TARGET}_files") +HDFTEST_COPY_FILE ("${HDF5_TOOLS_TST_DIR}/testfiles/tintsattrs.h5" "${PROJECT_BINARY_DIR}/tintsattrs.h5" "${HDF5_JAVA_TEST_LIB_TARGET}_files") +HDFTEST_COPY_FILE ("${HDF5_TOOLS_TST_DIR}/testfiles/tfloatsattrs.h5" "${PROJECT_BINARY_DIR}/tfloatsattrs.h5" "${HDF5_JAVA_TEST_LIB_TARGET}_files") -add_custom_target(${HDF5_JAVA_TEST_LIB_TARGET}_files ALL COMMENT "Copying files needed by ${HDF5_JAVA_TEST_LIB_TARGET} tests" DEPENDS ${${HDF5_JAVA_TEST_LIB_TARGET}_files_list}) +add_custom_target (${HDF5_JAVA_TEST_LIB_TARGET}_files ALL COMMENT "Copying files needed by ${HDF5_JAVA_TEST_LIB_TARGET} tests" DEPENDS ${${HDF5_JAVA_TEST_LIB_TARGET}_files_list}) if (WIN32) set (CMAKE_JAVA_INCLUDE_FLAG_SEP ";") @@ -251,22 +251,22 @@ if (HDF5_TEST_JAVA AND HDF5_TEST_SERIAL) foreach (voltest ${VOL_LIST}) file (MAKE_DIRECTORY "${PROJECT_BINARY_DIR}/${voltest}") foreach (h5_file ${HDF5_JAVA_TEST_SOURCES}) - HDFTEST_COPY_FILE("${PROJECT_SOURCE_DIR}/testfiles/JUnit-${h5_file}.txt" "${PROJECT_BINARY_DIR}/${voltest}/JUnit-${h5_file}.txt" "${HDF5_JAVA_TEST_LIB_TARGET}_${voltest}_files") + HDFTEST_COPY_FILE ("${PROJECT_SOURCE_DIR}/testfiles/JUnit-${h5_file}.txt" "${PROJECT_BINARY_DIR}/${voltest}/JUnit-${h5_file}.txt" "${HDF5_JAVA_TEST_LIB_TARGET}_${voltest}_files") endforeach () - HDFTEST_COPY_FILE("${PROJECT_SOURCE_DIR}/h5ex_g_iterate.orig" "${PROJECT_BINARY_DIR}/${voltest}/h5ex_g_iterate.hdf" "${HDF5_JAVA_TEST_LIB_TARGET}_${voltest}_files") - HDFTEST_COPY_FILE("${PROJECT_SOURCE_DIR}/h5ex_g_iterate.orig" "${PROJECT_BINARY_DIR}/${voltest}/h5ex_g_iterateL1.hdf" "${HDF5_JAVA_TEST_LIB_TARGET}_${voltest}_files") - HDFTEST_COPY_FILE("${PROJECT_SOURCE_DIR}/h5ex_g_iterate.orig" "${PROJECT_BINARY_DIR}/${voltest}/h5ex_g_iterateL2.hdf" "${HDF5_JAVA_TEST_LIB_TARGET}_${voltest}_files") - HDFTEST_COPY_FILE("${PROJECT_SOURCE_DIR}/h5ex_g_iterate.orig" "${PROJECT_BINARY_DIR}/${voltest}/h5ex_g_iterateO1.hdf" "${HDF5_JAVA_TEST_LIB_TARGET}_${voltest}_files") - HDFTEST_COPY_FILE("${PROJECT_SOURCE_DIR}/h5ex_g_iterate.orig" "${PROJECT_BINARY_DIR}/${voltest}/h5ex_g_iterateO2.hdf" "${HDF5_JAVA_TEST_LIB_TARGET}_${voltest}_files") - HDFTEST_COPY_FILE("${HDF5_TOOLS_TST_DIR}/testfiles/trefer_reg.h5" "${PROJECT_BINARY_DIR}/${voltest}/trefer_reg.h5" "${HDF5_JAVA_TEST_LIB_TARGET}_${voltest}_files") - HDFTEST_COPY_FILE("${HDF5_TOOLS_TST_DIR}/testfiles/trefer_attr.h5" "${PROJECT_BINARY_DIR}/${voltest}/trefer_attr.h5" "${HDF5_JAVA_TEST_LIB_TARGET}_${voltest}_files") - HDFTEST_COPY_FILE("${HDF5_TOOLS_TST_DIR}/testfiles/tdatareg.h5" "${PROJECT_BINARY_DIR}/${voltest}/tdatareg.h5" "${HDF5_JAVA_TEST_LIB_TARGET}_${voltest}_files") - HDFTEST_COPY_FILE("${HDF5_TOOLS_TST_DIR}/testfiles/tattrreg.h5" "${PROJECT_BINARY_DIR}/${voltest}/tattrreg.h5" "${HDF5_JAVA_TEST_LIB_TARGET}_${voltest}_files") - HDFTEST_COPY_FILE("${HDF5_TOOLS_TST_DIR}/testfiles/tintsattrs.h5" "${PROJECT_BINARY_DIR}/${voltest}/tintsattrs.h5" "${HDF5_JAVA_TEST_LIB_TARGET}_${voltest}_files") - HDFTEST_COPY_FILE("${HDF5_TOOLS_TST_DIR}/testfiles/tfloatsattrs.h5" "${PROJECT_BINARY_DIR}/${voltest}/tfloatsattrs.h5" "${HDF5_JAVA_TEST_LIB_TARGET}_${voltest}_files") - - add_custom_target(${HDF5_JAVA_TEST_LIB_TARGET}_${voltest}_files ALL COMMENT "Copying files needed by ${HDF5_JAVA_TEST_LIB_TARGET} tests" DEPENDS ${${HDF5_JAVA_TEST_LIB_TARGET}_${voltest}_files_list}) + HDFTEST_COPY_FILE ("${PROJECT_SOURCE_DIR}/h5ex_g_iterate.orig" "${PROJECT_BINARY_DIR}/${voltest}/h5ex_g_iterate.hdf" "${HDF5_JAVA_TEST_LIB_TARGET}_${voltest}_files") + HDFTEST_COPY_FILE ("${PROJECT_SOURCE_DIR}/h5ex_g_iterate.orig" "${PROJECT_BINARY_DIR}/${voltest}/h5ex_g_iterateL1.hdf" "${HDF5_JAVA_TEST_LIB_TARGET}_${voltest}_files") + HDFTEST_COPY_FILE ("${PROJECT_SOURCE_DIR}/h5ex_g_iterate.orig" "${PROJECT_BINARY_DIR}/${voltest}/h5ex_g_iterateL2.hdf" "${HDF5_JAVA_TEST_LIB_TARGET}_${voltest}_files") + HDFTEST_COPY_FILE ("${PROJECT_SOURCE_DIR}/h5ex_g_iterate.orig" "${PROJECT_BINARY_DIR}/${voltest}/h5ex_g_iterateO1.hdf" "${HDF5_JAVA_TEST_LIB_TARGET}_${voltest}_files") + HDFTEST_COPY_FILE ("${PROJECT_SOURCE_DIR}/h5ex_g_iterate.orig" "${PROJECT_BINARY_DIR}/${voltest}/h5ex_g_iterateO2.hdf" "${HDF5_JAVA_TEST_LIB_TARGET}_${voltest}_files") + HDFTEST_COPY_FILE ("${HDF5_TOOLS_TST_DIR}/testfiles/trefer_reg.h5" "${PROJECT_BINARY_DIR}/${voltest}/trefer_reg.h5" "${HDF5_JAVA_TEST_LIB_TARGET}_${voltest}_files") + HDFTEST_COPY_FILE ("${HDF5_TOOLS_TST_DIR}/testfiles/trefer_attr.h5" "${PROJECT_BINARY_DIR}/${voltest}/trefer_attr.h5" "${HDF5_JAVA_TEST_LIB_TARGET}_${voltest}_files") + HDFTEST_COPY_FILE ("${HDF5_TOOLS_TST_DIR}/testfiles/tdatareg.h5" "${PROJECT_BINARY_DIR}/${voltest}/tdatareg.h5" "${HDF5_JAVA_TEST_LIB_TARGET}_${voltest}_files") + HDFTEST_COPY_FILE ("${HDF5_TOOLS_TST_DIR}/testfiles/tattrreg.h5" "${PROJECT_BINARY_DIR}/${voltest}/tattrreg.h5" "${HDF5_JAVA_TEST_LIB_TARGET}_${voltest}_files") + HDFTEST_COPY_FILE ("${HDF5_TOOLS_TST_DIR}/testfiles/tintsattrs.h5" "${PROJECT_BINARY_DIR}/${voltest}/tintsattrs.h5" "${HDF5_JAVA_TEST_LIB_TARGET}_${voltest}_files") + HDFTEST_COPY_FILE ("${HDF5_TOOLS_TST_DIR}/testfiles/tfloatsattrs.h5" "${PROJECT_BINARY_DIR}/${voltest}/tfloatsattrs.h5" "${HDF5_JAVA_TEST_LIB_TARGET}_${voltest}_files") + + add_custom_target (${HDF5_JAVA_TEST_LIB_TARGET}_${voltest}_files ALL COMMENT "Copying files needed by ${HDF5_JAVA_TEST_LIB_TARGET} tests" DEPENDS ${${HDF5_JAVA_TEST_LIB_TARGET}_${voltest}_files_list}) foreach (volinfo IN LISTS ${voltest}) foreach (h5_file ${HDF5_JAVA_TEST_SOURCES}) diff --git a/test/CMakePassthroughVOLTests.cmake b/test/CMakePassthroughVOLTests.cmake index 74b5ba53fa0..c39db173bd7 100644 --- a/test/CMakePassthroughVOLTests.cmake +++ b/test/CMakePassthroughVOLTests.cmake @@ -37,30 +37,30 @@ endforeach () foreach (voltest ${VOL_LIST}) foreach (h5_tfile ${HDF5_TEST_FILES}) - HDFTEST_COPY_FILE("${PROJECT_SOURCE_DIR}/testfiles/${h5_tfile}" "${PROJECT_BINARY_DIR}/${voltest}/testfiles/${h5_tfile}" "HDF5_VOLTEST_LIB_files") + HDFTEST_COPY_FILE ("${PROJECT_SOURCE_DIR}/testfiles/${h5_tfile}" "${PROJECT_BINARY_DIR}/${voltest}/testfiles/${h5_tfile}" "HDF5_VOLTEST_LIB_files") endforeach () endforeach () foreach (voltest ${VOL_LIST}) foreach (ref_file ${HDF5_REFERENCE_FILES}) - HDFTEST_COPY_FILE("${PROJECT_SOURCE_DIR}/testfiles/${ref_file}" "${PROJECT_BINARY_DIR}/${voltest}/testfiles/${ref_file}" "HDF5_VOLTEST_LIB_files") + HDFTEST_COPY_FILE ("${PROJECT_SOURCE_DIR}/testfiles/${ref_file}" "${PROJECT_BINARY_DIR}/${voltest}/testfiles/${ref_file}" "HDF5_VOLTEST_LIB_files") endforeach () endforeach () foreach (voltest ${VOL_LIST}) foreach (h5_file ${HDF5_REFERENCE_TEST_FILES}) - HDFTEST_COPY_FILE("${PROJECT_SOURCE_DIR}/testfiles/${h5_file}" "${PROJECT_BINARY_DIR}/${voltest}/testfiles/${h5_file}" "HDF5_VOLTEST_LIB_files") + HDFTEST_COPY_FILE ("${PROJECT_SOURCE_DIR}/testfiles/${h5_file}" "${PROJECT_BINARY_DIR}/${voltest}/testfiles/${h5_file}" "HDF5_VOLTEST_LIB_files") endforeach () endforeach () foreach (voltest ${VOL_LIST}) foreach (plistfile ${HDF5_REFERENCE_PLIST_FILES}) - HDFTEST_COPY_FILE("${PROJECT_SOURCE_DIR}/testfiles/plist_files/${plistfile}" "${PROJECT_BINARY_DIR}/${voltest}/testfiles/plist_files/${plistfile}" "HDF5_VOLTEST_LIB_files") - HDFTEST_COPY_FILE("${PROJECT_SOURCE_DIR}/testfiles/plist_files/def_${plistfile}" "${PROJECT_BINARY_DIR}/${voltest}/testfiles/plist_files/def_${plistfile}" "HDF5_VOLTEST_LIB_files") + HDFTEST_COPY_FILE ("${PROJECT_SOURCE_DIR}/testfiles/plist_files/${plistfile}" "${PROJECT_BINARY_DIR}/${voltest}/testfiles/plist_files/${plistfile}" "HDF5_VOLTEST_LIB_files") + HDFTEST_COPY_FILE ("${PROJECT_SOURCE_DIR}/testfiles/plist_files/def_${plistfile}" "${PROJECT_BINARY_DIR}/${voltest}/testfiles/plist_files/def_${plistfile}" "HDF5_VOLTEST_LIB_files") endforeach () endforeach () -add_custom_target(HDF5_VOLTEST_LIB_files ALL COMMENT "Copying files needed by HDF5_VOLTEST_LIB tests" DEPENDS ${HDF5_VOLTEST_LIB_files_list}) +add_custom_target (HDF5_VOLTEST_LIB_files ALL COMMENT "Copying files needed by HDF5_VOLTEST_LIB tests" DEPENDS ${HDF5_VOLTEST_LIB_files_list}) ############################################################################## ############################################################################## @@ -94,7 +94,6 @@ add_custom_target(HDF5_VOLTEST_LIB_files ALL COMMENT "Copying files needed by HD if (NOT BUILD_SHARED_LIBS AND NOT ${HDF_CFG_NAME} MATCHES "Debug") add_test (NAME VOL-${volname}-${voltest} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=" -D "TEST_VOL:STRING=${volinfo}" @@ -104,7 +103,7 @@ add_custom_target(HDF5_VOLTEST_LIB_files ALL COMMENT "Copying files needed by HD -P "${HDF_RESOURCES_DIR}/volTest.cmake" ) set_tests_properties (VOL-${volname}-${voltest} PROPERTIES - ENVIRONMENT "srcdir=${HDF5_TEST_BINARY_DIR}/${volname}" + ENVIRONMENT "srcdir=${HDF5_TEST_BINARY_DIR}/${volname};${CROSSCOMPILING_PATH}" WORKING_DIRECTORY ${HDF5_TEST_BINARY_DIR}/${volname} ) if ("VOL-${volname}-${voltest}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") @@ -119,7 +118,6 @@ add_custom_target(HDF5_VOLTEST_LIB_files ALL COMMENT "Copying files needed by HD else () add_test (NAME VOL-${volname}-${voltest} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=" -D "TEST_VOL:STRING=${volinfo}" @@ -129,7 +127,7 @@ add_custom_target(HDF5_VOLTEST_LIB_files ALL COMMENT "Copying files needed by HD -P "${HDF_RESOURCES_DIR}/volTest.cmake" ) set_tests_properties (VOL-${volname}-${voltest} PROPERTIES - ENVIRONMENT "srcdir=${HDF5_TEST_BINARY_DIR}/${volname}" + ENVIRONMENT "srcdir=${HDF5_TEST_BINARY_DIR}/${volname};${CROSSCOMPILING_PATH}" WORKING_DIRECTORY ${HDF5_TEST_BINARY_DIR}/${volname} ) if ("VOL-${volname}-${voltest}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") @@ -139,7 +137,6 @@ add_custom_target(HDF5_VOLTEST_LIB_files ALL COMMENT "Copying files needed by HD else () add_test (NAME VOL-${volname}-${voltest} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=" -D "TEST_VOL:STRING=${volinfo}" @@ -149,7 +146,7 @@ add_custom_target(HDF5_VOLTEST_LIB_files ALL COMMENT "Copying files needed by HD -P "${HDF_RESOURCES_DIR}/volTest.cmake" ) set_tests_properties (VOL-${volname}-${voltest} PROPERTIES - ENVIRONMENT "srcdir=${HDF5_TEST_BINARY_DIR}/${volname}" + ENVIRONMENT "srcdir=${HDF5_TEST_BINARY_DIR}/${volname};${CROSSCOMPILING_PATH}" WORKING_DIRECTORY ${HDF5_TEST_BINARY_DIR}/${volname} ) if ("VOL-${volname}-${voltest}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") @@ -162,13 +159,12 @@ add_custom_target(HDF5_VOLTEST_LIB_files ALL COMMENT "Copying files needed by HD #message(STATUS "${voltest}-${volname} with ${volinfo}") add_test (NAME VOL-${volname}-${voltest} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=" -D "TEST_VOL:STRING=${volinfo}" -D "TEST_EXPECT=${resultcode}" -D "TEST_OUTPUT=${volname}-${voltest}.out" - -D "TEST_FOLDER=${PROJECT_BINARY_DIR}/${volname}" + -D "TEST_FOLDER=${PROJECT_BINARY_DIR}/${volname};${CROSSCOMPILING_PATH}" -P "${HDF_RESOURCES_DIR}/volTest.cmake" ) set_tests_properties (VOL-${volname}-${voltest} PROPERTIES @@ -210,7 +206,6 @@ add_custom_target(HDF5_VOLTEST_LIB_files ALL COMMENT "Copying files needed by HD if (HDF5_TEST_FHEAP_PASSTHROUGH_VOL) add_test (NAME VOL-${volname}-fheap COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=" -D "TEST_VOL:STRING=${volinfo}" @@ -221,7 +216,7 @@ add_custom_target(HDF5_VOLTEST_LIB_files ALL COMMENT "Copying files needed by HD ) set_tests_properties (VOL-${volname}-fheap PROPERTIES TIMEOUT ${CTEST_VERY_LONG_TIMEOUT} - ENVIRONMENT "srcdir=${HDF5_TEST_BINARY_DIR}/${volname}" + ENVIRONMENT "srcdir=${HDF5_TEST_BINARY_DIR}/${volname};${CROSSCOMPILING_PATH}" WORKING_DIRECTORY ${HDF5_TEST_BINARY_DIR}/${volname} ) if ("VOL-${volname}-fheap" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") diff --git a/test/CMakeTests.cmake b/test/CMakeTests.cmake index b67ecdc661a..5367b9c3b33 100644 --- a/test/CMakeTests.cmake +++ b/test/CMakeTests.cmake @@ -36,7 +36,7 @@ add_custom_command ( ) foreach (h5_tfile ${HDF5_TEST_FILES}) - HDFTEST_COPY_FILE("${PROJECT_SOURCE_DIR}/testfiles/${h5_tfile}" "${PROJECT_BINARY_DIR}/H5TEST/testfiles/${h5_tfile}" "HDF5_TEST_LIB_files") + HDFTEST_COPY_FILE ("${PROJECT_SOURCE_DIR}/testfiles/${h5_tfile}" "${PROJECT_BINARY_DIR}/H5TEST/testfiles/${h5_tfile}" "HDF5_TEST_LIB_files") endforeach () set (HDF5_REFERENCE_FILES @@ -48,7 +48,7 @@ set (HDF5_REFERENCE_FILES ) foreach (ref_file ${HDF5_REFERENCE_FILES}) - HDFTEST_COPY_FILE("${PROJECT_SOURCE_DIR}/testfiles/${ref_file}" "${PROJECT_BINARY_DIR}/H5TEST/testfiles/${ref_file}" "HDF5_TEST_LIB_files") + HDFTEST_COPY_FILE ("${PROJECT_SOURCE_DIR}/testfiles/${ref_file}" "${PROJECT_BINARY_DIR}/H5TEST/testfiles/${ref_file}" "HDF5_TEST_LIB_files") endforeach () # -------------------------------------------------------------------- @@ -106,8 +106,8 @@ set (HDF5_REFERENCE_PLIST_FILES ) foreach (plistfile ${HDF5_REFERENCE_PLIST_FILES}) - HDFTEST_COPY_FILE("${PROJECT_SOURCE_DIR}/testfiles/plist_files/${plistfile}" "${PROJECT_BINARY_DIR}/H5TEST/testfiles/plist_files/${plistfile}" "HDF5_TEST_LIB_files") - HDFTEST_COPY_FILE("${PROJECT_SOURCE_DIR}/testfiles/plist_files/def_${plistfile}" "${PROJECT_BINARY_DIR}/H5TEST/testfiles/plist_files/def_${plistfile}" "HDF5_TEST_LIB_files") + HDFTEST_COPY_FILE ("${PROJECT_SOURCE_DIR}/testfiles/plist_files/${plistfile}" "${PROJECT_BINARY_DIR}/H5TEST/testfiles/plist_files/${plistfile}" "HDF5_TEST_LIB_files") + HDFTEST_COPY_FILE ("${PROJECT_SOURCE_DIR}/testfiles/plist_files/def_${plistfile}" "${PROJECT_BINARY_DIR}/H5TEST/testfiles/plist_files/def_${plistfile}" "HDF5_TEST_LIB_files") endforeach () # -------------------------------------------------------------------- @@ -171,10 +171,10 @@ set (HDF5_REFERENCE_TEST_FILES ) foreach (h5_file ${HDF5_REFERENCE_TEST_FILES}) - HDFTEST_COPY_FILE("${PROJECT_SOURCE_DIR}/testfiles/${h5_file}" "${HDF5_TEST_BINARY_DIR}/H5TEST/testfiles/${h5_file}" "HDF5_TEST_LIB_files") + HDFTEST_COPY_FILE ("${PROJECT_SOURCE_DIR}/testfiles/${h5_file}" "${HDF5_TEST_BINARY_DIR}/H5TEST/testfiles/${h5_file}" "HDF5_TEST_LIB_files") endforeach () -add_custom_target(HDF5_TEST_LIB_files ALL COMMENT "Copying files needed by HDF5_TEST_LIB tests" DEPENDS ${HDF5_TEST_LIB_files_list}) +add_custom_target (HDF5_TEST_LIB_files ALL COMMENT "Copying files needed by HDF5_TEST_LIB tests" DEPENDS ${HDF5_TEST_LIB_files_list}) set (HDF5_S3PROXY_TEST_FILES t8.shakespeare.txt @@ -183,10 +183,10 @@ set (HDF5_S3PROXY_TEST_FILES ) foreach (h5_file ${HDF5_S3PROXY_TEST_FILES}) - HDFTEST_COPY_FILE("${PROJECT_SOURCE_DIR}/testfiles/${h5_file}" "${HDF5_TEST_BINARY_DIR}/H5TEST/testfiles/${h5_file}" "HDF5_S3PROXY_files") + HDFTEST_COPY_FILE ("${PROJECT_SOURCE_DIR}/testfiles/${h5_file}" "${HDF5_TEST_BINARY_DIR}/H5TEST/testfiles/${h5_file}" "HDF5_S3PROXY_files") endforeach () -add_custom_target(HDF5_S3PROXY_files ALL COMMENT "Copying files needed by HDF5_S3PROXY tests" DEPENDS ${HDF5_S3PROXY_files_list}) +add_custom_target (HDF5_S3PROXY_files ALL COMMENT "Copying files needed by HDF5_S3PROXY tests" DEPENDS ${HDF5_S3PROXY_files_list}) set (testhdf5_CLEANFILES coord.h5 @@ -223,28 +223,28 @@ add_test ( ) set_tests_properties (H5TEST-testhdf5-clean-objects PROPERTIES FIXTURES_CLEANUP clear_testhdf5) -add_test (NAME H5TEST-testhdf5-base COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ -x file -x select) +add_test (NAME H5TEST-testhdf5-base COMMAND $ -x file -x select) set_tests_properties (H5TEST-testhdf5-base PROPERTIES FIXTURES_REQUIRED clear_testhdf5 - ENVIRONMENT "HDF5_ALARM_SECONDS=3600;srcdir=${HDF5_TEST_BINARY_DIR}/H5TEST" + ENVIRONMENT "HDF5_ALARM_SECONDS=3600;srcdir=${HDF5_TEST_BINARY_DIR}/H5TEST;${CROSSCOMPILING_PATH}" WORKING_DIRECTORY ${HDF5_TEST_BINARY_DIR}/H5TEST ) if ("H5TEST-testhdf5-base" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") set_tests_properties (H5TEST-testhdf5-base PROPERTIES DISABLED true) endif () -add_test (NAME H5TEST-testhdf5-file COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ -o file) +add_test (NAME H5TEST-testhdf5-file COMMAND $ -o file) set_tests_properties (H5TEST-testhdf5-file PROPERTIES FIXTURES_REQUIRED clear_testhdf5 - ENVIRONMENT "HDF5_ALARM_SECONDS=3600;srcdir=${HDF5_TEST_BINARY_DIR}/H5TEST" + ENVIRONMENT "HDF5_ALARM_SECONDS=3600;srcdir=${HDF5_TEST_BINARY_DIR}/H5TEST;${CROSSCOMPILING_PATH}" WORKING_DIRECTORY ${HDF5_TEST_BINARY_DIR}/H5TEST ) if ("H5TEST-testhdf5-file" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") set_tests_properties (H5TEST-testhdf5-file PROPERTIES DISABLED true) endif () -add_test (NAME H5TEST-testhdf5-select COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ -o select) +add_test (NAME H5TEST-testhdf5-select COMMAND $ -o select) set_tests_properties (H5TEST-testhdf5-select PROPERTIES FIXTURES_REQUIRED clear_testhdf5 - ENVIRONMENT "HDF5_ALARM_SECONDS=3600;srcdir=${HDF5_TEST_BINARY_DIR}/H5TEST" + ENVIRONMENT "HDF5_ALARM_SECONDS=3600;srcdir=${HDF5_TEST_BINARY_DIR}/H5TEST;${CROSSCOMPILING_PATH}" WORKING_DIRECTORY ${HDF5_TEST_BINARY_DIR}/H5TEST ) if ("H5TEST-testhdf5-select" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") @@ -359,15 +359,14 @@ set (H5TEST_SEPARATE_TESTS foreach (h5_test ${H5_EXPRESS_TESTS}) if (NOT h5_test IN_LIST H5TEST_SEPARATE_TESTS) if (HDF5_ENABLE_USING_MEMCHECKER) - add_test (NAME H5TESTXPR-${h5_test} COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $) + add_test (NAME H5TESTXPR-${h5_test} COMMAND $) set_tests_properties (H5TESTXPR-${h5_test} PROPERTIES FIXTURES_REQUIRED clear_H5TEST - ENVIRONMENT "srcdir=${HDF5_TEST_BINARY_DIR}/H5TEST" + ENVIRONMENT "srcdir=${HDF5_TEST_BINARY_DIR}/H5TEST;${CROSSCOMPILING_PATH}" WORKING_DIRECTORY ${HDF5_TEST_BINARY_DIR}/H5TEST ) else () add_test (NAME H5TESTXPR-${h5_test} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=" -D "TEST_EXPECT=0" @@ -380,7 +379,7 @@ foreach (h5_test ${H5_EXPRESS_TESTS}) ) set_tests_properties (H5TESTXPR-${h5_test} PROPERTIES FIXTURES_REQUIRED clear_H5TEST - ENVIRONMENT "srcdir=${HDF5_TEST_BINARY_DIR}/H5TEST" + ENVIRONMENT "srcdir=${HDF5_TEST_BINARY_DIR}/H5TEST;${CROSSCOMPILING_PATH}" WORKING_DIRECTORY ${HDF5_TEST_BINARY_DIR}/H5TEST ) endif () @@ -392,10 +391,10 @@ endforeach () foreach (h5_test ${H5_TESTS}) if (NOT h5_test IN_LIST H5TEST_SEPARATE_TESTS) if (HDF5_ENABLE_USING_MEMCHECKER) - add_test (NAME H5TEST-${h5_test} COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $) + add_test (NAME H5TEST-${h5_test} COMMAND $) set_tests_properties (H5TEST-${h5_test} PROPERTIES FIXTURES_REQUIRED clear_H5TEST - ENVIRONMENT "srcdir=${HDF5_TEST_BINARY_DIR}/H5TEST" + ENVIRONMENT "srcdir=${HDF5_TEST_BINARY_DIR}/H5TEST;${CROSSCOMPILING_PATH}" WORKING_DIRECTORY ${HDF5_TEST_BINARY_DIR}/H5TEST ) else () @@ -405,7 +404,6 @@ foreach (h5_test ${H5_TESTS}) ) else () add_test (NAME H5TEST-${h5_test} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=" -D "TEST_EXPECT=0" @@ -419,7 +417,7 @@ foreach (h5_test ${H5_TESTS}) endif () set_tests_properties (H5TEST-${h5_test} PROPERTIES FIXTURES_REQUIRED clear_H5TEST - ENVIRONMENT "srcdir=${HDF5_TEST_BINARY_DIR}/H5TEST" + ENVIRONMENT "srcdir=${HDF5_TEST_BINARY_DIR}/H5TEST;${CROSSCOMPILING_PATH}" WORKING_DIRECTORY ${HDF5_TEST_BINARY_DIR}/H5TEST ) endif () @@ -451,10 +449,9 @@ if (NOT CYGWIN) ) set_tests_properties (H5TEST-cache-clean-objects PROPERTIES FIXTURES_CLEANUP clear_cache) if (HDF5_ENABLE_USING_MEMCHECKER) - add_test (NAME H5TEST-cache COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $) + add_test (NAME H5TEST-cache COMMAND $) else () add_test (NAME H5TEST-cache COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=" -D "TEST_EXPECT=0" @@ -467,7 +464,7 @@ if (NOT CYGWIN) endif () set_tests_properties (H5TEST-cache PROPERTIES FIXTURES_REQUIRED clear_cache - ENVIRONMENT "srcdir=${HDF5_TEST_BINARY_DIR}/H5TEST" + ENVIRONMENT "srcdir=${HDF5_TEST_BINARY_DIR}/H5TEST;${CROSSCOMPILING_PATH}" WORKING_DIRECTORY ${HDF5_TEST_BINARY_DIR}/H5TEST ) set_tests_properties (H5TEST-cache PROPERTIES TIMEOUT ${CTEST_VERY_LONG_TIMEOUT}) @@ -490,10 +487,10 @@ if (TEST_CACHE_IMAGE) WORKING_DIRECTORY ${HDF5_TEST_BINARY_DIR}/H5TEST ) set_tests_properties (H5TEST-cache_image-clean-objects PROPERTIES FIXTURES_CLEANUP clear_cache_image) - add_test (NAME H5TEST-cache_image COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $) + add_test (NAME H5TEST-cache_image COMMAND $) set_tests_properties (H5TEST-cache_image PROPERTIES FIXTURES_REQUIRED clear_cache_image - ENVIRONMENT "srcdir=${HDF5_TEST_BINARY_DIR}/H5TEST" + ENVIRONMENT "srcdir=${HDF5_TEST_BINARY_DIR}/H5TEST;${CROSSCOMPILING_PATH}" WORKING_DIRECTORY ${HDF5_TEST_BINARY_DIR}/H5TEST ) if ("H5TEST-cache_image" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") @@ -525,10 +522,9 @@ add_test ( ) set_tests_properties (H5TEST-external_env-clean-objects PROPERTIES FIXTURES_CLEANUP clear_external_env) if (HDF5_ENABLE_USING_MEMCHECKER) - add_test (NAME H5TEST-external_env COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $) + add_test (NAME H5TEST-external_env COMMAND $) else () add_test (NAME H5TEST-external_env COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=" -D "TEST_ENV_VAR:STRING=HDF5_EXTFILE_PREFIX" @@ -543,7 +539,7 @@ else () endif () set_tests_properties (H5TEST-external_env PROPERTIES FIXTURES_REQUIRED clear_external_env - ENVIRONMENT "srcdir=${HDF5_TEST_BINARY_DIR}/H5TEST" + ENVIRONMENT "srcdir=${HDF5_TEST_BINARY_DIR}/H5TEST;${CROSSCOMPILING_PATH}" WORKING_DIRECTORY ${HDF5_TEST_BINARY_DIR}/H5TEST ) if ("H5TEST-external_env" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") @@ -560,10 +556,9 @@ add_test ( ) set_tests_properties (H5TEST-vds_env-clean-objects PROPERTIES FIXTURES_CLEANUP clear_vds_env) if (HDF5_ENABLE_USING_MEMCHECKER) - add_test (NAME H5TEST-vds_env COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $) + add_test (NAME H5TEST-vds_env COMMAND $) else () add_test (NAME H5TEST-vds_env COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=" -D "TEST_ENV_VAR:STRING=HDF5_VDS_PREFIX" @@ -578,7 +573,7 @@ else () endif () set_tests_properties (H5TEST-vds_env PROPERTIES FIXTURES_REQUIRED clear_vds_env - ENVIRONMENT "srcdir=${HDF5_TEST_BINARY_DIR}/H5TEST" + ENVIRONMENT "srcdir=${HDF5_TEST_BINARY_DIR}/H5TEST;${CROSSCOMPILING_PATH}" WORKING_DIRECTORY ${HDF5_TEST_BINARY_DIR}/H5TEST ) if ("H5TEST-vds_env" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") @@ -607,10 +602,9 @@ add_test (NAME H5TEST-flush-clean-objects ) set_tests_properties (H5TEST-flush-clean-objects PROPERTIES FIXTURES_CLEANUP clear_flush) if (HDF5_ENABLE_USING_MEMCHECKER) - add_test (NAME H5TEST-flush1 COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $) + add_test (NAME H5TEST-flush1 COMMAND $) else () add_test (NAME H5TEST-flush1 COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=" -D "TEST_EXPECT=0" @@ -622,17 +616,16 @@ else () endif () set_tests_properties (H5TEST-flush1 PROPERTIES FIXTURES_REQUIRED clear_flush - ENVIRONMENT "srcdir=${HDF5_TEST_BINARY_DIR}/H5TEST" + ENVIRONMENT "srcdir=${HDF5_TEST_BINARY_DIR}/H5TEST;${CROSSCOMPILING_PATH}" WORKING_DIRECTORY ${HDF5_TEST_BINARY_DIR}/H5TEST ) if ("H5TEST-flush1" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") set_tests_properties (H5TEST-flush1 PROPERTIES DISABLED true) endif () if (HDF5_ENABLE_USING_MEMCHECKER) - add_test (NAME H5TEST-flush2 COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $) + add_test (NAME H5TEST-flush2 COMMAND $) else () add_test (NAME H5TEST-flush2 COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=" -D "TEST_EXPECT=0" @@ -645,32 +638,36 @@ endif () set_tests_properties (H5TEST-flush2 PROPERTIES FIXTURES_REQUIRED clear_flush DEPENDS H5TEST-flush1 + ENVIRONMENT "${CROSSCOMPILING_PATH}" ) if ("H5TEST-flush2" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") set_tests_properties (H5TEST-flush2 PROPERTIES DISABLED true) endif () #-- Adding test for tcheck_version -add_test (NAME H5TEST-tcheck_version-major COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ "-tM") +add_test (NAME H5TEST-tcheck_version-major COMMAND $ "-tM") set_tests_properties (H5TEST-tcheck_version-major PROPERTIES WORKING_DIRECTORY ${HDF5_TEST_BINARY_DIR}/H5TEST + ENVIRONMENT "${CROSSCOMPILING_PATH}" WILL_FAIL "true" ) if ("H5TEST-tcheck_version-major" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") set_tests_properties (H5TEST-tcheck_version-major PROPERTIES DISABLED true) endif () -add_test (NAME H5TEST-tcheck_version-minor COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ "-tm") +add_test (NAME H5TEST-tcheck_version-minor COMMAND $ "-tm") set_tests_properties (H5TEST-tcheck_version-minor PROPERTIES WORKING_DIRECTORY ${HDF5_TEST_BINARY_DIR}/H5TEST + ENVIRONMENT "${CROSSCOMPILING_PATH}" WILL_FAIL "true" ) if ("H5TEST-tcheck_version-minor" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") set_tests_properties (H5TEST-tcheck_version-minor PROPERTIES DISABLED true) endif () # release + 1 should pass on non-develop branches -add_test (NAME H5TEST-tcheck_version-release COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ "-tr") +add_test (NAME H5TEST-tcheck_version-release COMMAND $ "-tr") set_tests_properties (H5TEST-tcheck_version-release PROPERTIES WORKING_DIRECTORY ${HDF5_TEST_BINARY_DIR}/H5TEST + ENVIRONMENT "${CROSSCOMPILING_PATH}" WILL_FAIL "true" ) if ("H5TEST-tcheck_version-release" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") @@ -735,10 +732,9 @@ if (HDF5_ENABLE_ROS3_VFD_DOCKER_PROXY) foreach (h5_test ${H5_S3TESTS}) if (HDF5_ENABLE_USING_MEMCHECKER) - add_test (NAME H5TEST_S3TESTS-${h5_test} COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $) + add_test (NAME H5TEST_S3TESTS-${h5_test} COMMAND $) else () add_test (NAME H5TEST_S3TESTS-${h5_test} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=" -D "TEST_EXPECT=0" @@ -753,7 +749,7 @@ if (HDF5_ENABLE_ROS3_VFD_DOCKER_PROXY) endif () set_tests_properties (H5TEST_S3TESTS-${h5_test} PROPERTIES FIXTURES_REQUIRED s3_proxy - ENVIRONMENT "${h5test_s3tests_env}" + ENVIRONMENT "${h5test_s3tests_env};${CROSSCOMPILING_PATH}" WORKING_DIRECTORY ${HDF5_TEST_BINARY_DIR}/H5TEST ) if ("H5TEST_S3TESTS-${h5_test}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") @@ -807,7 +803,7 @@ add_test ( WORKING_DIRECTORY ${HDF5_TEST_BINARY_DIR}/H5TEST ) set_tests_properties (H5TEST-filenotclosed-clean-objects PROPERTIES FIXTURES_CLEANUP clear_filenotclosed) -add_test (NAME H5TEST-filenotclosed COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $) +add_test (NAME H5TEST-filenotclosed COMMAND $) set_tests_properties (H5TEST-filenotclosed PROPERTIES FIXTURES_REQUIRED clear_filenotclosed ENVIRONMENT "srcdir=${HDF5_TEST_BINARY_DIR}/H5TEST" @@ -830,10 +826,10 @@ add_test ( WORKING_DIRECTORY ${HDF5_TEST_BINARY_DIR}/H5TEST ) set_tests_properties (H5TEST-del_many_dense_attrs-clean-objects PROPERTIES FIXTURES_CLEANUP clear_del_many_dense_attrs) -add_test (NAME H5TEST-del_many_dense_attrs COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $) +add_test (NAME H5TEST-del_many_dense_attrs COMMAND $) set_tests_properties (H5TEST-del_many_dense_attrs PROPERTIES FIXTURES_REQUIRED clear_del_many_dense_attrs - ENVIRONMENT "srcdir=${HDF5_TEST_BINARY_DIR}/H5TEST" + ENVIRONMENT "srcdir=${HDF5_TEST_BINARY_DIR}/H5TEST;${CROSSCOMPILING_PATH}" WORKING_DIRECTORY ${HDF5_TEST_BINARY_DIR}/H5TEST ) if ("H5TEST-del_many_dense_attrs" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") @@ -843,7 +839,6 @@ endif () #-- Adding test for err_compat if (HDF5_ENABLE_DEPRECATED_SYMBOLS AND NOT MINGW) add_test (NAME H5TEST-err_compat COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=" -D "TEST_EXPECT=0" @@ -855,12 +850,11 @@ if (HDF5_ENABLE_DEPRECATED_SYMBOLS AND NOT MINGW) -P "${HDF_RESOURCES_DIR}/runTest.cmake" ) set_tests_properties (H5TEST-err_compat PROPERTIES - ENVIRONMENT "srcdir=${HDF5_TEST_BINARY_DIR}/H5TEST" + ENVIRONMENT "srcdir=${HDF5_TEST_BINARY_DIR}/H5TEST;${CROSSCOMPILING_PATH}" WORKING_DIRECTORY ${HDF5_TEST_BINARY_DIR}/H5TEST ) else () add_test (NAME H5TEST-err_compat COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=" -D "TEST_EXPECT=0" @@ -872,7 +866,7 @@ else () -P "${HDF_RESOURCES_DIR}/runTest.cmake" ) set_tests_properties (H5TEST-err_compat PROPERTIES - ENVIRONMENT "srcdir=${HDF5_TEST_BINARY_DIR}/H5TEST" + ENVIRONMENT "srcdir=${HDF5_TEST_BINARY_DIR}/H5TEST;${CROSSCOMPILING_PATH}" WORKING_DIRECTORY ${HDF5_TEST_BINARY_DIR}/H5TEST ) endif () @@ -883,7 +877,6 @@ endif () #-- Adding test for error_test if (HDF5_DEFAULT_API_VERSION MATCHES "v16" OR MINGW) add_test (NAME H5TEST-error_test COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=" -D "TEST_EXPECT=0" @@ -895,12 +888,11 @@ if (HDF5_DEFAULT_API_VERSION MATCHES "v16" OR MINGW) -P "${HDF_RESOURCES_DIR}/runTest.cmake" ) set_tests_properties (H5TEST-error_test PROPERTIES - ENVIRONMENT "srcdir=${HDF5_TEST_BINARY_DIR}/H5TEST;HDF5_PLUGIN_PRELOAD=::" + ENVIRONMENT "srcdir=${HDF5_TEST_BINARY_DIR}/H5TEST;HDF5_PLUGIN_PRELOAD=::;${CROSSCOMPILING_PATH}" WORKING_DIRECTORY ${HDF5_TEST_BINARY_DIR}/H5TEST ) else () add_test (NAME H5TEST-error_test COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=" -D "TEST_EXPECT=0" @@ -912,7 +904,7 @@ else () -P "${HDF_RESOURCES_DIR}/runTest.cmake" ) set_tests_properties (H5TEST-error_test PROPERTIES - ENVIRONMENT "srcdir=${HDF5_TEST_BINARY_DIR}/H5TEST;HDF5_PLUGIN_PRELOAD=::" + ENVIRONMENT "srcdir=${HDF5_TEST_BINARY_DIR}/H5TEST;HDF5_PLUGIN_PRELOAD=::;${CROSSCOMPILING_PATH}" WORKING_DIRECTORY ${HDF5_TEST_BINARY_DIR}/H5TEST ) add_test ( @@ -948,10 +940,9 @@ add_test (NAME H5TEST-links_env-clean-objects ) set_tests_properties (H5TEST-links_env-clean-objects PROPERTIES FIXTURES_CLEANUP clear_links_env) if (HDF5_ENABLE_USING_MEMCHECKER) - add_test (NAME H5TEST-links_env COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $) + add_test (NAME H5TEST-links_env COMMAND $) else () add_test (NAME H5TEST-links_env COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=" #-D "TEST_ENV_VAR:STRING=HDF5_EXT_PREFIX" @@ -965,7 +956,7 @@ else () endif () set_tests_properties (H5TEST-links_env PROPERTIES FIXTURES_REQUIRED clear_links_env - ENVIRONMENT "srcdir=${HDF5_TEST_BINARY_DIR}/H5TEST;HDF5_EXT_PREFIX=.:tmp_links_env" + ENVIRONMENT "srcdir=${HDF5_TEST_BINARY_DIR}/H5TEST;HDF5_EXT_PREFIX=.:tmp_links_env;${CROSSCOMPILING_PATH}" WORKING_DIRECTORY ${HDF5_TEST_BINARY_DIR}/H5TEST ) if ("H5TEST-links_env" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") @@ -1001,9 +992,9 @@ if (BUILD_SHARED_LIBS) set (BIN_REL_PATH "../") endif () - add_test (NAME H5PLUGIN-filter_plugin COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $) + add_test (NAME H5PLUGIN-filter_plugin COMMAND $) set_tests_properties (H5PLUGIN-filter_plugin PROPERTIES - ENVIRONMENT "HDF5_PLUGIN_PATH=${CMAKE_BINARY_DIR}/filter_plugin_dir1${CMAKE_SEP}${CMAKE_BINARY_DIR}/filter_plugin_dir2${CMAKE_SEP};HDF5_VOL_CONNECTOR=;srcdir=${HDF5_TEST_BINARY_DIR}" + ENVIRONMENT "HDF5_PLUGIN_PATH=${CMAKE_BINARY_DIR}/filter_plugin_dir1${CMAKE_SEP}${CMAKE_BINARY_DIR}/filter_plugin_dir2${CMAKE_SEP};HDF5_VOL_CONNECTOR=;srcdir=${HDF5_TEST_BINARY_DIR};${CROSSCOMPILING_PATH}" WORKING_DIRECTORY ${HDF5_TEST_BINARY_DIR} ) if ("H5PLUGIN-filter_plugin" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") @@ -1046,7 +1037,6 @@ if (ENABLE_EXTENDED_TESTS) ) set_tests_properties (H5TEST-testflushrefresh-clean-objects PROPERTIES FIXTURES_CLEANUP clear_testflushrefresh) add_test (NAME H5TEST-testflushrefresh COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS1:STRING=flushrefresh_VERIFICATION_START" -D "TEST_ARGS2:STRING=flushrefresh_VERIFICATION_DONE" @@ -1061,7 +1051,7 @@ if (ENABLE_EXTENDED_TESTS) ) set_tests_properties (H5TEST-testflushrefresh PROPERTIES FIXTURES_REQUIRED clear_testflushrefresh - ENVIRONMENT "srcdir=${HDF5_TEST_BINARY_DIR}/H5TEST/flushrefresh_test" + ENVIRONMENT "srcdir=${HDF5_TEST_BINARY_DIR}/H5TEST/flushrefresh_test;${CROSSCOMPILING_PATH}" WORKING_DIRECTORY ${HDF5_TEST_BINARY_DIR}/H5TEST/flushrefresh_test ) if ("H5TEST-testflushrefresh" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") @@ -1100,9 +1090,9 @@ if (BUILD_SHARED_LIBS) set (BIN_REL_PATH "../") endif () - add_test (NAME H5PLUGIN-vol_plugin COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $) + add_test (NAME H5PLUGIN-vol_plugin COMMAND $) set_tests_properties (H5PLUGIN-vol_plugin PROPERTIES - ENVIRONMENT "HDF5_PLUGIN_PATH=${CMAKE_BINARY_DIR}/null_vol_plugin_dir;srcdir=${HDF5_TEST_BINARY_DIR};HDF5_VOL_CONNECTOR=" + ENVIRONMENT "HDF5_PLUGIN_PATH=${CMAKE_BINARY_DIR}/null_vol_plugin_dir;srcdir=${HDF5_TEST_BINARY_DIR};HDF5_VOL_CONNECTOR=;${CROSSCOMPILING_PATH}" WORKING_DIRECTORY ${HDF5_TEST_BINARY_DIR} ) if ("H5PLUGIN-vol_plugin" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") diff --git a/test/CMakeVFDTests.cmake b/test/CMakeVFDTests.cmake index 2cac84a5674..04b2f832f59 100644 --- a/test/CMakeVFDTests.cmake +++ b/test/CMakeVFDTests.cmake @@ -26,30 +26,30 @@ endforeach () foreach (vfdtest ${VFD_LIST}) foreach (h5_tfile ${HDF5_TEST_FILES}) - HDFTEST_COPY_FILE("${PROJECT_SOURCE_DIR}/testfiles/${h5_tfile}" "${PROJECT_BINARY_DIR}/${vfdtest}/testfiles/${h5_tfile}" "HDF5_VFDTEST_LIB_files") + HDFTEST_COPY_FILE ("${PROJECT_SOURCE_DIR}/testfiles/${h5_tfile}" "${PROJECT_BINARY_DIR}/${vfdtest}/testfiles/${h5_tfile}" "HDF5_VFDTEST_LIB_files") endforeach () endforeach () foreach (vfdtest ${VFD_LIST}) foreach (ref_file ${HDF5_REFERENCE_FILES}) - HDFTEST_COPY_FILE("${PROJECT_SOURCE_DIR}/testfiles/${ref_file}" "${PROJECT_BINARY_DIR}/${vfdtest}/testfiles/${ref_file}" "HDF5_VFDTEST_LIB_files") + HDFTEST_COPY_FILE ("${PROJECT_SOURCE_DIR}/testfiles/${ref_file}" "${PROJECT_BINARY_DIR}/${vfdtest}/testfiles/${ref_file}" "HDF5_VFDTEST_LIB_files") endforeach () endforeach () foreach (vfdtest ${VFD_LIST}) foreach (h5_file ${HDF5_REFERENCE_TEST_FILES}) - HDFTEST_COPY_FILE("${PROJECT_SOURCE_DIR}/testfiles/${h5_file}" "${HDF5_TEST_BINARY_DIR}/${vfdtest}/testfiles/${h5_file}" "HDF5_VFDTEST_LIB_files") + HDFTEST_COPY_FILE ("${PROJECT_SOURCE_DIR}/testfiles/${h5_file}" "${HDF5_TEST_BINARY_DIR}/${vfdtest}/testfiles/${h5_file}" "HDF5_VFDTEST_LIB_files") endforeach () endforeach () foreach (vfdtest ${VFD_LIST}) foreach (plistfile ${HDF5_REFERENCE_PLIST_FILES}) - HDFTEST_COPY_FILE("${PROJECT_SOURCE_DIR}/testfiles/plist_files/${plistfile}" "${PROJECT_BINARY_DIR}/${vfdtest}/testfiles/plist_files/${plistfile}" "HDF5_VFDTEST_LIB_files") - HDFTEST_COPY_FILE("${PROJECT_SOURCE_DIR}/testfiles/plist_files/def_${plistfile}" "${PROJECT_BINARY_DIR}/${vfdtest}/testfiles/plist_files/def_${plistfile}" "HDF5_VFDTEST_LIB_files") + HDFTEST_COPY_FILE ("${PROJECT_SOURCE_DIR}/testfiles/plist_files/${plistfile}" "${PROJECT_BINARY_DIR}/${vfdtest}/testfiles/plist_files/${plistfile}" "HDF5_VFDTEST_LIB_files") + HDFTEST_COPY_FILE ("${PROJECT_SOURCE_DIR}/testfiles/plist_files/def_${plistfile}" "${PROJECT_BINARY_DIR}/${vfdtest}/testfiles/plist_files/def_${plistfile}" "HDF5_VFDTEST_LIB_files") endforeach () endforeach () -add_custom_target(HDF5_VFDTEST_LIB_files ALL COMMENT "Copying files needed by HDF5_VFDTEST_LIB tests" DEPENDS ${HDF5_VFDTEST_LIB_files_list}) +add_custom_target (HDF5_VFDTEST_LIB_files ALL COMMENT "Copying files needed by HDF5_VFDTEST_LIB tests" DEPENDS ${HDF5_VFDTEST_LIB_files_list}) ############################################################################## ############################################################################## @@ -115,7 +115,6 @@ add_custom_target(HDF5_VFDTEST_LIB_files ALL COMMENT "Copying files needed by HD if (NOT BUILD_SHARED_LIBS AND NOT HDF_CFG_NAME MATCHES "Debug") add_test (NAME VFD-${vfdname}-${vfdtest} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=" -D "TEST_VFD:STRING=${vfdname}" @@ -125,7 +124,7 @@ add_custom_target(HDF5_VFDTEST_LIB_files ALL COMMENT "Copying files needed by HD -P "${HDF_RESOURCES_DIR}/vfdTest.cmake" ) set_tests_properties (VFD-${vfdname}-${vfdtest} PROPERTIES - ENVIRONMENT "srcdir=${HDF5_TEST_BINARY_DIR}/${vfdname}" + ENVIRONMENT "srcdir=${HDF5_TEST_BINARY_DIR}/${vfdname};${CROSSCOMPILING_PATH}" WORKING_DIRECTORY ${HDF5_TEST_BINARY_DIR}/${vfdname} ) if ("VFD-${vfdname}-${vfdtest}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") @@ -140,7 +139,6 @@ add_custom_target(HDF5_VFDTEST_LIB_files ALL COMMENT "Copying files needed by HD else () add_test (NAME VFD-${vfdname}-${vfdtest} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=" -D "TEST_VFD:STRING=${vfdname}" @@ -150,7 +148,7 @@ add_custom_target(HDF5_VFDTEST_LIB_files ALL COMMENT "Copying files needed by HD -P "${HDF_RESOURCES_DIR}/vfdTest.cmake" ) set_tests_properties (VFD-${vfdname}-${vfdtest} PROPERTIES - ENVIRONMENT "srcdir=${HDF5_TEST_BINARY_DIR}/${vfdname}" + ENVIRONMENT "srcdir=${HDF5_TEST_BINARY_DIR}/${vfdname};${CROSSCOMPILING_PATH}" WORKING_DIRECTORY ${HDF5_TEST_BINARY_DIR}/${vfdname} ) if ("VFD-${vfdname}-${vfdtest}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") @@ -160,7 +158,6 @@ add_custom_target(HDF5_VFDTEST_LIB_files ALL COMMENT "Copying files needed by HD else () add_test (NAME VFD-${vfdname}-${vfdtest} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=" -D "TEST_VFD:STRING=${vfdname}" @@ -170,7 +167,7 @@ add_custom_target(HDF5_VFDTEST_LIB_files ALL COMMENT "Copying files needed by HD -P "${HDF_RESOURCES_DIR}/vfdTest.cmake" ) set_tests_properties (VFD-${vfdname}-${vfdtest} PROPERTIES - ENVIRONMENT "srcdir=${HDF5_TEST_BINARY_DIR}/${vfdname}" + ENVIRONMENT "srcdir=${HDF5_TEST_BINARY_DIR}/${vfdname};${CROSSCOMPILING_PATH}" WORKING_DIRECTORY ${HDF5_TEST_BINARY_DIR}/${vfdname} ) if ("VFD-${vfdname}-${vfdtest}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") @@ -183,7 +180,6 @@ add_custom_target(HDF5_VFDTEST_LIB_files ALL COMMENT "Copying files needed by HD if (NOT "${vfdtest}" IN_LIST H5_VFD_${vfdname}_SKIP_TESTS) add_test (NAME VFD-${vfdname}-${vfdtest} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=" -D "TEST_VFD:STRING=${vfdname}" @@ -193,7 +189,7 @@ add_custom_target(HDF5_VFDTEST_LIB_files ALL COMMENT "Copying files needed by HD -P "${HDF_RESOURCES_DIR}/vfdTest.cmake" ) set_tests_properties (VFD-${vfdname}-${vfdtest} PROPERTIES - ENVIRONMENT "srcdir=${HDF5_TEST_BINARY_DIR}/${vfdname}" + ENVIRONMENT "srcdir=${HDF5_TEST_BINARY_DIR}/${vfdname};${CROSSCOMPILING_PATH}" WORKING_DIRECTORY ${HDF5_TEST_BINARY_DIR}/${vfdname} ) if ("VFD-${vfdname}-${vfdtest}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") @@ -239,7 +235,6 @@ add_custom_target(HDF5_VFDTEST_LIB_files ALL COMMENT "Copying files needed by HD if (HDF5_TEST_FHEAP_VFD) add_test (NAME VFD-${vfdname}-fheap COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=" -D "TEST_VFD:STRING=${vfdname}" @@ -250,7 +245,7 @@ add_custom_target(HDF5_VFDTEST_LIB_files ALL COMMENT "Copying files needed by HD ) set_tests_properties (VFD-${vfdname}-fheap PROPERTIES TIMEOUT ${CTEST_VERY_LONG_TIMEOUT} - ENVIRONMENT "srcdir=${HDF5_TEST_BINARY_DIR}/${vfdname}" + ENVIRONMENT "srcdir=${HDF5_TEST_BINARY_DIR}/${vfdname};${CROSSCOMPILING_PATH}" WORKING_DIRECTORY ${HDF5_TEST_BINARY_DIR}/${vfdname} ) if ("VFD-${vfdname}-fheap" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") @@ -276,9 +271,9 @@ add_custom_target(HDF5_VFDTEST_LIB_files ALL COMMENT "Copying files needed by HD set (BIN_REL_PATH "../") endif () - add_test (NAME H5PLUGIN-vfd_plugin COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $) + add_test (NAME H5PLUGIN-vfd_plugin COMMAND $) set_tests_properties (H5PLUGIN-vfd_plugin PROPERTIES - ENVIRONMENT "HDF5_PLUGIN_PATH=${CMAKE_BINARY_DIR}/null_vfd_plugin_dir;srcdir=${HDF5_TEST_BINARY_DIR}" + ENVIRONMENT "HDF5_PLUGIN_PATH=${CMAKE_BINARY_DIR}/null_vfd_plugin_dir;srcdir=${HDF5_TEST_BINARY_DIR};${CROSSCOMPILING_PATH}" WORKING_DIRECTORY ${HDF5_TEST_BINARY_DIR} ) if ("H5PLUGIN-vfd_plugin" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") diff --git a/test/flushrefreshTest.cmake b/test/flushrefreshTest.cmake index ba21efedddb..c8a35fe1c7d 100644 --- a/test/flushrefreshTest.cmake +++ b/test/flushrefreshTest.cmake @@ -90,7 +90,7 @@ while (verification_done LESS "1") else () message (STATUS "execute: ${TEST_PROGRAM} ${param1} ${param2}") execute_process ( - COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} ${TEST_PROGRAM} ${param1} ${param2} + COMMAND ${TEST_PROGRAM} ${param1} ${param2} RESULT_VARIABLE TEST_RESULT OUTPUT_FILE ${TEST_OUTPUT} ERROR_FILE ${TEST_OUTPUT}.err @@ -133,7 +133,7 @@ while (verification_done LESS "2") else () message (STATUS "execute: ${TEST_PROGRAM} ${param1}") execute_process ( - COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} ${TEST_PROGRAM} ${param1} + COMMAND ${TEST_PROGRAM} ${param1} RESULT_VARIABLE TEST_RESULT OUTPUT_FILE ${TEST_OUTPUT} ERROR_FILE ${TEST_OUTPUT}.err diff --git a/testpar/CMakeVFDTests.cmake b/testpar/CMakeVFDTests.cmake index db381650c21..47f8f06e8d6 100644 --- a/testpar/CMakeVFDTests.cmake +++ b/testpar/CMakeVFDTests.cmake @@ -34,7 +34,6 @@ macro (ADD_VFD_TEST vfdname resultcode) add_test ( NAME MPI_TEST_VFD-${vfdname}-${h5_test} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=" -D "TEST_VFD:STRING=${vfdname}" @@ -44,7 +43,7 @@ macro (ADD_VFD_TEST vfdname resultcode) -P "${HDF_RESOURCES_DIR}/vfdTest.cmake" ) set_tests_properties (MPI_TEST_VFD-${vfdname}-${h5_test} PROPERTIES - ENVIRONMENT "srcdir=${HDF5_TEST_PAR_BINARY_DIR}/${vfdname}" + ENVIRONMENT "srcdir=${HDF5_TEST_PAR_BINARY_DIR}/${vfdname};${CROSSCOMPILING_PATH}" WORKING_DIRECTORY ${HDF5_TEST_PAR_BINARY_DIR}/${vfdname} ) if ("MPI_TEST_VFD-${vfdname}-${h5_test}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") diff --git a/tools/libtest/CMakeTests.cmake b/tools/libtest/CMakeTests.cmake index fa32ebf8741..37850f6fe74 100644 --- a/tools/libtest/CMakeTests.cmake +++ b/tools/libtest/CMakeTests.cmake @@ -24,7 +24,10 @@ ############################################################################## macro (ADD_H5_TEST resultfile resultcode) - add_test (NAME H5LIBTEST-${resultfile} COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ ${ARGN}) + add_test (NAME H5LIBTEST-${resultfile} COMMAND $ ${ARGN}) + set_tests_properties (H5LIBTEST-${resultfile} PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" + ) if (NOT "${resultcode}" STREQUAL "0") set_tests_properties (H5LIBTEST-${resultfile} PROPERTIES WILL_FAIL "true") endif () diff --git a/tools/test/CMakeLists.txt b/tools/test/CMakeLists.txt index 8296f8aa2c9..e630a32b665 100644 --- a/tools/test/CMakeLists.txt +++ b/tools/test/CMakeLists.txt @@ -84,7 +84,8 @@ if (HDF5_ENABLE_FORMATTERS) endforeach() endif () -#add_test (NAME h5gentest COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $) +#add_test (NAME H5GEN-h5gentest COMMAND $) +#set_target_properties (H5GEN-h5gentest PROPERTIES ENVIRONMENT "${CROSSCOMPILING_PATH}") #-- Add the h5diff tests add_subdirectory (h5diff) diff --git a/tools/test/h5copy/CMakeTests.cmake b/tools/test/h5copy/CMakeTests.cmake index 4e1256c1fa1..503aa486a05 100644 --- a/tools/test/h5copy/CMakeTests.cmake +++ b/tools/test/h5copy/CMakeTests.cmake @@ -61,33 +61,33 @@ foreach (external_vol_tgt ${HDF5_EXTERNAL_VOL_TARGETS}) message(FATAL_ERROR "Could not create directory ${PROJECT_BINARY_DIR}/${ext_vol_dir_name}/testfiles") endif() - add_test(NAME ${external_vol_tgt}-h5copygentest COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ --h5copy) + add_test(NAME ${external_vol_tgt}-h5copygentest COMMAND $ --h5copy) set_tests_properties(${external_vol_tgt}-h5copygentest PROPERTIES - ENVIRONMENT "${vol_env}" + ENVIRONMENT "${vol_env};${CROSSCOMPILING_PATH}" WORKING_DIRECTORY "${PROJECT_BINARY_DIR}/${ext_vol_dir_name}/testfiles" FIXTURES_SETUP ${external_vol_tgt}-files ) # These aren't HDF5 files, just copy them to the VOL's subdirectory foreach (listothers ${LIST_OTHER_TEST_FILES}) - HDFTEST_COPY_FILE("${PROJECT_SOURCE_DIR}/expected/${listothers}" + HDFTEST_COPY_FILE ("${PROJECT_SOURCE_DIR}/expected/${listothers}" "${PROJECT_BINARY_DIR}/${ext_vol_dir_name}/testfiles/${listothers}" "h5copy_vol_files" ) endforeach () endforeach () -add_custom_target(h5copy_vol_files ALL COMMENT "Copying files needed by h5copy tests" DEPENDS ${h5copy_vol_files_list}) +add_custom_target (h5copy_vol_files ALL COMMENT "Copying files needed by h5copy tests" DEPENDS ${h5copy_vol_files_list}) # Copy pre-existing files for Native tests foreach (listfiles ${LIST_HDF5_TEST_FILES}) - HDFTEST_COPY_FILE("${HDF5_TOOLS_TST_DIR}/testfiles/${listfiles}" "${PROJECT_BINARY_DIR}/testfiles/${listfiles}" "h5copy_files") + HDFTEST_COPY_FILE ("${HDF5_TOOLS_TST_DIR}/testfiles/${listfiles}" "${PROJECT_BINARY_DIR}/testfiles/${listfiles}" "h5copy_files") endforeach () foreach (listothers ${LIST_OTHER_TEST_FILES}) - HDFTEST_COPY_FILE("${HDF5_TOOLS_TST_DIR}/h5copy/expected/${listothers}" "${PROJECT_BINARY_DIR}/testfiles/${listothers}" "h5copy_files") + HDFTEST_COPY_FILE ("${HDF5_TOOLS_TST_DIR}/h5copy/expected/${listothers}" "${PROJECT_BINARY_DIR}/testfiles/${listothers}" "h5copy_files") endforeach () -add_custom_target(h5copy_files ALL COMMENT "Copying files needed by h5copy tests" DEPENDS ${h5copy_files_list}) +add_custom_target (h5copy_files ALL COMMENT "Copying files needed by h5copy tests" DEPENDS ${h5copy_files_list}) ############################################################################## ############################################################################## @@ -125,32 +125,32 @@ add_custom_target(h5copy_files ALL COMMENT "Copying files needed by h5copy tests # - Additional arguments can be passed after all keywords (e.g., "-p" flag) # macro (ADD_H5_TEST testname) - cmake_parse_arguments(ARG - "SAME_FILE;VERBOSE" - "RESULT_CODE;ERROR_CHECK;INPUT_FILE;FORCE_FLAG;PREFILL_SRC;PREFILL_DEST;SOURCE_NAME;DEST_NAME" - "" - ${ARGN} + cmake_parse_arguments (ARG + "SAME_FILE;VERBOSE" + "RESULT_CODE;ERROR_CHECK;INPUT_FILE;FORCE_FLAG;PREFILL_SRC;PREFILL_DEST;SOURCE_NAME;DEST_NAME" + "" + ${ARGN} ) # Validate required parameters if (NOT DEFINED ARG_RESULT_CODE) - message(FATAL_ERROR "ADD_H5_TEST: RESULT_CODE is required") + message (FATAL_ERROR "ADD_H5_TEST: RESULT_CODE is required") endif () if (NOT DEFINED ARG_INPUT_FILE) - message(FATAL_ERROR "ADD_H5_TEST: INPUT_FILE is required") + message (FATAL_ERROR "ADD_H5_TEST: INPUT_FILE is required") endif () if (NOT DEFINED ARG_SOURCE_NAME) - message(FATAL_ERROR "ADD_H5_TEST: SOURCE_NAME is required") + message (FATAL_ERROR "ADD_H5_TEST: SOURCE_NAME is required") endif () if (NOT DEFINED ARG_DEST_NAME) - message(FATAL_ERROR "ADD_H5_TEST: DEST_NAME is required") + message (FATAL_ERROR "ADD_H5_TEST: DEST_NAME is required") endif () # Set up force flag if (DEFINED ARG_FORCE_FLAG AND NOT "${ARG_FORCE_FLAG}" STREQUAL "") set (fparam_flag "-f") set (fparam "${ARG_FORCE_FLAG}") - else() + else () set (fparam_flag "") set (fparam "") endif () @@ -158,32 +158,32 @@ macro (ADD_H5_TEST testname) # Set up verbose flag if (ARG_VERBOSE) set (vparam "-v") - else() + else () set (vparam "") endif () # Determine input file for main test if (ARG_SAME_FILE) set (main_infile "${testname}.out.h5") - else() + else () set (main_infile "${ARG_INPUT_FILE}") - endif() + endif () - list(LENGTH HDF5_EXTERNAL_VOL_TARGETS num_ext_vols) + list (LENGTH HDF5_EXTERNAL_VOL_TARGETS num_ext_vols) # Add a test for the native connector and each external VOL connector foreach (vol_idx RANGE 0 ${num_ext_vols}) # First, populate VOL info to be passed to tests if (${vol_idx} EQUAL 0) - set(vol "native") - set(vol_prefix "") + set (vol "native") + set (vol_prefix "") else () # An external VOL connector - set(vol_env "") + set (vol_env "") - math(EXPR vol_idx_fixed "${vol_idx} - 1") - list(GET HDF5_EXTERNAL_VOL_TARGETS ${vol_idx_fixed} ext_vol_tgt) - HDF5_GET_VOL_TGT_INFO(${ext_vol_tgt} vol vol_env) + math (EXPR vol_idx_fixed "${vol_idx} - 1") + list (GET HDF5_EXTERNAL_VOL_TARGETS ${vol_idx_fixed} ext_vol_tgt) + HDF5_GET_VOL_TGT_INFO (${ext_vol_tgt} vol vol_env) set (vol_prefix "HDF5_VOL_${vol}-") set (vol_workdir "${PROJECT_BINARY_DIR}/${vol}") @@ -193,52 +193,49 @@ macro (ADD_H5_TEST testname) # Remove any output file left over from previous test run add_test ( NAME ${vol_prefix}H5COPY-${testname}-clear-objects - COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ ./testfiles/${testname}.out.h5 + COMMAND $ ./testfiles/${testname}.out.h5 ) - set_tests_properties (${vol_prefix}H5COPY-${testname}-clear-objects PROPERTIES - # h5delete will return an error code if targeted file does not exist - accept any result - PASS_REGULAR_EXPRESSION "^$|" + # h5delete will return an error code if targeted file does not exist - accept any result + PASS_REGULAR_EXPRESSION "^$|" + ENVIRONMENT "${CROSSCOMPILING_PATH}" ) - if (NOT "${vol}" STREQUAL "native") set_tests_properties (${vol_prefix}H5COPY-${testname}-clear-objects PROPERTIES - ENVIRONMENT "${vol_env}" - WORKING_DIRECTORY "${vol_workdir}" - FIXTURES_REQUIRED "${vol_fixtures}" + ENVIRONMENT "${vol_env}" + WORKING_DIRECTORY "${vol_workdir}" + FIXTURES_REQUIRED "${vol_fixtures}" ) endif () # Optional prefill sub-test, to be done before main test if (DEFINED ARG_PREFILL_SRC OR DEFINED ARG_PREFILL_DEST) if (NOT DEFINED ARG_PREFILL_SRC OR NOT DEFINED ARG_PREFILL_DEST) - message(FATAL_ERROR "Prefill test requires both PREFILL_SRC and PREFILL_DEST") + message (FATAL_ERROR "Prefill test requires both PREFILL_SRC and PREFILL_DEST") endif () - add_test ( NAME ${vol_prefix}H5COPY-${testname}-prefill - COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ -i ./testfiles/${ARG_INPUT_FILE} -o ./testfiles/${testname}.out.h5 -v -s ${ARG_PREFILL_SRC} -d ${ARG_PREFILL_DEST} + COMMAND $ -i ./testfiles/${ARG_INPUT_FILE} -o ./testfiles/${testname}.out.h5 -v -s ${ARG_PREFILL_SRC} -d ${ARG_PREFILL_DEST} ) set_tests_properties (${vol_prefix}H5COPY-${testname}-prefill PROPERTIES - DEPENDS ${vol_prefix}H5COPY-${testname}-clear-objects + DEPENDS ${vol_prefix}H5COPY-${testname}-clear-objects + ENVIRONMENT "${CROSSCOMPILING_PATH}" ) - if (NOT "${vol}" STREQUAL "native") set_tests_properties (${vol_prefix}H5COPY-${testname}-prefill PROPERTIES - ENVIRONMENT "${vol_env}" - WORKING_DIRECTORY "${vol_workdir}" - FIXTURES_REQUIRED "${vol_fixtures}" + ENVIRONMENT "${vol_env}" + WORKING_DIRECTORY "${vol_workdir}" + FIXTURES_REQUIRED "${vol_fixtures}" ) endif () - if ("${vol_prefix}H5COPY-${testname}-prefill" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") set_tests_properties (${vol_prefix}H5COPY-${testname}-prefill PROPERTIES DISABLED true) endif () - set(prefill_dep "${vol_prefix}H5COPY-${testname}-prefill") + set (prefill_dep "${vol_prefix}H5COPY-${testname}-prefill") else () # No prefill dependency - set(prefill_dep "") + set (prefill_dep "") endif () # end prefill step # No error check @@ -246,13 +243,12 @@ macro (ADD_H5_TEST testname) if (NOT DEFINED ARG_ERROR_CHECK OR "${ARG_ERROR_CHECK}" STREQUAL "" OR HDF5_ENABLE_USING_MEMCHECKER) add_test ( NAME ${vol_prefix}H5COPY-${testname} - COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ ${fparam_flag} ${fparam} -i ./testfiles/${main_infile} -o ./testfiles/${testname}.out.h5 ${vparam} -s ${ARG_SOURCE_NAME} -d ${ARG_DEST_NAME} ${ARG_UNPARSED_ARGUMENTS} + COMMAND $ ${fparam_flag} ${fparam} -i ./testfiles/${main_infile} -o ./testfiles/${testname}.out.h5 ${vparam} -s ${ARG_SOURCE_NAME} -d ${ARG_DEST_NAME} ${ARG_UNPARSED_ARGUMENTS} ) - else() # Perform the same test with error checking + else () # Perform the same test with error checking add_test ( NAME ${vol_prefix}H5COPY-${testname} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS=${fparam_flag};${fparam};-i;./testfiles/${main_infile};-o;./testfiles/${testname}.out.h5;${vparam};-s;${ARG_SOURCE_NAME};-d;${ARG_DEST_NAME}" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}" @@ -265,19 +261,17 @@ macro (ADD_H5_TEST testname) -P "${HDF_RESOURCES_DIR}/runTest.cmake" ) endif () - set_tests_properties (${vol_prefix}H5COPY-${testname} PROPERTIES DEPENDS - "${vol_prefix}H5COPY-${testname}-clear-objects;${prefill_dep}" + "${vol_prefix}H5COPY-${testname}-clear-objects;${prefill_dep}" + ENVIRONMENT "${CROSSCOMPILING_PATH}" ) - if (NOT "${vol}" STREQUAL "native") set_tests_properties (${vol_prefix}H5COPY-${testname} PROPERTIES - ENVIRONMENT "${vol_env}" - WORKING_DIRECTORY "${vol_workdir}" - FIXTURES_REQUIRED "${vol_fixtures}" + ENVIRONMENT "${vol_env}" + WORKING_DIRECTORY "${vol_workdir}" + FIXTURES_REQUIRED "${vol_fixtures}" ) endif () - if ("${vol_prefix}H5COPY-${testname}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") set_tests_properties (${vol_prefix}H5COPY-${testname} PROPERTIES DISABLED true) endif () @@ -286,23 +280,23 @@ macro (ADD_H5_TEST testname) if (NOT "${ARG_RESULT_CODE}" STREQUAL "2") add_test ( NAME ${vol_prefix}H5COPY-${testname}-DIFF - COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ -v ./testfiles/${main_infile} ./testfiles/${testname}.out.h5 ${ARG_SOURCE_NAME} ${ARG_DEST_NAME} + COMMAND $ -v ./testfiles/${main_infile} ./testfiles/${testname}.out.h5 ${ARG_SOURCE_NAME} ${ARG_DEST_NAME} + ) + set_tests_properties (${vol_prefix}H5COPY-${testname}-DIFF PROPERTIES + DEPENDS ${vol_prefix}H5COPY-${testname} + ENVIRONMENT "${CROSSCOMPILING_PATH}" ) - set_tests_properties (${vol_prefix}H5COPY-${testname}-DIFF PROPERTIES DEPENDS ${vol_prefix}H5COPY-${testname}) - if (NOT "${vol}" STREQUAL "native") set_tests_properties (${vol_prefix}H5COPY-${testname}-DIFF PROPERTIES - DEPENDS ${vol_prefix}H5COPY-${testname} - ENVIRONMENT "${vol_env}" - WORKING_DIRECTORY "${vol_workdir}" - FIXTURES_REQUIRED "${vol_fixtures}" + DEPENDS ${vol_prefix}H5COPY-${testname} + ENVIRONMENT "${vol_env}" + WORKING_DIRECTORY "${vol_workdir}" + FIXTURES_REQUIRED "${vol_fixtures}" ) endif () - if ("${ARG_RESULT_CODE}" STREQUAL "1") set_tests_properties (${vol_prefix}H5COPY-${testname}-DIFF PROPERTIES WILL_FAIL "true") endif () - if ("${vol_prefix}H5COPY-${testname}-DIFF" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") set_tests_properties (${vol_prefix}H5COPY-${testname}-DIFF PROPERTIES DISABLED true) endif () @@ -310,88 +304,84 @@ macro (ADD_H5_TEST testname) add_test ( NAME ${vol_prefix}H5COPY-${testname}-clean-objects - COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ ./testfiles/${testname}.out.h5 + COMMAND $ ./testfiles/${testname}.out.h5 ) - set_tests_properties (${vol_prefix}H5COPY-${testname}-clean-objects PROPERTIES - # h5delete will return an error code if targeted file does not exist - accept any result - PASS_REGULAR_EXPRESSION "^$|" + # h5delete will return an error code if targeted file does not exist - accept any result + PASS_REGULAR_EXPRESSION "^$|" + ENVIRONMENT "${CROSSCOMPILING_PATH}" ) - if (NOT "${vol}" STREQUAL "native") set_tests_properties (${vol_prefix}H5COPY-${testname}-clean-objects PROPERTIES - ENVIRONMENT "${vol_env}" - WORKING_DIRECTORY "${vol_workdir}" - FIXTURES_REQUIRED "${vol_fixtures}" + ENVIRONMENT "${vol_env}" + WORKING_DIRECTORY "${vol_workdir}" + FIXTURES_REQUIRED "${vol_fixtures}" ) endif () - - if (NOT "${ARG_RESULT_CODE}" STREQUAL "2") set_tests_properties (${vol_prefix}H5COPY-${testname}-clean-objects PROPERTIES DEPENDS ${vol_prefix}H5COPY-${testname}-DIFF) else () set_tests_properties (${vol_prefix}H5COPY-${testname}-clean-objects PROPERTIES DEPENDS ${vol_prefix}H5COPY-${testname}) endif () - endforeach() # per-VOL loop + endforeach () # per-VOL loop endmacro () macro (ADD_H5_UD_TEST testname resultcode infile sparam srcname dparam dstname cmpfile) - list(LENGTH HDF5_EXTERNAL_VOL_TARGETS num_ext_vols) + list (LENGTH HDF5_EXTERNAL_VOL_TARGETS num_ext_vols) # Add a test for the native connector and each external VOL connector foreach (vol_idx RANGE 0 ${num_ext_vols}) # First, populate VOL info to be passed to tests if (${vol_idx} EQUAL 0) - set(vol "native") - set(vol_prefix "") + set (vol "native") + set (vol_prefix "") else () # An external VOL connector - set(vol_env "") + set (vol_env "") - math(EXPR vol_idx_fixed "${vol_idx} - 1") - list(GET HDF5_EXTERNAL_VOL_TARGETS ${vol_idx_fixed} ext_vol_tgt) - HDF5_GET_VOL_TGT_INFO(${ext_vol_tgt} vol vol_env) + math (EXPR vol_idx_fixed "${vol_idx} - 1") + list (GET HDF5_EXTERNAL_VOL_TARGETS ${vol_idx_fixed} ext_vol_tgt) + HDF5_GET_VOL_TGT_INFO (${ext_vol_tgt} vol vol_env) set (vol_prefix "HDF5_VOL_${vol}-") set (vol_workdir "${PROJECT_BINARY_DIR}/${vol}") set (vol_fixtures "${vol_prefix}files") # Isolate plugin path string - string(FIND "${vol_env}" "HDF5_PLUGIN_PATH=" vol_plugin_path_posn) + string (FIND "${vol_env}" "HDF5_PLUGIN_PATH=" vol_plugin_path_posn) if (vol_plugin_path_posn GREATER -1) # Grab path string after HDF5_PLUGIN_PATH= - string(LENGTH "HDF5_PLUGIN_PATH=" path_prefix_len) - math(EXPR vol_plugin_path_posn "${vol_plugin_path_posn} + ${path_prefix_len}") - string(SUBSTRING "${vol_env}" ${vol_plugin_path_posn} -1 vol_plugin_path) - else() - set(vol_plugin_path "") - endif() + string (LENGTH "HDF5_PLUGIN_PATH=" path_prefix_len) + math (EXPR vol_plugin_path_posn "${vol_plugin_path_posn} + ${path_prefix_len}") + string (SUBSTRING "${vol_env}" ${vol_plugin_path_posn} -1 vol_plugin_path) + else () + set (vol_plugin_path "") + endif () endif () if (NOT HDF5_ENABLE_USING_MEMCHECKER) # Remove any output file left over from previous test run add_test ( NAME ${vol_prefix}H5COPY_UD-${testname}-clear-objects - COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ testfiles/${testname}.out.h5 + COMMAND $ testfiles/${testname}.out.h5 ) - - set_tests_properties(${vol_prefix}H5COPY_UD-${testname}-clear-objects PROPERTIES - # h5delete will return an error code if targeted file does not exist - accept any result - PASS_REGULAR_EXPRESSION "^$|" + set_tests_properties (${vol_prefix}H5COPY_UD-${testname}-clear-objects PROPERTIES + # h5delete will return an error code if targeted file does not exist - accept any result + PASS_REGULAR_EXPRESSION "^$|" + ENVIRONMENT "${CROSSCOMPILING_PATH}" ) - if (NOT "${vol}" STREQUAL "native") - set_tests_properties(${vol_prefix}H5COPY_UD-${testname}-clear-objects PROPERTIES - ENVIRONMENT "${vol_env}" - WORKING_DIRECTORY "${vol_workdir}" - FIXTURES_REQUIRED "${vol_fixtures}" + set_tests_properties (${vol_prefix}H5COPY_UD-${testname}-clear-objects PROPERTIES + ENVIRONMENT "${vol_env}" + WORKING_DIRECTORY "${vol_workdir}" + FIXTURES_REQUIRED "${vol_fixtures}" ) endif () if ("${resultcode}" STREQUAL "2") # force a plugin not found error set (ud_search_path ${CMAKE_BINARY_DIR}) - else() + else () # use correct search path set (ud_search_path ${CMAKE_BINARY_DIR}/plugins) endif () @@ -399,7 +389,6 @@ macro (ADD_H5_UD_TEST testname resultcode infile sparam srcname dparam dstname c add_test ( NAME ${vol_prefix}H5COPY_UD-${testname} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=-v;-i;./testfiles/${infile};-o;./testfiles/${testname}.out.h5;${sparam};${srcname};${dparam};${dstname}" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}" @@ -411,19 +400,17 @@ macro (ADD_H5_UD_TEST testname resultcode infile sparam srcname dparam dstname c -D "TEST_LIBRARY_DIRECTORY=${CMAKE_TEST_OUTPUT_DIRECTORY}" -P "${HDF_RESOURCES_DIR}/runTest.cmake" ) - set_tests_properties (${vol_prefix}H5COPY_UD-${testname} PROPERTIES - DEPENDS ${vol_prefix}H5COPY_UD-${testname}-clear-objects + DEPENDS ${vol_prefix}H5COPY_UD-${testname}-clear-objects + ENVIRONMENT "${CROSSCOMPILING_PATH}" ) - if (NOT "${vol}" STREQUAL "native") set_tests_properties (${vol_prefix}H5COPY_UD-${testname} PROPERTIES - ENVIRONMENT "${vol_env}" - WORKING_DIRECTORY "${vol_workdir}" - FIXTURES_REQUIRED "${vol_fixtures}" + ENVIRONMENT "${vol_env}" + WORKING_DIRECTORY "${vol_workdir}" + FIXTURES_REQUIRED "${vol_fixtures}" ) endif () - if ("${vol_prefix}H5COPY_UD-${testname}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") set_tests_properties (${vol_prefix}H5COPY_UD-${testname} PROPERTIES DISABLED true) endif () @@ -431,7 +418,6 @@ macro (ADD_H5_UD_TEST testname resultcode infile sparam srcname dparam dstname c add_test ( NAME ${vol_prefix}H5COPY_UD-${testname}-DIFF COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=-v;./testfiles/${cmpfile};./testfiles/${testname}.out.h5;${srcname};${dstname}" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}" @@ -443,17 +429,18 @@ macro (ADD_H5_UD_TEST testname resultcode infile sparam srcname dparam dstname c -D "TEST_LIBRARY_DIRECTORY=${CMAKE_TEST_OUTPUT_DIRECTORY}" -P "${HDF_RESOURCES_DIR}/runTest.cmake" ) - - set_tests_properties (${vol_prefix}H5COPY_UD-${testname}-DIFF PROPERTIES DEPENDS ${vol_prefix}H5COPY_UD-${testname}) + set_tests_properties (${vol_prefix}H5COPY_UD-${testname}-DIFF PROPERTIES + DEPENDS ${vol_prefix}H5COPY_UD-${testname} + ENVIRONMENT "${CROSSCOMPILING_PATH}" + ) if (NOT "${vol}" STREQUAL "native") set_tests_properties (${vol_prefix}H5COPY_UD-${testname}-DIFF PROPERTIES - ENVIRONMENT "${vol_env}" - WORKING_DIRECTORY "${vol_workdir}" - FIXTURES_REQUIRED "${vol_fixtures}" + ENVIRONMENT "${vol_env}" + WORKING_DIRECTORY "${vol_workdir}" + FIXTURES_REQUIRED "${vol_fixtures}" ) endif () - if ("${vol_prefix}H5COPY_UD-${testname}-DIFF" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") set_tests_properties (${vol_prefix}H5COPY_UD-${testname}-DIFF PROPERTIES DISABLED true) endif () @@ -462,77 +449,75 @@ macro (ADD_H5_UD_TEST testname resultcode infile sparam srcname dparam dstname c NAME ${vol_prefix}H5COPY_UD-${testname}-clean-objects COMMAND ${CMAKE_COMMAND} -E remove testfiles/${testname}.out.h5 ) - - set_tests_properties (${vol_prefix}H5COPY_UD-${testname}-clean-objects PROPERTIES DEPENDS ${vol_prefix}H5COPY_UD-${testname}-DIFF) - set_tests_properties (${vol_prefix}H5COPY_UD-${testname}-clean-objects PROPERTIES - DEPENDS ${vol_prefix}H5COPY_UD-${testname}-DIFF - # h5delete will return an error code if targeted file does not exist - accept any result - PASS_REGULAR_EXPRESSION "^$|" + DEPENDS ${vol_prefix}H5COPY_UD-${testname}-DIFF + ) + set_tests_properties (${vol_prefix}H5COPY_UD-${testname}-clean-objects PROPERTIES + DEPENDS ${vol_prefix}H5COPY_UD-${testname}-DIFF + # h5delete will return an error code if targeted file does not exist - accept any result + PASS_REGULAR_EXPRESSION "^$|" ) - if (NOT "${vol}" STREQUAL "native") set_tests_properties (${vol_prefix}H5COPY_UD-${testname}-clean-objects PROPERTIES - ENVIRONMENT "${vol_env}" - WORKING_DIRECTORY "${vol_workdir}" - FIXTURES_REQUIRED "${vol_fixtures}" + ENVIRONMENT "${vol_env}" + WORKING_DIRECTORY "${vol_workdir}" + FIXTURES_REQUIRED "${vol_fixtures}" ) - endif() + endif () endif () - endforeach() # per-VOL loop + endforeach () # per-VOL loop endmacro () macro (ADD_H5_UD_ERR_TEST testname resultcode infile sparam srcname dparam dstname cmpfile) - list(LENGTH HDF5_EXTERNAL_VOL_TARGETS num_ext_vols) + list (LENGTH HDF5_EXTERNAL_VOL_TARGETS num_ext_vols) # Add a test for the native connector and each external VOL connector foreach (vol_idx RANGE 0 ${num_ext_vols}) # First, populate VOL info to be passed to tests if (${vol_idx} EQUAL 0) - set(vol "native") - set(vol_prefix "") + set (vol "native") + set (vol_prefix "") else () # An external VOL connector - set(vol_env "") + set (vol_env "") - math(EXPR vol_idx_fixed "${vol_idx} - 1") - list(GET HDF5_EXTERNAL_VOL_TARGETS ${vol_idx_fixed} ext_vol_tgt) - HDF5_GET_VOL_TGT_INFO(${ext_vol_tgt} vol vol_env) + math (EXPR vol_idx_fixed "${vol_idx} - 1") + list (GET HDF5_EXTERNAL_VOL_TARGETS ${vol_idx_fixed} ext_vol_tgt) + HDF5_GET_VOL_TGT_INFO (${ext_vol_tgt} vol vol_env) set (vol_prefix "HDF5_VOL_${vol}-") set (vol_workdir "${PROJECT_BINARY_DIR}/${vol}") set (vol_fixtures "${vol_prefix}files") # Isolate plugin path string - string(FIND "${vol_env}" "HDF5_PLUGIN_PATH=" vol_plugin_path_posn) + string (FIND "${vol_env}" "HDF5_PLUGIN_PATH=" vol_plugin_path_posn) if (vol_plugin_path_posn GREATER -1) # Grab path string after HDF5_PLUGIN_PATH= - string(LENGTH "HDF5_PLUGIN_PATH=" path_prefix_len) - math(EXPR vol_plugin_path_posn "${vol_plugin_path_posn} + ${path_prefix_len}") - string(SUBSTRING "${vol_env}" ${vol_plugin_path_posn} -1 vol_plugin_path) - else() - set(vol_plugin_path "") - endif() + string (LENGTH "HDF5_PLUGIN_PATH=" path_prefix_len) + math (EXPR vol_plugin_path_posn "${vol_plugin_path_posn} + ${path_prefix_len}") + string (SUBSTRING "${vol_env}" ${vol_plugin_path_posn} -1 vol_plugin_path) + else () + set (vol_plugin_path "") + endif () endif () if (NOT HDF5_ENABLE_USING_MEMCHECKER) # Remove any output file left over from previous test run add_test ( NAME ${vol_prefix}H5COPY_UD_ERR-${testname}-clear-objects - COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ testfiles/${testname}_ERR.out.h5 + COMMAND $ testfiles/${testname}_ERR.out.h5 ) - set_tests_properties (${vol_prefix}H5COPY_UD_ERR-${testname}-clear-objects PROPERTIES - # h5delete will return an error code if targeted file does not exist - accept any result - PASS_REGULAR_EXPRESSION "^$|" + # h5delete will return an error code if targeted file does not exist - accept any result + PASS_REGULAR_EXPRESSION "^$|" + ENVIRONMENT "${CROSSCOMPILING_PATH}" ) - if (NOT "${vol}" STREQUAL "native") set_tests_properties (${vol_prefix}H5COPY_UD_ERR-${testname}-clear-objects PROPERTIES - ENVIRONMENT "${vol_env}" - WORKING_DIRECTORY "${vol_workdir}" - FIXTURES_REQUIRED "${vol_fixtures}" + ENVIRONMENT "${vol_env}" + WORKING_DIRECTORY "${vol_workdir}" + FIXTURES_REQUIRED "${vol_fixtures}" ) endif () @@ -549,7 +534,6 @@ macro (ADD_H5_UD_ERR_TEST testname resultcode infile sparam srcname dparam dstna add_test ( NAME ${vol_prefix}H5COPY_UD_ERR-${testname} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=-v;--enable-error-stack;-i;./testfiles/${infile};-o;./testfiles/${testname}_ERR.out.h5;${sparam};${srcname};${dparam};${dstname}" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}" @@ -562,17 +546,17 @@ macro (ADD_H5_UD_ERR_TEST testname resultcode infile sparam srcname dparam dstna -D "TEST_LIBRARY_DIRECTORY=${CMAKE_TEST_OUTPUT_DIRECTORY}" -P "${HDF_RESOURCES_DIR}/runTest.cmake" ) - - set_tests_properties (${vol_prefix}H5COPY_UD_ERR-${testname} PROPERTIES DEPENDS ${vol_prefix}H5COPY_UD_ERR-${testname}-clear-objects) - + set_tests_properties (${vol_prefix}H5COPY_UD_ERR-${testname} PROPERTIES + DEPENDS ${vol_prefix}H5COPY_UD_ERR-${testname}-clear-objects + ENVIRONMENT "${CROSSCOMPILING_PATH}" + ) if (NOT "${vol}" STREQUAL "native") set_tests_properties (${vol_prefix}H5COPY_UD_ERR-${testname} PROPERTIES - ENVIRONMENT "${vol_env}" - WORKING_DIRECTORY "${vol_workdir}" - FIXTURES_REQUIRED "${vol_fixtures}" + ENVIRONMENT "${vol_env}" + WORKING_DIRECTORY "${vol_workdir}" + FIXTURES_REQUIRED "${vol_fixtures}" ) endif () - if ("${vol_prefix}H5COPY_UD_ERR-${testname}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") set_tests_properties (${vol_prefix}H5COPY_UD_ERR-${testname} PROPERTIES DISABLED true) endif () @@ -580,7 +564,6 @@ macro (ADD_H5_UD_ERR_TEST testname resultcode infile sparam srcname dparam dstna add_test ( NAME ${vol_prefix}H5COPY_UD_ERR-${testname}-DIFF COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=-v;./testfiles/${cmpfile};./testfiles/${testname}_ERR.out.h5;${srcname};${dstname}" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}" @@ -592,61 +575,61 @@ macro (ADD_H5_UD_ERR_TEST testname resultcode infile sparam srcname dparam dstna -D "TEST_LIBRARY_DIRECTORY=${CMAKE_TEST_OUTPUT_DIRECTORY}" -P "${HDF_RESOURCES_DIR}/runTest.cmake" ) - - set_tests_properties (${vol_prefix}H5COPY_UD_ERR-${testname}-DIFF PROPERTIES DEPENDS ${vol_prefix}H5COPY_UD_ERR-${testname}) - + set_tests_properties (${vol_prefix}H5COPY_UD_ERR-${testname}-DIFF PROPERTIES + DEPENDS ${vol_prefix}H5COPY_UD_ERR-${testname} + ENVIRONMENT "${CROSSCOMPILING_PATH}" + ) if (NOT "${vol}" STREQUAL "native") set_tests_properties (${vol_prefix}H5COPY_UD_ERR-${testname}-DIFF PROPERTIES - ENVIRONMENT "${vol_env}" - WORKING_DIRECTORY "${vol_workdir}" - FIXTURES_REQUIRED "${vol_fixtures}" + ENVIRONMENT "${vol_env}" + WORKING_DIRECTORY "${vol_workdir}" + FIXTURES_REQUIRED "${vol_fixtures}" ) endif () - if ("${vol_prefix}H5COPY_UD_ERR-${testname}-DIFF" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") set_tests_properties (${vol_prefix}H5COPY_UD_ERR-${testname}-DIFF PROPERTIES DISABLED true) endif () add_test ( NAME ${vol_prefix}H5COPY_UD_ERR-${testname}-clean-objects - COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ testfiles/${testname}_ERR.out.h5 + COMMAND $ testfiles/${testname}_ERR.out.h5 ) - set_tests_properties (${vol_prefix}H5COPY_UD_ERR-${testname}-clean-objects PROPERTIES - # h5delete will return an error code if targeted file does not exist - accept any result - PASS_REGULAR_EXPRESSION "^$|" + # h5delete will return an error code if targeted file does not exist - accept any result + PASS_REGULAR_EXPRESSION "^$|" + ENVIRONMENT "${CROSSCOMPILING_PATH}" + ) + set_tests_properties (${vol_prefix}H5COPY_UD_ERR-${testname}-clean-objects PROPERTIES + DEPENDS ${vol_prefix}H5COPY_UD_ERR-${testname}-DIFF ) - - set_tests_properties (${vol_prefix}H5COPY_UD_ERR-${testname}-clean-objects PROPERTIES DEPENDS ${vol_prefix}H5COPY_UD_ERR-${testname}-DIFF) - if (NOT "${vol}" STREQUAL "native") set_tests_properties (${vol_prefix}H5COPY_UD_ERR-${testname}-clean-objects PROPERTIES - ENVIRONMENT "${vol_env}" - WORKING_DIRECTORY "${vol_workdir}" - FIXTURES_REQUIRED "${vol_fixtures}" + ENVIRONMENT "${vol_env}" + WORKING_DIRECTORY "${vol_workdir}" + FIXTURES_REQUIRED "${vol_fixtures}" ) endif () endif () - endforeach() # per-VOL loop + endforeach () # per-VOL loop endmacro () macro (ADD_SIMPLE_TEST resultfile resultcode) - list(LENGTH HDF5_EXTERNAL_VOL_TARGETS num_ext_vols) + list (LENGTH HDF5_EXTERNAL_VOL_TARGETS num_ext_vols) # Add a test for the native connector and each external VOL connector foreach (vol_idx RANGE 0 ${num_ext_vols}) # First, populate VOL info to be passed to tests if (${vol_idx} EQUAL 0) - set(vol "native") - set(vol_prefix "") + set (vol "native") + set (vol_prefix "") else () # An external VOL connector - set(vol_env "") + set (vol_env "") - math(EXPR vol_idx_fixed "${vol_idx} - 1") - list(GET HDF5_EXTERNAL_VOL_TARGETS ${vol_idx_fixed} ext_vol_tgt) - HDF5_GET_VOL_TGT_INFO(${ext_vol_tgt} vol vol_env) + math (EXPR vol_idx_fixed "${vol_idx} - 1") + list (GET HDF5_EXTERNAL_VOL_TARGETS ${vol_idx_fixed} ext_vol_tgt) + HDF5_GET_VOL_TGT_INFO (${ext_vol_tgt} vol vol_env) set (vol_prefix "HDF5_VOL_${vol}-") set (vol_workdir "${PROJECT_BINARY_DIR}/${vol}") @@ -655,7 +638,7 @@ macro (ADD_SIMPLE_TEST resultfile resultcode) # If using memchecker add tests without using scripts if (HDF5_ENABLE_USING_MEMCHECKER) - add_test (NAME ${vol_prefix}H5COPY-${resultfile} COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ ${ARGN}) + add_test (NAME ${vol_prefix}H5COPY-${resultfile} COMMAND $ ${ARGN}) if (${resultcode}) set_tests_properties (${vol_prefix}H5COPY-${resultfile} PROPERTIES WILL_FAIL "true") endif () @@ -663,7 +646,6 @@ macro (ADD_SIMPLE_TEST resultfile resultcode) add_test ( NAME ${vol_prefix}H5COPY-${resultfile} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS=${ARGN}" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}" @@ -675,16 +657,15 @@ macro (ADD_SIMPLE_TEST resultfile resultcode) endif () set_tests_properties (${vol_prefix}H5COPY-${resultfile} PROPERTIES WORKING_DIRECTORY "${PROJECT_BINARY_DIR}" + ENVIRONMENT "${CROSSCOMPILING_PATH}" ) - if (NOT "${vol}" STREQUAL "native") set_tests_properties (${vol_prefix}H5COPY-${resultfile} PROPERTIES - ENVIRONMENT "${vol_env}" - WORKING_DIRECTORY "${vol_workdir}" - FIXTURES_REQUIRED "${vol_fixtures}" + ENVIRONMENT "${vol_env}" + WORKING_DIRECTORY "${vol_workdir}" + FIXTURES_REQUIRED "${vol_fixtures}" ) endif () - if ("${vol_prefix}H5COPY-${resultfile}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") set_tests_properties (${vol_prefix}H5COPY-${resultfile} PROPERTIES DISABLED true) endif () diff --git a/tools/test/h5diff/CMakeTests.cmake b/tools/test/h5diff/CMakeTests.cmake index a2849c912b0..35a0e55f603 100644 --- a/tools/test/h5diff/CMakeTests.cmake +++ b/tools/test/h5diff/CMakeTests.cmake @@ -10,7 +10,7 @@ # help@hdfgroup.org. # -include(${HDF_CONFIG_DIR}/HDF5Macros.cmake) +include (${HDF_CONFIG_DIR}/HDF5Macros.cmake) # System-independent path separator if (WIN32) @@ -345,39 +345,39 @@ endif () # copy test files from source to build dir # foreach (h5_tstfiles ${LIST_DIFF_TEST_FILES}) - HDFTEST_COPY_FILE("${HDF5_TOOLS_TST_DIR}/testfiles/${h5_tstfiles}" "${PROJECT_BINARY_DIR}/testfiles/${h5_tstfiles}" "h5diff_files") + HDFTEST_COPY_FILE ("${HDF5_TOOLS_TST_DIR}/testfiles/${h5_tstfiles}" "${PROJECT_BINARY_DIR}/testfiles/${h5_tstfiles}" "h5diff_files") if (H5_HAVE_PARALLEL) - HDFTEST_COPY_FILE("${HDF5_TOOLS_TST_DIR}/testfiles/${h5_tstfiles}" "${PROJECT_BINARY_DIR}/PAR/testfiles/${h5_tstfiles}" "h5diff_files") + HDFTEST_COPY_FILE ("${HDF5_TOOLS_TST_DIR}/testfiles/${h5_tstfiles}" "${PROJECT_BINARY_DIR}/PAR/testfiles/${h5_tstfiles}" "h5diff_files") endif () endforeach () foreach (h5_tstfiles ${LIST_VDS_TEST_FILES}) - HDFTEST_COPY_FILE("${HDF5_TOOLS_TST_DIR}/testfiles/vds/${h5_tstfiles}" "${PROJECT_BINARY_DIR}/testfiles/${h5_tstfiles}" "h5diff_files") + HDFTEST_COPY_FILE ("${HDF5_TOOLS_TST_DIR}/testfiles/vds/${h5_tstfiles}" "${PROJECT_BINARY_DIR}/testfiles/${h5_tstfiles}" "h5diff_files") if (H5_HAVE_PARALLEL) - HDFTEST_COPY_FILE("${HDF5_TOOLS_TST_DIR}/testfiles/vds/${h5_tstfiles}" "${PROJECT_BINARY_DIR}/PAR/testfiles/${h5_tstfiles}" "h5diff_files") + HDFTEST_COPY_FILE ("${HDF5_TOOLS_TST_DIR}/testfiles/vds/${h5_tstfiles}" "${PROJECT_BINARY_DIR}/PAR/testfiles/${h5_tstfiles}" "h5diff_files") endif () endforeach () foreach (h5_tstfiles ${LIST_HDF5_TEST_FILES}) - HDFTEST_COPY_FILE("${HDF5_TOOLS_TST_DIR}/testfiles/${h5_tstfiles}" "${PROJECT_BINARY_DIR}/testfiles/${h5_tstfiles}" "h5diff_files") + HDFTEST_COPY_FILE ("${HDF5_TOOLS_TST_DIR}/testfiles/${h5_tstfiles}" "${PROJECT_BINARY_DIR}/testfiles/${h5_tstfiles}" "h5diff_files") if (H5_HAVE_PARALLEL) - HDFTEST_COPY_FILE("${HDF5_TOOLS_TST_DIR}/testfiles/${h5_tstfiles}" "${PROJECT_BINARY_DIR}/PAR/testfiles/${h5_tstfiles}" "h5diff_files") + HDFTEST_COPY_FILE ("${HDF5_TOOLS_TST_DIR}/testfiles/${h5_tstfiles}" "${PROJECT_BINARY_DIR}/PAR/testfiles/${h5_tstfiles}" "h5diff_files") endif () endforeach () foreach (h5_tstfiles ${LIST_OTHER_TEST_FILES}) - HDFTEST_COPY_FILE("${HDF5_TOOLS_TST_DIR}/h5diff/expected/${h5_tstfiles}" "${PROJECT_BINARY_DIR}/testfiles/${h5_tstfiles}" "h5diff_files") + HDFTEST_COPY_FILE ("${HDF5_TOOLS_TST_DIR}/h5diff/expected/${h5_tstfiles}" "${PROJECT_BINARY_DIR}/testfiles/${h5_tstfiles}" "h5diff_files") if (H5_HAVE_PARALLEL) - HDFTEST_COPY_FILE("${HDF5_TOOLS_TST_DIR}/h5diff/expected/${h5_tstfiles}" "${PROJECT_BINARY_DIR}/PAR/testfiles/${h5_tstfiles}" "h5diff_files") + HDFTEST_COPY_FILE ("${HDF5_TOOLS_TST_DIR}/h5diff/expected/${h5_tstfiles}" "${PROJECT_BINARY_DIR}/PAR/testfiles/${h5_tstfiles}" "h5diff_files") endif () endforeach () # copy second version of tvlstr.h5 -HDFTEST_COPY_FILE("${HDF5_TOOLS_TST_DIR}/testfiles/tvlstr.h5" "${PROJECT_BINARY_DIR}/testfiles/tvlstr2.h5" "h5diff_files") +HDFTEST_COPY_FILE ("${HDF5_TOOLS_TST_DIR}/testfiles/tvlstr.h5" "${PROJECT_BINARY_DIR}/testfiles/tvlstr2.h5" "h5diff_files") if (H5_HAVE_PARALLEL) - HDFTEST_COPY_FILE("${HDF5_TOOLS_TST_DIR}/testfiles/tvlstr.h5" "${PROJECT_BINARY_DIR}/PAR/testfiles/tvlstr2.h5" "h5diff_files") + HDFTEST_COPY_FILE ("${HDF5_TOOLS_TST_DIR}/testfiles/tvlstr.h5" "${PROJECT_BINARY_DIR}/PAR/testfiles/tvlstr2.h5" "h5diff_files") endif () # create test files for each external VOL connector -set(h5diff_vol_files_list "") -foreach(external_vol_tgt ${HDF5_EXTERNAL_VOL_TARGETS}) - HDF5_GET_VOL_TGT_INFO(${external_vol_tgt} ext_vol_dir_name vol_env) +set (h5diff_vol_files_list "") +foreach (external_vol_tgt ${HDF5_EXTERNAL_VOL_TARGETS}) + HDF5_GET_VOL_TGT_INFO (${external_vol_tgt} ext_vol_dir_name vol_env) # Setup testfiles directory file (MAKE_DIRECTORY "${PROJECT_BINARY_DIR}/${ext_vol_dir_name}/testfiles") @@ -386,49 +386,49 @@ foreach(external_vol_tgt ${HDF5_EXTERNAL_VOL_TARGETS}) endif () # Generate test files - add_test(NAME ${external_vol_tgt}-h5diffgentest COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ -h5diff) - set_tests_properties(${external_vol_tgt}-h5diffgentest PROPERTIES - ENVIRONMENT "${vol_env}" - WORKING_DIRECTORY "${PROJECT_BINARY_DIR}/${ext_vol_dir_name}/testfiles" - FIXTURES_SETUP ${ext_vol_dir_name}-files + add_test (NAME ${external_vol_tgt}-h5diffgentest COMMAND $ -h5diff) + set_tests_properties (${external_vol_tgt}-h5diffgentest PROPERTIES + ENVIRONMENT "${vol_env};${CROSSCOMPILING_PATH}" + WORKING_DIRECTORY "${PROJECT_BINARY_DIR}/${ext_vol_dir_name}/testfiles" + FIXTURES_SETUP ${ext_vol_dir_name}-files ) if (H5_HAVE_PARALLEL) - add_test(NAME ${external_vol_tgt}-h5diffgentest-PAR COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ -h5diff) - set_tests_properties(${external_vol_tgt}-h5diffgentest-PAR PROPERTIES - ENVIRONMENT "${vol_env}" - WORKING_DIRECTORY "${PROJECT_BINARY_DIR}/PAR/${ext_vol_dir_name}/testfiles" - FIXTURES_SETUP ${ext_vol_dir_name}-files + add_test (NAME ${external_vol_tgt}-h5diffgentest-PAR COMMAND $ -h5diff) + set_tests_properties (${external_vol_tgt}-h5diffgentest-PAR PROPERTIES + ENVIRONMENT "${vol_env}" + WORKING_DIRECTORY "${PROJECT_BINARY_DIR}/PAR/${ext_vol_dir_name}/testfiles" + FIXTURES_SETUP ${ext_vol_dir_name}-files ) endif () # These aren't HDF5 files, just copy them to the VOL's subdirectory foreach (listothers ${LIST_OTHER_TEST_FILES}) - HDFTEST_COPY_FILE("${PROJECT_SOURCE_DIR}/expected/${listothers}" - "${PROJECT_BINARY_DIR}/${ext_vol_dir_name}/testfiles/${listothers}" - "h5diff_vol_files" + HDFTEST_COPY_FILE ("${PROJECT_SOURCE_DIR}/expected/${listothers}" + "${PROJECT_BINARY_DIR}/${ext_vol_dir_name}/testfiles/${listothers}" + "h5diff_vol_files" ) endforeach () if (COPY_WINDOWS_FILES) - foreach(h5_tstfiles ${LIST_WIN_TEST_FILES}) - HDFTEST_COPY_FILE("${PROJECT_SOURCE_DIR}/expected/${h5_tstfiles}w.txt" "${PROJECT_BINARY_DIR}/${ext_vol_dir_name}/testfiles/${h5_tstfiles}.txt" "h5diff_vol_files") + foreach (h5_tstfiles ${LIST_WIN_TEST_FILES}) + HDFTEST_COPY_FILE ("${PROJECT_SOURCE_DIR}/expected/${h5_tstfiles}w.txt" "${PROJECT_BINARY_DIR}/${ext_vol_dir_name}/testfiles/${h5_tstfiles}.txt" "h5diff_vol_files") if (H5_HAVE_PARALLEL) - HDFTEST_COPY_FILE("${PROJECT_SOURCE_DIR}/expected/${h5_tstfiles}w.txt" "${PROJECT_BINARY_DIR}/PAR/${ext_vol_dir_name}/testfiles/${h5_tstfiles}.txt" "h5diff_vol_files") + HDFTEST_COPY_FILE ("${PROJECT_SOURCE_DIR}/expected/${h5_tstfiles}w.txt" "${PROJECT_BINARY_DIR}/PAR/${ext_vol_dir_name}/testfiles/${h5_tstfiles}.txt" "h5diff_vol_files") endif () - endforeach() + endforeach () else () - foreach(h5_tstfiles ${LIST_WIN_TEST_FILES}) - HDFTEST_COPY_FILE("${PROJECT_SOURCE_DIR}/expected/${h5_tstfiles}.txt" "${PROJECT_BINARY_DIR}/${ext_vol_dir_name}/testfiles/${h5_tstfiles}.txt" "h5diff_vol_files") + foreach (h5_tstfiles ${LIST_WIN_TEST_FILES}) + HDFTEST_COPY_FILE ("${PROJECT_SOURCE_DIR}/expected/${h5_tstfiles}.txt" "${PROJECT_BINARY_DIR}/${ext_vol_dir_name}/testfiles/${h5_tstfiles}.txt" "h5diff_vol_files") if (H5_HAVE_PARALLEL) - HDFTEST_COPY_FILE("${PROJECT_SOURCE_DIR}/expected/${h5_tstfiles}.txt" "${PROJECT_BINARY_DIR}/PAR/${ext_vol_dir_name}/testfiles/${h5_tstfiles}.txt" "h5diff_vol_files") + HDFTEST_COPY_FILE ("${PROJECT_SOURCE_DIR}/expected/${h5_tstfiles}.txt" "${PROJECT_BINARY_DIR}/PAR/${ext_vol_dir_name}/testfiles/${h5_tstfiles}.txt" "h5diff_vol_files") endif () - endforeach() + endforeach () endif () endforeach () # per-VOL loop -add_custom_target(h5diff_vol_files ALL COMMENT "Copying files needed by h5diff VOL tests" DEPENDS ${h5diff_vol_files_list}) +add_custom_target (h5diff_vol_files ALL COMMENT "Copying files needed by h5diff VOL tests" DEPENDS ${h5diff_vol_files_list}) # # Overwrite system dependent files (Windows) and not VS2015 @@ -443,20 +443,20 @@ if (WIN32 AND MSVC_VERSION LESS 1900) endif () if (COPY_WINDOWS_FILES) foreach (h5_tstfiles ${LIST_WIN_TEST_FILES}) - HDFTEST_COPY_FILE("${HDF5_TOOLS_TST_DIR}/h5diff/expected/${h5_tstfiles}w.txt" "${PROJECT_BINARY_DIR}/testfiles/${h5_tstfiles}.txt" "h5diff_files") + HDFTEST_COPY_FILE ("${HDF5_TOOLS_TST_DIR}/h5diff/expected/${h5_tstfiles}w.txt" "${PROJECT_BINARY_DIR}/testfiles/${h5_tstfiles}.txt" "h5diff_files") if (H5_HAVE_PARALLEL) - HDFTEST_COPY_FILE("${HDF5_TOOLS_TST_DIR}/h5diff/expected/${h5_tstfiles}w.txt" "${PROJECT_BINARY_DIR}/PAR/testfiles/${h5_tstfiles}.txt" "h5diff_files") + HDFTEST_COPY_FILE ("${HDF5_TOOLS_TST_DIR}/h5diff/expected/${h5_tstfiles}w.txt" "${PROJECT_BINARY_DIR}/PAR/testfiles/${h5_tstfiles}.txt" "h5diff_files") endif () endforeach () else () foreach (h5_tstfiles ${LIST_WIN_TEST_FILES}) - HDFTEST_COPY_FILE("${HDF5_TOOLS_TST_DIR}/h5diff/expected/${h5_tstfiles}.txt" "${PROJECT_BINARY_DIR}/testfiles/${h5_tstfiles}.txt" "h5diff_files") + HDFTEST_COPY_FILE ("${HDF5_TOOLS_TST_DIR}/h5diff/expected/${h5_tstfiles}.txt" "${PROJECT_BINARY_DIR}/testfiles/${h5_tstfiles}.txt" "h5diff_files") if (H5_HAVE_PARALLEL) - HDFTEST_COPY_FILE("${HDF5_TOOLS_TST_DIR}/h5diff/expected/${h5_tstfiles}.txt" "${PROJECT_BINARY_DIR}/PAR/testfiles/${h5_tstfiles}.txt" "h5diff_files") + HDFTEST_COPY_FILE ("${HDF5_TOOLS_TST_DIR}/h5diff/expected/${h5_tstfiles}.txt" "${PROJECT_BINARY_DIR}/PAR/testfiles/${h5_tstfiles}.txt" "h5diff_files") endif () endforeach () endif () -add_custom_target(h5diff_files ALL COMMENT "Copying files needed by h5diff tests" DEPENDS ${h5diff_files_list}) +add_custom_target (h5diff_files ALL COMMENT "Copying files needed by h5diff tests" DEPENDS ${h5diff_files_list}) ############################################################################## ############################################################################## @@ -483,21 +483,21 @@ add_custom_target(h5diff_files ALL COMMENT "Copying files needed by h5diff tests # macro (ADD_H5_TEST testname) cmake_parse_arguments(ARG - "SERIAL_ONLY" - "RESULT_CODE;ERROR_REF" - "" - ${ARGN} + "SERIAL_ONLY" + "RESULT_CODE;ERROR_REF" + "" + ${ARGN} ) # Validate required parameters if (NOT DEFINED ARG_RESULT_CODE) - message(FATAL_ERROR "ADD_H5_TEST: RESULT_CODE is required") + message (FATAL_ERROR "ADD_H5_TEST: RESULT_CODE is required") endif () # Set up args to pass to serial/parallel variants if (DEFINED ARG_ERROR_REF) set(err_ref2 "ERROR_REF" "${ARG_ERROR_REF}") - else() + else () set (err_ref2 "") endif () @@ -512,53 +512,53 @@ endmacro () macro (ADD_SH5_TEST testname) cmake_parse_arguments(ARG - "" - "RESULT_CODE;ERROR_REF" - "" - ${ARGN} + "" + "RESULT_CODE;ERROR_REF" + "" + ${ARGN} ) # Validate required parameters if (NOT DEFINED ARG_RESULT_CODE) - message(FATAL_ERROR "ADD_SH5_TEST: RESULT_CODE is required") + message (FATAL_ERROR "ADD_SH5_TEST: RESULT_CODE is required") endif () - list(LENGTH HDF5_EXTERNAL_VOL_TARGETS num_ext_vols) + list (LENGTH HDF5_EXTERNAL_VOL_TARGETS num_ext_vols) # Add a test for the native connector and each external VOL connector foreach (vol_idx RANGE 0 ${num_ext_vols}) - set(vol_env "") + set (vol_env "") # First, populate VOL info to be passed to tests if (${vol_idx} EQUAL 0) - set(vol "native") - set(vol_prefix "") + set (vol "native") + set (vol_prefix "") set (workdir "${PROJECT_BINARY_DIR}/testfiles") else () # An external VOL connector - math(EXPR vol_idx_fixed "${vol_idx} - 1") - list(GET HDF5_EXTERNAL_VOL_TARGETS ${vol_idx_fixed} ext_vol_tgt) - HDF5_GET_VOL_TGT_INFO(${ext_vol_tgt} vol vol_env) + math (EXPR vol_idx_fixed "${vol_idx} - 1") + list (GET HDF5_EXTERNAL_VOL_TARGETS ${vol_idx_fixed} ext_vol_tgt) + HDF5_GET_VOL_TGT_INFO (${ext_vol_tgt} vol vol_env) set (vol_prefix "HDF5_VOL_${vol}-") set (workdir "${PROJECT_BINARY_DIR}/${vol}/testfiles") # Isolate plugin path string - string(FIND "${vol_env}" "HDF5_PLUGIN_PATH=" vol_plugin_path_posn) + string (FIND "${vol_env}" "HDF5_PLUGIN_PATH=" vol_plugin_path_posn) if (vol_plugin_path_posn GREATER -1) # Grab path string after HDF5_PLUGIN_PATH= - string(LENGTH "HDF5_PLUGIN_PATH=" path_prefix_len) - math(EXPR vol_plugin_path_posn "${vol_plugin_path_posn} + ${path_prefix_len}") - string(SUBSTRING "${vol_env}" ${vol_plugin_path_posn} -1 vol_plugin_path) + string (LENGTH "HDF5_PLUGIN_PATH=" path_prefix_len) + math (EXPR vol_plugin_path_posn "${vol_plugin_path_posn} + ${path_prefix_len}") + string (SUBSTRING "${vol_env}" ${vol_plugin_path_posn} -1 vol_plugin_path) else() - set(vol_plugin_path "") - endif() + set (vol_plugin_path "") + endif () endif () # If using memchecker add tests without using scripts if (HDF5_ENABLE_USING_MEMCHECKER) - add_test (NAME ${vol_prefix}H5DIFF-${testname} COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ ${ARG_UNPARSED_ARGUMENTS}) + add_test (NAME ${vol_prefix}H5DIFF-${testname} COMMAND $ ${ARG_UNPARSED_ARGUMENTS}) if (${ARG_RESULT_CODE}) set_tests_properties (${vol_prefix}H5DIFF-${testname} PROPERTIES WILL_FAIL "true") endif () @@ -566,7 +566,6 @@ macro (ADD_SH5_TEST testname) add_test ( NAME ${vol_prefix}H5DIFF-${testname} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=${ARG_UNPARSED_ARGUMENTS}" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}/testfiles" @@ -579,35 +578,33 @@ macro (ADD_SH5_TEST testname) -P "${HDF_RESOURCES_DIR}/runTest.cmake" ) endif () - set_tests_properties (${vol_prefix}H5DIFF-${testname} PROPERTIES WORKING_DIRECTORY "${workdir}" + ENVIRONMENT "${CROSSCOMPILING_PATH}" ) - if (NOT "${vol}" STREQUAL "native") set_tests_properties (${vol_prefix}H5DIFF-${testname} PROPERTIES - ENVIRONMENT "${vol_env}" - FIXTURES_REQUIRED "h5diff_vol_files" + ENVIRONMENT "${vol_env}" + FIXTURES_REQUIRED "h5diff_vol_files" ) endif () - if ("${vol_prefix}H5DIFF-${testname}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") set_tests_properties (${vol_prefix}H5DIFF-${testname} PROPERTIES DISABLED true) endif () - endforeach() # per-VOL loop + endforeach () # per-VOL loop endmacro () macro (ADD_PH5_TEST testname) cmake_parse_arguments(ARG - "" - "RESULT_CODE;ERROR_REF" - "" - ${ARGN} + "" + "RESULT_CODE;ERROR_REF" + "" + ${ARGN} ) # Validate required parameters if (NOT DEFINED ARG_RESULT_CODE) - message(FATAL_ERROR "ADD_PH5_TEST: RESULT_CODE is required") + message (FATAL_ERROR "ADD_PH5_TEST: RESULT_CODE is required") endif () # Handle parallel-exlusive ref file logic @@ -618,37 +615,37 @@ macro (ADD_PH5_TEST testname) set (ref_file "${testname}.txt") endif () - list(LENGTH HDF5_EXTERNAL_VOL_TARGETS num_ext_vols) + list (LENGTH HDF5_EXTERNAL_VOL_TARGETS num_ext_vols) # Add a test for the native connector and each external VOL connector foreach (vol_idx RANGE 0 ${num_ext_vols}) - set(vol_env "") + set (vol_env "") # First, populate VOL info to be passed to tests if (${vol_idx} EQUAL 0) - set(vol "native") - set(vol_prefix "") + set (vol "native") + set (vol_prefix "") set (workdir "${PROJECT_BINARY_DIR}/PAR/testfiles") else () # An external VOL connector - math(EXPR vol_idx_fixed "${vol_idx} - 1") - list(GET HDF5_EXTERNAL_VOL_TARGETS ${vol_idx_fixed} ext_vol_tgt) - HDF5_GET_VOL_TGT_INFO(${ext_vol_tgt} vol vol_env) + math (EXPR vol_idx_fixed "${vol_idx} - 1") + list (GET HDF5_EXTERNAL_VOL_TARGETS ${vol_idx_fixed} ext_vol_tgt) + HDF5_GET_VOL_TGT_INFO (${ext_vol_tgt} vol vol_env) set (vol_prefix "HDF5_VOL_${vol}-") set (workdir "${PROJECT_BINARY_DIR}/PAR/${vol}/testfiles") # Isolate plugin path string - string(FIND "${vol_env}" "HDF5_PLUGIN_PATH=" vol_plugin_path_posn) + string (FIND "${vol_env}" "HDF5_PLUGIN_PATH=" vol_plugin_path_posn) if (vol_plugin_path_posn GREATER -1) # Grab path string after HDF5_PLUGIN_PATH= - string(LENGTH "HDF5_PLUGIN_PATH=" path_prefix_len) - math(EXPR vol_plugin_path_posn "${vol_plugin_path_posn} + ${path_prefix_len}") - string(SUBSTRING "${vol_env}" ${vol_plugin_path_posn} -1 vol_plugin_path) - else() - set(vol_plugin_path "") - endif() + string (LENGTH "HDF5_PLUGIN_PATH=" path_prefix_len) + math (EXPR vol_plugin_path_posn "${vol_plugin_path_posn} + ${path_prefix_len}") + string (SUBSTRING "${vol_env}" ${vol_plugin_path_posn} -1 vol_plugin_path) + else () + set (vol_plugin_path "") + endif () endif () # If using memchecker add tests without using scripts @@ -683,15 +680,15 @@ macro (ADD_PH5_TEST testname) if (NOT "${vol}" STREQUAL "native") set_tests_properties (${vol_prefix}MPI_TEST_H5DIFF-${testname} PROPERTIES - ENVIRONMENT "${vol_env}" - FIXTURES_REQUIRED "h5diff_vol_files" + ENVIRONMENT "${vol_env}" + FIXTURES_REQUIRED "h5diff_vol_files" ) endif () if ("${vol_prefix}MPI_TEST_H5DIFF-${testname}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") set_tests_properties (${vol_prefix}MPI_TEST_H5DIFF-${testname} PROPERTIES DISABLED true) endif () - endforeach() # per-VOL loop + endforeach () # per-VOL loop endmacro () macro (ADD_H5_UD_TEST testname resultcode resultfile) @@ -707,7 +704,6 @@ macro (ADD_H5_UD_TEST testname resultcode resultfile) add_test ( NAME ${vol_prefix}H5DIFF_UD-${testname} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=${ARGN}" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}/testfiles" @@ -720,7 +716,9 @@ macro (ADD_H5_UD_TEST testname resultcode resultfile) -D "TEST_LIBRARY_DIRECTORY=${CMAKE_TEST_OUTPUT_DIRECTORY}" -P "${HDF_RESOURCES_DIR}/runTest.cmake" ) - + set_tests_properties (${vol_prefix}H5DIFF_UD-${testname} PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" + ) if ("${vol_prefix}H5DIFF_UD-${testname}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") set_tests_properties (${vol_prefix}H5DIFF_UD-${testname} PROPERTIES DISABLED true) endif () diff --git a/tools/test/h5dump/CMakeTests.cmake b/tools/test/h5dump/CMakeTests.cmake index eeebbc4762c..b4241ee8dac 100644 --- a/tools/test/h5dump/CMakeTests.cmake +++ b/tools/test/h5dump/CMakeTests.cmake @@ -390,37 +390,37 @@ file (MAKE_DIRECTORY "${PROJECT_BINARY_DIR}/S3TEST/testfiles") # copy test files from source dir to test dir # foreach (tst_h5_file ${HDF5_REFERENCE_TEST_FILES}) - HDFTEST_COPY_FILE("${HDF5_TOOLS_TST_DIR}/testfiles/${tst_h5_file}" "${PROJECT_BINARY_DIR}/testfiles/std/${tst_h5_file}" "h5dump_std_files") + HDFTEST_COPY_FILE ("${HDF5_TOOLS_TST_DIR}/testfiles/${tst_h5_file}" "${PROJECT_BINARY_DIR}/testfiles/std/${tst_h5_file}" "h5dump_std_files") endforeach () foreach (tst_exp_file ${HDF5_REFERENCE_EXP_FILES}) - HDFTEST_COPY_FILE("${HDF5_TOOLS_TST_DIR}/h5dump/exportfiles/${tst_exp_file}" "${PROJECT_BINARY_DIR}/testfiles/std/${tst_exp_file}" "h5dump_std_files") + HDFTEST_COPY_FILE ("${HDF5_TOOLS_TST_DIR}/h5dump/exportfiles/${tst_exp_file}" "${PROJECT_BINARY_DIR}/testfiles/std/${tst_exp_file}" "h5dump_std_files") endforeach () foreach (tst_other_file ${HDF5_REFERENCE_FILES}) - HDFTEST_COPY_FILE("${HDF5_TOOLS_TST_DIR}/h5dump/expected/${tst_other_file}" "${PROJECT_BINARY_DIR}/testfiles/std/${tst_other_file}" "h5dump_std_files") + HDFTEST_COPY_FILE ("${HDF5_TOOLS_TST_DIR}/h5dump/expected/${tst_other_file}" "${PROJECT_BINARY_DIR}/testfiles/std/${tst_other_file}" "h5dump_std_files") endforeach () foreach (tst_h5N_file ${HDF5_N_REFERENCE_FILES}) - HDFTEST_COPY_FILE("${HDF5_TOOLS_TST_DIR}/h5dump/expected/${tst_h5N_file}" "${PROJECT_BINARY_DIR}/testfiles/std/${tst_h5N_file}-N" "h5dump_std_files") + HDFTEST_COPY_FILE ("${HDF5_TOOLS_TST_DIR}/h5dump/expected/${tst_h5N_file}" "${PROJECT_BINARY_DIR}/testfiles/std/${tst_h5N_file}-N" "h5dump_std_files") endforeach () foreach (tst_s3_file ${H5DUMP_S3PROXY_TEST_FILES}) - HDFTEST_COPY_FILE("${HDF5_TOOLS_TST_DIR}/testfiles/${tst_s3_file}" "${PROJECT_BINARY_DIR}/S3TEST/testfiles/${tst_s3_file}" "h5dump_std_files") + HDFTEST_COPY_FILE ("${HDF5_TOOLS_TST_DIR}/testfiles/${tst_s3_file}" "${PROJECT_BINARY_DIR}/S3TEST/testfiles/${tst_s3_file}" "h5dump_std_files") endforeach () # -------------------------------------------------------------------- # Special file handling # -------------------------------------------------------------------- -HDFTEST_COPY_FILE("${HDF5_TOOLS_TST_DIR}/h5dump/expected/tbin1.ddl" "${PROJECT_BINARY_DIR}/testfiles/std/tbin1LE.ddl" "h5dump_std_files") +HDFTEST_COPY_FILE ("${HDF5_TOOLS_TST_DIR}/h5dump/expected/tbin1.ddl" "${PROJECT_BINARY_DIR}/testfiles/std/tbin1LE.ddl" "h5dump_std_files") # Certain versions of Visual Studio produce rounding differences compared with the reference data of the tfloatsattr test if (WIN32 AND (CMAKE_VS_WINDOWS_TARGET_PLATFORM_VERSION VERSION_LESS 10.0.18362.0)) - configure_file(${HDF5_TOOLS_TST_DIR}/h5dump/exportfiles/tbinregR.exp ${PROJECT_BINARY_DIR}/testfiles/std/tbinregR.exp NEWLINE_STYLE CRLF) + configure_file (${HDF5_TOOLS_TST_DIR}/h5dump/exportfiles/tbinregR.exp ${PROJECT_BINARY_DIR}/testfiles/std/tbinregR.exp NEWLINE_STYLE CRLF) else () - HDFTEST_COPY_FILE("${HDF5_TOOLS_TST_DIR}/h5dump/exportfiles/tbinregR.exp" "${PROJECT_BINARY_DIR}/testfiles/std/tbinregR.exp" "h5dump_std_files") + HDFTEST_COPY_FILE ("${HDF5_TOOLS_TST_DIR}/h5dump/exportfiles/tbinregR.exp" "${PROJECT_BINARY_DIR}/testfiles/std/tbinregR.exp" "h5dump_std_files") endif () -add_custom_target(h5dump_std_files ALL COMMENT "Copying files needed by h5dump_std tests" DEPENDS ${h5dump_std_files_list}) +add_custom_target (h5dump_std_files ALL COMMENT "Copying files needed by h5dump_std tests" DEPENDS ${h5dump_std_files_list}) ############################################################################## ############################################################################## @@ -431,12 +431,11 @@ add_custom_target(h5dump_std_files ALL COMMENT "Copying files needed by h5dump_s macro (ADD_HELP_TEST testname resultcode) # If using memchecker add tests without using scripts if (HDF5_ENABLE_USING_MEMCHECKER) - add_test (NAME H5DUMP-${testname} COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ ${ARGN}) + add_test (NAME H5DUMP-${testname} COMMAND $ ${ARGN}) else () add_test ( NAME H5DUMP-${testname} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=${ARGN}" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}/testfiles/std" @@ -448,6 +447,7 @@ macro (ADD_HELP_TEST testname resultcode) endif () set_tests_properties (H5DUMP-${testname} PROPERTIES WORKING_DIRECTORY "${PROJECT_BINARY_DIR}/testfiles/std" + ENVIRONMENT "${CROSSCOMPILING_PATH}" ) if ("H5DUMP-${testname}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") set_tests_properties (H5DUMP-${testname} PROPERTIES DISABLED true) @@ -471,7 +471,7 @@ endmacro () macro (ADD_H5_TEST resultfile resultcode) # If using memchecker add tests without using scripts if (HDF5_ENABLE_USING_MEMCHECKER) - add_test (NAME H5DUMP-${resultfile} COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ ${ARGN}) + add_test (NAME H5DUMP-${resultfile} COMMAND $ ${ARGN}) if (${resultcode}) set_tests_properties (H5DUMP-${resultfile} PROPERTIES WILL_FAIL "true") endif () @@ -482,7 +482,6 @@ macro (ADD_H5_TEST resultfile resultcode) add_test ( NAME H5DUMP-${resultfile} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=${ARGN}" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}/testfiles/std" @@ -494,6 +493,7 @@ macro (ADD_H5_TEST resultfile resultcode) endif () set_tests_properties (H5DUMP-${resultfile} PROPERTIES WORKING_DIRECTORY "${PROJECT_BINARY_DIR}/testfiles/std" + ENVIRONMENT "${CROSSCOMPILING_PATH}" ) if ("H5DUMP-${resultfile}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") set_tests_properties (H5DUMP-${resultfile} PROPERTIES DISABLED true) @@ -503,7 +503,7 @@ endmacro () macro (ADD_H5_COMP_TEST resultfile resultcode resultvalue) # If using memchecker add tests without using scripts if (HDF5_ENABLE_USING_MEMCHECKER) - add_test (NAME H5DUMP-${resultfile} COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ ${ARGN}) + add_test (NAME H5DUMP-${resultfile} COMMAND $ ${ARGN}) if (${resultcode}) set_tests_properties (H5DUMP-${resultfile} PROPERTIES WILL_FAIL "true") endif () @@ -514,7 +514,6 @@ macro (ADD_H5_COMP_TEST resultfile resultcode resultvalue) add_test ( NAME H5DUMP-${resultfile} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=${ARGN}" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}/testfiles/std" @@ -528,6 +527,7 @@ macro (ADD_H5_COMP_TEST resultfile resultcode resultvalue) endif () set_tests_properties (H5DUMP-${resultfile} PROPERTIES WORKING_DIRECTORY "${PROJECT_BINARY_DIR}/testfiles/std" + ENVIRONMENT "${CROSSCOMPILING_PATH}" ) if ("H5DUMP-${resultfile}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") set_tests_properties (H5DUMP-${resultfile} PROPERTIES DISABLED true) @@ -545,7 +545,7 @@ macro (ADD_H5_TEST_N resultfile resultcode) ) # If using memchecker add tests without using scripts if (HDF5_ENABLE_USING_MEMCHECKER) - add_test (NAME H5DUMP-N-${resultfile} COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ ${ARGN}) + add_test (NAME H5DUMP-N-${resultfile} COMMAND $ ${ARGN}) if (${resultcode}) set_tests_properties (H5DUMP-N-${resultfile} PROPERTIES WILL_FAIL "true") endif () @@ -556,7 +556,6 @@ macro (ADD_H5_TEST_N resultfile resultcode) add_test ( NAME H5DUMP-N-${resultfile} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=${ARGN}" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}/testfiles/std" @@ -568,6 +567,7 @@ macro (ADD_H5_TEST_N resultfile resultcode) endif () set_tests_properties (H5DUMP-N-${resultfile} PROPERTIES DEPENDS H5DUMP-N-${resultfile}-clear-objects + ENVIRONMENT "${CROSSCOMPILING_PATH}" ) if ("H5DUMP-N-${resultfile}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") set_tests_properties (H5DUMP-N-${resultfile} PROPERTIES DISABLED true) @@ -594,18 +594,18 @@ macro (ADD_H5_TEST_EXPORT resultfile targetfile resultcode) ) # If using memchecker add tests without using scripts if (HDF5_ENABLE_USING_MEMCHECKER) - add_test (NAME H5DUMP-${resultfile} COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ ${ARGN} ${resultfile}.txt ${targetfile}) + add_test (NAME H5DUMP-${resultfile} COMMAND $ ${ARGN} ${resultfile}.txt ${targetfile}) if (${resultcode}) set_tests_properties (H5DUMP-${resultfile} PROPERTIES WILL_FAIL "true") endif () set_tests_properties (H5DUMP-${resultfile} PROPERTIES WORKING_DIRECTORY "${PROJECT_BINARY_DIR}/testfiles/std" + ENVIRONMENT "${CROSSCOMPILING_PATH}" ) else () add_test ( NAME H5DUMP-${resultfile} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=${ARGN};${resultfile}.txt;${targetfile}" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}/testfiles/std" @@ -616,6 +616,7 @@ macro (ADD_H5_TEST_EXPORT resultfile targetfile resultcode) ) set_tests_properties (H5DUMP-${resultfile} PROPERTIES DEPENDS H5DUMP-${resultfile}-clear-objects + ENVIRONMENT "${CROSSCOMPILING_PATH}" ) if ("H5DUMP-${resultfile}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") set_tests_properties (H5DUMP-${resultfile} PROPERTIES DISABLED true) @@ -663,19 +664,19 @@ macro (ADD_H5_TEST_EXPORT_DDL resultfile targetfile resultcode ddlfile) ) # If using memchecker add tests without using scripts if (HDF5_ENABLE_USING_MEMCHECKER) - add_test (NAME H5DUMP-${resultfile} COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ --ddl=${ddlfile}.txt ${ARGN} ${resultfile}.txt ${targetfile}) + add_test (NAME H5DUMP-${resultfile} COMMAND $ --ddl=${ddlfile}.txt ${ARGN} ${resultfile}.txt ${targetfile}) if (${resultcode}) set_tests_properties (H5DUMP-${resultfile} PROPERTIES WILL_FAIL "true") endif () set_tests_properties (H5DUMP-${resultfile} PROPERTIES DEPENDS H5DUMP-${resultfile}-clear-objects + ENVIRONMENT "${CROSSCOMPILING_PATH}" WORKING_DIRECTORY "${PROJECT_BINARY_DIR}/testfiles/std" ) else () add_test ( NAME H5DUMP-${resultfile} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=--ddl=${ddlfile}.txt;${ARGN};${resultfile}.txt;${targetfile}" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}/testfiles/std" @@ -686,6 +687,7 @@ macro (ADD_H5_TEST_EXPORT_DDL resultfile targetfile resultcode ddlfile) ) set_tests_properties (H5DUMP-${resultfile} PROPERTIES DEPENDS H5DUMP-${resultfile}-clear-objects + ENVIRONMENT "${CROSSCOMPILING_PATH}" WORKING_DIRECTORY "${PROJECT_BINARY_DIR}/testfiles/std" ) if ("H5DUMP-${resultfile}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") @@ -742,10 +744,11 @@ macro (ADD_H5_EXPORT_TEST resultfile targetfile resultcode) ) add_test ( NAME H5DUMP-output-${resultfile} - COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ ${ARGN} ${resultfile}.txt ${targetfile} + COMMAND $ ${ARGN} ${resultfile}.txt ${targetfile} ) set_tests_properties (H5DUMP-output-${resultfile} PROPERTIES DEPENDS H5DUMP-output-${resultfile}-clear-objects + ENVIRONMENT "${CROSSCOMPILING_PATH}" WORKING_DIRECTORY "${PROJECT_BINARY_DIR}/testfiles/std" ) if ("H5DUMP-output-${resultfile}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") @@ -779,7 +782,6 @@ macro (ADD_H5_MASK_TEST resultfile resultcode) add_test ( NAME H5DUMP-${resultfile} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=${ARGN}" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}/testfiles/std" @@ -790,6 +792,7 @@ macro (ADD_H5_MASK_TEST resultfile resultcode) -P "${HDF_RESOURCES_DIR}/runTest.cmake" ) set_tests_properties (H5DUMP-${resultfile} PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" WORKING_DIRECTORY "${PROJECT_BINARY_DIR}/testfiles/std" ) if ("H5DUMP-${resultfile}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") @@ -803,7 +806,6 @@ macro (ADD_H5_GREP_TEST resultfile resultcode result_check) add_test ( NAME H5DUMP-${resultfile} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=${ARGN}" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}/testfiles/std" @@ -814,6 +816,7 @@ macro (ADD_H5_GREP_TEST resultfile resultcode result_check) -P "${HDF_RESOURCES_DIR}/runTest.cmake" ) set_tests_properties (H5DUMP-${resultfile} PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" WORKING_DIRECTORY "${PROJECT_BINARY_DIR}/testfiles/std" ) if ("H5DUMP-${resultfile}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") @@ -827,7 +830,6 @@ macro (ADD_H5ERR_MASK_TEST resultfile resultcode result_errcheck) add_test ( NAME H5DUMP-${resultfile} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=${ARGN}" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}/testfiles/std" @@ -838,6 +840,7 @@ macro (ADD_H5ERR_MASK_TEST resultfile resultcode result_errcheck) -P "${HDF_RESOURCES_DIR}/runTest.cmake" ) set_tests_properties (H5DUMP-${resultfile} PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" WORKING_DIRECTORY "${PROJECT_BINARY_DIR}/testfiles/std" ) if ("H5DUMP-${resultfile}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") @@ -851,7 +854,6 @@ macro (ADD_H5ERR_MASK_ENV_TEST resultfile resultcode result_errcheck envvar envv add_test ( NAME H5DUMP-${resultfile} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=${ARGN}" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}/testfiles/std" @@ -864,6 +866,7 @@ macro (ADD_H5ERR_MASK_ENV_TEST resultfile resultcode result_errcheck envvar envv -P "${HDF_RESOURCES_DIR}/runTest.cmake" ) set_tests_properties (H5DUMP-${resultfile} PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" WORKING_DIRECTORY "${PROJECT_BINARY_DIR}/testfiles/std" ) if ("H5DUMP-${resultfile}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") @@ -885,7 +888,6 @@ macro (ADD_H5_BIN_EXPORT conffile resultcode testfile) add_test ( NAME H5DUMP-BIN_EXPORT-${conffile} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=${ARGN};-o;${conffile}.bin;${testfile}" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}/testfiles/std" @@ -895,6 +897,7 @@ macro (ADD_H5_BIN_EXPORT conffile resultcode testfile) -P "${HDF_RESOURCES_DIR}/runTest.cmake" ) set_tests_properties (H5DUMP-BIN_EXPORT-${conffile} PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" WORKING_DIRECTORY "${PROJECT_BINARY_DIR}/testfiles/std" ) if ("H5DUMP-BIN_EXPORT-${conffile}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") @@ -927,7 +930,6 @@ macro (ADD_H5_TEST_IMPORT conffile resultfile testfile resultcode) add_test ( NAME H5DUMP-IMPORT-${resultfile} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=${ARGN};-o;${resultfile}.bin;${testfile}" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}/testfiles/std" @@ -938,22 +940,25 @@ macro (ADD_H5_TEST_IMPORT conffile resultfile testfile resultcode) ) set_tests_properties (H5DUMP-IMPORT-${resultfile} PROPERTIES DEPENDS H5DUMP-IMPORT-${resultfile}-clear-objects + ENVIRONMENT "${CROSSCOMPILING_PATH}" WORKING_DIRECTORY "${PROJECT_BINARY_DIR}/testfiles/std" ) if ("H5DUMP-IMPORT-${resultfile}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") set_tests_properties (H5DUMP-IMPORT-${resultfile} PROPERTIES DISABLED true) endif () - add_test (NAME H5DUMP-IMPORT-h5import-${resultfile} COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ ${resultfile}.bin -c ${conffile}.out -o ${resultfile}.h5) + add_test (NAME H5DUMP-IMPORT-h5import-${resultfile} COMMAND $ ${resultfile}.bin -c ${conffile}.out -o ${resultfile}.h5) set_tests_properties (H5DUMP-IMPORT-h5import-${resultfile} PROPERTIES DEPENDS H5DUMP-IMPORT-${resultfile} + ENVIRONMENT "${CROSSCOMPILING_PATH}" WORKING_DIRECTORY "${PROJECT_BINARY_DIR}/testfiles/std" ) if ("H5DUMP-IMPORT-h5import-${resultfile}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") set_tests_properties (H5DUMP-IMPORT-h5import-${resultfile} PROPERTIES DISABLED true) endif () - add_test (NAME H5DUMP-IMPORT-h5diff-${resultfile} COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ ${testfile} ${resultfile}.h5 /integer /integer) + add_test (NAME H5DUMP-IMPORT-h5diff-${resultfile} COMMAND $ ${testfile} ${resultfile}.h5 /integer /integer) set_tests_properties (H5DUMP-IMPORT-h5diff-${resultfile} PROPERTIES DEPENDS H5DUMP-IMPORT-h5import-${resultfile} + ENVIRONMENT "${CROSSCOMPILING_PATH}" WORKING_DIRECTORY "${PROJECT_BINARY_DIR}/testfiles/std" ) if ("H5DUMP-IMPORT-h5diff-${resultfile}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") @@ -977,7 +982,6 @@ macro (ADD_H5_UD_TEST testname resultcode resultfile) add_test ( NAME H5DUMP_UD-${testname}-${resultfile} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=${ARGN}" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}/testfiles/std" @@ -990,6 +994,7 @@ macro (ADD_H5_UD_TEST testname resultcode resultfile) -P "${HDF_RESOURCES_DIR}/runTest.cmake" ) set_tests_properties (H5DUMP_UD-${testname}-${resultfile} PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" WORKING_DIRECTORY "${PROJECT_BINARY_DIR}/testfiles/std" ) if ("H5DUMP_UD-${testname}-${resultfile}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") @@ -1001,7 +1006,7 @@ endmacro () macro (ADD_H5_S3TEST resultfile resultcode credtype urlscheme urlpath) # If using memchecker add tests without using scripts if (HDF5_ENABLE_USING_MEMCHECKER) - add_test (NAME H5DUMP_S3TEST-${resultfile}_${urlscheme}_${credtype} COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ ${ARGN}) + add_test (NAME H5DUMP_S3TEST-${resultfile}_${urlscheme}_${credtype} COMMAND $ ${ARGN}) if (${resultcode}) set_tests_properties (H5DUMP_S3TEST-${resultfile}_${urlscheme}_${credtype} PROPERTIES WILL_FAIL "true") endif () @@ -1012,7 +1017,6 @@ macro (ADD_H5_S3TEST resultfile resultcode credtype urlscheme urlpath) add_test ( NAME H5DUMP_S3TEST-${resultfile}_${urlscheme}_${credtype} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=--enable-error-stack=2;${ARGN};${urlscheme}://${urlpath}/${resultfile}.h5" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}/S3TEST" @@ -1026,7 +1030,7 @@ macro (ADD_H5_S3TEST resultfile resultcode credtype urlscheme urlpath) endif () set_tests_properties (H5DUMP_S3TEST-${resultfile}_${urlscheme}_${credtype} PROPERTIES FIXTURES_REQUIRED h5dump_s3_proxy - ENVIRONMENT "${h5dump_s3tests_env}" + ENVIRONMENT "${h5dump_s3tests_env};${CROSSCOMPILING_PATH}" WORKING_DIRECTORY ${PROJECT_BINARY_DIR}/S3TEST ) if ("H5DUMP_S3TEST-${resultfile}_${urlscheme}_${credtype}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") diff --git a/tools/test/h5dump/CMakeTestsPBITS.cmake b/tools/test/h5dump/CMakeTestsPBITS.cmake index 1f95cb6a4e2..90ee5633adb 100644 --- a/tools/test/h5dump/CMakeTestsPBITS.cmake +++ b/tools/test/h5dump/CMakeTestsPBITS.cmake @@ -82,13 +82,13 @@ set (HDF5_REFERENCE_TEST_PBITS ) foreach (pbits_h5_file ${HDF5_REFERENCE_TEST_PBITS}) - HDFTEST_COPY_FILE("${HDF5_TOOLS_TST_DIR}/testfiles/${pbits_h5_file}" "${PROJECT_BINARY_DIR}/testfiles/pbits/${pbits_h5_file}" "h5dump_pbits_files") + HDFTEST_COPY_FILE ("${HDF5_TOOLS_TST_DIR}/testfiles/${pbits_h5_file}" "${PROJECT_BINARY_DIR}/testfiles/pbits/${pbits_h5_file}" "h5dump_pbits_files") endforeach () foreach (ddl_pbits ${HDF5_REFERENCE_PBITS}) - HDFTEST_COPY_FILE("${HDF5_TOOLS_TST_DIR}/h5dump/expected/pbits/${ddl_pbits}" "${PROJECT_BINARY_DIR}/testfiles/pbits/${ddl_pbits}" "h5dump_pbits_files") + HDFTEST_COPY_FILE ("${HDF5_TOOLS_TST_DIR}/h5dump/expected/pbits/${ddl_pbits}" "${PROJECT_BINARY_DIR}/testfiles/pbits/${ddl_pbits}" "h5dump_pbits_files") endforeach () -add_custom_target(h5dump_pbits_files ALL COMMENT "Copying files needed by h5dump_pbits tests" DEPENDS ${h5dump_pbits_files_list}) +add_custom_target (h5dump_pbits_files ALL COMMENT "Copying files needed by h5dump_pbits tests" DEPENDS ${h5dump_pbits_files_list}) ############################################################################## ############################################################################## @@ -99,7 +99,7 @@ add_custom_target(h5dump_pbits_files ALL COMMENT "Copying files needed by h5dump macro (ADD_H5_PBITS_TEST resultfile resultcode result_errcheck) # If using memchecker add tests without using scripts if (HDF5_ENABLE_USING_MEMCHECKER) - add_test (NAME H5DUMP-${resultfile} COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ ${ARGN}) + add_test (NAME H5DUMP-${resultfile} COMMAND $ ${ARGN}) if (${resultcode}) set_tests_properties (H5DUMP-${resultfile} PROPERTIES WILL_FAIL "true") endif () @@ -108,7 +108,6 @@ macro (ADD_H5_PBITS_TEST resultfile resultcode result_errcheck) add_test ( NAME H5DUMP-${resultfile} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=${ARGN}" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}/testfiles/pbits" @@ -122,7 +121,6 @@ macro (ADD_H5_PBITS_TEST resultfile resultcode result_errcheck) add_test ( NAME H5DUMP-${resultfile} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=${ARGN}" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}/testfiles/pbits" @@ -134,6 +132,7 @@ macro (ADD_H5_PBITS_TEST resultfile resultcode result_errcheck) endif () endif () set_tests_properties (H5DUMP-${resultfile} PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" WORKING_DIRECTORY "${PROJECT_BINARY_DIR}/testfiles/pbits" ) if ("H5DUMP-${resultfile}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") diff --git a/tools/test/h5dump/CMakeTestsVDS.cmake b/tools/test/h5dump/CMakeTestsVDS.cmake index 954f974495a..9f5066130c4 100644 --- a/tools/test/h5dump/CMakeTestsVDS.cmake +++ b/tools/test/h5dump/CMakeTestsVDS.cmake @@ -82,18 +82,18 @@ set (HDF5_REFERENCE_PREFIX_VDS ) foreach (vds_h5_file ${HDF5_REFERENCE_TEST_VDS}) - HDFTEST_COPY_FILE("${HDF5_TOOLS_TST_DIR}/testfiles/vds/${vds_h5_file}" "${PROJECT_BINARY_DIR}/testfiles/vds/${vds_h5_file}" "h5dump_vds_files") + HDFTEST_COPY_FILE ("${HDF5_TOOLS_TST_DIR}/testfiles/vds/${vds_h5_file}" "${PROJECT_BINARY_DIR}/testfiles/vds/${vds_h5_file}" "h5dump_vds_files") endforeach () foreach (vds_h5_file ${HDF5_REFERENCE_PREFIX_VDS}) - HDFTEST_COPY_FILE("${HDF5_TOOLS_TST_DIR}/testfiles/vds/${vds_h5_file}" "${PROJECT_BINARY_DIR}/testfiles/vds/prefix/${vds_h5_file}" "h5dump_vds_files") + HDFTEST_COPY_FILE ("${HDF5_TOOLS_TST_DIR}/testfiles/vds/${vds_h5_file}" "${PROJECT_BINARY_DIR}/testfiles/vds/prefix/${vds_h5_file}" "h5dump_vds_files") endforeach () foreach (ddl_vds ${HDF5_REFERENCE_VDS}) - HDFTEST_COPY_FILE("${HDF5_TOOLS_TST_DIR}/h5dump/expected/vds/${ddl_vds}" "${PROJECT_BINARY_DIR}/testfiles/vds/prefix/${ddl_vds}" "h5dump_vds_files") + HDFTEST_COPY_FILE ("${HDF5_TOOLS_TST_DIR}/h5dump/expected/vds/${ddl_vds}" "${PROJECT_BINARY_DIR}/testfiles/vds/prefix/${ddl_vds}" "h5dump_vds_files") endforeach () -add_custom_target(h5dump_vds_files ALL COMMENT "Copying files needed by h5dump_vds tests" DEPENDS ${h5dump_vds_files_list}) +add_custom_target (h5dump_vds_files ALL COMMENT "Copying files needed by h5dump_vds tests" DEPENDS ${h5dump_vds_files_list}) ############################################################################## ############################################################################## @@ -104,7 +104,7 @@ add_custom_target(h5dump_vds_files ALL COMMENT "Copying files needed by h5dump_v macro (ADD_H5_VDS_TEST resultfile resultcode) # If using memchecker add tests without using scripts if (HDF5_ENABLE_USING_MEMCHECKER) - add_test (NAME H5DUMP-${resultfile} COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ ${ARGN}) + add_test (NAME H5DUMP-${resultfile} COMMAND $ ${ARGN}) if (${resultcode}) set_tests_properties (H5DUMP-${resultfile} PROPERTIES WILL_FAIL "true") endif () @@ -112,7 +112,6 @@ macro (ADD_H5_VDS_TEST resultfile resultcode) add_test ( NAME H5DUMP-${resultfile} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=${ARGN}" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}/testfiles/vds" @@ -123,6 +122,7 @@ macro (ADD_H5_VDS_TEST resultfile resultcode) ) endif () set_tests_properties (H5DUMP-${resultfile} PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" WORKING_DIRECTORY "${PROJECT_BINARY_DIR}/testfiles/vds" ) if ("H5DUMP-${resultfile}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") @@ -133,9 +133,9 @@ endmacro () macro (ADD_H5_VDS_PREFIX_TEST resultfile resultcode) # If using memchecker add tests without using scripts if (HDF5_ENABLE_USING_MEMCHECKER) - add_test (NAME H5DUMP_PREFIX-${resultfile} COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ ${ARGN}) + add_test (NAME H5DUMP_PREFIX-${resultfile} COMMAND $ ${ARGN}) set_tests_properties (H5DUMP_PREFIX-${resultfile} PROPERTIES - ENVIRONMENT "HDF5_VDS_PREFIX=${PROJECT_BINARY_DIR}/testfiles/vds/" + ENVIRONMENT "HDF5_VDS_PREFIX=${PROJECT_BINARY_DIR}/testfiles/vds/;${CROSSCOMPILING_PATH}" WORKING_DIRECTORY "${PROJECT_BINARY_DIR}/testfiles/vds/prefix" ) if (${resultcode}) @@ -148,7 +148,6 @@ macro (ADD_H5_VDS_PREFIX_TEST resultfile resultcode) add_test ( NAME H5DUMP_PREFIX-${resultfile} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=${ARGN}" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}/testfiles/vds/prefix" @@ -159,6 +158,7 @@ macro (ADD_H5_VDS_PREFIX_TEST resultfile resultcode) -D "TEST_ENV_VALUE=${PROJECT_BINARY_DIR}/testfiles/vds/" -P "${HDF_RESOURCES_DIR}/runTest.cmake" ) + set_tests_properties (H5DUMP_PREFIX-${resultfile} PROPERTIES ENVIRONMENT "${CROSSCOMPILING_PATH}") endif () if ("H5DUMP_PREFIX-${resultfile}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") set_tests_properties (H5DUMP_PREFIX-${resultfile} PROPERTIES DISABLED true) @@ -168,8 +168,11 @@ endmacro () macro (ADD_H5_VDS_LAYOUT resultfile resultcode) # If using memchecker add tests without using scripts if (HDF5_ENABLE_USING_MEMCHECKER) - add_test (NAME H5DUMP-${resultfile} COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ -p ${ARGN}) - set_tests_properties (H5DUMP-${resultfile} PROPERTIES WORKING_DIRECTORY "${PROJECT_BINARY_DIR}/testfiles/vds") + add_test (NAME H5DUMP-${resultfile} COMMAND $ -p ${ARGN}) + set_tests_properties (H5DUMP-${resultfile} PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" + WORKING_DIRECTORY "${PROJECT_BINARY_DIR}/testfiles/vds" + ) if (${resultcode}) set_tests_properties (H5DUMP-${resultfile} PROPERTIES WILL_FAIL "true") endif () @@ -180,7 +183,6 @@ macro (ADD_H5_VDS_LAYOUT resultfile resultcode) add_test ( NAME H5DUMP-${resultfile} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=-p;${ARGN}" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}/testfiles/vds" @@ -189,6 +191,7 @@ macro (ADD_H5_VDS_LAYOUT resultfile resultcode) -D "TEST_REFERENCE=${resultfile}.ddl" -P "${HDF_RESOURCES_DIR}/runTest.cmake" ) + set_tests_properties (H5DUMP-${resultfile} PROPERTIES ENVIRONMENT "${CROSSCOMPILING_PATH}") endif () if ("H5DUMP-${resultfile}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") set_tests_properties (H5DUMP-${resultfile} PROPERTIES DISABLED true) diff --git a/tools/test/h5dump/CMakeTestsXML.cmake b/tools/test/h5dump/CMakeTestsXML.cmake index c0da6592690..9b732040e5f 100644 --- a/tools/test/h5dump/CMakeTestsXML.cmake +++ b/tools/test/h5dump/CMakeTestsXML.cmake @@ -151,17 +151,17 @@ set (HDF5_XML_REFERENCE_FILES ) foreach (tst_xml_h5_file ${HDF5_XML_REFERENCE_TEST_FILES}) - HDFTEST_COPY_FILE("${HDF5_TOOLS_TST_DIR}/testfiles/${tst_xml_h5_file}" "${PROJECT_BINARY_DIR}/testfiles/xml/${tst_xml_h5_file}" "h5dump_xml_files") + HDFTEST_COPY_FILE ("${HDF5_TOOLS_TST_DIR}/testfiles/${tst_xml_h5_file}" "${PROJECT_BINARY_DIR}/testfiles/xml/${tst_xml_h5_file}" "h5dump_xml_files") endforeach () foreach (tst_xmlonly_h5_file ${HDF5_XML_REFERENCE_ONLY_FILES}) - HDFTEST_COPY_FILE("${HDF5_TOOLS_TST_DIR}/testfiles/xml/${tst_xmlonly_h5_file}" "${PROJECT_BINARY_DIR}/testfiles/xml/${tst_xmlonly_h5_file}" "h5dump_xml_files") + HDFTEST_COPY_FILE ("${HDF5_TOOLS_TST_DIR}/testfiles/xml/${tst_xmlonly_h5_file}" "${PROJECT_BINARY_DIR}/testfiles/xml/${tst_xmlonly_h5_file}" "h5dump_xml_files") endforeach () foreach (tst_xml_other_file ${HDF5_XML_REFERENCE_FILES}) - HDFTEST_COPY_FILE("${HDF5_TOOLS_TST_DIR}/h5dump/expected/xml/${tst_xml_other_file}" "${PROJECT_BINARY_DIR}/testfiles/xml/${tst_xml_other_file}" "h5dump_xml_files") + HDFTEST_COPY_FILE ("${HDF5_TOOLS_TST_DIR}/h5dump/expected/xml/${tst_xml_other_file}" "${PROJECT_BINARY_DIR}/testfiles/xml/${tst_xml_other_file}" "h5dump_xml_files") endforeach () -add_custom_target(h5dump_xml_files ALL COMMENT "Copying files needed by h5dump_xml tests" DEPENDS ${h5dump_xml_files_list}) +add_custom_target (h5dump_xml_files ALL COMMENT "Copying files needed by h5dump_xml tests" DEPENDS ${h5dump_xml_files_list}) ############################################################################## ############################################################################## @@ -185,7 +185,7 @@ endmacro () macro (ADD_XML_H5_TEST resultfile resultcode) if (HDF5_ENABLE_USING_MEMCHECKER) - add_test (NAME H5DUMP_XML-${resultfile} COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ --xml ${ARGN}) + add_test (NAME H5DUMP_XML-${resultfile} COMMAND $ --xml ${ARGN}) if (${resultcode}) set_tests_properties (H5DUMP_XML-${resultfile} PROPERTIES WILL_FAIL "true") endif () @@ -193,7 +193,6 @@ macro (ADD_XML_H5_TEST resultfile resultcode) add_test ( NAME H5DUMP_XML-${resultfile} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=--xml;${ARGN}" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}/testfiles/xml" @@ -204,6 +203,7 @@ macro (ADD_XML_H5_TEST resultfile resultcode) ) endif () set_tests_properties (H5DUMP_XML-${resultfile} PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" WORKING_DIRECTORY "${PROJECT_BINARY_DIR}/testfiles/xml" ) if ("H5DUMP_XML-${resultfile}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") diff --git a/tools/test/h5dump/CMakeVFDTests.cmake b/tools/test/h5dump/CMakeVFDTests.cmake index 2fb96ee00f5..4e41fcd0ed9 100644 --- a/tools/test/h5dump/CMakeVFDTests.cmake +++ b/tools/test/h5dump/CMakeVFDTests.cmake @@ -15,60 +15,60 @@ ### T E S T I N G ### ############################################################################## ############################################################################## -H5_CREATE_VFD_DIR() +H5_CREATE_VFD_DIR () # -------------------------------------------------------------------- # Copy all the HDF5 files from the source directory into the test directory # -------------------------------------------------------------------- set (HDF5_VFD_H5DUMP_FILES - packedbits + packedbits ) set (HDF5_SF_VFD_H5DUMP_FILES - test_subfiling_stripe_sizes.h5 + test_subfiling_stripe_sizes.h5 ) set (HDF5_SF2_VFD_H5DUMP_FILES - test_subfiling_precreate_rank_0.h5 + test_subfiling_precreate_rank_0.h5 ) foreach (vfdtest ${VFD_LIST}) if (vfdtest STREQUAL "subfiling") foreach (h5_tfile ${HDF5_SF_VFD_H5DUMP_FILES}) - file(COPY "${HDF5_TOOLS_TST_DIR}/testfiles/${h5_tfile}" DESTINATION "${PROJECT_BINARY_DIR}/${vfdtest}") - execute_process( - COMMAND ls -i ${PROJECT_BINARY_DIR}/${vfdtest}/${h5_tfile} - OUTPUT_VARIABLE OUTPUT_VALUE - OUTPUT_STRIP_TRAILING_WHITESPACE + file (COPY "${HDF5_TOOLS_TST_DIR}/testfiles/${h5_tfile}" DESTINATION "${PROJECT_BINARY_DIR}/${vfdtest}") + execute_process ( + COMMAND ls -i ${PROJECT_BINARY_DIR}/${vfdtest}/${h5_tfile} + OUTPUT_VARIABLE OUTPUT_VALUE + OUTPUT_STRIP_TRAILING_WHITESPACE ) - string(REGEX MATCH "^ *([0-9]+) *" INODE_VALUE "${OUTPUT_VALUE}") - string(STRIP ${INODE_VALUE} INODE_STR) - HDFTEST_COPY_FILE("${HDF5_TOOLS_TST_DIR}/testfiles/${h5_tfile}.subfile_1_of_1" "${PROJECT_BINARY_DIR}/${vfdtest}/${h5_tfile}.subfile_${INODE_STR}_1_of_1" "HDF5_SF_VFD_H5DUMP_files") - HDFTEST_COPY_FILE("${HDF5_TOOLS_TST_DIR}/testfiles/${h5_tfile}.subfile.config" "${PROJECT_BINARY_DIR}/${vfdtest}/${h5_tfile}.subfile_${INODE_STR}.config" "HDF5_SF_VFD_H5DUMP_files") + string (REGEX MATCH "^ *([0-9]+) *" INODE_VALUE "${OUTPUT_VALUE}") + string (STRIP ${INODE_VALUE} INODE_STR) + HDFTEST_COPY_FILE ("${HDF5_TOOLS_TST_DIR}/testfiles/${h5_tfile}.subfile_1_of_1" "${PROJECT_BINARY_DIR}/${vfdtest}/${h5_tfile}.subfile_${INODE_STR}_1_of_1" "HDF5_SF_VFD_H5DUMP_files") + HDFTEST_COPY_FILE ("${HDF5_TOOLS_TST_DIR}/testfiles/${h5_tfile}.subfile.config" "${PROJECT_BINARY_DIR}/${vfdtest}/${h5_tfile}.subfile_${INODE_STR}.config" "HDF5_SF_VFD_H5DUMP_files") endforeach () foreach (h5_tfile ${HDF5_SF2_VFD_H5DUMP_FILES}) - file(COPY "${HDF5_TOOLS_TST_DIR}/testfiles/${h5_tfile}" DESTINATION "${PROJECT_BINARY_DIR}/${vfdtest}") - execute_process( - COMMAND ls -i ${PROJECT_BINARY_DIR}/${vfdtest}/${h5_tfile} - OUTPUT_VARIABLE OUTPUT_VALUE - OUTPUT_STRIP_TRAILING_WHITESPACE + file (COPY "${HDF5_TOOLS_TST_DIR}/testfiles/${h5_tfile}" DESTINATION "${PROJECT_BINARY_DIR}/${vfdtest}") + execute_process ( + COMMAND ls -i ${PROJECT_BINARY_DIR}/${vfdtest}/${h5_tfile} + OUTPUT_VARIABLE OUTPUT_VALUE + OUTPUT_STRIP_TRAILING_WHITESPACE ) - string(REGEX MATCH "^ *([0-9]+) *" INODE_VALUE "${OUTPUT_VALUE}") - string(STRIP ${INODE_VALUE} INODE_STR) - HDFTEST_COPY_FILE("${HDF5_TOOLS_TST_DIR}/testfiles/${h5_tfile}.subfile_1_of_2" "${PROJECT_BINARY_DIR}/${vfdtest}/${h5_tfile}.subfile_${INODE_STR}_1_of_2" "HDF5_SF2_VFD_H5DUMP_files") - HDFTEST_COPY_FILE("${HDF5_TOOLS_TST_DIR}/testfiles/${h5_tfile}.subfile_2_of_2" "${PROJECT_BINARY_DIR}/${vfdtest}/${h5_tfile}.subfile_${INODE_STR}_2_of_2" "HDF5_SF2_VFD_H5DUMP_files") - HDFTEST_COPY_FILE("${HDF5_TOOLS_TST_DIR}/testfiles/${h5_tfile}.subfile.config" "${PROJECT_BINARY_DIR}/${vfdtest}/${h5_tfile}.subfile_${INODE_STR}.config" "HDF5_SF2_VFD_H5DUMP_files") + string (REGEX MATCH "^ *([0-9]+) *" INODE_VALUE "${OUTPUT_VALUE}") + string (STRIP ${INODE_VALUE} INODE_STR) + HDFTEST_COPY_FILE ("${HDF5_TOOLS_TST_DIR}/testfiles/${h5_tfile}.subfile_1_of_2" "${PROJECT_BINARY_DIR}/${vfdtest}/${h5_tfile}.subfile_${INODE_STR}_1_of_2" "HDF5_SF2_VFD_H5DUMP_files") + HDFTEST_COPY_FILE ("${HDF5_TOOLS_TST_DIR}/testfiles/${h5_tfile}.subfile_2_of_2" "${PROJECT_BINARY_DIR}/${vfdtest}/${h5_tfile}.subfile_${INODE_STR}_2_of_2" "HDF5_SF2_VFD_H5DUMP_files") + HDFTEST_COPY_FILE ("${HDF5_TOOLS_TST_DIR}/testfiles/${h5_tfile}.subfile.config" "${PROJECT_BINARY_DIR}/${vfdtest}/${h5_tfile}.subfile_${INODE_STR}.config" "HDF5_SF2_VFD_H5DUMP_files") endforeach () endif () foreach (h5_tfile ${HDF5_VFD_H5DUMP_FILES}) - HDFTEST_COPY_FILE("${HDF5_TOOLS_TST_DIR}/testfiles/${h5_tfile}.h5" "${PROJECT_BINARY_DIR}/${vfdtest}/${h5_tfile}.h5" "HDF5_VFD_H5DUMP_files") - HDFTEST_COPY_FILE("${HDF5_TOOLS_TST_DIR}/h5dump/expected/${h5_tfile}.ddl" "${PROJECT_BINARY_DIR}/${vfdtest}/${h5_tfile}.ddl" "HDF5_VFD_H5DUMP_files") + HDFTEST_COPY_FILE ("${HDF5_TOOLS_TST_DIR}/testfiles/${h5_tfile}.h5" "${PROJECT_BINARY_DIR}/${vfdtest}/${h5_tfile}.h5" "HDF5_VFD_H5DUMP_files") + HDFTEST_COPY_FILE ("${HDF5_TOOLS_TST_DIR}/h5dump/expected/${h5_tfile}.ddl" "${PROJECT_BINARY_DIR}/${vfdtest}/${h5_tfile}.ddl" "HDF5_VFD_H5DUMP_files") endforeach () endforeach () -add_custom_target(HDF5_VFD_H5DUMP_files ALL COMMENT "Copying files needed by HDF5_VFD_H5DUMP tests" DEPENDS ${HDF5_VFD_H5DUMP_files_list}) -add_custom_target(HDF5_SF_VFD_H5DUMP_files ALL COMMENT "Copying files needed by HDF5_SF_VFD_H5DUMP tests" DEPENDS ${HDF5_SF_VFD_H5DUMP_files_list}) -add_custom_target(HDF5_SF2_VFD_H5DUMP_files ALL COMMENT "Copying files needed by HDF5_SF2_VFD_H5DUMP tests" DEPENDS ${HDF5_SF2_VFD_H5DUMP_files_list}) +add_custom_target (HDF5_VFD_H5DUMP_files ALL COMMENT "Copying files needed by HDF5_VFD_H5DUMP tests" DEPENDS ${HDF5_VFD_H5DUMP_files_list}) +add_custom_target (HDF5_SF_VFD_H5DUMP_files ALL COMMENT "Copying files needed by HDF5_SF_VFD_H5DUMP tests" DEPENDS ${HDF5_SF_VFD_H5DUMP_files_list}) +add_custom_target (HDF5_SF2_VFD_H5DUMP_files ALL COMMENT "Copying files needed by HDF5_SF2_VFD_H5DUMP tests" DEPENDS ${HDF5_SF2_VFD_H5DUMP_files_list}) ############################################################################## ############################################################################## @@ -81,7 +81,6 @@ macro (ADD_VFD_H5DUMP_TEST vfdname resultfile resultcode) add_test ( NAME H5DUMP_VFD-${vfdname}-${resultfile}-h5dump COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=${ARGN}" -D "TEST_VFD:STRING=${vfdname}" @@ -91,7 +90,10 @@ macro (ADD_VFD_H5DUMP_TEST vfdname resultfile resultcode) -D "TEST_FOLDER=${PROJECT_BINARY_DIR}/${vfdname}" -P "${HDF_RESOURCES_DIR}/vfdTest.cmake" ) - set_tests_properties (H5DUMP_VFD-${vfdname}-${resultfile}-h5dump PROPERTIES TIMEOUT ${CTEST_SHORT_TIMEOUT}) + set_tests_properties (H5DUMP_VFD-${vfdname}-${resultfile}-h5dump PROPERTIES + TIMEOUT ${CTEST_SHORT_TIMEOUT} + ENVIRONMENT "${CROSSCOMPILING_PATH}" + ) if ("H5DUMP_VFD-${vfdname}-${resultfile}-h5dump" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") set_tests_properties (H5DUMP_VFD-${vfdname}-${resultfile}-h5dump PROPERTIES DISABLED true) endif () diff --git a/tools/test/h5format_convert/CMakeTests.cmake b/tools/test/h5format_convert/CMakeTests.cmake index f84bcc057c4..caf349fd92e 100644 --- a/tools/test/h5format_convert/CMakeTests.cmake +++ b/tools/test/h5format_convert/CMakeTests.cmake @@ -73,20 +73,20 @@ set (HDF5_REFERENCE_TEST_FILES ) file (MAKE_DIRECTORY "${PROJECT_BINARY_DIR}/testfiles") -add_custom_target(h5fc-files ALL COMMENT "Copying files needed by h5fc tests") +add_custom_target (h5fc-files ALL COMMENT "Copying files needed by h5fc tests") foreach (ddl_file ${HDF5_REFERENCE_FILES}) - HDFTEST_COPY_FILE("${HDF5_TOOLS_TST_DIR}/h5format_convert/expected/${ddl_file}" "${PROJECT_BINARY_DIR}/testfiles/${ddl_file}" "h5fc_files") + HDFTEST_COPY_FILE ("${HDF5_TOOLS_TST_DIR}/h5format_convert/expected/${ddl_file}" "${PROJECT_BINARY_DIR}/testfiles/${ddl_file}" "h5fc_files") endforeach () foreach (h5_file ${HDF5_REFERENCE_ERR_FILES}) - HDFTEST_COPY_FILE("${HDF5_TOOLS_TST_DIR}/h5format_convert/expected/${h5_file}" "${PROJECT_BINARY_DIR}/testfiles/${h5_file}" "h5fc_files") + HDFTEST_COPY_FILE ("${HDF5_TOOLS_TST_DIR}/h5format_convert/expected/${h5_file}" "${PROJECT_BINARY_DIR}/testfiles/${h5_file}" "h5fc_files") endforeach () foreach (h5_file ${HDF5_REFERENCE_TEST_FILES}) - HDFTEST_COPY_FILE("${HDF5_TOOLS_TST_DIR}/testfiles/${h5_file}" "${PROJECT_BINARY_DIR}/testfiles/${h5_file}" "h5fc_files") + HDFTEST_COPY_FILE ("${HDF5_TOOLS_TST_DIR}/testfiles/${h5_file}" "${PROJECT_BINARY_DIR}/testfiles/${h5_file}" "h5fc_files") endforeach () -add_custom_target(h5fc_files ALL COMMENT "Copying files needed by h5fc tests" DEPENDS ${h5fc_files_list}) +add_custom_target (h5fc_files ALL COMMENT "Copying files needed by h5fc tests" DEPENDS ${h5fc_files_list}) ############################################################################## ############################################################################## @@ -112,7 +112,6 @@ macro (ADD_H5_OUTPUT testname resultfile resultcode testfile) add_test ( NAME H5FC-${testname}-${testfile} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS=${ARGN};${testname}-tmp.h5" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}/testfiles" @@ -123,6 +122,7 @@ macro (ADD_H5_OUTPUT testname resultfile resultcode testfile) -P "${HDF_RESOURCES_DIR}/runTest.cmake" ) set_tests_properties (H5FC-${testname}-${testfile} PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" DEPENDS H5FC-${testname}-${testfile}-tmpfile ) if ("H5FC-${testname}-${testfile}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") @@ -133,7 +133,6 @@ macro (ADD_H5_OUTPUT testname resultfile resultcode testfile) add_test ( NAME H5FC-${testname}-${testfile}-NA COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS=${ARGN}" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}/testfiles" @@ -143,6 +142,7 @@ macro (ADD_H5_OUTPUT testname resultfile resultcode testfile) -P "${HDF_RESOURCES_DIR}/runTest.cmake" ) set_tests_properties (H5FC-${testname}-${testfile}-NA PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" DEPENDS H5FC-${testname}-${testfile}-tmpfile ) if ("H5FC-${testname}-${testfile}-NA" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") @@ -176,7 +176,6 @@ macro (ADD_H5_NOERR_OUTPUT testname resultfile resultcode testfile) add_test ( NAME H5FC-${testname}-${testfile} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS=${ARGN};${testname}-tmp.h5" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}/testfiles" @@ -186,6 +185,7 @@ macro (ADD_H5_NOERR_OUTPUT testname resultfile resultcode testfile) -P "${HDF_RESOURCES_DIR}/runTest.cmake" ) set_tests_properties (H5FC-${testname}-${testfile} PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" DEPENDS H5FC-${testname}-${testfile}-tmpfile ) if ("H5FC-${testname}-${testfile}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") @@ -218,7 +218,6 @@ macro (ADD_H5_MASK_OUTPUT testname resultfile resultcode result_errcheck testfil add_test ( NAME H5FC-${testname}-${testfile} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS=${ARGN};${testname}-tmp.h5" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}/testfiles" @@ -229,6 +228,7 @@ macro (ADD_H5_MASK_OUTPUT testname resultfile resultcode result_errcheck testfil -P "${HDF_RESOURCES_DIR}/runTest.cmake" ) set_tests_properties (H5FC-${testname}-${testfile} PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" DEPENDS H5FC-${testname}-${testfile}-tmpfile ) if ("H5FC-${testname}-${testfile}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") @@ -273,7 +273,6 @@ macro (ADD_H5_TEST testname resultcode testfile) add_test ( NAME H5FC-${testname} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS=${ARGN};./testfiles/${testname}-tmp.h5" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}" @@ -284,6 +283,7 @@ macro (ADD_H5_TEST testname resultcode testfile) ) set_tests_properties (H5FC-${testname} PROPERTIES DEPENDS "H5FC-${testname}-tmpfile" + ENVIRONMENT "${CROSSCOMPILING_PATH}" FIXTURES_REQUIRED clear_H5FC-${testname} ) if ("H5FC-${testname}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") @@ -297,10 +297,11 @@ macro (ADD_H5_CHECK_IDX dependtest testname) if (NOT HDF5_ENABLE_USING_MEMCHECKER) add_test ( NAME H5FC_CHECK_IDX-${dependtest}-${testname} - COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ ./testfiles/${dependtest}-tmp.h5 ${ARGN} + COMMAND $ ./testfiles/${dependtest}-tmp.h5 ${ARGN} ) set_tests_properties (H5FC_CHECK_IDX-${dependtest}-${testname} PROPERTIES DEPENDS "H5FC-${dependtest}" + ENVIRONMENT "${CROSSCOMPILING_PATH}" FIXTURES_REQUIRED clear_H5FC-${dependtest} ) if ("H5FC_CHECK_IDX-${dependtest}-${testname}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") @@ -327,7 +328,6 @@ macro (ADD_H5_TEST_CHECK_IDX testname resultcode testfile) add_test ( NAME H5FC_TEST_CHECK_IDX-${testname} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS=-d;${ARGN};./testfiles/${testname}-tmp.h5" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}" @@ -337,6 +337,7 @@ macro (ADD_H5_TEST_CHECK_IDX testname resultcode testfile) -P "${HDF_RESOURCES_DIR}/runTest.cmake" ) set_tests_properties (H5FC_TEST_CHECK_IDX-${testname} PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" DEPENDS "H5FC_TEST_CHECK_IDX-${testname}-tmpfile" ) if ("H5FC_TEST_CHECK_IDX-${testname}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") @@ -344,9 +345,10 @@ macro (ADD_H5_TEST_CHECK_IDX testname resultcode testfile) endif () add_test ( NAME H5FC_TEST_CHECK_IDX-${testname}-check - COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ ./testfiles/${testname}-tmp.h5 ${ARGN} + COMMAND $ ./testfiles/${testname}-tmp.h5 ${ARGN} ) set_tests_properties (H5FC_TEST_CHECK_IDX-${testname}-check PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" DEPENDS "H5FC_TEST_CHECK_IDX-${testname}" ) if ("H5FC_TEST_CHECK_IDX-${testname}-check" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") @@ -381,7 +383,6 @@ macro (ADD_H5_H5DUMP_CHECK testname) add_test ( NAME H5FC_H5DUMP_CHECK-${testname} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS=${ARGN};./testfiles/${testname}-tmp.h5" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}" @@ -391,6 +392,7 @@ macro (ADD_H5_H5DUMP_CHECK testname) -P "${HDF_RESOURCES_DIR}/runTest.cmake" ) set_tests_properties (H5FC_H5DUMP_CHECK-${testname} PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" DEPENDS "H5FC_H5DUMP_CHECK-${testname}-tmpfile" ) if ("H5FC_H5DUMP_CHECK-${testname}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") @@ -399,7 +401,6 @@ macro (ADD_H5_H5DUMP_CHECK testname) add_test ( NAME H5FC_H5DUMP_CHECK-${testname}-dump COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=-BH;${testname}-tmp.h5" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}/testfiles" @@ -409,6 +410,7 @@ macro (ADD_H5_H5DUMP_CHECK testname) -P "${HDF_RESOURCES_DIR}/runTest.cmake" ) set_tests_properties (H5FC_H5DUMP_CHECK-${testname}-dump PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" DEPENDS "H5FC_H5DUMP_CHECK-${testname}" ) if ("H5FC_H5DUMP_CHECK-${testname}-dump" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") diff --git a/tools/test/h5import/CMakeTests.cmake b/tools/test/h5import/CMakeTests.cmake index 05adefe4c1b..73f7b101c52 100644 --- a/tools/test/h5import/CMakeTests.cmake +++ b/tools/test/h5import/CMakeTests.cmake @@ -76,25 +76,25 @@ set (HDF5_TOOLS_TEST_FILES file (MAKE_DIRECTORY "${PROJECT_BINARY_DIR}/testfiles") foreach (conf_file ${HDF5_REFERENCE_CONF_FILES}) - HDFTEST_COPY_FILE("${HDF5_TOOLS_TST_DIR}/h5import/testfiles/${conf_file}" "${PROJECT_BINARY_DIR}/testfiles/${conf_file}" "h5import_files") + HDFTEST_COPY_FILE ("${HDF5_TOOLS_TST_DIR}/h5import/testfiles/${conf_file}" "${PROJECT_BINARY_DIR}/testfiles/${conf_file}" "h5import_files") endforeach () foreach (txt_file ${HDF5_REFERENCE_TXT_FILES}) - HDFTEST_COPY_FILE("${HDF5_TOOLS_TST_DIR}/h5import/testfiles/${txt_file}" "${PROJECT_BINARY_DIR}/testfiles/${txt_file}" "h5import_files") + HDFTEST_COPY_FILE ("${HDF5_TOOLS_TST_DIR}/h5import/testfiles/${txt_file}" "${PROJECT_BINARY_DIR}/testfiles/${txt_file}" "h5import_files") endforeach () foreach (txt_file ${HDF5_REFERENCE_DDL_FILES}) - HDFTEST_COPY_FILE("${HDF5_TOOLS_TST_DIR}/h5import/testfiles/${txt_file}" "${PROJECT_BINARY_DIR}/testfiles/${txt_file}" "h5import_files") + HDFTEST_COPY_FILE ("${HDF5_TOOLS_TST_DIR}/h5import/testfiles/${txt_file}" "${PROJECT_BINARY_DIR}/testfiles/${txt_file}" "h5import_files") endforeach () foreach (h5_file ${HDF5_REFERENCE_TEST_FILES}) - HDFTEST_COPY_FILE("${HDF5_TOOLS_TST_DIR}/testfiles/${h5_file}" "${PROJECT_BINARY_DIR}/testfiles/${h5_file}" "h5import_files") + HDFTEST_COPY_FILE ("${HDF5_TOOLS_TST_DIR}/testfiles/${h5_file}" "${PROJECT_BINARY_DIR}/testfiles/${h5_file}" "h5import_files") endforeach () foreach (h5_file ${HDF5_TOOLS_TEST_FILES}) - HDFTEST_COPY_FILE("${HDF5_TOOLS_TST_DIR}/testfiles/${h5_file}" "${PROJECT_BINARY_DIR}/testfiles/${h5_file}" "h5import_files") + HDFTEST_COPY_FILE ("${HDF5_TOOLS_TST_DIR}/testfiles/${h5_file}" "${PROJECT_BINARY_DIR}/testfiles/${h5_file}" "h5import_files") endforeach () -add_custom_target(h5import_files ALL COMMENT "Copying files needed by h5import tests" DEPENDS ${h5import_files_list}) +add_custom_target (h5import_files ALL COMMENT "Copying files needed by h5import tests" DEPENDS ${h5import_files_list}) ############################################################################## ############################################################################## @@ -113,8 +113,9 @@ macro (ADD_H5_TEST testname importfile conffile testfile) FIXTURES_REQUIRED set_h5importtest ) - add_test (NAME H5IMPORT-${testname} COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ ${importfile} -c ${conffile} -o ${testfile}) + add_test (NAME H5IMPORT-${testname} COMMAND $ ${importfile} -c ${conffile} -o ${testfile}) set_tests_properties (H5IMPORT-${testname} PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" DEPENDS H5IMPORT-${testname}-clear-objects FIXTURES_REQUIRED set_h5importtest ) @@ -126,7 +127,6 @@ macro (ADD_H5_TEST testname importfile conffile testfile) add_test ( NAME H5IMPORT-${testname}-H5DMP COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=${testfile}" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}" @@ -138,6 +138,7 @@ macro (ADD_H5_TEST testname importfile conffile testfile) -P "${HDF_RESOURCES_DIR}/runTest.cmake" ) set_tests_properties (H5IMPORT-${testname}-H5DMP PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" DEPENDS H5IMPORT-${testname} FIXTURES_REQUIRED set_h5importtest ) @@ -147,7 +148,6 @@ macro (ADD_H5_TEST testname importfile conffile testfile) add_test ( NAME H5IMPORT-${testname}-H5DMP_CMP COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=testfiles/${testfile}" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}" @@ -158,6 +158,7 @@ macro (ADD_H5_TEST testname importfile conffile testfile) -P "${HDF_RESOURCES_DIR}/runTest.cmake" ) set_tests_properties (H5IMPORT-${testname}-H5DMP_CMP PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" DEPENDS H5IMPORT-${testname}-H5DMP FIXTURES_REQUIRED set_h5importtest ) @@ -197,7 +198,6 @@ macro (ADD_H5_DUMPTEST testname datasetname testfile) add_test ( NAME H5IMPORT-DUMP-${testname}-H5DMP COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=-p;-d;${datasetname};-o;d${testfile}.bin;-b;NATIVE;testfiles/${testfile}" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}" @@ -211,7 +211,6 @@ macro (ADD_H5_DUMPTEST testname datasetname testfile) add_test ( NAME H5IMPORT-DUMP-${testname}-H5DMP COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=-p;-d;${datasetname};-o;d${testfile}.bin;-y;--width=1;testfiles/${testfile}" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}" @@ -223,6 +222,7 @@ macro (ADD_H5_DUMPTEST testname datasetname testfile) ) endif () set_tests_properties (H5IMPORT-DUMP-${testname}-H5DMP PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" DEPENDS "H5IMPORT-DUMP-${testname}-clear-objects" FIXTURES_REQUIRED set_h5importtest ) @@ -233,7 +233,6 @@ macro (ADD_H5_DUMPTEST testname datasetname testfile) add_test ( NAME H5IMPORT-DUMP-${testname} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=d${testfile}.bin;-c;d${testfile}.dmp;-o;d${testfile}" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}" @@ -243,6 +242,7 @@ macro (ADD_H5_DUMPTEST testname datasetname testfile) -P "${HDF_RESOURCES_DIR}/runTest.cmake" ) set_tests_properties (H5IMPORT-DUMP-${testname} PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" DEPENDS "H5IMPORT-DUMP-${testname}-H5DMP" FIXTURES_REQUIRED set_h5importtest ) @@ -253,7 +253,6 @@ macro (ADD_H5_DUMPTEST testname datasetname testfile) add_test ( NAME H5IMPORT-DUMP-${testname}-H5DFF COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=-r;d${testfile};testfiles/${testfile};${datasetname};${datasetname}" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}" @@ -264,6 +263,7 @@ macro (ADD_H5_DUMPTEST testname datasetname testfile) -P "${HDF_RESOURCES_DIR}/runTest.cmake" ) set_tests_properties (H5IMPORT-DUMP-${testname}-H5DFF PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" DEPENDS "H5IMPORT-DUMP-${testname}" FIXTURES_REQUIRED set_h5importtest ) @@ -302,7 +302,6 @@ macro (ADD_H5_DUMPSUBTEST testname testfile datasetname) add_test ( NAME H5IMPORT_SUB-DUMP-${testname}-H5DMP COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=-p;-d;${datasetname};${ARGN};-o;ds${testname}.bin;-b;NATIVE;testfiles/${testfile}" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}" @@ -313,6 +312,7 @@ macro (ADD_H5_DUMPSUBTEST testname testfile datasetname) -P "${HDF_RESOURCES_DIR}/runTest.cmake" ) set_tests_properties (H5IMPORT_SUB-DUMP-${testname}-H5DMP PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" DEPENDS "H5IMPORT_SUB-DUMP-${testname}-clear-objects" FIXTURES_REQUIRED set_h5importtest ) @@ -323,7 +323,6 @@ macro (ADD_H5_DUMPSUBTEST testname testfile datasetname) add_test ( NAME H5IMPORT_SUB-DUMP-${testname}-H5IMP COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=ds${testname}.bin;-c;ds${testname}.dmp;-o;ds${testname}.h5" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}" @@ -333,6 +332,7 @@ macro (ADD_H5_DUMPSUBTEST testname testfile datasetname) -P "${HDF_RESOURCES_DIR}/runTest.cmake" ) set_tests_properties (H5IMPORT_SUB-DUMP-${testname}-H5IMP PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" DEPENDS "H5IMPORT_SUB-DUMP-${testname}-H5DMP" FIXTURES_REQUIRED set_h5importtest ) @@ -342,7 +342,6 @@ macro (ADD_H5_DUMPSUBTEST testname testfile datasetname) add_test ( NAME H5IMPORT_SUB-DUMP-${testname}-CMP COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=-p;ds${testname}.h5" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}" @@ -352,6 +351,7 @@ macro (ADD_H5_DUMPSUBTEST testname testfile datasetname) -P "${HDF_RESOURCES_DIR}/runTest.cmake" ) set_tests_properties (H5IMPORT_SUB-DUMP-${testname}-CMP PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" DEPENDS "H5IMPORT_SUB-DUMP-${testname}-H5IMP" FIXTURES_REQUIRED set_h5importtest ) @@ -499,8 +499,9 @@ add_test ( COMMAND ${CMAKE_COMMAND} -E remove ${H5IMPORTTEST_CLEANFILES} ) -add_test (NAME H5IMPORT-h5importtest COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $) +add_test (NAME H5IMPORT-h5importtest COMMAND $) set_tests_properties (H5IMPORT-h5importtest PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" FIXTURES_SETUP set_h5importtest DEPENDS H5IMPORT-h5importtest-clear-objects ) diff --git a/tools/test/h5jam/CMakeTests.cmake b/tools/test/h5jam/CMakeTests.cmake index 3abb2d1f5aa..5acee7b5615 100644 --- a/tools/test/h5jam/CMakeTests.cmake +++ b/tools/test/h5jam/CMakeTests.cmake @@ -33,13 +33,13 @@ set (HDF5_REFERENCE_TEST_FILES file (MAKE_DIRECTORY "${PROJECT_BINARY_DIR}/testfiles") foreach (h5_file ${HDF5_REFERENCE_TEST_FILES}) - HDFTEST_COPY_FILE("${HDF5_TOOLS_TST_DIR}/testfiles/${h5_file}" "${PROJECT_BINARY_DIR}/testfiles/${h5_file}" "h5jam_files") + HDFTEST_COPY_FILE ("${HDF5_TOOLS_TST_DIR}/testfiles/${h5_file}" "${PROJECT_BINARY_DIR}/testfiles/${h5_file}" "h5jam_files") endforeach () foreach (txt_file ${HDF5_REFERENCE_TXT_FILES}) - HDFTEST_COPY_FILE("${HDF5_TOOLS_TST_DIR}/h5jam/expected/${txt_file}" "${PROJECT_BINARY_DIR}/testfiles/${txt_file}" "h5jam_files") + HDFTEST_COPY_FILE ("${HDF5_TOOLS_TST_DIR}/h5jam/expected/${txt_file}" "${PROJECT_BINARY_DIR}/testfiles/${txt_file}" "h5jam_files") endforeach () -add_custom_target(h5jam_files ALL COMMENT "Copying files needed by h5jam tests" DEPENDS ${h5jam_files_list}) +add_custom_target (h5jam_files ALL COMMENT "Copying files needed by h5jam tests" DEPENDS ${h5jam_files_list}) ############################################################################## ############################################################################## @@ -54,7 +54,7 @@ add_custom_target(h5jam_files ALL COMMENT "Copying files needed by h5jam tests" macro (TEST_H5JAM_OUTPUT expectfile resultcode) # If using memchecker add tests without using scripts if (HDF5_ENABLE_USING_MEMCHECKER) - add_test (NAME H5JAM-${expectfile} COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ ${ARGN}) + add_test (NAME H5JAM-${expectfile} COMMAND $ ${ARGN}) if (${resultcode}) set_tests_properties (H5JAM-${expectfile} PROPERTIES WILL_FAIL "true") endif () @@ -62,7 +62,6 @@ macro (TEST_H5JAM_OUTPUT expectfile resultcode) add_test ( NAME H5JAM-${expectfile} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=${ARGN}" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}" @@ -74,6 +73,9 @@ macro (TEST_H5JAM_OUTPUT expectfile resultcode) -P "${HDF_RESOURCES_DIR}/runTest.cmake" ) endif () + set_tests_properties (H5JAM-${expectfile} PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" + ) if ("H5JAM-${expectfile}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") set_tests_properties (H5JAM-${expectfile} PROPERTIES DISABLED true) endif () @@ -86,7 +88,7 @@ endmacro () macro (TEST_H5UNJAM_OUTPUT expectfile resultcode) # If using memchecker add tests without using scripts if (HDF5_ENABLE_USING_MEMCHECKER) - add_test (NAME H5JAM-UNJAM-${expectfile} COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ ${ARGN}) + add_test (NAME H5JAM-UNJAM-${expectfile} COMMAND $ ${ARGN}) if (${resultcode}) set_tests_properties (H5JAM-UNJAM-${expectfile} PROPERTIES WILL_FAIL "true") endif () @@ -94,7 +96,6 @@ macro (TEST_H5UNJAM_OUTPUT expectfile resultcode) add_test ( NAME H5JAM-UNJAM-${expectfile} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS=${ARGN}" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}" @@ -104,6 +105,9 @@ macro (TEST_H5UNJAM_OUTPUT expectfile resultcode) -P "${HDF_RESOURCES_DIR}/runTest.cmake" ) endif () + set_tests_properties (H5JAM-UNJAM-${expectfile} PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" + ) if ("H5JAM-UNJAM-${expectfile}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") set_tests_properties (H5JAM-UNJAM-${expectfile} PROPERTIES DISABLED true) endif () @@ -115,7 +119,6 @@ macro (CHECKFILE testname testdepends expected actual) add_test ( NAME H5JAM-${testname}-CHECKFILE-H5DMP COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=testfiles/${expected}" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}" @@ -128,11 +131,13 @@ macro (CHECKFILE testname testdepends expected actual) if ("H5JAM-${testname}-CHECKFILE-H5DMP" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") set_tests_properties (H5JAM-${testname}-CHECKFILE-H5DMP PROPERTIES DISABLED true) endif () - set_tests_properties (H5JAM-${testname}-CHECKFILE-H5DMP PROPERTIES DEPENDS ${testdepends}) + set_tests_properties (H5JAM-${testname}-CHECKFILE-H5DMP PROPERTIES + DEPENDS ${testdepends} + ENVIRONMENT "${CROSSCOMPILING_PATH}" + ) add_test ( NAME H5JAM-${testname}-CHECKFILE-H5DMP_CMP COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=${actual}" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}" @@ -145,7 +150,10 @@ macro (CHECKFILE testname testdepends expected actual) if ("H5JAM-${testname}-CHECKFILE-H5DMP_CMP" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") set_tests_properties (H5JAM-${testname}-CHECKFILE-H5DMP_CMP PROPERTIES DISABLED true) endif () - set_tests_properties (H5JAM-${testname}-CHECKFILE-H5DMP_CMP PROPERTIES DEPENDS H5JAM-${testname}-CHECKFILE-H5DMP) + set_tests_properties (H5JAM-${testname}-CHECKFILE-H5DMP_CMP PROPERTIES + DEPENDS H5JAM-${testname}-CHECKFILE-H5DMP + ENVIRONMENT "${CROSSCOMPILING_PATH}" + ) endif () endmacro() @@ -171,15 +179,17 @@ macro (UNJAMTEST testname setfile infile ufile chkfile outfile) COMMAND ${CMAKE_COMMAND} -E remove ${ufile} ) set_tests_properties (H5JAM-${testname}-UNJAM_D-clear-objects PROPERTIES DEPENDS H5JAM-${testname}-UNJAM-clear-objects) - add_test (NAME H5JAM-${testname}-UNJAM COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ -i ${infile} -u ${ufile} -o ${outfile}) - set_tests_properties (H5JAM-${testname}-UNJAM PROPERTIES DEPENDS H5JAM-${testname}-UNJAM_D-clear-objects) + add_test (NAME H5JAM-${testname}-UNJAM COMMAND $ -i ${infile} -u ${ufile} -o ${outfile}) + set_tests_properties (H5JAM-${testname}-UNJAM PROPERTIES + DEPENDS H5JAM-${testname}-UNJAM_D-clear-objects + ENVIRONMENT "${CROSSCOMPILING_PATH}" + ) set (compare_test ${ufile}) else () if (NOT "${ARGN}" STREQUAL "--delete") add_test ( NAME H5JAM-${testname}-UNJAM COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=-i;${infile};-o;${outfile}" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}" @@ -188,11 +198,17 @@ macro (UNJAMTEST testname setfile infile ufile chkfile outfile) -D "TEST_SKIP_COMPARE=TRUE" -P "${HDF_RESOURCES_DIR}/runTest.cmake" ) - set_tests_properties (H5JAM-${testname}-UNJAM PROPERTIES DEPENDS H5JAM-${testname}-UNJAM-clear-objects) + set_tests_properties (H5JAM-${testname}-UNJAM PROPERTIES + DEPENDS H5JAM-${testname}-UNJAM-clear-objects + ENVIRONMENT "${CROSSCOMPILING_PATH}" + ) set (compare_test "${outfile}.ufile.txt") else () - add_test (NAME H5JAM-${testname}-UNJAM COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ -i ${infile} -o ${outfile}) - set_tests_properties (H5JAM-${testname}-UNJAM PROPERTIES DEPENDS H5JAM-${testname}-UNJAM-clear-objects) + add_test (NAME H5JAM-${testname}-UNJAM COMMAND $ -i ${infile} -o ${outfile}) + set_tests_properties (H5JAM-${testname}-UNJAM PROPERTIES + DEPENDS H5JAM-${testname}-UNJAM-clear-objects + ENVIRONMENT "${CROSSCOMPILING_PATH}" + ) set (compare_test "") endif () endif () @@ -211,7 +227,6 @@ macro (UNJAMTEST testname setfile infile ufile chkfile outfile) add_test ( NAME H5JAM-${testname}-UNJAM-CHECK_UB_1 COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_GET_PROGRAM=$" -D "TEST_CHECKUB=YES" @@ -222,7 +237,10 @@ macro (UNJAMTEST testname setfile infile ufile chkfile outfile) -D "TEST_OFILE=" -P "${HDF_RESOURCES_DIR}/userblockTest.cmake" ) - set_tests_properties (H5JAM-${testname}-UNJAM-CHECK_UB_1 PROPERTIES DEPENDS H5JAM-${testname}-UNJAM-CHECK_UB_1-clear-objects) + set_tests_properties (H5JAM-${testname}-UNJAM-CHECK_UB_1 PROPERTIES + DEPENDS H5JAM-${testname}-UNJAM-CHECK_UB_1-clear-objects + ENVIRONMENT "${CROSSCOMPILING_PATH}" + ) if ("H5JAM-${testname}-UNJAM-CHECK_UB_1" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") set_tests_properties (H5JAM-${testname}-UNJAM-CHECK_UB_1 PROPERTIES DISABLED true) endif () @@ -231,7 +249,6 @@ macro (UNJAMTEST testname setfile infile ufile chkfile outfile) add_test ( NAME H5JAM-${testname}-UNJAM-CHECK_NOUB COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_GET_PROGRAM=$" -D "TEST_CHECKUB=NO" @@ -242,6 +259,9 @@ macro (UNJAMTEST testname setfile infile ufile chkfile outfile) -D "TEST_OFILE=NULL" -P "${HDF_RESOURCES_DIR}/userblockTest.cmake" ) + set_tests_properties (H5JAM-${testname}-UNJAM-CHECK_NOUB PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" + ) if (${compare_test}) set_tests_properties (H5JAM-${testname}-UNJAM-CHECK_NOUB PROPERTIES DEPENDS H5JAM-${testname}-UNJAM-CHECK_UB_1) else () @@ -262,7 +282,10 @@ macro (JAMTEST testname jamfile infile chkfile outfile) COMMAND ${CMAKE_COMMAND} -E remove ${outfile} ${infile}.cpy.h5 ) endif () - add_test (NAME H5JAM-${testname} COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ -u testfiles/${jamfile} -i testfiles/${infile} -o ${outfile} ${ARGN}) + add_test (NAME H5JAM-${testname} COMMAND $ -u testfiles/${jamfile} -i testfiles/${infile} -o ${outfile} ${ARGN}) + set_tests_properties (H5JAM-${testname} PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" + ) if ("H5JAM-${testname}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") set_tests_properties (H5JAM-${testname} PROPERTIES DISABLED true) endif () @@ -285,7 +308,6 @@ macro (JAMTEST testname jamfile infile chkfile outfile) add_test ( NAME H5JAM-${testname}-CHECK_UB_1 COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_GET_PROGRAM=$" -D "TEST_CHECKUB=YES" @@ -296,7 +318,10 @@ macro (JAMTEST testname jamfile infile chkfile outfile) -D "TEST_OFILE=${compare_orig}" -P "${HDF_RESOURCES_DIR}/userblockTest.cmake" ) - set_tests_properties (H5JAM-${testname}-CHECK_UB_1 PROPERTIES DEPENDS H5JAM-${testname}-CHECK_UB_1-clear-objects) + set_tests_properties (H5JAM-${testname}-CHECK_UB_1 PROPERTIES + DEPENDS H5JAM-${testname}-CHECK_UB_1-clear-objects + ENVIRONMENT "${CROSSCOMPILING_PATH}" + ) if ("H5JAM-${testname}-CHECK_UB_1" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") set_tests_properties (H5JAM-${testname}-CHECK_UB_1 PROPERTIES DISABLED true) endif () @@ -326,8 +351,11 @@ macro (JAMTEST_NONE testname jamfile infile setfile chkfile) set_tests_properties (H5JAM-${testname}_NONE_COPY PROPERTIES DISABLED true) endif () - add_test (NAME H5JAM-${testname}_NONE COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ -u testfiles/${jamfile} -i ${chkfile} ${ARGN}) - set_tests_properties (H5JAM-${testname}_NONE PROPERTIES DEPENDS H5JAM-${testname}_NONE_COPY) + add_test (NAME H5JAM-${testname}_NONE COMMAND $ -u testfiles/${jamfile} -i ${chkfile} ${ARGN}) + set_tests_properties (H5JAM-${testname}_NONE PROPERTIES + DEPENDS H5JAM-${testname}_NONE_COPY + ENVIRONMENT "${CROSSCOMPILING_PATH}" + ) if ("H5JAM-${testname}_NONE" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") set_tests_properties (H5JAM-${testname}_NONE PROPERTIES DISABLED true) endif () @@ -349,7 +377,6 @@ macro (JAMTEST_NONE testname jamfile infile setfile chkfile) add_test ( NAME H5JAM-${testname}_NONE-CHECK_UB_1 COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_GET_PROGRAM=$" -D "TEST_CHECKUB=YES" @@ -360,7 +387,10 @@ macro (JAMTEST_NONE testname jamfile infile setfile chkfile) -D "TEST_OFILE=${compare_orig}" -P "${HDF_RESOURCES_DIR}/userblockTest.cmake" ) - set_tests_properties (H5JAM-${testname}_NONE-CHECK_UB_1 PROPERTIES DEPENDS H5JAM-${testname}_NONE-CHECK_UB_1-clear-objects) + set_tests_properties (H5JAM-${testname}_NONE-CHECK_UB_1 PROPERTIES + DEPENDS H5JAM-${testname}_NONE-CHECK_UB_1-clear-objects + ENVIRONMENT "${CROSSCOMPILING_PATH}" + ) if ("H5JAM-${testname}_NONE-CHECK_UB_1" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") set_tests_properties (H5JAM-${testname}_NONE-CHECK_UB_1 PROPERTIES DISABLED true) endif () diff --git a/tools/test/h5ls/CMakeTests.cmake b/tools/test/h5ls/CMakeTests.cmake index c9e4bd81c29..3e4fe938169 100644 --- a/tools/test/h5ls/CMakeTests.cmake +++ b/tools/test/h5ls/CMakeTests.cmake @@ -138,18 +138,18 @@ file (MAKE_DIRECTORY "${PROJECT_BINARY_DIR}/S3TEST/testfiles") # copy the list of test files foreach (listlsfiles ${LIST_HDF5_TESTLS_FILES}) - HDFTEST_COPY_FILE("${HDF5_TOOLS_TST_DIR}/testfiles/${listlsfiles}" "${PROJECT_BINARY_DIR}/testfiles/${listlsfiles}" "h5ls_files") + HDFTEST_COPY_FILE ("${HDF5_TOOLS_TST_DIR}/testfiles/${listlsfiles}" "${PROJECT_BINARY_DIR}/testfiles/${listlsfiles}" "h5ls_files") endforeach () foreach (listfiles ${LIST_HDF5_TEST_FILES}) - HDFTEST_COPY_FILE("${HDF5_TOOLS_TST_DIR}/testfiles/${listfiles}" "${PROJECT_BINARY_DIR}/testfiles/${listfiles}" "h5ls_files") + HDFTEST_COPY_FILE ("${HDF5_TOOLS_TST_DIR}/testfiles/${listfiles}" "${PROJECT_BINARY_DIR}/testfiles/${listfiles}" "h5ls_files") endforeach () foreach (listothers ${LIST_OTHER_TEST_FILES}) - HDFTEST_COPY_FILE("${HDF5_TOOLS_TST_DIR}/h5ls/expected/${listothers}" "${PROJECT_BINARY_DIR}/testfiles/${listothers}" "h5ls_files") + HDFTEST_COPY_FILE ("${HDF5_TOOLS_TST_DIR}/h5ls/expected/${listothers}" "${PROJECT_BINARY_DIR}/testfiles/${listothers}" "h5ls_files") endforeach () foreach (lists3file ${H5LS_S3PROXY_TEST_FILES}) - HDFTEST_COPY_FILE("${HDF5_TOOLS_TST_DIR}/testfiles/${lists3file}" "${PROJECT_BINARY_DIR}/S3TEST/testfiles/${lists3file}" "h5ls_files") + HDFTEST_COPY_FILE ("${HDF5_TOOLS_TST_DIR}/testfiles/${lists3file}" "${PROJECT_BINARY_DIR}/S3TEST/testfiles/${lists3file}" "h5ls_files") endforeach () -add_custom_target(h5ls_files ALL COMMENT "Copying files needed by h5ls tests" DEPENDS ${h5ls_files_list}) +add_custom_target (h5ls_files ALL COMMENT "Copying files needed by h5ls tests" DEPENDS ${h5ls_files_list}) ############################################################################## @@ -161,10 +161,7 @@ add_custom_target(h5ls_files ALL COMMENT "Copying files needed by h5ls tests" DE macro (ADD_H5_TEST resultfile resultcode) # If using memchecker add tests without using scripts if (HDF5_ENABLE_USING_MEMCHECKER) - add_test (NAME H5LS-${resultfile} COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ ${ARGN}) - set_tests_properties (H5LS-${resultfile} PROPERTIES - WORKING_DIRECTORY "${PROJECT_BINARY_DIR}/testfiles" - ) + add_test (NAME H5LS-${resultfile} COMMAND $ ${ARGN}) if ("${resultcode}" STREQUAL "1") set_tests_properties (H5LS-${resultfile} PROPERTIES WILL_FAIL "true") endif () @@ -173,7 +170,6 @@ macro (ADD_H5_TEST resultfile resultcode) add_test ( NAME H5LS-${resultfile} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS=${ARGN}" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}/testfiles" @@ -184,6 +180,7 @@ macro (ADD_H5_TEST resultfile resultcode) ) endif () set_tests_properties (H5LS-${resultfile} PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" WORKING_DIRECTORY "${PROJECT_BINARY_DIR}/testfiles" ) if ("H5LS-${resultfile}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") @@ -194,8 +191,7 @@ endmacro () macro (ADD_H5_ERR_TEST resultfile resultcode result_errcheck) # If using memchecker add tests without using scripts if (HDF5_ENABLE_USING_MEMCHECKER) - add_test (NAME H5LS-${resultfile} COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ ${ARGN}) - set_tests_properties (H5LS-${resultfile} PROPERTIES WORKING_DIRECTORY "${PROJECT_BINARY_DIR}/testfiles") + add_test (NAME H5LS-${resultfile} COMMAND $ ${ARGN}) if ("${resultcode}" STREQUAL "1") set_tests_properties (H5LS-${resultfile} PROPERTIES WILL_FAIL "true") endif () @@ -203,7 +199,6 @@ macro (ADD_H5_ERR_TEST resultfile resultcode result_errcheck) add_test ( NAME H5LS-${resultfile} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS=${ARGN}" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}/testfiles" @@ -216,6 +211,7 @@ macro (ADD_H5_ERR_TEST resultfile resultcode result_errcheck) ) endif () set_tests_properties (H5LS-${resultfile} PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" WORKING_DIRECTORY "${PROJECT_BINARY_DIR}/testfiles" ) if ("H5LS-${resultfile}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") @@ -228,7 +224,6 @@ macro (ADD_H5_UD_TEST testname resultcode resultfile) add_test ( NAME H5LS_UD-${testname}-${resultfile} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS=${ARGN}" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}/testfiles" @@ -241,6 +236,7 @@ macro (ADD_H5_UD_TEST testname resultcode resultfile) -P "${HDF_RESOURCES_DIR}/runTest.cmake" ) set_tests_properties (H5LS_UD-${testname}-${resultfile} PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" WORKING_DIRECTORY "${PROJECT_BINARY_DIR}/testfiles" ) if ("H5LS_UD-${testname}-${resultfile}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") @@ -252,10 +248,7 @@ endmacro () macro (ADD_H5_S3TEST resultfile resultcode credtype urlscheme urlpath) # If using memchecker add tests without using scripts if (HDF5_ENABLE_USING_MEMCHECKER) - add_test (NAME H5LS_S3TEST-${resultfile}_${urlscheme}_${credtype} COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ ${ARGN}) - set_tests_properties (H5LS-${resultfile}_${urlscheme}_${credtype} PROPERTIES - WORKING_DIRECTORY "${PROJECT_BINARY_DIR}/S3TEST" - ) + add_test (NAME H5LS_S3TEST-${resultfile}_${urlscheme}_${credtype} COMMAND $ ${ARGN}) if ("${resultcode}" STREQUAL "1") set_tests_properties (H5LS_S3TEST-${resultfile}_${urlscheme}_${credtype} PROPERTIES WILL_FAIL "true") endif () @@ -263,7 +256,6 @@ macro (ADD_H5_S3TEST resultfile resultcode credtype urlscheme urlpath) add_test ( NAME H5LS_S3TEST-${resultfile}_${urlscheme}_${credtype} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS=--enable-error-stack;${ARGN};${urlscheme}://${urlpath}/${resultfile}.h5" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}/S3TEST" @@ -277,7 +269,7 @@ macro (ADD_H5_S3TEST resultfile resultcode credtype urlscheme urlpath) endif () set_tests_properties (H5LS_S3TEST-${resultfile}_${urlscheme}_${credtype} PROPERTIES FIXTURES_REQUIRED h5ls_s3_proxy - ENVIRONMENT "${h5ls_s3tests_env}" + ENVIRONMENT "${h5ls_s3tests_env};${CROSSCOMPILING_PATH}" WORKING_DIRECTORY ${PROJECT_BINARY_DIR}/S3TEST ) if ("H5LS_S3TEST-${resultfile}_${urlscheme}_${credtype}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") diff --git a/tools/test/h5ls/CMakeTestsVDS.cmake b/tools/test/h5ls/CMakeTestsVDS.cmake index 095a3b21975..d149889642c 100644 --- a/tools/test/h5ls/CMakeTestsVDS.cmake +++ b/tools/test/h5ls/CMakeTestsVDS.cmake @@ -58,22 +58,22 @@ file (MAKE_DIRECTORY "${PROJECT_BINARY_DIR}/testfiles") # copy the list of test files foreach (listfiles ${LIST_HDF5_TEST_FILES}) - HDFTEST_COPY_FILE("${HDF5_TOOLS_TST_DIR}/testfiles/vds/${listfiles}" "${PROJECT_BINARY_DIR}/testfiles/vds/${listfiles}" "h5ls_vds_files") + HDFTEST_COPY_FILE ("${HDF5_TOOLS_TST_DIR}/testfiles/vds/${listfiles}" "${PROJECT_BINARY_DIR}/testfiles/vds/${listfiles}" "h5ls_vds_files") endforeach () foreach (listothers ${LIST_OTHER_TEST_FILES}) - HDFTEST_COPY_FILE("${HDF5_TOOLS_TST_DIR}/h5ls/expected/vds/${listothers}" "${PROJECT_BINARY_DIR}/testfiles/vds/${listothers}" "h5ls_vds_files") + HDFTEST_COPY_FILE ("${HDF5_TOOLS_TST_DIR}/h5ls/expected/vds/${listothers}" "${PROJECT_BINARY_DIR}/testfiles/vds/${listothers}" "h5ls_vds_files") endforeach () foreach (listfiles ${LIST_HDF5_TEST_FILES}) - HDFTEST_COPY_FILE("${HDF5_TOOLS_TST_DIR}/testfiles/vds/${listfiles}" "${PROJECT_BINARY_DIR}/testfiles/vds/prefix/${listfiles}" "h5ls_vds_files") + HDFTEST_COPY_FILE ("${HDF5_TOOLS_TST_DIR}/testfiles/vds/${listfiles}" "${PROJECT_BINARY_DIR}/testfiles/vds/prefix/${listfiles}" "h5ls_vds_files") endforeach () foreach (listothers ${LIST_OTHER_TEST_FILES}) - HDFTEST_COPY_FILE("${HDF5_TOOLS_TST_DIR}/h5ls/vds_prefix/${listothers}" "${PROJECT_BINARY_DIR}/testfiles/vds/prefix/${listothers}" "h5ls_vds_files") + HDFTEST_COPY_FILE ("${HDF5_TOOLS_TST_DIR}/h5ls/vds_prefix/${listothers}" "${PROJECT_BINARY_DIR}/testfiles/vds/prefix/${listothers}" "h5ls_vds_files") endforeach () -add_custom_target(h5ls_vds_files ALL COMMENT "Copying files needed by h5ls_vds tests" DEPENDS ${h5ls_vds_files_list}) +add_custom_target (h5ls_vds_files ALL COMMENT "Copying files needed by h5ls_vds tests" DEPENDS ${h5ls_vds_files_list}) ############################################################################## ############################################################################## @@ -84,8 +84,7 @@ add_custom_target(h5ls_vds_files ALL COMMENT "Copying files needed by h5ls_vds t macro (ADD_H5_VDS_TEST resultfile resultcode) # If using memchecker add tests without using scripts if (HDF5_ENABLE_USING_MEMCHECKER) - add_test (NAME H5LS-${resultfile} COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ ${ARGN}) - set_tests_properties (H5LS-${resultfile} PROPERTIES WORKING_DIRECTORY "${PROJECT_BINARY_DIR}/testfiles/vds") + add_test (NAME H5LS-${resultfile} COMMAND $ ${ARGN}) if ("${resultcode}" STREQUAL "1") set_tests_properties (H5LS-${resultfile} PROPERTIES WILL_FAIL "true") endif () @@ -93,7 +92,6 @@ macro (ADD_H5_VDS_TEST resultfile resultcode) add_test ( NAME H5LS-${resultfile} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS=${ARGN}" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}/testfiles/vds" @@ -103,6 +101,10 @@ macro (ADD_H5_VDS_TEST resultfile resultcode) -P "${HDF_RESOURCES_DIR}/runTest.cmake" ) endif () + set_tests_properties (H5LS-${resultfile} PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" + WORKING_DIRECTORY "${PROJECT_BINARY_DIR}/testfiles/vds" + ) if ("H5LS-${resultfile}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") set_tests_properties (H5LS-${resultfile} PROPERTIES DISABLED true) endif () @@ -111,9 +113,9 @@ endmacro () macro (ADD_H5_VDS_PREFIX_TEST resultfile resultcode) # If using memchecker add tests without using scripts if (HDF5_ENABLE_USING_MEMCHECKER) - add_test (NAME H5LS_PREFIX-${resultfile} COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ ${ARGN}) + add_test (NAME H5LS_PREFIX-${resultfile} COMMAND $ ${ARGN}) set_tests_properties (H5LS_PREFIX-${resultfile} PROPERTIES - ENVIRONMENT "HDF5_VDS_PREFIX=\${ORIGIN}" + ENVIRONMENT "HDF5_VDS_PREFIX=\${ORIGIN};${CROSSCOMPILING_PATH}" WORKING_DIRECTORY "${PROJECT_BINARY_DIR}/testfiles" ) if ("${resultcode}" STREQUAL "1") @@ -123,7 +125,6 @@ macro (ADD_H5_VDS_PREFIX_TEST resultfile resultcode) add_test ( NAME H5LS_PREFIX-${resultfile} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS=${ARGN}" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}/testfiles" @@ -135,6 +136,10 @@ macro (ADD_H5_VDS_PREFIX_TEST resultfile resultcode) -P "${HDF_RESOURCES_DIR}/runTest.cmake" ) endif () + set_tests_properties (H5LS_PREFIX-${resultfile} PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" + WORKING_DIRECTORY "${PROJECT_BINARY_DIR}/testfiles" + ) if ("H5LS_PREFIX-${resultfile}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") set_tests_properties (H5LS_PREFIX-${resultfile} PROPERTIES DISABLED true) endif () diff --git a/tools/test/h5repack/CMakeTests.cmake b/tools/test/h5repack/CMakeTests.cmake index 4c3eb43a6ae..5dbdf89c67e 100644 --- a/tools/test/h5repack/CMakeTests.cmake +++ b/tools/test/h5repack/CMakeTests.cmake @@ -211,41 +211,41 @@ set (LIST_DDL_TEST_FILES ) foreach (h5_file ${LIST_REPACK_HDF5_TEST_FILES}) - HDFTEST_COPY_FILE("${HDF5_TOOLS_TST_DIR}/testfiles/${h5_file}" "${PROJECT_BINARY_DIR}/testfiles/${h5_file}" "h5repack_files") + HDFTEST_COPY_FILE ("${HDF5_TOOLS_TST_DIR}/testfiles/${h5_file}" "${PROJECT_BINARY_DIR}/testfiles/${h5_file}" "h5repack_files") endforeach () foreach(h5_file ${LIST_REPACK_TEST_FILES}) - HDFTEST_COPY_FILE("${HDF5_TOOLS_TST_DIR}/h5repack/testfiles/${h5_file}" "${PROJECT_BINARY_DIR}/testfiles/${h5_file}" "h5repack_files") + HDFTEST_COPY_FILE ("${HDF5_TOOLS_TST_DIR}/h5repack/testfiles/${h5_file}" "${PROJECT_BINARY_DIR}/testfiles/${h5_file}" "h5repack_files") endforeach () foreach (h5_file ${LIST_COPY_TEST_FILES}) - HDFTEST_COPY_FILE("${HDF5_TOOLS_TST_DIR}/testfiles/${h5_file}" "${PROJECT_BINARY_DIR}/testfiles/${h5_file}" "h5repack_files") + HDFTEST_COPY_FILE ("${HDF5_TOOLS_TST_DIR}/testfiles/${h5_file}" "${PROJECT_BINARY_DIR}/testfiles/${h5_file}" "h5repack_files") endforeach () foreach (h5_file ${LIST_DIFF_TEST_FILES}) - HDFTEST_COPY_FILE("${HDF5_TOOLS_TST_DIR}/testfiles/${h5_file}" "${PROJECT_BINARY_DIR}/testfiles/${h5_file}" "h5repack_files") + HDFTEST_COPY_FILE ("${HDF5_TOOLS_TST_DIR}/testfiles/${h5_file}" "${PROJECT_BINARY_DIR}/testfiles/${h5_file}" "h5repack_files") endforeach () foreach (h5_file ${LIST_VDS_TEST_FILES}) - HDFTEST_COPY_FILE("${HDF5_TOOLS_TST_DIR}/testfiles/vds/${h5_file}" "${PROJECT_BINARY_DIR}/testfiles/${h5_file}" "h5repack_files") + HDFTEST_COPY_FILE ("${HDF5_TOOLS_TST_DIR}/testfiles/vds/${h5_file}" "${PROJECT_BINARY_DIR}/testfiles/${h5_file}" "h5repack_files") endforeach () foreach (h5_file ${LIST_HDF5_TEST_FILES}) - HDFTEST_COPY_FILE("${HDF5_TOOLS_TST_DIR}/testfiles/${h5_file}" "${PROJECT_BINARY_DIR}/testfiles/${h5_file}" "h5repack_files") + HDFTEST_COPY_FILE ("${HDF5_TOOLS_TST_DIR}/testfiles/${h5_file}" "${PROJECT_BINARY_DIR}/testfiles/${h5_file}" "h5repack_files") endforeach () foreach (h5_file ${LIST_OTHER_TEST_FILES}) - HDFTEST_COPY_FILE("${HDF5_TOOLS_TST_DIR}/h5repack/testfiles/${h5_file}" "${PROJECT_BINARY_DIR}/testfiles/${h5_file}" "h5repack_files") + HDFTEST_COPY_FILE ("${HDF5_TOOLS_TST_DIR}/h5repack/testfiles/${h5_file}" "${PROJECT_BINARY_DIR}/testfiles/${h5_file}" "h5repack_files") endforeach () foreach (h5_file ${LIST_TST_TEST_FILES}) - HDFTEST_COPY_FILE("${HDF5_TOOLS_TST_DIR}/h5repack/expected/${h5_file}" "${PROJECT_BINARY_DIR}/testfiles/${h5_file}" "h5repack_files") + HDFTEST_COPY_FILE ("${HDF5_TOOLS_TST_DIR}/h5repack/expected/${h5_file}" "${PROJECT_BINARY_DIR}/testfiles/${h5_file}" "h5repack_files") endforeach () foreach (h5_file ${LIST_DDL_TEST_FILES}) - HDFTEST_COPY_FILE("${HDF5_TOOLS_TST_DIR}/h5repack/expected/${h5_file}" "${PROJECT_BINARY_DIR}/testfiles/${h5_file}" "h5repack_files") + HDFTEST_COPY_FILE ("${HDF5_TOOLS_TST_DIR}/h5repack/expected/${h5_file}" "${PROJECT_BINARY_DIR}/testfiles/${h5_file}" "h5repack_files") endforeach () -add_custom_target(h5repack_files ALL COMMENT "Copying files needed by h5repack tests" DEPENDS ${h5repack_files_list}) +add_custom_target (h5repack_files ALL COMMENT "Copying files needed by h5repack tests" DEPENDS ${h5repack_files_list}) ############################################################################## ############################################################################## @@ -256,12 +256,11 @@ add_custom_target(h5repack_files ALL COMMENT "Copying files needed by h5repack t macro (ADD_HELP_TEST testname resultcode) # If using memchecker add tests without using scripts if (HDF5_ENABLE_USING_MEMCHECKER) - add_test (NAME H5REPACK-h5repack-${testname} COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ ${ARGN}) + add_test (NAME H5REPACK-h5repack-${testname} COMMAND $ ${ARGN}) else () add_test ( NAME H5REPACK-h5repack-${testname} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=${ARGN}" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}/testfiles" @@ -272,6 +271,7 @@ macro (ADD_HELP_TEST testname resultcode) ) endif () set_tests_properties (H5REPACK-h5repack-${testname} PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" WORKING_DIRECTORY "${PROJECT_BINARY_DIR}/testfiles" ) if ("H5REPACK-h5repack-${testname}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") @@ -294,9 +294,10 @@ macro (ADD_H5_TEST_OLD testname testtype testfile) ) add_test ( NAME H5REPACK_OLD-${testname} - COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ ${ARGN} -i ${PROJECT_BINARY_DIR}/testfiles/${testfile} -o ${PROJECT_BINARY_DIR}/testfiles/out-${testname}.${testfile} + COMMAND $ ${ARGN} -i ${PROJECT_BINARY_DIR}/testfiles/${testfile} -o ${PROJECT_BINARY_DIR}/testfiles/out-${testname}.${testfile} ) set_tests_properties (H5REPACK_OLD-${testname} PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" DEPENDS H5REPACK_OLD-${testname}-clear-objects ) if ("H5REPACK_OLD-${testname}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") @@ -304,9 +305,10 @@ macro (ADD_H5_TEST_OLD testname testtype testfile) endif () add_test ( NAME H5REPACK_OLD-${testname}_DFF - COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ ${PROJECT_BINARY_DIR}/testfiles/${testfile} ${PROJECT_BINARY_DIR}/testfiles/out-${testname}.${testfile} + COMMAND $ ${PROJECT_BINARY_DIR}/testfiles/${testfile} ${PROJECT_BINARY_DIR}/testfiles/out-${testname}.${testfile} ) set_tests_properties (H5REPACK_OLD-${testname}_DFF PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" DEPENDS H5REPACK_OLD-${testname} ) if ("H5REPACK_OLD-${testname}_DFF" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") @@ -339,9 +341,10 @@ macro (ADD_H5_TEST testname testtype testfile) ) add_test ( NAME H5REPACK-${testname} - COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ --enable-error-stack ${ARGN} ${PROJECT_BINARY_DIR}/testfiles/${testfile} ${PROJECT_BINARY_DIR}/testfiles/out-${testname}.${testfile} + COMMAND $ --enable-error-stack ${ARGN} ${PROJECT_BINARY_DIR}/testfiles/${testfile} ${PROJECT_BINARY_DIR}/testfiles/out-${testname}.${testfile} ) set_tests_properties (H5REPACK-${testname} PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" DEPENDS H5REPACK-${testname}-clear-objects ) if ("H5REPACK-${testname}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") @@ -349,9 +352,10 @@ macro (ADD_H5_TEST testname testtype testfile) endif () add_test ( NAME H5REPACK-${testname}_DFF - COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ --enable-error-stack ${PROJECT_BINARY_DIR}/testfiles/${testfile} ${PROJECT_BINARY_DIR}/testfiles/out-${testname}.${testfile} + COMMAND $ --enable-error-stack ${PROJECT_BINARY_DIR}/testfiles/${testfile} ${PROJECT_BINARY_DIR}/testfiles/out-${testname}.${testfile} ) set_tests_properties (H5REPACK-${testname}_DFF PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" DEPENDS H5REPACK-${testname} ) if ("H5REPACK-${testname}_DFF" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") @@ -385,16 +389,16 @@ macro (ADD_H5_FILTER_TEST testname testfilter replacefilter testtype resultcode if (HDF5_ENABLE_USING_MEMCHECKER) add_test ( NAME H5REPACK_CMP-${testname} - COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ ${ARGN} ${PROJECT_BINARY_DIR}/testfiles/${resultfile} ${PROJECT_BINARY_DIR}/testfiles/out-${testname}.${resultfile} + COMMAND $ ${ARGN} ${PROJECT_BINARY_DIR}/testfiles/${resultfile} ${PROJECT_BINARY_DIR}/testfiles/out-${testname}.${resultfile} ) set_tests_properties (H5REPACK_CMP-${testname} PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" DEPENDS H5REPACK_CMP-${testname}-clear-objects ) else () add_test ( NAME H5REPACK_CMP-${testname} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=${ARGN};${resultfile};out-${testname}.${resultfile}" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}/testfiles" @@ -406,6 +410,7 @@ macro (ADD_H5_FILTER_TEST testname testfilter replacefilter testtype resultcode -P "${HDF_RESOURCES_DIR}/runTest.cmake" ) set_tests_properties (H5REPACK_CMP-${testname} PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" DEPENDS H5REPACK_CMP-${testname}-clear-objects ) if ("H5REPACK_CMP-${testname}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") @@ -440,13 +445,12 @@ macro (ADD_H5_MASK_TEST testname testtype resultcode result_errcheck resultfile) if (HDF5_ENABLE_USING_MEMCHECKER) add_test ( NAME H5REPACK_MASK-${testname} - COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ ${ARGN} ${PROJECT_BINARY_DIR}/testfiles/${resultfile} ${PROJECT_BINARY_DIR}/testfiles/out-${testname}.${resultfile} + COMMAND $ ${ARGN} ${PROJECT_BINARY_DIR}/testfiles/${resultfile} ${PROJECT_BINARY_DIR}/testfiles/out-${testname}.${resultfile} ) else () add_test ( NAME H5REPACK_MASK-${testname} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=${ARGN};${resultfile};out-${testname}.${resultfile}" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}/testfiles" @@ -459,6 +463,7 @@ macro (ADD_H5_MASK_TEST testname testtype resultcode result_errcheck resultfile) ) endif () set_tests_properties (H5REPACK_MASK-${testname} PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" DEPENDS H5REPACK_MASK-${testname}-clear-objects ) if ("H5REPACK_MASK-${testname}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") @@ -490,9 +495,10 @@ macro (ADD_H5_DMP_TEST testname testtype resultcode resultfile) ) add_test ( NAME H5REPACK_DMP-${testname} - COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ ${ARGN} ${PROJECT_BINARY_DIR}/testfiles/${resultfile} ${PROJECT_BINARY_DIR}/testfiles/out-${testname}.${resultfile} + COMMAND $ ${ARGN} ${PROJECT_BINARY_DIR}/testfiles/${resultfile} ${PROJECT_BINARY_DIR}/testfiles/out-${testname}.${resultfile} ) set_tests_properties (H5REPACK_DMP-${testname} PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" DEPENDS H5REPACK_DMP-${testname}-clear-objects ) if ("H5REPACK_DMP-${testname}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") @@ -502,7 +508,6 @@ macro (ADD_H5_DMP_TEST testname testtype resultcode resultfile) add_test ( NAME H5REPACK_DMP-h5dump-${testname} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=-q;creation_order;-pH;out-${testname}.${resultfile}" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}/testfiles" @@ -512,6 +517,7 @@ macro (ADD_H5_DMP_TEST testname testtype resultcode resultfile) -P "${HDF_RESOURCES_DIR}/runTest.cmake" ) set_tests_properties (H5REPACK_DMP-h5dump-${testname} PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" DEPENDS H5REPACK_DMP-${testname} ) if ("H5REPACK_DMP-h5dump-${testname}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") @@ -552,9 +558,10 @@ macro (ADD_H5_DMP_MASK testname testtype resultcode resultfile) ) add_test ( NAME H5REPACK_DMP-${testname} - COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ ${ARGN} ${PROJECT_BINARY_DIR}/testfiles/${resultfile} ${PROJECT_BINARY_DIR}/testfiles/out-${testname}.${resultfile} + COMMAND $ ${ARGN} ${PROJECT_BINARY_DIR}/testfiles/${resultfile} ${PROJECT_BINARY_DIR}/testfiles/out-${testname}.${resultfile} ) set_tests_properties (H5REPACK_DMP-${testname} PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" DEPENDS H5REPACK_DMP-${testname}-clear-objects ) if ("H5REPACK_DMP-${testname}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") @@ -564,7 +571,6 @@ macro (ADD_H5_DMP_MASK testname testtype resultcode resultfile) add_test ( NAME H5REPACK_DMP-h5dump-${testname} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=-q;creation_order;-pH;out-${testname}.${resultfile}" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}/testfiles" @@ -576,6 +582,7 @@ macro (ADD_H5_DMP_MASK testname testtype resultcode resultfile) -P "${HDF_RESOURCES_DIR}/runTest.cmake" ) set_tests_properties (H5REPACK_DMP-h5dump-${testname} PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" DEPENDS H5REPACK_DMP-${testname} ) if ("H5REPACK_DMP-h5dump-${testname}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") @@ -619,9 +626,10 @@ macro (ADD_H5_DMP_NO_OPT_TEST testname testtype resultcode resultfile) ) add_test ( NAME H5REPACK_DMP-${testname} - COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ ${ARGN} ${PROJECT_BINARY_DIR}/testfiles/${resultfile} ${PROJECT_BINARY_DIR}/testfiles/out-${testname}.${resultfile} + COMMAND $ ${ARGN} ${PROJECT_BINARY_DIR}/testfiles/${resultfile} ${PROJECT_BINARY_DIR}/testfiles/out-${testname}.${resultfile} ) set_tests_properties (H5REPACK_DMP-${testname} PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" DEPENDS H5REPACK_DMP-${testname}-clear-objects ) if ("H5REPACK_DMP-${testname}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") @@ -631,7 +639,6 @@ macro (ADD_H5_DMP_NO_OPT_TEST testname testtype resultcode resultfile) add_test ( NAME H5REPACK_DMP-h5dump-${testname} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=out-${testname}.${resultfile}" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}/testfiles" @@ -641,6 +648,7 @@ macro (ADD_H5_DMP_NO_OPT_TEST testname testtype resultcode resultfile) -P "${HDF_RESOURCES_DIR}/runTest.cmake" ) set_tests_properties (H5REPACK_DMP-h5dump-${testname} PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" DEPENDS "H5REPACK_DMP-${testname}" ) if ("H5REPACK_DMP-h5dump-${testname}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") @@ -666,9 +674,10 @@ macro (ADD_H5_DIFF_TEST testname testtype resultcode testfile) ) add_test ( NAME H5REPACK_DIFF-${testname} - COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ --enable-error-stack ${ARGN} ${PROJECT_BINARY_DIR}/testfiles/${testfile} ${PROJECT_BINARY_DIR}/testfiles/out-${testname}.${testfile} + COMMAND $ --enable-error-stack ${ARGN} ${PROJECT_BINARY_DIR}/testfiles/${testfile} ${PROJECT_BINARY_DIR}/testfiles/out-${testname}.${testfile} ) set_tests_properties (H5REPACK_DIFF-${testname} PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" DEPENDS H5REPACK_DIFF-${testname}-clear-objects ) if ("H5REPACK_DIFF-${testname}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") @@ -677,7 +686,6 @@ macro (ADD_H5_DIFF_TEST testname testtype resultcode testfile) add_test ( NAME H5REPACK_DIFF-${testname}_DFF COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=-v;--enable-error-stack;${testfile};out-${testname}.${testfile}" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}/testfiles" @@ -687,6 +695,7 @@ macro (ADD_H5_DIFF_TEST testname testtype resultcode testfile) -P "${HDF_RESOURCES_DIR}/runTest.cmake" ) set_tests_properties (H5REPACK_DIFF-${testname}_DFF PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" DEPENDS H5REPACK_DIFF-${testname} ) if ("H5REPACK_DIFF-${testname}_DFF" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") @@ -718,9 +727,10 @@ macro (ADD_H5_STAT_TEST testname testtype resultcode statarg resultfile) ) add_test ( NAME H5REPACK_STAT-${testname} - COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ ${ARGN} ${PROJECT_BINARY_DIR}/testfiles/${resultfile} ${PROJECT_BINARY_DIR}/testfiles/out-${statarg}.${resultfile} + COMMAND $ ${ARGN} ${PROJECT_BINARY_DIR}/testfiles/${resultfile} ${PROJECT_BINARY_DIR}/testfiles/out-${statarg}.${resultfile} ) set_tests_properties (H5REPACK_STAT-${testname} PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" DEPENDS H5REPACK_STAT-${testname}-clear-objects ) if ("H5REPACK_STAT-${testname}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") @@ -730,7 +740,6 @@ macro (ADD_H5_STAT_TEST testname testtype resultcode statarg resultfile) add_test ( NAME H5REPACK_STAT-h5stat-${testname} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=-S;-s;out-${statarg}.${resultfile}" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}/testfiles" @@ -740,6 +749,7 @@ macro (ADD_H5_STAT_TEST testname testtype resultcode statarg resultfile) -P "${HDF_RESOURCES_DIR}/runTest.cmake" ) set_tests_properties (H5REPACK_STAT-h5stat-${testname} PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" DEPENDS H5REPACK_STAT-${testname} ) if ("H5REPACK_STAT-h5stat-${testname}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") @@ -781,9 +791,10 @@ macro (ADD_H5_VERIFY_TEST testname testtype resultcode testfile testdset testfil ) add_test ( NAME H5REPACK_VERIFY_LAYOUT-${testname} - COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ ${ARGN} ${PROJECT_BINARY_DIR}/testfiles/${testfile} ${PROJECT_BINARY_DIR}/testfiles/out-${testname}.${testfile} + COMMAND $ ${ARGN} ${PROJECT_BINARY_DIR}/testfiles/${testfile} ${PROJECT_BINARY_DIR}/testfiles/out-${testname}.${testfile} ) set_tests_properties (H5REPACK_VERIFY_LAYOUT-${testname} PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" DEPENDS H5REPACK_VERIFY_LAYOUT-${testname}-clear-objects ) if ("H5REPACK_VERIFY_LAYOUT-${testname}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") @@ -791,9 +802,10 @@ macro (ADD_H5_VERIFY_TEST testname testtype resultcode testfile testdset testfil endif () add_test ( NAME H5REPACK_VERIFY_LAYOUT-${testname}_DFF - COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ ${PROJECT_BINARY_DIR}/testfiles/${testfile} ${PROJECT_BINARY_DIR}/testfiles/out-${testname}.${testfile} + COMMAND $ ${PROJECT_BINARY_DIR}/testfiles/${testfile} ${PROJECT_BINARY_DIR}/testfiles/out-${testname}.${testfile} ) set_tests_properties (H5REPACK_VERIFY_LAYOUT-${testname}_DFF PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" DEPENDS H5REPACK_VERIFY_LAYOUT-${testname} ) if ("H5REPACK_VERIFY_LAYOUT-${testname}_DFF" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") @@ -803,7 +815,6 @@ macro (ADD_H5_VERIFY_TEST testname testtype resultcode testfile testdset testfil add_test ( NAME H5REPACK_VERIFY_LAYOUT-${testname}_DMP COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=-d;${testdset};-pH;out-${testname}.${testfile}" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}/testfiles" @@ -816,6 +827,7 @@ macro (ADD_H5_VERIFY_TEST testname testtype resultcode testfile testdset testfil -P "${HDF_RESOURCES_DIR}/runTest.cmake" ) set_tests_properties (H5REPACK_VERIFY_LAYOUT-${testname}_DMP PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" DEPENDS H5REPACK_VERIFY_LAYOUT-${testname}_DFF ) else () @@ -831,7 +843,6 @@ macro (ADD_H5_VERIFY_TEST testname testtype resultcode testfile testdset testfil add_test ( NAME H5REPACK_VERIFY_LAYOUT-${testname}_DMP COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=-pH;out-${testname}.${testfile}" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}/testfiles" @@ -845,6 +856,7 @@ macro (ADD_H5_VERIFY_TEST testname testtype resultcode testfile testdset testfil -P "${HDF_RESOURCES_DIR}/runTest.cmake" ) set_tests_properties (H5REPACK_VERIFY_LAYOUT-${testname}_DMP PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" DEPENDS H5REPACK_VERIFY_LAYOUT-${testname}_DFF ) endif () @@ -880,9 +892,10 @@ macro (ADD_H5_VERIFY_VDS testname testtype resultcode testfile testdset testfilt ) add_test ( NAME H5REPACK_VERIFY_LAYOUT_VDS-${testname} - COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ ${ARGN} ${PROJECT_BINARY_DIR}/testfiles/${testfile} ${PROJECT_BINARY_DIR}/testfiles/out-${testname}.${testfile} + COMMAND $ ${ARGN} ${PROJECT_BINARY_DIR}/testfiles/${testfile} ${PROJECT_BINARY_DIR}/testfiles/out-${testname}.${testfile} ) set_tests_properties (H5REPACK_VERIFY_LAYOUT_VDS-${testname} PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" WORKING_DIRECTORY "${PROJECT_BINARY_DIR}/testfiles" DEPENDS H5REPACK_VERIFY_LAYOUT_VDS-${testname}-clear-objects ) @@ -891,9 +904,7 @@ macro (ADD_H5_VERIFY_VDS testname testtype resultcode testfile testdset testfilt endif () add_test ( NAME H5REPACK_VERIFY_LAYOUT_VDS-${testname}_DMP - COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" - -D "TEST_PROGRAM=$" + COMMAND "${CMAKE_COMMAND}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=-d;${testdset};-p;out-${testname}.${testfile}" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}/testfiles" -D "TEST_OUTPUT=${testfile}-${testname}-v.out" @@ -902,6 +913,7 @@ macro (ADD_H5_VERIFY_VDS testname testtype resultcode testfile testdset testfilt -P "${HDF_RESOURCES_DIR}/runTest.cmake" ) set_tests_properties (H5REPACK_VERIFY_LAYOUT_VDS-${testname}_DMP PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" WORKING_DIRECTORY "${PROJECT_BINARY_DIR}/testfiles" DEPENDS H5REPACK_VERIFY_LAYOUT_VDS-${testname} ) @@ -928,9 +940,10 @@ macro (ADD_H5_VERIFY_SUPERBLOCK testname testfile lowbound highbound superblock) ) add_test ( NAME H5REPACK_VERIFY_SUPERBLOCK-${testname} - COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ -j;${lowbound};-k;${highbound} ${PROJECT_BINARY_DIR}/testfiles/${testfile} ${PROJECT_BINARY_DIR}/testfiles/out-${testname}.${testfile} + COMMAND $ -j;${lowbound};-k;${highbound} ${PROJECT_BINARY_DIR}/testfiles/${testfile} ${PROJECT_BINARY_DIR}/testfiles/out-${testname}.${testfile} ) set_tests_properties (H5REPACK_VERIFY_SUPERBLOCK-${testname} PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" DEPENDS H5REPACK_VERIFY_SUPERBLOCK-${testname}-clear-objects ) if ("H5REPACK_VERIFY_SUPERBLOCK-${testname}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") @@ -939,7 +952,6 @@ macro (ADD_H5_VERIFY_SUPERBLOCK testname testfile lowbound highbound superblock) add_test ( NAME H5REPACK_VERIFY_SUPERBLOCK-${testname}_DMP COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=-H;-B;out-${testname}.${testfile}" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}/testfiles" @@ -952,6 +964,7 @@ macro (ADD_H5_VERIFY_SUPERBLOCK testname testfile lowbound highbound superblock) -P "${HDF_RESOURCES_DIR}/runTest.cmake" ) set_tests_properties (H5REPACK_VERIFY_SUPERBLOCK-${testname}_DMP PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" DEPENDS H5REPACK_VERIFY_SUPERBLOCK-${testname} ) if ("H5REPACK_VERIFY_SUPERBLOCK-${testname}_DMP" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") @@ -974,9 +987,10 @@ macro (ADD_H5_VERIFY_INVALIDBOUNDS testname resultcode lowbound highbound) ) add_test ( NAME ADD_H5_VERIFY_INVALIDBOUNDS-h5repack-${testname} - COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ -j;${lowbound};-k;${highbound} ${PROJECT_BINARY_DIR}/testfiles/${testfile} ${PROJECT_BINARY_DIR}/testfiles/out-${testname}.${testfile} + COMMAND $ -j;${lowbound};-k;${highbound} ${PROJECT_BINARY_DIR}/testfiles/${testfile} ${PROJECT_BINARY_DIR}/testfiles/out-${testname}.${testfile} ) set_tests_properties (ADD_H5_VERIFY_INVALIDBOUNDS-h5repack-${testname} PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" DEPENDS ADD_H5_VERIFY_INVALIDBOUNDS-h5repack-${testname}-clear-objects WILL_FAIL "true" ) @@ -1000,9 +1014,10 @@ macro (ADD_H5_VERIFY_USERBLOCK testname userblocksize testfile) ) add_test ( NAME H5REPACK_VERIFY_USERBLOCK-${testname} - COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ --enable-error-stack ${ARGN} ${PROJECT_BINARY_DIR}/testfiles/${testfile} ${PROJECT_BINARY_DIR}/testfiles/out-${testname}.${testfile} + COMMAND $ --enable-error-stack ${ARGN} ${PROJECT_BINARY_DIR}/testfiles/${testfile} ${PROJECT_BINARY_DIR}/testfiles/out-${testname}.${testfile} ) set_tests_properties (H5REPACK_VERIFY_USERBLOCK-${testname} PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" DEPENDS H5REPACK_VERIFY_USERBLOCK-${testname}-clear-objects ) if ("H5REPACK_VERIFY_USERBLOCK-${testname}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") @@ -1011,7 +1026,6 @@ macro (ADD_H5_VERIFY_USERBLOCK testname userblocksize testfile) add_test ( NAME H5REPACK_VERIFY_USERBLOCK-${testname}_DMP COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=-H;-B;out-${testname}.${testfile}" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}/testfiles" @@ -1024,6 +1038,7 @@ macro (ADD_H5_VERIFY_USERBLOCK testname userblocksize testfile) -P "${HDF_RESOURCES_DIR}/runTest.cmake" ) set_tests_properties (H5REPACK_VERIFY_USERBLOCK-${testname}_DMP PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" DEPENDS H5REPACK_VERIFY_USERBLOCK-${testname} ) if ("H5REPACK_VERIFY_USERBLOCK-${testname}_DMP" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") @@ -1049,9 +1064,10 @@ macro (ADD_H5_TEST_META testname testfile) ) add_test ( NAME H5REPACK_META-${testname}_N - COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ ${PROJECT_BINARY_DIR}/testfiles/${testfile} ${PROJECT_BINARY_DIR}/testfiles/out-${testname}_N.${testname}.h5 + COMMAND $ ${PROJECT_BINARY_DIR}/testfiles/${testfile} ${PROJECT_BINARY_DIR}/testfiles/out-${testname}_N.${testname}.h5 ) set_tests_properties (H5REPACK_META-${testname}_N PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" DEPENDS H5REPACK_META-${testname}-clear-objects ) if ("H5REPACK_META-${testname}_N" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") @@ -1060,7 +1076,6 @@ macro (ADD_H5_TEST_META testname testfile) add_test ( NAME H5REPACK_META-${testname}_N_DFF COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=-v;${testfile};out-${testname}_N.${testname}.h5" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}/testfiles" @@ -1070,6 +1085,7 @@ macro (ADD_H5_TEST_META testname testfile) -P "${HDF_RESOURCES_DIR}/runTest.cmake" ) set_tests_properties (H5REPACK_META-${testname}_N_DFF PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" DEPENDS H5REPACK_META-${testname}_N ) if ("H5REPACK_META-${testname}_N_DFF" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") @@ -1077,9 +1093,10 @@ macro (ADD_H5_TEST_META testname testfile) endif () add_test ( NAME H5REPACK_META-${testname}_M - COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ ${ARGN} ${PROJECT_BINARY_DIR}/testfiles/${testfile} ${PROJECT_BINARY_DIR}/testfiles/out-${testname}_M.${testname}.h5 + COMMAND $ ${ARGN} ${PROJECT_BINARY_DIR}/testfiles/${testfile} ${PROJECT_BINARY_DIR}/testfiles/out-${testname}_M.${testname}.h5 ) set_tests_properties (H5REPACK_META-${testname}_M PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" DEPENDS H5REPACK_META-${testname}_N_DFF ) if ("H5REPACK_META-${testname}_M" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") @@ -1088,7 +1105,6 @@ macro (ADD_H5_TEST_META testname testfile) add_test ( NAME H5REPACK_META-${testname}_M_DFF COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=-v;${testfile};out-${testname}_M.${testname}.h5" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}/testfiles" @@ -1098,6 +1114,7 @@ macro (ADD_H5_TEST_META testname testfile) -P "${HDF_RESOURCES_DIR}/runTest.cmake" ) set_tests_properties (H5REPACK_META-${testname}_M_DFF PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" DEPENDS H5REPACK_META-${testname}_M ) if ("H5REPACK_META-${testname}_M_DFF" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") @@ -1138,7 +1155,6 @@ macro (ADD_H5_UD_TEST testname resultcode resultfile) add_test ( NAME H5REPACK_UD-${testname} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=${ARGN};${resultfile};out-${testname}.${resultfile}" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}/testfiles" @@ -1152,6 +1168,7 @@ macro (ADD_H5_UD_TEST testname resultcode resultfile) -P "${HDF_RESOURCES_DIR}/runTest.cmake" ) set_tests_properties (H5REPACK_UD-${testname} PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" DEPENDS H5REPACK_UD-${testname}-clear-objects ) if ("H5REPACK_UD-${testname}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") @@ -1161,7 +1178,6 @@ macro (ADD_H5_UD_TEST testname resultcode resultfile) add_test ( NAME H5REPACK_UD-${testname}-h5dump COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=-pH;out-${testname}.${resultfile}" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}/testfiles" @@ -1174,6 +1190,7 @@ macro (ADD_H5_UD_TEST testname resultcode resultfile) -P "${HDF_RESOURCES_DIR}/runTest.cmake" ) set_tests_properties (H5REPACK_UD-${testname}-h5dump PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" DEPENDS H5REPACK_UD-${testname} ) if ("H5REPACK_UD-${testname}-h5dump" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") @@ -1234,9 +1251,10 @@ macro (ADD_H5_EXTERNAL_TEST testname testtype testfile) # comparison of known files add_test ( NAME H5REPACK_EXTERNAL-${testname}_DFF1 - COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ --enable-error-stack ${PROJECT_BINARY_DIR}/testfiles/h5repack_${testfile}.h5 ${PROJECT_BINARY_DIR}/testfiles/h5repack_${testfile}_ex.h5 + COMMAND $ --enable-error-stack ${PROJECT_BINARY_DIR}/testfiles/h5repack_${testfile}.h5 ${PROJECT_BINARY_DIR}/testfiles/h5repack_${testfile}_ex.h5 ) set_tests_properties (H5REPACK_EXTERNAL-${testname}_DFF1 PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" WORKING_DIRECTORY "${PROJECT_BINARY_DIR}/testfiles" DEPENDS H5REPACK_EXTERNAL-${testname}_CPY ) @@ -1246,9 +1264,10 @@ macro (ADD_H5_EXTERNAL_TEST testname testtype testfile) # repack the external file to the repacked file add_test ( NAME H5REPACK_EXTERNAL-${testname} - COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ --enable-error-stack ${ARGN} ${PROJECT_BINARY_DIR}/testfiles/h5repack_${testfile}_ex.h5 ${PROJECT_BINARY_DIR}/testfiles/h5repack_${testfile}_rp.h5 + COMMAND $ --enable-error-stack ${ARGN} ${PROJECT_BINARY_DIR}/testfiles/h5repack_${testfile}_ex.h5 ${PROJECT_BINARY_DIR}/testfiles/h5repack_${testfile}_rp.h5 ) set_tests_properties (H5REPACK_EXTERNAL-${testname} PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" WORKING_DIRECTORY "${PROJECT_BINARY_DIR}/testfiles" DEPENDS H5REPACK_EXTERNAL-${testname}_DFF1 ) @@ -1258,9 +1277,10 @@ macro (ADD_H5_EXTERNAL_TEST testname testtype testfile) # comparison of repacked file to known files add_test ( NAME H5REPACK_EXTERNAL-${testname}_DFF2 - COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ --enable-error-stack ${PROJECT_BINARY_DIR}/testfiles/h5repack_${testfile}_rp.h5 ${PROJECT_BINARY_DIR}/testfiles/h5repack_${testfile}.h5 + COMMAND $ --enable-error-stack ${PROJECT_BINARY_DIR}/testfiles/h5repack_${testfile}_rp.h5 ${PROJECT_BINARY_DIR}/testfiles/h5repack_${testfile}.h5 ) set_tests_properties (H5REPACK_EXTERNAL-${testname}_DFF2 PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" WORKING_DIRECTORY "${PROJECT_BINARY_DIR}/testfiles" DEPENDS H5REPACK_EXTERNAL-${testname} ) @@ -1269,9 +1289,10 @@ macro (ADD_H5_EXTERNAL_TEST testname testtype testfile) endif () add_test ( NAME H5REPACK_EXTERNAL-${testname}_DFF3 - COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ --enable-error-stack ${PROJECT_BINARY_DIR}/testfiles/h5repack_${testfile}_rp.h5 ${PROJECT_BINARY_DIR}/testfiles/h5repack_${testfile}_ex.h5 + COMMAND $ --enable-error-stack ${PROJECT_BINARY_DIR}/testfiles/h5repack_${testfile}_rp.h5 ${PROJECT_BINARY_DIR}/testfiles/h5repack_${testfile}_ex.h5 ) set_tests_properties (H5REPACK_EXTERNAL-${testname}_DFF3 PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" WORKING_DIRECTORY "${PROJECT_BINARY_DIR}/testfiles" DEPENDS H5REPACK_EXTERNAL-${testname}_DFF2 ) @@ -1293,9 +1314,10 @@ macro (ADD_H5_EXTERNAL_TEST testname testtype testfile) # verify comparison of repacked file to known file add_test ( NAME H5REPACK_EXTERNAL-${testname}_DFF4 - COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ --enable-error-stack ${PROJECT_BINARY_DIR}/testfiles/h5repack_${testfile}_rp.h5 ${PROJECT_BINARY_DIR}/testfiles/h5repack_${testfile}.h5 + COMMAND $ --enable-error-stack ${PROJECT_BINARY_DIR}/testfiles/h5repack_${testfile}_rp.h5 ${PROJECT_BINARY_DIR}/testfiles/h5repack_${testfile}.h5 ) set_tests_properties (H5REPACK_EXTERNAL-${testname}_DFF4 PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" WORKING_DIRECTORY "${PROJECT_BINARY_DIR}/testfiles" DEPENDS H5REPACK_EXTERNAL-${testname}_DATA_RMV ) @@ -1305,9 +1327,10 @@ macro (ADD_H5_EXTERNAL_TEST testname testtype testfile) # verify comparison of repacked file to known external file fails add_test ( NAME H5REPACK_EXTERNAL-${testname}_DFF_FAIL - COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ --enable-error-stack ${PROJECT_BINARY_DIR}/testfiles/h5repack_${testfile}_rp.h5 ${PROJECT_BINARY_DIR}/testfiles/h5repack_${testfile}_ex.h5 + COMMAND $ --enable-error-stack ${PROJECT_BINARY_DIR}/testfiles/h5repack_${testfile}_rp.h5 ${PROJECT_BINARY_DIR}/testfiles/h5repack_${testfile}_ex.h5 ) set_tests_properties (H5REPACK_EXTERNAL-${testname}_DFF_FAIL PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" WORKING_DIRECTORY "${PROJECT_BINARY_DIR}/testfiles" DEPENDS H5REPACK_EXTERNAL-${testname}_DFF4 WILL_FAIL "true" @@ -1367,7 +1390,7 @@ set (FILEV5 5_vds.h5) ADD_HELP_TEST(help 0 -h) -add_test (NAME H5REPACK-testh5repack_detect_szip COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $) +add_test (NAME H5REPACK-testh5repack_detect_szip COMMAND $) if (HDF5_ENABLE_SZIP_SUPPORT) if (HDF5_ENABLE_SZIP_ENCODING) set (passRegex "yes") @@ -1380,11 +1403,17 @@ else () set (passRegex "no") set_tests_properties (H5REPACK-testh5repack_detect_szip PROPERTIES PASS_REGULAR_EXPRESSION "no") endif () -set_tests_properties (H5REPACK-testh5repack_detect_szip PROPERTIES DEPENDS H5REPACK-h5repack-${testname}) +set_tests_properties (H5REPACK-testh5repack_detect_szip PROPERTIES + DEPENDS H5REPACK-h5repack-${testname} + ENVIRONMENT "${CROSSCOMPILING_PATH}" +) set (last_test "H5REPACK-testh5repack_detect_szip") -# add_test (NAME H5REPACK-h5repacktest COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $) -# set_tests_properties (H5REPACK-h5repacktest PROPERTIES DEPENDS H5REPACK-testh5repack_detect_szip) +# add_test (NAME H5REPACK-h5repacktest COMMAND $) +# set_tests_properties (H5REPACK-h5repacktest PROPERTIES +# DEPENDS H5REPACK-testh5repack_detect_szip +# ENVIRONMENT "${CROSSCOMPILING_PATH}" +# ) # set (last_test "H5REPACK-h5repacktest") # # The tests @@ -1830,16 +1859,22 @@ ADD_H5_TEST (HDFFV-7840 "TEST" h5diff_attr1.h5) set (arg --low=1 --high=2 -f GZIP=8 -l dset1:CHUNK=5x6) add_test ( NAME H5REPACK-HDFFV-10590 - COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ ${arg} ${PROJECT_BINARY_DIR}/testfiles/h5repack_CVE-2018-17432.h5 ${PROJECT_BINARY_DIR}/testfiles/out-HDFFV-10590.h5repack_CVE-2018-17432.h5 + COMMAND $ ${arg} ${PROJECT_BINARY_DIR}/testfiles/h5repack_CVE-2018-17432.h5 ${PROJECT_BINARY_DIR}/testfiles/out-HDFFV-10590.h5repack_CVE-2018-17432.h5 +) +set_tests_properties (H5REPACK-HDFFV-10590 PROPERTIES + WILL_FAIL "true" + ENVIRONMENT "${CROSSCOMPILING_PATH}" ) -set_tests_properties (H5REPACK-HDFFV-10590 PROPERTIES WILL_FAIL "true") # test CVE-2018-14460 fix add_test ( NAME H5REPACK-HDFFV-11223 - COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ ${PROJECT_BINARY_DIR}/testfiles/h5repack_CVE-2018-14460.h5 ${PROJECT_BINARY_DIR}/testfiles/out-HDFFV-11223.h5repack_CVE-2018-14460.h5 + COMMAND $ ${PROJECT_BINARY_DIR}/testfiles/h5repack_CVE-2018-14460.h5 ${PROJECT_BINARY_DIR}/testfiles/out-HDFFV-11223.h5repack_CVE-2018-14460.h5 +) +set_tests_properties (H5REPACK-HDFFV-11223 PROPERTIES + WILL_FAIL "true" + ENVIRONMENT "${CROSSCOMPILING_PATH}" ) -set_tests_properties (H5REPACK-HDFFV-11223 PROPERTIES WILL_FAIL "true") # tests for metadata block size option ('-M') ADD_H5_TEST_META (meta_short h5repack_layout.h5 -M 8192) diff --git a/tools/test/h5repack/CMakeVFDTests.cmake b/tools/test/h5repack/CMakeVFDTests.cmake index 350ad30e243..9ace47720cd 100644 --- a/tools/test/h5repack/CMakeVFDTests.cmake +++ b/tools/test/h5repack/CMakeVFDTests.cmake @@ -70,7 +70,6 @@ macro (ADD_VFD_TEST vfdname resultcode) add_test ( NAME H5REPACK_VFD-${vfdname}-h5repacktest COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=" -D "TEST_VFD:STRING=${vfdname}" @@ -80,6 +79,7 @@ macro (ADD_VFD_TEST vfdname resultcode) -P "${HDF_RESOURCES_DIR}/vfdTest.cmake" ) set_tests_properties (H5REPACK_VFD-${vfdname}-h5repacktest PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" DEPENDS H5REPACK_VFD-${vfdname}-h5repacktest-clear-objects TIMEOUT ${CTEST_SHORT_TIMEOUT} ) diff --git a/tools/test/h5stat/CMakeTests.cmake b/tools/test/h5stat/CMakeTests.cmake index 949e639be34..6227a3abf33 100644 --- a/tools/test/h5stat/CMakeTests.cmake +++ b/tools/test/h5stat/CMakeTests.cmake @@ -72,15 +72,15 @@ file (MAKE_DIRECTORY "${PROJECT_BINARY_DIR}/S3TEST") file (MAKE_DIRECTORY "${PROJECT_BINARY_DIR}/S3TEST/testfiles") foreach (ddl_file ${HDF5_REFERENCE_FILES}) - HDFTEST_COPY_FILE("${PROJECT_SOURCE_DIR}/expected/${ddl_file}.ddl" "${PROJECT_BINARY_DIR}/${ddl_file}.ddl" "h5stat_files") + HDFTEST_COPY_FILE ("${PROJECT_SOURCE_DIR}/expected/${ddl_file}.ddl" "${PROJECT_BINARY_DIR}/${ddl_file}.ddl" "h5stat_files") endforeach () foreach (h5_file ${HDF5_REFERENCE_TEST_FILES}) - HDFTEST_COPY_FILE("${HDF5_TOOLS_TST_DIR}/testfiles/${h5_file}" "${PROJECT_BINARY_DIR}/${h5_file}" "h5stat_files") + HDFTEST_COPY_FILE ("${HDF5_TOOLS_TST_DIR}/testfiles/${h5_file}" "${PROJECT_BINARY_DIR}/${h5_file}" "h5stat_files") endforeach () foreach (lists3file ${H5STAT_S3PROXY_TEST_FILES}) - HDFTEST_COPY_FILE("${HDF5_TOOLS_TST_DIR}/testfiles/${lists3file}" "${PROJECT_BINARY_DIR}/S3TEST/testfiles/${lists3file}" "h5stat_files") + HDFTEST_COPY_FILE ("${HDF5_TOOLS_TST_DIR}/testfiles/${lists3file}" "${PROJECT_BINARY_DIR}/S3TEST/testfiles/${lists3file}" "h5stat_files") endforeach () -add_custom_target(h5stat_files ALL COMMENT "Copying files needed by h5stat tests" DEPENDS ${h5stat_files_list}) +add_custom_target (h5stat_files ALL COMMENT "Copying files needed by h5stat tests" DEPENDS ${h5stat_files_list}) ############################################################################## ############################################################################## @@ -91,7 +91,7 @@ add_custom_target(h5stat_files ALL COMMENT "Copying files needed by h5stat tests macro (ADD_H5_TEST resultfile resultcode) # If using memchecker add tests without using scripts if (HDF5_ENABLE_USING_MEMCHECKER) - add_test (NAME H5STAT-${resultfile} COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ ${ARGN}) + add_test (NAME H5STAT-${resultfile} COMMAND $ ${ARGN}) if (${resultcode}) set_tests_properties (H5STAT-${resultfile} PROPERTIES WILL_FAIL "true") endif () @@ -99,7 +99,6 @@ macro (ADD_H5_TEST resultfile resultcode) add_test ( NAME H5STAT-${resultfile} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS=${ARGN}" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}" @@ -110,6 +109,7 @@ macro (ADD_H5_TEST resultfile resultcode) ) endif () set_tests_properties (H5STAT-${resultfile} PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" WORKING_DIRECTORY "${PROJECT_BINARY_DIR}" ) if ("H5STAT-${resultfile}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") @@ -120,7 +120,7 @@ endmacro () macro (ADD_H5_ERR_TEST resultfile resultcode errtext) # If using memchecker add tests without using scripts if (HDF5_ENABLE_USING_MEMCHECKER) - add_test (NAME H5STAT-${resultfile} COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ ${ARGN}) + add_test (NAME H5STAT-${resultfile} COMMAND $ ${ARGN}) if (${resultcode}) set_tests_properties (H5STAT-${resultfile} PROPERTIES WILL_FAIL "true") endif () @@ -128,7 +128,6 @@ macro (ADD_H5_ERR_TEST resultfile resultcode errtext) add_test ( NAME H5STAT-${resultfile} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=${ARGN}" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}" @@ -141,6 +140,7 @@ macro (ADD_H5_ERR_TEST resultfile resultcode errtext) ) endif () set_tests_properties (H5STAT-${resultfile} PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" WORKING_DIRECTORY "${PROJECT_BINARY_DIR}" ) if ("H5STAT-${resultfile}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") @@ -151,7 +151,7 @@ endmacro () macro (ADD_H5_CMP_TEST resultfile resultcode errtext) # If using memchecker add tests without using scripts if (HDF5_ENABLE_USING_MEMCHECKER) - add_test (NAME H5STAT-${resultfile} COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ ${ARGN}) + add_test (NAME H5STAT-${resultfile} COMMAND $ ${ARGN}) if (${resultcode}) set_tests_properties (H5STAT-${resultfile} PROPERTIES WILL_FAIL "true") endif () @@ -159,7 +159,6 @@ macro (ADD_H5_CMP_TEST resultfile resultcode errtext) add_test ( NAME H5STAT-${resultfile} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=${ARGN}" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}" @@ -172,6 +171,7 @@ macro (ADD_H5_CMP_TEST resultfile resultcode errtext) ) endif () set_tests_properties (H5STAT-${resultfile} PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" WORKING_DIRECTORY "${PROJECT_BINARY_DIR}" ) if ("H5STAT-${resultfile}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") @@ -182,7 +182,7 @@ endmacro () macro (ADD_H5_S3TEST resultfile resultcode credtype urlscheme urlpath) # If using memchecker add tests without using scripts if (HDF5_ENABLE_USING_MEMCHECKER) - add_test (NAME H5STAT_S3TEST-${resultfile}_${urlscheme}_${credtype} COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ ${ARGN}) + add_test (NAME H5STAT_S3TEST-${resultfile}_${urlscheme}_${credtype} COMMAND $ ${ARGN}) if (${resultcode}) set_tests_properties (H5STAT_S3TEST-${resultfile}_${urlscheme}_${credtype} PROPERTIES WILL_FAIL "true") endif () @@ -190,7 +190,6 @@ macro (ADD_H5_S3TEST resultfile resultcode credtype urlscheme urlpath) add_test ( NAME H5STAT_S3TEST-${resultfile}_${urlscheme}_${credtype} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS=--enable-error-stack=2;${ARGN};${urlscheme}://${urlpath}/${resultfile}.h5" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}/S3TEST" @@ -205,6 +204,7 @@ macro (ADD_H5_S3TEST resultfile resultcode credtype urlscheme urlpath) set_tests_properties (H5STAT_S3TEST-${resultfile}_${urlscheme}_${credtype} PROPERTIES FIXTURES_REQUIRED h5stat_s3_proxy ENVIRONMENT "${h5stat_s3tests_env}" + ENVIRONMENT "${CROSSCOMPILING_PATH}" WORKING_DIRECTORY ${PROJECT_BINARY_DIR}/S3TEST ) if ("H5STAT_S3TEST-${resultfile}_${urlscheme}_${credtype}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") diff --git a/tools/test/misc/CMakeLists.txt b/tools/test/misc/CMakeLists.txt index 87d0feb49b3..754bd9ce6cc 100644 --- a/tools/test/misc/CMakeLists.txt +++ b/tools/test/misc/CMakeLists.txt @@ -19,7 +19,8 @@ else () target_link_libraries (h5clear_gentest PRIVATE ${HDF5_TOOLS_LIBSH_TARGET} ${HDF5_TEST_LIBSH_TARGET}) endif () set_target_properties (h5clear_gentest PROPERTIES FOLDER tools) -#add_test (NAME H5CLEAR-h5clear_gentest COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $) +#add_test (NAME H5CLEAR-h5clear_gentest COMMAND $) +#set_target_properties (h5clear_gentest ENVIRONMENT "${CROSSCOMPILING_PATH}") #----------------------------------------------------------------------------- # Add Target to clang-format diff --git a/tools/test/misc/CMakeTestsClear.cmake b/tools/test/misc/CMakeTestsClear.cmake index c4a3cf2b46e..f278c28e28d 100644 --- a/tools/test/misc/CMakeTestsClear.cmake +++ b/tools/test/misc/CMakeTestsClear.cmake @@ -60,18 +60,18 @@ set (HDF5_REFERENCE_TEST_FILES ) foreach (h5_file ${HDF5_TEST_FILES} ${HDF5_SEC2_TEST_FILES}) - HDFTEST_COPY_FILE("${HDF5_TOOLS_TST_DIR}/testfiles/${h5_file}" "${PROJECT_BINARY_DIR}/testfiles/${h5_file}" "h5clear_files") + HDFTEST_COPY_FILE ("${HDF5_TOOLS_TST_DIR}/testfiles/${h5_file}" "${PROJECT_BINARY_DIR}/testfiles/${h5_file}" "h5clear_files") endforeach () foreach (h5_file ${HDF5_REFERENCE_TEST_FILES}) - HDFTEST_COPY_FILE("${HDF5_TOOLS_TST_DIR}/misc/expected/${h5_file}" "${PROJECT_BINARY_DIR}/testfiles/${h5_file}" "h5clear_files") + HDFTEST_COPY_FILE ("${HDF5_TOOLS_TST_DIR}/misc/expected/${h5_file}" "${PROJECT_BINARY_DIR}/testfiles/${h5_file}" "h5clear_files") endforeach () # make second copy of h5clear_sec2.h5 foreach (h5_file ${HDF5_SEC2_TEST_FILES}) - HDFTEST_COPY_FILE("${HDF5_TOOLS_TST_DIR}/testfiles/${h5_file}" "${PROJECT_BINARY_DIR}/testfiles/orig_${h5_file}" "h5clear_files") + HDFTEST_COPY_FILE ("${HDF5_TOOLS_TST_DIR}/testfiles/${h5_file}" "${PROJECT_BINARY_DIR}/testfiles/orig_${h5_file}" "h5clear_files") endforeach () # make second copy of mod_h5clear_mdc_image.h5 -HDFTEST_COPY_FILE("${HDF5_TOOLS_TST_DIR}/testfiles/mod_h5clear_mdc_image.h5" "${PROJECT_BINARY_DIR}/testfiles/mod_h5clear_mdc_image2.h5" "h5clear_files") -add_custom_target(h5clear_files ALL COMMENT "Copying files needed by h5clear tests" DEPENDS ${h5clear_files_list}) +HDFTEST_COPY_FILE ("${HDF5_TOOLS_TST_DIR}/testfiles/mod_h5clear_mdc_image.h5" "${PROJECT_BINARY_DIR}/testfiles/mod_h5clear_mdc_image2.h5" "h5clear_files") +add_custom_target (h5clear_files ALL COMMENT "Copying files needed by h5clear tests" DEPENDS ${h5clear_files_list}) ############################################################################## ############################################################################## @@ -86,7 +86,6 @@ macro (ADD_H5_CMP testname resultfile resultcode) add_test ( NAME H5CLEAR_CMP-${testname} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=${ARGN}" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}/testfiles" @@ -95,6 +94,7 @@ macro (ADD_H5_CMP testname resultfile resultcode) -D "TEST_REFERENCE=${resultfile}.ddl" -P "${HDF_RESOURCES_DIR}/runTest.cmake" ) + set_tests_properties (H5CLEAR_CMP-${testname} PROPERTIES ENVIRONMENT "${CROSSCOMPILING_PATH}") if ("H5CLEAR_CMP-${testname}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") set_tests_properties (H5CLEAR_CMP-${testname} PROPERTIES DISABLED true) endif () @@ -110,7 +110,6 @@ macro (ADD_H5_ERR_CMP testname resultfile resultcode result_errcheck) add_test ( NAME H5CLEAR_CMP-${testname} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=${ARGN}" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}/testfiles" @@ -121,6 +120,7 @@ macro (ADD_H5_ERR_CMP testname resultfile resultcode result_errcheck) -D "TEST_SKIP_COMPARE=true" -P "${HDF_RESOURCES_DIR}/runTest.cmake" ) + set_tests_properties (H5CLEAR_CMP-${testname} PROPERTIES ENVIRONMENT "${CROSSCOMPILING_PATH}") if ("H5CLEAR_CMP-${testname}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") set_tests_properties (H5CLEAR_CMP-${testname} PROPERTIES DISABLED true) endif () @@ -148,7 +148,6 @@ macro (ADD_H5_CMP_WITH_COPY testname resultcode resultfile testfile) add_test ( NAME H5CLEAR_CMP-${testname} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=${ARGN};${testfile}" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}/testfiles" @@ -158,6 +157,7 @@ macro (ADD_H5_CMP_WITH_COPY testname resultcode resultfile testfile) -P "${HDF_RESOURCES_DIR}/runTest.cmake" ) set_tests_properties (H5CLEAR_CMP-${testname} PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" DEPENDS H5CLEAR_CMP-copy_${testname} ) if ("H5CLEAR_CMP-${testname}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") @@ -183,7 +183,6 @@ macro (ADD_H5_ERR_CMP_WITH_COPY testname resultcode resultfile testfile) add_test ( NAME H5CLEAR_CMP-${testname} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=${ARGN};${testfile}" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}/testfiles" @@ -194,6 +193,7 @@ macro (ADD_H5_ERR_CMP_WITH_COPY testname resultcode resultfile testfile) -P "${HDF_RESOURCES_DIR}/runTest.cmake" ) set_tests_properties (H5CLEAR_CMP-${testname} PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" DEPENDS H5CLEAR_CMP-copy_${testname} ) if ("H5CLEAR_CMP-${testname}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") @@ -206,9 +206,10 @@ macro (ADD_H5_RETTEST testname resultcode) if (NOT HDF5_ENABLE_USING_MEMCHECKER) add_test ( NAME H5CLEAR_RET-${testname} - COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ ${ARGN} + COMMAND $ ${ARGN} ) set_tests_properties (H5CLEAR_RET-${testname} PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" WORKING_DIRECTORY "${PROJECT_BINARY_DIR}/testfiles" WILL_FAIL "${resultcode}" ) @@ -235,7 +236,6 @@ macro (ADD_H5_FILESIZE_TEST testname resultcode resultfile incr_size) add_test ( NAME H5CLEAR_FILESIZE_CMP-${testname}_before_size COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=--filesize;${testname}.h5" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}/testfiles" @@ -245,6 +245,7 @@ macro (ADD_H5_FILESIZE_TEST testname resultcode resultfile incr_size) -P "${HDF_RESOURCES_DIR}/runTest.cmake" ) set_tests_properties (H5CLEAR_FILESIZE_CMP-${testname}_before_size PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" DEPENDS H5CLEAR_FILESIZE_TEST-copy_${testname} ) if ("H5CLEAR_FILESIZE_CMP-${testname}_before_size" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") @@ -253,15 +254,16 @@ macro (ADD_H5_FILESIZE_TEST testname resultcode resultfile incr_size) if (NOT ${incr_size} MATCHES "NONE") add_test ( NAME H5CLEAR_FILESIZE_INCR-${testname} - COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ --increment=${incr_size} ${testname}.h5 + COMMAND $ --increment=${incr_size} ${testname}.h5 ) else () add_test ( NAME H5CLEAR_FILESIZE_INCR-${testname} - COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ --increment ${testname}.h5 + COMMAND $ --increment ${testname}.h5 ) endif () set_tests_properties (H5CLEAR_FILESIZE_INCR-${testname} PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" WORKING_DIRECTORY "${PROJECT_BINARY_DIR}/testfiles" WILL_FAIL "${resultcode}" DEPENDS H5CLEAR_FILESIZE_CMP-${testname}_before_size @@ -272,7 +274,6 @@ macro (ADD_H5_FILESIZE_TEST testname resultcode resultfile incr_size) add_test ( NAME H5CLEAR_FILESIZE_CMP-${testname}_after_size COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=--filesize;${testname}.h5" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}/testfiles" @@ -282,6 +283,7 @@ macro (ADD_H5_FILESIZE_TEST testname resultcode resultfile incr_size) -P "${HDF_RESOURCES_DIR}/runTest.cmake" ) set_tests_properties (H5CLEAR_FILESIZE_CMP-${testname}_after_size PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" DEPENDS H5CLEAR_FILESIZE_INCR-${testname} ) if ("H5CLEAR_FILESIZE_CMP-${testname}_after_size" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") @@ -310,7 +312,6 @@ macro (ADD_H5_FILESIZE_FAIL_TEST testname resultcode resultfile incr_size) add_test ( NAME H5CLEAR_FILESIZE_FAIL_CMP-${testname}_before_size COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=--filesize;${testname}.h5" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}/testfiles" @@ -320,6 +321,7 @@ macro (ADD_H5_FILESIZE_FAIL_TEST testname resultcode resultfile incr_size) -P "${HDF_RESOURCES_DIR}/runTest.cmake" ) set_tests_properties (H5CLEAR_FILESIZE_FAIL_CMP-${testname}_before_size PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" DEPENDS H5CLEAR_FILESIZE_FAIL_TEST-copy_${testname} ) if ("H5CLEAR_FILESIZE_FAIL_CMP-${testname}_before_size" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") @@ -328,15 +330,16 @@ macro (ADD_H5_FILESIZE_FAIL_TEST testname resultcode resultfile incr_size) if (NOT ${incr_size} MATCHES "NONE") add_test ( NAME H5CLEAR_FILESIZE_FAIL_INCR-${testname} - COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ -s --increment=${incr_size} ${testname}.h5 + COMMAND $ -s --increment=${incr_size} ${testname}.h5 ) else () add_test ( NAME H5CLEAR_FILESIZE_FAIL_INCR-${testname} - COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ -s --increment ${testname}.h5 + COMMAND $ -s --increment ${testname}.h5 ) endif () set_tests_properties (H5CLEAR_FILESIZE_FAIL_INCR-${testname} PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" WORKING_DIRECTORY "${PROJECT_BINARY_DIR}/testfiles" DEPENDS H5CLEAR_FILESIZE_FAIL_CMP-${testname}_before_size ) @@ -346,7 +349,6 @@ macro (ADD_H5_FILESIZE_FAIL_TEST testname resultcode resultfile incr_size) add_test ( NAME H5CLEAR_FILESIZE_FAIL_CMP-${testname}_after_size COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=--filesize;${testname}.h5" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}/testfiles" @@ -356,6 +358,7 @@ macro (ADD_H5_FILESIZE_FAIL_TEST testname resultcode resultfile incr_size) -P "${HDF_RESOURCES_DIR}/runTest.cmake" ) set_tests_properties (H5CLEAR_FILESIZE_FAIL_CMP-${testname}_after_size PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" DEPENDS H5CLEAR_FILESIZE_FAIL_INCR-${testname} ) if ("H5CLEAR_FILESIZE_FAIL_CMP-${testname}_after_size" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") @@ -376,9 +379,10 @@ macro (ADD_H5_TEST testname testfile resultcode) # File open succeeds because the library does not check status_flags for file with < v3 superblock add_test ( NAME H5CLEAR-clr_open_chk-${testname}_${resultcode} - COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ ${testfile}.h5 + COMMAND $ ${testfile}.h5 ) set_tests_properties (H5CLEAR-clr_open_chk-${testname}_${resultcode} PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" WILL_FAIL "${resultcode}" WORKING_DIRECTORY "${PROJECT_BINARY_DIR}/testfiles" DEPENDS H5CLEAR-clr_open_chk-copy_${testname}.h5 @@ -390,9 +394,10 @@ macro (ADD_H5_TEST testname testfile resultcode) # After "h5clear" the file, the subsequent file open succeeds add_test ( NAME H5CLEAR-h5clr-${testname} - COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ -s ${testfile}.h5 + COMMAND $ -s ${testfile}.h5 ) set_tests_properties (H5CLEAR-h5clr-${testname} PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" DEPENDS H5CLEAR-clr_open_chk-${testname}_${resultcode} WORKING_DIRECTORY "${PROJECT_BINARY_DIR}/testfiles" ) @@ -401,9 +406,10 @@ macro (ADD_H5_TEST testname testfile resultcode) endif () add_test ( NAME H5CLEAR-clr_open_chk-${testname} - COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ ${testfile}.h5 + COMMAND $ ${testfile}.h5 ) set_tests_properties (H5CLEAR-clr_open_chk-${testname} PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" DEPENDS H5CLEAR-h5clr-${testname} WORKING_DIRECTORY "${PROJECT_BINARY_DIR}/testfiles" ) diff --git a/tools/test/misc/CMakeTestsMkgrp.cmake b/tools/test/misc/CMakeTestsMkgrp.cmake index 03bfd8e0d88..421cdc39753 100644 --- a/tools/test/misc/CMakeTestsMkgrp.cmake +++ b/tools/test/misc/CMakeTestsMkgrp.cmake @@ -40,11 +40,11 @@ set (HDF5_MKGRP_TEST_FILES file (MAKE_DIRECTORY "${PROJECT_BINARY_DIR}/testfiles") foreach (h5_mkgrp_file ${HDF5_MKGRP_TEST_FILES}) - HDFTEST_COPY_FILE("${HDF5_TOOLS_TST_DIR}/misc/expected/${h5_mkgrp_file}" "${PROJECT_BINARY_DIR}/testfiles/${h5_mkgrp_file}" "h5mkgrp_files") + HDFTEST_COPY_FILE ("${HDF5_TOOLS_TST_DIR}/misc/expected/${h5_mkgrp_file}" "${PROJECT_BINARY_DIR}/testfiles/${h5_mkgrp_file}" "h5mkgrp_files") endforeach () -HDFTEST_COPY_FILE("${HDF5_TOOLS_TST_DIR}/misc/expected/h5mkgrp_help.txt" "${PROJECT_BINARY_DIR}/testfiles/h5mkgrp_help.txt" "h5mkgrp_files") -add_custom_target(h5mkgrp_files ALL COMMENT "Copying files needed by h5mkgrp tests" DEPENDS ${h5mkgrp_files_list}) +HDFTEST_COPY_FILE ("${HDF5_TOOLS_TST_DIR}/misc/expected/h5mkgrp_help.txt" "${PROJECT_BINARY_DIR}/testfiles/h5mkgrp_help.txt" "h5mkgrp_files") +add_custom_target (h5mkgrp_files ALL COMMENT "Copying files needed by h5mkgrp tests" DEPENDS ${h5mkgrp_files_list}) configure_file (${HDF5_TOOLS_TEST_MISC_SOURCE_DIR}/testfiles/h5mkgrp_version.txt.in ${PROJECT_BINARY_DIR}/testfiles/h5mkgrp_version.txt @ONLY) @@ -58,8 +58,9 @@ macro (ADD_H5_TEST resultfile resultcode resultoption) if (HDF5_ENABLE_USING_MEMCHECKER) add_test ( NAME H5MKGRP-${resultfile} - COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ ${resultoption} ${resultfile}.h5 ${ARGN} + COMMAND $ ${resultoption} ${resultfile}.h5 ${ARGN} ) + set_tests_properties (H5MKGRP-${resultfile} PROPERTIES ENVIRONMENT "${CROSSCOMPILING_PATH}") if ("H5MKGRP-${resultfile}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") set_tests_properties (H5MKGRP-${resultfile} PROPERTIES DISABLED true) endif () @@ -73,9 +74,10 @@ macro (ADD_H5_TEST resultfile resultcode resultoption) ) add_test ( NAME H5MKGRP-${resultfile} - COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ ${resultoption} ${resultfile}.h5 ${ARGN} + COMMAND $ ${resultoption} ${resultfile}.h5 ${ARGN} ) set_tests_properties (H5MKGRP-${resultfile} PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" DEPENDS H5MKGRP-${resultfile}-clear-objects WORKING_DIRECTORY "${PROJECT_BINARY_DIR}/testfiles" ) @@ -85,7 +87,6 @@ macro (ADD_H5_TEST resultfile resultcode resultoption) add_test ( NAME H5MKGRP-${resultfile}-h5ls COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=-v;-r;${resultfile}.h5" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}/testfiles" @@ -94,7 +95,10 @@ macro (ADD_H5_TEST resultfile resultcode resultoption) -D "TEST_REFERENCE=${resultfile}.ls" -P "${HDF_RESOURCES_DIR}/runTest.cmake" ) - set_tests_properties (H5MKGRP-${resultfile}-h5ls PROPERTIES DEPENDS H5MKGRP-${resultfile}) + set_tests_properties (H5MKGRP-${resultfile}-h5ls PROPERTIES + DEPENDS H5MKGRP-${resultfile} + ENVIRONMENT "${CROSSCOMPILING_PATH}" + ) if ("H5MKGRP-${resultfile}-h5ls" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") set_tests_properties (H5MKGRP-${resultfile}-h5ls PROPERTIES DISABLED true) endif () @@ -103,7 +107,11 @@ endmacro () macro (ADD_H5_CMP resultfile resultcode) if (HDF5_ENABLE_USING_MEMCHECKER) - add_test (NAME H5MKGRP_CMP-${resultfile} COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ ${ARGN}) + add_test (NAME H5MKGRP_CMP-${resultfile} COMMAND $ ${ARGN}) + set_tests_properties (H5MKGRP_CMP-${resultfile} PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" + WORKING_DIRECTORY "${PROJECT_BINARY_DIR}/testfiles" + ) else () add_test ( NAME H5MKGRP_CMP-${resultfile}-clear-objects @@ -115,7 +123,6 @@ macro (ADD_H5_CMP resultfile resultcode) add_test ( NAME H5MKGRP_CMP-${resultfile} COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=${ARGN}" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}/testfiles" @@ -125,6 +132,7 @@ macro (ADD_H5_CMP resultfile resultcode) -P "${HDF_RESOURCES_DIR}/runTest.cmake" ) set_tests_properties (H5MKGRP_CMP-${resultfile} PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" DEPENDS H5MKGRP_CMP-${resultfile}-clear-objects ) if ("H5MKGRP_CMP-${resultfile}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") diff --git a/tools/test/misc/CMakeTestsRepart.cmake b/tools/test/misc/CMakeTestsRepart.cmake index 0c27bcfdc3c..ca19b9f8f81 100644 --- a/tools/test/misc/CMakeTestsRepart.cmake +++ b/tools/test/misc/CMakeTestsRepart.cmake @@ -41,9 +41,9 @@ set (HDF5_REFERENCE_TEST_FILES ) foreach (h5_file ${HDF5_REFERENCE_TEST_FILES}) - HDFTEST_COPY_FILE("${HDF5_TOOLS_TST_DIR}/testfiles/${h5_file}" "${PROJECT_BINARY_DIR}/${h5_file}" "h5repart_files") + HDFTEST_COPY_FILE ("${HDF5_TOOLS_TST_DIR}/testfiles/${h5_file}" "${PROJECT_BINARY_DIR}/${h5_file}" "h5repart_files") endforeach () -add_custom_target(h5repart_files ALL COMMENT "Copying files needed by h5repart tests" DEPENDS ${h5repart_files_list}) +add_custom_target (h5repart_files ALL COMMENT "Copying files needed by h5repart tests" DEPENDS ${h5repart_files_list}) ############################################################################## ############################################################################## @@ -82,9 +82,10 @@ set_tests_properties (H5REPART-clean-objects PROPERTIES FIXTURES_CLEANUP clear_t # repartition family member size to 20,000 bytes. add_test ( NAME H5REPART-h5repart_20K - COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ -m 20000 family_file%05d.h5 fst_family%05d.h5 + COMMAND $ -m 20000 family_file%05d.h5 fst_family%05d.h5 ) set_tests_properties (H5REPART-h5repart_20K PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" FIXTURES_REQUIRED clear_testrepart ) if ("H5REPART-h5repart_20K" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") @@ -94,9 +95,10 @@ endif () # repartition family member size to 5 KB. add_test ( NAME H5REPART-h5repart_5K - COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ -m 5k family_file%05d.h5 scd_family%05d.h5 + COMMAND $ -m 5k family_file%05d.h5 scd_family%05d.h5 ) set_tests_properties (H5REPART-h5repart_5K PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" FIXTURES_REQUIRED clear_testrepart ) if ("H5REPART-h5repart_5K" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") @@ -106,9 +108,10 @@ endif () # convert family file to sec2 file of 20,000 bytes add_test ( NAME H5REPART-h5repart_single - COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ -m 20000 -family_to_single family_file%05d.h5 family_to_single.h5 + COMMAND $ -m 20000 -family_to_single family_file%05d.h5 family_to_single.h5 ) set_tests_properties (H5REPART-h5repart_single PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" FIXTURES_REQUIRED clear_testrepart ) if ("H5REPART-h5repart_single" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") @@ -118,9 +121,10 @@ endif () # convert family file to sec2 file of 20,000 bytes (old argument) add_test ( NAME H5REPART-h5repart_sec2 - COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ -m 20000 -family_to_sec2 family_file%05d.h5 family_to_sec2.h5 + COMMAND $ -m 20000 -family_to_sec2 family_file%05d.h5 family_to_sec2.h5 ) set_tests_properties (H5REPART-h5repart_sec2 PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" FIXTURES_REQUIRED clear_testrepart ) if ("H5REPART-h5repart_sec2" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") @@ -130,9 +134,10 @@ endif () # test the output files repartitioned above. add_test ( NAME H5REPART-h5repart_test - COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ + COMMAND $ ) set_tests_properties (H5REPART-h5repart_test PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" DEPENDS "H5REPART-h5repart_20K;H5REPART-h5repart_5K;H5REPART-h5repart_single;H5REPART-h5repart_sec2" FIXTURES_REQUIRED clear_testrepart ) diff --git a/tools/test/perform/CMakeTests.cmake b/tools/test/perform/CMakeTests.cmake index aeec2c111a1..1bb61878d1c 100644 --- a/tools/test/perform/CMakeTests.cmake +++ b/tools/test/perform/CMakeTests.cmake @@ -16,8 +16,8 @@ ############################################################################## ############################################################################## -HDFTEST_COPY_FILE("${HDF5_TOOLS_TST_DIR}/h5dump/testfiles/tfilters.h5" "${PROJECT_BINARY_DIR}/tfilters.h5" "zip_perf_files") -add_custom_target(zip_perf_files ALL COMMENT "Copying files needed by zip_perf tests" DEPENDS ${zip_perf_list}) +HDFTEST_COPY_FILE ("${HDF5_TOOLS_TST_DIR}/h5dump/testfiles/tfilters.h5" "${PROJECT_BINARY_DIR}/tfilters.h5" "zip_perf_files") +add_custom_target (zip_perf_files ALL COMMENT "Copying files needed by zip_perf tests" DEPENDS ${zip_perf_list}) #----------------------------------------------------------------------------- # Add Tests @@ -51,10 +51,9 @@ if (HDF5_TEST_SERIAL) set_tests_properties (PERFORM_h5perform-clean-objects PROPERTIES FIXTURES_CLEANUP clear_perform) if (HDF5_ENABLE_USING_MEMCHECKER) - add_test (NAME PERFORM_h5perf_serial COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $) + add_test (NAME PERFORM_h5perf_serial COMMAND $) else () add_test (NAME PERFORM_h5perf_serial COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=" -D "TEST_EXPECT=0" @@ -66,6 +65,7 @@ if (HDF5_TEST_SERIAL) ) endif () set_tests_properties (PERFORM_h5perf_serial PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" TIMEOUT ${CTEST_VERY_LONG_TIMEOUT} FIXTURES_REQUIRED clear_perform ) @@ -74,10 +74,9 @@ if (HDF5_TEST_SERIAL) endif () if (HDF5_ENABLE_USING_MEMCHECKER) - add_test (NAME PERFORM_chunk COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $) + add_test (NAME PERFORM_chunk COMMAND $) else () add_test (NAME PERFORM_chunk COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=" -D "TEST_EXPECT=0" @@ -89,6 +88,7 @@ if (HDF5_TEST_SERIAL) ) endif () set_tests_properties (PERFORM_chunk PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" FIXTURES_REQUIRED clear_perform ) if ("PERFORM_chunk" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") @@ -96,10 +96,9 @@ if (HDF5_TEST_SERIAL) endif () if (HDF5_ENABLE_USING_MEMCHECKER) - add_test (NAME PERFORM_iopipe COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $) + add_test (NAME PERFORM_iopipe COMMAND $) else () add_test (NAME PERFORM_iopipe COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=" -D "TEST_EXPECT=0" @@ -111,6 +110,7 @@ if (HDF5_TEST_SERIAL) ) endif () set_tests_properties (PERFORM_iopipe PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" FIXTURES_REQUIRED clear_perform ) if ("PERFORM_iopipe" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") @@ -118,10 +118,9 @@ if (HDF5_TEST_SERIAL) endif () if (HDF5_ENABLE_USING_MEMCHECKER) - add_test (NAME PERFORM_overhead COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $) + add_test (NAME PERFORM_overhead COMMAND $) else () add_test (NAME PERFORM_overhead COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=" -D "TEST_EXPECT=0" @@ -133,6 +132,7 @@ if (HDF5_TEST_SERIAL) ) endif () set_tests_properties (PERFORM_overhead PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" FIXTURES_REQUIRED clear_perform ) if ("PERFORM_overhead" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") @@ -140,10 +140,9 @@ if (HDF5_TEST_SERIAL) endif () if (HDF5_ENABLE_USING_MEMCHECKER) - add_test (NAME PERFORM_perf_meta COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $) + add_test (NAME PERFORM_perf_meta COMMAND $) else () add_test (NAME PERFORM_perf_meta COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=" -D "TEST_EXPECT=0" @@ -155,6 +154,7 @@ if (HDF5_TEST_SERIAL) ) endif () set_tests_properties (PERFORM_perf_meta PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" FIXTURES_REQUIRED clear_perform ) if ("PERFORM_perf_meta" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") @@ -162,10 +162,9 @@ if (HDF5_TEST_SERIAL) endif () if (HDF5_ENABLE_USING_MEMCHECKER) - add_test (NAME PERFORM_zip_perf_help COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ "-h") + add_test (NAME PERFORM_zip_perf_help COMMAND $ "-h") else () add_test (NAME PERFORM_zip_perf_help COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=" -D "TEST_EXPECT=0" @@ -177,6 +176,7 @@ if (HDF5_TEST_SERIAL) ) endif () set_tests_properties (PERFORM_zip_perf_help PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" FIXTURES_REQUIRED clear_perform ) if ("PERFORM_zip_perf_help" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") @@ -184,10 +184,9 @@ if (HDF5_TEST_SERIAL) endif () if (HDF5_ENABLE_USING_MEMCHECKER) - add_test (NAME PERFORM_zip_perf COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ tfilters.h5) + add_test (NAME PERFORM_zip_perf COMMAND $ tfilters.h5) else () add_test (NAME PERFORM_zip_perf COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" -D "TEST_PROGRAM=$" -D "TEST_ARGS:STRING=" -D "TEST_EXPECT=0" @@ -199,6 +198,7 @@ if (HDF5_TEST_SERIAL) ) endif () set_tests_properties (PERFORM_zip_perf PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" DEPENDS "PERFORM_zip_perf_help" FIXTURES_REQUIRED clear_perform ) diff --git a/utils/tools/h5dwalk/CMakeLists.txt b/utils/tools/h5dwalk/CMakeLists.txt index 6fcd5c4841a..b188d6e4e06 100644 --- a/utils/tools/h5dwalk/CMakeLists.txt +++ b/utils/tools/h5dwalk/CMakeLists.txt @@ -5,7 +5,7 @@ project (HDF5_UTILS_TOOLS_H5DWALK C) # Add the h5dwalk and test executables # -------------------------------------------------------------------- add_executable (h5dwalk ${HDF5_UTILS_TOOLS_H5DWALK_SOURCE_DIR}/h5dwalk.c) -#add_custom_target(generate_demo ALL +#add_custom_target (generate_demo ALL # DEPENDS "${HDF5_TOOLS_ROOT_DIR}/test/demo_destfiles.test" #) target_include_directories (h5dwalk PRIVATE "${HDF5_TOOLS_ROOT_DIR}/lib;${HDF5_SRC_INCLUDE_DIRS};${HDF5_SRC_BINARY_DIR};${CIRCLE_INCLUDE_DIR};$<$:${MPI_C_INCLUDE_DIRS}>") diff --git a/utils/tools/test/h5dwalk/CMakeTests.cmake b/utils/tools/test/h5dwalk/CMakeTests.cmake index b2670cd26c1..2f3303d8123 100644 --- a/utils/tools/test/h5dwalk/CMakeTests.cmake +++ b/utils/tools/test/h5dwalk/CMakeTests.cmake @@ -16,8 +16,7 @@ ############################################################################## ############################################################################## - file (MAKE_DIRECTORY "${PROJECT_BINARY_DIR}/testfiles") - +file (MAKE_DIRECTORY "${PROJECT_BINARY_DIR}/testfiles") ############################################################################## ############################################################################## @@ -25,32 +24,33 @@ ############################################################################## ############################################################################## - macro (ADD_H5_TEST resultfile resultcode) - # If using memchecker add tests without using scripts - if (HDF5_ENABLE_USING_MEMCHECKER) - message("Entered ADD_H5_TEST - 0") - add_test (NAME H5DWALK-${resultfile} COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $ ${ARGN}) - set_tests_properties (H5DWALK-${resultfile} PROPERTIES - WORKING_DIRECTORY "${PROJECT_BINARY_DIR}/testfiles") - if ("${resultcode}" STREQUAL "1") - set_tests_properties (H5DWALK-${resultfile} PROPERTIES WILL_FAIL "true") - endif () - else () - # Remove any output file left over from previous test run - add_test ( - NAME H5DWALK-${resultfile} - COMMAND "${CMAKE_COMMAND}" - -D "TEST_EMULATOR=${CMAKE_CROSSCOMPILING_EMULATOR}" - -D "TEST_PROGRAM=$" - -D "TEST_ARGS=${ARGN}" - -D "TEST_FOLDER=${PROJECT_BINARY_DIR}/testfiles" - -D "TEST_OUTPUT=${resultfile}.out" - -D "TEST_EXPECT=${resultcode}" - -D "TEST_REFERENCE=${resultfile}.h5dwalk" - -D "TEST_LIBRARY_DIRECTORY=${LL_PATH}" - -P "${HDF_RESOURCES_DIR}/runTest.cmake" - ) +macro (ADD_H5_TEST resultfile resultcode) + # If using memchecker add tests without using scripts + if (HDF5_ENABLE_USING_MEMCHECKER) + message("Entered ADD_H5_TEST - 0") + add_test (NAME H5DWALK-${resultfile} COMMAND $ ${ARGN}) + if ("${resultcode}" STREQUAL "1") + set_tests_properties (H5DWALK-${resultfile} PROPERTIES WILL_FAIL "true") endif () - endmacro () + else () + # Remove any output file left over from previous test run + add_test ( + NAME H5DWALK-${resultfile} + COMMAND "${CMAKE_COMMAND}" + -D "TEST_PROGRAM=$" + -D "TEST_ARGS=${ARGN}" + -D "TEST_FOLDER=${PROJECT_BINARY_DIR}/testfiles" + -D "TEST_OUTPUT=${resultfile}.out" + -D "TEST_EXPECT=${resultcode}" + -D "TEST_REFERENCE=${resultfile}.h5dwalk" + -D "TEST_LIBRARY_DIRECTORY=${LL_PATH}" + -P "${HDF_RESOURCES_DIR}/runTest.cmake" + ) + endif () + set_tests_properties (H5DWALK-${resultfile} PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" + WORKING_DIRECTORY "${PROJECT_BINARY_DIR}/testfiles" + ) +endmacro () - ADD_H5_TEST(help-1 0 -h) +ADD_H5_TEST(help-1 0 -h) From 2e626c3ffacdbddd5576b505d2e7ca5385c51b36 Mon Sep 17 00:00:00 2001 From: Allen Byrne Date: Wed, 3 Sep 2025 15:37:23 -0500 Subject: [PATCH 20/49] Correct no cross-compile Fortan custom_commands --- fortran/src/CMakeLists.txt | 50 ++++++++++++++++++++++++----------- fortran/test/CMakeLists.txt | 25 ++++++++++++------ hl/fortran/src/CMakeLists.txt | 25 ++++++++++++------ 3 files changed, 68 insertions(+), 32 deletions(-) diff --git a/fortran/src/CMakeLists.txt b/fortran/src/CMakeLists.txt index 8d59865a24f..84d90e5d84a 100644 --- a/fortran/src/CMakeLists.txt +++ b/fortran/src/CMakeLists.txt @@ -148,14 +148,23 @@ target_include_directories (H5match_types PRIVATE "${HDF5_SRC_BINARY_DIR};${HDF5 if (NOT EXISTS "${HDF5_GENERATED_SOURCE_DIR}/H5fortran_types.F90") message (STATUS "No pre-generated H5fortran_types.F90 file found - generating one") # execute the H5match_types program - add_custom_command (TARGET H5match_types POST_BUILD - BYPRODUCTS ${HDF5_F90_BINARY_DIR}/H5f90i_gen.h ${HDF5_F90_BINARY_DIR}/H5fortran_types.F90 - COMMAND ${CMAKE_COMMAND} - ARGS -E env ${CROSSCOMPILING_PATH} - COMMAND $ - WORKING_DIRECTORY ${HDF5_F90_BINARY_DIR} - COMMENT "Generating the H5fortran_types.F90 and H5f90i_gen.h files" - ) + if (CROSSCOMPILING) + add_custom_command (TARGET H5match_types POST_BUILD + BYPRODUCTS ${HDF5_F90_BINARY_DIR}/H5f90i_gen.h ${HDF5_F90_BINARY_DIR}/H5fortran_types.F90 + COMMAND ${CMAKE_COMMAND} + ARGS -E env ${CROSSCOMPILING_PATH} + COMMAND $ + WORKING_DIRECTORY ${HDF5_F90_BINARY_DIR} + COMMENT "Generating the H5fortran_types.F90 and H5f90i_gen.h files" + ) + else () + add_custom_command (TARGET H5match_types POST_BUILD + BYPRODUCTS ${HDF5_F90_BINARY_DIR}/H5f90i_gen.h ${HDF5_F90_BINARY_DIR}/H5fortran_types.F90 + COMMAND $ + WORKING_DIRECTORY ${HDF5_F90_BINARY_DIR} + COMMENT "Generating the H5fortran_types.F90 and H5f90i_gen.h files" + ) + endif () else () message (STATUS "Using existing pre-generated H5fortran_types.F90 file") add_custom_command ( @@ -331,14 +340,23 @@ set (f90_F_GEN_SOURCES # check if a pre-generated H5fortran_types.F90 file is present if (NOT EXISTS "${HDF5_GENERATED_SOURCE_DIR}/H5_gen.F90") message (STATUS "No pre-generated H5_gen.F90 file found - generating one") - add_custom_command (TARGET H5_buildiface POST_BUILD - BYPRODUCTS ${HDF5_F90_BINARY_DIR}/H5_gen.F90 - COMMAND ${CMAKE_COMMAND} - ARGS -E env ${CROSSCOMPILING_PATH} - COMMAND $ - WORKING_DIRECTORY ${HDF5_F90_BINARY_DIR} - COMMENT "Generating the H5_gen.F90 file" - ) + if (CROSSCOMPILING) + add_custom_command (TARGET H5_buildiface POST_BUILD + BYPRODUCTS ${HDF5_F90_BINARY_DIR}/H5_gen.F90 + COMMAND ${CMAKE_COMMAND} + ARGS -E env ${CROSSCOMPILING_PATH} + COMMAND $ + WORKING_DIRECTORY ${HDF5_F90_BINARY_DIR} + COMMENT "Generating the H5_gen.F90 file" + ) + else () + add_custom_command (TARGET H5_buildiface POST_BUILD + BYPRODUCTS ${HDF5_F90_BINARY_DIR}/H5_gen.F90 + COMMAND $ + WORKING_DIRECTORY ${HDF5_F90_BINARY_DIR} + COMMENT "Generating the H5_gen.F90 file" + ) + endif () else () message (STATUS "Using existing pre-generated H5_gen.F90 file") add_custom_command ( diff --git a/fortran/test/CMakeLists.txt b/fortran/test/CMakeLists.txt index c7b749ef5d7..12ffbd7df85 100644 --- a/fortran/test/CMakeLists.txt +++ b/fortran/test/CMakeLists.txt @@ -104,14 +104,23 @@ endif () if (NOT EXISTS "${HDF5_GENERATED_SOURCE_DIR}/tf_gen.F90") message (STATUS "No pre-generated tf_gen.F90 file found - generating one") - add_custom_command (TARGET H5_test_buildiface POST_BUILD - BYPRODUCTS ${HDF5_FORTRAN_TESTS_BINARY_DIR}/tf_gen.F90 - COMMAND ${CMAKE_COMMAND} - ARGS -E env ${CROSSCOMPILING_PATH} - COMMAND $ - WORKING_DIRECTORY ${HDF5_FORTRAN_TESTS_BINARY_DIR} - COMMENT "Generating the tf_gen.F90 static file" - ) + if (CROSSCOMPILING) + add_custom_command (TARGET H5_test_buildiface POST_BUILD + BYPRODUCTS ${HDF5_FORTRAN_TESTS_BINARY_DIR}/tf_gen.F90 + COMMAND ${CMAKE_COMMAND} + ARGS -E env ${CROSSCOMPILING_PATH} + COMMAND $ + WORKING_DIRECTORY ${HDF5_FORTRAN_TESTS_BINARY_DIR} + COMMENT "Generating the tf_gen.F90 static file" + ) + else () + add_custom_command (TARGET H5_test_buildiface POST_BUILD + BYPRODUCTS ${HDF5_FORTRAN_TESTS_BINARY_DIR}/tf_gen.F90 + COMMAND $ + WORKING_DIRECTORY ${HDF5_FORTRAN_TESTS_BINARY_DIR} + COMMENT "Generating the tf_gen.F90 static file" + ) + endif () else () message (STATUS "Using existing pre-generated tf_gen.F90 file") add_custom_command ( diff --git a/hl/fortran/src/CMakeLists.txt b/hl/fortran/src/CMakeLists.txt index 4d63e3e5f64..72ac6acb556 100644 --- a/hl/fortran/src/CMakeLists.txt +++ b/hl/fortran/src/CMakeLists.txt @@ -124,14 +124,23 @@ set (HDF5_HL_F90_F_BASE_SOURCES if (NOT EXISTS "${HDF5_GENERATED_SOURCE_DIR}/H5LTff_gen.F90") message (STATUS "No pre-generated H5LTff_gen.F90 H5TBff_gen.F90 file found - generating one") - add_custom_command (TARGET H5HL_buildiface POST_BUILD - BYPRODUCTS ${HDF5_HL_F90_BINARY_DIR}/H5LTff_gen.F90 ${HDF5_HL_F90_BINARY_DIR}/H5TBff_gen.F90 - COMMAND ${CMAKE_COMMAND} - ARGS -E env ${CROSSCOMPILING_PATH} - COMMAND $ - WORKING_DIRECTORY ${HDF5_HL_F90_BINARY_DIR} - COMMENT "Generating the H5LTff_gen.F90, H5TBff_gen.F90 files" - ) + if (CROSSCOMPILING) + add_custom_command (TARGET H5HL_buildiface POST_BUILD + BYPRODUCTS ${HDF5_HL_F90_BINARY_DIR}/H5LTff_gen.F90 ${HDF5_HL_F90_BINARY_DIR}/H5TBff_gen.F90 + COMMAND ${CMAKE_COMMAND} + ARGS -E env ${CROSSCOMPILING_PATH} + COMMAND $ + WORKING_DIRECTORY ${HDF5_HL_F90_BINARY_DIR} + COMMENT "Generating the H5LTff_gen.F90, H5TBff_gen.F90 files" + ) + else () + add_custom_command (TARGET H5HL_buildiface POST_BUILD + BYPRODUCTS ${HDF5_HL_F90_BINARY_DIR}/H5LTff_gen.F90 ${HDF5_HL_F90_BINARY_DIR}/H5TBff_gen.F90 + COMMAND $ + WORKING_DIRECTORY ${HDF5_HL_F90_BINARY_DIR} + COMMENT "Generating the H5LTff_gen.F90, H5TBff_gen.F90 files" + ) + endif () else () message (STATUS "Using existing pre-generated H5LTff_gen.F90 H5TBff_gen.F90 file") add_custom_command ( From aaddeb9b5f2f2bb8916fb943a380d0dcd2a84080 Mon Sep 17 00:00:00 2001 From: Allen Byrne Date: Wed, 3 Sep 2025 15:55:52 -0500 Subject: [PATCH 21/49] Fix failing tests for mingw --- hl/test/CMakeTests.cmake | 9 +-------- hl/tools/h5watch/CMakeTests.cmake | 5 ++++- test/CMakeLists.txt | 2 +- 3 files changed, 6 insertions(+), 10 deletions(-) diff --git a/hl/test/CMakeTests.cmake b/hl/test/CMakeTests.cmake index d89405ae9f7..563eb8dfc85 100644 --- a/hl/test/CMakeTests.cmake +++ b/hl/test/CMakeTests.cmake @@ -102,9 +102,6 @@ macro (HL_ADD_TEST hl_name) set (current_test_name "HL_${hl_name}") if (HDF5_ENABLE_USING_MEMCHECKER) add_test (NAME HL_${hl_name} COMMAND $) - set_tests_properties (HL_${hl_name} PROPERTIES - ENVIRONMENT "${CROSSCOMPILING_PATH}" - ) else () add_test (NAME HL_${hl_name} COMMAND "${CMAKE_COMMAND}" -D "TEST_PROGRAM=$" @@ -116,9 +113,6 @@ macro (HL_ADD_TEST hl_name) -D "TEST_FOLDER=${HDF5_HL_TEST_BINARY_DIR}" -P "${HDF_RESOURCES_DIR}/runTest.cmake" ) - set_tests_properties (HL_${hl_name} PROPERTIES - ENVIRONMENT "${CROSSCOMPILING_PATH}" - ) if ("hl_name" STREQUAL "test_table") add_test ( NAME H5DUMP-HL_${hl_name} @@ -133,14 +127,13 @@ macro (HL_ADD_TEST hl_name) ) set_tests_properties (H5DUMP-HL_${hl_name} PROPERTIES DEPENDS HL_${hl_name} - ENVIRONMENT "${CROSSCOMPILING_PATH}" ) set (current_test_name "H5DUMP-HL_${hl_name}") endif () endif () set_tests_properties (${current_test_name} PROPERTIES FIXTURES_REQUIRED clear_test_hl - ENVIRONMENT "srcdir=${HDF5_HL_TEST_BINARY_DIR}" + ENVIRONMENT "srcdir=${HDF5_HL_TEST_BINARY_DIR};${CROSSCOMPILING_PATH}" WORKING_DIRECTORY ${HDF5_HL_TEST_BINARY_DIR} ) if ("HL_${hl_name}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") diff --git a/hl/tools/h5watch/CMakeTests.cmake b/hl/tools/h5watch/CMakeTests.cmake index cb1bfe3f6d4..13a3dbbc210 100644 --- a/hl/tools/h5watch/CMakeTests.cmake +++ b/hl/tools/h5watch/CMakeTests.cmake @@ -157,7 +157,10 @@ add_test ( NAME H5WATCH-SWMR_INCOMPAT COMMAND swmr_check_compat_vfd ) -set_tests_properties (H5WATCH-SWMR_INCOMPAT PROPERTIES FIXTURES_SETUP swmr_vfd_check_compat) +set_tests_properties (H5WATCH-SWMR_INCOMPAT PROPERTIES + FIXTURES_SETUP swmr_vfd_check_compat + ENVIRONMENT "${CROSSCOMPILING_PATH}" +) # Remove any output file left over from previous test run add_test ( diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt index b8e44fd00ef..6819406b4a3 100644 --- a/test/CMakeLists.txt +++ b/test/CMakeLists.txt @@ -879,6 +879,6 @@ if (HDF5_TEST_SERIAL) include (CMakeTests.cmake) endif () -if (HDF5_TEST_API) +if (HDF5_TEST_API AND NOT CROSSCOMPILING) add_subdirectory (API) endif () From acb0897a0508c58a6811536c6e35914a890aa22d Mon Sep 17 00:00:00 2001 From: Allen Byrne Date: Wed, 3 Sep 2025 16:03:17 -0500 Subject: [PATCH 22/49] Correct location for property --- fortran/test/CMakeTests.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/fortran/test/CMakeTests.cmake b/fortran/test/CMakeTests.cmake index 6c712bfa8ee..fe837cb7181 100644 --- a/fortran/test/CMakeTests.cmake +++ b/fortran/test/CMakeTests.cmake @@ -198,9 +198,9 @@ endif () add_test ( NAME FORTRAN_fflush2 COMMAND $ - ENVIRONMENT "${CROSSCOMPILING_PATH}" ) set_tests_properties (FORTRAN_fflush2 PROPERTIES + ENVIRONMENT "${CROSSCOMPILING_PATH}" DEPENDS FORTRAN_fflush1 ) if ("FORTRAN_fflush2" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") From 051a1af170b18247168c7d8c41306b1572deb620 Mon Sep 17 00:00:00 2001 From: Allen Byrne Date: Wed, 3 Sep 2025 16:12:19 -0500 Subject: [PATCH 23/49] Disable HDF5_TEST_API option for cross-compile workflow --- .github/workflows/cross-compile.yml | 1 + test/CMakeLists.txt | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/cross-compile.yml b/.github/workflows/cross-compile.yml index 43b553210f5..f143ba42e5c 100644 --- a/.github/workflows/cross-compile.yml +++ b/.github/workflows/cross-compile.yml @@ -54,6 +54,7 @@ jobs: -DZLIB_USE_LOCALCONTENT:BOOL=OFF \ -DHDF5_PACK_EXAMPLES:BOOL=ON \ -DHDF5_PACKAGE_EXTLIBS:BOOL=ON \ + -DHDF5_TEST_API:BOOL=OFF \ -DHDF5_USE_PREGEN:BOOL=ON \ -DHDF5_USE_PREGEN_DIR:PATH=$GITHUB_WORKSPACE/config/fortpregen/gfortran \ $GITHUB_WORKSPACE diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt index 6819406b4a3..b8e44fd00ef 100644 --- a/test/CMakeLists.txt +++ b/test/CMakeLists.txt @@ -879,6 +879,6 @@ if (HDF5_TEST_SERIAL) include (CMakeTests.cmake) endif () -if (HDF5_TEST_API AND NOT CROSSCOMPILING) +if (HDF5_TEST_API) add_subdirectory (API) endif () From 9179ab6411f543fbdd8ae44db04bb635db28600b Mon Sep 17 00:00:00 2001 From: Allen Byrne Date: Wed, 3 Sep 2025 16:32:54 -0500 Subject: [PATCH 24/49] Fix command properties --- tools/test/h5stat/CMakeTests.cmake | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/tools/test/h5stat/CMakeTests.cmake b/tools/test/h5stat/CMakeTests.cmake index 6227a3abf33..3f81d03b165 100644 --- a/tools/test/h5stat/CMakeTests.cmake +++ b/tools/test/h5stat/CMakeTests.cmake @@ -203,8 +203,7 @@ macro (ADD_H5_S3TEST resultfile resultcode credtype urlscheme urlpath) endif () set_tests_properties (H5STAT_S3TEST-${resultfile}_${urlscheme}_${credtype} PROPERTIES FIXTURES_REQUIRED h5stat_s3_proxy - ENVIRONMENT "${h5stat_s3tests_env}" - ENVIRONMENT "${CROSSCOMPILING_PATH}" + ENVIRONMENT "${h5stat_s3tests_env};${CROSSCOMPILING_PATH}" WORKING_DIRECTORY ${PROJECT_BINARY_DIR}/S3TEST ) if ("H5STAT_S3TEST-${resultfile}_${urlscheme}_${credtype}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") From 79a83d3fc19d48a18797181dbcbd6f0f360725be Mon Sep 17 00:00:00 2001 From: Allen Byrne Date: Thu, 4 Sep 2025 08:43:28 -0500 Subject: [PATCH 25/49] Merge develop and fix conflicts --- .github/workflows/cross-compile.yml | 8 +- config/cmake/HDF5ExampleCache.cmake | 19 ++ .../img/release-schedule.plantuml | 0 .../img/release-schedule.png | Bin test/trefer.c | 76 +++--- tools/test/h5gentest.c | 2 + tools/test/h5ls/CMakeTests.cmake | 243 +++++++++--------- 7 files changed, 191 insertions(+), 157 deletions(-) rename {doc => release_docs}/img/release-schedule.plantuml (100%) rename {doc => release_docs}/img/release-schedule.png (100%) diff --git a/.github/workflows/cross-compile.yml b/.github/workflows/cross-compile.yml index f143ba42e5c..bb94313fe86 100644 --- a/.github/workflows/cross-compile.yml +++ b/.github/workflows/cross-compile.yml @@ -67,9 +67,15 @@ jobs: # RUN TESTS - name: CMake Run Tests - run: ctest . --parallel 2 -C ${{ inputs.build_mode }} -V + run: ctest . --parallel 2 -C ${{ inputs.build_mode }} -V -E "err_compat|filenotclosed|swmr|testhdf5-base|cache_api" working-directory: ${{ runner.workspace }}/build + # RUN Failing TESTS + - name: CMake Run Tests + run: ctest . --parallel 2 -C ${{ inputs.build_mode }} -V -R "err_compat|filenotclosed|swmr|testhdf5-base|cache_api" + working-directory: ${{ runner.workspace }}/build + continue-on-error: true + - name: CMake Run Package run: cpack -C ${{ inputs.build_mode }} -V working-directory: ${{ runner.workspace }}/build diff --git a/config/cmake/HDF5ExampleCache.cmake b/config/cmake/HDF5ExampleCache.cmake index 97915634df6..5f729a20291 100644 --- a/config/cmake/HDF5ExampleCache.cmake +++ b/config/cmake/HDF5ExampleCache.cmake @@ -15,6 +15,25 @@ set (H5EX_BUILD_HL ${HDF5_BUILD_HL_LIB} CACHE BOOL "Build High Level examples" F set (H5EX_ENABLE_THREADSAFE ${HDF5_ENABLE_THREADSAFE} CACHE BOOL "Enable examples thread-safety" FORCE) set (H5EX_ENABLE_PARALLEL ${HDF5_ENABLE_PARALLEL} CACHE BOOL "Enable examples parallel build (requires MPI)" FORCE) set (H5EX_USE_GNU_DIRS ${HDF5_USE_GNU_DIRS} CACHE BOOL "ON to use GNU Coding Standard install directory variables, OFF to use historical settings" FORCE) +# set PROVIDES variables for all variables that are used in conditions in HDF5Examples. +set (HDF5_PROVIDES_FORTRAN ${HDF5_BUILD_FORTRAN} CACHE BOOL "Provides Fortran" FORCE) +mark_as_advanced (HDF5_PROVIDES_FORTRAN) +set (HDF5_PROVIDES_TOOLS ${HDF5_BUILD_TOOLS} CACHE BOOL "Provides Tools" FORCE) +mark_as_advanced (HDF5_PROVIDES_TOOLS) +set (HDF5_PROVIDES_JAVA ${HDF5_BUILD_JAVA} CACHE BOOL "Provides JAVA" FORCE) +mark_as_advanced (HDF5_PROVIDES_JAVA) +set (HDF5_PROVIDES_CPP_LIB ${HDF5_BUILD_CPP_LIB} CACHE BOOL "Provides CPP_LIB" FORCE) +mark_as_advanced (HDF5_PROVIDES_CPP_LIB) +set (HDF5_PROVIDES_HL_LIB ${HDF5_BUILD_HL_LIB} CACHE BOOL "Provides HL_LIB" FORCE) +mark_as_advanced (HDF5_PROVIDES_HL_LIB) +set (HDF5_PROVIDES_PARALLEL ${HDF5_ENABLE_PARALLEL} CACHE BOOL "Provides Parallel" FORCE) +mark_as_advanced (HDF5_PROVIDES_PARALLEL) +set (HDF5_PROVIDES_ZLIB_SUPPORT ${HDF5_ENABLE_ZLIB_SUPPORT} CACHE BOOL "Provides Zlib Support" FORCE) +mark_as_advanced (HDF5_PROVIDES_ZLIB_SUPPORT) +set (HDF5_PROVIDES_SZIP_SUPPORT ${HDF5_ENABLE_SZIP_SUPPORT} CACHE BOOL "Provides Szip Support" FORCE) +mark_as_advanced (HDF5_PROVIDES_SZIP_SUPPORT) +set (HDF5_PROVIDES_SUBFILING_VFD ${HDF5_ENABLE_SUBFILING_VFD} CACHE BOOL "Provides Subfiling VFD" FORCE) +mark_as_advanced (HDF5_PROVIDES_SUBFILING_VFD) # Preset HDF5 cache vars to this project's libraries instead of searching set (H5EX_HDF5_HEADER "H5pubconf.h" CACHE STRING "Name of HDF5 header" FORCE) diff --git a/doc/img/release-schedule.plantuml b/release_docs/img/release-schedule.plantuml similarity index 100% rename from doc/img/release-schedule.plantuml rename to release_docs/img/release-schedule.plantuml diff --git a/doc/img/release-schedule.png b/release_docs/img/release-schedule.png similarity index 100% rename from doc/img/release-schedule.png rename to release_docs/img/release-schedule.png diff --git a/test/trefer.c b/test/trefer.c index a7cbcaa183f..cd6bf2ca1b9 100644 --- a/test/trefer.c +++ b/test/trefer.c @@ -2800,33 +2800,23 @@ test_reference_attr(void) } } /* test_reference_attr() */ -/**************************************************************** -** -** test_reference_external(): -** Tests external references on various kinds of objects -** -****************************************************************/ static void -test_reference_external(void) +test_reference_external_generate(void) { - hid_t fid1, fid2; /* HDF5 File ID */ - hid_t dataset; /* Dataset ID */ - hid_t group; /* Group ID */ - hid_t attr; /* Attribute ID */ - hid_t sid; /* Dataspace ID */ - hid_t tid; /* Datatype ID */ - hsize_t dims[] = {SPACE1_DIM1}; - hid_t dapl_id; /* Dataset access property list */ - H5R_ref_t ref_wbuf[SPACE1_DIM1], /* Buffer to write to disk */ - ref_rbuf[SPACE1_DIM1]; /* Buffer read from disk */ - unsigned wbuf[SPACE1_DIM1], rbuf[SPACE1_DIM1]; + hid_t fid1 = H5I_INVALID_HID; /* File ID */ + hid_t fid2 = H5I_INVALID_HID; + hid_t dataset = H5I_INVALID_HID; /* Dataset ID */ + hid_t group = H5I_INVALID_HID; /* Group ID */ + hid_t attr = H5I_INVALID_HID; /* Attribute ID */ + hid_t sid = H5I_INVALID_HID; /* Dataspace ID */ + hid_t tid = H5I_INVALID_HID; /* Datatype ID */ + hsize_t dims[] = {SPACE1_DIM1}; + H5R_ref_t ref_wbuf[SPACE1_DIM1]; /* Buffer to write to disk */ + unsigned wbuf[SPACE1_DIM1]; unsigned i; /* Local index variables */ H5O_type_t obj_type; /* Object type */ herr_t ret; /* Generic return value */ - /* Output message about test being performed */ - MESSAGE(5, ("Testing External References Functions\n")); - /* Create file */ fid1 = H5Fcreate(FILE_REF_EXT1, H5F_ACC_TRUNC, H5P_DEFAULT, H5P_DEFAULT); CHECK(fid1, H5I_INVALID_HID, "H5Fcreate"); @@ -2835,10 +2825,6 @@ test_reference_external(void) sid = H5Screate_simple(SPACE1_RANK, dims, NULL); CHECK(sid, H5I_INVALID_HID, "H5Screate_simple"); - /* Create dataset access property list */ - dapl_id = H5Pcreate(H5P_DATASET_ACCESS); - CHECK(dapl_id, H5I_INVALID_HID, "H5Pcreate"); - /* Create a group */ group = H5Gcreate2(fid1, GROUPNAME1, H5P_DEFAULT, H5P_DEFAULT, H5P_DEFAULT); CHECK(group, H5I_INVALID_HID, "H5Gcreate2"); @@ -2994,13 +2980,45 @@ test_reference_external(void) ret = H5Fclose(fid2); CHECK(ret, FAIL, "H5Fclose"); + /* Free memory buffers */ + for (i = 0; i < SPACE1_DIM1; i++) { + ret = H5Rdestroy(&ref_wbuf[i]); + CHECK(ret, FAIL, "H5Rdestroy"); + } + + return; +} + +/**************************************************************** +** +** test_reference_external(): +** Tests external references on various kinds of objects +** +****************************************************************/ +static void +test_reference_external(void) +{ + hid_t fid2 = H5I_INVALID_HID; + hid_t dataset = H5I_INVALID_HID; + herr_t ret = -1; + hid_t attr = H5I_INVALID_HID; + hid_t sid = H5I_INVALID_HID; + H5R_ref_t ref_rbuf[SPACE1_DIM1]; /* Buffer read from disk */ + unsigned rbuf[SPACE1_DIM1]; + unsigned i; /* Local index variables */ + + /* Output message about test being performed */ + MESSAGE(5, ("Testing External References Functions\n")); + + test_reference_external_generate(); + /* Re-open the file */ fid2 = H5Fopen(FILE_REF_EXT2, H5F_ACC_RDWR, H5P_DEFAULT); CHECK(fid2, FAIL, "H5Fopen"); /* Open the dataset */ dataset = H5Dopen2(fid2, "/Dataset3", H5P_DEFAULT); - CHECK(ret, H5I_INVALID_HID, "H5Dopen2"); + CHECK(dataset, H5I_INVALID_HID, "H5Dopen2"); /* Read selection from disk */ ret = H5Dread(dataset, H5T_STD_REF, H5S_ALL, H5S_ALL, H5P_DEFAULT, ref_rbuf); @@ -3062,18 +3080,12 @@ test_reference_external(void) ret = H5Dclose(dataset); CHECK(ret, FAIL, "H5Dclose"); - /* Close dataset access property list */ - ret = H5Pclose(dapl_id); - CHECK(ret, FAIL, "H5Pclose"); - /* Close file */ ret = H5Fclose(fid2); CHECK(ret, FAIL, "H5Fclose"); /* Free memory buffers */ for (i = 0; i < SPACE1_DIM1; i++) { - ret = H5Rdestroy(&ref_wbuf[i]); - CHECK(ret, FAIL, "H5Rdestroy"); ret = H5Rdestroy(&ref_rbuf[i]); CHECK(ret, FAIL, "H5Rdestroy"); } diff --git a/tools/test/h5gentest.c b/tools/test/h5gentest.c index 8c1f75cc53b..203b9e8b88e 100644 --- a/tools/test/h5gentest.c +++ b/tools/test/h5gentest.c @@ -274,6 +274,8 @@ gen_h5dump_files(void) gent_trefer_reg(); gent_trefer_reg_1d(); + nerrors += gent_test_reference_external(); + return nerrors; } diff --git a/tools/test/h5ls/CMakeTests.cmake b/tools/test/h5ls/CMakeTests.cmake index 3e4fe938169..08cc1e0772c 100644 --- a/tools/test/h5ls/CMakeTests.cmake +++ b/tools/test/h5ls/CMakeTests.cmake @@ -158,64 +158,59 @@ add_custom_target (h5ls_files ALL COMMENT "Copying files needed by h5ls tests" D ############################################################################## ############################################################################## -macro (ADD_H5_TEST resultfile resultcode) - # If using memchecker add tests without using scripts - if (HDF5_ENABLE_USING_MEMCHECKER) - add_test (NAME H5LS-${resultfile} COMMAND $ ${ARGN}) - if ("${resultcode}" STREQUAL "1") - set_tests_properties (H5LS-${resultfile} PROPERTIES WILL_FAIL "true") - endif () - else () - # Remove any output file left over from previous test run - add_test ( - NAME H5LS-${resultfile} - COMMAND "${CMAKE_COMMAND}" - -D "TEST_PROGRAM=$" - -D "TEST_ARGS=${ARGN}" - -D "TEST_FOLDER=${PROJECT_BINARY_DIR}/testfiles" - -D "TEST_OUTPUT=${resultfile}.out" - -D "TEST_EXPECT=${resultcode}" - -D "TEST_REFERENCE=${resultfile}.ls" - -P "${HDF_RESOURCES_DIR}/runTest.cmake" - ) - endif () - set_tests_properties (H5LS-${resultfile} PROPERTIES - ENVIRONMENT "${CROSSCOMPILING_PATH}" - WORKING_DIRECTORY "${PROJECT_BINARY_DIR}/testfiles" +# +# Adds a test which performs h5ls according to passed parameters +# +# REQUIRED POSITIONAL ARGUMENT: +# testname - name of test to add. Used as the base name of the output/reference files +# +# REQUIRED KEYWORD ARGUMENTS: +# RESULT_CODE - expected return code after test execution (0, 1, or 2) +# +# OPTIONAL KEYWORD ARGUMENTS: +# RESULT_ERRCHECK - value to pass to test script as TEST_ERRREF +# Ignored if memchecker is enabled. +# +macro (ADD_H5_TEST testname) + cmake_parse_arguments(ARG + "" # flags + "RESULT_CODE;RESULT_ERRCHECK" # one-value args + "" # multi-value args + ${ARGN} ) - if ("H5LS-${resultfile}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") - set_tests_properties (H5LS-${resultfile} PROPERTIES DISABLED true) + + # Validate required parameters + if (NOT DEFINED ARG_RESULT_CODE) + message (FATAL_ERROR "ADD_H5_TEST: RESULT_CODE parameter required") endif () -endmacro () -macro (ADD_H5_ERR_TEST resultfile resultcode result_errcheck) # If using memchecker add tests without using scripts if (HDF5_ENABLE_USING_MEMCHECKER) - add_test (NAME H5LS-${resultfile} COMMAND $ ${ARGN}) - if ("${resultcode}" STREQUAL "1") - set_tests_properties (H5LS-${resultfile} PROPERTIES WILL_FAIL "true") + add_test (NAME H5LS-${testname} COMMAND $ ${ARG_UNPARSED_ARGUMENTS}) + if ("${ARG_RESULT_CODE}" STREQUAL "1") + set_tests_properties (H5LS-${testname} PROPERTIES WILL_FAIL "true") endif () else () + # Remove any output file left over from previous test run add_test ( - NAME H5LS-${resultfile} + NAME H5LS-${testname} COMMAND "${CMAKE_COMMAND}" -D "TEST_PROGRAM=$" - -D "TEST_ARGS=${ARGN}" + -D "TEST_ARGS=${ARG_UNPARSED_ARGUMENTS}" -D "TEST_FOLDER=${PROJECT_BINARY_DIR}/testfiles" - -D "TEST_OUTPUT=${resultfile}.out" - -D "TEST_EXPECT=${resultcode}" - -D "TEST_REFERENCE=${resultfile}.ls" - -D "TEST_ERRREF=${result_errcheck}" - -D "TEST_SKIP_COMPARE=true" + -D "TEST_OUTPUT=${testname}.out" + -D "TEST_EXPECT=${ARG_RESULT_CODE}" + -D "TEST_ERRREF=${ARG_RESULT_ERRCHECK}" + -D "TEST_REFERENCE=${testname}.ls" -P "${HDF_RESOURCES_DIR}/runTest.cmake" ) endif () - set_tests_properties (H5LS-${resultfile} PROPERTIES + set_tests_properties (H5LS-${testname} PROPERTIES ENVIRONMENT "${CROSSCOMPILING_PATH}" WORKING_DIRECTORY "${PROJECT_BINARY_DIR}/testfiles" ) - if ("H5LS-${resultfile}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") - set_tests_properties (H5LS-${resultfile} PROPERTIES DISABLED true) + if ("H5LS-${testname}" MATCHES "${HDF5_DISABLE_TESTS_REGEX}") + set_tests_properties (H5LS-${testname} PROPERTIES DISABLED true) endif () endmacro () @@ -297,75 +292,75 @@ if (H5_HAVE_FILTER_SZIP) endif () # test the help syntax -ADD_H5_TEST (help-1 0 -w80 -h) -ADD_H5_TEST (help-2 0 -w80 --help) -ADD_H5_TEST (help-3 0 -w80 -?) +ADD_H5_TEST (help-1 RESULT_CODE 0 -w80 -h) +ADD_H5_TEST (help-2 RESULT_CODE 0 -w80 --help) +ADD_H5_TEST (help-3 RESULT_CODE 0 -w80 -?) # test simple command -ADD_H5_TEST (tall-1 0 -w80 tall.h5) -ADD_H5_TEST (tall-2 0 -w80 -r -d tall.h5) -ADD_H5_TEST (tall-3 0 -w80 -r -d -v -a tall.h5) -ADD_H5_TEST (tgroup 0 -w80 tgroup.h5) -ADD_H5_TEST (tgroup-3 0 -w80 tgroup.h5/g1) +ADD_H5_TEST (tall-1 RESULT_CODE 0 -w80 tall.h5) +ADD_H5_TEST (tall-2 RESULT_CODE 0 -w80 -r -d tall.h5) +ADD_H5_TEST (tall-3 RESULT_CODE 0 -w80 -r -d -v -a tall.h5) +ADD_H5_TEST (tgroup RESULT_CODE 0 -w80 tgroup.h5) +ADD_H5_TEST (tgroup-3 RESULT_CODE 0 -w80 tgroup.h5/g1) # test page buffer cache command -ADD_H5_TEST (tall-pbc 0 -w80 --page-buffer-size=8192 tall.h5) +ADD_H5_TEST (tall-pbc RESULT_CODE 0 -w80 --page-buffer-size=8192 tall.h5) # test for displaying groups # The following combination of arguments is expected to return an error message # and return value 1 -ADD_H5_ERR_TEST (tgroup-1 1 "option not compatible" -w80 -r -g tgroup.h5) -ADD_H5_TEST (tgroup-2 0 -w80 -g tgroup.h5/g1) +ADD_H5_TEST (tgroup-1 RESULT_CODE 1 RESULT_ERRCHECK "option not compatible" -w80 -r -g tgroup.h5) +ADD_H5_TEST (tgroup-2 RESULT_CODE 0 -w80 -g tgroup.h5/g1) # test for files with groups that have long comments -ADD_H5_TEST (tgrp_comments 0 -w80 -v -g tgrp_comments.h5/glongcomment) +ADD_H5_TEST (tgrp_comments RESULT_CODE 0 -w80 -v -g tgrp_comments.h5/glongcomment) # test for displaying simple space datasets -ADD_H5_TEST (tdset-1 0 -w80 -r -d tdset.h5) +ADD_H5_TEST (tdset-1 RESULT_CODE 0 -w80 -r -d tdset.h5) # tests for displaying chunked datasets -ADD_H5_TEST (tdset2-1 0 -w80 -r -d tdset2.h5) -ADD_H5_TEST (tdset2-2 0 -w80 -r -d -v -a tdset2.h5) +ADD_H5_TEST (tdset2-1 RESULT_CODE 0 -w80 -r -d tdset2.h5) +ADD_H5_TEST (tdset2-2 RESULT_CODE 0 -w80 -r -d -v -a tdset2.h5) # test for displaying soft links (dangle) -ADD_H5_TEST (tslink-1 0 -w80 -r tslink.h5) +ADD_H5_TEST (tslink-1 RESULT_CODE 0 -w80 -r tslink.h5) # test for displaying more soft links with --follow-symlinks -ADD_H5_TEST (tsoftlinks-1 0 --follow-symlinks tsoftlinks.h5) -ADD_H5_TEST (tsoftlinks-2 0 --follow-symlinks -r tsoftlinks.h5) -ADD_H5_TEST (tsoftlinks-3 0 --follow-symlinks tsoftlinks.h5/group1) -ADD_H5_TEST (tsoftlinks-4 0 --follow-symlinks -r tsoftlinks.h5/group1) -ADD_H5_TEST (tsoftlinks-5 0 --follow-symlinks tsoftlinks.h5/soft_dset1) +ADD_H5_TEST (tsoftlinks-1 RESULT_CODE 0 --follow-symlinks tsoftlinks.h5) +ADD_H5_TEST (tsoftlinks-2 RESULT_CODE 0 --follow-symlinks -r tsoftlinks.h5) +ADD_H5_TEST (tsoftlinks-3 RESULT_CODE 0 --follow-symlinks tsoftlinks.h5/group1) +ADD_H5_TEST (tsoftlinks-4 RESULT_CODE 0 --follow-symlinks -r tsoftlinks.h5/group1) +ADD_H5_TEST (tsoftlinks-5 RESULT_CODE 0 --follow-symlinks tsoftlinks.h5/soft_dset1) # test for displaying external and user-defined links with --follow-symlinks -ADD_H5_TEST (textlink-1 0 -w80 -r textlink.h5) -ADD_H5_TEST (textlinksrc-1 0 -w80 --follow-symlinks -r textlinksrc.h5) -ADD_H5_TEST (textlinksrc-2 0 -w80 --follow-symlinks -rv textlinksrc.h5/ext_link5) -ADD_H5_TEST (textlinksrc-3 0 -w80 --follow-symlinks -r textlinksrc.h5/ext_link1) -ADD_H5_TEST (textlinksrc-4 0 -w80 -r textlinksrc.h5) -ADD_H5_TEST (textlinksrc-5 0 -w80 -r textlinksrc.h5/ext_link1) -ADD_H5_TEST (textlinksrc-6 0 -w80 --follow-symlinks textlinksrc.h5) -ADD_H5_TEST (textlinksrc-7 0 -w80 --follow-symlinks textlinksrc.h5/ext_link1) -ADD_H5_TEST (tudlink-1 0 -w80 -r tudlink.h5) +ADD_H5_TEST (textlink-1 RESULT_CODE 0 -w80 -r textlink.h5) +ADD_H5_TEST (textlinksrc-1 RESULT_CODE 0 -w80 --follow-symlinks -r textlinksrc.h5) +ADD_H5_TEST (textlinksrc-2 RESULT_CODE 0 -w80 --follow-symlinks -rv textlinksrc.h5/ext_link5) +ADD_H5_TEST (textlinksrc-3 RESULT_CODE 0 -w80 --follow-symlinks -r textlinksrc.h5/ext_link1) +ADD_H5_TEST (textlinksrc-4 RESULT_CODE 0 -w80 -r textlinksrc.h5) +ADD_H5_TEST (textlinksrc-5 RESULT_CODE 0 -w80 -r textlinksrc.h5/ext_link1) +ADD_H5_TEST (textlinksrc-6 RESULT_CODE 0 -w80 --follow-symlinks textlinksrc.h5) +ADD_H5_TEST (textlinksrc-7 RESULT_CODE 0 -w80 --follow-symlinks textlinksrc.h5/ext_link1) +ADD_H5_TEST (tudlink-1 RESULT_CODE 0 -w80 -r tudlink.h5) # test for displaying external links with -E # the option -E will be depriciated but keep it for backward compatibility -ADD_H5_TEST (textlinksrc-1-old 0 -w80 -Er textlinksrc.h5) -ADD_H5_TEST (textlinksrc-2-old 0 -w80 -Erv textlinksrc.h5/ext_link5) -ADD_H5_TEST (textlinksrc-3-old 0 -w80 -Er textlinksrc.h5/ext_link1) -ADD_H5_TEST (textlinksrc-6-old 0 -w80 -E textlinksrc.h5) -ADD_H5_TEST (textlinksrc-7-old 0 -w80 -E textlinksrc.h5/ext_link1) +ADD_H5_TEST (textlinksrc-1-old RESULT_CODE 0 -w80 -Er textlinksrc.h5) +ADD_H5_TEST (textlinksrc-2-old RESULT_CODE 0 -w80 -Erv textlinksrc.h5/ext_link5) +ADD_H5_TEST (textlinksrc-3-old RESULT_CODE 0 -w80 -Er textlinksrc.h5/ext_link1) +ADD_H5_TEST (textlinksrc-6-old RESULT_CODE 0 -w80 -E textlinksrc.h5) +ADD_H5_TEST (textlinksrc-7-old RESULT_CODE 0 -w80 -E textlinksrc.h5/ext_link1) # tests for no-dangling-links # if this option is given on dangling link, h5ls should return exit code 1 # when used alone , expect to print out help and return exit code 1 -ADD_H5_ERR_TEST (textlinksrc-nodangle-1 1 "no-dangling-links must be used" -w80 --no-dangling-links textlinksrc.h5) +ADD_H5_TEST (textlinksrc-nodangle-1 RESULT_CODE 1 RESULT_ERRCHECK "no-dangling-links must be used" -w80 --no-dangling-links textlinksrc.h5) # external dangling link - expected exit code 1 -ADD_H5_TEST (textlinksrc-nodangle-2 1 -w80 --follow-symlinks --no-dangling-links textlinksrc.h5) +ADD_H5_TEST (textlinksrc-nodangle-2 RESULT_CODE 1 -w80 --follow-symlinks --no-dangling-links textlinksrc.h5) # soft dangling link - expected exit code 1 -ADD_H5_TEST (tsoftlinks-nodangle-1 1 -w80 --follow-symlinks --no-dangling-links tsoftlinks.h5) +ADD_H5_TEST (tsoftlinks-nodangle-1 RESULT_CODE 1 -w80 --follow-symlinks --no-dangling-links tsoftlinks.h5) # when used file with no dangling links - expected exit code 0 -ADD_H5_TEST (thlinks-nodangle-1 0 -w80 --follow-symlinks --no-dangling-links thlink.h5) +ADD_H5_TEST (thlinks-nodangle-1 RESULT_CODE 0 -w80 --follow-symlinks --no-dangling-links thlink.h5) # tests for _Float16 type if (${${HDF_PREFIX}_HAVE__FLOAT16}) @@ -373,12 +368,12 @@ if (${${HDF_PREFIX}_HAVE__FLOAT16}) # will fail as the type will be printed out as "native _Float16" # rather than "IEEE 16-bit little-endian float". if (H5_WORDS_BIGENDIAN) - ADD_H5_TEST (tfloat16_be 0 -w80 -v tfloat16_be.h5) - ADD_H5_TEST (tfloat16_be_nosupport 0 -w80 -v tfloat16_be.h5) + ADD_H5_TEST (tfloat16_be RESULT_CODE 0 -w80 -v tfloat16_be.h5) + ADD_H5_TEST (tfloat16_be_nosupport RESULT_CODE 0 -w80 -v tfloat16_be.h5) set_tests_properties (H5LS-tfloat16_be_nosupport PROPERTIES WILL_FAIL "true") else () - ADD_H5_TEST (tfloat16 0 -w80 -v tfloat16.h5) - ADD_H5_TEST (tfloat16_nosupport 0 -w80 -v tfloat16.h5) + ADD_H5_TEST (tfloat16 RESULT_CODE 0 -w80 -v tfloat16.h5) + ADD_H5_TEST (tfloat16_nosupport RESULT_CODE 0 -w80 -v tfloat16.h5) set_tests_properties (H5LS-tfloat16_nosupport PROPERTIES WILL_FAIL "true") endif () else () @@ -386,12 +381,12 @@ else () # will fail as the types will be printed out as # "IEEE 16-bit little-endian float" and "IEEE 16-bit big-endian float" # rather than "native _Float16" - ADD_H5_TEST (tfloat16 0 -w80 -v tfloat16.h5) + ADD_H5_TEST (tfloat16 RESULT_CODE 0 -w80 -v tfloat16.h5) set_tests_properties (H5LS-tfloat16 PROPERTIES WILL_FAIL "true") - ADD_H5_TEST (tfloat16_be 0 -w80 -v tfloat16_be.h5) + ADD_H5_TEST (tfloat16_be RESULT_CODE 0 -w80 -v tfloat16_be.h5) set_tests_properties (H5LS-tfloat16_be PROPERTIES WILL_FAIL "true") - ADD_H5_TEST (tfloat16_nosupport 0 -w80 -v tfloat16.h5) - ADD_H5_TEST (tfloat16_be_nosupport 0 -w80 -v tfloat16_be.h5) + ADD_H5_TEST (tfloat16_nosupport RESULT_CODE 0 -w80 -v tfloat16.h5) + ADD_H5_TEST (tfloat16_be_nosupport RESULT_CODE 0 -w80 -v tfloat16_be.h5) endif () # tests for complex numbers @@ -400,12 +395,12 @@ if (${${HDF_PREFIX}_HAVE_COMPLEX_NUMBERS}) # will fail as the type will be printed out as "native float _Complex", # for example, rather than "complex number of native float". if (H5_WORDS_BIGENDIAN) - ADD_H5_TEST (tcomplex_be 0 -w80 -v tcomplex_be.h5) - ADD_H5_TEST (tcomplex_be_nosupport 0 -w80 -v tcomplex_be.h5) + ADD_H5_TEST (tcomplex_be RESULT_CODE 0 -w80 -v tcomplex_be.h5) + ADD_H5_TEST (tcomplex_be_nosupport RESULT_CODE 0 -w80 -v tcomplex_be.h5) set_tests_properties (H5LS-tcomplex_be_nosupport PROPERTIES WILL_FAIL "true") else () - ADD_H5_TEST (tcomplex 0 -w80 -v tcomplex.h5) - ADD_H5_TEST (tcomplex_nosupport 0 -w80 -v tcomplex.h5) + ADD_H5_TEST (tcomplex RESULT_CODE 0 -w80 -v tcomplex.h5) + ADD_H5_TEST (tcomplex_nosupport RESULT_CODE 0 -w80 -v tcomplex.h5) set_tests_properties (H5LS-tcomplex_nosupport PROPERTIES WILL_FAIL "true") endif () else () @@ -416,97 +411,97 @@ else () # depending on the endian-ness of the machine, as the types will be printed # out as "complex number of IEEE 32-bit little-endian float", for example, # rather than "complex number of native float". - ADD_H5_TEST (tcomplex 0 -w80 -v tcomplex.h5) + ADD_H5_TEST (tcomplex RESULT_CODE 0 -w80 -v tcomplex.h5) set_tests_properties (H5LS-tcomplex PROPERTIES WILL_FAIL "true") - ADD_H5_TEST (tcomplex_be 0 -w80 -v tcomplex_be.h5) + ADD_H5_TEST (tcomplex_be RESULT_CODE 0 -w80 -v tcomplex_be.h5) set_tests_properties (H5LS-tcomplex_be PROPERTIES WILL_FAIL "true") if (H5_WORDS_BIGENDIAN) - ADD_H5_TEST (tcomplex_nosupport 0 -w80 -v tcomplex.h5) + ADD_H5_TEST (tcomplex_nosupport RESULT_CODE 0 -w80 -v tcomplex.h5) set_tests_properties (H5LS-tcomplex_nosupport PROPERTIES WILL_FAIL "true") - ADD_H5_TEST (tcomplex_be_nosupport 0 -w80 -v tcomplex_be.h5) + ADD_H5_TEST (tcomplex_be_nosupport RESULT_CODE 0 -w80 -v tcomplex_be.h5) else () - ADD_H5_TEST (tcomplex_nosupport 0 -w80 -v tcomplex.h5) - ADD_H5_TEST (tcomplex_be_nosupport 0 -w80 -v tcomplex_be.h5) + ADD_H5_TEST (tcomplex_nosupport RESULT_CODE 0 -w80 -v tcomplex.h5) + ADD_H5_TEST (tcomplex_be_nosupport RESULT_CODE 0 -w80 -v tcomplex_be.h5) set_tests_properties (H5LS-tcomplex_be_nosupport PROPERTIES WILL_FAIL "true") endif () endif () # test for wildcards in filename (does not work with cmake) -# ADD_H5_TEST (tstarfile 0 -w80 t*link.h5) -# ADD_H5_TEST (tqmarkfile 0 -w80 t?link.h5) -ADD_H5_TEST (tmultifile 0 -w80 thlink.h5 tslink.h5) +# ADD_H5_TEST (tstarfile RESULT_CODE 0 -w80 t*link.h5) +# ADD_H5_TEST (tqmarkfile RESULT_CODE 0 -w80 t?link.h5) +ADD_H5_TEST (tmultifile RESULT_CODE 0 -w80 thlink.h5 tslink.h5) # tests for hard links -ADD_H5_TEST (thlink-1 0 -w80 thlink.h5) +ADD_H5_TEST (thlink-1 RESULT_CODE 0 -w80 thlink.h5) # tests for compound data types -ADD_H5_TEST (tcomp-1 0 -w80 -r -d tcompound.h5) +ADD_H5_TEST (tcomp-1 RESULT_CODE 0 -w80 -r -d tcompound.h5) #test for the nested compound type -ADD_H5_TEST (tnestcomp-1 0 -w80 -r -d tnestedcomp.h5) +ADD_H5_TEST (tnestcomp-1 RESULT_CODE 0 -w80 -r -d tnestedcomp.h5) -ADD_H5_TEST (tnestcomp-2 0 -w80 -r -d -S tnestedcomp.h5) +ADD_H5_TEST (tnestcomp-2 RESULT_CODE 0 -w80 -r -d -S tnestedcomp.h5) -ADD_H5_TEST (tnestcomp-3 0 -w80 -r -d -l tnestedcomp.h5) +ADD_H5_TEST (tnestcomp-3 RESULT_CODE 0 -w80 -r -d -l tnestedcomp.h5) -ADD_H5_TEST (tnestcomp-4 0 -w80 -r -d -l -S tnestedcomp.h5) +ADD_H5_TEST (tnestcomp-4 RESULT_CODE 0 -w80 -r -d -l -S tnestedcomp.h5) # test for loop detection -ADD_H5_TEST (tloop-1 0 -w80 -r -d tloop.h5) +ADD_H5_TEST (tloop-1 RESULT_CODE 0 -w80 -r -d tloop.h5) # test for string -ADD_H5_TEST (tstr-1 0 -w80 -r -d tstr.h5) +ADD_H5_TEST (tstr-1 RESULT_CODE 0 -w80 -r -d tstr.h5) # test test file created from lib SAF team -ADD_H5_TEST (tsaf 0 -w80 -r -d tsaf.h5) +ADD_H5_TEST (tsaf RESULT_CODE 0 -w80 -r -d tsaf.h5) # test for variable length data types -ADD_H5_TEST (tvldtypes1 0 -w80 -r -d tvldtypes1.h5) +ADD_H5_TEST (tvldtypes1 RESULT_CODE 0 -w80 -r -d tvldtypes1.h5) # test for array data types -ADD_H5_TEST (tarray1 0 -w80 -r -d tarray1.h5) +ADD_H5_TEST (tarray1 RESULT_CODE 0 -w80 -r -d tarray1.h5) # test for empty data -ADD_H5_TEST (tempty 0 -w80 -d tempty.h5) +ADD_H5_TEST (tempty RESULT_CODE 0 -w80 -d tempty.h5) # test for displaying dataset and attribute of null space -ADD_H5_TEST (tgrpnullspace 0 -w80 -v -S tgrpnullspace.h5) +ADD_H5_TEST (tgrpnullspace RESULT_CODE 0 -w80 -v -S tgrpnullspace.h5) # test for all dataset types written to attributes # enable -S for avoiding printing NATIVE types -ADD_H5_TEST (tattr2 0 -w80 -v -S tattr2.h5) +ADD_H5_TEST (tattr2 RESULT_CODE 0 -w80 -v -S tattr2.h5) # test for attribute with region references wo verbose mode # ( HDFFV-7838, ) if (H5_WORDS_BIGENDIAN) - ADD_H5_TEST (tattrreg_be 0 -w80 -v -d tattrreg.h5) + ADD_H5_TEST (tattrreg_be RESULT_CODE 0 -w80 -v -d tattrreg.h5) else () - ADD_H5_TEST (tattrreg_le 0 -w80 -v -d tattrreg.h5) + ADD_H5_TEST (tattrreg_le RESULT_CODE 0 -w80 -v -d tattrreg.h5) endif () # test for non-existing file -ADD_H5_ERR_TEST (nosuchfile 1 "unable to open file" nosuchfile.h5) +ADD_H5_TEST (nosuchfile RESULT_CODE 1 RESULT_ERRCHECK "unable to open file" nosuchfile.h5) # test for variable length data types in verbose mode if (H5_WORDS_BIGENDIAN) - ADD_H5_TEST (tvldtypes2be 0 -v tvldtypes1.h5) + ADD_H5_TEST (tvldtypes2be RESULT_CODE 0 -v tvldtypes1.h5) else () - ADD_H5_TEST (tvldtypes2le 0 -v tvldtypes1.h5) + ADD_H5_TEST (tvldtypes2le RESULT_CODE 0 -v tvldtypes1.h5) endif () # test for dataset region references data types in verbose mode if (H5_WORDS_BIGENDIAN) - ADD_H5_TEST (tdataregbe 0 -v tdatareg.h5) + ADD_H5_TEST (tdataregbe RESULT_CODE 0 -v tdatareg.h5) else () - ADD_H5_TEST (tdataregle 0 -v tdatareg.h5) + ADD_H5_TEST (tdataregle RESULT_CODE 0 -v tdatareg.h5) endif () # test for file with datasets that use Fixed Array chunk indices if (USE_FILTER_DEFLATE) # data read internal filters - ADD_H5_TEST (tdset_idx-1 0 -w80 -d tdset_idx.h5) - ADD_H5_TEST (tdset_idx-2 0 -w80 -d -v -a tdset_idx.h5) + ADD_H5_TEST (tdset_idx-1 RESULT_CODE 0 -w80 -d tdset_idx.h5) + ADD_H5_TEST (tdset_idx-2 RESULT_CODE 0 -w80 -d -v -a tdset_idx.h5) endif () From 487769c71612f4f9e9a0da5660d35e77255fddb1 Mon Sep 17 00:00:00 2001 From: Allen Byrne Date: Thu, 4 Sep 2025 10:40:15 -0500 Subject: [PATCH 26/49] Fix the HDF5_SIZEOF_OFF_T issue with mingw --- config/ConfigureChecks.cmake | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/config/ConfigureChecks.cmake b/config/ConfigureChecks.cmake index 5a35691db24..7dc020bca66 100644 --- a/config/ConfigureChecks.cmake +++ b/config/ConfigureChecks.cmake @@ -75,6 +75,9 @@ if (MINGW) set (WINDOWS 1) # MinGW tries to imitate Windows set (CMAKE_REQUIRED_FLAGS "-DWIN32_LEAN_AND_MEAN=1 -DNOGDI=1") set (__USE_MINGW_ANSI_STDIO 1) + if (NOT WIN32) + set (${HDF_PREFIX}_SIZEOF_OFF_T 4) + endif () endif () if (WIN32 AND NOT MINGW) @@ -353,7 +356,9 @@ if (MINGW OR NOT WINDOWS) HDF_CHECK_TYPE_SIZE (ptrdiff_t ${HDF_PREFIX}_SIZEOF_PTRDIFF_T) endif () -HDF_CHECK_TYPE_SIZE (off_t ${HDF_PREFIX}_SIZEOF_OFF_T) +if (NOT MINGW) + HDF_CHECK_TYPE_SIZE (off_t ${HDF_PREFIX}_SIZEOF_OFF_T) +endif () HDF_CHECK_TYPE_SIZE (time_t ${HDF_PREFIX}_SIZEOF_TIME_T) #----------------------------------------------------------------------------- From 6c1e7743a038bd6156fdda4479c73a549fdb38a3 Mon Sep 17 00:00:00 2001 From: Allen Byrne Date: Thu, 4 Sep 2025 11:43:09 -0500 Subject: [PATCH 27/49] Correct OFF_T size for mingw --- .github/workflows/cross-compile.yml | 8 +------- config/ConfigureChecks.cmake | 7 +++---- 2 files changed, 4 insertions(+), 11 deletions(-) diff --git a/.github/workflows/cross-compile.yml b/.github/workflows/cross-compile.yml index bb94313fe86..f143ba42e5c 100644 --- a/.github/workflows/cross-compile.yml +++ b/.github/workflows/cross-compile.yml @@ -67,15 +67,9 @@ jobs: # RUN TESTS - name: CMake Run Tests - run: ctest . --parallel 2 -C ${{ inputs.build_mode }} -V -E "err_compat|filenotclosed|swmr|testhdf5-base|cache_api" + run: ctest . --parallel 2 -C ${{ inputs.build_mode }} -V working-directory: ${{ runner.workspace }}/build - # RUN Failing TESTS - - name: CMake Run Tests - run: ctest . --parallel 2 -C ${{ inputs.build_mode }} -V -R "err_compat|filenotclosed|swmr|testhdf5-base|cache_api" - working-directory: ${{ runner.workspace }}/build - continue-on-error: true - - name: CMake Run Package run: cpack -C ${{ inputs.build_mode }} -V working-directory: ${{ runner.workspace }}/build diff --git a/config/ConfigureChecks.cmake b/config/ConfigureChecks.cmake index 7dc020bca66..ba5f09c00a1 100644 --- a/config/ConfigureChecks.cmake +++ b/config/ConfigureChecks.cmake @@ -75,9 +75,6 @@ if (MINGW) set (WINDOWS 1) # MinGW tries to imitate Windows set (CMAKE_REQUIRED_FLAGS "-DWIN32_LEAN_AND_MEAN=1 -DNOGDI=1") set (__USE_MINGW_ANSI_STDIO 1) - if (NOT WIN32) - set (${HDF_PREFIX}_SIZEOF_OFF_T 4) - endif () endif () if (WIN32 AND NOT MINGW) @@ -357,7 +354,9 @@ if (MINGW OR NOT WINDOWS) endif () if (NOT MINGW) - HDF_CHECK_TYPE_SIZE (off_t ${HDF_PREFIX}_SIZEOF_OFF_T) + HDF_CHECK_TYPE_SIZE (off_t ${HDF_PREFIX}_SIZEOF_OFF_T) +else () + set (${HDF_PREFIX}_SIZEOF_OFF_T 4) endif () HDF_CHECK_TYPE_SIZE (time_t ${HDF_PREFIX}_SIZEOF_TIME_T) From b9a540092a381d0fd3d60516896391f71c9251e0 Mon Sep 17 00:00:00 2001 From: Allen Byrne Date: Thu, 4 Sep 2025 12:03:42 -0500 Subject: [PATCH 28/49] Allow cross-compile workflow to pass with failure testing --- .github/workflows/cross-compile.yml | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/.github/workflows/cross-compile.yml b/.github/workflows/cross-compile.yml index f143ba42e5c..905694d9d5d 100644 --- a/.github/workflows/cross-compile.yml +++ b/.github/workflows/cross-compile.yml @@ -67,9 +67,15 @@ jobs: # RUN TESTS - name: CMake Run Tests - run: ctest . --parallel 2 -C ${{ inputs.build_mode }} -V + run: ctest . --parallel 2 -C ${{ inputs.build_mode }} -V -E "err_compat|filenotclosed|swmr|cache_api" working-directory: ${{ runner.workspace }}/build + # RUN Failing TESTS + - name: CMake Run Tests + run: ctest . --parallel 2 -C ${{ inputs.build_mode }} -V -R "err_compat|filenotclosed|swmr|cache_api" + working-directory: ${{ runner.workspace }}/build + continue-on-error: true + - name: CMake Run Package run: cpack -C ${{ inputs.build_mode }} -V working-directory: ${{ runner.workspace }}/build From 4b318c1f64797e69547b5b9eb442a733fef6be1a Mon Sep 17 00:00:00 2001 From: Allen Byrne Date: Tue, 16 Sep 2025 08:57:27 -0500 Subject: [PATCH 29/49] Fix h5dump property command --- tools/test/h5dump/CMakeTests.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/test/h5dump/CMakeTests.cmake b/tools/test/h5dump/CMakeTests.cmake index 0aa47e2921b..69749568b2e 100644 --- a/tools/test/h5dump/CMakeTests.cmake +++ b/tools/test/h5dump/CMakeTests.cmake @@ -651,7 +651,7 @@ macro (ADD_H5_TEST testname) -D "TEST_ENV_VALUE:STRING=${ARG_ENVVAL}" -P "${HDF_RESOURCES_DIR}/runTest.cmake" ) - set_tests_properties (H5DUMP-${resultfile} PROPERTIES + set_tests_properties (H5DUMP-${ctest_testname} PROPERTIES ENVIRONMENT "${CROSSCOMPILING_PATH}" WORKING_DIRECTORY "${PROJECT_BINARY_DIR}/testfiles/std" ) From 8c6468f2a2a752793b0d4685346b1b4ed4ff458c Mon Sep 17 00:00:00 2001 From: Allen Byrne Date: Tue, 16 Sep 2025 09:47:44 -0500 Subject: [PATCH 30/49] install wine in workflow --- .github/workflows/cross-compile.yml | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/.github/workflows/cross-compile.yml b/.github/workflows/cross-compile.yml index 905694d9d5d..3e4a6ba7792 100644 --- a/.github/workflows/cross-compile.yml +++ b/.github/workflows/cross-compile.yml @@ -25,6 +25,23 @@ jobs: sudo apt-get install -y mingw-w64 sudo apt-get install gfortran-mingw-w64-x86-64-win32 + - name: Add WineHQ repository key + run: | + sudo mkdir -pm755 /etc/apt/keyrings + sudo wget -O /etc/apt/keyrings/winehq-archive.key https://dl.winehq.org/wine-builds/winehq.key + + - name: Add WineHQ repository + run: sudo wget -NP /etc/apt/sources.list.d/ https://dl.winehq.org/wine-builds/ubuntu/dists/$(lsb_release -cs)/winehq-$(lsb_release -cs).sources + + - name: Update package list + run: sudo apt update + + - name: Install Wine64 + run: sudo apt install --install-recommends winehq-stable + + - name: Verify Wine installation + run: wine --version + - name: Install Dependencies uses: ssciwr/doxygen-install@v1 with: From 178eab9d31b835187b393683e5463b6e964d3ac3 Mon Sep 17 00:00:00 2001 From: Allen Byrne Date: Tue, 16 Sep 2025 10:00:58 -0500 Subject: [PATCH 31/49] revert install wine for workflow --- .github/workflows/cross-compile.yml | 17 ----------------- 1 file changed, 17 deletions(-) diff --git a/.github/workflows/cross-compile.yml b/.github/workflows/cross-compile.yml index 3e4a6ba7792..905694d9d5d 100644 --- a/.github/workflows/cross-compile.yml +++ b/.github/workflows/cross-compile.yml @@ -25,23 +25,6 @@ jobs: sudo apt-get install -y mingw-w64 sudo apt-get install gfortran-mingw-w64-x86-64-win32 - - name: Add WineHQ repository key - run: | - sudo mkdir -pm755 /etc/apt/keyrings - sudo wget -O /etc/apt/keyrings/winehq-archive.key https://dl.winehq.org/wine-builds/winehq.key - - - name: Add WineHQ repository - run: sudo wget -NP /etc/apt/sources.list.d/ https://dl.winehq.org/wine-builds/ubuntu/dists/$(lsb_release -cs)/winehq-$(lsb_release -cs).sources - - - name: Update package list - run: sudo apt update - - - name: Install Wine64 - run: sudo apt install --install-recommends winehq-stable - - - name: Verify Wine installation - run: wine --version - - name: Install Dependencies uses: ssciwr/doxygen-install@v1 with: From bab051f8f75b052712e464771ba7c8f49f4e240f Mon Sep 17 00:00:00 2001 From: Allen Byrne Date: Tue, 16 Sep 2025 10:13:42 -0500 Subject: [PATCH 32/49] Try another wine install step --- .github/workflows/cross-compile.yml | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/.github/workflows/cross-compile.yml b/.github/workflows/cross-compile.yml index 905694d9d5d..d72beee9709 100644 --- a/.github/workflows/cross-compile.yml +++ b/.github/workflows/cross-compile.yml @@ -22,6 +22,22 @@ jobs: sudo apt-get update sudo apt-get install ninja-build graphviz sudo apt install libssl3 libssl-dev libcurl4 libcurl4-openssl-dev + + - name: Install Wine64 and dependencies + run: | + sudo dpkg --add-architecture i386 + sudo mkdir -pm755 /etc/apt/keyrings + sudo wget -O /etc/apt/keyrings/winehq-archive.key https://dl.winehq.org/wine-builds/winehq.key + sudo wget -NP /etc/apt/sources.list.d/ https://dl.winehq.org/wine-builds/ubuntu/dists/$(lsb_release -cs)/winehq-$(lsb_release -cs).sources + sudo apt update + sudo apt install --install-recommends winehq-stable + # Install win64 components (required for 64-bit applications) + # These can sometimes be auto-installed but it's safer to ensure they are present + WINEARCH=win64 winecfg # This will setup the win64 environment + + - name: Install MinGW64 Cross-Compiler + run: | + sudo apt update sudo apt-get install -y mingw-w64 sudo apt-get install gfortran-mingw-w64-x86-64-win32 From dd0bc8fbed049d2e92ecffc784633fff4c4a2cdb Mon Sep 17 00:00:00 2001 From: Allen Byrne Date: Tue, 16 Sep 2025 12:33:14 -0500 Subject: [PATCH 33/49] try another wine install --- .github/workflows/cross-compile.yml | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/.github/workflows/cross-compile.yml b/.github/workflows/cross-compile.yml index d72beee9709..ddde31473e7 100644 --- a/.github/workflows/cross-compile.yml +++ b/.github/workflows/cross-compile.yml @@ -25,15 +25,15 @@ jobs: - name: Install Wine64 and dependencies run: | - sudo dpkg --add-architecture i386 - sudo mkdir -pm755 /etc/apt/keyrings - sudo wget -O /etc/apt/keyrings/winehq-archive.key https://dl.winehq.org/wine-builds/winehq.key - sudo wget -NP /etc/apt/sources.list.d/ https://dl.winehq.org/wine-builds/ubuntu/dists/$(lsb_release -cs)/winehq-$(lsb_release -cs).sources sudo apt update - sudo apt install --install-recommends winehq-stable - # Install win64 components (required for 64-bit applications) - # These can sometimes be auto-installed but it's safer to ensure they are present - WINEARCH=win64 winecfg # This will setup the win64 environment + sudo apt install -y wine64 winbind + # Optional: Start a persistent wineserver + wineserver -k # Kill a potential old server + wineserver -p # Start a new server + wine64 wineboot # Run a process to start up all background wine processes + + - name: Verify Wine64 installation + run: wine64 --version - name: Install MinGW64 Cross-Compiler run: | From a82f77827d49e96ce54565f910077e4259276989 Mon Sep 17 00:00:00 2001 From: Allen Byrne Date: Tue, 16 Sep 2025 12:45:59 -0500 Subject: [PATCH 34/49] Remove wine server option --- .github/workflows/cross-compile.yml | 4 ---- 1 file changed, 4 deletions(-) diff --git a/.github/workflows/cross-compile.yml b/.github/workflows/cross-compile.yml index ddde31473e7..72056d2205c 100644 --- a/.github/workflows/cross-compile.yml +++ b/.github/workflows/cross-compile.yml @@ -27,10 +27,6 @@ jobs: run: | sudo apt update sudo apt install -y wine64 winbind - # Optional: Start a persistent wineserver - wineserver -k # Kill a potential old server - wineserver -p # Start a new server - wine64 wineboot # Run a process to start up all background wine processes - name: Verify Wine64 installation run: wine64 --version From f09e4510e07766a690694265b614fca03bdcd68c Mon Sep 17 00:00:00 2001 From: Allen Byrne Date: Tue, 16 Sep 2025 13:27:35 -0500 Subject: [PATCH 35/49] Disable tests until wine is properly installed --- .github/workflows/cross-compile.yml | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/.github/workflows/cross-compile.yml b/.github/workflows/cross-compile.yml index 72056d2205c..7db57ca57e7 100644 --- a/.github/workflows/cross-compile.yml +++ b/.github/workflows/cross-compile.yml @@ -28,8 +28,8 @@ jobs: sudo apt update sudo apt install -y wine64 winbind - - name: Verify Wine64 installation - run: wine64 --version +# - name: Verify Wine64 installation +# run: wine64 --version - name: Install MinGW64 Cross-Compiler run: | @@ -78,15 +78,15 @@ jobs: working-directory: ${{ runner.workspace }}/build # RUN TESTS - - name: CMake Run Tests - run: ctest . --parallel 2 -C ${{ inputs.build_mode }} -V -E "err_compat|filenotclosed|swmr|cache_api" - working-directory: ${{ runner.workspace }}/build +# - name: CMake Run Tests +# run: ctest . --parallel 2 -C ${{ inputs.build_mode }} -V -E "err_compat|filenotclosed|swmr|cache_api" +# working-directory: ${{ runner.workspace }}/build # RUN Failing TESTS - - name: CMake Run Tests - run: ctest . --parallel 2 -C ${{ inputs.build_mode }} -V -R "err_compat|filenotclosed|swmr|cache_api" - working-directory: ${{ runner.workspace }}/build - continue-on-error: true +# - name: CMake Run Tests +# run: ctest . --parallel 2 -C ${{ inputs.build_mode }} -V -R "err_compat|filenotclosed|swmr|cache_api" +# working-directory: ${{ runner.workspace }}/build +# continue-on-error: true - name: CMake Run Package run: cpack -C ${{ inputs.build_mode }} -V From 7cfbf893aa5eab75c0c14a09d59d80a52821c609 Mon Sep 17 00:00:00 2001 From: Allen Byrne Date: Wed, 17 Sep 2025 07:55:36 -0500 Subject: [PATCH 36/49] Correct name of binary --- .github/workflows/cross-compile.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/cross-compile.yml b/.github/workflows/cross-compile.yml index 7db57ca57e7..ff42e750e5f 100644 --- a/.github/workflows/cross-compile.yml +++ b/.github/workflows/cross-compile.yml @@ -100,6 +100,6 @@ jobs: uses: actions/upload-artifact@v4 with: name: tgz-ubuntu-2404_mingw64-${{ inputs.build_mode }}-binary - path: ${{ runner.workspace }}/build/HDF5-*-Linux.tar.gz + path: ${{ runner.workspace }}/build/HDF5-*-win64.tar.gz if-no-files-found: error # 'warn' or 'ignore' are also available, defaults to `warn` if: ${{ inputs.build_mode != 'Debug' }} From b83eaf984d42cb8ff4b43435cf2f69b5463b0769 Mon Sep 17 00:00:00 2001 From: Allen Byrne Date: Wed, 17 Sep 2025 08:55:19 -0500 Subject: [PATCH 37/49] Correct binary ext --- .github/workflows/cross-compile.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/cross-compile.yml b/.github/workflows/cross-compile.yml index ff42e750e5f..7131d193297 100644 --- a/.github/workflows/cross-compile.yml +++ b/.github/workflows/cross-compile.yml @@ -100,6 +100,6 @@ jobs: uses: actions/upload-artifact@v4 with: name: tgz-ubuntu-2404_mingw64-${{ inputs.build_mode }}-binary - path: ${{ runner.workspace }}/build/HDF5-*-win64.tar.gz + path: ${{ runner.workspace }}/build/HDF5-*-win64.zip if-no-files-found: error # 'warn' or 'ignore' are also available, defaults to `warn` if: ${{ inputs.build_mode != 'Debug' }} From 6b0b534f0212ff6e5e9493d3146ac16c2b9927c1 Mon Sep 17 00:00:00 2001 From: Allen Byrne Date: Mon, 22 Sep 2025 09:20:27 -0500 Subject: [PATCH 38/49] Merge develop changes --- .github/workflows/macos-26-matrix.yml | 285 ++++++++++++++++++++++++++ doxygen/dox/GettingStarted.dox | 2 +- doxygen/dox/ReferenceManual.dox | 53 ++--- doxygen/hdf5_header.html | 2 +- doxygen/hdf5doxy.css | 146 +++++++++++++ release_docs/CHANGELOG.md | 6 + src/H5.c | 3 + src/H5B.c | 83 ++++++-- src/H5private.h | 2 +- src/H5public.h | 20 +- tools/test/h5dump/h5dumpgentest.c | 49 +++-- tools/test/h5dump/h5dumpgentest.h | 4 +- tools/test/h5gentest.c | 26 ++- tools/test/h5repack/h5repackgentest.c | 89 ++++++++ tools/test/h5repack/h5repackgentest.h | 1 + tools/test/misc/CMakeTestsMkgrp.cmake | 210 ++++++++++++++----- 16 files changed, 853 insertions(+), 128 deletions(-) create mode 100644 .github/workflows/macos-26-matrix.yml diff --git a/.github/workflows/macos-26-matrix.yml b/.github/workflows/macos-26-matrix.yml new file mode 100644 index 00000000000..bee66574c49 --- /dev/null +++ b/.github/workflows/macos-26-matrix.yml @@ -0,0 +1,285 @@ +name: macOS-26 Matrix Testing + +on: + push: + branches: + - develop + pull_request: + branches: + - develop + +jobs: + build-test: + strategy: + fail-fast: false + matrix: + # Test combinations of key options + include: + # Shared libraries with OpenMPI + - name: "macOS-26 Shared OpenMPI Fortran Java" + os: macos-26 + mpi: openmpi + shared_libs: ON + static_libs: OFF + cpp: OFF + fortran: OFF + java: ON + hl: ON + threadsafe: OFF + parallel: ON + tools: ON + tests: ON + examples: ON + zlib: ON + szip: ON + + # Shared libraries with MPICH + - name: "macOS-26 Shared MPICH Fortran" + os: macos-26 + mpi: mpich + shared_libs: ON + static_libs: OFF + cpp: OFF + fortran: ON + java: OFF + hl: ON + threadsafe: OFF + parallel: ON + tools: ON + tests: ON + examples: ON + zlib: ON + szip: ON + + # Static libraries with OpenMPI + - name: "macOS-26 Static OpenMPI" + os: macos-26 + mpi: openmpi + shared_libs: OFF + static_libs: ON + cpp: OFF + fortran: OFF + java: OFF + hl: ON + threadsafe: OFF + parallel: ON + tools: ON + tests: ON + examples: ON + zlib: ON + szip: OFF + + # Both static and shared with MPICH + - name: "macOS-26 Both MPICH All Features" + os: macos-26 + mpi: mpich + shared_libs: ON + static_libs: ON + cpp: ON + fortran: ON + java: OFF + hl: ON + threadsafe: OFF + parallel: ON + tools: ON + tests: ON + examples: ON + zlib: ON + szip: ON + + # Serial build with thread-safety + - name: "macOS-26 Serial Threadsafe" + os: macos-26 + mpi: none + shared_libs: ON + static_libs: ON + cpp: ON + fortran: OFF + java: OFF + hl: OFF + threadsafe: ON + parallel: OFF + tools: ON + tests: ON + examples: ON + zlib: ON + szip: ON + + # Minimal configuration + - name: "macOS-26 Minimal Config" + os: macos-26 + mpi: none + shared_libs: ON + static_libs: OFF + cpp: OFF + fortran: OFF + java: OFF + hl: OFF + threadsafe: OFF + parallel: OFF + tools: OFF + tests: ON + examples: OFF + zlib: OFF + szip: OFF + + # Plugin support with OpenMPI + - name: "macOS-26 Plugins OpenMPI" + os: macos-26 + mpi: openmpi + shared_libs: ON + static_libs: OFF + cpp: OFF + fortran: OFF + java: OFF + hl: ON + threadsafe: OFF + parallel: ON + tools: ON + tests: ON + examples: ON + zlib: ON + szip: ON + plugins: ON + + # No High Level API with MPICH + - name: "macOS-26 No HL MPICH" + os: macos-26 + mpi: mpich + shared_libs: ON + static_libs: ON + cpp: ON + fortran: OFF + java: OFF + hl: OFF + threadsafe: OFF + parallel: ON + tools: ON + tests: ON + examples: ON + zlib: ON + szip: ON + + name: ${{ matrix.name }} + runs-on: ${{ matrix.os }} + if: "!contains(github.event.head_commit.message, 'skip-ci')" + + steps: + - name: Install Dependencies + run: | + # Install base dependencies + brew install autoconf automake libtool + + # Install compression libraries + brew install zlib + if [[ "${{ matrix.szip }}" == "ON" ]]; then + brew install libaec + fi + + # Install MPI libraries + if [[ "${{ matrix.mpi }}" == "openmpi" ]]; then + brew install openmpi + elif [[ "${{ matrix.mpi }}" == "mpich" ]]; then + brew install mpich + fi + + + - name: Get Sources + uses: actions/checkout@v5 + + - name: Configure + run: | + mkdir "${{ runner.workspace }}/build" + cd "${{ runner.workspace }}/build" + + # Base CMake options + CMAKE_OPTS="-G Ninja" + CMAKE_OPTS="$CMAKE_OPTS -DCMAKE_BUILD_TYPE=Release" + CMAKE_OPTS="$CMAKE_OPTS -DBUILD_SHARED_LIBS=${{ matrix.shared_libs }}" + CMAKE_OPTS="$CMAKE_OPTS -DBUILD_STATIC_LIBS=${{ matrix.static_libs }}" + CMAKE_OPTS="$CMAKE_OPTS -DHDF5_BUILD_CPP_LIB=${{ matrix.cpp }}" + CMAKE_OPTS="$CMAKE_OPTS -DHDF5_BUILD_FORTRAN=${{ matrix.fortran }}" + CMAKE_OPTS="$CMAKE_OPTS -DHDF5_BUILD_JAVA=${{ matrix.java }}" + CMAKE_OPTS="$CMAKE_OPTS -DHDF5_BUILD_HL_LIB=${{ matrix.hl }}" + CMAKE_OPTS="$CMAKE_OPTS -DHDF5_ENABLE_THREADSAFE=${{ matrix.threadsafe }}" + CMAKE_OPTS="$CMAKE_OPTS -DHDF5_ENABLE_PARALLEL=${{ matrix.parallel }}" + CMAKE_OPTS="$CMAKE_OPTS -DHDF5_BUILD_TOOLS=${{ matrix.tools }}" + CMAKE_OPTS="$CMAKE_OPTS -DBUILD_TESTING=${{ matrix.tests }}" + CMAKE_OPTS="$CMAKE_OPTS -DHDF5_BUILD_EXAMPLES=${{ matrix.examples }}" + CMAKE_OPTS="$CMAKE_OPTS -DHDF5_ENABLE_ZLIB_SUPPORT=${{ matrix.zlib }}" + CMAKE_OPTS="$CMAKE_OPTS -DHDF5_ENABLE_SZIP_SUPPORT=${{ matrix.szip }}" + CMAKE_OPTS="$CMAKE_OPTS -DHDF5_ALLOW_UNSUPPORTED=ON" + + # Plugin support if specified + if [[ "${{ matrix.plugins }}" == "ON" ]]; then + CMAKE_OPTS="$CMAKE_OPTS -DHDF5_ENABLE_PLUGIN_SUPPORT=ON" + CMAKE_OPTS="$CMAKE_OPTS -DHDF5_ALLOW_EXTERNAL_SUPPORT=TGZ" + CMAKE_OPTS="$CMAKE_OPTS -DPLUGIN_USE_LOCALCONTENT=OFF" + fi + + # Set Java environment if needed + if [[ "${{ matrix.java }}" == "ON" ]]; then + export JAVA_HOME=$(/usr/libexec/java_home) + CMAKE_OPTS="$CMAKE_OPTS -DJAVA_HOME=$JAVA_HOME" + fi + + # Set Fortran compiler if needed + if [[ "${{ matrix.fortran }}" == "ON" ]]; then + CMAKE_OPTS="$CMAKE_OPTS -DCMAKE_Fortran_COMPILER=gfortran-15" + fi + + # MPI configuration + if [[ "${{ matrix.parallel }}" == "ON" ]]; then + CMAKE_OPTS="$CMAKE_OPTS -DMPIEXEC_MAX_NUMPROCS=2" + if [[ "${{ matrix.mpi }}" == "openmpi" ]]; then + CMAKE_OPTS="$CMAKE_OPTS -DMPI_C_COMPILER=mpicc" + CMAKE_OPTS="$CMAKE_OPTS -DMPIEXEC_PREFLAGS=--oversubscribe" + elif [[ "${{ matrix.mpi }}" == "mpich" ]]; then + CMAKE_OPTS="$CMAKE_OPTS -DMPI_C_COMPILER=mpicc" + CMAKE_OPTS="$CMAKE_OPTS -DCMAKE_Fortran_COMPILER=mpifort" + sudo ln -s /opt/homebrew/bin/gfortran-15 /opt/homebrew/bin/gfortran + mpifort --version + fi + fi + + echo "Configuration options: $CMAKE_OPTS" + cmake $CMAKE_OPTS "$GITHUB_WORKSPACE" + shell: bash + + - name: Build + run: cmake --build . --config Release --parallel 2 + working-directory: ${{ runner.workspace }}/build + + - name: Test + run: | + # Run tests with appropriate settings for each configuration + if [[ "${{ matrix.parallel }}" == "ON" ]]; then + # For parallel builds, limit concurrent tests + ctest . -C Release -V --parallel 1 + else + # For serial builds, can run more tests concurrently + ctest . -C Release -V --parallel 2 + fi + working-directory: ${{ runner.workspace }}/build + env: + # Set test timeout + CTEST_TIMEOUT: 3600 + + - name: Upload Test Results + uses: actions/upload-artifact@v4 + if: always() + with: + name: test-results-${{ matrix.name }} + path: | + ${{ runner.workspace }}/build/Testing/Temporary/CTestCostData.txt + ${{ runner.workspace }}/build/Testing/Temporary/LastTest.log + retention-days: 7 + + - name: Show Test Summary + if: always() + run: | + echo "=== Test Summary for ${{ matrix.name }} ===" + if [[ -f Testing/Temporary/LastTest.log ]]; then + tail -50 Testing/Temporary/LastTest.log + fi + working-directory: ${{ runner.workspace }}/build diff --git a/doxygen/dox/GettingStarted.dox b/doxygen/dox/GettingStarted.dox index 52ad2c199bb..c7606134489 100644 --- a/doxygen/dox/GettingStarted.dox +++ b/doxygen/dox/GettingStarted.dox @@ -36,7 +36,7 @@ Step by step instructions for learning HDF5 that include programming examples -\subsection subsec_learn_tutor The HDF Group Tutorials and Examples +\subsection subsec_learn_tutor The HDF Group Tutorials & Examples These tutorials and examples are available for learning about the HDF5 High Level APIs, tools, Parallel HDF5, and the VDS and SWMR features: diff --git a/doxygen/dox/ReferenceManual.dox b/doxygen/dox/ReferenceManual.dox index 58078aa3008..6f0cdb7a30c 100644 --- a/doxygen/dox/ReferenceManual.dox +++ b/doxygen/dox/ReferenceManual.dox @@ -14,103 +14,106 @@ The functions provided by the HDF5 API are grouped into the following - - - - - - - - - - - - - - - - - + +
Core Reference Manual Modules
ModuleLanguageDescription
Attributes (H5A)@ref H5A "C"@ref H5::Attribute "C++"@ref FH5A "Fortran"@ref JH5A "Java"HDF5 attribute is a small metadata object describing the nature and/or intended usage of a primary data object. +Attributes (H5A)@ref H5A "C"@ref H5::Attribute "C++"@ref FH5A "Fortran"@ref JH5A "Java"HDF5 attribute is a small metadata object describing the nature and/or intended usage of a primary data object.
Datasets (H5D)@ref H5D "C"@ref H5::DataSet "C++"@ref FH5D "Fortran"@ref JH5D "Java"Manage HDF5 datasets, including the transfer of data between memory and disk and the description of dataset properties. +Datasets (H5D)@ref H5D "C"@ref H5::DataSet "C++"@ref FH5D "Fortran"@ref JH5D "Java"Manage HDF5 datasets, including the transfer of data between memory and disk and the description of dataset properties.
Dataspaces (H5S)@ref H5S "C"@ref H5::DataSpace "C++"@ref FH5S "Fortran"@ref JH5S "Java"HDF5 dataspaces describe the shape of datasets in memory or in HDF5 files. +Dataspaces (H5S)@ref H5S "C"@ref H5::DataSpace "C++"@ref FH5S "Fortran"@ref JH5S "Java"HDF5 dataspaces describe the shape of datasets in memory or in HDF5 files.
Datatypes (H5T)@ref H5T "C"@ref H5::DataType "C++"@ref FH5T "Fortran"@ref JH5T "Java"HDF5 datatypes describe the element type of HDF5 datasets and attributes. +Datatypes (H5T)@ref H5T "C"@ref H5::DataType "C++"@ref FH5T "Fortran"@ref JH5T "Java"HDF5 datatypes describe the element type of HDF5 datasets and attributes.
Error Handling (H5E)@ref H5E "C"@ref H5::Exception "C++"@ref FH5E "Fortran"@ref JH5E "Java"HDF5 library error reporting. +Error Handling (H5E)@ref H5E "C"@ref H5::Exception "C++"@ref FH5E "Fortran"@ref JH5E "Java"HDF5 library error reporting.
Event Set (H5ES)@ref H5ES "C""C++"@ref FH5ES "Fortran""Java"HDF5 event set life cycle used with HDF5 VOL connectors that enable the asynchronous feature in HDF5. +Event Set (H5ES)@ref H5ES "C"C++@ref FH5ES "Fortran"JavaHDF5 event set life cycle used with HDF5 VOL connectors that enable the asynchronous feature in HDF5.
Files (H5F)@ref H5F "C"@ref H5::H5File "C++"@ref FH5F "Fortran"@ref JH5F "Java"Manage HDF5 files. +Files (H5F)@ref H5F "C"@ref H5::H5File "C++"@ref FH5F "Fortran"@ref JH5F "Java"Manage HDF5 files.
Filters (H5Z)@ref H5Z "C""C++"@ref FH5Z "Fortran"@ref JH5Z "Java"Manage HDF5 user-defined filters. +Filters (H5Z)@ref H5Z "C"C++@ref FH5Z "Fortran"@ref JH5Z "Java"Manage HDF5 user-defined filters.
Groups (H5G)@ref H5G "C"@ref H5::Group "C++"@ref FH5G "Fortran"@ref JH5G "Java"Manage HDF5 groups. +Groups (H5G)@ref H5G "C"@ref H5::Group "C++"@ref FH5G "Fortran"@ref JH5G "Java"Manage HDF5 groups.
Identifiers (H5I)@ref H5I "C"@ref H5::IdComponent "C++"@ref FH5I "Fortran"@ref JH5I "Java"Manage identifiers defined by the HDF5 library. +Identifiers (H5I)@ref H5I "C"@ref H5::IdComponent "C++"@ref FH5I "Fortran"@ref JH5I "Java"Manage identifiers defined by the HDF5 library.
Library General (%H5)@ref H5 "C"@ref H5::H5Library "C++"@ref FH5 "Fortran"@ref JH5 "Java"Manage the life cycle of HDF5 library instances. +Library General (%H5)@ref H5 "C"@ref H5::H5Library "C++"@ref FH5 "Fortran"@ref JH5 "Java"Manage the life cycle of HDF5 library instances.
Links (H5L)@ref H5L "C""C++"@ref FH5L "Fortran"@ref JH5L "Java"Manage HDF5 links and link types. +Links (H5L)@ref H5L "C"C++@ref FH5L "Fortran"@ref JH5L "Java"Manage HDF5 links and link types.
Objects (H5O)@ref H5O "C""C++"@ref FH5O "Fortran"@ref JH5O "Java"Manage HDF5 objects (groups, datasets, datatype objects). +Objects (H5O)@ref H5O "C"C++@ref FH5O "Fortran"@ref JH5O "Java"Manage HDF5 objects (groups, datasets, datatype objects).
Property Lists (H5P)@ref H5P "C"@ref H5::PropList "C++"@ref FH5P "Fortran"@ref JH5P "Java"HDF5 property lists are the main vehicle to configure the behavior of HDF5 API functions. +Property Lists (H5P)@ref H5P "C"@ref H5::PropList "C++"@ref FH5P "Fortran"@ref JH5P "Java"HDF5 property lists are the main vehicle to configure the behavior of HDF5 API functions.
Dynamically-loaded Plugins (H5PL)@ref H5PL "C""C++""Fortran"@ref JH5PL "Java"Manage the loading behavior of HDF5 plugins. +Dynamically-loaded Plugins (H5PL)@ref H5PL "C"C++Fortran@ref JH5PL "Java"Manage the loading behavior of HDF5 plugins.
References (H5R)@ref H5R "C""C++"@ref FH5R "Fortran"@ref JH5R "Java"Manage HDF5 references (HDF5 objects, attributes, and selections on datasets a.k.a. dataset regions). +References (H5R)@ref H5R "C"C++@ref FH5R "Fortran"@ref JH5R "Java"Manage HDF5 references (HDF5 objects, attributes, and selections on datasets a.k.a. dataset regions).
VOL Connector (H5VL)@ref H5VL "C""C++"@ref FH5VL "Fortran"@ref JH5VL "Java"Manage HDF5 VOL connector plugins. +Virtual File Driver (H5VFD)@ref H5VFD "C"C++FortranJavaManage HDF5 Virtual File Driver. +
VOL Connector (H5VL)@ref H5VL "C"C++@ref FH5VL "Fortran"@ref JH5VL "Java"Manage HDF5 VOL connector plugins.
-Language + - - - - - - -
High-level Reference Manual Modules
ModuleDescription
ModuleLanguageDescription
HDF5 Lite APIs (H5LT,H5LD)@ref H5LT "C""C++"@ref FH5LT "Fortran""Java"Functions to simplify creating and manipulating datasets, attributes and other features. +HDF5 Lite APIs (H5LT,H5LD)@ref H5LT "C"C++@ref FH5LT "Fortran"JavaFunctions to simplify creating and manipulating datasets, attributes and other features.
HDF5 Images API (H5IM)@ref H5IM "C""C++"@ref FH5IM "Fortran""Java"Creating and manipulating HDF5 datasets intended to be interpreted as images. +HDF5 Images API (H5IM)@ref H5IM "C"C++@ref FH5IM "Fortran"JavaCreating and manipulating HDF5 datasets intended to be interpreted as images.
HDF5 Table APIs (H5TB)@ref H5TB "C""C++"@ref FH5TB "Fortran""Java"Creating and manipulating HDF5 datasets intended to be interpreted as tables. +HDF5 Table APIs (H5TB)@ref H5TB "C"C++@ref FH5TB "Fortran"JavaCreating and manipulating HDF5 datasets intended to be interpreted as tables.
HDF5 Packet Table APIs (H5PT)@ref H5PT "C""C++""Fortran""Java"Creating and manipulating HDF5 datasets to support append- and read-only operations on table data. +HDF5 Packet Table APIs (H5PT)@ref H5PT "C"C++FortranJavaCreating and manipulating HDF5 datasets to support append- and read-only operations on table data.
HDF5 Dimension Scales APIs (H5DS)@ref H5DS "C""C++"@ref FH5DS "Fortran""Java"Creating and manipulating HDF5 datasets that are associated with the dimension of another HDF5 dataset. +HDF5 Dimension Scales APIs (H5DS)@ref H5DS "C"C++@ref FH5DS "Fortran"JavaCreating and manipulating HDF5 datasets that are associated with the dimension of another HDF5 dataset.
HDF5 Optimizations APIs (H5DO)@ref H5DO "C""C++"@ref FH5DO "Fortran""Java"Bypassing default HDF5 behavior in order to optimize for specific use cases. +HDF5 Optimizations APIs (H5DO)@ref H5DO "C"C++@ref FH5DO "Fortran"JavaBypassing default HDF5 behavior in order to optimize for specific use cases.
Extensions (H5LR, H5LT)@ref H5LR "C""C++""Fortran""Java" +Extensions (H5LR, H5LT)@ref H5LR "C"C++FortranJava
diff --git a/doxygen/hdf5_header.html b/doxygen/hdf5_header.html index f93de244773..724b4155b83 100644 --- a/doxygen/hdf5_header.html +++ b/doxygen/hdf5_header.html @@ -23,7 +23,7 @@ -
Please, help us to better serve our user community by answering the following short survey: https://www.hdfgroup.org/website-survey/
+
Help us improve by taking our short survey: https://www.hdfgroup.org/website-survey/