mirror of
https://github.com/microsoft/vcpkg.git
synced 2024-12-15 10:52:38 +08:00
b295670e4b
``` function Convert-Control { Param($full) .\vcpkg.exe format-manifest $full $root = $full.Substring(0, $full.Length - 7) # CONTROL $new = $root + 'vcpkg.json' $content = Get-Content -Raw $new $asJson = ConvertFrom-Json $content -AsHashtable -Depth 100 $oldVersion = $asJson['port-version'] if ($null -eq $oldVersion) { $oldVersionFull = $asJson['version-string'] Write-Host "Got version $oldVersionFull" $match = [System.Text.RegularExpressions.Regex]::Match($oldVersionFull, '^(.+)-(\d+)$') if ($match.Success -and -not [System.Text.RegularExpressions.Regex]::IsMatch($oldVersionFull, '^\d\d\d\d-\d\d-\d\d$')) { $newFullVersion = [string]$match.Groups[1].Value $oldVersion = [int]$match.Groups[2].Value Write-Host "newFullVersion $newFullVersion oldVersion $oldVersion" $newVersion = $oldVersion + 1 $asJson['version-string'] = $newFullVersion Write-Host "Previous version for $full extracted from version field -- setting version-string $newFullVersion and port-version $newVersion" } else { Write-Host "No previous version for $full -- setting 1" $newVersion = 1 } } else { $newVersion = [int]$oldVersion + 1 Write-Host "New version for $full : $newVersion" } $asJson['port-version'] = $newVersion $content = ConvertTo-Json $asJson -Depth 100 Set-Content -Path $new -Value $content .\vcpkg.exe format-manifest $new } Get-ChildItem ports\CONTROL -Recurse | Foreach-Object { Convert-Control $_.FullName } git commit -am "this message" .\vcpkg.exe x-add-version -all git commit -a --amend ```
20 lines
526 B
JSON
20 lines
526 B
JSON
{
|
|
"versions": [
|
|
{
|
|
"git-tree": "d8515ae9e25008fe4d8c04287aba45679d31eac5",
|
|
"version-string": "9b4128ee1153e78288a1b5433e2c06a0d47a4c4e",
|
|
"port-version": 2
|
|
},
|
|
{
|
|
"git-tree": "20a6a52cad8fb2db9aa7b023c09ce53eb2ed5343",
|
|
"version-string": "9b4128ee1153e78288a1b5433e2c06a0d47a4c4e-1",
|
|
"port-version": 0
|
|
},
|
|
{
|
|
"git-tree": "50425b6f2870af272be9014fa545368b8040a155",
|
|
"version-string": "9b4128ee1153e78288a1b5433e2c06a0d47a4c4e",
|
|
"port-version": 0
|
|
}
|
|
]
|
|
}
|