Skip to content

Commit 67645cf

Browse files
committed
Temporarily specify the Windows SDK version
This is necessary to work around an issue with the latest version (26100) of the Windows SDK where changes in headers result in circular module dependencies. See #909 for details.
1 parent 409d1d9 commit 67645cf

File tree

1 file changed

+22
-0
lines changed

1 file changed

+22
-0
lines changed

.github/workflows/swift-toolchain.yml

+22
Original file line numberDiff line numberDiff line change
@@ -276,6 +276,10 @@ env:
276276
WORKAROUND_WINDOWS_PINNED_BOOTSTRAP_TOOLCHAIN_REPO: thebrowsercompany/swift-build
277277
WORKAROUND_WINDOWS_PINNED_BOOTSTRAP_TOOLCHAIN_RELEASE: swift-6.0.0-20241216.0
278278

279+
# Workaround for issues with building with SDK version 26100.
280+
# See https://github.com/compnerd/swift-build/issues/909 for details.
281+
WORKAROUND_WINDOWS_SDK_VERSION: 10.0.22621.0
282+
279283
defaults:
280284
run:
281285
shell: pwsh
@@ -308,6 +312,7 @@ jobs:
308312
host_arch: ${{ inputs.build_arch }}
309313
components: 'Microsoft.VisualStudio.Component.VC.Tools.x86.x64;Microsoft.VisualStudio.Component.VC.Tools.ARM64'
310314
arch: ${{ matrix.arch }}
315+
winsdk: ${{ env.WORKAROUND_WINDOWS_SDK_VERSION }}
311316

312317
- uses: seanmiddleditch/gha-setup-ninja@96bed6edff20d1dd61ecff9b75cc519d516e6401 # master
313318
if: inputs.build_os == 'Darwin'
@@ -378,6 +383,7 @@ jobs:
378383
host_arch: ${{ inputs.build_arch }}
379384
components: 'Microsoft.VisualStudio.Component.VC.Tools.x86.x64;Microsoft.VisualStudio.Component.VC.Tools.ARM64'
380385
arch: amd64
386+
winsdk: ${{ env.WORKAROUND_WINDOWS_SDK_VERSION }}
381387

382388
# TODO(issues/205): Preload Chocolatey package manager on Azure images so we can remove this step.
383389
- uses: andrurogerz/ensure-chocolatey@v1
@@ -470,6 +476,7 @@ jobs:
470476
host_arch: ${{ inputs.build_arch }}
471477
components: 'Microsoft.VisualStudio.Component.VC.Tools.x86.x64;Microsoft.VisualStudio.Component.VC.Tools.ARM64'
472478
arch: ${{ matrix.arch }}
479+
winsdk: ${{ env.WORKAROUND_WINDOWS_SDK_VERSION }}
473480

474481
# TODO(issues/205): Preload Chocolatey package manager on Azure images so we can remove this step.
475482
- uses: andrurogerz/ensure-chocolatey@v1
@@ -546,6 +553,7 @@ jobs:
546553
host_arch: ${{ inputs.build_arch }}
547554
components: 'Microsoft.VisualStudio.Component.VC.Tools.x86.x64;Microsoft.VisualStudio.Component.VC.Tools.ARM64'
548555
arch: ${{ matrix.arch }}
556+
winsdk: ${{ env.WORKAROUND_WINDOWS_SDK_VERSION }}
549557

550558
- uses: seanmiddleditch/gha-setup-ninja@96bed6edff20d1dd61ecff9b75cc519d516e6401 # master
551559
if: inputs.build_os == 'Darwin'
@@ -629,6 +637,7 @@ jobs:
629637
host_arch: ${{ inputs.build_arch }}
630638
components: 'Microsoft.VisualStudio.Component.VC.Tools.x86.x64;Microsoft.VisualStudio.Component.VC.Tools.ARM64'
631639
arch: ${{ matrix.arch }}
640+
winsdk: ${{ env.WORKAROUND_WINDOWS_SDK_VERSION }}
632641

633642
- uses: seanmiddleditch/gha-setup-ninja@96bed6edff20d1dd61ecff9b75cc519d516e6401 # master
634643
if: inputs.build_os == 'Darwin'
@@ -939,6 +948,7 @@ jobs:
939948
host_arch: ${{ inputs.build_arch }}
940949
components: 'Microsoft.VisualStudio.Component.VC.Tools.x86.x64;Microsoft.VisualStudio.Component.VC.Tools.ARM64'
941950
arch: ${{ matrix.arch }}
951+
winsdk: ${{ env.WORKAROUND_WINDOWS_SDK_VERSION }}
942952

943953
- uses: seanmiddleditch/gha-setup-ninja@96bed6edff20d1dd61ecff9b75cc519d516e6401 # master
944954
if: inputs.build_os == 'Darwin'
@@ -1235,6 +1245,7 @@ jobs:
12351245
host_arch: ${{ inputs.build_arch }}
12361246
components: 'Microsoft.VisualStudio.Component.VC.Tools.x86.x64;Microsoft.VisualStudio.Component.VC.Tools.ARM64'
12371247
arch: ${{ matrix.arch }}
1248+
winsdk: ${{ env.WORKAROUND_WINDOWS_SDK_VERSION }}
12381249

12391250
- uses: seanmiddleditch/gha-setup-ninja@96bed6edff20d1dd61ecff9b75cc519d516e6401 # master
12401251
if: inputs.build_os == 'Darwin'
@@ -1329,6 +1340,7 @@ jobs:
13291340
host_arch: ${{ inputs.build_arch }}
13301341
components: 'Microsoft.VisualStudio.Component.VC.Tools.x86.x64;Microsoft.VisualStudio.Component.VC.Tools.ARM64'
13311342
arch: ${{ matrix.arch }}
1343+
winsdk: ${{ env.WORKAROUND_WINDOWS_SDK_VERSION }}
13321344

13331345
- uses: seanmiddleditch/gha-setup-ninja@96bed6edff20d1dd61ecff9b75cc519d516e6401 # master
13341346
if: inputs.build_os == 'Darwin'
@@ -1494,6 +1506,7 @@ jobs:
14941506
host_arch: ${{ inputs.build_arch }}
14951507
components: 'Microsoft.VisualStudio.Component.VC.Tools.x86.x64;Microsoft.VisualStudio.Component.VC.Tools.ARM64'
14961508
arch: ${{ matrix.arch }}
1509+
winsdk: ${{ env.WORKAROUND_WINDOWS_SDK_VERSION }}
14971510

14981511
- uses: seanmiddleditch/gha-setup-ninja@96bed6edff20d1dd61ecff9b75cc519d516e6401 # master
14991512
if: inputs.build_os == 'Darwin'
@@ -1635,6 +1648,7 @@ jobs:
16351648
host_arch: ${{ inputs.build_arch }}
16361649
components: 'Microsoft.VisualStudio.Component.VC.Tools.x86.x64;Microsoft.VisualStudio.Component.VC.Tools.ARM64'
16371650
arch: ${{ matrix.arch }}
1651+
winsdk: ${{ env.WORKAROUND_WINDOWS_SDK_VERSION }}
16381652

16391653
- uses: seanmiddleditch/gha-setup-ninja@96bed6edff20d1dd61ecff9b75cc519d516e6401 # master
16401654
if: inputs.build_os == 'Darwin'
@@ -1835,6 +1849,7 @@ jobs:
18351849
host_arch: ${{ inputs.build_arch }}
18361850
components: 'Microsoft.VisualStudio.Component.VC.Tools.x86.x64;Microsoft.VisualStudio.Component.VC.Tools.ARM64'
18371851
arch: ${{ matrix.arch }}
1852+
winsdk: ${{ env.WORKAROUND_WINDOWS_SDK_VERSION }}
18381853

18391854
- run: |
18401855
$RTLPath = cygpath -w ${{ github.workspace }}/BinaryCache/Library/Developer/Platforms/Windows.platform/Developer/SDKs/Windows.sdk/usr/bin
@@ -2126,6 +2141,7 @@ jobs:
21262141
host_arch: ${{ inputs.build_arch }}
21272142
components: 'Microsoft.VisualStudio.Component.VC.Tools.x86.x64;Microsoft.VisualStudio.Component.VC.Tools.ARM64'
21282143
arch: ${{ matrix.arch }}
2144+
winsdk: ${{ env.WORKAROUND_WINDOWS_SDK_VERSION }}
21292145

21302146
# FIXME(compnerd): workaround CMake 3.29-3.30 issue
21312147
- uses: lukka/get-cmake@aa1df13cce8c30d2cb58efa871271c5a764623f8 # main
@@ -2647,6 +2663,7 @@ jobs:
26472663
host_arch: ${{ inputs.build_arch }}
26482664
components: 'Microsoft.VisualStudio.Component.VC.Tools.x86.x64;Microsoft.VisualStudio.Component.VC.Tools.ARM64'
26492665
arch: ${{ matrix.arch }}
2666+
winsdk: ${{ env.WORKAROUND_WINDOWS_SDK_VERSION }}
26502667

26512668
- run: |
26522669
Move-Item ${env:SDKROOT}/usr/lib/swift/dispatch ${env:SDKROOT}/usr/include/
@@ -3253,6 +3270,7 @@ jobs:
32533270
host_arch: amd64
32543271
components: 'Microsoft.VisualStudio.Component.VC.Tools.x86.x64;Microsoft.VisualStudio.Component.VC.Tools.ARM64'
32553272
arch: ${{ matrix.arch }}
3273+
winsdk: ${{ env.WORKAROUND_WINDOWS_SDK_VERSION }}
32563274

32573275
- run: |
32583276
Move-Item ${env:SDKROOT}/usr/lib/swift/dispatch ${env:SDKROOT}/usr/include/
@@ -3358,6 +3376,7 @@ jobs:
33583376
host_arch: ${{ inputs.build_arch }}
33593377
components: 'Microsoft.VisualStudio.Component.VC.Tools.x86.x64;Microsoft.VisualStudio.Component.VC.Tools.ARM64'
33603378
arch: ${{ matrix.arch }}
3379+
winsdk: ${{ env.WORKAROUND_WINDOWS_SDK_VERSION }}
33613380

33623381
- run: |
33633382
$CertificatePath = Join-Path -Path ${env:RUNNER_TEMP} -ChildPath CodeSign.b64
@@ -3540,6 +3559,7 @@ jobs:
35403559
host_arch: ${{ inputs.build_arch }}
35413560
components: 'Microsoft.VisualStudio.Component.VC.Tools.x86.x64;Microsoft.VisualStudio.Component.VC.Tools.ARM64'
35423561
arch: ${{ matrix.arch }}
3562+
winsdk: ${{ env.WORKAROUND_WINDOWS_SDK_VERSION }}
35433563

35443564
- run: |
35453565
$CertificatePath = Join-Path -Path ${env:RUNNER_TEMP} -ChildPath CodeSign.b64
@@ -3658,6 +3678,7 @@ jobs:
36583678
host_arch: ${{ inputs.build_arch }}
36593679
components: 'Microsoft.VisualStudio.Component.VC.Tools.x86.x64;Microsoft.VisualStudio.Component.VC.Tools.ARM64'
36603680
arch: ${{ matrix.arch }}
3681+
winsdk: ${{ env.WORKAROUND_WINDOWS_SDK_VERSION }}
36613682

36623683
- run: |
36633684
$CertificatePath = Join-Path -Path ${env:RUNNER_TEMP} -ChildPath CodeSign.b64
@@ -3795,6 +3816,7 @@ jobs:
37953816
host_arch: ${{ inputs.build_arch }}
37963817
components: 'Microsoft.VisualStudio.Component.VC.Tools.x86.x64;Microsoft.VisualStudio.Component.VC.Tools.ARM64'
37973818
arch: ${{ matrix.arch }}
3819+
winsdk: ${{ env.WORKAROUND_WINDOWS_SDK_VERSION }}
37983820

37993821
- run: |
38003822
$CertificatePath = Join-Path -Path ${env:RUNNER_TEMP} -ChildPath CodeSign.b64

0 commit comments

Comments
 (0)