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 @@ -972,17 +972,14 @@ if(SWIFT_NEED_EXPLICIT_LIBDISPATCH)
972
972
set (SWIFT_LIBDISPATCH_C_COMPILER ${CMAKE_C_COMPILER} )
973
973
set (SWIFT_LIBDISPATCH_CXX_COMPILER ${CMAKE_CXX_COMPILER} )
974
974
elseif (${CMAKE_SYSTEM_NAME} STREQUAL ${CMAKE_HOST_SYSTEM_NAME} )
975
- get_target_property (CLANG_LOCATION clang LOCATION )
976
- get_filename_component (CLANG_LOCATION ${CLANG_LOCATION} DIRECTORY )
977
-
978
975
if (CMAKE_SYSTEM_NAME STREQUAL Windows )
979
976
set (SWIFT_LIBDISPATCH_C_COMPILER
980
- ${CLANG_LOCATION} /clang-cl${CMAKE_EXECUTABLE_SUFFIX} )
977
+ $< TARGET_FILE_DIR:clang > /clang-cl${CMAKE_EXECUTABLE_SUFFIX} )
981
978
set (SWIFT_LIBDISPATCH_CXX_COMPILER
982
- ${CLANG_LOCATION} /clang-cl${CMAKE_EXECUTABLE_SUFFIX} )
979
+ $< TARGET_FILE_DIR:clang > /clang-cl${CMAKE_EXECUTABLE_SUFFIX} )
983
980
else ()
984
- set (SWIFT_LIBDISPATCH_C_COMPILER ${CLANG_LOCATION} /clang )
985
- set (SWIFT_LIBDISPATCH_CXX_COMPILER ${CLANG_LOCATION} /clang++ )
981
+ set (SWIFT_LIBDISPATCH_C_COMPILER $< TARGET_FILE_DIR:clang > /clang )
982
+ set (SWIFT_LIBDISPATCH_CXX_COMPILER $< TARGET_FILE_DIR:clang > /clang++ )
986
983
endif ()
987
984
else ()
988
985
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