From feec808563c1ebcb0904982c8b385367e12268da Mon Sep 17 00:00:00 2001 From: Marcel Ziswiler Date: Sat, 23 May 2020 01:41:37 +0200 Subject: elfutils: Fix gcc compile time alignment errors Allow devtool to organize the SRC_URI Signed-off-by: Khem Raj Signed-off-by: Ross Burton (cherry-picked from openembedded-core commit 49aae1d75ff1c6a9643c30a8cc5776a2ffa83dd3) --- ...-packed-structs-follow-the-gcc-memory-lay.patch | 34 ++++++++++++++++++++++ recipes-devtools/elfutils/elfutils_0.170.bbappend | 6 ++++ 2 files changed, 40 insertions(+) create mode 100644 recipes-devtools/elfutils/elfutils/0001-Ensure-that-packed-structs-follow-the-gcc-memory-lay.patch create mode 100644 recipes-devtools/elfutils/elfutils_0.170.bbappend diff --git a/recipes-devtools/elfutils/elfutils/0001-Ensure-that-packed-structs-follow-the-gcc-memory-lay.patch b/recipes-devtools/elfutils/elfutils/0001-Ensure-that-packed-structs-follow-the-gcc-memory-lay.patch new file mode 100644 index 0000000..cf4d1df --- /dev/null +++ b/recipes-devtools/elfutils/elfutils/0001-Ensure-that-packed-structs-follow-the-gcc-memory-lay.patch @@ -0,0 +1,34 @@ +From 732913a8c35c7b25c0cbf6903cab1ad6b602b525 Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Thu, 22 Mar 2018 22:44:03 -0700 +Subject: [PATCH] Ensure that packed structs follow the gcc memory layout + +Partial backport of +https://sourceware.org/git/?p=elfutils.git;a=commit;h=17d7194d291bf91d130b78e06cbe27b290e0376d + +Helps fixing alignment errors e.g. +linux-core-note.c:116:1: error: alignment 2 of 'struct m68k_prstatus +' is less than 4 [-Werror=packed-not-aligned] + ; + ^ + +Upstream-Status: Backport [https://sourceware.org/git/?p=elfutils.git;a=commit;h=17d7194d291bf91d130b78e06cbe27b290e0376d] + +Signed-off-by: Khem Raj +--- + backends/linux-core-note.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/backends/linux-core-note.c b/backends/linux-core-note.c +index 5f06c896..9faae4c3 100644 +--- a/backends/linux-core-note.c ++++ b/backends/linux-core-note.c +@@ -111,7 +111,7 @@ struct EBLHOOK(prstatus) + FIELD (INT, pr_fpvalid); + } + #ifdef ALIGN_PRSTATUS +- __attribute__ ((packed, aligned (ALIGN_PRSTATUS))) ++ attribute_packed __attribute__ ((aligned (ALIGN_PRSTATUS))) + #endif + ; + diff --git a/recipes-devtools/elfutils/elfutils_0.170.bbappend b/recipes-devtools/elfutils/elfutils_0.170.bbappend new file mode 100644 index 0000000..08957a2 --- /dev/null +++ b/recipes-devtools/elfutils/elfutils_0.170.bbappend @@ -0,0 +1,6 @@ + +FILESEXTRAPATHS_prepend := "${THISDIR}/elfutils:" + +SRC_URI += " \ + file://0001-Ensure-that-packed-structs-follow-the-gcc-memory-lay.patch \ +" -- cgit v1.2.3