1
0
mirror of https://git.yoctoproject.org/meta-arm synced 2026-05-07 04:58:57 +00:00

arm/edk2-firmware: unbreak builds with latest Clang

The latest Clang produced unaligned access warnings, which EDK2 promotes
to errors with -Werror.

  edk2/MdeModulePkg/Include/Guid/ExtendedFirmwarePerformance.h:78:47:
  error: field Guid within 'FPDT_GUID_EVENT_RECORD' is less aligned than 'EFI_GUID'
  and is usually due to 'FPDT_GUID_EVENT_RECORD' being packed, which can lead to
  unaligned accesses [-Werror,-Wunaligned-access]

This has been reported upstream so for now ignore this warning.

Signed-off-by: Ross Burton <ross.burton@arm.com>
This commit is contained in:
Ross Burton
2022-02-22 10:38:13 +00:00
parent 63e06127c0
commit 19b7bdba9b
2 changed files with 28 additions and 0 deletions
@@ -17,6 +17,7 @@ SRC_URI = "\
${EDK2_SRC_URI};name=edk2;destsuffix=edk2;nobranch=1 \
${EDK2_PLATFORMS_SRC_URI};name=edk2-platforms;destsuffix=edk2/edk2-platforms;nobranch=1 \
file://0001-Fix-VLA-parameter-warning.patch \
file://unaligned.patch \
"
SRCREV_FORMAT = "edk2_edk2-platforms"
@@ -0,0 +1,27 @@
Latest clang is causing build failures because -Werror is used:
edk2/MdeModulePkg/Include/Guid/ExtendedFirmwarePerformance.h:78:47:
error: field Guid within 'FPDT_GUID_EVENT_RECORD' is less aligned than 'EFI_GUID'
and is usually due to 'FPDT_GUID_EVENT_RECORD' being packed, which can lead to
unaligned accesses [-Werror,-Wunaligned-access]
This has been reported upstream[1] so until this is resolved, ignore the warnings.
[1] https://edk2.groups.io/g/devel/message/86838
Upstream-Status: Pending
Signed-off-by: Ross Burton <ross.burton@arm.com>
diff --git a/BaseTools/Conf/tools_def.template b/BaseTools/Conf/tools_def.template
index 2e6b382ab6..75bfbc5ae6 100755
--- a/BaseTools/Conf/tools_def.template
+++ b/BaseTools/Conf/tools_def.template
@@ -2566,7 +2566,7 @@ DEFINE CLANG38_X64_PREFIX = ENV(CLANG38_BIN)
DEFINE CLANG38_IA32_TARGET = -target i686-pc-linux-gnu
DEFINE CLANG38_X64_TARGET = -target x86_64-pc-linux-gnu
-DEFINE CLANG38_WARNING_OVERRIDES = -Wno-parentheses-equality -Wno-tautological-compare -Wno-tautological-constant-out-of-range-compare -Wno-empty-body -Wno-unused-const-variable -Wno-varargs -Wno-unknown-warning-option