[CMake] Add support for building the llvm test-suite as part of an LLVM build using...
authorChris Bieneman <beanz@apple.com>
Wed, 11 Nov 2015 16:14:03 +0000 (16:14 +0000)
committerChris Bieneman <beanz@apple.com>
Wed, 11 Nov 2015 16:14:03 +0000 (16:14 +0000)
commit7f75644664ac8429783509553912515ff06708c7
tree6670305f0ba582d3d1b52e2f040727a0abb2e9b2
parent7fd5a38591282a61e6327a2945bc6df36f9165dd
[CMake] Add support for building the llvm test-suite as part of an LLVM build using clang and lld

Summary:
This patch adds a new CMake module for working with ExternalProjects. This wrapper for ExternalProject supports using just-built tools and can hook up dependencies properly so that projects get cleared out.

The example usage here is for the llvm test-suite. In this example, the test-suite is setup as dependent on clang and lld if they are in-tree. If the clang or lld binaries change the test-suite is re-configured, cleaned, and rebuilt.

This cleanup and abstraction wrapping ExternalProject can be extended and applied to other runtime libraries like compiler-rt and libcxx.

Reviewers: samsonov, jroelofs, rengolin, jmolloy

Subscribers: jmolloy, llvm-commits

Differential Revision: http://reviews.llvm.org/D14513

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@252747 91177308-0d34-0410-b5e6-96231b3b80d8
CMakeLists.txt
cmake/modules/LLVMExternalProjectUtils.cmake [new file with mode: 0644]