# Individual preset options: # # 1. mixin-preset: building for Linux, without compiler assertions, and with # most tests disabled # 2. build-ninja=0, skip-build-curl, skip-build-zlib: we'd prefer to pick these # up from the system # 3. extra-cmake-options: # * -DLLVM_USE_LINKER, -DCLANG_DEFAULT_LINKER: build LLVM, clang, Swift, et. # al. to link using lld, and ensure Clang uses it as its default # * -DBUILD_TESTING, -DSWIFT_INCLUDE_TESTS, -DSWIFT_INCLUDE_TEST_BINARIES: # the `no_test` preset disables building most, but not all tests; we don't # need to build any of them # * -DCOMPILER_RT_BUILD_ORC: the `compiler-rt` library defaults to building # the ORC LLVM JIT library, which we don't require; we disable it because # it builds with executable stacks, which trip up warnings on installation # * -DPython3_FIND_UNVERSIONED_NAMES: LLDB ships with Python bindings, and # uses CMake to search for Python. By default, CMake tries to find the # latest version installed on disk (currently, `python3.13`, then # `python3.12`, then...). This might not be the version of Python specified # by `PYTHON_SINGLE_TARGET`, which we want to respect. We use # `python_setup` to place `${EPYTHON}` at the front of `PATH` as the # unversioned `python3`, so we want CMake to discover and use this binary # first before falling back to its search # 5. llvm-targets-to-build: we don't currently support architectures other than # amd64, so there's no point in building LLVM for multiple architectures; if # this changes (or we start supporting cross-compilation), we'll need to # build for more than just the host [preset: gentoo] mixin-preset=buildbot_linux,no_assertions,no_test build-ninja=0 extra-cmake-options= -DLLVM_USE_LINKER:STRING=lld -DCLANG_DEFAULT_LINKER:STRING=lld -DBUILD_TESTING:BOOL=NO -DSWIFT_INCLUDE_TESTS:BOOL=NO -DSWIFT_INCLUDE_TEST_BINARIES:BOOL=NO -DCOMPILER_RT_BUILD_ORC:BOOL=NO -DPython3_FIND_UNVERSIONED_NAMES:STRING=FIRST llvm-targets-to-build=host skip-build-curl skip-build-zlib