From 1b748aad091a757dff62e64831614e2f711554c6 Mon Sep 17 00:00:00 2001 From: Tristan Labelle Date: Fri, 13 Oct 2023 15:22:40 -0400 Subject: [PATCH 1/3] Pass flags to bundle the vcredist installer. --- .azure/vs2022.yml | 2 ++ .github/workflows/swift-toolchain.yml | 2 ++ build.ps1 | 10 ++++++++++ 3 files changed, 14 insertions(+) diff --git a/.azure/vs2022.yml b/.azure/vs2022.yml index dda27644a..06798328f 100644 --- a/.azure/vs2022.yml +++ b/.azure/vs2022.yml @@ -2033,6 +2033,8 @@ stages: -p:ProductVersion=${{ parameters.ProductVersion }}${{ parameters.BuildTag }} -p:CERTIFICATE=$(certificate.secureFilePath) -p:PASSPHRASE=$(CERTIFICATE_PASSWORD) + -p:VCREDIST_INSTALLER="${env:VCToolsRedistDir}\vc_redist.${env:VSCMD_ARG_TGT_ARCH}.exe" + -p:VCREDIST_VERSION=$env:VCToolsVersion -p:INCLUDE_AMD64_SDK=true -p:INCLUDE_X86_SDK=true -p:INCLUDE_ARM64_SDK=true diff --git a/.github/workflows/swift-toolchain.yml b/.github/workflows/swift-toolchain.yml index e1abb50a7..2bb7ace62 100644 --- a/.github/workflows/swift-toolchain.yml +++ b/.github/workflows/swift-toolchain.yml @@ -1977,6 +1977,8 @@ jobs: -p:CERTIFICATE=${env:CERTIFICATE} ` -p:PASSPHRASE=${{ secrets.PASSPHRASE }} ` -p:BundleFlavor=offline ` + -p:VCREDIST_INSTALLER="${env:VCToolsRedistDir}\vc_redist.${env:VSCMD_ARG_TGT_ARCH}.exe" ` + -p:VCREDIST_VERSION=${env:VCToolsVersion} ` -p:INCLUDE_AMD64_SDK=true ` -p:INCLUDE_X86_SDK=true ` -p:INCLUDE_ARM64_SDK=true ` diff --git a/build.ps1 b/build.ps1 index 515052155..e40d47f72 100644 --- a/build.ps1 +++ b/build.ps1 @@ -1558,6 +1558,16 @@ function Build-Installer() { INCLUDE_SWIFT_DOCC = "true"; SWIFT_DOCC_BUILD = "$($HostArch.BinaryCache)\swift-docc\release"; SWIFT_DOCC_RENDER_ARTIFACT_ROOT = "${SourceCache}\swift-docc-render-artifact"; + VCREDIST_INSTALLER = "$($env:VCToolsRedistDir)" + } + + Isolate-EnvVars { + Invoke-VsDevShell $HostArch + $VCRedistInstallerPath = "${env:VCToolsRedistDir}\vc_redist.$($HostArch.ShortName).exe" + if (Test-Path $VCRedistInstallerPath) { + $Properties["VCREDIST_INSTALLER"] = $VCRedistInstallerPath + $Properties["VCREDIST_VERSION"] = $env:VCToolsVersion + } } foreach ($Arch in $SDKArchs) { From d92f4a5d17096cb2415adc2cac7ec9bb99ed4ec3 Mon Sep 17 00:00:00 2001 From: Tristan Labelle Date: Fri, 13 Oct 2023 15:24:00 -0400 Subject: [PATCH 2/3] Remove extra property set --- build.ps1 | 1 - 1 file changed, 1 deletion(-) diff --git a/build.ps1 b/build.ps1 index e40d47f72..21ef8dc41 100644 --- a/build.ps1 +++ b/build.ps1 @@ -1558,7 +1558,6 @@ function Build-Installer() { INCLUDE_SWIFT_DOCC = "true"; SWIFT_DOCC_BUILD = "$($HostArch.BinaryCache)\swift-docc\release"; SWIFT_DOCC_RENDER_ARTIFACT_ROOT = "${SourceCache}\swift-docc-render-artifact"; - VCREDIST_INSTALLER = "$($env:VCToolsRedistDir)" } Isolate-EnvVars { From 8a1622d4f8081fbacc2c34785d459a45434d49ec Mon Sep 17 00:00:00 2001 From: Tristan Labelle Date: Fri, 13 Oct 2023 17:10:11 -0400 Subject: [PATCH 3/3] Update to match latest installer revision --- .azure/vs2022.yml | 4 ++-- .github/workflows/swift-toolchain.yml | 4 ++-- build.ps1 | 4 ++-- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/.azure/vs2022.yml b/.azure/vs2022.yml index 06798328f..dafc37016 100644 --- a/.azure/vs2022.yml +++ b/.azure/vs2022.yml @@ -2033,8 +2033,8 @@ stages: -p:ProductVersion=${{ parameters.ProductVersion }}${{ parameters.BuildTag }} -p:CERTIFICATE=$(certificate.secureFilePath) -p:PASSPHRASE=$(CERTIFICATE_PASSWORD) - -p:VCREDIST_INSTALLER="${env:VCToolsRedistDir}\vc_redist.${env:VSCMD_ARG_TGT_ARCH}.exe" - -p:VCREDIST_VERSION=$env:VCToolsVersion + -p:VCRedistInstaller="${env:VCToolsRedistDir}\vc_redist.${env:VSCMD_ARG_TGT_ARCH}.exe" + -p:VSVersion=${env:VSCMD_VER} -p:INCLUDE_AMD64_SDK=true -p:INCLUDE_X86_SDK=true -p:INCLUDE_ARM64_SDK=true diff --git a/.github/workflows/swift-toolchain.yml b/.github/workflows/swift-toolchain.yml index 2bb7ace62..6aa97fa66 100644 --- a/.github/workflows/swift-toolchain.yml +++ b/.github/workflows/swift-toolchain.yml @@ -1977,8 +1977,8 @@ jobs: -p:CERTIFICATE=${env:CERTIFICATE} ` -p:PASSPHRASE=${{ secrets.PASSPHRASE }} ` -p:BundleFlavor=offline ` - -p:VCREDIST_INSTALLER="${env:VCToolsRedistDir}\vc_redist.${env:VSCMD_ARG_TGT_ARCH}.exe" ` - -p:VCREDIST_VERSION=${env:VCToolsVersion} ` + -p:VCRedistInstaller="${env:VCToolsRedistDir}\vc_redist.${env:VSCMD_ARG_TGT_ARCH}.exe" ` + -p:VSVersion=${env:VSCMD_VER} ` -p:INCLUDE_AMD64_SDK=true ` -p:INCLUDE_X86_SDK=true ` -p:INCLUDE_ARM64_SDK=true ` diff --git a/build.ps1 b/build.ps1 index 21ef8dc41..5c196ca1c 100644 --- a/build.ps1 +++ b/build.ps1 @@ -1564,8 +1564,8 @@ function Build-Installer() { Invoke-VsDevShell $HostArch $VCRedistInstallerPath = "${env:VCToolsRedistDir}\vc_redist.$($HostArch.ShortName).exe" if (Test-Path $VCRedistInstallerPath) { - $Properties["VCREDIST_INSTALLER"] = $VCRedistInstallerPath - $Properties["VCREDIST_VERSION"] = $env:VCToolsVersion + $Properties["VCRedistInstaller"] = $VCRedistInstallerPath + $Properties["VSVersion"] = $env:VSCMD_VER } }