FindMPI: handle trailing slash from $MSMPI_BIN
When installing, MSMPI puts a trailing backslash in the MSMPI_BIN environment variable. This causes trouble when concatenating in CMake since the list separator is now escaped and no longer a list separator due to the trailing backslash. Instead, use file(TO_CMAKE_PATH) to make the path CMake-friendly.
This commit is contained in:
parent
4aa9c64511
commit
68857ccd82
|
@ -175,7 +175,9 @@ set(_MPI_EXEC_NAMES mpiexec mpirun lamexec srun)
|
||||||
set(_MPI_PREFIX_PATH)
|
set(_MPI_PREFIX_PATH)
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
# MSMPI
|
# MSMPI
|
||||||
list(APPEND _MPI_PREFIX_PATH "$ENV{MSMPI_BIN}")
|
file(TO_CMAKE_PATH "$ENV{MSMPI_BIN}" msmpi_bin_path) # The default path ends with a '\' and doesn't mix with ';' when appending.
|
||||||
|
list(APPEND _MPI_PREFIX_PATH "${msmpi_bin_path}")
|
||||||
|
unset(msmpi_bin_path)
|
||||||
list(APPEND _MPI_PREFIX_PATH "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\MPI;InstallRoot]/Bin")
|
list(APPEND _MPI_PREFIX_PATH "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\MPI;InstallRoot]/Bin")
|
||||||
list(APPEND _MPI_PREFIX_PATH "$ENV{MSMPI_INC}/..") # The SDK is installed separately from the runtime
|
list(APPEND _MPI_PREFIX_PATH "$ENV{MSMPI_INC}/..") # The SDK is installed separately from the runtime
|
||||||
# MPICH
|
# MPICH
|
||||||
|
|
Loading…
Reference in New Issue