summaryrefslogtreecommitdiffstats
path: root/hl/fortran
diff options
context:
space:
mode:
authorAllen Byrne <50328838+byrnHDF@users.noreply.github.com>2023-08-21 22:13:03 (GMT)
committerGitHub <noreply@github.com>2023-08-21 22:13:03 (GMT)
commitceef4a9ebd055f9ec0378a97ec2ce9421cdec866 (patch)
tree887ab50783fb357f8c5f9fe0dee1d6ba5dc536a5 /hl/fortran
parent89b4afd4b317c5131cbc8607c99d21b369d050eb (diff)
downloadhdf5-ceef4a9ebd055f9ec0378a97ec2ce9421cdec866.zip
hdf5-ceef4a9ebd055f9ec0378a97ec2ce9421cdec866.tar.gz
hdf5-ceef4a9ebd055f9ec0378a97ec2ce9421cdec866.tar.bz2
Merge/update CMake, presets,java and tools (#3393)
Diffstat (limited to 'hl/fortran')
-rw-r--r--hl/fortran/examples/CMakeTests.cmake23
-rw-r--r--hl/fortran/src/CMakeLists.txt34
-rw-r--r--hl/fortran/test/CMakeTests.cmake33
3 files changed, 58 insertions, 32 deletions
diff --git a/hl/fortran/examples/CMakeTests.cmake b/hl/fortran/examples/CMakeTests.cmake
index 6389fbe..46827b5 100644
--- a/hl/fortran/examples/CMakeTests.cmake
+++ b/hl/fortran/examples/CMakeTests.cmake
@@ -17,14 +17,28 @@
##############################################################################
# Remove any output file left over from previous test run
+set (HL_FORTRAN_F90_EX_CLEANFILES
+ ex_ds1.h5
+ exlite.h5
+)
add_test (
NAME HL_FORTRAN_f90_ex-clear-objects
COMMAND ${CMAKE_COMMAND}
- -E remove
- ex_ds1.h5
- exlite.h5
+ -E remove ${HL_FORTRAN_F90_EX_CLEANFILES}
+)
+set_tests_properties (HL_FORTRAN_f90_ex-clear-objects PROPERTIES
+ FIXTURES_SETUP clear_HL_FORTRAN_f90_ex
+ WORKING_DIRECTORY ${PROJECT_BINARY_DIR}
+)
+add_test (
+ NAME HL_FORTRAN_f90_ex-clean-objects
+ COMMAND ${CMAKE_COMMAND}
+ -E remove ${HL_FORTRAN_F90_EX_CLEANFILES}
+)
+set_tests_properties (HL_FORTRAN_f90_ex-clean-objects PROPERTIES
+ FIXTURES_CLEANUP clear_HL_FORTRAN_f90_ex
+ WORKING_DIRECTORY ${PROJECT_BINARY_DIR}
)
-set_tests_properties (HL_FORTRAN_f90_ex-clear-objects PROPERTIES FIXTURES_SETUP clear_HL_FORTRAN_f90_ex)
foreach (example ${examples})
if (HDF5_ENABLE_USING_MEMCHECKER)
@@ -44,5 +58,6 @@ foreach (example ${examples})
endif ()
set_tests_properties (HL_FORTRAN_f90_ex_${example} PROPERTIES
FIXTURES_REQUIRED clear_HL_FORTRAN_f90_ex
+ WORKING_DIRECTORY ${PROJECT_BINARY_DIR}
)
endforeach ()
diff --git a/hl/fortran/src/CMakeLists.txt b/hl/fortran/src/CMakeLists.txt
index 538b689..5455d77 100644
--- a/hl/fortran/src/CMakeLists.txt
+++ b/hl/fortran/src/CMakeLists.txt
@@ -59,7 +59,7 @@ set (HDF5_HL_F90_HEADERS ${HDF5_HL_F90_SRC_SOURCE_DIR}/H5LTf90proto.h ${HDF5_HL_
if (BUILD_STATIC_LIBS)
add_library (${HDF5_HL_F90_C_LIB_TARGET} STATIC ${HDF5_HL_F90_C_SOURCES} ${HDF5_HL_F90_HEADERS})
target_include_directories (${HDF5_HL_F90_C_LIB_TARGET}
- PRIVATE "${HDF5_SRC_DIR};${HDF5_SRC_BINARY_DIR};${HDF5_F90_BINARY_DIR}/static;$<$<BOOL:${HDF5_ENABLE_PARALLEL}>:${MPI_C_INCLUDE_DIRS}>"
+ PRIVATE "${HDF5_SRC_INCLUDE_DIRS};${HDF5_SRC_BINARY_DIR};${HDF5_F90_BINARY_DIR}/static;$<$<BOOL:${HDF5_ENABLE_PARALLEL}>:${MPI_C_INCLUDE_DIRS}>"
INTERFACE "$<INSTALL_INTERFACE:$<INSTALL_PREFIX>/include>"
)
target_compile_options(${HDF5_HL_F90_C_LIB_TARGET} PRIVATE "${HDF5_CMAKE_C_FLAGS}")
@@ -76,7 +76,7 @@ endif ()
if (BUILD_SHARED_LIBS)
add_library (${HDF5_HL_F90_C_LIBSH_TARGET} SHARED ${HDF5_HL_F90_C_SOURCES} ${HDF5_HL_F90_HEADERS})
target_include_directories (${HDF5_HL_F90_C_LIBSH_TARGET}
- PRIVATE "${HDF5_SRC_DIR};${HDF5_SRC_BINARY_DIR};${HDF5_F90_BINARY_DIR}/shared;$<$<BOOL:${HDF5_ENABLE_PARALLEL}>:${MPI_C_INCLUDE_DIRS}>"
+ PRIVATE "${HDF5_SRC_INCLUDE_DIRS};${HDF5_SRC_BINARY_DIR};${HDF5_F90_BINARY_DIR}/shared;$<$<BOOL:${HDF5_ENABLE_PARALLEL}>:${MPI_C_INCLUDE_DIRS}>"
INTERFACE "$<INSTALL_INTERFACE:$<INSTALL_PREFIX>/include>"
)
target_compile_options(${HDF5_HL_F90_C_LIBSH_TARGET} PRIVATE "${HDF5_CMAKE_C_FLAGS}")
@@ -235,16 +235,19 @@ endif ()
# Add file(s) to CMake Install
#-----------------------------------------------------------------------------
+set (mod_export_files
+ h5ds.mod
+ h5tb.mod
+ h5tb_const.mod
+ h5lt.mod
+ h5lt_const.mod
+ h5im.mod
+)
if (BUILD_STATIC_LIBS)
- set (mod_files
- ${MOD_BUILD_DIR}/h5ds.mod
- ${MOD_BUILD_DIR}/h5tb.mod
- ${MOD_BUILD_DIR}/h5tb_const.mod
- ${MOD_BUILD_DIR}/h5lt.mod
- ${MOD_BUILD_DIR}/h5lt_const.mod
- ${MOD_BUILD_DIR}/h5im.mod
- )
+ foreach (mod_file ${mod_export_files})
+ set (mod_files ${mod_files} ${MOD_BUILD_DIR}/${mod_file})
+ endforeach ()
install (
FILES
${mod_files}
@@ -265,14 +268,9 @@ if (BUILD_STATIC_LIBS)
endif ()
endif ()
if (BUILD_SHARED_LIBS)
- set (modsh_files
- ${MODSH_BUILD_DIR}/h5ds.mod
- ${MODSH_BUILD_DIR}/h5tb.mod
- ${MODSH_BUILD_DIR}/h5tb_const.mod
- ${MODSH_BUILD_DIR}/h5lt.mod
- ${MODSH_BUILD_DIR}/h5lt_const.mod
- ${MODSH_BUILD_DIR}/h5im.mod
- )
+ foreach (mod_file ${mod_export_files})
+ set (modsh_files ${modsh_files} ${MODSH_BUILD_DIR}/${mod_file})
+ endforeach ()
install (
FILES
${modsh_files}
diff --git a/hl/fortran/test/CMakeTests.cmake b/hl/fortran/test/CMakeTests.cmake
index e082f4c..209186b 100644
--- a/hl/fortran/test/CMakeTests.cmake
+++ b/hl/fortran/test/CMakeTests.cmake
@@ -17,15 +17,15 @@
##############################################################################
set (test_hl_fortran_CLEANFILES
- dsetf1.h5
- dsetf2.h5
- dsetf3.h5
- dsetf4.h5
- dsetf5.h5
- f1img.h5
- f1tab.h5
- f2tab.h5
- tstds.h5
+ dsetf1.h5
+ dsetf2.h5
+ dsetf3.h5
+ dsetf4.h5
+ dsetf5.h5
+ f1img.h5
+ f1tab.h5
+ f2tab.h5
+ tstds.h5
)
# Remove any output file left over from previous test run
@@ -34,7 +34,19 @@ add_test (
COMMAND ${CMAKE_COMMAND}
-E remove ${test_hl_fortran_CLEANFILES}
)
-set_tests_properties (HL_FORTRAN_test-clear-objects PROPERTIES FIXTURES_SETUP clear_HL_FORTRAN_test)
+set_tests_properties (HL_FORTRAN_test-clear-objects PROPERTIES
+ FIXTURES_SETUP clear_HL_FORTRAN_test
+ WORKING_DIRECTORY ${PROJECT_BINARY_DIR}
+)
+add_test (
+ NAME HL_FORTRAN_test-clean-objects
+ COMMAND ${CMAKE_COMMAND}
+ -E remove ${test_hl_fortran_CLEANFILES}
+)
+set_tests_properties (HL_FORTRAN_test-clean-objects PROPERTIES
+ FIXTURES_CLEANUP clear_HL_FORTRAN_test
+ WORKING_DIRECTORY ${PROJECT_BINARY_DIR}
+)
macro (ADD_H5_FORTRAN_TEST file)
if (HDF5_ENABLE_USING_MEMCHECKER)
@@ -54,6 +66,7 @@ macro (ADD_H5_FORTRAN_TEST file)
endif ()
set_tests_properties (HL_FORTRAN_f90_${file} PROPERTIES
FIXTURES_REQUIRED clear_HL_FORTRAN_test
+ WORKING_DIRECTORY ${PROJECT_BINARY_DIR}
)
endmacro ()