diff options
author | Oscar Fuentes <ofv@wanadoo.es> | 2008-11-10 01:47:07 +0000 |
---|---|---|
committer | Oscar Fuentes <ofv@wanadoo.es> | 2008-11-10 01:47:07 +0000 |
commit | 4f21c1358d17a0092f5980a20de74fac0dbd2693 (patch) | |
tree | e6a8faaab47bcafdbbecab0cf00b8d5341228d29 | |
parent | 02516ba8b4c1c77b81370f8bd712daadb44cd14a (diff) | |
download | external_llvm-4f21c1358d17a0092f5980a20de74fac0dbd2693.zip external_llvm-4f21c1358d17a0092f5980a20de74fac0dbd2693.tar.gz external_llvm-4f21c1358d17a0092f5980a20de74fac0dbd2693.tar.bz2 |
CMake: Implement magic word `all' for selecting all targets. Check
that specified targets are known.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@58951 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r-- | CMakeLists.txt | 35 |
1 files changed, 31 insertions, 4 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index ac7da65..7f477ad 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -13,15 +13,42 @@ set(LLVM_BINARY_DIR ${CMAKE_CURRENT_BINARY_DIR}) set(LLVM_TOOLS_BINARY_DIR ${LLVM_BINARY_DIR}/bin) set(LLVM_EXAMPLES_BINARY_DIR ${LLVM_BINARY_DIR}/examples) +set(LLVM_ALL_TARGETS + Alpha + ARM + CBackend + CellSPU + CppBackend + IA64 + Mips + MSIL + PIC16 + PowerPC + Sparc + X86 + XCore + ) + if( MSVC ) set(LLVM_TARGETS_TO_BUILD X86 - CACHE STRING "Semicolon-separated list of targets to build") + CACHE STRING "Semicolon-separated list of targets to build, or \"all\".") else( MSVC ) - set(LLVM_TARGETS_TO_BUILD - Alpha ARM CBackend CellSPU CppBackend IA64 Mips MSIL PIC16 PowerPC Sparc X86 XCore - CACHE STRING "Semicolon-separated list of targets to build") + set(LLVM_TARGETS_TO_BUILD ${LLVM_ALL_TARGETS} + CACHE STRING "Semicolon-separated list of targets to build, or \"all\".") endif( MSVC ) +if( LLVM_TARGETS_TO_BUILD STREQUAL "all" ) + set( LLVM_TARGETS_TO_BUILD ${LLVM_ALL_TARGETS} ) +endif() + +foreach(c ${LLVM_TARGETS_TO_BUILD}) + list(FIND LLVM_ALL_TARGETS ${c} idx) + if( idx LESS 0 ) + message(FATAL_ERROR "The target `${c}' does not exists. + It should be one of\n${LLVM_ALL_TARGETS}") + endif() +endforeach(c) + set(llvm_builded_incs_dir ${LLVM_BINARY_DIR}/include/llvm) # Add path for custom modules |