]> git.proxmox.com Git - mirror_edk2.git/blame - BaseTools/set_vsprefix_envs.bat
UefiCpuPkg: Move AsmRelocateApLoopStart from Mpfuncs.nasm to AmdSev.nasm
[mirror_edk2.git] / BaseTools / set_vsprefix_envs.bat
CommitLineData
40d7406f
YZ
1@REM @file\r
2@REM This stand-alone program is typically called by the toolsetup.bat file,\r
3@REM however it may be executed directly from the BaseTools project folder\r
4@REM if the file is not executed within a WORKSPACE\BaseTools folder.\r
5@REM\r
a5110b89 6@REM Copyright (c) 2016-2020, Intel Corporation. All rights reserved.<BR>\r
40d7406f 7@REM\r
2e351cbe 8@REM SPDX-License-Identifier: BSD-2-Clause-Patent\r
40d7406f
YZ
9@REM\r
10\r
11@echo off\r
12pushd .\r
6759212f
DB
13set SCRIPT_ERROR=0\r
14goto main\r
15\r
16:ToolNotInstall\r
17set SCRIPT_ERROR=1\r
18goto :EOF\r
19\r
20:main\r
670c903a 21if /I "%1"=="VS2019" goto SetVS2019\r
6759212f
DB
22if /I "%1"=="VS2017" goto SetVS2017\r
23if /I "%1"=="VS2015" goto SetVS2015\r
24if /I "%1"=="VS2013" goto SetVS2013\r
25if /I "%1"=="VS2012" goto SetVS2012\r
40d7406f
YZ
26\r
27if defined VS71COMNTOOLS (\r
28 if not defined VS2003_PREFIX (\r
29 set "VS2003_PREFIX=%VS71COMNTOOLS:~0,-14%"\r
30 )\r
31)\r
32\r
33if defined VS80COMNTOOLS (\r
34 if not defined VS2005_PREFIX (\r
35 set "VS2005_PREFIX=%VS80COMNTOOLS:~0,-14%"\r
36 )\r
37)\r
38\r
39if defined VS90COMNTOOLS (\r
40 if not defined VS2008_PREFIX (\r
41 set "VS2008_PREFIX=%VS90COMNTOOLS:~0,-14%"\r
42 )\r
43 if not defined WINSDK_PREFIX (\r
44 set "WINSDK_PREFIX=c:\Program Files\Microsoft SDKs\Windows\v6.0A\bin\"\r
45 )\r
46 if not defined WINSDKx86_PREFIX (\r
47 set "WINSDKx86_PREFIX=c:\Program Files (x86)\Microsoft SDKs\Windows\v6.0A\bin\"\r
48 )\r
49)\r
50\r
51if defined VS100COMNTOOLS (\r
52 if not defined VS2010_PREFIX (\r
53 set "VS2010_PREFIX=%VS100COMNTOOLS:~0,-14%"\r
54 )\r
55 if not defined WINSDK7_PREFIX (\r
56 set "WINSDK7_PREFIX=c:\Program Files\Microsoft SDKs\Windows\v7.0A\Bin\"\r
57 )\r
58 if not defined WINSDK7x86_PREFIX (\r
59 set "WINSDK7x86_PREFIX=c:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin\"\r
60 )\r
61)\r
62\r
6759212f 63:SetVS2012\r
40d7406f
YZ
64if defined VS110COMNTOOLS (\r
65 if not defined VS2012_PREFIX (\r
66 set "VS2012_PREFIX=%VS110COMNTOOLS:~0,-14%"\r
67 )\r
68 if not defined WINSDK71_PREFIX (\r
69 set "WINSDK71_PREFIX=c:\Program Files\Microsoft SDKs\Windows\v7.1A\Bin\"\r
70 )\r
71 if not defined WINSDK71x86_PREFIX (\r
72 set "WINSDK71x86_PREFIX=c:\Program Files (x86)\Microsoft SDKs\Windows\v7.1A\Bin\"\r
73 )\r
6759212f
DB
74) else (\r
75 if /I "%1"=="VS2012" goto ToolNotInstall\r
40d7406f 76)\r
6759212f 77if /I "%1"=="VS2012" goto SetWinDDK\r
40d7406f 78\r
6759212f 79:SetVS2013\r
40d7406f
YZ
80if defined VS120COMNTOOLS (\r
81 if not defined VS2013_PREFIX (\r
82 set "VS2013_PREFIX=%VS120COMNTOOLS:~0,-14%"\r
83 )\r
84 if not defined WINSDK8_PREFIX (\r
85 set "WINSDK8_PREFIX=c:\Program Files\Windows Kits\8.0\bin\"\r
86 )\r
87 if not defined WINSDK8x86_PREFIX (\r
88 set "WINSDK8x86_PREFIX=c:\Program Files (x86)\Windows Kits\8.0\bin\"\r
89 )\r
6759212f
DB
90) else (\r
91 if /I "%1"=="VS2013" goto ToolNotInstall\r
40d7406f 92)\r
6759212f 93if /I "%1"=="VS2013" goto SetWinDDK\r
40d7406f 94\r
6759212f 95:SetVS2015\r
40d7406f
YZ
96if defined VS140COMNTOOLS (\r
97 if not defined VS2015_PREFIX (\r
98 set "VS2015_PREFIX=%VS140COMNTOOLS:~0,-14%"\r
99 )\r
100 if not defined WINSDK81_PREFIX (\r
101 set "WINSDK81_PREFIX=c:\Program Files\Windows Kits\8.1\bin\"\r
102 )\r
103 if not defined WINSDK81x86_PREFIX (\r
104 set "WINSDK81x86_PREFIX=c:\Program Files (x86)\Windows Kits\8.1\bin\"\r
105 )\r
6759212f
DB
106) else (\r
107 if /I "%1"=="VS2015" goto ToolNotInstall\r
40d7406f 108)\r
6759212f 109if /I "%1"=="VS2015" goto SetWinDDK\r
40d7406f 110\r
a5110b89
LG
111:SetVS2017\r
112if not defined VS150COMNTOOLS (\r
24758e99
LG
113 @REM clear two envs so that vcvars32.bat can run successfully.\r
114 set VSINSTALLDIR=\r
115 set VCToolsVersion=\r
670c903a 116 if exist "%ProgramFiles(x86)%\Microsoft Visual Studio\Installer\vswhere.exe" (\r
a5110b89
LG
117 if exist "%ProgramFiles(x86)%\Microsoft Visual Studio\2017\BuildTools" (\r
118 call "%ProgramFiles(x86)%\Microsoft Visual Studio\Installer\vswhere.exe" -products Microsoft.VisualStudio.Product.BuildTools -version 15,16 > vswhereInfo\r
670c903a
CCJ
119 for /f "usebackq tokens=1* delims=: " %%i in (vswhereInfo) do (\r
120 if /i "%%i"=="installationPath" call "%%j\VC\Auxiliary\Build\vcvars32.bat"\r
121 )\r
122 del vswhereInfo\r
123 ) else (\r
a5110b89 124 call "%ProgramFiles(x86)%\Microsoft Visual Studio\Installer\vswhere.exe" -version 15,16 > vswhereInfo\r
670c903a
CCJ
125 for /f "usebackq tokens=1* delims=: " %%i in (vswhereInfo) do (\r
126 if /i "%%i"=="installationPath" call "%%j\VC\Auxiliary\Build\vcvars32.bat"\r
127 )\r
128 del vswhereInfo\r
129 )\r
130 ) else if exist "%ProgramFiles%\Microsoft Visual Studio\Installer\vswhere.exe" (\r
a5110b89
LG
131 if exist "%ProgramFiles%\Microsoft Visual Studio\2017\BuildTools" (\r
132 call "%ProgramFiles%\Microsoft Visual Studio\Installer\vswhere.exe" -products Microsoft.VisualStudio.Product.BuildTools -version 15,16 > vswhereInfo\r
670c903a
CCJ
133 for /f "usebackq tokens=1* delims=: " %%i in (vswhereInfo) do (\r
134 if /i "%%i"=="installationPath" call "%%j\VC\Auxiliary\Build\vcvars32.bat"\r
135 )\r
136 del vswhereInfo\r
137 ) else (\r
a5110b89 138 call "%ProgramFiles%\Microsoft Visual Studio\Installer\vswhere.exe" -version 15,16 > vswhereInfo\r
670c903a
CCJ
139 for /f "usebackq tokens=1* delims=: " %%i in (vswhereInfo) do (\r
140 if /i "%%i"=="installationPath" call "%%j\VC\Auxiliary\Build\vcvars32.bat"\r
141 )\r
142 del vswhereInfo\r
143 )\r
144 ) else (\r
a5110b89 145 if /I "%1"=="VS2017" goto ToolNotInstall\r
670c903a
CCJ
146 goto SetWinDDK\r
147 )\r
148)\r
149\r
150if defined VCToolsInstallDir (\r
a5110b89
LG
151 if not defined VS2017_PREFIX (\r
152 set "VS2017_PREFIX=%VCToolsInstallDir%"\r
670c903a
CCJ
153 )\r
154 if not defined WINSDK10_PREFIX (\r
155 if defined WindowsSdkVerBinPath (\r
156 set "WINSDK10_PREFIX=%WindowsSdkVerBinPath%"\r
157 ) else if exist "%ProgramFiles(x86)%\Windows Kits\10\bin" (\r
158 set "WINSDK10_PREFIX=%ProgramFiles(x86)%\Windows Kits\10\bin\"\r
159 ) else if exist "%ProgramFiles%\Windows Kits\10\bin" (\r
160 set "WINSDK10_PREFIX=%ProgramFiles%\Windows Kits\10\bin\"\r
161 )\r
162 )\r
163)\r
7569e35b
SB
164if not defined WINSDK_PATH_FOR_RC_EXE (\r
165 if defined WINSDK10_PREFIX (\r
166 set "WINSDK_PATH_FOR_RC_EXE=%WINSDK10_PREFIX%x86"\r
167 )\r
168)\r
670c903a 169\r
7f7f511c
LG
170if /I "%1"=="VS2017" goto SetWinDDK\r
171\r
a5110b89
LG
172:SetVS2019\r
173if not defined VS160COMNTOOLS (\r
24758e99
LG
174 @REM clear two envs so that vcvars32.bat can run successfully.\r
175 set VSINSTALLDIR=\r
176 set VCToolsVersion=\r
7dddedc8 177 if exist "%ProgramFiles(x86)%\Microsoft Visual Studio\Installer\vswhere.exe" (\r
a5110b89
LG
178 if exist "%ProgramFiles(x86)%\Microsoft Visual Studio\2019\BuildTools" (\r
179 call "%ProgramFiles(x86)%\Microsoft Visual Studio\Installer\vswhere.exe" -products Microsoft.VisualStudio.Product.BuildTools -version 16,17 > vswhereInfo\r
670c903a 180 for /f "usebackq tokens=1* delims=: " %%i in (vswhereInfo) do (\r
6759212f
DB
181 if /i "%%i"=="installationPath" call "%%j\VC\Auxiliary\Build\vcvars32.bat"\r
182 )\r
670c903a 183 del vswhereInfo\r
6759212f 184 ) else (\r
a5110b89 185 call "%ProgramFiles(x86)%\Microsoft Visual Studio\Installer\vswhere.exe" -version 16,17 > vswhereInfo\r
670c903a 186 for /f "usebackq tokens=1* delims=: " %%i in (vswhereInfo) do (\r
6759212f
DB
187 if /i "%%i"=="installationPath" call "%%j\VC\Auxiliary\Build\vcvars32.bat"\r
188 )\r
670c903a 189 del vswhereInfo\r
7dddedc8
LG
190 )\r
191 ) else if exist "%ProgramFiles%\Microsoft Visual Studio\Installer\vswhere.exe" (\r
a5110b89
LG
192 if exist "%ProgramFiles%\Microsoft Visual Studio\2019\BuildTools" (\r
193 call "%ProgramFiles%\Microsoft Visual Studio\Installer\vswhere.exe" -products Microsoft.VisualStudio.Product.BuildTools -version 16,17 > vswhereInfo\r
670c903a 194 for /f "usebackq tokens=1* delims=: " %%i in (vswhereInfo) do (\r
6759212f
DB
195 if /i "%%i"=="installationPath" call "%%j\VC\Auxiliary\Build\vcvars32.bat"\r
196 )\r
670c903a 197 del vswhereInfo\r
6759212f 198 ) else (\r
a5110b89 199 call "%ProgramFiles%\Microsoft Visual Studio\Installer\vswhere.exe" -version 16,17 > vswhereInfo\r
670c903a 200 for /f "usebackq tokens=1* delims=: " %%i in (vswhereInfo) do (\r
6759212f
DB
201 if /i "%%i"=="installationPath" call "%%j\VC\Auxiliary\Build\vcvars32.bat"\r
202 )\r
670c903a 203 del vswhereInfo\r
7dddedc8
LG
204 )\r
205 ) else (\r
a5110b89 206 if /I "%1"=="VS2019" goto ToolNotInstall\r
7dddedc8
LG
207 goto SetWinDDK\r
208 )\r
209)\r
210\r
211if defined VCToolsInstallDir (\r
a5110b89
LG
212 if not defined VS2019_PREFIX (\r
213 set "VS2019_PREFIX=%VCToolsInstallDir%"\r
7dddedc8 214 )\r
670c903a
CCJ
215 if not defined WINSDK10_PREFIX (\r
216 if defined WindowsSdkVerBinPath (\r
217 set "WINSDK10_PREFIX=%WindowsSdkVerBinPath%"\r
218 ) else if exist "%ProgramFiles(x86)%\Windows Kits\10\bin" (\r
219 set "WINSDK10_PREFIX=%ProgramFiles(x86)%\Windows Kits\10\bin\"\r
220 ) else if exist "%ProgramFiles%\Windows Kits\10\bin" (\r
221 set "WINSDK10_PREFIX=%ProgramFiles%\Windows Kits\10\bin\"\r
222 )\r
7dddedc8
LG
223 )\r
224)\r
7569e35b
SB
225if not defined WINSDK_PATH_FOR_RC_EXE (\r
226 if defined WINSDK10_PREFIX (\r
227 set "WINSDK_PATH_FOR_RC_EXE=%WINSDK10_PREFIX%x86"\r
228 )\r
229)\r
7dddedc8 230\r
7f7f511c
LG
231if /I "%1"=="VS2019" goto SetWinDDK\r
232\r
7dddedc8 233:SetWinDDK\r
40d7406f
YZ
234if not defined WINDDK3790_PREFIX (\r
235 set WINDDK3790_PREFIX=C:\WINDDK\3790.1830\bin\\r
236)\r
237\r
238if not defined IASL_PREFIX (\r
239 set IASL_PREFIX=C:\ASL\\r
240)\r
241\r
242popd\r