]> git.proxmox.com Git - mirror_edk2.git/blob - BaseTools/Conf/tools_def.template
498696e583fceddd7e105b5c35c0f31182120a78
[mirror_edk2.git] / BaseTools / Conf / tools_def.template
1 #
2 # Copyright (c) 2006 - 2021, Intel Corporation. All rights reserved.<BR>
3 # Portions copyright (c) 2008 - 2009, Apple Inc. All rights reserved.<BR>
4 # Portions copyright (c) 2011 - 2019, ARM Ltd. All rights reserved.<BR>
5 # Copyright (c) 2015, Hewlett-Packard Development Company, L.P.<BR>
6 # (C) Copyright 2020, Hewlett Packard Enterprise Development LP<BR>
7 # Copyright (c) Microsoft Corporation
8 #
9 # SPDX-License-Identifier: BSD-2-Clause-Patent
10 #
11 #
12 # Increase this version tag any time you want user to get warning about updating this
13 # file in the Conf dir. By default it does not do update existing conf dirs.
14 #
15 # 2.00 - Initial version with changes for CI
16 # - Change RC path to use plugin
17 #
18 #!VERSION=2.00
19
20 IDENTIFIER = Default TOOL_CHAIN_CONF
21
22 # common path macros
23 DEFINE VS2008_BIN = ENV(VS2008_PREFIX)Vc\bin
24 DEFINE VS2008_DLL = ENV(VS2008_PREFIX)Common7\IDE;DEF(VS2008_BIN)
25 DEFINE VS2008_BINX64 = DEF(VS2008_BIN)\x86_amd64
26 DEFINE VS2008_BIN64 = DEF(VS2008_BIN)\x86_ia64
27
28 DEFINE VS2008x86_BIN = ENV(VS2008_PREFIX)Vc\bin
29 DEFINE VS2008x86_DLL = ENV(VS2008_PREFIX)Common7\IDE;DEF(VS2008x86_BIN)
30 DEFINE VS2008x86_BINX64 = DEF(VS2008x86_BIN)\x86_amd64
31 DEFINE VS2008x86_BIN64 = DEF(VS2008x86_BIN)\x86_ia64
32
33 DEFINE VS2010_BIN = ENV(VS2010_PREFIX)Vc\bin
34 DEFINE VS2010_DLL = ENV(VS2010_PREFIX)Common7\IDE;DEF(VS2010_BIN)
35 DEFINE VS2010_BINX64 = DEF(VS2010_BIN)\x86_amd64
36 DEFINE VS2010_BIN64 = DEF(VS2010_BIN)\x86_ia64
37
38 DEFINE VS2010x86_BIN = ENV(VS2010_PREFIX)Vc\bin
39 DEFINE VS2010x86_DLL = ENV(VS2010_PREFIX)Common7\IDE;DEF(VS2010x86_BIN)
40 DEFINE VS2010x86_BINX64 = DEF(VS2010x86_BIN)\x86_amd64
41 DEFINE VS2010x86_BIN64 = DEF(VS2010x86_BIN)\x86_ia64
42
43 DEFINE VS2012_BIN = ENV(VS2012_PREFIX)Vc\bin
44 DEFINE VS2012_DLL = ENV(VS2012_PREFIX)Common7\IDE;DEF(VS2012_BIN)
45 DEFINE VS2012_BINX64 = DEF(VS2012_BIN)\x86_amd64
46
47 DEFINE VS2012x86_BIN = ENV(VS2012_PREFIX)Vc\bin
48 DEFINE VS2012x86_DLL = ENV(VS2012_PREFIX)Common7\IDE;DEF(VS2012x86_BIN)
49 DEFINE VS2012x86_BINX64 = DEF(VS2012x86_BIN)\x86_amd64
50
51 DEFINE VS2013_BIN = ENV(VS2013_PREFIX)Vc\bin
52 DEFINE VS2013_DLL = ENV(VS2013_PREFIX)Common7\IDE;DEF(VS2013_BIN)
53 DEFINE VS2013_BINX64 = DEF(VS2013_BIN)\x86_amd64
54
55 DEFINE VS2013x86_BIN = ENV(VS2013_PREFIX)Vc\bin
56 DEFINE VS2013x86_DLL = ENV(VS2013_PREFIX)Common7\IDE;DEF(VS2013x86_BIN)
57 DEFINE VS2013x86_BINX64 = DEF(VS2013x86_BIN)\x86_amd64
58
59 DEFINE VS2015_BIN = ENV(VS2015_PREFIX)Vc\bin
60 DEFINE VS2015_DLL = ENV(VS2015_PREFIX)Common7\IDE;DEF(VS2015_BIN)
61 DEFINE VS2015_BINX64 = DEF(VS2015_BIN)\x86_amd64
62
63 DEFINE VS2015x86_BIN = ENV(VS2015_PREFIX)Vc\bin
64 DEFINE VS2015x86_DLL = ENV(VS2015_PREFIX)Common7\IDE;DEF(VS2015x86_BIN)
65 DEFINE VS2015x86_BINX64 = DEF(VS2015x86_BIN)\x86_amd64
66
67 DEFINE VS_HOST = x86
68
69 DEFINE VS2017_BIN = ENV(VS2017_PREFIX)bin
70 DEFINE VS2017_BIN_HOST = DEF(VS2017_BIN)\HostDEF(VS_HOST)\DEF(VS_HOST)
71 DEFINE VS2017_BIN_IA32 = DEF(VS2017_BIN)\HostDEF(VS_HOST)\x86
72 DEFINE VS2017_BIN_X64 = DEF(VS2017_BIN)\HostDEF(VS_HOST)\x64
73 DEFINE VS2017_BIN_ARM = DEF(VS2017_BIN)\HostDEF(VS_HOST)\arm
74 DEFINE VS2017_BIN_AARCH64 = DEF(VS2017_BIN)\HostDEF(VS_HOST)\arm64
75
76 DEFINE VS2019_BIN = ENV(VS2019_PREFIX)bin
77 DEFINE VS2019_BIN_HOST = DEF(VS2019_BIN)\HostDEF(VS_HOST)\DEF(VS_HOST)
78 DEFINE VS2019_BIN_IA32 = DEF(VS2019_BIN)\HostDEF(VS_HOST)\x86
79 DEFINE VS2019_BIN_X64 = DEF(VS2019_BIN)\HostDEF(VS_HOST)\x64
80 DEFINE VS2019_BIN_ARM = DEF(VS2019_BIN)\HostDEF(VS_HOST)\arm
81 DEFINE VS2019_BIN_AARCH64 = DEF(VS2019_BIN)\HostDEF(VS_HOST)\arm64
82
83 #
84 # Resource compiler
85 #
86 DEFINE RC_PATH = ENV(WINSDK_PATH_FOR_RC_EXE)\rc.exe
87
88 DEFINE WINSDK_BIN = ENV(WINSDK_PREFIX)
89 DEFINE WINSDKx86_BIN = ENV(WINSDKx86_PREFIX)
90
91 # Microsoft Visual Studio 2010
92 DEFINE WINSDK7_BIN = ENV(WINSDK7_PREFIX)
93 DEFINE WINSDK7x86_BIN = ENV(WINSDK7x86_PREFIX)
94
95 # Microsoft Visual Studio 2012 Update 1 (required for rc.exe that was not included in the initial release)
96 DEFINE WINSDK71_BIN = ENV(WINSDK71_PREFIX)
97 DEFINE WINSDK71x86_BIN = ENV(WINSDK71x86_PREFIX)
98
99 # Microsoft Visual Studio 2013 Professional Edition
100 DEFINE WINSDK8_BIN = ENV(WINSDK8_PREFIX)x86\
101 DEFINE WINSDK8x86_BIN = ENV(WINSDK8x86_PREFIX)x64
102
103 # Microsoft Visual Studio 2015 Professional Edition
104 DEFINE WINSDK81_BIN = ENV(WINSDK81_PREFIX)x86\
105 DEFINE WINSDK81x86_BIN = ENV(WINSDK81x86_PREFIX)x64
106
107 # Microsoft Visual Studio 2017/2019 Professional Edition
108 DEFINE WINSDK10_BIN = ENV(WINSDK10_PREFIX)DEF(VS_HOST)
109
110 # These defines are needed for certain Microsoft Visual Studio tools that
111 # are used by other toolchains. An example is that ICC on Windows normally
112 # uses Microsoft's nmake.exe.
113
114 # Some MS_VS_BIN options: DEF(VS2008_BIN), DEF(VS2008x86_BIN)
115 DEFINE MS_VS_BIN = DEF(VS2008_BIN)
116 # Some MS_VS_DLL options: DEF(VS2008_DLL), DEF(VS2008x86_DLL)
117 DEFINE MS_VS_DLL = DEF(VS2008_DLL)
118
119 DEFINE WINDDK_BIN16 = ENV(WINDDK3790_PREFIX)bin16
120 DEFINE WINDDK_BINX64 = ENV(WINDDK3790_PREFIX)win64\x86\amd64
121
122 DEFINE EBC_BIN = C:\Program Files\Intel\EBC\Bin
123 DEFINE EBC_BINx86 = C:\Program Files (x86)\Intel\EBC\Bin
124
125
126 DEFINE CYGWIN_BIN = c:/cygwin/bin
127 DEFINE CYGWIN_BINIA32 = c:/cygwin/opt/tiano/i386-tiano-pe/i386-tiano-pe/bin/
128 DEFINE CYGWIN_BINX64 = c:/cygwin/opt/tiano/x86_64-pc-mingw64/x86_64-pc-mingw64/bin/
129
130 DEFINE GCC48_IA32_PREFIX = ENV(GCC48_BIN)
131 DEFINE GCC48_X64_PREFIX = ENV(GCC48_BIN)
132
133 DEFINE GCC49_IA32_PREFIX = ENV(GCC49_BIN)
134 DEFINE GCC49_X64_PREFIX = ENV(GCC49_BIN)
135
136 DEFINE GCC5_IA32_PREFIX = ENV(GCC5_BIN)
137 DEFINE GCC5_X64_PREFIX = ENV(GCC5_BIN)
138 DEFINE GCC_HOST_PREFIX = ENV(GCC_HOST_BIN)
139
140 DEFINE UNIX_IASL_BIN = ENV(IASL_PREFIX)iasl
141 DEFINE WIN_IASL_BIN = ENV(IASL_PREFIX)iasl.exe
142
143 DEFINE IASL_FLAGS =
144 DEFINE IASL_OUTFLAGS = -p
145
146 DEFINE DEFAULT_WIN_ASL_BIN = DEF(WIN_IASL_BIN)
147 DEFINE DEFAULT_WIN_ASL_FLAGS = DEF(IASL_FLAGS)
148 DEFINE DEFAULT_WIN_ASL_OUTFLAGS = DEF(IASL_OUTFLAGS)
149
150 # MSFT Build Flag for included header file list generation
151 DEFINE MSFT_DEPS_FLAGS = /showIncludes
152
153 DEFINE MSFT_ASLPP_FLAGS = /nologo /E /C /FIAutoGen.h
154 DEFINE MSFT_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable
155 DEFINE MSFT_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE
156
157 DEFINE IPHONE_TOOLS = /Developer/Platforms/iPhoneOS.platform/Developer
158
159 DEFINE SOURCERY_CYGWIN_TOOLS = /cygdrive/c/Program Files/CodeSourcery/Sourcery G++ Lite/bin
160
161 DEFINE DTCPP_BIN = ENV(DTCPP_PREFIX)cpp
162 DEFINE DTC_BIN = ENV(DTC_PREFIX)dtc
163
164 ####################################################################################
165 #
166 # format: TARGET_TOOLCHAIN_ARCH_COMMANDTYPE_ATTRIBUTE = <string>
167 # priority:
168 # TARGET_TOOLCHAIN_ARCH_COMMANDTYPE_ATTRIBUTE (Highest)
169 # ******_TOOLCHAIN_ARCH_COMMANDTYPE_ATTRIBUTE
170 # TARGET_*********_ARCH_COMMANDTYPE_ATTRIBUTE
171 # ******_*********_ARCH_COMMANDTYPE_ATTRIBUTE
172 # TARGET_TOOLCHAIN_****_COMMANDTYPE_ATTRIBUTE
173 # ******_TOOLCHAIN_****_COMMANDTYPE_ATTRIBUTE
174 # TARGET_*********_****_COMMANDTYPE_ATTRIBUTE
175 # ******_*********_****_COMMANDTYPE_ATTRIBUTE
176 # TARGET_TOOLCHAIN_ARCH_***********_ATTRIBUTE
177 # ******_TOOLCHAIN_ARCH_***********_ATTRIBUTE
178 # TARGET_*********_ARCH_***********_ATTRIBUTE
179 # ******_*********_ARCH_***********_ATTRIBUTE
180 # TARGET_TOOLCHAIN_****_***********_ATTRIBUTE
181 # ******_TOOLCHAIN_****_***********_ATTRIBUTE
182 # TARGET_*********_****_***********_ATTRIBUTE
183 # ******_*********_****_***********_ATTRIBUTE (Lowest)
184 #
185 ####################################################################################
186 ####################################################################################
187 #
188 # Supported Tool Chains
189 # =====================
190 # VS2008 -win32- Requires:
191 # Microsoft Visual Studio 2008 Team Suite Edition
192 # Microsoft Windows Server 2003 Driver Development Kit (Microsoft WINDDK) version 3790.1830
193 # Optional:
194 # Required to build EBC drivers:
195 # Intel(r) Compiler for Efi Byte Code (Intel(r) EBC Compiler)
196 # Required to build platforms or ACPI tables:
197 # Intel(r) ACPI Compiler (iasl.exe) from
198 # https://acpica.org/downloads
199 # VS2010 -win32- Requires:
200 # Microsoft Visual Studio 2010 Premium Edition
201 # Microsoft Windows Server 2003 Driver Development Kit (Microsoft WINDDK) version 3790.1830
202 # Optional:
203 # Required to build EBC drivers:
204 # Intel(r) Compiler for Efi Byte Code (Intel(r) EBC Compiler)
205 # Required to build platforms or ACPI tables:
206 # Intel(r) ACPI Compiler (iasl.exe) from
207 # https://acpica.org/downloads
208 # VS2012 -win32- Requires:
209 # Microsoft Visual Studio 2012 Professional Edition
210 # Microsoft Windows Server 2003 Driver Development Kit (Microsoft WINDDK) version 3790.1830
211 # Optional:
212 # Required to build EBC drivers:
213 # Intel(r) Compiler for Efi Byte Code (Intel(r) EBC Compiler)
214 # Required to build platforms or ACPI tables:
215 # Intel(r) ACPI Compiler (iasl.exe) from
216 # https://acpica.org/downloads
217 # VS2013 -win32- Requires:
218 # Microsoft Visual Studio 2013 Professional Edition
219 # Microsoft Windows Server 2003 Driver Development Kit (Microsoft WINDDK) version 3790.1830
220 # Optional:
221 # Required to build EBC drivers:
222 # Intel(r) Compiler for Efi Byte Code (Intel(r) EBC Compiler)
223 # Required to build platforms or ACPI tables:
224 # Intel(r) ACPI Compiler (iasl.exe) from
225 # https://acpica.org/downloads
226 # VS2015 -win32- Requires:
227 # Microsoft Visual Studio 2015 Professional Edition
228 # Microsoft Windows Server 2003 Driver Development Kit (Microsoft WINDDK) version 3790.1830
229 # Optional:
230 # Required to build EBC drivers:
231 # Intel(r) Compiler for Efi Byte Code (Intel(r) EBC Compiler)
232 # Required to build platforms or ACPI tables:
233 # Intel(r) ACPI Compiler (iasl.exe) from
234 # https://acpica.org/downloads
235 # VS2017 -win32- Requires:
236 # Microsoft Visual Studio 2017 version 15.2 (15.4 for ARM64) or later
237 # Optional:
238 # Required to build EBC drivers:
239 # Intel(r) Compiler for Efi Byte Code (Intel(r) EBC Compiler)
240 # Required to build platforms or ACPI tables:
241 # Intel(r) ACPI Compiler (iasl.exe) from
242 # https://acpica.org/downloads
243 # Note:
244 # Building of XIP firmware images for ARM/ARM64 is not currently supported (only applications).
245 # /FILEALIGN:4096 and other changes are needed for ARM firmware builds.
246 # VS2019 -win32- Requires:
247 # Microsoft Visual Studio 2019 version 16.2 or later
248 # Optional:
249 # Required to build EBC drivers:
250 # Intel(r) Compiler for Efi Byte Code (Intel(r) EBC Compiler)
251 # Required to build platforms or ACPI tables:
252 # Intel(r) ACPI Compiler (iasl.exe) from
253 # https://acpica.org/downloads
254 # Note:
255 # Building of XIP firmware images for ARM/ARM64 is not currently supported (only applications).
256 # /FILEALIGN:4096 and other changes are needed for ARM firmware builds.
257 # GCC48 -Linux,Windows- Requires:
258 # GCC 4.8 targeting x86_64-linux-gnu, aarch64-linux-gnu, or arm-linux-gnueabi
259 # Optional:
260 # Required to build platforms or ACPI tables:
261 # Intel(r) ACPI Compiler from
262 # https://acpica.org/downloads
263 # GCC49 -Linux,Windows- Requires:
264 # GCC 4.9 targeting x86_64-linux-gnu, aarch64-linux-gnu, or arm-linux-gnueabi
265 # Optional:
266 # Required to build platforms or ACPI tables:
267 # Intel(r) ACPI Compiler from
268 # https://acpica.org/downloads
269 # GCC5 -Linux,Windows- Requires:
270 # GCC 5 with LTO support, targeting x86_64-linux-gnu, aarch64-linux-gnu, arm-linux-gnueabi or riscv64-linux-gnu
271 # Optional:
272 # Required to build platforms or ACPI tables:
273 # Intel(r) ACPI Compiler from
274 # https://acpica.org/downloads
275 #
276 # CLANG35 -Linux,Windows- Requires:
277 # Clang v3.5 or later, and GNU binutils targeting aarch64-linux-gnu or arm-linux-gnueabi
278 # Optional:
279 # Required to build platforms or ACPI tables:
280 # Intel(r) ACPI Compiler from
281 # https://acpica.org/downloads
282 # CLANG38 -Linux- Requires:
283 # Clang v3.8, LLVMgold plugin and GNU binutils 2.26 targeting x86_64-linux-gnu, aarch64-linux-gnu or arm-linux-gnueabi
284 # Clang v3.9 or later, LLVMgold plugin and GNU binutils 2.28 targeting x86_64-linux-gnu, aarch64-linux-gnu or arm-linux-gnueabi
285 # Optional:
286 # Required to build platforms or ACPI tables:
287 # Intel(r) ACPI Compiler from
288 # https://acpica.org/downloads
289 # CLANGPDB -Linux, Windows, Mac- Requires:
290 # Clang 9 or above from http://releases.llvm.org/
291 # Optional:
292 # Required to compile nasm source:
293 # nasm compiler from
294 # NASM -- http://www.nasm.us/
295 # Required to build platforms or ACPI tables:
296 # Intel(r) ACPI Compiler from
297 # https://acpica.org/downloads
298 # VS2008x86 -win64- Requires:
299 # Microsoft Visual Studio 2008 (x86)
300 # Microsoft Windows Server 2003 Driver Development Kit (Microsoft WINDDK) version 3790.1830
301 # Optional:
302 # Required to build platforms or ACPI tables:
303 # Intel(r) ACPI Compiler (iasl.exe) from
304 # https://acpica.org/downloads
305 # VS2010x86 -win64- Requires:
306 # Microsoft Visual Studio 2010 (x86) Premium Edition
307 # Microsoft Windows Server 2003 Driver Development Kit (Microsoft WINDDK) version 3790.1830
308 # Optional:
309 # Required to build platforms or ACPI tables:
310 # Intel(r) ACPI Compiler (iasl.exe) from
311 # https://acpica.org/downloads
312 # VS2012x86 -win64- Requires:
313 # Microsoft Visual Studio 2012 (x86) Professional Edition
314 # Microsoft Windows Server 2003 Driver Development Kit (Microsoft WINDDK) version 3790.1830
315 # Optional:
316 # Required to build platforms or ACPI tables:
317 # Intel(r) ACPI Compiler (iasl.exe) from
318 # https://acpica.org/downloads
319 # VS2013x86 -win64- Requires:
320 # Microsoft Visual Studio 2013 (x86) Professional Edition
321 # Microsoft Windows Server 2003 Driver Development Kit (Microsoft WINDDK) version 3790.1830
322 # Optional:
323 # Required to build platforms or ACPI tables:
324 # Intel(r) ACPI Compiler (iasl.exe) from
325 # https://acpica.org/downloads
326 # VS2015x86 -win64- Requires:
327 # Microsoft Visual Studio 2015 (x86) Update 2 or above
328 # Microsoft Windows Server 2003 Driver Development Kit (Microsoft WINDDK) version 3790.1830
329 # Optional:
330 # Required to build platforms or ACPI tables:
331 # Intel(r) ACPI Compiler (iasl.exe) from
332 # https://acpica.org/downloads
333 # RVCT -win- Requires:
334 # ARM C/C++ Compiler, 5.00
335 # Optional:
336 # Required to build EBC drivers:
337 # Intel(r) Compiler for Efi Byte Code (Intel(r) EBC Compiler)
338 # Required to build platforms or ACPI tables:
339 # Microsoft ASL ACPI Compiler (asl.exe) v4.0.0 from
340 # http://download.microsoft.com/download/2/c/1/2c16c7e0-96c1-40f5-81fc-3e4bf7b65496/microsoft_asl_compiler-v4-0-0.msi
341 # Notes: Since this tool chain is obsolete, it doesn't enable the compiler option for included header file list generation,
342 # and lose the incremental build capability.
343 # RVCTLINUX -unix- Requires:
344 # ARM C/C++ Compiler, 5.00
345 # Optional:
346 # Required to build platforms or ACPI tables:
347 # Intel(r) ACPI Compiler from
348 # https://acpica.org/downloads
349 # Notes: Since this tool chain is obsolete, it doesn't enable the compiler option for included header file list generation,
350 # and lose the incremental build capability.
351 # * Commented out - All versions of VS2005 use the same standard install directory
352 #
353 ####################################################################################
354 ####################################################################################
355 #
356 # Supported Tool Chain Family
357 # ===========================
358 # MSFT - Microsoft
359 # GCC - GNU GCC
360 # INTEL - INTEL
361 # RVCT - ARM RealView Toolchain
362 ####################################################################################
363 ####################################################################################
364 #
365 # Other Supported Tools
366 # =====================
367 # NASM -- http://www.nasm.us/
368 # - NASM 2.10 or later for use with the GCC toolchain family
369 # - NASM 2.12.01 or later for use with all other toolchain families
370 #
371 ####################################################################################
372 ####################################################################################
373 #
374 # Intel EFI Byte Code Compiler (Template)
375 #
376 ####################################################################################
377 # *_*_EBC_*_FAMILY = INTEL
378 #
379 # *_*_EBC_PP_PATH = C:\Program Files\Intel\EBC\Bin\iec.exe
380 # *_*_EBC_CC_PATH = C:\Program Files\Intel\EBC\Bin\iec.exe
381 # *_*_EBC_SLINK_PATH = C:\Program Files\Intel\EBC\Bin\link.exe
382 #
383 # *_*_EBC_SLINK_FLAGS = /lib /NOLOGO /MACHINE:EBC
384 # *_*_EBC_PP_FLAGS = /nologo /E /TC /FIAutoGen.h
385 # *_*_EBC_CC_FLAGS = /nologo /FAcs /c /W3 /WX /FIAutoGen.h
386 # *_*_EBC_DLINK_FLAGS = "C:\Program Files\Intel\EBC\Lib\EbcLib.lib" /NOLOGO /MACHINE:EBC /OPT:REF /NODEFAULTLIB /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /ALIGN:32 /DRIVER
387 #
388 ####################################################################################
389 #
390 # Intel ACPI Source Language Compiler (Template)
391 #
392 ####################################################################################
393 # *_*_*_ASL_FAMILY = INTEL
394 #
395 # *_*_*_ASL_PATH = C:\ASL\iasl.exe
396 #
397 ####################################################################################
398 #
399 # Microsoft ACPI Source Language Compiler (Template)
400 #
401 ####################################################################################
402 # *_*_*_ASL_FAMILY = MSFT
403 #
404 # *_*_*_ASL_PATH = C:\ASL\asl.exe
405 #
406 ####################################################################################
407
408 ####################################################################################
409 #
410 # Microsoft Visual Studio 2008
411 #
412 # VS2008 - Microsoft Visual Studio 2005 All Edition, including Standard, Professional, Express, TeamSuite
413 # ASL - Intel ACPI Source Language Compiler
414 ####################################################################################
415 # VS2008 - Microsoft Visual Studio 2008 ALL Edition, including Standard, Professional, Express, TeamSuite
416 *_VS2008_*_*_FAMILY = MSFT
417
418 *_VS2008_*_MAKE_PATH = DEF(VS2008_BIN)\nmake.exe
419 *_VS2008_*_MAKE_FLAGS = /nologo
420 *_VS2008_*_RC_PATH = DEF(WINSDK_BIN)\rc.exe
421
422 *_VS2008_*_SLINK_FLAGS = /NOLOGO /LTCG
423 *_VS2008_*_APP_FLAGS = /nologo /E /TC
424 *_VS2008_*_PP_FLAGS = /nologo /E /TC /FIAutoGen.h
425 *_VS2008_*_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h
426 *_VS2008_*_DEPS_FLAGS = DEF(MSFT_DEPS_FLAGS)
427 *_VS2008_*_ASM16_PATH = DEF(VS2008_BIN)\ml.exe
428
429 ##################
430 # ASL definitions
431 ##################
432 *_VS2008_*_ASL_PATH = DEF(DEFAULT_WIN_ASL_BIN)
433 *_VS2008_*_ASL_FLAGS = DEF(DEFAULT_WIN_ASL_FLAGS)
434 *_VS2008_*_ASL_OUTFLAGS = DEF(DEFAULT_WIN_ASL_OUTFLAGS)
435 *_VS2008_*_ASLCC_FLAGS = DEF(MSFT_ASLCC_FLAGS)
436 *_VS2008_*_ASLPP_FLAGS = DEF(MSFT_ASLPP_FLAGS)
437 *_VS2008_*_ASLDLINK_FLAGS = DEF(MSFT_ASLDLINK_FLAGS)
438
439 ##################
440 # IA32 definitions
441 ##################
442 *_VS2008_IA32_*_DLL = DEF(VS2008_DLL)
443
444 *_VS2008_IA32_CC_PATH = DEF(VS2008_BIN)\cl.exe
445 *_VS2008_IA32_VFRPP_PATH = DEF(VS2008_BIN)\cl.exe
446 *_VS2008_IA32_SLINK_PATH = DEF(VS2008_BIN)\lib.exe
447 *_VS2008_IA32_DLINK_PATH = DEF(VS2008_BIN)\link.exe
448 *_VS2008_IA32_APP_PATH = DEF(VS2008_BIN)\cl.exe
449 *_VS2008_IA32_PP_PATH = DEF(VS2008_BIN)\cl.exe
450 *_VS2008_IA32_ASM_PATH = DEF(VS2008_BIN)\ml.exe
451 *_VS2008_IA32_ASLCC_PATH = DEF(VS2008_BIN)\cl.exe
452 *_VS2008_IA32_ASLPP_PATH = DEF(VS2008_BIN)\cl.exe
453 *_VS2008_IA32_ASLDLINK_PATH = DEF(VS2008_BIN)\link.exe
454
455 DEBUG_VS2008_IA32_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm
456 RELEASE_VS2008_IA32_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF
457 NOOPT_VS2008_IA32_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm /Od
458
459 DEBUG_VS2008_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi
460 RELEASE_VS2008_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd
461 NOOPT_VS2008_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi
462
463 DEBUG_VS2008_IA32_NASM_FLAGS = -Ox -f win32 -g
464 RELEASE_VS2008_IA32_NASM_FLAGS = -Ox -f win32
465 NOOPT_VS2008_IA32_NASM_FLAGS = -O0 -f win32 -g
466
467 DEBUG_VS2008_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
468 RELEASE_VS2008_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
469 NOOPT_VS2008_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
470
471 ##################
472 # X64 definitions
473 ##################
474 *_VS2008_X64_*_DLL = DEF(VS2008_DLL)
475
476 *_VS2008_X64_CC_PATH = DEF(VS2008_BINX64)\cl.exe
477 *_VS2008_X64_PP_PATH = DEF(VS2008_BINX64)\cl.exe
478 *_VS2008_X64_APP_PATH = DEF(VS2008_BINX64)\cl.exe
479 *_VS2008_X64_VFRPP_PATH = DEF(VS2008_BINX64)\cl.exe
480 *_VS2008_X64_ASM_PATH = DEF(VS2008_BINX64)\ml64.exe
481 *_VS2008_X64_SLINK_PATH = DEF(VS2008_BINX64)\lib.exe
482 *_VS2008_X64_DLINK_PATH = DEF(VS2008_BINX64)\link.exe
483 *_VS2008_X64_ASLCC_PATH = DEF(VS2008_BINX64)\cl.exe
484 *_VS2008_X64_ASLPP_PATH = DEF(VS2008_BINX64)\cl.exe
485 *_VS2008_X64_ASLDLINK_PATH = DEF(VS2008_BINX64)\link.exe
486
487 DEBUG_VS2008_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Z7
488 RELEASE_VS2008_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF
489 NOOPT_VS2008_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Z7 /Od
490
491 DEBUG_VS2008_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi
492 RELEASE_VS2008_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd
493 NOOPT_VS2008_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi
494
495 DEBUG_VS2008_X64_NASM_FLAGS = -Ox -f win64 -g
496 RELEASE_VS2008_X64_NASM_FLAGS = -Ox -f win64
497 NOOPT_VS2008_X64_NASM_FLAGS = -O0 -f win64 -g
498
499 DEBUG_VS2008_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /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
500 RELEASE_VS2008_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /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
501 NOOPT_VS2008_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /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
502
503 ##################
504 # EBC definitions
505 ##################
506 *_VS2008_EBC_*_FAMILY = INTEL
507 *_VS2008_EBC_*_DLL = DEF(VS2008_DLL)
508
509 *_VS2008_EBC_PP_PATH = DEF(EBC_BIN)\iec.exe
510 *_VS2008_EBC_VFRPP_PATH = DEF(EBC_BIN)\iec.exe
511 *_VS2008_EBC_CC_PATH = DEF(EBC_BIN)\iec.exe
512 *_VS2008_EBC_SLINK_PATH = DEF(VS2008_BIN)\link.exe
513 *_VS2008_EBC_DLINK_PATH = DEF(VS2008_BIN)\link.exe
514
515 *_VS2008_EBC_PP_FLAGS = /nologo /E /TC /FIAutoGen.h
516 *_VS2008_EBC_CC_FLAGS = /nologo /c /WX /W3 /FIAutoGen.h /D$(MODULE_ENTRY_POINT)=$(ARCH_ENTRY_POINT)
517 *_VS2008_EBC_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h
518 *_VS2008_EBC_SLINK_FLAGS = /lib /NOLOGO /MACHINE:EBC
519 *_VS2008_EBC_DLINK_FLAGS = "C:\Program Files\Intel\EBC\Lib\EbcLib.lib" /NOLOGO /NODEFAULTLIB /MACHINE:EBC /OPT:REF /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /MAP /ALIGN:32 /DRIVER
520
521
522 ####################################################################################
523 # VS2008x86 - Microsoft Visual Studio 2008 (x86) with Intel ASL
524 # ASL - Intel ACPI Source Language Compiler (iasl.exe)
525 ####################################################################################
526 # VS2008x86 - Microsoft Visual Studio 2008 (x86) ALL Edition with Intel ASL
527 *_VS2008x86_*_*_FAMILY = MSFT
528
529 *_VS2008x86_*_MAKE_PATH = DEF(VS2008x86_BIN)\nmake.exe
530 *_VS2008x86_*_MAKE_FLAGS = /nologo
531 *_VS2008x86_*_RC_PATH = DEF(WINSDK_BIN)\rc.exe
532
533 *_VS2008x86_*_SLINK_FLAGS = /NOLOGO /LTCG
534 *_VS2008x86_*_APP_FLAGS = /nologo /E /TC
535 *_VS2008x86_*_PP_FLAGS = /nologo /E /TC /FIAutoGen.h
536 *_VS2008x86_*_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h
537 *_VS2008x86_*_DEPS_FLAGS = DEF(MSFT_DEPS_FLAGS)
538 *_VS2008x86_*_ASM16_PATH = DEF(VS2008x86_BIN)\ml.exe
539
540 ##################
541 # ASL definitions
542 ##################
543 *_VS2008x86_*_ASL_PATH = DEF(WIN_IASL_BIN)
544 *_VS2008x86_*_ASL_FLAGS = DEF(DEFAULT_WIN_ASL_FLAGS)
545 *_VS2008x86_*_ASL_OUTFLAGS = DEF(DEFAULT_WIN_ASL_OUTFLAGS)
546 *_VS2008x86_*_ASLCC_FLAGS = DEF(MSFT_ASLCC_FLAGS)
547 *_VS2008x86_*_ASLPP_FLAGS = DEF(MSFT_ASLPP_FLAGS)
548 *_VS2008x86_*_ASLDLINK_FLAGS = DEF(MSFT_ASLDLINK_FLAGS)
549
550 ##################
551 # IA32 definitions
552 ##################
553 *_VS2008x86_IA32_*_DLL = DEF(VS2008x86_DLL)
554
555 *_VS2008x86_IA32_CC_PATH = DEF(VS2008x86_BIN)\cl.exe
556 *_VS2008x86_IA32_VFRPP_PATH = DEF(VS2008x86_BIN)\cl.exe
557 *_VS2008x86_IA32_ASLCC_PATH = DEF(VS2008x86_BIN)\cl.exe
558 *_VS2008x86_IA32_ASLPP_PATH = DEF(VS2008x86_BIN)\cl.exe
559 *_VS2008x86_IA32_SLINK_PATH = DEF(VS2008x86_BIN)\lib.exe
560 *_VS2008x86_IA32_DLINK_PATH = DEF(VS2008x86_BIN)\link.exe
561 *_VS2008x86_IA32_ASLDLINK_PATH= DEF(VS2008x86_BIN)\link.exe
562 *_VS2008x86_IA32_APP_PATH = DEF(VS2008x86_BIN)\cl.exe
563 *_VS2008x86_IA32_PP_PATH = DEF(VS2008x86_BIN)\cl.exe
564 *_VS2008x86_IA32_ASM_PATH = DEF(VS2008x86_BIN)\ml.exe
565
566 DEBUG_VS2008x86_IA32_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Z7
567 RELEASE_VS2008x86_IA32_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF
568 NOOPT_VS2008x86_IA32_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Z7 /Od
569
570 DEBUG_VS2008x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi
571 RELEASE_VS2008x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd
572 NOOPT_VS2008x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi
573
574 DEBUG_VS2008x86_IA32_NASM_FLAGS = -Ox -f win32 -g
575 RELEASE_VS2008x86_IA32_NASM_FLAGS = -Ox -f win32
576 NOOPT_VS2008x86_IA32_NASM_FLAGS = -O0 -f win32 -g
577
578 DEBUG_VS2008x86_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
579 RELEASE_VS2008x86_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
580 NOOPT_VS2008x86_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
581
582 ##################
583 # X64 definitions
584 ##################
585 *_VS2008x86_X64_*_DLL = DEF(VS2008x86_DLL)
586
587 *_VS2008x86_X64_CC_PATH = DEF(VS2008x86_BINX64)\cl.exe
588 *_VS2008x86_X64_PP_PATH = DEF(VS2008x86_BINX64)\cl.exe
589 *_VS2008x86_X64_APP_PATH = DEF(VS2008x86_BINX64)\cl.exe
590 *_VS2008x86_X64_VFRPP_PATH = DEF(VS2008x86_BINX64)\cl.exe
591 *_VS2008x86_X64_ASLCC_PATH = DEF(VS2008x86_BINX64)\cl.exe
592 *_VS2008x86_X64_ASLPP_PATH = DEF(VS2008x86_BINX64)\cl.exe
593 *_VS2008x86_X64_ASM_PATH = DEF(VS2008x86_BINX64)\ml64.exe
594 *_VS2008x86_X64_SLINK_PATH = DEF(VS2008x86_BINX64)\lib.exe
595 *_VS2008x86_X64_DLINK_PATH = DEF(VS2008x86_BINX64)\link.exe
596 *_VS2008x86_X64_ASLDLINK_PATH = DEF(VS2008x86_BINX64)\link.exe
597
598 DEBUG_VS2008x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Z7
599 RELEASE_VS2008x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF
600 NOOPT_VS2008x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Z7 /Od
601 DEBUG_VS2008x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi
602 RELEASE_VS2008x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd
603 NOOPT_VS2008x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi
604
605 DEBUG_VS2008x86_X64_NASM_FLAGS = -Ox -f win64 -g
606 RELEASE_VS2008x86_X64_NASM_FLAGS = -Ox -f win64
607 NOOPT_VS2008x86_X64_NASM_FLAGS = -O0 -f win64 -g
608
609 DEBUG_VS2008x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /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
610 RELEASE_VS2008x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /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
611 NOOPT_VS2008x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /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
612
613 ##################
614 # EBC definitions
615 ##################
616 *_VS2008x86_EBC_*_FAMILY = INTEL
617 *_VS2008x86_EBC_*_DLL = DEF(VS2008x86_DLL)
618
619 *_VS2008x86_EBC_PP_PATH = DEF(EBC_BINx86)\iec.exe
620 *_VS2008x86_EBC_VFRPP_PATH = DEF(EBC_BINx86)\iec.exe
621 *_VS2008x86_EBC_CC_PATH = DEF(EBC_BINx86)\iec.exe
622 *_VS2008x86_EBC_SLINK_PATH = DEF(VS2008x86_BIN)\link.exe
623 *_VS2008x86_EBC_DLINK_PATH = DEF(VS2008x86_BIN)\link.exe
624
625 *_VS2008x86_EBC_PP_FLAGS = /nologo /E /TC /FIAutoGen.h
626 *_VS2008x86_EBC_CC_FLAGS = /nologo /c /WX /W3 /FIAutoGen.h /D$(MODULE_ENTRY_POINT)=$(ARCH_ENTRY_POINT)
627 *_VS2008x86_EBC_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h
628 *_VS2008x86_EBC_SLINK_FLAGS = /lib /NOLOGO /MACHINE:EBC
629 *_VS2008x86_EBC_DLINK_FLAGS = "C:\Program Files (x86)\Intel\EBC\Lib\EbcLib.lib" /NOLOGO /NODEFAULTLIB /MACHINE:EBC /OPT:REF /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /MAP /ALIGN:32 /DRIVER
630
631
632
633 ####################################################################################
634 #
635 # Microsoft Visual Studio 2010
636 #
637 # VS2010 - Microsoft Visual Studio 2010 Premium Edition with Intel ASL
638 # ASL - Intel ACPI Source Language Compiler
639 ####################################################################################
640 # VS2010 - Microsoft Visual Studio 2010 Premium Edition
641 *_VS2010_*_*_FAMILY = MSFT
642
643 *_VS2010_*_MAKE_PATH = DEF(VS2010_BIN)\nmake.exe
644 *_VS2010_*_MAKE_FLAGS = /nologo
645 *_VS2010_*_RC_PATH = DEF(WINSDK7_BIN)\rc.exe
646
647 *_VS2010_*_SLINK_FLAGS = /NOLOGO /LTCG
648 *_VS2010_*_APP_FLAGS = /nologo /E /TC
649 *_VS2010_*_PP_FLAGS = /nologo /E /TC /FIAutoGen.h
650 *_VS2010_*_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h
651 *_VS2010_*_DEPS_FLAGS = DEF(MSFT_DEPS_FLAGS)
652 *_VS2010_*_ASM16_PATH = DEF(VS2010_BIN)\ml.exe
653
654 ##################
655 # ASL definitions
656 ##################
657 *_VS2010_*_ASL_PATH = DEF(DEFAULT_WIN_ASL_BIN)
658 *_VS2010_*_ASL_FLAGS = DEF(DEFAULT_WIN_ASL_FLAGS)
659 *_VS2010_*_ASL_OUTFLAGS = DEF(DEFAULT_WIN_ASL_OUTFLAGS)
660 *_VS2010_*_ASLCC_FLAGS = DEF(MSFT_ASLCC_FLAGS)
661 *_VS2010_*_ASLPP_FLAGS = DEF(MSFT_ASLPP_FLAGS)
662 *_VS2010_*_ASLDLINK_FLAGS = DEF(MSFT_ASLDLINK_FLAGS)
663
664 ##################
665 # IA32 definitions
666 ##################
667 *_VS2010_IA32_*_DLL = DEF(VS2010_DLL)
668
669 *_VS2010_IA32_CC_PATH = DEF(VS2010_BIN)\cl.exe
670 *_VS2010_IA32_VFRPP_PATH = DEF(VS2010_BIN)\cl.exe
671 *_VS2010_IA32_SLINK_PATH = DEF(VS2010_BIN)\lib.exe
672 *_VS2010_IA32_DLINK_PATH = DEF(VS2010_BIN)\link.exe
673 *_VS2010_IA32_APP_PATH = DEF(VS2010_BIN)\cl.exe
674 *_VS2010_IA32_PP_PATH = DEF(VS2010_BIN)\cl.exe
675 *_VS2010_IA32_ASM_PATH = DEF(VS2010_BIN)\ml.exe
676 *_VS2010_IA32_ASLCC_PATH = DEF(VS2010_BIN)\cl.exe
677 *_VS2010_IA32_ASLPP_PATH = DEF(VS2010_BIN)\cl.exe
678 *_VS2010_IA32_ASLDLINK_PATH = DEF(VS2010_BIN)\link.exe
679
680 DEBUG_VS2010_IA32_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Z7
681 RELEASE_VS2010_IA32_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF
682 NOOPT_VS2010_IA32_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm /Od
683
684 DEBUG_VS2010_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi
685 RELEASE_VS2010_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd
686 NOOPT_VS2010_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi
687
688 DEBUG_VS2010_IA32_NASM_FLAGS = -Ox -f win32 -g
689 RELEASE_VS2010_IA32_NASM_FLAGS = -Ox -f win32
690 NOOPT_VS2010_IA32_NASM_FLAGS = -O0 -f win32 -g
691
692 DEBUG_VS2010_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
693 RELEASE_VS2010_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
694 NOOPT_VS2010_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
695
696 ##################
697 # X64 definitions
698 ##################
699 *_VS2010_X64_*_DLL = DEF(VS2010_DLL)
700
701 *_VS2010_X64_CC_PATH = DEF(VS2010_BINX64)\cl.exe
702 *_VS2010_X64_PP_PATH = DEF(VS2010_BINX64)\cl.exe
703 *_VS2010_X64_APP_PATH = DEF(VS2010_BINX64)\cl.exe
704 *_VS2010_X64_VFRPP_PATH = DEF(VS2010_BINX64)\cl.exe
705 *_VS2010_X64_ASM_PATH = DEF(VS2010_BINX64)\ml64.exe
706 *_VS2010_X64_SLINK_PATH = DEF(VS2010_BINX64)\lib.exe
707 *_VS2010_X64_DLINK_PATH = DEF(VS2010_BINX64)\link.exe
708 *_VS2010_X64_ASLCC_PATH = DEF(VS2010_BINX64)\cl.exe
709 *_VS2010_X64_ASLPP_PATH = DEF(VS2010_BINX64)\cl.exe
710 *_VS2010_X64_ASLDLINK_PATH = DEF(VS2010_BINX64)\link.exe
711
712 DEBUG_VS2010_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Z7
713 RELEASE_VS2010_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF
714 NOOPT_VS2010_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Z7 /Od
715
716 DEBUG_VS2010_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi
717 RELEASE_VS2010_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd
718 NOOPT_VS2010_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi
719
720 DEBUG_VS2010_X64_NASM_FLAGS = -Ox -f win64 -g
721 RELEASE_VS2010_X64_NASM_FLAGS = -Ox -f win64
722 NOOPT_VS2010_X64_NASM_FLAGS = -O0 -f win64 -g
723
724 DEBUG_VS2010_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /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
725 RELEASE_VS2010_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /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
726 NOOPT_VS2010_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /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
727
728 ##################
729 # EBC definitions
730 ##################
731 *_VS2010_EBC_*_FAMILY = INTEL
732 *_VS2010_EBC_*_DLL = DEF(VS2010_DLL)
733
734 *_VS2010_EBC_PP_PATH = DEF(EBC_BIN)\iec.exe
735 *_VS2010_EBC_VFRPP_PATH = DEF(EBC_BIN)\iec.exe
736 *_VS2010_EBC_CC_PATH = DEF(EBC_BIN)\iec.exe
737 *_VS2010_EBC_SLINK_PATH = DEF(VS2010_BIN)\link.exe
738 *_VS2010_EBC_DLINK_PATH = DEF(VS2010_BIN)\link.exe
739
740 *_VS2010_EBC_PP_FLAGS = /nologo /E /TC /FIAutoGen.h
741 *_VS2010_EBC_CC_FLAGS = /nologo /c /WX /W3 /FIAutoGen.h /D$(MODULE_ENTRY_POINT)=$(ARCH_ENTRY_POINT)
742 *_VS2010_EBC_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h
743 *_VS2010_EBC_SLINK_FLAGS = /lib /NOLOGO /MACHINE:EBC
744 *_VS2010_EBC_DLINK_FLAGS = "C:\Program Files\Intel\EBC\Lib\EbcLib.lib" /NOLOGO /NODEFAULTLIB /MACHINE:EBC /OPT:REF /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /MAP /ALIGN:32 /DRIVER
745
746
747 ####################################################################################
748 # VS2010x86 - Microsoft Visual Studio 2010 (x86) with Intel ASL
749 # ASL - Intel ACPI Source Language Compiler (iasl.exe)
750 ####################################################################################
751 # VS2010x86 - Microsoft Visual Studio 2010 (x86) ALL Edition with Intel ASL
752 *_VS2010x86_*_*_FAMILY = MSFT
753
754 *_VS2010x86_*_MAKE_PATH = DEF(VS2010x86_BIN)\nmake.exe
755 *_VS2010x86_*_MAKE_FLAGS = /nologo
756 *_VS2010x86_*_RC_PATH = DEF(WINSDK7x86_BIN)\rc.exe
757
758 *_VS2010x86_*_SLINK_FLAGS = /NOLOGO /LTCG
759 *_VS2010x86_*_APP_FLAGS = /nologo /E /TC
760 *_VS2010x86_*_PP_FLAGS = /nologo /E /TC /FIAutoGen.h
761 *_VS2010x86_*_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h
762 *_VS2010x86_*_DEPS_FLAGS = DEF(MSFT_DEPS_FLAGS)
763 *_VS2010x86_*_ASM16_PATH = DEF(VS2010x86_BIN)\ml.exe
764
765 ##################
766 # ASL definitions
767 ##################
768 *_VS2010x86_*_ASL_PATH = DEF(WIN_IASL_BIN)
769 *_VS2010x86_*_ASL_FLAGS = DEF(DEFAULT_WIN_ASL_FLAGS)
770 *_VS2010x86_*_ASL_OUTFLAGS = DEF(DEFAULT_WIN_ASL_OUTFLAGS)
771 *_VS2010x86_*_ASLCC_FLAGS = DEF(MSFT_ASLCC_FLAGS)
772 *_VS2010x86_*_ASLPP_FLAGS = DEF(MSFT_ASLPP_FLAGS)
773 *_VS2010x86_*_ASLDLINK_FLAGS = DEF(MSFT_ASLDLINK_FLAGS)
774
775 ##################
776 # IA32 definitions
777 ##################
778 *_VS2010x86_IA32_*_DLL = DEF(VS2010x86_DLL)
779
780 *_VS2010x86_IA32_CC_PATH = DEF(VS2010x86_BIN)\cl.exe
781 *_VS2010x86_IA32_VFRPP_PATH = DEF(VS2010x86_BIN)\cl.exe
782 *_VS2010x86_IA32_ASLCC_PATH = DEF(VS2010x86_BIN)\cl.exe
783 *_VS2010x86_IA32_ASLPP_PATH = DEF(VS2010x86_BIN)\cl.exe
784 *_VS2010x86_IA32_SLINK_PATH = DEF(VS2010x86_BIN)\lib.exe
785 *_VS2010x86_IA32_DLINK_PATH = DEF(VS2010x86_BIN)\link.exe
786 *_VS2010x86_IA32_ASLDLINK_PATH= DEF(VS2010x86_BIN)\link.exe
787 *_VS2010x86_IA32_APP_PATH = DEF(VS2010x86_BIN)\cl.exe
788 *_VS2010x86_IA32_PP_PATH = DEF(VS2010x86_BIN)\cl.exe
789 *_VS2010x86_IA32_ASM_PATH = DEF(VS2010x86_BIN)\ml.exe
790
791 DEBUG_VS2010x86_IA32_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Z7
792 RELEASE_VS2010x86_IA32_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF
793 NOOPT_VS2010x86_IA32_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Z7 /Od
794
795 DEBUG_VS2010x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi
796 RELEASE_VS2010x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd
797 NOOPT_VS2010x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi
798
799 DEBUG_VS2010x86_IA32_NASM_FLAGS = -Ox -f win32 -g
800 RELEASE_VS2010x86_IA32_NASM_FLAGS = -Ox -f win32
801 NOOPT_VS2010x86_IA32_NASM_FLAGS = -O0 -f win32 -g
802
803 DEBUG_VS2010x86_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
804 RELEASE_VS2010x86_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
805 NOOPT_VS2010x86_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
806
807 ##################
808 # X64 definitions
809 ##################
810 *_VS2010x86_X64_*_DLL = DEF(VS2010x86_DLL)
811
812 *_VS2010x86_X64_CC_PATH = DEF(VS2010x86_BINX64)\cl.exe
813 *_VS2010x86_X64_PP_PATH = DEF(VS2010x86_BINX64)\cl.exe
814 *_VS2010x86_X64_APP_PATH = DEF(VS2010x86_BINX64)\cl.exe
815 *_VS2010x86_X64_VFRPP_PATH = DEF(VS2010x86_BINX64)\cl.exe
816 *_VS2010x86_X64_ASLCC_PATH = DEF(VS2010x86_BINX64)\cl.exe
817 *_VS2010x86_X64_ASLPP_PATH = DEF(VS2010x86_BINX64)\cl.exe
818 *_VS2010x86_X64_ASM_PATH = DEF(VS2010x86_BINX64)\ml64.exe
819 *_VS2010x86_X64_SLINK_PATH = DEF(VS2010x86_BINX64)\lib.exe
820 *_VS2010x86_X64_DLINK_PATH = DEF(VS2010x86_BINX64)\link.exe
821 *_VS2010x86_X64_ASLDLINK_PATH = DEF(VS2010x86_BINX64)\link.exe
822
823 DEBUG_VS2010x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Z7
824 RELEASE_VS2010x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF
825 NOOPT_VS2010x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Z7 /Od
826
827 DEBUG_VS2010x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi
828 RELEASE_VS2010x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd
829 NOOPT_VS2010x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi
830
831 DEBUG_VS2010x86_X64_NASM_FLAGS = -Ox -f win64 -g
832 RELEASE_VS2010x86_X64_NASM_FLAGS = -Ox -f win64
833 NOOPT_VS2010x86_X64_NASM_FLAGS = -O0 -f win64 -g
834
835 DEBUG_VS2010x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /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
836 RELEASE_VS2010x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /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
837 NOOPT_VS2010x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /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
838
839 ##################
840 # EBC definitions
841 ##################
842 *_VS2010x86_EBC_*_FAMILY = INTEL
843 *_VS2010x86_EBC_*_DLL = DEF(VS2010x86_DLL)
844
845 *_VS2010x86_EBC_PP_PATH = DEF(EBC_BINx86)\iec.exe
846 *_VS2010x86_EBC_VFRPP_PATH = DEF(EBC_BINx86)\iec.exe
847 *_VS2010x86_EBC_CC_PATH = DEF(EBC_BINx86)\iec.exe
848 *_VS2010x86_EBC_SLINK_PATH = DEF(VS2010x86_BIN)\link.exe
849 *_VS2010x86_EBC_DLINK_PATH = DEF(VS2010x86_BIN)\link.exe
850
851 *_VS2010x86_EBC_PP_FLAGS = /nologo /E /TC /FIAutoGen.h
852 *_VS2010x86_EBC_CC_FLAGS = /nologo /c /WX /W3 /FIAutoGen.h /D$(MODULE_ENTRY_POINT)=$(ARCH_ENTRY_POINT)
853 *_VS2010x86_EBC_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h
854 *_VS2010x86_EBC_SLINK_FLAGS = /lib /NOLOGO /MACHINE:EBC
855 *_VS2010x86_EBC_DLINK_FLAGS = "C:\Program Files (x86)\Intel\EBC\Lib\EbcLib.lib" /NOLOGO /NODEFAULTLIB /MACHINE:EBC /OPT:REF /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /MAP /ALIGN:32 /DRIVER
856
857
858 ####################################################################################
859 #
860 # Microsoft Visual Studio 2012
861 #
862 # VS2012 - Microsoft Visual Studio 2012 Professional Edition with Intel ASL
863 # ASL - Intel ACPI Source Language Compiler
864 ####################################################################################
865 # VS2012 - Microsoft Visual Studio 2012 Professional Edition
866 *_VS2012_*_*_FAMILY = MSFT
867
868 *_VS2012_*_MAKE_PATH = DEF(VS2012_BIN)\nmake.exe
869 *_VS2012_*_MAKE_FLAGS = /nologo
870 *_VS2012_*_RC_PATH = DEF(WINSDK71_BIN)\rc.exe
871
872 *_VS2012_*_SLINK_FLAGS = /NOLOGO /LTCG
873 *_VS2012_*_APP_FLAGS = /nologo /E /TC
874 *_VS2012_*_PP_FLAGS = /nologo /E /TC /FIAutoGen.h
875 *_VS2012_*_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h
876 *_VS2012_*_DEPS_FLAGS = DEF(MSFT_DEPS_FLAGS)
877 *_VS2012_*_ASM16_PATH = DEF(VS2012_BIN)\ml.exe
878
879 ##################
880 # ASL definitions
881 ##################
882 *_VS2012_*_ASL_PATH = DEF(DEFAULT_WIN_ASL_BIN)
883 *_VS2012_*_ASL_FLAGS = DEF(DEFAULT_WIN_ASL_FLAGS)
884 *_VS2012_*_ASL_OUTFLAGS = DEF(DEFAULT_WIN_ASL_OUTFLAGS)
885 *_VS2012_*_ASLCC_FLAGS = DEF(MSFT_ASLCC_FLAGS)
886 *_VS2012_*_ASLPP_FLAGS = DEF(MSFT_ASLPP_FLAGS)
887 *_VS2012_*_ASLDLINK_FLAGS = DEF(MSFT_ASLDLINK_FLAGS)
888
889 ##################
890 # IA32 definitions
891 ##################
892 *_VS2012_IA32_*_DLL = DEF(VS2012_DLL)
893
894 *_VS2012_IA32_CC_PATH = DEF(VS2012_BIN)\cl.exe
895 *_VS2012_IA32_VFRPP_PATH = DEF(VS2012_BIN)\cl.exe
896 *_VS2012_IA32_SLINK_PATH = DEF(VS2012_BIN)\lib.exe
897 *_VS2012_IA32_DLINK_PATH = DEF(VS2012_BIN)\link.exe
898 *_VS2012_IA32_APP_PATH = DEF(VS2012_BIN)\cl.exe
899 *_VS2012_IA32_PP_PATH = DEF(VS2012_BIN)\cl.exe
900 *_VS2012_IA32_ASM_PATH = DEF(VS2012_BIN)\ml.exe
901 *_VS2012_IA32_ASLCC_PATH = DEF(VS2012_BIN)\cl.exe
902 *_VS2012_IA32_ASLPP_PATH = DEF(VS2012_BIN)\cl.exe
903 *_VS2012_IA32_ASLDLINK_PATH = DEF(VS2012_BIN)\link.exe
904
905 DEBUG_VS2012_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Z7
906 RELEASE_VS2012_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF
907 NOOPT_VS2012_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Z7 /Od
908
909 DEBUG_VS2012_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi
910 RELEASE_VS2012_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd
911 NOOPT_VS2012_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi
912
913 DEBUG_VS2012_IA32_NASM_FLAGS = -Ox -f win32 -g
914 RELEASE_VS2012_IA32_NASM_FLAGS = -Ox -f win32
915 NOOPT_VS2012_IA32_NASM_FLAGS = -O0 -f win32 -g
916
917 DEBUG_VS2012_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
918 RELEASE_VS2012_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
919 NOOPT_VS2012_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
920
921 ##################
922 # X64 definitions
923 ##################
924 *_VS2012_X64_*_DLL = DEF(VS2012_DLL)
925
926 *_VS2012_X64_CC_PATH = DEF(VS2012_BINX64)\cl.exe
927 *_VS2012_X64_PP_PATH = DEF(VS2012_BINX64)\cl.exe
928 *_VS2012_X64_APP_PATH = DEF(VS2012_BINX64)\cl.exe
929 *_VS2012_X64_VFRPP_PATH = DEF(VS2012_BINX64)\cl.exe
930 *_VS2012_X64_ASM_PATH = DEF(VS2012_BINX64)\ml64.exe
931 *_VS2012_X64_SLINK_PATH = DEF(VS2012_BINX64)\lib.exe
932 *_VS2012_X64_DLINK_PATH = DEF(VS2012_BINX64)\link.exe
933 *_VS2012_X64_ASLCC_PATH = DEF(VS2012_BINX64)\cl.exe
934 *_VS2012_X64_ASLPP_PATH = DEF(VS2012_BINX64)\cl.exe
935 *_VS2012_X64_ASLDLINK_PATH = DEF(VS2012_BINX64)\link.exe
936
937 DEBUG_VS2012_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Z7
938 RELEASE_VS2012_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF
939 NOOPT_VS2012_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Z7 /Od
940
941 DEBUG_VS2012_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi
942 RELEASE_VS2012_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd
943 NOOPT_VS2012_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi
944
945 DEBUG_VS2012_X64_NASM_FLAGS = -Ox -f win64 -g
946 RELEASE_VS2012_X64_NASM_FLAGS = -Ox -f win64
947 NOOPT_VS2012_X64_NASM_FLAGS = -O0 -f win64 -g
948
949 DEBUG_VS2012_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /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
950 RELEASE_VS2012_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /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
951 NOOPT_VS2012_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /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
952
953 ##################
954 # EBC definitions
955 ##################
956 *_VS2012_EBC_*_FAMILY = INTEL
957 *_VS2012_EBC_*_DLL = DEF(VS2012_DLL)
958
959 *_VS2012_EBC_PP_PATH = DEF(EBC_BIN)\iec.exe
960 *_VS2012_EBC_VFRPP_PATH = DEF(EBC_BIN)\iec.exe
961 *_VS2012_EBC_CC_PATH = DEF(EBC_BIN)\iec.exe
962 *_VS2012_EBC_SLINK_PATH = DEF(VS2012_BIN)\link.exe
963 *_VS2012_EBC_DLINK_PATH = DEF(VS2012_BIN)\link.exe
964
965 *_VS2012_EBC_PP_FLAGS = /nologo /E /TC /FIAutoGen.h
966 *_VS2012_EBC_CC_FLAGS = /nologo /c /WX /W3 /FIAutoGen.h /D$(MODULE_ENTRY_POINT)=$(ARCH_ENTRY_POINT)
967 *_VS2012_EBC_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h
968 *_VS2012_EBC_SLINK_FLAGS = /lib /NOLOGO /MACHINE:EBC
969 *_VS2012_EBC_DLINK_FLAGS = "C:\Program Files\Intel\EBC\Lib\EbcLib.lib" /NOLOGO /NODEFAULTLIB /MACHINE:EBC /OPT:REF /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /MAP /ALIGN:32 /DRIVER
970
971
972 ####################################################################################
973 # VS2012x86 - Microsoft Visual Studio 2012 (x86) professional with Intel ASL
974 # ASL - Intel ACPI Source Language Compiler (iasl.exe)
975 ####################################################################################
976 # VS2012x86 - Microsoft Visual Studio 2012 (x86) professional Edition with Intel ASL
977 *_VS2012x86_*_*_FAMILY = MSFT
978
979 *_VS2012x86_*_MAKE_PATH = DEF(VS2012x86_BIN)\nmake.exe
980 *_VS2012x86_*_MAKE_FLAGS = /nologo
981 *_VS2012x86_*_RC_PATH = DEF(WINSDK71x86_BIN)\rc.exe
982
983 *_VS2012x86_*_SLINK_FLAGS = /NOLOGO /LTCG
984 *_VS2012x86_*_APP_FLAGS = /nologo /E /TC
985 *_VS2012x86_*_PP_FLAGS = /nologo /E /TC /FIAutoGen.h
986 *_VS2012x86_*_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h
987 *_VS2012x86_*_DEPS_FLAGS = DEF(MSFT_DEPS_FLAGS)
988 *_VS2012x86_*_ASM16_PATH = DEF(VS2012x86_BIN)\ml.exe
989
990 ##################
991 # ASL definitions
992 ##################
993 *_VS2012x86_*_ASL_PATH = DEF(WIN_IASL_BIN)
994 *_VS2012x86_*_ASL_FLAGS = DEF(DEFAULT_WIN_ASL_FLAGS)
995 *_VS2012x86_*_ASL_OUTFLAGS = DEF(DEFAULT_WIN_ASL_OUTFLAGS)
996 *_VS2012x86_*_ASLCC_FLAGS = DEF(MSFT_ASLCC_FLAGS)
997 *_VS2012x86_*_ASLPP_FLAGS = DEF(MSFT_ASLPP_FLAGS)
998 *_VS2012x86_*_ASLDLINK_FLAGS = DEF(MSFT_ASLDLINK_FLAGS)
999
1000 ##################
1001 # IA32 definitions
1002 ##################
1003 *_VS2012x86_IA32_*_DLL = DEF(VS2012x86_DLL)
1004
1005 *_VS2012x86_IA32_CC_PATH = DEF(VS2012x86_BIN)\cl.exe
1006 *_VS2012x86_IA32_VFRPP_PATH = DEF(VS2012x86_BIN)\cl.exe
1007 *_VS2012x86_IA32_ASLCC_PATH = DEF(VS2012x86_BIN)\cl.exe
1008 *_VS2012x86_IA32_ASLPP_PATH = DEF(VS2012x86_BIN)\cl.exe
1009 *_VS2012x86_IA32_SLINK_PATH = DEF(VS2012x86_BIN)\lib.exe
1010 *_VS2012x86_IA32_DLINK_PATH = DEF(VS2012x86_BIN)\link.exe
1011 *_VS2012x86_IA32_ASLDLINK_PATH= DEF(VS2012x86_BIN)\link.exe
1012 *_VS2012x86_IA32_APP_PATH = DEF(VS2012x86_BIN)\cl.exe
1013 *_VS2012x86_IA32_PP_PATH = DEF(VS2012x86_BIN)\cl.exe
1014 *_VS2012x86_IA32_ASM_PATH = DEF(VS2012x86_BIN)\ml.exe
1015
1016 DEBUG_VS2012x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Z7
1017 RELEASE_VS2012x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF
1018 NOOPT_VS2012x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Z7 /Od
1019
1020 DEBUG_VS2012x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi
1021 RELEASE_VS2012x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd
1022 NOOPT_VS2012x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi
1023
1024 DEBUG_VS2012x86_IA32_NASM_FLAGS = -Ox -f win32 -g
1025 RELEASE_VS2012x86_IA32_NASM_FLAGS = -Ox -f win32
1026 NOOPT_VS2012x86_IA32_NASM_FLAGS = -O0 -f win32 -g
1027
1028 DEBUG_VS2012x86_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
1029 RELEASE_VS2012x86_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
1030 NOOPT_VS2012x86_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
1031
1032 ##################
1033 # X64 definitions
1034 ##################
1035 *_VS2012x86_X64_*_DLL = DEF(VS2012x86_DLL)
1036
1037 *_VS2012x86_X64_CC_PATH = DEF(VS2012x86_BINX64)\cl.exe
1038 *_VS2012x86_X64_PP_PATH = DEF(VS2012x86_BINX64)\cl.exe
1039 *_VS2012x86_X64_APP_PATH = DEF(VS2012x86_BINX64)\cl.exe
1040 *_VS2012x86_X64_VFRPP_PATH = DEF(VS2012x86_BINX64)\cl.exe
1041 *_VS2012x86_X64_ASLCC_PATH = DEF(VS2012x86_BINX64)\cl.exe
1042 *_VS2012x86_X64_ASLPP_PATH = DEF(VS2012x86_BINX64)\cl.exe
1043 *_VS2012x86_X64_ASM_PATH = DEF(VS2012x86_BINX64)\ml64.exe
1044 *_VS2012x86_X64_SLINK_PATH = DEF(VS2012x86_BINX64)\lib.exe
1045 *_VS2012x86_X64_DLINK_PATH = DEF(VS2012x86_BINX64)\link.exe
1046 *_VS2012x86_X64_ASLDLINK_PATH = DEF(VS2012x86_BINX64)\link.exe
1047
1048 DEBUG_VS2012x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Z7
1049 RELEASE_VS2012x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF
1050 NOOPT_VS2012x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Z7 /Od
1051
1052 DEBUG_VS2012x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi
1053 RELEASE_VS2012x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd
1054 NOOPT_VS2012x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi
1055
1056 DEBUG_VS2012x86_X64_NASM_FLAGS = -Ox -f win64 -g
1057 RELEASE_VS2012x86_X64_NASM_FLAGS = -Ox -f win64
1058 NOOPT_VS2012x86_X64_NASM_FLAGS = -O0 -f win64 -g
1059
1060 DEBUG_VS2012x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /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
1061 RELEASE_VS2012x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /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
1062 NOOPT_VS2012x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /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
1063
1064 ##################
1065 # EBC definitions
1066 ##################
1067 *_VS2012x86_EBC_*_FAMILY = INTEL
1068 *_VS2012x86_EBC_*_DLL = DEF(VS2012x86_DLL)
1069
1070 *_VS2012x86_EBC_PP_PATH = DEF(EBC_BINx86)\iec.exe
1071 *_VS2012x86_EBC_VFRPP_PATH = DEF(EBC_BINx86)\iec.exe
1072 *_VS2012x86_EBC_CC_PATH = DEF(EBC_BINx86)\iec.exe
1073 *_VS2012x86_EBC_SLINK_PATH = DEF(VS2012x86_BIN)\link.exe
1074 *_VS2012x86_EBC_DLINK_PATH = DEF(VS2012x86_BIN)\link.exe
1075
1076 *_VS2012x86_EBC_PP_FLAGS = /nologo /E /TC /FIAutoGen.h
1077 *_VS2012x86_EBC_CC_FLAGS = /nologo /c /WX /W3 /FIAutoGen.h /D$(MODULE_ENTRY_POINT)=$(ARCH_ENTRY_POINT)
1078 *_VS2012x86_EBC_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h
1079 *_VS2012x86_EBC_SLINK_FLAGS = /lib /NOLOGO /MACHINE:EBC
1080 *_VS2012x86_EBC_DLINK_FLAGS = "C:\Program Files (x86)\Intel\EBC\Lib\EbcLib.lib" /NOLOGO /NODEFAULTLIB /MACHINE:EBC /OPT:REF /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /MAP /ALIGN:32 /DRIVER
1081
1082
1083 ####################################################################################
1084 #
1085 # Microsoft Visual Studio 2013
1086 #
1087 # VS2013 - Microsoft Visual Studio 2013 Professional Edition with Intel ASL
1088 # ASL - Intel ACPI Source Language Compiler
1089 ####################################################################################
1090 # VS2013 - Microsoft Visual Studio 2013 Professional Edition
1091 *_VS2013_*_*_FAMILY = MSFT
1092
1093 *_VS2013_*_MAKE_PATH = DEF(VS2013_BIN)\nmake.exe
1094 *_VS2013_*_MAKE_FLAGS = /nologo
1095 *_VS2013_*_RC_PATH = DEF(WINSDK8_BIN)\rc.exe
1096
1097 *_VS2013_*_SLINK_FLAGS = /NOLOGO /LTCG
1098 *_VS2013_*_APP_FLAGS = /nologo /E /TC
1099 *_VS2013_*_PP_FLAGS = /nologo /E /TC /FIAutoGen.h
1100 *_VS2013_*_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h
1101 *_VS2013_*_DEPS_FLAGS = DEF(MSFT_DEPS_FLAGS)
1102 *_VS2013_*_ASM16_PATH = DEF(VS2013_BIN)\ml.exe
1103
1104 ##################
1105 # ASL definitions
1106 ##################
1107 *_VS2013_*_ASL_PATH = DEF(DEFAULT_WIN_ASL_BIN)
1108 *_VS2013_*_ASL_FLAGS = DEF(DEFAULT_WIN_ASL_FLAGS)
1109 *_VS2013_*_ASL_OUTFLAGS = DEF(DEFAULT_WIN_ASL_OUTFLAGS)
1110 *_VS2013_*_ASLCC_FLAGS = DEF(MSFT_ASLCC_FLAGS)
1111 *_VS2013_*_ASLPP_FLAGS = DEF(MSFT_ASLPP_FLAGS)
1112 *_VS2013_*_ASLDLINK_FLAGS = DEF(MSFT_ASLDLINK_FLAGS)
1113
1114 ##################
1115 # IA32 definitions
1116 ##################
1117 *_VS2013_IA32_*_DLL = DEF(VS2013_DLL)
1118
1119 *_VS2013_IA32_CC_PATH = DEF(VS2013_BIN)\cl.exe
1120 *_VS2013_IA32_VFRPP_PATH = DEF(VS2013_BIN)\cl.exe
1121 *_VS2013_IA32_SLINK_PATH = DEF(VS2013_BIN)\lib.exe
1122 *_VS2013_IA32_DLINK_PATH = DEF(VS2013_BIN)\link.exe
1123 *_VS2013_IA32_APP_PATH = DEF(VS2013_BIN)\cl.exe
1124 *_VS2013_IA32_PP_PATH = DEF(VS2013_BIN)\cl.exe
1125 *_VS2013_IA32_ASM_PATH = DEF(VS2013_BIN)\ml.exe
1126 *_VS2013_IA32_ASLCC_PATH = DEF(VS2013_BIN)\cl.exe
1127 *_VS2013_IA32_ASLPP_PATH = DEF(VS2013_BIN)\cl.exe
1128 *_VS2013_IA32_ASLDLINK_PATH = DEF(VS2013_BIN)\link.exe
1129
1130 DEBUG_VS2013_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Z7 /Gw
1131 RELEASE_VS2013_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gw
1132 NOOPT_VS2013_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Z7 /Od
1133
1134 DEBUG_VS2013_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi
1135 RELEASE_VS2013_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd
1136 NOOPT_VS2013_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi
1137
1138 DEBUG_VS2013_IA32_NASM_FLAGS = -Ox -f win32 -g
1139 RELEASE_VS2013_IA32_NASM_FLAGS = -Ox -f win32
1140 NOOPT_VS2013_IA32_NASM_FLAGS = -O0 -f win32 -g
1141
1142 DEBUG_VS2013_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
1143 RELEASE_VS2013_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
1144 NOOPT_VS2013_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
1145
1146 ##################
1147 # X64 definitions
1148 ##################
1149 *_VS2013_X64_*_DLL = DEF(VS2013_DLL)
1150
1151 *_VS2013_X64_CC_PATH = DEF(VS2013_BINX64)\cl.exe
1152 *_VS2013_X64_PP_PATH = DEF(VS2013_BINX64)\cl.exe
1153 *_VS2013_X64_APP_PATH = DEF(VS2013_BINX64)\cl.exe
1154 *_VS2013_X64_VFRPP_PATH = DEF(VS2013_BINX64)\cl.exe
1155 *_VS2013_X64_ASM_PATH = DEF(VS2013_BINX64)\ml64.exe
1156 *_VS2013_X64_SLINK_PATH = DEF(VS2013_BINX64)\lib.exe
1157 *_VS2013_X64_DLINK_PATH = DEF(VS2013_BINX64)\link.exe
1158 *_VS2013_X64_ASLCC_PATH = DEF(VS2013_BINX64)\cl.exe
1159 *_VS2013_X64_ASLPP_PATH = DEF(VS2013_BINX64)\cl.exe
1160 *_VS2013_X64_ASLDLINK_PATH = DEF(VS2013_BINX64)\link.exe
1161
1162 DEBUG_VS2013_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Z7 /Gw
1163 RELEASE_VS2013_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Gw
1164 NOOPT_VS2013_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Z7 /Od
1165
1166 DEBUG_VS2013_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi
1167 RELEASE_VS2013_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd
1168 NOOPT_VS2013_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi
1169
1170 DEBUG_VS2013_X64_NASM_FLAGS = -Ox -f win64 -g
1171 RELEASE_VS2013_X64_NASM_FLAGS = -Ox -f win64
1172 NOOPT_VS2013_X64_NASM_FLAGS = -O0 -f win64 -g
1173
1174 DEBUG_VS2013_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /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
1175 RELEASE_VS2013_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /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
1176 NOOPT_VS2013_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /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
1177
1178 ##################
1179 # EBC definitions
1180 ##################
1181 *_VS2013_EBC_*_FAMILY = INTEL
1182 *_VS2013_EBC_*_DLL = DEF(VS2013_DLL)
1183
1184 *_VS2013_EBC_PP_PATH = DEF(EBC_BIN)\iec.exe
1185 *_VS2013_EBC_VFRPP_PATH = DEF(EBC_BIN)\iec.exe
1186 *_VS2013_EBC_CC_PATH = DEF(EBC_BIN)\iec.exe
1187 *_VS2013_EBC_SLINK_PATH = DEF(VS2013_BIN)\link.exe
1188 *_VS2013_EBC_DLINK_PATH = DEF(VS2013_BIN)\link.exe
1189
1190 *_VS2013_EBC_PP_FLAGS = /nologo /E /TC /FIAutoGen.h
1191 *_VS2013_EBC_CC_FLAGS = /nologo /c /WX /W3 /FIAutoGen.h /D$(MODULE_ENTRY_POINT)=$(ARCH_ENTRY_POINT)
1192 *_VS2013_EBC_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h
1193 *_VS2013_EBC_SLINK_FLAGS = /lib /NOLOGO /MACHINE:EBC
1194 *_VS2013_EBC_DLINK_FLAGS = "C:\Program Files\Intel\EBC\Lib\EbcLib.lib" /NOLOGO /NODEFAULTLIB /MACHINE:EBC /OPT:REF /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /MAP /ALIGN:32 /DRIVER
1195
1196
1197 ####################################################################################
1198 # VS2013x86 - Microsoft Visual Studio 2013 (x86) professional with Intel ASL
1199 # ASL - Intel ACPI Source Language Compiler (iasl.exe)
1200 ####################################################################################
1201 # VS2013x86 - Microsoft Visual Studio 2013 (x86) professional Edition with Intel ASL
1202 *_VS2013x86_*_*_FAMILY = MSFT
1203
1204 *_VS2013x86_*_MAKE_PATH = DEF(VS2013x86_BIN)\nmake.exe
1205 *_VS2013x86_*_MAKE_FLAGS = /nologo
1206 *_VS2013x86_*_RC_PATH = DEF(WINSDK8x86_BIN)\rc.exe
1207
1208 *_VS2013x86_*_SLINK_FLAGS = /NOLOGO /LTCG
1209 *_VS2013x86_*_APP_FLAGS = /nologo /E /TC
1210 *_VS2013x86_*_PP_FLAGS = /nologo /E /TC /FIAutoGen.h
1211 *_VS2013x86_*_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h
1212 *_VS2013x86_*_DEPS_FLAGS = DEF(MSFT_DEPS_FLAGS)
1213 *_VS2013x86_*_ASM16_PATH = DEF(VS2013x86_BIN)\ml.exe
1214
1215 ##################
1216 # ASL definitions
1217 ##################
1218 *_VS2013x86_*_ASL_PATH = DEF(WIN_IASL_BIN)
1219 *_VS2013x86_*_ASL_FLAGS = DEF(DEFAULT_WIN_ASL_FLAGS)
1220 *_VS2013x86_*_ASL_OUTFLAGS = DEF(DEFAULT_WIN_ASL_OUTFLAGS)
1221 *_VS2013x86_*_ASLCC_FLAGS = DEF(MSFT_ASLCC_FLAGS)
1222 *_VS2013x86_*_ASLPP_FLAGS = DEF(MSFT_ASLPP_FLAGS)
1223 *_VS2013x86_*_ASLDLINK_FLAGS = DEF(MSFT_ASLDLINK_FLAGS)
1224
1225 ##################
1226 # IA32 definitions
1227 ##################
1228 *_VS2013x86_IA32_*_DLL = DEF(VS2013x86_DLL)
1229
1230 *_VS2013x86_IA32_CC_PATH = DEF(VS2013x86_BIN)\cl.exe
1231 *_VS2013x86_IA32_VFRPP_PATH = DEF(VS2013x86_BIN)\cl.exe
1232 *_VS2013x86_IA32_ASLCC_PATH = DEF(VS2013x86_BIN)\cl.exe
1233 *_VS2013x86_IA32_ASLPP_PATH = DEF(VS2013x86_BIN)\cl.exe
1234 *_VS2013x86_IA32_SLINK_PATH = DEF(VS2013x86_BIN)\lib.exe
1235 *_VS2013x86_IA32_DLINK_PATH = DEF(VS2013x86_BIN)\link.exe
1236 *_VS2013x86_IA32_ASLDLINK_PATH= DEF(VS2013x86_BIN)\link.exe
1237 *_VS2013x86_IA32_APP_PATH = DEF(VS2013x86_BIN)\cl.exe
1238 *_VS2013x86_IA32_PP_PATH = DEF(VS2013x86_BIN)\cl.exe
1239 *_VS2013x86_IA32_ASM_PATH = DEF(VS2013x86_BIN)\ml.exe
1240
1241 DEBUG_VS2013x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Z7 /Gw
1242 RELEASE_VS2013x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gw
1243 NOOPT_VS2013x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Z7 /Od
1244
1245 DEBUG_VS2013x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi
1246 RELEASE_VS2013x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd
1247 NOOPT_VS2013x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi
1248
1249 DEBUG_VS2013x86_IA32_NASM_FLAGS = -Ox -f win32 -g
1250 RELEASE_VS2013x86_IA32_NASM_FLAGS = -Ox -f win32
1251 NOOPT_VS2013x86_IA32_NASM_FLAGS = -O0 -f win32 -g
1252
1253 DEBUG_VS2013x86_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
1254 RELEASE_VS2013x86_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
1255 NOOPT_VS2013x86_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
1256
1257 ##################
1258 # X64 definitions
1259 ##################
1260 *_VS2013x86_X64_*_DLL = DEF(VS2013x86_DLL)
1261
1262 *_VS2013x86_X64_CC_PATH = DEF(VS2013x86_BINX64)\cl.exe
1263 *_VS2013x86_X64_PP_PATH = DEF(VS2013x86_BINX64)\cl.exe
1264 *_VS2013x86_X64_APP_PATH = DEF(VS2013x86_BINX64)\cl.exe
1265 *_VS2013x86_X64_VFRPP_PATH = DEF(VS2013x86_BINX64)\cl.exe
1266 *_VS2013x86_X64_ASLCC_PATH = DEF(VS2013x86_BINX64)\cl.exe
1267 *_VS2013x86_X64_ASLPP_PATH = DEF(VS2013x86_BINX64)\cl.exe
1268 *_VS2013x86_X64_ASM_PATH = DEF(VS2013x86_BINX64)\ml64.exe
1269 *_VS2013x86_X64_SLINK_PATH = DEF(VS2013x86_BINX64)\lib.exe
1270 *_VS2013x86_X64_DLINK_PATH = DEF(VS2013x86_BINX64)\link.exe
1271 *_VS2013x86_X64_ASLDLINK_PATH = DEF(VS2013x86_BINX64)\link.exe
1272
1273 DEBUG_VS2013x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Z7 /Gw
1274 RELEASE_VS2013x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Gw
1275 NOOPT_VS2013x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Z7 /Od
1276
1277 DEBUG_VS2013x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi
1278 RELEASE_VS2013x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd
1279 NOOPT_VS2013x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi
1280
1281 DEBUG_VS2013x86_X64_NASM_FLAGS = -Ox -f win64 -g
1282 RELEASE_VS2013x86_X64_NASM_FLAGS = -Ox -f win64
1283 NOOPT_VS2013x86_X64_NASM_FLAGS = -O0 -f win64 -g
1284
1285 DEBUG_VS2013x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /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
1286 RELEASE_VS2013x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /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
1287 NOOPT_VS2013x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /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
1288
1289 ##################
1290 # EBC definitions
1291 ##################
1292 *_VS2013x86_EBC_*_FAMILY = INTEL
1293 *_VS2013x86_EBC_*_DLL = DEF(VS2013x86_DLL)
1294
1295 *_VS2013x86_EBC_PP_PATH = DEF(EBC_BINx86)\iec.exe
1296 *_VS2013x86_EBC_VFRPP_PATH = DEF(EBC_BINx86)\iec.exe
1297 *_VS2013x86_EBC_CC_PATH = DEF(EBC_BINx86)\iec.exe
1298 *_VS2013x86_EBC_SLINK_PATH = DEF(VS2013x86_BIN)\link.exe
1299 *_VS2013x86_EBC_DLINK_PATH = DEF(VS2013x86_BIN)\link.exe
1300
1301 *_VS2013x86_EBC_PP_FLAGS = /nologo /E /TC /FIAutoGen.h
1302 *_VS2013x86_EBC_CC_FLAGS = /nologo /c /WX /W3 /FIAutoGen.h /D$(MODULE_ENTRY_POINT)=$(ARCH_ENTRY_POINT)
1303 *_VS2013x86_EBC_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h
1304 *_VS2013x86_EBC_SLINK_FLAGS = /lib /NOLOGO /MACHINE:EBC
1305 *_VS2013x86_EBC_DLINK_FLAGS = "C:\Program Files (x86)\Intel\EBC\Lib\EbcLib.lib" /NOLOGO /NODEFAULTLIB /MACHINE:EBC /OPT:REF /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /MAP /ALIGN:32 /DRIVER
1306
1307
1308 ####################################################################################
1309 #
1310 # Microsoft Visual Studio 2015
1311 #
1312 # VS2015 - Microsoft Visual Studio 2015 Professional Edition with Intel ASL
1313 # ASL - Intel ACPI Source Language Compiler
1314 ####################################################################################
1315 # VS2015 - Microsoft Visual Studio 2015 Professional Edition
1316 *_VS2015_*_*_FAMILY = MSFT
1317
1318 *_VS2015_*_MAKE_PATH = DEF(VS2015_BIN)\nmake.exe
1319 *_VS2015_*_MAKE_FLAGS = /nologo
1320 *_VS2015_*_RC_PATH = DEF(WINSDK81_BIN)\rc.exe
1321
1322 *_VS2015_*_SLINK_FLAGS = /NOLOGO /LTCG
1323 *_VS2015_*_APP_FLAGS = /nologo /E /TC
1324 *_VS2015_*_PP_FLAGS = /nologo /E /TC /FIAutoGen.h
1325 *_VS2015_*_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h
1326 *_VS2015_*_DLINK2_FLAGS =
1327 *_VS2015_*_DEPS_FLAGS = DEF(MSFT_DEPS_FLAGS)
1328 *_VS2015_*_ASM16_PATH = DEF(VS2015_BIN)\ml.exe
1329
1330 ##################
1331 # ASL definitions
1332 ##################
1333 *_VS2015_*_ASL_PATH = DEF(DEFAULT_WIN_ASL_BIN)
1334 *_VS2015_*_ASL_FLAGS = DEF(DEFAULT_WIN_ASL_FLAGS)
1335 *_VS2015_*_ASL_OUTFLAGS = DEF(DEFAULT_WIN_ASL_OUTFLAGS)
1336 *_VS2015_*_ASLCC_FLAGS = DEF(MSFT_ASLCC_FLAGS)
1337 *_VS2015_*_ASLPP_FLAGS = DEF(MSFT_ASLPP_FLAGS)
1338 *_VS2015_*_ASLDLINK_FLAGS = DEF(MSFT_ASLDLINK_FLAGS)
1339
1340 ##################
1341 # IA32 definitions
1342 ##################
1343 *_VS2015_IA32_*_DLL = DEF(VS2015_DLL)
1344
1345 *_VS2015_IA32_CC_PATH = DEF(VS2015_BIN)\cl.exe
1346 *_VS2015_IA32_VFRPP_PATH = DEF(VS2015_BIN)\cl.exe
1347 *_VS2015_IA32_SLINK_PATH = DEF(VS2015_BIN)\lib.exe
1348 *_VS2015_IA32_DLINK_PATH = DEF(VS2015_BIN)\link.exe
1349 *_VS2015_IA32_APP_PATH = DEF(VS2015_BIN)\cl.exe
1350 *_VS2015_IA32_PP_PATH = DEF(VS2015_BIN)\cl.exe
1351 *_VS2015_IA32_ASM_PATH = DEF(VS2015_BIN)\ml.exe
1352 *_VS2015_IA32_ASLCC_PATH = DEF(VS2015_BIN)\cl.exe
1353 *_VS2015_IA32_ASLPP_PATH = DEF(VS2015_BIN)\cl.exe
1354 *_VS2015_IA32_ASLDLINK_PATH = DEF(VS2015_BIN)\link.exe
1355
1356 DEBUG_VS2015_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Z7 /Gw
1357 RELEASE_VS2015_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gw
1358 NOOPT_VS2015_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Z7 /Od
1359
1360 DEBUG_VS2015_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi
1361 RELEASE_VS2015_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd
1362 NOOPT_VS2015_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi
1363
1364 DEBUG_VS2015_IA32_NASM_FLAGS = -Ox -f win32 -g
1365 RELEASE_VS2015_IA32_NASM_FLAGS = -Ox -f win32
1366 NOOPT_VS2015_IA32_NASM_FLAGS = -O0 -f win32 -g
1367
1368 DEBUG_VS2015_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
1369 RELEASE_VS2015_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
1370 NOOPT_VS2015_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
1371
1372 ##################
1373 # X64 definitions
1374 ##################
1375 *_VS2015_X64_*_DLL = DEF(VS2015_DLL)
1376
1377 *_VS2015_X64_CC_PATH = DEF(VS2015_BINX64)\cl.exe
1378 *_VS2015_X64_PP_PATH = DEF(VS2015_BINX64)\cl.exe
1379 *_VS2015_X64_APP_PATH = DEF(VS2015_BINX64)\cl.exe
1380 *_VS2015_X64_VFRPP_PATH = DEF(VS2015_BINX64)\cl.exe
1381 *_VS2015_X64_ASM_PATH = DEF(VS2015_BINX64)\ml64.exe
1382 *_VS2015_X64_SLINK_PATH = DEF(VS2015_BINX64)\lib.exe
1383 *_VS2015_X64_DLINK_PATH = DEF(VS2015_BINX64)\link.exe
1384 *_VS2015_X64_ASLCC_PATH = DEF(VS2015_BINX64)\cl.exe
1385 *_VS2015_X64_ASLPP_PATH = DEF(VS2015_BINX64)\cl.exe
1386 *_VS2015_X64_ASLDLINK_PATH = DEF(VS2015_BINX64)\link.exe
1387
1388 DEBUG_VS2015_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Z7 /Gw
1389 RELEASE_VS2015_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Gw
1390 NOOPT_VS2015_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Z7 /Od
1391
1392 DEBUG_VS2015_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi
1393 RELEASE_VS2015_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd
1394 NOOPT_VS2015_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi
1395
1396 DEBUG_VS2015_X64_NASM_FLAGS = -Ox -f win64 -g
1397 RELEASE_VS2015_X64_NASM_FLAGS = -Ox -f win64
1398 NOOPT_VS2015_X64_NASM_FLAGS = -O0 -f win64 -g
1399
1400 DEBUG_VS2015_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /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
1401 RELEASE_VS2015_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /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
1402 NOOPT_VS2015_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /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
1403
1404 ##################
1405 # EBC definitions
1406 ##################
1407 *_VS2015_EBC_*_FAMILY = INTEL
1408 *_VS2015_EBC_*_DLL = DEF(VS2015_DLL)
1409
1410 *_VS2015_EBC_PP_PATH = DEF(EBC_BIN)\iec.exe
1411 *_VS2015_EBC_VFRPP_PATH = DEF(EBC_BIN)\iec.exe
1412 *_VS2015_EBC_CC_PATH = DEF(EBC_BIN)\iec.exe
1413 *_VS2015_EBC_SLINK_PATH = DEF(VS2015_BIN)\link.exe
1414 *_VS2015_EBC_DLINK_PATH = DEF(VS2015_BIN)\link.exe
1415
1416 *_VS2015_EBC_PP_FLAGS = /nologo /E /TC /FIAutoGen.h
1417 *_VS2015_EBC_CC_FLAGS = /nologo /c /WX /W3 /FIAutoGen.h /D$(MODULE_ENTRY_POINT)=$(ARCH_ENTRY_POINT)
1418 *_VS2015_EBC_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h
1419 *_VS2015_EBC_SLINK_FLAGS = /lib /NOLOGO /MACHINE:EBC
1420 *_VS2015_EBC_DLINK_FLAGS = "C:\Program Files\Intel\EBC\Lib\EbcLib.lib" /NOLOGO /NODEFAULTLIB /MACHINE:EBC /OPT:REF /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /MAP /ALIGN:32 /DRIVER
1421
1422
1423 ####################################################################################
1424 # VS2015x86 - Microsoft Visual Studio 2015 (x86) professional with Intel ASL
1425 # ASL - Intel ACPI Source Language Compiler (iasl.exe)
1426 ####################################################################################
1427 # VS2015x86 - Microsoft Visual Studio 2015 (x86) professional Edition with Intel ASL
1428 *_VS2015x86_*_*_FAMILY = MSFT
1429
1430 *_VS2015x86_*_MAKE_PATH = DEF(VS2015x86_BIN)\nmake.exe
1431 *_VS2015x86_*_MAKE_FLAGS = /nologo
1432 *_VS2015x86_*_RC_PATH = DEF(WINSDK81x86_BIN)\rc.exe
1433
1434 *_VS2015x86_*_SLINK_FLAGS = /NOLOGO /LTCG
1435 *_VS2015x86_*_APP_FLAGS = /nologo /E /TC
1436 *_VS2015x86_*_PP_FLAGS = /nologo /E /TC /FIAutoGen.h
1437 *_VS2015x86_*_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h
1438 *_VS2015x86_*_DLINK2_FLAGS =
1439 *_VS2015x86_*_DEPS_FLAGS = DEF(MSFT_DEPS_FLAGS)
1440 *_VS2015x86_*_ASM16_PATH = DEF(VS2015x86_BIN)\ml.exe
1441
1442 ##################
1443 # ASL definitions
1444 ##################
1445 *_VS2015x86_*_ASL_PATH = DEF(WIN_IASL_BIN)
1446 *_VS2015x86_*_ASL_FLAGS = DEF(DEFAULT_WIN_ASL_FLAGS)
1447 *_VS2015x86_*_ASL_OUTFLAGS = DEF(DEFAULT_WIN_ASL_OUTFLAGS)
1448 *_VS2015x86_*_ASLCC_FLAGS = DEF(MSFT_ASLCC_FLAGS)
1449 *_VS2015x86_*_ASLPP_FLAGS = DEF(MSFT_ASLPP_FLAGS)
1450 *_VS2015x86_*_ASLDLINK_FLAGS = DEF(MSFT_ASLDLINK_FLAGS)
1451
1452 ##################
1453 # IA32 definitions
1454 ##################
1455 *_VS2015x86_IA32_*_DLL = DEF(VS2015x86_DLL)
1456
1457 *_VS2015x86_IA32_CC_PATH = DEF(VS2015x86_BIN)\cl.exe
1458 *_VS2015x86_IA32_VFRPP_PATH = DEF(VS2015x86_BIN)\cl.exe
1459 *_VS2015x86_IA32_ASLCC_PATH = DEF(VS2015x86_BIN)\cl.exe
1460 *_VS2015x86_IA32_ASLPP_PATH = DEF(VS2015x86_BIN)\cl.exe
1461 *_VS2015x86_IA32_SLINK_PATH = DEF(VS2015x86_BIN)\lib.exe
1462 *_VS2015x86_IA32_DLINK_PATH = DEF(VS2015x86_BIN)\link.exe
1463 *_VS2015x86_IA32_ASLDLINK_PATH= DEF(VS2015x86_BIN)\link.exe
1464 *_VS2015x86_IA32_APP_PATH = DEF(VS2015x86_BIN)\cl.exe
1465 *_VS2015x86_IA32_PP_PATH = DEF(VS2015x86_BIN)\cl.exe
1466 *_VS2015x86_IA32_ASM_PATH = DEF(VS2015x86_BIN)\ml.exe
1467
1468 DEBUG_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Z7 /Gw
1469 RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gw
1470 NOOPT_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Z7 /Od
1471
1472 DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi
1473 RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd
1474 NOOPT_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi
1475
1476 DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g
1477 RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32
1478 NOOPT_VS2015x86_IA32_NASM_FLAGS = -O0 -f win32 -g
1479
1480 DEBUG_VS2015x86_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
1481 RELEASE_VS2015x86_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
1482 NOOPT_VS2015x86_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
1483
1484 ##################
1485 # X64 definitions
1486 ##################
1487 *_VS2015x86_X64_*_DLL = DEF(VS2015x86_DLL)
1488
1489 *_VS2015x86_X64_CC_PATH = DEF(VS2015x86_BINX64)\cl.exe
1490 *_VS2015x86_X64_PP_PATH = DEF(VS2015x86_BINX64)\cl.exe
1491 *_VS2015x86_X64_APP_PATH = DEF(VS2015x86_BINX64)\cl.exe
1492 *_VS2015x86_X64_VFRPP_PATH = DEF(VS2015x86_BINX64)\cl.exe
1493 *_VS2015x86_X64_ASLCC_PATH = DEF(VS2015x86_BINX64)\cl.exe
1494 *_VS2015x86_X64_ASLPP_PATH = DEF(VS2015x86_BINX64)\cl.exe
1495 *_VS2015x86_X64_ASM_PATH = DEF(VS2015x86_BINX64)\ml64.exe
1496 *_VS2015x86_X64_SLINK_PATH = DEF(VS2015x86_BINX64)\lib.exe
1497 *_VS2015x86_X64_DLINK_PATH = DEF(VS2015x86_BINX64)\link.exe
1498 *_VS2015x86_X64_ASLDLINK_PATH = DEF(VS2015x86_BINX64)\link.exe
1499
1500 DEBUG_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Z7 /Gw
1501 RELEASE_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Gw
1502 NOOPT_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Z7 /Od
1503
1504 DEBUG_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi
1505 RELEASE_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd
1506 NOOPT_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi
1507
1508 DEBUG_VS2015x86_X64_NASM_FLAGS = -Ox -f win64 -g
1509 RELEASE_VS2015x86_X64_NASM_FLAGS = -Ox -f win64
1510 NOOPT_VS2015x86_X64_NASM_FLAGS = -O0 -f win64 -g
1511
1512 DEBUG_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /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
1513 RELEASE_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /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
1514 NOOPT_VS2015x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /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
1515
1516 ##################
1517 # EBC definitions
1518 ##################
1519 *_VS2015x86_EBC_*_FAMILY = INTEL
1520 *_VS2015x86_EBC_*_DLL = DEF(VS2015x86_DLL)
1521
1522 *_VS2015x86_EBC_PP_PATH = DEF(EBC_BINx86)\iec.exe
1523 *_VS2015x86_EBC_VFRPP_PATH = DEF(EBC_BINx86)\iec.exe
1524 *_VS2015x86_EBC_CC_PATH = DEF(EBC_BINx86)\iec.exe
1525 *_VS2015x86_EBC_SLINK_PATH = DEF(VS2015x86_BIN)\link.exe
1526 *_VS2015x86_EBC_DLINK_PATH = DEF(VS2015x86_BIN)\link.exe
1527
1528 *_VS2015x86_EBC_PP_FLAGS = /nologo /E /TC /FIAutoGen.h
1529 *_VS2015x86_EBC_CC_FLAGS = /nologo /c /WX /W3 /FIAutoGen.h /D$(MODULE_ENTRY_POINT)=$(ARCH_ENTRY_POINT)
1530 *_VS2015x86_EBC_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h
1531 *_VS2015x86_EBC_SLINK_FLAGS = /lib /NOLOGO /MACHINE:EBC
1532 *_VS2015x86_EBC_DLINK_FLAGS = "C:\Program Files (x86)\Intel\EBC\Lib\EbcLib.lib" /NOLOGO /NODEFAULTLIB /MACHINE:EBC /OPT:REF /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /MAP /ALIGN:32 /DRIVER
1533
1534
1535 ####################################################################################
1536 # VS2017 - Microsoft Visual Studio 2017 with Intel ASL
1537 # ASL - Intel ACPI Source Language Compiler (iasl.exe)
1538 ####################################################################################
1539 # VS2017 - Microsoft Visual Studio 2017 professional Edition with Intel ASL
1540 *_VS2017_*_*_FAMILY = MSFT
1541 *_VS2017_*_*_DLL = DEF(VS2017_BIN_HOST)
1542
1543 *_VS2017_*_MAKE_PATH = DEF(VS2017_BIN_HOST)\nmake.exe
1544 *_VS2017_*_MAKE_FLAGS = /nologo
1545 *_VS2017_*_RC_PATH = DEF(RC_PATH)
1546
1547 *_VS2017_*_SLINK_FLAGS = /NOLOGO /LTCG
1548 *_VS2017_*_APP_FLAGS = /nologo /E /TC
1549 *_VS2017_*_PP_FLAGS = /nologo /E /TC /FIAutoGen.h
1550 *_VS2017_*_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h
1551 *_VS2017_*_DLINK2_FLAGS = /WHOLEARCHIVE
1552 *_VS2017_*_ASM16_PATH = DEF(VS2017_BIN_IA32)\ml.exe
1553 *_VS2017_*_DEPS_FLAGS = DEF(MSFT_DEPS_FLAGS)
1554 ##################
1555 # ASL definitions
1556 ##################
1557 *_VS2017_*_ASL_PATH = DEF(WIN_IASL_BIN)
1558 *_VS2017_*_ASL_FLAGS = DEF(DEFAULT_WIN_ASL_FLAGS)
1559 *_VS2017_*_ASL_OUTFLAGS = DEF(DEFAULT_WIN_ASL_OUTFLAGS)
1560 *_VS2017_*_ASLCC_FLAGS = DEF(MSFT_ASLCC_FLAGS)
1561 *_VS2017_*_ASLPP_FLAGS = DEF(MSFT_ASLPP_FLAGS)
1562 *_VS2017_*_ASLDLINK_FLAGS = DEF(MSFT_ASLDLINK_FLAGS)
1563
1564 ##################
1565 # IA32 definitions
1566 ##################
1567 *_VS2017_IA32_CC_PATH = DEF(VS2017_BIN_IA32)\cl.exe
1568 *_VS2017_IA32_VFRPP_PATH = DEF(VS2017_BIN_IA32)\cl.exe
1569 *_VS2017_IA32_ASLCC_PATH = DEF(VS2017_BIN_IA32)\cl.exe
1570 *_VS2017_IA32_ASLPP_PATH = DEF(VS2017_BIN_IA32)\cl.exe
1571 *_VS2017_IA32_SLINK_PATH = DEF(VS2017_BIN_IA32)\lib.exe
1572 *_VS2017_IA32_DLINK_PATH = DEF(VS2017_BIN_IA32)\link.exe
1573 *_VS2017_IA32_ASLDLINK_PATH= DEF(VS2017_BIN_IA32)\link.exe
1574 *_VS2017_IA32_APP_PATH = DEF(VS2017_BIN_IA32)\cl.exe
1575 *_VS2017_IA32_PP_PATH = DEF(VS2017_BIN_IA32)\cl.exe
1576 *_VS2017_IA32_ASM_PATH = DEF(VS2017_BIN_IA32)\ml.exe
1577
1578 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
1579 RELEASE_VS2017_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gw
1580 NOOPT_VS2017_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Z7 /Od
1581
1582 DEBUG_VS2017_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi
1583 RELEASE_VS2017_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd
1584 NOOPT_VS2017_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi
1585
1586 DEBUG_VS2017_IA32_NASM_FLAGS = -Ox -f win32 -g
1587 RELEASE_VS2017_IA32_NASM_FLAGS = -Ox -f win32
1588 NOOPT_VS2017_IA32_NASM_FLAGS = -O0 -f win32 -g
1589
1590 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
1591 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
1592 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
1593
1594 ##################
1595 # X64 definitions
1596 ##################
1597 *_VS2017_X64_CC_PATH = DEF(VS2017_BIN_X64)\cl.exe
1598 *_VS2017_X64_PP_PATH = DEF(VS2017_BIN_X64)\cl.exe
1599 *_VS2017_X64_APP_PATH = DEF(VS2017_BIN_X64)\cl.exe
1600 *_VS2017_X64_VFRPP_PATH = DEF(VS2017_BIN_X64)\cl.exe
1601 *_VS2017_X64_ASLCC_PATH = DEF(VS2017_BIN_X64)\cl.exe
1602 *_VS2017_X64_ASLPP_PATH = DEF(VS2017_BIN_X64)\cl.exe
1603 *_VS2017_X64_ASM_PATH = DEF(VS2017_BIN_X64)\ml64.exe
1604 *_VS2017_X64_SLINK_PATH = DEF(VS2017_BIN_X64)\lib.exe
1605 *_VS2017_X64_DLINK_PATH = DEF(VS2017_BIN_X64)\link.exe
1606 *_VS2017_X64_ASLDLINK_PATH = DEF(VS2017_BIN_X64)\link.exe
1607
1608 DEBUG_VS2017_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Z7 /Gw
1609 RELEASE_VS2017_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Gw
1610 NOOPT_VS2017_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Z7 /Od
1611
1612 DEBUG_VS2017_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi
1613 RELEASE_VS2017_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd
1614 NOOPT_VS2017_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi
1615
1616 DEBUG_VS2017_X64_NASM_FLAGS = -Ox -f win64 -g
1617 RELEASE_VS2017_X64_NASM_FLAGS = -Ox -f win64
1618 NOOPT_VS2017_X64_NASM_FLAGS = -O0 -f win64 -g
1619
1620 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
1621 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
1622 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
1623
1624 #################
1625 # ARM definitions
1626 #################
1627 *_VS2017_ARM_CC_PATH = DEF(VS2017_BIN_ARM)\cl.exe
1628 *_VS2017_ARM_VFRPP_PATH = DEF(VS2017_BIN_ARM)\cl.exe
1629 *_VS2017_ARM_SLINK_PATH = DEF(VS2017_BIN_ARM)\lib.exe
1630 *_VS2017_ARM_DLINK_PATH = DEF(VS2017_BIN_ARM)\link.exe
1631 *_VS2017_ARM_APP_PATH = DEF(VS2017_BIN_ARM)\cl.exe
1632 *_VS2017_ARM_PP_PATH = DEF(VS2017_BIN_ARM)\cl.exe
1633 *_VS2017_ARM_ASM_PATH = DEF(VS2017_BIN_ARM)\armasm.exe
1634 *_VS2017_ARM_ASLCC_PATH = DEF(VS2017_BIN_ARM)\cl.exe
1635 *_VS2017_ARM_ASLPP_PATH = DEF(VS2017_BIN_ARM)\cl.exe
1636 *_VS2017_ARM_ASLDLINK_PATH = DEF(VS2017_BIN_ARM)\link.exe
1637
1638 DEBUG_VS2017_ARM_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gw /Oi-
1639 RELEASE_VS2017_ARM_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gw /Oi-
1640 NOOPT_VS2017_ARM_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Od /Oi-
1641
1642 DEBUG_VS2017_ARM_ASM_FLAGS = /nologo /g
1643 RELEASE_VS2017_ARM_ASM_FLAGS = /nologo
1644 NOOPT_VS2017_ARM_ASM_FLAGS = /nologo
1645
1646 DEBUG_VS2017_ARM_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:ARM /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG
1647 RELEASE_VS2017_ARM_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:ARM /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data
1648 NOOPT_VS2017_ARM_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:ARM /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG
1649
1650 #####################
1651 # AARCH64 definitions
1652 #####################
1653 *_VS2017_AARCH64_CC_PATH = DEF(VS2017_BIN_AARCH64)\cl.exe
1654 *_VS2017_AARCH64_VFRPP_PATH = DEF(VS2017_BIN_AARCH64)\cl.exe
1655 *_VS2017_AARCH64_SLINK_PATH = DEF(VS2017_BIN_AARCH64)\lib.exe
1656 *_VS2017_AARCH64_DLINK_PATH = DEF(VS2017_BIN_AARCH64)\link.exe
1657 *_VS2017_AARCH64_APP_PATH = DEF(VS2017_BIN_AARCH64)\cl.exe
1658 *_VS2017_AARCH64_PP_PATH = DEF(VS2017_BIN_AARCH64)\cl.exe
1659 *_VS2017_AARCH64_ASM_PATH = DEF(VS2017_BIN_AARCH64)\armasm64.exe
1660 *_VS2017_AARCH64_ASLCC_PATH = DEF(VS2017_BIN_AARCH64)\cl.exe
1661 *_VS2017_AARCH64_ASLPP_PATH = DEF(VS2017_BIN_AARCH64)\cl.exe
1662 *_VS2017_AARCH64_ASLDLINK_PATH = DEF(VS2017_BIN_AARCH64)\link.exe
1663
1664 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-
1665 RELEASE_VS2017_AARCH64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gw /Oi-
1666 NOOPT_VS2017_AARCH64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Od /Oi-
1667
1668 DEBUG_VS2017_AARCH64_ASM_FLAGS = /nologo /g
1669 RELEASE_VS2017_AARCH64_ASM_FLAGS = /nologo
1670 NOOPT_VS2017_AARCH64_ASM_FLAGS = /nologo
1671
1672 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
1673 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
1674 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
1675
1676 ##################
1677 # EBC definitions
1678 ##################
1679 *_VS2017_EBC_*_FAMILY = INTEL
1680
1681 *_VS2017_EBC_PP_PATH = DEF(EBC_BINx86)\iec.exe
1682 *_VS2017_EBC_VFRPP_PATH = DEF(EBC_BINx86)\iec.exe
1683 *_VS2017_EBC_CC_PATH = DEF(EBC_BINx86)\iec.exe
1684 *_VS2017_EBC_SLINK_PATH = DEF(VS2017_BIN_IA32)\link.exe
1685 *_VS2017_EBC_DLINK_PATH = DEF(VS2017_BIN_IA32)\link.exe
1686
1687 *_VS2017_EBC_PP_FLAGS = /nologo /E /TC /FIAutoGen.h
1688 *_VS2017_EBC_CC_FLAGS = /nologo /c /WX /W3 /FIAutoGen.h /D$(MODULE_ENTRY_POINT)=$(ARCH_ENTRY_POINT)
1689 *_VS2017_EBC_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h
1690 *_VS2017_EBC_SLINK_FLAGS = /lib /NOLOGO /MACHINE:EBC
1691 *_VS2017_EBC_DLINK_FLAGS = "C:\Program Files (x86)\Intel\EBC\Lib\EbcLib.lib" /NOLOGO /NODEFAULTLIB /MACHINE:EBC /OPT:REF /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /MAP /ALIGN:32 /DRIVER
1692
1693 ####################################################################################
1694 # VS2019 - Microsoft Visual Studio 2019 with Intel ASL
1695 # ASL - Intel ACPI Source Language Compiler (iasl.exe)
1696 ####################################################################################
1697 # VS2019 - Microsoft Visual Studio 2017 professional Edition with Intel ASL
1698 *_VS2019_*_*_FAMILY = MSFT
1699 *_VS2019_*_*_DLL = DEF(VS2019_BIN_HOST)
1700
1701 *_VS2019_*_MAKE_PATH = DEF(VS2019_BIN_HOST)\nmake.exe
1702 *_VS2019_*_MAKE_FLAGS = /nologo
1703 *_VS2019_*_RC_PATH = DEF(RC_PATH)
1704
1705 *_VS2019_*_SLINK_FLAGS = /NOLOGO /LTCG
1706 *_VS2019_*_APP_FLAGS = /nologo /E /TC
1707 *_VS2019_*_PP_FLAGS = /nologo /E /TC /FIAutoGen.h
1708 *_VS2019_*_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h
1709 *_VS2019_*_DLINK2_FLAGS = /WHOLEARCHIVE
1710 *_VS2019_*_ASM16_PATH = DEF(VS2019_BIN_IA32)\ml.exe
1711 *_VS2019_*_DEPS_FLAGS = DEF(MSFT_DEPS_FLAGS)
1712 ##################
1713 # ASL definitions
1714 ##################
1715 *_VS2019_*_ASL_PATH = DEF(WIN_IASL_BIN)
1716 *_VS2019_*_ASL_FLAGS = DEF(DEFAULT_WIN_ASL_FLAGS)
1717 *_VS2019_*_ASL_OUTFLAGS = DEF(DEFAULT_WIN_ASL_OUTFLAGS)
1718 *_VS2019_*_ASLCC_FLAGS = DEF(MSFT_ASLCC_FLAGS)
1719 *_VS2019_*_ASLPP_FLAGS = DEF(MSFT_ASLPP_FLAGS)
1720 *_VS2019_*_ASLDLINK_FLAGS = DEF(MSFT_ASLDLINK_FLAGS)
1721
1722 ##################
1723 # IA32 definitions
1724 ##################
1725 *_VS2019_IA32_CC_PATH = DEF(VS2019_BIN_IA32)\cl.exe
1726 *_VS2019_IA32_VFRPP_PATH = DEF(VS2019_BIN_IA32)\cl.exe
1727 *_VS2019_IA32_ASLCC_PATH = DEF(VS2019_BIN_IA32)\cl.exe
1728 *_VS2019_IA32_ASLPP_PATH = DEF(VS2019_BIN_IA32)\cl.exe
1729 *_VS2019_IA32_SLINK_PATH = DEF(VS2019_BIN_IA32)\lib.exe
1730 *_VS2019_IA32_DLINK_PATH = DEF(VS2019_BIN_IA32)\link.exe
1731 *_VS2019_IA32_ASLDLINK_PATH= DEF(VS2019_BIN_IA32)\link.exe
1732 *_VS2019_IA32_APP_PATH = DEF(VS2019_BIN_IA32)\cl.exe
1733 *_VS2019_IA32_PP_PATH = DEF(VS2019_BIN_IA32)\cl.exe
1734 *_VS2019_IA32_ASM_PATH = DEF(VS2019_BIN_IA32)\ml.exe
1735
1736 DEBUG_VS2019_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Z7 /Gw
1737 RELEASE_VS2019_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gw
1738 NOOPT_VS2019_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Z7 /Od
1739
1740 DEBUG_VS2019_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi
1741 RELEASE_VS2019_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd
1742 NOOPT_VS2019_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi
1743
1744 DEBUG_VS2019_IA32_NASM_FLAGS = -Ox -f win32 -g
1745 RELEASE_VS2019_IA32_NASM_FLAGS = -Ox -f win32
1746 NOOPT_VS2019_IA32_NASM_FLAGS = -O0 -f win32 -g
1747
1748 DEBUG_VS2019_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
1749 RELEASE_VS2019_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
1750 NOOPT_VS2019_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
1751
1752 ##################
1753 # X64 definitions
1754 ##################
1755 *_VS2019_X64_CC_PATH = DEF(VS2019_BIN_X64)\cl.exe
1756 *_VS2019_X64_PP_PATH = DEF(VS2019_BIN_X64)\cl.exe
1757 *_VS2019_X64_APP_PATH = DEF(VS2019_BIN_X64)\cl.exe
1758 *_VS2019_X64_VFRPP_PATH = DEF(VS2019_BIN_X64)\cl.exe
1759 *_VS2019_X64_ASLCC_PATH = DEF(VS2019_BIN_X64)\cl.exe
1760 *_VS2019_X64_ASLPP_PATH = DEF(VS2019_BIN_X64)\cl.exe
1761 *_VS2019_X64_ASM_PATH = DEF(VS2019_BIN_X64)\ml64.exe
1762 *_VS2019_X64_SLINK_PATH = DEF(VS2019_BIN_X64)\lib.exe
1763 *_VS2019_X64_DLINK_PATH = DEF(VS2019_BIN_X64)\link.exe
1764 *_VS2019_X64_ASLDLINK_PATH = DEF(VS2019_BIN_X64)\link.exe
1765
1766 DEBUG_VS2019_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Z7 /Gw
1767 RELEASE_VS2019_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Gw
1768 NOOPT_VS2019_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Z7 /Od
1769
1770 DEBUG_VS2019_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi
1771 RELEASE_VS2019_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd
1772 NOOPT_VS2019_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi
1773
1774 DEBUG_VS2019_X64_NASM_FLAGS = -Ox -f win64 -g
1775 RELEASE_VS2019_X64_NASM_FLAGS = -Ox -f win64
1776 NOOPT_VS2019_X64_NASM_FLAGS = -O0 -f win64 -g
1777
1778 DEBUG_VS2019_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
1779 RELEASE_VS2019_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
1780 NOOPT_VS2019_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
1781
1782 #################
1783 # ARM definitions
1784 #################
1785 *_VS2019_ARM_CC_PATH = DEF(VS2019_BIN_ARM)\cl.exe
1786 *_VS2019_ARM_VFRPP_PATH = DEF(VS2019_BIN_ARM)\cl.exe
1787 *_VS2019_ARM_SLINK_PATH = DEF(VS2019_BIN_ARM)\lib.exe
1788 *_VS2019_ARM_DLINK_PATH = DEF(VS2019_BIN_ARM)\link.exe
1789 *_VS2019_ARM_APP_PATH = DEF(VS2019_BIN_ARM)\cl.exe
1790 *_VS2019_ARM_PP_PATH = DEF(VS2019_BIN_ARM)\cl.exe
1791 *_VS2019_ARM_ASM_PATH = DEF(VS2019_BIN_ARM)\armasm.exe
1792 *_VS2019_ARM_ASLCC_PATH = DEF(VS2019_BIN_ARM)\cl.exe
1793 *_VS2019_ARM_ASLPP_PATH = DEF(VS2019_BIN_ARM)\cl.exe
1794 *_VS2019_ARM_ASLDLINK_PATH = DEF(VS2019_BIN_ARM)\link.exe
1795
1796 DEBUG_VS2019_ARM_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gw /Oi-
1797 RELEASE_VS2019_ARM_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gw /Oi-
1798 NOOPT_VS2019_ARM_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Od /Oi-
1799
1800 DEBUG_VS2019_ARM_ASM_FLAGS = /nologo /g
1801 RELEASE_VS2019_ARM_ASM_FLAGS = /nologo
1802 NOOPT_VS2019_ARM_ASM_FLAGS = /nologo
1803
1804 DEBUG_VS2019_ARM_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:ARM /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG
1805 RELEASE_VS2019_ARM_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:ARM /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=.data
1806 NOOPT_VS2019_ARM_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:ARM /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG
1807
1808 #####################
1809 # AARCH64 definitions
1810 #####################
1811 *_VS2019_AARCH64_CC_PATH = DEF(VS2019_BIN_AARCH64)\cl.exe
1812 *_VS2019_AARCH64_VFRPP_PATH = DEF(VS2019_BIN_AARCH64)\cl.exe
1813 *_VS2019_AARCH64_SLINK_PATH = DEF(VS2019_BIN_AARCH64)\lib.exe
1814 *_VS2019_AARCH64_DLINK_PATH = DEF(VS2019_BIN_AARCH64)\link.exe
1815 *_VS2019_AARCH64_APP_PATH = DEF(VS2019_BIN_AARCH64)\cl.exe
1816 *_VS2019_AARCH64_PP_PATH = DEF(VS2019_BIN_AARCH64)\cl.exe
1817 *_VS2019_AARCH64_ASM_PATH = DEF(VS2019_BIN_AARCH64)\armasm64.exe
1818 *_VS2019_AARCH64_ASLCC_PATH = DEF(VS2019_BIN_AARCH64)\cl.exe
1819 *_VS2019_AARCH64_ASLPP_PATH = DEF(VS2019_BIN_AARCH64)\cl.exe
1820 *_VS2019_AARCH64_ASLDLINK_PATH = DEF(VS2019_BIN_AARCH64)\link.exe
1821
1822 DEBUG_VS2019_AARCH64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gw /Oi-
1823 RELEASE_VS2019_AARCH64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gw /Oi-
1824 NOOPT_VS2019_AARCH64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Od /Oi-
1825
1826 DEBUG_VS2019_AARCH64_ASM_FLAGS = /nologo /g
1827 RELEASE_VS2019_AARCH64_ASM_FLAGS = /nologo
1828 NOOPT_VS2019_AARCH64_ASM_FLAGS = /nologo
1829
1830 DEBUG_VS2019_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
1831 RELEASE_VS2019_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
1832 NOOPT_VS2019_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
1833
1834 ##################
1835 # EBC definitions
1836 ##################
1837 *_VS2019_EBC_*_FAMILY = INTEL
1838
1839 *_VS2019_EBC_PP_PATH = DEF(EBC_BINx86)\iec.exe
1840 *_VS2019_EBC_VFRPP_PATH = DEF(EBC_BINx86)\iec.exe
1841 *_VS2019_EBC_CC_PATH = DEF(EBC_BINx86)\iec.exe
1842 *_VS2019_EBC_SLINK_PATH = DEF(VS2019_BIN_IA32)\link.exe
1843 *_VS2019_EBC_DLINK_PATH = DEF(VS2019_BIN_IA32)\link.exe
1844
1845 *_VS2019_EBC_PP_FLAGS = /nologo /E /TC /FIAutoGen.h
1846 *_VS2019_EBC_CC_FLAGS = /nologo /c /WX /W3 /FIAutoGen.h /D$(MODULE_ENTRY_POINT)=$(ARCH_ENTRY_POINT)
1847 *_VS2019_EBC_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h
1848 *_VS2019_EBC_SLINK_FLAGS = /lib /NOLOGO /MACHINE:EBC
1849 *_VS2019_EBC_DLINK_FLAGS = "C:\Program Files (x86)\Intel\EBC\Lib\EbcLib.lib" /NOLOGO /NODEFAULTLIB /MACHINE:EBC /OPT:REF /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /MAP /ALIGN:32 /DRIVER
1850
1851 ####################################################################################
1852 # GCC Common
1853 ####################################################################################
1854
1855 *_*_*_OBJCOPY_PATH = echo
1856 *_*_*_OBJCOPY_FLAGS = objcopy not needed for
1857 *_*_*_SYMRENAME_PATH = echo
1858 *_*_*_SYMRENAME_FLAGS = Symbol renaming not needed for
1859 DEBUG_*_*_OBJCOPY_ADDDEBUGFLAG = --add-gnu-debuglink=$(DEBUG_DIR)/$(MODULE_NAME).debug
1860 RELEASE_*_*_OBJCOPY_ADDDEBUGFLAG =
1861 NOOPT_*_*_OBJCOPY_ADDDEBUGFLAG = --add-gnu-debuglink=$(DEBUG_DIR)/$(MODULE_NAME).debug
1862 *_*_*_DTC_FLAGS = -H epapr
1863 *_*_*_DTCPP_PATH = DEF(DTCPP_BIN)
1864 *_*_*_DTC_PATH = DEF(DTC_BIN)
1865
1866 DEFINE GCC_ALL_CC_FLAGS = -g -Os -fshort-wchar -fno-builtin -fno-strict-aliasing -Wall -Werror -Wno-array-bounds -include AutoGen.h -fno-common
1867 DEFINE GCC_IA32_CC_FLAGS = DEF(GCC_ALL_CC_FLAGS) -m32 -malign-double -freorder-blocks -freorder-blocks-and-partition -O2 -mno-stack-arg-probe
1868 DEFINE GCC_X64_CC_FLAGS = DEF(GCC_ALL_CC_FLAGS) -mno-red-zone -Wno-address -mno-stack-arg-probe
1869 DEFINE GCC_ARM_CC_FLAGS = DEF(GCC_ALL_CC_FLAGS) -mlittle-endian -mabi=aapcs -fno-short-enums -funsigned-char -ffunction-sections -fdata-sections -fomit-frame-pointer -Wno-address -mthumb -mfloat-abi=soft -fno-pic -fno-pie
1870 DEFINE GCC_ARM_CC_XIPFLAGS = -mno-unaligned-access
1871 DEFINE GCC_AARCH64_CC_FLAGS = DEF(GCC_ALL_CC_FLAGS) -mlittle-endian -fno-short-enums -fverbose-asm -funsigned-char -ffunction-sections -fdata-sections -Wno-address -fno-asynchronous-unwind-tables -fno-unwind-tables -fno-pic -fno-pie -ffixed-x18
1872 DEFINE GCC_AARCH64_CC_XIPFLAGS = -mstrict-align -mgeneral-regs-only
1873 DEFINE GCC_DLINK_FLAGS_COMMON = -nostdlib --pie
1874 DEFINE GCC_DLINK2_FLAGS_COMMON = -Wl,--script=$(EDK_TOOLS_PATH)/Scripts/GccBase.lds
1875 DEFINE GCC_IA32_X64_DLINK_COMMON = DEF(GCC_DLINK_FLAGS_COMMON) --gc-sections
1876 DEFINE GCC_ARM_AARCH64_DLINK_COMMON= -Wl,--emit-relocs -nostdlib -Wl,--gc-sections -u $(IMAGE_ENTRY_POINT) -Wl,-e,$(IMAGE_ENTRY_POINT),-Map,$(DEST_DIR_DEBUG)/$(BASE_NAME).map
1877 DEFINE GCC_ARM_DLINK_FLAGS = DEF(GCC_ARM_AARCH64_DLINK_COMMON) -z common-page-size=0x20 -Wl,--pic-veneer
1878 DEFINE GCC_AARCH64_DLINK_FLAGS = DEF(GCC_ARM_AARCH64_DLINK_COMMON) -z common-page-size=0x20
1879 DEFINE GCC_ARM_AARCH64_ASLDLINK_FLAGS = -Wl,--defsym=PECOFF_HEADER_SIZE=0 DEF(GCC_DLINK2_FLAGS_COMMON) -z common-page-size=0x20
1880 DEFINE GCC_IA32_X64_ASLDLINK_FLAGS = DEF(GCC_IA32_X64_DLINK_COMMON) --entry _ReferenceAcpiTable -u $(IMAGE_ENTRY_POINT)
1881 DEFINE GCC_ARM_ASLDLINK_FLAGS = DEF(GCC_ARM_DLINK_FLAGS) -Wl,--entry,ReferenceAcpiTable -u $(IMAGE_ENTRY_POINT) DEF(GCC_ARM_AARCH64_ASLDLINK_FLAGS)
1882 DEFINE GCC_AARCH64_ASLDLINK_FLAGS = DEF(GCC_AARCH64_DLINK_FLAGS) -Wl,--entry,ReferenceAcpiTable -u $(IMAGE_ENTRY_POINT) DEF(GCC_ARM_AARCH64_ASLDLINK_FLAGS)
1883 DEFINE GCC_IA32_X64_DLINK_FLAGS = DEF(GCC_IA32_X64_DLINK_COMMON) --entry _$(IMAGE_ENTRY_POINT) --file-alignment 0x20 --section-alignment 0x20 -Map $(DEST_DIR_DEBUG)/$(BASE_NAME).map
1884 DEFINE GCC_ASM_FLAGS = -c -x assembler -imacros AutoGen.h
1885 DEFINE GCC_PP_FLAGS = -E -x assembler-with-cpp -include AutoGen.h
1886 DEFINE GCC_VFRPP_FLAGS = -x c -E -P -DVFRCOMPILE --include $(MODULE_NAME)StrDefs.h
1887 DEFINE GCC_ASLPP_FLAGS = -x c -E -include AutoGen.h
1888 DEFINE GCC_ASLCC_FLAGS = -x c
1889 DEFINE GCC_WINDRES_FLAGS = -J rc -O coff
1890 DEFINE GCC_DTCPP_FLAGS = -E -x assembler-with-cpp -imacros AutoGen.h -nostdinc -undef
1891 DEFINE GCC_IA32_RC_FLAGS = -I binary -O elf32-i386 -B i386 --rename-section .data=.hii
1892 DEFINE GCC_X64_RC_FLAGS = -I binary -O elf64-x86-64 -B i386 --rename-section .data=.hii
1893 DEFINE GCC_ARM_RC_FLAGS = -I binary -O elf32-littlearm -B arm --rename-section .data=.hii
1894 DEFINE GCC_AARCH64_RC_FLAGS = -I binary -O elf64-littleaarch64 -B aarch64 --rename-section .data=.hii
1895 DEFINE GCC_RISCV64_RC_FLAGS = -I binary -O elf64-littleriscv -B riscv --rename-section .data=.hii
1896
1897 # GCC Build Flag for included header file list generation
1898 DEFINE GCC_DEPS_FLAGS = -MMD -MF $@.deps
1899
1900 DEFINE GCC48_ALL_CC_FLAGS = DEF(GCC_ALL_CC_FLAGS) -ffunction-sections -fdata-sections -DSTRING_ARRAY_NAME=$(BASE_NAME)Strings
1901 DEFINE GCC48_IA32_X64_DLINK_COMMON = -nostdlib -Wl,-n,-q,--gc-sections -z common-page-size=0x20
1902 DEFINE GCC48_IA32_CC_FLAGS = DEF(GCC48_ALL_CC_FLAGS) -m32 -march=i586 -malign-double -fno-stack-protector -D EFI32 -fno-asynchronous-unwind-tables -Wno-address
1903 DEFINE GCC48_X64_CC_FLAGS = DEF(GCC48_ALL_CC_FLAGS) -m64 -fno-stack-protector "-DEFIAPI=__attribute__((ms_abi))" -maccumulate-outgoing-args -mno-red-zone -Wno-address -mcmodel=small -fpie -fno-asynchronous-unwind-tables -Wno-address
1904 DEFINE GCC48_IA32_X64_ASLDLINK_FLAGS = DEF(GCC48_IA32_X64_DLINK_COMMON) -Wl,--entry,ReferenceAcpiTable -u ReferenceAcpiTable
1905 DEFINE GCC48_IA32_X64_DLINK_FLAGS = DEF(GCC48_IA32_X64_DLINK_COMMON) -Wl,--entry,$(IMAGE_ENTRY_POINT) -u $(IMAGE_ENTRY_POINT) -Wl,-Map,$(DEST_DIR_DEBUG)/$(BASE_NAME).map,--whole-archive
1906 DEFINE GCC48_IA32_DLINK2_FLAGS = -Wl,--defsym=PECOFF_HEADER_SIZE=0x220 DEF(GCC_DLINK2_FLAGS_COMMON)
1907 DEFINE GCC48_X64_DLINK_FLAGS = DEF(GCC48_IA32_X64_DLINK_FLAGS) -Wl,-melf_x86_64,--oformat=elf64-x86-64,-pie
1908 DEFINE GCC48_X64_DLINK2_FLAGS = -Wl,--defsym=PECOFF_HEADER_SIZE=0x228 DEF(GCC_DLINK2_FLAGS_COMMON)
1909 DEFINE GCC48_ASM_FLAGS = DEF(GCC_ASM_FLAGS)
1910 DEFINE GCC48_ARM_ASM_FLAGS = $(ARCHASM_FLAGS) $(PLATFORM_FLAGS) DEF(GCC_ASM_FLAGS) -mlittle-endian
1911 DEFINE GCC48_AARCH64_ASM_FLAGS = $(ARCHASM_FLAGS) $(PLATFORM_FLAGS) DEF(GCC_ASM_FLAGS) -mlittle-endian
1912 DEFINE GCC48_ARM_CC_FLAGS = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) DEF(GCC_ARM_CC_FLAGS) -fstack-protector -mword-relocations
1913 DEFINE GCC48_ARM_CC_XIPFLAGS = DEF(GCC_ARM_CC_XIPFLAGS)
1914 DEFINE GCC48_AARCH64_CC_FLAGS = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) -mcmodel=large DEF(GCC_AARCH64_CC_FLAGS)
1915 DEFINE GCC48_AARCH64_CC_XIPFLAGS = DEF(GCC_AARCH64_CC_XIPFLAGS)
1916 DEFINE GCC48_ARM_DLINK_FLAGS = DEF(GCC_ARM_DLINK_FLAGS) -Wl,--oformat=elf32-littlearm
1917 DEFINE GCC48_ARM_DLINK2_FLAGS = DEF(GCC_DLINK2_FLAGS_COMMON) -Wl,--defsym=PECOFF_HEADER_SIZE=0x220
1918 DEFINE GCC48_AARCH64_DLINK_FLAGS = DEF(GCC_AARCH64_DLINK_FLAGS)
1919 DEFINE GCC48_AARCH64_DLINK2_FLAGS = DEF(GCC_DLINK2_FLAGS_COMMON) -Wl,--defsym=PECOFF_HEADER_SIZE=0x228
1920 DEFINE GCC48_ARM_ASLDLINK_FLAGS = DEF(GCC_ARM_ASLDLINK_FLAGS) -Wl,--oformat=elf32-littlearm
1921 DEFINE GCC48_AARCH64_ASLDLINK_FLAGS = DEF(GCC_AARCH64_ASLDLINK_FLAGS)
1922 DEFINE GCC48_ASLCC_FLAGS = DEF(GCC_ASLCC_FLAGS)
1923
1924 DEFINE GCC49_IA32_CC_FLAGS = DEF(GCC48_IA32_CC_FLAGS) -fno-pic -fno-pie
1925 DEFINE GCC49_X64_CC_FLAGS = DEF(GCC48_X64_CC_FLAGS)
1926 DEFINE GCC49_IA32_X64_DLINK_COMMON = -nostdlib -Wl,-n,-q,--gc-sections -z common-page-size=0x40
1927 DEFINE GCC49_IA32_X64_ASLDLINK_FLAGS = DEF(GCC49_IA32_X64_DLINK_COMMON) -Wl,--defsym=PECOFF_HEADER_SIZE=0 DEF(GCC_DLINK2_FLAGS_COMMON) -Wl,--entry,ReferenceAcpiTable -u ReferenceAcpiTable
1928 DEFINE GCC49_IA32_X64_DLINK_FLAGS = DEF(GCC49_IA32_X64_DLINK_COMMON) -Wl,--entry,$(IMAGE_ENTRY_POINT) -u $(IMAGE_ENTRY_POINT) -Wl,-Map,$(DEST_DIR_DEBUG)/$(BASE_NAME).map,--whole-archive
1929 DEFINE GCC49_IA32_DLINK2_FLAGS = DEF(GCC48_IA32_DLINK2_FLAGS)
1930 DEFINE GCC49_X64_DLINK_FLAGS = DEF(GCC49_IA32_X64_DLINK_FLAGS) -Wl,-melf_x86_64,--oformat=elf64-x86-64,-pie
1931 DEFINE GCC49_X64_DLINK2_FLAGS = DEF(GCC48_X64_DLINK2_FLAGS)
1932 DEFINE GCC49_ASM_FLAGS = DEF(GCC48_ASM_FLAGS)
1933 DEFINE GCC49_ARM_ASM_FLAGS = DEF(GCC48_ARM_ASM_FLAGS)
1934 DEFINE GCC49_AARCH64_ASM_FLAGS = DEF(GCC48_AARCH64_ASM_FLAGS)
1935 DEFINE GCC49_ARM_CC_FLAGS = DEF(GCC48_ARM_CC_FLAGS)
1936 DEFINE GCC49_ARM_CC_XIPFLAGS = DEF(GCC48_ARM_CC_XIPFLAGS)
1937 DEFINE GCC49_AARCH64_CC_FLAGS = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) DEF(GCC48_ALL_CC_FLAGS) DEF(GCC_AARCH64_CC_FLAGS) -mcmodel=small
1938 DEFINE GCC49_AARCH64_CC_XIPFLAGS = DEF(GCC48_AARCH64_CC_XIPFLAGS)
1939 DEFINE GCC49_ARM_DLINK_FLAGS = DEF(GCC48_ARM_DLINK_FLAGS)
1940 DEFINE GCC49_ARM_DLINK2_FLAGS = DEF(GCC48_ARM_DLINK2_FLAGS)
1941 DEFINE GCC49_AARCH64_DLINK_FLAGS = DEF(GCC48_AARCH64_DLINK_FLAGS) -z common-page-size=0x1000
1942 DEFINE GCC49_AARCH64_DLINK2_FLAGS = DEF(GCC48_AARCH64_DLINK2_FLAGS)
1943 DEFINE GCC49_ARM_ASLDLINK_FLAGS = DEF(GCC48_ARM_ASLDLINK_FLAGS)
1944 DEFINE GCC49_AARCH64_ASLDLINK_FLAGS = DEF(GCC48_AARCH64_ASLDLINK_FLAGS)
1945 DEFINE GCC49_ASLCC_FLAGS = DEF(GCC48_ASLCC_FLAGS)
1946
1947 DEFINE GCC5_IA32_CC_FLAGS = DEF(GCC49_IA32_CC_FLAGS)
1948 DEFINE GCC5_X64_CC_FLAGS = DEF(GCC49_X64_CC_FLAGS)
1949 DEFINE GCC5_IA32_X64_DLINK_COMMON = DEF(GCC49_IA32_X64_DLINK_COMMON)
1950 DEFINE GCC5_IA32_X64_ASLDLINK_FLAGS = DEF(GCC49_IA32_X64_ASLDLINK_FLAGS)
1951 DEFINE GCC5_IA32_X64_DLINK_FLAGS = DEF(GCC49_IA32_X64_DLINK_FLAGS)
1952 DEFINE GCC5_IA32_DLINK2_FLAGS = DEF(GCC49_IA32_DLINK2_FLAGS) -Wno-error
1953 DEFINE GCC5_X64_DLINK_FLAGS = DEF(GCC49_X64_DLINK_FLAGS)
1954 DEFINE GCC5_X64_DLINK2_FLAGS = DEF(GCC49_X64_DLINK2_FLAGS) -Wno-error
1955 DEFINE GCC5_ASM_FLAGS = DEF(GCC49_ASM_FLAGS)
1956 DEFINE GCC5_ARM_ASM_FLAGS = DEF(GCC49_ARM_ASM_FLAGS)
1957 DEFINE GCC5_AARCH64_ASM_FLAGS = DEF(GCC49_AARCH64_ASM_FLAGS)
1958 DEFINE GCC5_ARM_CC_FLAGS = DEF(GCC49_ARM_CC_FLAGS)
1959 DEFINE GCC5_ARM_CC_XIPFLAGS = DEF(GCC49_ARM_CC_XIPFLAGS)
1960 DEFINE GCC5_AARCH64_CC_FLAGS = DEF(GCC49_AARCH64_CC_FLAGS)
1961 DEFINE GCC5_AARCH64_CC_XIPFLAGS = DEF(GCC49_AARCH64_CC_XIPFLAGS)
1962 DEFINE GCC5_ARM_DLINK_FLAGS = DEF(GCC49_ARM_DLINK_FLAGS)
1963 DEFINE GCC5_ARM_DLINK2_FLAGS = DEF(GCC49_ARM_DLINK2_FLAGS) -Wno-error
1964 DEFINE GCC5_AARCH64_DLINK_FLAGS = DEF(GCC49_AARCH64_DLINK_FLAGS)
1965 DEFINE GCC5_AARCH64_DLINK2_FLAGS = DEF(GCC49_AARCH64_DLINK2_FLAGS) -Wno-error
1966 DEFINE GCC5_ARM_ASLDLINK_FLAGS = DEF(GCC49_ARM_ASLDLINK_FLAGS)
1967 DEFINE GCC5_AARCH64_ASLDLINK_FLAGS = DEF(GCC49_AARCH64_ASLDLINK_FLAGS)
1968 DEFINE GCC5_ASLCC_FLAGS = DEF(GCC49_ASLCC_FLAGS) -fno-lto
1969
1970 DEFINE GCC5_RISCV_ALL_CC_FLAGS = -g -fshort-wchar -fno-strict-aliasing -Wall -Werror -Wno-array-bounds -ffunction-sections -fdata-sections -include AutoGen.h -fno-common -DSTRING_ARRAY_NAME=$(BASE_NAME)Strings -msmall-data-limit=0
1971 DEFINE GCC5_RISCV_ALL_DLINK_COMMON = -nostdlib -Wl,-n,-q,--gc-sections -z common-page-size=0x40
1972 DEFINE GCC5_RISCV_ALL_DLINK_FLAGS = DEF(GCC5_RISCV_ALL_DLINK_COMMON) -Wl,--entry,$(IMAGE_ENTRY_POINT) -u $(IMAGE_ENTRY_POINT) -Wl,-Map,$(DEST_DIR_DEBUG)/$(BASE_NAME).map
1973 DEFINE GCC5_RISCV_ALL_DLINK2_FLAGS = -Wl,--defsym=PECOFF_HEADER_SIZE=0x220,--script=$(EDK_TOOLS_PATH)/Scripts/GccBase.lds
1974 DEFINE GCC5_RISCV_ALL_ASM_FLAGS = -c -x assembler -imacros $(DEST_DIR_DEBUG)/AutoGen.h
1975 DEFINE GCC5_RISCV_ALL_CC_FLAGS_WARNING_DISABLE = -Wno-tautological-compare -Wno-pointer-compare
1976
1977 DEFINE GCC5_RISCV_OPENSBI_TYPES = -DOPENSBI_EXTERNAL_SBI_TYPES=OpensbiTypes.h
1978
1979 DEFINE GCC5_RISCV64_ARCH = rv64imafdc
1980 DEFINE GCC5_RISCV32_RISCV64_ASLDLINK_FLAGS = DEF(GCC5_RISCV_ALL_DLINK_COMMON) -Wl,--entry,ReferenceAcpiTable -u ReferenceAcpiTable
1981 DEFINE GCC5_RISCV64_CC_FLAGS = DEF(GCC5_RISCV_ALL_CC_FLAGS) DEF(GCC5_RISCV_ALL_CC_FLAGS_WARNING_DISABLE) DEF(GCC5_RISCV_OPENSBI_TYPES) -march=DEF(GCC5_RISCV64_ARCH) -fno-builtin -fno-builtin-memcpy -fno-stack-protector -Wno-address -fno-asynchronous-unwind-tables -Wno-unused-but-set-variable -fpack-struct=8 -mcmodel=medany -mabi=lp64 -mno-relax
1982 DEFINE GCC5_RISCV64_DLINK_FLAGS = DEF(GCC5_RISCV_ALL_DLINK_FLAGS) -Wl,-melf64lriscv,--oformat=elf64-littleriscv,--no-relax
1983 DEFINE GCC5_RISCV64_DLINK2_FLAGS = DEF(GCC5_RISCV_ALL_DLINK2_FLAGS)
1984 DEFINE GCC5_RISCV64_ASM_FLAGS = DEF(GCC5_RISCV_ALL_ASM_FLAGS) -march=DEF(GCC5_RISCV64_ARCH) -mcmodel=medany -mabi=lp64
1985 DEFINE GCC_PP_FLAGS = -E -x assembler-with-cpp -include AutoGen.h DEF(GCC5_RISCV_OPENSBI_TYPES)
1986
1987 ####################################################################################
1988 #
1989 # GCC 4.8 - This configuration is used to compile under Linux to produce
1990 # PE/COFF binaries using GCC 4.8.
1991 #
1992 ####################################################################################
1993 *_GCC48_*_*_FAMILY = GCC
1994
1995 *_GCC48_*_MAKE_PATH = DEF(GCC_HOST_PREFIX)make
1996 *_GCC48_*_*_DLL = ENV(GCC48_DLL)
1997 *_GCC48_*_ASL_PATH = DEF(UNIX_IASL_BIN)
1998
1999 *_GCC48_*_PP_FLAGS = DEF(GCC_PP_FLAGS)
2000 *_GCC48_*_ASLPP_FLAGS = DEF(GCC_ASLPP_FLAGS)
2001 *_GCC48_*_ASLCC_FLAGS = DEF(GCC_ASLCC_FLAGS)
2002 *_GCC48_*_VFRPP_FLAGS = DEF(GCC_VFRPP_FLAGS)
2003 *_GCC48_*_APP_FLAGS =
2004 *_GCC48_*_ASL_FLAGS = DEF(IASL_FLAGS)
2005 *_GCC48_*_ASL_OUTFLAGS = DEF(IASL_OUTFLAGS)
2006 *_GCC48_*_DEPS_FLAGS = DEF(GCC_DEPS_FLAGS)
2007
2008 ##################
2009 # GCC48 IA32 definitions
2010 ##################
2011 *_GCC48_IA32_OBJCOPY_PATH = DEF(GCC48_IA32_PREFIX)objcopy
2012 *_GCC48_IA32_CC_PATH = DEF(GCC48_IA32_PREFIX)gcc
2013 *_GCC48_IA32_SLINK_PATH = DEF(GCC48_IA32_PREFIX)ar
2014 *_GCC48_IA32_DLINK_PATH = DEF(GCC48_IA32_PREFIX)gcc
2015 *_GCC48_IA32_ASLDLINK_PATH = DEF(GCC48_IA32_PREFIX)gcc
2016 *_GCC48_IA32_ASM_PATH = DEF(GCC48_IA32_PREFIX)gcc
2017 *_GCC48_IA32_PP_PATH = DEF(GCC48_IA32_PREFIX)gcc
2018 *_GCC48_IA32_VFRPP_PATH = DEF(GCC48_IA32_PREFIX)gcc
2019 *_GCC48_IA32_ASLCC_PATH = DEF(GCC48_IA32_PREFIX)gcc
2020 *_GCC48_IA32_ASLPP_PATH = DEF(GCC48_IA32_PREFIX)gcc
2021 *_GCC48_IA32_RC_PATH = DEF(GCC48_IA32_PREFIX)objcopy
2022
2023 *_GCC48_IA32_ASLCC_FLAGS = DEF(GCC48_ASLCC_FLAGS) -m32
2024 *_GCC48_IA32_ASLDLINK_FLAGS = DEF(GCC48_IA32_X64_ASLDLINK_FLAGS) -Wl,-m,elf_i386
2025 *_GCC48_IA32_ASM_FLAGS = DEF(GCC48_ASM_FLAGS) -m32 -march=i386
2026 *_GCC48_IA32_DLINK_FLAGS = DEF(GCC48_IA32_X64_DLINK_FLAGS) -Wl,-m,elf_i386,--oformat=elf32-i386
2027 *_GCC48_IA32_DLINK2_FLAGS = DEF(GCC48_IA32_DLINK2_FLAGS)
2028 *_GCC48_IA32_RC_FLAGS = DEF(GCC_IA32_RC_FLAGS)
2029 *_GCC48_IA32_OBJCOPY_FLAGS =
2030 *_GCC48_IA32_NASM_FLAGS = -f elf32
2031
2032 DEBUG_GCC48_IA32_CC_FLAGS = DEF(GCC48_IA32_CC_FLAGS) -Os
2033 RELEASE_GCC48_IA32_CC_FLAGS = DEF(GCC48_IA32_CC_FLAGS) -Os -Wno-unused-but-set-variable
2034 NOOPT_GCC48_IA32_CC_FLAGS = DEF(GCC48_IA32_CC_FLAGS) -O0
2035
2036 ##################
2037 # GCC48 X64 definitions
2038 ##################
2039 *_GCC48_X64_OBJCOPY_PATH = DEF(GCC48_X64_PREFIX)objcopy
2040 *_GCC48_X64_CC_PATH = DEF(GCC48_X64_PREFIX)gcc
2041 *_GCC48_X64_SLINK_PATH = DEF(GCC48_X64_PREFIX)ar
2042 *_GCC48_X64_DLINK_PATH = DEF(GCC48_X64_PREFIX)gcc
2043 *_GCC48_X64_ASLDLINK_PATH = DEF(GCC48_X64_PREFIX)gcc
2044 *_GCC48_X64_ASM_PATH = DEF(GCC48_X64_PREFIX)gcc
2045 *_GCC48_X64_PP_PATH = DEF(GCC48_X64_PREFIX)gcc
2046 *_GCC48_X64_VFRPP_PATH = DEF(GCC48_X64_PREFIX)gcc
2047 *_GCC48_X64_ASLCC_PATH = DEF(GCC48_X64_PREFIX)gcc
2048 *_GCC48_X64_ASLPP_PATH = DEF(GCC48_X64_PREFIX)gcc
2049 *_GCC48_X64_RC_PATH = DEF(GCC48_X64_PREFIX)objcopy
2050
2051 *_GCC48_X64_ASLCC_FLAGS = DEF(GCC48_ASLCC_FLAGS) -m64
2052 *_GCC48_X64_ASLDLINK_FLAGS = DEF(GCC48_IA32_X64_ASLDLINK_FLAGS) -Wl,-m,elf_x86_64
2053 *_GCC48_X64_ASM_FLAGS = DEF(GCC48_ASM_FLAGS) -m64
2054 *_GCC48_X64_DLINK_FLAGS = DEF(GCC48_X64_DLINK_FLAGS)
2055 *_GCC48_X64_DLINK2_FLAGS = DEF(GCC48_X64_DLINK2_FLAGS)
2056 *_GCC48_X64_RC_FLAGS = DEF(GCC_X64_RC_FLAGS)
2057 *_GCC48_X64_OBJCOPY_FLAGS =
2058 *_GCC48_X64_NASM_FLAGS = -f elf64
2059
2060 DEBUG_GCC48_X64_CC_FLAGS = DEF(GCC48_X64_CC_FLAGS) -Os
2061 RELEASE_GCC48_X64_CC_FLAGS = DEF(GCC48_X64_CC_FLAGS) -Os -Wno-unused-but-set-variable
2062 NOOPT_GCC48_X64_CC_FLAGS = DEF(GCC48_X64_CC_FLAGS) -O0
2063
2064 ##################
2065 # GCC48 ARM definitions
2066 ##################
2067 *_GCC48_ARM_CC_PATH = ENV(GCC48_ARM_PREFIX)gcc
2068 *_GCC48_ARM_SLINK_PATH = ENV(GCC48_ARM_PREFIX)ar
2069 *_GCC48_ARM_DLINK_PATH = ENV(GCC48_ARM_PREFIX)gcc
2070 *_GCC48_ARM_ASLDLINK_PATH = ENV(GCC48_ARM_PREFIX)gcc
2071 *_GCC48_ARM_ASM_PATH = ENV(GCC48_ARM_PREFIX)gcc
2072 *_GCC48_ARM_PP_PATH = ENV(GCC48_ARM_PREFIX)gcc
2073 *_GCC48_ARM_VFRPP_PATH = ENV(GCC48_ARM_PREFIX)gcc
2074 *_GCC48_ARM_ASLCC_PATH = ENV(GCC48_ARM_PREFIX)gcc
2075 *_GCC48_ARM_ASLPP_PATH = ENV(GCC48_ARM_PREFIX)gcc
2076 *_GCC48_ARM_RC_PATH = ENV(GCC48_ARM_PREFIX)objcopy
2077
2078 *_GCC48_ARM_ARCHCC_FLAGS = -mthumb
2079 *_GCC48_ARM_PLATFORM_FLAGS = -march=armv7-a
2080
2081 *_GCC48_ARM_ASLCC_FLAGS = DEF(GCC48_ASLCC_FLAGS)
2082 *_GCC48_ARM_ASLDLINK_FLAGS = DEF(GCC48_ARM_ASLDLINK_FLAGS)
2083 *_GCC48_ARM_ASM_FLAGS = DEF(GCC48_ARM_ASM_FLAGS)
2084 *_GCC48_ARM_DLINK_FLAGS = DEF(GCC48_ARM_DLINK_FLAGS)
2085 *_GCC48_ARM_DLINK2_FLAGS = DEF(GCC48_ARM_DLINK2_FLAGS)
2086 *_GCC48_ARM_DTCPP_FLAGS = DEF(GCC_DTCPP_FLAGS)
2087 *_GCC48_ARM_PLATFORM_FLAGS = -march=armv7-a
2088 *_GCC48_ARM_PP_FLAGS = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) DEF(GCC_PP_FLAGS)
2089 *_GCC48_ARM_RC_FLAGS = DEF(GCC_ARM_RC_FLAGS)
2090 *_GCC48_ARM_VFRPP_FLAGS = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) DEF(GCC_VFRPP_FLAGS)
2091 *_GCC48_ARM_CC_XIPFLAGS = DEF(GCC48_ARM_CC_XIPFLAGS)
2092
2093 DEBUG_GCC48_ARM_CC_FLAGS = DEF(GCC48_ARM_CC_FLAGS) -O0
2094 RELEASE_GCC48_ARM_CC_FLAGS = DEF(GCC48_ARM_CC_FLAGS) -Wno-unused-but-set-variable
2095 NOOPT_GCC48_ARM_CC_FLAGS = DEF(GCC48_ARM_CC_FLAGS) -O0
2096
2097 ##################
2098 # GCC48 AARCH64 definitions
2099 ##################
2100 *_GCC48_AARCH64_CC_PATH = ENV(GCC48_AARCH64_PREFIX)gcc
2101 *_GCC48_AARCH64_SLINK_PATH = ENV(GCC48_AARCH64_PREFIX)ar
2102 *_GCC48_AARCH64_DLINK_PATH = ENV(GCC48_AARCH64_PREFIX)gcc
2103 *_GCC48_AARCH64_ASLDLINK_PATH = ENV(GCC48_AARCH64_PREFIX)gcc
2104 *_GCC48_AARCH64_ASM_PATH = ENV(GCC48_AARCH64_PREFIX)gcc
2105 *_GCC48_AARCH64_PP_PATH = ENV(GCC48_AARCH64_PREFIX)gcc
2106 *_GCC48_AARCH64_VFRPP_PATH = ENV(GCC48_AARCH64_PREFIX)gcc
2107 *_GCC48_AARCH64_ASLCC_PATH = ENV(GCC48_AARCH64_PREFIX)gcc
2108 *_GCC48_AARCH64_ASLPP_PATH = ENV(GCC48_AARCH64_PREFIX)gcc
2109 *_GCC48_AARCH64_RC_PATH = ENV(GCC48_AARCH64_PREFIX)objcopy
2110
2111 *_GCC48_AARCH64_ASLCC_FLAGS = DEF(GCC48_ASLCC_FLAGS)
2112 *_GCC48_AARCH64_ASLDLINK_FLAGS = DEF(GCC48_AARCH64_ASLDLINK_FLAGS)
2113 *_GCC48_AARCH64_ASM_FLAGS = DEF(GCC48_AARCH64_ASM_FLAGS)
2114 *_GCC48_AARCH64_DLINK_FLAGS = DEF(GCC48_AARCH64_DLINK_FLAGS)
2115 *_GCC48_AARCH64_DLINK2_FLAGS = DEF(GCC48_AARCH64_DLINK2_FLAGS)
2116 *_GCC48_AARCH64_DTCPP_FLAGS = DEF(GCC_DTCPP_FLAGS)
2117 *_GCC48_AARCH64_PLATFORM_FLAGS =
2118 *_GCC48_AARCH64_PP_FLAGS = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) DEF(GCC_PP_FLAGS)
2119 *_GCC48_AARCH64_RC_FLAGS = DEF(GCC_AARCH64_RC_FLAGS)
2120 *_GCC48_AARCH64_VFRPP_FLAGS = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) DEF(GCC_VFRPP_FLAGS)
2121 *_GCC48_AARCH64_CC_XIPFLAGS = DEF(GCC48_AARCH64_CC_XIPFLAGS)
2122
2123 DEBUG_GCC48_AARCH64_CC_FLAGS = DEF(GCC48_AARCH64_CC_FLAGS) -O0
2124 RELEASE_GCC48_AARCH64_CC_FLAGS = DEF(GCC48_AARCH64_CC_FLAGS) -Wno-unused-but-set-variable
2125 NOOPT_GCC48_AARCH64_CC_FLAGS = DEF(GCC48_AARCH64_CC_FLAGS) -O0
2126
2127 ####################################################################################
2128 #
2129 # GCC 4.9 - This configuration is used to compile under Linux to produce
2130 # PE/COFF binaries using GCC 4.9.
2131 #
2132 ####################################################################################
2133 *_GCC49_*_*_FAMILY = GCC
2134
2135 *_GCC49_*_MAKE_PATH = DEF(GCC_HOST_PREFIX)make
2136 *_GCC49_*_*_DLL = ENV(GCC49_DLL)
2137 *_GCC49_*_ASL_PATH = DEF(UNIX_IASL_BIN)
2138
2139 *_GCC49_*_PP_FLAGS = DEF(GCC_PP_FLAGS)
2140 *_GCC49_*_ASLPP_FLAGS = DEF(GCC_ASLPP_FLAGS)
2141 *_GCC49_*_ASLCC_FLAGS = DEF(GCC_ASLCC_FLAGS)
2142 *_GCC49_*_VFRPP_FLAGS = DEF(GCC_VFRPP_FLAGS)
2143 *_GCC49_*_APP_FLAGS =
2144 *_GCC49_*_ASL_FLAGS = DEF(IASL_FLAGS)
2145 *_GCC49_*_ASL_OUTFLAGS = DEF(IASL_OUTFLAGS)
2146 *_GCC49_*_DEPS_FLAGS = DEF(GCC_DEPS_FLAGS)
2147
2148 ##################
2149 # GCC49 IA32 definitions
2150 ##################
2151 *_GCC49_IA32_OBJCOPY_PATH = DEF(GCC49_IA32_PREFIX)objcopy
2152 *_GCC49_IA32_CC_PATH = DEF(GCC49_IA32_PREFIX)gcc
2153 *_GCC49_IA32_SLINK_PATH = DEF(GCC49_IA32_PREFIX)ar
2154 *_GCC49_IA32_DLINK_PATH = DEF(GCC49_IA32_PREFIX)gcc
2155 *_GCC49_IA32_ASLDLINK_PATH = DEF(GCC49_IA32_PREFIX)gcc
2156 *_GCC49_IA32_ASM_PATH = DEF(GCC49_IA32_PREFIX)gcc
2157 *_GCC49_IA32_PP_PATH = DEF(GCC49_IA32_PREFIX)gcc
2158 *_GCC49_IA32_VFRPP_PATH = DEF(GCC49_IA32_PREFIX)gcc
2159 *_GCC49_IA32_ASLCC_PATH = DEF(GCC49_IA32_PREFIX)gcc
2160 *_GCC49_IA32_ASLPP_PATH = DEF(GCC49_IA32_PREFIX)gcc
2161 *_GCC49_IA32_RC_PATH = DEF(GCC49_IA32_PREFIX)objcopy
2162
2163 *_GCC49_IA32_ASLCC_FLAGS = DEF(GCC49_ASLCC_FLAGS) -m32
2164 *_GCC49_IA32_ASLDLINK_FLAGS = DEF(GCC49_IA32_X64_ASLDLINK_FLAGS) -Wl,-m,elf_i386
2165 *_GCC49_IA32_ASM_FLAGS = DEF(GCC49_ASM_FLAGS) -m32 -march=i386
2166 *_GCC49_IA32_DLINK_FLAGS = DEF(GCC49_IA32_X64_DLINK_FLAGS) -Wl,-m,elf_i386,--oformat=elf32-i386
2167 *_GCC49_IA32_DLINK2_FLAGS = DEF(GCC49_IA32_DLINK2_FLAGS)
2168 *_GCC49_IA32_RC_FLAGS = DEF(GCC_IA32_RC_FLAGS)
2169 *_GCC49_IA32_OBJCOPY_FLAGS =
2170 *_GCC49_IA32_NASM_FLAGS = -f elf32
2171
2172 DEBUG_GCC49_IA32_CC_FLAGS = DEF(GCC49_IA32_CC_FLAGS) -Os
2173 RELEASE_GCC49_IA32_CC_FLAGS = DEF(GCC49_IA32_CC_FLAGS) -Os -Wno-unused-but-set-variable -Wno-unused-const-variable
2174 NOOPT_GCC49_IA32_CC_FLAGS = DEF(GCC49_IA32_CC_FLAGS) -O0
2175
2176 ##################
2177 # GCC49 X64 definitions
2178 ##################
2179 *_GCC49_X64_OBJCOPY_PATH = DEF(GCC49_X64_PREFIX)objcopy
2180 *_GCC49_X64_CC_PATH = DEF(GCC49_X64_PREFIX)gcc
2181 *_GCC49_X64_SLINK_PATH = DEF(GCC49_X64_PREFIX)ar
2182 *_GCC49_X64_DLINK_PATH = DEF(GCC49_X64_PREFIX)gcc
2183 *_GCC49_X64_ASLDLINK_PATH = DEF(GCC49_X64_PREFIX)gcc
2184 *_GCC49_X64_ASM_PATH = DEF(GCC49_X64_PREFIX)gcc
2185 *_GCC49_X64_PP_PATH = DEF(GCC49_X64_PREFIX)gcc
2186 *_GCC49_X64_VFRPP_PATH = DEF(GCC49_X64_PREFIX)gcc
2187 *_GCC49_X64_ASLCC_PATH = DEF(GCC49_X64_PREFIX)gcc
2188 *_GCC49_X64_ASLPP_PATH = DEF(GCC49_X64_PREFIX)gcc
2189 *_GCC49_X64_RC_PATH = DEF(GCC49_X64_PREFIX)objcopy
2190
2191 *_GCC49_X64_ASLCC_FLAGS = DEF(GCC49_ASLCC_FLAGS) -m64
2192 *_GCC49_X64_ASLDLINK_FLAGS = DEF(GCC49_IA32_X64_ASLDLINK_FLAGS) -Wl,-m,elf_x86_64
2193 *_GCC49_X64_ASM_FLAGS = DEF(GCC49_ASM_FLAGS) -m64
2194 *_GCC49_X64_DLINK_FLAGS = DEF(GCC49_X64_DLINK_FLAGS)
2195 *_GCC49_X64_DLINK2_FLAGS = DEF(GCC49_X64_DLINK2_FLAGS)
2196 *_GCC49_X64_RC_FLAGS = DEF(GCC_X64_RC_FLAGS)
2197 *_GCC49_X64_OBJCOPY_FLAGS =
2198 *_GCC49_X64_NASM_FLAGS = -f elf64
2199
2200 DEBUG_GCC49_X64_CC_FLAGS = DEF(GCC49_X64_CC_FLAGS) -Os
2201 RELEASE_GCC49_X64_CC_FLAGS = DEF(GCC49_X64_CC_FLAGS) -Os -Wno-unused-but-set-variable -Wno-unused-const-variable
2202 NOOPT_GCC49_X64_CC_FLAGS = DEF(GCC49_X64_CC_FLAGS) -O0
2203
2204 ##################
2205 # GCC49 ARM definitions
2206 ##################
2207 *_GCC49_ARM_CC_PATH = ENV(GCC49_ARM_PREFIX)gcc
2208 *_GCC49_ARM_SLINK_PATH = ENV(GCC49_ARM_PREFIX)ar
2209 *_GCC49_ARM_DLINK_PATH = ENV(GCC49_ARM_PREFIX)gcc
2210 *_GCC49_ARM_ASLDLINK_PATH = ENV(GCC49_ARM_PREFIX)gcc
2211 *_GCC49_ARM_ASM_PATH = ENV(GCC49_ARM_PREFIX)gcc
2212 *_GCC49_ARM_PP_PATH = ENV(GCC49_ARM_PREFIX)gcc
2213 *_GCC49_ARM_VFRPP_PATH = ENV(GCC49_ARM_PREFIX)gcc
2214 *_GCC49_ARM_ASLCC_PATH = ENV(GCC49_ARM_PREFIX)gcc
2215 *_GCC49_ARM_ASLPP_PATH = ENV(GCC49_ARM_PREFIX)gcc
2216 *_GCC49_ARM_RC_PATH = ENV(GCC49_ARM_PREFIX)objcopy
2217
2218 *_GCC49_ARM_ARCHCC_FLAGS = -mthumb
2219 *_GCC49_ARM_PLATFORM_FLAGS = -march=armv7-a
2220
2221 *_GCC49_ARM_ASLCC_FLAGS = DEF(GCC49_ASLCC_FLAGS)
2222 *_GCC49_ARM_ASLDLINK_FLAGS = DEF(GCC49_ARM_ASLDLINK_FLAGS)
2223 *_GCC49_ARM_ASM_FLAGS = DEF(GCC49_ARM_ASM_FLAGS)
2224 *_GCC49_ARM_DLINK_FLAGS = DEF(GCC49_ARM_DLINK_FLAGS)
2225 *_GCC49_ARM_DLINK2_FLAGS = DEF(GCC49_ARM_DLINK2_FLAGS)
2226 *_GCC49_ARM_DTCPP_FLAGS = DEF(GCC_DTCPP_FLAGS)
2227 *_GCC49_ARM_PLATFORM_FLAGS = -march=armv7-a
2228 *_GCC49_ARM_PP_FLAGS = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) DEF(GCC_PP_FLAGS)
2229 *_GCC49_ARM_RC_FLAGS = DEF(GCC_ARM_RC_FLAGS)
2230 *_GCC49_ARM_VFRPP_FLAGS = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) DEF(GCC_VFRPP_FLAGS)
2231 *_GCC49_ARM_CC_XIPFLAGS = DEF(GCC49_ARM_CC_XIPFLAGS)
2232
2233 DEBUG_GCC49_ARM_CC_FLAGS = DEF(GCC49_ARM_CC_FLAGS) -O0
2234 RELEASE_GCC49_ARM_CC_FLAGS = DEF(GCC49_ARM_CC_FLAGS) -Wno-unused-but-set-variable -Wno-unused-const-variable
2235 NOOPT_GCC49_ARM_CC_FLAGS = DEF(GCC49_ARM_CC_FLAGS) -O0
2236
2237 ##################
2238 # GCC49 AARCH64 definitions
2239 ##################
2240 *_GCC49_AARCH64_CC_PATH = ENV(GCC49_AARCH64_PREFIX)gcc
2241 *_GCC49_AARCH64_SLINK_PATH = ENV(GCC49_AARCH64_PREFIX)ar
2242 *_GCC49_AARCH64_DLINK_PATH = ENV(GCC49_AARCH64_PREFIX)gcc
2243 *_GCC49_AARCH64_ASLDLINK_PATH = ENV(GCC49_AARCH64_PREFIX)gcc
2244 *_GCC49_AARCH64_ASM_PATH = ENV(GCC49_AARCH64_PREFIX)gcc
2245 *_GCC49_AARCH64_PP_PATH = ENV(GCC49_AARCH64_PREFIX)gcc
2246 *_GCC49_AARCH64_VFRPP_PATH = ENV(GCC49_AARCH64_PREFIX)gcc
2247 *_GCC49_AARCH64_ASLCC_PATH = ENV(GCC49_AARCH64_PREFIX)gcc
2248 *_GCC49_AARCH64_ASLPP_PATH = ENV(GCC49_AARCH64_PREFIX)gcc
2249 *_GCC49_AARCH64_RC_PATH = ENV(GCC49_AARCH64_PREFIX)objcopy
2250
2251 *_GCC49_AARCH64_ASLCC_FLAGS = DEF(GCC49_ASLCC_FLAGS)
2252 *_GCC49_AARCH64_ASLDLINK_FLAGS = DEF(GCC49_AARCH64_ASLDLINK_FLAGS)
2253 *_GCC49_AARCH64_ASM_FLAGS = DEF(GCC49_AARCH64_ASM_FLAGS)
2254 *_GCC49_AARCH64_DLINK2_FLAGS = DEF(GCC49_AARCH64_DLINK2_FLAGS)
2255 *_GCC49_AARCH64_DTCPP_FLAGS = DEF(GCC_DTCPP_FLAGS)
2256 *_GCC49_AARCH64_PLATFORM_FLAGS =
2257 *_GCC49_AARCH64_PP_FLAGS = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) DEF(GCC_PP_FLAGS)
2258 *_GCC49_AARCH64_RC_FLAGS = DEF(GCC_AARCH64_RC_FLAGS)
2259 *_GCC49_AARCH64_VFRPP_FLAGS = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) DEF(GCC_VFRPP_FLAGS)
2260 *_GCC49_AARCH64_CC_XIPFLAGS = DEF(GCC49_AARCH64_CC_XIPFLAGS)
2261
2262 DEBUG_GCC49_AARCH64_CC_FLAGS = DEF(GCC49_AARCH64_CC_FLAGS) -O0
2263 DEBUG_GCC49_AARCH64_DLINK_FLAGS = DEF(GCC49_AARCH64_DLINK_FLAGS)
2264 DEBUG_GCC49_AARCH64_DLINK_XIPFLAGS = -z common-page-size=0x20
2265
2266 RELEASE_GCC49_AARCH64_CC_FLAGS = DEF(GCC49_AARCH64_CC_FLAGS) -Wno-unused-but-set-variable -Wno-unused-const-variable
2267 RELEASE_GCC49_AARCH64_DLINK_FLAGS = DEF(GCC49_AARCH64_DLINK_FLAGS)
2268 RELEASE_GCC49_AARCH64_DLINK_XIPFLAGS = -z common-page-size=0x20
2269
2270 NOOPT_GCC49_AARCH64_CC_FLAGS = DEF(GCC49_AARCH64_CC_FLAGS) -O0
2271 NOOPT_GCC49_AARCH64_DLINK_FLAGS = DEF(GCC49_AARCH64_DLINK_FLAGS) -O0
2272 NOOPT_GCC49_AARCH64_DLINK_XIPFLAGS = -z common-page-size=0x20 -O0
2273
2274 ####################################################################################
2275 #
2276 # GCC 5 - This configuration is used to compile under Linux to produce
2277 # PE/COFF binaries using GCC 5
2278 #
2279 ####################################################################################
2280 *_GCC5_*_*_FAMILY = GCC
2281
2282 *_GCC5_*_MAKE_PATH = DEF(GCC_HOST_PREFIX)make
2283 *_GCC5_*_*_DLL = ENV(GCC5_DLL)
2284 *_GCC5_*_ASL_PATH = DEF(UNIX_IASL_BIN)
2285
2286 *_GCC5_*_PP_FLAGS = DEF(GCC_PP_FLAGS)
2287 *_GCC5_*_ASLPP_FLAGS = DEF(GCC_ASLPP_FLAGS)
2288 *_GCC5_*_ASLCC_FLAGS = DEF(GCC_ASLCC_FLAGS)
2289 *_GCC5_*_VFRPP_FLAGS = DEF(GCC_VFRPP_FLAGS)
2290 *_GCC5_*_APP_FLAGS =
2291 *_GCC5_*_ASL_FLAGS = DEF(IASL_FLAGS)
2292 *_GCC5_*_ASL_OUTFLAGS = DEF(IASL_OUTFLAGS)
2293 *_GCC5_*_DEPS_FLAGS = DEF(GCC_DEPS_FLAGS)
2294
2295 ##################
2296 # GCC5 IA32 definitions
2297 ##################
2298 *_GCC5_IA32_OBJCOPY_PATH = DEF(GCC5_IA32_PREFIX)objcopy
2299 *_GCC5_IA32_CC_PATH = DEF(GCC5_IA32_PREFIX)gcc
2300 *_GCC5_IA32_SLINK_PATH = DEF(GCC5_IA32_PREFIX)gcc-ar
2301 *_GCC5_IA32_DLINK_PATH = DEF(GCC5_IA32_PREFIX)gcc
2302 *_GCC5_IA32_ASLDLINK_PATH = DEF(GCC5_IA32_PREFIX)gcc
2303 *_GCC5_IA32_ASM_PATH = DEF(GCC5_IA32_PREFIX)gcc
2304 *_GCC5_IA32_PP_PATH = DEF(GCC5_IA32_PREFIX)gcc
2305 *_GCC5_IA32_VFRPP_PATH = DEF(GCC5_IA32_PREFIX)gcc
2306 *_GCC5_IA32_ASLCC_PATH = DEF(GCC5_IA32_PREFIX)gcc
2307 *_GCC5_IA32_ASLPP_PATH = DEF(GCC5_IA32_PREFIX)gcc
2308 *_GCC5_IA32_RC_PATH = DEF(GCC5_IA32_PREFIX)objcopy
2309
2310 *_GCC5_IA32_ASLCC_FLAGS = DEF(GCC5_ASLCC_FLAGS) -m32
2311 *_GCC5_IA32_ASLDLINK_FLAGS = DEF(GCC5_IA32_X64_ASLDLINK_FLAGS) -Wl,-m,elf_i386 -no-pie
2312 *_GCC5_IA32_ASM_FLAGS = DEF(GCC5_ASM_FLAGS) -m32 -march=i386
2313 *_GCC5_IA32_DLINK2_FLAGS = DEF(GCC5_IA32_DLINK2_FLAGS) -no-pie
2314 *_GCC5_IA32_RC_FLAGS = DEF(GCC_IA32_RC_FLAGS)
2315 *_GCC5_IA32_OBJCOPY_FLAGS =
2316 *_GCC5_IA32_NASM_FLAGS = -f elf32
2317
2318 DEBUG_GCC5_IA32_CC_FLAGS = DEF(GCC5_IA32_CC_FLAGS) -flto -Os
2319 DEBUG_GCC5_IA32_DLINK_FLAGS = DEF(GCC5_IA32_X64_DLINK_FLAGS) -flto -Os -Wl,-m,elf_i386,--oformat=elf32-i386
2320
2321 RELEASE_GCC5_IA32_CC_FLAGS = DEF(GCC5_IA32_CC_FLAGS) -flto -Os -Wno-unused-but-set-variable -Wno-unused-const-variable
2322 RELEASE_GCC5_IA32_DLINK_FLAGS = DEF(GCC5_IA32_X64_DLINK_FLAGS) -flto -Os -Wl,-m,elf_i386,--oformat=elf32-i386
2323
2324 NOOPT_GCC5_IA32_CC_FLAGS = DEF(GCC5_IA32_CC_FLAGS) -O0
2325 NOOPT_GCC5_IA32_DLINK_FLAGS = DEF(GCC5_IA32_X64_DLINK_FLAGS) -Wl,-m,elf_i386,--oformat=elf32-i386 -O0
2326
2327 ##################
2328 # GCC5 X64 definitions
2329 ##################
2330 *_GCC5_X64_OBJCOPY_PATH = DEF(GCC5_X64_PREFIX)objcopy
2331 *_GCC5_X64_CC_PATH = DEF(GCC5_X64_PREFIX)gcc
2332 *_GCC5_X64_SLINK_PATH = DEF(GCC5_X64_PREFIX)gcc-ar
2333 *_GCC5_X64_DLINK_PATH = DEF(GCC5_X64_PREFIX)gcc
2334 *_GCC5_X64_ASLDLINK_PATH = DEF(GCC5_X64_PREFIX)gcc
2335 *_GCC5_X64_ASM_PATH = DEF(GCC5_X64_PREFIX)gcc
2336 *_GCC5_X64_PP_PATH = DEF(GCC5_X64_PREFIX)gcc
2337 *_GCC5_X64_VFRPP_PATH = DEF(GCC5_X64_PREFIX)gcc
2338 *_GCC5_X64_ASLCC_PATH = DEF(GCC5_X64_PREFIX)gcc
2339 *_GCC5_X64_ASLPP_PATH = DEF(GCC5_X64_PREFIX)gcc
2340 *_GCC5_X64_RC_PATH = DEF(GCC5_X64_PREFIX)objcopy
2341
2342 *_GCC5_X64_ASLCC_FLAGS = DEF(GCC5_ASLCC_FLAGS) -m64
2343 *_GCC5_X64_ASLDLINK_FLAGS = DEF(GCC5_IA32_X64_ASLDLINK_FLAGS) -Wl,-m,elf_x86_64
2344 *_GCC5_X64_ASM_FLAGS = DEF(GCC5_ASM_FLAGS) -m64
2345 *_GCC5_X64_DLINK2_FLAGS = DEF(GCC5_X64_DLINK2_FLAGS)
2346 *_GCC5_X64_RC_FLAGS = DEF(GCC_X64_RC_FLAGS)
2347 *_GCC5_X64_OBJCOPY_FLAGS =
2348 *_GCC5_X64_NASM_FLAGS = -f elf64
2349
2350 DEBUG_GCC5_X64_CC_FLAGS = DEF(GCC5_X64_CC_FLAGS) -flto -DUSING_LTO -Os
2351 DEBUG_GCC5_X64_DLINK_FLAGS = DEF(GCC5_X64_DLINK_FLAGS) -flto -Os
2352
2353 RELEASE_GCC5_X64_CC_FLAGS = DEF(GCC5_X64_CC_FLAGS) -flto -DUSING_LTO -Os -Wno-unused-but-set-variable -Wno-unused-const-variable
2354 RELEASE_GCC5_X64_DLINK_FLAGS = DEF(GCC5_X64_DLINK_FLAGS) -flto -Os
2355
2356 NOOPT_GCC5_X64_CC_FLAGS = DEF(GCC5_X64_CC_FLAGS) -O0
2357 NOOPT_GCC5_X64_DLINK_FLAGS = DEF(GCC5_X64_DLINK_FLAGS) -O0
2358
2359 ##################
2360 # GCC5 ARM definitions
2361 ##################
2362 *_GCC5_ARM_CC_PATH = ENV(GCC5_ARM_PREFIX)gcc
2363 *_GCC5_ARM_SLINK_PATH = ENV(GCC5_ARM_PREFIX)gcc-ar
2364 *_GCC5_ARM_DLINK_PATH = ENV(GCC5_ARM_PREFIX)gcc
2365 *_GCC5_ARM_ASLDLINK_PATH = ENV(GCC5_ARM_PREFIX)gcc
2366 *_GCC5_ARM_ASM_PATH = ENV(GCC5_ARM_PREFIX)gcc
2367 *_GCC5_ARM_PP_PATH = ENV(GCC5_ARM_PREFIX)gcc
2368 *_GCC5_ARM_VFRPP_PATH = ENV(GCC5_ARM_PREFIX)gcc
2369 *_GCC5_ARM_ASLCC_PATH = ENV(GCC5_ARM_PREFIX)gcc
2370 *_GCC5_ARM_ASLPP_PATH = ENV(GCC5_ARM_PREFIX)gcc
2371 *_GCC5_ARM_RC_PATH = ENV(GCC5_ARM_PREFIX)objcopy
2372
2373 *_GCC5_ARM_ARCHCC_FLAGS = -mthumb
2374 *_GCC5_ARM_ASLCC_FLAGS = DEF(GCC5_ASLCC_FLAGS)
2375 *_GCC5_ARM_ASLDLINK_FLAGS = DEF(GCC5_ARM_ASLDLINK_FLAGS)
2376 *_GCC5_ARM_ASM_FLAGS = DEF(GCC5_ARM_ASM_FLAGS)
2377 *_GCC5_ARM_DLINK2_FLAGS = DEF(GCC5_ARM_DLINK2_FLAGS)
2378 *_GCC5_ARM_DTCPP_FLAGS = DEF(GCC_DTCPP_FLAGS)
2379 *_GCC5_ARM_PLATFORM_FLAGS = -march=armv7-a
2380 *_GCC5_ARM_PP_FLAGS = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) DEF(GCC_PP_FLAGS)
2381 *_GCC5_ARM_RC_FLAGS = DEF(GCC_ARM_RC_FLAGS)
2382 *_GCC5_ARM_VFRPP_FLAGS = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) DEF(GCC_VFRPP_FLAGS)
2383 *_GCC5_ARM_CC_XIPFLAGS = DEF(GCC5_ARM_CC_XIPFLAGS)
2384
2385 DEBUG_GCC5_ARM_CC_FLAGS = DEF(GCC5_ARM_CC_FLAGS) -flto -Wno-unused-but-set-variable -Wno-unused-const-variable
2386 DEBUG_GCC5_ARM_DLINK_FLAGS = DEF(GCC5_ARM_DLINK_FLAGS) -flto -Os -L$(WORKSPACE)/ArmPkg/Library/GccLto -llto-arm -Wl,-plugin-opt=-pass-through=-llto-arm
2387
2388 RELEASE_GCC5_ARM_CC_FLAGS = DEF(GCC5_ARM_CC_FLAGS) -flto -Wno-unused-but-set-variable -Wno-unused-const-variable
2389 RELEASE_GCC5_ARM_DLINK_FLAGS = DEF(GCC5_ARM_DLINK_FLAGS) -flto -Os -L$(WORKSPACE)/ArmPkg/Library/GccLto -llto-arm -Wl,-plugin-opt=-pass-through=-llto-arm
2390
2391 NOOPT_GCC5_ARM_CC_FLAGS = DEF(GCC5_ARM_CC_FLAGS) -O0
2392 NOOPT_GCC5_ARM_DLINK_FLAGS = DEF(GCC5_ARM_DLINK_FLAGS) -O0
2393
2394 ##################
2395 # GCC5 AARCH64 definitions
2396 ##################
2397 *_GCC5_AARCH64_CC_PATH = ENV(GCC5_AARCH64_PREFIX)gcc
2398 *_GCC5_AARCH64_SLINK_PATH = ENV(GCC5_AARCH64_PREFIX)gcc-ar
2399 *_GCC5_AARCH64_DLINK_PATH = ENV(GCC5_AARCH64_PREFIX)gcc
2400 *_GCC5_AARCH64_ASLDLINK_PATH = ENV(GCC5_AARCH64_PREFIX)gcc
2401 *_GCC5_AARCH64_ASM_PATH = ENV(GCC5_AARCH64_PREFIX)gcc
2402 *_GCC5_AARCH64_PP_PATH = ENV(GCC5_AARCH64_PREFIX)gcc
2403 *_GCC5_AARCH64_VFRPP_PATH = ENV(GCC5_AARCH64_PREFIX)gcc
2404 *_GCC5_AARCH64_ASLCC_PATH = ENV(GCC5_AARCH64_PREFIX)gcc
2405 *_GCC5_AARCH64_ASLPP_PATH = ENV(GCC5_AARCH64_PREFIX)gcc
2406 *_GCC5_AARCH64_RC_PATH = ENV(GCC5_AARCH64_PREFIX)objcopy
2407
2408 *_GCC5_AARCH64_ASLCC_FLAGS = DEF(GCC5_ASLCC_FLAGS)
2409 *_GCC5_AARCH64_ASLDLINK_FLAGS = DEF(GCC5_AARCH64_ASLDLINK_FLAGS)
2410 *_GCC5_AARCH64_ASM_FLAGS = DEF(GCC5_AARCH64_ASM_FLAGS)
2411 *_GCC5_AARCH64_DLINK2_FLAGS = DEF(GCC5_AARCH64_DLINK2_FLAGS)
2412 *_GCC5_AARCH64_DTCPP_FLAGS = DEF(GCC_DTCPP_FLAGS)
2413 *_GCC5_AARCH64_PLATFORM_FLAGS =
2414 *_GCC5_AARCH64_PP_FLAGS = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) DEF(GCC_PP_FLAGS)
2415 *_GCC5_AARCH64_RC_FLAGS = DEF(GCC_AARCH64_RC_FLAGS)
2416 *_GCC5_AARCH64_VFRPP_FLAGS = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) DEF(GCC_VFRPP_FLAGS)
2417 *_GCC5_AARCH64_CC_XIPFLAGS = DEF(GCC5_AARCH64_CC_XIPFLAGS)
2418
2419 DEBUG_GCC5_AARCH64_CC_FLAGS = DEF(GCC5_AARCH64_CC_FLAGS) -flto -Wno-unused-but-set-variable -Wno-unused-const-variable
2420 DEBUG_GCC5_AARCH64_DLINK_FLAGS = DEF(GCC5_AARCH64_DLINK_FLAGS) -flto -Os -L$(WORKSPACE)/ArmPkg/Library/GccLto -llto-aarch64 -Wl,-plugin-opt=-pass-through=-llto-aarch64 -Wno-lto-type-mismatch
2421 DEBUG_GCC5_AARCH64_DLINK_XIPFLAGS = -z common-page-size=0x20
2422
2423 RELEASE_GCC5_AARCH64_CC_FLAGS = DEF(GCC5_AARCH64_CC_FLAGS) -flto -Wno-unused-but-set-variable -Wno-unused-const-variable
2424 RELEASE_GCC5_AARCH64_DLINK_FLAGS = DEF(GCC5_AARCH64_DLINK_FLAGS) -flto -Os -L$(WORKSPACE)/ArmPkg/Library/GccLto -llto-aarch64 -Wl,-plugin-opt=-pass-through=-llto-aarch64 -Wno-lto-type-mismatch
2425 RELEASE_GCC5_AARCH64_DLINK_XIPFLAGS = -z common-page-size=0x20
2426
2427 NOOPT_GCC5_AARCH64_CC_FLAGS = DEF(GCC5_AARCH64_CC_FLAGS) -O0
2428 NOOPT_GCC5_AARCH64_DLINK_FLAGS = DEF(GCC5_AARCH64_DLINK_FLAGS) -O0
2429 NOOPT_GCC5_AARCH64_DLINK_XIPFLAGS = -z common-page-size=0x20 -O0
2430
2431 ####################################################################################
2432 #
2433 # GCC RISC-V This configuration is used to compile under Linux to produce
2434 # PE/COFF binaries using GCC RISC-V tool chain
2435 #
2436 ####################################################################################
2437
2438 ##################
2439 # GCC5 RISCV64 definitions
2440 ##################
2441 *_GCC5_RISCV64_OBJCOPY_PATH = ENV(GCC5_RISCV64_PREFIX)objcopy
2442 *_GCC5_RISCV64_CC_PATH = ENV(GCC5_RISCV64_PREFIX)gcc
2443 *_GCC5_RISCV64_SLINK_PATH = ENV(GCC5_RISCV64_PREFIX)gcc-ar
2444 *_GCC5_RISCV64_DLINK_PATH = ENV(GCC5_RISCV64_PREFIX)gcc
2445 *_GCC5_RISCV64_ASLDLINK_PATH = ENV(GCC5_RISCV64_PREFIX)gcc
2446 *_GCC5_RISCV64_ASM_PATH = ENV(GCC5_RISCV64_PREFIX)gcc
2447 *_GCC5_RISCV64_PP_PATH = ENV(GCC5_RISCV64_PREFIX)gcc
2448 *_GCC5_RISCV64_VFRPP_PATH = ENV(GCC5_RISCV64_PREFIX)gcc
2449 *_GCC5_RISCV64_ASLCC_PATH = ENV(GCC5_RISCV64_PREFIX)gcc
2450 *_GCC5_RISCV64_ASLPP_PATH = ENV(GCC5_RISCV64_PREFIX)gcc
2451 *_GCC5_RISCV64_RC_PATH = ENV(GCC5_RISCV64_PREFIX)objcopy
2452
2453 *_GCC5_RISCV64_ASLCC_FLAGS = DEF(GCC_ASLCC_FLAGS)
2454 *_GCC5_RISCV64_ASLDLINK_FLAGS = DEF(GCC5_RISCV32_RISCV64_ASLDLINK_FLAGS)
2455 *_GCC5_RISCV64_ASM_FLAGS = DEF(GCC5_RISCV64_ASM_FLAGS)
2456 *_GCC5_RISCV64_CC_FLAGS = DEF(GCC5_RISCV64_CC_FLAGS) -save-temps
2457 *_GCC5_RISCV64_DLINK_FLAGS = DEF(GCC5_RISCV64_DLINK_FLAGS)
2458 *_GCC5_RISCV64_DLINK2_FLAGS = DEF(GCC5_RISCV64_DLINK2_FLAGS)
2459 *_GCC5_RISCV64_RC_FLAGS = DEF(GCC_RISCV64_RC_FLAGS)
2460 *_GCC5_RISCV64_OBJCOPY_FLAGS =
2461 *_GCC5_RISCV64_DTCPP_FLAGS = DEF(GCC_DTCPP_FLAGS)
2462
2463 ####################################################################################
2464 #
2465 # CLANG35 - This configuration is used to compile under Linux to produce
2466 # PE/COFF binaries using the clang compiler and assembler (v3.5 and up)
2467 # and GNU linker
2468 #
2469 ####################################################################################
2470 *_CLANG35_*_*_FAMILY = GCC
2471
2472 *_CLANG35_*_MAKE_PATH = make
2473 *_CLANG35_*_*_DLL = ENV(CLANG35_DLL)
2474 *_CLANG35_*_ASL_PATH = DEF(UNIX_IASL_BIN)
2475
2476 *_CLANG35_*_PP_FLAGS = DEF(GCC_PP_FLAGS)
2477 *_CLANG35_*_ASLCC_FLAGS = DEF(GCC_ASLCC_FLAGS)
2478 *_CLANG35_*_APP_FLAGS =
2479 *_CLANG35_*_ASL_FLAGS = DEF(IASL_FLAGS)
2480 *_CLANG35_*_ASL_OUTFLAGS = DEF(IASL_OUTFLAGS)
2481 *_CLANG35_*_DTCPP_FLAGS = DEF(GCC_DTCPP_FLAGS)
2482
2483 *_CLANG35_*_CC_PATH = ENV(CLANG35_BIN)clang
2484 *_CLANG35_*_ASM_PATH = ENV(CLANG35_BIN)clang
2485 *_CLANG35_*_PP_PATH = ENV(CLANG35_BIN)clang
2486 *_CLANG35_*_VFRPP_PATH = ENV(CLANG35_BIN)clang
2487 *_CLANG35_*_ASLCC_PATH = ENV(CLANG35_BIN)clang
2488 *_CLANG35_*_ASLPP_PATH = ENV(CLANG35_BIN)clang
2489 *_CLANG35_*_DLINK_PATH = ENV(CLANG35_BIN)clang
2490 *_CLANG35_*_ASLDLINK_PATH = ENV(CLANG35_BIN)clang
2491 *_CLANG35_*_DEPS_FLAGS = DEF(GCC_DEPS_FLAGS)
2492
2493 DEFINE CLANG35_ARM_TARGET = -target arm-linux-gnueabi
2494 DEFINE CLANG35_AARCH64_TARGET = -target aarch64-linux-gnu
2495
2496 DEFINE CLANG35_WARNING_OVERRIDES = -Wno-parentheses-equality -Wno-tautological-compare -Wno-tautological-constant-out-of-range-compare -Wno-empty-body -Wno-unknown-warning-option
2497 DEFINE CLANG35_ARM_CC_FLAGS = DEF(GCC_ARM_CC_FLAGS) DEF(CLANG35_ARM_TARGET) DEF(CLANG35_WARNING_OVERRIDES)
2498 DEFINE CLANG35_AARCH64_CC_FLAGS = DEF(GCC_AARCH64_CC_FLAGS) DEF(CLANG35_AARCH64_TARGET) -mcmodel=small DEF(CLANG35_WARNING_OVERRIDES)
2499
2500 ##################
2501 # CLANG35 ARM definitions
2502 ##################
2503 *_CLANG35_ARM_SLINK_PATH = ENV(CLANG35_ARM_PREFIX)ar
2504 *_CLANG35_ARM_RC_PATH = ENV(CLANG35_ARM_PREFIX)objcopy
2505
2506 *_CLANG35_ARM_ASLCC_FLAGS = DEF(GCC_ASLCC_FLAGS)
2507 *_CLANG35_ARM_ASLDLINK_FLAGS = DEF(CLANG35_ARM_TARGET) DEF(GCC_ARM_ASLDLINK_FLAGS)
2508 *_CLANG35_ARM_ASM_FLAGS = DEF(GCC_ASM_FLAGS) DEF(CLANG35_ARM_TARGET) $(ARCHASM_FLAGS) $(PLATFORM_FLAGS) -Qunused-arguments
2509 *_CLANG35_ARM_DLINK_FLAGS = DEF(CLANG35_ARM_TARGET) DEF(GCC_ARM_DLINK_FLAGS)
2510 *_CLANG35_ARM_DLINK2_FLAGS = DEF(GCC_DLINK2_FLAGS_COMMON) -Wl,--defsym=PECOFF_HEADER_SIZE=0x220
2511 *_CLANG35_ARM_PLATFORM_FLAGS = -march=armv7-a -mkernel -Qunused-arguments
2512 *_CLANG35_ARM_PP_FLAGS = DEF(GCC_PP_FLAGS) DEF(CLANG35_ARM_TARGET) $(ARCHCC_FLAGS) $(PLATFORM_FLAGS)
2513 *_CLANG35_ARM_RC_FLAGS = DEF(GCC_ARM_RC_FLAGS)
2514 *_CLANG35_ARM_VFRPP_FLAGS = DEF(GCC_VFRPP_FLAGS) DEF(CLANG35_ARM_TARGET) $(ARCHCC_FLAGS) $(PLATFORM_FLAGS)
2515 *_CLANG35_ARM_ASLPP_FLAGS = DEF(GCC_ASLPP_FLAGS) DEF(CLANG35_ARM_TARGET)
2516 *_CLANG35_ARM_CC_XIPFLAGS = DEF(GCC_ARM_CC_XIPFLAGS)
2517
2518 DEBUG_CLANG35_ARM_CC_FLAGS = DEF(CLANG35_ARM_CC_FLAGS) $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) -O1
2519 RELEASE_CLANG35_ARM_CC_FLAGS = DEF(CLANG35_ARM_CC_FLAGS) $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) -Oz
2520 NOOPT_CLANG35_ARM_CC_FLAGS = DEF(CLANG35_ARM_CC_FLAGS) $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) -O0
2521
2522 ##################
2523 # CLANG35 AARCH64 definitions
2524 ##################
2525 *_CLANG35_AARCH64_SLINK_PATH = ENV(CLANG35_AARCH64_PREFIX)ar
2526 *_CLANG35_AARCH64_RC_PATH = ENV(CLANG35_AARCH64_PREFIX)objcopy
2527
2528 *_CLANG35_AARCH64_ASLCC_FLAGS = DEF(GCC_ASLCC_FLAGS)
2529 *_CLANG35_AARCH64_ASLDLINK_FLAGS = DEF(CLANG35_AARCH64_TARGET) DEF(GCC_AARCH64_ASLDLINK_FLAGS)
2530 *_CLANG35_AARCH64_ASM_FLAGS = DEF(GCC_ASM_FLAGS) DEF(CLANG35_AARCH64_TARGET) $(ARCHASM_FLAGS) $(PLATFORM_FLAGS) -Qunused-arguments
2531 *_CLANG35_AARCH64_DLINK_FLAGS = DEF(CLANG35_AARCH64_TARGET) DEF(GCC_AARCH64_DLINK_FLAGS) -z common-page-size=0x1000
2532 *_CLANG35_AARCH64_DLINK_XIPFLAGS = -z common-page-size=0x20
2533 *_CLANG35_AARCH64_DLINK2_FLAGS = DEF(GCC_DLINK2_FLAGS_COMMON) -Wl,--defsym=PECOFF_HEADER_SIZE=0x228
2534 *_CLANG35_AARCH64_PLATFORM_FLAGS =
2535 *_CLANG35_AARCH64_PP_FLAGS = DEF(GCC_PP_FLAGS) DEF(CLANG35_AARCH64_TARGET) $(ARCHCC_FLAGS) $(PLATFORM_FLAGS)
2536 *_CLANG35_AARCH64_RC_FLAGS = DEF(GCC_AARCH64_RC_FLAGS)
2537 *_CLANG35_AARCH64_VFRPP_FLAGS = DEF(GCC_VFRPP_FLAGS) DEF(CLANG35_AARCH64_TARGET) $(ARCHCC_FLAGS) $(PLATFORM_FLAGS)
2538 *_CLANG35_AARCH64_ASLPP_FLAGS = DEF(GCC_ASLPP_FLAGS) DEF(CLANG35_AARCH64_TARGET)
2539 *_CLANG35_AARCH64_CC_XIPFLAGS = DEF(GCC_AARCH64_CC_XIPFLAGS)
2540
2541 DEBUG_CLANG35_AARCH64_CC_FLAGS = DEF(CLANG35_AARCH64_CC_FLAGS) $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) -O1
2542 RELEASE_CLANG35_AARCH64_CC_FLAGS = DEF(CLANG35_AARCH64_CC_FLAGS) $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) -Oz
2543 NOOPT_CLANG35_AARCH64_CC_FLAGS = DEF(CLANG35_AARCH64_CC_FLAGS) $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) -O0
2544
2545 ####################################################################################
2546 #
2547 # Clang 3.8 - This configuration is used to compile under Linux to produce
2548 # PE/COFF binaries using LLVM/Clang 3.8 with Link Time Optimization enabled
2549 #
2550 ####################################################################################
2551 *_CLANG38_*_*_FAMILY = GCC
2552 *_CLANG38_*_MAKE_PATH = make
2553 *_CLANG38_*_*_DLL = ENV(CLANG38_DLL)
2554 *_CLANG38_*_ASL_PATH = DEF(UNIX_IASL_BIN)
2555
2556 *_CLANG38_*_APP_FLAGS =
2557 *_CLANG38_*_ASL_FLAGS = DEF(IASL_FLAGS)
2558 *_CLANG38_*_ASL_OUTFLAGS = DEF(IASL_OUTFLAGS)
2559 *_CLANG38_*_DEPS_FLAGS = DEF(GCC_DEPS_FLAGS)
2560 DEFINE CLANG38_IA32_PREFIX = ENV(CLANG38_BIN)
2561 DEFINE CLANG38_X64_PREFIX = ENV(CLANG38_BIN)
2562
2563 DEFINE CLANG38_IA32_TARGET = -target i686-pc-linux-gnu
2564 DEFINE CLANG38_X64_TARGET = -target x86_64-pc-linux-gnu
2565
2566 DEFINE CLANG38_WARNING_OVERRIDES = -Wno-parentheses-equality -Wno-tautological-compare -Wno-tautological-constant-out-of-range-compare -Wno-empty-body -Wno-unused-const-variable -Wno-varargs -Wno-unknown-warning-option
2567 DEFINE CLANG38_ALL_CC_FLAGS = DEF(GCC48_ALL_CC_FLAGS) DEF(CLANG38_WARNING_OVERRIDES) -fno-stack-protector -mms-bitfields -Wno-address -Wno-shift-negative-value -Wno-unknown-pragmas -Wno-incompatible-library-redeclaration -fno-asynchronous-unwind-tables -mno-sse -mno-mmx -msoft-float -mno-implicit-float -ftrap-function=undefined_behavior_has_been_optimized_away_by_clang -funsigned-char -fno-ms-extensions -Wno-null-dereference
2568
2569 ###########################
2570 # CLANG38 IA32 definitions
2571 ###########################
2572 *_CLANG38_IA32_OBJCOPY_PATH = objcopy
2573 *_CLANG38_IA32_CC_PATH = DEF(CLANG38_IA32_PREFIX)clang
2574 *_CLANG38_IA32_SLINK_PATH = DEF(CLANG38_IA32_PREFIX)llvm-ar
2575 *_CLANG38_IA32_DLINK_PATH = DEF(CLANG38_IA32_PREFIX)clang
2576 *_CLANG38_IA32_ASLDLINK_PATH = DEF(CLANG38_IA32_PREFIX)clang
2577 *_CLANG38_IA32_ASM_PATH = DEF(CLANG38_IA32_PREFIX)clang
2578 *_CLANG38_IA32_PP_PATH = DEF(CLANG38_IA32_PREFIX)clang
2579 *_CLANG38_IA32_VFRPP_PATH = DEF(CLANG38_IA32_PREFIX)clang
2580 *_CLANG38_IA32_ASLCC_PATH = DEF(CLANG38_IA32_PREFIX)clang
2581 *_CLANG38_IA32_ASLPP_PATH = DEF(CLANG38_IA32_PREFIX)clang
2582 *_CLANG38_IA32_RC_PATH = objcopy
2583
2584 *_CLANG38_IA32_ASLCC_FLAGS = DEF(GCC_ASLCC_FLAGS) -m32 -fno-lto DEF(CLANG38_IA32_TARGET)
2585 *_CLANG38_IA32_ASLDLINK_FLAGS = DEF(GCC5_IA32_X64_ASLDLINK_FLAGS) -Wl,-m,elf_i386
2586 *_CLANG38_IA32_ASM_FLAGS = DEF(GCC5_ASM_FLAGS) -m32 -march=i386 DEF(CLANG38_IA32_TARGET)
2587 *_CLANG38_IA32_RC_FLAGS = DEF(GCC_IA32_RC_FLAGS)
2588 *_CLANG38_IA32_OBJCOPY_FLAGS =
2589 *_CLANG38_IA32_NASM_FLAGS = -f elf32
2590 *_CLANG38_IA32_PP_FLAGS = DEF(GCC_PP_FLAGS) DEF(CLANG38_IA32_TARGET)
2591 *_CLANG38_IA32_ASLPP_FLAGS = DEF(GCC_ASLPP_FLAGS) DEF(CLANG38_IA32_TARGET)
2592 *_CLANG38_IA32_VFRPP_FLAGS = DEF(GCC_VFRPP_FLAGS) DEF(CLANG38_IA32_TARGET)
2593
2594 DEBUG_CLANG38_IA32_CC_FLAGS = DEF(CLANG38_ALL_CC_FLAGS) -m32 -Oz -flto -march=i586 DEF(CLANG38_IA32_TARGET) -g
2595 DEBUG_CLANG38_IA32_DLINK_FLAGS = DEF(GCC5_IA32_X64_DLINK_FLAGS) -flto -Wl,-Oz -Wl,-melf_i386 -Wl,--oformat=elf32-i386
2596 DEBUG_CLANG38_IA32_DLINK2_FLAGS = DEF(GCC5_IA32_DLINK2_FLAGS) -O3
2597
2598 RELEASE_CLANG38_IA32_CC_FLAGS = DEF(CLANG38_ALL_CC_FLAGS) -m32 -Oz -flto -march=i586 DEF(CLANG38_IA32_TARGET)
2599 RELEASE_CLANG38_IA32_DLINK_FLAGS = DEF(GCC5_IA32_X64_DLINK_FLAGS) -flto -Wl,-Oz -Wl,-melf_i386 -Wl,--oformat=elf32-i386
2600 RELEASE_CLANG38_IA32_DLINK2_FLAGS = DEF(GCC5_IA32_DLINK2_FLAGS) -O3
2601
2602 NOOPT_CLANG38_IA32_CC_FLAGS = DEF(CLANG38_ALL_CC_FLAGS) -m32 -O0 -march=i586 DEF(CLANG38_IA32_TARGET) -g
2603 NOOPT_CLANG38_IA32_DLINK_FLAGS = DEF(GCC5_IA32_X64_DLINK_FLAGS) -Wl,-O0 -Wl,-melf_i386 -Wl,--oformat=elf32-i386
2604 NOOPT_CLANG38_IA32_DLINK2_FLAGS = DEF(GCC5_IA32_DLINK2_FLAGS) -O0
2605
2606 ##########################
2607 # CLANG38 X64 definitions
2608 ##########################
2609 *_CLANG38_X64_OBJCOPY_PATH = objcopy
2610 *_CLANG38_X64_CC_PATH = DEF(CLANG38_X64_PREFIX)clang
2611 *_CLANG38_X64_SLINK_PATH = DEF(CLANG38_X64_PREFIX)llvm-ar
2612 *_CLANG38_X64_DLINK_PATH = DEF(CLANG38_X64_PREFIX)clang
2613 *_CLANG38_X64_ASLDLINK_PATH = DEF(CLANG38_X64_PREFIX)clang
2614 *_CLANG38_X64_ASM_PATH = DEF(CLANG38_X64_PREFIX)clang
2615 *_CLANG38_X64_PP_PATH = DEF(CLANG38_X64_PREFIX)clang
2616 *_CLANG38_X64_VFRPP_PATH = DEF(CLANG38_X64_PREFIX)clang
2617 *_CLANG38_X64_ASLCC_PATH = DEF(CLANG38_X64_PREFIX)clang
2618 *_CLANG38_X64_ASLPP_PATH = DEF(CLANG38_X64_PREFIX)clang
2619 *_CLANG38_X64_RC_PATH = objcopy
2620
2621 *_CLANG38_X64_ASLCC_FLAGS = DEF(GCC_ASLCC_FLAGS) -m64 -fno-lto DEF(CLANG38_X64_TARGET)
2622 *_CLANG38_X64_ASLDLINK_FLAGS = DEF(GCC5_IA32_X64_ASLDLINK_FLAGS) -Wl,-m,elf_x86_64
2623 *_CLANG38_X64_ASM_FLAGS = DEF(GCC5_ASM_FLAGS) -m64 DEF(CLANG38_X64_TARGET)
2624 *_CLANG38_X64_RC_FLAGS = DEF(GCC_X64_RC_FLAGS)
2625 *_CLANG38_X64_OBJCOPY_FLAGS =
2626 *_CLANG38_X64_NASM_FLAGS = -f elf64
2627 *_CLANG38_X64_PP_FLAGS = DEF(GCC_PP_FLAGS) DEF(CLANG38_X64_TARGET)
2628 *_CLANG38_X64_ASLPP_FLAGS = DEF(GCC_ASLPP_FLAGS) DEF(CLANG38_X64_TARGET)
2629 *_CLANG38_X64_VFRPP_FLAGS = DEF(GCC_VFRPP_FLAGS) DEF(CLANG38_X64_TARGET)
2630
2631 DEBUG_CLANG38_X64_CC_FLAGS = DEF(CLANG38_ALL_CC_FLAGS) -m64 "-DEFIAPI=__attribute__((ms_abi))" -mno-red-zone -mcmodel=small -fpie -Oz -flto DEF(CLANG38_X64_TARGET) -g
2632 DEBUG_CLANG38_X64_DLINK_FLAGS = DEF(GCC5_IA32_X64_DLINK_FLAGS) -flto -Wl,-Oz -Wl,-melf_x86_64 -Wl,--oformat=elf64-x86-64 -Wl,-pie -mcmodel=small
2633 DEBUG_CLANG38_X64_DLINK2_FLAGS = DEF(GCC5_X64_DLINK2_FLAGS) -O3
2634
2635 RELEASE_CLANG38_X64_CC_FLAGS = DEF(CLANG38_ALL_CC_FLAGS) -m64 "-DEFIAPI=__attribute__((ms_abi))" -mno-red-zone -mcmodel=small -fpie -Oz -flto DEF(CLANG38_X64_TARGET)
2636 RELEASE_CLANG38_X64_DLINK_FLAGS = DEF(GCC5_IA32_X64_DLINK_FLAGS) -flto -Wl,-Oz -Wl,-melf_x86_64 -Wl,--oformat=elf64-x86-64 -Wl,-pie -mcmodel=small
2637 RELEASE_CLANG38_X64_DLINK2_FLAGS = DEF(GCC5_X64_DLINK2_FLAGS) -O3
2638
2639 NOOPT_CLANG38_X64_CC_FLAGS = DEF(CLANG38_ALL_CC_FLAGS) -m64 "-DEFIAPI=__attribute__((ms_abi))" -mno-red-zone -mcmodel=small -fpie -O0 DEF(CLANG38_X64_TARGET) -g
2640 NOOPT_CLANG38_X64_DLINK_FLAGS = DEF(GCC5_IA32_X64_DLINK_FLAGS) -Wl,-O0 -Wl,-melf_x86_64 -Wl,--oformat=elf64-x86-64 -Wl,-pie -mcmodel=small
2641 NOOPT_CLANG38_X64_DLINK2_FLAGS = DEF(GCC5_X64_DLINK2_FLAGS) -O0
2642
2643 ##################
2644 # CLANG38 ARM definitions
2645 ##################
2646 DEFINE CLANG38_ARM_TARGET = -target arm-linux-gnueabi
2647 DEFINE CLANG38_ARM_CC_FLAGS = DEF(GCC_ARM_CC_FLAGS) DEF(CLANG38_ARM_TARGET) DEF(CLANG38_WARNING_OVERRIDES) -mno-movt
2648 DEFINE CLANG38_ARM_DLINK_FLAGS = DEF(CLANG38_ARM_TARGET) DEF(GCC_ARM_DLINK_FLAGS)
2649
2650 *_CLANG38_ARM_PP_FLAGS = DEF(GCC_PP_FLAGS)
2651 *_CLANG38_ARM_ASLCC_FLAGS = DEF(GCC_ASLCC_FLAGS)
2652 *_CLANG38_ARM_APP_FLAGS =
2653 *_CLANG38_ARM_ASL_FLAGS = DEF(IASL_FLAGS)
2654 *_CLANG38_ARM_ASL_OUTFLAGS = DEF(IASL_OUTFLAGS)
2655 *_CLANG38_ARM_DTCPP_FLAGS = DEF(GCC_DTCPP_FLAGS)
2656
2657 *_CLANG38_ARM_CC_PATH = ENV(CLANG38_BIN)clang
2658 *_CLANG38_ARM_ASM_PATH = ENV(CLANG38_BIN)clang
2659 *_CLANG38_ARM_PP_PATH = ENV(CLANG38_BIN)clang
2660 *_CLANG38_ARM_VFRPP_PATH = ENV(CLANG38_BIN)clang
2661 *_CLANG38_ARM_ASLCC_PATH = ENV(CLANG38_BIN)clang
2662 *_CLANG38_ARM_ASLPP_PATH = ENV(CLANG38_BIN)clang
2663 *_CLANG38_ARM_DLINK_PATH = ENV(CLANG38_BIN)clang
2664 *_CLANG38_ARM_ASLDLINK_PATH = ENV(CLANG38_BIN)clang
2665
2666 *_CLANG38_ARM_SLINK_PATH = ENV(CLANG38_BIN)llvm-ar
2667 *_CLANG38_ARM_RC_PATH = ENV(CLANG38_ARM_PREFIX)objcopy
2668
2669 *_CLANG38_ARM_ASLCC_FLAGS = DEF(GCC_ASLCC_FLAGS) -fno-lto
2670 *_CLANG38_ARM_ASLDLINK_FLAGS = DEF(CLANG38_ARM_TARGET) DEF(GCC_ARM_ASLDLINK_FLAGS)
2671 *_CLANG38_ARM_ASM_FLAGS = DEF(GCC_ASM_FLAGS) DEF(CLANG38_ARM_TARGET) $(ARCHASM_FLAGS) $(PLATFORM_FLAGS) -Qunused-arguments
2672 *_CLANG38_ARM_DLINK2_FLAGS = DEF(GCC_DLINK2_FLAGS_COMMON) -Wl,--defsym=PECOFF_HEADER_SIZE=0x220
2673 *_CLANG38_ARM_PLATFORM_FLAGS = -march=armv7-a
2674 *_CLANG38_ARM_PP_FLAGS = DEF(GCC_PP_FLAGS) DEF(CLANG38_ARM_TARGET) $(ARCHCC_FLAGS) $(PLATFORM_FLAGS)
2675 *_CLANG38_ARM_RC_FLAGS = DEF(GCC_ARM_RC_FLAGS)
2676 *_CLANG38_ARM_VFRPP_FLAGS = DEF(GCC_VFRPP_FLAGS) DEF(CLANG38_ARM_TARGET) $(ARCHCC_FLAGS) $(PLATFORM_FLAGS)
2677 *_CLANG38_ARM_ASLPP_FLAGS = DEF(GCC_ASLPP_FLAGS) DEF(CLANG38_ARM_TARGET)
2678 *_CLANG38_ARM_CC_XIPFLAGS = DEF(GCC_ARM_CC_XIPFLAGS)
2679
2680 DEBUG_CLANG38_ARM_CC_FLAGS = DEF(CLANG38_ARM_CC_FLAGS) $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) -flto -O1
2681 DEBUG_CLANG38_ARM_DLINK_FLAGS = DEF(CLANG38_ARM_DLINK_FLAGS) -flto -Wl,-O1 -L$(WORKSPACE)/ArmPkg/Library/GccLto -llto-arm -Wl,-plugin-opt=-pass-through=-llto-arm
2682 NOOPT_CLANG38_ARM_CC_FLAGS = DEF(CLANG38_ARM_CC_FLAGS) $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) -O0
2683 NOOPT_CLANG38_ARM_DLINK_FLAGS = DEF(CLANG38_ARM_DLINK_FLAGS)
2684 RELEASE_CLANG38_ARM_CC_FLAGS = DEF(CLANG38_ARM_CC_FLAGS) $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) -flto -O3
2685 RELEASE_CLANG38_ARM_DLINK_FLAGS = DEF(CLANG38_ARM_DLINK_FLAGS) -flto -Wl,-O3 -L$(WORKSPACE)/ArmPkg/Library/GccLto -llto-arm -Wl,-plugin-opt=-pass-through=-llto-arm
2686
2687 ##################
2688 # CLANG38 AARCH64 definitions
2689 ##################
2690 DEFINE CLANG38_AARCH64_TARGET = -target aarch64-linux-gnu
2691 DEFINE CLANG38_AARCH64_CC_FLAGS = DEF(GCC_AARCH64_CC_FLAGS) DEF(CLANG38_AARCH64_TARGET) -mcmodel=small DEF(CLANG38_WARNING_OVERRIDES)
2692 DEFINE CLANG38_AARCH64_DLINK_FLAGS = DEF(CLANG38_AARCH64_TARGET) DEF(GCC_AARCH64_DLINK_FLAGS) -z common-page-size=0x1000
2693
2694 *_CLANG38_AARCH64_PP_FLAGS = DEF(GCC_PP_FLAGS)
2695 *_CLANG38_AARCH64_ASLCC_FLAGS = DEF(GCC_ASLCC_FLAGS)
2696 *_CLANG38_AARCH64_APP_FLAGS =
2697 *_CLANG38_AARCH64_ASL_FLAGS = DEF(IASL_FLAGS)
2698 *_CLANG38_AARCH64_ASL_OUTFLAGS = DEF(IASL_OUTFLAGS)
2699 *_CLANG38_AARCH64_DTCPP_FLAGS = DEF(GCC_DTCPP_FLAGS)
2700
2701 *_CLANG38_AARCH64_CC_PATH = ENV(CLANG38_BIN)clang
2702 *_CLANG38_AARCH64_ASM_PATH = ENV(CLANG38_BIN)clang
2703 *_CLANG38_AARCH64_PP_PATH = ENV(CLANG38_BIN)clang
2704 *_CLANG38_AARCH64_VFRPP_PATH = ENV(CLANG38_BIN)clang
2705 *_CLANG38_AARCH64_ASLCC_PATH = ENV(CLANG38_BIN)clang
2706 *_CLANG38_AARCH64_ASLPP_PATH = ENV(CLANG38_BIN)clang
2707 *_CLANG38_AARCH64_DLINK_PATH = ENV(CLANG38_BIN)clang
2708 *_CLANG38_AARCH64_ASLDLINK_PATH = ENV(CLANG38_BIN)clang
2709
2710 *_CLANG38_AARCH64_SLINK_PATH = ENV(CLANG38_BIN)llvm-ar
2711 *_CLANG38_AARCH64_RC_PATH = ENV(CLANG38_AARCH64_PREFIX)objcopy
2712
2713 *_CLANG38_AARCH64_ASLCC_FLAGS = DEF(GCC_ASLCC_FLAGS) -fno-lto
2714 *_CLANG38_AARCH64_ASLDLINK_FLAGS = DEF(CLANG38_AARCH64_TARGET) DEF(GCC_AARCH64_ASLDLINK_FLAGS)
2715 *_CLANG38_AARCH64_ASM_FLAGS = DEF(GCC_ASM_FLAGS) DEF(CLANG38_AARCH64_TARGET) $(ARCHASM_FLAGS) $(PLATFORM_FLAGS) -Qunused-arguments
2716 *_CLANG38_AARCH64_DLINK_FLAGS = DEF(CLANG38_AARCH64_TARGET) DEF(GCC_AARCH64_DLINK_FLAGS) -z common-page-size=0x1000
2717 *_CLANG38_AARCH64_DLINK_XIPFLAGS = -z common-page-size=0x20
2718 *_CLANG38_AARCH64_DLINK2_FLAGS = DEF(GCC_DLINK2_FLAGS_COMMON) -Wl,--defsym=PECOFF_HEADER_SIZE=0x228
2719 *_CLANG38_AARCH64_PLATFORM_FLAGS =
2720 *_CLANG38_AARCH64_PP_FLAGS = DEF(GCC_PP_FLAGS) DEF(CLANG38_AARCH64_TARGET) $(ARCHCC_FLAGS) $(PLATFORM_FLAGS)
2721 *_CLANG38_AARCH64_RC_FLAGS = DEF(GCC_AARCH64_RC_FLAGS)
2722 *_CLANG38_AARCH64_VFRPP_FLAGS = DEF(GCC_VFRPP_FLAGS) DEF(CLANG38_AARCH64_TARGET) $(ARCHCC_FLAGS) $(PLATFORM_FLAGS)
2723 *_CLANG38_AARCH64_ASLPP_FLAGS = DEF(GCC_ASLPP_FLAGS) DEF(CLANG38_AARCH64_TARGET)
2724 *_CLANG38_AARCH64_CC_XIPFLAGS = DEF(GCC_AARCH64_CC_XIPFLAGS)
2725
2726 DEBUG_CLANG38_AARCH64_CC_FLAGS = DEF(CLANG38_AARCH64_CC_FLAGS) $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) -flto -O1
2727 DEBUG_CLANG38_AARCH64_DLINK_FLAGS = DEF(CLANG38_AARCH64_DLINK_FLAGS) -flto -Wl,-O1 -L$(WORKSPACE)/ArmPkg/Library/GccLto -llto-aarch64 -Wl,-plugin-opt=-pass-through=-llto-aarch64
2728 NOOPT_CLANG38_AARCH64_CC_FLAGS = DEF(CLANG38_AARCH64_CC_FLAGS) $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) -O0
2729 NOOPT_CLANG38_AARCH64_DLINK_FLAGS = DEF(CLANG38_AARCH64_DLINK_FLAGS)
2730 RELEASE_CLANG38_AARCH64_CC_FLAGS = DEF(CLANG38_AARCH64_CC_FLAGS) $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) -flto -O3
2731 RELEASE_CLANG38_AARCH64_DLINK_FLAGS = DEF(CLANG38_AARCH64_DLINK_FLAGS) -flto -Wl,-O3 -L$(WORKSPACE)/ArmPkg/Library/GccLto -llto-aarch64 -Wl,-plugin-opt=-pass-through=-llto-aarch64
2732
2733 ####################################################################################
2734 #
2735 # CLANGPDB - This configuration is used to compile under Windows/Linux/Mac to produce
2736 # PE/COFF binaries using LLVM/Clang/LLD with Link Time Optimization enabled
2737 #
2738 ####################################################################################
2739 *_CLANGPDB_*_*_FAMILY = GCC
2740 *_CLANGPDB_*_*_BUILDRULEFAMILY = CLANGPDB
2741 *_CLANGPDB_*_MAKE_PATH = ENV(CLANG_HOST_BIN)make
2742 *_CLANGPDB_*_*_DLL = ENV(CLANGPDB_DLL)
2743 *_CLANGPDB_*_ASL_PATH = DEF(UNIX_IASL_BIN)
2744
2745 *_CLANGPDB_*_APP_FLAGS =
2746 *_CLANGPDB_*_ASL_FLAGS = DEF(DEFAULT_WIN_ASL_FLAGS)
2747 *_CLANGPDB_*_ASL_OUTFLAGS = DEF(DEFAULT_WIN_ASL_OUTFLAGS)
2748 *_CLANGPDB_*_ASLDLINK_FLAGS = DEF(MSFT_ASLDLINK_FLAGS)
2749 *_CLANGPDB_*_DEPS_FLAGS = DEF(GCC_DEPS_FLAGS)
2750
2751 DEFINE CLANGPDB_IA32_PREFIX = ENV(CLANG_BIN)
2752 DEFINE CLANGPDB_X64_PREFIX = ENV(CLANG_BIN)
2753
2754 DEFINE CLANGPDB_IA32_TARGET = -target i686-unknown-windows-gnu
2755 DEFINE CLANGPDB_X64_TARGET = -target x86_64-unknown-windows-gnu
2756
2757 DEFINE CLANGPDB_WARNING_OVERRIDES = -Wno-parentheses-equality -Wno-tautological-compare -Wno-tautological-constant-out-of-range-compare -Wno-empty-body -Wno-unused-const-variable -Wno-varargs -Wno-unknown-warning-option -Wno-microsoft-enum-forward-reference
2758 DEFINE CLANGPDB_ALL_CC_FLAGS = DEF(GCC48_ALL_CC_FLAGS) DEF(CLANGPDB_WARNING_OVERRIDES) -fno-stack-protector -funsigned-char -ftrap-function=undefined_behavior_has_been_optimized_away_by_clang -Wno-address -Wno-shift-negative-value -Wno-unknown-pragmas -Wno-incompatible-library-redeclaration -Wno-null-dereference -mno-implicit-float -mms-bitfields -mno-stack-arg-probe -nostdlib -nostdlibinc -fseh-exceptions
2759
2760 ###########################
2761 # CLANGPDB IA32 definitions
2762 ###########################
2763 *_CLANGPDB_IA32_CC_PATH = DEF(CLANGPDB_IA32_PREFIX)clang
2764 *_CLANGPDB_IA32_SLINK_PATH = DEF(CLANGPDB_IA32_PREFIX)llvm-lib
2765 *_CLANGPDB_IA32_DLINK_PATH = DEF(CLANGPDB_IA32_PREFIX)lld-link
2766 *_CLANGPDB_IA32_ASLDLINK_PATH = DEF(CLANGPDB_IA32_PREFIX)lld-link
2767 *_CLANGPDB_IA32_ASM_PATH = DEF(CLANGPDB_IA32_PREFIX)clang
2768 *_CLANGPDB_IA32_PP_PATH = DEF(CLANGPDB_IA32_PREFIX)clang
2769 *_CLANGPDB_IA32_VFRPP_PATH = DEF(CLANGPDB_IA32_PREFIX)clang
2770 *_CLANGPDB_IA32_ASLCC_PATH = DEF(CLANGPDB_IA32_PREFIX)clang
2771 *_CLANGPDB_IA32_ASLPP_PATH = DEF(CLANGPDB_IA32_PREFIX)clang
2772 *_CLANGPDB_IA32_RC_PATH = DEF(CLANGPDB_IA32_PREFIX)llvm-rc
2773
2774 *_CLANGPDB_IA32_ASLCC_FLAGS = DEF(GCC_ASLCC_FLAGS) -m32 -fno-lto DEF(CLANGPDB_IA32_TARGET)
2775 *_CLANGPDB_IA32_ASM_FLAGS = DEF(GCC_ASM_FLAGS) -m32 -march=i386 DEF(CLANGPDB_IA32_TARGET)
2776 *_CLANGPDB_IA32_OBJCOPY_FLAGS =
2777 *_CLANGPDB_IA32_NASM_FLAGS = -f win32
2778 *_CLANGPDB_IA32_PP_FLAGS = DEF(GCC_PP_FLAGS) DEF(CLANGPDB_IA32_TARGET)
2779 *_CLANGPDB_IA32_ASLPP_FLAGS = DEF(GCC_ASLPP_FLAGS) DEF(CLANGPDB_IA32_TARGET)
2780 *_CLANGPDB_IA32_VFRPP_FLAGS = DEF(GCC_VFRPP_FLAGS) DEF(CLANGPDB_IA32_TARGET)
2781
2782 DEBUG_CLANGPDB_IA32_CC_FLAGS = DEF(CLANGPDB_ALL_CC_FLAGS) -m32 -Oz -flto -march=i586 DEF(CLANGPDB_IA32_TARGET) -gcodeview
2783 DEBUG_CLANGPDB_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /ALIGN:32 /FILEALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DEBUG:GHASH /MLLVM:-exception-model=wineh /lldmap
2784 DEBUG_CLANGPDB_IA32_DLINK2_FLAGS =
2785
2786 RELEASE_CLANGPDB_IA32_CC_FLAGS = DEF(CLANGPDB_ALL_CC_FLAGS) -m32 -Oz -flto -march=i586 DEF(CLANGPDB_IA32_TARGET)
2787 RELEASE_CLANGPDB_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /ALIGN:32 /FILEALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /MERGE:.rdata=.data /MLLVM:-exception-model=wineh /lldmap
2788 RELEASE_CLANGPDB_IA32_DLINK2_FLAGS =
2789
2790 NOOPT_CLANGPDB_IA32_CC_FLAGS = DEF(CLANGPDB_ALL_CC_FLAGS) -m32 -O0 -march=i586 DEF(CLANGPDB_IA32_TARGET) -gcodeview
2791 NOOPT_CLANGPDB_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /ALIGN:32 /FILEALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DEBUG:GHASH /MLLVM:-exception-model=wineh /lldmap
2792 NOOPT_CLANGPDB_IA32_DLINK2_FLAGS =
2793
2794 ##########################
2795 # CLANGWIN X64 definitions
2796 ##########################
2797 *_CLANGPDB_X64_CC_PATH = DEF(CLANGPDB_X64_PREFIX)clang
2798 *_CLANGPDB_X64_SLINK_PATH = DEF(CLANGPDB_X64_PREFIX)llvm-lib
2799 *_CLANGPDB_X64_DLINK_PATH = DEF(CLANGPDB_X64_PREFIX)lld-link
2800 *_CLANGPDB_X64_ASLDLINK_PATH = DEF(CLANGPDB_X64_PREFIX)lld-link
2801 *_CLANGPDB_X64_ASM_PATH = DEF(CLANGPDB_X64_PREFIX)clang
2802 *_CLANGPDB_X64_PP_PATH = DEF(CLANGPDB_X64_PREFIX)clang
2803 *_CLANGPDB_X64_VFRPP_PATH = DEF(CLANGPDB_X64_PREFIX)clang
2804 *_CLANGPDB_X64_ASLCC_PATH = DEF(CLANGPDB_X64_PREFIX)clang
2805 *_CLANGPDB_X64_ASLPP_PATH = DEF(CLANGPDB_X64_PREFIX)clang
2806 *_CLANGPDB_X64_RC_PATH = DEF(CLANGPDB_IA32_PREFIX)llvm-rc
2807
2808 *_CLANGPDB_X64_ASLCC_FLAGS = DEF(GCC_ASLCC_FLAGS) -m64 -fno-lto DEF(CLANGPDB_X64_TARGET)
2809 *_CLANGPDB_X64_ASM_FLAGS = DEF(GCC_ASM_FLAGS) -m64 DEF(CLANGPDB_X64_TARGET)
2810 *_CLANGPDB_X64_OBJCOPY_FLAGS =
2811 *_CLANGPDB_X64_NASM_FLAGS = -f win64
2812 *_CLANGPDB_X64_PP_FLAGS = DEF(GCC_PP_FLAGS) DEF(CLANGPDB_X64_TARGET)
2813 *_CLANGPDB_X64_ASLPP_FLAGS = DEF(GCC_ASLPP_FLAGS) DEF(CLANGPDB_X64_TARGET)
2814 *_CLANGPDB_X64_VFRPP_FLAGS = DEF(GCC_VFRPP_FLAGS) DEF(CLANGPDB_X64_TARGET)
2815
2816 DEBUG_CLANGPDB_X64_CC_FLAGS = DEF(CLANGPDB_ALL_CC_FLAGS) -m64 "-DEFIAPI=__attribute__((ms_abi))" -mno-red-zone -mcmodel=small -Oz -flto DEF(CLANGPDB_X64_TARGET) -gcodeview -funwind-tables
2817 DEBUG_CLANGPDB_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /ALIGN:32 /FILEALIGN:32 /Machine:X64 /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DEBUG:GHASH /MLLVM:-exception-model=wineh /lldmap
2818 DEBUG_CLANGPDB_X64_DLINK2_FLAGS =
2819 DEBUG_CLANGPDB_X64_GENFW_FLAGS = --keepexceptiontable
2820
2821 RELEASE_CLANGPDB_X64_CC_FLAGS = DEF(CLANGPDB_ALL_CC_FLAGS) -m64 "-DEFIAPI=__attribute__((ms_abi))" -mno-red-zone -mcmodel=small -Oz -flto DEF(CLANGPDB_X64_TARGET) -fno-unwind-tables
2822 RELEASE_CLANGPDB_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /ALIGN:32 /FILEALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /MERGE:.rdata=.data /MLLVM:-exception-model=wineh /lldmap
2823 RELEASE_CLANGPDB_X64_DLINK2_FLAGS =
2824 RELEASE_CLANGPDB_X64_GENFW_FLAGS =
2825
2826 NOOPT_CLANGPDB_X64_CC_FLAGS = DEF(CLANGPDB_ALL_CC_FLAGS) -m64 "-DEFIAPI=__attribute__((ms_abi))" -mno-red-zone -mcmodel=small -O0 DEF(CLANGPDB_X64_TARGET) -gcodeview -funwind-tables
2827 NOOPT_CLANGPDB_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /ALIGN:32 /FILEALIGN:32 /Machine:X64 /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DEBUG:GHASH /MLLVM:-exception-model=wineh /lldmap
2828 NOOPT_CLANGPDB_X64_DLINK2_FLAGS =
2829 NOOPT_CLANGPDB_X64_GENFW_FLAGS = --keepexceptiontable
2830
2831 #
2832 #
2833 # XCODE5 support
2834 #
2835
2836 *_XCODE5_*_*_FAMILY = GCC
2837 *_XCODE5_*_*_BUILDRULEFAMILY = XCODE
2838
2839 #
2840 # use xcode-select to change Xcode version of command line tools
2841 #
2842 *_XCODE5_*_MAKE_PATH = make
2843 *_XCODE5_*_CC_PATH = clang
2844 *_XCODE5_*_SLINK_PATH = libtool
2845 *_XCODE5_*_DLINK_PATH = ld
2846 *_XCODE5_*_ASM_PATH = as
2847 *_XCODE5_*_PP_PATH = clang
2848 *_XCODE5_*_VFRPP_PATH = clang
2849 *_XCODE5_*_ASL_PATH = iasl
2850 *_XCODE5_*_ASLCC_PATH = clang
2851 *_XCODE5_*_ASLPP_PATH = clang
2852 *_XCODE5_*_ASLDLINK_PATH = ld
2853 *_XCODE5_*_DSYMUTIL_PATH = /usr/bin/dsymutil
2854 *_XCODE5_*_MTOC_PATH = /usr/local/bin/mtoc
2855 *_XCODE5_*_DEPS_FLAGS = DEF(GCC_DEPS_FLAGS)
2856
2857 ##################
2858 # ASL definitions
2859 ##################
2860 *_XCODE5_*_ASLCC_FLAGS = -x c -save-temps -g -O0 -fshort-wchar -fno-strict-aliasing -Wall -Werror -Wno-missing-braces -c -include AutoGen.h
2861 *_XCODE5_*_ASLDLINK_FLAGS = -e _ReferenceAcpiTable -preload -segalign 0x20 -pie -seg1addr 0x240 -read_only_relocs suppress -map $(DEST_DIR_DEBUG)/$(BASE_NAME).map
2862 *_XCODE5_*_ASLPP_FLAGS = -x c -E -include AutoGen.h
2863 *_XCODE5_*_ASL_FLAGS =
2864 *_XCODE5_*_ASL_OUTFLAGS = DEF(IASL_OUTFLAGS)
2865
2866 ##################
2867 # MTOC definitions
2868 ##################
2869
2870 DEBUG_XCODE5_*_MTOC_FLAGS = -align 0x20 -d $(DEBUG_DIR)/$(MODULE_NAME).dll
2871 NOOPT_XCODE5_*_MTOC_FLAGS = -align 0x20 -d $(DEBUG_DIR)/$(MODULE_NAME).dll
2872 RELEASE_XCODE5_*_MTOC_FLAGS = -align 0x20
2873
2874 ####################
2875 # IA-32 definitions
2876 ####################
2877 DEBUG_XCODE5_IA32_DLINK_FLAGS = -arch i386 -u _$(IMAGE_ENTRY_POINT) -e _$(IMAGE_ENTRY_POINT) -preload -segalign 0x20 -pie -all_load -dead_strip -seg1addr 0x240 -read_only_relocs suppress -map $(DEST_DIR_DEBUG)/$(BASE_NAME).map
2878 NOOPT_XCODE5_IA32_DLINK_FLAGS = -arch i386 -u _$(IMAGE_ENTRY_POINT) -e _$(IMAGE_ENTRY_POINT) -preload -segalign 0x20 -pie -all_load -dead_strip -seg1addr 0x240 -read_only_relocs suppress -map $(DEST_DIR_DEBUG)/$(BASE_NAME).map
2879 RELEASE_XCODE5_IA32_DLINK_FLAGS = -arch i386 -u _$(IMAGE_ENTRY_POINT) -e _$(IMAGE_ENTRY_POINT) -preload -segalign 0x20 -pie -all_load -dead_strip -seg1addr 0x240 -read_only_relocs suppress -map $(DEST_DIR_DEBUG)/$(BASE_NAME).map
2880
2881 *_XCODE5_IA32_SLINK_FLAGS = -static -o
2882 DEBUG_XCODE5_IA32_ASM_FLAGS = -arch i386 -g
2883 NOOPT_XCODE5_IA32_ASM_FLAGS = -arch i386 -g
2884 RELEASE_XCODE5_IA32_ASM_FLAGS = -arch i386
2885 *_XCODE5_IA32_NASM_FLAGS = -f macho32
2886
2887
2888 DEBUG_XCODE5_IA32_CC_FLAGS = -arch i386 -c -g -Os -Wall -Werror -include AutoGen.h -funsigned-char -fno-stack-protector -fno-builtin -fshort-wchar -fasm-blocks -mdynamic-no-pic -mno-implicit-float -mms-bitfields -msoft-float -Wno-unused-parameter -Wno-missing-braces -Wno-missing-field-initializers -Wno-tautological-compare -Wno-sign-compare -Wno-varargs -ftrap-function=undefined_behavior_has_been_optimized_away_by_clang $(PLATFORM_FLAGS)
2889 RELEASE_XCODE5_IA32_CC_FLAGS = -arch i386 -c -Os -Wall -Werror -include AutoGen.h -funsigned-char -fno-stack-protector -fno-builtin -fshort-wchar -fasm-blocks -mdynamic-no-pic -mno-implicit-float -mms-bitfields -msoft-float -Wno-unused-parameter -Wno-missing-braces -Wno-missing-field-initializers -Wno-tautological-compare -Wno-sign-compare -Wno-varargs -Wno-unused-const-variable -ftrap-function=undefined_behavior_has_been_optimized_away_by_clang $(PLATFORM_FLAGS)
2890 NOOPT_XCODE5_IA32_CC_FLAGS = -arch i386 -c -g -O0 -Wall -Werror -include AutoGen.h -funsigned-char -fno-stack-protector -fno-builtin -fshort-wchar -fasm-blocks -mdynamic-no-pic -mno-implicit-float -mms-bitfields -msoft-float -Wno-unused-parameter -Wno-missing-braces -Wno-missing-field-initializers -Wno-tautological-compare -Wno-sign-compare -Wno-varargs -ftrap-function=undefined_behavior_has_been_optimized_away_by_clang $(PLATFORM_FLAGS)
2891
2892 ##################
2893 # X64 definitions
2894 ##################
2895 DEBUG_XCODE5_X64_DLINK_FLAGS = -arch x86_64 -u _$(IMAGE_ENTRY_POINT) -e _$(IMAGE_ENTRY_POINT) -preload -segalign 0x20 -pie -all_load -dead_strip -seg1addr 0x240 -map $(DEST_DIR_DEBUG)/$(BASE_NAME).map
2896 NOOPT_XCODE5_X64_DLINK_FLAGS = -arch x86_64 -u _$(IMAGE_ENTRY_POINT) -e _$(IMAGE_ENTRY_POINT) -preload -segalign 0x20 -pie -all_load -dead_strip -seg1addr 0x240 -map $(DEST_DIR_DEBUG)/$(BASE_NAME).map
2897 RELEASE_XCODE5_X64_DLINK_FLAGS = -arch x86_64 -u _$(IMAGE_ENTRY_POINT) -e _$(IMAGE_ENTRY_POINT) -preload -segalign 0x20 -pie -all_load -dead_strip -seg1addr 0x240 -map $(DEST_DIR_DEBUG)/$(BASE_NAME).map
2898
2899 *_XCODE5_X64_SLINK_FLAGS = -static -o
2900 DEBUG_XCODE5_X64_ASM_FLAGS = -arch x86_64 -g
2901 NOOPT_XCODE5_X64_ASM_FLAGS = -arch x86_64 -g
2902 RELEASE_XCODE5_X64_ASM_FLAGS = -arch x86_64
2903 *_XCODE5_X64_NASM_FLAGS = -f macho64
2904 *_XCODE5_*_PP_FLAGS = -E -x assembler-with-cpp -include AutoGen.h
2905 *_XCODE5_*_VFRPP_FLAGS = -x c -E -P -DVFRCOMPILE -include $(MODULE_NAME)StrDefs.h
2906
2907 DEBUG_XCODE5_X64_CC_FLAGS = -target x86_64-pc-win32-macho -c -g -gdwarf -Os -Wall -Werror -Wextra -include AutoGen.h -funsigned-char -fno-ms-extensions -fno-stack-protector -fno-builtin -fshort-wchar -mno-implicit-float -mms-bitfields -Wno-unused-parameter -Wno-missing-braces -Wno-missing-field-initializers -Wno-tautological-compare -Wno-sign-compare -Wno-varargs -ftrap-function=undefined_behavior_has_been_optimized_away_by_clang -D NO_MSABI_VA_FUNCS $(PLATFORM_FLAGS)
2908 NOOPT_XCODE5_X64_CC_FLAGS = -target x86_64-pc-win32-macho -c -g -gdwarf -O0 -Wall -Werror -Wextra -include AutoGen.h -funsigned-char -fno-ms-extensions -fno-stack-protector -fno-builtin -fshort-wchar -mno-implicit-float -mms-bitfields -Wno-unused-parameter -Wno-missing-braces -Wno-missing-field-initializers -Wno-tautological-compare -Wno-sign-compare -Wno-varargs -ftrap-function=undefined_behavior_has_been_optimized_away_by_clang -D NO_MSABI_VA_FUNCS $(PLATFORM_FLAGS)
2909 RELEASE_XCODE5_X64_CC_FLAGS = -target x86_64-pc-win32-macho -c -Os -Wall -Werror -Wextra -include AutoGen.h -funsigned-char -fno-ms-extensions -fno-stack-protector -fno-builtin -fshort-wchar -mno-implicit-float -mms-bitfields -Wno-unused-parameter -Wno-missing-braces -Wno-missing-field-initializers -Wno-tautological-compare -Wno-sign-compare -Wno-varargs -Wno-unused-const-variable -ftrap-function=undefined_behavior_has_been_optimized_away_by_clang -D NO_MSABI_VA_FUNCS $(PLATFORM_FLAGS)
2910
2911 ####################################################################################
2912 #
2913 # RVCT Common
2914 #
2915 ####################################################################################
2916
2917 DEFINE RVCT_ALL_ASM_FLAGS = --diag_suppress=1786 --diag_error=warning --apcs /interwork
2918 DEFINE RVCT_ALL_CC_FLAGS = --c90 --no_autoinline --asm --gnu --apcs /interwork --signed_chars --no_unaligned_access --split_sections --enum_is_int --preinclude AutoGen.h --diag_suppress=186,188,1,111,68 --diag_warning 167 --diag_error=warning --diag_style=ide --protect_stack
2919 DEFINE RVCT_ALL_DLINK_FLAGS = --no_scanlib --no_exceptions --datacompressor off --strict --symbols --diag_style=ide --no_legacyalign --scatter $(EDK_TOOLS_PATH)/Scripts/Rvct-Align32.sct
2920
2921 ####################################################################################
2922 #
2923 # ARM RealView Tools - Windows
2924 #
2925 ####################################################################################
2926 # RVCT - Tools from ARM
2927
2928 *_RVCT_*_*_FAMILY = RVCT
2929
2930 #
2931 # Use default values, or override in DSC file
2932 #
2933 *_RVCT_ARM_ARCHCC_FLAGS = --thumb --fpu=softvfp
2934 *_RVCT_ARM_ARCHASM_FLAGS =
2935 *_RVCT_ARM_ARCHDLINK_FLAGS =
2936 *_RVCT_ARM_PLATFORM_FLAGS = --cpu 7-A
2937
2938 DEBUG_RVCT_ARM_DLINK_FLAGS = $(ARCHDLINK_FLAGS) DEF(RVCT_ALL_DLINK_FLAGS) --entry $(IMAGE_ENTRY_POINT) --map --list $(DEST_DIR_DEBUG)/$(BASE_NAME).map
2939 RELEASE_RVCT_ARM_DLINK_FLAGS = $(ARCHDLINK_FLAGS) DEF(RVCT_ALL_DLINK_FLAGS) --entry $(IMAGE_ENTRY_POINT) --map --list $(DEST_DIR_DEBUG)/$(BASE_NAME).map
2940
2941
2942 *_RVCT_ARM_ASM_FLAGS = $(ARCHASM_FLAGS) $(PLATFORM_FLAGS) DEF(RVCT_ALL_ASM_FLAGS)
2943 *_RVCT_ARM_PP_FLAGS = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) -E --preinclude AutoGen.h
2944 *_RVCT_ARM_VFRPP_FLAGS = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) -E -DVFRCOMPILE --preinclude $(MODULE_NAME)StrDefs.h
2945 *_RVCT_ARM_MAKE_PATH = nmake /NOLOGO
2946 *_RVCT_ARM_SLINK_FLAGS = --partial -o
2947 DEBUG_RVCT_ARM_CC_FLAGS = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) DEF(RVCT_ALL_CC_FLAGS) -O1 -g
2948 RELEASE_RVCT_ARM_CC_FLAGS = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) --diag_suppress=550 DEF(RVCT_ALL_CC_FLAGS) -O2
2949
2950 ##################
2951 # ARM definitions
2952 ##################
2953 *_RVCT_ARM_CC_PATH = ENV(RVCT_TOOLS_PATH)armcc
2954 *_RVCT_ARM_SLINK_PATH = ENV(RVCT_TOOLS_PATH)armlink
2955 *_RVCT_ARM_DLINK_PATH = ENV(RVCT_TOOLS_PATH)armlink
2956 *_RVCT_ARM_ASM_PATH = ENV(RVCT_TOOLS_PATH)armasm
2957 *_RVCT_ARM_PP_PATH = ENV(RVCT_TOOLS_PATH)armcc
2958 *_RVCT_ARM_VFRPP_PATH = ENV(RVCT_TOOLS_PATH)armcc
2959 *_RVCT_ARM_FROMELF_PATH = ENV(RVCT_TOOLS_PATH)fromelf
2960
2961 ####################################################################################
2962 #
2963 # ARM RealView Tools - Linux
2964 #
2965 ####################################################################################
2966 # RVCTLINUX - Tools from ARM in a Cygwin environment
2967 *_RVCTLINUX_*_*_FAMILY = RVCT
2968 *_RVCTLINUX_*_*_BUILDRULEFAMILY = RVCTLINUX
2969
2970 *_RVCTLINUX_*_MAKE_PATH = make
2971
2972 #
2973 # Use default values, or override in DSC file
2974 #
2975 *_RVCTLINUX_ARM_ARCHCC_FLAGS = --thumb --fpu=softvfp
2976 *_RVCTLINUX_ARM_ARCHASM_FLAGS =
2977 *_RVCTLINUX_ARM_ARCHDLINK_FLAGS =
2978 *_RVCTLINUX_ARM_PLATFORM_FLAGS = --cpu 7-A
2979
2980 DEBUG_RVCTLINUX_ARM_DLINK_FLAGS = $(ARCHDLINK_FLAGS) DEF(RVCT_ALL_DLINK_FLAGS) --entry $(IMAGE_ENTRY_POINT) --map --list $(DEST_DIR_DEBUG)/$(BASE_NAME).map
2981 RELEASE_RVCTLINUX_ARM_DLINK_FLAGS = $(ARCHDLINK_FLAGS) DEF(RVCT_ALL_DLINK_FLAGS) --entry $(IMAGE_ENTRY_POINT) --map --list $(DEST_DIR_DEBUG)/$(BASE_NAME).map
2982
2983 *_RVCTLINUX_ARM_ASM_FLAGS = $(ARCHASM_FLAGS) $(PLATFORM_FLAGS) DEF(RVCT_ALL_ASM_FLAGS)
2984 *_RVCTLINUX_ARM_PP_FLAGS = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) -E
2985 *_RVCTLINUX_ARM_VFRPP_FLAGS = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) -E -DVFRCOMPILE --preinclude $(MODULE_NAME)StrDefs.h
2986 *_RVCTLINUX_ARM_SLINK_FLAGS = --partial -o
2987 DEBUG_RVCTLINUX_ARM_CC_FLAGS = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) DEF(RVCT_ALL_CC_FLAGS) -O1 -g
2988 RELEASE_RVCTLINUX_ARM_CC_FLAGS = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) --diag_suppress=550 DEF(RVCT_ALL_CC_FLAGS) -O2
2989
2990 ##################
2991 # ARM definitions
2992 ##################
2993 *_RVCTLINUX_ARM_CC_PATH = ENV(RVCT_TOOLS_PATH)armcc
2994 *_RVCTLINUX_ARM_SLINK_PATH = ENV(RVCT_TOOLS_PATH)armlink
2995 *_RVCTLINUX_ARM_DLINK_PATH = ENV(RVCT_TOOLS_PATH)armlink
2996 *_RVCTLINUX_ARM_ASM_PATH = ENV(RVCT_TOOLS_PATH)armasm
2997 *_RVCTLINUX_ARM_PP_PATH = ENV(RVCT_TOOLS_PATH)armcc
2998 *_RVCTLINUX_ARM_VFRPP_PATH = ENV(RVCT_TOOLS_PATH)armcc
2999 *_RVCTLINUX_ARM_FROMELF_PATH = ENV(RVCT_TOOLS_PATH)fromelf
3000
3001 ####################################################################################
3002 #
3003 # ARM RealView Tools - Cygwin
3004 #
3005 ####################################################################################
3006 # ARMCYGWIN - Tools from ARM in a Cygwin environment
3007
3008 *_RVCTCYGWIN_*_*_FAMILY = RVCT
3009 *_RVCTCYGWIN_*_*_BUILDRULEFAMILY = RVCTCYGWIN
3010
3011 *_RVCTCYGWIN_ARM_CCPATH_FLAG = ENV(RVCT_TOOLS_PATH)armcc
3012 *_RVCTCYGWIN_ARM_SLINKPATH_FLAG = ENV(RVCT_TOOLS_PATH)armlink
3013 *_RVCTCYGWIN_ARM_DLINKPATH_FLAG = ENV(RVCT_TOOLS_PATH)armlink
3014 *_RVCTCYGWIN_ARM_ASMPATH_FLAG = ENV(RVCT_TOOLS_PATH)armasm
3015 *_RVCTCYGWIN_ARM_PPPATH_FLAG = ENV(RVCT_TOOLS_PATH)armcc
3016 *_RVCTCYGWIN_ARM_VFRPPPATH_FLAG = ENV(RVCT_TOOLS_PATH)armcc
3017 *_RVCTCYGWIN_ARM_FROMELFPATH_FLAG = ENV(RVCT_TOOLS_PATH)fromelf
3018
3019 #
3020 # Use default values, or override in DSC file
3021 #
3022 *_RVCTCYGWIN_ARM_ARCHCC_FLAGS = --thumb --fpu=softvfp
3023 *_RVCTCYGWIN_ARM_ARCHASM_FLAGS =
3024 *_RVCTCYGWIN_ARM_ARCHDLINK_FLAGS =
3025 *_RVCTCYGWIN_ARM_PLATFORM_FLAGS = --cpu 7-A
3026
3027 DEBUG_RVCTCYGWIN_ARM_DLINK_FLAGS = "$(DLINKPATH_FLAG)" $(ARCHDLINK_FLAGS) DEF(RVCT_ALL_DLINK_FLAGS) --entry $(IMAGE_ENTRY_POINT) --map --list `cygpath -m $(DEST_DIR_DEBUG)/$(BASE_NAME).map`
3028 RELEASE_RVCTCYGWIN_ARM_DLINK_FLAGS = "$(DLINKPATH_FLAG)" $(ARCHDLINK_FLAGS) DEF(RVCT_ALL_DLINK_FLAGS) --entry $(IMAGE_ENTRY_POINT) --map --list `cygpath -m $(DEST_DIR_DEBUG)/$(BASE_NAME).map`
3029
3030 *_RVCTCYGWIN_ARM_ASM_FLAGS = "$(ASMPATH_FLAG)" $(ARCHASM_FLAGS) $(PLATFORM_FLAGS) DEF(RVCT_ALL_ASM_FLAGS)
3031 *_RVCTCYGWIN_ARM_PP_FLAGS = "$(CCPATH_FLAG)" $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) -E
3032 *_RVCTCYGWIN_ARM_VFRPP_FLAGS = "$(CCPATH_FLAG)" $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) -E -DVFRCOMPILE --preinclude `cygpath -m $(MODULE_NAME)StrDefs.h`
3033 *_RVCTCYGWIN_ARM_MAKE_PATH = make
3034 *_RVCTCYGWIN_ARM_SLINK_FLAGS = "$(SLINKPATH_FLAG)" --partial -o
3035 DEBUG_RVCTCYGWIN_ARM_CC_FLAGS = "$(CCPATH_FLAG)" $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) DEF(RVCT_ALL_CC_FLAGS) -O1 -g
3036 RELEASE_RVCTCYGWIN_ARM_CC_FLAGS = "$(CCPATH_FLAG)" $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) --diag_suppress=550 DEF(RVCT_ALL_CC_FLAGS) -O2
3037
3038 ##################
3039 # ARM definitions
3040 ##################
3041 *_RVCTCYGWIN_ARM_CC_PATH = ENV(WORKSPACE)/BaseTools/Bin/CYGWIN_NT-5.1-i686/armcc_wrapper.py
3042 *_RVCTCYGWIN_ARM_SLINK_PATH = ENV(WORKSPACE)/BaseTools/Bin/CYGWIN_NT-5.1-i686/armcc_wrapper.py
3043 *_RVCTCYGWIN_ARM_DLINK_PATH = ENV(WORKSPACE)/BaseTools/Bin/CYGWIN_NT-5.1-i686/armcc_wrapper.py
3044 *_RVCTCYGWIN_ARM_ASM_PATH = ENV(WORKSPACE)/BaseTools/Bin/CYGWIN_NT-5.1-i686/armcc_wrapper.py
3045 *_RVCTCYGWIN_ARM_PP_PATH = ENV(WORKSPACE)/BaseTools/Bin/CYGWIN_NT-5.1-i686/armcc_wrapper.py
3046 *_RVCTCYGWIN_ARM_VFRPP_PATH = ENV(WORKSPACE)/BaseTools/Bin/CYGWIN_NT-5.1-i686/armcc_wrapper.py
3047 *_RVCTCYGWIN_ARM_FROMELF_PATH = ENV(WORKSPACE)/BaseTools/Bin/CYGWIN_NT-5.1-i686/armcc_wrapper.py
3048
3049 #################
3050 # ASM 16 linker definitions
3051 #################
3052 *_*_*_ASMLINK_PATH = DEF(WINDDK_BIN16)\link16.exe
3053 *_*_*_ASMLINK_FLAGS = /nologo /tiny
3054
3055 ##################
3056 # VfrCompiler definitions
3057 ##################
3058 *_*_*_VFR_PATH = VfrCompile
3059 *_*_*_VFR_FLAGS = -l -n
3060
3061 ##################
3062 # OptionRom tool definitions
3063 ##################
3064 *_*_*_OPTROM_PATH = EfiRom
3065 *_*_*_OPTROM_FLAGS = -e
3066
3067 ##################
3068 # GenFw tool definitions
3069 ##################
3070 *_*_*_GENFW_PATH = GenFw
3071 *_*_*_GENFW_FLAGS =
3072
3073 ##################
3074 # Asl Compiler definitions
3075 ##################
3076 *_*_*_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable
3077 *_*_*_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE
3078 *_*_*_ASLPP_FLAGS = /nologo /EP /C
3079 *_*_*_ASL_FLAGS =
3080
3081 ##################
3082 # GenCrc32 tool definitions
3083 ##################
3084 *_*_*_CRC32_PATH = GenCrc32
3085 *_*_*_CRC32_GUID = FC1BCDB0-7D31-49AA-936A-A4600D9DD083
3086
3087 ##################
3088 # Rsa2048Sha256Sign tool definitions
3089 #
3090 # Notes: This tool definition uses a test signing key for development purposes only.
3091 # The tool Rsa2048Sha256GenerateKeys can be used to generate a new private/public key
3092 # and the gEfiSecurityPkgTokenSpaceGuid.PcdRsa2048Sha256PublicKeyBuffer PCD value.
3093 # A custom tool/script can be implemented using the new private/public key with
3094 # the Rsa2048Sha256Sign tool and this tool definition can be updated to use a
3095 # custom tool/script.
3096 #
3097 # Generate new private/public key and gEfiSecurityPkgTokenSpaceGuid.PcdRsa2048Sha256PublicKeyBuffer PCD value
3098 #
3099 # Rsa2048Sha256GenerateKeys.py -o MyKey.pem --public-key-hash-c MyKey.pcd
3100 #
3101 # Custom script example (MyRsa2048Sha256Sign.cmd):
3102 #
3103 # Rsa2048Sha256Sign --private-key MyKey.pem %1 %2 %3 %4 %5 %6 %7 %8 %9
3104 #
3105 # WARNING: Vendors that uses private keys are responsible for proper management and protection
3106 # of private keys. Vendors may choose to use infrastructure such as signing servers
3107 # or signing portals to support the management and protection of private keys.
3108 #
3109 ##################
3110 *_*_*_RSA2048SHA256SIGN_PATH = Rsa2048Sha256Sign
3111 *_*_*_RSA2048SHA256SIGN_GUID = A7717414-C616-4977-9420-844712A735BF
3112
3113 ##################
3114 # BrotliCompress tool definitions
3115 ##################
3116 *_*_*_BROTLI_PATH = BrotliCompress
3117 *_*_*_BROTLI_GUID = 3D532050-5CDA-4FD0-879E-0F7F630D5AFB
3118
3119 ##################
3120 # LzmaCompress tool definitions
3121 ##################
3122 *_*_*_LZMA_PATH = LzmaCompress
3123 *_*_*_LZMA_GUID = EE4E5898-3914-4259-9D6E-DC7BD79403CF
3124
3125 ##################
3126 # LzmaF86Compress tool definitions with converter for x86 code.
3127 # It can improve the compression ratio if the input file is IA32 or X64 PE image.
3128 ##################
3129 *_*_*_LZMAF86_PATH = LzmaF86Compress
3130 *_*_*_LZMAF86_GUID = D42AE6BD-1352-4bfb-909A-CA72A6EAE889
3131
3132 ##################
3133 # TianoCompress tool definitions
3134 ##################
3135 *_*_*_TIANO_PATH = TianoCompress
3136 *_*_*_TIANO_GUID = A31280AD-481E-41B6-95E8-127F4C984779
3137
3138 ##################
3139 # BPDG tool definitions
3140 ##################
3141 *_*_*_VPDTOOL_PATH = BPDG
3142 *_*_*_VPDTOOL_GUID = 8C3D856A-9BE6-468E-850A-24F7A8D38E08
3143
3144 ##################
3145 # Pkcs7Sign tool definitions
3146 ##################
3147 *_*_*_PKCS7SIGN_PATH = Pkcs7Sign
3148 *_*_*_PKCS7SIGN_GUID = 4AAFD29D-68DF-49EE-8AA9-347D375665A7
3149
3150 ##################
3151 # NASM tool definitions
3152 ##################
3153 *_*_*_NASM_PATH = ENV(NASM_PREFIX)nasm
3154 # NASMB uses NASM produce a .bin from a .nasmb NASM source file
3155 *_*_*_NASMB_FLAGS = -f bin
3156
3157 #################
3158 # Build rule order
3159 #################
3160 *_*_*_*_BUILDRULEORDER = nasm asm Asm ASM S s nasmb asm16