Ronak Kanabar has uploaded this change for review. ( https://review.coreboot.org/c/coreboot/+/81328?usp=email )
Change subject: vc/intel/edk2-stable202111: Resolve compilation error in EDK2 202111 ......................................................................
vc/intel/edk2-stable202111: Resolve compilation error in EDK2 202111
Remove those MSVC compiler defaults checks so that the GCC defaults for wchar_t can be used with UDK_202111_BINDING Kconfig.
Compilation error: src/vendorcode/intel/edk2/edk2-stable202111/MdePkg/Include/Base.h:807:25: error: static assertion failed: "sizeof (L'A') does not meet UEFI Specification Data Type requirements" src/vendorcode/intel/edk2/edk2-stable202111/MdePkg/Include/Base.h:807:25: error: static assertion failed: "sizeof (L"A") does not meet UEFI Specification Data Type requirements"
BUG=b:296433836 TEST=Able to build google/crassk with UDK_202111_BINDING.
Change-Id: Ib2716436a910b43a5e546afdedb9eec88c5da8c6 Signed-off-by: Ronak Kanabar ronak.kanabar@intel.com --- M src/vendorcode/intel/edk2/edk2-stable202111/MdePkg/Include/Base.h 1 file changed, 3 insertions(+), 2 deletions(-)
git pull ssh://review.coreboot.org:29418/coreboot refs/changes/28/81328/1
diff --git a/src/vendorcode/intel/edk2/edk2-stable202111/MdePkg/Include/Base.h b/src/vendorcode/intel/edk2/edk2-stable202111/MdePkg/Include/Base.h index 1d79bf6..a06fb2a 100644 --- a/src/vendorcode/intel/edk2/edk2-stable202111/MdePkg/Include/Base.h +++ b/src/vendorcode/intel/edk2/edk2-stable202111/MdePkg/Include/Base.h @@ -823,8 +823,9 @@ STATIC_ASSERT (sizeof (UINT64) == 8, "sizeof (UINT64) does not meet UEFI Specification Data Type requirements"); STATIC_ASSERT (sizeof (CHAR8) == 1, "sizeof (CHAR8) does not meet UEFI Specification Data Type requirements"); STATIC_ASSERT (sizeof (CHAR16) == 2, "sizeof (CHAR16) does not meet UEFI Specification Data Type requirements"); -STATIC_ASSERT (sizeof (L'A') == 2, "sizeof (L'A') does not meet UEFI Specification Data Type requirements"); -STATIC_ASSERT (sizeof (L"A") == 4, "sizeof (L"A") does not meet UEFI Specification Data Type requirements"); +// Removed to have coreboot code compile with the Linux gcc defaults. The FSP interface does not need wchar_t anyway. +//STATIC_ASSERT (sizeof (L'A') == 2, "sizeof (L'A') does not meet UEFI Specification Data Type requirements"); +//STATIC_ASSERT (sizeof (L"A") == 4, "sizeof (L"A") does not meet UEFI Specification Data Type requirements");
// // The following three enum types are used to verify that the compiler