1
- cmake_minimum_required (VERSION 3.22...3.27 )
1
+ cmake_minimum_required (VERSION 3.22...4.1 )
2
2
3
3
project (h5fortranExample
4
4
LANGUAGES C CXX Fortran )
@@ -11,21 +11,13 @@ find_package(h5fortran CONFIG REQUIRED)
11
11
add_library (fortran_interface fortran_interface.f90 )
12
12
target_link_libraries (fortran_interface PRIVATE h5fortran::h5fortran )
13
13
14
- add_executable (ex_fcn ex_fcn.f90 )
15
- target_link_libraries (ex_fcn PRIVATE h5fortran::h5fortran )
16
- add_test (NAME Fortran_fcn COMMAND ex_fcn )
14
+ foreach (t IN ITEMS ex_fcn ex_oo ex_oo3d char_repeat_read vtk_write )
17
15
18
- add_executable (ex_oo ex_oo .f90 )
19
- target_link_libraries (ex_oo PRIVATE h5fortran::h5fortran )
20
- add_test (NAME Fortran_oo COMMAND ex_oo )
16
+ add_executable (${t} ${t} .f90 )
17
+ target_link_libraries (${t} PRIVATE h5fortran::h5fortran )
18
+ add_test (NAME Fortran_${t} COMMAND ${t} )
21
19
22
- add_executable (repeat_char_read char_repeat_read.f90 )
23
- target_link_libraries (repeat_char_read PRIVATE h5fortran::h5fortran )
24
-
25
- ## VTK HDF5 write example
26
- add_executable (vtk_write vtk_write.f90 )
27
- target_link_libraries (vtk_write PRIVATE h5fortran::h5fortran )
28
- add_test (NAME VTK COMMAND vtk_write ${CMAKE_CURRENT_BINARY_DIR} /vtk.hdf )
20
+ endforeach ()
29
21
30
22
## C, C++ examples
31
23
@@ -45,11 +37,15 @@ add_test(NAME CPP_fcn COMMAND cpp_fcn)
45
37
get_property (test_names DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} PROPERTY TESTS )
46
38
set_property (TEST ${test_names} PROPERTY WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} )
47
39
40
+ if (NOT DEFINED LINUX AND CMAKE_SYSTEM_NAME STREQUAL "Linux" )
41
+ set (LINUX true )
42
+ endif ()
43
+
48
44
if (WIN32 )
49
45
set_property (TEST ${test_names} PROPERTY
50
46
ENVIRONMENT_MODIFICATION "PATH=path_list_prepend:${ZLIB_INCLUDE_DIRS} /../bin;PATH=path_list_prepend:${h5fortran_DIR} /../bin"
51
47
)
52
- elseif (CMAKE_SYSTEM_NAME STREQUAL "Linux" )
48
+ elseif (LINUX )
53
49
set_property (TEST ${test_names} PROPERTY
54
50
ENVIRONMENT_MODIFICATION "LD_LIBRARY_PATH=path_list_prepend:${ZLIB_INCLUDE_DIRS} /../lib;LD_LIBRARY_PATH=path_list_prepend:${h5fortran_DIR} /../lib"
55
51
)
0 commit comments