Fix number formatting exception with empty NumberGroupSizes array (#18221) (#18667)
[platform/upstream/coreclr.git] / run.cmd
diff --git a/run.cmd b/run.cmd
index 6c761b6..bba6586 100644 (file)
--- a/run.cmd
+++ b/run.cmd
@@ -1,25 +1,17 @@
 @if not defined _echo @echo off
 setlocal
 
-if not defined VisualStudioVersion (
-  if defined VS140COMNTOOLS (
-        if not exist "%VS140COMNTOOLS%\..\IDE\devenv.exe"      goto NoVS
-        if not exist "%VS140COMNTOOLS%\..\..\VC\vcvarsall.bat" goto NoVS
-        if not exist "%VS140COMNTOOLS%\VsDevCmd.bat"                     goto NoVS
-    call "%VS140COMNTOOLS%\VsDevCmd.bat"
-    goto :Run
-  )
-
-  :NoVS
-  echo Error: Visual Studio 2015 required.
-  echo        https://github.com/dotnet/coreclr/blob/master/Documentation/building/windows-instructions.md for build instructions.
-  exit /b 1
-)
+set "__ProjectDir=%~dp0"
+
+call "%__ProjectDir%"\setup_vs_tools.cmd
+
+REM setup_vs_tools.cmd will correctly echo error message.
+if NOT '%ERRORLEVEL%' == '0' exit /b 1
 
-:Run
 :: Clear the 'Platform' env variable for this session, as it's a per-project setting within the build, and
 :: misleading value (such as 'MCD' in HP PCs) may lead to build breakage (issue: #69).
 set Platform=
+set __ProjectDir=
 
 :: Restore the Tools directory
 call %~dp0init-tools.cmd
@@ -29,9 +21,15 @@ if NOT [%ERRORLEVEL%]==[0] (
 
 set _toolRuntime=%~dp0Tools
 set _dotnet=%_toolRuntime%\dotnetcli\dotnet.exe
+set _json=%~dp0config.json
+
+:: run.exe depends on running in the root directory, notably because the config.json specifies
+:: a relative path to the binclash logger
 
+pushd %~dp0
 echo Running: %_dotnet% %_toolRuntime%\run.exe %~dp0config.json %*
-call %_dotnet% %_toolRuntime%\run.exe %~dp0config.json %*
+call %_dotnet% %_toolRuntime%\run.exe "%_json%" %*
+popd
 if NOT [%ERRORLEVEL%]==[0] (
   exit /b 1
 )