diff --git a/BaseTools/Conf/tools_def.template b/BaseTools/Conf/tools_def.template index 5b1c52984e..791d7e7508 100644 --- a/BaseTools/Conf/tools_def.template +++ b/BaseTools/Conf/tools_def.template @@ -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) diff --git a/BaseTools/Plugin/WindowsVsToolChain/WindowsVsToolChain.py b/BaseTools/Plugin/WindowsVsToolChain/WindowsVsToolChain.py index 2e6b60b22a..188ecf21c6 100644 --- a/BaseTools/Plugin/WindowsVsToolChain/WindowsVsToolChain.py +++ b/BaseTools/Plugin/WindowsVsToolChain/WindowsVsToolChain.py @@ -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): diff --git a/BaseTools/get_vsvars.bat b/BaseTools/get_vsvars.bat index 87e2a1e4e5..1ed40758be 100644 --- a/BaseTools/get_vsvars.bat +++ b/BaseTools/get_vsvars.bat @@ -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= diff --git a/BaseTools/set_vsprefix_envs.bat b/BaseTools/set_vsprefix_envs.bat index e6bcf33d31..74a4dbf4b2 100644 --- a/BaseTools/set_vsprefix_envs.bat +++ b/BaseTools/set_vsprefix_envs.bat @@ -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. diff --git a/BaseTools/toolsetup.bat b/BaseTools/toolsetup.bat index 3b8486a30a..3cc8517ae5 100755 --- a/BaseTools/toolsetup.bat +++ b/BaseTools/toolsetup.bat @@ -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=