Skip to content

Commit

Permalink
[CMake] Make bootstrap and compiler-rt depend on cxx-headers.
Browse files Browse the repository at this point in the history
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
  • Loading branch information
ahmedbougacha committed Jun 28, 2018
1 parent 197e73f commit 8b59788
Show file tree
Hide file tree
Showing 2 changed files with 13 additions and 4 deletions.
11 changes: 8 additions & 3 deletions clang/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -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")
Expand Down
6 changes: 5 additions & 1 deletion clang/runtime/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -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}
Expand Down

0 comments on commit 8b59788

Please sign in to comment.