VirtualBox

source: vbox/trunk/src/VBox/Devices/EFI/FirmwareNew/BaseTools/Conf/tools_def.template@ 99404

最後變更 在這個檔案從99404是 99404,由 vboxsync 提交於 2 年 前

Devices/EFI/FirmwareNew: Update to edk2-stable202302 and make it build, bugref:4643

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

© 2025 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette