summaryrefslogtreecommitdiffstats
path: root/CMakeLists.txt
diff options
context:
space:
mode:
authorChris Bieneman <beanz@apple.com>2016-02-12 19:06:12 +0000
committerChris Bieneman <beanz@apple.com>2016-02-12 19:06:12 +0000
commita8c2c99ef0454484139c177cc6cf20ed0fdf4b07 (patch)
tree1821479d596e08981c146d4951dc060287f6fef7 /CMakeLists.txt
parent2721c4d7813b4e456bc2465cb487c729074fca1d (diff)
[CMake] Pass stage1 tools through to stage2 when building with LTO
This was originally a hacky if(APPLE) block. Now that we have an option for enabling LTO, it is better to properly gate this. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@260707 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'CMakeLists.txt')
-rw-r--r--CMakeLists.txt8
1 files changed, 6 insertions, 2 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 8a93f92127..be8a7aa522 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -677,11 +677,15 @@ if (CLANG_ENABLE_BOOTSTRAP)
# If on Darwin we need to make bootstrap depend on LTO and pass
# DARWIN_LTO_LIBRARY so that -flto will work using the just-built compiler
- if(APPLE)
+ if(BOOTSTRAP_LLVM_ENABLE_LTO OR LLVM_ENABLE_LTO)
set(LTO_DEP LTO llvm-ar llvm-ranlib)
- set(LTO_LIBRARY -DDARWIN_LTO_LIBRARY=${LLVM_SHLIB_OUTPUT_INTDIR}/libLTO.dylib)
set(LTO_AR -DCMAKE_AR=${LLVM_RUNTIME_OUTPUT_INTDIR}/llvm-ar)
set(LTO_RANLIB -DCMAKE_RANLIB=${LLVM_RUNTIME_OUTPUT_INTDIR}/llvm-ranlib)
+ if(APPLE)
+ set(LTO_LIBRARY -DDARWIN_LTO_LIBRARY=${LLVM_SHLIB_OUTPUT_INTDIR}/libLTO.dylib)
+ elseif(NOT WIN32)
+ list(APPEND LTO_DEP LLVMgold)
+ endif()
endif()
add_custom_target(${NEXT_CLANG_STAGE}-clear