CMake: Fix --gcc-toolchain flag not being propagated both at compile and runtime.
This was broken in b8b4bec (ROOT: 965fb30) when support for ccache and distcc was added, and affected cling being compiled with clang. Signed-off-by: Vassil Vassilev <vvasilev@cern.ch>
This commit is contained in:
parent
fd5177dfe6
commit
87fb1cc7f1
@ -198,10 +198,29 @@ if (UNIX)
|
||||
endif()
|
||||
|
||||
if("$ENV{PATH}" MATCHES ${_path})
|
||||
# This adds a lot of unneccessary flags, but may be useful if we're missing something
|
||||
#set(CLING_CXX_RLTV "${_name} ${CMAKE_CXX_FLAGS}")
|
||||
set(CLING_CXX_RLTV ${_name})
|
||||
elseif(NOT CLING_CXX_PATH)
|
||||
set(CLING_CXX_PATH ${CMAKE_CXX_COMPILER})
|
||||
endif()
|
||||
|
||||
# If CMAKE_CXX_FLAGS contains --gcc-toolchain= then that should be passed on
|
||||
string(FIND "${CMAKE_CXX_FLAGS}" "--gcc-toolchain=" cling_gcc_toolchain)
|
||||
if ("${cling_gcc_toolchain}" GREATER -1)
|
||||
if (CLING_CXX_PATH)
|
||||
string(FIND "${CLING_CXX_PATH}" "--gcc-toolchain=" cling_gcc_toolchain)
|
||||
if ("${cling_gcc_toolchain}" EQUAL -1)
|
||||
set(CLING_CXX_PATH "${CLING_CXX_PATH} --gcc-toolchain=${gcctoolchain}")
|
||||
endif()
|
||||
endif()
|
||||
if (CLING_CXX_RLTV)
|
||||
string(FIND "${CLING_CXX_RLTV}" "--gcc-toolchain=" cling_gcc_toolchain)
|
||||
if ("${cling_gcc_toolchain}" EQUAL -1)
|
||||
set(CLING_CXX_RLTV "${CLING_CXX_RLTV} --gcc-toolchain=${gcctoolchain}")
|
||||
endif()
|
||||
endif()
|
||||
endif()
|
||||
endif()
|
||||
|
||||
if(NOT CLING_CXX_HEADERS)
|
||||
@ -209,7 +228,9 @@ if (UNIX)
|
||||
execute_process(COMMAND ${CLING_CXX_PATH} -xc++ -E -v /dev/null
|
||||
OUTPUT_QUIET ERROR_VARIABLE CLING_CXX_HEADERS)
|
||||
else()
|
||||
execute_process(COMMAND ${CMAKE_CXX_COMPILER} ${CMAKE_CXX_COMPILER_ARG1} -xc++ -E -v /dev/null
|
||||
# convert CMAKE_CXX_FLAGS to a list for execute_process
|
||||
string(REPLACE " " ";" cling_tmp_arg_list ${CMAKE_CXX_FLAGS})
|
||||
execute_process(COMMAND ${CMAKE_CXX_COMPILER} ${CMAKE_CXX_COMPILER_ARG1} ${cling_tmp_arg_list} -xc++ -E -v /dev/null
|
||||
OUTPUT_QUIET ERROR_VARIABLE CLING_CXX_HEADERS)
|
||||
endif()
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user