Reapply [runtimes] Set more paths when building runtimes standalone
authorMartin Storsjö <martin@martin.st>
Wed, 11 Aug 2021 11:14:31 +0000 (14:14 +0300)
committerMartin Storsjö <martin@martin.st>
Thu, 9 Sep 2021 12:30:42 +0000 (15:30 +0300)
commita3870e8ab164e796da4fe48c6abf899d79c09f6d
tree792446247cbec8e10d29a0fba725c3c1883c4a64
parent312ad74aea4886159472597ed6b2c40dea9e5ca7
Reapply [runtimes] Set more paths when building runtimes standalone

These paths are needed when building with per-target runtime directories.

(It's possible to fix this by manually setting these when invoking
cmake, but one isn't supposed to need to do that.)

Also set LLVM_TOOLS_BINARY_DIR while touching this area (as it's
also unset in this case) even if it isn't specifically needed by the
per-target runtime configuration.

Fixed since previous attempt: Don't check if the runtimes directory
is the root of the CMake invocation; when the main LLVM CMake
build builds runtimes, it does invoke a sub-CMake with this directory
as the root too, just as if manually invoking CMake at the runtimes
directory. Instead check whether LLVM_TOOLS_BINARY_DIR was set and
whether find_package(LLVM) succeeded or not.

Differential Revision: https://reviews.llvm.org/D107895
libcxx/cmake/Modules/HandleOutOfTreeLLVM.cmake
runtimes/CMakeLists.txt