mirror of
https://github.com/acidanthera/audk.git
synced 2025-07-30 17:14:07 +02:00
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=1693 This patch is to update edksetup with additional option: VS2017 VS2015 VS2013 VS2012 to setup different VS environment. And will report error if the specified VS tool is not installed. For VS2017, also consider the case that only VS2017 build tool is installed. Cc: Bob Feng <bob.c.feng@intel.com> Cc: Liming Gao <liming.gao@intel.com> Signed-off-by: Dandan Bi <dandan.bi@intel.com> Reviewed-by: Bob Feng <bob.c.feng@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com>
78 lines
2.8 KiB
Batchfile
78 lines
2.8 KiB
Batchfile
@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"=="VS2017" goto VS2017Vars
|
|
if /I "%1"=="VS2015" goto VS2015Vars
|
|
if /I "%1"=="VS2013" goto VS2013Vars
|
|
if /I "%1"=="VS2012" goto VS2012Vars
|
|
|
|
:set_vsvars
|
|
for /f "usebackq tokens=1* delims=: " %%i in (`%*`) do (
|
|
if /i "%%i"=="installationPath" call "%%j\VC\Auxiliary\Build\vcvars32.bat"
|
|
)
|
|
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
|
|
: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
|
|
) else (
|
|
call :set_vsvars "%ProgramFiles(x86)%\Microsoft Visual Studio\Installer\vswhere.exe"
|
|
)
|
|
)
|
|
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
|
|
) else (
|
|
call :set_vsvars "%ProgramFiles%\Microsoft Visual Studio\Installer\vswhere.exe"
|
|
)
|
|
)
|
|
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=
|