#===--- build-presets.ini - Option presets for building Swift --------------===#
#
## This source file is part of the Swift.org open source project
##
## Copyright (c) 2014 - 2017 Apple Inc. and the Swift project authors
## Licensed under Apache License v2.0 with Runtime Library Exception
##
## See https://swift.org/LICENSE.txt for license information
## See https://swift.org/CONTRIBUTORS.txt for the list of Swift project authors
#
#===------------------------------------------------------------------------===#

#===------------------------------------------------------------------------===#
# Buildbots for Darwin OSes
#===------------------------------------------------------------------------===#
[preset: mixin_buildbot_install_components]
swift-install-components=compiler;clang-builtin-headers;stdlib;sdk-overlay;parser-lib;editor-integration;tools;toolchain-tools;testsuite-tools;sourcekit-xpc-service;swift-remote-mirror;swift-remote-mirror-headers;

[preset: mixin_buildbot_install_components_with_clang]
swift-install-components=compiler;clang-resource-dir-symlink;stdlib;sdk-overlay;parser-lib;toolchain-tools;license;sourcekit-xpc-service;swift-remote-mirror;swift-remote-mirror-headers
llvm-install-components=llvm-cov;llvm-profdata;IndexStore;clang;clang-resource-headers;compiler-rt;clangd;dsymutil

[preset: mixin_buildbot_trunk_base]
# Build standard library and SDK overlay for iOS device and simulator.
ios
tvos
watchos
test
validation-test
lit-args=-v
compiler-vendor=apple

verbose-build
build-ninja

build-swift-stdlib-unittest-extra

install-llvm
install-swift

# Path to the root of the installation filesystem.
install-destdir=%(install_destdir)s

# Path to the .tar.gz package we would create.
installable-package=%(installable_package)s

# If someone uses this for incremental builds, force reconfiguration.
reconfigure

[preset: buildbot,tools=RA,stdlib=RD,test=no]
mixin-preset=
    mixin_buildbot_trunk_base
    mixin_buildbot_install_components

# Build Release without debug info, because it is faster to build.
release
assertions

swift-stdlib-build-type=RelWithDebInfo
swift-stdlib-enable-assertions=false

# Disable osx tests.
skip-test-osx

# Disable non-x86.
skip-build-ios
skip-test-ios
skip-build-tvos
skip-test-tvos
skip-build-watchos
skip-test-watchos
stdlib-deployment-targets=macosx-x86_64
swift-primary-variant-sdk=OSX
swift-primary-variant-arch=x86_64

[preset: mixin_buildbot_tools_RA_stdlib_RDA]
mixin-preset=
    mixin_buildbot_trunk_base
    mixin_buildbot_install_components

# Build Release without debug info, because it is faster to build.
release
assertions
# Also run tests in optimized modes.
test-optimized
test-optimize-for-size

swift-stdlib-build-type=RelWithDebInfo
swift-stdlib-enable-assertions=true

# This is a release non-incremental build. Run sil-verify-all.
sil-verify-all

[preset: mixin_buildbot_tools_RDA_stdlib_RDA]
mixin-preset=
    mixin_buildbot_trunk_base
    mixin_buildbot_install_components

# Build Release without debug info, because it is faster to build.
release-debuginfo
assertions
# Also run tests in optimized modes.
test-optimized

swift-stdlib-build-type=RelWithDebInfo
swift-stdlib-enable-assertions=true

# This is a release non-incremental build. Run sil-verify-all.
sil-verify-all

[preset: mixin_buildbot_tools_RA_stdlib_RD]
mixin-preset=
    mixin_buildbot_trunk_base
    mixin_buildbot_install_components

# Build Release without debug info, because it is faster to build.
release
assertions
# Also run tests in optimized modes.
test-optimized
test-optimize-for-size

swift-stdlib-build-type=RelWithDebInfo
swift-stdlib-enable-assertions=false

[preset: mixin_buildbot_tools_R_stdlib_RD]
mixin-preset=
    mixin_buildbot_trunk_base
    mixin_buildbot_install_components

# Build Release without debug info, because it is faster to build.
release
no-assertions

swift-stdlib-build-type=RelWithDebInfo
swift-stdlib-enable-assertions=false

[preset: mixin_buildbot_tools_RA_stdlib_DA]
mixin-preset=
    mixin_buildbot_trunk_base
    mixin_buildbot_install_components

# Build Release without debug info, because it is faster to build.
release
assertions

swift-stdlib-build-type=Debug
swift-stdlib-enable-assertions=true


[preset: buildbot,tools=RA,stdlib=DA]
mixin-preset=
    mixin_buildbot_tools_RA_stdlib_DA

# Don't run host tests for iOS, tvOS and watchOS platforms to make the build
# faster.
skip-test-ios-host
skip-test-tvos-host
skip-test-watchos-host


[preset: buildbot,tools=RA,stdlib=DA,test=non_executable]
mixin-preset=
     mixin_buildbot_tools_RA_stdlib_DA

only-non-executable-test

skip-test-osx
skip-test-ios-simulator
skip-test-tvos-simulator
skip-test-watchos-simulator

[preset: buildbot,tools=RA,stdlib=RD]
mixin-preset=
    mixin_buildbot_tools_RA_stdlib_RD

# Don't run host tests for iOS, tvOS and watchOS platforms to make the build
# faster.
skip-test-ios-host
skip-test-tvos-host
skip-test-watchos-host


[preset: buildbot,tools=RA,stdlib=RD,test=non_executable]
mixin-preset=
     mixin_buildbot_tools_RA_stdlib_RD

only-non-executable-test

skip-test-osx
skip-test-ios-simulator
skip-test-tvos-simulator
skip-test-watchos-simulator

[preset: buildbot,tools=R,stdlib=RD]
mixin-preset=
    mixin_buildbot_tools_R_stdlib_RD

# Don't run host tests for iOS, tvOS and watchOS platforms to make the build
# faster.
skip-test-ios-host
skip-test-tvos-host
skip-test-watchos-host
check-incremental-compilation

[preset: buildbot,tools=R,stdlib=RD,test=non_executable]
mixin-preset=
     mixin_buildbot_tools_R_stdlib_RD

only-non-executable-test

skip-test-osx
skip-test-ios-simulator
skip-test-tvos-simulator
skip-test-watchos-simulator


[preset: buildbot,tools=RA,stdlib=RDA]
mixin-preset=
    mixin_buildbot_tools_RA_stdlib_RDA

# Don't run host tests for iOS, tvOS and watchOS platforms to make the build
# faster.
skip-test-ios-host
skip-test-tvos-host
skip-test-watchos-host

[preset: buildbot,tools=RA,stdlib=RDA,test=non_executable]
mixin-preset=
     mixin_buildbot_tools_RA_stdlib_RDA

only-non-executable-test

skip-test-osx
skip-test-ios-simulator
skip-test-tvos-simulator
skip-test-watchos-simulator

[preset: buildbot,tools=RA,stdlib=RDA,long_test]
mixin-preset=
    mixin_buildbot_tools_RA_stdlib_RDA

test=0
validation-test=0
long-test=1
stress-test=1
test-optimized=0


[preset: buildbot,tools=RA-flto,stdlib=RDA]
mixin-preset=
    mixin_buildbot_tools_RA_stdlib_RDA

lto

# Don't run host tests for iOS, tvOS and watchOS platforms to make the build
# faster.
skip-test-ios-host
skip-test-tvos-host
skip-test-watchos-host

[preset: buildbot,tools=RDA-flto,stdlib=RDA]
mixin-preset=
    mixin_buildbot_tools_RDA_stdlib_RDA

lto

# Don't run host tests for iOS, tvOS and watchOS platforms to make the build
# faster.
skip-test-ios-host
skip-test-tvos-host
skip-test-watchos-host

# This is a mixin preset which builds and smoke-tests lldb.
[preset: lldb-smoketest,tools=RA]
# Build LLDB
lldb

# Use the system debugserver to run the lldb swift tests
lldb-no-debugserver
lldb-use-system-debugserver
lldb-build-type=Release
lldb-test-swift-only
lldb-assertions

#===------------------------------------------------------------------------===#
# Incremental buildbots for Darwin OSes
#===------------------------------------------------------------------------===#

[preset: buildbot_incremental_base]
test
validation-test
lit-args=-v --time-tests

compiler-vendor=apple

# On buildbots, always force a reconfiguration to make sure we pick up changes
# in the build-script and build-presets.ini.
reconfigure

verbose-build
build-ninja

[preset: buildbot_incremental_base_all_platforms]
mixin-preset=buildbot_incremental_base

# Build standard library and SDK overlay for iOS device and simulator.

ios
tvos
watchos

[preset: buildbot_incremental,tools=RA,stdlib=RA]
mixin-preset=
    buildbot_incremental_base_all_platforms
    mixin_buildbot_install_components_with_clang

build-subdir=buildbot_incremental

# Build Release without debug info, because it is faster to build.
release
assertions

build-swift-stdlib-unittest-extra

libcxx

# Build llbuild & swiftpm here
llbuild
swiftpm
swift-driver
indexstore-db
sourcekit-lsp

swiftsyntax
swiftsyntax-verify-generated-files

skstresstester
swiftevolve

# Build Playground support
playgroundsupport

# Only run OS X tests to make the build cycle faster.
# We still build the iOS standard library though -- it is free given the
# parallelism.
skip-test-ios
skip-test-tvos
skip-test-watchos

install-llvm
install-swift
install-llbuild
install-swiftpm
install-swift-driver
install-libcxx

[preset: buildbot_incremental,tools=RA,stdlib=RA,xcode]
mixin-preset=buildbot_incremental,tools=RA,stdlib=RA
build-subdir=buildbot_incremental_xcode

xcode
# We do not support building cross compiled stdlibs on OS X with Xcode. So only
# build the OS X SDK.
skip-build-ios
skip-test-ios
skip-build-tvos
skip-test-tvos
skip-build-watchos
skip-test-watchos
stdlib-deployment-targets=macosx-x86_64
swift-primary-variant-sdk=OSX
swift-primary-variant-arch=x86_64
skip-build-llbuild
skip-test-llbuild
skip-test-swiftpm
skip-test-swift-driver
skip-test-playgroundsupport

# This preset is used by CI to test swift-corelibs-xctest.
[preset: buildbot_incremental,tools=RA,stdlib=RA,XCTest]
# We don't use buildbot_incremental_base_all_platforms because we don't need to
# build for iOS/tvOS.
mixin-preset=buildbot_incremental_base

# Build and test XCTest. On Linux, the build script is aware of the dependency
# on Foundation, so that is built as well. On OS X, Foundation is built as part
# of the XCTest Xcode project.
xctest

build-swift-stdlib-unittest-extra

# This preset is meant to test XCTest, not Swift or Foundation. We don't
# want stochastic failures in those test suites to prevent XCTest tests from
# being run.
skip-test-cmark
skip-test-swift
skip-test-libdispatch
skip-test-foundation

# This preset may be used by swift-corelibs-xctest contributors when building
# locally. It takes less time than the CI preset, but is less reliable at
# clearing out cached build products.
[preset: corelibs-xctest]
release
assertions
xctest
test

skip-test-cmark
skip-test-swift
skip-test-foundation
skip-build-benchmarks

[preset: buildbot_incremental_asan,tools=RDA,stdlib=RDA]
mixin-preset=buildbot_incremental_base_all_platforms

build-subdir=buildbot_incremental_asan

# Build Release with debug info, so that we can symbolicate backtraces.
release-debuginfo
assertions

build-swift-stdlib-unittest-extra

# FIXME: Swift/ASan does not support iOS yet.
skip-build-ios
skip-test-ios

# FIXME: Swift/ASan does not support tvos yet.
skip-build-tvos
skip-test-tvos

# FIXME: Swift/ASan does not support watchos yet.
skip-build-watchos
skip-test-watchos

enable-asan

[preset: buildbot_incremental_tsan,tools=RDA,stdlib=RDA]
mixin-preset=buildbot_incremental_base_all_platforms

build-subdir=buildbot_incremental_tsan

# Build Release with debug info, so that we can symbolicate backtraces.
release-debuginfo
assertions
enable-tsan

build-swift-stdlib-unittest-extra

skip-build-ios
skip-test-ios
skip-build-tvos
skip-test-tvos
skip-build-watchos
skip-test-watchos

[preset: buildbot_incremental_asan_ubsan,tools=RDA,stdlib=RDA]
mixin-preset=buildbot_incremental_base_all_platforms

build-subdir=buildbot_incremental_asan_ubsan

# Build Release with debug info, so that we can symbolicate backtraces.
release-debuginfo
assertions

build-swift-stdlib-unittest-extra

# FIXME: Swift/UBSan does not support mac os x yet.
skip-build-osx
skip-test-osx

# FIXME: Swift/ASan does not support iOS yet.
skip-build-ios
skip-test-ios

# FIXME: Swift/ASan does not support tvos yet.
skip-build-tvos
skip-test-tvos

# FIXME: Swift/ASan does not support watchos yet.
skip-build-watchos
skip-test-watchos

enable-asan
enable-ubsan

[preset: buildbot_incremental,lldb_asan_ubsan]
mixin-preset=buildbot_incremental_base

build-subdir=buildbot_incremental_lldb_asan_ubsan

# Build a sanitized lldb. Don't build a sanitized clang/swift.
lldb
lldb-extra-cmake-args=-DLLVM_USE_SANITIZER=Address;Undefined
lldb-use-system-debugserver

# Build Release with debug info, so that we can symbolicate backtraces.
release-debuginfo
assertions

# We need to build an unoptimized swift benchmark driver for stepper testing.
# Ditto for the swift stdlib. (LLDB doesn't support stepping through optimized
# swift code yet.)
extra-cmake-options=-DSWIFT_BENCHMARK_UNOPTIMIZED_DRIVER:BOOL=1
debug-swift-stdlib

# Disable non-x86 building/testing.
skip-build-ios
skip-test-ios
skip-build-tvos
skip-test-tvos
skip-build-watchos
skip-test-watchos
stdlib-deployment-targets=macosx-x86_64
swift-primary-variant-sdk=OSX
swift-primary-variant-arch=x86_64
skip-test-swift
skip-test-swiftpm
skip-test-swift-driver
skip-test-llbuild
skip-test-cmark
skip-test-playgroundsupport
skip-test-swiftsyntax
skip-test-skstresstester
skip-test-swiftevolve
indexstore-db=0
sourcekit-lsp=0

[preset: buildbot_incremental_asan,tools=DA,stdlib=RDA]
mixin-preset=buildbot_incremental_base_all_platforms

build-subdir=buildbot_incremental_asan_debug

# Build Release with debug info, so that we can symbolicate backtraces.
assertions

build-swift-stdlib-unittest-extra

# FIXME: Swift/ASan does not support iOS yet.
skip-build-ios
skip-test-ios

# FIXME: Swift/ASan does not support tvos yet.
skip-build-tvos
skip-test-tvos

# FIXME: Swift/ASan does not support watchos yet.
skip-build-watchos
skip-test-watchos

enable-asan

swift-stdlib-build-type=RelWithDebInfo


[preset: buildbot_incremental,tools=RA,stdlib=RD,smoketest=macosx]
mixin-preset=
    buildbot_incremental_base
    lldb-smoketest,tools=RA
    mixin_buildbot_install_components_with_clang
build-subdir=buildbot_incremental

# We build release+asserts.
release
assertions

# We run the OS X tests and validation tests.
test
validation-test

llvm-targets-to-build=X86;ARM;AArch64;PowerPC

# Set the vendor to apple
compiler-vendor=apple

# Always reconfigure cmake
reconfigure

# We want to always perform a verbose build
verbose-build

# Build ninja while we are at it
build-ninja

libcxx
llbuild
swiftpm
swift-driver
indexstore-db
sourcekit-lsp
install-llvm
install-swift
install-llbuild
install-swiftpm
install-swift-driver
install-libcxx

# We need to build the unittest extras so we can test
build-swift-stdlib-unittest-extra

# Make sure our stdlib is RA.
swift-stdlib-build-type=RelWithDebInfo
swift-stdlib-enable-assertions=true

# Disable non-x86 building/testing.
skip-build-ios
skip-test-ios
skip-build-tvos
skip-test-tvos
skip-build-watchos
skip-test-watchos
stdlib-deployment-targets=macosx-x86_64
swift-primary-variant-sdk=OSX
swift-primary-variant-arch=x86_64

# Don't build the benchmarks
skip-build-benchmarks

[preset: buildbot_incremental,tools=RA,stdlib=RD,smoketest=macosx,flto]
mixin-preset=buildbot_incremental,tools=RA,stdlib=RD,smoketest=macosx
build-subdir=buildbot_incremental

lto

[preset: buildbot_incremental,tools=RA,llvm-only]
build-subdir=buildbot_incremental_llvmonly

# Build Release without debug info, because it is faster to build.
release-debug
assertions
test=0
lit-args=-v

compiler-vendor=apple

llvm-include-tests
reconfigure
verbose-build
build-ninja

# Do not build swift or cmark
skip-build-swift
skip-build-cmark

#===------------------------------------------------------------------------===#
# A setting to run a buildbot that passes extra swift args when compiling
# modules that match regexp.
#
# This is currently used to run non-default pass orderings to stress the
# optimizer. See utils/pass-pipeline.
#===------------------------------------------------------------------------===#

[preset: buildbot_incremental_extra_swift_args,tools=RA,stdlib=RD]
build-subdir=buildbot_incremental_extra_swift_args
# Build standard library and SDK overlay for iOS device and simulator.
test
validation-test
extra-swift-args=%(extra_swift_args)s
release
assertions
compiler-vendor=apple

# On buildbots, always force a reconfiguration to make sure we pick up changes
# in the build-script and build-presets.ini.
reconfigure

verbose-build
build-ninja

build-swift-stdlib-unittest-extra

skip-build-ios
skip-test-ios
skip-build-lldb

sil-verify-all

#===------------------------------------------------------------------------===#
# Convenience aliases
#
# Do not use on buildbots!
#===------------------------------------------------------------------------===#

[preset: buildbot_incremental]
mixin-preset=buildbot_incremental,tools=RA,stdlib=RA

[preset: asan]
mixin-preset=buildbot_incremental_asan,tools=RDA,stdlib=RDA

#===------------------------------------------------------------------------===#
# Special Runtime Builders
#===------------------------------------------------------------------------===#

[preset: buildbot_incremental_leaks]
compiler-vendor=apple
# Disable ios. These builders are x86 only.
skip-ios
skip-tvos
skip-watchos
# Disable x86 testing. skip-ios disables testing of ios as well.
skip-test-osx

# Always reconfigure so we pick up changes in the build-script and
# build-presets.ini.
reconfigure
verbose-build
build-ninja
build-swift-stdlib-unittest-extra
swift-runtime-enable-leak-checker

[preset: buildbot_incremental_leaks,tools=RA,stdlib=R]
mixin-preset=buildbot_incremental_leaks
build-subdir=buildbot_incremental_leaks_RA_R

# Build release+asserts
release
assertions

# We want our stdlib to not have assertions.
swift-stdlib-enable-assertions=false

[preset: buildbot_incremental_leaks,tools=RA,stdlib=RA]
mixin-preset=buildbot_incremental_leaks
build-subdir=buildbot_incremental_leaks_RA_RA

# Build release+asserts
release
assertions

#===------------------------------------------------------------------------===#
# Package Builders
#===------------------------------------------------------------------------===#

# A mixin that enables 'lightweight' assertions that don't slow down the
# compiler significantly.
[preset: mixin_lightweight_assertions]
assertions

# FIXME: This should be:
# no-assertions
# swift-assertions
# ... but our tests are expecting assertions to be either on or off everywhere.

# AST verifier slows down the compiler significantly.
swift-enable-ast-verifier=0

[preset: mixin_lightweight_assertions,no-stdlib-asserts]
mixin-preset=
    mixin_lightweight_assertions

no-swift-stdlib-assertions

#===------------------------------------------------------------------------===#
# Linux Builders
#===------------------------------------------------------------------------===#
[preset: mixin_linux_install_components_with_clang]
swift-install-components=autolink-driver;compiler;clang-resource-dir-symlink;stdlib;swift-remote-mirror;sdk-overlay;parser-lib;toolchain-tools;license;sourcekit-inproc
llvm-install-components=llvm-cov;llvm-profdata;IndexStore;clang;clang-resource-headers;compiler-rt;clangd;lld

[preset: mixin_linux_installation]
mixin-preset=
    mixin_lightweight_assertions,no-stdlib-asserts
    mixin_linux_install_components_with_clang

llbuild
swiftpm
swift-driver
xctest
libicu
libcxx

build-ninja
install-llvm
install-swift
install-lldb
install-llbuild
install-swiftpm
install-swift-driver
install-xctest
install-libicu
install-prefix=/usr
install-libcxx
install-sourcekit-lsp
build-swift-static-stdlib
build-swift-static-sdk-overlay
build-swift-stdlib-unittest-extra

# Executes the lit tests for the installable package that is created
# Assumes the swift-integration-tests repo is checked out

test-installable-package

# Build the benchmarks against the toolchain.
toolchain-benchmarks

# Path to the root of the installation filesystem.
install-destdir=%(install_destdir)s

# Path to the .tar.gz package we would create.
installable-package=%(installable_package)s

[preset: buildbot_linux]
mixin-preset=mixin_linux_installation
build-subdir=buildbot_linux
lldb
release
test
validation-test
long-test
stress-test
test-optimized
foundation
libdispatch
indexstore-db
sourcekit-lsp
lit-args=-v --time-tests

# rdar://problem/31454823
lldb-test-swift-only

install-foundation
install-libdispatch
reconfigure

[preset: mixin_buildbot_linux,no_test]
skip-test-cmark
skip-test-lldb
skip-test-swift
skip-test-llbuild
skip-test-swiftpm
skip-test-swift-driver
skip-test-xctest
skip-test-foundation
skip-test-libdispatch
skip-test-playgroundsupport
skip-test-libicu
skip-test-indexstore-db
skip-test-sourcekit-lsp

# Linux package with out test
[preset: buildbot_linux,no_test]
mixin-preset=
    buildbot_linux
    mixin_buildbot_linux,no_test

[preset: buildbot_linux_crosscompile_android,tools=RA,stdlib=RD,build]
mixin-preset=
    mixin_lightweight_assertions,no-stdlib-asserts
    mixin_linux_install_components_with_clang
build-subdir=buildbot_linux

release
test
validation-test
long-test
stress-test
test-optimized
lit-args=-v --time-tests

build-ninja
libicu
libcxx

android
android-ndk=%(ndk_path)s
android-api-level=21
android-icu-uc=%(arm_dir)s/libicuucswift.so
android-icu-uc-include=%(arm_dir)s/icu/source/common
android-icu-i18n=%(arm_dir)s/libicui18nswift.so
android-icu-i18n-include=%(arm_dir)s/icu/source/i18n
android-icu-data=%(arm_dir)s/libicudataswift.so

build-swift-static-stdlib
build-swift-static-sdk-overlay
build-swift-stdlib-unittest-extra

# Path to the root of the installation filesystem.
install-destdir=%(install_destdir)s

# Path to the .tar.gz package we would create.
installable-package=%(installable_package)s

host-test

extra-cmake-options=-DSWIFT_ENABLE_LLD_LINKER:BOOL=OFF

install-prefix=/usr
install-llvm
install-swift
install-libicu
install-libcxx

skip-test-linux
skip-build-benchmarks

reconfigure

[preset: buildbot_linux_crosscompile_android,tools=RA,stdlib=RD,build,aarch64]
mixin-preset=buildbot_linux_crosscompile_android,tools=RA,stdlib=RD,build

android-arch=aarch64

# Ubuntu 18.04 preset for backwards compat and future customizations.
[preset: buildbot_linux_1804]
mixin-preset=buildbot_linux

# Ubuntu 18.04 preset that skips all tests except for integration testing of the
# package.
[preset: buildbot_linux_1804,notest]
mixin-preset=
    buildbot_linux_1804
    mixin_buildbot_linux,no_test

# Ubuntu 16.10 preset for backwards compat and future customizations.
[preset: buildbot_linux_1610]
mixin-preset=buildbot_linux

# Ubuntu 16.10 preset that skips all tests except for integration testing of the
# package.
[preset: buildbot_linux_1610,notest]
mixin-preset=
    buildbot_linux_1610
    mixin_buildbot_linux,no_test

# Ubuntu 16.04 preset for backwards compat and future customizations.
[preset: buildbot_linux_1604]
mixin-preset=buildbot_linux

# Ubuntu 16.04 preset that skips all tests except for integration testing of the
# package.
[preset: buildbot_linux_1604,notest]
mixin-preset=
    buildbot_linux_1604
    mixin_buildbot_linux,no_test

# Ubuntu 15.10 preset for backwards compat and future customizations.
[preset: buildbot_linux_1510]
mixin-preset=buildbot_linux

# Ubuntu 15.10 preset that skips all tests except for integration testing of the
# package.
[preset: buildbot_linux_1510,notest]
mixin-preset=
    buildbot_linux_1510
    mixin_buildbot_linux,no_test

[preset: buildbot_linux,smoketest]
mixin-preset=mixin_linux_installation
build-subdir=buildbot_linux
lldb
release
test
validation-test
foundation
libdispatch
indexstore-db
sourcekit-lsp
lit-args=-v

install-foundation
install-libdispatch
reconfigure
skip-test-lldb


[preset: buildbot_linux_1404_no_lldb]
mixin-preset=buildbot_incremental_linux
build-subdir=buildbot_linux
release
test
validation-test
long-test
stress-test
foundation
lit-args=-v
indexstore-db=0
sourcekit-lsp=0

[preset: buildbot_linux_armv7]
release
llbuild
lldb
# Not all tests pass, currently
#test
foundation
swiftpm
swift-driver
xctest

build-subdir=buildbot_linux

install-llvm
install-swift
install-lldb
install-llbuild
install-foundation
install-swiftpm
install-swift-driver
install-xctest
install-prefix=/usr
swift-install-components=autolink-driver;compiler;clang-builtin-headers;stdlib;swift-remote-mirror;sdk-overlay;dev
build-swift-static-stdlib
build-swift-static-sdk-overlay

skip-test-lldb

# Executes the lit tests for the installable package that is created
# Assumes the swift-package-tests repo is checked out
# FIXME: Disabled until a home for the swift-snapshot-tests can be found.
#test-installable-package

# Make sure we can build the benchmarks against the toolchain.
toolchain-benchmarks

# Path to the root of the installation filesystem.
install-destdir=%(install_destdir)s

# Path to the .tar.gz package we would create.
installable-package=%(installable_package)s

[preset: buildbot_incremental_linux_base]
assertions
release

verbose-build

test
validation-test
lit-args=-v

build-ninja
reconfigure

[preset: buildbot_incremental_linux]
mixin-preset=
    buildbot_incremental_linux_base
    mixin_linux_install_components_with_clang
build-subdir=buildbot_incremental

libcxx
libicu
llbuild
swiftpm
swift-driver
xctest
foundation
libdispatch
swiftsyntax
indexstore-db
sourcekit-lsp
install-llvm
install-swift
install-llbuild
install-libicu
install-swiftpm
install-swift-driver
install-foundation
install-libdispatch
install-xctest
install-libcxx

[preset: buildbot_incremental_linux,long_test]
mixin-preset=buildbot_incremental_linux

test=0
validation-test=0
long-test=1
stress-test=1
test-optimized=0

[preset: buildbot_incremental_linux,llvm-only]
mixin-preset=buildbot_incremental_linux_base
build-subdir=buildbot_incremental_llvmonly

test=0
validation-test=0
long-test=0
stress-test=0
test-optimized=0

skip-build-swift
skip-build-cmark
llvm-include-tests


[preset: buildbot_incremental_linux,tsan-libdispatch-test]
mixin-preset=buildbot_incremental_linux,llvm-only
build-subdir=buildbot_incremental_tsan_libdispatch_test

llvm-cmake-options=-DLLVM_INSTALL_UTILS=ON
llvm-install-components=all
install-llvm

libdispatch-cmake-options=-DENABLE_SWIFT=OFF
libdispatch
install-libdispatch

tsan-libdispatch-test


[preset: buildbot_incremental_linux,asan]
mixin-preset=buildbot_incremental_linux
build-subdir=buildbot_incremental_asan

enable-asan
indexstore-db=0
sourcekit-lsp=0

# This does not currently pass due to leakers in the optimizer.
[preset: buildbot_incremental_linux,lsan,tools=RDA,stdlib=RDA,test=no]
build-subdir=buildbot_incremental_lsan

release-debuginfo
assertions
enable-lsan

build-ninja
reconfigure

[preset: buildbot_incremental_linux,lsan,tools=RDA,stdlib=DA,test=no]
build-subdir=buildbot_incremental_lsan

release-debuginfo
assertions
enable-lsan
debug-swift-stdlib
debug-libdispatch

build-ninja
reconfigure

[preset: buildbot_incremental_linux_1404]
mixin-preset=buildbot_incremental_linux
indexstore-db=0
sourcekit-lsp=0

[preset: buildbot_incremental_linux_1404,long_test]
mixin-preset=buildbot_incremental_linux,long_test
indexstore-db=0
sourcekit-lsp=0

#===------------------------------------------------------------------------===#
# OS X Package Builders
#===------------------------------------------------------------------------===#
[preset: mixin_osx_package_base]
mixin-preset=mixin_buildbot_install_components_with_clang
ios
tvos
watchos

lldb
llbuild
swiftpm
swift-driver
swiftsyntax
skstresstester
swiftevolve
playgroundsupport
libcxx
indexstore-db
sourcekit-lsp

# Don't generate the SwiftSyntax gyb files. Instead verify that up-to-date ones
# are checked in.
swiftsyntax-verify-generated-files

# Build with debug info, this allows us to symbolicate crashes from
# production builds.
release-debuginfo
compiler-vendor=apple

# Cross compile for Apple Silicon
cross-compile-hosts=macosx-arm64

lldb-no-debugserver
lldb-use-system-debugserver
lldb-build-type=Release
verbose-build
build-ninja
build-swift-stdlib-unittest-extra

# When building for an Xcode toolchain, don't copy the Swift Resource/ directory
# into the LLDB.framework. LLDB.framework will be installed alongside a Swift
# compiler, so LLDB should use its resource directory directly.
# Also, to reduce the size of the final toolchain, limit debug info to be
# line-tables only.
extra-cmake-options=
   -DLLDB_FRAMEWORK_COPY_SWIFT_RESOURCES=0
   -DCMAKE_C_FLAGS="-gline-tables-only"
   -DCMAKE_CXX_FLAGS="-gline-tables-only"

install-llvm
install-swift
install-lldb
install-llbuild
install-swiftpm
install-swift-driver
install-swiftsyntax
install-skstresstester
install-swiftevolve
install-playgroundsupport
install-libcxx
install-sourcekit-lsp

install-destdir=%(install_destdir)s

darwin-install-extract-symbols

# Path where debug symbols will be installed.
install-symroot=%(install_symroot)s

# Path where the compiler, the runtime and the standard libraries will be
# installed.
install-prefix=%(install_toolchain_dir)s/usr

# Executes the lit tests for the installable package that is created
# Assumes the swift-integration-tests repo is checked out

test-installable-package

# Make sure that we can build the benchmarks with swiftpm against the toolchain
toolchain-benchmarks

# If someone uses this for incremental builds, force reconfiguration.
reconfigure

# Path to the .tar.gz package we would create.
installable-package=%(installable_package)s

# Path to the .tar.gz symbols package
symbols-package=%(symbols_package)s

# Info.plist
darwin-toolchain-bundle-identifier=%(darwin_toolchain_bundle_identifier)s
darwin-toolchain-display-name=%(darwin_toolchain_display_name)s
darwin-toolchain-display-name-short=%(darwin_toolchain_display_name_short)s
darwin-toolchain-name=%(darwin_toolchain_xctoolchain_name)s
darwin-toolchain-version=%(darwin_toolchain_version)s
darwin-toolchain-alias=%(darwin_toolchain_alias)s
darwin-toolchain-require-use-os-runtime=0

[preset: mixin_osx_package_test]
build-subdir=buildbot_osx

ios
tvos
watchos
test
validation-test
long-test
stress-test

lldb-test-swift-only

# Path to the .tar.gz package we would create.
installable-package=%(installable_package)s

[preset: mixin_osx_package,use_os_runtime]:
darwin-toolchain-require-use-os-runtime=1

[preset: buildbot_osx_package]
mixin-preset=
    mixin_osx_package_base
    mixin_osx_package_test
    mixin_lightweight_assertions,no-stdlib-asserts

# SKIP LLDB TESTS (67923799)
skip-test-lldb

[preset: buildbot_osx_package,use_os_runtime]
mixin-preset=
    buildbot_osx_package
    mixin_osx_package,use_os_runtime

[preset: buildbot_osx_package,no_assertions]
mixin-preset=
    mixin_osx_package_base
    mixin_osx_package_test

no-assertions

[preset: buildbot_osx_package,no_assertions,use_os_runtime]
mixin-preset=
    buildbot_osx_package,no_assertions
    mixin_osx_package,use_os_runtime

[preset: buildbot_osx_package,no_assertions,lto]
mixin-preset=buildbot_osx_package,no_assertions

lto

[preset: buildbot_osx_package,no_assertions,lto,use_os_runtime]
mixin-preset=
    buildbot_osx_package,no_assertions,lto
    mixin_osx_package,use_os_runtime

[preset: buildbot_osx_package,no_assertions,no_test]
mixin-preset=
    buildbot_osx_package,no_assertions

skip-test-swift
skip-test-swiftpm
skip-test-swift-driver
skip-test-llbuild
skip-test-lldb
skip-test-cmark
skip-test-playgroundsupport
skip-test-swiftsyntax
skip-test-skstresstester
skip-test-swiftevolve

[preset: buildbot_osx_package,no_assertions,no_test,use_os_runtime]
mixin-preset=
    buildbot_osx_package,no_assertions,no_test
    mixin_osx_package,use_os_runtime

# Debug version of the compilers, release version of the stdlib.
[preset: buildbot_osx_package,tools=DA,stdlib=R]
mixin-preset=buildbot_osx_package

build-subdir=buildbot_osx_debug

release-debuginfo
assertions
debug-llvm
debug-swift
no-swift-stdlib-assertions

[preset: buildbot_osx_package,tools=DA,stdlib=R,use_os_runtime]
mixin-preset=
    buildbot_osx_package,tools=DA,stdlib=R
    mixin_osx_package,use_os_runtime

[preset: mixin_buildbot_osx_package,no_test]
skip-test-swift
skip-test-swiftpm
skip-test-swift-driver
skip-test-llbuild
skip-test-lldb
skip-test-cmark
skip-test-playgroundsupport
skip-test-swiftsyntax
skip-test-skstresstester
skip-test-swiftevolve

# macOS package with out test
[preset: buildbot_osx_package,no_test]
mixin-preset=
    buildbot_osx_package
    mixin_buildbot_osx_package,no_test

# macOS package without test that when linked against uses the OS runtime
# instead of the toolchain runtime.
[preset: buildbot_osx_package,no_test,use_os_runtime]
mixin-preset=
    buildbot_osx_package
    mixin_buildbot_osx_package,no_test
    mixin_osx_package,use_os_runtime

#===------------------------------------------------------------------------===#
# LLDB build configurations
#
# Use to build the compiler sources nested in LLDB.
#
# This is only used from Xcode, and expects the following configuration:
## an argument, swift_install_destdir=[path for Swift installed products]
## an environment variable, SWIFT_SOURCE_ROOT=[parent of swift/]
## an environment variable, SWIFT_BUILD_ROOT=[parent of Swift build directory]
#===------------------------------------------------------------------------===#

[preset: LLDB_Nested]
skip-build-benchmarks
install-destdir=%(swift_install_destdir)s
llvm-targets-to-build=X86;ARM;AArch64;PowerPC;SystemZ;Mips

[preset: LLDB_Swift_DebugAssert]
mixin-preset=
    LLDB_Nested

assertions

[preset: LLDB_Swift_DebugAssert_asan]
mixin-preset=
    LLDB_Swift_DebugAssert

enable-asan

[preset: LLDB_Swift_DebugAssert_with_devices]
mixin-preset=
    LLDB_Swift_DebugAssert

ios
tvos
watchos
swift-stdlib-build-type=Release

[preset: LLDB_Swift_ReleaseAssert]
mixin-preset=
    LLDB_Nested

release-debuginfo
assertions

[preset: LLDB_Swift_ReleaseAssert_asan]
mixin-preset=
    LLDB_Swift_ReleaseAssert

enable-asan

[preset: LLDB_Swift_ReleaseAssert_with_devices]
mixin-preset=
    LLDB_Swift_ReleaseAssert

ios
tvos
watchos
swift-stdlib-build-type=Release

#===------------------------------------------------------------------------===#
# Test Swift/LLVM Project only on macOS and iOS
#===------------------------------------------------------------------------===#

[preset: buildbot,tools=RA,stdlib=RA,platforms=macOS_iOS]
mixin-preset=
    buildbot_incremental_base_all_platforms
    lldb-smoketest,tools=RA
    mixin_buildbot_install_components_with_clang

build-subdir=buildbot_incremental

# Skip watchOS and tvOS
skip-build-watchos
skip-build-tvos

# Build Release without debug info, because it is faster to build.
release
assertions

build-swift-stdlib-unittest-extra

libcxx

# Install swift and libcxx
install-llvm
install-swift
install-libcxx

# Build Playground support
playgroundsupport

# Run the SIL verifier after each transform when building swift files
sil-verify-all

# Don't run host tests for iOS, tvOS and watchOS platforms to make the build
# faster.
skip-test-ios-host


#===------------------------------------------------------------------------===#
# Test all platforms on OS X builder
#===------------------------------------------------------------------------===#

[preset: buildbot_all_platforms,tools=RA,stdlib=RA]
mixin-preset=
    buildbot_incremental_base_all_platforms
    lldb-smoketest,tools=RA
    mixin_buildbot_install_components_with_clang

build-subdir=buildbot_incremental

# Build Release without debug info, because it is faster to build.
release
assertions

build-swift-stdlib-unittest-extra

libcxx

# Build llbuild & swiftpm here
llbuild
swiftpm
swift-driver
swiftsyntax

# Don't generate the SwiftSyntax gyb files. Instead verify that up-to-date ones
# are checked in.
swiftsyntax-verify-generated-files

# Build sourcekit-lsp & indexstore-db
indexstore-db
sourcekit-lsp
install-llvm
install-swift
install-llbuild
install-swiftpm
install-swift-driver
install-libcxx

# Build the stress tester and SwiftEvolve
skstresstester
swiftevolve

# Build Playground support
playgroundsupport

# Skip build and test for tvOS
skip-build-tvos
skip-test-tvos
skip-test-tvos-host

# Run the SIL verifier after each transform when building swift files
sil-verify-all

# Don't run host tests for iOS, tvOS and watchOS platforms to make the build
# faster.
skip-test-ios-host
skip-test-watchos-host


#===------------------------------------------------------------------------===#
# Test watchOS on OS X builder
#===------------------------------------------------------------------------===#

[preset: buildbot_watch_platform,tools=RA,stdlib=RA]
mixin-preset=buildbot_incremental_base_all_platforms

build-subdir=buildbot_incremental

# Build Release without debug info, because it is faster to build.
release
assertions

build-swift-stdlib-unittest-extra

# Build llbuild & swiftpm here
llbuild
swiftpm

# Only run watchOS tests
skip-test-ios
skip-test-tvos
skip-test-osx


#===------------------------------------------------------------------------===#
# Mixins for LLBuild, SwiftPM and downstream package project PR tests.
#===------------------------------------------------------------------------===#
[preset: mixin_swiftpm_base]
mixin-preset=buildbot_incremental_base
build-subdir=buildbot_incremental

libcxx
llbuild
swiftpm

install-llvm
install-swift
install-llbuild
install-swiftpm
install-libcxx

skip-test-swift
skip-test-cmark

[preset: mixin_swiftpm_macos_platform]
mixin-preset=
    mixin_swiftpm_base
    mixin_buildbot_install_components_with_clang

[preset: mixin_swiftpm_linux_platform]
mixin-preset=
    mixin_swiftpm_base
    mixin_linux_install_components_with_clang

libdispatch
libicu
foundation
xctest

install-libicu
install-foundation
install-libdispatch
install-xctest

skip-test-libicu
skip-test-foundation
skip-test-libdispatch
skip-test-xctest

# Builds enough of the the toolchain to build a swift pacakge on macOS.
[preset: mixin_swiftpm_package_macos_platform]
mixin-preset=mixin_swiftpm_macos_platform

# We don't need to build the benchmark if we just want SwiftPM
skip-build-benchmarks

# We don't need these platforms. Skip them
skip-ios
skip-tvos
skip-watchos

skip-test-llbuild
skip-test-swiftpm

# Builds enough of the the toolchain to build a swift pacakge on Linux.
[preset: mixin_swiftpm_package_linux_platform]
mixin-preset=mixin_swiftpm_linux_platform

skip-test-llbuild
skip-test-swiftpm


#===------------------------------------------------------------------------===#
# Test swiftPM on macOS builder
#===------------------------------------------------------------------------===#

[preset: buildbot_swiftpm_macos_platform,tools=RA,stdlib=RA]
mixin-preset=mixin_swiftpm_macos_platform

# Build Release without debug info, because it is faster to build.
release
assertions

# Downstream projects that import llbuild+SwiftPM.
sourcekit-lsp

toolchain-benchmarks
skip-test-toolchain-benchmarks

skip-test-llbuild

#===------------------------------------------------------------------------===#
# Test swiftPM on Linux builder
#===------------------------------------------------------------------------===#

[preset: buildbot_swiftpm_linux_platform,tools=RA,stdlib=RA]
mixin-preset=mixin_swiftpm_linux_platform

# Build Release without debug info, because it is faster to build.
release
assertions

# Downstream projects that import llbuild+SwiftPM.
sourcekit-lsp

toolchain-benchmarks
skip-test-toolchain-benchmarks

skip-test-llbuild

#===------------------------------------------------------------------------===#
# Test llbuild on macOS builder
#===------------------------------------------------------------------------===#

[preset: buildbot_llbuild_macos_platform,tools=RA,stdlib=RA]
mixin-preset=mixin_swiftpm_macos_platform

# Build Release without debug info, because it is faster to build.
release
assertions

# Downstream projects that import llbuild+SwiftPM.
sourcekit-lsp

#===------------------------------------------------------------------------===#
# Test llbuild on Linux builder
#===------------------------------------------------------------------------===#

[preset: buildbot_llbuild_linux_platform,tools=RA,stdlib=RA]
mixin-preset=mixin_swiftpm_linux_platform

# Build Release without debug info, because it is faster to build.
release
assertions

# Downstream projects that import llbuild+SwiftPM.
sourcekit-lsp

#===------------------------------------------------------------------------===#
# Test Swift Driver (new)
#===------------------------------------------------------------------------===#

[preset: buildbot_swift-driver_macos]
mixin-preset=mixin_swiftpm_package_macos_platform
release
assertions
swift-driver

[preset: buildbot_swift-driver_linux]
mixin-preset=mixin_swiftpm_package_linux_platform
release
assertions
swift-driver

#===------------------------------------------------------------------------===#
# Test Swift Syntax
#===------------------------------------------------------------------------===#

[preset: buildbot_swiftsyntax_macos]
mixin-preset=mixin_swiftpm_package_macos_platform
release
assertions
swiftsyntax
swiftsyntax-verify-generated-files
skstresstester
swiftevolve

[preset: buildbot_swiftsyntax_linux]
mixin-preset=mixin_swiftpm_package_linux_platform
release
assertions
swiftsyntax
swiftsyntax-verify-generated-files

#===------------------------------------------------------------------------===#
# Test Swift Format
#===------------------------------------------------------------------------===#

[preset: buildbot_swiftformat_macos]
mixin-preset=mixin_swiftpm_package_macos_platform
release
assertions
swiftformat

[preset: buildbot_swiftformat_linux]
mixin-preset=mixin_swiftpm_package_linux_platform
release
assertions
swiftformat

#===------------------------------------------------------------------------===#
# Test Swift Stress Tester
#===------------------------------------------------------------------------===#

[preset: buildbot_skstresstester_macos]
mixin-preset=mixin_swiftpm_package_macos_platform
release
assertions
skstresstester
swiftevolve
install-skstresstester
install-swiftevolve

#===------------------------------------------------------------------------===#
# Test SourceKit-LSP
#===------------------------------------------------------------------------===#

[preset: buildbot_sourcekitlsp_macos,no_sanitize]
mixin-preset=mixin_swiftpm_package_macos_platform
release
assertions
sourcekit-lsp

[preset: buildbot_sourcekitlsp_linux,no_sanitize]
mixin-preset=mixin_swiftpm_package_linux_platform
release
assertions
sourcekit-lsp

[preset: buildbot_sourcekitlsp_macos,sanitize]
mixin-preset=buildbot_sourcekitlsp_macos,no_sanitize
test-sourcekit-lsp-sanitize-all

[preset: buildbot_sourcekitlsp_linux,sanitize]
mixin-preset=buildbot_sourcekitlsp_linux,no_sanitize
test-sourcekit-lsp-sanitize-all

# Default: no sanitizers
[preset: buildbot_sourcekitlsp_macos]
mixin-preset=buildbot_sourcekitlsp_macos,no_sanitize

# Default: no sanitizers
[preset: buildbot_sourcekitlsp_linux]
mixin-preset=buildbot_sourcekitlsp_linux,no_sanitize

#===------------------------------------------------------------------------===#
# Test IndexStore-DB
#===------------------------------------------------------------------------===#

[preset: buildbot_indexstoredb_macos,no_sanitize]
mixin-preset=mixin_swiftpm_package_macos_platform
release
assertions
indexstore-db
sourcekit-lsp

[preset: buildbot_indexstoredb_linux,no_sanitize]
mixin-preset=mixin_swiftpm_package_linux_platform
release
assertions
indexstore-db
sourcekit-lsp

[preset: buildbot_indexstoredb_macos,sanitize]
mixin-preset=buildbot_indexstoredb_macos,no_sanitize
test-indexstore-db-sanitize-all

[preset: buildbot_indexstoredb_linux,sanitize]
mixin-preset=buildbot_indexstoredb_linux,no_sanitize
test-indexstore-db-sanitize-all

# Default: sanitize-all
[preset: buildbot_indexstoredb_macos]
mixin-preset=buildbot_indexstoredb_macos,sanitize

# Default: sanitize-all
[preset: buildbot_indexstoredb_linux]
mixin-preset=buildbot_indexstoredb_linux,sanitize

#===------------------------------------------------------------------------===#
# Test Swift Corelibs XCTest
#===------------------------------------------------------------------------===#

[preset: buildbot_xctest_linux]
mixin-preset=
    mixin_linux_install_components_with_clang

libicu
llbuild
swiftpm
xctest
foundation
libdispatch
indexstore-db
sourcekit-lsp

release
validation-test
reconfigure

install-foundation
install-libdispatch
install-libicu
install-libcxx
install-llvm
install-swift
install-llbuild
install-swiftpm
install-xctest
install-sourcekit-lsp

skip-test-cmark
skip-test-swift
skip-test-libdispatch
skip-test-foundation

#===------------------------------------------------------------------------===#
# Remote Mirror Library
#===------------------------------------------------------------------------===#

[preset: mixin_remote_mirror_base]
no-assertions
swift-assertions

clang-user-visible-version=9.1.0

compiler-vendor=apple
build-ninja
release-debuginfo
reconfigure
swift-install-components=swift-remote-mirror
install-destdir=%(install_destdir)s
install-symroot=%(install_symroot)s
darwin-install-extract-symbols=1
skip-build-cmark
skip-build-llvm
skip-build-llbuild
skip-build-benchmarks
install-llvm
install-swift
install-prefix=%(install_toolchain_dir)s/usr
build-swift-examples=0
build-swift-tools=0
build-swift-static-stdlib=0
build-swift-dynamic-stdlib=0
build-swift-static-sdk-overlay=0
build-swift-dynamic-sdk-overlay=0
swift-include-tests=0
llvm-include-tests=0

[preset: remote_mirror_ios_customization]

darwin-xcrun-toolchain=ios
darwin-deployment-version-ios=11.0
skip-build-osx
skip-test-osx
skip-build-tvos
skip-test-tvos
skip-build-watchos
skip-test-watchos
swift-sdks=IOS
swift-primary-variant-sdk=IOS
swift-primary-variant-arch=arm64
build-subdir=swift_remote_mirror_ios

[preset: remote_mirror_ios]
mixin-preset=
    mixin_remote_mirror_base
    remote_mirror_ios_customization

[preset: remote_mirror_watchos_customization]

darwin-xcrun-toolchain=watchos
darwin-deployment-version-watchos=4.0
skip-build-osx
skip-test-osx
skip-build-tvos
skip-test-tvos
skip-build-ios
skip-test-ios
swift-sdks=WATCHOS
swift-primary-variant-sdk=WATCHOS
swift-primary-variant-arch=armv7k
build-subdir=swift_remote_mirror_watchos

[preset: remote_mirror_watchos]
mixin-preset=
    mixin_remote_mirror_base
    remote_mirror_watchos_customization

[preset: remote_mirror_tvos_customization]

darwin-xcrun-toolchain=tvos
darwin-deployment-version-tvos=11.0
skip-build-osx
skip-test-osx
skip-build-watchos
skip-test-watchos
skip-build-ios
skip-test-ios
swift-sdks=TVOS
swift-primary-variant-sdk=TVOS
swift-primary-variant-arch=arm64
build-subdir=swift_remote_mirror_tvos

[preset: remote_mirror_tvos]
mixin-preset=
    mixin_remote_mirror_base
    remote_mirror_tvos_customization


#===------------------------------------------------------------------------===#
# Mixin for buildbots for CI
#===------------------------------------------------------------------------===#
[preset: mixin_buildbot_incremental,build]
build-subdir=buildbot_incremental
compiler-vendor=apple

# Build standard library and SDK overlay for iOS device and simulator.

ios
tvos
watchos

# On buildbots, always force a reconfiguration to make sure we pick up changes
# in the build-script and build-presets.ini.
reconfigure

verbose-build
build-ninja
build-swift-stdlib-unittest-extra
skip-build-benchmarks

[preset: mixin_buildbot_incremental,test=macOS,type=device]

test
validation-test
lit-args=-v

skip-test-ios
skip-test-tvos
skip-test-watchos
skip-reconfigure

[preset: mixin_buildbot_incremental,test=iOS,type=simulator]

test
validation-test
lit-args=-v

skip-test-osx
skip-test-tvos
skip-test-watchos
skip-reconfigure

[preset: mixin_buildbot_incremental,test=tvOS,type=simulator]
test
validation-test
lit-args=-v

skip-test-osx
skip-test-watchos
skip-test-ios
skip-reconfigure

[preset: mixin_buildbot_incremental,test=watchOS,type=simulator]

test
validation-test
lit-args=-v

skip-test-osx
skip-test-tvos
skip-test-ios
skip-reconfigure

#===------------------------------------------------------------------------===#
# Swift Preset
# Tools: Release and Assertions
# stdlib: Release and DebInfo
#===------------------------------------------------------------------------===#
[preset: buildbot_incremental,tools=RA,stdlib=RD,build]
mixin-preset=mixin_buildbot_incremental,build

# Build Release without debug info, because it is faster to build.
release
assertions

swift-stdlib-build-type=RelWithDebInfo
swift-stdlib-enable-assertions=false

[preset: buildbot_incremental,tools=RA,stdlib=RD,test=macOS,type=device]
mixin-preset=
    buildbot_incremental,tools=RA,stdlib=RD,build
    mixin_buildbot_incremental,test=macOS,type=device

[preset: buildbot_incremental,tools=RA,stdlib=RD,test=iOS,type=simulator]
mixin-preset=
    buildbot_incremental,tools=RA,stdlib=RD,build
    mixin_buildbot_incremental,test=iOS,type=simulator

[preset: buildbot_incremental,tools=RA,stdlib=RD,test=tvOS,type=simulator]
mixin-preset=
    buildbot_incremental,tools=RA,stdlib=RD,build
    mixin_buildbot_incremental,test=tvOS,type=simulator

[preset: buildbot_incremental,tools=RA,stdlib=RD,test=watchOS,type=simulator]
mixin-preset=
    buildbot_incremental,tools=RA,stdlib=RD,build
    mixin_buildbot_incremental,test=watchOS,type=simulator

#===------------------------------------------------------------------------===#
# Swift Preset
# Tools: Release and Assertions
# stdlib: Release, DebInfo and Assertions
#===------------------------------------------------------------------------===#
[preset: buildbot_incremental,tools=RA,stdlib=RDA,build]
mixin-preset=mixin_buildbot_incremental,build

# Build Release without debug info, because it is faster to build.
release
assertions

swift-stdlib-build-type=RelWithDebInfo
swift-stdlib-enable-assertions=true

# This is a release non-incremental build. Run sil-verify-all.
sil-verify-all

[preset: buildbot_incremental,tools=RA,stdlib=RDA,test=macOS,type=device]
mixin-preset=
    buildbot_incremental,tools=RA,stdlib=RDA,build
    mixin_buildbot_incremental,test=macOS,type=device

test-optimized

[preset: buildbot_incremental,tools=RA,stdlib=RDA,test=iOS,type=simulator]
mixin-preset=
    buildbot_incremental,tools=RA,stdlib=RDA,build
    mixin_buildbot_incremental,test=iOS,type=simulator

test-optimized

[preset: buildbot_incremental,tools=RA,stdlib=RDA,test=tvOS,type=simulator]
mixin-preset=
    buildbot_incremental,tools=RA,stdlib=RDA,build
    mixin_buildbot_incremental,test=tvOS,type=simulator

test-optimized

[preset: buildbot_incremental,tools=RA,stdlib=RDA,test=watchOS,type=simulator]
mixin-preset=
    buildbot_incremental,tools=RA,stdlib=RDA,build
    mixin_buildbot_incremental,test=watchOS,type=simulator

test-optimized

#===------------------------------------------------------------------------===#
# Swift Preset
# Tools: Release and Assertions
# stdlib: DebInfo and Assertions
#===------------------------------------------------------------------------===#
[preset: buildbot_incremental,tools=RA,stdlib=DA,build]
mixin-preset=mixin_buildbot_incremental,build

# Build Release without debug info, because it is faster to build.
release
assertions

swift-stdlib-build-type=RelWithDebInfo
swift-stdlib-enable-assertions=false

[preset: buildbot_incremental,tools=RA,stdlib=DA,test=macOS,type=device]
mixin-preset=
    buildbot_incremental,tools=RA,stdlib=DA,build
    mixin_buildbot_incremental,test=macOS,type=device

test-optimized

[preset: buildbot_incremental,tools=RA,stdlib=DA,test=iOS,type=simulator]
mixin-preset=
    buildbot_incremental,tools=RA,stdlib=DA,build
    mixin_buildbot_incremental,test=iOS,type=simulator

test-optimized

[preset: buildbot_incremental,tools=RA,stdlib=DA,test=tvOS,type=simulator]
mixin-preset=
    buildbot_incremental,tools=RA,stdlib=DA,build
    mixin_buildbot_incremental,test=tvOS,type=simulator

test-optimized

[preset: buildbot_incremental,tools=RA,stdlib=DA,test=watchOS,type=simulator]
mixin-preset=
    buildbot_incremental,tools=RA,stdlib=DA,build
    mixin_buildbot_incremental,test=watchOS,type=simulator

test-optimized

#===------------------------------------------------------------------------===#
# Swift Preset
# Tools: Release and Assertions
# stdlib: Release and Assertions
#===------------------------------------------------------------------------===#
[preset: buildbot_incremental,tools=RA,stdlib=RA,build]
mixin-preset=mixin_buildbot_incremental,build

# Build Release without debug info, because it is faster to build.
release
assertions

[preset: buildbot_incremental,tools=RA,stdlib=RA,test=macOS,type=device]
mixin-preset=
    buildbot_incremental,tools=RA,stdlib=RA,build
    mixin_buildbot_incremental,test=macOS,type=device

test-optimized

[preset: buildbot_incremental,tools=RA,stdlib=RA,test=iOS,type=simulator]
mixin-preset=
    buildbot_incremental,tools=RA,stdlib=RA,build
    mixin_buildbot_incremental,test=iOS,type=simulator

test-optimized

[preset: buildbot_incremental,tools=RA,stdlib=RA,test=tvOS,type=simulator]
mixin-preset=
    buildbot_incremental,tools=RA,stdlib=RA,build
    mixin_buildbot_incremental,test=tvOS,type=simulator

test-optimized

[preset: buildbot_incremental,tools=RA,stdlib=RA,test=watchOS,type=simulator]
mixin-preset=
    buildbot_incremental,tools=RA,stdlib=RA,build
    mixin_buildbot_incremental,test=watchOS,type=simulator

test-optimized

#===------------------------------------------------------------------------===#
# Swift Preset
# Tools: DebInfo and Assertions
# stdlib: Release and Assertions
#===------------------------------------------------------------------------===#
[preset: buildbot_incremental,tools=DA,stdlib=RA,build]
mixin-preset=mixin_buildbot_incremental,build

# Build Release without debug info, because it is faster to build.
release-debuginfo
assertions
debug-llvm
debug-swift

#===------------------------------------------------------------------------===#
# Swift Preset
# Tools: DebInfo and Assertions
# stdlib: DebInfo and Assertions
#===------------------------------------------------------------------------===#
[preset: buildbot_incremental,tools=DA,stdlib=DA,build]
mixin-preset=mixin_buildbot_incremental,build

# Build Release without debug info, because it is faster to build.
release-debuginfo
assertions
debug-llvm
debug-swift

swift-stdlib-build-type=RelWithDebInfo
swift-stdlib-enable-assertions=true

#===------------------------------------------------------------------------===#
# Swift Coverage Preset
#===------------------------------------------------------------------------===#

[preset: buildbot_incremental,tools=RDA,stdlib=RDA,coverage]
build-subdir=buildbot_incremental_coverage
release-debuginfo
assertions
swift-analyze-code-coverage=not-merged
test
validation-test
skip-test-ios
skip-test-tvos
skip-test-watchos
skip-build-benchmark
verbose-build
lit-args=-v
reconfigure
build-ninja

#===------------------------------------------------------------------------===#
# iOS arm64 cross compiler
#===------------------------------------------------------------------------===#
[preset: buildbot_iphoneos_arm64_crosscompiler]

build-subdir=LLVMClangSwift_iphoneos
release

cross-compile-hosts=iphoneos-arm64
compiler-vendor=apple
swift-primary-variant-sdk=IOS
swift-primary-variant-arch=arm64
extra-cmake-options=-DLLVM_ENABLE_BACKTRACES:BOOL=OFF

build-toolchain-only=1
build-swift-static-stdlib=0
build-swift-dynamic-stdlib=0
build-swift-static-sdk-overlay=0
build-swift-dynamic-sdk-overlay=0
build-runtime-with-host-compiler=0
skip-build-benchmarks
llvm-include-tests=0
llvm-enable-modules=0
build-swift-examples=0
swift-include-tests=0
darwin-deployment-version-ios=10.0
darwin-crash-reporter-client=1

[preset: install_swiftsyntax_parser]
release
lto
no-assertions
build-libparser-only
verbose-build
darwin-install-extract-symbols
install-llvm
install-swift


#===------------------------------------------------------------------------===#
# Linux corelibs foundation preset
#===------------------------------------------------------------------------===#
[preset: buildbot_linux,foundation=debug]
mixin-preset=buildbot_linux

debug-foundation

[preset: buildbot_linux,foundation=release]
mixin-preset=buildbot_linux

#===------------------------------------------------------------------------===#
# Standalone Stdlib
#===------------------------------------------------------------------------===#

[preset: stdlib_base_standalone]
# We do not want to build llvm, cmark, or benchmarks. We will still build a
# small part of llvm and configure both llvm/cmark.
skip-build-llvm
skip-build-cmark
skip-build-benchmarks
skip-test-cmark

# This triggers the stdlib standalone build: Don't build tools (the compiler),
# assume we are working with the host compiler.
build-swift-tools=0
build-runtime-with-host-compiler=1

# Then set the paths to our native tools. If compiling against a toolchain,
# these should all be the ./usr/bin directory.
native-swift-tools-path=%(toolchain_path)s
native-llvm-tools-path=%(toolchain_path)s
native-clang-tools-path=%(toolchain_path)s

build-ninja
lit-args=--filter=stdlib/

[preset: stdlib_RA_standalone,build]
mixin-preset=stdlib_base_standalone

build-subdir=stdlib_RA_standalone
release
assertions

verbose-build

[preset: stdlib_RA_standalone,build,test]
mixin-preset=stdlib_RA_standalone,build

test
validation-test

[preset: stdlib_RDA_standalone,build]
mixin-preset=stdlib_base_standalone

build-subdir=stdlib_RDA_standalone
release-debuginfo
assertions

verbose-build

[preset: stdlib_RDA_standalone,build,test]
mixin-preset=stdlib_RDA_standalone,build

test
validation-test

[preset: stdlib_DA_standalone,build]
mixin-preset=stdlib_base_standalone

build-subdir=stdlib_DA_standalone
debug
assertions

verbose-build

[preset: stdlib_DA_standalone,build,test]
mixin-preset=stdlib_DA_standalone,build

test
validation-test

[preset: stdlib_S_standalone,build]
mixin-preset=stdlib_base_standalone

build-subdir=stdlib_S_standalone
min-size-release
no-assertions

verbose-build

[preset: stdlib_SA_standalone,build]
mixin-preset=stdlib_base_standalone

build-subdir=stdlib_SA_standalone
min-size-release
assertions

verbose-build

[preset: mixin_stdlib_minimal]
enable-experimental-differentiable-programming=0
enable-experimental-concurrency=0
build-swift-dynamic-sdk-overlay=0
build-swift-dynamic-stdlib=0
build-swift-static-stdlib=1
swift-objc-interop=0
swift-enable-compatibility-overrides=0
swift-runtime-macho-no-dyld=1
swift-stdlib-single-threaded-runtime=1
swift-stdlib-os-versioning=0

[preset: stdlib_S_standalone_minimal_macho_x86_64,build]
mixin-preset=
    stdlib_S_standalone,build
    mixin_stdlib_minimal

stdlib-deployment-targets=freestanding-x86_64
swift-primary-variant-sdk=FREESTANDING
swift-primary-variant-arch=x86_64
swift-freestanding-sdk=macosx
# For now, until clang/swiftc works correctly with "none-macho" as the OS part of target triple.
swift-freestanding-triple-name=macosx11.0
swift-freestanding-module-name=macos
swift-freestanding-archs=x86_64

[preset: stdlib_S_standalone_minimal_macho_x86_64,build,test]
mixin-preset=stdlib_S_standalone_minimal_macho_x86_64,build

test
validation-test


#===----------------------------------------------------------------------===#
# Preset for Source Compatibility Suite
#===----------------------------------------------------------------------===#

[preset: source_compat_suite_base]
build-ninja
llbuild
swiftpm
swift-driver
install-llbuild
install-llvm
install-swift
install-swiftpm
install-swift-driver
reconfigure
verbose-build
skip-build-benchmarks

install-destdir=%(install_destdir)s
install-prefix=%(install_prefix)s
installable-package=%(installable_package)s

[preset: source_compat_suite_macos_base]
mixin-preset=source_compat_suite_base
build-subdir=compat_macos
ios
tvos
watchos
compiler-vendor=apple
darwin-install-extract-symbols
darwin-toolchain-alias=swift
darwin-toolchain-bundle-identifier=org.swift.compat-macos
darwin-toolchain-display-name-short=Swift Development Snapshot
darwin-toolchain-display-name=Swift Development Snapshot
darwin-toolchain-name=swift-DEVELOPMENT-SNAPSHOT
darwin-toolchain-version=3.999.999
llvm-install-components=libclang;libclang-headers;dsymutil
swift-install-components=compiler;clang-builtin-headers;stdlib;sdk-overlay;license;sourcekit-xpc-service;swift-remote-mirror;swift-remote-mirror-headers
symbols-package=%(symbols_package)s
install-symroot=%(install_symroot)s

[preset: source_compat_suite_linux_base]
mixin-preset=source_compat_suite_base
build-subdir=compat_linux
foundation
libdispatch
xctest
install-foundation
install-libdispatch
install-xctest
swift-install-components=autolink-driver;compiler;clang-builtin-headers;stdlib;swift-remote-mirror;sdk-overlay;license

[preset: source_compat_suite_macos_DA]
mixin-preset=source_compat_suite_macos_base
debug
assertions
cross-compile-hosts=macosx-arm64

[preset: source_compat_suite_macos_RA]
mixin-preset=source_compat_suite_macos_base
release
assertions
cross-compile-hosts=macosx-arm64

[preset: source_compat_suite_macos_R]
mixin-preset=source_compat_suite_macos_base
release
no-assertions
cross-compile-hosts=macosx-arm64

[preset: source_compat_suite_macos_D]
mixin-preset=source_compat_suite_macos_base
debug
no-assertions
cross-compile-hosts=macosx-arm64

[preset: source_compat_suite_linux_DA]
mixin-preset=source_compat_suite_linux_base
debug
assertions

[preset: source_compat_suite_linux_RA]
mixin-preset=source_compat_suite_linux_base
release
assertions

[preset: source_compat_suite_linux_R]
mixin-preset=source_compat_suite_linux_base
release
no-assertions

[preset: source_compat_suite_linux_D]
mixin-preset=source_compat_suite_linux_base
debug
no-assertions

[preset: linux_lldb]
lldb
foundation
libicu
libdispatch
build-ninja

release
reconfigure

test

skip-test-cmark
skip-test-swift
skip-build-benchmarks
skip-test-foundation

# SWIFT_ENABLE_TENSORFLOW
#===------------------------------------------------------------------------===#
# TensorFlow Support
#===------------------------------------------------------------------------===#

# Note: presets that mixin "mixin_codesigning" require a Keychain Access
# certificate called "lldb_codesign".
# To create the cerificate, follow these instructions:
# https://github.com/llvm-mirror/lldb/blob/master/docs/code-signing.txt
[preset: mixin_codesigning]
darwin-toolchain-application-cert=lldb_codesign

[preset: tensorflow_osx_base]
mixin-preset=buildbot_osx_package

build-subdir=buildbot_osx
compiler-vendor=none

# Skip SwiftSyntax verification.
# TODO: Remove this when `utils/gyb_syntax_support` has no diff with master.
swiftsyntax-verify-generated-files=0

# Skip benchmarks.
skip-build-benchmarks

# Target only macOS.
# Note: these `skip-{i,tv,watch}os` flags override `{i,tv,watch}os` flags from
# the `buildbot_osx_package` preset.
skip-ios
skip-tvos
skip-watchos
stdlib-deployment-targets=macosx-x86_64
swift-primary-variant-sdk=OSX
swift-primary-variant-arch=x86_64

# Do not link libz3.
llvm-cmake-options=-DLLVM_ENABLE_Z3_SOLVER=NO

[preset: tensorflow_osx]
mixin-preset=tensorflow_osx_base
test
test-optimized
validation-test
long-test
stress-test

[preset: tensorflow_osx,no_test]
mixin-preset=tensorflow_osx_base
skip-test-cmark
skip-test-swift
skip-test-swiftpm
skip-test-swiftsyntax
skip-test-llbuild
skip-test-lldb
skip-test-playgroundsupport

[preset: tensorflow_osx,tensorflow_swift_apis]
mixin-preset=tensorflow_osx
tensorflow-swift-apis
install-tensorflow-swift-apis

[preset: tensorflow_osx,tensorflow_swift_apis,no_test]
mixin-preset=tensorflow_osx,no_test
tensorflow-swift-apis
install-tensorflow-swift-apis

[preset: tensorflow_osx,installer]
mixin-preset=
    tensorflow_osx
    mixin_codesigning
darwin-toolchain-installer-package=%(darwin_toolchain_installer_package)s

[preset: tensorflow_osx,no_test,installer]
mixin-preset=
    tensorflow_osx,no_test
    mixin_codesigning
darwin-toolchain-installer-package=%(darwin_toolchain_installer_package)s

[preset: tensorflow_osx,tensorflow_swift_apis,installer]
mixin-preset=
    tensorflow_osx,tensorflow_swift_apis
    mixin_codesigning
darwin-toolchain-installer-package=%(darwin_toolchain_installer_package)s

[preset: tensorflow_osx,tensorflow_swift_apis,no_test,installer]
mixin-preset=
    tensorflow_osx,tensorflow_swift_apis,no_test
    mixin_codesigning
darwin-toolchain-installer-package=%(darwin_toolchain_installer_package)s

[preset: tensorflow_linux]
mixin-preset=
    buildbot_linux

# The swift-package-tests fail when run with python3.
test-installable-package=

# Do not link libz3.
llvm-cmake-options=-DLLVM_ENABLE_Z3_SOLVER=NO

[preset: tensorflow_linux,no_test]
mixin-preset=
    buildbot_linux,no_test

# The swift-package-tests fail when run with python3.
test-installable-package=

[preset: tensorflow_linux,tensorflow_swift_apis]
mixin-preset=tensorflow_linux
tensorflow-swift-apis
install-tensorflow-swift-apis

[preset: tensorflow_linux,tensorflow_swift_apis,no_test]
mixin-preset=tensorflow_linux,no_test
tensorflow-swift-apis
install-tensorflow-swift-apis

#===------------------------------------------------------------------------===#
# Swift for TensorFlow Preset
# Tools: DebInfo and Assertions
# stdlib: DebInfo and Assertions
#===------------------------------------------------------------------------===#
[preset: tensorflow_linux,tools=DA,stdlib=DA]
mixin-preset=mixin_linux_installation

### From: buildbot_linux
build-subdir=buildbot_linux
lldb
foundation
libdispatch
lit-args=-v
dash-dash
skip-test-lldb
install-foundation
install-libdispatch
reconfigure

### From: buildbot_incremental,tools=DA,stdlib=DA,build
release-debuginfo
debug-llvm
debug-swift
swift-stdlib-build-type=RelWithDebInfo
swift-stdlib-enable-assertions=true

# Enables Tensorflow and runs all the Swift tests, except for long tests. Sets
# certain flags that are necessary for tests to pass.
[preset: tensorflow_test]
mixin-preset=mixin_lightweight_assertions
release
test
test-optimized
validation-test

# Enables Tensorflow and runs all the Swift tests (including long tests). Sets
# certain flags that are necessary for tests to pass.
[preset: tensorflow_test,long_test]
mixin-preset=tensorflow_test
long-test
stress-test

# Enables Tensorflow with ASan support, and runs all the Swift tests, except for
# long tests. Sets certain flags that are necessary for tests to pass.
[preset: tensorflow_test,asan]
mixin-preset=tensorflow_test
enable-asan
# SWIFT_ENABLE_TENSORFLOW END
