summaryrefslogtreecommitdiffstats
path: root/src/VBox/Devices/EFI/Firmware/BaseTools/get_vsvars.bat
diff options
context:
space:
mode:
Diffstat (limited to 'src/VBox/Devices/EFI/Firmware/BaseTools/get_vsvars.bat')
-rw-r--r--src/VBox/Devices/EFI/Firmware/BaseTools/get_vsvars.bat100
1 files changed, 100 insertions, 0 deletions
diff --git a/src/VBox/Devices/EFI/Firmware/BaseTools/get_vsvars.bat b/src/VBox/Devices/EFI/Firmware/BaseTools/get_vsvars.bat
new file mode 100644
index 00000000..3beb113b
--- /dev/null
+++ b/src/VBox/Devices/EFI/Firmware/BaseTools/get_vsvars.bat
@@ -0,0 +1,100 @@
+@REM @file
+@REM Windows batch file to find the Visual Studio set up script
+@REM
+@REM Copyright (c) 2013-2014, ARM Limited. All rights reserved.
+
+@REM SPDX-License-Identifier: BSD-2-Clause-Patent
+@REM
+
+
+@echo off
+set SCRIPT_ERROR=0
+if "%1"=="" goto main
+if /I "%1"=="VS2019" goto VS2019Vars
+if /I "%1"=="VS2017" goto VS2017Vars
+if /I "%1"=="VS2015" goto VS2015Vars
+if /I "%1"=="VS2013" goto VS2013Vars
+if /I "%1"=="VS2012" goto VS2012Vars
+
+:set_vsvars
+if defined VCINSTALLDIR goto :EOF
+ call %* > vswhereInfo
+ for /f "usebackq tokens=1* delims=: " %%i in (vswhereInfo) do (
+ if /i "%%i"=="installationPath" (
+ call "%%j\VC\Auxiliary\Build\vcvars32.bat"
+ )
+ )
+ del vswhereInfo
+goto :EOF
+
+:read_vsvars
+@rem Do nothing if already found, otherwise call vsvars32.bat if there
+if defined VCINSTALLDIR goto :EOF
+ set GET_VSVARS_BAT_CHECK_DIR=%*
+ set GET_VSVARS_BAT_CHECK_DIR=%GET_VSVARS_BAT_CHECK_DIR:"=%
+ if exist "%GET_VSVARS_BAT_CHECK_DIR%\vsvars32.bat" call "%GET_VSVARS_BAT_CHECK_DIR%\vsvars32.bat"
+:vsvars_done
+goto :EOF
+
+
+:ToolNotInstall
+set SCRIPT_ERROR=1
+goto :EOF
+
+REM NOTE: This file will find the most recent Visual Studio installation
+REM apparent from the environment.
+REM To use an older version, modify your environment set up.
+REM (Or invoke the relevant vsvars32 file beforehand).
+
+:main
+if defined VCINSTALLDIR goto :done
+ :VS2019Vars
+ if exist "%ProgramFiles(x86)%\Microsoft Visual Studio\Installer\vswhere.exe" (
+ if exist "%ProgramFiles(x86)%\Microsoft Visual Studio\2019\BuildTools" (
+ call :set_vsvars "%ProgramFiles(x86)%\Microsoft Visual Studio\Installer\vswhere.exe" -products Microsoft.VisualStudio.Product.BuildTools -version 16,17
+ ) else (
+ call :set_vsvars "%ProgramFiles(x86)%\Microsoft Visual Studio\Installer\vswhere.exe" -version 16,17
+ )
+ )
+ if exist "%ProgramFiles%\Microsoft Visual Studio\Installer\vswhere.exe" (
+ if exist "%ProgramFiles%\Microsoft Visual Studio\2019\BuildTools" (
+ call :set_vsvars "%ProgramFiles%\Microsoft Visual Studio\Installer\vswhere.exe" -products Microsoft.VisualStudio.Product.BuildTools -version 16,17
+ ) else (
+ call :set_vsvars "%ProgramFiles%\Microsoft Visual Studio\Installer\vswhere.exe" -version 16,17
+ )
+ )
+ if /I "%1"=="VS2019" goto ToolNotInstall
+
+ :VS2017Vars
+ if exist "%ProgramFiles(x86)%\Microsoft Visual Studio\Installer\vswhere.exe" (
+ if exist "%ProgramFiles(x86)%\Microsoft Visual Studio\2017\BuildTools" (
+ call :set_vsvars "%ProgramFiles(x86)%\Microsoft Visual Studio\Installer\vswhere.exe" -products Microsoft.VisualStudio.Product.BuildTools -version 15,16
+ ) else (
+ call :set_vsvars "%ProgramFiles(x86)%\Microsoft Visual Studio\Installer\vswhere.exe" -version 15,16
+ )
+ )
+ if exist "%ProgramFiles%\Microsoft Visual Studio\Installer\vswhere.exe" (
+ if exist "%ProgramFiles%\Microsoft Visual Studio\2017\BuildTools" (
+ call :set_vsvars "%ProgramFiles%\Microsoft Visual Studio\Installer\vswhere.exe" -products Microsoft.VisualStudio.Product.BuildTools -version 15,16
+ ) else (
+ call :set_vsvars "%ProgramFiles%\Microsoft Visual Studio\Installer\vswhere.exe" -version 15,16
+ )
+ )
+ if /I "%1"=="VS2017" goto ToolNotInstall
+
+ :VS2015Vars
+ if defined VS140COMNTOOLS (call :read_vsvars "%VS140COMNTOOLS%") else (if /I "%1"=="VS2015" goto ToolNotInstall)
+
+ :VS2013Vars
+ if defined VS120COMNTOOLS ( call :read_vsvars "%VS120COMNTOOLS%") else (if /I "%1"=="VS2013" goto ToolNotInstall)
+
+ :VS2012Vars
+ if defined VS110COMNTOOLS (call :read_vsvars "%VS110COMNTOOLS%") else (if /I "%1"=="VS2012" goto ToolNotInstall)
+
+ if defined VS100COMNTOOLS call :read_vsvars "%VS100COMNTOOLS%"
+ if defined VS90COMNTOOLS call :read_vsvars "%VS90COMNTOOLS%"
+ if defined VS80COMNTOOLS call :read_vsvars "%VS80COMNTOOLS%"
+ if defined VS71COMNTOOLS call :read_vsvars "%VS71COMNTOOLS%"
+
+:done
+set GET_VSVARS_BAT_CHECK_DIR=