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]
-=-=-=-=-=-=-=-=-=-=-=-
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] -=-=-=-=-=-=-=-=-=-=-=-
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] -=-=-=-=-=-=-=-=-=-=-=-
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] -=-=-=-=-=-=-=-=-=-=-=-
© 2016 - 2024 Red Hat, Inc.