From 63e1b32068fb84f5d4a4bff2fc06a2801f141054 Mon Sep 17 00:00:00 2001 From: Allen Byrne Date: Mon, 24 Mar 2014 16:00:34 -0500 Subject: [svn-r24886] Fix fortran mod file handling and packing --- CMakeLists.txt | 4 ++-- fortran/src/CMakeLists.txt | 59 ++++++++++++++++++++++++++++++++++++++++++---- src/CMakeLists.txt | 3 +++ 3 files changed, 60 insertions(+), 6 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 8d7cec2..a49143a 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -249,7 +249,7 @@ if (NOT HDF5_EXTERNALLY_CONFIGURED) ${PROJECT_BINARY_DIR}/bin CACHE PATH "Single Directory for all static libraries." ) set (CMAKE_Fortran_MODULE_DIRECTORY - ${PROJECT_BINARY_DIR}/bin/fortran CACHE PATH "Single Directory for all fortran modules." + ${PROJECT_BINARY_DIR}/bin CACHE PATH "Single Directory for all fortran modules." ) else (NOT HDF5_EXTERNALLY_CONFIGURED) # if we are externally configured, but the project uses old cmake scripts @@ -651,7 +651,7 @@ INCLUDE_DIRECTORIES (${HDF5_BINARY_DIR} ${HDF5_SRC_DIR} ${CMAKE_RUNTIME_OUTPUT_D set (CMAKE_MODULE_PATH ${HDF5_RESOURCES_DIR} ${CMAKE_MODULE_PATH}) option (HDF5_ENABLE_PARALLEL "Enable parallel build (requires MPI)" OFF) if (HDF5_ENABLE_PARALLEL) - include (FindMPI) + find_package (MPI) INCLUDE_DIRECTORIES (${MPI_C_INCLUDE_PATH}) if (MPI_C_FOUND) set (H5_HAVE_PARALLEL 1) diff --git a/fortran/src/CMakeLists.txt b/fortran/src/CMakeLists.txt index 88eb518..a8312a5 100644 --- a/fortran/src/CMakeLists.txt +++ b/fortran/src/CMakeLists.txt @@ -262,8 +262,33 @@ install ( if (WIN32 AND NOT CYGWIN) install ( - DIRECTORY - ${CMAKE_Fortran_MODULE_DIRECTORY}/\${BUILD_TYPE}/ + FILES + ${CMAKE_Fortran_MODULE_DIRECTORY}/\${BUILD_TYPE}/h5fortran_types.mod + ${CMAKE_Fortran_MODULE_DIRECTORY}/\${BUILD_TYPE}/h5test_kind_sizeof_mod.mod + ${CMAKE_Fortran_MODULE_DIRECTORY}/\${BUILD_TYPE}/hdf5.mod + ${CMAKE_Fortran_MODULE_DIRECTORY}/\${BUILD_TYPE}/h5a.mod + ${CMAKE_Fortran_MODULE_DIRECTORY}/\${BUILD_TYPE}/h5d.mod + ${CMAKE_Fortran_MODULE_DIRECTORY}/\${BUILD_TYPE}/h5e.mod + ${CMAKE_Fortran_MODULE_DIRECTORY}/\${BUILD_TYPE}/h5f.mod + ${CMAKE_Fortran_MODULE_DIRECTORY}/\${BUILD_TYPE}/h5g.mod + ${CMAKE_Fortran_MODULE_DIRECTORY}/\${BUILD_TYPE}/h5i.mod + ${CMAKE_Fortran_MODULE_DIRECTORY}/\${BUILD_TYPE}/h5l.mod + ${CMAKE_Fortran_MODULE_DIRECTORY}/\${BUILD_TYPE}/h5o.mod + ${CMAKE_Fortran_MODULE_DIRECTORY}/\${BUILD_TYPE}/h5p.mod + ${CMAKE_Fortran_MODULE_DIRECTORY}/\${BUILD_TYPE}/h5r.mod + ${CMAKE_Fortran_MODULE_DIRECTORY}/\${BUILD_TYPE}/h5s.mod + ${CMAKE_Fortran_MODULE_DIRECTORY}/\${BUILD_TYPE}/h5t.mod + ${CMAKE_Fortran_MODULE_DIRECTORY}/\${BUILD_TYPE}/h5z.mod + ${CMAKE_Fortran_MODULE_DIRECTORY}/\${BUILD_TYPE}/h5a_provisional.mod + ${CMAKE_Fortran_MODULE_DIRECTORY}/\${BUILD_TYPE}/h5d_provisional.mod + ${CMAKE_Fortran_MODULE_DIRECTORY}/\${BUILD_TYPE}/h5e_provisional.mod + ${CMAKE_Fortran_MODULE_DIRECTORY}/\${BUILD_TYPE}/h5f_provisional.mod + ${CMAKE_Fortran_MODULE_DIRECTORY}/\${BUILD_TYPE}/h5l_provisional.mod + ${CMAKE_Fortran_MODULE_DIRECTORY}/\${BUILD_TYPE}/h5o_provisional.mod + ${CMAKE_Fortran_MODULE_DIRECTORY}/\${BUILD_TYPE}/h5p_provisional.mod + ${CMAKE_Fortran_MODULE_DIRECTORY}/\${BUILD_TYPE}/h5r_provisional.mod + ${CMAKE_Fortran_MODULE_DIRECTORY}/\${BUILD_TYPE}/h5t_provisional.mod + ${CMAKE_Fortran_MODULE_DIRECTORY}/\${BUILD_TYPE}/h5_dble_interface.mod DESTINATION ${HDF5_INSTALL_INCLUDE_DIR} COMPONENT @@ -271,8 +296,34 @@ if (WIN32 AND NOT CYGWIN) ) else (WIN32 AND NOT CYGWIN) install ( - DIRECTORY - ${CMAKE_Fortran_MODULE_DIRECTORY}/ + FILES + ${CMAKE_Fortran_MODULE_DIRECTORY}/h5fortran_types.mod + ${CMAKE_Fortran_MODULE_DIRECTORY}/h5test_kind_sizeof_mod.mod + ${CMAKE_Fortran_MODULE_DIRECTORY}/hdf5.mod + ${CMAKE_Fortran_MODULE_DIRECTORY}/h5f.mod + ${CMAKE_Fortran_MODULE_DIRECTORY}/h5a.mod + ${CMAKE_Fortran_MODULE_DIRECTORY}/h5d.mod + ${CMAKE_Fortran_MODULE_DIRECTORY}/h5e.mod + ${CMAKE_Fortran_MODULE_DIRECTORY}/h5f.mod + ${CMAKE_Fortran_MODULE_DIRECTORY}/h5g.mod + ${CMAKE_Fortran_MODULE_DIRECTORY}/h5i.mod + ${CMAKE_Fortran_MODULE_DIRECTORY}/h5l.mod + ${CMAKE_Fortran_MODULE_DIRECTORY}/h5o.mod + ${CMAKE_Fortran_MODULE_DIRECTORY}/h5p.mod + ${CMAKE_Fortran_MODULE_DIRECTORY}/h5r.mod + ${CMAKE_Fortran_MODULE_DIRECTORY}/h5s.mod + ${CMAKE_Fortran_MODULE_DIRECTORY}/h5t.mod + ${CMAKE_Fortran_MODULE_DIRECTORY}/h5z.mod + ${CMAKE_Fortran_MODULE_DIRECTORY}/h5a_provisional.mod + ${CMAKE_Fortran_MODULE_DIRECTORY}/h5d_provisional.mod + ${CMAKE_Fortran_MODULE_DIRECTORY}/h5E_provisional.mod + ${CMAKE_Fortran_MODULE_DIRECTORY}/h5F_provisional.mod + ${CMAKE_Fortran_MODULE_DIRECTORY}/h5L_provisional.mod + ${CMAKE_Fortran_MODULE_DIRECTORY}/h5O_provisional.mod + ${CMAKE_Fortran_MODULE_DIRECTORY}/h5P_provisional.mod + ${CMAKE_Fortran_MODULE_DIRECTORY}/h5R_provisional.mod + ${CMAKE_Fortran_MODULE_DIRECTORY}/h5T_provisional.mod + ${CMAKE_Fortran_MODULE_DIRECTORY}/h5_dble_interface.mod DESTINATION ${HDF5_INSTALL_INCLUDE_DIR} COMPONENT diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 58f4732..ce1c725 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -838,6 +838,9 @@ target_link_libraries (${HDF5_LIB_TARGET} ${LINK_LIBS}) if (NOT WIN32) target_link_libraries (${HDF5_LIB_TARGET} dl) endif (NOT WIN32) +if (H5_HAVE_PARALLEL AND MPI_C_FOUND) + target_link_libraries (${HDF5_LIB_TARGET} ${MPI_C_LIBRARIES}) +endif (H5_HAVE_PARALLEL AND MPI_C_FOUND) set_global_variable (HDF5_LIBRARIES_TO_EXPORT ${HDF5_LIB_TARGET}) H5_SET_LIB_OPTIONS (${HDF5_LIB_TARGET} ${HDF5_LIB_NAME} ${LIB_TYPE}) set_target_properties (${HDF5_LIB_TARGET} PROPERTIES -- cgit v0.12