]>
Commit | Line | Data |
---|---|---|
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 | |
12 | pushd .\r | |
6759212f DB |
13 | set SCRIPT_ERROR=0\r |
14 | goto main\r | |
15 | \r | |
16 | :ToolNotInstall\r | |
17 | set SCRIPT_ERROR=1\r | |
18 | goto :EOF\r | |
19 | \r | |
20 | :main\r | |
670c903a | 21 | if /I "%1"=="VS2019" goto SetVS2019\r |
6759212f DB |
22 | if /I "%1"=="VS2017" goto SetVS2017\r |
23 | if /I "%1"=="VS2015" goto SetVS2015\r | |
24 | if /I "%1"=="VS2013" goto SetVS2013\r | |
25 | if /I "%1"=="VS2012" goto SetVS2012\r | |
40d7406f YZ |
26 | \r |
27 | if defined VS71COMNTOOLS (\r | |
28 | if not defined VS2003_PREFIX (\r | |
29 | set "VS2003_PREFIX=%VS71COMNTOOLS:~0,-14%"\r | |
30 | )\r | |
31 | )\r | |
32 | \r | |
33 | if defined VS80COMNTOOLS (\r | |
34 | if not defined VS2005_PREFIX (\r | |
35 | set "VS2005_PREFIX=%VS80COMNTOOLS:~0,-14%"\r | |
36 | )\r | |
37 | )\r | |
38 | \r | |
39 | if 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 | |
51 | if 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 |
64 | if 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 | 77 | if /I "%1"=="VS2012" goto SetWinDDK\r |
40d7406f | 78 | \r |
6759212f | 79 | :SetVS2013\r |
40d7406f YZ |
80 | if 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 | 93 | if /I "%1"=="VS2013" goto SetWinDDK\r |
40d7406f | 94 | \r |
6759212f | 95 | :SetVS2015\r |
40d7406f YZ |
96 | if 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 | 109 | if /I "%1"=="VS2015" goto SetWinDDK\r |
40d7406f | 110 | \r |
a5110b89 LG |
111 | :SetVS2017\r |
112 | if 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 | |
150 | if 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 |
164 | if 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 |
170 | if /I "%1"=="VS2017" goto SetWinDDK\r |
171 | \r | |
a5110b89 LG |
172 | :SetVS2019\r |
173 | if 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 | |
211 | if 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 |
225 | if 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 |
231 | if /I "%1"=="VS2019" goto SetWinDDK\r |
232 | \r | |
7dddedc8 | 233 | :SetWinDDK\r |
40d7406f YZ |
234 | if not defined WINDDK3790_PREFIX (\r |
235 | set WINDDK3790_PREFIX=C:\WINDDK\3790.1830\bin\\r | |
236 | )\r | |
237 | \r | |
238 | if not defined IASL_PREFIX (\r | |
239 | set IASL_PREFIX=C:\ASL\\r | |
240 | )\r | |
241 | \r | |
242 | popd\r |