mirror of
https://github.com/tianocore/edk2
synced 2026-08-27 00:23:19 -04:00
BaseTools: Remove VS2017 support
Removes Visual Studio 2017 support from BaseTools. Newer toolchains (VS2019, VS2022, and VS2026) are supported in its place. This removes the VS2017 toolchain definitions from tools_def.template, the VS2017 environment setup logic in toolsetup.bat, set_vsprefix_envs.bat, and get_vsvars.bat, and the VS2017 configuration in the WindowsVsToolChain build plugin. Signed-off-by: Michael Kubacki <michael.kubacki@microsoft.com>
This commit is contained in:
parent
3dc01cce24
commit
48a82ffcbd
5 changed files with 6 additions and 298 deletions
|
|
@ -35,19 +35,14 @@
|
|||
# - Add -malign-double to IA32 ASLCC_FLAGS
|
||||
# - Add CLANGDWARF support for LoongArch64
|
||||
#4.00 - Remove VS2015 support
|
||||
#4.01 - Remove VS2017 support
|
||||
#
|
||||
#!VERSION=4.00
|
||||
#!VERSION=4.01
|
||||
|
||||
IDENTIFIER = Default TOOL_CHAIN_CONF
|
||||
|
||||
DEFINE VS_HOST = x86
|
||||
|
||||
DEFINE VS2017_BIN = ENV(VS2017_PREFIX)bin
|
||||
DEFINE VS2017_BIN_HOST = DEF(VS2017_BIN)\HostDEF(VS_HOST)\DEF(VS_HOST)
|
||||
DEFINE VS2017_BIN_IA32 = DEF(VS2017_BIN)\HostDEF(VS_HOST)\x86
|
||||
DEFINE VS2017_BIN_X64 = DEF(VS2017_BIN)\HostDEF(VS_HOST)\x64
|
||||
DEFINE VS2017_BIN_AARCH64 = DEF(VS2017_BIN)\HostDEF(VS_HOST)\arm64
|
||||
|
||||
DEFINE VS2019_BIN = ENV(VS2019_PREFIX)bin
|
||||
DEFINE VS2019_BIN_HOST = DEF(VS2019_BIN)\HostDEF(VS_HOST)\DEF(VS_HOST)
|
||||
DEFINE VS2019_BIN_IA32 = DEF(VS2019_BIN)\HostDEF(VS_HOST)\x86
|
||||
|
|
@ -141,15 +136,6 @@ DEFINE DTC_BIN = ENV(DTC_PREFIX)dtc
|
|||
#
|
||||
# Supported Tool Chains
|
||||
# =====================
|
||||
# VS2017 -win32- Requires:
|
||||
# Microsoft Visual Studio 2017 version 15.2 (15.4 for ARM64) or later
|
||||
# Optional:
|
||||
# Required to build platforms or ACPI tables:
|
||||
# Intel(r) ACPI Compiler (iasl.exe) from
|
||||
# https://acpica.org/downloads
|
||||
# Note:
|
||||
# Building of XIP firmware images for ARM64 is not currently supported (only applications).
|
||||
# /FILEALIGN:4096 and other changes are needed for ARM64 firmware builds.
|
||||
# VS2019 -win32- Requires:
|
||||
# Microsoft Visual Studio 2019 version 16.2 or later
|
||||
# Optional:
|
||||
|
|
@ -227,122 +213,6 @@ DEFINE DTC_BIN = ENV(DTC_PREFIX)dtc
|
|||
#
|
||||
####################################################################################
|
||||
|
||||
####################################################################################
|
||||
# VS2017 - Microsoft Visual Studio 2017 with Intel ASL
|
||||
# ASL - Intel ACPI Source Language Compiler (iasl.exe)
|
||||
####################################################################################
|
||||
# VS2017 - Microsoft Visual Studio 2017 professional Edition with Intel ASL
|
||||
*_VS2017_*_*_FAMILY = MSFT
|
||||
*_VS2017_*_*_DLL = DEF(VS2017_BIN_HOST)
|
||||
|
||||
*_VS2017_*_MAKE_PATH = DEF(VS2017_BIN_HOST)\nmake.exe
|
||||
*_VS2017_*_MAKE_FLAGS = /nologo
|
||||
*_VS2017_*_RC_PATH = DEF(RC_PATH)
|
||||
|
||||
*_VS2017_*_SLINK_FLAGS = /NOLOGO /LTCG
|
||||
*_VS2017_*_APP_FLAGS = /nologo /E /TC
|
||||
*_VS2017_*_PP_FLAGS = /nologo /E /TC /FIAutoGen.h
|
||||
*_VS2017_*_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h
|
||||
*_VS2017_*_DLINK2_FLAGS = /WHOLEARCHIVE
|
||||
*_VS2017_*_ASM16_PATH = DEF(VS2017_BIN_IA32)\ml.exe
|
||||
*_VS2017_*_GENFWHII_FLAGS = --hiipackage
|
||||
*_VS2017_*_DEPS_FLAGS = DEF(MSFT_DEPS_FLAGS)
|
||||
##################
|
||||
# ASL definitions
|
||||
##################
|
||||
*_VS2017_*_ASL_PATH = DEF(WIN_IASL_BIN)
|
||||
*_VS2017_*_ASL_FLAGS = DEF(DEFAULT_WIN_ASL_FLAGS)
|
||||
*_VS2017_*_ASL_OUTFLAGS = DEF(DEFAULT_WIN_ASL_OUTFLAGS)
|
||||
*_VS2017_*_ASLCC_FLAGS = DEF(MSFT_ASLCC_FLAGS)
|
||||
*_VS2017_*_ASLPP_FLAGS = DEF(MSFT_ASLPP_FLAGS)
|
||||
*_VS2017_*_ASLDLINK_FLAGS = DEF(MSFT_ASLDLINK_FLAGS)
|
||||
|
||||
##################
|
||||
# IA32 definitions
|
||||
##################
|
||||
*_VS2017_IA32_CC_PATH = DEF(VS2017_BIN_IA32)\cl.exe
|
||||
*_VS2017_IA32_VFRPP_PATH = DEF(VS2017_BIN_IA32)\cl.exe
|
||||
*_VS2017_IA32_ASLCC_PATH = DEF(VS2017_BIN_IA32)\cl.exe
|
||||
*_VS2017_IA32_ASLPP_PATH = DEF(VS2017_BIN_IA32)\cl.exe
|
||||
*_VS2017_IA32_SLINK_PATH = DEF(VS2017_BIN_IA32)\lib.exe
|
||||
*_VS2017_IA32_DLINK_PATH = DEF(VS2017_BIN_IA32)\link.exe
|
||||
*_VS2017_IA32_ASLDLINK_PATH= DEF(VS2017_BIN_IA32)\link.exe
|
||||
*_VS2017_IA32_APP_PATH = DEF(VS2017_BIN_IA32)\cl.exe
|
||||
*_VS2017_IA32_PP_PATH = DEF(VS2017_BIN_IA32)\cl.exe
|
||||
*_VS2017_IA32_ASM_PATH = DEF(VS2017_BIN_IA32)\ml.exe
|
||||
|
||||
DEBUG_VS2017_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Z7 /Gw
|
||||
RELEASE_VS2017_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gw
|
||||
NOOPT_VS2017_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Z7 /Od
|
||||
|
||||
DEBUG_VS2017_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi
|
||||
RELEASE_VS2017_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd
|
||||
NOOPT_VS2017_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi
|
||||
|
||||
DEBUG_VS2017_IA32_NASM_FLAGS = -Ox -f win32 -g
|
||||
RELEASE_VS2017_IA32_NASM_FLAGS = -Ox -f win32
|
||||
NOOPT_VS2017_IA32_NASM_FLAGS = -O0 -f win32 -g
|
||||
|
||||
DEBUG_VS2017_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG
|
||||
RELEASE_VS2017_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data
|
||||
NOOPT_VS2017_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG
|
||||
|
||||
##################
|
||||
# X64 definitions
|
||||
##################
|
||||
*_VS2017_X64_CC_PATH = DEF(VS2017_BIN_X64)\cl.exe
|
||||
*_VS2017_X64_PP_PATH = DEF(VS2017_BIN_X64)\cl.exe
|
||||
*_VS2017_X64_APP_PATH = DEF(VS2017_BIN_X64)\cl.exe
|
||||
*_VS2017_X64_VFRPP_PATH = DEF(VS2017_BIN_X64)\cl.exe
|
||||
*_VS2017_X64_ASLCC_PATH = DEF(VS2017_BIN_X64)\cl.exe
|
||||
*_VS2017_X64_ASLPP_PATH = DEF(VS2017_BIN_X64)\cl.exe
|
||||
*_VS2017_X64_ASM_PATH = DEF(VS2017_BIN_X64)\ml64.exe
|
||||
*_VS2017_X64_SLINK_PATH = DEF(VS2017_BIN_X64)\lib.exe
|
||||
*_VS2017_X64_DLINK_PATH = DEF(VS2017_BIN_X64)\link.exe
|
||||
*_VS2017_X64_ASLDLINK_PATH = DEF(VS2017_BIN_X64)\link.exe
|
||||
|
||||
DEBUG_VS2017_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Z7 /Gw
|
||||
RELEASE_VS2017_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Gw
|
||||
NOOPT_VS2017_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Z7 /Od
|
||||
|
||||
DEBUG_VS2017_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi
|
||||
RELEASE_VS2017_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd
|
||||
NOOPT_VS2017_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi
|
||||
|
||||
DEBUG_VS2017_X64_NASM_FLAGS = -Ox -f win64 -g
|
||||
RELEASE_VS2017_X64_NASM_FLAGS = -Ox -f win64
|
||||
NOOPT_VS2017_X64_NASM_FLAGS = -O0 -f win64 -g
|
||||
|
||||
DEBUG_VS2017_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4281 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG
|
||||
RELEASE_VS2017_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4281 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data
|
||||
NOOPT_VS2017_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4281 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG
|
||||
|
||||
#####################
|
||||
# AARCH64 definitions
|
||||
#####################
|
||||
*_VS2017_AARCH64_CC_PATH = DEF(VS2017_BIN_AARCH64)\cl.exe
|
||||
*_VS2017_AARCH64_VFRPP_PATH = DEF(VS2017_BIN_AARCH64)\cl.exe
|
||||
*_VS2017_AARCH64_SLINK_PATH = DEF(VS2017_BIN_AARCH64)\lib.exe
|
||||
*_VS2017_AARCH64_DLINK_PATH = DEF(VS2017_BIN_AARCH64)\link.exe
|
||||
*_VS2017_AARCH64_APP_PATH = DEF(VS2017_BIN_AARCH64)\cl.exe
|
||||
*_VS2017_AARCH64_PP_PATH = DEF(VS2017_BIN_AARCH64)\cl.exe
|
||||
*_VS2017_AARCH64_ASM_PATH = DEF(VS2017_BIN_AARCH64)\armasm64.exe
|
||||
*_VS2017_AARCH64_ASLCC_PATH = DEF(VS2017_BIN_AARCH64)\cl.exe
|
||||
*_VS2017_AARCH64_ASLPP_PATH = DEF(VS2017_BIN_AARCH64)\cl.exe
|
||||
*_VS2017_AARCH64_ASLDLINK_PATH = DEF(VS2017_BIN_AARCH64)\link.exe
|
||||
|
||||
DEBUG_VS2017_AARCH64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gw /Oi-
|
||||
RELEASE_VS2017_AARCH64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gw /Oi-
|
||||
NOOPT_VS2017_AARCH64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Od /Oi-
|
||||
|
||||
DEBUG_VS2017_AARCH64_ASM_FLAGS = /nologo /g
|
||||
RELEASE_VS2017_AARCH64_ASM_FLAGS = /nologo
|
||||
NOOPT_VS2017_AARCH64_ASM_FLAGS = /nologo
|
||||
|
||||
DEBUG_VS2017_AARCH64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:ARM64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /DRIVER /DEBUG
|
||||
RELEASE_VS2017_AARCH64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:ARM64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /DRIVER /MERGE:.rdata=.data
|
||||
NOOPT_VS2017_AARCH64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:ARM64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /DRIVER /DEBUG
|
||||
|
||||
####################################################################################
|
||||
# VS2019 - Microsoft Visual Studio 2019 with Intel ASL
|
||||
# ASL - Intel ACPI Source Language Compiler (iasl.exe)
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
# @file WindowsVsToolChain.py
|
||||
# Plugin to configure the environment for the VS2017, VS2019, VS2022, and VS2026 toolchains
|
||||
# Plugin to configure the environment for the VS2019, VS2022, and VS2026 toolchains
|
||||
#
|
||||
# This plugin also runs for CLANGPDB toolchain on Windows as that toolchain
|
||||
# leverages nmake from VS and needs to the SDK paths for unit tests
|
||||
|
|
@ -30,86 +30,14 @@ class WindowsVsToolChain(IUefiBuildPlugin):
|
|||
"UCRTVersion", "WindowsLibPath", "WindowsSdkBinPath", "WindowsSdkDir", "WindowsSdkVerBinPath",
|
||||
"WindowsSDKVersion", "WindowsSDKLibVersion", "VCToolsInstallDir", "Path"]
|
||||
|
||||
#
|
||||
# VS2017 - Follow VS2017 where there is potential for many versions of the tools.
|
||||
# If a specific version is required then the user must set both env variables:
|
||||
# VS150INSTALLPATH: base install path on system to VC install dir. Here you will find the VC folder, etc
|
||||
# VS150TOOLVER: version number for the VC compiler tools
|
||||
# VS2017_PREFIX: path to MSVC compiler folder with trailing slash (can be used instead of two vars above)
|
||||
# VS2017_HOST: set the host architecture to use for host tools, and host libs, etc
|
||||
if thebuilder.env.GetValue("TOOL_CHAIN_TAG") == "VS2017":
|
||||
|
||||
# check to see if host is configured
|
||||
# HostType for VS2017 should be (defined in tools_def):
|
||||
# x86 == 32bit Intel
|
||||
# x64 == 64bit Intel
|
||||
# arm64 == 64bit Arm
|
||||
#
|
||||
HostType = shell_environment.GetEnvironment().get_shell_var("VS2017_HOST")
|
||||
if HostType is not None:
|
||||
HostType = HostType.lower()
|
||||
self.Logger.info(
|
||||
f"HOST TYPE defined by environment. Host Type is {HostType}")
|
||||
else:
|
||||
HostInfo = GetHostInfo()
|
||||
if HostInfo.arch == "x86":
|
||||
if HostInfo.bit == "32":
|
||||
HostType = "x86"
|
||||
elif HostInfo.bit == "64":
|
||||
HostType = "x64"
|
||||
else:
|
||||
raise NotImplementedError()
|
||||
|
||||
# VS2017_HOST options are not exactly the same as QueryVcVariables. This translates.
|
||||
VC_HOST_ARCH_TRANSLATOR = {
|
||||
"x86": "x86", "x64": "AMD64", "arm64": "not supported"}
|
||||
|
||||
# check to see if full path already configured
|
||||
if shell_environment.GetEnvironment().get_shell_var("VS2017_PREFIX") != None:
|
||||
self.Logger.info("VS2017_PREFIX is already set.")
|
||||
|
||||
else:
|
||||
install_path = self._get_vs_install_path(
|
||||
"VS2017".lower(), "VS150INSTALLPATH")
|
||||
vc_ver = self._get_vc_version(install_path, "VS150TOOLVER")
|
||||
|
||||
if install_path is None or vc_ver is None:
|
||||
self.Logger.error(
|
||||
"Failed to configure environment for VS2017")
|
||||
return -1
|
||||
|
||||
version_aggregator.GetVersionAggregator().ReportVersion(
|
||||
"Visual Studio Install Path", install_path, version_aggregator.VersionTypes.INFO)
|
||||
version_aggregator.GetVersionAggregator().ReportVersion(
|
||||
"VC Version", vc_ver, version_aggregator.VersionTypes.TOOL)
|
||||
|
||||
# make VS2017_PREFIX to align with tools_def.txt
|
||||
prefix = os.path.join(install_path, "VC",
|
||||
"Tools", "MSVC", vc_ver)
|
||||
prefix = prefix + os.path.sep
|
||||
shell_environment.GetEnvironment().set_shell_var("VS2017_PREFIX", prefix)
|
||||
shell_environment.GetEnvironment().set_shell_var("VS2017_HOST", HostType)
|
||||
|
||||
shell_env = shell_environment.GetEnvironment()
|
||||
# Use the tools lib to determine the correct values for the vars that interest us.
|
||||
vs_vars = locate_tools.QueryVcVariables(
|
||||
interesting_keys, VC_HOST_ARCH_TRANSLATOR[HostType], vs_version="vs2017")
|
||||
for (k, v) in vs_vars.items():
|
||||
shell_env.set_shell_var(k, v)
|
||||
|
||||
# now confirm it exists
|
||||
if not os.path.exists(shell_environment.GetEnvironment().get_shell_var("VS2017_PREFIX")):
|
||||
self.Logger.error("Path for VS2017 toolchain is invalid")
|
||||
return -2
|
||||
|
||||
#
|
||||
# VS2019 - Follow VS2019 where there is potential for many versions of the tools.
|
||||
# If a specific version is required then the user must set both env variables:
|
||||
# VS160INSTALLPATH: base install path on system to VC install dir. Here you will find the VC folder, etc
|
||||
# VS160TOOLVER: version number for the VC compiler tools
|
||||
# VS2019_PREFIX: path to MSVC compiler folder with trailing slash (can be used instead of two vars above)
|
||||
# VS2017_HOST: set the host architecture to use for host tools, and host libs, etc
|
||||
elif thebuilder.env.GetValue("TOOL_CHAIN_TAG") == "VS2019":
|
||||
# VS2019_HOST: set the host architecture to use for host tools, and host libs, etc
|
||||
if thebuilder.env.GetValue("TOOL_CHAIN_TAG") == "VS2019":
|
||||
|
||||
# check to see if host is configured
|
||||
# HostType for VS2019 should be (defined in tools_def):
|
||||
|
|
|
|||
|
|
@ -11,7 +11,6 @@
|
|||
set SCRIPT_ERROR=0
|
||||
if "%1"=="" goto main
|
||||
if /I "%1"=="VS2019" goto VS2019Vars
|
||||
if /I "%1"=="VS2017" goto VS2017Vars
|
||||
|
||||
:set_vsvars
|
||||
if defined VCINSTALLDIR goto :EOF
|
||||
|
|
@ -62,22 +61,5 @@ if defined VCINSTALLDIR goto :done
|
|||
)
|
||||
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
|
||||
|
||||
:done
|
||||
set GET_VSVARS_BAT_CHECK_DIR=
|
||||
|
|
|
|||
|
|
@ -21,7 +21,6 @@ goto :EOF
|
|||
if /I "%1"=="VS2026" goto SetVS2026
|
||||
if /I "%1"=="VS2022" goto SetVS2022
|
||||
if /I "%1"=="VS2019" goto SetVS2019
|
||||
if /I "%1"=="VS2017" goto SetVS2017
|
||||
|
||||
if defined VS71COMNTOOLS (
|
||||
if not defined VS2003_PREFIX (
|
||||
|
|
@ -29,67 +28,6 @@ if defined VS71COMNTOOLS (
|
|||
)
|
||||
)
|
||||
|
||||
:SetVS2017
|
||||
if not defined VS150COMNTOOLS (
|
||||
@REM clear two envs so that vcvars32.bat can run successfully.
|
||||
set VSINSTALLDIR=
|
||||
set VCToolsVersion=
|
||||
if exist "%ProgramFiles(x86)%\Microsoft Visual Studio\Installer\vswhere.exe" (
|
||||
if exist "%ProgramFiles(x86)%\Microsoft Visual Studio\2017\BuildTools" (
|
||||
call "%ProgramFiles(x86)%\Microsoft Visual Studio\Installer\vswhere.exe" -products Microsoft.VisualStudio.Product.BuildTools -version 15,16 > vswhereInfo
|
||||
for /f "usebackq tokens=1* delims=: " %%i in (vswhereInfo) do (
|
||||
if /i "%%i"=="installationPath" call "%%j\VC\Auxiliary\Build\vcvars32.bat"
|
||||
)
|
||||
del vswhereInfo
|
||||
) else (
|
||||
call "%ProgramFiles(x86)%\Microsoft Visual Studio\Installer\vswhere.exe" -version 15,16 > vswhereInfo
|
||||
for /f "usebackq tokens=1* delims=: " %%i in (vswhereInfo) do (
|
||||
if /i "%%i"=="installationPath" call "%%j\VC\Auxiliary\Build\vcvars32.bat"
|
||||
)
|
||||
del vswhereInfo
|
||||
)
|
||||
) else if exist "%ProgramFiles%\Microsoft Visual Studio\Installer\vswhere.exe" (
|
||||
if exist "%ProgramFiles%\Microsoft Visual Studio\2017\BuildTools" (
|
||||
call "%ProgramFiles%\Microsoft Visual Studio\Installer\vswhere.exe" -products Microsoft.VisualStudio.Product.BuildTools -version 15,16 > vswhereInfo
|
||||
for /f "usebackq tokens=1* delims=: " %%i in (vswhereInfo) do (
|
||||
if /i "%%i"=="installationPath" call "%%j\VC\Auxiliary\Build\vcvars32.bat"
|
||||
)
|
||||
del vswhereInfo
|
||||
) else (
|
||||
call "%ProgramFiles%\Microsoft Visual Studio\Installer\vswhere.exe" -version 15,16 > vswhereInfo
|
||||
for /f "usebackq tokens=1* delims=: " %%i in (vswhereInfo) do (
|
||||
if /i "%%i"=="installationPath" call "%%j\VC\Auxiliary\Build\vcvars32.bat"
|
||||
)
|
||||
del vswhereInfo
|
||||
)
|
||||
) else (
|
||||
if /I "%1"=="VS2017" goto ToolNotInstall
|
||||
goto SetWinDDK
|
||||
)
|
||||
)
|
||||
|
||||
if defined VCToolsInstallDir (
|
||||
if not defined VS2017_PREFIX (
|
||||
set "VS2017_PREFIX=%VCToolsInstallDir%"
|
||||
)
|
||||
if not defined WINSDK10_PREFIX (
|
||||
if defined WindowsSdkVerBinPath (
|
||||
set "WINSDK10_PREFIX=%WindowsSdkVerBinPath%"
|
||||
) else if exist "%ProgramFiles(x86)%\Windows Kits\10\bin" (
|
||||
set "WINSDK10_PREFIX=%ProgramFiles(x86)%\Windows Kits\10\bin\"
|
||||
) else if exist "%ProgramFiles%\Windows Kits\10\bin" (
|
||||
set "WINSDK10_PREFIX=%ProgramFiles%\Windows Kits\10\bin\"
|
||||
)
|
||||
)
|
||||
)
|
||||
if not defined WINSDK_PATH_FOR_RC_EXE (
|
||||
if defined WINSDK10_PREFIX (
|
||||
set "WINSDK_PATH_FOR_RC_EXE=%WINSDK10_PREFIX%x86"
|
||||
)
|
||||
)
|
||||
|
||||
if /I "%1"=="VS2017" goto SetWinDDK
|
||||
|
||||
:SetVS2019
|
||||
if not defined VS160COMNTOOLS (
|
||||
@REM clear two envs so that vcvars32.bat can run successfully.
|
||||
|
|
|
|||
|
|
@ -67,12 +67,6 @@ if /I "%1"=="/?" goto Usage
|
|||
set VSTool=VS2019
|
||||
goto loop
|
||||
)
|
||||
if /I "%1"=="VS2017" (
|
||||
shift
|
||||
set VS2017=TRUE
|
||||
set VSTool=VS2017
|
||||
goto loop
|
||||
)
|
||||
if "%1"=="" goto setup_workspace
|
||||
if exist %1 (
|
||||
if not defined BASE_TOOLS_PATH (
|
||||
|
|
@ -326,8 +320,6 @@ if defined VS2026 (
|
|||
call %EDK_TOOLS_PATH%\set_vsprefix_envs.bat VS2022
|
||||
) else if defined VS2019 (
|
||||
call %EDK_TOOLS_PATH%\set_vsprefix_envs.bat VS2019
|
||||
) else if defined VS2017 (
|
||||
call %EDK_TOOLS_PATH%\set_vsprefix_envs.bat VS2017
|
||||
) else if not defined BASETOOLS_MINGW_BUILD (
|
||||
call %EDK_TOOLS_PATH%\set_vsprefix_envs.bat
|
||||
call %EDK_TOOLS_PATH%\get_vsvars.bat
|
||||
|
|
@ -581,7 +573,7 @@ endlocal
|
|||
|
||||
:Usage
|
||||
@echo.
|
||||
@echo Usage: "%0 [-h | -help | --help | /h | /help | /?] [ Rebuild | ForceRebuild ] [Reconfig] [Mingw-w64] [base_tools_path [edk_tools_path]] [VS2026] [VS2022] [VS2019] [VS2017]"
|
||||
@echo Usage: "%0 [-h | -help | --help | /h | /help | /?] [ Rebuild | ForceRebuild ] [Reconfig] [Mingw-w64] [base_tools_path [edk_tools_path]] [VS2026] [VS2022] [VS2019]"
|
||||
@echo.
|
||||
@echo base_tools_path BaseTools project path, BASE_TOOLS_PATH will be set to this path.
|
||||
@echo edk_tools_path EDK_TOOLS_PATH will be set to this path.
|
||||
|
|
@ -591,7 +583,6 @@ endlocal
|
|||
@echo whether they have been updated or not.
|
||||
@echo Reconfig Reinstall target.txt, tools_def.txt and build_rule.txt.
|
||||
@echo Mingw-w64 Build BaseTools binaries using mingw-w64.
|
||||
@echo VS2017 Set the env for VS2017 build.
|
||||
@echo VS2019 Set the env for VS2019 build.
|
||||
@echo VS2022 Set the env for VS2022 build.
|
||||
@echo VS2026 Set the env for VS2026 build.
|
||||
|
|
@ -604,7 +595,6 @@ set RECONFIG=
|
|||
set VS2026=
|
||||
set VS2022=
|
||||
set VS2019=
|
||||
set VS2017=
|
||||
set VSTool=
|
||||
set PYTHON_VER_MAJOR=
|
||||
set PYTHON_VER_MINOR=
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue