summaryrefslogtreecommitdiff
path: root/BaseTools/Conf/tools_def.template
diff options
context:
space:
mode:
Diffstat (limited to 'BaseTools/Conf/tools_def.template')
-rw-r--r--BaseTools/Conf/tools_def.template925
1 files changed, 875 insertions, 50 deletions
diff --git a/BaseTools/Conf/tools_def.template b/BaseTools/Conf/tools_def.template
index a82404a144..06e7d6596a 100644
--- a/BaseTools/Conf/tools_def.template
+++ b/BaseTools/Conf/tools_def.template
@@ -1,6 +1,7 @@
#
-# Copyright (c) 2006 - 2012, Intel Corporation. All rights reserved.<BR>
+# Copyright (c) 2006 - 2013, Intel Corporation. All rights reserved.<BR>
# Portions copyright (c) 2008 - 2009, Apple Inc. All rights reserved.<BR>
+# Portions copyright (c) 2011 - 2013, ARM Ltd. All rights reserved.<BR>
#
# This program and the accompanying materials
# are licensed and made available under the terms and conditions of the BSD License
@@ -47,6 +48,14 @@ DEFINE VS2010x86_DLL = C:\Program Files (x86)\Microsoft Visual Studio 10.0\Co
DEFINE VS2010x86_BINX64 = DEF(VS2010x86_BIN)\x86_amd64
DEFINE VS2010x86_BIN64 = DEF(VS2010x86_BIN)\x86_ia64
+DEFINE VS2012_BIN = C:\Program Files\Microsoft Visual Studio 11.0\Vc\bin
+DEFINE VS2012_DLL = C:\Program Files\Microsoft Visual Studio 11.0\Common7\IDE;DEF(VS2012_BIN)
+DEFINE VS2012_BINX64 = DEF(VS2012_BIN)\x86_amd64
+
+DEFINE VS2012x86_BIN = C:\Program Files (x86)\Microsoft Visual Studio 11.0\Vc\bin
+DEFINE VS2012x86_DLL = C:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\IDE;DEF(VS2012x86_BIN)
+DEFINE VS2012x86_BINX64 = DEF(VS2012x86_BIN)\x86_amd64
+
DEFINE WINSDK_VERSION = v6.0A
DEFINE WINSDK_BIN = c:\Program Files\Microsoft SDKs\Windows\DEF(WINSDK_VERSION)\bin
DEFINE WINSDKx86_BIN = c:\Program Files (x86)\Microsoft SDKs\Windows\DEF(WINSDK_VERSION)\bin
@@ -147,6 +156,9 @@ DEFINE GCC45_X64_PREFIX = /usr/bin/
DEFINE GCC46_IA32_PREFIX = /usr/bin/
DEFINE GCC46_X64_PREFIX = /usr/bin/
+DEFINE GCC47_IA32_PREFIX = /usr/bin/
+DEFINE GCC47_X64_PREFIX = /usr/bin/
+
DEFINE UNIX_IASL_BIN = /usr/bin/iasl
#DEFINE UNIX_IASL_BIN = $(HOME)/programs/iasl
DEFINE WIN_ASL_BIN_DIR = C:\ASL
@@ -244,6 +256,15 @@ DEFINE CLANG_BIN = /usr/bin/
# Required to build platforms or ACPI tables:
# Intel(r) ACPI Compiler (iasl.exe) v20101013 from
# http://www.acpica.org/downloads/previous_releases.php
+# VS2012 -win32- Requires:
+# Microsoft Visual Studio 2012 Professional Edition
+# Microsoft Windows Server 2003 Driver Development Kit (Microsoft WINDDK) version 3790.1830
+# Optional:
+# Required to build EBC drivers:
+# Intel(r) Compiler for Efi Byte Code (Intel(r) EBC Compiler)
+# Required to build platforms or ACPI tables:
+# Intel(r) ACPI Compiler (iasl.exe) v20101013 from
+# http://www.acpica.org/downloads/previous_releases.php
# DDK3790 -win32- Requires:
# Microsoft Windows Server 2003 Driver Development Kit (Microsoft WINDDK) version 3790.1830
# Optional:
@@ -277,6 +298,12 @@ DEFINE CLANG_BIN = /usr/bin/
# Required to build platforms or ACPI tables:
# Intel(r) ACPI Compiler v20101013 from
# http://www.acpica.org/downloads/previous_releases.php
+# GCC47 -Linux- Requires:
+# GCC 4.7 (Native)
+# Optional:
+# Required to build platforms or ACPI tables:
+# Intel(r) ACPI Compiler v20101013 from
+# http://www.acpica.org/downloads/previous_releases.php
# ELFGCC -Linux- Requires:
# GCC(this tool chain uses whatever version of gcc and binutils that is installed in /usr/bin)
# Optional:
@@ -361,6 +388,15 @@ DEFINE CLANG_BIN = /usr/bin/
# Required to build platforms or ACPI tables:
# Microsoft ASL ACPI Compiler (asl.exe) v4.0.0 from
# http://download.microsoft.com/download/2/c/1/2c16c7e0-96c1-40f5-81fc-3e4bf7b65496/microsoft_asl_compiler-v4-0-0.msi
+# VS2012xASL -win32- Requires:
+# Microsoft Visual Studio 2012 Professional Edition
+# Microsoft Windows Server 2003 Driver Development Kit (Microsoft WINDDK) version 3790.1830
+# Optional:
+# Required to build EBC drivers:
+# Intel(r) Compiler for Efi Byte Code (Intel(r) EBC Compiler)
+# Required to build platforms or ACPI tables:
+# Microsoft ASL ACPI Compiler (asl.exe) v4.0.0 from
+# http://download.microsoft.com/download/2/c/1/2c16c7e0-96c1-40f5-81fc-3e4bf7b65496/microsoft_asl_compiler-v4-0-0.msi
# DDK3790xASL -win32- Requires:
# Microsoft Windows Server 2003 Driver Development Kit (Microsoft WINDDK) version 3790.1830
# Optional:
@@ -425,6 +461,13 @@ DEFINE CLANG_BIN = /usr/bin/
# Required to build platforms or ACPI tables:
# Intel(r) ACPI Compiler (iasl.exe) v20101013 from
# http://www.acpica.org/downloads/previous_releases.php
+# VS2012x86 -win64- Requires:
+# Microsoft Visual Studio 2012 (x86) Professional Edition
+# Microsoft Windows Server 2003 Driver Development Kit (Microsoft WINDDK) version 3790.1830
+# Optional:
+# Required to build platforms or ACPI tables:
+# Intel(r) ACPI Compiler (iasl.exe) v20101013 from
+# http://www.acpica.org/downloads/previous_releases.php
# ICCx86 -win64- Requires:
# Intel C Compiler V9.1(x86)
# Dependencies:
@@ -472,6 +515,13 @@ DEFINE CLANG_BIN = /usr/bin/
# Required to build platforms or ACPI tables:
# Microsoft ASL ACPI Compiler (asl.exe) v4.0.0 from
# http://download.microsoft.com/download/2/c/1/2c16c7e0-96c1-40f5-81fc-3e4bf7b65496/microsoft_asl_compiler-v4-0-0.msi
+# VS2012x86xASL -win64- Requires:
+# Microsoft Visual Studio 2012 (x86) Professional Edition
+# Microsoft Windows Server 2003 Driver Development Kit(Microsoft WINDDK) version 3790.1830
+# Optional:
+# Required to build platforms or ACPI tables:
+# Microsoft ASL ACPI Compiler (asl.exe) v4.0.0 from
+# http://download.microsoft.com/download/2/c/1/2c16c7e0-96c1-40f5-81fc-3e4bf7b65496/microsoft_asl_compiler-v4-0-0.msi
# ICCx86xASL -win64- Requires:
# Intel C Compiler V9.1 (x86)
# Dependencies:
@@ -514,6 +564,32 @@ DEFINE CLANG_BIN = /usr/bin/
# Required to build platforms or ACPI tables:
# Microsoft ASL ACPI Compiler (asl.exe) v4.0.0 from
# http://download.microsoft.com/download/2/c/1/2c16c7e0-96c1-40f5-81fc-3e4bf7b65496/microsoft_asl_compiler-v4-0-0.msi
+# ARMGCC -unix- Requires:
+# ARM None EABI GCC 4.6.0
+# Optional:
+# Required to build platforms or ACPI tables:
+# Intel(r) ACPI Compiler v20101013 from
+# http://www.acpica.org/downloads/previous_releases.php
+# ARMLINUXGCC -unix- Requires:
+# ARM Linux GNU EABI GCC 4.6.0
+# Optional:
+# Required to build platforms or ACPI tables:
+# Intel(r) ACPI Compiler v20101013 from
+# http://www.acpica.org/downloads/previous_releases.php
+# RVCT -win- Requires:
+# ARM C/C++ Compiler, 5.00
+# Optional:
+# Required to build EBC drivers:
+# Intel(r) Compiler for Efi Byte Code (Intel(r) EBC Compiler)
+# Required to build platforms or ACPI tables:
+# Microsoft ASL ACPI Compiler (asl.exe) v4.0.0 from
+# http://download.microsoft.com/download/2/c/1/2c16c7e0-96c1-40f5-81fc-3e4bf7b65496/microsoft_asl_compiler-v4-0-0.msi
+# RVCTLINUX -unix- Requires:
+# ARM C/C++ Compiler, 5.00
+# Optional:
+# Required to build platforms or ACPI tables:
+# Intel(r) ACPI Compiler v20101013 from
+# http://www.acpica.org/downloads/previous_releases.php
# * Commented out - All versions of VS2005 use the same standard install directory
#
####################################################################################
@@ -713,7 +789,6 @@ NOOPT_VS2003xASL_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OP
*_VS2003xASL_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
####################################################################################
-#
# Microsoft Visual Studio 2005
#
# VS2005 - Microsoft Visual Studio 2005 All Edition, including Standard, Professional, Express, TeamSuite
@@ -789,7 +864,6 @@ NOOPT_VS2005_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF
*_VS2005_X64_ASLPP_PATH = DEF(VS2005_BINX64)\cl.exe
*_VS2005_X64_ASLDLINK_PATH = DEF(VS2005_BINX64)\link.exe
-
DEBUG_VS2005_X64_CC_FLAGS = /nologo /c /WX /GS- /X /W4 /Gs32768 /D UNICODE /O1ib2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm
RELEASE_VS2005_X64_CC_FLAGS = /nologo /c /WX /GS- /X /W4 /Gs32768 /D UNICODE /O1ib2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF
NOOPT_VS2005_X64_CC_FLAGS = /nologo /c /WX /GS- /X /W4 /Gs32768 /D UNICODE /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm /Od
@@ -926,7 +1000,6 @@ NOOPT_VS2005xASL_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:RE
*_VS2005xASL_X64_ASLPP_PATH = DEF(VS2005_BINX64)\cl.exe
*_VS2005xASL_X64_ASLDLINK_PATH = DEF(VS2005_BINX64)\link.exe
-
DEBUG_VS2005xASL_X64_CC_FLAGS = /nologo /c /WX /GS- /X /W4 /Gs32768 /D UNICODE /O1ib2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm
RELEASE_VS2005xASL_X64_CC_FLAGS = /nologo /c /WX /GS- /X /W4 /Gs32768 /D UNICODE /O1ib2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF
NOOPT_VS2005xASL_X64_CC_FLAGS = /nologo /c /WX /GS- /X /W4 /Gs32768 /D UNICODE /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm /Od
@@ -1063,7 +1136,6 @@ NOOPT_VS2005x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF
*_VS2005x86_X64_ASLPP_PATH = DEF(VS2005x86_BINX64)\cl.exe
*_VS2005x86_X64_ASLDLINK_PATH = DEF(VS2005x86_BINX64)\link.exe
-
DEBUG_VS2005x86_X64_CC_FLAGS = /nologo /c /WX /GS- /X /W4 /Gs32768 /D UNICODE /O1ib2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm
RELEASE_VS2005x86_X64_CC_FLAGS = /nologo /c /WX /GS- /X /W4 /Gs32768 /D UNICODE /O1ib2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF
NOOPT_VS2005x86_X64_CC_FLAGS = /nologo /c /WX /GS- /X /W4 /Gs32768 /D UNICODE /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm /Od
@@ -1200,7 +1272,6 @@ NOOPT_VS2005x86xASL_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT
*_VS2005x86xASL_X64_ASLPP_PATH = DEF(VS2005x86_BINX64)\cl.exe
*_VS2005x86xASL_X64_ASLDLINK_PATH = DEF(VS2005x86_BINX64)\link.exe
-
DEBUG_VS2005x86xASL_X64_CC_FLAGS = /nologo /c /WX /GS- /X /W4 /Gs32768 /D UNICODE /O1ib2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm
RELEASE_VS2005x86xASL_X64_CC_FLAGS = /nologo /c /WX /GS- /X /W4 /Gs32768 /D UNICODE /O1ib2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF
NOOPT_VS2005x86xASL_X64_CC_FLAGS = /nologo /c /WX /GS- /X /W4 /Gs32768 /D UNICODE /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm /Od
@@ -1261,7 +1332,6 @@ NOOPT_VS2005x86xASL_IPF_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /LTCG /DLL /OPT:R
*_VS2005x86xASL_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
-
####################################################################################
#
# Microsoft Visual Studio 2008
@@ -1339,7 +1409,6 @@ NOOPT_VS2008_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF
*_VS2008_X64_ASLPP_PATH = DEF(VS2008_BINX64)\cl.exe
*_VS2008_X64_ASLDLINK_PATH = DEF(VS2008_BINX64)\link.exe
-
DEBUG_VS2008_X64_CC_FLAGS = /nologo /c /WX /GS- /X /W4 /Gs32768 /D UNICODE /O1ib2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm
RELEASE_VS2008_X64_CC_FLAGS = /nologo /c /WX /GS- /X /W4 /Gs32768 /D UNICODE /O1ib2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF
NOOPT_VS2008_X64_CC_FLAGS = /nologo /c /WX /GS- /X /W4 /Gs32768 /D UNICODE /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm /Od
@@ -1384,13 +1453,14 @@ NOOPT_VS2008_IPF_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /LTCG /DLL /OPT:REF,ICF
# EBC definitions
##################
*_VS2008_EBC_*_FAMILY = INTEL
+*_VS2008_EBC_*_DLL = DEF(VS2008_DLL)
*_VS2008_EBC_MAKE_PATH = DEF(VS2008_BIN)\nmake.exe
*_VS2008_EBC_PP_PATH = DEF(EBC_BIN)\iec.exe
*_VS2008_EBC_VFRPP_PATH = DEF(EBC_BIN)\iec.exe
*_VS2008_EBC_CC_PATH = DEF(EBC_BIN)\iec.exe
-*_VS2008_EBC_SLINK_PATH = DEF(EBC_BIN)\link.exe
-*_VS2008_EBC_DLINK_PATH = DEF(EBC_BIN)\link.exe
+*_VS2008_EBC_SLINK_PATH = DEF(VS2008_BIN)\link.exe
+*_VS2008_EBC_DLINK_PATH = DEF(VS2008_BIN)\link.exe
*_VS2008_EBC_MAKE_FLAGS = /nologo
*_VS2008_EBC_PP_FLAGS = /nologo /E /TC /FIAutoGen.h
@@ -1399,6 +1469,7 @@ NOOPT_VS2008_IPF_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /LTCG /DLL /OPT:REF,ICF
*_VS2008_EBC_SLINK_FLAGS = /lib /NOLOGO /MACHINE:EBC
*_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
+
####################################################################################
#
# Microsoft Visual Studio 2008
@@ -1476,7 +1547,6 @@ NOOPT_VS2008xASL_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:RE
*_VS2008xASL_X64_ASLPP_PATH = DEF(VS2008_BINX64)\cl.exe
*_VS2008xASL_X64_ASLDLINK_PATH = DEF(VS2008_BINX64)\link.exe
-
DEBUG_VS2008xASL_X64_CC_FLAGS = /nologo /c /WX /GS- /X /W4 /Gs32768 /D UNICODE /O1ib2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm
RELEASE_VS2008xASL_X64_CC_FLAGS = /nologo /c /WX /GS- /X /W4 /Gs32768 /D UNICODE /O1ib2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF
NOOPT_VS2008xASL_X64_CC_FLAGS = /nologo /c /WX /GS- /X /W4 /Gs32768 /D UNICODE /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm /Od
@@ -1521,13 +1591,14 @@ NOOPT_VS2008xASL_IPF_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /LTCG /DLL /OPT:REF,
# EBC definitions
##################
*_VS2008xASL_EBC_*_FAMILY = INTEL
+*_VS2008xASL_EBC_*_DLL = DEF(VS2008_DLL)
*_VS2008xASL_EBC_MAKE_PATH = DEF(VS2008_BIN)\nmake.exe
*_VS2008xASL_EBC_PP_PATH = DEF(EBC_BIN)\iec.exe
*_VS2008xASL_EBC_VFRPP_PATH = DEF(EBC_BIN)\iec.exe
*_VS2008xASL_EBC_CC_PATH = DEF(EBC_BIN)\iec.exe
-*_VS2008xASL_EBC_SLINK_PATH = DEF(EBC_BIN)\link.exe
-*_VS2008xASL_EBC_DLINK_PATH = DEF(EBC_BIN)\link.exe
+*_VS2008xASL_EBC_SLINK_PATH = DEF(VS2008_BIN)\link.exe
+*_VS2008xASL_EBC_DLINK_PATH = DEF(VS2008_BIN)\link.exe
*_VS2008xASL_EBC_MAKE_FLAGS = /nologo
*_VS2008xASL_EBC_PP_FLAGS = /nologo /E /TC /FIAutoGen.h
@@ -1652,6 +1723,26 @@ NOOPT_VS2008x86_IPF_ASM_FLAGS = -N us -X explicit -M ilp64 -N so -W4 -d deb
RELEASE_VS2008x86_IPF_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /LTCG /DLL /OPT:REF,ICF /IGNORE:4001 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:IA64 /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MAP:$(DEBUG_DIR)/$(BASE_NAME).map /PDB:$(DEBUG_DIR)/$(BASE_NAME).pdb
NOOPT_VS2008x86_IPF_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /LTCG /DLL /OPT:REF,ICF /IGNORE:4001 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:IA64 /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MAP:$(DEBUG_DIR)/$(BASE_NAME).map /PDB:$(DEBUG_DIR)/$(BASE_NAME).pdb /DEBUG
+##################
+# EBC definitions
+##################
+*_VS2008x86_EBC_*_FAMILY = INTEL
+*_VS2008x86_EBC_*_DLL = DEF(VS2008x86_DLL)
+
+*_VS2008x86_EBC_MAKE_PATH = DEF(VS2008x86_BIN)\nmake.exe
+*_VS2008x86_EBC_PP_PATH = DEF(EBC_BINx86)\iec.exe
+*_VS2008x86_EBC_VFRPP_PATH = DEF(EBC_BINx86)\iec.exe
+*_VS2008x86_EBC_CC_PATH = DEF(EBC_BINx86)\iec.exe
+*_VS2008x86_EBC_SLINK_PATH = DEF(VS2008x86_BIN)\link.exe
+*_VS2008x86_EBC_DLINK_PATH = DEF(VS2008x86_BIN)\link.exe
+
+*_VS2008x86_EBC_MAKE_FLAGS = /nologo
+*_VS2008x86_EBC_PP_FLAGS = /nologo /E /TC /FIAutoGen.h
+*_VS2008x86_EBC_CC_FLAGS = /nologo /c /WX /W3 /FIAutoGen.h /D$(MODULE_ENTRY_POINT)=$(ARCH_ENTRY_POINT)
+*_VS2008x86_EBC_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h
+*_VS2008x86_EBC_SLINK_FLAGS = /lib /NOLOGO /MACHINE:EBC
+*_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
+
####################################################################################
# VS2008x86xASL - Microsoft Visual Studio 2008 with Microsoft ASL
@@ -1767,12 +1858,32 @@ NOOPT_VS2008x86xASL_IPF_ASM_FLAGS = -N us -X explicit -M ilp64 -N so -W4 -d
RELEASE_VS2008x86xASL_IPF_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /LTCG /DLL /OPT:REF,ICF /IGNORE:4001 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:IA64 /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MAP:$(DEBUG_DIR)/$(BASE_NAME).map /PDB:$(DEBUG_DIR)/$(BASE_NAME).pdb
NOOPT_VS2008x86xASL_IPF_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /LTCG /DLL /OPT:REF,ICF /IGNORE:4001 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:IA64 /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MAP:$(DEBUG_DIR)/$(BASE_NAME).map /PDB:$(DEBUG_DIR)/$(BASE_NAME).pdb /DEBUG
+##################
+# EBC definitions
+##################
+*_VS2008x86xASL_EBC_*_FAMILY = INTEL
+*_VS2008x86xASL_EBC_*_DLL = DEF(VS2008x86_DLL)
+
+*_VS2008x86xASL_EBC_MAKE_PATH = DEF(VS2008x86_BIN)\nmake.exe
+*_VS2008x86xASL_EBC_PP_PATH = DEF(EBC_BINx86)\iec.exe
+*_VS2008x86xASL_EBC_VFRPP_PATH = DEF(EBC_BINx86)\iec.exe
+*_VS2008x86xASL_EBC_CC_PATH = DEF(EBC_BINx86)\iec.exe
+*_VS2008x86xASL_EBC_SLINK_PATH = DEF(VS2008x86_BIN)\link.exe
+*_VS2008x86xASL_EBC_DLINK_PATH = DEF(VS2008x86_BIN)\link.exe
+
+*_VS2008x86xASL_EBC_MAKE_FLAGS = /nologo
+*_VS2008x86xASL_EBC_PP_FLAGS = /nologo /E /TC /FIAutoGen.h
+*_VS2008x86xASL_EBC_CC_FLAGS = /nologo /c /WX /W3 /FIAutoGen.h /D$(MODULE_ENTRY_POINT)=$(ARCH_ENTRY_POINT)
+*_VS2008x86xASL_EBC_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h
+*_VS2008x86xASL_EBC_SLINK_FLAGS = /lib /NOLOGO /MACHINE:EBC
+*_VS2008x86xASL_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
+
####################################################################################
#
# Microsoft Visual Studio 2010
#
-# VS2010 - Microsoft Visual Studio 2010 Premium Edition
+# VS2010 - Microsoft Visual Studio 2010 Premium Edition with Intel ASL
# ASL - Intel ACPI Source Language Compiler
####################################################################################
# VS2010 - Microsoft Visual Studio 2010 Premium Edition
@@ -1845,7 +1956,6 @@ NOOPT_VS2010_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF
*_VS2010_X64_ASLPP_PATH = DEF(VS2010_BINX64)\cl.exe
*_VS2010_X64_ASLDLINK_PATH = DEF(VS2010_BINX64)\link.exe
-
DEBUG_VS2010_X64_CC_FLAGS = /nologo /c /WX /GS- /X /W4 /Gs32768 /D UNICODE /O1ib2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm
RELEASE_VS2010_X64_CC_FLAGS = /nologo /c /WX /GS- /X /W4 /Gs32768 /D UNICODE /O1ib2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF
NOOPT_VS2010_X64_CC_FLAGS = /nologo /c /WX /GS- /X /W4 /Gs32768 /D UNICODE /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm /Od
@@ -1890,13 +2000,14 @@ NOOPT_VS2010_IPF_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /LTCG /DLL /OPT:REF,ICF
# EBC definitions
##################
*_VS2010_EBC_*_FAMILY = INTEL
+*_VS2010_EBC_*_DLL = DEF(VS2010_DLL)
*_VS2010_EBC_MAKE_PATH = DEF(VS2010_BIN)\nmake.exe
*_VS2010_EBC_PP_PATH = DEF(EBC_BIN)\iec.exe
*_VS2010_EBC_VFRPP_PATH = DEF(EBC_BIN)\iec.exe
*_VS2010_EBC_CC_PATH = DEF(EBC_BIN)\iec.exe
-*_VS2010_EBC_SLINK_PATH = DEF(EBC_BIN)\link.exe
-*_VS2010_EBC_DLINK_PATH = DEF(EBC_BIN)\link.exe
+*_VS2010_EBC_SLINK_PATH = DEF(VS2010_BIN)\link.exe
+*_VS2010_EBC_DLINK_PATH = DEF(VS2010_BIN)\link.exe
*_VS2010_EBC_MAKE_FLAGS = /nologo
*_VS2010_EBC_PP_FLAGS = /nologo /E /TC /FIAutoGen.h
@@ -1905,11 +2016,12 @@ NOOPT_VS2010_IPF_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /LTCG /DLL /OPT:REF,ICF
*_VS2010_EBC_SLINK_FLAGS = /lib /NOLOGO /MACHINE:EBC
*_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
+
####################################################################################
#
# Microsoft Visual Studio 2010
#
-# VS2010 - Microsoft Visual Studio 2010 Premium Edition
+# VS2010xASL - Microsoft Visual Studio 2010 Premium Edition with Microsoft ASL
# ASL - Microsoft ACPI Source Language Compiler (asl.exe)
####################################################################################
# VS2010xASL - Microsoft Visual Studio 2010 Premium Edition
@@ -1982,7 +2094,6 @@ NOOPT_VS2010xASL_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:RE
*_VS2010xASL_X64_ASLPP_PATH = DEF(VS2010_BINX64)\cl.exe
*_VS2010xASL_X64_ASLDLINK_PATH = DEF(VS2010_BINX64)\link.exe
-
DEBUG_VS2010xASL_X64_CC_FLAGS = /nologo /c /WX /GS- /X /W4 /Gs32768 /D UNICODE /O1ib2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm
RELEASE_VS2010xASL_X64_CC_FLAGS = /nologo /c /WX /GS- /X /W4 /Gs32768 /D UNICODE /O1ib2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF
NOOPT_VS2010xASL_X64_CC_FLAGS = /nologo /c /WX /GS- /X /W4 /Gs32768 /D UNICODE /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm /Od
@@ -2027,13 +2138,14 @@ NOOPT_VS2010xASL_IPF_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /LTCG /DLL /OPT:REF,
# EBC definitions
##################
*_VS2010xASL_EBC_*_FAMILY = INTEL
+*_VS2010xASL_EBC_*_DLL = DEF(VS2010_DLL)
*_VS2010xASL_EBC_MAKE_PATH = DEF(VS2010_BIN)\nmake.exe
*_VS2010xASL_EBC_PP_PATH = DEF(EBC_BIN)\iec.exe
*_VS2010xASL_EBC_VFRPP_PATH = DEF(EBC_BIN)\iec.exe
*_VS2010xASL_EBC_CC_PATH = DEF(EBC_BIN)\iec.exe
-*_VS2010xASL_EBC_SLINK_PATH = DEF(EBC_BIN)\link.exe
-*_VS2010xASL_EBC_DLINK_PATH = DEF(EBC_BIN)\link.exe
+*_VS2010xASL_EBC_SLINK_PATH = DEF(VS2010_BIN)\link.exe
+*_VS2010xASL_EBC_DLINK_PATH = DEF(VS2010_BIN)\link.exe
*_VS2010xASL_EBC_MAKE_FLAGS = /nologo
*_VS2010xASL_EBC_PP_FLAGS = /nologo /E /TC /FIAutoGen.h
@@ -2130,7 +2242,6 @@ NOOPT_VS2010x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi
RELEASE_VS2010x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.data=.text /MERGE:.rdata=.text
NOOPT_VS2010x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG
-
##################
# IPF definitions
##################
@@ -2159,6 +2270,26 @@ NOOPT_VS2010x86_IPF_ASM_FLAGS = -N us -X explicit -M ilp64 -N so -W4 -d deb
RELEASE_VS2010x86_IPF_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /LTCG /DLL /OPT:REF,ICF /IGNORE:4001 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:IA64 /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MAP:$(DEBUG_DIR)/$(BASE_NAME).map /PDB:$(DEBUG_DIR)/$(BASE_NAME).pdb
NOOPT_VS2010x86_IPF_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /LTCG /DLL /OPT:REF,ICF /IGNORE:4001 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:IA64 /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MAP:$(DEBUG_DIR)/$(BASE_NAME).map /PDB:$(DEBUG_DIR)/$(BASE_NAME).pdb /DEBUG
+##################
+# EBC definitions
+##################
+*_VS2010x86_EBC_*_FAMILY = INTEL
+*_VS2010x86_EBC_*_DLL = DEF(VS2010x86_DLL)
+
+*_VS2010x86_EBC_MAKE_PATH = DEF(VS2010x86_BIN)\nmake.exe
+*_VS2010x86_EBC_PP_PATH = DEF(EBC_BINx86)\iec.exe
+*_VS2010x86_EBC_VFRPP_PATH = DEF(EBC_BINx86)\iec.exe
+*_VS2010x86_EBC_CC_PATH = DEF(EBC_BINx86)\iec.exe
+*_VS2010x86_EBC_SLINK_PATH = DEF(VS2010x86_BIN)\link.exe
+*_VS2010x86_EBC_DLINK_PATH = DEF(VS2010x86_BIN)\link.exe
+
+*_VS2010x86_EBC_MAKE_FLAGS = /nologo
+*_VS2010x86_EBC_PP_FLAGS = /nologo /E /TC /FIAutoGen.h
+*_VS2010x86_EBC_CC_FLAGS = /nologo /c /WX /W3 /FIAutoGen.h /D$(MODULE_ENTRY_POINT)=$(ARCH_ENTRY_POINT)
+*_VS2010x86_EBC_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h
+*_VS2010x86_EBC_SLINK_FLAGS = /lib /NOLOGO /MACHINE:EBC
+*_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
+
####################################################################################
# VS2010x86xASL - Microsoft Visual Studio 2010 with Microsoft ASL
@@ -2274,6 +2405,461 @@ NOOPT_VS2010x86xASL_IPF_ASM_FLAGS = -N us -X explicit -M ilp64 -N so -W4 -d
RELEASE_VS2010x86xASL_IPF_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /LTCG /DLL /OPT:REF,ICF /IGNORE:4001 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:IA64 /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MAP:$(DEBUG_DIR)/$(BASE_NAME).map /PDB:$(DEBUG_DIR)/$(BASE_NAME).pdb
NOOPT_VS2010x86xASL_IPF_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /LTCG /DLL /OPT:REF,ICF /IGNORE:4001 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:IA64 /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MAP:$(DEBUG_DIR)/$(BASE_NAME).map /PDB:$(DEBUG_DIR)/$(BASE_NAME).pdb /DEBUG
+##################
+# EBC definitions
+##################
+*_VS2010x86xASL_EBC_*_FAMILY = INTEL
+*_VS2010x86xASL_EBC_*_DLL = DEF(VS2010x86_DLL)
+
+*_VS2010x86xASL_EBC_MAKE_PATH = DEF(VS2010x86_BIN)\nmake.exe
+*_VS2010x86xASL_EBC_PP_PATH = DEF(EBC_BINx86)\iec.exe
+*_VS2010x86xASL_EBC_VFRPP_PATH = DEF(EBC_BINx86)\iec.exe
+*_VS2010x86xASL_EBC_CC_PATH = DEF(EBC_BINx86)\iec.exe
+*_VS2010x86xASL_EBC_SLINK_PATH = DEF(VS2010x86_BIN)\link.exe
+*_VS2010x86xASL_EBC_DLINK_PATH = DEF(VS2010x86_BIN)\link.exe
+
+*_VS2010x86xASL_EBC_MAKE_FLAGS = /nologo
+*_VS2010x86xASL_EBC_PP_FLAGS = /nologo /E /TC /FIAutoGen.h
+*_VS2010x86xASL_EBC_CC_FLAGS = /nologo /c /WX /W3 /FIAutoGen.h /D$(MODULE_ENTRY_POINT)=$(ARCH_ENTRY_POINT)
+*_VS2010x86xASL_EBC_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h
+*_VS2010x86xASL_EBC_SLINK_FLAGS = /lib /NOLOGO /MACHINE:EBC
+*_VS2010x86xASL_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
+
+
+####################################################################################
+#
+# Microsoft Visual Studio 2012
+#
+# VS2012 - Microsoft Visual Studio 2012 Professional Edition with Intel ASL
+# ASL - Intel ACPI Source Language Compiler
+####################################################################################
+# VS2012 - Microsoft Visual Studio 2012 Premium Edition
+*_VS2012_*_*_FAMILY = MSFT
+
+*_VS2012_*_MAKE_PATH = DEF(VS2012_BIN)\nmake.exe
+*_VS2012_*_MAKE_FLAGS = /nologo
+*_VS2012_*_RC_PATH = DEF(WINSDK_BIN)\rc.exe
+
+*_VS2012_*_SLINK_FLAGS = /NOLOGO /LTCG
+*_VS2012_*_APP_FLAGS = /nologo /E /TC
+*_VS2012_*_PP_FLAGS = /nologo /E /TC /FIAutoGen.h
+*_VS2012_*_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h
+
+*_VS2012_*_ASM16_PATH = DEF(VS2012_BIN)\ml.exe
+
+##################
+# ASL definitions
+##################
+*_VS2012_*_ASL_PATH = DEF(DEFAULT_WIN_ASL_BIN)
+*_VS2012_*_ASL_FLAGS = DEF(DEFAULT_WIN_ASL_FLAGS)
+*_VS2012_*_ASL_OUTFLAGS = DEF(DEFAULT_WIN_ASL_OUTFLAGS)
+*_VS2012_*_ASLCC_FLAGS = DEF(MSFT_ASLCC_FLAGS)
+*_VS2012_*_ASLPP_FLAGS = DEF(MSFT_ASLPP_FLAGS)
+*_VS2012_*_ASLDLINK_FLAGS = DEF(MSFT_ASLDLINK_FLAGS)
+
+##################
+# IA32 definitions
+##################
+*_VS2012_IA32_*_DLL = DEF(VS2012_DLL)
+
+*_VS2012_IA32_MAKE_PATH = DEF(VS2012_BIN)\nmake.exe
+*_VS2012_IA32_CC_PATH = DEF(VS2012_BIN)\cl.exe
+*_VS2012_IA32_VFRPP_PATH = DEF(VS2012_BIN)\cl.exe
+*_VS2012_IA32_SLINK_PATH = DEF(VS2012_BIN)\lib.exe
+*_VS2012_IA32_DLINK_PATH = DEF(VS2012_BIN)\link.exe
+*_VS2012_IA32_APP_PATH = DEF(VS2012_BIN)\cl.exe
+*_VS2012_IA32_PP_PATH = DEF(VS2012_BIN)\cl.exe
+*_VS2012_IA32_ASM_PATH = DEF(VS2012_BIN)\ml.exe
+*_VS2012_IA32_ASLCC_PATH = DEF(VS2012_BIN)\cl.exe
+*_VS2012_IA32_ASLPP_PATH = DEF(VS2012_BIN)\cl.exe
+*_VS2012_IA32_ASLDLINK_PATH = DEF(VS2012_BIN)\link.exe
+
+ *_VS2012_IA32_MAKE_FLAGS = /nologo
+ DEBUG_VS2012_IA32_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1ib2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm
+RELEASE_VS2012_IA32_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1ib2 /GL /FIAutoGen.h /EHs-c- /GR- /GF
+NOOPT_VS2012_IA32_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm /Od
+
+ DEBUG_VS2012_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi
+RELEASE_VS2012_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd
+NOOPT_VS2012_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi
+
+ 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
+RELEASE_VS2012_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.data=.text /MERGE:.rdata=.text
+NOOPT_VS2012_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG
+
+##################
+# X64 definitions
+##################
+*_VS2012_X64_*_DLL = DEF(VS2012_DLL)
+
+*_VS2012_X64_CC_PATH = DEF(VS2012_BINX64)\cl.exe
+*_VS2012_X64_PP_PATH = DEF(VS2012_BINX64)\cl.exe
+*_VS2012_X64_APP_PATH = DEF(VS2012_BINX64)\cl.exe
+*_VS2012_X64_VFRPP_PATH = DEF(VS2012_BINX64)\cl.exe
+*_VS2012_X64_ASM_PATH = DEF(VS2012_BINX64)\ml64.exe
+*_VS2012_X64_SLINK_PATH = DEF(VS2012_BINX64)\lib.exe
+*_VS2012_X64_DLINK_PATH = DEF(VS2012_BINX64)\link.exe
+*_VS2012_X64_ASLCC_PATH = DEF(VS2012_BINX64)\cl.exe
+*_VS2012_X64_ASLPP_PATH = DEF(VS2012_BINX64)\cl.exe
+*_VS2012_X64_ASLDLINK_PATH = DEF(VS2012_BINX64)\link.exe
+
+ DEBUG_VS2012_X64_CC_FLAGS = /nologo /c /WX /GS- /X /W4 /Gs32768 /D UNICODE /O1ib2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm
+RELEASE_VS2012_X64_CC_FLAGS = /nologo /c /WX /GS- /X /W4 /Gs32768 /D UNICODE /O1ib2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF
+NOOPT_VS2012_X64_CC_FLAGS = /nologo /c /WX /GS- /X /W4 /Gs32768 /D UNICODE /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm /Od
+
+ DEBUG_VS2012_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi
+RELEASE_VS2012_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd
+NOOPT_VS2012_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi
+
+ 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
+RELEASE_VS2012_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.data=.text /MERGE:.rdata=.text
+NOOPT_VS2012_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG
+
+##################
+# EBC definitions
+##################
+*_VS2012_EBC_*_FAMILY = INTEL
+*_VS2012_EBC_*_DLL = DEF(VS2012_DLL)
+
+*_VS2012_EBC_MAKE_PATH = DEF(VS2012_BIN)\nmake.exe
+*_VS2012_EBC_PP_PATH = DEF(EBC_BIN)\iec.exe
+*_VS2012_EBC_VFRPP_PATH = DEF(EBC_BIN)\iec.exe
+*_VS2012_EBC_CC_PATH = DEF(EBC_BIN)\iec.exe
+*_VS2012_EBC_SLINK_PATH = DEF(VS2012_BIN)\link.exe
+*_VS2012_EBC_DLINK_PATH = DEF(VS2012_BIN)\link.exe
+
+*_VS2012_EBC_MAKE_FLAGS = /nologo
+*_VS2012_EBC_PP_FLAGS = /nologo /E /TC /FIAutoGen.h
+*_VS2012_EBC_CC_FLAGS = /nologo /c /WX /W3 /FIAutoGen.h /D$(MODULE_ENTRY_POINT)=$(ARCH_ENTRY_POINT)
+*_VS2012_EBC_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h
+*_VS2012_EBC_SLINK_FLAGS = /lib /NOLOGO /MACHINE:EBC
+*_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
+
+
+####################################################################################
+#
+# Microsoft Visual Studio 2012
+#
+# VS2012 - Microsoft Visual Studio 2012 Professional Edition with Microsoft ASL
+# ASL - Microsoft ACPI Source Language Compiler (asl.exe)
+####################################################################################
+# VS2012xASL - Microsoft Visual Studio 2012 Premium Edition
+*_VS2012xASL_*_*_FAMILY = MSFT
+
+*_VS2012xASL_*_MAKE_PATH = DEF(VS2012_BIN)\nmake.exe
+*_VS2012xASL_*_MAKE_FLAG = /nologo
+*_VS2012xASL_*_RC_PATH = DEF(WINSDK_BIN)\rc.exe
+
+*_VS2012xASL_*_SLINK_FLAGS = /NOLOGO /LTCG
+*_VS2012xASL_*_APP_FLAGS = /nologo /E /TC
+*_VS2012xASL_*_PP_FLAGS = /nologo /E /TC /FIAutoGen.h
+*_VS2012xASL_*_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h
+
+*_VS2012xASL_*_ASM16_PATH = DEF(VS2012_BIN)\ml.exe
+
+##################
+# ASL definitions
+##################
+*_VS2012xASL_*_ASL_PATH = DEF(WIN_ASL_BIN)
+*_VS2012xASL_*_ASL_FLAGS =
+*_VS2012xASL_*_ASL_OUTFLAGS = DEF(MS_ASL_OUTFLAGS)
+*_VS2012xASL_*_ASLCC_FLAGS = DEF(MSFT_ASLCC_FLAGS)
+*_VS2012xASL_*_ASLPP_FLAGS = DEF(MSFT_ASLPP_FLAGS)
+*_VS2012xASL_*_ASLDLINK_FLAGS = DEF(MSFT_ASLDLINK_FLAGS)
+
+##################
+# IA32 definitions
+##################
+*_VS2012xASL_IA32_*_DLL = DEF(VS2012_DLL)
+
+*_VS2012xASL_IA32_MAKE_PATH = DEF(VS2012_BIN)\nmake.exe
+*_VS2012xASL_IA32_CC_PATH = DEF(VS2012_BIN)\cl.exe
+*_VS2012xASL_IA32_VFRPP_PATH = DEF(VS2012_BIN)\cl.exe
+*_VS2012xASL_IA32_SLINK_PATH = DEF(VS2012_BIN)\lib.exe
+*_VS2012xASL_IA32_DLINK_PATH = DEF(VS2012_BIN)\link.exe
+*_VS2012xASL_IA32_APP_PATH = DEF(VS2012_BIN)\cl.exe
+*_VS2012xASL_IA32_PP_PATH = DEF(VS2012_BIN)\cl.exe
+*_VS2012xASL_IA32_ASM_PATH = DEF(VS2012_BIN)\ml.exe
+*_VS2012xASL_IA32_ASLCC_PATH = DEF(VS2012_BIN)\cl.exe
+*_VS2012xASL_IA32_ASLPP_PATH = DEF(VS2012_BIN)\cl.exe
+*_VS2012xASL_IA32_ASLDLINK_PATH = DEF(VS2012_BIN)\link.exe
+
+ *_VS2012xASL_IA32_MAKE_FLAGS = /nologo
+ DEBUG_VS2012xASL_IA32_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1ib2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm
+RELEASE_VS2012xASL_IA32_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1ib2 /GL /FIAutoGen.h /EHs-c- /GR- /GF
+NOOPT_VS2012xASL_IA32_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm /Od
+
+ DEBUG_VS2012xASL_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi
+RELEASE_VS2012xASL_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd
+NOOPT_VS2012xASL_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi
+
+ DEBUG_VS2012xASL_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
+RELEASE_VS2012xASL_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:.data=.text /MERGE:.rdata=.text
+NOOPT_VS2012xASL_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
+
+##################
+# X64 definitions
+##################
+*_VS2012xASL_X64_*_DLL = DEF(VS2012_DLL)
+
+*_VS2012xASL_X64_CC_PATH = DEF(VS2012_BINX64)\cl.exe
+*_VS2012xASL_X64_PP_PATH = DEF(VS2012_BINX64)\cl.exe
+*_VS2012xASL_X64_APP_PATH = DEF(VS2012_BINX64)\cl.exe
+*_VS2012xASL_X64_VFRPP_PATH = DEF(VS2012_BINX64)\cl.exe
+*_VS2012xASL_X64_ASM_PATH = DEF(VS2012_BINX64)\ml64.exe
+*_VS2012xASL_X64_SLINK_PATH = DEF(VS2012_BINX64)\lib.exe
+*_VS2012xASL_X64_DLINK_PATH = DEF(VS2012_BINX64)\link.exe
+*_VS2012xASL_X64_ASLCC_PATH = DEF(VS2012_BINX64)\cl.exe
+*_VS2012xASL_X64_ASLPP_PATH = DEF(VS2012_BINX64)\cl.exe
+*_VS2012xASL_X64_ASLDLINK_PATH = DEF(VS2012_BINX64)\link.exe
+
+ DEBUG_VS2012xASL_X64_CC_FLAGS = /nologo /c /WX /GS- /X /W4 /Gs32768 /D UNICODE /O1ib2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm
+RELEASE_VS2012xASL_X64_CC_FLAGS = /nologo /c /WX /GS- /X /W4 /Gs32768 /D UNICODE /O1ib2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF
+NOOPT_VS2012xASL_X64_CC_FLAGS = /nologo /c /WX /GS- /X /W4 /Gs32768 /D UNICODE /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm /Od
+
+ DEBUG_VS2012xASL_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi
+RELEASE_VS2012xASL_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd
+NOOPT_VS2012xASL_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi
+
+ DEBUG_VS2012xASL_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
+RELEASE_VS2012xASL_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:.data=.text /MERGE:.rdata=.text
+NOOPT_VS2012xASL_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
+
+##################
+# EBC definitions
+##################
+*_VS2012xASL_EBC_*_FAMILY = INTEL
+*_VS2012xASL_EBC_*_DLL = DEF(VS2012_DLL)
+
+*_VS2012xASL_EBC_MAKE_PATH = DEF(VS2012_BIN)\nmake.exe
+*_VS2012xASL_EBC_PP_PATH = DEF(EBC_BIN)\iec.exe
+*_VS2012xASL_EBC_VFRPP_PATH = DEF(EBC_BIN)\iec.exe
+*_VS2012xASL_EBC_CC_PATH = DEF(EBC_BIN)\iec.exe
+*_VS2012xASL_EBC_SLINK_PATH = DEF(VS2012_BIN)\link.exe
+*_VS2012xASL_EBC_DLINK_PATH = DEF(VS2012_BIN)\link.exe
+
+*_VS2012xASL_EBC_MAKE_FLAGS = /nologo
+*_VS2012xASL_EBC_PP_FLAGS = /nologo /E /TC /FIAutoGen.h
+*_VS2012xASL_EBC_CC_FLAGS = /nologo /c /WX /W3 /FIAutoGen.h /D$(MODULE_ENTRY_POINT)=$(ARCH_ENTRY_POINT)
+*_VS2012xASL_EBC_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h
+*_VS2012xASL_EBC_SLINK_FLAGS = /lib /NOLOGO /MACHINE:EBC
+*_VS2012xASL_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
+
+
+####################################################################################
+# VS2012x86 - Microsoft Visual Studio 2012 (x86) professional with Intel ASL
+# ASL - Intel ACPI Source Language Compiler (iasl.exe)
+####################################################################################
+# VS2012x86 - Microsoft Visual Studio 2012 (x86) professional Edition with Intel ASL
+*_VS2012x86_*_*_FAMILY = MSFT
+
+*_VS2012x86_*_MAKE_PATH = DEF(VS2012x86_BIN)\nmake.exe
+*_VS2012x86_*_MAKE_FLAG = /nologo
+*_VS2012x86_*_RC_PATH = DEF(WINSDK_BIN)\rc.exe
+
+*_VS2012x86_*_MAKE_FLAGS = /nologo
+*_VS2012x86_*_SLINK_FLAGS = /NOLOGO /LTCG
+*_VS2012x86_*_APP_FLAGS = /nologo /E /TC
+*_VS2012x86_*_PP_FLAGS = /nologo /E /TC /FIAutoGen.h
+*_VS2012x86_*_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h
+
+*_VS2012x86_*_ASM16_PATH = DEF(VS2012x86_BIN)\ml.exe
+
+##################
+# ASL definitions
+##################
+*_VS2012x86_*_ASL_PATH = DEF(WIN_IASL_BIN)
+*_VS2012x86_*_ASL_FLAGS = DEF(DEFAULT_WIN_ASL_FLAGS)
+*_VS2012x86_*_ASL_OUTFLAGS = DEF(DEFAULT_WIN_ASL_OUTFLAGS)
+*_VS2012x86_*_ASLCC_FLAGS = DEF(MSFT_ASLCC_FLAGS)
+*_VS2012x86_*_ASLPP_FLAGS = DEF(MSFT_ASLPP_FLAGS)
+*_VS2012x86_*_ASLDLINK_FLAGS = DEF(MSFT_ASLDLINK_FLAGS)
+
+##################
+# IA32 definitions
+##################
+*_VS2012x86_IA32_*_DLL = DEF(VS2012x86_DLL)
+
+*_VS2012x86_IA32_MAKE_PATH = DEF(VS2012x86_BIN)\nmake.exe
+*_VS2012x86_IA32_CC_PATH = DEF(VS2012x86_BIN)\cl.exe
+*_VS2012x86_IA32_VFRPP_PATH = DEF(VS2012x86_BIN)\cl.exe
+*_VS2012x86_IA32_ASLCC_PATH = DEF(VS2012x86_BIN)\cl.exe
+*_VS2012x86_IA32_ASLPP_PATH = DEF(VS2012x86_BIN)\cl.exe
+*_VS2012x86_IA32_SLINK_PATH = DEF(VS2012x86_BIN)\lib.exe
+*_VS2012x86_IA32_DLINK_PATH = DEF(VS2012x86_BIN)\link.exe
+*_VS2012x86_IA32_ASLDLINK_PATH= DEF(VS2012x86_BIN)\link.exe
+*_VS2012x86_IA32_APP_PATH = DEF(VS2012x86_BIN)\cl.exe
+*_VS2012x86_IA32_PP_PATH = DEF(VS2012x86_BIN)\cl.exe
+*_VS2012x86_IA32_ASM_PATH = DEF(VS2012x86_BIN)\ml.exe
+
+ *_VS2012x86_IA32_MAKE_FLAGS = /nologo
+ DEBUG_VS2012x86_IA32_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1ib2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm
+RELEASE_VS2012x86_IA32_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1ib2 /GL /FIAutoGen.h /EHs-c- /GR- /GF
+NOOPT_VS2012x86_IA32_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm /Od
+
+ DEBUG_VS2012x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi
+RELEASE_VS2012x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd
+NOOPT_VS2012x86_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi
+
+ 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
+RELEASE_VS2012x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.data=.text /MERGE:.rdata=.text
+NOOPT_VS2012x86_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG
+
+##################
+# X64 definitions
+##################
+*_VS2012x86_X64_*_DLL = DEF(VS2012x86_DLL)
+
+*_VS2012x86_X64_CC_PATH = DEF(VS2012x86_BINX64)\cl.exe
+*_VS2012x86_X64_PP_PATH = DEF(VS2012x86_BINX64)\cl.exe
+*_VS2012x86_X64_APP_PATH = DEF(VS2012x86_BINX64)\cl.exe
+*_VS2012x86_X64_VFRPP_PATH = DEF(VS2012x86_BINX64)\cl.exe
+*_VS2012x86_X64_ASLCC_PATH = DEF(VS2012x86_BINX64)\cl.exe
+*_VS2012x86_X64_ASLPP_PATH = DEF(VS2012x86_BINX64)\cl.exe
+*_VS2012x86_X64_ASM_PATH = DEF(VS2012x86_BINX64)\ml64.exe
+*_VS2012x86_X64_SLINK_PATH = DEF(VS2012x86_BINX64)\lib.exe
+*_VS2012x86_X64_DLINK_PATH = DEF(VS2012x86_BINX64)\link.exe
+*_VS2012x86_X64_ASLDLINK_PATH = DEF(VS2012x86_BINX64)\link.exe
+
+ DEBUG_VS2012x86_X64_CC_FLAGS = /nologo /c /WX /GS- /X /W4 /Gs32768 /D UNICODE /O1ib2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm
+RELEASE_VS2012x86_X64_CC_FLAGS = /nologo /c /WX /GS- /X /W4 /Gs32768 /D UNICODE /O1ib2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF
+NOOPT_VS2012x86_X64_CC_FLAGS = /nologo /c /WX /GS- /X /W4 /Gs32768 /D UNICODE /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm /Od
+
+ DEBUG_VS2012x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi
+RELEASE_VS2012x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd
+NOOPT_VS2012x86_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi
+
+ 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
+RELEASE_VS2012x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.data=.text /MERGE:.rdata=.text
+NOOPT_VS2012x86_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG
+
+##################
+# EBC definitions
+##################
+*_VS2012x86_EBC_*_FAMILY = INTEL
+*_VS2012x86_EBC_*_DLL = DEF(VS2012x86_DLL)
+
+*_VS2012x86_EBC_MAKE_PATH = DEF(VS2012x86_BIN)\nmake.exe
+*_VS2012x86_EBC_PP_PATH = DEF(EBC_BINx86)\iec.exe
+*_VS2012x86_EBC_VFRPP_PATH = DEF(EBC_BINx86)\iec.exe
+*_VS2012x86_EBC_CC_PATH = DEF(EBC_BINx86)\iec.exe
+*_VS2012x86_EBC_SLINK_PATH = DEF(VS2012x86_BIN)\link.exe
+*_VS2012x86_EBC_DLINK_PATH = DEF(VS2012x86_BIN)\link.exe
+
+*_VS2012x86_EBC_MAKE_FLAGS = /nologo
+*_VS2012x86_EBC_PP_FLAGS = /nologo /E /TC /FIAutoGen.h
+*_VS2012x86_EBC_CC_FLAGS = /nologo /c /WX /W3 /FIAutoGen.h /D$(MODULE_ENTRY_POINT)=$(ARCH_ENTRY_POINT)
+*_VS2012x86_EBC_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h
+*_VS2012x86_EBC_SLINK_FLAGS = /lib /NOLOGO /MACHINE:EBC
+*_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
+
+
+####################################################################################
+# VS2012x86xASL - Microsoft Visual Studio 2012 (x86) professional with Microsoft ASL
+# ASL - Microsoft ACPI Source Language Compiler (asl.exe)
+####################################################################################
+*_VS2012x86xASL_*_*_FAMILY = MSFT
+
+*_VS2012x86xASL_*_MAKE_PATH = DEF(VS2012x86_BIN)\nmake.exe
+*_VS2012x86xASL_*_MAKE_FLAG = /nologo
+*_VS2012x86xASL_*_RC_PATH = DEF(WINSDK_BIN)\rc.exe
+
+*_VS2012x86xASL_*_MAKE_FLAGS = /nologo
+*_VS2012x86xASL_*_SLINK_FLAGS = /NOLOGO /LTCG
+*_VS2012x86xASL_*_APP_FLAGS = /nologo /E /TC
+*_VS2012x86xASL_*_PP_FLAGS = /nologo /E /TC /FIAutoGen.h
+*_VS2012x86xASL_*_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h
+
+*_VS2012x86xASL_*_ASM16_PATH = DEF(VS2012x86_BIN)\ml.exe
+
+##################
+# ASL definitions
+##################
+*_VS2012x86xASL_*_ASL_PATH = DEF(WIN_ASL_BIN)
+*_VS2012x86xASL_*_ASL_FLAGS = DEF(MS_ASL_FLAGS)
+*_VS2012x86xASL_*_ASL_OUTFLAGS = DEF(MS_ASL_OUTFLAGS)
+*_VS2012x86xASL_*_ASLCC_FLAGS = DEF(MSFT_ASLCC_FLAGS)
+*_VS2012x86xASL_*_ASLPP_FLAGS = DEF(MSFT_ASLPP_FLAGS)
+*_VS2012x86xASL_*_ASLDLINK_FLAGS = DEF(MSFT_ASLDLINK_FLAGS)
+
+##################
+# IA32 definitions
+##################
+*_VS2012x86xASL_IA32_*_DLL = DEF(VS2012x86_DLL)
+
+*_VS2012x86xASL_IA32_MAKE_PATH = DEF(VS2012x86_BIN)\nmake.exe
+*_VS2012x86xASL_IA32_CC_PATH = DEF(VS2012x86_BIN)\cl.exe
+*_VS2012x86xASL_IA32_VFRPP_PATH = DEF(VS2012x86_BIN)\cl.exe
+*_VS2012x86xASL_IA32_ASLCC_PATH = DEF(VS2012x86_BIN)\cl.exe
+*_VS2012x86xASL_IA32_ASLPP_PATH = DEF(VS2012x86_BIN)\cl.exe
+*_VS2012x86xASL_IA32_SLINK_PATH = DEF(VS2012x86_BIN)\lib.exe
+*_VS2012x86xASL_IA32_DLINK_PATH = DEF(VS2012x86_BIN)\link.exe
+*_VS2012x86xASL_IA32_ASLDLINK_PATH= DEF(VS2012x86_BIN)\link.exe
+*_VS2012x86xASL_IA32_APP_PATH = DEF(VS2012x86_BIN)\cl.exe
+*_VS2012x86xASL_IA32_PP_PATH = DEF(VS2012x86_BIN)\cl.exe
+*_VS2012x86xASL_IA32_ASM_PATH = DEF(VS2012x86_BIN)\ml.exe
+
+ *_VS2012x86xASL_IA32_MAKE_FLAGS = /nologo
+ DEBUG_VS2012x86xASL_IA32_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1ib2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm
+RELEASE_VS2012x86xASL_IA32_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1ib2 /GL /FIAutoGen.h /EHs-c- /GR- /GF
+NOOPT_VS2012x86xASL_IA32_CC_FLAGS = /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm /Od
+
+ DEBUG_VS2012x86xASL_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi
+RELEASE_VS2012x86xASL_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd
+NOOPT_VS2012x86xASL_IA32_ASM_FLAGS = /nologo /c /WX /W3 /Cx /coff /Zd /Zi
+
+ DEBUG_VS2012x86xASL_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
+RELEASE_VS2012x86xASL_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:.data=.text /MERGE:.rdata=.text
+NOOPT_VS2012x86xASL_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
+
+##################
+# X64 definitions
+##################
+*_VS2012x86xASL_X64_*_DLL = DEF(VS2012x86_DLL)
+
+*_VS2012x86xASL_X64_CC_PATH = DEF(VS2012x86_BINX64)\cl.exe
+*_VS2012x86xASL_X64_PP_PATH = DEF(VS2012x86_BINX64)\cl.exe
+*_VS2012x86xASL_X64_APP_PATH = DEF(VS2012x86_BINX64)\cl.exe
+*_VS2012x86xASL_X64_VFRPP_PATH = DEF(VS2012x86_BINX64)\cl.exe
+*_VS2012x86xASL_X64_ASLCC_PATH = DEF(VS2012x86_BINX64)\cl.exe
+*_VS2012x86xASL_X64_ASLPP_PATH = DEF(VS2012x86_BINX64)\cl.exe
+*_VS2012x86xASL_X64_ASM_PATH = DEF(VS2012x86_BINX64)\ml64.exe
+*_VS2012x86xASL_X64_SLINK_PATH = DEF(VS2012x86_BINX64)\lib.exe
+*_VS2012x86xASL_X64_DLINK_PATH = DEF(VS2012x86_BINX64)\link.exe
+*_VS2012x86xASL_X64_ASLDLINK_PATH = DEF(VS2012x86_BINX64)\link.exe
+
+ DEBUG_VS2012x86xASL_X64_CC_FLAGS = /nologo /c /WX /GS- /X /W4 /Gs32768 /D UNICODE /O1ib2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm
+RELEASE_VS2012x86xASL_X64_CC_FLAGS = /nologo /c /WX /GS- /X /W4 /Gs32768 /D UNICODE /O1ib2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF
+NOOPT_VS2012x86xASL_X64_CC_FLAGS = /nologo /c /WX /GS- /X /W4 /Gs32768 /D UNICODE /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm /Od
+
+ DEBUG_VS2012x86xASL_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi
+RELEASE_VS2012x86xASL_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd
+NOOPT_VS2012x86xASL_X64_ASM_FLAGS = /nologo /c /WX /W3 /Cx /Zd /Zi
+
+ DEBUG_VS2012x86xASL_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
+RELEASE_VS2012x86xASL_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:.data=.text /MERGE:.rdata=.text
+NOOPT_VS2012x86xASL_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
+
+##################
+# EBC definitions
+##################
+*_VS2012x86xASL_EBC_*_FAMILY = INTEL
+*_VS2012x86xASL_EBC_*_DLL = DEF(VS2012x86_DLL)
+
+*_VS2012x86xASL_EBC_MAKE_PATH = DEF(VS2012x86_BIN)\nmake.exe
+*_VS2012x86xASL_EBC_PP_PATH = DEF(EBC_BINx86)\iec.exe
+*_VS2012x86xASL_EBC_VFRPP_PATH = DEF(EBC_BINx86)\iec.exe
+*_VS2012x86xASL_EBC_CC_PATH = DEF(EBC_BINx86)\iec.exe
+*_VS2012x86xASL_EBC_SLINK_PATH = DEF(VS2012x86_BIN)\link.exe
+*_VS2012x86xASL_EBC_DLINK_PATH = DEF(VS2012x86_BIN)\link.exe
+
+*_VS2012x86xASL_EBC_MAKE_FLAGS = /nologo
+*_VS2012x86xASL_EBC_PP_FLAGS = /nologo /E /TC /FIAutoGen.h
+*_VS2012x86xASL_EBC_CC_FLAGS = /nologo /c /WX /W3 /FIAutoGen.h /D$(MODULE_ENTRY_POINT)=$(ARCH_ENTRY_POINT)
+*_VS2012x86xASL_EBC_VFRPP_FLAGS = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h
+*_VS2012x86xASL_EBC_SLINK_FLAGS = /lib /NOLOGO /MACHINE:EBC
+*_VS2012x86xASL_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
+
####################################################################################
#
@@ -2541,9 +3127,11 @@ DEFINE GCC_ALL_CC_FLAGS = -g -Os -fshort-wchar -fno-strict-aliasing -
DEFINE GCC_IA32_CC_FLAGS = DEF(GCC_ALL_CC_FLAGS) -m32 -malign-double -freorder-blocks -freorder-blocks-and-partition -O2 -mno-stack-arg-probe
DEFINE GCC_X64_CC_FLAGS = DEF(GCC_ALL_CC_FLAGS) -mno-red-zone -Wno-address -mno-stack-arg-probe
DEFINE GCC_IPF_CC_FLAGS = DEF(GCC_ALL_CC_FLAGS) -minline-int-divide-min-latency
-DEFINE GCC_ARMGCC_CC_FLAGS = DEF(GCC_ALL_CC_FLAGS) -mword-relocations -mlittle-endian -mabi=aapcs -mapcs -fno-short-enums -save-temps -fsigned-char -ffunction-sections -fdata-sections -fomit-frame-pointer
+DEFINE GCC_ARM_CC_FLAGS = DEF(GCC_ALL_CC_FLAGS) -mword-relocations -mlittle-endian -mabi=aapcs -mapcs -fno-short-enums -save-temps -fsigned-char -ffunction-sections -fdata-sections -fomit-frame-pointer -Wno-address
+DEFINE GCC_AARCH64_CC_FLAGS = DEF(GCC_ALL_CC_FLAGS) -mcmodel=large -mlittle-endian -fno-short-enums -save-temps -fverbose-asm -fsigned-char -ffunction-sections -fdata-sections -fomit-frame-pointer -fno-builtin -Wno-address
DEFINE GCC_DLINK_FLAGS_COMMON = -nostdlib --pie
DEFINE GCC_IA32_X64_DLINK_COMMON = DEF(GCC_DLINK_FLAGS_COMMON) --gc-sections
+DEFINE GCC_ARM_AARCH64_DLINK_COMMON= -Ttext=0x0 --emit-relocs -nostdlib -u $(IMAGE_ENTRY_POINT) -e $(IMAGE_ENTRY_POINT) -Map $(DEST_DIR_DEBUG)/$(BASE_NAME).map
DEFINE GCC_IA32_X64_ASLDLINK_FLAGS = DEF(GCC_IA32_X64_DLINK_COMMON) --entry _ReferenceAcpiTable -u $(IMAGE_ENTRY_POINT)
DEFINE GCC_IA32_X64_DLINK_FLAGS = DEF(GCC_IA32_X64_DLINK_COMMON) --entry _$(IMAGE_ENTRY_POINT) --file-alignment 0x20 --section-alignment 0x20 -Map $(DEST_DIR_DEBUG)/$(BASE_NAME).map
DEFINE GCC_IPF_DLINK_FLAGS = -nostdlib -O2 --gc-sections --dll -static --entry $(IMAGE_ENTRY_POINT) --undefined $(IMAGE_ENTRY_POINT) -Map $(DEST_DIR_DEBUG)/$(BASE_NAME).map
@@ -2555,9 +3143,11 @@ DEFINE GCC_VFRPP_FLAGS = -x c -E -P -DVFRCOMPILE --include $(DEST_DI
DEFINE GCC_ASLPP_FLAGS = -x c -E -P
DEFINE GCC_ASLCC_FLAGS = -x c
DEFINE GCC_WINDRES_FLAGS = -J rc -O coff
-DEFINE GCC_IA32_RC_FLAGS = -I binary -O elf32-i386 -B i386 --rename-section .data=.hii
-DEFINE GCC_X64_RC_FLAGS = -I binary -O elf64-x86-64 -B i386 --rename-section .data=.hii
-DEFINE GCC_IPF_RC_FLAGS = -I binary -O elf64-ia64-little -B ia64 --rename-section .data=.hii
+DEFINE GCC_IA32_RC_FLAGS = -I binary -O elf32-i386 -B i386 --rename-section .data=.hii
+DEFINE GCC_X64_RC_FLAGS = -I binary -O elf64-x86-64 -B i386 --rename-section .data=.hii
+DEFINE GCC_IPF_RC_FLAGS = -I binary -O elf64-ia64-little -B ia64 --rename-section .data=.hii
+DEFINE GCC_ARM_RC_FLAGS = -I binary -O elf32-littlearm -B arm --rename-section .data=.hii
+DEFINE GCC_AARCH64_RC_FLAGS = -I binary -O elf64-littleaarch64 -B aarch64 --rename-section .data=.hii
DEFINE GCC44_ALL_CC_FLAGS = -g -fshort-wchar -fno-stack-protector -fno-strict-aliasing -Wall -Werror -Wno-missing-braces -Wno-array-bounds -ffunction-sections -fdata-sections -c -include AutoGen.h -DSTRING_ARRAY_NAME=$(BASE_NAME)Strings
DEFINE GCC44_IA32_CC_FLAGS = DEF(GCC44_ALL_CC_FLAGS) -m32 -malign-double -D EFI32
@@ -2583,6 +3173,23 @@ DEFINE GCC46_IA32_X64_ASLDLINK_FLAGS = DEF(GCC45_IA32_X64_ASLDLINK_FLAGS)
DEFINE GCC46_IA32_X64_DLINK_FLAGS = DEF(GCC45_IA32_X64_DLINK_FLAGS)
DEFINE GCC46_X64_DLINK_FLAGS = DEF(GCC45_X64_DLINK_FLAGS)
DEFINE GCC46_ASM_FLAGS = DEF(GCC45_ASM_FLAGS)
+DEFINE GCC46_ARM_ASM_FLAGS = $(ARCHASM_FLAGS) $(PLATFORM_FLAGS) DEF(GCC_ASM_FLAGS) -mlittle-endian
+DEFINE GCC46_ARM_CC_FLAGS = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) DEF(GCC44_ALL_CC_FLAGS) -mword-relocations -mlittle-endian -mabi=aapcs -mapcs -fno-short-enums -save-temps -fsigned-char -mno-unaligned-access -Wno-address -fomit-frame-pointer
+DEFINE GCC46_ARM_DLINK_FLAGS = DEF(GCC_ARM_AARCH64_DLINK_COMMON) --oformat=elf32-littlearm
+
+DEFINE GCC47_IA32_CC_FLAGS = DEF(GCC46_IA32_CC_FLAGS)
+DEFINE GCC47_X64_CC_FLAGS = DEF(GCC46_X64_CC_FLAGS)
+DEFINE GCC47_IA32_X64_DLINK_COMMON = DEF(GCC46_IA32_X64_DLINK_COMMON)
+DEFINE GCC47_IA32_X64_ASLDLINK_FLAGS = DEF(GCC46_IA32_X64_ASLDLINK_FLAGS)
+DEFINE GCC47_IA32_X64_DLINK_FLAGS = DEF(GCC46_IA32_X64_DLINK_FLAGS)
+DEFINE GCC47_X64_DLINK_FLAGS = DEF(GCC46_X64_DLINK_FLAGS)
+DEFINE GCC47_ASM_FLAGS = DEF(GCC46_ASM_FLAGS)
+DEFINE GCC47_ARM_ASM_FLAGS = DEF(GCC46_ARM_ASM_FLAGS)
+DEFINE GCC47_AARCH64_ASM_FLAGS = $(ARCHASM_FLAGS) $(PLATFORM_FLAGS) DEF(GCC_ASM_FLAGS) -mlittle-endian
+DEFINE GCC47_ARM_CC_FLAGS = DEF(GCC46_ARM_CC_FLAGS)
+DEFINE GCC47_AARCH64_CC_FLAGS = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) DEF(GCC44_ALL_CC_FLAGS) -mcmodel=large -mlittle-endian -fno-short-enums -save-temps -fverbose-asm -fsigned-char -ffunction-sections -fdata-sections -fomit-frame-pointer -fno-builtin -Wno-address
+DEFINE GCC47_ARM_DLINK_FLAGS = DEF(GCC46_ARM_DLINK_FLAGS)
+DEFINE GCC47_AARCH64_DLINK_FLAGS = DEF(GCC_ARM_AARCH64_DLINK_COMMON)
####################################################################################
#
@@ -2865,6 +3472,150 @@ DEFINE GCC46_ASM_FLAGS = DEF(GCC45_ASM_FLAGS)
*_GCC46_X64_RC_FLAGS = DEF(GCC_X64_RC_FLAGS)
*_GCC46_X64_OBJCOPY_FLAGS =
+##################
+# GCC46 ARM definitions
+##################
+*_GCC46_ARM_OBJCOPY_PATH = echo
+*_GCC46_ARM_CC_PATH = ENV(GCC46_ARM_PREFIX)gcc
+*_GCC46_ARM_SLINK_PATH = ENV(GCC46_ARM_PREFIX)ar
+*_GCC46_ARM_DLINK_PATH = ENV(GCC46_ARM_PREFIX)ld
+*_GCC46_ARM_ASLDLINK_PATH = ENV(GCC46_ARM_PREFIX)ld
+*_GCC46_ARM_ASM_PATH = ENV(GCC46_ARM_PREFIX)gcc
+*_GCC46_ARM_PP_PATH = ENV(GCC46_ARM_PREFIX)gcc
+*_GCC46_ARM_VFRPP_PATH = ENV(GCC46_ARM_PREFIX)gcc
+*_GCC46_ARM_ASLCC_PATH = ENV(GCC46_ARM_PREFIX)gcc
+*_GCC46_ARM_ASLPP_PATH = ENV(GCC46_ARM_PREFIX)gcc
+*_GCC46_ARM_RC_PATH = ENV(GCC46_ARM_PREFIX)objcopy
+
+*_GCC46_ARM_ARCHCC_FLAGS = -mthumb
+*_GCC46_ARM_PLATFORM_FLAGS = -march=armv7-a
+
+*_GCC46_ARM_ASM_FLAGS = DEF(GCC46_ARM_ASM_FLAGS)
+*_GCC46_ARM_DLINK_FLAGS = DEF(GCC46_ARM_DLINK_FLAGS)
+*_GCC46_ARM_PLATFORM_FLAGS = -march=armv7-a
+*_GCC46_ARM_PP_FLAGS = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) DEF(GCC_PP_FLAGS)
+*_GCC46_ARM_RC_FLAGS = DEF(GCC_ARM_RC_FLAGS)
+*_GCC46_ARM_VFRPP_FLAGS = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) DEF(GCC_VFRPP_FLAGS)
+
+ DEBUG_GCC46_ARM_CC_FLAGS = DEF(GCC46_ARM_CC_FLAGS) -O0
+RELEASE_GCC46_ARM_CC_FLAGS = DEF(GCC46_ARM_CC_FLAGS) -Wno-unused-but-set-variable
+
+####################################################################################
+#
+# GCC 4.7 - This configuration is used to compile under Linux to produce
+# PE/COFF binaries using GCC 4.7.
+#
+####################################################################################
+*_GCC47_*_*_FAMILY = GCC
+
+*_GCC47_*_MAKE_PATH = make
+*_GCC47_*_ASL_PATH = DEF(UNIX_IASL_BIN)
+
+*_GCC47_*_PP_FLAGS = DEF(GCC_PP_FLAGS)
+*_GCC47_*_ASLPP_FLAGS = DEF(GCC_ASLPP_FLAGS)
+*_GCC47_*_ASLCC_FLAGS = DEF(GCC_ASLCC_FLAGS)
+*_GCC47_*_VFRPP_FLAGS = DEF(GCC_VFRPP_FLAGS)
+*_GCC47_*_APP_FLAGS =
+*_GCC47_*_ASL_FLAGS = DEF(IASL_FLAGS)
+*_GCC47_*_ASL_OUTFLAGS = DEF(IASL_OUTFLAGS)
+
+##################
+# GCC47 IA32 definitions
+##################
+*_GCC47_IA32_OBJCOPY_PATH = DEF(GCC47_IA32_PREFIX)objcopy
+*_GCC47_IA32_CC_PATH = DEF(GCC47_IA32_PREFIX)gcc
+*_GCC47_IA32_SLINK_PATH = DEF(GCC47_IA32_PREFIX)ar
+*_GCC47_IA32_DLINK_PATH = DEF(GCC47_IA32_PREFIX)ld
+*_GCC47_IA32_ASLDLINK_PATH = DEF(GCC47_IA32_PREFIX)ld
+*_GCC47_IA32_ASM_PATH = DEF(GCC47_IA32_PREFIX)gcc
+*_GCC47_IA32_PP_PATH = DEF(GCC47_IA32_PREFIX)gcc
+*_GCC47_IA32_VFRPP_PATH = DEF(GCC47_IA32_PREFIX)gcc
+*_GCC47_IA32_ASLCC_PATH = DEF(GCC47_IA32_PREFIX)gcc
+*_GCC47_IA32_ASLPP_PATH = DEF(GCC47_IA32_PREFIX)gcc
+*_GCC47_IA32_RC_PATH = DEF(GCC47_IA32_PREFIX)objcopy
+
+*_GCC47_IA32_ASLCC_FLAGS = DEF(GCC_ASLCC_FLAGS) -m32
+*_GCC47_IA32_ASLDLINK_FLAGS = DEF(GCC47_IA32_X64_ASLDLINK_FLAGS) -m elf_i386
+*_GCC47_IA32_ASM_FLAGS = DEF(GCC47_ASM_FLAGS) -m32 -march=i386
+*_GCC47_IA32_CC_FLAGS = DEF(GCC47_IA32_CC_FLAGS) -Os
+*_GCC47_IA32_DLINK_FLAGS = DEF(GCC47_IA32_X64_DLINK_FLAGS) -m elf_i386 --oformat=elf32-i386
+*_GCC47_IA32_RC_FLAGS = DEF(GCC_IA32_RC_FLAGS)
+*_GCC47_IA32_OBJCOPY_FLAGS =
+
+##################
+# GCC47 X64 definitions
+##################
+*_GCC47_X64_OBJCOPY_PATH = DEF(GCC47_X64_PREFIX)objcopy
+*_GCC47_X64_CC_PATH = DEF(GCC47_X64_PREFIX)gcc
+*_GCC47_X64_SLINK_PATH = DEF(GCC47_X64_PREFIX)ar
+*_GCC47_X64_DLINK_PATH = DEF(GCC47_X64_PREFIX)ld
+*_GCC47_X64_ASLDLINK_PATH = DEF(GCC47_X64_PREFIX)ld
+*_GCC47_X64_ASM_PATH = DEF(GCC47_X64_PREFIX)gcc
+*_GCC47_X64_PP_PATH = DEF(GCC47_X64_PREFIX)gcc
+*_GCC47_X64_VFRPP_PATH = DEF(GCC47_X64_PREFIX)gcc
+*_GCC47_X64_ASLCC_PATH = DEF(GCC47_X64_PREFIX)gcc
+*_GCC47_X64_ASLPP_PATH = DEF(GCC47_X64_PREFIX)gcc
+*_GCC47_X64_RC_PATH = DEF(GCC47_X64_PREFIX)objcopy
+
+*_GCC47_X64_ASLCC_FLAGS = DEF(GCC_ASLCC_FLAGS) -m64
+*_GCC47_X64_ASLDLINK_FLAGS = DEF(GCC47_IA32_X64_ASLDLINK_FLAGS) -m elf_x86_64
+*_GCC47_X64_ASM_FLAGS = DEF(GCC47_ASM_FLAGS) -m64
+*_GCC47_X64_CC_FLAGS = DEF(GCC47_X64_CC_FLAGS)
+*_GCC47_X64_DLINK_FLAGS = DEF(GCC47_X64_DLINK_FLAGS)
+*_GCC47_X64_RC_FLAGS = DEF(GCC_X64_RC_FLAGS)
+*_GCC47_X64_OBJCOPY_FLAGS =
+
+##################
+# GCC47 ARM definitions
+##################
+*_GCC47_ARM_CC_PATH = ENV(GCC47_ARM_PREFIX)gcc
+*_GCC47_ARM_SLINK_PATH = ENV(GCC47_ARM_PREFIX)ar
+*_GCC47_ARM_DLINK_PATH = ENV(GCC47_ARM_PREFIX)ld
+*_GCC47_ARM_ASLDLINK_PATH = ENV(GCC47_ARM_PREFIX)ld
+*_GCC47_ARM_ASM_PATH = ENV(GCC47_ARM_PREFIX)gcc
+*_GCC47_ARM_PP_PATH = ENV(GCC47_ARM_PREFIX)gcc
+*_GCC47_ARM_VFRPP_PATH = ENV(GCC47_ARM_PREFIX)gcc
+*_GCC47_ARM_ASLCC_PATH = ENV(GCC47_ARM_PREFIX)gcc
+*_GCC47_ARM_ASLPP_PATH = ENV(GCC47_ARM_PREFIX)gcc
+*_GCC47_ARM_RC_PATH = ENV(GCC47_ARM_PREFIX)objcopy
+
+*_GCC46_ARM_ARCHCC_FLAGS = -mthumb
+*_GCC46_ARM_PLATFORM_FLAGS = -march=armv7-a
+
+*_GCC47_ARM_ASM_FLAGS = DEF(GCC47_ARM_ASM_FLAGS)
+*_GCC47_ARM_DLINK_FLAGS = DEF(GCC47_ARM_DLINK_FLAGS)
+*_GCC47_ARM_PLATFORM_FLAGS = -march=armv7-a
+*_GCC47_ARM_PP_FLAGS = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) DEF(GCC_PP_FLAGS)
+*_GCC47_ARM_RC_FLAGS = DEF(GCC_ARM_RC_FLAGS)
+*_GCC47_ARM_VFRPP_FLAGS = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) DEF(GCC_VFRPP_FLAGS)
+
+ DEBUG_GCC47_ARM_CC_FLAGS = DEF(GCC47_ARM_CC_FLAGS) -O0
+RELEASE_GCC47_ARM_CC_FLAGS = DEF(GCC47_ARM_CC_FLAGS) -Wno-unused-but-set-variable
+
+##################
+# GCC47 AARCH64 definitions
+##################
+*_GCC47_AARCH64_CC_PATH = ENV(GCC47_AARCH64_PREFIX)gcc
+*_GCC47_AARCH64_SLINK_PATH = ENV(GCC47_AARCH64_PREFIX)ar
+*_GCC47_AARCH64_DLINK_PATH = ENV(GCC47_AARCH64_PREFIX)ld
+*_GCC47_AARCH64_ASLDLINK_PATH = ENV(GCC47_AARCH64_PREFIX)ld
+*_GCC47_AARCH64_ASM_PATH = ENV(GCC47_AARCH64_PREFIX)gcc
+*_GCC47_AARCH64_PP_PATH = ENV(GCC47_AARCH64_PREFIX)gcc
+*_GCC47_AARCH64_VFRPP_PATH = ENV(GCC47_AARCH64_PREFIX)gcc
+*_GCC47_AARCH64_ASLCC_PATH = ENV(GCC47_AARCH64_PREFIX)gcc
+*_GCC47_AARCH64_ASLPP_PATH = ENV(GCC47_AARCH64_PREFIX)gcc
+*_GCC47_AARCH64_RC_PATH = ENV(GCC47_AARCH64_PREFIX)objcopy
+
+*_GCC47_AARCH64_ASM_FLAGS = DEF(GCC47_AARCH64_ASM_FLAGS)
+*_GCC47_AARCH64_DLINK_FLAGS = DEF(GCC47_AARCH64_DLINK_FLAGS)
+*_GCC47_AARCH64_PLATFORM_FLAGS =
+*_GCC47_AARCH64_PP_FLAGS = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) DEF(GCC_PP_FLAGS)
+*_GCC47_AARCH64_RC_FLAGS = DEF(GCC_AARCH64_RC_FLAGS)
+*_GCC47_AARCH64_VFRPP_FLAGS = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) DEF(GCC_VFRPP_FLAGS)
+
+ DEBUG_GCC47_AARCH64_CC_FLAGS = DEF(GCC47_AARCH64_CC_FLAGS) -O0
+RELEASE_GCC47_AARCH64_CC_FLAGS = DEF(GCC47_AARCH64_CC_FLAGS) -Wno-unused-but-set-variable
+
####################################################################################
#
# Cygwin GCC And Intel ACPI Compiler
@@ -3106,9 +3857,9 @@ DEFINE GCC46_ASM_FLAGS = DEF(GCC45_ASM_FLAGS)
*_ELFGCC_IA32_ASM_PATH = DEF(ELFGCC_BIN)/gcc
*_ELFGCC_IA32_PP_PATH = DEF(ELFGCC_BIN)/gcc
*_ELFGCC_IA32_VFRPP_PATH = DEF(ELFGCC_BIN)/gcc
-*_ELFGCC32_IA32_ASLCC_PATH = DEF(ELFGCC_BIN)/gcc
-*_ELFGCC32_IA32_ASLPP_PATH = DEF(ELFGCC_BIN)/gcc
-*_ELFGCC32_IA32_ASLDLINK_PATH = DEF(ELFGCC_BIN)/ld
+*_ELFGCC_IA32_ASLCC_PATH = DEF(ELFGCC_BIN)/gcc
+*_ELFGCC_IA32_ASLPP_PATH = DEF(ELFGCC_BIN)/gcc
+*_ELFGCC_IA32_ASLDLINK_PATH = DEF(ELFGCC_BIN)/ld
*_ELFGCC_IA32_RC_PATH = DEF(ELFGCC_BIN)/objcopy
*_ELFGCC_IA32_CC_FLAGS = -m32 -g -fshort-wchar -fno-strict-aliasing -Wall -malign-double -c -include $(DEST_DIR_DEBUG)/AutoGen.h -DSTRING_ARRAY_NAME=$(BASE_NAME)Strings
@@ -4628,7 +5379,8 @@ RELEASE_XCLANG_X64_CC_FLAGS = -ccc-host-triple x86_64-pc-win32-macho -c -Os
#
####################################################################################
-DEFINE RVCT_ALL_CC_FLAGS = --c90 -c --no_autoinline --asm --gnu --apcs /interwork --signed_chars --no_unaligned_access --split_sections --enum_is_int --preinclude AutoGen.h --diag_warning 167 --diag_style=ide
+DEFINE RVCT_ALL_ASM_FLAGS = --diag_suppress=1786 --diag_error=warning --apcs /interwork
+DEFINE RVCT_ALL_CC_FLAGS = --c90 -c --no_autoinline --asm --gnu --apcs /interwork --signed_chars --no_unaligned_access --split_sections --enum_is_int --preinclude AutoGen.h --diag_suppress=186 --diag_warning 167 --diag_error=warning --diag_style=ide
DEFINE RVCT_ALL_DLINK_FLAGS = --ro-base 0 --no_scanlib --reloc --no_exceptions --datacompressor off --strict --symbols --diag_style=ide
####################################################################################
@@ -4652,13 +5404,13 @@ DEFINE RVCT_ALL_DLINK_FLAGS = --ro-base 0 --no_scanlib --reloc --no_exceptions
RELEASE_RVCT_ARM_DLINK_FLAGS = $(ARCHDLINK_FLAGS) DEF(RVCT_ALL_DLINK_FLAGS) --entry $(IMAGE_ENTRY_POINT) --map --list $(DEST_DIR_DEBUG)/$(BASE_NAME).map
-*_RVCT_ARM_ASM_FLAGS = $(ARCHASM_FLAGS) $(PLATFORM_FLAGS) --apcs /interwork
+*_RVCT_ARM_ASM_FLAGS = $(ARCHASM_FLAGS) $(PLATFORM_FLAGS) DEF(RVCT_ALL_ASM_FLAGS)
*_RVCT_ARM_PP_FLAGS = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) -E
*_RVCT_ARM_VFRPP_FLAGS = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) -E -DVFRCOMPILE --preinclude $(DEST_DIR_DEBUG)/$(MODULE_NAME)StrDefs.h
*_RVCT_ARM_MAKE_PATH = nmake /NOLOGO
*_RVCT_ARM_SLINK_FLAGS = --partial -o
DEBUG_RVCT_ARM_CC_FLAGS = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) DEF(RVCT_ALL_CC_FLAGS) -O1 -g
-RELEASE_RVCT_ARM_CC_FLAGS = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) DEF(RVCT_ALL_CC_FLAGS) -O2
+RELEASE_RVCT_ARM_CC_FLAGS = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) --diag_suppress=550 DEF(RVCT_ALL_CC_FLAGS) -O2
##################
# ARM definitions
@@ -4680,6 +5432,8 @@ RELEASE_RVCT_ARM_CC_FLAGS = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) DEF(RVCT_ALL_CC_F
*_RVCTLINUX_*_*_FAMILY = RVCT
*_RVCTLINUX_*_*_BUILDRULEFAMILY = RVCTLINUX
+*_RVCTLINUX_*_MAKE_PATH = make
+
#
# Use default values, or override in DSC file
#
@@ -4691,13 +5445,12 @@ RELEASE_RVCT_ARM_CC_FLAGS = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) DEF(RVCT_ALL_CC_F
DEBUG_RVCTLINUX_ARM_DLINK_FLAGS = $(ARCHDLINK_FLAGS) DEF(RVCT_ALL_DLINK_FLAGS) --entry $(IMAGE_ENTRY_POINT) --map --list $(DEST_DIR_DEBUG)/$(BASE_NAME).map
RELEASE_RVCTLINUX_ARM_DLINK_FLAGS = $(ARCHDLINK_FLAGS) DEF(RVCT_ALL_DLINK_FLAGS) --entry $(IMAGE_ENTRY_POINT) --map --list $(DEST_DIR_DEBUG)/$(BASE_NAME).map
-*_RVCTLINUX_ARM_ASM_FLAGS = $(ARCHASM_FLAGS) $(PLATFORM_FLAGS) --apcs /interwork
+*_RVCTLINUX_ARM_ASM_FLAGS = $(ARCHASM_FLAGS) $(PLATFORM_FLAGS) DEF(RVCT_ALL_ASM_FLAGS)
*_RVCTLINUX_ARM_PP_FLAGS = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) -E
*_RVCTLINUX_ARM_VFRPP_FLAGS = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) -E -DVFRCOMPILE --preinclude $(DEST_DIR_DEBUG)/$(MODULE_NAME)StrDefs.h
-*_RVCTLINUX_ARM_MAKE_PATH = make
*_RVCTLINUX_ARM_SLINK_FLAGS = --partial -o
DEBUG_RVCTLINUX_ARM_CC_FLAGS = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) DEF(RVCT_ALL_CC_FLAGS) -O1 -g
-RELEASE_RVCTLINUX_ARM_CC_FLAGS = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) DEF(RVCT_ALL_CC_FLAGS) -O2
+RELEASE_RVCTLINUX_ARM_CC_FLAGS = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) --diag_suppress=550 DEF(RVCT_ALL_CC_FLAGS) -O2
##################
# ARM definitions
@@ -4739,13 +5492,13 @@ RELEASE_RVCTLINUX_ARM_CC_FLAGS = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) DEF(RVCT_ALL
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`
RELEASE_RVCTCYGWIN_ARM_DLINK_FLAGS = "$(DLINKPATH_FLAG)" $(ARCHDLINK_FLAGS) DEF(RVCT_ALL_DLINK_FLAGS) --entry $(IMAGE_ENTRY_POINT) --map --list `cygpath -m $(DEST_DIR_DEBUG)/$(BASE_NAME).map`
-*_RVCTCYGWIN_ARM_ASM_FLAGS = "$(ASMPATH_FLAG)" $(ARCHASM_FLAGS) $(PLATFORM_FLAGS) --apcs /interwork
+*_RVCTCYGWIN_ARM_ASM_FLAGS = "$(ASMPATH_FLAG)" $(ARCHASM_FLAGS) $(PLATFORM_FLAGS) DEF(RVCT_ALL_ASM_FLAGS)
*_RVCTCYGWIN_ARM_PP_FLAGS = "$(CCPATH_FLAG)" $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) -E
*_RVCTCYGWIN_ARM_VFRPP_FLAGS = "$(CCPATH_FLAG)" $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) -E -DVFRCOMPILE --preinclude `cygpath -m $(DEST_DIR_DEBUG)/$(MODULE_NAME)StrDefs.h`
*_RVCTCYGWIN_ARM_MAKE_PATH = make
*_RVCTCYGWIN_ARM_SLINK_FLAGS = "$(SLINKPATH_FLAG)" --partial -o
DEBUG_RVCTCYGWIN_ARM_CC_FLAGS = "$(CCPATH_FLAG)" $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) DEF(RVCT_ALL_CC_FLAGS) -O1 -g
-RELEASE_RVCTCYGWIN_ARM_CC_FLAGS = "$(CCPATH_FLAG)" $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) DEF(RVCT_ALL_CC_FLAGS) -O2
+RELEASE_RVCTCYGWIN_ARM_CC_FLAGS = "$(CCPATH_FLAG)" $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) --diag_suppress=550 DEF(RVCT_ALL_CC_FLAGS) -O2
##################
# ARM definitions
@@ -4785,16 +5538,16 @@ RELEASE_RVCTCYGWIN_ARM_CC_FLAGS = "$(CCPATH_FLAG)" $(ARCHCC_FLAGS) $(PLATFORM_F
# ARM definitions
##################
-*_ARMGCC_ARM_ASLCC_PATH = ENV(ARMGCC_TOOLS_PATH)arm-none-eabi-gcc
-*_ARMGCC_ARM_ASLDLINK_PATH = ENV(ARMGCC_TOOLS_PATH)arm-none-eabi-ld
-*_ARMGCC_ARM_ASLPP_PATH = ENV(ARMGCC_TOOLS_PATH)arm-none-eabi-gcc
+*_ARMGCC_ARM_ASLCC_PATH = ENV(CROSS_COMPILE)gcc
+*_ARMGCC_ARM_ASLDLINK_PATH = ENV(CROSS_COMPILE)ld
+*_ARMGCC_ARM_ASLPP_PATH = ENV(CROSS_COMPILE)gcc
-*_ARMGCC_ARM_CC_PATH = ENV(ARMGCC_TOOLS_PATH)arm-none-eabi-gcc
-*_ARMGCC_ARM_SLINK_PATH = ENV(ARMGCC_TOOLS_PATH)arm-none-eabi-ar
-*_ARMGCC_ARM_DLINK_PATH = ENV(ARMGCC_TOOLS_PATH)arm-none-eabi-ld
-*_ARMGCC_ARM_ASM_PATH = ENV(ARMGCC_TOOLS_PATH)arm-none-eabi-as
-*_ARMGCC_ARM_PP_PATH = ENV(ARMGCC_TOOLS_PATH)arm-none-eabi-gcc
-*_ARMGCC_ARM_VFRPP_PATH = ENV(ARMGCC_TOOLS_PATH)arm-none-eabi-gcc
+*_ARMGCC_ARM_CC_PATH = ENV(CROSS_COMPILE)gcc
+*_ARMGCC_ARM_SLINK_PATH = ENV(CROSS_COMPILE)ar
+*_ARMGCC_ARM_DLINK_PATH = ENV(CROSS_COMPILE)ld
+*_ARMGCC_ARM_ASM_PATH = ENV(CROSS_COMPILE)as
+*_ARMGCC_ARM_PP_PATH = ENV(CROSS_COMPILE)gcc
+*_ARMGCC_ARM_VFRPP_PATH = ENV(CROSS_COMPILE)gcc
#
# Use default values, or override in DSC file
@@ -4813,8 +5566,44 @@ RELEASE_ARMGCC_ARM_ASM_FLAGS = $(ARCHASM_FLAGS) $(PLATFORM_FLAGS) -mlittle-end
*_ARMGCC_ARM_SLINK_FLAGS = -rc
*_ARMGCC_ARM_DLINK_FLAGS = $(ARCHDLINK_FLAGS) -Ttext=0x0 --oformat=elf32-littlearm --emit-relocs -nostdlib -u $(IMAGE_ENTRY_POINT) -e $(IMAGE_ENTRY_POINT) -Map $(DEST_DIR_DEBUG)/$(BASE_NAME).map
- DEBUG_ARMGCC_ARM_CC_FLAGS = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) DEF(GCC_ARMGCC_CC_FLAGS) -combine -O0
-RELEASE_ARMGCC_ARM_CC_FLAGS = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) DEF(GCC_ARMGCC_CC_FLAGS) -combine -Wno-unused
+ DEBUG_ARMGCC_ARM_CC_FLAGS = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) DEF(GCC_ARM_CC_FLAGS) -O0
+RELEASE_ARMGCC_ARM_CC_FLAGS = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) DEF(GCC_ARM_CC_FLAGS) -Wno-unused
+
+######################
+# AArch64 definitions
+######################
+# AARCH64 64bit ARM Bare-metal GCC (ARM Architecture 64)
+
+*_ARMGCC_AARCH64_ASLCC_PATH = ENV(CROSS_COMPILE)gcc
+*_ARMGCC_AARCH64_ASLDLINK_PATH = ENV(CROSS_COMPILE)ld
+*_ARMGCC_AARCH64_ASLPP_PATH = ENV(CROSS_COMPILE)gcc
+
+*_ARMGCC_AARCH64_CC_PATH = ENV(CROSS_COMPILE)gcc
+*_ARMGCC_AARCH64_SLINK_PATH = ENV(CROSS_COMPILE)ar
+*_ARMGCC_AARCH64_DLINK_PATH = ENV(CROSS_COMPILE)ld
+*_ARMGCC_AARCH64_ASM_PATH = ENV(CROSS_COMPILE)as
+*_ARMGCC_AARCH64_PP_PATH = ENV(CROSS_COMPILE)gcc
+*_ARMGCC_AARCH64_VFRPP_PATH = ENV(CROSS_COMPILE)gcc
+
+#
+# Use default values, or override in DSC file
+#
+*_ARMGCC_AARCH64_ARCHCC_FLAGS =
+*_ARMGCC_AARCH64_ARCHASM_FLAGS =
+*_ARMGCC_AARCH64_ARCHDLINK_FLAGS =
+*_ARMGCC_AARCH64_PLATFORM_FLAGS =
+
+ DEBUG_ARMGCC_AARCH64_ASM_FLAGS = $(ARCHASM_FLAGS) $(PLATFORM_FLAGS) -g
+RELEASE_ARMGCC_AARCH64_ASM_FLAGS = $(ARCHASM_FLAGS) $(PLATFORM_FLAGS)
+
+*_ARMGCC_AARCH64_PP_FLAGS = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) -E -x assembler-with-cpp -include $(DEST_DIR_DEBUG)/AutoGen.h
+*_ARMGCC_AARCH64_VFRPP_FLAGS = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) -x c -E -P -DVFRCOMPILE --include $(DEST_DIR_DEBUG)/$(MODULE_NAME)StrDefs.h
+
+*_ARMGCC_AARCH64_SLINK_FLAGS = -rc
+*_ARMGCC_AARCH64_DLINK_FLAGS = $(ARCHDLINK_FLAGS) -Ttext=0x0 --emit-relocs -nostdlib -u $(IMAGE_ENTRY_POINT) -e $(IMAGE_ENTRY_POINT) -Map $(DEST_DIR_DEBUG)/$(BASE_NAME).map
+
+ DEBUG_ARMGCC_AARCH64_CC_FLAGS = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) DEF(GCC_AARCH64_CC_FLAGS) -Wno-address -O0
+RELEASE_ARMGCC_AARCH64_CC_FLAGS = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) DEF(GCC_AARCH64_CC_FLAGS) -Wno-address -Wno-unused-but-set-variable
####################################################################################
#
@@ -4871,8 +5660,44 @@ RELEASE_ARMLINUXGCC_ARM_ASM_FLAGS = $(ARCHASM_FLAGS) $(PLATFORM_FLAGS) -mlittl
*_ARMLINUXGCC_ARM_SLINK_FLAGS = -rc
*_ARMLINUXGCC_ARM_DLINK_FLAGS = $(ARCHDLINK_FLAGS) -Ttext=0x0 --oformat=elf32-littlearm --emit-relocs -nostdlib -u $(IMAGE_ENTRY_POINT) -e $(IMAGE_ENTRY_POINT) -Map $(DEST_DIR_DEBUG)/$(BASE_NAME).map
- DEBUG_ARMLINUXGCC_ARM_CC_FLAGS = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) DEF(GCC_ARMGCC_CC_FLAGS) -Wno-address -O0
-RELEASE_ARMLINUXGCC_ARM_CC_FLAGS = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) DEF(GCC_ARMGCC_CC_FLAGS) -Wno-address -Wno-unused-but-set-variable
+ DEBUG_ARMLINUXGCC_ARM_CC_FLAGS = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) DEF(GCC_ARM_CC_FLAGS) -fno-stack-protector -mno-unaligned-access -O0
+RELEASE_ARMLINUXGCC_ARM_CC_FLAGS = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) DEF(GCC_ARM_CC_FLAGS) -fno-stack-protector -mno-unaligned-access -Wno-unused-but-set-variable
+
+######################
+# AArch64 definitions
+######################
+# AARCH64 64bit ARM GNU/Linux GCC (ARM Architecture 64)
+
+*_ARMLINUXGCC_AARCH64_ASLCC_PATH = ENV(AARCH64LINUXGCC_TOOLS_PATH)aarch64-linux-gnu-gcc
+*_ARMLINUXGCC_AARCH64_ASLDLINK_PATH = ENV(AARCH64LINUXGCC_TOOLS_PATH)aarch64-linux-gnu-ld
+*_ARMLINUXGCC_AARCH64_ASLPP_PATH = ENV(AARCH64LINUXGCC_TOOLS_PATH)aarch64-linux-gnu-gcc
+
+*_ARMLINUXGCC_AARCH64_CC_PATH = ENV(AARCH64LINUXGCC_TOOLS_PATH)aarch64-linux-gnu-gcc
+*_ARMLINUXGCC_AARCH64_SLINK_PATH = ENV(AARCH64LINUXGCC_TOOLS_PATH)aarch64-linux-gnu-ar
+*_ARMLINUXGCC_AARCH64_DLINK_PATH = ENV(AARCH64LINUXGCC_TOOLS_PATH)aarch64-linux-gnu-ld
+*_ARMLINUXGCC_AARCH64_ASM_PATH = ENV(AARCH64LINUXGCC_TOOLS_PATH)aarch64-linux-gnu-as
+*_ARMLINUXGCC_AARCH64_PP_PATH = ENV(AARCH64LINUXGCC_TOOLS_PATH)aarch64-linux-gnu-gcc
+*_ARMLINUXGCC_AARCH64_VFRPP_PATH = ENV(AARCH64LINUXGCC_TOOLS_PATH)aarch64-linux-gnu-gcc
+
+#
+# Use default values, or override in DSC file
+#
+*_ARMLINUXGCC_AARCH64_ARCHCC_FLAGS =
+*_ARMLINUXGCC_AARCH64_ARCHASM_FLAGS =
+*_ARMLINUXGCC_AARCH64_ARCHDLINK_FLAGS =
+*_ARMLINUXGCC_AARCH64_PLATFORM_FLAGS =
+
+ DEBUG_ARMLINUXGCC_AARCH64_ASM_FLAGS = $(ARCHASM_FLAGS) $(PLATFORM_FLAGS) -g
+RELEASE_ARMLINUXGCC_AARCH64_ASM_FLAGS = $(ARCHASM_FLAGS) $(PLATFORM_FLAGS)
+
+*_ARMLINUXGCC_AARCH64_PP_FLAGS = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) -E -x assembler-with-cpp -include $(DEST_DIR_DEBUG)/AutoGen.h
+*_ARMLINUXGCC_AARCH64_VFRPP_FLAGS = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) -x c -E -P -DVFRCOMPILE --include $(DEST_DIR_DEBUG)/$(MODULE_NAME)StrDefs.h
+
+*_ARMLINUXGCC_AARCH64_SLINK_FLAGS = -rc
+*_ARMLINUXGCC_AARCH64_DLINK_FLAGS = $(ARCHDLINK_FLAGS) -Ttext=0x0 --emit-relocs -nostdlib -u $(IMAGE_ENTRY_POINT) -e $(IMAGE_ENTRY_POINT) -Map $(DEST_DIR_DEBUG)/$(BASE_NAME).map
+
+ DEBUG_ARMLINUXGCC_AARCH64_CC_FLAGS = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) DEF(GCC_AARCH64_CC_FLAGS) -Wno-address -O0
+RELEASE_ARMLINUXGCC_AARCH64_CC_FLAGS = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) DEF(GCC_AARCH64_CC_FLAGS) -Wno-address -Wno-unused-but-set-variable
#################
# ASM 16 linker defintions