Quote ${CMAKE_<LANG>_COMPILER} while enabling a language
Even though this variable gets set to CMAKE_<LANG>_COMPILER-NOTFOUND when the compiler is not found, CMake<LANG>Compiler.cmake gets removed by cmGlobalGenerator::EnableLanguage so in try compiles the value is empty. Quote references to the variable in Modules/CMake(C|CXX|Fortran)Information.cmake Modules/CMakeDetermineCompilerId.cmake to avoid dropping arguments from commands that expect them.
This commit is contained in:
parent
18a253732d
commit
705ae00491
@ -34,7 +34,7 @@ if(CMAKE_C_COMPILER_ID)
|
|||||||
endif()
|
endif()
|
||||||
|
|
||||||
set(CMAKE_BASE_NAME)
|
set(CMAKE_BASE_NAME)
|
||||||
get_filename_component(CMAKE_BASE_NAME ${CMAKE_C_COMPILER} NAME_WE)
|
get_filename_component(CMAKE_BASE_NAME "${CMAKE_C_COMPILER}" NAME_WE)
|
||||||
if(CMAKE_COMPILER_IS_GNUCC)
|
if(CMAKE_COMPILER_IS_GNUCC)
|
||||||
set(CMAKE_BASE_NAME gcc)
|
set(CMAKE_BASE_NAME gcc)
|
||||||
endif()
|
endif()
|
||||||
|
@ -34,7 +34,7 @@ if(CMAKE_CXX_COMPILER_ID)
|
|||||||
endif()
|
endif()
|
||||||
|
|
||||||
set(CMAKE_BASE_NAME)
|
set(CMAKE_BASE_NAME)
|
||||||
get_filename_component(CMAKE_BASE_NAME ${CMAKE_CXX_COMPILER} NAME_WE)
|
get_filename_component(CMAKE_BASE_NAME "${CMAKE_CXX_COMPILER}" NAME_WE)
|
||||||
# since the gnu compiler has several names force g++
|
# since the gnu compiler has several names force g++
|
||||||
if(CMAKE_COMPILER_IS_GNUCXX)
|
if(CMAKE_COMPILER_IS_GNUCXX)
|
||||||
set(CMAKE_BASE_NAME g++)
|
set(CMAKE_BASE_NAME g++)
|
||||||
|
@ -232,7 +232,7 @@ Id flags: ${testflags}
|
|||||||
else()
|
else()
|
||||||
if(COMMAND EXECUTE_PROCESS)
|
if(COMMAND EXECUTE_PROCESS)
|
||||||
execute_process(
|
execute_process(
|
||||||
COMMAND ${CMAKE_${lang}_COMPILER}
|
COMMAND "${CMAKE_${lang}_COMPILER}"
|
||||||
${CMAKE_${lang}_COMPILER_ID_ARG1}
|
${CMAKE_${lang}_COMPILER_ID_ARG1}
|
||||||
${CMAKE_${lang}_COMPILER_ID_FLAGS_LIST}
|
${CMAKE_${lang}_COMPILER_ID_FLAGS_LIST}
|
||||||
${testflags}
|
${testflags}
|
||||||
@ -244,7 +244,7 @@ Id flags: ${testflags}
|
|||||||
)
|
)
|
||||||
else()
|
else()
|
||||||
exec_program(
|
exec_program(
|
||||||
${CMAKE_${lang}_COMPILER} ${CMAKE_${lang}_COMPILER_ID_DIR}
|
"${CMAKE_${lang}_COMPILER}" ${CMAKE_${lang}_COMPILER_ID_DIR}
|
||||||
ARGS ${CMAKE_${lang}_COMPILER_ID_ARG1}
|
ARGS ${CMAKE_${lang}_COMPILER_ID_ARG1}
|
||||||
${CMAKE_${lang}_COMPILER_ID_FLAGS_LIST}
|
${CMAKE_${lang}_COMPILER_ID_FLAGS_LIST}
|
||||||
${testflags}
|
${testflags}
|
||||||
@ -476,7 +476,7 @@ function(CMAKE_DETERMINE_COMPILER_ID_VENDOR lang)
|
|||||||
set(flags ${CMAKE_${lang}_COMPILER_ID_VENDOR_FLAGS_${vendor}})
|
set(flags ${CMAKE_${lang}_COMPILER_ID_VENDOR_FLAGS_${vendor}})
|
||||||
set(regex ${CMAKE_${lang}_COMPILER_ID_VENDOR_REGEX_${vendor}})
|
set(regex ${CMAKE_${lang}_COMPILER_ID_VENDOR_REGEX_${vendor}})
|
||||||
execute_process(
|
execute_process(
|
||||||
COMMAND ${CMAKE_${lang}_COMPILER}
|
COMMAND "${CMAKE_${lang}_COMPILER}"
|
||||||
${CMAKE_${lang}_COMPILER_ID_ARG1}
|
${CMAKE_${lang}_COMPILER_ID_ARG1}
|
||||||
${CMAKE_${lang}_COMPILER_ID_FLAGS_LIST}
|
${CMAKE_${lang}_COMPILER_ID_FLAGS_LIST}
|
||||||
${flags}
|
${flags}
|
||||||
|
@ -24,7 +24,7 @@ if(CMAKE_Fortran_COMPILER_ID)
|
|||||||
endif()
|
endif()
|
||||||
|
|
||||||
set(CMAKE_BASE_NAME)
|
set(CMAKE_BASE_NAME)
|
||||||
get_filename_component(CMAKE_BASE_NAME ${CMAKE_Fortran_COMPILER} NAME_WE)
|
get_filename_component(CMAKE_BASE_NAME "${CMAKE_Fortran_COMPILER}" NAME_WE)
|
||||||
# since the gnu compiler has several names force g++
|
# since the gnu compiler has several names force g++
|
||||||
if(CMAKE_COMPILER_IS_GNUG77)
|
if(CMAKE_COMPILER_IS_GNUG77)
|
||||||
set(CMAKE_BASE_NAME g77)
|
set(CMAKE_BASE_NAME g77)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user