Browse Source

Clang: Detect lld-link when using gnu front end with msvc target

Fixes: #21137
Thomas Bernard 5 years ago
parent
commit
013270ef09
1 changed files with 5 additions and 1 deletions
  1. 5 1
      Modules/CMakeFindBinUtils.cmake

+ 5 - 1
Modules/CMakeFindBinUtils.cmake

@@ -94,7 +94,11 @@ else()
     set(_CMAKE_ADDITIONAL_AR_NAMES "llvm-ar")
     set(_CMAKE_ADDITIONAL_RANLIB_NAMES "llvm-ranlib")
     set(_CMAKE_ADDITIONAL_STRIP_NAMES "llvm-strip")
-    set(_CMAKE_ADDITIONAL_LINKER_NAMES "ld.lld")
+    if("x${CMAKE_${_CMAKE_PROCESSING_LANGUAGE}_SIMULATE_ID}" STREQUAL "xMSVC")
+      set(_CMAKE_ADDITIONAL_LINKER_NAMES "lld-link")
+    else()
+      set(_CMAKE_ADDITIONAL_LINKER_NAMES "ld.lld")
+    endif()
     set(_CMAKE_ADDITIONAL_NM_NAMES "llvm-nm")
     set(_CMAKE_ADDITIONAL_OBJDUMP_NAMES "llvm-objdump")
     set(_CMAKE_ADDITIONAL_OBJCOPY_NAMES "llvm-objcopy")