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