diff --git a/build.cmd b/build.cmd deleted file mode 100644 index 168f258549..0000000000 --- a/build.cmd +++ /dev/null @@ -1,12 +0,0 @@ -@echo off -FOR /f %%v IN ('dotnet --version') DO set version=%%v -set target_framework= -IF "%version:~0,2%"=="6." (set target_framework=net6.0) -IF "%version:~0,2%"=="7." (set target_framework=net7.0) - -IF [%target_framework%]==[] ( - echo "BUILD FAILURE: .NET 6, .NET 7 SDK required to run build" - exit /b 1 -) - -dotnet run --project build/build.csproj -f %target_framework% -c Release -- %* diff --git a/build.ps1 b/build.ps1 index 8e5ff9c078..a6a37fcbea 100755 --- a/build.ps1 +++ b/build.ps1 @@ -1,14 +1,23 @@ $ErrorActionPreference = "Stop"; -$version = dotnet --version; -if ($version.StartsWith("6.")) { + +$target_framework = "" +$dotnet_sdks = dotnet --list-sdks +$pattern = "\d+\.\d+\.\d+" +$versions = [regex]::Matches($dotnet_sdks, $pattern) + +foreach ($item in $versions) { + if ($item.Value.StartsWith("6.")) { $target_framework = "net6.0" -} -elseif ($version.StartsWith("7.")) { + } + elseif ($item.Value.StartsWith("7.")) { $target_framework = "net7.0" + } } -else { - Write-Output "BUILD FAILURE: .NET 6, .NET 7 SDK required to run build" + +if ([string]::IsNullOrEmpty($target_framework)) { + Write-Output "BUILD FAILURE: .NET 6 or .NET 7 SDK required to run build" exit 1 } +Write-Output "Using $target_framework" dotnet run --project build/build.csproj -f $target_framework -c Release -- $args