summaryrefslogtreecommitdiffstats
path: root/fortran
diff options
context:
space:
mode:
authorjhendersonHDF <jhenderson@hdfgroup.org>2023-10-21 01:08:49 (GMT)
committerGitHub <noreply@github.com>2023-10-21 01:08:49 (GMT)
commitb16808d35160fb0d22999447dbf53838d7918a7a (patch)
treeeaf7a8cb712da1f2b200f6b2f0a44ed538d50409 /fortran
parent302f54a566533615545f76af8f34f2665341539b (diff)
downloadhdf5-b16808d35160fb0d22999447dbf53838d7918a7a.zip
hdf5-b16808d35160fb0d22999447dbf53838d7918a7a.tar.gz
hdf5-b16808d35160fb0d22999447dbf53838d7918a7a.tar.bz2
Sync with develop (#3737)
* Correct ld in format strings in cmpd_dset.c (#3697) Removes clang warnings * Clean up comments. (#3695) * Add NVidia compiler support and CI (#3686) * Work around Theta system issue failure in links test (#3710) When the Subfiling VFD is enabled, the links test may try to initialize the Subfiling VFD and call MPI_Init_thread. On Theta, this appears to have an issue that will cause the links test to fail. Reworked the test to check for the same conditions in a more roundabout way that doesn't involved initializing the Subfiling VFD * Fix issue with unmatched messages in ph5diff (#3719) * provide an alternative to mapfile for older bash (#3717) * Attempt to quiet some warnings with cray compilers. (#3724) * Fix CMake VOL passthrough tests by copying files to correct directory (#3721) * Develop intel split (#3722) * Split intel compiler flags into sub-folders * Update Intel options for warnings * Mostly CMake, Autotools needs additional work * Fixes and adjustments to t_filters_parallel (#3714) Broadcast number of datasets to create in multi-dataset I/O cases so that interference with random number generation doesn't cause mismatches between ranks Set fill time for datasets to "never" by default and adjust on a per-test basis to avoid writing fill values to chunks when it's unnecessary Reduce number of loops run in some tests when performing multi-dataset I/O Fix an issue in the "fill time never" test where data verification could fill if file space reuse causes application buffers to be filled with chosen fill value when reading from datasets with uninitialized storage Skip multi-chunk I/O test configurations for multi-dataset I/O configurations when the TestExpress level is > 1 since those tests can be more stressful on the file system Disable use of persistent file free space management for now since it occasionally runs into an infinite loop in the library's free space management code * Suppress cast-qual warning in H5TB Fortran wrapper (#3728) This interface is fundamentally broken, const-wise. * Add new API function H5Pget_actual_select_io_mode() (#2974) This function allows the user to determine if the library performed selection I/O, vector I/O, or scalar (legacy) I/O during the last HDF5 operation performed with the provided DXPL. Expanded existing tests to check this functionality. * Test scripts now execute in-source with creation of tmp dir (#3723) Fixes a few issues created in #3580: * Fixes a problem where committed tools test files were deleted when cleaning after an in-source build * Fixes issues with test file paths in Autotools tools test scripts * Add -h and --help as flags in h5cc & h5fc (#3729) Adds these common help flags in addition to -help * Update the library version matrix for H5Pset_libver_bounds() (#3702) * Fixed #3524 Added 1.12, 1.14, and 1.16 to the table for libver bounds in the H5Pset_libver_bounds docs. * Remove references to LIBVER_V116 --------- Co-authored-by: H. Joe Lee <hyoklee@hdfgroup.org> Co-authored-by: Allen Byrne <50328838+byrnHDF@users.noreply.github.com> Co-authored-by: Scot Breitenfeld <brtnfld@hdfgroup.org> Co-authored-by: Dana Robinson <43805+derobins@users.noreply.github.com> Co-authored-by: Neil Fortner <fortnern@gmail.com> Co-authored-by: Glenn Song <43005495+glennsong09@users.noreply.github.com> Co-authored-by: bmribler <39579120+bmribler@users.noreply.github.com>
Diffstat (limited to 'fortran')
-rw-r--r--fortran/src/CMakeLists.txt2
-rw-r--r--fortran/src/h5fc.in22
-rw-r--r--fortran/test/tH5D.F908
-rw-r--r--fortran/test/tH5E_F03.F908
-rw-r--r--fortran/test/tH5F.F9018
-rw-r--r--fortran/test/tH5G.F906
-rw-r--r--fortran/test/tH5O_F03.F9017
-rw-r--r--fortran/test/tH5P_F03.F902
-rw-r--r--fortran/test/tH5Sselect.F903
-rw-r--r--fortran/test/tH5T.F902
-rw-r--r--fortran/test/tH5T_F03.F902
-rw-r--r--fortran/test/tH5Z.F908
-rw-r--r--fortran/test/vol_connector.F901
-rw-r--r--fortran/testpar/async.F904
14 files changed, 30 insertions, 73 deletions
diff --git a/fortran/src/CMakeLists.txt b/fortran/src/CMakeLists.txt
index 199a0c8..57e17e5 100644
--- a/fortran/src/CMakeLists.txt
+++ b/fortran/src/CMakeLists.txt
@@ -332,7 +332,7 @@ if (BUILD_STATIC_LIBS)
target_compile_options(${HDF5_F90_LIB_TARGET} PRIVATE "${HDF5_CMAKE_Fortran_FLAGS}")
target_compile_definitions(${HDF5_F90_LIB_TARGET}
PRIVATE
- "$<$<STREQUAL:x${CMAKE_Fortran_SIMULATE_ID},xMSVC>:HDF5F90_WINDOWS">
+ "$<$<STREQUAL:x${CMAKE_Fortran_SIMULATE_ID},xMSVC>:HDF5F90_WINDOWS>"
"$<$<STREQUAL:x${CMAKE_Fortran_SIMULATE_ID},xMSVC>:${WIN_COMPILE_FLAGS}>"
)
target_link_libraries (${HDF5_F90_LIB_TARGET}
diff --git a/fortran/src/h5fc.in b/fortran/src/h5fc.in
index b793648..c5da815 100644
--- a/fortran/src/h5fc.in
+++ b/fortran/src/h5fc.in
@@ -110,15 +110,15 @@ usage() {
# A wonderfully informative "usage" message.
echo "usage: $prog_name [OPTIONS] <compile line>"
echo " OPTIONS:"
- echo " -help This help message."
- echo " -echo Show all the shell commands executed"
- echo " -prefix=DIR Prefix directory to find HDF5 lib/ and include/"
- echo " subdirectories [default: $prefix]"
- echo " -show Show the commands without executing them"
- echo " -showconfig Show the HDF5 library configuration summary"
- echo " -shlib Compile with shared HDF5 libraries [default for hdf5 built"
+ echo " -help | --help | -h This help message."
+ echo " -echo Show all the shell commands executed"
+ echo " -prefix=DIR Prefix directory to find HDF5 lib/ and include/"
+ echo " subdirectories [default: $prefix]"
+ echo " -show Show the commands without executing them"
+ echo " -showconfig Show the HDF5 library configuration summary"
+ echo " -shlib Compile with shared HDF5 libraries [default for hdf5 built"
echo " without static libraries]"
- echo " -noshlib Compile with static HDF5 libraries [default for hdf5 built"
+ echo " -noshlib Compile with static HDF5 libraries [default for hdf5 built"
echo " with static libraries]"
echo " "
echo " <compile line> - the normal compile line options for your compiler."
@@ -230,6 +230,12 @@ for arg in $@ ; do
-help)
usage
;;
+ --help)
+ usage
+ ;;
+ -h)
+ usage
+ ;;
*\"*)
qarg="'"$arg"'"
allargs="$allargs $qarg"
diff --git a/fortran/test/tH5D.F90 b/fortran/test/tH5D.F90
index c381235..fc77414 100644
--- a/fortran/test/tH5D.F90
+++ b/fortran/test/tH5D.F90
@@ -38,6 +38,7 @@ MODULE TH5D
USE HDF5 ! This module contains all necessary modules
USE TH5_MISC
USE TH5_MISC_GEN
+ USE ISO_C_BINDING
CONTAINS
SUBROUTINE datasettest(cleanup, total_error)
@@ -514,8 +515,6 @@ CONTAINS
SUBROUTINE test_userblock_offset(cleanup, total_error)
- USE ISO_C_BINDING
-
IMPLICIT NONE
LOGICAL, INTENT(IN) :: cleanup
INTEGER, INTENT(OUT) :: total_error
@@ -631,8 +630,6 @@ CONTAINS
SUBROUTINE test_dset_fill(cleanup, total_error)
- USE ISO_C_BINDING
-
IMPLICIT NONE
LOGICAL, INTENT(IN) :: cleanup
INTEGER, INTENT(OUT) :: total_error
@@ -640,7 +637,6 @@ CONTAINS
INTEGER, PARAMETER :: DIM0=10
INTEGER, PARAMETER :: int_kind_1 = SELECTED_INT_KIND(2) !should map to INTEGER*1 on most modern processors
INTEGER, PARAMETER :: int_kind_4 = SELECTED_INT_KIND(4) !should map to INTEGER*2 on most modern processors
- INTEGER, PARAMETER :: int_kind_8 = SELECTED_INT_KIND(9) !should map to INTEGER*4 on most modern processors
INTEGER, PARAMETER :: int_kind_16 = SELECTED_INT_KIND(18) !should map to INTEGER*8 on most modern processors
INTEGER(KIND=int_kind_1) , DIMENSION(1:DIM0), TARGET :: data_i1
INTEGER(KIND=int_kind_4) , DIMENSION(1:DIM0), TARGET :: data_i4
@@ -991,8 +987,6 @@ CONTAINS
SUBROUTINE test_direct_chunk_io(cleanup, total_error)
- USE ISO_C_BINDING
-
IMPLICIT NONE
LOGICAL, INTENT(IN) :: cleanup
diff --git a/fortran/test/tH5E_F03.F90 b/fortran/test/tH5E_F03.F90
index 2d8dd33..c2bf74b 100644
--- a/fortran/test/tH5E_F03.F90
+++ b/fortran/test/tH5E_F03.F90
@@ -92,17 +92,15 @@ CONTAINS
END MODULE test_my_hdf5_error_handler
-
-
MODULE TH5E_F03
+ USE ISO_C_BINDING
+ USE test_my_hdf5_error_handler
+
CONTAINS
SUBROUTINE test_error(total_error)
- USE ISO_C_BINDING
- USE test_my_hdf5_error_handler
-
IMPLICIT NONE
INTEGER(hid_t), PARAMETER :: FAKE_ID = -1
diff --git a/fortran/test/tH5F.F90 b/fortran/test/tH5F.F90
index a5b67ac..b4d973e 100644
--- a/fortran/test/tH5F.F90
+++ b/fortran/test/tH5F.F90
@@ -44,8 +44,6 @@ MODULE TH5F
CONTAINS
SUBROUTINE h5openclose(total_error)
- USE HDF5 ! This module contains all necessary modules
- USE TH5_MISC
IMPLICIT NONE
INTEGER, INTENT(INOUT) :: total_error
@@ -141,8 +139,6 @@ CONTAINS
END SUBROUTINE h5openclose
SUBROUTINE mountingtest(cleanup, total_error)
- USE HDF5 ! This module contains all necessary modules
- USE TH5_MISC
IMPLICIT NONE
LOGICAL, INTENT(IN) :: cleanup
INTEGER, INTENT(INOUT) :: total_error
@@ -502,8 +498,6 @@ CONTAINS
!
SUBROUTINE reopentest(cleanup, total_error)
- USE HDF5 ! This module contains all necessary modules
- USE TH5_MISC
IMPLICIT NONE
LOGICAL, INTENT(IN) :: cleanup
INTEGER, INTENT(INOUT) :: total_error
@@ -690,8 +684,6 @@ CONTAINS
! correct output for a given obj_id and filename.
!
SUBROUTINE check_get_name(obj_id, fix_filename, len_filename, total_error)
- USE HDF5 ! This module contains all necessary modules
- USE TH5_MISC
IMPLICIT NONE
INTEGER(HID_T) :: obj_id ! Object identifier
CHARACTER(LEN=80), INTENT(IN) :: fix_filename ! Expected filename
@@ -780,8 +772,6 @@ CONTAINS
!
SUBROUTINE get_name_test(cleanup, total_error)
- USE HDF5 ! This module contains all necessary modules
- USE TH5_MISC
IMPLICIT NONE
LOGICAL, INTENT(IN) :: cleanup
INTEGER, INTENT(INOUT) :: total_error
@@ -846,8 +836,6 @@ CONTAINS
! created using the got property lists
SUBROUTINE plisttest(cleanup, total_error)
- USE HDF5 ! This module contains all necessary modules
- USE TH5_MISC
IMPLICIT NONE
LOGICAL, INTENT(IN) :: cleanup
INTEGER, INTENT(INOUT) :: total_error
@@ -946,8 +934,6 @@ CONTAINS
!
SUBROUTINE file_close(cleanup, total_error)
- USE HDF5 ! This module contains all necessary modules
- USE TH5_MISC
IMPLICIT NONE
LOGICAL, INTENT(IN) :: cleanup
INTEGER, INTENT(INOUT) :: total_error
@@ -1075,8 +1061,6 @@ CONTAINS
!
SUBROUTINE file_space(filename, cleanup, total_error)
- USE HDF5 ! This module contains all necessary modules
- USE TH5_MISC
IMPLICIT NONE
CHARACTER(*), INTENT(IN) :: filename
LOGICAL, INTENT(IN) :: cleanup
@@ -1168,8 +1152,6 @@ CONTAINS
!
SUBROUTINE test_file_info(filename, cleanup, total_error)
- USE HDF5 ! This module contains all necessary modules
- USE TH5_MISC
IMPLICIT NONE
CHARACTER(*), INTENT(IN) :: filename
LOGICAL, INTENT(IN) :: cleanup
diff --git a/fortran/test/tH5G.F90 b/fortran/test/tH5G.F90
index 83e0101..36c51df 100644
--- a/fortran/test/tH5G.F90
+++ b/fortran/test/tH5G.F90
@@ -26,6 +26,9 @@
MODULE TH5G
+ USE HDF5 ! This module contains all necessary modules
+ USE TH5_MISC
+
CONTAINS
SUBROUTINE group_test(cleanup, total_error)
@@ -35,9 +38,6 @@ CONTAINS
! h5glink(2)_f, h5gunlink_f, h5gmove(2)_f, h5gget_linkval_f, h5gset_comment_f,
! h5gget_comment_f
- USE HDF5 ! This module contains all necessary modules
- USE TH5_MISC
-
IMPLICIT NONE
LOGICAL, INTENT(IN) :: cleanup
INTEGER, INTENT(INOUT) :: total_error
diff --git a/fortran/test/tH5O_F03.F90 b/fortran/test/tH5O_F03.F90
index e608a30..b27b067 100644
--- a/fortran/test/tH5O_F03.F90
+++ b/fortran/test/tH5O_F03.F90
@@ -267,6 +267,10 @@ END MODULE visit_cb
MODULE TH5O_F03
+ USE HDF5
+ USE TH5_MISC
+ USE ISO_C_BINDING
+
CONTAINS
!***************************************************************
!**
@@ -276,9 +280,6 @@ CONTAINS
SUBROUTINE test_h5o_refcount(total_error)
- USE HDF5
- USE TH5_MISC
- USE ISO_C_BINDING
IMPLICIT NONE
INTEGER, INTENT(INOUT) :: total_error
@@ -415,11 +416,8 @@ END SUBROUTINE test_h5o_refcount
SUBROUTINE test_obj_visit(total_error)
- USE HDF5
- USE TH5_MISC
-
USE visit_cb
- USE ISO_C_BINDING
+
IMPLICIT NONE
INTEGER, INTENT(INOUT) :: total_error
@@ -553,9 +551,6 @@ END SUBROUTINE test_obj_visit
SUBROUTINE test_obj_info(total_error)
- USE HDF5
- USE TH5_MISC
- USE ISO_C_BINDING
IMPLICIT NONE
INTEGER, INTENT(INOUT) :: total_error
@@ -702,8 +697,6 @@ END SUBROUTINE test_obj_info
SUBROUTINE build_visit_file(fid)
- USE HDF5
- USE TH5_MISC
IMPLICIT NONE
INTEGER(hid_t) :: fid ! File ID
diff --git a/fortran/test/tH5P_F03.F90 b/fortran/test/tH5P_F03.F90
index 24934eb..c962d52 100644
--- a/fortran/test/tH5P_F03.F90
+++ b/fortran/test/tH5P_F03.F90
@@ -439,7 +439,6 @@ END SUBROUTINE test_genprop_class_callback
SUBROUTINE test_h5p_file_image(total_error)
- USE, INTRINSIC :: iso_c_binding
IMPLICIT NONE
INTEGER, INTENT(INOUT) :: total_error
INTEGER(hid_t) :: fapl_1 = -1
@@ -653,7 +652,6 @@ END SUBROUTINE external_test_offset
!
SUBROUTINE test_vds(total_error)
- USE ISO_C_BINDING
IMPLICIT NONE
INTEGER, INTENT(INOUT) :: total_error
diff --git a/fortran/test/tH5Sselect.F90 b/fortran/test/tH5Sselect.F90
index 6dfd7e6..b6d28d3 100644
--- a/fortran/test/tH5Sselect.F90
+++ b/fortran/test/tH5Sselect.F90
@@ -319,9 +319,6 @@ CONTAINS
SUBROUTINE test_select_element(cleanup, total_error)
- USE HDF5 ! This module contains all necessary modules
- USE TH5_MISC
-
IMPLICIT NONE
LOGICAL, INTENT(IN) :: cleanup
INTEGER, INTENT(INOUT) :: total_error
diff --git a/fortran/test/tH5T.F90 b/fortran/test/tH5T.F90
index 953d6d0..a38cbea 100644
--- a/fortran/test/tH5T.F90
+++ b/fortran/test/tH5T.F90
@@ -819,8 +819,6 @@ CONTAINS
SUBROUTINE enumtest(cleanup, total_error)
- USE HDF5
- USE TH5_MISC
IMPLICIT NONE
LOGICAL, INTENT(IN) :: cleanup
diff --git a/fortran/test/tH5T_F03.F90 b/fortran/test/tH5T_F03.F90
index 661a0cc..3984597 100644
--- a/fortran/test/tH5T_F03.F90
+++ b/fortran/test/tH5T_F03.F90
@@ -3407,8 +3407,6 @@ SUBROUTINE multiple_dset_rw(total_error)
! Failure: number of errors
!-------------------------------------------------------------------------
!
- USE iso_c_binding
- USE hdf5
IMPLICIT NONE
INTEGER, INTENT(INOUT) :: total_error ! number of errors
diff --git a/fortran/test/tH5Z.F90 b/fortran/test/tH5Z.F90
index 3ac51d6..c6ab383 100644
--- a/fortran/test/tH5Z.F90
+++ b/fortran/test/tH5Z.F90
@@ -25,15 +25,15 @@
!*****
MODULE TH5Z
+ USE HDF5 ! This module contains all necessary modules
+ USE TH5_MISC
+
CONTAINS
SUBROUTINE filters_test(total_error)
! This subroutine tests following functionalities: h5zfilter_avail_f, h5zunregister_f
- USE HDF5 ! This module contains all necessary modules
- USE TH5_MISC
-
IMPLICIT NONE
INTEGER, INTENT(OUT) :: total_error
LOGICAL :: status
@@ -164,8 +164,6 @@ CONTAINS
END SUBROUTINE filters_test
SUBROUTINE szip_test(szip_flag, cleanup, total_error)
- USE HDF5 ! This module contains all necessary modules
- USE TH5_MISC
IMPLICIT NONE
LOGICAL, INTENT(OUT) :: szip_flag
diff --git a/fortran/test/vol_connector.F90 b/fortran/test/vol_connector.F90
index e2235f4..7394a31 100644
--- a/fortran/test/vol_connector.F90
+++ b/fortran/test/vol_connector.F90
@@ -227,7 +227,6 @@ END MODULE VOL_TMOD
PROGRAM vol_connector
- USE HDF5
USE VOL_TMOD
IMPLICIT NONE
diff --git a/fortran/testpar/async.F90 b/fortran/testpar/async.F90
index 88ecc3e..02045cb 100644
--- a/fortran/testpar/async.F90
+++ b/fortran/testpar/async.F90
@@ -1240,10 +1240,6 @@ END MODULE test_async_APIs
!
PROGRAM async_test
USE, INTRINSIC :: ISO_C_BINDING, ONLY : C_INT64_T
- USE HDF5
- USE MPI
- USE TH5_MISC
- USE TH5_MISC_GEN
USE test_async_APIs
IMPLICIT NONE