[edk2-devel] [PATCH v1 2/2] BaseTools: Make undefined VFR macro an error (MSVC)

Daniel Schaefer posted 2 patches 3 years, 8 months ago
[edk2-devel] [PATCH v1 2/2] BaseTools: Make undefined VFR macro an error (MSVC)
Posted by Daniel Schaefer 3 years, 8 months ago
VFR successfully compiles if we forget to include a header that defines
a macro. In that case the HII option was hidden when it shouldn't be
just because the macro was used but not defined.

The behaviour is totally intended by the C/PP standard. When a macro is
undefined it evaluates to 0.
GCC, MSVC and Clang have warnings to catch this type of mistake. With
this commit we enable this warning and make it a compiler error.

Cc: Bob Feng <bob.c.feng@intel.com>
Cc: Liming Gao <gaoliming@byosoft.com.cn>
Cc: Yuwei Chen <yuwei.chen@intel.com>
Cc: Derek Lin <derek.lin2@hpe.com>
---
 BaseTools/Conf/tools_def.template | 46 ++++++++++----------
 1 file changed, 23 insertions(+), 23 deletions(-)

diff --git a/BaseTools/Conf/tools_def.template b/BaseTools/Conf/tools_def.template
index 728c1d3119e4..56c7bd13f157 100755
--- a/BaseTools/Conf/tools_def.template
+++ b/BaseTools/Conf/tools_def.template
@@ -422,7 +422,7 @@ DEFINE DTC_BIN                 = ENV(DTC_PREFIX)dtc
 *_VS2008_*_SLINK_FLAGS            = /NOLOGO /LTCG

 *_VS2008_*_APP_FLAGS              = /nologo /E /TC

 *_VS2008_*_PP_FLAGS               = /nologo /E /TC /FIAutoGen.h

-*_VS2008_*_VFRPP_FLAGS            = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h

+*_VS2008_*_VFRPP_FLAGS            = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h /we4668

 *_VS2008_*_DEPS_FLAGS            = DEF(MSFT_DEPS_FLAGS)

 *_VS2008_*_ASM16_PATH             = DEF(VS2008_BIN)\ml.exe

 

@@ -518,7 +518,7 @@ NOOPT_VS2008_X64_DLINK_FLAGS  = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT
 *_VS2008_EBC_MAKE_FLAGS          = /nologo

 *_VS2008_EBC_PP_FLAGS            = /nologo /E /TC /FIAutoGen.h

 *_VS2008_EBC_CC_FLAGS            = /nologo /c /WX /W3 /FIAutoGen.h /D$(MODULE_ENTRY_POINT)=$(ARCH_ENTRY_POINT)

-*_VS2008_EBC_VFRPP_FLAGS         = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h

+*_VS2008_EBC_VFRPP_FLAGS         = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h /we4668

 *_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

 

@@ -538,7 +538,7 @@ NOOPT_VS2008_X64_DLINK_FLAGS  = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT
 *_VS2008x86_*_SLINK_FLAGS     = /NOLOGO /LTCG

 *_VS2008x86_*_APP_FLAGS       = /nologo /E /TC

 *_VS2008x86_*_PP_FLAGS        = /nologo /E /TC /FIAutoGen.h

-*_VS2008x86_*_VFRPP_FLAGS     = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h

+*_VS2008x86_*_VFRPP_FLAGS     = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h /we4668

 *_VS2008x86_*_DEPS_FLAGS      = DEF(MSFT_DEPS_FLAGS)

 *_VS2008x86_*_ASM16_PATH      = DEF(VS2008x86_BIN)\ml.exe

 

@@ -633,7 +633,7 @@ NOOPT_VS2008x86_X64_DLINK_FLAGS    = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF
 *_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_VFRPP_FLAGS         = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h /we4668

 *_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

 

@@ -656,7 +656,7 @@ NOOPT_VS2008x86_X64_DLINK_FLAGS    = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF
 *_VS2010_*_SLINK_FLAGS            = /NOLOGO /LTCG

 *_VS2010_*_APP_FLAGS              = /nologo /E /TC

 *_VS2010_*_PP_FLAGS               = /nologo /E /TC /FIAutoGen.h

-*_VS2010_*_VFRPP_FLAGS            = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h

+*_VS2010_*_VFRPP_FLAGS            = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h /we4668

 *_VS2010_*_DEPS_FLAGS      = DEF(MSFT_DEPS_FLAGS)

 *_VS2010_*_ASM16_PATH             = DEF(VS2010_BIN)\ml.exe

 

@@ -752,7 +752,7 @@ NOOPT_VS2010_X64_DLINK_FLAGS  = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT
 *_VS2010_EBC_MAKE_FLAGS          = /nologo

 *_VS2010_EBC_PP_FLAGS            = /nologo /E /TC /FIAutoGen.h

 *_VS2010_EBC_CC_FLAGS            = /nologo /c /WX /W3 /FIAutoGen.h /D$(MODULE_ENTRY_POINT)=$(ARCH_ENTRY_POINT)

-*_VS2010_EBC_VFRPP_FLAGS         = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h

+*_VS2010_EBC_VFRPP_FLAGS         = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h /we4668

 *_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

 

@@ -772,7 +772,7 @@ NOOPT_VS2010_X64_DLINK_FLAGS  = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT
 *_VS2010x86_*_SLINK_FLAGS     = /NOLOGO /LTCG

 *_VS2010x86_*_APP_FLAGS       = /nologo /E /TC

 *_VS2010x86_*_PP_FLAGS        = /nologo /E /TC /FIAutoGen.h

-*_VS2010x86_*_VFRPP_FLAGS     = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h

+*_VS2010x86_*_VFRPP_FLAGS     = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h /we4668

 *_VS2010x86_*_DEPS_FLAGS      = DEF(MSFT_DEPS_FLAGS)

 *_VS2010x86_*_ASM16_PATH      = DEF(VS2010x86_BIN)\ml.exe

 

@@ -868,7 +868,7 @@ NOOPT_VS2010x86_X64_DLINK_FLAGS    = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF
 *_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_VFRPP_FLAGS         = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h /we4668

 *_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

 

@@ -890,7 +890,7 @@ NOOPT_VS2010x86_X64_DLINK_FLAGS    = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF
 *_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_*_VFRPP_FLAGS            = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h /we4668

 *_VS2012_*_DEPS_FLAGS      = DEF(MSFT_DEPS_FLAGS)

 *_VS2012_*_ASM16_PATH             = DEF(VS2012_BIN)\ml.exe

 

@@ -986,7 +986,7 @@ NOOPT_VS2012_X64_DLINK_FLAGS  = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT
 *_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_VFRPP_FLAGS         = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h /we4668

 *_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

 

@@ -1006,7 +1006,7 @@ NOOPT_VS2012_X64_DLINK_FLAGS  = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT
 *_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_*_VFRPP_FLAGS     = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h /we4668

 *_VS2012x86_*_DEPS_FLAGS      = DEF(MSFT_DEPS_FLAGS)

 *_VS2012x86_*_ASM16_PATH      = DEF(VS2012x86_BIN)\ml.exe

 

@@ -1102,7 +1102,7 @@ NOOPT_VS2012x86_X64_DLINK_FLAGS    = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF
 *_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_VFRPP_FLAGS         = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h /we4668

 *_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

 

@@ -1124,7 +1124,7 @@ NOOPT_VS2012x86_X64_DLINK_FLAGS    = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF
 *_VS2013_*_SLINK_FLAGS            = /NOLOGO /LTCG

 *_VS2013_*_APP_FLAGS              = /nologo /E /TC

 *_VS2013_*_PP_FLAGS               = /nologo /E /TC /FIAutoGen.h

-*_VS2013_*_VFRPP_FLAGS            = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h

+*_VS2013_*_VFRPP_FLAGS            = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h /we4668

 *_VS2013_*_DEPS_FLAGS      = DEF(MSFT_DEPS_FLAGS)

 *_VS2013_*_ASM16_PATH             = DEF(VS2013_BIN)\ml.exe

 

@@ -1220,7 +1220,7 @@ NOOPT_VS2013_X64_DLINK_FLAGS  = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT
 *_VS2013_EBC_MAKE_FLAGS          = /nologo

 *_VS2013_EBC_PP_FLAGS            = /nologo /E /TC /FIAutoGen.h

 *_VS2013_EBC_CC_FLAGS            = /nologo /c /WX /W3 /FIAutoGen.h /D$(MODULE_ENTRY_POINT)=$(ARCH_ENTRY_POINT)

-*_VS2013_EBC_VFRPP_FLAGS         = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h

+*_VS2013_EBC_VFRPP_FLAGS         = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h /we4668

 *_VS2013_EBC_SLINK_FLAGS         = /lib /NOLOGO /MACHINE:EBC

 *_VS2013_EBC_DLINK_FLAGS         = "C:\Program Files\Intel\EBC\Lib\EbcLib.lib" /NOLOGO /NODEFAULTLIB /MACHINE:EBC /OPT:REF /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /MAP /ALIGN:32 /DRIVER

 

@@ -1240,7 +1240,7 @@ NOOPT_VS2013_X64_DLINK_FLAGS  = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT
 *_VS2013x86_*_SLINK_FLAGS     = /NOLOGO /LTCG

 *_VS2013x86_*_APP_FLAGS       = /nologo /E /TC

 *_VS2013x86_*_PP_FLAGS        = /nologo /E /TC /FIAutoGen.h

-*_VS2013x86_*_VFRPP_FLAGS     = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h

+*_VS2013x86_*_VFRPP_FLAGS     = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h /we4668

 *_VS2013x86_*_DEPS_FLAGS      = DEF(MSFT_DEPS_FLAGS)

 *_VS2013x86_*_ASM16_PATH      = DEF(VS2013x86_BIN)\ml.exe

 

@@ -1336,7 +1336,7 @@ NOOPT_VS2013x86_X64_DLINK_FLAGS    = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF
 *_VS2013x86_EBC_MAKE_FLAGS          = /nologo

 *_VS2013x86_EBC_PP_FLAGS            = /nologo /E /TC /FIAutoGen.h

 *_VS2013x86_EBC_CC_FLAGS            = /nologo /c /WX /W3 /FIAutoGen.h /D$(MODULE_ENTRY_POINT)=$(ARCH_ENTRY_POINT)

-*_VS2013x86_EBC_VFRPP_FLAGS         = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h

+*_VS2013x86_EBC_VFRPP_FLAGS         = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h /we4668

 *_VS2013x86_EBC_SLINK_FLAGS         = /lib /NOLOGO /MACHINE:EBC

 *_VS2013x86_EBC_DLINK_FLAGS         = "C:\Program Files (x86)\Intel\EBC\Lib\EbcLib.lib" /NOLOGO /NODEFAULTLIB /MACHINE:EBC /OPT:REF /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /MAP /ALIGN:32 /DRIVER

 

@@ -1358,7 +1358,7 @@ NOOPT_VS2013x86_X64_DLINK_FLAGS    = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF
 *_VS2015_*_SLINK_FLAGS            = /NOLOGO /LTCG

 *_VS2015_*_APP_FLAGS              = /nologo /E /TC

 *_VS2015_*_PP_FLAGS               = /nologo /E /TC /FIAutoGen.h

-*_VS2015_*_VFRPP_FLAGS            = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h

+*_VS2015_*_VFRPP_FLAGS            = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h /we4668

 *_VS2015_*_DLINK2_FLAGS           =

 *_VS2015_*_DEPS_FLAGS      = DEF(MSFT_DEPS_FLAGS)

 *_VS2015_*_ASM16_PATH             = DEF(VS2015_BIN)\ml.exe

@@ -1455,7 +1455,7 @@ NOOPT_VS2015_X64_DLINK_FLAGS  = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT
 *_VS2015_EBC_MAKE_FLAGS          = /nologo

 *_VS2015_EBC_PP_FLAGS            = /nologo /E /TC /FIAutoGen.h

 *_VS2015_EBC_CC_FLAGS            = /nologo /c /WX /W3 /FIAutoGen.h /D$(MODULE_ENTRY_POINT)=$(ARCH_ENTRY_POINT)

-*_VS2015_EBC_VFRPP_FLAGS         = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h

+*_VS2015_EBC_VFRPP_FLAGS         = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h /we4668

 *_VS2015_EBC_SLINK_FLAGS         = /lib /NOLOGO /MACHINE:EBC

 *_VS2015_EBC_DLINK_FLAGS         = "C:\Program Files\Intel\EBC\Lib\EbcLib.lib" /NOLOGO /NODEFAULTLIB /MACHINE:EBC /OPT:REF /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /MAP /ALIGN:32 /DRIVER

 

@@ -1475,7 +1475,7 @@ NOOPT_VS2015_X64_DLINK_FLAGS  = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT
 *_VS2015x86_*_SLINK_FLAGS     = /NOLOGO /LTCG

 *_VS2015x86_*_APP_FLAGS       = /nologo /E /TC

 *_VS2015x86_*_PP_FLAGS        = /nologo /E /TC /FIAutoGen.h

-*_VS2015x86_*_VFRPP_FLAGS     = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h

+*_VS2015x86_*_VFRPP_FLAGS     = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h /we4668

 *_VS2015x86_*_DLINK2_FLAGS    =

 *_VS2015x86_*_DEPS_FLAGS      = DEF(MSFT_DEPS_FLAGS)

 *_VS2015x86_*_ASM16_PATH      = DEF(VS2015x86_BIN)\ml.exe

@@ -1593,7 +1593,7 @@ NOOPT_VS2015x86_X64_DLINK_FLAGS    = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF
 *_VS2017_*_SLINK_FLAGS     = /NOLOGO /LTCG

 *_VS2017_*_APP_FLAGS       = /nologo /E /TC

 *_VS2017_*_PP_FLAGS        = /nologo /E /TC /FIAutoGen.h

-*_VS2017_*_VFRPP_FLAGS     = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h

+*_VS2017_*_VFRPP_FLAGS     = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h /we4668

 *_VS2017_*_DLINK2_FLAGS    = /WHOLEARCHIVE

 *_VS2017_*_ASM16_PATH      = DEF(VS2017_BIN_IA32)\ml.exe

 *_VS2017_*_DEPS_FLAGS      = DEF(MSFT_DEPS_FLAGS)

@@ -1736,7 +1736,7 @@ NOOPT_VS2017_AARCH64_DLINK_FLAGS   = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF
 *_VS2017_EBC_MAKE_FLAGS          = /nologo

 *_VS2017_EBC_PP_FLAGS            = /nologo /E /TC /FIAutoGen.h

 *_VS2017_EBC_CC_FLAGS            = /nologo /c /WX /W3 /FIAutoGen.h /D$(MODULE_ENTRY_POINT)=$(ARCH_ENTRY_POINT)

-*_VS2017_EBC_VFRPP_FLAGS         = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h

+*_VS2017_EBC_VFRPP_FLAGS         = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h /we4668

 *_VS2017_EBC_SLINK_FLAGS         = /lib /NOLOGO /MACHINE:EBC

 *_VS2017_EBC_DLINK_FLAGS         = "C:\Program Files (x86)\Intel\EBC\Lib\EbcLib.lib" /NOLOGO /NODEFAULTLIB /MACHINE:EBC /OPT:REF /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /MAP /ALIGN:32 /DRIVER

 

@@ -1756,7 +1756,7 @@ NOOPT_VS2017_AARCH64_DLINK_FLAGS   = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF
 *_VS2019_*_SLINK_FLAGS     = /NOLOGO /LTCG

 *_VS2019_*_APP_FLAGS       = /nologo /E /TC

 *_VS2019_*_PP_FLAGS        = /nologo /E /TC /FIAutoGen.h

-*_VS2019_*_VFRPP_FLAGS     = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h

+*_VS2019_*_VFRPP_FLAGS     = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h /we4668

 *_VS2019_*_DLINK2_FLAGS    = /WHOLEARCHIVE

 *_VS2019_*_ASM16_PATH      = DEF(VS2019_BIN_IA32)\ml.exe

 *_VS2019_*_DEPS_FLAGS      = DEF(MSFT_DEPS_FLAGS)

@@ -1899,7 +1899,7 @@ NOOPT_VS2019_AARCH64_DLINK_FLAGS   = /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF
 *_VS2019_EBC_MAKE_FLAGS          = /nologo

 *_VS2019_EBC_PP_FLAGS            = /nologo /E /TC /FIAutoGen.h

 *_VS2019_EBC_CC_FLAGS            = /nologo /c /WX /W3 /FIAutoGen.h /D$(MODULE_ENTRY_POINT)=$(ARCH_ENTRY_POINT)

-*_VS2019_EBC_VFRPP_FLAGS         = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h

+*_VS2019_EBC_VFRPP_FLAGS         = /nologo /E /TC /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h /we4668

 *_VS2019_EBC_SLINK_FLAGS         = /lib /NOLOGO /MACHINE:EBC

 *_VS2019_EBC_DLINK_FLAGS         = "C:\Program Files (x86)\Intel\EBC\Lib\EbcLib.lib" /NOLOGO /NODEFAULTLIB /MACHINE:EBC /OPT:REF /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /MAP /ALIGN:32 /DRIVER

 

-- 
2.30.0



-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#72327): https://edk2.groups.io/g/devel/message/72327
Mute This Topic: https://groups.io/mt/81020994/1787277
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org]
-=-=-=-=-=-=-=-=-=-=-=-


[edk2-devel] 回复: [PATCH v1 2/2] BaseTools: Make undefined VFR macro an error (MSVC)
Posted by gaoliming 3 years, 8 months ago
Do you check whether EBC compiler supports this warning? 

And, do you evaluate CLANG compiler support for this warning?

Thanks
Liming
> -----邮件原件-----
> 发件人: Daniel Schaefer <daniel.schaefer@hpe.com>
> 发送时间: 2021年3月2日 16:22
> 收件人: devel@edk2.groups.io
> 抄送: Bob Feng <bob.c.feng@intel.com>; Liming Gao
> <gaoliming@byosoft.com.cn>; Yuwei Chen <yuwei.chen@intel.com>; Derek
> Lin <derek.lin2@hpe.com>
> 主题: [PATCH v1 2/2] BaseTools: Make undefined VFR macro an error (MSVC)
> 
> VFR successfully compiles if we forget to include a header that defines
> a macro. In that case the HII option was hidden when it shouldn't be
> just because the macro was used but not defined.
> 
> The behaviour is totally intended by the C/PP standard. When a macro is
> undefined it evaluates to 0.
> GCC, MSVC and Clang have warnings to catch this type of mistake. With
> this commit we enable this warning and make it a compiler error.
> 
> Cc: Bob Feng <bob.c.feng@intel.com>
> Cc: Liming Gao <gaoliming@byosoft.com.cn>
> Cc: Yuwei Chen <yuwei.chen@intel.com>
> Cc: Derek Lin <derek.lin2@hpe.com>
> ---
>  BaseTools/Conf/tools_def.template | 46 ++++++++++----------
>  1 file changed, 23 insertions(+), 23 deletions(-)
> 
> diff --git a/BaseTools/Conf/tools_def.template
> b/BaseTools/Conf/tools_def.template
> index 728c1d3119e4..56c7bd13f157 100755
> --- a/BaseTools/Conf/tools_def.template
> +++ b/BaseTools/Conf/tools_def.template
> @@ -422,7 +422,7 @@ DEFINE DTC_BIN                 =
> ENV(DTC_PREFIX)dtc
>  *_VS2008_*_SLINK_FLAGS            = /NOLOGO /LTCG
> 
>  *_VS2008_*_APP_FLAGS              = /nologo /E /TC
> 
>  *_VS2008_*_PP_FLAGS               = /nologo /E /TC /FIAutoGen.h
> 
> -*_VS2008_*_VFRPP_FLAGS            = /nologo /E /TC /DVFRCOMPILE
> /FI$(MODULE_NAME)StrDefs.h
> 
> +*_VS2008_*_VFRPP_FLAGS            = /nologo /E /TC /DVFRCOMPILE
> /FI$(MODULE_NAME)StrDefs.h /we4668
> 
>  *_VS2008_*_DEPS_FLAGS            = DEF(MSFT_DEPS_FLAGS)
> 
>  *_VS2008_*_ASM16_PATH             = DEF(VS2008_BIN)\ml.exe
> 
> 
> 
> @@ -518,7 +518,7 @@ NOOPT_VS2008_X64_DLINK_FLAGS  = /NOLOGO
> /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT
>  *_VS2008_EBC_MAKE_FLAGS          = /nologo
> 
>  *_VS2008_EBC_PP_FLAGS            = /nologo /E /TC /FIAutoGen.h
> 
>  *_VS2008_EBC_CC_FLAGS            = /nologo /c /WX /W3
> /FIAutoGen.h /D$(MODULE_ENTRY_POINT)=$(ARCH_ENTRY_POINT)
> 
> -*_VS2008_EBC_VFRPP_FLAGS         = /nologo /E /TC /DVFRCOMPILE
> /FI$(MODULE_NAME)StrDefs.h
> 
> +*_VS2008_EBC_VFRPP_FLAGS         = /nologo /E /TC /DVFRCOMPILE
> /FI$(MODULE_NAME)StrDefs.h /we4668
> 
>  *_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
> 
> 
> 
> @@ -538,7 +538,7 @@ NOOPT_VS2008_X64_DLINK_FLAGS  = /NOLOGO
> /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT
>  *_VS2008x86_*_SLINK_FLAGS     = /NOLOGO /LTCG
> 
>  *_VS2008x86_*_APP_FLAGS       = /nologo /E /TC
> 
>  *_VS2008x86_*_PP_FLAGS        = /nologo /E /TC /FIAutoGen.h
> 
> -*_VS2008x86_*_VFRPP_FLAGS     = /nologo /E /TC /DVFRCOMPILE
> /FI$(MODULE_NAME)StrDefs.h
> 
> +*_VS2008x86_*_VFRPP_FLAGS     = /nologo /E /TC /DVFRCOMPILE
> /FI$(MODULE_NAME)StrDefs.h /we4668
> 
>  *_VS2008x86_*_DEPS_FLAGS      = DEF(MSFT_DEPS_FLAGS)
> 
>  *_VS2008x86_*_ASM16_PATH      = DEF(VS2008x86_BIN)\ml.exe
> 
> 
> 
> @@ -633,7 +633,7 @@ NOOPT_VS2008x86_X64_DLINK_FLAGS    =
> /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF
>  *_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_VFRPP_FLAGS         = /nologo /E /TC
> /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h /we4668
> 
>  *_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
> 
> 
> 
> @@ -656,7 +656,7 @@ NOOPT_VS2008x86_X64_DLINK_FLAGS    =
> /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF
>  *_VS2010_*_SLINK_FLAGS            = /NOLOGO /LTCG
> 
>  *_VS2010_*_APP_FLAGS              = /nologo /E /TC
> 
>  *_VS2010_*_PP_FLAGS               = /nologo /E /TC /FIAutoGen.h
> 
> -*_VS2010_*_VFRPP_FLAGS            = /nologo /E /TC /DVFRCOMPILE
> /FI$(MODULE_NAME)StrDefs.h
> 
> +*_VS2010_*_VFRPP_FLAGS            = /nologo /E /TC /DVFRCOMPILE
> /FI$(MODULE_NAME)StrDefs.h /we4668
> 
>  *_VS2010_*_DEPS_FLAGS      = DEF(MSFT_DEPS_FLAGS)
> 
>  *_VS2010_*_ASM16_PATH             = DEF(VS2010_BIN)\ml.exe
> 
> 
> 
> @@ -752,7 +752,7 @@ NOOPT_VS2010_X64_DLINK_FLAGS  = /NOLOGO
> /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT
>  *_VS2010_EBC_MAKE_FLAGS          = /nologo
> 
>  *_VS2010_EBC_PP_FLAGS            = /nologo /E /TC /FIAutoGen.h
> 
>  *_VS2010_EBC_CC_FLAGS            = /nologo /c /WX /W3
> /FIAutoGen.h /D$(MODULE_ENTRY_POINT)=$(ARCH_ENTRY_POINT)
> 
> -*_VS2010_EBC_VFRPP_FLAGS         = /nologo /E /TC /DVFRCOMPILE
> /FI$(MODULE_NAME)StrDefs.h
> 
> +*_VS2010_EBC_VFRPP_FLAGS         = /nologo /E /TC /DVFRCOMPILE
> /FI$(MODULE_NAME)StrDefs.h /we4668
> 
>  *_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
> 
> 
> 
> @@ -772,7 +772,7 @@ NOOPT_VS2010_X64_DLINK_FLAGS  = /NOLOGO
> /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT
>  *_VS2010x86_*_SLINK_FLAGS     = /NOLOGO /LTCG
> 
>  *_VS2010x86_*_APP_FLAGS       = /nologo /E /TC
> 
>  *_VS2010x86_*_PP_FLAGS        = /nologo /E /TC /FIAutoGen.h
> 
> -*_VS2010x86_*_VFRPP_FLAGS     = /nologo /E /TC /DVFRCOMPILE
> /FI$(MODULE_NAME)StrDefs.h
> 
> +*_VS2010x86_*_VFRPP_FLAGS     = /nologo /E /TC /DVFRCOMPILE
> /FI$(MODULE_NAME)StrDefs.h /we4668
> 
>  *_VS2010x86_*_DEPS_FLAGS      = DEF(MSFT_DEPS_FLAGS)
> 
>  *_VS2010x86_*_ASM16_PATH      = DEF(VS2010x86_BIN)\ml.exe
> 
> 
> 
> @@ -868,7 +868,7 @@ NOOPT_VS2010x86_X64_DLINK_FLAGS    =
> /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF
>  *_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_VFRPP_FLAGS         = /nologo /E /TC
> /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h /we4668
> 
>  *_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
> 
> 
> 
> @@ -890,7 +890,7 @@ NOOPT_VS2010x86_X64_DLINK_FLAGS    =
> /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF
>  *_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_*_VFRPP_FLAGS            = /nologo /E /TC /DVFRCOMPILE
> /FI$(MODULE_NAME)StrDefs.h /we4668
> 
>  *_VS2012_*_DEPS_FLAGS      = DEF(MSFT_DEPS_FLAGS)
> 
>  *_VS2012_*_ASM16_PATH             = DEF(VS2012_BIN)\ml.exe
> 
> 
> 
> @@ -986,7 +986,7 @@ NOOPT_VS2012_X64_DLINK_FLAGS  = /NOLOGO
> /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT
>  *_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_VFRPP_FLAGS         = /nologo /E /TC /DVFRCOMPILE
> /FI$(MODULE_NAME)StrDefs.h /we4668
> 
>  *_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
> 
> 
> 
> @@ -1006,7 +1006,7 @@ NOOPT_VS2012_X64_DLINK_FLAGS  = /NOLOGO
> /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT
>  *_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_*_VFRPP_FLAGS     = /nologo /E /TC /DVFRCOMPILE
> /FI$(MODULE_NAME)StrDefs.h /we4668
> 
>  *_VS2012x86_*_DEPS_FLAGS      = DEF(MSFT_DEPS_FLAGS)
> 
>  *_VS2012x86_*_ASM16_PATH      = DEF(VS2012x86_BIN)\ml.exe
> 
> 
> 
> @@ -1102,7 +1102,7 @@ NOOPT_VS2012x86_X64_DLINK_FLAGS    =
> /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF
>  *_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_VFRPP_FLAGS         = /nologo /E /TC
> /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h /we4668
> 
>  *_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
> 
> 
> 
> @@ -1124,7 +1124,7 @@ NOOPT_VS2012x86_X64_DLINK_FLAGS    =
> /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF
>  *_VS2013_*_SLINK_FLAGS            = /NOLOGO /LTCG
> 
>  *_VS2013_*_APP_FLAGS              = /nologo /E /TC
> 
>  *_VS2013_*_PP_FLAGS               = /nologo /E /TC /FIAutoGen.h
> 
> -*_VS2013_*_VFRPP_FLAGS            = /nologo /E /TC /DVFRCOMPILE
> /FI$(MODULE_NAME)StrDefs.h
> 
> +*_VS2013_*_VFRPP_FLAGS            = /nologo /E /TC /DVFRCOMPILE
> /FI$(MODULE_NAME)StrDefs.h /we4668
> 
>  *_VS2013_*_DEPS_FLAGS      = DEF(MSFT_DEPS_FLAGS)
> 
>  *_VS2013_*_ASM16_PATH             = DEF(VS2013_BIN)\ml.exe
> 
> 
> 
> @@ -1220,7 +1220,7 @@ NOOPT_VS2013_X64_DLINK_FLAGS  = /NOLOGO
> /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT
>  *_VS2013_EBC_MAKE_FLAGS          = /nologo
> 
>  *_VS2013_EBC_PP_FLAGS            = /nologo /E /TC /FIAutoGen.h
> 
>  *_VS2013_EBC_CC_FLAGS            = /nologo /c /WX /W3
> /FIAutoGen.h /D$(MODULE_ENTRY_POINT)=$(ARCH_ENTRY_POINT)
> 
> -*_VS2013_EBC_VFRPP_FLAGS         = /nologo /E /TC /DVFRCOMPILE
> /FI$(MODULE_NAME)StrDefs.h
> 
> +*_VS2013_EBC_VFRPP_FLAGS         = /nologo /E /TC /DVFRCOMPILE
> /FI$(MODULE_NAME)StrDefs.h /we4668
> 
>  *_VS2013_EBC_SLINK_FLAGS         = /lib /NOLOGO /MACHINE:EBC
> 
>  *_VS2013_EBC_DLINK_FLAGS         = "C:\Program
> Files\Intel\EBC\Lib\EbcLib.lib" /NOLOGO /NODEFAULTLIB /MACHINE:EBC
> /OPT:REF /ENTRY:$(IMAGE_ENTRY_POINT)
> /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /MAP /ALIGN:32 /DRIVER
> 
> 
> 
> @@ -1240,7 +1240,7 @@ NOOPT_VS2013_X64_DLINK_FLAGS  = /NOLOGO
> /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT
>  *_VS2013x86_*_SLINK_FLAGS     = /NOLOGO /LTCG
> 
>  *_VS2013x86_*_APP_FLAGS       = /nologo /E /TC
> 
>  *_VS2013x86_*_PP_FLAGS        = /nologo /E /TC /FIAutoGen.h
> 
> -*_VS2013x86_*_VFRPP_FLAGS     = /nologo /E /TC /DVFRCOMPILE
> /FI$(MODULE_NAME)StrDefs.h
> 
> +*_VS2013x86_*_VFRPP_FLAGS     = /nologo /E /TC /DVFRCOMPILE
> /FI$(MODULE_NAME)StrDefs.h /we4668
> 
>  *_VS2013x86_*_DEPS_FLAGS      = DEF(MSFT_DEPS_FLAGS)
> 
>  *_VS2013x86_*_ASM16_PATH      = DEF(VS2013x86_BIN)\ml.exe
> 
> 
> 
> @@ -1336,7 +1336,7 @@ NOOPT_VS2013x86_X64_DLINK_FLAGS    =
> /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF
>  *_VS2013x86_EBC_MAKE_FLAGS          = /nologo
> 
>  *_VS2013x86_EBC_PP_FLAGS            = /nologo /E /TC /FIAutoGen.h
> 
>  *_VS2013x86_EBC_CC_FLAGS            = /nologo /c /WX /W3
> /FIAutoGen.h /D$(MODULE_ENTRY_POINT)=$(ARCH_ENTRY_POINT)
> 
> -*_VS2013x86_EBC_VFRPP_FLAGS         = /nologo /E /TC
> /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h
> 
> +*_VS2013x86_EBC_VFRPP_FLAGS         = /nologo /E /TC
> /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h /we4668
> 
>  *_VS2013x86_EBC_SLINK_FLAGS         = /lib /NOLOGO
> /MACHINE:EBC
> 
>  *_VS2013x86_EBC_DLINK_FLAGS         = "C:\Program Files
> (x86)\Intel\EBC\Lib\EbcLib.lib" /NOLOGO /NODEFAULTLIB /MACHINE:EBC
> /OPT:REF /ENTRY:$(IMAGE_ENTRY_POINT)
> /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /MAP /ALIGN:32 /DRIVER
> 
> 
> 
> @@ -1358,7 +1358,7 @@ NOOPT_VS2013x86_X64_DLINK_FLAGS    =
> /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF
>  *_VS2015_*_SLINK_FLAGS            = /NOLOGO /LTCG
> 
>  *_VS2015_*_APP_FLAGS              = /nologo /E /TC
> 
>  *_VS2015_*_PP_FLAGS               = /nologo /E /TC /FIAutoGen.h
> 
> -*_VS2015_*_VFRPP_FLAGS            = /nologo /E /TC /DVFRCOMPILE
> /FI$(MODULE_NAME)StrDefs.h
> 
> +*_VS2015_*_VFRPP_FLAGS            = /nologo /E /TC /DVFRCOMPILE
> /FI$(MODULE_NAME)StrDefs.h /we4668
> 
>  *_VS2015_*_DLINK2_FLAGS           =
> 
>  *_VS2015_*_DEPS_FLAGS      = DEF(MSFT_DEPS_FLAGS)
> 
>  *_VS2015_*_ASM16_PATH             = DEF(VS2015_BIN)\ml.exe
> 
> @@ -1455,7 +1455,7 @@ NOOPT_VS2015_X64_DLINK_FLAGS  = /NOLOGO
> /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT
>  *_VS2015_EBC_MAKE_FLAGS          = /nologo
> 
>  *_VS2015_EBC_PP_FLAGS            = /nologo /E /TC /FIAutoGen.h
> 
>  *_VS2015_EBC_CC_FLAGS            = /nologo /c /WX /W3
> /FIAutoGen.h /D$(MODULE_ENTRY_POINT)=$(ARCH_ENTRY_POINT)
> 
> -*_VS2015_EBC_VFRPP_FLAGS         = /nologo /E /TC /DVFRCOMPILE
> /FI$(MODULE_NAME)StrDefs.h
> 
> +*_VS2015_EBC_VFRPP_FLAGS         = /nologo /E /TC /DVFRCOMPILE
> /FI$(MODULE_NAME)StrDefs.h /we4668
> 
>  *_VS2015_EBC_SLINK_FLAGS         = /lib /NOLOGO /MACHINE:EBC
> 
>  *_VS2015_EBC_DLINK_FLAGS         = "C:\Program
> Files\Intel\EBC\Lib\EbcLib.lib" /NOLOGO /NODEFAULTLIB /MACHINE:EBC
> /OPT:REF /ENTRY:$(IMAGE_ENTRY_POINT)
> /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /MAP /ALIGN:32 /DRIVER
> 
> 
> 
> @@ -1475,7 +1475,7 @@ NOOPT_VS2015_X64_DLINK_FLAGS  = /NOLOGO
> /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT
>  *_VS2015x86_*_SLINK_FLAGS     = /NOLOGO /LTCG
> 
>  *_VS2015x86_*_APP_FLAGS       = /nologo /E /TC
> 
>  *_VS2015x86_*_PP_FLAGS        = /nologo /E /TC /FIAutoGen.h
> 
> -*_VS2015x86_*_VFRPP_FLAGS     = /nologo /E /TC /DVFRCOMPILE
> /FI$(MODULE_NAME)StrDefs.h
> 
> +*_VS2015x86_*_VFRPP_FLAGS     = /nologo /E /TC /DVFRCOMPILE
> /FI$(MODULE_NAME)StrDefs.h /we4668
> 
>  *_VS2015x86_*_DLINK2_FLAGS    =
> 
>  *_VS2015x86_*_DEPS_FLAGS      = DEF(MSFT_DEPS_FLAGS)
> 
>  *_VS2015x86_*_ASM16_PATH      = DEF(VS2015x86_BIN)\ml.exe
> 
> @@ -1593,7 +1593,7 @@ NOOPT_VS2015x86_X64_DLINK_FLAGS    =
> /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF
>  *_VS2017_*_SLINK_FLAGS     = /NOLOGO /LTCG
> 
>  *_VS2017_*_APP_FLAGS       = /nologo /E /TC
> 
>  *_VS2017_*_PP_FLAGS        = /nologo /E /TC /FIAutoGen.h
> 
> -*_VS2017_*_VFRPP_FLAGS     = /nologo /E /TC /DVFRCOMPILE
> /FI$(MODULE_NAME)StrDefs.h
> 
> +*_VS2017_*_VFRPP_FLAGS     = /nologo /E /TC /DVFRCOMPILE
> /FI$(MODULE_NAME)StrDefs.h /we4668
> 
>  *_VS2017_*_DLINK2_FLAGS    = /WHOLEARCHIVE
> 
>  *_VS2017_*_ASM16_PATH      = DEF(VS2017_BIN_IA32)\ml.exe
> 
>  *_VS2017_*_DEPS_FLAGS      = DEF(MSFT_DEPS_FLAGS)
> 
> @@ -1736,7 +1736,7 @@ NOOPT_VS2017_AARCH64_DLINK_FLAGS   =
> /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF
>  *_VS2017_EBC_MAKE_FLAGS          = /nologo
> 
>  *_VS2017_EBC_PP_FLAGS            = /nologo /E /TC /FIAutoGen.h
> 
>  *_VS2017_EBC_CC_FLAGS            = /nologo /c /WX /W3
> /FIAutoGen.h /D$(MODULE_ENTRY_POINT)=$(ARCH_ENTRY_POINT)
> 
> -*_VS2017_EBC_VFRPP_FLAGS         = /nologo /E /TC /DVFRCOMPILE
> /FI$(MODULE_NAME)StrDefs.h
> 
> +*_VS2017_EBC_VFRPP_FLAGS         = /nologo /E /TC /DVFRCOMPILE
> /FI$(MODULE_NAME)StrDefs.h /we4668
> 
>  *_VS2017_EBC_SLINK_FLAGS         = /lib /NOLOGO /MACHINE:EBC
> 
>  *_VS2017_EBC_DLINK_FLAGS         = "C:\Program Files
> (x86)\Intel\EBC\Lib\EbcLib.lib" /NOLOGO /NODEFAULTLIB /MACHINE:EBC
> /OPT:REF /ENTRY:$(IMAGE_ENTRY_POINT)
> /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /MAP /ALIGN:32 /DRIVER
> 
> 
> 
> @@ -1756,7 +1756,7 @@ NOOPT_VS2017_AARCH64_DLINK_FLAGS   =
> /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF
>  *_VS2019_*_SLINK_FLAGS     = /NOLOGO /LTCG
> 
>  *_VS2019_*_APP_FLAGS       = /nologo /E /TC
> 
>  *_VS2019_*_PP_FLAGS        = /nologo /E /TC /FIAutoGen.h
> 
> -*_VS2019_*_VFRPP_FLAGS     = /nologo /E /TC /DVFRCOMPILE
> /FI$(MODULE_NAME)StrDefs.h
> 
> +*_VS2019_*_VFRPP_FLAGS     = /nologo /E /TC /DVFRCOMPILE
> /FI$(MODULE_NAME)StrDefs.h /we4668
> 
>  *_VS2019_*_DLINK2_FLAGS    = /WHOLEARCHIVE
> 
>  *_VS2019_*_ASM16_PATH      = DEF(VS2019_BIN_IA32)\ml.exe
> 
>  *_VS2019_*_DEPS_FLAGS      = DEF(MSFT_DEPS_FLAGS)
> 
> @@ -1899,7 +1899,7 @@ NOOPT_VS2019_AARCH64_DLINK_FLAGS   =
> /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF
>  *_VS2019_EBC_MAKE_FLAGS          = /nologo
> 
>  *_VS2019_EBC_PP_FLAGS            = /nologo /E /TC /FIAutoGen.h
> 
>  *_VS2019_EBC_CC_FLAGS            = /nologo /c /WX /W3
> /FIAutoGen.h /D$(MODULE_ENTRY_POINT)=$(ARCH_ENTRY_POINT)
> 
> -*_VS2019_EBC_VFRPP_FLAGS         = /nologo /E /TC /DVFRCOMPILE
> /FI$(MODULE_NAME)StrDefs.h
> 
> +*_VS2019_EBC_VFRPP_FLAGS         = /nologo /E /TC /DVFRCOMPILE
> /FI$(MODULE_NAME)StrDefs.h /we4668
> 
>  *_VS2019_EBC_SLINK_FLAGS         = /lib /NOLOGO /MACHINE:EBC
> 
>  *_VS2019_EBC_DLINK_FLAGS         = "C:\Program Files
> (x86)\Intel\EBC\Lib\EbcLib.lib" /NOLOGO /NODEFAULTLIB /MACHINE:EBC
> /OPT:REF /ENTRY:$(IMAGE_ENTRY_POINT)
> /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /MAP /ALIGN:32 /DRIVER
> 
> 
> 
> --
> 2.30.0





-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#72414): https://edk2.groups.io/g/devel/message/72414
Mute This Topic: https://groups.io/mt/81068558/1787277
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org]
-=-=-=-=-=-=-=-=-=-=-=-


Re: [edk2-devel] 回复: [PATCH v1 2/2] BaseTools: Make undefined VFR macro an error (MSVC)
Posted by Daniel Schaefer 3 years, 8 months ago
Hi Liming,

as stated in the coverletter, "I only tested GCC5, CLANPDB and VS2015 toolchains."

Clang support is documented here: https://clang.llvm.org/docs/DiagnosticsReference.html#wundef
GCC support is documented here: https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html
MSVC support is documented here: https://docs.microsoft.com/en-us/cpp/error-messages/compiler-warnings/compiler-warning-level-4-c4668?view=msvc-160

I'm sorry, I'm unable to find documentation for, or even the EBC compiler itself.
Can you please help me with this?

Thanks,
Daniel

On 3/4/21 10:12 AM, gaoliming wrote:
> Do you check whether EBC compiler supports this warning?
> 
> And, do you evaluate CLANG compiler support for this warning?
> 
> Thanks
> Liming
>> -----邮件原件-----
>> 发件人: Daniel Schaefer <daniel.schaefer@hpe.com>
>> 发送时间: 2021年3月2日 16:22
>> 收件人: devel@edk2.groups.io
>> 抄送: Bob Feng <bob.c.feng@intel.com>; Liming Gao
>> <gaoliming@byosoft.com.cn>; Yuwei Chen <yuwei.chen@intel.com>; Derek
>> Lin <derek.lin2@hpe.com>
>> 主题: [PATCH v1 2/2] BaseTools: Make undefined VFR macro an error (MSVC)
>>
>> VFR successfully compiles if we forget to include a header that defines
>> a macro. In that case the HII option was hidden when it shouldn't be
>> just because the macro was used but not defined.
>>
>> The behaviour is totally intended by the C/PP standard. When a macro is
>> undefined it evaluates to 0.
>> GCC, MSVC and Clang have warnings to catch this type of mistake. With
>> this commit we enable this warning and make it a compiler error.
>>
>> Cc: Bob Feng <bob.c.feng@intel.com>
>> Cc: Liming Gao <gaoliming@byosoft.com.cn>
>> Cc: Yuwei Chen <yuwei.chen@intel.com>
>> Cc: Derek Lin <derek.lin2@hpe.com>
>> ---
>>   BaseTools/Conf/tools_def.template | 46 ++++++++++----------
>>   1 file changed, 23 insertions(+), 23 deletions(-)
>>
>> diff --git a/BaseTools/Conf/tools_def.template
>> b/BaseTools/Conf/tools_def.template
>> index 728c1d3119e4..56c7bd13f157 100755
>> --- a/BaseTools/Conf/tools_def.template
>> +++ b/BaseTools/Conf/tools_def.template
>> @@ -422,7 +422,7 @@ DEFINE DTC_BIN                 =
>> ENV(DTC_PREFIX)dtc
>>   *_VS2008_*_SLINK_FLAGS            = /NOLOGO /LTCG
>>
>>   *_VS2008_*_APP_FLAGS              = /nologo /E /TC
>>
>>   *_VS2008_*_PP_FLAGS               = /nologo /E /TC /FIAutoGen.h
>>
>> -*_VS2008_*_VFRPP_FLAGS            = /nologo /E /TC /DVFRCOMPILE
>> /FI$(MODULE_NAME)StrDefs.h
>>
>> +*_VS2008_*_VFRPP_FLAGS            = /nologo /E /TC /DVFRCOMPILE
>> /FI$(MODULE_NAME)StrDefs.h /we4668
>>
>>   *_VS2008_*_DEPS_FLAGS            = DEF(MSFT_DEPS_FLAGS)
>>
>>   *_VS2008_*_ASM16_PATH             = DEF(VS2008_BIN)\ml.exe
>>
>>
>>
>> @@ -518,7 +518,7 @@ NOOPT_VS2008_X64_DLINK_FLAGS  = /NOLOGO
>> /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT
>>   *_VS2008_EBC_MAKE_FLAGS          = /nologo
>>
>>   *_VS2008_EBC_PP_FLAGS            = /nologo /E /TC /FIAutoGen.h
>>
>>   *_VS2008_EBC_CC_FLAGS            = /nologo /c /WX /W3
>> /FIAutoGen.h /D$(MODULE_ENTRY_POINT)=$(ARCH_ENTRY_POINT)
>>
>> -*_VS2008_EBC_VFRPP_FLAGS         = /nologo /E /TC /DVFRCOMPILE
>> /FI$(MODULE_NAME)StrDefs.h
>>
>> +*_VS2008_EBC_VFRPP_FLAGS         = /nologo /E /TC /DVFRCOMPILE
>> /FI$(MODULE_NAME)StrDefs.h /we4668
>>
>>   *_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
>>
>>
>>
>> @@ -538,7 +538,7 @@ NOOPT_VS2008_X64_DLINK_FLAGS  = /NOLOGO
>> /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT
>>   *_VS2008x86_*_SLINK_FLAGS     = /NOLOGO /LTCG
>>
>>   *_VS2008x86_*_APP_FLAGS       = /nologo /E /TC
>>
>>   *_VS2008x86_*_PP_FLAGS        = /nologo /E /TC /FIAutoGen.h
>>
>> -*_VS2008x86_*_VFRPP_FLAGS     = /nologo /E /TC /DVFRCOMPILE
>> /FI$(MODULE_NAME)StrDefs.h
>>
>> +*_VS2008x86_*_VFRPP_FLAGS     = /nologo /E /TC /DVFRCOMPILE
>> /FI$(MODULE_NAME)StrDefs.h /we4668
>>
>>   *_VS2008x86_*_DEPS_FLAGS      = DEF(MSFT_DEPS_FLAGS)
>>
>>   *_VS2008x86_*_ASM16_PATH      = DEF(VS2008x86_BIN)\ml.exe
>>
>>
>>
>> @@ -633,7 +633,7 @@ NOOPT_VS2008x86_X64_DLINK_FLAGS    =
>> /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF
>>   *_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_VFRPP_FLAGS         = /nologo /E /TC
>> /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h /we4668
>>
>>   *_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
>>
>>
>>
>> @@ -656,7 +656,7 @@ NOOPT_VS2008x86_X64_DLINK_FLAGS    =
>> /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF
>>   *_VS2010_*_SLINK_FLAGS            = /NOLOGO /LTCG
>>
>>   *_VS2010_*_APP_FLAGS              = /nologo /E /TC
>>
>>   *_VS2010_*_PP_FLAGS               = /nologo /E /TC /FIAutoGen.h
>>
>> -*_VS2010_*_VFRPP_FLAGS            = /nologo /E /TC /DVFRCOMPILE
>> /FI$(MODULE_NAME)StrDefs.h
>>
>> +*_VS2010_*_VFRPP_FLAGS            = /nologo /E /TC /DVFRCOMPILE
>> /FI$(MODULE_NAME)StrDefs.h /we4668
>>
>>   *_VS2010_*_DEPS_FLAGS      = DEF(MSFT_DEPS_FLAGS)
>>
>>   *_VS2010_*_ASM16_PATH             = DEF(VS2010_BIN)\ml.exe
>>
>>
>>
>> @@ -752,7 +752,7 @@ NOOPT_VS2010_X64_DLINK_FLAGS  = /NOLOGO
>> /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT
>>   *_VS2010_EBC_MAKE_FLAGS          = /nologo
>>
>>   *_VS2010_EBC_PP_FLAGS            = /nologo /E /TC /FIAutoGen.h
>>
>>   *_VS2010_EBC_CC_FLAGS            = /nologo /c /WX /W3
>> /FIAutoGen.h /D$(MODULE_ENTRY_POINT)=$(ARCH_ENTRY_POINT)
>>
>> -*_VS2010_EBC_VFRPP_FLAGS         = /nologo /E /TC /DVFRCOMPILE
>> /FI$(MODULE_NAME)StrDefs.h
>>
>> +*_VS2010_EBC_VFRPP_FLAGS         = /nologo /E /TC /DVFRCOMPILE
>> /FI$(MODULE_NAME)StrDefs.h /we4668
>>
>>   *_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
>>
>>
>>
>> @@ -772,7 +772,7 @@ NOOPT_VS2010_X64_DLINK_FLAGS  = /NOLOGO
>> /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT
>>   *_VS2010x86_*_SLINK_FLAGS     = /NOLOGO /LTCG
>>
>>   *_VS2010x86_*_APP_FLAGS       = /nologo /E /TC
>>
>>   *_VS2010x86_*_PP_FLAGS        = /nologo /E /TC /FIAutoGen.h
>>
>> -*_VS2010x86_*_VFRPP_FLAGS     = /nologo /E /TC /DVFRCOMPILE
>> /FI$(MODULE_NAME)StrDefs.h
>>
>> +*_VS2010x86_*_VFRPP_FLAGS     = /nologo /E /TC /DVFRCOMPILE
>> /FI$(MODULE_NAME)StrDefs.h /we4668
>>
>>   *_VS2010x86_*_DEPS_FLAGS      = DEF(MSFT_DEPS_FLAGS)
>>
>>   *_VS2010x86_*_ASM16_PATH      = DEF(VS2010x86_BIN)\ml.exe
>>
>>
>>
>> @@ -868,7 +868,7 @@ NOOPT_VS2010x86_X64_DLINK_FLAGS    =
>> /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF
>>   *_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_VFRPP_FLAGS         = /nologo /E /TC
>> /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h /we4668
>>
>>   *_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
>>
>>
>>
>> @@ -890,7 +890,7 @@ NOOPT_VS2010x86_X64_DLINK_FLAGS    =
>> /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF
>>   *_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_*_VFRPP_FLAGS            = /nologo /E /TC /DVFRCOMPILE
>> /FI$(MODULE_NAME)StrDefs.h /we4668
>>
>>   *_VS2012_*_DEPS_FLAGS      = DEF(MSFT_DEPS_FLAGS)
>>
>>   *_VS2012_*_ASM16_PATH             = DEF(VS2012_BIN)\ml.exe
>>
>>
>>
>> @@ -986,7 +986,7 @@ NOOPT_VS2012_X64_DLINK_FLAGS  = /NOLOGO
>> /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT
>>   *_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_VFRPP_FLAGS         = /nologo /E /TC /DVFRCOMPILE
>> /FI$(MODULE_NAME)StrDefs.h /we4668
>>
>>   *_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
>>
>>
>>
>> @@ -1006,7 +1006,7 @@ NOOPT_VS2012_X64_DLINK_FLAGS  = /NOLOGO
>> /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT
>>   *_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_*_VFRPP_FLAGS     = /nologo /E /TC /DVFRCOMPILE
>> /FI$(MODULE_NAME)StrDefs.h /we4668
>>
>>   *_VS2012x86_*_DEPS_FLAGS      = DEF(MSFT_DEPS_FLAGS)
>>
>>   *_VS2012x86_*_ASM16_PATH      = DEF(VS2012x86_BIN)\ml.exe
>>
>>
>>
>> @@ -1102,7 +1102,7 @@ NOOPT_VS2012x86_X64_DLINK_FLAGS    =
>> /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF
>>   *_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_VFRPP_FLAGS         = /nologo /E /TC
>> /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h /we4668
>>
>>   *_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
>>
>>
>>
>> @@ -1124,7 +1124,7 @@ NOOPT_VS2012x86_X64_DLINK_FLAGS    =
>> /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF
>>   *_VS2013_*_SLINK_FLAGS            = /NOLOGO /LTCG
>>
>>   *_VS2013_*_APP_FLAGS              = /nologo /E /TC
>>
>>   *_VS2013_*_PP_FLAGS               = /nologo /E /TC /FIAutoGen.h
>>
>> -*_VS2013_*_VFRPP_FLAGS            = /nologo /E /TC /DVFRCOMPILE
>> /FI$(MODULE_NAME)StrDefs.h
>>
>> +*_VS2013_*_VFRPP_FLAGS            = /nologo /E /TC /DVFRCOMPILE
>> /FI$(MODULE_NAME)StrDefs.h /we4668
>>
>>   *_VS2013_*_DEPS_FLAGS      = DEF(MSFT_DEPS_FLAGS)
>>
>>   *_VS2013_*_ASM16_PATH             = DEF(VS2013_BIN)\ml.exe
>>
>>
>>
>> @@ -1220,7 +1220,7 @@ NOOPT_VS2013_X64_DLINK_FLAGS  = /NOLOGO
>> /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT
>>   *_VS2013_EBC_MAKE_FLAGS          = /nologo
>>
>>   *_VS2013_EBC_PP_FLAGS            = /nologo /E /TC /FIAutoGen.h
>>
>>   *_VS2013_EBC_CC_FLAGS            = /nologo /c /WX /W3
>> /FIAutoGen.h /D$(MODULE_ENTRY_POINT)=$(ARCH_ENTRY_POINT)
>>
>> -*_VS2013_EBC_VFRPP_FLAGS         = /nologo /E /TC /DVFRCOMPILE
>> /FI$(MODULE_NAME)StrDefs.h
>>
>> +*_VS2013_EBC_VFRPP_FLAGS         = /nologo /E /TC /DVFRCOMPILE
>> /FI$(MODULE_NAME)StrDefs.h /we4668
>>
>>   *_VS2013_EBC_SLINK_FLAGS         = /lib /NOLOGO /MACHINE:EBC
>>
>>   *_VS2013_EBC_DLINK_FLAGS         = "C:\Program
>> Files\Intel\EBC\Lib\EbcLib.lib" /NOLOGO /NODEFAULTLIB /MACHINE:EBC
>> /OPT:REF /ENTRY:$(IMAGE_ENTRY_POINT)
>> /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /MAP /ALIGN:32 /DRIVER
>>
>>
>>
>> @@ -1240,7 +1240,7 @@ NOOPT_VS2013_X64_DLINK_FLAGS  = /NOLOGO
>> /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT
>>   *_VS2013x86_*_SLINK_FLAGS     = /NOLOGO /LTCG
>>
>>   *_VS2013x86_*_APP_FLAGS       = /nologo /E /TC
>>
>>   *_VS2013x86_*_PP_FLAGS        = /nologo /E /TC /FIAutoGen.h
>>
>> -*_VS2013x86_*_VFRPP_FLAGS     = /nologo /E /TC /DVFRCOMPILE
>> /FI$(MODULE_NAME)StrDefs.h
>>
>> +*_VS2013x86_*_VFRPP_FLAGS     = /nologo /E /TC /DVFRCOMPILE
>> /FI$(MODULE_NAME)StrDefs.h /we4668
>>
>>   *_VS2013x86_*_DEPS_FLAGS      = DEF(MSFT_DEPS_FLAGS)
>>
>>   *_VS2013x86_*_ASM16_PATH      = DEF(VS2013x86_BIN)\ml.exe
>>
>>
>>
>> @@ -1336,7 +1336,7 @@ NOOPT_VS2013x86_X64_DLINK_FLAGS    =
>> /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF
>>   *_VS2013x86_EBC_MAKE_FLAGS          = /nologo
>>
>>   *_VS2013x86_EBC_PP_FLAGS            = /nologo /E /TC /FIAutoGen.h
>>
>>   *_VS2013x86_EBC_CC_FLAGS            = /nologo /c /WX /W3
>> /FIAutoGen.h /D$(MODULE_ENTRY_POINT)=$(ARCH_ENTRY_POINT)
>>
>> -*_VS2013x86_EBC_VFRPP_FLAGS         = /nologo /E /TC
>> /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h
>>
>> +*_VS2013x86_EBC_VFRPP_FLAGS         = /nologo /E /TC
>> /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h /we4668
>>
>>   *_VS2013x86_EBC_SLINK_FLAGS         = /lib /NOLOGO
>> /MACHINE:EBC
>>
>>   *_VS2013x86_EBC_DLINK_FLAGS         = "C:\Program Files
>> (x86)\Intel\EBC\Lib\EbcLib.lib" /NOLOGO /NODEFAULTLIB /MACHINE:EBC
>> /OPT:REF /ENTRY:$(IMAGE_ENTRY_POINT)
>> /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /MAP /ALIGN:32 /DRIVER
>>
>>
>>
>> @@ -1358,7 +1358,7 @@ NOOPT_VS2013x86_X64_DLINK_FLAGS    =
>> /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF
>>   *_VS2015_*_SLINK_FLAGS            = /NOLOGO /LTCG
>>
>>   *_VS2015_*_APP_FLAGS              = /nologo /E /TC
>>
>>   *_VS2015_*_PP_FLAGS               = /nologo /E /TC /FIAutoGen.h
>>
>> -*_VS2015_*_VFRPP_FLAGS            = /nologo /E /TC /DVFRCOMPILE
>> /FI$(MODULE_NAME)StrDefs.h
>>
>> +*_VS2015_*_VFRPP_FLAGS            = /nologo /E /TC /DVFRCOMPILE
>> /FI$(MODULE_NAME)StrDefs.h /we4668
>>
>>   *_VS2015_*_DLINK2_FLAGS           =
>>
>>   *_VS2015_*_DEPS_FLAGS      = DEF(MSFT_DEPS_FLAGS)
>>
>>   *_VS2015_*_ASM16_PATH             = DEF(VS2015_BIN)\ml.exe
>>
>> @@ -1455,7 +1455,7 @@ NOOPT_VS2015_X64_DLINK_FLAGS  = /NOLOGO
>> /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT
>>   *_VS2015_EBC_MAKE_FLAGS          = /nologo
>>
>>   *_VS2015_EBC_PP_FLAGS            = /nologo /E /TC /FIAutoGen.h
>>
>>   *_VS2015_EBC_CC_FLAGS            = /nologo /c /WX /W3
>> /FIAutoGen.h /D$(MODULE_ENTRY_POINT)=$(ARCH_ENTRY_POINT)
>>
>> -*_VS2015_EBC_VFRPP_FLAGS         = /nologo /E /TC /DVFRCOMPILE
>> /FI$(MODULE_NAME)StrDefs.h
>>
>> +*_VS2015_EBC_VFRPP_FLAGS         = /nologo /E /TC /DVFRCOMPILE
>> /FI$(MODULE_NAME)StrDefs.h /we4668
>>
>>   *_VS2015_EBC_SLINK_FLAGS         = /lib /NOLOGO /MACHINE:EBC
>>
>>   *_VS2015_EBC_DLINK_FLAGS         = "C:\Program
>> Files\Intel\EBC\Lib\EbcLib.lib" /NOLOGO /NODEFAULTLIB /MACHINE:EBC
>> /OPT:REF /ENTRY:$(IMAGE_ENTRY_POINT)
>> /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /MAP /ALIGN:32 /DRIVER
>>
>>
>>
>> @@ -1475,7 +1475,7 @@ NOOPT_VS2015_X64_DLINK_FLAGS  = /NOLOGO
>> /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT
>>   *_VS2015x86_*_SLINK_FLAGS     = /NOLOGO /LTCG
>>
>>   *_VS2015x86_*_APP_FLAGS       = /nologo /E /TC
>>
>>   *_VS2015x86_*_PP_FLAGS        = /nologo /E /TC /FIAutoGen.h
>>
>> -*_VS2015x86_*_VFRPP_FLAGS     = /nologo /E /TC /DVFRCOMPILE
>> /FI$(MODULE_NAME)StrDefs.h
>>
>> +*_VS2015x86_*_VFRPP_FLAGS     = /nologo /E /TC /DVFRCOMPILE
>> /FI$(MODULE_NAME)StrDefs.h /we4668
>>
>>   *_VS2015x86_*_DLINK2_FLAGS    =
>>
>>   *_VS2015x86_*_DEPS_FLAGS      = DEF(MSFT_DEPS_FLAGS)
>>
>>   *_VS2015x86_*_ASM16_PATH      = DEF(VS2015x86_BIN)\ml.exe
>>
>> @@ -1593,7 +1593,7 @@ NOOPT_VS2015x86_X64_DLINK_FLAGS    =
>> /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF
>>   *_VS2017_*_SLINK_FLAGS     = /NOLOGO /LTCG
>>
>>   *_VS2017_*_APP_FLAGS       = /nologo /E /TC
>>
>>   *_VS2017_*_PP_FLAGS        = /nologo /E /TC /FIAutoGen.h
>>
>> -*_VS2017_*_VFRPP_FLAGS     = /nologo /E /TC /DVFRCOMPILE
>> /FI$(MODULE_NAME)StrDefs.h
>>
>> +*_VS2017_*_VFRPP_FLAGS     = /nologo /E /TC /DVFRCOMPILE
>> /FI$(MODULE_NAME)StrDefs.h /we4668
>>
>>   *_VS2017_*_DLINK2_FLAGS    = /WHOLEARCHIVE
>>
>>   *_VS2017_*_ASM16_PATH      = DEF(VS2017_BIN_IA32)\ml.exe
>>
>>   *_VS2017_*_DEPS_FLAGS      = DEF(MSFT_DEPS_FLAGS)
>>
>> @@ -1736,7 +1736,7 @@ NOOPT_VS2017_AARCH64_DLINK_FLAGS   =
>> /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF
>>   *_VS2017_EBC_MAKE_FLAGS          = /nologo
>>
>>   *_VS2017_EBC_PP_FLAGS            = /nologo /E /TC /FIAutoGen.h
>>
>>   *_VS2017_EBC_CC_FLAGS            = /nologo /c /WX /W3
>> /FIAutoGen.h /D$(MODULE_ENTRY_POINT)=$(ARCH_ENTRY_POINT)
>>
>> -*_VS2017_EBC_VFRPP_FLAGS         = /nologo /E /TC /DVFRCOMPILE
>> /FI$(MODULE_NAME)StrDefs.h
>>
>> +*_VS2017_EBC_VFRPP_FLAGS         = /nologo /E /TC /DVFRCOMPILE
>> /FI$(MODULE_NAME)StrDefs.h /we4668
>>
>>   *_VS2017_EBC_SLINK_FLAGS         = /lib /NOLOGO /MACHINE:EBC
>>
>>   *_VS2017_EBC_DLINK_FLAGS         = "C:\Program Files
>> (x86)\Intel\EBC\Lib\EbcLib.lib" /NOLOGO /NODEFAULTLIB /MACHINE:EBC
>> /OPT:REF /ENTRY:$(IMAGE_ENTRY_POINT)
>> /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /MAP /ALIGN:32 /DRIVER
>>
>>
>>
>> @@ -1756,7 +1756,7 @@ NOOPT_VS2017_AARCH64_DLINK_FLAGS   =
>> /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF
>>   *_VS2019_*_SLINK_FLAGS     = /NOLOGO /LTCG
>>
>>   *_VS2019_*_APP_FLAGS       = /nologo /E /TC
>>
>>   *_VS2019_*_PP_FLAGS        = /nologo /E /TC /FIAutoGen.h
>>
>> -*_VS2019_*_VFRPP_FLAGS     = /nologo /E /TC /DVFRCOMPILE
>> /FI$(MODULE_NAME)StrDefs.h
>>
>> +*_VS2019_*_VFRPP_FLAGS     = /nologo /E /TC /DVFRCOMPILE
>> /FI$(MODULE_NAME)StrDefs.h /we4668
>>
>>   *_VS2019_*_DLINK2_FLAGS    = /WHOLEARCHIVE
>>
>>   *_VS2019_*_ASM16_PATH      = DEF(VS2019_BIN_IA32)\ml.exe
>>
>>   *_VS2019_*_DEPS_FLAGS      = DEF(MSFT_DEPS_FLAGS)
>>
>> @@ -1899,7 +1899,7 @@ NOOPT_VS2019_AARCH64_DLINK_FLAGS   =
>> /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF
>>   *_VS2019_EBC_MAKE_FLAGS          = /nologo
>>
>>   *_VS2019_EBC_PP_FLAGS            = /nologo /E /TC /FIAutoGen.h
>>
>>   *_VS2019_EBC_CC_FLAGS            = /nologo /c /WX /W3
>> /FIAutoGen.h /D$(MODULE_ENTRY_POINT)=$(ARCH_ENTRY_POINT)
>>
>> -*_VS2019_EBC_VFRPP_FLAGS         = /nologo /E /TC /DVFRCOMPILE
>> /FI$(MODULE_NAME)StrDefs.h
>>
>> +*_VS2019_EBC_VFRPP_FLAGS         = /nologo /E /TC /DVFRCOMPILE
>> /FI$(MODULE_NAME)StrDefs.h /we4668
>>
>>   *_VS2019_EBC_SLINK_FLAGS         = /lib /NOLOGO /MACHINE:EBC
>>
>>   *_VS2019_EBC_DLINK_FLAGS         = "C:\Program Files
>> (x86)\Intel\EBC\Lib\EbcLib.lib" /NOLOGO /NODEFAULTLIB /MACHINE:EBC
>> /OPT:REF /ENTRY:$(IMAGE_ENTRY_POINT)
>> /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /MAP /ALIGN:32 /DRIVER
>>
>>
>>
>> --
>> 2.30.0
> 
> 
> 


-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#72416): https://edk2.groups.io/g/devel/message/72416
Mute This Topic: https://groups.io/mt/81068558/1787277
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org]
-=-=-=-=-=-=-=-=-=-=-=-


Re: [edk2-devel] 回复: [PATCH v1 2/2] BaseTools: Make undefined VFR macro an error (MSVC)
Posted by Daniel Schaefer 3 years, 7 months ago
Ok, I'll send a new series without EBC. Can't find anything about it and we don't use it.
________________________________
From: Schaefer, Daniel <daniel.schaefer@hpe.com>
Sent: Thursday, March 4, 2021 10:46
To: gaoliming <gaoliming@byosoft.com.cn>; devel@edk2.groups.io <devel@edk2.groups.io>
Cc: 'Bob Feng' <bob.c.feng@intel.com>; 'Yuwei Chen' <yuwei.chen@intel.com>; Lin, Derek (HPS SW) <derek.lin2@hpe.com>
Subject: Re: 回复: [PATCH v1 2/2] BaseTools: Make undefined VFR macro an error (MSVC)

Hi Liming,

as stated in the coverletter, "I only tested GCC5, CLANPDB and VS2015 toolchains."

Clang support is documented here: https://clang.llvm.org/docs/DiagnosticsReference.html#wundef
GCC support is documented here: https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html
MSVC support is documented here: https://docs.microsoft.com/en-us/cpp/error-messages/compiler-warnings/compiler-warning-level-4-c4668?view=msvc-160

I'm sorry, I'm unable to find documentation for, or even the EBC compiler itself.
Can you please help me with this?

Thanks,
Daniel

On 3/4/21 10:12 AM, gaoliming wrote:
> Do you check whether EBC compiler supports this warning?
>
> And, do you evaluate CLANG compiler support for this warning?
>
> Thanks
> Liming
>> -----邮件原件-----
>> 发件人: Daniel Schaefer <daniel.schaefer@hpe.com>
>> 发送时间: 2021年3月2日 16:22
>> 收件人: devel@edk2.groups.io
>> 抄送: Bob Feng <bob.c.feng@intel.com>; Liming Gao
>> <gaoliming@byosoft.com.cn>; Yuwei Chen <yuwei.chen@intel.com>; Derek
>> Lin <derek.lin2@hpe.com>
>> 主题: [PATCH v1 2/2] BaseTools: Make undefined VFR macro an error (MSVC)
>>
>> VFR successfully compiles if we forget to include a header that defines
>> a macro. In that case the HII option was hidden when it shouldn't be
>> just because the macro was used but not defined.
>>
>> The behaviour is totally intended by the C/PP standard. When a macro is
>> undefined it evaluates to 0.
>> GCC, MSVC and Clang have warnings to catch this type of mistake. With
>> this commit we enable this warning and make it a compiler error.
>>
>> Cc: Bob Feng <bob.c.feng@intel.com>
>> Cc: Liming Gao <gaoliming@byosoft.com.cn>
>> Cc: Yuwei Chen <yuwei.chen@intel.com>
>> Cc: Derek Lin <derek.lin2@hpe.com>
>> ---
>>   BaseTools/Conf/tools_def.template | 46 ++++++++++----------
>>   1 file changed, 23 insertions(+), 23 deletions(-)
>>
>> diff --git a/BaseTools/Conf/tools_def.template
>> b/BaseTools/Conf/tools_def.template
>> index 728c1d3119e4..56c7bd13f157 100755
>> --- a/BaseTools/Conf/tools_def.template
>> +++ b/BaseTools/Conf/tools_def.template
>> @@ -422,7 +422,7 @@ DEFINE DTC_BIN                 =
>> ENV(DTC_PREFIX)dtc
>>   *_VS2008_*_SLINK_FLAGS            = /NOLOGO /LTCG
>>
>>   *_VS2008_*_APP_FLAGS              = /nologo /E /TC
>>
>>   *_VS2008_*_PP_FLAGS               = /nologo /E /TC /FIAutoGen.h
>>
>> -*_VS2008_*_VFRPP_FLAGS            = /nologo /E /TC /DVFRCOMPILE
>> /FI$(MODULE_NAME)StrDefs.h
>>
>> +*_VS2008_*_VFRPP_FLAGS            = /nologo /E /TC /DVFRCOMPILE
>> /FI$(MODULE_NAME)StrDefs.h /we4668
>>
>>   *_VS2008_*_DEPS_FLAGS            = DEF(MSFT_DEPS_FLAGS)
>>
>>   *_VS2008_*_ASM16_PATH             = DEF(VS2008_BIN)\ml.exe
>>
>>
>>
>> @@ -518,7 +518,7 @@ NOOPT_VS2008_X64_DLINK_FLAGS  = /NOLOGO
>> /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT
>>   *_VS2008_EBC_MAKE_FLAGS          = /nologo
>>
>>   *_VS2008_EBC_PP_FLAGS            = /nologo /E /TC /FIAutoGen.h
>>
>>   *_VS2008_EBC_CC_FLAGS            = /nologo /c /WX /W3
>> /FIAutoGen.h /D$(MODULE_ENTRY_POINT)=$(ARCH_ENTRY_POINT)
>>
>> -*_VS2008_EBC_VFRPP_FLAGS         = /nologo /E /TC /DVFRCOMPILE
>> /FI$(MODULE_NAME)StrDefs.h
>>
>> +*_VS2008_EBC_VFRPP_FLAGS         = /nologo /E /TC /DVFRCOMPILE
>> /FI$(MODULE_NAME)StrDefs.h /we4668
>>
>>   *_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
>>
>>
>>
>> @@ -538,7 +538,7 @@ NOOPT_VS2008_X64_DLINK_FLAGS  = /NOLOGO
>> /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT
>>   *_VS2008x86_*_SLINK_FLAGS     = /NOLOGO /LTCG
>>
>>   *_VS2008x86_*_APP_FLAGS       = /nologo /E /TC
>>
>>   *_VS2008x86_*_PP_FLAGS        = /nologo /E /TC /FIAutoGen.h
>>
>> -*_VS2008x86_*_VFRPP_FLAGS     = /nologo /E /TC /DVFRCOMPILE
>> /FI$(MODULE_NAME)StrDefs.h
>>
>> +*_VS2008x86_*_VFRPP_FLAGS     = /nologo /E /TC /DVFRCOMPILE
>> /FI$(MODULE_NAME)StrDefs.h /we4668
>>
>>   *_VS2008x86_*_DEPS_FLAGS      = DEF(MSFT_DEPS_FLAGS)
>>
>>   *_VS2008x86_*_ASM16_PATH      = DEF(VS2008x86_BIN)\ml.exe
>>
>>
>>
>> @@ -633,7 +633,7 @@ NOOPT_VS2008x86_X64_DLINK_FLAGS    =
>> /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF
>>   *_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_VFRPP_FLAGS         = /nologo /E /TC
>> /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h /we4668
>>
>>   *_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
>>
>>
>>
>> @@ -656,7 +656,7 @@ NOOPT_VS2008x86_X64_DLINK_FLAGS    =
>> /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF
>>   *_VS2010_*_SLINK_FLAGS            = /NOLOGO /LTCG
>>
>>   *_VS2010_*_APP_FLAGS              = /nologo /E /TC
>>
>>   *_VS2010_*_PP_FLAGS               = /nologo /E /TC /FIAutoGen.h
>>
>> -*_VS2010_*_VFRPP_FLAGS            = /nologo /E /TC /DVFRCOMPILE
>> /FI$(MODULE_NAME)StrDefs.h
>>
>> +*_VS2010_*_VFRPP_FLAGS            = /nologo /E /TC /DVFRCOMPILE
>> /FI$(MODULE_NAME)StrDefs.h /we4668
>>
>>   *_VS2010_*_DEPS_FLAGS      = DEF(MSFT_DEPS_FLAGS)
>>
>>   *_VS2010_*_ASM16_PATH             = DEF(VS2010_BIN)\ml.exe
>>
>>
>>
>> @@ -752,7 +752,7 @@ NOOPT_VS2010_X64_DLINK_FLAGS  = /NOLOGO
>> /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT
>>   *_VS2010_EBC_MAKE_FLAGS          = /nologo
>>
>>   *_VS2010_EBC_PP_FLAGS            = /nologo /E /TC /FIAutoGen.h
>>
>>   *_VS2010_EBC_CC_FLAGS            = /nologo /c /WX /W3
>> /FIAutoGen.h /D$(MODULE_ENTRY_POINT)=$(ARCH_ENTRY_POINT)
>>
>> -*_VS2010_EBC_VFRPP_FLAGS         = /nologo /E /TC /DVFRCOMPILE
>> /FI$(MODULE_NAME)StrDefs.h
>>
>> +*_VS2010_EBC_VFRPP_FLAGS         = /nologo /E /TC /DVFRCOMPILE
>> /FI$(MODULE_NAME)StrDefs.h /we4668
>>
>>   *_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
>>
>>
>>
>> @@ -772,7 +772,7 @@ NOOPT_VS2010_X64_DLINK_FLAGS  = /NOLOGO
>> /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT
>>   *_VS2010x86_*_SLINK_FLAGS     = /NOLOGO /LTCG
>>
>>   *_VS2010x86_*_APP_FLAGS       = /nologo /E /TC
>>
>>   *_VS2010x86_*_PP_FLAGS        = /nologo /E /TC /FIAutoGen.h
>>
>> -*_VS2010x86_*_VFRPP_FLAGS     = /nologo /E /TC /DVFRCOMPILE
>> /FI$(MODULE_NAME)StrDefs.h
>>
>> +*_VS2010x86_*_VFRPP_FLAGS     = /nologo /E /TC /DVFRCOMPILE
>> /FI$(MODULE_NAME)StrDefs.h /we4668
>>
>>   *_VS2010x86_*_DEPS_FLAGS      = DEF(MSFT_DEPS_FLAGS)
>>
>>   *_VS2010x86_*_ASM16_PATH      = DEF(VS2010x86_BIN)\ml.exe
>>
>>
>>
>> @@ -868,7 +868,7 @@ NOOPT_VS2010x86_X64_DLINK_FLAGS    =
>> /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF
>>   *_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_VFRPP_FLAGS         = /nologo /E /TC
>> /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h /we4668
>>
>>   *_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
>>
>>
>>
>> @@ -890,7 +890,7 @@ NOOPT_VS2010x86_X64_DLINK_FLAGS    =
>> /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF
>>   *_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_*_VFRPP_FLAGS            = /nologo /E /TC /DVFRCOMPILE
>> /FI$(MODULE_NAME)StrDefs.h /we4668
>>
>>   *_VS2012_*_DEPS_FLAGS      = DEF(MSFT_DEPS_FLAGS)
>>
>>   *_VS2012_*_ASM16_PATH             = DEF(VS2012_BIN)\ml.exe
>>
>>
>>
>> @@ -986,7 +986,7 @@ NOOPT_VS2012_X64_DLINK_FLAGS  = /NOLOGO
>> /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT
>>   *_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_VFRPP_FLAGS         = /nologo /E /TC /DVFRCOMPILE
>> /FI$(MODULE_NAME)StrDefs.h /we4668
>>
>>   *_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
>>
>>
>>
>> @@ -1006,7 +1006,7 @@ NOOPT_VS2012_X64_DLINK_FLAGS  = /NOLOGO
>> /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT
>>   *_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_*_VFRPP_FLAGS     = /nologo /E /TC /DVFRCOMPILE
>> /FI$(MODULE_NAME)StrDefs.h /we4668
>>
>>   *_VS2012x86_*_DEPS_FLAGS      = DEF(MSFT_DEPS_FLAGS)
>>
>>   *_VS2012x86_*_ASM16_PATH      = DEF(VS2012x86_BIN)\ml.exe
>>
>>
>>
>> @@ -1102,7 +1102,7 @@ NOOPT_VS2012x86_X64_DLINK_FLAGS    =
>> /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF
>>   *_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_VFRPP_FLAGS         = /nologo /E /TC
>> /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h /we4668
>>
>>   *_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
>>
>>
>>
>> @@ -1124,7 +1124,7 @@ NOOPT_VS2012x86_X64_DLINK_FLAGS    =
>> /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF
>>   *_VS2013_*_SLINK_FLAGS            = /NOLOGO /LTCG
>>
>>   *_VS2013_*_APP_FLAGS              = /nologo /E /TC
>>
>>   *_VS2013_*_PP_FLAGS               = /nologo /E /TC /FIAutoGen.h
>>
>> -*_VS2013_*_VFRPP_FLAGS            = /nologo /E /TC /DVFRCOMPILE
>> /FI$(MODULE_NAME)StrDefs.h
>>
>> +*_VS2013_*_VFRPP_FLAGS            = /nologo /E /TC /DVFRCOMPILE
>> /FI$(MODULE_NAME)StrDefs.h /we4668
>>
>>   *_VS2013_*_DEPS_FLAGS      = DEF(MSFT_DEPS_FLAGS)
>>
>>   *_VS2013_*_ASM16_PATH             = DEF(VS2013_BIN)\ml.exe
>>
>>
>>
>> @@ -1220,7 +1220,7 @@ NOOPT_VS2013_X64_DLINK_FLAGS  = /NOLOGO
>> /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT
>>   *_VS2013_EBC_MAKE_FLAGS          = /nologo
>>
>>   *_VS2013_EBC_PP_FLAGS            = /nologo /E /TC /FIAutoGen.h
>>
>>   *_VS2013_EBC_CC_FLAGS            = /nologo /c /WX /W3
>> /FIAutoGen.h /D$(MODULE_ENTRY_POINT)=$(ARCH_ENTRY_POINT)
>>
>> -*_VS2013_EBC_VFRPP_FLAGS         = /nologo /E /TC /DVFRCOMPILE
>> /FI$(MODULE_NAME)StrDefs.h
>>
>> +*_VS2013_EBC_VFRPP_FLAGS         = /nologo /E /TC /DVFRCOMPILE
>> /FI$(MODULE_NAME)StrDefs.h /we4668
>>
>>   *_VS2013_EBC_SLINK_FLAGS         = /lib /NOLOGO /MACHINE:EBC
>>
>>   *_VS2013_EBC_DLINK_FLAGS         = "C:\Program
>> Files\Intel\EBC\Lib\EbcLib.lib" /NOLOGO /NODEFAULTLIB /MACHINE:EBC
>> /OPT:REF /ENTRY:$(IMAGE_ENTRY_POINT)
>> /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /MAP /ALIGN:32 /DRIVER
>>
>>
>>
>> @@ -1240,7 +1240,7 @@ NOOPT_VS2013_X64_DLINK_FLAGS  = /NOLOGO
>> /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT
>>   *_VS2013x86_*_SLINK_FLAGS     = /NOLOGO /LTCG
>>
>>   *_VS2013x86_*_APP_FLAGS       = /nologo /E /TC
>>
>>   *_VS2013x86_*_PP_FLAGS        = /nologo /E /TC /FIAutoGen.h
>>
>> -*_VS2013x86_*_VFRPP_FLAGS     = /nologo /E /TC /DVFRCOMPILE
>> /FI$(MODULE_NAME)StrDefs.h
>>
>> +*_VS2013x86_*_VFRPP_FLAGS     = /nologo /E /TC /DVFRCOMPILE
>> /FI$(MODULE_NAME)StrDefs.h /we4668
>>
>>   *_VS2013x86_*_DEPS_FLAGS      = DEF(MSFT_DEPS_FLAGS)
>>
>>   *_VS2013x86_*_ASM16_PATH      = DEF(VS2013x86_BIN)\ml.exe
>>
>>
>>
>> @@ -1336,7 +1336,7 @@ NOOPT_VS2013x86_X64_DLINK_FLAGS    =
>> /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF
>>   *_VS2013x86_EBC_MAKE_FLAGS          = /nologo
>>
>>   *_VS2013x86_EBC_PP_FLAGS            = /nologo /E /TC /FIAutoGen.h
>>
>>   *_VS2013x86_EBC_CC_FLAGS            = /nologo /c /WX /W3
>> /FIAutoGen.h /D$(MODULE_ENTRY_POINT)=$(ARCH_ENTRY_POINT)
>>
>> -*_VS2013x86_EBC_VFRPP_FLAGS         = /nologo /E /TC
>> /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h
>>
>> +*_VS2013x86_EBC_VFRPP_FLAGS         = /nologo /E /TC
>> /DVFRCOMPILE /FI$(MODULE_NAME)StrDefs.h /we4668
>>
>>   *_VS2013x86_EBC_SLINK_FLAGS         = /lib /NOLOGO
>> /MACHINE:EBC
>>
>>   *_VS2013x86_EBC_DLINK_FLAGS         = "C:\Program Files
>> (x86)\Intel\EBC\Lib\EbcLib.lib" /NOLOGO /NODEFAULTLIB /MACHINE:EBC
>> /OPT:REF /ENTRY:$(IMAGE_ENTRY_POINT)
>> /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /MAP /ALIGN:32 /DRIVER
>>
>>
>>
>> @@ -1358,7 +1358,7 @@ NOOPT_VS2013x86_X64_DLINK_FLAGS    =
>> /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF
>>   *_VS2015_*_SLINK_FLAGS            = /NOLOGO /LTCG
>>
>>   *_VS2015_*_APP_FLAGS              = /nologo /E /TC
>>
>>   *_VS2015_*_PP_FLAGS               = /nologo /E /TC /FIAutoGen.h
>>
>> -*_VS2015_*_VFRPP_FLAGS            = /nologo /E /TC /DVFRCOMPILE
>> /FI$(MODULE_NAME)StrDefs.h
>>
>> +*_VS2015_*_VFRPP_FLAGS            = /nologo /E /TC /DVFRCOMPILE
>> /FI$(MODULE_NAME)StrDefs.h /we4668
>>
>>   *_VS2015_*_DLINK2_FLAGS           =
>>
>>   *_VS2015_*_DEPS_FLAGS      = DEF(MSFT_DEPS_FLAGS)
>>
>>   *_VS2015_*_ASM16_PATH             = DEF(VS2015_BIN)\ml.exe
>>
>> @@ -1455,7 +1455,7 @@ NOOPT_VS2015_X64_DLINK_FLAGS  = /NOLOGO
>> /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT
>>   *_VS2015_EBC_MAKE_FLAGS          = /nologo
>>
>>   *_VS2015_EBC_PP_FLAGS            = /nologo /E /TC /FIAutoGen.h
>>
>>   *_VS2015_EBC_CC_FLAGS            = /nologo /c /WX /W3
>> /FIAutoGen.h /D$(MODULE_ENTRY_POINT)=$(ARCH_ENTRY_POINT)
>>
>> -*_VS2015_EBC_VFRPP_FLAGS         = /nologo /E /TC /DVFRCOMPILE
>> /FI$(MODULE_NAME)StrDefs.h
>>
>> +*_VS2015_EBC_VFRPP_FLAGS         = /nologo /E /TC /DVFRCOMPILE
>> /FI$(MODULE_NAME)StrDefs.h /we4668
>>
>>   *_VS2015_EBC_SLINK_FLAGS         = /lib /NOLOGO /MACHINE:EBC
>>
>>   *_VS2015_EBC_DLINK_FLAGS         = "C:\Program
>> Files\Intel\EBC\Lib\EbcLib.lib" /NOLOGO /NODEFAULTLIB /MACHINE:EBC
>> /OPT:REF /ENTRY:$(IMAGE_ENTRY_POINT)
>> /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /MAP /ALIGN:32 /DRIVER
>>
>>
>>
>> @@ -1475,7 +1475,7 @@ NOOPT_VS2015_X64_DLINK_FLAGS  = /NOLOGO
>> /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT
>>   *_VS2015x86_*_SLINK_FLAGS     = /NOLOGO /LTCG
>>
>>   *_VS2015x86_*_APP_FLAGS       = /nologo /E /TC
>>
>>   *_VS2015x86_*_PP_FLAGS        = /nologo /E /TC /FIAutoGen.h
>>
>> -*_VS2015x86_*_VFRPP_FLAGS     = /nologo /E /TC /DVFRCOMPILE
>> /FI$(MODULE_NAME)StrDefs.h
>>
>> +*_VS2015x86_*_VFRPP_FLAGS     = /nologo /E /TC /DVFRCOMPILE
>> /FI$(MODULE_NAME)StrDefs.h /we4668
>>
>>   *_VS2015x86_*_DLINK2_FLAGS    =
>>
>>   *_VS2015x86_*_DEPS_FLAGS      = DEF(MSFT_DEPS_FLAGS)
>>
>>   *_VS2015x86_*_ASM16_PATH      = DEF(VS2015x86_BIN)\ml.exe
>>
>> @@ -1593,7 +1593,7 @@ NOOPT_VS2015x86_X64_DLINK_FLAGS    =
>> /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF
>>   *_VS2017_*_SLINK_FLAGS     = /NOLOGO /LTCG
>>
>>   *_VS2017_*_APP_FLAGS       = /nologo /E /TC
>>
>>   *_VS2017_*_PP_FLAGS        = /nologo /E /TC /FIAutoGen.h
>>
>> -*_VS2017_*_VFRPP_FLAGS     = /nologo /E /TC /DVFRCOMPILE
>> /FI$(MODULE_NAME)StrDefs.h
>>
>> +*_VS2017_*_VFRPP_FLAGS     = /nologo /E /TC /DVFRCOMPILE
>> /FI$(MODULE_NAME)StrDefs.h /we4668
>>
>>   *_VS2017_*_DLINK2_FLAGS    = /WHOLEARCHIVE
>>
>>   *_VS2017_*_ASM16_PATH      = DEF(VS2017_BIN_IA32)\ml.exe
>>
>>   *_VS2017_*_DEPS_FLAGS      = DEF(MSFT_DEPS_FLAGS)
>>
>> @@ -1736,7 +1736,7 @@ NOOPT_VS2017_AARCH64_DLINK_FLAGS   =
>> /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF
>>   *_VS2017_EBC_MAKE_FLAGS          = /nologo
>>
>>   *_VS2017_EBC_PP_FLAGS            = /nologo /E /TC /FIAutoGen.h
>>
>>   *_VS2017_EBC_CC_FLAGS            = /nologo /c /WX /W3
>> /FIAutoGen.h /D$(MODULE_ENTRY_POINT)=$(ARCH_ENTRY_POINT)
>>
>> -*_VS2017_EBC_VFRPP_FLAGS         = /nologo /E /TC /DVFRCOMPILE
>> /FI$(MODULE_NAME)StrDefs.h
>>
>> +*_VS2017_EBC_VFRPP_FLAGS         = /nologo /E /TC /DVFRCOMPILE
>> /FI$(MODULE_NAME)StrDefs.h /we4668
>>
>>   *_VS2017_EBC_SLINK_FLAGS         = /lib /NOLOGO /MACHINE:EBC
>>
>>   *_VS2017_EBC_DLINK_FLAGS         = "C:\Program Files
>> (x86)\Intel\EBC\Lib\EbcLib.lib" /NOLOGO /NODEFAULTLIB /MACHINE:EBC
>> /OPT:REF /ENTRY:$(IMAGE_ENTRY_POINT)
>> /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /MAP /ALIGN:32 /DRIVER
>>
>>
>>
>> @@ -1756,7 +1756,7 @@ NOOPT_VS2017_AARCH64_DLINK_FLAGS   =
>> /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF
>>   *_VS2019_*_SLINK_FLAGS     = /NOLOGO /LTCG
>>
>>   *_VS2019_*_APP_FLAGS       = /nologo /E /TC
>>
>>   *_VS2019_*_PP_FLAGS        = /nologo /E /TC /FIAutoGen.h
>>
>> -*_VS2019_*_VFRPP_FLAGS     = /nologo /E /TC /DVFRCOMPILE
>> /FI$(MODULE_NAME)StrDefs.h
>>
>> +*_VS2019_*_VFRPP_FLAGS     = /nologo /E /TC /DVFRCOMPILE
>> /FI$(MODULE_NAME)StrDefs.h /we4668
>>
>>   *_VS2019_*_DLINK2_FLAGS    = /WHOLEARCHIVE
>>
>>   *_VS2019_*_ASM16_PATH      = DEF(VS2019_BIN_IA32)\ml.exe
>>
>>   *_VS2019_*_DEPS_FLAGS      = DEF(MSFT_DEPS_FLAGS)
>>
>> @@ -1899,7 +1899,7 @@ NOOPT_VS2019_AARCH64_DLINK_FLAGS   =
>> /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF
>>   *_VS2019_EBC_MAKE_FLAGS          = /nologo
>>
>>   *_VS2019_EBC_PP_FLAGS            = /nologo /E /TC /FIAutoGen.h
>>
>>   *_VS2019_EBC_CC_FLAGS            = /nologo /c /WX /W3
>> /FIAutoGen.h /D$(MODULE_ENTRY_POINT)=$(ARCH_ENTRY_POINT)
>>
>> -*_VS2019_EBC_VFRPP_FLAGS         = /nologo /E /TC /DVFRCOMPILE
>> /FI$(MODULE_NAME)StrDefs.h
>>
>> +*_VS2019_EBC_VFRPP_FLAGS         = /nologo /E /TC /DVFRCOMPILE
>> /FI$(MODULE_NAME)StrDefs.h /we4668
>>
>>   *_VS2019_EBC_SLINK_FLAGS         = /lib /NOLOGO /MACHINE:EBC
>>
>>   *_VS2019_EBC_DLINK_FLAGS         = "C:\Program Files
>> (x86)\Intel\EBC\Lib\EbcLib.lib" /NOLOGO /NODEFAULTLIB /MACHINE:EBC
>> /OPT:REF /ENTRY:$(IMAGE_ENTRY_POINT)
>> /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /MAP /ALIGN:32 /DRIVER
>>
>>
>>
>> --
>> 2.30.0
>
>
>


-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#74384): https://edk2.groups.io/g/devel/message/74384
Mute This Topic: https://groups.io/mt/81068558/1787277
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org]
-=-=-=-=-=-=-=-=-=-=-=-