How to build Wasm SDK from source?

i am desperately trying to obtain a wasm32-unknown-wasip1-threads SDK bundle that is compatible with the latest swift-6.3-RELEASE toolchain. i couldn’t figure out where to obtain such a bundle from official or unofficial sources (including swiftwasm/swift, which has stopped publishing SDKs), so i’ve resorted to trying to compile it from source.

but i can’t seem to coax utils/build-script into building that SDK bundle successfully either.

SWIFT_PATH="${SWIFT_INSTALLATION}/bin"

swift/utils/update-checkout --clone --tag swift-6.3-RELEASE
swift/utils/build-script \
    --skip-build-llvm \
    --skip-build-swift \
    --skip-build-cmark \
    --build-wasm-stdlib \
    --native-swift-tools-path="$SWIFT_PATH" \
    --native-clang-tools-path="$SWIFT_PATH" \
    --native-llvm-tools-path="$SWIFT_PATH"
[swift/utils/build-script] NOTE: Using toolchain default
+ /usr/local/bin/cmake --version
+ /usr/local/bin/ninja --version
+ mkdir -p /home/runner/work/swift-docker-wasm/swift-docker-wasm/build/Ninja-RelWithDebInfoAssert
--- Building earlyswiftdriver ---
+ /home/runner/work/swift-docker-wasm/swift-docker-wasm/swift-driver/Utilities/build-script-helper.py build --package-path /home/runner/work/swift-docker-wasm/swift-docker-wasm/swift-driver --build-path /home/runner/work/swift-docker-wasm/swift-docker-wasm/build/Ninja-RelWithDebInfoAssert/earlyswiftdriver-linux-x86_64 --configuration release --toolchain /home/runner/swift/swift-6.3-RELEASE-ubuntu24.04/usr --ninja-bin /usr/local/bin/ninja --cmake-bin /usr/local/bin/cmake --local_compiler_build
CMake Warning:
  Manually-specified variables were not used by the project:
    CMAKE_C_COMPILER
Building Swift Driver dependency: llbuild
Building Swift Driver dependency: TSC
Building Swift Driver dependency: Argument Parser
Building Swift Driver for target: x86_64-unknown-linux-gnu
--- Building wasilibc ---
+ make install -j 4 -C /home/runner/work/swift-docker-wasm/swift-docker-wasm/wasi-libc OBJDIR=/home/runner/work/swift-docker-wasm/swift-docker-wasm/build/Ninja-RelWithDebInfoAssert/wasilibc-linux-x86_64/obj-single SYSROOT=/home/runner/work/swift-docker-wasm/swift-docker-wasm/build/Ninja-RelWithDebInfoAssert/wasilibc-linux-x86_64/sysroot/wasm32-wasip1 INSTALL_DIR=/home/runner/work/swift-docker-wasm/swift-docker-wasm/build/Ninja-RelWithDebInfoAssert/wasi-sysroot/wasm32-wasip1/sysroot CC=/home/runner/swift/swift-6.3-RELEASE-ubuntu24.04/usr/bin/clang AR=/home/runner/swift/swift-6.3-RELEASE-ubuntu24.04/usr/bin/llvm-ar NM=/home/runner/swift/swift-6.3-RELEASE-ubuntu24.04/usr/bin/llvm-nm THREAD_MODEL=single TARGET_TRIPLE=wasm32-wasip1
make: *** No rule to make target 'install'.  Stop.
make: Entering directory '/home/runner/work/swift-docker-wasm/swift-docker-wasm/wasi-libc'
make: Leaving directory '/home/runner/work/swift-docker-wasm/swift-docker-wasm/wasi-libc'
ERROR: command `['make', 'install', '-j', '4', '-C', '/home/runner/work/swift-docker-wasm/swift-docker-wasm/wasi-libc', 'OBJDIR=/home/runner/work/swift-docker-wasm/swift-docker-wasm/build/Ninja-RelWithDebInfoAssert/wasilibc-linux-x86_64/obj-single', 'SYSROOT=/home/runner/work/swift-docker-wasm/swift-docker-wasm/build/Ninja-RelWithDebInfoAssert/wasilibc-linux-x86_64/sysroot/wasm32-wasip1', 'INSTALL_DIR=/home/runner/work/swift-docker-wasm/swift-docker-wasm/build/Ninja-RelWithDebInfoAssert/wasi-sysroot/wasm32-wasip1/sysroot', 'CC=/home/runner/swift/swift-6.3-RELEASE-ubuntu24.04/usr/bin/clang', 'AR=/home/runner/swift/swift-6.3-RELEASE-ubuntu24.04/usr/bin/llvm-ar', 'NM=/home/runner/swift/swift-6.3-RELEASE-ubuntu24.04/usr/bin/llvm-nm', 'THREAD_MODEL=single', 'TARGET_TRIPLE=wasm32-wasip1']` terminated with a non-zero exit status 2, aborting

as far as i can tell, it does successfully check out the wasi-libc repository.

swift-project$ cd wasi-libc/
swift-project/wasi-libc$ git status
HEAD detached at wasi-sdk-31
nothing to commit, working tree clean

yes, i tried asking an LLM for help first, but it’s just as stumped as i am. the LLMs insist that something is broken upstream (in swift/utils/build-script) which, if true, would be an investigative dead end.