]> git.proxmox.com Git - mirror_edk2.git/blobdiff - BaseTools/get_vsvars.bat
UefiCpuPkg: Move AsmRelocateApLoopStart from Mpfuncs.nasm to AmdSev.nasm
[mirror_edk2.git] / BaseTools / get_vsvars.bat
index 9f3759b2a98c1c07fbaeeec4369c7c2b58c88c2a..3beb113be296cfbc7b220b62cc3a1870e01f9103 100644 (file)
 @echo off\r
 set SCRIPT_ERROR=0\r
 if "%1"=="" goto main\r
+if /I "%1"=="VS2019" goto VS2019Vars\r
 if /I "%1"=="VS2017" goto VS2017Vars\r
 if /I "%1"=="VS2015" goto VS2015Vars\r
 if /I "%1"=="VS2013" goto VS2013Vars\r
 if /I "%1"=="VS2012" goto VS2012Vars\r
 \r
 :set_vsvars\r
-for /f "usebackq tokens=1* delims=: " %%i in (`%*`) do (\r
-  if /i "%%i"=="installationPath" call "%%j\VC\Auxiliary\Build\vcvars32.bat"\r
-)\r
+if defined VCINSTALLDIR goto :EOF\r
+  call %* > vswhereInfo\r
+  for /f "usebackq tokens=1* delims=: " %%i in (vswhereInfo) do (\r
+    if /i "%%i"=="installationPath" (\r
+      call "%%j\VC\Auxiliary\Build\vcvars32.bat"\r
+    )\r
+  )\r
+  del vswhereInfo\r
 goto :EOF\r
 \r
 :read_vsvars\r
@@ -42,19 +48,36 @@ REM       (Or invoke the relevant vsvars32 file beforehand).
 \r
 :main\r
 if defined VCINSTALLDIR goto :done\r
+  :VS2019Vars\r
+  if exist "%ProgramFiles(x86)%\Microsoft Visual Studio\Installer\vswhere.exe" (\r
+    if exist "%ProgramFiles(x86)%\Microsoft Visual Studio\2019\BuildTools" (\r
+      call :set_vsvars "%ProgramFiles(x86)%\Microsoft Visual Studio\Installer\vswhere.exe" -products Microsoft.VisualStudio.Product.BuildTools -version 16,17\r
+    ) else (\r
+      call :set_vsvars "%ProgramFiles(x86)%\Microsoft Visual Studio\Installer\vswhere.exe" -version 16,17\r
+    )\r
+  )\r
+  if exist "%ProgramFiles%\Microsoft Visual Studio\Installer\vswhere.exe" (\r
+    if exist "%ProgramFiles%\Microsoft Visual Studio\2019\BuildTools" (\r
+      call :set_vsvars "%ProgramFiles%\Microsoft Visual Studio\Installer\vswhere.exe" -products Microsoft.VisualStudio.Product.BuildTools -version 16,17\r
+    ) else (\r
+      call :set_vsvars "%ProgramFiles%\Microsoft Visual Studio\Installer\vswhere.exe" -version 16,17\r
+    )\r
+  )\r
+  if /I "%1"=="VS2019" goto ToolNotInstall\r
+\r
   :VS2017Vars\r
   if exist "%ProgramFiles(x86)%\Microsoft Visual Studio\Installer\vswhere.exe" (\r
     if exist "%ProgramFiles(x86)%\Microsoft Visual Studio\2017\BuildTools" (\r
-      call :set_vsvars "%ProgramFiles(x86)%\Microsoft Visual Studio\Installer\vswhere.exe" -products Microsoft.VisualStudio.Product.BuildTools\r
+      call :set_vsvars "%ProgramFiles(x86)%\Microsoft Visual Studio\Installer\vswhere.exe" -products Microsoft.VisualStudio.Product.BuildTools -version 15,16\r
     ) else (\r
-      call :set_vsvars "%ProgramFiles(x86)%\Microsoft Visual Studio\Installer\vswhere.exe"\r
+      call :set_vsvars "%ProgramFiles(x86)%\Microsoft Visual Studio\Installer\vswhere.exe" -version 15,16\r
     )\r
   )\r
   if exist "%ProgramFiles%\Microsoft Visual Studio\Installer\vswhere.exe" (\r
     if exist "%ProgramFiles%\Microsoft Visual Studio\2017\BuildTools" (\r
-      call :set_vsvars "%ProgramFiles%\Microsoft Visual Studio\Installer\vswhere.exe" -products Microsoft.VisualStudio.Product.BuildTools\r
+      call :set_vsvars "%ProgramFiles%\Microsoft Visual Studio\Installer\vswhere.exe" -products Microsoft.VisualStudio.Product.BuildTools -version 15,16\r
     ) else (\r
-      call :set_vsvars "%ProgramFiles%\Microsoft Visual Studio\Installer\vswhere.exe"\r
+      call :set_vsvars "%ProgramFiles%\Microsoft Visual Studio\Installer\vswhere.exe" -version 15,16\r
     )\r
   )\r
   if /I "%1"=="VS2017" goto ToolNotInstall\r