mirror of
https://github.com/openembedded/meta-openembedded.git
synced 2026-06-05 02:50:46 +00:00
opensaf: Fix build with gcc 12
Use configure logic to disable certain warnings if compiler supports them Signed-off-by: Khem Raj <raj.khem@gmail.com>
This commit is contained in:
+32
@@ -0,0 +1,32 @@
|
||||
From 6168d43ddd353b92ad8bcd5c49dc68f18caa8a00 Mon Sep 17 00:00:00 2001
|
||||
From: Khem Raj <raj.khem@gmail.com>
|
||||
Date: Tue, 12 Apr 2022 17:07:49 -0700
|
||||
Subject: [PATCH 1/2] include missing <array> header
|
||||
|
||||
Fixes
|
||||
src/osaf/consensus/key_value.cc:25:30: error: aggregate 'std::array<char, 128> buffer' has incomplete type and cannot be defined
|
||||
25 | std::array<char, buf_size> buffer;
|
||||
| ^~~~~~
|
||||
|
||||
Upstream-Status: Pending
|
||||
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
||||
---
|
||||
src/osaf/consensus/key_value.cc | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/src/osaf/consensus/key_value.cc b/src/osaf/consensus/key_value.cc
|
||||
index 692dd3f..6e16cbf 100644
|
||||
--- a/src/osaf/consensus/key_value.cc
|
||||
+++ b/src/osaf/consensus/key_value.cc
|
||||
@@ -18,7 +18,7 @@
|
||||
#include "base/getenv.h"
|
||||
#include "base/logtrace.h"
|
||||
#include "osaf/consensus/consensus.h"
|
||||
-
|
||||
+#include <array>
|
||||
int KeyValue::Execute(const std::string& command, std::string& output) {
|
||||
TRACE_ENTER();
|
||||
constexpr size_t buf_size = 128;
|
||||
--
|
||||
2.35.1
|
||||
|
||||
+28
@@ -0,0 +1,28 @@
|
||||
From fe654d5340d18f04e4689ba19f843554909a0c00 Mon Sep 17 00:00:00 2001
|
||||
From: Khem Raj <raj.khem@gmail.com>
|
||||
Date: Tue, 12 Apr 2022 17:16:37 -0700
|
||||
Subject: [PATCH 2/2] configure: Disable selected warnings
|
||||
|
||||
These warnings are emitted when compiling with gcc 11 and gcc 12
|
||||
Do not treat them as errors
|
||||
|
||||
Upstream-Status: Pending
|
||||
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
||||
---
|
||||
configure.ac | 4 +++-
|
||||
1 file changed, 3 insertions(+), 1 deletion(-)
|
||||
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -601,7 +601,10 @@ if test -z "$OSAF_HARDEN_FLAGS"; then
|
||||
fi
|
||||
AC_SUBST(OSAF_HARDEN_FLAGS)
|
||||
|
||||
-AX_CHECK_COMPILE_FLAG([-Werror=format-overflow],[NOWARNINGS=-Wno-error=format-overflow])
|
||||
+AX_CHECK_COMPILE_FLAG([-Werror=format-overflow],[NOWARNINGS='-Wno-error=format-overflow'])
|
||||
+AX_CHECK_COMPILE_FLAG([-Wuse-after-free],[NOWARNINGS+=' -Wno-error=use-after-free'])
|
||||
+AX_CHECK_COMPILE_FLAG([-Wstringop-truncation],[NOWARNINGS+=' -Wno-error=stringop-truncation'])
|
||||
+AX_CHECK_COMPILE_FLAG([-Warray-bounds],[NOWARNINGS+=' -Wno-error=array-bounds'])
|
||||
AC_SUBST(NOWARNINGS)
|
||||
#############################################
|
||||
# List the output Makefiles
|
||||
@@ -28,6 +28,8 @@ SRC_URI = "${SOURCEFORGE_MIRROR}/${BPN}/releases/${BPN}-${PV}.tar.gz \
|
||||
file://0001-immom_python-convert-to-python3.patch \
|
||||
file://0001-Fix-build-with-fno-common.patch \
|
||||
file://0001-Use-correct-printf-format-for-__fsblkcnt_t.patch \
|
||||
file://0001-include-missing-array-header.patch \
|
||||
file://0002-configure-Disable-selected-warnings.patch \
|
||||
"
|
||||
SRC_URI[sha256sum] = "f008d53c83087ce2014c6089bc4ef08e14c1b4091298b943f4ceade1aa6bf61e"
|
||||
|
||||
@@ -48,8 +50,8 @@ PACKAGECONFIG[plm] = "--enable-ais-plm,--disable-ais-plm,libvirt openhpi"
|
||||
|
||||
PACKAGECONFIG ?= "${@bb.utils.contains('DISTRO_FEATURES', 'systemd', ' systemd', '', d)}"
|
||||
|
||||
CPPFLAGS += "-Wno-error=stringop-overflow= -Wno-error=stringop-truncation"
|
||||
CXXFLAGS += "-Wno-error=stringop-overflow= -Wno-error=stringop-truncation -Wno-error=format-truncation="
|
||||
CPPFLAGS += "-Wno-error"
|
||||
CXXFLAGS += "-Wno-error"
|
||||
LDFLAGS += "-Wl,--as-needed -latomic -Wl,--no-as-needed"
|
||||
|
||||
do_install:append() {
|
||||
|
||||
Reference in New Issue
Block a user