]> git.proxmox.com Git - mirror_edk2.git/blame - BaseTools/Conf/tools_def.template
BaseTools: Update ClangBase.lds to keep dynamic section
[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
4b56ad20
LG
295# CLANG8ELF -Linux,Windows,Mac- Requires:\r
296# LLVM 8.0.0 or above, https://llvm.org/\r
297# On Windows OS, Visual Studio is required to be installed for nmake and compile BaseTools C tools.\r
298# Optional:\r
15330934
LG
299# Required to build platforms or ACPI tables:\r
300# Intel(r) ACPI Compiler from\r
301# https://acpica.org/downloads\r
b36d134f
LG
302# VS2008x86 -win64- Requires:\r
303# Microsoft Visual Studio 2008 (x86)\r
304# Microsoft Windows Server 2003 Driver Development Kit (Microsoft WINDDK) version 3790.1830\r
305# Optional:\r
306# Required to build platforms or ACPI tables:\r
061eb5c3 307# Intel(r) ACPI Compiler (iasl.exe) from\r
7381a662 308# https://acpica.org/downloads\r
64b2609f
LG
309# VS2010x86 -win64- Requires:\r
310# Microsoft Visual Studio 2010 (x86) Premium Edition\r
311# Microsoft Windows Server 2003 Driver Development Kit (Microsoft WINDDK) version 3790.1830\r
312# Optional:\r
313# Required to build platforms or ACPI tables:\r
061eb5c3 314# Intel(r) ACPI Compiler (iasl.exe) from\r
7381a662 315# https://acpica.org/downloads\r
4afd3d04
LG
316# VS2012x86 -win64- Requires:\r
317# Microsoft Visual Studio 2012 (x86) Professional Edition\r
318# Microsoft Windows Server 2003 Driver Development Kit (Microsoft WINDDK) version 3790.1830\r
319# Optional:\r
320# Required to build platforms or ACPI tables:\r
061eb5c3
YL
321# Intel(r) ACPI Compiler (iasl.exe) from\r
322# https://acpica.org/downloads\r
537bc124
WY
323# VS2013x86 -win64- Requires:\r
324# Microsoft Visual Studio 2013 (x86) Professional Edition\r
325# Microsoft Windows Server 2003 Driver Development Kit (Microsoft WINDDK) version 3790.1830\r
326# Optional:\r
327# Required to build platforms or ACPI tables:\r
061eb5c3
YL
328# Intel(r) ACPI Compiler (iasl.exe) from\r
329# https://acpica.org/downloads\r
5d9cd24e 330# VS2015x86 -win64- Requires:\r
578211b8 331# Microsoft Visual Studio 2015 (x86) Update 2 or above\r
5d9cd24e
WY
332# Microsoft Windows Server 2003 Driver Development Kit (Microsoft WINDDK) version 3790.1830\r
333# Optional:\r
334# Required to build platforms or ACPI tables:\r
335# Intel(r) ACPI Compiler (iasl.exe) from\r
336# https://acpica.org/downloads\r
4afd3d04
LG
337# RVCT -win- Requires:\r
338# ARM C/C++ Compiler, 5.00\r
339# Optional:\r
340# Required to build EBC drivers:\r
341# Intel(r) Compiler for Efi Byte Code (Intel(r) EBC Compiler)\r
342# Required to build platforms or ACPI tables:\r
343# Microsoft ASL ACPI Compiler (asl.exe) v4.0.0 from\r
344# http://download.microsoft.com/download/2/c/1/2c16c7e0-96c1-40f5-81fc-3e4bf7b65496/microsoft_asl_compiler-v4-0-0.msi\r
69ebe828 345# Notes: Since this tool chain is obsolete, it doesn't enable the compiler option for included header file list generation,\r
13c5e34a 346# and lose the incremental build capability.\r
4afd3d04
LG
347# RVCTLINUX -unix- Requires:\r
348# ARM C/C++ Compiler, 5.00\r
349# Optional:\r
350# Required to build platforms or ACPI tables:\r
061eb5c3
YL
351# Intel(r) ACPI Compiler from\r
352# https://acpica.org/downloads\r
69ebe828 353# Notes: Since this tool chain is obsolete, it doesn't enable the compiler option for included header file list generation,\r
13c5e34a 354# and lose the incremental build capability.\r
07a756b9 355# * Commented out - All versions of VS2005 use the same standard install directory\r
356#\r
357####################################################################################\r
358####################################################################################\r
359#\r
360# Supported Tool Chain Family\r
361# ===========================\r
362# MSFT - Microsoft\r
363# GCC - GNU GCC\r
364# INTEL - INTEL\r
2bcc713e 365# RVCT - ARM RealView Toolchain\r
3b6c90a1 366####################################################################################\r
367####################################################################################\r
368#\r
abb158de
JJ
369# Other Supported Tools\r
370# =====================\r
9c4dbdff
LE
371# NASM -- http://www.nasm.us/\r
372# - NASM 2.10 or later for use with the GCC toolchain family\r
373# - NASM 2.12.01 or later for use with all other toolchain families\r
abb158de
JJ
374#\r
375####################################################################################\r
376####################################################################################\r
377#\r
3b6c90a1 378# Intel EFI Byte Code Compiler (Template)\r
379#\r
380####################################################################################\r
381# *_*_EBC_*_FAMILY = INTEL\r
382#\r
383# *_*_EBC_PP_PATH = C:\Program Files\Intel\EBC\Bin\iec.exe\r
384# *_*_EBC_CC_PATH = C:\Program Files\Intel\EBC\Bin\iec.exe\r
385# *_*_EBC_SLINK_PATH = C:\Program Files\Intel\EBC\Bin\link.exe\r
386#\r
623471a3 387# *_*_EBC_SLINK_FLAGS = /lib /NOLOGO /MACHINE:EBC\r
7ab180bb
LG
388# *_*_EBC_PP_FLAGS = /nologo /E /TC /FIAutoGen.h\r
389# *_*_EBC_CC_FLAGS = /nologo /FAcs /c /W3 /WX /FIAutoGen.h\r
d40b2ee6 390# *_*_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 391#\r
392####################################################################################\r
393#\r
394# Intel ACPI Source Language Compiler (Template)\r
395#\r
396####################################################################################\r
397# *_*_*_ASL_FAMILY = INTEL\r
398#\r
399# *_*_*_ASL_PATH = C:\ASL\iasl.exe\r
400#\r
401####################################################################################\r
402#\r
403# Microsoft ACPI Source Language Compiler (Template)\r
404#\r
405####################################################################################\r
406# *_*_*_ASL_FAMILY = MSFT\r
407#\r
408# *_*_*_ASL_PATH = C:\ASL\asl.exe\r
409#\r
410####################################################################################\r
411\r
52302d4d
LG
412####################################################################################\r
413#\r
414# Microsoft Visual Studio 2008\r
415#\r
416# VS2008 - Microsoft Visual Studio 2005 All Edition, including Standard, Professional, Express, TeamSuite\r
417# ASL - Intel ACPI Source Language Compiler\r
418####################################################################################\r
419# VS2008 - Microsoft Visual Studio 2008 ALL Edition, including Standard, Professional, Express, TeamSuite\r
420*_VS2008_*_*_FAMILY = MSFT\r
421\r
422*_VS2008_*_MAKE_PATH = DEF(VS2008_BIN)\nmake.exe\r
423*_VS2008_*_MAKE_FLAGS = /nologo\r
424*_VS2008_*_RC_PATH = DEF(WINSDK_BIN)\rc.exe\r
425\r
426*_VS2008_*_SLINK_FLAGS = /NOLOGO /LTCG\r
427*_VS2008_*_APP_FLAGS = /nologo /E /TC\r
428*_VS2008_*_PP_FLAGS = /nologo /E /TC /FIAutoGen.h\r
429*_VS2008_*_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h\r
13c5e34a 430*_VS2008_*_DEPS_FLAGS = DEF(MSFT_DEPS_FLAGS)\r
14c48571 431*_VS2008_*_ASM16_PATH = DEF(VS2008_BIN)\ml.exe\r
432\r
52302d4d
LG
433##################\r
434# ASL definitions\r
435##################\r
436*_VS2008_*_ASL_PATH = DEF(DEFAULT_WIN_ASL_BIN)\r
437*_VS2008_*_ASL_FLAGS = DEF(DEFAULT_WIN_ASL_FLAGS)\r
438*_VS2008_*_ASL_OUTFLAGS = DEF(DEFAULT_WIN_ASL_OUTFLAGS)\r
439*_VS2008_*_ASLCC_FLAGS = DEF(MSFT_ASLCC_FLAGS)\r
440*_VS2008_*_ASLPP_FLAGS = DEF(MSFT_ASLPP_FLAGS)\r
441*_VS2008_*_ASLDLINK_FLAGS = DEF(MSFT_ASLDLINK_FLAGS)\r
442\r
443##################\r
444# IA32 definitions\r
445##################\r
446*_VS2008_IA32_*_DLL = DEF(VS2008_DLL)\r
447\r
52302d4d
LG
448*_VS2008_IA32_CC_PATH = DEF(VS2008_BIN)\cl.exe\r
449*_VS2008_IA32_VFRPP_PATH = DEF(VS2008_BIN)\cl.exe\r
450*_VS2008_IA32_SLINK_PATH = DEF(VS2008_BIN)\lib.exe\r
451*_VS2008_IA32_DLINK_PATH = DEF(VS2008_BIN)\link.exe\r
52302d4d
LG
452*_VS2008_IA32_APP_PATH = DEF(VS2008_BIN)\cl.exe\r
453*_VS2008_IA32_PP_PATH = DEF(VS2008_BIN)\cl.exe\r
454*_VS2008_IA32_ASM_PATH = DEF(VS2008_BIN)\ml.exe\r
455*_VS2008_IA32_ASLCC_PATH = DEF(VS2008_BIN)\cl.exe\r
456*_VS2008_IA32_ASLPP_PATH = DEF(VS2008_BIN)\cl.exe\r
457*_VS2008_IA32_ASLDLINK_PATH = DEF(VS2008_BIN)\link.exe\r
458\r
716132ef
CS
459 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
460RELEASE_VS2008_IA32_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF\r
b36d134f
LG
461NOOPT_VS2008_IA32_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm /Od\r
462\r
52302d4d
LG
463 DEBUG_VS2008_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi\r
464RELEASE_VS2008_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd\r
b36d134f
LG
465NOOPT_VS2008_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi\r
466\r
9a5a7435
JJ
467 DEBUG_VS2008_IA32_NASM_FLAGS = -Ox -f win32 -g\r
468RELEASE_VS2008_IA32_NASM_FLAGS = -Ox -f win32\r
469NOOPT_VS2008_IA32_NASM_FLAGS = -O0 -f win32 -g\r
470\r
b36d134f 471 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 472RELEASE_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 473NOOPT_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
474\r
475##################\r
476# X64 definitions\r
477##################\r
478*_VS2008_X64_*_DLL = DEF(VS2008_DLL)\r
479\r
480*_VS2008_X64_CC_PATH = DEF(VS2008_BINX64)\cl.exe\r
481*_VS2008_X64_PP_PATH = DEF(VS2008_BINX64)\cl.exe\r
482*_VS2008_X64_APP_PATH = DEF(VS2008_BINX64)\cl.exe\r
483*_VS2008_X64_VFRPP_PATH = DEF(VS2008_BINX64)\cl.exe\r
484*_VS2008_X64_ASM_PATH = DEF(VS2008_BINX64)\ml64.exe\r
485*_VS2008_X64_SLINK_PATH = DEF(VS2008_BINX64)\lib.exe\r
486*_VS2008_X64_DLINK_PATH = DEF(VS2008_BINX64)\link.exe\r
487*_VS2008_X64_ASLCC_PATH = DEF(VS2008_BINX64)\cl.exe\r
488*_VS2008_X64_ASLPP_PATH = DEF(VS2008_BINX64)\cl.exe\r
489*_VS2008_X64_ASLDLINK_PATH = DEF(VS2008_BINX64)\link.exe\r
490\r
13c5e34a
BF
491 DEBUG_VS2008_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Z7\r
492RELEASE_VS2008_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF\r
493NOOPT_VS2008_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Z7 /Od\r
b36d134f 494\r
52302d4d
LG
495 DEBUG_VS2008_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi\r
496RELEASE_VS2008_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd\r
b36d134f
LG
497NOOPT_VS2008_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi\r
498\r
9a5a7435
JJ
499 DEBUG_VS2008_X64_NASM_FLAGS = -Ox -f win64 -g\r
500RELEASE_VS2008_X64_NASM_FLAGS = -Ox -f win64\r
501NOOPT_VS2008_X64_NASM_FLAGS = -O0 -f win64 -g\r
502\r
b36d134f 503 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 504RELEASE_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 505NOOPT_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 506\r
52302d4d
LG
507##################\r
508# EBC definitions\r
509##################\r
510*_VS2008_EBC_*_FAMILY = INTEL\r
4afd3d04 511*_VS2008_EBC_*_DLL = DEF(VS2008_DLL)\r
52302d4d 512\r
52302d4d
LG
513*_VS2008_EBC_PP_PATH = DEF(EBC_BIN)\iec.exe\r
514*_VS2008_EBC_VFRPP_PATH = DEF(EBC_BIN)\iec.exe\r
515*_VS2008_EBC_CC_PATH = DEF(EBC_BIN)\iec.exe\r
4afd3d04
LG
516*_VS2008_EBC_SLINK_PATH = DEF(VS2008_BIN)\link.exe\r
517*_VS2008_EBC_DLINK_PATH = DEF(VS2008_BIN)\link.exe\r
52302d4d 518\r
52302d4d
LG
519*_VS2008_EBC_PP_FLAGS = /nologo /E /TC /FIAutoGen.h\r
520*_VS2008_EBC_CC_FLAGS = /nologo /c /WX /W3 /FIAutoGen.h /D$(MODULE_ENTRY_POINT)=$(ARCH_ENTRY_POINT)\r
521*_VS2008_EBC_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h\r
522*_VS2008_EBC_SLINK_FLAGS = /lib /NOLOGO /MACHINE:EBC\r
d40b2ee6 523*_VS2008_EBC_DLINK_FLAGS = "C:\Program Files\Intel\EBC\Lib\EbcLib.lib" /NOLOGO /NODEFAULTLIB /MACHINE:EBC /OPT:REF /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /MAP /ALIGN:32 /DRIVER\r
52302d4d 524\r
4afd3d04 525\r
52302d4d
LG
526####################################################################################\r
527# VS2008x86 - Microsoft Visual Studio 2008 (x86) with Intel ASL\r
528# ASL - Intel ACPI Source Language Compiler (iasl.exe)\r
529####################################################################################\r
530# VS2008x86 - Microsoft Visual Studio 2008 (x86) ALL Edition with Intel ASL\r
531*_VS2008x86_*_*_FAMILY = MSFT\r
532\r
533*_VS2008x86_*_MAKE_PATH = DEF(VS2008x86_BIN)\nmake.exe\r
4b59b22f 534*_VS2008x86_*_MAKE_FLAGS = /nologo\r
64137027 535*_VS2008x86_*_RC_PATH = DEF(WINSDK_BIN)\rc.exe\r
52302d4d 536\r
52302d4d
LG
537*_VS2008x86_*_SLINK_FLAGS = /NOLOGO /LTCG\r
538*_VS2008x86_*_APP_FLAGS = /nologo /E /TC\r
539*_VS2008x86_*_PP_FLAGS = /nologo /E /TC /FIAutoGen.h\r
540*_VS2008x86_*_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h\r
13c5e34a 541*_VS2008x86_*_DEPS_FLAGS = DEF(MSFT_DEPS_FLAGS)\r
14c48571 542*_VS2008x86_*_ASM16_PATH = DEF(VS2008x86_BIN)\ml.exe\r
543\r
52302d4d
LG
544##################\r
545# ASL definitions\r
546##################\r
547*_VS2008x86_*_ASL_PATH = DEF(WIN_IASL_BIN)\r
548*_VS2008x86_*_ASL_FLAGS = DEF(DEFAULT_WIN_ASL_FLAGS)\r
549*_VS2008x86_*_ASL_OUTFLAGS = DEF(DEFAULT_WIN_ASL_OUTFLAGS)\r
550*_VS2008x86_*_ASLCC_FLAGS = DEF(MSFT_ASLCC_FLAGS)\r
551*_VS2008x86_*_ASLPP_FLAGS = DEF(MSFT_ASLPP_FLAGS)\r
552*_VS2008x86_*_ASLDLINK_FLAGS = DEF(MSFT_ASLDLINK_FLAGS)\r
553\r
554##################\r
555# IA32 definitions\r
556##################\r
557*_VS2008x86_IA32_*_DLL = DEF(VS2008x86_DLL)\r
558\r
52302d4d
LG
559*_VS2008x86_IA32_CC_PATH = DEF(VS2008x86_BIN)\cl.exe\r
560*_VS2008x86_IA32_VFRPP_PATH = DEF(VS2008x86_BIN)\cl.exe\r
561*_VS2008x86_IA32_ASLCC_PATH = DEF(VS2008x86_BIN)\cl.exe\r
562*_VS2008x86_IA32_ASLPP_PATH = DEF(VS2008x86_BIN)\cl.exe\r
563*_VS2008x86_IA32_SLINK_PATH = DEF(VS2008x86_BIN)\lib.exe\r
564*_VS2008x86_IA32_DLINK_PATH = DEF(VS2008x86_BIN)\link.exe\r
565*_VS2008x86_IA32_ASLDLINK_PATH= DEF(VS2008x86_BIN)\link.exe\r
52302d4d
LG
566*_VS2008x86_IA32_APP_PATH = DEF(VS2008x86_BIN)\cl.exe\r
567*_VS2008x86_IA32_PP_PATH = DEF(VS2008x86_BIN)\cl.exe\r
568*_VS2008x86_IA32_ASM_PATH = DEF(VS2008x86_BIN)\ml.exe\r
569\r
13c5e34a
BF
570 DEBUG_VS2008x86_IA32_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Z7\r
571RELEASE_VS2008x86_IA32_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF\r
572NOOPT_VS2008x86_IA32_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Z7 /Od\r
b36d134f 573\r
6780eef1 574 DEBUG_VS2008x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi\r
52302d4d 575RELEASE_VS2008x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd\r
b36d134f
LG
576NOOPT_VS2008x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi\r
577\r
9a5a7435
JJ
578 DEBUG_VS2008x86_IA32_NASM_FLAGS = -Ox -f win32 -g\r
579RELEASE_VS2008x86_IA32_NASM_FLAGS = -Ox -f win32\r
580NOOPT_VS2008x86_IA32_NASM_FLAGS = -O0 -f win32 -g\r
581\r
29e22e2b 582 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 583RELEASE_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 584NOOPT_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
585\r
586##################\r
587# X64 definitions\r
588##################\r
589*_VS2008x86_X64_*_DLL = DEF(VS2008x86_DLL)\r
590\r
591*_VS2008x86_X64_CC_PATH = DEF(VS2008x86_BINX64)\cl.exe\r
592*_VS2008x86_X64_PP_PATH = DEF(VS2008x86_BINX64)\cl.exe\r
593*_VS2008x86_X64_APP_PATH = DEF(VS2008x86_BINX64)\cl.exe\r
594*_VS2008x86_X64_VFRPP_PATH = DEF(VS2008x86_BINX64)\cl.exe\r
595*_VS2008x86_X64_ASLCC_PATH = DEF(VS2008x86_BINX64)\cl.exe\r
596*_VS2008x86_X64_ASLPP_PATH = DEF(VS2008x86_BINX64)\cl.exe\r
597*_VS2008x86_X64_ASM_PATH = DEF(VS2008x86_BINX64)\ml64.exe\r
598*_VS2008x86_X64_SLINK_PATH = DEF(VS2008x86_BINX64)\lib.exe\r
599*_VS2008x86_X64_DLINK_PATH = DEF(VS2008x86_BINX64)\link.exe\r
600*_VS2008x86_X64_ASLDLINK_PATH = DEF(VS2008x86_BINX64)\link.exe\r
601\r
13c5e34a
BF
602 DEBUG_VS2008x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Z7\r
603RELEASE_VS2008x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF\r
604NOOPT_VS2008x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Z7 /Od\r
52302d4d
LG
605 DEBUG_VS2008x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi\r
606RELEASE_VS2008x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd\r
b36d134f 607NOOPT_VS2008x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi\r
9a5a7435
JJ
608\r
609 DEBUG_VS2008x86_X64_NASM_FLAGS = -Ox -f win64 -g\r
610RELEASE_VS2008x86_X64_NASM_FLAGS = -Ox -f win64\r
611NOOPT_VS2008x86_X64_NASM_FLAGS = -O0 -f win64 -g\r
612\r
29e22e2b 613 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 614RELEASE_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 615NOOPT_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 616\r
4afd3d04
LG
617##################\r
618# EBC definitions\r
619##################\r
620*_VS2008x86_EBC_*_FAMILY = INTEL\r
621*_VS2008x86_EBC_*_DLL = DEF(VS2008x86_DLL)\r
622\r
4afd3d04
LG
623*_VS2008x86_EBC_PP_PATH = DEF(EBC_BINx86)\iec.exe\r
624*_VS2008x86_EBC_VFRPP_PATH = DEF(EBC_BINx86)\iec.exe\r
625*_VS2008x86_EBC_CC_PATH = DEF(EBC_BINx86)\iec.exe\r
626*_VS2008x86_EBC_SLINK_PATH = DEF(VS2008x86_BIN)\link.exe\r
627*_VS2008x86_EBC_DLINK_PATH = DEF(VS2008x86_BIN)\link.exe\r
628\r
4afd3d04
LG
629*_VS2008x86_EBC_PP_FLAGS = /nologo /E /TC /FIAutoGen.h\r
630*_VS2008x86_EBC_CC_FLAGS = /nologo /c /WX /W3 /FIAutoGen.h /D$(MODULE_ENTRY_POINT)=$(ARCH_ENTRY_POINT)\r
631*_VS2008x86_EBC_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h\r
632*_VS2008x86_EBC_SLINK_FLAGS = /lib /NOLOGO /MACHINE:EBC\r
633*_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
634\r
52302d4d 635\r
52302d4d 636\r
64b2609f
LG
637####################################################################################\r
638#\r
639# Microsoft Visual Studio 2010\r
640#\r
4afd3d04 641# VS2010 - Microsoft Visual Studio 2010 Premium Edition with Intel ASL\r
64b2609f
LG
642# ASL - Intel ACPI Source Language Compiler\r
643####################################################################################\r
644# VS2010 - Microsoft Visual Studio 2010 Premium Edition\r
645*_VS2010_*_*_FAMILY = MSFT\r
646\r
647*_VS2010_*_MAKE_PATH = DEF(VS2010_BIN)\nmake.exe\r
648*_VS2010_*_MAKE_FLAGS = /nologo\r
d8162fb5 649*_VS2010_*_RC_PATH = DEF(WINSDK7_BIN)\rc.exe\r
64b2609f
LG
650\r
651*_VS2010_*_SLINK_FLAGS = /NOLOGO /LTCG\r
652*_VS2010_*_APP_FLAGS = /nologo /E /TC\r
653*_VS2010_*_PP_FLAGS = /nologo /E /TC /FIAutoGen.h\r
654*_VS2010_*_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h\r
13c5e34a 655*_VS2010_*_DEPS_FLAGS = DEF(MSFT_DEPS_FLAGS)\r
64b2609f
LG
656*_VS2010_*_ASM16_PATH = DEF(VS2010_BIN)\ml.exe\r
657\r
658##################\r
659# ASL definitions\r
660##################\r
661*_VS2010_*_ASL_PATH = DEF(DEFAULT_WIN_ASL_BIN)\r
662*_VS2010_*_ASL_FLAGS = DEF(DEFAULT_WIN_ASL_FLAGS)\r
663*_VS2010_*_ASL_OUTFLAGS = DEF(DEFAULT_WIN_ASL_OUTFLAGS)\r
664*_VS2010_*_ASLCC_FLAGS = DEF(MSFT_ASLCC_FLAGS)\r
665*_VS2010_*_ASLPP_FLAGS = DEF(MSFT_ASLPP_FLAGS)\r
666*_VS2010_*_ASLDLINK_FLAGS = DEF(MSFT_ASLDLINK_FLAGS)\r
667\r
668##################\r
669# IA32 definitions\r
670##################\r
671*_VS2010_IA32_*_DLL = DEF(VS2010_DLL)\r
672\r
64b2609f
LG
673*_VS2010_IA32_CC_PATH = DEF(VS2010_BIN)\cl.exe\r
674*_VS2010_IA32_VFRPP_PATH = DEF(VS2010_BIN)\cl.exe\r
675*_VS2010_IA32_SLINK_PATH = DEF(VS2010_BIN)\lib.exe\r
676*_VS2010_IA32_DLINK_PATH = DEF(VS2010_BIN)\link.exe\r
677*_VS2010_IA32_APP_PATH = DEF(VS2010_BIN)\cl.exe\r
678*_VS2010_IA32_PP_PATH = DEF(VS2010_BIN)\cl.exe\r
679*_VS2010_IA32_ASM_PATH = DEF(VS2010_BIN)\ml.exe\r
680*_VS2010_IA32_ASLCC_PATH = DEF(VS2010_BIN)\cl.exe\r
681*_VS2010_IA32_ASLPP_PATH = DEF(VS2010_BIN)\cl.exe\r
682*_VS2010_IA32_ASLDLINK_PATH = DEF(VS2010_BIN)\link.exe\r
683\r
13c5e34a
BF
684 DEBUG_VS2010_IA32_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Z7\r
685RELEASE_VS2010_IA32_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF\r
686NOOPT_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
687\r
688 DEBUG_VS2010_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi\r
689RELEASE_VS2010_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd\r
690NOOPT_VS2010_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi\r
691\r
9a5a7435
JJ
692 DEBUG_VS2010_IA32_NASM_FLAGS = -Ox -f win32 -g\r
693RELEASE_VS2010_IA32_NASM_FLAGS = -Ox -f win32\r
694NOOPT_VS2010_IA32_NASM_FLAGS = -O0 -f win32 -g\r
695\r
64b2609f 696 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 697RELEASE_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
698NOOPT_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
699\r
700##################\r
701# X64 definitions\r
702##################\r
703*_VS2010_X64_*_DLL = DEF(VS2010_DLL)\r
704\r
705*_VS2010_X64_CC_PATH = DEF(VS2010_BINX64)\cl.exe\r
706*_VS2010_X64_PP_PATH = DEF(VS2010_BINX64)\cl.exe\r
707*_VS2010_X64_APP_PATH = DEF(VS2010_BINX64)\cl.exe\r
708*_VS2010_X64_VFRPP_PATH = DEF(VS2010_BINX64)\cl.exe\r
709*_VS2010_X64_ASM_PATH = DEF(VS2010_BINX64)\ml64.exe\r
710*_VS2010_X64_SLINK_PATH = DEF(VS2010_BINX64)\lib.exe\r
711*_VS2010_X64_DLINK_PATH = DEF(VS2010_BINX64)\link.exe\r
712*_VS2010_X64_ASLCC_PATH = DEF(VS2010_BINX64)\cl.exe\r
713*_VS2010_X64_ASLPP_PATH = DEF(VS2010_BINX64)\cl.exe\r
714*_VS2010_X64_ASLDLINK_PATH = DEF(VS2010_BINX64)\link.exe\r
715\r
13c5e34a
BF
716 DEBUG_VS2010_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Z7\r
717RELEASE_VS2010_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF\r
718NOOPT_VS2010_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Z7 /Od\r
64b2609f
LG
719\r
720 DEBUG_VS2010_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi\r
721RELEASE_VS2010_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd\r
722NOOPT_VS2010_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi\r
723\r
9a5a7435
JJ
724 DEBUG_VS2010_X64_NASM_FLAGS = -Ox -f win64 -g\r
725RELEASE_VS2010_X64_NASM_FLAGS = -Ox -f win64\r
726NOOPT_VS2010_X64_NASM_FLAGS = -O0 -f win64 -g\r
727\r
64b2609f 728 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 729RELEASE_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
730NOOPT_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
731\r
64b2609f
LG
732##################\r
733# EBC definitions\r
734##################\r
735*_VS2010_EBC_*_FAMILY = INTEL\r
4afd3d04 736*_VS2010_EBC_*_DLL = DEF(VS2010_DLL)\r
64b2609f 737\r
64b2609f
LG
738*_VS2010_EBC_PP_PATH = DEF(EBC_BIN)\iec.exe\r
739*_VS2010_EBC_VFRPP_PATH = DEF(EBC_BIN)\iec.exe\r
740*_VS2010_EBC_CC_PATH = DEF(EBC_BIN)\iec.exe\r
4afd3d04
LG
741*_VS2010_EBC_SLINK_PATH = DEF(VS2010_BIN)\link.exe\r
742*_VS2010_EBC_DLINK_PATH = DEF(VS2010_BIN)\link.exe\r
64b2609f 743\r
64b2609f
LG
744*_VS2010_EBC_PP_FLAGS = /nologo /E /TC /FIAutoGen.h\r
745*_VS2010_EBC_CC_FLAGS = /nologo /c /WX /W3 /FIAutoGen.h /D$(MODULE_ENTRY_POINT)=$(ARCH_ENTRY_POINT)\r
746*_VS2010_EBC_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h\r
747*_VS2010_EBC_SLINK_FLAGS = /lib /NOLOGO /MACHINE:EBC\r
748*_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
749\r
4afd3d04 750\r
64b2609f
LG
751####################################################################################\r
752# VS2010x86 - Microsoft Visual Studio 2010 (x86) with Intel ASL\r
753# ASL - Intel ACPI Source Language Compiler (iasl.exe)\r
754####################################################################################\r
755# VS2010x86 - Microsoft Visual Studio 2010 (x86) ALL Edition with Intel ASL\r
756*_VS2010x86_*_*_FAMILY = MSFT\r
757\r
758*_VS2010x86_*_MAKE_PATH = DEF(VS2010x86_BIN)\nmake.exe\r
4b59b22f 759*_VS2010x86_*_MAKE_FLAGS = /nologo\r
d8162fb5 760*_VS2010x86_*_RC_PATH = DEF(WINSDK7x86_BIN)\rc.exe\r
64b2609f 761\r
64b2609f
LG
762*_VS2010x86_*_SLINK_FLAGS = /NOLOGO /LTCG\r
763*_VS2010x86_*_APP_FLAGS = /nologo /E /TC\r
764*_VS2010x86_*_PP_FLAGS = /nologo /E /TC /FIAutoGen.h\r
765*_VS2010x86_*_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h\r
13c5e34a 766*_VS2010x86_*_DEPS_FLAGS = DEF(MSFT_DEPS_FLAGS)\r
64b2609f
LG
767*_VS2010x86_*_ASM16_PATH = DEF(VS2010x86_BIN)\ml.exe\r
768\r
769##################\r
770# ASL definitions\r
771##################\r
772*_VS2010x86_*_ASL_PATH = DEF(WIN_IASL_BIN)\r
773*_VS2010x86_*_ASL_FLAGS = DEF(DEFAULT_WIN_ASL_FLAGS)\r
774*_VS2010x86_*_ASL_OUTFLAGS = DEF(DEFAULT_WIN_ASL_OUTFLAGS)\r
775*_VS2010x86_*_ASLCC_FLAGS = DEF(MSFT_ASLCC_FLAGS)\r
776*_VS2010x86_*_ASLPP_FLAGS = DEF(MSFT_ASLPP_FLAGS)\r
777*_VS2010x86_*_ASLDLINK_FLAGS = DEF(MSFT_ASLDLINK_FLAGS)\r
778\r
779##################\r
780# IA32 definitions\r
781##################\r
782*_VS2010x86_IA32_*_DLL = DEF(VS2010x86_DLL)\r
783\r
64b2609f
LG
784*_VS2010x86_IA32_CC_PATH = DEF(VS2010x86_BIN)\cl.exe\r
785*_VS2010x86_IA32_VFRPP_PATH = DEF(VS2010x86_BIN)\cl.exe\r
786*_VS2010x86_IA32_ASLCC_PATH = DEF(VS2010x86_BIN)\cl.exe\r
787*_VS2010x86_IA32_ASLPP_PATH = DEF(VS2010x86_BIN)\cl.exe\r
788*_VS2010x86_IA32_SLINK_PATH = DEF(VS2010x86_BIN)\lib.exe\r
789*_VS2010x86_IA32_DLINK_PATH = DEF(VS2010x86_BIN)\link.exe\r
790*_VS2010x86_IA32_ASLDLINK_PATH= DEF(VS2010x86_BIN)\link.exe\r
791*_VS2010x86_IA32_APP_PATH = DEF(VS2010x86_BIN)\cl.exe\r
792*_VS2010x86_IA32_PP_PATH = DEF(VS2010x86_BIN)\cl.exe\r
793*_VS2010x86_IA32_ASM_PATH = DEF(VS2010x86_BIN)\ml.exe\r
794\r
13c5e34a
BF
795 DEBUG_VS2010x86_IA32_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Z7\r
796RELEASE_VS2010x86_IA32_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF\r
797NOOPT_VS2010x86_IA32_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Z7 /Od\r
64b2609f
LG
798\r
799 DEBUG_VS2010x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi\r
800RELEASE_VS2010x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd\r
801NOOPT_VS2010x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi\r
802\r
9a5a7435
JJ
803 DEBUG_VS2010x86_IA32_NASM_FLAGS = -Ox -f win32 -g\r
804RELEASE_VS2010x86_IA32_NASM_FLAGS = -Ox -f win32\r
805NOOPT_VS2010x86_IA32_NASM_FLAGS = -O0 -f win32 -g\r
806\r
64b2609f 807 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 808RELEASE_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
809NOOPT_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
810\r
811##################\r
812# X64 definitions\r
813##################\r
814*_VS2010x86_X64_*_DLL = DEF(VS2010x86_DLL)\r
815\r
816*_VS2010x86_X64_CC_PATH = DEF(VS2010x86_BINX64)\cl.exe\r
817*_VS2010x86_X64_PP_PATH = DEF(VS2010x86_BINX64)\cl.exe\r
818*_VS2010x86_X64_APP_PATH = DEF(VS2010x86_BINX64)\cl.exe\r
819*_VS2010x86_X64_VFRPP_PATH = DEF(VS2010x86_BINX64)\cl.exe\r
820*_VS2010x86_X64_ASLCC_PATH = DEF(VS2010x86_BINX64)\cl.exe\r
821*_VS2010x86_X64_ASLPP_PATH = DEF(VS2010x86_BINX64)\cl.exe\r
822*_VS2010x86_X64_ASM_PATH = DEF(VS2010x86_BINX64)\ml64.exe\r
823*_VS2010x86_X64_SLINK_PATH = DEF(VS2010x86_BINX64)\lib.exe\r
824*_VS2010x86_X64_DLINK_PATH = DEF(VS2010x86_BINX64)\link.exe\r
825*_VS2010x86_X64_ASLDLINK_PATH = DEF(VS2010x86_BINX64)\link.exe\r
826\r
13c5e34a
BF
827 DEBUG_VS2010x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Z7\r
828RELEASE_VS2010x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF\r
829NOOPT_VS2010x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Z7 /Od\r
64b2609f
LG
830\r
831 DEBUG_VS2010x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi\r
832RELEASE_VS2010x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd\r
833NOOPT_VS2010x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi\r
9a5a7435
JJ
834\r
835 DEBUG_VS2010x86_X64_NASM_FLAGS = -Ox -f win64 -g\r
836RELEASE_VS2010x86_X64_NASM_FLAGS = -Ox -f win64\r
837NOOPT_VS2010x86_X64_NASM_FLAGS = -O0 -f win64 -g\r
838\r
64b2609f 839 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 840RELEASE_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
841NOOPT_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
842\r
4afd3d04
LG
843##################\r
844# EBC definitions\r
845##################\r
846*_VS2010x86_EBC_*_FAMILY = INTEL\r
847*_VS2010x86_EBC_*_DLL = DEF(VS2010x86_DLL)\r
848\r
4afd3d04
LG
849*_VS2010x86_EBC_PP_PATH = DEF(EBC_BINx86)\iec.exe\r
850*_VS2010x86_EBC_VFRPP_PATH = DEF(EBC_BINx86)\iec.exe\r
851*_VS2010x86_EBC_CC_PATH = DEF(EBC_BINx86)\iec.exe\r
852*_VS2010x86_EBC_SLINK_PATH = DEF(VS2010x86_BIN)\link.exe\r
853*_VS2010x86_EBC_DLINK_PATH = DEF(VS2010x86_BIN)\link.exe\r
854\r
4afd3d04
LG
855*_VS2010x86_EBC_PP_FLAGS = /nologo /E /TC /FIAutoGen.h\r
856*_VS2010x86_EBC_CC_FLAGS = /nologo /c /WX /W3 /FIAutoGen.h /D$(MODULE_ENTRY_POINT)=$(ARCH_ENTRY_POINT)\r
857*_VS2010x86_EBC_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h\r
858*_VS2010x86_EBC_SLINK_FLAGS = /lib /NOLOGO /MACHINE:EBC\r
859*_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
860\r
64b2609f 861\r
4afd3d04
LG
862####################################################################################\r
863#\r
864# Microsoft Visual Studio 2012\r
865#\r
866# VS2012 - Microsoft Visual Studio 2012 Professional Edition with Intel ASL\r
867# ASL - Intel ACPI Source Language Compiler\r
868####################################################################################\r
5d9cd24e 869# VS2012 - Microsoft Visual Studio 2012 Professional Edition\r
4afd3d04
LG
870*_VS2012_*_*_FAMILY = MSFT\r
871\r
872*_VS2012_*_MAKE_PATH = DEF(VS2012_BIN)\nmake.exe\r
873*_VS2012_*_MAKE_FLAGS = /nologo\r
d8162fb5 874*_VS2012_*_RC_PATH = DEF(WINSDK71_BIN)\rc.exe\r
4afd3d04
LG
875\r
876*_VS2012_*_SLINK_FLAGS = /NOLOGO /LTCG\r
877*_VS2012_*_APP_FLAGS = /nologo /E /TC\r
878*_VS2012_*_PP_FLAGS = /nologo /E /TC /FIAutoGen.h\r
879*_VS2012_*_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h\r
13c5e34a 880*_VS2012_*_DEPS_FLAGS = DEF(MSFT_DEPS_FLAGS)\r
4afd3d04
LG
881*_VS2012_*_ASM16_PATH = DEF(VS2012_BIN)\ml.exe\r
882\r
883##################\r
884# ASL definitions\r
885##################\r
886*_VS2012_*_ASL_PATH = DEF(DEFAULT_WIN_ASL_BIN)\r
887*_VS2012_*_ASL_FLAGS = DEF(DEFAULT_WIN_ASL_FLAGS)\r
888*_VS2012_*_ASL_OUTFLAGS = DEF(DEFAULT_WIN_ASL_OUTFLAGS)\r
889*_VS2012_*_ASLCC_FLAGS = DEF(MSFT_ASLCC_FLAGS)\r
890*_VS2012_*_ASLPP_FLAGS = DEF(MSFT_ASLPP_FLAGS)\r
891*_VS2012_*_ASLDLINK_FLAGS = DEF(MSFT_ASLDLINK_FLAGS)\r
892\r
893##################\r
894# IA32 definitions\r
895##################\r
896*_VS2012_IA32_*_DLL = DEF(VS2012_DLL)\r
897\r
4afd3d04
LG
898*_VS2012_IA32_CC_PATH = DEF(VS2012_BIN)\cl.exe\r
899*_VS2012_IA32_VFRPP_PATH = DEF(VS2012_BIN)\cl.exe\r
900*_VS2012_IA32_SLINK_PATH = DEF(VS2012_BIN)\lib.exe\r
901*_VS2012_IA32_DLINK_PATH = DEF(VS2012_BIN)\link.exe\r
902*_VS2012_IA32_APP_PATH = DEF(VS2012_BIN)\cl.exe\r
903*_VS2012_IA32_PP_PATH = DEF(VS2012_BIN)\cl.exe\r
904*_VS2012_IA32_ASM_PATH = DEF(VS2012_BIN)\ml.exe\r
905*_VS2012_IA32_ASLCC_PATH = DEF(VS2012_BIN)\cl.exe\r
906*_VS2012_IA32_ASLPP_PATH = DEF(VS2012_BIN)\cl.exe\r
907*_VS2012_IA32_ASLDLINK_PATH = DEF(VS2012_BIN)\link.exe\r
908\r
13c5e34a
BF
909 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
910RELEASE_VS2012_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF\r
911NOOPT_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
912\r
913 DEBUG_VS2012_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi\r
914RELEASE_VS2012_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd\r
915NOOPT_VS2012_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi\r
916\r
9a5a7435
JJ
917 DEBUG_VS2012_IA32_NASM_FLAGS = -Ox -f win32 -g\r
918RELEASE_VS2012_IA32_NASM_FLAGS = -Ox -f win32\r
919NOOPT_VS2012_IA32_NASM_FLAGS = -O0 -f win32 -g\r
920\r
4afd3d04 921 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 922RELEASE_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
923NOOPT_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
924\r
925##################\r
926# X64 definitions\r
927##################\r
928*_VS2012_X64_*_DLL = DEF(VS2012_DLL)\r
929\r
930*_VS2012_X64_CC_PATH = DEF(VS2012_BINX64)\cl.exe\r
931*_VS2012_X64_PP_PATH = DEF(VS2012_BINX64)\cl.exe\r
932*_VS2012_X64_APP_PATH = DEF(VS2012_BINX64)\cl.exe\r
933*_VS2012_X64_VFRPP_PATH = DEF(VS2012_BINX64)\cl.exe\r
934*_VS2012_X64_ASM_PATH = DEF(VS2012_BINX64)\ml64.exe\r
935*_VS2012_X64_SLINK_PATH = DEF(VS2012_BINX64)\lib.exe\r
936*_VS2012_X64_DLINK_PATH = DEF(VS2012_BINX64)\link.exe\r
937*_VS2012_X64_ASLCC_PATH = DEF(VS2012_BINX64)\cl.exe\r
938*_VS2012_X64_ASLPP_PATH = DEF(VS2012_BINX64)\cl.exe\r
939*_VS2012_X64_ASLDLINK_PATH = DEF(VS2012_BINX64)\link.exe\r
940\r
13c5e34a
BF
941 DEBUG_VS2012_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Z7\r
942RELEASE_VS2012_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF\r
943NOOPT_VS2012_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Z7 /Od\r
4afd3d04
LG
944\r
945 DEBUG_VS2012_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi\r
946RELEASE_VS2012_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd\r
947NOOPT_VS2012_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi\r
948\r
9a5a7435
JJ
949 DEBUG_VS2012_X64_NASM_FLAGS = -Ox -f win64 -g\r
950RELEASE_VS2012_X64_NASM_FLAGS = -Ox -f win64\r
951NOOPT_VS2012_X64_NASM_FLAGS = -O0 -f win64 -g\r
952\r
4afd3d04 953 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 954RELEASE_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
955NOOPT_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
956\r
957##################\r
958# EBC definitions\r
959##################\r
960*_VS2012_EBC_*_FAMILY = INTEL\r
961*_VS2012_EBC_*_DLL = DEF(VS2012_DLL)\r
962\r
4afd3d04
LG
963*_VS2012_EBC_PP_PATH = DEF(EBC_BIN)\iec.exe\r
964*_VS2012_EBC_VFRPP_PATH = DEF(EBC_BIN)\iec.exe\r
965*_VS2012_EBC_CC_PATH = DEF(EBC_BIN)\iec.exe\r
966*_VS2012_EBC_SLINK_PATH = DEF(VS2012_BIN)\link.exe\r
967*_VS2012_EBC_DLINK_PATH = DEF(VS2012_BIN)\link.exe\r
968\r
4afd3d04
LG
969*_VS2012_EBC_PP_FLAGS = /nologo /E /TC /FIAutoGen.h\r
970*_VS2012_EBC_CC_FLAGS = /nologo /c /WX /W3 /FIAutoGen.h /D$(MODULE_ENTRY_POINT)=$(ARCH_ENTRY_POINT)\r
971*_VS2012_EBC_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h\r
972*_VS2012_EBC_SLINK_FLAGS = /lib /NOLOGO /MACHINE:EBC\r
973*_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
974\r
975\r
4afd3d04
LG
976####################################################################################\r
977# VS2012x86 - Microsoft Visual Studio 2012 (x86) professional with Intel ASL\r
978# ASL - Intel ACPI Source Language Compiler (iasl.exe)\r
979####################################################################################\r
980# VS2012x86 - Microsoft Visual Studio 2012 (x86) professional Edition with Intel ASL\r
981*_VS2012x86_*_*_FAMILY = MSFT\r
982\r
983*_VS2012x86_*_MAKE_PATH = DEF(VS2012x86_BIN)\nmake.exe\r
4b59b22f 984*_VS2012x86_*_MAKE_FLAGS = /nologo\r
d8162fb5 985*_VS2012x86_*_RC_PATH = DEF(WINSDK71x86_BIN)\rc.exe\r
4afd3d04 986\r
4afd3d04
LG
987*_VS2012x86_*_SLINK_FLAGS = /NOLOGO /LTCG\r
988*_VS2012x86_*_APP_FLAGS = /nologo /E /TC\r
989*_VS2012x86_*_PP_FLAGS = /nologo /E /TC /FIAutoGen.h\r
990*_VS2012x86_*_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h\r
13c5e34a 991*_VS2012x86_*_DEPS_FLAGS = DEF(MSFT_DEPS_FLAGS)\r
4afd3d04
LG
992*_VS2012x86_*_ASM16_PATH = DEF(VS2012x86_BIN)\ml.exe\r
993\r
994##################\r
995# ASL definitions\r
996##################\r
997*_VS2012x86_*_ASL_PATH = DEF(WIN_IASL_BIN)\r
998*_VS2012x86_*_ASL_FLAGS = DEF(DEFAULT_WIN_ASL_FLAGS)\r
999*_VS2012x86_*_ASL_OUTFLAGS = DEF(DEFAULT_WIN_ASL_OUTFLAGS)\r
1000*_VS2012x86_*_ASLCC_FLAGS = DEF(MSFT_ASLCC_FLAGS)\r
1001*_VS2012x86_*_ASLPP_FLAGS = DEF(MSFT_ASLPP_FLAGS)\r
1002*_VS2012x86_*_ASLDLINK_FLAGS = DEF(MSFT_ASLDLINK_FLAGS)\r
1003\r
1004##################\r
1005# IA32 definitions\r
1006##################\r
1007*_VS2012x86_IA32_*_DLL = DEF(VS2012x86_DLL)\r
1008\r
4afd3d04
LG
1009*_VS2012x86_IA32_CC_PATH = DEF(VS2012x86_BIN)\cl.exe\r
1010*_VS2012x86_IA32_VFRPP_PATH = DEF(VS2012x86_BIN)\cl.exe\r
1011*_VS2012x86_IA32_ASLCC_PATH = DEF(VS2012x86_BIN)\cl.exe\r
1012*_VS2012x86_IA32_ASLPP_PATH = DEF(VS2012x86_BIN)\cl.exe\r
1013*_VS2012x86_IA32_SLINK_PATH = DEF(VS2012x86_BIN)\lib.exe\r
1014*_VS2012x86_IA32_DLINK_PATH = DEF(VS2012x86_BIN)\link.exe\r
1015*_VS2012x86_IA32_ASLDLINK_PATH= DEF(VS2012x86_BIN)\link.exe\r
1016*_VS2012x86_IA32_APP_PATH = DEF(VS2012x86_BIN)\cl.exe\r
1017*_VS2012x86_IA32_PP_PATH = DEF(VS2012x86_BIN)\cl.exe\r
1018*_VS2012x86_IA32_ASM_PATH = DEF(VS2012x86_BIN)\ml.exe\r
1019\r
13c5e34a
BF
1020 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
1021RELEASE_VS2012x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF\r
1022NOOPT_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
1023\r
1024 DEBUG_VS2012x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi\r
1025RELEASE_VS2012x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd\r
1026NOOPT_VS2012x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi\r
1027\r
9a5a7435
JJ
1028 DEBUG_VS2012x86_IA32_NASM_FLAGS = -Ox -f win32 -g\r
1029RELEASE_VS2012x86_IA32_NASM_FLAGS = -Ox -f win32\r
1030NOOPT_VS2012x86_IA32_NASM_FLAGS = -O0 -f win32 -g\r
1031\r
4afd3d04 1032 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 1033RELEASE_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
1034NOOPT_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
1035\r
1036##################\r
1037# X64 definitions\r
1038##################\r
1039*_VS2012x86_X64_*_DLL = DEF(VS2012x86_DLL)\r
1040\r
1041*_VS2012x86_X64_CC_PATH = DEF(VS2012x86_BINX64)\cl.exe\r
1042*_VS2012x86_X64_PP_PATH = DEF(VS2012x86_BINX64)\cl.exe\r
1043*_VS2012x86_X64_APP_PATH = DEF(VS2012x86_BINX64)\cl.exe\r
1044*_VS2012x86_X64_VFRPP_PATH = DEF(VS2012x86_BINX64)\cl.exe\r
1045*_VS2012x86_X64_ASLCC_PATH = DEF(VS2012x86_BINX64)\cl.exe\r
1046*_VS2012x86_X64_ASLPP_PATH = DEF(VS2012x86_BINX64)\cl.exe\r
1047*_VS2012x86_X64_ASM_PATH = DEF(VS2012x86_BINX64)\ml64.exe\r
1048*_VS2012x86_X64_SLINK_PATH = DEF(VS2012x86_BINX64)\lib.exe\r
1049*_VS2012x86_X64_DLINK_PATH = DEF(VS2012x86_BINX64)\link.exe\r
1050*_VS2012x86_X64_ASLDLINK_PATH = DEF(VS2012x86_BINX64)\link.exe\r
1051\r
13c5e34a
BF
1052 DEBUG_VS2012x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Z7\r
1053RELEASE_VS2012x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF\r
1054NOOPT_VS2012x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Z7 /Od\r
4afd3d04
LG
1055\r
1056 DEBUG_VS2012x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi\r
1057RELEASE_VS2012x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd\r
1058NOOPT_VS2012x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi\r
9a5a7435
JJ
1059\r
1060 DEBUG_VS2012x86_X64_NASM_FLAGS = -Ox -f win64 -g\r
1061RELEASE_VS2012x86_X64_NASM_FLAGS = -Ox -f win64\r
1062NOOPT_VS2012x86_X64_NASM_FLAGS = -O0 -f win64 -g\r
1063\r
4afd3d04 1064 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 1065RELEASE_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
1066NOOPT_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
1067\r
1068##################\r
1069# EBC definitions\r
1070##################\r
1071*_VS2012x86_EBC_*_FAMILY = INTEL\r
1072*_VS2012x86_EBC_*_DLL = DEF(VS2012x86_DLL)\r
1073\r
4afd3d04
LG
1074*_VS2012x86_EBC_PP_PATH = DEF(EBC_BINx86)\iec.exe\r
1075*_VS2012x86_EBC_VFRPP_PATH = DEF(EBC_BINx86)\iec.exe\r
1076*_VS2012x86_EBC_CC_PATH = DEF(EBC_BINx86)\iec.exe\r
1077*_VS2012x86_EBC_SLINK_PATH = DEF(VS2012x86_BIN)\link.exe\r
1078*_VS2012x86_EBC_DLINK_PATH = DEF(VS2012x86_BIN)\link.exe\r
1079\r
4afd3d04
LG
1080*_VS2012x86_EBC_PP_FLAGS = /nologo /E /TC /FIAutoGen.h\r
1081*_VS2012x86_EBC_CC_FLAGS = /nologo /c /WX /W3 /FIAutoGen.h /D$(MODULE_ENTRY_POINT)=$(ARCH_ENTRY_POINT)\r
1082*_VS2012x86_EBC_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h\r
1083*_VS2012x86_EBC_SLINK_FLAGS = /lib /NOLOGO /MACHINE:EBC\r
1084*_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
1085\r
1086\r
537bc124
WY
1087####################################################################################\r
1088#\r
1089# Microsoft Visual Studio 2013\r
1090#\r
1091# VS2013 - Microsoft Visual Studio 2013 Professional Edition with Intel ASL\r
1092# ASL - Intel ACPI Source Language Compiler\r
1093####################################################################################\r
5d9cd24e 1094# VS2013 - Microsoft Visual Studio 2013 Professional Edition\r
537bc124
WY
1095*_VS2013_*_*_FAMILY = MSFT\r
1096\r
1097*_VS2013_*_MAKE_PATH = DEF(VS2013_BIN)\nmake.exe\r
1098*_VS2013_*_MAKE_FLAGS = /nologo\r
1099*_VS2013_*_RC_PATH = DEF(WINSDK8_BIN)\rc.exe\r
1100\r
1101*_VS2013_*_SLINK_FLAGS = /NOLOGO /LTCG\r
1102*_VS2013_*_APP_FLAGS = /nologo /E /TC\r
1103*_VS2013_*_PP_FLAGS = /nologo /E /TC /FIAutoGen.h\r
1104*_VS2013_*_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h\r
13c5e34a 1105*_VS2013_*_DEPS_FLAGS = DEF(MSFT_DEPS_FLAGS)\r
537bc124
WY
1106*_VS2013_*_ASM16_PATH = DEF(VS2013_BIN)\ml.exe\r
1107\r
1108##################\r
1109# ASL definitions\r
1110##################\r
1111*_VS2013_*_ASL_PATH = DEF(DEFAULT_WIN_ASL_BIN)\r
1112*_VS2013_*_ASL_FLAGS = DEF(DEFAULT_WIN_ASL_FLAGS)\r
1113*_VS2013_*_ASL_OUTFLAGS = DEF(DEFAULT_WIN_ASL_OUTFLAGS)\r
1114*_VS2013_*_ASLCC_FLAGS = DEF(MSFT_ASLCC_FLAGS)\r
1115*_VS2013_*_ASLPP_FLAGS = DEF(MSFT_ASLPP_FLAGS)\r
1116*_VS2013_*_ASLDLINK_FLAGS = DEF(MSFT_ASLDLINK_FLAGS)\r
1117\r
1118##################\r
1119# IA32 definitions\r
1120##################\r
1121*_VS2013_IA32_*_DLL = DEF(VS2013_DLL)\r
1122\r
537bc124
WY
1123*_VS2013_IA32_CC_PATH = DEF(VS2013_BIN)\cl.exe\r
1124*_VS2013_IA32_VFRPP_PATH = DEF(VS2013_BIN)\cl.exe\r
1125*_VS2013_IA32_SLINK_PATH = DEF(VS2013_BIN)\lib.exe\r
1126*_VS2013_IA32_DLINK_PATH = DEF(VS2013_BIN)\link.exe\r
1127*_VS2013_IA32_APP_PATH = DEF(VS2013_BIN)\cl.exe\r
1128*_VS2013_IA32_PP_PATH = DEF(VS2013_BIN)\cl.exe\r
1129*_VS2013_IA32_ASM_PATH = DEF(VS2013_BIN)\ml.exe\r
1130*_VS2013_IA32_ASLCC_PATH = DEF(VS2013_BIN)\cl.exe\r
1131*_VS2013_IA32_ASLPP_PATH = DEF(VS2013_BIN)\cl.exe\r
1132*_VS2013_IA32_ASLDLINK_PATH = DEF(VS2013_BIN)\link.exe\r
1133\r
13c5e34a
BF
1134 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
1135RELEASE_VS2013_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gw\r
1136NOOPT_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
1137\r
1138 DEBUG_VS2013_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi\r
1139RELEASE_VS2013_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd\r
1140NOOPT_VS2013_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi\r
1141\r
9a5a7435
JJ
1142 DEBUG_VS2013_IA32_NASM_FLAGS = -Ox -f win32 -g\r
1143RELEASE_VS2013_IA32_NASM_FLAGS = -Ox -f win32\r
1144NOOPT_VS2013_IA32_NASM_FLAGS = -O0 -f win32 -g\r
1145\r
537bc124 1146 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 1147RELEASE_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
1148NOOPT_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
1149\r
1150##################\r
1151# X64 definitions\r
1152##################\r
1153*_VS2013_X64_*_DLL = DEF(VS2013_DLL)\r
1154\r
1155*_VS2013_X64_CC_PATH = DEF(VS2013_BINX64)\cl.exe\r
1156*_VS2013_X64_PP_PATH = DEF(VS2013_BINX64)\cl.exe\r
1157*_VS2013_X64_APP_PATH = DEF(VS2013_BINX64)\cl.exe\r
1158*_VS2013_X64_VFRPP_PATH = DEF(VS2013_BINX64)\cl.exe\r
1159*_VS2013_X64_ASM_PATH = DEF(VS2013_BINX64)\ml64.exe\r
1160*_VS2013_X64_SLINK_PATH = DEF(VS2013_BINX64)\lib.exe\r
1161*_VS2013_X64_DLINK_PATH = DEF(VS2013_BINX64)\link.exe\r
1162*_VS2013_X64_ASLCC_PATH = DEF(VS2013_BINX64)\cl.exe\r
1163*_VS2013_X64_ASLPP_PATH = DEF(VS2013_BINX64)\cl.exe\r
1164*_VS2013_X64_ASLDLINK_PATH = DEF(VS2013_BINX64)\link.exe\r
1165\r
13c5e34a
BF
1166 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
1167RELEASE_VS2013_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Gw\r
1168NOOPT_VS2013_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Z7 /Od\r
537bc124
WY
1169\r
1170 DEBUG_VS2013_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi\r
1171RELEASE_VS2013_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd\r
1172NOOPT_VS2013_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi\r
1173\r
9a5a7435
JJ
1174 DEBUG_VS2013_X64_NASM_FLAGS = -Ox -f win64 -g\r
1175RELEASE_VS2013_X64_NASM_FLAGS = -Ox -f win64\r
1176NOOPT_VS2013_X64_NASM_FLAGS = -O0 -f win64 -g\r
1177\r
537bc124 1178 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 1179RELEASE_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
1180NOOPT_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
1181\r
1182##################\r
1183# EBC definitions\r
1184##################\r
1185*_VS2013_EBC_*_FAMILY = INTEL\r
1186*_VS2013_EBC_*_DLL = DEF(VS2013_DLL)\r
1187\r
537bc124
WY
1188*_VS2013_EBC_PP_PATH = DEF(EBC_BIN)\iec.exe\r
1189*_VS2013_EBC_VFRPP_PATH = DEF(EBC_BIN)\iec.exe\r
1190*_VS2013_EBC_CC_PATH = DEF(EBC_BIN)\iec.exe\r
1191*_VS2013_EBC_SLINK_PATH = DEF(VS2013_BIN)\link.exe\r
1192*_VS2013_EBC_DLINK_PATH = DEF(VS2013_BIN)\link.exe\r
1193\r
537bc124
WY
1194*_VS2013_EBC_PP_FLAGS = /nologo /E /TC /FIAutoGen.h\r
1195*_VS2013_EBC_CC_FLAGS = /nologo /c /WX /W3 /FIAutoGen.h /D$(MODULE_ENTRY_POINT)=$(ARCH_ENTRY_POINT)\r
1196*_VS2013_EBC_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h\r
1197*_VS2013_EBC_SLINK_FLAGS = /lib /NOLOGO /MACHINE:EBC\r
1198*_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
1199\r
1200\r
537bc124
WY
1201####################################################################################\r
1202# VS2013x86 - Microsoft Visual Studio 2013 (x86) professional with Intel ASL\r
1203# ASL - Intel ACPI Source Language Compiler (iasl.exe)\r
1204####################################################################################\r
1205# VS2013x86 - Microsoft Visual Studio 2013 (x86) professional Edition with Intel ASL\r
1206*_VS2013x86_*_*_FAMILY = MSFT\r
1207\r
1208*_VS2013x86_*_MAKE_PATH = DEF(VS2013x86_BIN)\nmake.exe\r
4b59b22f 1209*_VS2013x86_*_MAKE_FLAGS = /nologo\r
537bc124
WY
1210*_VS2013x86_*_RC_PATH = DEF(WINSDK8x86_BIN)\rc.exe\r
1211\r
537bc124
WY
1212*_VS2013x86_*_SLINK_FLAGS = /NOLOGO /LTCG\r
1213*_VS2013x86_*_APP_FLAGS = /nologo /E /TC\r
1214*_VS2013x86_*_PP_FLAGS = /nologo /E /TC /FIAutoGen.h\r
1215*_VS2013x86_*_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h\r
13c5e34a 1216*_VS2013x86_*_DEPS_FLAGS = DEF(MSFT_DEPS_FLAGS)\r
537bc124
WY
1217*_VS2013x86_*_ASM16_PATH = DEF(VS2013x86_BIN)\ml.exe\r
1218\r
1219##################\r
1220# ASL definitions\r
1221##################\r
1222*_VS2013x86_*_ASL_PATH = DEF(WIN_IASL_BIN)\r
1223*_VS2013x86_*_ASL_FLAGS = DEF(DEFAULT_WIN_ASL_FLAGS)\r
1224*_VS2013x86_*_ASL_OUTFLAGS = DEF(DEFAULT_WIN_ASL_OUTFLAGS)\r
1225*_VS2013x86_*_ASLCC_FLAGS = DEF(MSFT_ASLCC_FLAGS)\r
1226*_VS2013x86_*_ASLPP_FLAGS = DEF(MSFT_ASLPP_FLAGS)\r
1227*_VS2013x86_*_ASLDLINK_FLAGS = DEF(MSFT_ASLDLINK_FLAGS)\r
1228\r
1229##################\r
1230# IA32 definitions\r
1231##################\r
1232*_VS2013x86_IA32_*_DLL = DEF(VS2013x86_DLL)\r
1233\r
537bc124
WY
1234*_VS2013x86_IA32_CC_PATH = DEF(VS2013x86_BIN)\cl.exe\r
1235*_VS2013x86_IA32_VFRPP_PATH = DEF(VS2013x86_BIN)\cl.exe\r
1236*_VS2013x86_IA32_ASLCC_PATH = DEF(VS2013x86_BIN)\cl.exe\r
1237*_VS2013x86_IA32_ASLPP_PATH = DEF(VS2013x86_BIN)\cl.exe\r
1238*_VS2013x86_IA32_SLINK_PATH = DEF(VS2013x86_BIN)\lib.exe\r
1239*_VS2013x86_IA32_DLINK_PATH = DEF(VS2013x86_BIN)\link.exe\r
1240*_VS2013x86_IA32_ASLDLINK_PATH= DEF(VS2013x86_BIN)\link.exe\r
1241*_VS2013x86_IA32_APP_PATH = DEF(VS2013x86_BIN)\cl.exe\r
1242*_VS2013x86_IA32_PP_PATH = DEF(VS2013x86_BIN)\cl.exe\r
1243*_VS2013x86_IA32_ASM_PATH = DEF(VS2013x86_BIN)\ml.exe\r
1244\r
13c5e34a
BF
1245 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
1246RELEASE_VS2013x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gw\r
1247NOOPT_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
1248\r
1249 DEBUG_VS2013x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi\r
1250RELEASE_VS2013x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd\r
1251NOOPT_VS2013x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi\r
1252\r
9a5a7435
JJ
1253 DEBUG_VS2013x86_IA32_NASM_FLAGS = -Ox -f win32 -g\r
1254RELEASE_VS2013x86_IA32_NASM_FLAGS = -Ox -f win32\r
1255NOOPT_VS2013x86_IA32_NASM_FLAGS = -O0 -f win32 -g\r
1256\r
537bc124 1257 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 1258RELEASE_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
1259NOOPT_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
1260\r
1261##################\r
1262# X64 definitions\r
1263##################\r
1264*_VS2013x86_X64_*_DLL = DEF(VS2013x86_DLL)\r
1265\r
1266*_VS2013x86_X64_CC_PATH = DEF(VS2013x86_BINX64)\cl.exe\r
1267*_VS2013x86_X64_PP_PATH = DEF(VS2013x86_BINX64)\cl.exe\r
1268*_VS2013x86_X64_APP_PATH = DEF(VS2013x86_BINX64)\cl.exe\r
1269*_VS2013x86_X64_VFRPP_PATH = DEF(VS2013x86_BINX64)\cl.exe\r
1270*_VS2013x86_X64_ASLCC_PATH = DEF(VS2013x86_BINX64)\cl.exe\r
1271*_VS2013x86_X64_ASLPP_PATH = DEF(VS2013x86_BINX64)\cl.exe\r
1272*_VS2013x86_X64_ASM_PATH = DEF(VS2013x86_BINX64)\ml64.exe\r
1273*_VS2013x86_X64_SLINK_PATH = DEF(VS2013x86_BINX64)\lib.exe\r
1274*_VS2013x86_X64_DLINK_PATH = DEF(VS2013x86_BINX64)\link.exe\r
1275*_VS2013x86_X64_ASLDLINK_PATH = DEF(VS2013x86_BINX64)\link.exe\r
1276\r
13c5e34a
BF
1277 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
1278RELEASE_VS2013x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Gw\r
1279NOOPT_VS2013x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Z7 /Od\r
537bc124
WY
1280\r
1281 DEBUG_VS2013x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi\r
1282RELEASE_VS2013x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd\r
1283NOOPT_VS2013x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi\r
9a5a7435
JJ
1284\r
1285 DEBUG_VS2013x86_X64_NASM_FLAGS = -Ox -f win64 -g\r
1286RELEASE_VS2013x86_X64_NASM_FLAGS = -Ox -f win64\r
1287NOOPT_VS2013x86_X64_NASM_FLAGS = -O0 -f win64 -g\r
1288\r
537bc124 1289 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 1290RELEASE_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
1291NOOPT_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
1292\r
1293##################\r
1294# EBC definitions\r
1295##################\r
1296*_VS2013x86_EBC_*_FAMILY = INTEL\r
1297*_VS2013x86_EBC_*_DLL = DEF(VS2013x86_DLL)\r
1298\r
537bc124
WY
1299*_VS2013x86_EBC_PP_PATH = DEF(EBC_BINx86)\iec.exe\r
1300*_VS2013x86_EBC_VFRPP_PATH = DEF(EBC_BINx86)\iec.exe\r
1301*_VS2013x86_EBC_CC_PATH = DEF(EBC_BINx86)\iec.exe\r
1302*_VS2013x86_EBC_SLINK_PATH = DEF(VS2013x86_BIN)\link.exe\r
1303*_VS2013x86_EBC_DLINK_PATH = DEF(VS2013x86_BIN)\link.exe\r
1304\r
537bc124
WY
1305*_VS2013x86_EBC_PP_FLAGS = /nologo /E /TC /FIAutoGen.h\r
1306*_VS2013x86_EBC_CC_FLAGS = /nologo /c /WX /W3 /FIAutoGen.h /D$(MODULE_ENTRY_POINT)=$(ARCH_ENTRY_POINT)\r
1307*_VS2013x86_EBC_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h\r
1308*_VS2013x86_EBC_SLINK_FLAGS = /lib /NOLOGO /MACHINE:EBC\r
1309*_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
1310\r
1311\r
5d9cd24e
WY
1312####################################################################################\r
1313#\r
1314# Microsoft Visual Studio 2015\r
1315#\r
1316# VS2015 - Microsoft Visual Studio 2015 Professional Edition with Intel ASL\r
1317# ASL - Intel ACPI Source Language Compiler\r
1318####################################################################################\r
1319# VS2015 - Microsoft Visual Studio 2015 Professional Edition\r
1320*_VS2015_*_*_FAMILY = MSFT\r
1321\r
1322*_VS2015_*_MAKE_PATH = DEF(VS2015_BIN)\nmake.exe\r
1323*_VS2015_*_MAKE_FLAGS = /nologo\r
1324*_VS2015_*_RC_PATH = DEF(WINSDK81_BIN)\rc.exe\r
1325\r
1326*_VS2015_*_SLINK_FLAGS = /NOLOGO /LTCG\r
1327*_VS2015_*_APP_FLAGS = /nologo /E /TC\r
1328*_VS2015_*_PP_FLAGS = /nologo /E /TC /FIAutoGen.h\r
1329*_VS2015_*_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h\r
578211b8 1330*_VS2015_*_DLINK2_FLAGS =\r
13c5e34a 1331*_VS2015_*_DEPS_FLAGS = DEF(MSFT_DEPS_FLAGS)\r
5d9cd24e
WY
1332*_VS2015_*_ASM16_PATH = DEF(VS2015_BIN)\ml.exe\r
1333\r
1334##################\r
1335# ASL definitions\r
1336##################\r
1337*_VS2015_*_ASL_PATH = DEF(DEFAULT_WIN_ASL_BIN)\r
1338*_VS2015_*_ASL_FLAGS = DEF(DEFAULT_WIN_ASL_FLAGS)\r
1339*_VS2015_*_ASL_OUTFLAGS = DEF(DEFAULT_WIN_ASL_OUTFLAGS)\r
1340*_VS2015_*_ASLCC_FLAGS = DEF(MSFT_ASLCC_FLAGS)\r
1341*_VS2015_*_ASLPP_FLAGS = DEF(MSFT_ASLPP_FLAGS)\r
1342*_VS2015_*_ASLDLINK_FLAGS = DEF(MSFT_ASLDLINK_FLAGS)\r
1343\r
1344##################\r
1345# IA32 definitions\r
1346##################\r
1347*_VS2015_IA32_*_DLL = DEF(VS2015_DLL)\r
1348\r
5d9cd24e
WY
1349*_VS2015_IA32_CC_PATH = DEF(VS2015_BIN)\cl.exe\r
1350*_VS2015_IA32_VFRPP_PATH = DEF(VS2015_BIN)\cl.exe\r
1351*_VS2015_IA32_SLINK_PATH = DEF(VS2015_BIN)\lib.exe\r
1352*_VS2015_IA32_DLINK_PATH = DEF(VS2015_BIN)\link.exe\r
1353*_VS2015_IA32_APP_PATH = DEF(VS2015_BIN)\cl.exe\r
1354*_VS2015_IA32_PP_PATH = DEF(VS2015_BIN)\cl.exe\r
1355*_VS2015_IA32_ASM_PATH = DEF(VS2015_BIN)\ml.exe\r
1356*_VS2015_IA32_ASLCC_PATH = DEF(VS2015_BIN)\cl.exe\r
1357*_VS2015_IA32_ASLPP_PATH = DEF(VS2015_BIN)\cl.exe\r
1358*_VS2015_IA32_ASLDLINK_PATH = DEF(VS2015_BIN)\link.exe\r
1359\r
13c5e34a
BF
1360 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
1361RELEASE_VS2015_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gw\r
1362NOOPT_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
1363\r
1364 DEBUG_VS2015_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi\r
1365RELEASE_VS2015_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd\r
1366NOOPT_VS2015_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi\r
1367\r
1368 DEBUG_VS2015_IA32_NASM_FLAGS = -Ox -f win32 -g\r
1369RELEASE_VS2015_IA32_NASM_FLAGS = -Ox -f win32\r
1370NOOPT_VS2015_IA32_NASM_FLAGS = -O0 -f win32 -g\r
1371\r
1372 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
1373RELEASE_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
1374NOOPT_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
1375\r
1376##################\r
1377# X64 definitions\r
1378##################\r
1379*_VS2015_X64_*_DLL = DEF(VS2015_DLL)\r
1380\r
1381*_VS2015_X64_CC_PATH = DEF(VS2015_BINX64)\cl.exe\r
1382*_VS2015_X64_PP_PATH = DEF(VS2015_BINX64)\cl.exe\r
1383*_VS2015_X64_APP_PATH = DEF(VS2015_BINX64)\cl.exe\r
1384*_VS2015_X64_VFRPP_PATH = DEF(VS2015_BINX64)\cl.exe\r
1385*_VS2015_X64_ASM_PATH = DEF(VS2015_BINX64)\ml64.exe\r
1386*_VS2015_X64_SLINK_PATH = DEF(VS2015_BINX64)\lib.exe\r
1387*_VS2015_X64_DLINK_PATH = DEF(VS2015_BINX64)\link.exe\r
1388*_VS2015_X64_ASLCC_PATH = DEF(VS2015_BINX64)\cl.exe\r
1389*_VS2015_X64_ASLPP_PATH = DEF(VS2015_BINX64)\cl.exe\r
1390*_VS2015_X64_ASLDLINK_PATH = DEF(VS2015_BINX64)\link.exe\r
1391\r
13c5e34a
BF
1392 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
1393RELEASE_VS2015_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Gw\r
1394NOOPT_VS2015_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Z7 /Od\r
5d9cd24e
WY
1395\r
1396 DEBUG_VS2015_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi\r
1397RELEASE_VS2015_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd\r
1398NOOPT_VS2015_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi\r
1399\r
1400 DEBUG_VS2015_X64_NASM_FLAGS = -Ox -f win64 -g\r
1401RELEASE_VS2015_X64_NASM_FLAGS = -Ox -f win64\r
1402NOOPT_VS2015_X64_NASM_FLAGS = -O0 -f win64 -g\r
1403\r
1404 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
1405RELEASE_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
1406NOOPT_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
1407\r
1408##################\r
1409# EBC definitions\r
1410##################\r
1411*_VS2015_EBC_*_FAMILY = INTEL\r
1412*_VS2015_EBC_*_DLL = DEF(VS2015_DLL)\r
1413\r
5d9cd24e
WY
1414*_VS2015_EBC_PP_PATH = DEF(EBC_BIN)\iec.exe\r
1415*_VS2015_EBC_VFRPP_PATH = DEF(EBC_BIN)\iec.exe\r
1416*_VS2015_EBC_CC_PATH = DEF(EBC_BIN)\iec.exe\r
1417*_VS2015_EBC_SLINK_PATH = DEF(VS2015_BIN)\link.exe\r
1418*_VS2015_EBC_DLINK_PATH = DEF(VS2015_BIN)\link.exe\r
1419\r
5d9cd24e
WY
1420*_VS2015_EBC_PP_FLAGS = /nologo /E /TC /FIAutoGen.h\r
1421*_VS2015_EBC_CC_FLAGS = /nologo /c /WX /W3 /FIAutoGen.h /D$(MODULE_ENTRY_POINT)=$(ARCH_ENTRY_POINT)\r
1422*_VS2015_EBC_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h\r
1423*_VS2015_EBC_SLINK_FLAGS = /lib /NOLOGO /MACHINE:EBC\r
1424*_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
1425\r
1426\r
5d9cd24e
WY
1427####################################################################################\r
1428# VS2015x86 - Microsoft Visual Studio 2015 (x86) professional with Intel ASL\r
1429# ASL - Intel ACPI Source Language Compiler (iasl.exe)\r
1430####################################################################################\r
1431# VS2015x86 - Microsoft Visual Studio 2015 (x86) professional Edition with Intel ASL\r
1432*_VS2015x86_*_*_FAMILY = MSFT\r
1433\r
1434*_VS2015x86_*_MAKE_PATH = DEF(VS2015x86_BIN)\nmake.exe\r
4b59b22f 1435*_VS2015x86_*_MAKE_FLAGS = /nologo\r
5d9cd24e
WY
1436*_VS2015x86_*_RC_PATH = DEF(WINSDK81x86_BIN)\rc.exe\r
1437\r
5d9cd24e
WY
1438*_VS2015x86_*_SLINK_FLAGS = /NOLOGO /LTCG\r
1439*_VS2015x86_*_APP_FLAGS = /nologo /E /TC\r
1440*_VS2015x86_*_PP_FLAGS = /nologo /E /TC /FIAutoGen.h\r
1441*_VS2015x86_*_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h\r
578211b8 1442*_VS2015x86_*_DLINK2_FLAGS =\r
13c5e34a 1443*_VS2015x86_*_DEPS_FLAGS = DEF(MSFT_DEPS_FLAGS)\r
5d9cd24e
WY
1444*_VS2015x86_*_ASM16_PATH = DEF(VS2015x86_BIN)\ml.exe\r
1445\r
1446##################\r
1447# ASL definitions\r
1448##################\r
1449*_VS2015x86_*_ASL_PATH = DEF(WIN_IASL_BIN)\r
1450*_VS2015x86_*_ASL_FLAGS = DEF(DEFAULT_WIN_ASL_FLAGS)\r
1451*_VS2015x86_*_ASL_OUTFLAGS = DEF(DEFAULT_WIN_ASL_OUTFLAGS)\r
1452*_VS2015x86_*_ASLCC_FLAGS = DEF(MSFT_ASLCC_FLAGS)\r
1453*_VS2015x86_*_ASLPP_FLAGS = DEF(MSFT_ASLPP_FLAGS)\r
1454*_VS2015x86_*_ASLDLINK_FLAGS = DEF(MSFT_ASLDLINK_FLAGS)\r
1455\r
1456##################\r
1457# IA32 definitions\r
1458##################\r
1459*_VS2015x86_IA32_*_DLL = DEF(VS2015x86_DLL)\r
1460\r
5d9cd24e
WY
1461*_VS2015x86_IA32_CC_PATH = DEF(VS2015x86_BIN)\cl.exe\r
1462*_VS2015x86_IA32_VFRPP_PATH = DEF(VS2015x86_BIN)\cl.exe\r
1463*_VS2015x86_IA32_ASLCC_PATH = DEF(VS2015x86_BIN)\cl.exe\r
1464*_VS2015x86_IA32_ASLPP_PATH = DEF(VS2015x86_BIN)\cl.exe\r
1465*_VS2015x86_IA32_SLINK_PATH = DEF(VS2015x86_BIN)\lib.exe\r
1466*_VS2015x86_IA32_DLINK_PATH = DEF(VS2015x86_BIN)\link.exe\r
1467*_VS2015x86_IA32_ASLDLINK_PATH= DEF(VS2015x86_BIN)\link.exe\r
1468*_VS2015x86_IA32_APP_PATH = DEF(VS2015x86_BIN)\cl.exe\r
1469*_VS2015x86_IA32_PP_PATH = DEF(VS2015x86_BIN)\cl.exe\r
1470*_VS2015x86_IA32_ASM_PATH = DEF(VS2015x86_BIN)\ml.exe\r
1471\r
13c5e34a
BF
1472 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
1473RELEASE_VS2015x86_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gw\r
1474NOOPT_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
1475\r
1476 DEBUG_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi\r
1477RELEASE_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd\r
1478NOOPT_VS2015x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi\r
1479\r
1480 DEBUG_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32 -g\r
1481RELEASE_VS2015x86_IA32_NASM_FLAGS = -Ox -f win32\r
1482NOOPT_VS2015x86_IA32_NASM_FLAGS = -O0 -f win32 -g\r
1483\r
1484 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
1485RELEASE_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
1486NOOPT_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
1487\r
1488##################\r
1489# X64 definitions\r
1490##################\r
1491*_VS2015x86_X64_*_DLL = DEF(VS2015x86_DLL)\r
1492\r
1493*_VS2015x86_X64_CC_PATH = DEF(VS2015x86_BINX64)\cl.exe\r
1494*_VS2015x86_X64_PP_PATH = DEF(VS2015x86_BINX64)\cl.exe\r
1495*_VS2015x86_X64_APP_PATH = DEF(VS2015x86_BINX64)\cl.exe\r
1496*_VS2015x86_X64_VFRPP_PATH = DEF(VS2015x86_BINX64)\cl.exe\r
1497*_VS2015x86_X64_ASLCC_PATH = DEF(VS2015x86_BINX64)\cl.exe\r
1498*_VS2015x86_X64_ASLPP_PATH = DEF(VS2015x86_BINX64)\cl.exe\r
1499*_VS2015x86_X64_ASM_PATH = DEF(VS2015x86_BINX64)\ml64.exe\r
1500*_VS2015x86_X64_SLINK_PATH = DEF(VS2015x86_BINX64)\lib.exe\r
1501*_VS2015x86_X64_DLINK_PATH = DEF(VS2015x86_BINX64)\link.exe\r
1502*_VS2015x86_X64_ASLDLINK_PATH = DEF(VS2015x86_BINX64)\link.exe\r
1503\r
13c5e34a
BF
1504 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
1505RELEASE_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Gw\r
1506NOOPT_VS2015x86_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Z7 /Od\r
5d9cd24e
WY
1507\r
1508 DEBUG_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi\r
1509RELEASE_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd\r
1510NOOPT_VS2015x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi\r
1511\r
1512 DEBUG_VS2015x86_X64_NASM_FLAGS = -Ox -f win64 -g\r
1513RELEASE_VS2015x86_X64_NASM_FLAGS = -Ox -f win64\r
1514NOOPT_VS2015x86_X64_NASM_FLAGS = -O0 -f win64 -g\r
1515\r
1516 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
1517RELEASE_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
1518NOOPT_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
1519\r
1520##################\r
1521# EBC definitions\r
1522##################\r
1523*_VS2015x86_EBC_*_FAMILY = INTEL\r
1524*_VS2015x86_EBC_*_DLL = DEF(VS2015x86_DLL)\r
1525\r
5d9cd24e
WY
1526*_VS2015x86_EBC_PP_PATH = DEF(EBC_BINx86)\iec.exe\r
1527*_VS2015x86_EBC_VFRPP_PATH = DEF(EBC_BINx86)\iec.exe\r
1528*_VS2015x86_EBC_CC_PATH = DEF(EBC_BINx86)\iec.exe\r
1529*_VS2015x86_EBC_SLINK_PATH = DEF(VS2015x86_BIN)\link.exe\r
1530*_VS2015x86_EBC_DLINK_PATH = DEF(VS2015x86_BIN)\link.exe\r
1531\r
5d9cd24e
WY
1532*_VS2015x86_EBC_PP_FLAGS = /nologo /E /TC /FIAutoGen.h\r
1533*_VS2015x86_EBC_CC_FLAGS = /nologo /c /WX /W3 /FIAutoGen.h /D$(MODULE_ENTRY_POINT)=$(ARCH_ENTRY_POINT)\r
1534*_VS2015x86_EBC_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h\r
1535*_VS2015x86_EBC_SLINK_FLAGS = /lib /NOLOGO /MACHINE:EBC\r
1536*_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
1537\r
1538\r
1d0d1552
LG
1539####################################################################################\r
1540# VS2017 - Microsoft Visual Studio 2017 with Intel ASL\r
1541# ASL - Intel ACPI Source Language Compiler (iasl.exe)\r
1542####################################################################################\r
1543# VS2017 - Microsoft Visual Studio 2017 professional Edition with Intel ASL\r
1544*_VS2017_*_*_FAMILY = MSFT\r
1545*_VS2017_*_*_DLL = DEF(VS2017_BIN_HOST)\r
1546\r
1547*_VS2017_*_MAKE_PATH = DEF(VS2017_BIN_HOST)\nmake.exe\r
4b59b22f 1548*_VS2017_*_MAKE_FLAGS = /nologo\r
7569e35b 1549*_VS2017_*_RC_PATH = DEF(RC_PATH)\r
1d0d1552 1550\r
1d0d1552
LG
1551*_VS2017_*_SLINK_FLAGS = /NOLOGO /LTCG\r
1552*_VS2017_*_APP_FLAGS = /nologo /E /TC\r
1553*_VS2017_*_PP_FLAGS = /nologo /E /TC /FIAutoGen.h\r
1554*_VS2017_*_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h\r
1555*_VS2017_*_DLINK2_FLAGS = /WHOLEARCHIVE\r
1556*_VS2017_*_ASM16_PATH = DEF(VS2017_BIN_IA32)\ml.exe\r
13c5e34a 1557*_VS2017_*_DEPS_FLAGS = DEF(MSFT_DEPS_FLAGS)\r
1d0d1552
LG
1558##################\r
1559# ASL definitions\r
1560##################\r
1561*_VS2017_*_ASL_PATH = DEF(WIN_IASL_BIN)\r
1562*_VS2017_*_ASL_FLAGS = DEF(DEFAULT_WIN_ASL_FLAGS)\r
1563*_VS2017_*_ASL_OUTFLAGS = DEF(DEFAULT_WIN_ASL_OUTFLAGS)\r
1564*_VS2017_*_ASLCC_FLAGS = DEF(MSFT_ASLCC_FLAGS)\r
1565*_VS2017_*_ASLPP_FLAGS = DEF(MSFT_ASLPP_FLAGS)\r
1566*_VS2017_*_ASLDLINK_FLAGS = DEF(MSFT_ASLDLINK_FLAGS)\r
1567\r
1568##################\r
1569# IA32 definitions\r
1570##################\r
1571*_VS2017_IA32_CC_PATH = DEF(VS2017_BIN_IA32)\cl.exe\r
1572*_VS2017_IA32_VFRPP_PATH = DEF(VS2017_BIN_IA32)\cl.exe\r
1573*_VS2017_IA32_ASLCC_PATH = DEF(VS2017_BIN_IA32)\cl.exe\r
1574*_VS2017_IA32_ASLPP_PATH = DEF(VS2017_BIN_IA32)\cl.exe\r
1575*_VS2017_IA32_SLINK_PATH = DEF(VS2017_BIN_IA32)\lib.exe\r
1576*_VS2017_IA32_DLINK_PATH = DEF(VS2017_BIN_IA32)\link.exe\r
1577*_VS2017_IA32_ASLDLINK_PATH= DEF(VS2017_BIN_IA32)\link.exe\r
1578*_VS2017_IA32_APP_PATH = DEF(VS2017_BIN_IA32)\cl.exe\r
1579*_VS2017_IA32_PP_PATH = DEF(VS2017_BIN_IA32)\cl.exe\r
1580*_VS2017_IA32_ASM_PATH = DEF(VS2017_BIN_IA32)\ml.exe\r
1581\r
13c5e34a
BF
1582 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
1583RELEASE_VS2017_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gw\r
1584NOOPT_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
1585\r
1586 DEBUG_VS2017_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi\r
1587RELEASE_VS2017_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd\r
1588NOOPT_VS2017_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi\r
1589\r
1590 DEBUG_VS2017_IA32_NASM_FLAGS = -Ox -f win32 -g\r
1591RELEASE_VS2017_IA32_NASM_FLAGS = -Ox -f win32\r
1592NOOPT_VS2017_IA32_NASM_FLAGS = -O0 -f win32 -g\r
1593\r
1594 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
1595RELEASE_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
1596NOOPT_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
1597\r
1598##################\r
1599# X64 definitions\r
1600##################\r
1601*_VS2017_X64_CC_PATH = DEF(VS2017_BIN_X64)\cl.exe\r
1602*_VS2017_X64_PP_PATH = DEF(VS2017_BIN_X64)\cl.exe\r
1603*_VS2017_X64_APP_PATH = DEF(VS2017_BIN_X64)\cl.exe\r
1604*_VS2017_X64_VFRPP_PATH = DEF(VS2017_BIN_X64)\cl.exe\r
1605*_VS2017_X64_ASLCC_PATH = DEF(VS2017_BIN_X64)\cl.exe\r
1606*_VS2017_X64_ASLPP_PATH = DEF(VS2017_BIN_X64)\cl.exe\r
1607*_VS2017_X64_ASM_PATH = DEF(VS2017_BIN_X64)\ml64.exe\r
1608*_VS2017_X64_SLINK_PATH = DEF(VS2017_BIN_X64)\lib.exe\r
1609*_VS2017_X64_DLINK_PATH = DEF(VS2017_BIN_X64)\link.exe\r
1610*_VS2017_X64_ASLDLINK_PATH = DEF(VS2017_BIN_X64)\link.exe\r
1611\r
13c5e34a
BF
1612 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
1613RELEASE_VS2017_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Gw\r
1614NOOPT_VS2017_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Z7 /Od\r
1d0d1552
LG
1615\r
1616 DEBUG_VS2017_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi\r
1617RELEASE_VS2017_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd\r
1618NOOPT_VS2017_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi\r
1619\r
1620 DEBUG_VS2017_X64_NASM_FLAGS = -Ox -f win64 -g\r
1621RELEASE_VS2017_X64_NASM_FLAGS = -Ox -f win64\r
1622NOOPT_VS2017_X64_NASM_FLAGS = -O0 -f win64 -g\r
1623\r
e0fb2d3e
LG
1624 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
1625RELEASE_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
1626NOOPT_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 1627\r
0a4c903c
PB
1628#################\r
1629# ARM definitions\r
1630#################\r
1631*_VS2017_ARM_CC_PATH = DEF(VS2017_BIN_ARM)\cl.exe\r
1632*_VS2017_ARM_VFRPP_PATH = DEF(VS2017_BIN_ARM)\cl.exe\r
1633*_VS2017_ARM_SLINK_PATH = DEF(VS2017_BIN_ARM)\lib.exe\r
1634*_VS2017_ARM_DLINK_PATH = DEF(VS2017_BIN_ARM)\link.exe\r
1635*_VS2017_ARM_APP_PATH = DEF(VS2017_BIN_ARM)\cl.exe\r
1636*_VS2017_ARM_PP_PATH = DEF(VS2017_BIN_ARM)\cl.exe\r
1637*_VS2017_ARM_ASM_PATH = DEF(VS2017_BIN_ARM)\armasm.exe\r
1638*_VS2017_ARM_ASLCC_PATH = DEF(VS2017_BIN_ARM)\cl.exe\r
1639*_VS2017_ARM_ASLPP_PATH = DEF(VS2017_BIN_ARM)\cl.exe\r
1640*_VS2017_ARM_ASLDLINK_PATH = DEF(VS2017_BIN_ARM)\link.exe\r
1641\r
b1357a40 1642 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 1643RELEASE_VS2017_ARM_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gw /Oi-\r
b1357a40 1644NOOPT_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
1645\r
1646 DEBUG_VS2017_ARM_ASM_FLAGS = /nologo /g\r
1647RELEASE_VS2017_ARM_ASM_FLAGS = /nologo\r
1648NOOPT_VS2017_ARM_ASM_FLAGS = /nologo\r
1649\r
1650 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
1651RELEASE_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
1652NOOPT_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
1653\r
5aef7ba3
PB
1654#####################\r
1655# AARCH64 definitions\r
1656#####################\r
1657*_VS2017_AARCH64_CC_PATH = DEF(VS2017_BIN_AARCH64)\cl.exe\r
1658*_VS2017_AARCH64_VFRPP_PATH = DEF(VS2017_BIN_AARCH64)\cl.exe\r
1659*_VS2017_AARCH64_SLINK_PATH = DEF(VS2017_BIN_AARCH64)\lib.exe\r
1660*_VS2017_AARCH64_DLINK_PATH = DEF(VS2017_BIN_AARCH64)\link.exe\r
1661*_VS2017_AARCH64_APP_PATH = DEF(VS2017_BIN_AARCH64)\cl.exe\r
1662*_VS2017_AARCH64_PP_PATH = DEF(VS2017_BIN_AARCH64)\cl.exe\r
1663*_VS2017_AARCH64_ASM_PATH = DEF(VS2017_BIN_AARCH64)\armasm64.exe\r
1664*_VS2017_AARCH64_ASLCC_PATH = DEF(VS2017_BIN_AARCH64)\cl.exe\r
1665*_VS2017_AARCH64_ASLPP_PATH = DEF(VS2017_BIN_AARCH64)\cl.exe\r
1666*_VS2017_AARCH64_ASLDLINK_PATH = DEF(VS2017_BIN_AARCH64)\link.exe\r
1667\r
b1357a40 1668 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 1669RELEASE_VS2017_AARCH64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gw /Oi-\r
b1357a40 1670NOOPT_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
1671\r
1672 DEBUG_VS2017_AARCH64_ASM_FLAGS = /nologo /g\r
1673RELEASE_VS2017_AARCH64_ASM_FLAGS = /nologo\r
1674NOOPT_VS2017_AARCH64_ASM_FLAGS = /nologo\r
1675\r
1676 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
1677RELEASE_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
1678NOOPT_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
1679\r
1d0d1552
LG
1680##################\r
1681# EBC definitions\r
1682##################\r
1683*_VS2017_EBC_*_FAMILY = INTEL\r
1684\r
1685*_VS2017_EBC_PP_PATH = DEF(EBC_BINx86)\iec.exe\r
1686*_VS2017_EBC_VFRPP_PATH = DEF(EBC_BINx86)\iec.exe\r
1687*_VS2017_EBC_CC_PATH = DEF(EBC_BINx86)\iec.exe\r
1688*_VS2017_EBC_SLINK_PATH = DEF(VS2017_BIN_IA32)\link.exe\r
1689*_VS2017_EBC_DLINK_PATH = DEF(VS2017_BIN_IA32)\link.exe\r
1690\r
1d0d1552
LG
1691*_VS2017_EBC_PP_FLAGS = /nologo /E /TC /FIAutoGen.h\r
1692*_VS2017_EBC_CC_FLAGS = /nologo /c /WX /W3 /FIAutoGen.h /D$(MODULE_ENTRY_POINT)=$(ARCH_ENTRY_POINT)\r
1693*_VS2017_EBC_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h\r
1694*_VS2017_EBC_SLINK_FLAGS = /lib /NOLOGO /MACHINE:EBC\r
1695*_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
1696\r
7a25b3da
CCJ
1697####################################################################################\r
1698# VS2019 - Microsoft Visual Studio 2019 with Intel ASL\r
1699# ASL - Intel ACPI Source Language Compiler (iasl.exe)\r
1700####################################################################################\r
1701# VS2019 - Microsoft Visual Studio 2017 professional Edition with Intel ASL\r
1702*_VS2019_*_*_FAMILY = MSFT\r
1703*_VS2019_*_*_DLL = DEF(VS2019_BIN_HOST)\r
1704\r
1705*_VS2019_*_MAKE_PATH = DEF(VS2019_BIN_HOST)\nmake.exe\r
4b59b22f 1706*_VS2019_*_MAKE_FLAGS = /nologo\r
7569e35b 1707*_VS2019_*_RC_PATH = DEF(RC_PATH)\r
7a25b3da 1708\r
7a25b3da
CCJ
1709*_VS2019_*_SLINK_FLAGS = /NOLOGO /LTCG\r
1710*_VS2019_*_APP_FLAGS = /nologo /E /TC\r
1711*_VS2019_*_PP_FLAGS = /nologo /E /TC /FIAutoGen.h\r
1712*_VS2019_*_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h\r
1713*_VS2019_*_DLINK2_FLAGS = /WHOLEARCHIVE\r
1714*_VS2019_*_ASM16_PATH = DEF(VS2019_BIN_IA32)\ml.exe\r
13c5e34a 1715*_VS2019_*_DEPS_FLAGS = DEF(MSFT_DEPS_FLAGS)\r
7a25b3da
CCJ
1716##################\r
1717# ASL definitions\r
1718##################\r
1719*_VS2019_*_ASL_PATH = DEF(WIN_IASL_BIN)\r
1720*_VS2019_*_ASL_FLAGS = DEF(DEFAULT_WIN_ASL_FLAGS)\r
1721*_VS2019_*_ASL_OUTFLAGS = DEF(DEFAULT_WIN_ASL_OUTFLAGS)\r
1722*_VS2019_*_ASLCC_FLAGS = DEF(MSFT_ASLCC_FLAGS)\r
1723*_VS2019_*_ASLPP_FLAGS = DEF(MSFT_ASLPP_FLAGS)\r
1724*_VS2019_*_ASLDLINK_FLAGS = DEF(MSFT_ASLDLINK_FLAGS)\r
1725\r
1726##################\r
1727# IA32 definitions\r
1728##################\r
1729*_VS2019_IA32_CC_PATH = DEF(VS2019_BIN_IA32)\cl.exe\r
1730*_VS2019_IA32_VFRPP_PATH = DEF(VS2019_BIN_IA32)\cl.exe\r
1731*_VS2019_IA32_ASLCC_PATH = DEF(VS2019_BIN_IA32)\cl.exe\r
1732*_VS2019_IA32_ASLPP_PATH = DEF(VS2019_BIN_IA32)\cl.exe\r
1733*_VS2019_IA32_SLINK_PATH = DEF(VS2019_BIN_IA32)\lib.exe\r
1734*_VS2019_IA32_DLINK_PATH = DEF(VS2019_BIN_IA32)\link.exe\r
1735*_VS2019_IA32_ASLDLINK_PATH= DEF(VS2019_BIN_IA32)\link.exe\r
1736*_VS2019_IA32_APP_PATH = DEF(VS2019_BIN_IA32)\cl.exe\r
1737*_VS2019_IA32_PP_PATH = DEF(VS2019_BIN_IA32)\cl.exe\r
1738*_VS2019_IA32_ASM_PATH = DEF(VS2019_BIN_IA32)\ml.exe\r
1739\r
13c5e34a
BF
1740 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
1741RELEASE_VS2019_IA32_CC_FLAGS = /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gw\r
1742NOOPT_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
1743\r
1744 DEBUG_VS2019_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi\r
1745RELEASE_VS2019_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd\r
1746NOOPT_VS2019_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi\r
1747\r
1748 DEBUG_VS2019_IA32_NASM_FLAGS = -Ox -f win32 -g\r
1749RELEASE_VS2019_IA32_NASM_FLAGS = -Ox -f win32\r
1750NOOPT_VS2019_IA32_NASM_FLAGS = -O0 -f win32 -g\r
1751\r
1752 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
1753RELEASE_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
1754NOOPT_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
1755\r
1756##################\r
1757# X64 definitions\r
1758##################\r
1759*_VS2019_X64_CC_PATH = DEF(VS2019_BIN_X64)\cl.exe\r
1760*_VS2019_X64_PP_PATH = DEF(VS2019_BIN_X64)\cl.exe\r
1761*_VS2019_X64_APP_PATH = DEF(VS2019_BIN_X64)\cl.exe\r
1762*_VS2019_X64_VFRPP_PATH = DEF(VS2019_BIN_X64)\cl.exe\r
1763*_VS2019_X64_ASLCC_PATH = DEF(VS2019_BIN_X64)\cl.exe\r
1764*_VS2019_X64_ASLPP_PATH = DEF(VS2019_BIN_X64)\cl.exe\r
1765*_VS2019_X64_ASM_PATH = DEF(VS2019_BIN_X64)\ml64.exe\r
1766*_VS2019_X64_SLINK_PATH = DEF(VS2019_BIN_X64)\lib.exe\r
1767*_VS2019_X64_DLINK_PATH = DEF(VS2019_BIN_X64)\link.exe\r
1768*_VS2019_X64_ASLDLINK_PATH = DEF(VS2019_BIN_X64)\link.exe\r
1769\r
13c5e34a
BF
1770 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
1771RELEASE_VS2019_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Gw\r
1772NOOPT_VS2019_X64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Z7 /Od\r
7a25b3da
CCJ
1773\r
1774 DEBUG_VS2019_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi\r
1775RELEASE_VS2019_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd\r
1776NOOPT_VS2019_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi\r
1777\r
1778 DEBUG_VS2019_X64_NASM_FLAGS = -Ox -f win64 -g\r
1779RELEASE_VS2019_X64_NASM_FLAGS = -Ox -f win64\r
1780NOOPT_VS2019_X64_NASM_FLAGS = -O0 -f win64 -g\r
1781\r
1782 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
1783RELEASE_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
1784NOOPT_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
1785\r
1786#################\r
1787# ARM definitions\r
1788#################\r
1789*_VS2019_ARM_CC_PATH = DEF(VS2019_BIN_ARM)\cl.exe\r
1790*_VS2019_ARM_VFRPP_PATH = DEF(VS2019_BIN_ARM)\cl.exe\r
1791*_VS2019_ARM_SLINK_PATH = DEF(VS2019_BIN_ARM)\lib.exe\r
1792*_VS2019_ARM_DLINK_PATH = DEF(VS2019_BIN_ARM)\link.exe\r
1793*_VS2019_ARM_APP_PATH = DEF(VS2019_BIN_ARM)\cl.exe\r
1794*_VS2019_ARM_PP_PATH = DEF(VS2019_BIN_ARM)\cl.exe\r
1795*_VS2019_ARM_ASM_PATH = DEF(VS2019_BIN_ARM)\armasm.exe\r
1796*_VS2019_ARM_ASLCC_PATH = DEF(VS2019_BIN_ARM)\cl.exe\r
1797*_VS2019_ARM_ASLPP_PATH = DEF(VS2019_BIN_ARM)\cl.exe\r
1798*_VS2019_ARM_ASLDLINK_PATH = DEF(VS2019_BIN_ARM)\link.exe\r
1799\r
b1357a40 1800 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 1801RELEASE_VS2019_ARM_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gw /Oi-\r
b1357a40 1802NOOPT_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
1803\r
1804 DEBUG_VS2019_ARM_ASM_FLAGS = /nologo /g\r
1805RELEASE_VS2019_ARM_ASM_FLAGS = /nologo\r
1806NOOPT_VS2019_ARM_ASM_FLAGS = /nologo\r
1807\r
1808 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
1809RELEASE_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
1810NOOPT_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
1811\r
1812#####################\r
1813# AARCH64 definitions\r
1814#####################\r
1815*_VS2019_AARCH64_CC_PATH = DEF(VS2019_BIN_AARCH64)\cl.exe\r
1816*_VS2019_AARCH64_VFRPP_PATH = DEF(VS2019_BIN_AARCH64)\cl.exe\r
1817*_VS2019_AARCH64_SLINK_PATH = DEF(VS2019_BIN_AARCH64)\lib.exe\r
1818*_VS2019_AARCH64_DLINK_PATH = DEF(VS2019_BIN_AARCH64)\link.exe\r
1819*_VS2019_AARCH64_APP_PATH = DEF(VS2019_BIN_AARCH64)\cl.exe\r
1820*_VS2019_AARCH64_PP_PATH = DEF(VS2019_BIN_AARCH64)\cl.exe\r
1821*_VS2019_AARCH64_ASM_PATH = DEF(VS2019_BIN_AARCH64)\armasm64.exe\r
1822*_VS2019_AARCH64_ASLCC_PATH = DEF(VS2019_BIN_AARCH64)\cl.exe\r
1823*_VS2019_AARCH64_ASLPP_PATH = DEF(VS2019_BIN_AARCH64)\cl.exe\r
1824*_VS2019_AARCH64_ASLDLINK_PATH = DEF(VS2019_BIN_AARCH64)\link.exe\r
1825\r
b1357a40 1826 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 1827RELEASE_VS2019_AARCH64_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gw /Oi-\r
b1357a40 1828NOOPT_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
1829\r
1830 DEBUG_VS2019_AARCH64_ASM_FLAGS = /nologo /g\r
1831RELEASE_VS2019_AARCH64_ASM_FLAGS = /nologo\r
1832NOOPT_VS2019_AARCH64_ASM_FLAGS = /nologo\r
1833\r
1834 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
1835RELEASE_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
1836NOOPT_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
1837\r
1838##################\r
1839# EBC definitions\r
1840##################\r
1841*_VS2019_EBC_*_FAMILY = INTEL\r
1842\r
1843*_VS2019_EBC_PP_PATH = DEF(EBC_BINx86)\iec.exe\r
1844*_VS2019_EBC_VFRPP_PATH = DEF(EBC_BINx86)\iec.exe\r
1845*_VS2019_EBC_CC_PATH = DEF(EBC_BINx86)\iec.exe\r
1846*_VS2019_EBC_SLINK_PATH = DEF(VS2019_BIN_IA32)\link.exe\r
1847*_VS2019_EBC_DLINK_PATH = DEF(VS2019_BIN_IA32)\link.exe\r
1848\r
7a25b3da
CCJ
1849*_VS2019_EBC_PP_FLAGS = /nologo /E /TC /FIAutoGen.h\r
1850*_VS2019_EBC_CC_FLAGS = /nologo /c /WX /W3 /FIAutoGen.h /D$(MODULE_ENTRY_POINT)=$(ARCH_ENTRY_POINT)\r
1851*_VS2019_EBC_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h\r
1852*_VS2019_EBC_SLINK_FLAGS = /lib /NOLOGO /MACHINE:EBC\r
1853*_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
1854\r
3b6c90a1 1855####################################################################################\r
1856# GCC Common\r
1857####################################################################################\r
1858\r
1859*_*_*_OBJCOPY_PATH = echo\r
1860*_*_*_OBJCOPY_FLAGS = objcopy not needed for\r
1861*_*_*_SYMRENAME_PATH = echo\r
1862*_*_*_SYMRENAME_FLAGS = Symbol renaming not needed for\r
0a0ca787 1863DEBUG_*_*_OBJCOPY_ADDDEBUGFLAG = --add-gnu-debuglink=$(DEBUG_DIR)/$(MODULE_NAME).debug\r
0d2711a6 1864RELEASE_*_*_OBJCOPY_ADDDEBUGFLAG =\r
4b8234d0 1865NOOPT_*_*_OBJCOPY_ADDDEBUGFLAG = --add-gnu-debuglink=$(DEBUG_DIR)/$(MODULE_NAME).debug\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
4b56ad20
LG
2835# Clang 8.0.0 - This configuration is used to compile under Windows, Linux, Mac to\r
2836# produce ELF image, and convert to PE/COFF image using LLVM/CLANG 8.0 with LTO\r
2837#\r
2838####################################################################################\r
2839*_CLANG8ELF_*_*_FAMILY = GCC\r
2840*_CLANG8ELF_*_*_BUILDRULEFAMILY = CLANGGCC\r
2841*_CLANG8ELF_*_MAKE_PATH = ENV(CLANG_HOST_BIN)make\r
2842*_CLANG8ELF_*_*_DLL = ENV(CLANG8_DLL)\r
2843*_CLANG8ELF_*_ASL_PATH = DEF(UNIX_IASL_BIN)\r
2844\r
2845*_CLANG8ELF_*_APP_FLAGS =\r
2846*_CLANG8ELF_*_ASL_FLAGS = DEF(IASL_FLAGS)\r
2847*_CLANG8ELF_*_ASL_OUTFLAGS = DEF(IASL_OUTFLAGS)\r
2848\r
2849DEFINE CLANG8ELF_IA32_PREFIX = ENV(CLANG8_BIN)\r
2850DEFINE CLANG8ELF_X64_PREFIX = ENV(CLANG8_BIN)\r
2851\r
2852# LLVM/CLANG doesn't support -n link option. So, it can't share the same IA32_X64_DLINK_COMMON flag.\r
2853# LLVM/CLANG doesn't support common page size. So, it can't share the same GccBase.lds script.\r
2854DEFINE CLANG8ELF_IA32_X64_DLINK_COMMON = -nostdlib -Wl,-q,--gc-sections -z max-page-size=0x40\r
2855DEFINE CLANG8ELF_DLINK2_FLAGS_COMMON = -Wl,--script=$(EDK_TOOLS_PATH)/Scripts/ClangBase.lds\r
2856DEFINE CLANG8ELF_IA32_X64_ASLDLINK_FLAGS = DEF(CLANG8ELF_IA32_X64_DLINK_COMMON) -Wl,--defsym=PECOFF_HEADER_SIZE=0 DEF(CLANG8ELF_DLINK2_FLAGS_COMMON) -Wl,--entry,ReferenceAcpiTable -u ReferenceAcpiTable\r
2857DEFINE CLANG8ELF_IA32_X64_DLINK_FLAGS = DEF(CLANG8ELF_IA32_X64_DLINK_COMMON) -Wl,--entry,$(IMAGE_ENTRY_POINT) -u $(IMAGE_ENTRY_POINT) -Wl,-Map,$(DEST_DIR_DEBUG)/$(BASE_NAME).map,--whole-archive\r
2858DEFINE CLANG8ELF_IA32_DLINK2_FLAGS = -Wl,--defsym=PECOFF_HEADER_SIZE=0x220 DEF(CLANG8ELF_DLINK2_FLAGS_COMMON)\r
2859DEFINE CLANG8ELF_X64_DLINK2_FLAGS = -Wl,--defsym=PECOFF_HEADER_SIZE=0x228 DEF(CLANG8ELF_DLINK2_FLAGS_COMMON)\r
2860\r
2861###########################\r
2862# CLANG8ELF IA32 definitions\r
2863###########################\r
2864*_CLANG8ELF_IA32_CC_PATH = DEF(CLANG8ELF_IA32_PREFIX)clang\r
2865*_CLANG8ELF_IA32_SLINK_PATH = DEF(CLANG8ELF_IA32_PREFIX)llvm-ar\r
2866*_CLANG8ELF_IA32_DLINK_PATH = DEF(CLANG8ELF_IA32_PREFIX)clang\r
2867*_CLANG8ELF_IA32_ASLDLINK_PATH = DEF(CLANG8ELF_IA32_PREFIX)clang\r
2868*_CLANG8ELF_IA32_ASM_PATH = DEF(CLANG8ELF_IA32_PREFIX)clang\r
2869*_CLANG8ELF_IA32_PP_PATH = DEF(CLANG8ELF_IA32_PREFIX)clang\r
2870*_CLANG8ELF_IA32_VFRPP_PATH = DEF(CLANG8ELF_IA32_PREFIX)clang\r
2871*_CLANG8ELF_IA32_ASLCC_PATH = DEF(CLANG8ELF_IA32_PREFIX)clang\r
2872*_CLANG8ELF_IA32_ASLPP_PATH = DEF(CLANG8ELF_IA32_PREFIX)clang\r
2873*_CLANG8ELF_IA32_RC_PATH = DEF(CLANG8ELF_IA32_PREFIX)llvm-rc\r
2874\r
2875*_CLANG8ELF_IA32_ASLCC_FLAGS = DEF(GCC_ASLCC_FLAGS) -m32 -fno-lto DEF(CLANG38_IA32_TARGET)\r
2876*_CLANG8ELF_IA32_ASLDLINK_FLAGS = DEF(CLANG8ELF_IA32_X64_ASLDLINK_FLAGS) -Wl,-m,elf_i386 -fuse-ld=lld\r
2877*_CLANG8ELF_IA32_ASM_FLAGS = DEF(GCC5_ASM_FLAGS) -m32 -march=i386 DEF(CLANG38_IA32_TARGET)\r
2878*_CLANG8ELF_IA32_RC_FLAGS = DEF(GCC_IA32_RC_FLAGS)\r
2879*_CLANG8ELF_IA32_OBJCOPY_FLAGS =\r
2880*_CLANG8ELF_IA32_NASM_FLAGS = -f elf32\r
2881*_CLANG8ELF_IA32_PP_FLAGS = DEF(GCC_PP_FLAGS) DEF(CLANG38_IA32_TARGET)\r
2882*_CLANG8ELF_IA32_ASLPP_FLAGS = DEF(GCC_ASLPP_FLAGS) DEF(CLANG38_IA32_TARGET)\r
2883*_CLANG8ELF_IA32_VFRPP_FLAGS = DEF(GCC_VFRPP_FLAGS) DEF(CLANG38_IA32_TARGET)\r
2884\r
2885DEBUG_CLANG8ELF_IA32_CC_FLAGS = DEF(CLANG38_ALL_CC_FLAGS) -m32 -Oz -flto -march=i586 DEF(CLANG38_IA32_TARGET) -g\r
2886DEBUG_CLANG8ELF_IA32_DLINK_FLAGS = DEF(CLANG8ELF_IA32_X64_DLINK_FLAGS) -flto -Wl,-O3 -Wl,-melf_i386 -Wl,--oformat,elf32-i386\r
2887DEBUG_CLANG8ELF_IA32_DLINK2_FLAGS = DEF(CLANG8ELF_IA32_DLINK2_FLAGS) -O3 -fuse-ld=lld\r
2888\r
2889RELEASE_CLANG8ELF_IA32_CC_FLAGS = DEF(CLANG38_ALL_CC_FLAGS) -m32 -Oz -flto -march=i586 DEF(CLANG38_IA32_TARGET)\r
2890RELEASE_CLANG8ELF_IA32_DLINK_FLAGS = DEF(CLANG8ELF_IA32_X64_DLINK_FLAGS) -flto -Wl,-O3 -Wl,-melf_i386 -Wl,--oformat,elf32-i386\r
2891RELEASE_CLANG8ELF_IA32_DLINK2_FLAGS = DEF(CLANG8ELF_IA32_DLINK2_FLAGS) -O3 -fuse-ld=lld\r
2892\r
2893NOOPT_CLANG8ELF_IA32_CC_FLAGS = DEF(CLANG38_ALL_CC_FLAGS) -m32 -O0 -march=i586 DEF(CLANG38_IA32_TARGET) -g\r
2894NOOPT_CLANG8ELF_IA32_DLINK_FLAGS = DEF(CLANG8ELF_IA32_X64_DLINK_FLAGS) -Wl,-O0 -Wl,-melf_i386 -Wl,--oformat,elf32-i386\r
2895NOOPT_CLANG8ELF_IA32_DLINK2_FLAGS = DEF(CLANG8ELF_IA32_DLINK2_FLAGS) -O0 -fuse-ld=lld\r
2896\r
2897##########################\r
2898# CLANG8ELF X64 definitions\r
2899##########################\r
2900*_CLANG8ELF_X64_CC_PATH = DEF(CLANG8ELF_X64_PREFIX)clang\r
2901*_CLANG8ELF_X64_SLINK_PATH = DEF(CLANG8ELF_X64_PREFIX)llvm-ar\r
2902*_CLANG8ELF_X64_DLINK_PATH = DEF(CLANG8ELF_X64_PREFIX)clang\r
2903*_CLANG8ELF_X64_ASLDLINK_PATH = DEF(CLANG8ELF_X64_PREFIX)clang\r
2904*_CLANG8ELF_X64_ASM_PATH = DEF(CLANG8ELF_X64_PREFIX)clang\r
2905*_CLANG8ELF_X64_PP_PATH = DEF(CLANG8ELF_X64_PREFIX)clang\r
2906*_CLANG8ELF_X64_VFRPP_PATH = DEF(CLANG8ELF_X64_PREFIX)clang\r
2907*_CLANG8ELF_X64_ASLCC_PATH = DEF(CLANG8ELF_X64_PREFIX)clang\r
2908*_CLANG8ELF_X64_ASLPP_PATH = DEF(CLANG8ELF_X64_PREFIX)clang\r
2909*_CLANG8ELF_X64_RC_PATH = DEF(CLANG8ELF_X64_PREFIX)llvm-rc\r
2910\r
2911*_CLANG8ELF_X64_ASLCC_FLAGS = DEF(GCC_ASLCC_FLAGS) -m64 -fno-lto DEF(CLANG38_X64_TARGET)\r
2912*_CLANG8ELF_X64_ASLDLINK_FLAGS = DEF(CLANG8ELF_IA32_X64_ASLDLINK_FLAGS) -Wl,-m,elf_x86_64 -fuse-ld=lld\r
2913*_CLANG8ELF_X64_ASM_FLAGS = DEF(GCC5_ASM_FLAGS) -m64 DEF(CLANG38_X64_TARGET)\r
2914*_CLANG8ELF_X64_RC_FLAGS = DEF(GCC_X64_RC_FLAGS)\r
2915*_CLANG8ELF_X64_OBJCOPY_FLAGS =\r
2916*_CLANG8ELF_X64_NASM_FLAGS = -f elf64\r
2917*_CLANG8ELF_X64_PP_FLAGS = DEF(GCC_PP_FLAGS) DEF(CLANG38_X64_TARGET)\r
2918*_CLANG8ELF_X64_ASLPP_FLAGS = DEF(GCC_ASLPP_FLAGS) DEF(CLANG38_X64_TARGET)\r
2919*_CLANG8ELF_X64_VFRPP_FLAGS = DEF(GCC_VFRPP_FLAGS) DEF(CLANG38_X64_TARGET)\r
2920\r
2921DEBUG_CLANG8ELF_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
2922DEBUG_CLANG8ELF_X64_DLINK_FLAGS = DEF(CLANG8ELF_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
2923DEBUG_CLANG8ELF_X64_DLINK2_FLAGS = DEF(CLANG8ELF_X64_DLINK2_FLAGS) -O3 -fuse-ld=lld\r
2924\r
2925RELEASE_CLANG8ELF_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
2926RELEASE_CLANG8ELF_X64_DLINK_FLAGS = DEF(CLANG8ELF_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
2927RELEASE_CLANG8ELF_X64_DLINK2_FLAGS = DEF(CLANG8ELF_X64_DLINK2_FLAGS) -O3 -fuse-ld=lld\r
2928\r
2929NOOPT_CLANG8ELF_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
2930NOOPT_CLANG8ELF_X64_DLINK_FLAGS = DEF(CLANG8ELF_IA32_X64_DLINK_FLAGS) -Wl,-O0 -Wl,-melf_x86_64 -Wl,--oformat,elf64-x86-64 -Wl,-pie -mcmodel=small -Wl,--apply-dynamic-relocs\r
2931NOOPT_CLANG8ELF_X64_DLINK2_FLAGS = DEF(CLANG8ELF_X64_DLINK2_FLAGS) -O0 -fuse-ld=lld\r
2932\r
9053bc51 2933#\r
4484f397
AF
2934#\r
2935# XCODE5 support\r
2936#\r
2937\r
2938*_XCODE5_*_*_FAMILY = GCC\r
2939*_XCODE5_*_*_BUILDRULEFAMILY = XCODE\r
2940\r
3e1d93c3
MK
2941#\r
2942# use xcode-select to change Xcode version of command line tools\r
2943#\r
2944*_XCODE5_*_MAKE_PATH = make\r
2945*_XCODE5_*_CC_PATH = clang\r
2946*_XCODE5_*_SLINK_PATH = libtool\r
2947*_XCODE5_*_DLINK_PATH = ld\r
2948*_XCODE5_*_ASM_PATH = as\r
2949*_XCODE5_*_PP_PATH = clang\r
2950*_XCODE5_*_VFRPP_PATH = clang\r
2951*_XCODE5_*_ASL_PATH = iasl\r
2952*_XCODE5_*_ASLCC_PATH = clang\r
2953*_XCODE5_*_ASLPP_PATH = clang\r
2954*_XCODE5_*_ASLDLINK_PATH = ld\r
2955*_XCODE5_*_DSYMUTIL_PATH = /usr/bin/dsymutil\r
2956*_XCODE5_*_MTOC_PATH = /usr/local/bin/mtoc\r
13c5e34a 2957*_XCODE5_*_DEPS_FLAGS = DEF(GCC_DEPS_FLAGS)\r
4484f397 2958\r
3e1d93c3
MK
2959##################\r
2960# ASL definitions\r
2961##################\r
2962*_XCODE5_*_ASLCC_FLAGS = -x c -save-temps -g -O0 -fshort-wchar -fno-strict-aliasing -Wall -Werror -Wno-missing-braces -c -include AutoGen.h\r
2963*_XCODE5_*_ASLDLINK_FLAGS = -e _ReferenceAcpiTable -preload -segalign 0x20 -pie -seg1addr 0x240 -read_only_relocs suppress -map $(DEST_DIR_DEBUG)/$(BASE_NAME).map\r
2964*_XCODE5_*_ASLPP_FLAGS = -x c -E -include AutoGen.h\r
2965*_XCODE5_*_ASL_FLAGS =\r
2966*_XCODE5_*_ASL_OUTFLAGS = DEF(IASL_OUTFLAGS)\r
2967\r
2968##################\r
2969# MTOC definitions\r
2970##################\r
4484f397
AF
2971\r
2972 DEBUG_XCODE5_*_MTOC_FLAGS = -align 0x20 -d $(DEBUG_DIR)/$(MODULE_NAME).dll\r
2973 NOOPT_XCODE5_*_MTOC_FLAGS = -align 0x20 -d $(DEBUG_DIR)/$(MODULE_NAME).dll\r
7381a662 2974RELEASE_XCODE5_*_MTOC_FLAGS = -align 0x20\r
4484f397 2975\r
4484f397
AF
2976####################\r
2977# IA-32 definitions\r
2978####################\r
2979 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
2980 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
2981RELEASE_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\r
2983*_XCODE5_IA32_SLINK_FLAGS = -static -o\r
2984 DEBUG_XCODE5_IA32_ASM_FLAGS = -arch i386 -g\r
2985 NOOPT_XCODE5_IA32_ASM_FLAGS = -arch i386 -g\r
7381a662 2986RELEASE_XCODE5_IA32_ASM_FLAGS = -arch i386\r
e5367bfb 2987 *_XCODE5_IA32_NASM_FLAGS = -f macho32\r
4484f397
AF
2988\r
2989\r
24a105a7 2990 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 2991RELEASE_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 2992 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 2993\r
4484f397
AF
2994##################\r
2995# X64 definitions\r
2996##################\r
2997 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
2998 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
2999RELEASE_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\r
3001*_XCODE5_X64_SLINK_FLAGS = -static -o\r
3002 DEBUG_XCODE5_X64_ASM_FLAGS = -arch x86_64 -g\r
3003 NOOPT_XCODE5_X64_ASM_FLAGS = -arch x86_64 -g\r
7381a662 3004RELEASE_XCODE5_X64_ASM_FLAGS = -arch x86_64\r
e5367bfb 3005 *_XCODE5_X64_NASM_FLAGS = -f macho64\r
7ab180bb
LG
3006*_XCODE5_*_PP_FLAGS = -E -x assembler-with-cpp -include AutoGen.h\r
3007*_XCODE5_*_VFRPP_FLAGS = -x c -E -P -DVFRCOMPILE -include $(MODULE_NAME)StrDefs.h\r
4484f397 3008\r
74c22c59
AF
3009 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
3010 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 3011RELEASE_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 3012\r
79b74a03
LG
3013####################################################################################\r
3014#\r
3015# RVCT Common\r
3016#\r
3017####################################################################################\r
3018\r
4afd3d04 3019DEFINE RVCT_ALL_ASM_FLAGS = --diag_suppress=1786 --diag_error=warning --apcs /interwork\r
d977ba44 3020DEFINE 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 3021DEFINE 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 3022\r
fd171542 3023####################################################################################\r
3024#\r
79b74a03 3025# ARM RealView Tools - Windows\r
fd171542 3026#\r
3027####################################################################################\r
79b74a03 3028# RVCT - Tools from ARM\r
fd171542 3029\r
79b74a03 3030*_RVCT_*_*_FAMILY = RVCT\r
fd171542 3031\r
3032#\r
3033# Use default values, or override in DSC file\r
3034#\r
f51461c8 3035*_RVCT_ARM_ARCHCC_FLAGS = --thumb --fpu=softvfp\r
7381a662
LE
3036*_RVCT_ARM_ARCHASM_FLAGS =\r
3037*_RVCT_ARM_ARCHDLINK_FLAGS =\r
79b74a03 3038*_RVCT_ARM_PLATFORM_FLAGS = --cpu 7-A\r
fd171542 3039\r
7381a662
LE
3040 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
3041RELEASE_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 3042\r
3043\r
4afd3d04 3044*_RVCT_ARM_ASM_FLAGS = $(ARCHASM_FLAGS) $(PLATFORM_FLAGS) DEF(RVCT_ALL_ASM_FLAGS)\r
8e18fbd7 3045*_RVCT_ARM_PP_FLAGS = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) -E --preinclude AutoGen.h\r
7ab180bb 3046*_RVCT_ARM_VFRPP_FLAGS = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) -E -DVFRCOMPILE --preinclude $(MODULE_NAME)StrDefs.h\r
79b74a03
LG
3047*_RVCT_ARM_MAKE_PATH = nmake /NOLOGO\r
3048*_RVCT_ARM_SLINK_FLAGS = --partial -o\r
3049 DEBUG_RVCT_ARM_CC_FLAGS = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) DEF(RVCT_ALL_CC_FLAGS) -O1 -g\r
4afd3d04 3050RELEASE_RVCT_ARM_CC_FLAGS = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) --diag_suppress=550 DEF(RVCT_ALL_CC_FLAGS) -O2\r
fd171542 3051\r
3052##################\r
3053# ARM definitions\r
3054##################\r
79b74a03
LG
3055*_RVCT_ARM_CC_PATH = ENV(RVCT_TOOLS_PATH)armcc\r
3056*_RVCT_ARM_SLINK_PATH = ENV(RVCT_TOOLS_PATH)armlink\r
3057*_RVCT_ARM_DLINK_PATH = ENV(RVCT_TOOLS_PATH)armlink\r
3058*_RVCT_ARM_ASM_PATH = ENV(RVCT_TOOLS_PATH)armasm\r
3059*_RVCT_ARM_PP_PATH = ENV(RVCT_TOOLS_PATH)armcc\r
3060*_RVCT_ARM_VFRPP_PATH = ENV(RVCT_TOOLS_PATH)armcc\r
3061*_RVCT_ARM_FROMELF_PATH = ENV(RVCT_TOOLS_PATH)fromelf\r
fd171542 3062\r
3063####################################################################################\r
3064#\r
79b74a03 3065# ARM RealView Tools - Linux\r
fd171542 3066#\r
3067####################################################################################\r
79b74a03
LG
3068# RVCTLINUX - Tools from ARM in a Cygwin environment\r
3069*_RVCTLINUX_*_*_FAMILY = RVCT\r
3070*_RVCTLINUX_*_*_BUILDRULEFAMILY = RVCTLINUX\r
fd171542 3071\r
4afd3d04
LG
3072*_RVCTLINUX_*_MAKE_PATH = make\r
3073\r
79b74a03
LG
3074#\r
3075# Use default values, or override in DSC file\r
3076#\r
f51461c8 3077*_RVCTLINUX_ARM_ARCHCC_FLAGS = --thumb --fpu=softvfp\r
7381a662
LE
3078*_RVCTLINUX_ARM_ARCHASM_FLAGS =\r
3079*_RVCTLINUX_ARM_ARCHDLINK_FLAGS =\r
79b74a03 3080*_RVCTLINUX_ARM_PLATFORM_FLAGS = --cpu 7-A\r
fd171542 3081\r
7381a662 3082DEBUG_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 3083RELEASE_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 3084\r
4afd3d04 3085*_RVCTLINUX_ARM_ASM_FLAGS = $(ARCHASM_FLAGS) $(PLATFORM_FLAGS) DEF(RVCT_ALL_ASM_FLAGS)\r
79b74a03 3086*_RVCTLINUX_ARM_PP_FLAGS = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) -E\r
7ab180bb 3087*_RVCTLINUX_ARM_VFRPP_FLAGS = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) -E -DVFRCOMPILE --preinclude $(MODULE_NAME)StrDefs.h\r
79b74a03
LG
3088*_RVCTLINUX_ARM_SLINK_FLAGS = --partial -o\r
3089 DEBUG_RVCTLINUX_ARM_CC_FLAGS = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) DEF(RVCT_ALL_CC_FLAGS) -O1 -g\r
4afd3d04 3090RELEASE_RVCTLINUX_ARM_CC_FLAGS = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) --diag_suppress=550 DEF(RVCT_ALL_CC_FLAGS) -O2\r
fd171542 3091\r
79b74a03
LG
3092##################\r
3093# ARM definitions\r
3094##################\r
3095*_RVCTLINUX_ARM_CC_PATH = ENV(RVCT_TOOLS_PATH)armcc\r
3096*_RVCTLINUX_ARM_SLINK_PATH = ENV(RVCT_TOOLS_PATH)armlink\r
3097*_RVCTLINUX_ARM_DLINK_PATH = ENV(RVCT_TOOLS_PATH)armlink\r
3098*_RVCTLINUX_ARM_ASM_PATH = ENV(RVCT_TOOLS_PATH)armasm\r
3099*_RVCTLINUX_ARM_PP_PATH = ENV(RVCT_TOOLS_PATH)armcc\r
3100*_RVCTLINUX_ARM_VFRPP_PATH = ENV(RVCT_TOOLS_PATH)armcc\r
3101*_RVCTLINUX_ARM_FROMELF_PATH = ENV(RVCT_TOOLS_PATH)fromelf\r
3102\r
3103####################################################################################\r
fd171542 3104#\r
79b74a03 3105# ARM RealView Tools - Cygwin\r
fd171542 3106#\r
79b74a03
LG
3107####################################################################################\r
3108# ARMCYGWIN - Tools from ARM in a Cygwin environment\r
3109\r
3110*_RVCTCYGWIN_*_*_FAMILY = RVCT\r
3111*_RVCTCYGWIN_*_*_BUILDRULEFAMILY = RVCTCYGWIN\r
fd171542 3112\r
79b74a03
LG
3113*_RVCTCYGWIN_ARM_CCPATH_FLAG = ENV(RVCT_TOOLS_PATH)armcc\r
3114*_RVCTCYGWIN_ARM_SLINKPATH_FLAG = ENV(RVCT_TOOLS_PATH)armlink\r
3115*_RVCTCYGWIN_ARM_DLINKPATH_FLAG = ENV(RVCT_TOOLS_PATH)armlink\r
3116*_RVCTCYGWIN_ARM_ASMPATH_FLAG = ENV(RVCT_TOOLS_PATH)armasm\r
3117*_RVCTCYGWIN_ARM_PPPATH_FLAG = ENV(RVCT_TOOLS_PATH)armcc\r
3118*_RVCTCYGWIN_ARM_VFRPPPATH_FLAG = ENV(RVCT_TOOLS_PATH)armcc\r
3119*_RVCTCYGWIN_ARM_FROMELFPATH_FLAG = ENV(RVCT_TOOLS_PATH)fromelf\r
fd171542 3120\r
79b74a03
LG
3121#\r
3122# Use default values, or override in DSC file\r
3123#\r
f51461c8 3124*_RVCTCYGWIN_ARM_ARCHCC_FLAGS = --thumb --fpu=softvfp\r
79b74a03 3125*_RVCTCYGWIN_ARM_ARCHASM_FLAGS =\r
7381a662 3126*_RVCTCYGWIN_ARM_ARCHDLINK_FLAGS =\r
79b74a03
LG
3127*_RVCTCYGWIN_ARM_PLATFORM_FLAGS = --cpu 7-A\r
3128\r
7381a662
LE
3129 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
3130RELEASE_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
3131\r
4afd3d04 3132*_RVCTCYGWIN_ARM_ASM_FLAGS = "$(ASMPATH_FLAG)" $(ARCHASM_FLAGS) $(PLATFORM_FLAGS) DEF(RVCT_ALL_ASM_FLAGS)\r
79b74a03 3133*_RVCTCYGWIN_ARM_PP_FLAGS = "$(CCPATH_FLAG)" $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) -E\r
7ab180bb 3134*_RVCTCYGWIN_ARM_VFRPP_FLAGS = "$(CCPATH_FLAG)" $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) -E -DVFRCOMPILE --preinclude `cygpath -m $(MODULE_NAME)StrDefs.h`\r
79b74a03
LG
3135*_RVCTCYGWIN_ARM_MAKE_PATH = make\r
3136*_RVCTCYGWIN_ARM_SLINK_FLAGS = "$(SLINKPATH_FLAG)" --partial -o\r
3137 DEBUG_RVCTCYGWIN_ARM_CC_FLAGS = "$(CCPATH_FLAG)" $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) DEF(RVCT_ALL_CC_FLAGS) -O1 -g\r
4afd3d04 3138RELEASE_RVCTCYGWIN_ARM_CC_FLAGS = "$(CCPATH_FLAG)" $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) --diag_suppress=550 DEF(RVCT_ALL_CC_FLAGS) -O2\r
fd171542 3139\r
3140##################\r
3141# ARM definitions\r
3142##################\r
79b74a03
LG
3143*_RVCTCYGWIN_ARM_CC_PATH = ENV(WORKSPACE)/BaseTools/Bin/CYGWIN_NT-5.1-i686/armcc_wrapper.py\r
3144*_RVCTCYGWIN_ARM_SLINK_PATH = ENV(WORKSPACE)/BaseTools/Bin/CYGWIN_NT-5.1-i686/armcc_wrapper.py\r
3145*_RVCTCYGWIN_ARM_DLINK_PATH = ENV(WORKSPACE)/BaseTools/Bin/CYGWIN_NT-5.1-i686/armcc_wrapper.py\r
3146*_RVCTCYGWIN_ARM_ASM_PATH = ENV(WORKSPACE)/BaseTools/Bin/CYGWIN_NT-5.1-i686/armcc_wrapper.py\r
3147*_RVCTCYGWIN_ARM_PP_PATH = ENV(WORKSPACE)/BaseTools/Bin/CYGWIN_NT-5.1-i686/armcc_wrapper.py\r
3148*_RVCTCYGWIN_ARM_VFRPP_PATH = ENV(WORKSPACE)/BaseTools/Bin/CYGWIN_NT-5.1-i686/armcc_wrapper.py\r
3149*_RVCTCYGWIN_ARM_FROMELF_PATH = ENV(WORKSPACE)/BaseTools/Bin/CYGWIN_NT-5.1-i686/armcc_wrapper.py\r
fd171542 3150\r
14c48571 3151#################\r
fb0b35e0 3152# ASM 16 linker definitions\r
14c48571 3153#################\r
3154*_*_*_ASMLINK_PATH = DEF(WINDDK_BIN16)\link16.exe\r
3155*_*_*_ASMLINK_FLAGS = /nologo /tiny\r
fd171542 3156\r
30962c77
LG
3157##################\r
3158# VfrCompiler definitions\r
3159##################\r
bdf37b3c 3160*_*_*_VFR_PATH = VfrCompile\r
30962c77 3161*_*_*_VFR_FLAGS = -l -n\r
a1c949f3 3162\r
15543340 3163##################\r
3164# OptionRom tool definitions\r
3165##################\r
3166*_*_*_OPTROM_PATH = EfiRom\r
3167*_*_*_OPTROM_FLAGS = -e\r
3168\r
e56468c0 3169##################\r
3170# GenFw tool definitions\r
3171##################\r
3172*_*_*_GENFW_PATH = GenFw\r
6780eef1 3173*_*_*_GENFW_FLAGS =\r
e56468c0 3174\r
a1c949f3
LG
3175##################\r
3176# Asl Compiler definitions\r
3177##################\r
6780eef1 3178*_*_*_ASLCC_FLAGS = /nologo /c /FIAutoGen.h /TC /Dmain=ReferenceAcpiTable\r
da92f276 3179*_*_*_ASLDLINK_FLAGS = /NODEFAULTLIB /ENTRY:ReferenceAcpiTable /SUBSYSTEM:CONSOLE\r
a1c949f3
LG
3180*_*_*_ASLPP_FLAGS = /nologo /EP /C\r
3181*_*_*_ASL_FLAGS =\r
abf1c3e4 3182\r
4234283c
LG
3183##################\r
3184# GenCrc32 tool definitions\r
3185##################\r
3186*_*_*_CRC32_PATH = GenCrc32\r
3187*_*_*_CRC32_GUID = FC1BCDB0-7D31-49AA-936A-A4600D9DD083\r
3188\r
65ce860e
MK
3189##################\r
3190# Rsa2048Sha256Sign tool definitions\r
3191#\r
fb0b35e0 3192# Notes: This tool definition uses a test signing key for development purposes only.\r
65ce860e
MK
3193# The tool Rsa2048Sha256GenerateKeys can be used to generate a new private/public key\r
3194# and the gEfiSecurityPkgTokenSpaceGuid.PcdRsa2048Sha256PublicKeyBuffer PCD value.\r
3195# A custom tool/script can be implemented using the new private/public key with\r
fb0b35e0 3196# the Rsa2048Sha256Sign tool and this tool definition can be updated to use a\r
65ce860e
MK
3197# custom tool/script.\r
3198#\r
3199# Generate new private/public key and gEfiSecurityPkgTokenSpaceGuid.PcdRsa2048Sha256PublicKeyBuffer PCD value\r
3200#\r
3201# Rsa2048Sha256GenerateKeys.py -o MyKey.pem --public-key-hash-c MyKey.pcd\r
3202#\r
3203# Custom script example (MyRsa2048Sha256Sign.cmd):\r
3204#\r
3205# Rsa2048Sha256Sign --private-key MyKey.pem %1 %2 %3 %4 %5 %6 %7 %8 %9\r
3206#\r
7381a662
LE
3207# WARNING: Vendors that uses private keys are responsible for proper management and protection\r
3208# of private keys. Vendors may choose to use infrastructure such as signing servers\r
65ce860e
MK
3209# or signing portals to support the management and protection of private keys.\r
3210#\r
3211##################\r
3212*_*_*_RSA2048SHA256SIGN_PATH = Rsa2048Sha256Sign\r
3213*_*_*_RSA2048SHA256SIGN_GUID = A7717414-C616-4977-9420-844712A735BF\r
3214\r
87d97b6a
SB
3215##################\r
3216# BrotliCompress tool definitions\r
3217##################\r
3218*_*_*_BROTLI_PATH = BrotliCompress\r
3219*_*_*_BROTLI_GUID = 3D532050-5CDA-4FD0-879E-0F7F630D5AFB\r
3220\r
2895c506 3221##################\r
c470d831 3222# LzmaCompress tool definitions\r
2895c506 3223##################\r
c470d831 3224*_*_*_LZMA_PATH = LzmaCompress\r
3225*_*_*_LZMA_GUID = EE4E5898-3914-4259-9D6E-DC7BD79403CF\r
3226\r
64b2609f
LG
3227##################\r
3228# LzmaF86Compress tool definitions with converter for x86 code.\r
3229# It can improve the compression ratio if the input file is IA32 or X64 PE image.\r
64b2609f
LG
3230##################\r
3231*_*_*_LZMAF86_PATH = LzmaF86Compress\r
3232*_*_*_LZMAF86_GUID = D42AE6BD-1352-4bfb-909A-CA72A6EAE889\r
3233\r
c470d831 3234##################\r
3235# TianoCompress tool definitions\r
3236##################\r
3237*_*_*_TIANO_PATH = TianoCompress\r
3238*_*_*_TIANO_GUID = A31280AD-481E-41B6-95E8-127F4C984779\r
3b6c90a1 3239\r
e56468c0 3240##################\r
3241# BPDG tool definitions\r
3242##################\r
3243*_*_*_VPDTOOL_PATH = BPDG\r
3244*_*_*_VPDTOOL_GUID = 8C3D856A-9BE6-468E-850A-24F7A8D38E08\r
65ce860e 3245\r
cd1c9604
YZ
3246##################\r
3247# Pkcs7Sign tool definitions\r
3248##################\r
3249*_*_*_PKCS7SIGN_PATH = Pkcs7Sign\r
3250*_*_*_PKCS7SIGN_GUID = 4AAFD29D-68DF-49EE-8AA9-347D375665A7\r
3251\r
abb158de
JJ
3252##################\r
3253# NASM tool definitions\r
3254##################\r
3255*_*_*_NASM_PATH = ENV(NASM_PREFIX)nasm\r
3256# NASMB uses NASM produce a .bin from a .nasmb NASM source file\r
3257*_*_*_NASMB_FLAGS = -f bin\r
ec22bede
YL
3258\r
3259#################\r
3260# Build rule order\r
3261#################\r
8853c2af 3262*_*_*_*_BUILDRULEORDER = nasm asm Asm ASM S s nasmb asm16\r