Commit Graph

484 Commits

Author SHA1 Message Date
Saleem Abdulrasool
21533c68f0 utils: add Distributed to the experimental Windows SDK
We now have distributed in the SDK set as well. This brings us closer to
having a complete static SDK on Windows.
2025-07-18 14:55:47 -07:00
Saleem Abdulrasool
a220f2ed3d utils: build the static Obversation module on Windows
Extend the experimental SDK with the Observation module as we work
towards a complete SDK distribution.
2025-07-17 15:16:04 -07:00
Saleem Abdulrasool
2e8f74f011 Merge pull request #83131 from compnerd/synchronized-overlay
Runtimes: wire up the overlay to the Synchornization library
2025-07-17 15:06:39 -07:00
Saleem Abdulrasool
f19e5b4476 Runtimes: wire up the overlay to the Synchornization library
This allows us to pass along the overlay VFS mappings to workaround the
PCM compilation not receiving the builtin mapping from the compiler.
2025-07-17 08:57:53 -07:00
Charles Zablit
6d42649ff9 [windows][lldb] fix incorrect LLVM_HOST_TRIPLE when cross-compiling 2025-07-15 17:21:23 +02:00
Saleem Abdulrasool
a3e7e8b500 utils: correct flag handling for static runtime libdispatch handling
We were not passing along the proper flags to the runtime build
resulting in the library expecting libdispatch to be linked dynamically.
2025-07-11 11:29:30 -07:00
Saleem Abdulrasool
817922175d Merge pull request #82932 from compnerd/static-flags
utils: build static runtime with static dispatch and closure
2025-07-10 14:46:09 -07:00
Evan Wilde
ef9e7144db Merge pull request #82583 from etcwilde/ewilde/update-dep-versions
Update collections, crypto, certs, and asn1 tag
2025-07-10 11:10:35 -07:00
Saleem Abdulrasool
8b74c09b8f utils: build static runtime with static dispatch and closure
Although we would like these to be dynamic, we currently cannot build
them properly due to limitations of the build system. Adjust the build
to pass in additional flags to properly build the runtimes for that
environment as a temporary measure.
2025-07-09 14:41:59 -07:00
Evan Wilde
2ff24aa0a7 build.ps1: Update reference to CCryptoBoringSSL
The CCryptoBoringSSL library changed from C to C++, which means that the
static archive on Windows changed names, from `CCryptoBoringSSL.lib` to
`libCCryptoBoringSSL.lib`. The SourceKit-LSP SwiftPM test invocation
explicitly passed `CCryptoBoringSSL.lib` to the SwiftPM invocation,
resulting in the wrong search path. Pointing it at the correct location
now.
2025-07-08 11:12:01 -07:00
Fabrice de Gans
59bf7424bc utils: Link static Foundation with static Dispatch
Previously, the static Foundation build was linking against the dynamic
Dispatch build, resulting in a build failure when linking against the
static Foundation. This fixes the issue by linking the static Foundation
build against the static Dispatch build.
2025-07-07 14:38:16 -07:00
Saleem Abdulrasool
fa3db90ae3 Merge pull request #82191 from compnerd/static-libdispatch
utils: update experimental SDK builds
2025-07-06 10:25:54 -07:00
Saleem Abdulrasool
d9b0b9e0e1 Merge pull request #82734 from compnerd/tree-structuring
utils: adjust tree layout modification logic for static SDKs
2025-07-04 15:46:56 -07:00
Ben Barham
c78fa45555 [Build] Temporarily add -j 1 to swift-corelibs-foundation Windows build
We haven't been able to reproduce with `-j 1` yet. While it's slower, at
least we might be able to unblock CI while we continue to investigate.
2025-07-03 18:45:16 -07:00
Saleem Abdulrasool
cb757bcae4 utils: adjust tree layout modification logic for static SDKs
This adjusts the layout to now package up the static SDK properly.
2025-07-02 11:48:52 -07:00
Saleem Abdulrasool
06aa42b75c Merge pull request #82346 from compnerd/static-foundation-setup
utils: adjust the StaticFoundation builds on Windows
2025-07-02 08:22:44 -07:00
Saleem Abdulrasool
e55af870ce utils: adopt SwiftCore_DIR in new builds
Rather than pass along build configuration context to the subsequent
builds, wire together the CMake configuration to the builds to allow
building the runtime properly.
2025-06-23 08:39:59 -07:00
Fabrice de Gans
b334c8eda1 libxml2: Explicitly set the LLDB LibXML2 version (#82210)
With this change, the `LibXml2_DIR` CMake define is no longer overridden
on configure and actually takes effect when building lldb.
2025-06-18 20:21:52 -07:00
Saleem Abdulrasool
7e6b7c8613 build: avoid installing SQLite3 (#82322)
We build SQLite statically. We do not need to stage this into an install
location to use. Directly pass along the paths modified as a build
product.
2025-06-18 18:16:16 -07:00
Saleem Abdulrasool
d20070841b utils: adjust the StaticFoundation builds on Windows
This is in preparation for the addition of libdispatch to the SDK.
2025-06-18 10:38:00 -07:00
Saleem Abdulrasool
2ba4e7fa20 utils: pass along Foundation and XCTest to TSC (#82267)
This is required to build the TSCSupport module for SPM's consumption.
2025-06-17 10:07:56 -07:00
Mohamed Hegazy
9c2c6c9143 [build.ps1] Honor --SkipBuild with --IncludeNoAsserts (#82271)
Missed in my previous change. This makes it so that we donot build the
no asserts toolchain if `--skipBuild` is passed with
`--IncludeNoAsserts`
2025-06-17 10:06:20 -07:00
Saleem Abdulrasool
5dd0825cc9 utils: update experimental SDK builds
Adjust the build of the experimental SDK to build libdispatch
statically.
2025-06-11 11:45:14 -07:00
Mohamed Hegazy
276261c2f3 Merge pull request #81644 from mhegazy/no-asserts-toolchain
[build.ps1] Revamp No-asserts toolchain build and packaging
2025-06-11 09:30:25 -07:00
Ben Barham
0afeafac37 Merge pull request #82071 from bnbarham/pass-through-toolchain-version
[Build] Pass the toolchain version through to Swift's compilation
2025-06-08 17:17:59 -07:00
Evan Wilde
8ea765728b Use a response file for stdlib sources
The experimental stdlib runtime build has several sources files,
resulting in an absolutely massive commandline. This seems to be
approaching, or passing, the maximum command line length on Windows.
Switch the Windows build to use a response file generated by CMake to
pass the source files to the compiler.
2025-06-06 15:54:45 -07:00
Ben Barham
3982ebbbb3 [Build] Pass the toolchain version through to Swift's compilation
Passes the value of the environment variable `TOOLCHAIN_VERSION` through
to Swift's `SWIFT_TOOLCHAIN_VERSION` for use in eg.
`-print-target-info` (and some day, `--version`).
2025-06-06 15:09:21 -07:00
Saleem Abdulrasool
12e18ea5d4 utils: repair the Android build
Adjust the parameters to the runtime libraries to ensure that we are
building the runtimes for Android properly.
2025-06-02 17:39:39 -07:00
Saleem Abdulrasool
9040fab1d1 utils: adjust the "platform" install rules
Rename `Install-Platform` to `Install-SDK` as it adjusts the SDK layout.
This is something that we should work towards minimising and ensuring
that the install rules in CMake properly stage the files. In the mean
time, this allows us to properly structure the SDK.

Alter the parameters to avoid the explicit OS, extracting it from the
platform set provided. Additionally provide an SDK identifier to allow
us to handle the experimental SDKs as well.
2025-05-26 13:39:21 -07:00
Saleem Abdulrasool
29a9fb0ecb Merge pull request #81745 from compnerd/summary
utils: fix summary emission with caching
2025-05-25 02:02:27 -07:00
Saleem Abdulrasool
331f0982b7 Merge pull request #81763 from compnerd/settings
utils: write SDKSettings for experimental SDKs
2025-05-24 17:48:55 -07:00
Saleem Abdulrasool
5398cc8f90 utils: write SDKSettings for experimental SDKs
Add support to emit the SDKSettings.json for the experimental SDK. This
ensures that the we have the settings available for the tools when using
this SDK.
2025-05-24 08:44:30 -07:00
Saleem Abdulrasool
89042cd8c0 utils: normalise the names as per expectations
Adjust the platform identifier spelling to the expected case.
2025-05-24 08:43:25 -07:00
Saleem Abdulrasool
36859c0ae8 Merge pull request #81734 from compnerd/unification
utils: make unify SDKSettings plist and json
2025-05-23 15:35:36 -07:00
Saleem Abdulrasool
548bff6c78 utils: fix summary emission with caching
This updates the SCCache invocation for the summary printing which needs
to be adjusted for the use of the downloaded sccache.
2025-05-23 09:09:33 -07:00
Saleem Abdulrasool
a478db9022 Merge pull request #81733 from compnerd/sccache
utils: download sccache for Windows
2025-05-23 07:53:35 -07:00
Saleem Abdulrasool
b3b9924a42 Merge pull request #81732 from compnerd/expansion
utils: extend the experimental runtime build
2025-05-23 07:52:54 -07:00
Charles Zablit
9ed8b664fd Merge pull request #81071 from charles-zablit/charles-zablit/windows/fix-psutil-install-arm64
[Windows] fix psutil installation on arm64
2025-05-23 09:56:09 +01:00
Saleem Abdulrasool
0d32d8be69 utils: make unify SDKSettings plist and json
Alter the PList and JSON to match contents. While the primary consumer
for the PList is SPM, this synchronises the two just in case. This is in
response to feedback from @jakepetroules.
2025-05-22 21:49:50 -07:00
Saleem Abdulrasool
4539e0ab25 utils: download sccache for Windows
When `-EnableCaching` is specified, download a specific version of
sccache to enable easy enablement.
2025-05-22 21:28:13 -07:00
Saleem Abdulrasool
7b17c47a2c utils: extend the experimental runtime build
This adjusts the experimental runtime build to include the overlay,
StringProcessing, Synchronization. This is a first step towards getting
a sufficient amount of the SDK overlay built so that we can start
statically linking a real world program (swift-driver).
2025-05-22 20:59:38 -07:00
Saleem Abdulrasool
77fdaa9dd7 utils: flesh out SDKSettings.json further on Windows
Add additional properties into the SDKSettings.json that we generate.
2025-05-22 16:09:09 -07:00
Charles Zablit
1b549b66a7 fix dependency issue 2025-05-20 11:17:35 +01:00
Charles Zablit
d575a854b3 drop wheels in favor of pip install with hashes 2025-05-19 19:53:30 +02:00
Charles Zablit
5425fd347c sync package name 2025-05-19 19:53:30 +02:00
Charles Zablit
051e9e0710 fixup! [windows] add backup pip install when no wheels are available 2025-05-19 19:53:30 +02:00
Charles Zablit
ffd801b8de [windows] add backup pip install when no wheels are available 2025-05-19 19:53:29 +02:00
Charles Zablit
f59f602ddc Revert "[windows] fix psutil installation on arm64"
This reverts commit 345452c8dbaa61a864e0dc483ad94d1aef89147b.
2025-05-19 19:53:29 +02:00
Charles Zablit
211eaa94f5 Revert "[windows] replace wheels with automatic pip install"
This reverts commit 1a309e5a06d6e29ef6fa806703b404bdbdf4e38b.
2025-05-19 19:53:29 +02:00
Charles Zablit
50dc6b8aa3 [windows] replace wheels with automatic pip install 2025-05-19 19:53:29 +02:00