diff options
| author | Ethan Morgan <ethan@gweithio.com> | 2026-02-14 16:44:06 +0000 |
|---|---|---|
| committer | Ethan Morgan <ethan@gweithio.com> | 2026-02-14 16:44:06 +0000 |
| commit | 54409423f767d8b1cf30cb7d0efca6b4ca138823 (patch) | |
| tree | d915ac7828703ce4b963efdd9728a1777ba18c1e /vcpkg/scripts/update-vcpkg-tool-metadata.ps1 | |
Diffstat (limited to 'vcpkg/scripts/update-vcpkg-tool-metadata.ps1')
| -rw-r--r-- | vcpkg/scripts/update-vcpkg-tool-metadata.ps1 | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/vcpkg/scripts/update-vcpkg-tool-metadata.ps1 b/vcpkg/scripts/update-vcpkg-tool-metadata.ps1 new file mode 100644 index 0000000..c9794c8 --- /dev/null +++ b/vcpkg/scripts/update-vcpkg-tool-metadata.ps1 @@ -0,0 +1,45 @@ +[CmdletBinding()]
+Param(
+ [Parameter(Mandatory=$true)]
+ [ValidateNotNullOrEmpty()]
+ [string]$Date
+)
+
+[string]$metadata = "VCPKG_TOOL_RELEASE_TAG=$Date`n"
+Set-Content -LiteralPath "$PSScriptRoot\vcpkg-tool-metadata.txt" -Value $metadata -NoNewline -Encoding utf8NoBOM
+& "$PSScriptRoot\bootstrap.ps1"
+[string]$vcpkg = "$PSScriptRoot\..\vcpkg.exe"
+
+# Windows arm64 (VS Code only)
+& $vcpkg x-download "$PSScriptRoot\vcpkg-arm64.exe" `
+ "--url=https://github.com/microsoft/vcpkg-tool/releases/download/$Date/vcpkg-arm64.exe" --skip-sha512
+
+# Linux Binaries
+foreach ($binary in @('macos', 'muslc', 'glibc', 'glibc-arm64')) {
+ $caps = $binary.ToUpperInvariant().Replace('-', '_')
+ & $vcpkg x-download "$PSScriptRoot\vcpkg-$binary" `
+ "--url=https://github.com/microsoft/vcpkg-tool/releases/download/$Date/vcpkg-$binary" --skip-sha512
+ $sha512 = & $vcpkg hash "$PSScriptRoot\vcpkg-$binary"
+ $metadata += "VCPKG_$($caps)_SHA=$sha512`n"
+}
+
+# Source
+$sourceName = "$Date.zip"
+& $vcpkg x-download "$PSScriptRoot\$sourceName" `
+ "--url=https://github.com/microsoft/vcpkg-tool/archive/refs/tags/$Date.zip" --skip-sha512
+$sha512 = & $vcpkg hash "$PSScriptRoot\$sourceName"
+$metadata += "VCPKG_TOOL_SOURCE_SHA=$sha512`n"
+
+# Cleanup
+Remove-Item @(
+ "$PSScriptRoot\vcpkg-arm64.exe",
+ "$PSScriptRoot\vcpkg-macos",
+ "$PSScriptRoot\vcpkg-muslc",
+ "$PSScriptRoot\vcpkg-glibc",
+ "$PSScriptRoot\vcpkg-glibc-arm64",
+ "$PSScriptRoot\$sourceName"
+)
+
+Set-Content -LiteralPath "$PSScriptRoot\vcpkg-tool-metadata.txt" -Value $metadata -NoNewline -Encoding utf8NoBOM
+
+Write-Host "Metadata Written"
|