mirror of
https://github.com/RPCSX/llvm.git
synced 2024-11-23 19:59:57 +00:00
[CMake] Make the runtimes directory work with bootstrap builds
This patch builds on clang r284648, and allows the runtime directory to make the bootstrap builds depend on the builtin libraries. This patch also make the bootstrap build depend on configuring the other runtimes because the libcxx headers are copied during configuration. I have left a TODO in the code to remove that once I come up with a better solution. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@284650 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
bac9c437ae
commit
43fa064b8c
@ -146,6 +146,11 @@ else() # if this is included from LLVM's CMake
|
|||||||
PASSTHROUGH_PREFIXES COMPILER_RT
|
PASSTHROUGH_PREFIXES COMPILER_RT
|
||||||
USE_TOOLCHAIN)
|
USE_TOOLCHAIN)
|
||||||
set(deps builtins)
|
set(deps builtins)
|
||||||
|
# We don't need to depend on the builtins if we're building instrumented
|
||||||
|
# because the next stage will use the same compiler used to build this stage.
|
||||||
|
if(NOT LLVM_BUILD_INSTRUMENTED AND CLANG_ENABLE_BOOTSTRAP)
|
||||||
|
add_dependencies(clang-bootstrap-deps builtins)
|
||||||
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# We create a list the names of all the runtime projects in all uppercase and
|
# We create a list the names of all the runtime projects in all uppercase and
|
||||||
@ -196,6 +201,16 @@ else() # if this is included from LLVM's CMake
|
|||||||
${SUB_COMPONENT_CHECK_TARGETS}
|
${SUB_COMPONENT_CHECK_TARGETS}
|
||||||
${SUB_INSTALL_TARGETS}
|
${SUB_INSTALL_TARGETS}
|
||||||
USE_TOOLCHAIN)
|
USE_TOOLCHAIN)
|
||||||
|
|
||||||
|
# TODO: This is a hack needed because the libcxx headers are copied into the
|
||||||
|
# build directory during configuration. Without that step the clang in the
|
||||||
|
# build directory cannot find the C++ headers in certain configurations.
|
||||||
|
# I need to build a mechanism for runtime projects to provide CMake code
|
||||||
|
# that executes at LLVM configuration time to handle this case.
|
||||||
|
if(NOT LLVM_BUILD_INSTRUMENTED AND CLANG_ENABLE_BOOTSTRAP)
|
||||||
|
add_dependencies(clang-bootstrap-deps runtimes-configure)
|
||||||
|
endif()
|
||||||
|
|
||||||
if(LLVM_INCLUDE_TESTS)
|
if(LLVM_INCLUDE_TESTS)
|
||||||
set_property(GLOBAL APPEND PROPERTY LLVM_ADDITIONAL_TEST_DEPENDS runtimes-test-depends)
|
set_property(GLOBAL APPEND PROPERTY LLVM_ADDITIONAL_TEST_DEPENDS runtimes-test-depends)
|
||||||
set_property(GLOBAL APPEND PROPERTY LLVM_ADDITIONAL_TEST_TARGETS check-runtimes)
|
set_property(GLOBAL APPEND PROPERTY LLVM_ADDITIONAL_TEST_TARGETS check-runtimes)
|
||||||
|
Loading…
Reference in New Issue
Block a user