diff --git a/cmake/FindMPIFortran.cmake b/cmake/FindMPIFortran.cmake index ffcf473..689c02d 100644 --- a/cmake/FindMPIFortran.cmake +++ b/cmake/FindMPIFortran.cmake @@ -10,14 +10,17 @@ find_package(MPI REQUIRED) find_package(PkgConfig QUIET) include(FindPackageHandleStandardArgs) -if (MPI_Fortran_MODULE_DIR) - message(STATUS "MPI_Fortran_MODULE_DIR=${MPI_Fortran_MODULE_DIR}") +if (NOT MPI_Fortran_INCLUDE_DIRS) + # TODO: MPICH is specific to ParaStationMPI; another approach is necessary for IntelMPI + pkg_check_modules(MPICH_Fortran REQUIRED mpich) + if (MPICH_Fortran_FOUND) + pkg_get_variable(MPI_Fortran_INCLUDE_DIRS mpich includedir) + pkg_get_variable(MPI_Fortran_LIB_DIR mpich libdir) + endif() endif() -if (MPI_mpi_LIBRARY) - message(STATUS "MPI_mpi_LIBRARY=${MPI_mpi_LIBRARY}") - get_filename_component(MPI_Fortran_LIB_DIR ${MPI_mpi_LIBRARY} DIRECTORY) - message(STATUS "MPI_Fortran_LIB_DIR=${MPI_Fortran_LIB_DIR}") +if (NOT MPI_Fortran_MODULE_DIR) + find_path(MPI_Fortran_MODULE_DIR NAMES "mpi.mod" "mpi_f08.mod" HINTS MPI_Fortran_INCLUDE_DIRS) endif() find_package_handle_standard_args(MPIFortran diff --git a/env/jsc.2024_Intel.sh b/env/jsc.2024_Intel.sh index 70e6cf7..a310489 100644 --- a/env/jsc.2024_Intel.sh +++ b/env/jsc.2024_Intel.sh @@ -5,7 +5,9 @@ module --force purge module use $OTHERSTAGES module load Stages/2024 module load Intel/2023.2.1 -module load IntelMPI/2021.10.0 +module load ParaStationMPI/5.9.2-1 +#module load IntelMPI/2021.10.0 + # module load Hypre/2.29.0 module load Silo/4.11.1