llvm-project/llvm/cmake/modules
Markus Böck 3d0aed7936 [CMake] Use compiler-rt location instead of resource directory to find clang-cls runtime directory
The current cmake script attempts to add the path containing clangs various runtime systems by getting the resource directory and then appending the hardcoded value /lib/windows to it. This works for a normal clang-cl build but fails for a build of clang using LLVM_ENABLE_PER_TARGET_RUNTIME_DIR, such as the builds from llvm/runtimes.

This patch instead uses -print-libgcc-file-name in conjunction with --rtlib=compiler-rt, and instead adds the containing directory as library path.

For non per-target runtime directory builds, such as the release builds, there is no change. Even if the builtins library were to be deleted or moved it would output the same path as before.
For per-target runtime builds that also have the builtins library, this now finds the correct directory containing all of clang runtime libraries.

Only case still not handled by this change, is if a per-target runtime directory build is used, but the builtins library was not built.
I believe that is the best we can do for now however, without modifying clang.

Differential Revision: https://reviews.llvm.org/D98786
2021-03-18 09:24:49 +01:00
..
AddLLVM.cmake [CMake] Don't optimize tests so much under ThinLTO 2021-02-22 15:13:49 -08:00
AddLLVMDefinitions.cmake
AddOCaml.cmake
AddSphinxTarget.cmake Reland [lldb][docs] Use sphinx instead of epydoc to generate LLDB's Python reference 2021-01-17 12:13:01 +01:00
CMakeLists.txt Remove .svn from exclude list as we moved to git 2020-10-21 16:09:21 +02:00
CheckAtomic.cmake Fix CMake configuration error when run with -Werror/-Wall 2020-10-10 21:22:40 +02:00
CheckCompilerVersion.cmake Bump MSVC required version to 19.14 2020-12-03 10:09:18 -08:00
CheckLinkerFlag.cmake
ChooseMSVCCRT.cmake
CrossCompile.cmake [CMake] Fix cross-compiling with LLVM as CMake subproject 2020-04-30 16:54:20 +02:00
DetermineGCCCompatible.cmake
FindGRPC.cmake [clangd] Optionally add reflection for clangd-index-server 2021-03-15 21:07:25 +01:00
FindLibpfm.cmake [llvm-exegesis] Check perf_branch_entry for field cycles 2020-07-27 11:31:13 -04:00
FindOCaml.cmake
FindSphinx.cmake
FindZ3.cmake [NFC] Fix Z3 version detection regexp 2020-04-09 13:06:22 +02:00
GenerateVersionFromVCS.cmake
GetErrcMessages.cmake [test] Make sure the test program in GetErrcMessages.cmake exits normally. 2021-03-16 12:22:40 +01:00
GetHostTriple.cmake [SystemZ/ZOS] Additions to the build system. 2020-08-26 06:53:44 -04:00
GetLibraryName.cmake [CMake] Simplify CMake handling for libxml2 2020-09-09 21:44:44 -07:00
HandleLLVMOptions.cmake [CMake] Use compiler-rt location instead of resource directory to find clang-cls runtime directory 2021-03-18 09:24:49 +01:00
HandleLLVMStdlib.cmake
LLVM-Build.cmake [llvmbuildectomy] Also include component groups in llvm-config --components list 2020-11-26 21:05:56 +01:00
LLVM-Config.cmake [ASTMatchers] Fix build when no targets are enabled 2021-01-05 14:40:35 +00:00
LLVMConfig.cmake.in [llvm] Export LLVM_LIT_ARGS in LLVMConfig.cmake 2020-10-29 20:27:05 -07:00
LLVMConfigVersion.cmake.in
LLVMDistributionSupport.cmake
LLVMExternalProjectUtils.cmake [runtimes] Fix crosscompiling after a7cad6680b (D97451) 2021-03-06 11:35:14 +02:00
LLVMInstallSymlink.cmake
LLVMProcessSources.cmake [clangd] Fix remote index build without shared libs mode 2020-04-28 19:16:37 +02:00
TableGen.cmake [CMake][TableGen] Remove dead CMake version checks 2020-09-07 10:59:07 +03:00
TensorFlowCompile.cmake [mlgo] Fetch models from path / URL 2021-02-16 22:47:14 -08:00
UseLibtool.cmake
VersionFromVCS.cmake Make ninja smart console builds more pretty 2020-06-22 06:35:13 -04:00