Clang Project

clang_source_code/cmake/caches/Android.cmake
1# This file sets up a CMakeCache for an Android toolchain build.
2
3set(LLVM_TARGETS_TO_BUILD X86 CACHE STRING "")
4
5set(CLANG_ENABLE_ARCMT OFF CACHE BOOL "")
6set(CLANG_ENABLE_STATIC_ANALYZER OFF CACHE BOOL "")
7set(CLANG_VENDOR Android CACHE STRING "")
8
9set(CMAKE_BUILD_TYPE RELEASE CACHE STRING "")
10
11set(HAVE_LIBCXXABI ON CACHE BOOL "")
12set(LLVM_BUILD_TOOLS OFF CACHE BOOL "")
13set(LLVM_ENABLE_ASSERTIONS ON CACHE BOOL "")
14set(LLVM_ENABLE_THREADS OFF CACHE BOOL "")
15set(LLVM_LIBDIR_SUFFIX 64 CACHE STRING "")
16set(LLVM_TOOL_CLANG_TOOLS_EXTRA_BUILD OFF CACHE BOOL "")
17set(LLVM_TOOL_OPENMP_BUILD OFF CACHE BOOL "")
18set(LLVM_ENABLE_LIBCXX ON CACHE BOOL "")
19
20if (LIBCXX_ENABLE_ABI_LINKER_SCRIPT)
21  list(APPEND EXTRA_ARGS -DLIBCXX_ENABLE_ABI_LINKER_SCRIPT=${LIBCXX_ENABLE_ABI_LINKER_SCRIPT})
22endif()
23
24if (LIBCXX_ENABLE_STATIC_ABI_LIBRARY)
25  list(APPEND EXTRA_ARGS -DLIBCXX_ENABLE_STATIC_ABI_LIBRARY=${LIBCXX_ENABLE_STATIC_ABI_LIBRARY})
26endif()
27
28if (LLVM_BUILD_EXTERNAL_COMPILER_RT)
29  set(APPEND EXTRA_ARGS -DLLVM_BUILD_EXTERNAL_COMPILER_RT=${LLVM_BUILD_EXTERNAL_COMPILER_RT})
30endif()
31
32get_cmake_property(variableNames VARIABLES)
33foreach(variableName ${variableNames})
34  if(variableName MATCHES "^STAGE2_")
35    string(REPLACE "STAGE2_" "" new_name ${variableName})
36    list(APPEND EXTRA_ARGS "-D${new_name}=${${variableName}}")
37  endif()
38endforeach()
39
40set(CLANG_ENABLE_BOOTSTRAP ON CACHE BOOL "")
41set(CLANG_BOOTSTRAP_CMAKE_ARGS
42  ${EXTRA_ARGS}
43  -C${CMAKE_CURRENT_LIST_DIR}/Android-stage2.cmake CACHE STRING "")
44