1 # This file sets up a CMakeCache for Apple-style bootstrap builds. It can be
2 # used on any Darwin system to approximate Apple Clang builds.
4 if($ENV{DT_TOOLCHAIN_DIR})
5 set(CMAKE_INSTALL_PREFIX $ENV{DT_TOOLCHAIN_DIR}/usr/)
7 set(CMAKE_INSTALL_PREFIX /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.toolchain/usr/)
10 set(LLVM_TARGETS_TO_BUILD X86 CACHE STRING "")
11 set(CLANG_VENDOR Apple CACHE STRING "")
12 set(LLVM_INCLUDE_TESTS OFF CACHE BOOL "")
13 set(LLVM_INCLUDE_EXAMPLES OFF CACHE BOOL "")
14 set(LLVM_INCLUDE_UTILS OFF CACHE BOOL "")
15 set(LLVM_INCLUDE_DOCS OFF CACHE BOOL "")
16 set(CLANG_INCLUDE_TESTS OFF CACHE BOOL "")
17 set(COMPILER_RT_INCLUDE_TESTS OFF CACHE BOOL "")
18 set(COMPILER_RT_BUILD_SANITIZERS OFF CACHE BOOL "")
19 set(CMAKE_MACOSX_RPATH ON CACHE BOOL "")
20 set(LLVM_ENABLE_ZLIB OFF CACHE BOOL "")
21 set(LLVM_ENABLE_BACKTRACES OFF CACHE BOOL "")
22 set(CLANG_PLUGIN_SUPPORT OFF CACHE BOOL "")
23 set(CLANG_SPAWN_CC1 ON CACHE BOOL "")
24 set(CLANG_BOOTSTRAP_PASSTHROUGH
25 CMAKE_OSX_ARCHITECTURES
28 # Disabling embedded darwin compiler-rt on stage1 builds is required because we
29 # don't build stage1 to support arm code generation.
30 set(COMPILER_RT_ENABLE_IOS OFF CACHE BOOL "")
31 set(COMPILER_RT_ENABLE_WATCHOS OFF CACHE BOOL "")
32 set(COMPILER_RT_ENABLE_TVOS OFF CACHE BOOL "")
34 set(BOOTSTRAP_LLVM_ENABLE_LTO ON CACHE BOOL "")
35 set(CMAKE_BUILD_TYPE RelWithDebInfo CACHE STRING "")
37 set(LIBCXX_ENABLE_NEW_DELETE_DEFINITIONS OFF CACHE BOOL "")
38 set(LIBCXXABI_ENABLE_NEW_DELETE_DEFINITIONS ON CACHE BOOL "")
40 set(CLANG_BOOTSTRAP_TARGETS
52 install-xcode-toolchain
53 install-distribution-toolchain
54 clang CACHE STRING "")
57 set(CLANG_ENABLE_BOOTSTRAP ON CACHE BOOL "")
58 set(CLANG_BOOTSTRAP_CMAKE_ARGS
59 -C ${CMAKE_CURRENT_LIST_DIR}/Apple-stage2.cmake