| #===--- build-presets.ini - Option presets for building Swift --------------===# |
| # |
| ## This source file is part of the Swift.org open source project |
| ## |
| ## Copyright (c) 2014 - 2016 Apple Inc. and the Swift project authors |
| ## Licensed under Apache License v2.0 with Runtime Library Exception |
| ## |
| ## See http://swift.org/LICENSE.txt for license information |
| ## See http://swift.org/CONTRIBUTORS.txt for the list of Swift project authors |
| # |
| #===------------------------------------------------------------------------===# |
| |
| #===------------------------------------------------------------------------===# |
| # Buildbots for Darwin OSes |
| #===------------------------------------------------------------------------===# |
| [preset: mixin_buildbot_install_components] |
| dash-dash |
| |
| swift-install-components=compiler;clang-builtin-headers;stdlib;sdk-overlay;editor-integration;tools;testsuite-tools;sourcekit-xpc-service |
| |
| |
| [preset: mixin_buildbot_trunk_base] |
| # Build standard library and SDK overlay for iOS device and simulator. |
| ios |
| tvos |
| watchos |
| test |
| validation-test |
| |
| dash-dash |
| |
| verbose-build=1 |
| build-ninja |
| |
| swift-sdks=OSX;IOS;IOS_SIMULATOR;TVOS;TVOS_SIMULATOR;WATCHOS;WATCHOS_SIMULATOR |
| |
| # Build static standard library because it is used |
| # to build external projects. |
| build-swift-static-stdlib=1 |
| |
| compiler-vendor=apple |
| |
| darwin-crash-reporter-client=0 |
| install-swift=1 |
| |
| # 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 |
| |
| dash-dash |
| |
| 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 |
| swift-sdks=OSX |
| 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 |
| |
| dash-dash |
| |
| 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 |
| |
| dash-dash |
| |
| 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 |
| |
| dash-dash |
| |
| swift-stdlib-build-type=Debug |
| swift-stdlib-enable-assertions=true |
| |
| |
| [preset: buildbot,tools=RA,stdlib=DA] |
| mixin-preset= |
| mixin_buildbot_tools_RA_stdlib_DA |
| |
| [preset: buildbot,tools=RA,stdlib=RD] |
| mixin-preset= |
| mixin_buildbot_tools_RA_stdlib_RD |
| |
| [preset: buildbot,tools=RA,stdlib=RDA] |
| mixin-preset= |
| mixin_buildbot_tools_RA_stdlib_RDA |
| |
| [preset: buildbot,tools=RA,stdlib=DA,NotvOS] |
| mixin-preset= |
| mixin_buildbot_tools_RA_stdlib_DA |
| mixin_NotvOS |
| |
| [preset: buildbot,tools=RA,stdlib=RD,NotvOS] |
| mixin-preset= |
| mixin_buildbot_tools_RA_stdlib_RD |
| mixin_NotvOS |
| |
| |
| [preset: buildbot,tools=RA,stdlib=RDA,NotvOS] |
| mixin-preset= |
| mixin_buildbot_tools_RA_stdlib_RDA |
| mixin_NotvOS |
| |
| |
| #===------------------------------------------------------------------------===# |
| # Incremental buildbots for Darwin OSes |
| #===------------------------------------------------------------------------===# |
| |
| [preset: buildbot_incremental_base] |
| # Build standard library and SDK overlay for iOS device and simulator. |
| ios |
| tvos |
| test |
| validation-test |
| |
| dash-dash |
| |
| # On buildbots, always force a reconfiguration to make sure we pick up changes |
| # in the build-script and build-presets.ini. |
| reconfigure |
| |
| verbose-build=1 |
| build-ninja |
| |
| # Don't build static standard library to speed up the build. |
| build-swift-static-stdlib=0 |
| |
| compiler-vendor=apple |
| |
| |
| [preset: mixin_NotvOS] |
| dash-dash |
| |
| swift-sdks=OSX;IOS;IOS_SIMULATOR;WATCHOS;WATCHOS_SIMULATOR |
| skip-build-tvos |
| skip-test-tvos |
| swift-enable-target-appletvos=0 |
| |
| |
| [preset: buildbot_incremental,tools=RA,stdlib=RA] |
| mixin-preset=buildbot_incremental_base |
| |
| build-subdir=buildbot_incremental |
| |
| # Build Release without debug info, because it is faster to build. |
| release |
| assertions |
| |
| # Build llbuild & swiftpm here |
| llbuild |
| #swiftpm |
| |
| dash-dash |
| |
| # 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 |
| |
| |
| [preset: buildbot_incremental,tools=RA,stdlib=RA,OnlytvOS] |
| mixin-preset=buildbot_incremental_base |
| |
| build-subdir=buildbot_incremental_OnlytvOS |
| |
| # Build Release without debug info, because it is faster to build. |
| release |
| assertions |
| |
| dash-dash |
| |
| # This preset runs only tvOS tests. |
| skip-test-osx |
| skip-test-ios |
| skip-test-watchos |
| |
| [preset: buildbot_incremental,tools=RA,stdlib=RA,NotvOS] |
| mixin-preset= |
| buildbot_incremental,tools=RA,stdlib=RA |
| mixin_NotvOS |
| |
| build-subdir=buildbot_incremental_NotvOS |
| |
| |
| [preset: buildbot_incremental_asan,tools=RDA,stdlib=RDA] |
| mixin-preset=buildbot_incremental_base |
| |
| build-subdir=buildbot_incremental_asan |
| |
| # Build Release with debug info, so that we can symbolicate backtraces. |
| release-debuginfo |
| assertions |
| |
| dash-dash |
| |
| # 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_asan,tools=DA,stdlib=RDA] |
| mixin-preset=buildbot_incremental_base |
| |
| build-subdir=buildbot_incremental_asan_debug |
| |
| # Build Release with debug info, so that we can symbolicate backtraces. |
| assertions |
| |
| dash-dash |
| |
| # 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_cross_compile_iphoneos,tools=RA,stdlib=RA] |
| mixin-preset=buildbot_incremental_base |
| |
| build-subdir=buildbot_incremental_cross_compile_iphoneos |
| |
| # Build Release without debug info, because it is faster to build. |
| release |
| assertions |
| |
| dash-dash |
| |
| cross-compile-tools-deployment-targets=iphoneos-arm64 iphoneos-armv7 iphoneos-armv7s |
| |
| |
| [preset: buildbot_incremental_cross_compile_iphonesimulator,tools=RA,stdlib=RA] |
| mixin-preset=buildbot_incremental_base |
| |
| build-subdir=buildbot_incremental_cross_compile_iphonesimulator |
| |
| # Build Release without debug info, because it is faster to build. |
| release |
| assertions |
| |
| dash-dash |
| |
| cross-compile-tools-deployment-targets=iphonesimulator-i386 iphonesimulator-x86_64 |
| |
| #===------------------------------------------------------------------------===# |
| # 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 |
| |
| dash-dash |
| |
| # On buildbots, always force a reconfiguration to make sure we pick up changes |
| # in the build-script and build-presets.ini. |
| reconfigure |
| |
| verbose-build=1 |
| build-ninja |
| |
| # Don't build static standard library to speed up the build. |
| build-swift-static-stdlib=0 |
| |
| skip-build-ios |
| skip-test-ios |
| skip-build-lldb |
| |
| compiler-vendor=apple |
| 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_special,tools=RA,stdlib=RD] |
| # Build release+asserts |
| release |
| assertions |
| |
| dash-dash |
| # 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 |
| |
| # We want our stdlib to not have assertions. |
| swift-stdlib-enable-assertions=false |
| |
| # Always reconfigure so we pick up changes in the build-script and |
| # build-presets.ini. |
| reconfigure |
| verbose-build=1 |
| build-ninja |
| # Don't build static standard library to speed up the build. |
| build-swift-static-stdlib=0 |
| compiler-vendor=apple |
| |
| [preset: buildbot_incremental_special_dtrace,tools=RA,stdlib=RD] |
| mixin-preset=buildbot_incremental_special,tools=RA,stdlib=RD |
| build-subdir=buildbot_incremental_special_dtrace |
| dash-dash |
| swift-runtime-enable-dtrace=1 |
| |
| [preset: buildbot_incremental_special_leaks,tools=RA,stdlib=RD] |
| mixin-preset=buildbot_incremental_special,tools=RA,stdlib=RD |
| build-subdir=buildbot_incremental_special_leaks |
| dash-dash |
| swift-runtime-enable-leak-checker=1 |
| |
| #===------------------------------------------------------------------------===# |
| # Package Builders |
| #===------------------------------------------------------------------------===# |
| |
| # A mixin that enables 'lightweight' assertions that don't slow down the |
| # compiler significantly. |
| [preset: mixin_lightweight_assertions] |
| assertions |
| no-swift-stdlib-assertions |
| |
| # FIXME: This should be: |
| # no-assertions |
| # swift-assertions |
| # ... but our tests are expecting assertions to be either on or off everywhere. |
| |
| dash-dash |
| |
| # AST verifier slows down the compiler significantly. |
| swift-enable-ast-verifier=0 |
| |
| #===------------------------------------------------------------------------===# |
| # Linux Builders |
| #===------------------------------------------------------------------------===# |
| [preset: mixin_linux_installation] |
| mixin-preset=mixin_lightweight_assertions |
| |
| llbuild |
| swiftpm |
| xctest |
| dash-dash |
| |
| install-swift |
| install-lldb |
| install-llbuild |
| install-swiftpm |
| install-xctest |
| install-prefix=/usr |
| swift-install-components=compiler;clang-builtin-headers;stdlib;sdk-overlay;license |
| build-swift-static-stdlib=1 |
| skip-test-lldb=1 |
| |
| # Executes the lit tests for the installable package that is created |
| # Assumes the swift-integration-tests repo is checked out |
| test-installable-package=1 |
| |
| # 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 |
| foundation |
| |
| dash-dash |
| |
| install-foundation |
| reconfigure |
| |
| # Ubuntu 15.10 preset for backwards compat and future customizations. |
| [preset: buildbot_linux_1510] |
| mixin-preset=buildbot_linux |
| |
| # Ubuntu 14.04 preset for backwards compat and future customizations. |
| [preset: buildbot_linux_1404] |
| mixin-preset=buildbot_linux |
| |
| #===------------------------------------------------------------------------===# |
| # OS X Package Builders |
| #===------------------------------------------------------------------------===# |
| [preset: mixin_osx_package_base] |
| ios |
| tvos |
| watchos |
| |
| lldb |
| llbuild |
| swiftpm |
| |
| # Build with debug info, this allows us to symbolicate crashes from |
| # production builds. |
| release-debuginfo |
| |
| dash-dash |
| |
| lldb-no-debugserver |
| lldb-build-type=Release |
| verbose-build=1 |
| build-ninja |
| build-swift-static-stdlib=1 |
| compiler-vendor=apple |
| swift-sdks=OSX;IOS;IOS_SIMULATOR;TVOS;TVOS_SIMULATOR;WATCHOS;WATCHOS_SIMULATOR |
| |
| install-swift=1 |
| install-lldb=1 |
| install-llbuild=1 |
| install-swiftpm=1 |
| |
| install-destdir=%(install_destdir)s |
| |
| darwin-install-extract-symbols=1 |
| |
| # 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=1 |
| |
| # If someone uses this for incremental builds, force reconfiguration. |
| reconfigure |
| |
| [preset: mixin_osx_package_test] |
| build-subdir=buildbot_osx |
| |
| ios |
| tvos |
| watchos |
| test |
| validation-test |
| |
| dash-dash |
| |
| skip-test-lldb |
| |
| # Path to the .tar.gz package we would create. |
| installable-package=%(installable_package)s |
| |
| [preset: buildbot_osx_package] |
| mixin-preset= |
| mixin_osx_package_base |
| mixin_osx_package_test |
| mixin_lightweight_assertions |
| |
| dash-dash |
| |
| swift-install-components=compiler;clang-builtin-headers;stdlib;sdk-overlay;license;sourcekit-xpc-service |
| llvm-install-components=libclang;clang-headers |
| |
| # 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-name=%(darwin_toolchain_xctoolchain_name)s |
| darwin-toolchain-version=%(darwin_toolchain_version)s |
| |
| #===------------------------------------------------------------------------===# |
| # 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] |
| dash-dash |
| build-swift-perf-testsuite=0 |
| install-destdir=%(swift_install_destdir)s |
| |
| [preset: LLDB_Swift_DebugAssert] |
| mixin-preset= |
| LLDB_Nested |
| |
| assertions |
| |
| [preset: LLDB_Swift_ReleaseAssert] |
| mixin-preset= |
| LLDB_Nested |
| |
| release-debuginfo |
| assertions |