diff --git a/src/fpm_meta.f90 b/src/fpm_meta.f90 index 20d75a24d4..29fa3abb67 100644 --- a/src/fpm_meta.f90 +++ b/src/fpm_meta.f90 @@ -1101,7 +1101,7 @@ subroutine mpi_compiler_match(language,wrappers,compiler,which_one,mpilib,error) ! Because the intel mpi library does not support llvm_ compiler wrappers yet, ! we must check for that manually - if (mpi_compiler%is_intel() .and. compiler%is_intel()) then + if (same_vendor==0 .and. mpi_compiler%is_intel() .and. compiler%is_intel()) then same_vendor = i vendor_mpilib = mpilib end if @@ -1115,7 +1115,7 @@ subroutine mpi_compiler_match(language,wrappers,compiler,which_one,mpilib,error) ! Because the intel mpi library does not support llvm_ compiler wrappers yet, ! we must check for that manually - if (screen%s=='icc' .and. compiler%cc=='icx') then + if (same_vendor==0 .and. screen%s=='icc' .and. compiler%cc=='icx') then same_vendor = i vendor_mpilib = mpilib end if @@ -1128,7 +1128,7 @@ subroutine mpi_compiler_match(language,wrappers,compiler,which_one,mpilib,error) ! Because the intel mpi library does not support llvm_ compiler wrappers yet, ! we must check for that manually - if (screen%s=='icpc' .and. compiler%cc=='icpx') then + if (same_vendor==0 .and. screen%s=='icpc' .and. compiler%cc=='icpx') then same_vendor = i vendor_mpilib = mpilib end if @@ -1442,6 +1442,7 @@ type(string_t) function mpi_wrapper_query(mpilib,wrapper,command,verbose,error) end if ! Take out the first command from the whole line + call remove_newline_characters(screen) call split(screen%s,tokens,delimiters=' ') screen%s = trim(adjustl(tokens(1)))