File tree 3 files changed +21
-10
lines changed
3 files changed +21
-10
lines changed Original file line number Diff line number Diff line change 1
1
cmake_minimum_required (VERSION 3.19...3.28)
2
2
3
+ if (CMAKE_SOURCE_DIR STREQUAL CMAKE_BINARY_DIR )
4
+ message (FATAL_ERROR "please use out-of-source build
5
+ cmake -Bbuild" )
6
+ endif ()
7
+
3
8
get_property (is_multi_config GLOBAL PROPERTY GENERATOR_IS_MULTI_CONFIG)
4
9
if (NOT is_multi_config AND NOT (CMAKE_BUILD_TYPE OR DEFINED ENV{CMAKE_BUILD_TYPE }))
5
10
set (CMAKE_BUILD_TYPE Release CACHE STRING "Release default" )
6
11
endif ()
7
12
8
13
project (h5fortran
9
14
LANGUAGES C Fortran
10
- VERSION 2.0.2
15
+ VERSION 2.1.0
11
16
)
12
17
13
18
include (CTest)
@@ -43,23 +48,29 @@ if(hdf5_parallel)
43
48
include (cmake/check_mpi.cmake)
44
49
check_mpi_version()
45
50
46
- find_package (HDF5 COMPONENTS Fortran parallel)
51
+ if (find_hdf5)
52
+ find_package (HDF5 COMPONENTS Fortran parallel)
53
+ endif ()
47
54
48
55
if (HDF5_FOUND)
56
+ if (HDF5_VERSION VERSION_LESS 1.10.2)
57
+ message (WARNING "HDF5 >= 1.10.2 is needed for HDF5-MPI" )
58
+ endif ()
49
59
include (cmake/hdf5_compression.cmake)
50
60
hdf5_compression_flag()
51
61
else ()
52
62
include (cmake/hdf5.cmake)
53
63
endif ()
54
64
else ()
55
- find_package (HDF5 COMPONENTS Fortran)
65
+ if (find_hdf5)
66
+ find_package (HDF5 COMPONENTS Fortran)
67
+ endif ()
68
+ if (NOT HDF5_FOUND)
69
+ include (cmake/hdf5.cmake)
70
+ endif ()
56
71
set (hdf5_parallel_compression ".false." )
57
72
endif ()
58
73
59
- if (HDF5_VERSION VERSION_LESS 1.10.2)
60
- message (WARNING "HDF5 >= 1.10.2 is needed for HDF5-MPI" )
61
- endif ()
62
-
63
74
# --- h5fortran library
64
75
65
76
configure_file (src/hdf5_config.f90.in hdf5_config.f90 @ONLY)
Original file line number Diff line number Diff line change 1
- include (GNUInstallDirs)
2
-
3
1
message (STATUS "${PROJECT_NAME} ${PROJECT_VERSION} CMake ${CMAKE_VERSION} " )
4
2
3
+ option (find_hdf5 "search for HDF5 and Zlib" true )
4
+
5
5
option (benchmark "Run benchmarks" )
6
6
option (coverage "Code coverage tests" )
7
7
option (tidy "Run clang-tidy on the code" )
@@ -16,6 +16,7 @@ if(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT AND ${PROJECT_NAME}_IS_TOP_LEVEL)
16
16
set (CMAKE_INSTALL_PREFIX "${CMAKE_BINARY_DIR} /local" CACHE PATH "install prefix" FORCE)
17
17
endif ()
18
18
19
+ set_property (DIRECTORY PROPERTY EP_UPDATE_DISCONNECTED true )
19
20
20
21
if (BUILD_SHARED_LIBS AND MSVC )
21
22
message (WARNING "Intel oneAPI has trouble with shared libs in general on Windows, try
Original file line number Diff line number Diff line change @@ -6,7 +6,6 @@ LANGUAGES C Fortran
6
6
)
7
7
8
8
option (hdf5_parallel "build HDF5 parallel MPI" on )
9
- option (zlib_legacy "use legacy zlib 1.x" )
10
9
11
10
# --- system checks
12
11
file (MAKE_DIRECTORY ${CMAKE_INSTALL_PREFIX} )
You can’t perform that action at this time.
0 commit comments