summaryrefslogtreecommitdiffstats
path: root/llvm/cmake/modules/AddLLVM.cmake
diff options
context:
space:
mode:
Diffstat (limited to 'llvm/cmake/modules/AddLLVM.cmake')
-rw-r--r--llvm/cmake/modules/AddLLVM.cmake15
1 files changed, 14 insertions, 1 deletions
diff --git a/llvm/cmake/modules/AddLLVM.cmake b/llvm/cmake/modules/AddLLVM.cmake
index d631fcc0f05..2e0d4a4c6c8 100644
--- a/llvm/cmake/modules/AddLLVM.cmake
+++ b/llvm/cmake/modules/AddLLVM.cmake
@@ -147,7 +147,20 @@ function(add_llvm_symbol_exports target_name export_file)
set(LLVM_COMMON_DEPENDS ${LLVM_COMMON_DEPENDS} PARENT_SCOPE)
endfunction(add_llvm_symbol_exports)
-if(NOT WIN32 AND NOT APPLE)
+if(APPLE)
+ execute_process(
+ COMMAND "${CMAKE_LINKER}" -v
+ ERROR_VARIABLE stderr
+ )
+ set(LLVM_LINKER_DETECTED ON)
+ if("${stderr}" MATCHES "PROJECT:ld64")
+ set(LLVM_LINKER_IS_LD64 ON)
+ message(STATUS "Linker detection: ld64")
+ else()
+ set(LLVM_LINKER_DETECTED OFF)
+ message(STATUS "Linker detection: unknown")
+ endif()
+elseif(NOT WIN32)
# Detect what linker we have here
if( LLVM_USE_LINKER )
set(command ${CMAKE_C_COMPILER} -fuse-ld=${LLVM_USE_LINKER} -Wl,--version)
OpenPOWER on IntegriCloud