]> git.proxmox.com Git - mirror_edk2.git/blobdiff - Tools/Conf/tools_def.template
Add "-d debug" to the IPF ASM FLAGS to enable source level debugging of IPF .S files.
[mirror_edk2.git] / Tools / Conf / tools_def.template
index 33a22e43c0c0af8b0a936c5db1f7fb56c711a52b..e4258b6cf062f6d8efc42890add97d4ab697bf48 100644 (file)
@@ -15,6 +15,23 @@ IDENTIFIER = Default TOOL_CHAIN_CONF
 ####################################################################################\r
 #\r
 # format: TARGET_TOOLCHAIN_ARCH_COMMANDTYPE_ATTRIBUTE = <string>\r
+# priorty:\r
+#         TARGET_TOOLCHAIN_ARCH_COMMANDTYPE_ATTRIBUTE (Highest)\r
+#         ******_TOOLCHAIN_ARCH_COMMANDTYPE_ATTRIBUTE\r
+#         TARGET_*********_ARCH_COMMANDTYPE_ATTRIBUTE\r
+#         ******_*********_ARCH_COMMANDTYPE_ATTRIBUTE\r
+#         TARGET_TOOLCHAIN_****_COMMANDTYPE_ATTRIBUTE\r
+#         ******_TOOLCHAIN_****_COMMANDTYPE_ATTRIBUTE\r
+#         TARGET_*********_****_COMMANDTYPE_ATTRIBUTE\r
+#         ******_*********_****_COMMANDTYPE_ATTRIBUTE\r
+#         TARGET_TOOLCHAIN_ARCH_***********_ATTRIBUTE\r
+#         ******_TOOLCHAIN_ARCH_***********_ATTRIBUTE\r
+#         TARGET_*********_ARCH_***********_ATTRIBUTE\r
+#         ******_*********_ARCH_***********_ATTRIBUTE\r
+#         TARGET_TOOLCHAIN_****_***********_ATTRIBUTE\r
+#         ******_TOOLCHAIN_****_***********_ATTRIBUTE\r
+#         TARGET_*********_****_***********_ATTRIBUTE\r
+#         ******_*********_****_***********_ATTRIBUTE (Lowest)\r
 #\r
 ####################################################################################\r
 ####################################################################################\r
@@ -42,12 +59,14 @@ IDENTIFIER = Default TOOL_CHAIN_CONF
 *_VS2003_IA32_*_FAMILY          = MSFT\r
 \r
 *_VS2003_IA32_CC_NAME           = cl.exe  \r
+*_VS2003_IA32_VFRPP_NAME        = cl.exe\r
 *_VS2003_IA32_SLINK_NAME        = lib.exe\r
 *_VS2003_IA32_DLINK_NAME        = link.exe\r
 *_VS2003_IA32_ASMLINK_NAME      = link.exe\r
 *_VS2003_IA32_PP_NAME           = cl.exe \r
 *_VS2003_IA32_ASM_NAME          = ml.exe\r
 *_VS2003_IA32_ASM_EXT           = .asm\r
+*_VS2003_IA32_PCH_NAME          = cl.exe \r
 \r
 ##################\r
 # IA32 definitions\r
@@ -56,13 +75,16 @@ IDENTIFIER = Default TOOL_CHAIN_CONF
 *_VS2003_IA32_*_DPATH           = C:\Program Files\Microsoft Visual Studio .NET 2003\Common7\IDE\r
 \r
 *_VS2003_IA32_PP_FLAGS          = /nologo /P /TC /FI${DEST_DIR_DEBUG}/AutoGen.h \r
-DEBUG_VS2003_IA32_CC_FLAGS      = /nologo /W4 /WX /Gy /c /D UNICODE /D EFI32 /O1ib2 /GL /DEFI_FIRMWARE_VENDOR=L\"INTEL\" /DSTRING_ARRAY_NAME=${BASE_NAME}Strings /FI${DEST_DIR_DEBUG}/AutoGen.h /EHs-c- /GF /Gs8192 /Zi /Gm \r
-RELEASE_VS2003_IA32_CC_FLAGS    = /nologo /W4 /WX /Gy /c /D UNICODE /D EFI32 /O1ib2 /GL /DEFI_FIRMWARE_VENDOR=L\"INTEL\" /DSTRING_ARRAY_NAME=${BASE_NAME}Strings /FI${DEST_DIR_DEBUG}/AutoGen.h /EHs-c- /GF /Gs8192\r
+*_VS2003_IA32_VFRPP_FLAGS       = /nologo /P /TC /DVFRCOMPILE\r
+DEBUG_VS2003_IA32_CC_FLAGS      = /nologo /W4 /WX /Gy /c /D UNICODE /D EFI32 /O1ib2 /GL /DSTRING_ARRAY_NAME=${BASE_NAME}Strings /FI${DEST_DIR_DEBUG}/AutoGen.h /EHs-c- /GF /Gs8192 /Fp${DEST_DIR_OUTPUT}/AutoGen.h.gch /Yu${DEST_DIR_DEBUG}/AutoGen.h /Zi /Gm\r
+RELEASE_VS2003_IA32_CC_FLAGS    = /nologo /W4 /WX /Gy /c /D UNICODE /D EFI32 /O1ib2 /GL /DSTRING_ARRAY_NAME=${BASE_NAME}Strings /FI${DEST_DIR_DEBUG}/AutoGen.h /EHs-c- /GF /Gs8192 /Fp${DEST_DIR_OUTPUT}/AutoGen.h.gch /Yu${DEST_DIR_DEBUG}/AutoGen.h\r
+DEBUG_VS2003_IA32_PCH_FLAGS     = /nologo /W4 /WX /Gy /c /D UNICODE /D EFI32 /O1ib2 /GL /DSTRING_ARRAY_NAME=${BASE_NAME}Strings /FI${DEST_DIR_DEBUG}/AutoGen.h /EHs-c- /GF /Gs8192 /Fp${DEST_DIR_OUTPUT}/AutoGen.h.gch /Yc /TC /Zi /Gm\r
+RELEASE_VS2003_IA32_PCH_FLAGS   = /nologo /W4 /WX /Gy /c /D UNICODE /D EFI32 /O1ib2 /GL /DSTRING_ARRAY_NAME=${BASE_NAME}Strings /FI${DEST_DIR_DEBUG}/AutoGen.h /EHs-c- /GF /Gs8192 /Fp${DEST_DIR_OUTPUT}/AutoGen.h.gch /Yc /TC\r
 DEBUG_VS2003_IA32_ASM_FLAGS     = /nologo /W3 /WX /c /coff /Cx /Zd /W0 /Zi\r
 RELEASE_VS2003_IA32_ASM_FLAGS   = /nologo /W3 /WX /c /coff /Cx /Zd /W0\r
 *_VS2003_IA32_SLINK_FLAGS       = /nologo /LTCG\r
-DEBUG_VS2003_IA32_DLINK_FLAGS   = /NOLOGO /NODEFAULTLIB /IGNORE:4086 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /MACHINE:I386 /LTCG /DLL /ENTRY:${ENTRYPOINT} /SUBSYSTEM:CONSOLE /SAFESEH:NO /BASE:0 /DRIVER /DEBUG   \r
-RELEASE_VS2003_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4086 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /MACHINE:I386 /LTCG /DLL /ENTRY:${ENTRYPOINT} /SUBSYSTEM:CONSOLE /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.data=.text /MERGE:.rdata=.text\r
+DEBUG_VS2003_IA32_DLINK_FLAGS   = /NOLOGO /NODEFAULTLIB /IGNORE:4086 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /MACHINE:I386 /LTCG /DLL /ENTRY:${ENTRYPOINT} /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG   \r
+RELEASE_VS2003_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4086 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /MACHINE:I386 /LTCG /DLL /ENTRY:${ENTRYPOINT} /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.data=.text /MERGE:.rdata=.text\r
 \r
 ####################################################################################\r
 #\r
@@ -73,13 +95,15 @@ RELEASE_VS2003_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4086 /OPT:REF /O
 *_WINDDK3790x1830_*_*_FAMILY        = MSFT\r
 \r
 *_WINDDK3790x1830_*_CC_NAME         = cl.exe\r
+*_WINDDK3790x1830_*_VFRPP_NAME      = cl.exe\r
 *_WINDDK3790x1830_*_SLINK_NAME      = lib.exe\r
 *_WINDDK3790x1830_*_DLINK_NAME      = link.exe\r
 *_WINDDK3790x1830_*_ASMLINK_NAME    = link.exe\r
 *_WINDDK3790x1830_*_PP_NAME         = cl.exe\r
+*_WINDDK3790x1830_*_PCH_NAME        = cl.exe\r
 \r
 *_WINDDK3790x1830_*_SLINK_FLAGS     = /nologo /LTCG\r
-\r
+*_WINDDK3790x1830_*_VFRPP_FLAGS     = /nologo /P /TC /DVFRCOMPILE\r
 ##################\r
 # IA32 definitions\r
 ##################\r
@@ -90,12 +114,15 @@ RELEASE_VS2003_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4086 /OPT:REF /O
 *_WINDDK3790x1830_IA32_ASMLINK_PATH      = C:\WINDDK\3790.1830\bin\bin16\\r
 \r
 *_WINDDK3790x1830_IA32_PP_FLAGS          = /nologo /P /E /TC /FI${DEST_DIR_DEBUG}/AutoGen.h \r
-DEBUG_WINDDK3790x1830_IA32_CC_FLAGS      = /nologo /W4 /WX /Gy /c /D UNICODE /D EFI32 /O1ib2 /GL /DEFI_FIRMWARE_VENDOR=L\"INTEL\" /DSTRING_ARRAY_NAME=${BASE_NAME}Strings /FI${DEST_DIR_DEBUG}/AutoGen.h /EHs-c- /GF /Gs8192 /Zi /Gm \r
-RELEASE_WINDDK3790x1830_IA32_CC_FLAGS    = /nologo /W4 /WX /Gy /c /D UNICODE /D EFI32 /O1ib2 /GL /DEFI_FIRMWARE_VENDOR=L\"INTEL\" /DSTRING_ARRAY_NAME=${BASE_NAME}Strings /FI${DEST_DIR_DEBUG}/AutoGen.h /EHs-c- /GF /Gs8192\r
+DEBUG_WINDDK3790x1830_IA32_CC_FLAGS      = /nologo /W4 /WX /Gy /c /D UNICODE /D EFI32 /O1ib2 /GL /DSTRING_ARRAY_NAME=${BASE_NAME}Strings /FI${DEST_DIR_DEBUG}/AutoGen.h /EHs-c- /GF /Gs8192 /Fp${DEST_DIR_OUTPUT}/AutoGen.h.gch /Yu${DEST_DIR_DEBUG}/AutoGen.h /Zi /Gm \r
+RELEASE_WINDDK3790x1830_IA32_CC_FLAGS    = /nologo /W4 /WX /Gy /c /D UNICODE /D EFI32 /O1ib2 /GL /DSTRING_ARRAY_NAME=${BASE_NAME}Strings /FI${DEST_DIR_DEBUG}/AutoGen.h /EHs-c- /GF /Gs8192 /Fp${DEST_DIR_OUTPUT}/AutoGen.h.gch /Yu${DEST_DIR_DEBUG}/AutoGen.h\r
+DEBUG_WINDDK3790x1830_IA32_PCH_FLAGS     = /nologo /W4 /WX /Gy /c /D UNICODE /D EFI32 /O1ib2 /GL /DSTRING_ARRAY_NAME=${BASE_NAME}Strings /FI${DEST_DIR_DEBUG}/AutoGen.h /EHs-c- /GF /Gs8192 /Fp${DEST_DIR_OUTPUT}/AutoGen.h.gch /Yc /TC /Zi /Gm \r
+RELEASE_WINDDK3790x1830_IA32_PCH_FLAGS   = /nologo /W4 /WX /Gy /c /D UNICODE /D EFI32 /O1ib2 /GL /DSTRING_ARRAY_NAME=${BASE_NAME}Strings /FI${DEST_DIR_DEBUG}/AutoGen.h /EHs-c- /GF /Gs8192 /Fp${DEST_DIR_OUTPUT}/AutoGen.h.gch /Yc /TC\r
 DEBUG_WINDDK3790x1830_IA32_ASM_FLAGS     = /nologo /W3 /WX /c /coff /Cx /Zd /W0 /Zi  \r
 RELEASE_WINDDK3790x1830_IA32_ASM_FLAGS   = /nologo /W3 /WX /c /coff /Cx /Zd /W0\r
-DEBUG_WINDDK3790x1830_IA32_DLINK_FLAGS   = /NOLOGO /NODEFAULTLIB /IGNORE:4086 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /MACHINE:I386 /LTCG /DLL /ENTRY:${ENTRYPOINT} /SUBSYSTEM:CONSOLE /SAFESEH:NO /BASE:0 /DRIVER /DEBUG   \r
-RELEASE_WINDDK3790x1830_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4086 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /MACHINE:I386 /LTCG /DLL /ENTRY:${ENTRYPOINT} /SUBSYSTEM:CONSOLE /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.data=.text /MERGE:.rdata=.text\r
+DEBUG_WINDDK3790x1830_IA32_DLINK_FLAGS   = /NOLOGO /NODEFAULTLIB /IGNORE:4086 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /MACHINE:I386 /LTCG /DLL /ENTRY:${ENTRYPOINT} /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG   \r
+RELEASE_WINDDK3790x1830_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4086 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /MACHINE:I386 /LTCG /DLL /ENTRY:${ENTRYPOINT} /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.data=.text /MERGE:.rdata=.text\r
+*_WINDDK3790x1830_IA32_ASMLINK_FLAGS     = /link /nologo /tiny\r
 \r
 ##################\r
 # x64 definitions\r
@@ -106,24 +133,33 @@ RELEASE_WINDDK3790x1830_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4086 /O
 *_WINDDK3790x1830_X64_ASMLINK_PATH      = C:\WINDDK\3790.1830\bin\bin16\\r
 \r
 *_WINDDK3790x1830_X64_PP_FLAGS          = /nologo /P /TC /FI${DEST_DIR_DEBUG}/AutoGen.h \r
-DEBUG_WINDDK3790x1830_X64_CC_FLAGS      = /nologo /X /W4 /WX /c /Gs8192 /GS- /D UNICODE /O1ib2s /GL /Gy /D EFIX64 /DOLDSMM=1 /D EFI_FIRMWARE_VENDOR=L\"INTEL\" /DSTRING_ARRAY_NAME=${BASE_NAME}Strings /FI${DEST_DIR_DEBUG}/AutoGen.h /Zi /Gm /EHs-c- /GF\r
-RELEASE_WINDDK3790x1830_X64_CC_FLAGS    = /nologo /X /W4 /WX /c /Gs8192 /GS- /D UNICODE /O1ib2s /GL /Gy /D EFIX64 /DOLDSMM=1 /D EFI_FIRMWARE_VENDOR=L\"INTEL\" /DSTRING_ARRAY_NAME=${BASE_NAME}Strings /FI${DEST_DIR_DEBUG}/AutoGen.h /EHs-c- /GF\r
+DEBUG_WINDDK3790x1830_X64_CC_FLAGS      = /nologo /X /W4 /WX /c /Gs8192 /GS- /D UNICODE /O1ib2s /GL /Gy /D EFIX64 /DSTRING_ARRAY_NAME=${BASE_NAME}Strings /FI${DEST_DIR_DEBUG}/AutoGen.h /Fp${DEST_DIR_OUTPUT}/AutoGen.h.gch /Yu${DEST_DIR_DEBUG}/AutoGen.h /Zi /Gm /EHs-c- /GF\r
+RELEASE_WINDDK3790x1830_X64_CC_FLAGS    = /nologo /X /W4 /WX /c /Gs8192 /GS- /D UNICODE /O1ib2s /GL /Gy /D EFIX64 /DSTRING_ARRAY_NAME=${BASE_NAME}Strings /FI${DEST_DIR_DEBUG}/AutoGen.h /Fp${DEST_DIR_OUTPUT}/AutoGen.h.gch /Yu${DEST_DIR_DEBUG}/AutoGen.h /EHs-c- /GF\r
+DEBUG_WINDDK3790x1830_X64_PCH_FLAGS     = /nologo /X /W4 /WX /c /Gs8192 /GS- /D UNICODE /O1ib2s /GL /Gy /D EFIX64 /DSTRING_ARRAY_NAME=${BASE_NAME}Strings /FI${DEST_DIR_DEBUG}/AutoGen.h /Fp${DEST_DIR_OUTPUT}/AutoGen.h.gch /Yc /TC /Zi /Gm /EHs-c- /GF\r
+RELEASE_WINDDK3790x1830_X64_PCH_FLAGS   = /nologo /X /W4 /WX /c /Gs8192 /GS- /D UNICODE /O1ib2s /GL /Gy /D EFIX64 /DSTRING_ARRAY_NAME=${BASE_NAME}Strings /FI${DEST_DIR_DEBUG}/AutoGen.h /Fp${DEST_DIR_OUTPUT}/AutoGen.h.gch /Yc /TC /EHs-c- /GF\r
 DEBUG_WINDDK3790x1830_X64_ASM_FLAGS     = /nologo /W3 /WX /c /Cx /Zd /Zi\r
 RELEASE_WINDDK3790x1830_X64_ASM_FLAGS   = /nologo /W3 /WX /c /Cx /Zd\r
-DEBUG_WINDDK3790x1830_X64_DLINK_FLAGS   = /NOLOGO /NODEFAULTLIB /IGNORE:4086 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /Machine:AMD64 /LTCG /DLL /ENTRY:${ENTRYPOINT} /SUBSYSTEM:CONSOLE /SAFESEH:NO /BASE:0 /DRIVER /DEBUG \r
-RELEASE_WINDDK3790x1830_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4086 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /Machine:AMD64 /LTCG /DLL /ENTRY:${ENTRYPOINT} /SUBSYSTEM:CONSOLE /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.data=.text /MERGE:.rdata=.text\r
+DEBUG_WINDDK3790x1830_X64_DLINK_FLAGS   = /NOLOGO /NODEFAULTLIB /IGNORE:4086 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /Machine:AMD64 /LTCG /DLL /ENTRY:${ENTRYPOINT} /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG \r
+RELEASE_WINDDK3790x1830_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4086 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /Machine:AMD64 /LTCG /DLL /ENTRY:${ENTRYPOINT} /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.data=.text /MERGE:.rdata=.text\r
 \r
 ##################\r
 # IPF definitions\r
 ##################\r
-*_WINDDK3790x1830_IPF_ASM_NAME      = ias.exe\r
-*_WINDDK3790x1830_IPF_ASM_EXT       = .s\r
-*_WINDDK3790x1830_IPF_*_PATH        = C:\WINDDK\3790.1830\bin\win64\x86\r
-\r
-*_WINDDK3790x1830_IPF_PP_FLAGS      = /nologo /P /TC\r
-*_WINDDK3790x1830_IPF_CC_FLAGS      = /GS- /nologo /W4 /WX /EHs-c- /Gy /c /D EFI64 /O1i /DEFI_FIRMWARE_VENDOR=L\"INTEL\" /DSTRING_ARRAY_NAME=${BASE_NAME}Strings /FI${DEST_DIR_DEBUG}/AutoGen.h \r
-*_WINDDK3790x1830_IPF_ASM_FLAGS     = -N us -X explicit -M ilp64 -N so -W4\r
-*_WINDDK3790x1830_IPF_DLINK_FLAGS   = /NOLOGO /NODEFAULTLIB /LTCG /OPT:REF /IGNORE:4086 /MAP /MACHINE:IA64 /ENTRY:${ENTRYPOINT} /SUBSYSTEM:CONSOLE /MAP:${DEST_DIR_DEBUG}/${BASE_NAME}.map /PDB:${DEST_DIR_DEBUG}/${BASE_NAME}.pdb \r
+*_WINDDK3790x1830_IPF_APP_NAME          = cl.exe\r
+*_WINDDK3790x1830_IPF_ASM_NAME          = ias.exe\r
+*_WINDDK3790x1830_IPF_ASM_EXT           = .s\r
+*_WINDDK3790x1830_IPF_*_PATH            = C:\WINDDK\3790.1830\bin\win64\x86\r
+\r
+*_WINDDK3790x1830_IPF_APP_FLAGS         = /nologo /P /TC\r
+*_WINDDK3790x1830_IPF_PP_FLAGS          = /nologo /P /TC /FI${DEST_DIR_DEBUG}/AutoGen.h\r
+DEBUG_WINDDK3790x1830_IPF_CC_FLAGS      = /GS- /nologo /W4 /WX /EHs-c- /Gy /c /Os /X /D EFI64 /DSTRING_ARRAY_NAME=${BASE_NAME}Strings /FI${DEST_DIR_DEBUG}/AutoGen.h /Fp${DEST_DIR_OUTPUT}/AutoGen.h.gch /Yu${DEST_DIR_DEBUG}/AutoGen.h /Zi\r
+RELEASE_WINDDK3790x1830_IPF_CC_FLAGS    = /GS- /nologo /W4 /WX /EHs-c- /Gy /c /Os /X /D EFI64 /DSTRING_ARRAY_NAME=${BASE_NAME}Strings /FI${DEST_DIR_DEBUG}/AutoGen.h /Fp${DEST_DIR_OUTPUT}/AutoGen.h.gch /Yu${DEST_DIR_DEBUG}/AutoGen.h\r
+DEBUG_WINDDK3790x1830_IPF_PCH_FLAGS     = /GS- /nologo /W4 /WX /EHs-c- /Gy /c /Os /X /D EFI64 /DSTRING_ARRAY_NAME=${BASE_NAME}Strings /FI${DEST_DIR_DEBUG}/AutoGen.h /Fp${DEST_DIR_OUTPUT}/AutoGen.h.gch /Yc /TC /Zi\r
+RELEASE_WINDDK3790x1830_IPF_PCH_FLAGS   = /GS- /nologo /W4 /WX /EHs-c- /Gy /c /Os /X /D EFI64 /DSTRING_ARRAY_NAME=${BASE_NAME}Strings /FI${DEST_DIR_DEBUG}/AutoGen.h /Fp${DEST_DIR_OUTPUT}/AutoGen.h.gch /Yc /TC\r
+DEBUG_WINDDK3790x1830_IPF_ASM_FLAGS     = -N us -X explicit -M ilp64 -N so -W4 -d debug\r
+RELEASE_WINDDK3790x1830_IPF_ASM_FLAGS   = -N us -X explicit -M ilp64 -N so -W4\r
+DEBUG_WINDDK3790x1830_IPF_DLINK_FLAGS   = /NOLOGO /NODEFAULTLIB /LTCG /OPT:REF /IGNORE:4086 /MAP /ALIGN:32 /MACHINE:IA64 /ENTRY:${ENTRYPOINT} /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /MAP:${DEST_DIR_DEBUG}/${BASE_NAME}.map /PDB:${DEST_DIR_DEBUG}/${BASE_NAME}.pdb /DEBUG\r
+RELEASE_WINDDK3790x1830_IPF_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /LTCG /OPT:REF /IGNORE:4086 /MAP /ALIGN:32 /MACHINE:IA64 /ENTRY:${ENTRYPOINT} /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /MAP:${DEST_DIR_DEBUG}/${BASE_NAME}.map /PDB:${DEST_DIR_DEBUG}/${BASE_NAME}.pdb \r
 \r
 ##################\r
 # EBC definitions\r
@@ -137,7 +173,7 @@ RELEASE_WINDDK3790x1830_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4086 /OP
 *_WINDDK3790x1830_EBC_*_SPATH       = "C:\Program Files\Intel\EBC\Lib\EbcLib.lib"\r
 \r
 *_WINDDK3790x1830_EBC_PP_FLAGS      = /nologo /P /TC /FI${DEST_DIR_DEBUG}/AutoGen.h \r
-*_WINDDK3790x1830_EBC_CC_FLAGS      = /nologo /c /W3 /WX /FI${DEST_DIR_DEBUG}/AutoGen.h /DEFI_FIRMWARE_VENDOR=L\"INTEL\" /DSTRING_ARRAY_NAME=${BASE_NAME}Strings \r
+*_WINDDK3790x1830_EBC_CC_FLAGS      = /nologo /c /W3 /WX /FI${DEST_DIR_DEBUG}/AutoGen.h /DSTRING_ARRAY_NAME=${BASE_NAME}Strings \r
 *_WINDDK3790x1830_EBC_SLINK_FLAGS   = /lib /NOLOGO /MACHINE:EBC\r
 *_WINDDK3790x1830_EBC_DLINK_FLAGS   = /NOLOGO /NODEFAULTLIB /MACHINE:EBC /OPT:REF /ENTRY:${ENTRYPOINT} /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER\r
 \r
@@ -146,10 +182,7 @@ RELEASE_WINDDK3790x1830_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4086 /OP
 ##################\r
 *_WINDDK3790x1830_*_ASL_FAMILY  = INTEL\r
 *_WINDDK3790x1830_*_ASL_NAME    = iasl.exe\r
-*_WINDDK3790x1830_IA32_ASL_PATH = C:\ASL\r
-*_WINDDK3790x1830_X64_ASL_PATH  = C:\ASL\r
-*_WINDDK3790x1830_IPF_ASL_PATH  = C:\ASL\r
-*_WINDDK3790x1830_EBC_ASL_PATH  = C:\ASL\r
+*_WINDDK3790x1830_*_ASL_PATH    = C:\ASL\r
 \r
 ####################################################################################\r
 #\r
@@ -176,9 +209,12 @@ RELEASE_WINDDK3790x1830_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4086 /OP
 *_VS2005PRO_*_DLINK_NAME     = link.exe\r
 *_VS2005PRO_*_ASMLINK_NAME   = link.exe\r
 *_VS2005PRO_*_PP_NAME        = cl.exe\r
+*_VS2005PRO_*_VFRPP_NAME     = cl.exe\r
+*_VS2005PRO_*_PCH_NAME       = cl.exe\r
 \r
 *_VS2005PRO_*_SLINK_FLAGS       = /NOLOGO /LTCG\r
 *_VS2005PRO_*_PP_FLAGS          = /nologo /P /TC /FI${DEST_DIR_DEBUG}/AutoGen.h \r
+*_VS2005PRO_*_VFRPP_FLAGS         = /nologo /P /TC /DVFRCOMPILE\r
 \r
 ##################\r
 # IA32 definitions\r
@@ -190,12 +226,15 @@ RELEASE_WINDDK3790x1830_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4086 /OP
 *_VS2005PRO_IA32_ASM_PATH     = C:\WINDDK\3790.1830\bin\x86\r
 *_VS2005PRO_IA32_ASMLINK_PATH = C:\WINDDK\3790.1830\bin\bin16\\r
 \r
-DEBUG_VS2005PRO_IA32_CC_FLAGS      = /GS- /nologo /W4 /WX /Gy /c /D UNICODE /D EFI32 /O1ib2 /GL /DEFI_FIRMWARE_VENDOR=L\"INTEL\" /DSTRING_ARRAY_NAME=${BASE_NAME}Strings /FI${DEST_DIR_DEBUG}/AutoGen.h /EHs-c- /GF /Gs8192 /Zi /Gm \r
-RELEASE_VS2005PRO_IA32_CC_FLAGS    = /GS- /nologo /W4 /WX /Gy /c /D UNICODE /D EFI32 /O1ib2 /GL /DEFI_FIRMWARE_VENDOR=L\"INTEL\" /DSTRING_ARRAY_NAME=${BASE_NAME}Strings /FI${DEST_DIR_DEBUG}/AutoGen.h /EHs-c- /GF /Gs8192\r
+DEBUG_VS2005PRO_IA32_CC_FLAGS      = /GS- /nologo /W4 /WX /Gy /c /D UNICODE /D EFI32 /O1ib2 /GL /DSTRING_ARRAY_NAME=${BASE_NAME}Strings /FI${DEST_DIR_DEBUG}/AutoGen.h /EHs-c- /GF /Gs8192 /Fp${DEST_DIR_OUTPUT}/AutoGen.h.gch /Yu${DEST_DIR_DEBUG}/AutoGen.h /Zi /Gm\r
+RELEASE_VS2005PRO_IA32_CC_FLAGS    = /GS- /nologo /W4 /WX /Gy /c /D UNICODE /D EFI32 /O1ib2 /GL /DSTRING_ARRAY_NAME=${BASE_NAME}Strings /FI${DEST_DIR_DEBUG}/AutoGen.h /EHs-c- /GF /Gs8192 /Fp${DEST_DIR_OUTPUT}/AutoGen.h.gch /Yu${DEST_DIR_DEBUG}/AutoGen.h\r
+DEBUG_VS2005PRO_IA32_PCH_FLAGS     = /GS- /nologo /W4 /WX /Gy /c /D UNICODE /D EFI32 /O1ib2 /GL /DSTRING_ARRAY_NAME=${BASE_NAME}Strings /FI${DEST_DIR_DEBUG}/AutoGen.h /EHs-c- /GF /Gs8192 /Fp${DEST_DIR_OUTPUT}/AutoGen.h.gch /Yc /TC /Zi /Gm\r
+RELEASE_VS2005PRO_IA32_PCH_FLAGS   = /GS- /nologo /W4 /WX /Gy /c /D UNICODE /D EFI32 /O1ib2 /GL /DSTRING_ARRAY_NAME=${BASE_NAME}Strings /FI${DEST_DIR_DEBUG}/AutoGen.h /EHs-c- /GF /Gs8192 /Fp${DEST_DIR_OUTPUT}/AutoGen.h.gch /Yc /TC\r
 DEBUG_VS2005PRO_IA32_ASM_FLAGS     = /nologo /W3 /WX /c /coff /Cx /Zd /W0 /Zi  \r
 RELEASE_VS2005PRO_IA32_ASM_FLAGS   = /nologo /W3 /WX /c /coff /Cx /Zd /W0\r
-DEBUG_VS2005PRO_IA32_DLINK_FLAGS   = /NOLOGO /NODEFAULTLIB /IGNORE:4086 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /MACHINE:I386 /LTCG /DLL /ENTRY:${ENTRYPOINT} /SUBSYSTEM:CONSOLE /SAFESEH:NO /BASE:0 /DRIVER /DEBUG   \r
-RELEASE_VS2005PRO_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4086 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /MACHINE:I386 /LTCG /DLL /ENTRY:${ENTRYPOINT} /SUBSYSTEM:CONSOLE /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.data=.text /MERGE:.rdata=.text\r
+DEBUG_VS2005PRO_IA32_DLINK_FLAGS   = /NOLOGO /NODEFAULTLIB /IGNORE:4086 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /MACHINE:I386 /LTCG /DLL /ENTRY:${ENTRYPOINT} /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG   \r
+RELEASE_VS2005PRO_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4086 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /MACHINE:I386 /LTCG /DLL /ENTRY:${ENTRYPOINT} /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.data=.text /MERGE:.rdata=.text\r
+*_VS2005PRO_IA32_ASMLINK_FLAGS     = /link /nologo /tiny\r
 \r
 ##################\r
 # x64 definitions\r
@@ -206,12 +245,14 @@ RELEASE_VS2005PRO_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4086 /OPT:REF
 *_VS2005PRO_X64_*_DPATH        = C:\Program Files\Microsoft Visual Studio 8\VC\bin\x86_amd64;C:\Program Files\Microsoft Visual Studio 8\Common7\IDE\r
 *_VS2005PRO_X64_ASMLINK_PATH   = C:\WINDDK\3790.1830\bin\bin16\\r
 \r
-DEBUG_VS2005PRO_X64_CC_FLAGS      = /nologo /X /W4 /WX /c /Gs8192 /GS- /D UNICODE /O1ib2s /GL /Gy /D EFIX64 /DOLDSMM=1 /D EFI_FIRMWARE_VENDOR=L\"INTEL\" /DSTRING_ARRAY_NAME=${BASE_NAME}Strings /FI${DEST_DIR_DEBUG}/AutoGen.h /EHs-c- /GF /Zi /Gm \r
-RELEASE_VS2005PRO_X64_CC_FLAGS    = /nologo /X /W4 /WX /c /Gs8192 /GS- /D UNICODE /O1ib2s /GL /Gy /D EFIX64 /DOLDSMM=1 /D EFI_FIRMWARE_VENDOR=L\"INTEL\" /DSTRING_ARRAY_NAME=${BASE_NAME}Strings /FI${DEST_DIR_DEBUG}/AutoGen.h /EHs-c- /GF\r
+DEBUG_VS2005PRO_X64_CC_FLAGS      = /nologo /X /W4 /WX /c /Gs8192 /GS- /D UNICODE /O1ib2s /GL /Gy /D EFIX64 /DSTRING_ARRAY_NAME=${BASE_NAME}Strings /FI${DEST_DIR_DEBUG}/AutoGen.h /EHs-c- /GF /Fp${DEST_DIR_OUTPUT}/AutoGen.h.gch /Yu${DEST_DIR_DEBUG}/AutoGen.h /Zi /Gm\r
+RELEASE_VS2005PRO_X64_CC_FLAGS    = /nologo /X /W4 /WX /c /Gs8192 /GS- /D UNICODE /O1ib2s /GL /Gy /D EFIX64 /DSTRING_ARRAY_NAME=${BASE_NAME}Strings /FI${DEST_DIR_DEBUG}/AutoGen.h /EHs-c- /GF /Fp${DEST_DIR_OUTPUT}/AutoGen.h.gch /Yu${DEST_DIR_DEBUG}/AutoGen.h\r
+DEBUG_VS2005PRO_X64_PCH_FLAGS     = /nologo /X /W4 /WX /c /Gs8192 /GS- /D UNICODE /O1ib2s /GL /Gy /D EFIX64 /DSTRING_ARRAY_NAME=${BASE_NAME}Strings /FI${DEST_DIR_DEBUG}/AutoGen.h /EHs-c- /GF /Fp${DEST_DIR_OUTPUT}/AutoGen.h.gch /Yc /TC /Zi /Gm\r
+RELEASE_VS2005PRO_X64_PCH_FLAGS   = /nologo /X /W4 /WX /c /Gs8192 /GS- /D UNICODE /O1ib2s /GL /Gy /D EFIX64 /DSTRING_ARRAY_NAME=${BASE_NAME}Strings /FI${DEST_DIR_DEBUG}/AutoGen.h /EHs-c- /GF /Fp${DEST_DIR_OUTPUT}/AutoGen.h.gch /Yc /TC\r
 DEBUG_VS2005PRO_X64_ASM_FLAGS     = /nologo /W3 /WX /c /Cx /Zd /Zi\r
 RELEASE_VS2005PRO_X64_ASM_FLAGS   = /nologo /W3 /WX /c /Cx /Zd\r
-DEBUG_VS2005PRO_X64_DLINK_FLAGS   = /NOLOGO /NODEFAULTLIB /IGNORE:4086 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /Machine:AMD64 /LTCG /DLL /ENTRY:${ENTRYPOINT} /SUBSYSTEM:CONSOLE /SAFESEH:NO /BASE:0 /DRIVER /DEBUG \r
-RELEASE_VS2005PRO_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4086 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /Machine:AMD64 /LTCG /DLL /ENTRY:${ENTRYPOINT} /SUBSYSTEM:CONSOLE /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.data=.text /MERGE:.rdata=.text\r
+DEBUG_VS2005PRO_X64_DLINK_FLAGS   = /NOLOGO /NODEFAULTLIB /IGNORE:4086 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /Machine:AMD64 /LTCG /DLL /ENTRY:${ENTRYPOINT} /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG \r
+RELEASE_VS2005PRO_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4086 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /Machine:AMD64 /LTCG /DLL /ENTRY:${ENTRYPOINT} /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.data=.text /MERGE:.rdata=.text\r
 \r
 ##################\r
 # EBC definitions\r
@@ -225,7 +266,7 @@ RELEASE_VS2005PRO_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4086 /OPT:REF
 *_VS2005PRO_EBC_*_SPATH     = "C:\Program Files\Intel\EBC\Lib\EbcLib.lib"\r
 \r
 *_VS2005PRO_EBC_PP_FLAGS    = /nologo /P /TC /FI${DEST_DIR_DEBUG}/AutoGen.h \r
-*_VS2005PRO_EBC_CC_FLAGS    = /nologo /c /W3 /WX /FI${DEST_DIR_DEBUG}/AutoGen.h /DEFI_FIRMWARE_VENDOR=L\"INTEL\" /DSTRING_ARRAY_NAME=${BASE_NAME}Strings \r
+*_VS2005PRO_EBC_CC_FLAGS    = /nologo /c /W3 /WX /FI${DEST_DIR_DEBUG}/AutoGen.h /DSTRING_ARRAY_NAME=${BASE_NAME}Strings \r
 *_VS2005PRO_EBC_SLINK_FLAGS = /lib /NOLOGO /MACHINE:EBC\r
 *_VS2005PRO_EBC_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /MACHINE:EBC /OPT:REF /ENTRY:${ENTRYPOINT} /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER\r
 \r
@@ -234,10 +275,7 @@ RELEASE_VS2005PRO_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4086 /OPT:REF
 ##################\r
 *_VS2005PRO_*_ASL_FAMILY  = INTEL\r
 *_VS2005PRO_*_ASL_NAME    = iasl.exe\r
-*_VS2005PRO_IA32_ASL_PATH = C:\ASL\r
-*_VS2005PRO_X64_ASL_PATH  = C:\ASL\r
-*_VS2005PRO_IPF_ASL_PATH  = C:\ASL\r
-*_VS2005PRO_EBC_ASL_PATH  = C:\ASL\r
+*_VS2005PRO_*_ASL_PATH    = C:\ASL\r
 \r
 ####################################################################################\r
 #\r
@@ -245,29 +283,49 @@ RELEASE_VS2005PRO_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4086 /OPT:REF
 #\r
 ####################################################################################\r
 \r
+\r
 ####################################################################################\r
 #\r
-# UNIX GCC\r
+# Unix GCC\r
 #\r
 ####################################################################################\r
 \r
-*_UNIXGCC_IA32_*_FAMILY     = GCC\r
+*_UNIXGCC_*_*_FAMILY        = GCC\r
+*_UNIXGCC_*_*_FAMILY        = GCC\r
 \r
 *_UNIXGCC_IA32_CC_NAME      = gcc\r
 *_UNIXGCC_IA32_SLINK_NAME   = ar\r
 *_UNIXGCC_IA32_DLINK_NAME   = ld\r
 *_UNIXGCC_IA32_ASM_NAME     = gcc\r
 *_UNIXGCC_IA32_PP_NAME      = gcc\r
+*_UNIXGCC_IA32_VFRPP_NAME     = gcc\r
+\r
+*_UNIXGCC_X64_CC_NAME       = gcc\r
+*_UNIXGCC_X64_SLINK_NAME    = ar\r
+*_UNIXGCC_X64_DLINK_NAME    = ld\r
+*_UNIXGCC_X64_ASM_NAME      = gcc\r
+*_UNIXGCC_X64_PP_NAME       = gcc\r
+*_UNIXGCC_X64_VFRPP_NAME      = gcc\r
+\r
+*_UNIXGCC_IA32_CC_FLAGS     = -Os -fshort-wchar -fno-strict-aliasing -Wall -Werror -c -include ${DEST_DIR_DEBUG}/AutoGen.h\r
+*_UNIXGCC_X64_CC_FLAGS      = -Os -fshort-wchar -fno-strict-aliasing -Wall -Werror -c -include ${DEST_DIR_DEBUG}/AutoGen.h -D_EFI_P64\r
+*_UNIXGCC_*_DLINK_FLAGS     = -nostdlib -O2 --gc-sections --dll --export-all-symbols --entry _${ENTRYPOINT}\r
+*_UNIXGCC_*_ASM_FLAGS       = -c -imacros ${DEST_DIR_DEBUG}/AutoGen.h\r
+*_UNIXGCC_*_PP_FLAGS        = -E -x assembler-with-cpp -include ${DEST_DIR_DEBUG}/AutoGen.h\r
+*_UNIXGCC_*_VFRPP_FLAGS       = -x c -E -P -DVFRCOMPILE\r
+*_UNIXGCC_*_ASM_EXT         = .S\r
 \r
-*_UNIXGCC_IA32_ASM_EXT      = .S\r
 *_UNIXGCC_IA32_*_PATH       = /opt/tiano/i386-tiano-pe/i386-tiano-pe/bin\r
+*_UNIXGCC_X64_*_PATH        = /opt/tiano/x86_64-pc-mingw64/x86_64-pc-mingw64/bin\r
+\r
 \r
 ####################################################################################\r
 #\r
-# CygWin GCC\r
+# Cygwin GCC\r
 #\r
 ####################################################################################\r
 \r
+*_CYGWINGCC_X64_*_FAMILY      = GCC\r
 *_CYGWINGCC_IA32_*_FAMILY     = GCC\r
 \r
 *_CYGWINGCC_IA32_CC_NAME      = gcc\r
@@ -275,60 +333,100 @@ RELEASE_VS2005PRO_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4086 /OPT:REF
 *_CYGWINGCC_IA32_DLINK_NAME   = ld\r
 *_CYGWINGCC_IA32_ASM_NAME     = gcc\r
 *_CYGWINGCC_IA32_PP_NAME      = gcc\r
+*_CYGWINGCC_IA32_VFRPP_NAME     = gcc\r
+\r
+*_CYGWINGCC_X64_CC_NAME       = gcc\r
+*_CYGWINGCC_X64_SLINK_NAME    = ar\r
+*_CYGWINGCC_X64_DLINK_NAME    = ld\r
+*_CYGWINGCC_X64_ASM_NAME      = gcc\r
+*_CYGWINGCC_X64_PP_NAME       = gcc\r
+*_CYGWINGCC_X64_VFRPP_NAME    = gcc\r
 \r
 *_CYGWINGCC_IA32_CC_FLAGS     = -Os -fshort-wchar -fno-strict-aliasing -Wall -Werror -c -include ${DEST_DIR_DEBUG}/AutoGen.h\r
+*_CYGWINGCC_X64_CC_FLAGS      = -Os -fshort-wchar -fno-strict-aliasing -Wall -Werror -c -include ${DEST_DIR_DEBUG}/AutoGen.h -D_EFI_P64\r
 *_CYGWINGCC_*_DLINK_FLAGS     = -nostdlib -O2 --gc-sections --dll --export-all-symbols --entry _${ENTRYPOINT}\r
-*_CYGWINGCC_IA32_ASM_FLAGS    = -c -imacros ${DEST_DIR_DEBUG}/AutoGen.h\r
+*_CYGWINGCC_*_ASM_FLAGS       = -c -imacros ${DEST_DIR_DEBUG}/AutoGen.h\r
 *_CYGWINGCC_*_PP_FLAGS        = -E -x assembler-with-cpp -include ${DEST_DIR_DEBUG}/AutoGen.h\r
+*_CYGWINGCC_*_VFRPP_FLAGS     = -x c -E -P -DVFRCOMPILE\r
+*_CYGWINGCC_*_ASM_EXT         = .S\r
 \r
-*_CYGWINGCC_IA32_ASM_EXT      = .S\r
 *_CYGWINGCC_IA32_*_PATH       = c:/Cygwin/opt/tiano/i386-tiano-pe/i386-tiano-pe/bin\r
-*_CYGWINGCC_IA32_*_DPATH      = c:/Cygwin/bin\r
+*_CYGWINGCC_X64_*_PATH        = c:/Cygwin/opt/tiano/x86_64-pc-mingw64/x86_64-pc-mingw64/bin\r
+*_CYGWINGCC_*_*_DPATH         = c:/Cygwin/bin\r
+\r
 \r
 ####################################################################################\r
 #\r
-# Intel EFI Byte Code Compiler (Template)\r
+# Mixed x64 - This configuration is used to compile C code with gcc and assemble\r
+#             with the Microsoft assembler.\r
 #\r
 ####################################################################################\r
 \r
-*_*_EBC_*_FAMILY     = INTEL\r
-*_*_EBC_PP_NAME      = iec.exe\r
-*_*_EBC_CC_NAME      = iec.exe\r
-*_*_EBC_SLINK_NAME   = link.exe\r
-*_*_EBC_*_PATH       = C:\Program Files\Intel\EBC\Bin\r
-*_*_EBC_*_SPATH      = C:\Program Files\Intel\EBC\Lib\EbcLib.lib\r
-\r
-*_*_EBC_SLINK_FLAGS   = /lib /NOLOGO /MACHINE:EBC\r
-*_*_EBC_PP_FLAGS      = /nologo /P /TC /FI${DEST_DIR_DEBUG}/AutoGen.h \r
-*_*_EBC_CC_FLAGS      = /nologo /FAcs /c /W3 /WX /DEFI_FIRMWARE_VENDOR=L\"INTEL\" /DSTRING_ARRAY_NAME=${BASE_NAME}Strings /FI${DEST_DIR_DEBUG}/AutoGen.h\r
-*_*_EBC_DLINK_FLAGS   = /NOLOGO /MACHINE:EBC /OPT:REF /NODEFAULTLIB /ENTRY:${ENTRYPOINT} /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER\r
+*_MIXED_X64_CC_FAMILY    = GCC\r
+*_MIXED_X64_SLINK_FAMILY = GCC\r
+*_MIXED_X64_DLINK_FAMILY = GCC\r
+*_MIXED_X64_ASM_FAMILY   = MSFT\r
+*_MIXED_X64_PP_FAMILY    = MSFT\r
+\r
+*_MIXED_X64_CC_NAME      = gcc\r
+*_MIXED_X64_SLINK_NAME   = ar\r
+*_MIXED_X64_DLINK_NAME   = ld\r
+*_MIXED_X64_ASM_NAME     = gcc\r
+*_MIXED_X64_PP_NAME      = cl.exe\r
+\r
+*_MIXED_X64_CC_FLAGS     = -Os -fshort-wchar -fno-strict-aliasing -Wall -Werror -c -include ${DEST_DIR_DEBUG}/AutoGen.h -D_EFI_P64\r
+*_MIXED_*_DLINK_FLAGS    = -nostdlib -O2 --gc-sections --dll --export-all-symbols --entry _${ENTRYPOINT}\r
+*_MIXED_X64_PP_FLAGS     = /nologo /P /TC /FI${DEST_DIR_DEBUG}/AutoGen.h \r
+\r
+*_MIXED_X64_ASM_NAME     = ml64.exe\r
+*_MIXED_X64_ASM_PATH     = C:/WINDDK/3790.1830/bin/win64/x86/amd64\r
+*_MIXED_X64_CC_PATH      = C:/cygwin/opt/tiano/x86_64-pc-mingw64/x86_64-pc-mingw64/bin\r
+*_MIXED_X64_PP_PATH      = C:/WINDDK/3790.1830/bin/win64/x86/amd64\r
+*_MIXED_X64_SLINK_PATH   = C:/cygwin/opt/tiano/x86_64-pc-mingw64/x86_64-pc-mingw64/bin\r
+*_MIXED_X64_DLINK_PATH   = C:/cygwin/opt/tiano/x86_64-pc-mingw64/x86_64-pc-mingw64/bin\r
+*_MIXED_X64_ASMLINK_PATH = C:/WINDDK/3790.1830/bin/bin16/\r
+\r
+DEBUG_MIXED_X64_ASM_FLAGS     = /nologo /W3 /WX /c /Cx /Zd /Zi\r
+RELEASE_MIXED_X64_ASM_FLAGS   = /nologo /W3 /WX /c /Cx /Zd\r
 \r
+####################################################################################\r
+#\r
+# Intel EFI Byte Code Compiler (Template)\r
+#\r
+####################################################################################\r
+# \r
+# *_*_EBC_*_FAMILY     = INTEL\r
+# *_*_EBC_PP_NAME      = iec.exe\r
+# *_*_EBC_CC_NAME      = iec.exe\r
+# *_*_EBC_SLINK_NAME   = link.exe\r
+# *_*_EBC_*_PATH       = C:\Program Files\Intel\EBC\Bin\r
+# *_*_EBC_*_SPATH      = C:\Program Files\Intel\EBC\Lib\EbcLib.lib\r
+# \r
+# *_*_EBC_SLINK_FLAGS   = /lib /NOLOGO /MACHINE:EBC\r
+# *_*_EBC_PP_FLAGS      = /nologo /P /TC /FI${DEST_DIR_DEBUG}/AutoGen.h \r
+# *_*_EBC_CC_FLAGS      = /nologo /FAcs /c /W3 /WX /DSTRING_ARRAY_NAME=${BASE_NAME}Strings /FI${DEST_DIR_DEBUG}/AutoGen.h\r
+# *_*_EBC_DLINK_FLAGS   = /NOLOGO /MACHINE:EBC /OPT:REF /NODEFAULTLIB /ENTRY:${ENTRYPOINT} /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER\r
+# \r
 ####################################################################################\r
 #\r
 # Intel ACPI Source Language Compiler (Template)\r
 #\r
 ####################################################################################\r
-\r
-*_*_*_ASL_FAMILY  = INTEL\r
-*_*_*_ASL_NAME    = iasl.exe\r
-*_*_IA32_ASL_PATH = C:\ASL\r
-*_*_X64_ASL_PATH  = C:\ASL\r
-*_*_IPF_ASL_PATH  = C:\ASL\r
-*_*_EBC_ASL_PATH  = C:\ASL\r
-\r
+# \r
+# *_*_*_ASL_FAMILY  = INTEL\r
+# *_*_*_ASL_NAME    = iasl.exe\r
+# *_*_*_ASL_PATH    = C:\ASL\r
+# \r
 ####################################################################################\r
 #\r
 # Microsoft ACPI Source Language Compiler (Template)\r
 #\r
 ####################################################################################\r
-\r
-*_*_*_ASL_FAMILY  = MSFT\r
-*_*_*_ASL_NAME    = asl.exe\r
-*_*_IA32_ASL_PATH = C:\ASL\r
-*_*_X64_ASL_PATH  = C:\ASL\r
-*_*_IPF_ASL_PATH  = C:\ASL\r
-*_*_EBC_ASL_PATH  = C:\ASL\r
-\r
+# \r
+# *_*_*_ASL_FAMILY  = MSFT\r
+# *_*_*_ASL_NAME    = asl.exe\r
+# *_*_*_ASL_PATH    = C:\ASL\r
+# \r
 \r
 ####################################################################################\r
 #\r
@@ -340,79 +438,83 @@ RELEASE_VS2005PRO_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4086 /OPT:REF
 #   ASL  - Intel ACPI Source Language COmpiler\r
 #\r
 ####################################################################################\r
-\r
+*_MYTOOLS_*_*_FAMILY             = MSFT\r
+\r
+*_MYTOOLS_*_CC_NAME              = cl.exe  \r
+*_MYTOOLS_*_SLINK_NAME           = lib.exe\r
+*_MYTOOLS_*_DLINK_NAME           = link.exe\r
+*_MYTOOLS_*_ASMLINK_NAME         = link.exe\r
+*_MYTOOLS_*_PP_NAME              = cl.exe \r
+*_MYTOOLS_*_VFRPP_NAME           = cl.exe \r
+*_MYTOOLS_*_APP_NAME             = cl.exe\r
+*_MYTOOLS_*_ASM_NAME             = ml.exe\r
+\r
+*_MYTOOLS_*_VFRPP_FLAGS            = /nologo /P /TC /DVFRCOMPILE\r
 ##################\r
 # IA32 definitions\r
 ##################\r
-*_MYTOOLS_IA32_*_FAMILY          = MSFT\r
-\r
-*_MYTOOLS_IA32_CC_NAME           = cl.exe  \r
-*_MYTOOLS_IA32_SLINK_NAME        = lib.exe\r
-*_MYTOOLS_IA32_DLINK_NAME        = link.exe\r
-*_MYTOOLS_IA32_ASMLINK_NAME      = link.exe\r
-*_MYTOOLS_IA32_PP_NAME           = cl.exe \r
-*_MYTOOLS_IA32_ASM_NAME          = ml.exe\r
+*_MYTOOLS_IA32_PCH_NAME          = cl.exe \r
 *_MYTOOLS_IA32_ASM_EXT           = .asm\r
 \r
 *_MYTOOLS_IA32_*_PATH            = C:\Program Files\Microsoft Visual Studio .NET 2003\Vc7\bin\r
 *_MYTOOLS_IA32_*_DPATH           = C:\Program Files\Microsoft Visual Studio .NET 2003\Common7\IDE\r
 *_MYTOOLS_IA32_ASMLINK_PATH      = C:\WINDDK\3790.1830\bin\bin16\\r
 \r
+*_MYTOOLS_IA32_APP_FLAGS         = /nologo /P /TC\r
 *_MYTOOLS_IA32_PP_FLAGS          = /nologo /P /TC /FI${DEST_DIR_DEBUG}/AutoGen.h \r
-DEBUG_MYTOOLS_IA32_CC_FLAGS      = /nologo /W4 /WX /Gy /c /D UNICODE /D EFI32 /O1ib2 /GL /DEFI_FIRMWARE_VENDOR=L\"INTEL\" /DSTRING_ARRAY_NAME=${BASE_NAME}Strings /FI${DEST_DIR_DEBUG}/AutoGen.h /EHs-c- /GF /Gs8192 /Zi /Gm \r
-RELEASE_MYTOOLS_IA32_CC_FLAGS    = /nologo /W4 /WX /Gy /c /D UNICODE /D EFI32 /O1ib2 /GL /DEFI_FIRMWARE_VENDOR=L\"INTEL\" /DSTRING_ARRAY_NAME=${BASE_NAME}Strings /FI${DEST_DIR_DEBUG}/AutoGen.h /EHs-c- /GF /Gs8192\r
+DEBUG_MYTOOLS_IA32_CC_FLAGS      = /nologo /W4 /WX /Gy /c /D UNICODE /D EFI32 /O1ib2 /GL /DSTRING_ARRAY_NAME=${BASE_NAME}Strings /FI${DEST_DIR_DEBUG}/AutoGen.h /EHs-c- /GF /Gs8192 /Fp${DEST_DIR_OUTPUT}/AutoGen.h.gch /Yu${DEST_DIR_DEBUG}/AutoGen.h /Zi /Gm\r
+RELEASE_MYTOOLS_IA32_CC_FLAGS    = /nologo /W4 /WX /Gy /c /D UNICODE /D EFI32 /O1ib2 /GL /DSTRING_ARRAY_NAME=${BASE_NAME}Strings /FI${DEST_DIR_DEBUG}/AutoGen.h /EHs-c- /GF /Gs8192 /Fp${DEST_DIR_OUTPUT}/AutoGen.h.gch /Yu${DEST_DIR_DEBUG}/AutoGen.h\r
+DEBUG_MYTOOLS_IA32_PCH_FLAGS     = /nologo /W4 /WX /Gy /c /D UNICODE /D EFI32 /O1ib2 /GL /DSTRING_ARRAY_NAME=${BASE_NAME}Strings /FI${DEST_DIR_DEBUG}/AutoGen.h /EHs-c- /GF /Gs8192 /Fp${DEST_DIR_OUTPUT}/AutoGen.h.gch /Yc /TC /Zi /Gm\r
+RELEASE_MYTOOLS_IA32_PCH_FLAGS   = /nologo /W4 /WX /Gy /c /D UNICODE /D EFI32 /O1ib2 /GL /DSTRING_ARRAY_NAME=${BASE_NAME}Strings /FI${DEST_DIR_DEBUG}/AutoGen.h /EHs-c- /GF /Gs8192 /Fp${DEST_DIR_OUTPUT}/AutoGen.h.gch /Yc /TC\r
 DEBUG_MYTOOLS_IA32_ASM_FLAGS     = /nologo /W3 /WX /c /coff /Cx /Zd /W0 /Zi  \r
 RELEASE_MYTOOLS_IA32_ASM_FLAGS   = /nologo /W3 /WX /c /coff /Cx /Zd /W0\r
+*_MYTOOLS_IA32_ASMLINK_FLAGS     = /link /nologo /tiny\r
 *_MYTOOLS_IA32_SLINK_FLAGS       = /nologo /LTCG\r
-DEBUG_MYTOOLS_IA32_DLINK_FLAGS   = /NOLOGO /NODEFAULTLIB /IGNORE:4086 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /MACHINE:I386 /LTCG /DLL /ENTRY:${ENTRYPOINT} /SUBSYSTEM:CONSOLE /SAFESEH:NO /BASE:0 /DRIVER /DEBUG   \r
-RELEASE_MYTOOLS_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4086 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /MACHINE:I386 /LTCG /DLL /ENTRY:${ENTRYPOINT} /SUBSYSTEM:CONSOLE /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.data=.text /MERGE:.rdata=.text\r
+DEBUG_MYTOOLS_IA32_DLINK_FLAGS   = /NOLOGO /NODEFAULTLIB /IGNORE:4086 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /MACHINE:I386 /LTCG /DLL /ENTRY:${ENTRYPOINT} /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG   \r
+RELEASE_MYTOOLS_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4086 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /MACHINE:I386 /LTCG /DLL /ENTRY:${ENTRYPOINT} /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.data=.text /MERGE:.rdata=.text\r
 \r
 ##################\r
 # x64 definitions\r
 ##################\r
-*_MYTOOLS_X64_*_FAMILY          = MSFT\r
-\r
-*_MYTOOLS_X64_CC_NAME           = cl.exe\r
-*_MYTOOLS_X64_SLINK_NAME        = lib.exe\r
-*_MYTOOLS_X64_DLINK_NAME        = link.exe\r
-*_MYTOOLS_X64_ASMLINK_NAME      = link.exe\r
-*_MYTOOLS_X64_PP_NAME           = cl.exe\r
-\r
-*_MYTOOLS_X64_SLINK_FLAGS       = /nologo /LTCG\r
-\r
+*_MYTOOLS_X64_PCH_NAME          = cl.exe\r
 *_MYTOOLS_X64_ASM_NAME          = ml64.exe\r
 *_MYTOOLS_X64_ASM_EXT           = .asm\r
+\r
 *_MYTOOLS_X64_*_PATH            = C:\WINDDK\3790.1830\bin\win64\x86\amd64\r
 *_MYTOOLS_X64_ASMLINK_PATH      = C:\WINDDK\3790.1830\bin\bin16\\r
 \r
+*_MYTOOLS_X64_SLINK_FLAGS       = /nologo /LTCG\r
+*_MYTOOLS_X64_APP_FLAGS         = /nologo /P /TC\r
 *_MYTOOLS_X64_PP_FLAGS          = /nologo /P /TC /FI${DEST_DIR_DEBUG}/AutoGen.h \r
-DEBUG_MYTOOLS_X64_CC_FLAGS      = /nologo /X /W4 /WX /c /Gs8192 /GS- /D UNICODE /O1ib2s /GL /Gy /D EFIX64 /DOLDSMM=1 /D EFI_FIRMWARE_VENDOR=L\"INTEL\" /DSTRING_ARRAY_NAME=${BASE_NAME}Strings /FI${DEST_DIR_DEBUG}/AutoGen.h /Zi /Gm /EHs-c- /GF\r
-RELEASE_MYTOOLS_X64_CC_FLAGS    = /nologo /X /W4 /WX /c /Gs8192 /GS- /D UNICODE /O1ib2s /GL /Gy /D EFIX64 /DOLDSMM=1 /D EFI_FIRMWARE_VENDOR=L\"INTEL\" /DSTRING_ARRAY_NAME=${BASE_NAME}Strings /FI${DEST_DIR_DEBUG}/AutoGen.h /EHs-c- /GF\r
+DEBUG_MYTOOLS_X64_CC_FLAGS      = /nologo /X /W4 /WX /c /Gs8192 /GS- /D UNICODE /O1ib2s /GL /Gy /D EFIX64 /DSTRING_ARRAY_NAME=${BASE_NAME}Strings /FI${DEST_DIR_DEBUG}/AutoGen.h /Fp${DEST_DIR_OUTPUT}/AutoGen.h.gch /Yu${DEST_DIR_DEBUG}/AutoGen.h /Zi /Gm /EHs-c- /GF\r
+RELEASE_MYTOOLS_X64_CC_FLAGS    = /nologo /X /W4 /WX /c /Gs8192 /GS- /D UNICODE /O1ib2s /GL /Gy /D EFIX64 /DSTRING_ARRAY_NAME=${BASE_NAME}Strings /FI${DEST_DIR_DEBUG}/AutoGen.h /Fp${DEST_DIR_OUTPUT}/AutoGen.h.gch /Yu${DEST_DIR_DEBUG}/AutoGen.h /EHs-c- /GF\r
+DEBUG_MYTOOLS_X64_PCH_FLAGS     = /nologo /X /W4 /WX /c /Gs8192 /GS- /D UNICODE /O1ib2s /GL /Gy /D EFIX64 /DSTRING_ARRAY_NAME=${BASE_NAME}Strings /FI${DEST_DIR_DEBUG}/AutoGen.h /Fp${DEST_DIR_OUTPUT}/AutoGen.h.gch /Yc /TC /Zi /Gm /EHs-c- /GF\r
+RELEASE_MYTOOLS_X64_PCH_FLAGS   = /nologo /X /W4 /WX /c /Gs8192 /GS- /D UNICODE /O1ib2s /GL /Gy /D EFIX64 /DSTRING_ARRAY_NAME=${BASE_NAME}Strings /FI${DEST_DIR_DEBUG}/AutoGen.h /Fp${DEST_DIR_OUTPUT}/AutoGen.h.gch /Yc /TC /EHs-c- /GF\r
 DEBUG_MYTOOLS_X64_ASM_FLAGS     = /nologo /W3 /WX /c /Cx /Zd /Zi\r
 RELEASE_MYTOOLS_X64_ASM_FLAGS   = /nologo /W3 /WX /c /Cx /Zd\r
-DEBUG_MYTOOLS_X64_DLINK_FLAGS   = /NOLOGO /NODEFAULTLIB /IGNORE:4086 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /Machine:AMD64 /LTCG /DLL /ENTRY:${ENTRYPOINT} /SUBSYSTEM:CONSOLE /SAFESEH:NO /BASE:0 /DRIVER /DEBUG \r
-RELEASE_MYTOOLS_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4086 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /Machine:AMD64 /LTCG /DLL /ENTRY:${ENTRYPOINT} /SUBSYSTEM:CONSOLE /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.data=.text /MERGE:.rdata=.text\r
+DEBUG_MYTOOLS_X64_DLINK_FLAGS   = /NOLOGO /NODEFAULTLIB /IGNORE:4086 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /Machine:AMD64 /LTCG /DLL /ENTRY:${ENTRYPOINT} /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG \r
+RELEASE_MYTOOLS_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4086 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /Machine:AMD64 /LTCG /DLL /ENTRY:${ENTRYPOINT} /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.data=.text /MERGE:.rdata=.text\r
 \r
 ##################\r
 # IPF definitions\r
 ##################\r
-*_MYTOOLS_IPF_*_FAMILY      = MSFT\r
-\r
-*_MYTOOLS_IPF_PP_NAME       = cl.exe\r
-*_MYTOOLS_IPF_CC_NAME       = cl.exe\r
-*_MYTOOLS_IPF_SLINK_NAME    = lib.exe\r
-*_MYTOOLS_IPF_DLINK_NAME    = link.exe\r
-\r
-*_MYTOOLS_IPF_SLINK_FLAGS   = /nologo /LTCG\r
-\r
-*_MYTOOLS_IPF_ASM_NAME      = ias.exe\r
-*_MYTOOLS_IPF_ASM_EXT       = .s\r
-*_MYTOOLS_IPF_*_PATH        = C:\WINDDK\3790.1830\bin\win64\x86\r
-\r
-*_MYTOOLS_IPF_PP_FLAGS      = /nologo /P /TC\r
-*_MYTOOLS_IPF_CC_FLAGS      = /GS- /nologo /W4 /WX /EHs-c- /Gy /c /D EFI64 /O1i /DEFI_FIRMWARE_VENDOR=L\"INTEL\" /DSTRING_ARRAY_NAME=${BASE_NAME}Strings /FI${DEST_DIR_DEBUG}/AutoGen.h \r
-*_MYTOOLS_IPF_ASM_FLAGS     = -N us -X explicit -M ilp64 -N so -W4\r
-*_MYTOOLS_IPF_DLINK_FLAGS   = /NOLOGO /NODEFAULTLIB /LTCG /OPT:REF /IGNORE:4086 /MAP /MACHINE:IA64 /ENTRY:${ENTRYPOINT} /SUBSYSTEM:CONSOLE /MAP:${DEST_DIR_DEBUG}/${BASE_NAME}.map /PDB:${DEST_DIR_DEBUG}/${BASE_NAME}.pdb \r
+*_MYTOOLS_IPF_PCH_NAME          = cl.exe\r
+*_MYTOOLS_IPF_ASM_NAME          = ias.exe\r
+*_MYTOOLS_IPF_ASM_EXT           = .s\r
+\r
+*_MYTOOLS_IPF_*_PATH            = C:\WINDDK\3790.1830\bin\win64\x86\r
+\r
+*_MYTOOLS_IPF_APP_FLAGS         = /nologo /P /TC\r
+*_MYTOOLS_IPF_PP_FLAGS          = /nologo /P /TC /FI${DEST_DIR_DEBUG}/AutoGen.h\r
+DEBUG_MYTOOLS_IPF_CC_FLAGS      = /GS- /nologo /W4 /WX /EHs-c- /Gy /c /Os /X /D EFI64 /DSTRING_ARRAY_NAME=${BASE_NAME}Strings /FI${DEST_DIR_DEBUG}/AutoGen.h /Fp${DEST_DIR_OUTPUT}/AutoGen.h.gch /Yu${DEST_DIR_DEBUG}/AutoGen.h /Zi\r
+RELEASE_MYTOOLS_IPF_CC_FLAGS    = /GS- /nologo /W4 /WX /EHs-c- /Gy /c /Os /X /D EFI64 /DSTRING_ARRAY_NAME=${BASE_NAME}Strings /FI${DEST_DIR_DEBUG}/AutoGen.h /Fp${DEST_DIR_OUTPUT}/AutoGen.h.gch /Yu${DEST_DIR_DEBUG}/AutoGen.h\r
+DEBUG_MYTOOLS_IPF_PCH_FLAGS     = /GS- /nologo /W4 /WX /EHs-c- /Gy /c /Os /X /D EFI64 /DSTRING_ARRAY_NAME=${BASE_NAME}Strings /FI${DEST_DIR_DEBUG}/AutoGen.h /Fp${DEST_DIR_OUTPUT}/AutoGen.h.gch /Yc /TC /Zi\r
+RELEASE_MYTOOLS_IPF_PCH_FLAGS   = /GS- /nologo /W4 /WX /EHs-c- /Gy /c /Os /X /D EFI64 /DSTRING_ARRAY_NAME=${BASE_NAME}Strings /FI${DEST_DIR_DEBUG}/AutoGen.h /Fp${DEST_DIR_OUTPUT}/AutoGen.h.gch /Yc /TC\r
+DEBUG_MYTOOLS_IPF_ASM_FLAGS     = -N us -X explicit -M ilp64 -N so -W4 -d debug\r
+RELEASE_MYTOOLS_IPF_ASM_FLAGS   = -N us -X explicit -M ilp64 -N so -W4\r
+DEBUG_MYTOOLS_IPF_DLINK_FLAGS   = /NOLOGO /NODEFAULTLIB /LTCG /OPT:REF /IGNORE:4086 /MAP /ALIGN:32 /MACHINE:IA64 /ENTRY:${ENTRYPOINT} /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /MAP:${DEST_DIR_DEBUG}/${BASE_NAME}.map /PDB:${DEST_DIR_DEBUG}/${BASE_NAME}.pdb /DEBUG\r
+RELEASE_MYTOOLS_IPF_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /LTCG /OPT:REF /IGNORE:4086 /MAP /ALIGN:32 /MACHINE:IA64 /ENTRY:${ENTRYPOINT} /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /MAP:${DEST_DIR_DEBUG}/${BASE_NAME}.map /PDB:${DEST_DIR_DEBUG}/${BASE_NAME}.pdb\r
+*_MYTOOLS_IPF_SLINK_FLAGS       = /nologo /LTCG\r
 \r
 ##################\r
 # EBC definitions\r
@@ -422,11 +524,12 @@ RELEASE_MYTOOLS_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4086 /OPT:REF /O
 *_MYTOOLS_EBC_CC_NAME       = iec.exe\r
 *_MYTOOLS_EBC_DLINK_NAME    = link.exe\r
 *_MYTOOLS_EBC_SLINK_NAME    = link.exe\r
+\r
 *_MYTOOLS_EBC_*_PATH        = C:\Program Files\Intel\EBC\Bin\r
 *_MYTOOLS_EBC_*_SPATH       = "C:\Program Files\Intel\EBC\Lib\EbcLib.lib"\r
 \r
 *_MYTOOLS_EBC_PP_FLAGS      = /nologo /P /TC /FI${DEST_DIR_DEBUG}/AutoGen.h \r
-*_MYTOOLS_EBC_CC_FLAGS      = /nologo /c /W3 /WX /FI${DEST_DIR_DEBUG}/AutoGen.h /DEFI_FIRMWARE_VENDOR=L\"INTEL\" /DSTRING_ARRAY_NAME=${BASE_NAME}Strings \r
+*_MYTOOLS_EBC_CC_FLAGS      = /nologo /c /W3 /WX /FI${DEST_DIR_DEBUG}/AutoGen.h /DSTRING_ARRAY_NAME=${BASE_NAME}Strings \r
 *_MYTOOLS_EBC_SLINK_FLAGS   = /lib /NOLOGO /MACHINE:EBC\r
 *_MYTOOLS_EBC_DLINK_FLAGS   = /NOLOGO /NODEFAULTLIB /MACHINE:EBC /OPT:REF /ENTRY:${ENTRYPOINT} /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER\r
 \r
@@ -435,7 +538,4 @@ RELEASE_MYTOOLS_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4086 /OPT:REF /O
 ##################\r
 *_MYTOOLS_*_ASL_FAMILY  = INTEL\r
 *_MYTOOLS_*_ASL_NAME    = iasl.exe\r
-*_MYTOOLS_IA32_ASL_PATH = C:\ASL\r
-*_MYTOOLS_X64_ASL_PATH  = C:\ASL\r
-*_MYTOOLS_IPF_ASL_PATH  = C:\ASL\r
-*_MYTOOLS_EBC_ASL_PATH  = C:\ASL\r
+*_MYTOOLS_*_ASL_PATH    = C:\ASL\r