mirror of
https://github.com/Kitware/CMake.git
synced 2026-04-21 05:38:24 -05:00
FindMPI include parsing better handles leading newlines
When FindMPI parses include output like: ``` warning: setlocale: LC_ALL: cannot change locale (en_US.UTF-8) -I.... ```
This commit is contained in:
@@ -683,7 +683,7 @@ function (_MPI_interrogate_compiler LANG)
|
|||||||
endforeach()
|
endforeach()
|
||||||
|
|
||||||
# Extract include paths from compile command line
|
# Extract include paths from compile command line
|
||||||
string(REGEX MATCHALL "(^| )${_MPI_PREPROCESSOR_FLAG_REGEX}${CMAKE_INCLUDE_FLAG_${LANG}} *([^\" ]+|\"[^\"]+\")"
|
string(REGEX MATCHALL "(^|\n| )${_MPI_PREPROCESSOR_FLAG_REGEX}${CMAKE_INCLUDE_FLAG_${LANG}} *([^\" ]+|\"[^\"]+\")"
|
||||||
MPI_ALL_INCLUDE_PATHS "${MPI_COMPILE_CMDLINE}")
|
MPI_ALL_INCLUDE_PATHS "${MPI_COMPILE_CMDLINE}")
|
||||||
|
|
||||||
# If extracting failed to work, we'll try using -showme:incdirs.
|
# If extracting failed to work, we'll try using -showme:incdirs.
|
||||||
@@ -698,6 +698,7 @@ function (_MPI_interrogate_compiler LANG)
|
|||||||
|
|
||||||
foreach(_MPI_INCLUDE_PATH IN LISTS MPI_ALL_INCLUDE_PATHS)
|
foreach(_MPI_INCLUDE_PATH IN LISTS MPI_ALL_INCLUDE_PATHS)
|
||||||
string(REGEX REPLACE "^ ?${_MPI_PREPROCESSOR_FLAG_REGEX}${CMAKE_INCLUDE_FLAG_${LANG}} *" "" _MPI_INCLUDE_PATH "${_MPI_INCLUDE_PATH}")
|
string(REGEX REPLACE "^ ?${_MPI_PREPROCESSOR_FLAG_REGEX}${CMAKE_INCLUDE_FLAG_${LANG}} *" "" _MPI_INCLUDE_PATH "${_MPI_INCLUDE_PATH}")
|
||||||
|
string(REPLACE "\n" "" _MPI_INCLUDE_PATH "${_MPI_INCLUDE_PATH}")
|
||||||
string(REPLACE "\"" "" _MPI_INCLUDE_PATH "${_MPI_INCLUDE_PATH}")
|
string(REPLACE "\"" "" _MPI_INCLUDE_PATH "${_MPI_INCLUDE_PATH}")
|
||||||
string(REPLACE "'" "" _MPI_INCLUDE_PATH "${_MPI_INCLUDE_PATH}")
|
string(REPLACE "'" "" _MPI_INCLUDE_PATH "${_MPI_INCLUDE_PATH}")
|
||||||
get_filename_component(_MPI_INCLUDE_PATH "${_MPI_INCLUDE_PATH}" REALPATH)
|
get_filename_component(_MPI_INCLUDE_PATH "${_MPI_INCLUDE_PATH}" REALPATH)
|
||||||
|
|||||||
Reference in New Issue
Block a user