Message ID | 20220419210846.3638856-1-raj.khem@gmail.com |
---|---|
State | New |
Headers | show |
Series | [meta-networking] ot-br-posix: Fix build with gcc | expand |
Hello Khem. On 19.04.22 23:08, Khem Raj wrote: > Signed-off-by: Khem Raj <raj.khem@gmail.com> > Cc: Stefan Schmidt <stefan.schmidt@huawei.com> > --- > ...sable-nonnull-compare-warning-on-gcc.patch | 40 +++++++++++++++++++ > .../openthread/ot-br-posix_git.bb | 1 + > 2 files changed, 41 insertions(+) > create mode 100644 meta-networking/recipes-connectivity/openthread/ot-br-posix/0001-cmake-Disable-nonnull-compare-warning-on-gcc.patch > > diff --git a/meta-networking/recipes-connectivity/openthread/ot-br-posix/0001-cmake-Disable-nonnull-compare-warning-on-gcc.patch b/meta-networking/recipes-connectivity/openthread/ot-br-posix/0001-cmake-Disable-nonnull-compare-warning-on-gcc.patch > new file mode 100644 > index 0000000000..f0bb392a9f > --- /dev/null > +++ b/meta-networking/recipes-connectivity/openthread/ot-br-posix/0001-cmake-Disable-nonnull-compare-warning-on-gcc.patch > @@ -0,0 +1,40 @@ > +From aa706d714294b83db696de2beca9a722a512796f Mon Sep 17 00:00:00 2001 > +From: Khem Raj <raj.khem@gmail.com> > +Date: Tue, 19 Apr 2022 14:04:40 -0700 > +Subject: [PATCH] cmake: Disable nonnull-compare warning on gcc > + > +GCC finds a legit warning which clang does not on code like this > + > +class Message; > +void SendResponse(Message & aMessage) > +{ > + if ((&aMessage) != nullptr) { return; } > +} > + > +Perhaps it should be fixed upstream but for now disable treating this > +warning as error when using gcc > + > +Upstream-Status: Pending > +Signed-off-by: Khem Raj <raj.khem@gmail.com> > +--- > + CMakeLists.txt | 4 ++++ > + 1 file changed, 4 insertions(+) > + > +diff --git a/CMakeLists.txt b/CMakeLists.txt > +index 59a567e729..3134740ff6 100644 > +--- a/CMakeLists.txt > ++++ b/CMakeLists.txt > +@@ -57,6 +57,10 @@ endif() > + > + set(CMAKE_CXX_EXTENSIONS OFF) > + > ++if (CMAKE_CXX_COMPILER_ID MATCHES "GNU") > ++ add_compile_options(-Wno-error=nonnull-compare) > ++endif() > ++ > + if (OTBR_COVERAGE AND CMAKE_CXX_COMPILER_ID MATCHES "GNU|Clang") > + message(STATUS "Coverage: ON") > + target_compile_options(otbr-config INTERFACE -g -O0 --coverage) > +-- > +2.36.0 > + > diff --git a/meta-networking/recipes-connectivity/openthread/ot-br-posix_git.bb b/meta-networking/recipes-connectivity/openthread/ot-br-posix_git.bb > index c1af388627..a16b77849e 100644 > --- a/meta-networking/recipes-connectivity/openthread/ot-br-posix_git.bb > +++ b/meta-networking/recipes-connectivity/openthread/ot-br-posix_git.bb > @@ -16,6 +16,7 @@ PV = "0.3.0+git${SRCPV}" > > SRC_URI = "gitsm://github.com/openthread/ot-br-posix.git;protocol=https;branch=main \ > file://0001-otbr-agent.service.in-remove-pre-exec-hook-for-mdns-.patch \ > + file://0001-cmake-Disable-nonnull-compare-warning-on-gcc.patch \ > " > > S = "${WORKDIR}/git" > LGTM regards Stefan Schmidt
diff --git a/meta-networking/recipes-connectivity/openthread/ot-br-posix/0001-cmake-Disable-nonnull-compare-warning-on-gcc.patch b/meta-networking/recipes-connectivity/openthread/ot-br-posix/0001-cmake-Disable-nonnull-compare-warning-on-gcc.patch new file mode 100644 index 0000000000..f0bb392a9f --- /dev/null +++ b/meta-networking/recipes-connectivity/openthread/ot-br-posix/0001-cmake-Disable-nonnull-compare-warning-on-gcc.patch @@ -0,0 +1,40 @@ +From aa706d714294b83db696de2beca9a722a512796f Mon Sep 17 00:00:00 2001 +From: Khem Raj <raj.khem@gmail.com> +Date: Tue, 19 Apr 2022 14:04:40 -0700 +Subject: [PATCH] cmake: Disable nonnull-compare warning on gcc + +GCC finds a legit warning which clang does not on code like this + +class Message; +void SendResponse(Message & aMessage) +{ + if ((&aMessage) != nullptr) { return; } +} + +Perhaps it should be fixed upstream but for now disable treating this +warning as error when using gcc + +Upstream-Status: Pending +Signed-off-by: Khem Raj <raj.khem@gmail.com> +--- + CMakeLists.txt | 4 ++++ + 1 file changed, 4 insertions(+) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 59a567e729..3134740ff6 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -57,6 +57,10 @@ endif() + + set(CMAKE_CXX_EXTENSIONS OFF) + ++if (CMAKE_CXX_COMPILER_ID MATCHES "GNU") ++ add_compile_options(-Wno-error=nonnull-compare) ++endif() ++ + if (OTBR_COVERAGE AND CMAKE_CXX_COMPILER_ID MATCHES "GNU|Clang") + message(STATUS "Coverage: ON") + target_compile_options(otbr-config INTERFACE -g -O0 --coverage) +-- +2.36.0 + diff --git a/meta-networking/recipes-connectivity/openthread/ot-br-posix_git.bb b/meta-networking/recipes-connectivity/openthread/ot-br-posix_git.bb index c1af388627..a16b77849e 100644 --- a/meta-networking/recipes-connectivity/openthread/ot-br-posix_git.bb +++ b/meta-networking/recipes-connectivity/openthread/ot-br-posix_git.bb @@ -16,6 +16,7 @@ PV = "0.3.0+git${SRCPV}" SRC_URI = "gitsm://github.com/openthread/ot-br-posix.git;protocol=https;branch=main \ file://0001-otbr-agent.service.in-remove-pre-exec-hook-for-mdns-.patch \ + file://0001-cmake-Disable-nonnull-compare-warning-on-gcc.patch \ " S = "${WORKDIR}/git"
Signed-off-by: Khem Raj <raj.khem@gmail.com> Cc: Stefan Schmidt <stefan.schmidt@huawei.com> --- ...sable-nonnull-compare-warning-on-gcc.patch | 40 +++++++++++++++++++ .../openthread/ot-br-posix_git.bb | 1 + 2 files changed, 41 insertions(+) create mode 100644 meta-networking/recipes-connectivity/openthread/ot-br-posix/0001-cmake-Disable-nonnull-compare-warning-on-gcc.patch