diff options
| -rw-r--r-- | llvm/cmake/modules/HandleLLVMOptions.cmake | 19 | 
1 files changed, 5 insertions, 14 deletions
diff --git a/llvm/cmake/modules/HandleLLVMOptions.cmake b/llvm/cmake/modules/HandleLLVMOptions.cmake index 8d9051cfdd7..d776285b80f 100644 --- a/llvm/cmake/modules/HandleLLVMOptions.cmake +++ b/llvm/cmake/modules/HandleLLVMOptions.cmake @@ -715,20 +715,11 @@ if(uppercase_LLVM_ENABLE_LTO STREQUAL "THIN")    if(NOT LINKER_IS_LLD_LINK)      append("-flto=thin" CMAKE_EXE_LINKER_FLAGS CMAKE_SHARED_LINKER_FLAGS)    endif() -  # If the linker supports it, enable the lto cache. This improves initial build -  # time a little since we re-link a lot of the same objects, and significantly -  # improves incremental build time. -  # FIXME: We should move all this logic into the clang driver. -  if(APPLE) -    append("-Wl,-cache_path_lto,${PROJECT_BINARY_DIR}/lto.cache" -           CMAKE_EXE_LINKER_FLAGS CMAKE_SHARED_LINKER_FLAGS) -  elseif(UNIX AND LLVM_USE_LINKER STREQUAL "lld") -    append("-Wl,--thinlto-cache-dir=${PROJECT_BINARY_DIR}/lto.cache" -           CMAKE_EXE_LINKER_FLAGS CMAKE_SHARED_LINKER_FLAGS) -  elseif(LLVM_USE_LINKER STREQUAL "gold") -    append("-Wl,--plugin-opt,cache-dir=${PROJECT_BINARY_DIR}/lto.cache" -           CMAKE_EXE_LINKER_FLAGS CMAKE_SHARED_LINKER_FLAGS) -  endif() +  # On darwin, enable the lto cache. This improves initial build time a little +  # since we re-link a lot of the same objects, and significantly improves +  # incremental build time. +  append_if(APPLE "-Wl,-cache_path_lto,${PROJECT_BINARY_DIR}/lto.cache" +            CMAKE_EXE_LINKER_FLAGS CMAKE_SHARED_LINKER_FLAGS)  elseif(uppercase_LLVM_ENABLE_LTO STREQUAL "FULL")    append("-flto=full" CMAKE_CXX_FLAGS CMAKE_C_FLAGS)    if(NOT LINKER_IS_LLD_LINK)  | 

