From: Nico Weber Date: Tue, 21 May 2019 03:01:01 +0000 (+0000) Subject: Tweaks for setting CMAKE_LINKER to lld-link X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=614d096016667810cc777db37d180accb2390cfb;p=llvm Tweaks for setting CMAKE_LINKER to lld-link - Just look for "lld-link", not "lld-link.exe". llvm/cmake/platforms/WinMsvc.cmake for example sets CMAKE_LINKER to lld-link without .exe - Stop passing -gwarf to the compiler in sanitizer options when lld is enabled -- there's no reason to use different debug information keyed off the linker. (If this was for MinGW, we should check for that instead.) Differential Revision: https://reviews.llvm.org/D62111 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@361214 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/cmake/modules/HandleLLVMOptions.cmake b/cmake/modules/HandleLLVMOptions.cmake index f716dbdcd2e..cb9a01e1d39 100644 --- a/cmake/modules/HandleLLVMOptions.cmake +++ b/cmake/modules/HandleLLVMOptions.cmake @@ -12,7 +12,7 @@ include(CheckCCompilerFlag) include(CheckCXXCompilerFlag) include(CheckSymbolExists) -if(CMAKE_LINKER MATCHES "lld-link\\.exe" OR (WIN32 AND LLVM_USE_LINKER STREQUAL "lld") OR LLVM_ENABLE_LLD) +if(CMAKE_LINKER MATCHES "lld-link" OR (WIN32 AND LLVM_USE_LINKER STREQUAL "lld") OR LLVM_ENABLE_LLD) set(LINKER_IS_LLD_LINK TRUE) else() set(LINKER_IS_LLD_LINK FALSE) @@ -685,14 +685,8 @@ macro(append_common_sanitizer_flags) elseif (CLANG_CL) # Keep frame pointers around. append("/Oy-" CMAKE_C_FLAGS CMAKE_CXX_FLAGS) - if (LINKER_IS_LLD_LINK) - # Use DWARF debug info with LLD. - append("-gdwarf" CMAKE_C_FLAGS CMAKE_CXX_FLAGS) - else() - # Enable codeview otherwise. - append("/Z7" CMAKE_C_FLAGS CMAKE_CXX_FLAGS) - endif() # Always ask the linker to produce symbols with asan. + append("/Z7" CMAKE_C_FLAGS CMAKE_CXX_FLAGS) append("-debug" CMAKE_EXE_LINKER_FLAGS CMAKE_MODULE_LINKER_FLAGS CMAKE_SHARED_LINKER_FLAGS) endif() endmacro()