OSDN Git Service

[CMake][runtimes] Set compiler as working even for default target
authorPetr Hosek <phosek@chromium.org>
Tue, 14 Nov 2017 23:47:20 +0000 (23:47 +0000)
committerPetr Hosek <phosek@chromium.org>
Tue, 14 Nov 2017 23:47:20 +0000 (23:47 +0000)
Even when building builtins and runtimes for the default target
we shouldn't assume that the just built compiler is already useable.
When the compiler uses compiler-rt and libc++ as the default runtime
and C++ library, it won't be usable until we finish building runtimes.

Differential Revision: https://reviews.llvm.org/D39715

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@318224 91177308-0d34-0410-b5e6-96231b3b80d8

runtimes/CMakeLists.txt

index d916c4a..23bbf3c 100644 (file)
@@ -216,6 +216,8 @@ else() # if this is included from LLVM's CMake
                                         -DLLVM_RUNTIME_OUTPUT_INTDIR=${LLVM_TOOLS_BINARY_DIR}
                                         -DCMAKE_C_COMPILER_TARGET=${TARGET_TRIPLE}
                                         -DCMAKE_ASM_COMPILER_TARGET=${TARGET_TRIPLE}
+                                        -DCMAKE_C_COMPILER_WORKS=ON
+                                        -DCMAKE_ASM_COMPILER_WORKS=ON
                              PASSTHROUGH_PREFIXES COMPILER_RT
                              USE_TOOLCHAIN
                              ${EXTRA_ARGS})
@@ -244,9 +246,9 @@ else() # if this is included from LLVM's CMake
                                         -DLLVM_RUNTIME_OUTPUT_INTDIR=${LLVM_TOOLS_BINARY_DIR}
                                         -DCMAKE_C_COMPILER_TARGET=${target}
                                         -DCMAKE_ASM_COMPILER_TARGET=${target}
-                                        -DCMAKE_C_COMPILER_WORKS=On
-                                        -DCMAKE_ASM_COMPILER_WORKS=On
-                                        -DCOMPILER_RT_DEFAULT_TARGET_ONLY=On
+                                        -DCMAKE_C_COMPILER_WORKS=ON
+                                        -DCMAKE_ASM_COMPILER_WORKS=ON
+                                        -DCOMPILER_RT_DEFAULT_TARGET_ONLY=ON
                                         ${${target}_extra_args}
                              TOOLCHAIN_TOOLS clang lld llvm-ar llvm-ranlib
                              PASSTHROUGH_PREFIXES COMPILER_RT
@@ -324,6 +326,9 @@ else() # if this is included from LLVM's CMake
                              CMAKE_ARGS -DCOMPILER_RT_BUILD_BUILTINS=Off
                                         -DLLVM_INCLUDE_TESTS=${LLVM_INCLUDE_TESTS}
                                         -DLLVM_LIBRARY_DIR=${LLVM_LIBRARY_DIR}
+                                        -DCMAKE_C_COMPILER_WORKS=ON
+                                        -DCMAKE_CXX_COMPILER_WORKS=ON
+                                        -DCMAKE_ASM_COMPILER_WORKS=ON
                              PASSTHROUGH_PREFIXES ${prefixes}
                              EXTRA_TARGETS ${extra_targets}
                                            ${test_targets}