Any valid name beginning with `#` that isn't already a preprocessor
macro is now considered a freestanding macro. Previously, only
preprocessor macros were handled in the vim syntax file, e.g. `#if`.
For example, this properly handles the syntax for the `#expect` and the
`#require` macros used in Swift Testing.
What is nice about this is that by not using extra-cmake-args, we can avoid
passing this into LLVM as well when attempting to reproduce failures on the bots
(thus avoiding having to rebuild LLVM as well).
This moves ds2 into a separate directory for ds2 rather than keeping it
at a top level directory named after the target triple. It also adopts
the GCC style target triple prefix. Finally, adjust the build to perform
the installation to allow building a complete toolchain image.
Add a smoke test build of swift-build. While this is not integrated into
SPM, it allows us to ensure that swift-build is able to be built with
the just built compiler on Windows.
Simplify the `Build-Testing` call to simply build swift testing for
distribution. The testing support was never implemented and there was
more duplication than necessary.
This split reduces the logic and changes nearly all the handling into
path computation. It also will enable us to migrate towards avoiding a
separate staging step.
Use a structural definition of the settings and convert them to the
appropriate serialised format as a delayed operation. This makes it
easier to read the settings and modify them as we iterate on the
toolchain.
Take the opportunity to extract the PList conversion into a helper
function.
The backtracing code will warn you if you attempt to forcibly enable
backtracing for a privileged executable. This is apparently upsetting
the Driver/filelists.swift test.
Since we want to force it on for tests, so that we will definitely get
backtraces, add an option to suppress warning messages, and turn that
on for tests as well.
rdar://144497613
This further migrates towards a shared installation of the platform and
SDKs staging. This helps ensure that we are properly creating additional
SDKs without overwriting components and can share components across
builds. It also avoids unnecessary duplicated work.
* util: Add -Variant param to build.ps1 for building Asserts | NoAsserts.
* Special case BinaryCache path concatenation.
* Fix merge damage.
* Cleanup.
* Update update-checkout-config.json
Update swift-system requirement to 1.4.0. This is motivated by swift-build which requires swift-system 1.4.0. More importantly, the API surface between 1.3.0 and 1.4.0 changed including the API usage that is required by swift-build.
* Update update-checkout-config.json
Update to 1.4.1