Upcoming changes to Windows Swift SDKs

After a long bit of silence, here is a small update.

We now have a new snapshot on swift.org (11/3). This should have the vast majority of the work complete. I think that we are at a point where things should be usable. I have at two separate cases where I am able to build fully statically linked binaries for distribution in GitHub Actions (GitHub - compnerd/vigil: A `caffeinate` inspired power management suspension program for Windows and GitHub - compnerd/nv: Ninja Visualizer if you would like to see examples). The Windows toolchain build also has adopted the snapshot for the static linking to get a working early swift-driver. I am currently working on adopting the experimental SDK (dynamic linkage) for the toolchain itself.

In parallel, @roman-bcny has managed to get SwiftFormat migrated over to the static linking on Windows as well.

I feel like the SDK is now in relatively good shape. There is still the small issue of fixing the libdispatch and libclosure builds converted to dynamic in all cases. Otherwise, this feels like we are nearly at the point of convergence.

Once the toolchain build has adopted the dynamic variant of the experimental SDK, the legacy SDK is going to be removed. Until that point, you will need to alter the SDKROOT when building, but hopefully this will be addressed soon, becoming the default SDK.

Saleem

5 Likes