[CMake] Make bootstrap and compiler-rt depend on cxx-headers.

Since r334468, we no longer always copy the libcxx headers by virtue of
their presence when cmake runs.

This makes some of the later stages (compiler-rt, and the bootstrapped
stages) depend on them being copied, via the cxx-headers target.

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

llvm-svn: 335898
This commit is contained in:
Ahmed Bougacha 2018-06-28 18:35:25 +00:00
parent 197e73fede
commit 8b597883a1
2 changed files with 13 additions and 4 deletions

View File

@ -621,10 +621,15 @@ if (CLANG_ENABLE_BOOTSTRAP)
LLVM_ENABLE_PROJECTS
LLVM_ENABLE_RUNTIMES)
# We don't need to depend on compiler-rt if we're building instrumented
# We don't need to depend on compiler-rt/libcxx if we're building instrumented
# because the next stage will use the same compiler used to build this stage.
if(TARGET compiler-rt AND NOT LLVM_BUILD_INSTRUMENTED)
add_dependencies(clang-bootstrap-deps compiler-rt)
if(NOT LLVM_BUILD_INSTRUMENTED)
if(TARGET compiler-rt)
add_dependencies(clang-bootstrap-deps compiler-rt)
endif()
if(TARGET cxx-headers)
add_dependencies(clang-bootstrap-deps cxx-headers)
endif()
endif()
set(C_COMPILER "clang")

View File

@ -58,8 +58,12 @@ if(LLVM_BUILD_EXTERNAL_COMPILER_RT AND EXISTS ${COMPILER_RT_SRC_ROOT}/)
endif()
endforeach()
if(TARGET cxx-headers)
set(COMPILER_RT_LIBCXX_DEPENDENCY "cxx-headers")
endif()
ExternalProject_Add(compiler-rt
DEPENDS llvm-config clang
DEPENDS llvm-config clang ${COMPILER_RT_LIBCXX_DEPENDENCY}
PREFIX ${COMPILER_RT_PREFIX}
SOURCE_DIR ${COMPILER_RT_SRC_ROOT}
STAMP_DIR ${STAMP_DIR}