File tree Expand file tree Collapse file tree 2 files changed +16
-20
lines changed Expand file tree Collapse file tree 2 files changed +16
-20
lines changed Original file line number Diff line number Diff line change @@ -968,17 +968,14 @@ if(SWIFT_NEED_EXPLICIT_LIBDISPATCH)
968
968
set (SWIFT_LIBDISPATCH_C_COMPILER ${CMAKE_C_COMPILER} )
969
969
set (SWIFT_LIBDISPATCH_CXX_COMPILER ${CMAKE_CXX_COMPILER} )
970
970
elseif (${CMAKE_SYSTEM_NAME} STREQUAL ${CMAKE_HOST_SYSTEM_NAME} )
971
- get_target_property (CLANG_LOCATION clang LOCATION )
972
- get_filename_component (CLANG_LOCATION ${CLANG_LOCATION} DIRECTORY )
973
-
974
971
if (CMAKE_SYSTEM_NAME STREQUAL Windows )
975
972
set (SWIFT_LIBDISPATCH_C_COMPILER
976
- ${CLANG_LOCATION} /clang-cl${CMAKE_EXECUTABLE_SUFFIX} )
973
+ $< TARGET_FILE_DIR:clang > /clang-cl${CMAKE_EXECUTABLE_SUFFIX} )
977
974
set (SWIFT_LIBDISPATCH_CXX_COMPILER
978
- ${CLANG_LOCATION} /clang-cl${CMAKE_EXECUTABLE_SUFFIX} )
975
+ $< TARGET_FILE_DIR:clang > /clang-cl${CMAKE_EXECUTABLE_SUFFIX} )
979
976
else ()
980
- set (SWIFT_LIBDISPATCH_C_COMPILER ${CLANG_LOCATION} /clang )
981
- set (SWIFT_LIBDISPATCH_CXX_COMPILER ${CLANG_LOCATION} /clang++ )
977
+ set (SWIFT_LIBDISPATCH_C_COMPILER $< TARGET_FILE_DIR:clang > /clang )
978
+ set (SWIFT_LIBDISPATCH_CXX_COMPILER $< TARGET_FILE_DIR:clang > /clang++ )
982
979
endif ()
983
980
else ()
984
981
message (SEND_ERROR "libdispatch requires a newer clang compiler (${CMAKE_C_COMPILER_VERSION} < 3.9)" )
Original file line number Diff line number Diff line change @@ -84,20 +84,19 @@ endfunction()
84
84
macro (swift_swap_compiler_if_needed target )
85
85
if (NOT CMAKE_C_COMPILER_ID MATCHES Clang )
86
86
if (CMAKE_SYSTEM_NAME STREQUAL CMAKE_HOST_SYSTEM_NAME )
87
- get_target_property (CLANG_LOCATION clang LOCATION )
88
- get_filename_component (CLANG_LOCATION ${CLANG_LOCATION} DIRECTORY )
89
-
90
- if ("${CMAKE_C_COMPILER_ID} " STREQUAL "MSVC" OR
91
- "${CMAKE_C_SIMULATE_ID} " STREQUAL "MSVC" )
92
- set (CMAKE_C_COMPILER
93
- ${CLANG_LOCATION} /clang-cl${CMAKE_EXECUTABLE_SUFFIX} )
94
- set (CMAKE_CXX_COMPILER
95
- ${CLANG_LOCATION} /clang-cl${CMAKE_EXECUTABLE_SUFFIX} )
87
+ get_target_property (IMPORTED clang IMPORTED )
88
+ if (IMPORTED )
89
+ set (CLANG_LOCATION $< TARGET_FILE_DIR:clang> )
96
90
else ()
97
- set (CMAKE_C_COMPILER
98
- ${CLANG_LOCATION} /clang${CMAKE_EXECUTABLE_SUFFIX} )
99
- set (CMAKE_CXX_COMPILER
100
- ${CLANG_LOCATION} /clang++${CMAKE_EXECUTABLE_SUFFIX} )
91
+ set (CLANG_LOCATION ${LLVM_RUNTIME_OUTPUT_INTDIR} )
92
+ endif ()
93
+
94
+ if ("${CMAKE_C_COMPILER_ID} " STREQUAL "MSVC" OR "${CMAKE_C_SIMULATE_ID} " STREQUAL "MSVC" )
95
+ set (CMAKE_C_COMPILER ${CLANG_LOCATION} /clang-cl${CMAKE_EXECUTABLE_SUFFIX} )
96
+ set (CMAKE_CXX_COMPILER ${CLANG_LOCATION} /clang-cl${CMAKE_EXECUTABLE_SUFFIX} )
97
+ else ()
98
+ set (CMAKE_C_COMPILER ${CLANG_LOCATION} /clang${CMAKE_EXECUTABLE_SUFFIX} )
99
+ set (CMAKE_CXX_COMPILER ${CLANG_LOCATION} /clang++${CMAKE_EXECUTABLE_SUFFIX} )
101
100
endif ()
102
101
else ()
103
102
message (SEND_ERROR "${target} requires a clang based compiler" )
You can’t perform that action at this time.
0 commit comments