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