Max Desiatov
655a3b1e61
Merge branch 'main' into maxd/build-script-typing
2025-07-08 11:47:15 +01:00
Saleem Abdulrasool
b37d0f668f
Merge pull request #82856 from Steelskin/fabrice/fix-static-foundation-link-static-dispatch
...
utils: Link static Foundation with static Dispatch
2025-07-08 01:48:57 -07:00
Konrad `ktoso` Malawski
fe86091cc1
Merge pull request #82558 from ktoso/wip-cleanup-group-docs
2025-07-08 01:06:51 -07:00
Max Desiatov
a073e6610e
Merge pull request #82839 from MaxDesiatov/maxd/wasmkit-with-host-tools
...
For small local incremental builds that require WasmKit it's faster to build WasmKit with the host toolchain instead of waiting for a full bootstrap build to complete.
2025-07-08 08:10:40 +01:00
Cassie Jones
f7ccb5298f
Merge pull request #82714 from porglezomp-misc/update-checkout-additional-scheme
...
update-checkout: Support specifying --config multiple times
2025-07-07 17:31:46 -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
Cassie Jones
f3917b340e
update-checkout: Support specifying --config multiple times
...
Passing additional --config flags will load each config file in turn and
uses the last value for any defined config. This allows having local
configs that only define personal schemes and still having access to the
default schemes. This also makes it easier to work with machine
generated configs without having to cause churn in the main config file.
2025-07-07 11:48:54 -07:00
Max Desiatov
4a8871f94b
Respect --build-runtime-with-host-compiler in wasmkit.py
2025-07-07 15:21:51 +01:00
Max Desiatov
03dd520646
Add swift_build/swift-build to swift_build_support/toolchain.py
...
This exposes `swift-build` from toolchains, which allows products to use this tool directly when building
2025-07-07 15:16:52 +01: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
Dave Lee
3ac427f94e
[utils] Update Demangle::Node data formatter ( #82739 )
...
Updates the lldb data formatter for `Demangle::Node` to reflect the
current `PayloadKind` enum values (which were changed in
https://github.com/swiftlang/swift/pull/72884 ).
2025-07-04 21:36:37 -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
Max Desiatov
461f7d026b
Fix typo in reset func in productpipeline_list_builder.py ( #82777 )
...
`pipelinst_list` -> `pipeline_list`
There are no other uses of `pipelinst_list`, so it's clearly a typo when trying to refer to `pipeline_list`
2025-07-04 23:02:16 +01:00
Max Desiatov
0c4e56174b
Merge pull request #82399 from swiftlang/maxd/embedded-wasm-tests
...
These tests still require a manual `lit.py` invocation for Wasm, which will be added as a separate CMake target in a future PR.
2025-07-04 15:36:15 +01:00
Yuta Saito
05204bdf63
Merge pull request #82285 from kateinoigakukun/yt/build-foundation
2025-07-04 22:02:14 +09:00
Max Desiatov
572c52955b
NFC: Fix doc comment typo in productpipeline_list_builder.py ( #82771 )
...
`Product a final schedule` -> `Produce a final schedule`
2025-07-04 05:49:38 -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
Mishal Shah
65d9f5f71c
Merge pull request #82729 from etcwilde/ewilde/build-script-divide-by-zero
...
Build-Script: Don't divide by zero
2025-07-03 15:46:49 -07:00
Max Desiatov
3aeffef54e
Fix import path in productpipeline_list_builder.py
2025-07-03 22:57:38 +01:00
Max Desiatov
be4ff14bca
Add type annotations to ProductPipeline in build-script
...
This prevents possible runtime type errors and helped uncovering https://github.com/swiftlang/swift/pull/82777 . It also server as an improvement o documentation, as provides inferred type annotations for users of this class and callers of its methods.
2025-07-03 19:19:08 +01:00
Yuta Saito
838e9543e8
[wasm] Build and install Foundation for Wasm SDK
2025-07-03 03:25:17 +00:00
Yuta Saito
245dd83e47
Revert "Revert "[wasm] Build and install libxml2 for Wasm SDK""
...
This reverts commit d5abfa431b .
2025-07-03 03:25:17 +00: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
Evan Wilde
f64b5a0488
Build-Script: Don't divide by zero
...
If things crash very early on, build-script tries to divide by zero when
computing the percent time spent in each project because the build time
is zero. While this is a failure state, all it does is add more output
to the crashing stack trace.
2025-07-02 10:59:55 -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
Cassie Jones
1fd056156c
[test] Test update_checkout --dump-hashes output
2025-07-02 04:06:14 -07:00
finagolfin
b2f52524c5
[android] Disable a couple Reflection tests and fix an install path ( #82620 )
...
The tests broke on the community Android CI since #82325 , and I just
noticed the install issue when cross-compiling Testing with a
freshly-built compiler, which I'd never done before. Also, fix the NDK
path shown in the CMake output.
2025-07-02 09:41:59 +05:30
Charles Zablit
f2d9de91ce
Merge pull request #82630 from charles-zablit/charles-zablit/windows/fix-missing-invocation
...
[windows] add missing set of WINDOWS_SDKS in build-windows-toolchain.bat
2025-07-01 21:38:22 +01:00
Max Desiatov
27e5d5c551
Fix/xfail/disable remaining tests for embedded Wasm
2025-07-01 11:43:43 +01:00
3405691582
1cf426c905
Plumb native-clang-tools-path to build support. ( #81587 )
...
The build support Python libraries assume by default that if we do not
supply a Swift toolchain path, we can find clang in the installed
toolchain path: i.e., the clang that we just built. However, possibly
during bootstrap, we may not have a preexisting Swift compiler but still
want to use the clang on the platform that is already installed.
build-script already gives us native-clang-tools-path. Here, we plumb
this through to the relevant Python modules. If the
native-clang-tools-path is not specified, we use the
install_toolchain_path, just like native_toolchain_path, and the
existing behavior is effectively unchanged. If we do specify a
native-clang-tools-path, then we return it to ensure that we properly
refer to the clang that lives there instead of always defaulting to the
just-built clang.
2025-06-30 10:07:59 -07:00
Charles Zablit
d0f05adf54
[windows] add missing set of WINDOWS_SDKS in build-windows-toolchain.bat
2025-06-30 17:18:51 +01:00
Charles Zablit
9c83ae4422
Merge pull request #82188 from swiftlang/charles-zablit/lldb/new-lldb-windows-bot
...
[windows] make WindowsSDKs configurable through env variables
2025-06-27 11:50:07 +01:00
Evan Wilde
80863f0bf1
remote-run: Find rsync on path
...
The current remote-run implementation only works if rsync is located at
`/usr/bin/`, which isn't always the case. FreeBSD installs rsync to
`/usr/local/bin` as it is not installed in the base system by default.
Relax the script to accept rsync on any path.
2025-06-25 13:20:30 -07:00
Charles Zablit
344d24db14
[windows] make WindowsSDKs configurable through env variables
2025-06-25 18:25:25 +01:00
Max Desiatov
92dd843a18
Fix building Wasm stdlib with macOS presets ( #80850 )
...
Added optional `ignore_extra_cmake_options` to `cmake_product.py`, existing behavior is preserved with the default argument value set to `False`.
Passed `ignore_extra_cmake_options=True` in `wasisysroot.py`. This allows libc++ for WASI to be built correctly with `-fno-exceptions` in presence of `extra-cmake-options` in macOS presets (which are absent in Linux presets).
2025-06-24 11:15:25 -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
Yuta Saito
9488df15e0
Merge pull request #82393 from wti/wasmkit-universal-fix-82390
...
Update wasmkit toolchain build to emit universal binary on macOS to fix #82390
2025-06-23 13:58:09 +09:00
Max Desiatov
bac080ef70
presets: allow incremental rebuilds of stdlib for WASI ( #82364 )
...
This allows quickly rebuilding and testing wasm stdlib end-to-end without rebuilding the whole toolchain.
2025-06-22 04:04:16 -07:00
Max Desiatov
9b9db58b21
Discover embedded tests when testing wasmstdlib.py ( #82376 )
...
Embedded tests are only included in test discovery for `wasmstdlib` product, a separate change is needed to mark relevant tests as supported.
Without this change:
```
[2025-06-21T00:53:52.507Z] --- Running tests for wasmstdlib ---
[...]
[2025-06-21T00:59:22.874Z] Total Discovered Tests: 1405
[2025-06-21T00:59:22.874Z] Excluded : 2 (0.14%)
[2025-06-21T00:59:22.874Z] Unsupported : 725 (51.60%)
[2025-06-21T00:59:22.874Z] Passed : 674 (47.97%)
[2025-06-21T00:59:22.874Z] Expectedly Failed: 4 (0.28%)
[...]
[2025-06-20T17:42:41.045Z] Build Percentage Build Duration (sec) Build Phase
[2025-06-20T17:42:41.045Z] ================ ==================== ===========
[...]
[2025-06-21T02:02:24.048Z] 3.0% 324.31 Running tests for wasmstdlib
```
With this change:
```
[2025-06-20T16:33:58.389Z] --- Running tests for wasmstdlib ---
[...]
[2025-06-20T16:39:29.285Z] Total Discovered Tests: 1626
[2025-06-20T16:39:29.285Z] Excluded : 2 (0.12%)
[2025-06-20T16:39:29.285Z] Unsupported : 946 (58.18%)
[2025-06-20T16:39:29.285Z] Passed : 674 (41.45%)
[2025-06-20T16:39:29.285Z] Expectedly Failed: 4 (0.25%)
[...]
[2025-06-20T17:42:41.045Z] Build Percentage Build Duration (sec) Build Phase
[2025-06-20T17:42:41.045Z] ================ ==================== ===========
[...]
[2025-06-20T17:42:41.045Z] 3.0% 322.87 Running tests for wasmstdlib
```
2025-06-21 13:47:55 -07:00
wti
65302367d0
Update wasmkit toolchain build to emit universal on macOS to fix #82390
...
[platform_args] has platform variants of SwiftPM wasmkit build command:
- unchanged: non-macOS + set_installation_rpath -> rpath config
- added: macOS -> universal binaries using --arch
side effect ok?: binary path changes are captured by '--show-bin-path'
2025-06-21 11:20:40 -07:00
Ian Anderson
cb954b98f9
[ABIChecker] Use -Isystem and -Fsystem for swift-api-digester
...
Use the Swift -Fsystem flag for swift-api-digester instead of the clang -iframework flag. Add support for -Isystem for parity.
rdar://152747420
2025-06-18 21:21:45 -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
Eric Miotto
ddf0e13e1c
Merge pull request #82278 from edymtt/edymtt/add-llvmtestingsupport-only-when-available
...
[build-script] build LLVMTestingSupport only if target is generated
2025-06-17 14:36:41 -07:00
Hamish Knight
c78ed1c848
Merge pull request #82293 from hamishknight/case-closed
...
[xcodegen] Make sure to `realPath` Clang file paths
2025-06-17 21:30:20 +01: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
Max Desiatov
d5abfa431b
Revert "[wasm] Build and install libxml2 for Wasm SDK"
2025-06-17 15:10:02 +01:00
Hamish Knight
1c99ddc1e9
[xcodegen] Make sure to realPath Clang file paths
...
Ensure we get the `realPath` for file paths in the
`compile_commands.json` to canonicalize casing.
2025-06-17 12:58:34 +01:00