1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-19 19:12:56 +02:00
llvm-mirror/cmake/modules
Zachary Turner 8756b4c9f1 Determine up front which projects are enabled.
Some projects need to add conditional dependencies on other projects.
compiler-rt is already doing this, and I attempted to add this to
debuginfo-tests when I ran into the ordering problem, that you can't
conditionally add a dependency unless that dependency's CMakeLists.txt
has already been run (which would allow you to say if (TARGET foo).

The solution to this seems to be to determine very early on the entire
set of projects which is enabled. This is complicated by the fact that
there are multiple ways to enable projects, and different tree layouts
(e.g. mono-repo, out of -tree, external, etc). This patch attempts to
centralize all of this into one place, and then updates compiler-rt to
demonstrate as a proof of concept how this can simplify code.

Differential Revision: https://reviews.llvm.org/D37637

llvm-svn: 313091
2017-09-12 23:32:34 +00:00
..
AddLLVM.cmake Determine up front which projects are enabled. 2017-09-12 23:32:34 +00:00
AddLLVMDefinitions.cmake cmake: Avoid leading space in LLVM_DEFINITIONS. 2015-10-12 10:42:03 +00:00
AddOCaml.cmake [OCaml] Pass -D/-UNDEBUG through to ocamlc 2017-07-29 08:10:24 +00:00
AddSphinxTarget.cmake CMake: Fix docs-llvm-man target when clang+llvm is in the same source tree 2017-05-15 09:34:23 +00:00
CheckAtomic.cmake [LLVM][MIPS] Introduce 64 bit atomic check in CheckAtomic.cmake 2016-06-23 06:39:35 +00:00
CheckCompilerVersion.cmake Fix the MSVC version check. 2017-01-03 23:12:36 +00:00
CheckLinkerFlag.cmake Add -Wl,-color-diagnostics if a linker supports the option. 2017-01-11 22:55:35 +00:00
ChooseMSVCCRT.cmake [CMake] Untabify. 2014-02-02 16:46:35 +00:00
CMakeLists.txt cmake: Don't try to install exports if there aren't any 2016-11-08 05:02:18 +00:00
CrossCompile.cmake CMake: make LLVM_OPTIMIZED_TABLEGEN friendly with LLVM_EXTERNAL_CLANG_SOURCE_DIR 2016-11-11 04:27:59 +00:00
DetermineGCCCompatible.cmake CMake is funky on detecting Intel 17 as GCC compatible. 2017-01-26 23:50:18 +00:00
FindOCaml.cmake [OCaml] [cmake] Add CMake buildsystem for OCaml. 2014-12-01 19:50:23 +00:00
FindSphinx.cmake Add SPHINX_WARNINGS_AS_ERRORS CMake option to allow warnings to not be 2014-08-14 11:57:13 +00:00
GenerateVersionFromCVS.cmake Add SVN version to libLLVMLTO 2016-04-16 07:33:14 +00:00
GetHostTriple.cmake Improve CMake output of host and target triple 2016-09-27 18:08:40 +00:00
GetSVN.cmake [CMake] Update GetSVN.cmake to handle repo 2017-09-09 14:17:52 +00:00
HandleLLVMOptions.cmake Disable 64bit file position on old 32 bit Androids. 2017-09-01 23:12:43 +00:00
HandleLLVMStdlib.cmake Remove LLVM_ENABLE_LIBCXXABI 2016-08-04 10:24:48 +00:00
LLVM-Config.cmake [CMake][LLVM] Remove duplicated library mask. Broken clang linking against clangShared 2017-08-10 13:37:58 +00:00
LLVMConfig.cmake.in [CMake] NFC. Add intrinsics_gen target to CMake Exports 2017-07-28 15:33:35 +00:00
LLVMConfigVersion.cmake.in Teach LLVMConfigVersion.cmake to behave as find_package() expects. 2014-04-16 23:15:31 +00:00
LLVMExternalProjectUtils.cmake Generate a compile_commands.json DB for external projects. 2017-07-20 23:46:46 +00:00
LLVMInstallSymlink.cmake [CMake] Cleaning up and generalizing the LLVMInstallSymlink script so that it can be used for libraries too. 2015-10-16 23:17:13 +00:00
LLVMProcessSources.cmake Teach llvm_add_library() to find include dirs. 2015-02-10 05:04:37 +00:00
TableGen.cmake [CMake] Fix broken builds from r309029 2017-07-25 20:58:14 +00:00
VersionFromVCS.cmake CMake: Silence more stderr when running git. 2017-05-02 16:37:37 +00:00