onnxruntime-extensions/tools/get_vsdevcmd.ps1

33 строки
917 B
PowerShell

# Find all installed Visual Studio with Cmake, and only output the vsdevcmd path of the latest one
PARAM([int]$outputEnv = 0)
$latest_valid_vs = ""
function choose_latter_vs {
param([string]$path)
if ($global:latest_valid_vs -lt $path) {
$cmake_path = $path + "\Common7\IDE\CommonExtensions\Microsoft\CMake\CMake\bin\cmake.exe"
if (Test-Path -Path $cmake_path) {
$global:latest_valid_vs = $path
}
}
}
$vswherepath=[Environment]::GetEnvironmentVariable(
"ProgramFiles(x86)") + "\Microsoft Visual Studio\Installer\vswhere.exe"
$vs_installed = & "$vswherepath" -latest -property installationPath
FOREACH ($line in $vs_installed) {
choose_latter_vs($line.Trim())
}
if ($latest_valid_vs.Length -eq 0) {
exit 1
}
$pathDevCmd = $latest_valid_vs + "\Common7\Tools\vsdevcmd.bat"
if ($outputEnv) {
cmd /q /c "`"$pathDevCmd`" & set"
}
else {
$pathDevCmd
}