From 0d4d44fbc7c342d51a65fef4a8f8b0e7a6c1a811 Mon Sep 17 00:00:00 2001 From: "Jesse L. Zamora" Date: Tue, 29 Jul 2025 20:55:09 -0400 Subject: [PATCH 1/3] Add missing dependencies to Brewfile --- Brewfile | 3 +++ 1 file changed, 3 insertions(+) diff --git a/Brewfile b/Brewfile index a5f9849e..61e2688d 100644 --- a/Brewfile +++ b/Brewfile @@ -1 +1,4 @@ brew 'xz' +brew 'zstd' +brew 'cmake' +brew 'ninja' From a8875a7e70a1456003e16182c7e9e9079af3459c Mon Sep 17 00:00:00 2001 From: "Jesse L. Zamora" Date: Fri, 1 Aug 2025 09:52:27 -0400 Subject: [PATCH 2/3] Add more info about macOS dependencies to README.md --- README.md | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index 5791bf89..510e61e7 100644 --- a/README.md +++ b/README.md @@ -24,19 +24,22 @@ After that, verify that the `experimental-sdk` command is available: swift experimental-sdk list ``` -The output will either state that no Swift SDKs are available, or produce a list of those you previously had -installed, in case you've used the `swift experimental-sdk install` command before. +The output will either state that no Swift SDKs are available, or produce a list of those you previously had installed, in case you've used the `swift experimental-sdk install` command before. ### macOS Requirements -The generator depends on the `xz` utility for more efficient downloading of package lists for Ubuntu. This is optional, but can be installed via the included `Brewfile`: +The generator depends on the following dependencies to be installed on macOS: + +- `xz`: used for more efficient downloading of package lists for Ubuntu. If `xz` is not found, the generator will fallback on `gzip`. +- `cmake` and `ninja`: required for building LLVM native for versions of Swift before 6.0. +- `zstd`: required to decompress certain downloaded artifacts that use [Zstandard](https://github.com/facebook/zstd) compression. + +These dependencies can be installed from the `Brewfile`: ```bash brew bundle install ``` -If `xz` is not found, the generator will fallback on `gzip`. - ## Supported platforms and minimum versions macOS as a host platform and Linux as both host and target platforms are supported by the generator. From fe73095c6126e997dd2f31c9af100bdcf64ff7de Mon Sep 17 00:00:00 2001 From: "Jesse L. Zamora" Date: Fri, 1 Aug 2025 17:18:59 -0400 Subject: [PATCH 3/3] Add note about cmake conflict with Swift due to bug Co-authored-by: Max Desiatov --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 510e61e7..6dc9f898 100644 --- a/README.md +++ b/README.md @@ -31,7 +31,7 @@ The output will either state that no Swift SDKs are available, or produce a list The generator depends on the following dependencies to be installed on macOS: - `xz`: used for more efficient downloading of package lists for Ubuntu. If `xz` is not found, the generator will fallback on `gzip`. -- `cmake` and `ninja`: required for building LLVM native for versions of Swift before 6.0. +- `cmake` and `ninja`: required for building LLVM native for versions of Swift before 6.0. _*NOTE: if you're building the Swift toolchain outside of Swift SDK Generator, you'll have to uninstall Homebrew CMake or remove it from your `PATH` before invoking toolchain's `build-script` due to [swiftlang/swift#83060](https://github.com/swiftlang/swift/pull/83060).*_ - `zstd`: required to decompress certain downloaded artifacts that use [Zstandard](https://github.com/facebook/zstd) compression. These dependencies can be installed from the `Brewfile`: