| 1 | # This file sets up a CMakeCache for Apple-style stage2 bootstrap. It is |
| 2 | # specified by the stage1 build. |
| 3 | |
| 4 | set(LLVM_TARGETS_TO_BUILD X86 ARM AArch64 CACHE STRING "") |
| 5 | set(PACKAGE_VENDOR Apple CACHE STRING "") |
| 6 | set(CLANG_VENDOR_UTI com.apple.clang CACHE STRING "") |
| 7 | set(LLVM_INCLUDE_EXAMPLES OFF CACHE BOOL "") |
| 8 | set(LLVM_INCLUDE_DOCS OFF CACHE BOOL "") |
| 9 | set(LLVM_TOOL_CLANG_TOOLS_EXTRA_BUILD OFF CACHE BOOL "") |
| 10 | set(CLANG_TOOL_SCAN_BUILD_BUILD OFF CACHE BOOL "") |
| 11 | set(CLANG_TOOL_SCAN_VIEW_BUILD OFF CACHE BOOL "") |
| 12 | set(CLANG_LINKS_TO_CREATE clang++ cc c++ CACHE STRING "") |
| 13 | set(CMAKE_MACOSX_RPATH ON CACHE BOOL "") |
| 14 | set(LLVM_ENABLE_ZLIB ON CACHE BOOL "") |
| 15 | set(LLVM_ENABLE_BACKTRACES OFF CACHE BOOL "") |
| 16 | set(LLVM_ENABLE_MODULES ON CACHE BOOL "") |
| 17 | set(LLVM_EXTERNALIZE_DEBUGINFO ON CACHE BOOL "") |
| 18 | set(CLANG_PLUGIN_SUPPORT OFF CACHE BOOL "") |
| 19 | set(BUG_REPORT_URL "http://developer.apple.com/bugreporter/" CACHE STRING "") |
| 20 | |
| 21 | set(LLVM_BUILD_EXTERNAL_COMPILER_RT ON CACHE BOOL "Build Compiler-RT with just-built clang") |
| 22 | set(COMPILER_RT_ENABLE_IOS ON CACHE BOOL "Build iOS Compiler-RT libraries") |
| 23 | |
| 24 | set(LLVM_CREATE_XCODE_TOOLCHAIN ON CACHE BOOL "Generate targets to create and install an Xcode compatible toolchain") |
| 25 | |
| 26 | # Make unit tests (if present) part of the ALL target |
| 27 | set(LLVM_BUILD_TESTS ON CACHE BOOL "") |
| 28 | |
| 29 | set(LLVM_ENABLE_LTO ON CACHE BOOL "") |
| 30 | set(CMAKE_C_FLAGS "-fno-stack-protector -fno-common -Wno-profile-instr-unprofiled" CACHE STRING "") |
| 31 | set(CMAKE_CXX_FLAGS "-fno-stack-protector -fno-common -Wno-profile-instr-unprofiled" CACHE STRING "") |
| 32 | if(LLVM_ENABLE_LTO AND NOT LLVM_ENABLE_LTO STREQUAL "THIN") |
| 33 | set(CMAKE_C_FLAGS_RELWITHDEBINFO "-O2 -gline-tables-only -DNDEBUG" CACHE STRING "") |
| 34 | set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O2 -gline-tables-only -DNDEBUG" CACHE STRING "") |
| 35 | endif() |
| 36 | set(CMAKE_BUILD_TYPE RelWithDebInfo CACHE STRING "") |
| 37 | |
| 38 | set(LIBCXX_INSTALL_LIBRARY OFF CACHE BOOL "") |
| 39 | set(LIBCXX_INSTALL_HEADERS ON CACHE BOOL "") |
| 40 | set(LIBCXX_INCLUDE_TESTS OFF CACHE BOOL "") |
| 41 | set(LIBCXX_USE_COMPILER_RT ON CACHE BOOL "") |
| 42 | set(LLVM_LTO_VERSION_OFFSET 3000 CACHE STRING "") |
| 43 | |
| 44 | # Generating Xcode toolchains is useful for developers wanting to build and use |
| 45 | # clang without installing over existing tools. |
| 46 | set(LLVM_CREATE_XCODE_TOOLCHAIN ON CACHE BOOL "") |
| 47 | |
| 48 | # setup toolchain |
| 49 | set(LLVM_INSTALL_TOOLCHAIN_ONLY ON CACHE BOOL "") |
| 50 | set(LLVM_TOOLCHAIN_TOOLS |
| 51 | dsymutil |
| 52 | llvm-cov |
| 53 | llvm-dwarfdump |
| 54 | llvm-profdata |
| 55 | llvm-objdump |
| 56 | llvm-nm |
| 57 | llvm-size |
| 58 | CACHE STRING "") |
| 59 | |
| 60 | set(LLVM_DISTRIBUTION_COMPONENTS |
| 61 | clang |
| 62 | LTO |
| 63 | clang-format |
| 64 | clang-resource-headers |
| 65 | cxx-headers |
| 66 | Remarks |
| 67 | ${LLVM_TOOLCHAIN_TOOLS} |
| 68 | CACHE STRING "") |
| 69 | |
| 70 | # test args |
| 71 | |
| 72 | set(LLVM_LIT_ARGS "--xunit-xml-output=testresults.xunit.xml -v" CACHE STRING "") |
| 73 | |