Date   

[meta-oe][PATCH] libyang: do not inherit binconfig-disabled

Yi Zhao
 

Do not inherit binconfig-disabled as pcre2-config is not required by
upstream.

Signed-off-by: Yi Zhao <yi.zhao@...>
---
meta-oe/recipes-extended/libyang/libyang_2.0.164.bb | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/meta-oe/recipes-extended/libyang/libyang_2.0.164.bb b/meta-oe/recipes-extended/libyang/libyang_2.0.164.bb
index 8f41769e0..2817be7c8 100644
--- a/meta-oe/recipes-extended/libyang/libyang_2.0.164.bb
+++ b/meta-oe/recipes-extended/libyang/libyang_2.0.164.bb
@@ -21,10 +21,9 @@ COMPATIBLE_HOST:armv5 = "null"
COMPATIBLE_HOST:riscv64 = "null"

# Main dependencies
-inherit cmake pkgconfig lib_package binconfig-disabled ptest
+inherit cmake pkgconfig lib_package ptest
DEPENDS = "libpcre2"
DEPENDS += "${@bb.utils.contains('PTEST_ENABLED', '1', 'cmocka', '', d)}"
-BINCONFIG = "${bindir}/pcre2-config"

# Ptest dependencies
RDEPENDS:${PN}-ptest += "valgrind"
--
2.25.1


Re: [meta-oe][PATCH] wxwidgets: Fix checking for PACKAGECONFIG and DISTRO_FEATURES

Robert Yang
 

Hi Denys,

On 4/8/22 8:45 AM, Denys Dmytriyenko wrote:
On Thu, Apr 07, 2022 at 09:55:41AM +0300, Samuli Piippo wrote:
This commit breaks builds when DISTRO_FEATURES has opengl, but not x11.
Same here! Moreover, it does not simply breaks the build, it breaks *parsing*
even when not building wxwidgets! Please fix ASAP or revert.
Sorry for the problem. I think that the fix should be only enable opengl when both opengl and x11 are in DISTRO_FEATURES, the opengl can't work without x11
since it depends on libglu, and
oe-core/meta/recipes-graphics/mesa/libglu_9.0.2.bb requires both x11 and opengl.

I will send a patch to fix it.

// Robert


ERROR: //meta-openembedded/meta-oe/recipes-extended/wxwidgets/
wxwidgets_3.1.5.bb: wxwidgets: PACKAGECONFIG[no_gui] Conflict package
config 'opengl' set in PACKAGECONFIG.

On Sat, 2 Apr 2022 at 06:26, Robert Yang <liezhi.yang@...> wrote:

The PACKAGECONFIG depends on DISTRO_FEATURES, not DISTRO_FEATURES depends
on
PACKAGECONFIG. And the REQUIRED_DISTRO_FEATURES is not needed since it can
work
with gtk or x11.

Fixed when x11 is not in DISTRO_FEATURES:
$ bitbake wxwidgets
ERROR: Nothing PROVIDES 'wxwidgets'
wxwidgets was skipped: missing required distro feature 'x11' (not in
DISTRO_FEATURES)

Signed-off-by: Robert Yang <liezhi.yang@...>
---
meta-oe/recipes-extended/wxwidgets/wxwidgets_3.1.5.bb | 11 ++++++-----
1 file changed, 6 insertions(+), 5 deletions(-)

diff --git a/meta-oe/recipes-extended/wxwidgets/wxwidgets_3.1.5.bb
b/meta-oe/recipes-extended/wxwidgets/wxwidgets_3.1.5.bb
index f9349b02a..b10742eac 100644
--- a/meta-oe/recipes-extended/wxwidgets/wxwidgets_3.1.5.bb
+++ b/meta-oe/recipes-extended/wxwidgets/wxwidgets_3.1.5.bb
@@ -10,10 +10,7 @@ LICENSE = "WXwindows"
LIC_FILES_CHKSUM =
"file://docs/licence.txt;md5=981f50a934828620b08f44d75db557c6"

inherit ${@bb.utils.contains('PACKAGECONFIG', 'qt', 'cmake_qt5', 'cmake',
d)}
-inherit features_check lib_package binconfig pkgconfig
-
-# All toolkit-configs except 'no_gui' require x11 explicitly (see
toolkit.cmake)
-REQUIRED_DISTRO_FEATURES = "${@bb.utils.contains('PACKAGECONFIG',
'no_gui', '', 'x11', d)}"
+inherit lib_package binconfig pkgconfig

DEPENDS += " \
jpeg \
@@ -46,7 +43,11 @@ EXTRA_OECMAKE:append:libc-musl = " \
-DHAVE_LOCALE_T=OFF \
"

-PACKAGECONFIG ?= "gtk ${@bb.utils.filter('DISTRO_FEATURES', 'opengl', d)}"
+# All toolkit-configs except 'no_gui' require x11 explicitly (see
toolkit.cmake)
+PACKAGECONFIG ?= "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'gtk',
'no_gui', d)} \
+ ${@bb.utils.filter('DISTRO_FEATURES', 'opengl', d)} \
+"
+
PACKAGECONFIG:remove:class-native = "opengl"

# Note on toolkit-PACKAGECONFIGs: select exactly one of 'no_gui' / 'gtk'
/ 'qt'
--
2.31.1


[meta-oe][PATCH] ndctl: fix build failure with EXEWRAPPER_ENABLED False

Naveen Saini
 

The v73 version tries to build and run a test program at compile
time to check whether compiler supports sizeof and expression statements
and sets HAVE_STATEMENT_EXPR accordingly. This requires EXEWRAPPER_ENABLED
in meson.bbclass to be True and qemu-usermode to be working.

In cases when EXEWRAPPER_ENABLED is False, build fails with error:

| ../git/meson.build:213:0: ERROR: Can not run test applications in
this cross environment.

We don't really need to do this as these have been supported since gcc3 and can set the configs to 1.

The autotools implementation also used to set it to 1 so this doesn't change anything:

https://github.com/pmem/ndctl/blob/v72.1/configure.ac#L70

Signed-off-by: Naveen Saini <naveen.kumar.saini@...>
---
...01-build-set-HAVE_STATEMENT_EXPR-var.patch | 60 +++++++++++++++++++
meta-oe/recipes-core/ndctl/ndctl_v73.bb | 3 +-
2 files changed, 62 insertions(+), 1 deletion(-)
create mode 100644 meta-oe/recipes-core/ndctl/ndctl/0001-build-set-HAVE_STATEMENT_EXPR-var.patch

diff --git a/meta-oe/recipes-core/ndctl/ndctl/0001-build-set-HAVE_STATEMENT_EXPR-var.patch b/meta-oe/recipes-core/ndctl/ndctl/0001-build-set-HAVE_STATEMENT_EXPR-var.patch
new file mode 100644
index 000000000..486d6c07b
--- /dev/null
+++ b/meta-oe/recipes-core/ndctl/ndctl/0001-build-set-HAVE_STATEMENT_EXPR-var.patch
@@ -0,0 +1,60 @@
+From b06d16ec2d4aefc4cf1675e9dd6314956bc32d69 Mon Sep 17 00:00:00 2001
+From: Naveen Saini <naveen.kumar.saini@...>
+Date: Thu, 7 Apr 2022 14:36:58 +0800
+Subject: [PATCH] build: set HAVE_STATEMENT_EXPR var
+
+The v73 version tries to build and run a test program at compile
+time to check whether compiler supports sizeof and expression statements
+and sets HAVE_STATEMENT_EXPR accordingly. This requires EXEWRAPPER_ENABLED
+in meson.bbclass to be True and qemu-usermode to be working.
+
+In cases when EXEWRAPPER_ENABLED is False, build fails with error:
+
+| ../git/meson.build:213:0: ERROR: Can not run test applications in
+this cross environment.
+
+We don't really need to do this as these have been supported since gcc3 and can set the configs to 1.
+
+The autotools implementation also used to set it to 1 so this doesn't change anything:
+
+https://github.com/pmem/ndctl/blob/v72.1/configure.ac#L70
+
+Upstream-Status: Inappropriate
+
+Signed-off-by: Naveen Saini <naveen.kumar.saini@...>
+---
+ meson.build | 18 ++----------------
+ 1 file changed, 2 insertions(+), 16 deletions(-)
+
+diff --git a/meson.build b/meson.build
+index 42e11aa..e8d218b 100644
+--- a/meson.build
++++ b/meson.build
+@@ -210,22 +210,8 @@ conf.set('ENABLE_DESTRUCTIVE', get_option('destructive').enabled())
+ conf.set('ENABLE_LOGGING', get_option('logging').enabled())
+ conf.set('ENABLE_DEBUG', get_option('dbg').enabled())
+
+-typeof = cc.run('''
+- int main() {
+- struct {
+- char a[16];
+- } x;
+- typeof(x) y;
+-
+- return sizeof(x) == sizeof(y);
+- }
+- '''
+-)
+-
+-if typeof.compiled() and typeof.returncode() == 1
+- conf.set('HAVE_TYPEOF', 1)
+- conf.set('HAVE_STATEMENT_EXPR', 1)
+-endif
++conf.set('HAVE_TYPEOF', 1)
++conf.set('HAVE_STATEMENT_EXPR', 1)
+
+ if target_machine.endian() == 'big'
+ conf.set('HAVE_BIG_ENDIAN', 1)
+--
+2.17.1
+
diff --git a/meta-oe/recipes-core/ndctl/ndctl_v73.bb b/meta-oe/recipes-core/ndctl/ndctl_v73.bb
index c88d39297..da649d578 100644
--- a/meta-oe/recipes-core/ndctl/ndctl_v73.bb
+++ b/meta-oe/recipes-core/ndctl/ndctl_v73.bb
@@ -13,7 +13,8 @@ inherit meson pkgconfig bash-completion systemd
SRCREV = "dd58d43458943d20ff063850670bf54a5242c9c5"
SRC_URI = "git://github.com/pmem/ndctl.git;branch=main;protocol=https \
file://0001-util-Correct-path-to-iniparser.h.patch \
- file://0001-meson-Use-pkg-config-to-detect-iniparser.patch"
+ file://0001-meson-Use-pkg-config-to-detect-iniparser.patch \
+ file://0001-build-set-HAVE_STATEMENT_EXPR-var.patch"

UPSTREAM_CHECK_GITTAGREGEX = "(?P<pver>v\d+(\.\d+)*)"

--
2.17.1


Re: [meta-oe][PATCH] wxwidgets: Fix checking for PACKAGECONFIG and DISTRO_FEATURES

Denys Dmytriyenko
 

On Thu, Apr 07, 2022 at 09:55:41AM +0300, Samuli Piippo wrote:
This commit breaks builds when DISTRO_FEATURES has opengl, but not x11.
Same here! Moreover, it does not simply breaks the build, it breaks *parsing*
even when not building wxwidgets! Please fix ASAP or revert.


ERROR: //meta-openembedded/meta-oe/recipes-extended/wxwidgets/
wxwidgets_3.1.5.bb: wxwidgets: PACKAGECONFIG[no_gui] Conflict package
config 'opengl' set in PACKAGECONFIG.

On Sat, 2 Apr 2022 at 06:26, Robert Yang <liezhi.yang@...> wrote:

The PACKAGECONFIG depends on DISTRO_FEATURES, not DISTRO_FEATURES depends
on
PACKAGECONFIG. And the REQUIRED_DISTRO_FEATURES is not needed since it can
work
with gtk or x11.

Fixed when x11 is not in DISTRO_FEATURES:
$ bitbake wxwidgets
ERROR: Nothing PROVIDES 'wxwidgets'
wxwidgets was skipped: missing required distro feature 'x11' (not in
DISTRO_FEATURES)

Signed-off-by: Robert Yang <liezhi.yang@...>
---
meta-oe/recipes-extended/wxwidgets/wxwidgets_3.1.5.bb | 11 ++++++-----
1 file changed, 6 insertions(+), 5 deletions(-)

diff --git a/meta-oe/recipes-extended/wxwidgets/wxwidgets_3.1.5.bb
b/meta-oe/recipes-extended/wxwidgets/wxwidgets_3.1.5.bb
index f9349b02a..b10742eac 100644
--- a/meta-oe/recipes-extended/wxwidgets/wxwidgets_3.1.5.bb
+++ b/meta-oe/recipes-extended/wxwidgets/wxwidgets_3.1.5.bb
@@ -10,10 +10,7 @@ LICENSE = "WXwindows"
LIC_FILES_CHKSUM =
"file://docs/licence.txt;md5=981f50a934828620b08f44d75db557c6"

inherit ${@bb.utils.contains('PACKAGECONFIG', 'qt', 'cmake_qt5', 'cmake',
d)}
-inherit features_check lib_package binconfig pkgconfig
-
-# All toolkit-configs except 'no_gui' require x11 explicitly (see
toolkit.cmake)
-REQUIRED_DISTRO_FEATURES = "${@bb.utils.contains('PACKAGECONFIG',
'no_gui', '', 'x11', d)}"
+inherit lib_package binconfig pkgconfig

DEPENDS += " \
jpeg \
@@ -46,7 +43,11 @@ EXTRA_OECMAKE:append:libc-musl = " \
-DHAVE_LOCALE_T=OFF \
"

-PACKAGECONFIG ?= "gtk ${@bb.utils.filter('DISTRO_FEATURES', 'opengl', d)}"
+# All toolkit-configs except 'no_gui' require x11 explicitly (see
toolkit.cmake)
+PACKAGECONFIG ?= "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'gtk',
'no_gui', d)} \
+ ${@bb.utils.filter('DISTRO_FEATURES', 'opengl', d)} \
+"
+
PACKAGECONFIG:remove:class-native = "opengl"

# Note on toolkit-PACKAGECONFIGs: select exactly one of 'no_gui' / 'gtk'
/ 'qt'
--
2.31.1


Re: [meta-oe][hardknott][PATCH 2/3] abseil-cpp: Fix build with glibc 2.34

Martin Jansa
 

Just like the .patch file in master branch, does hardknott have stricter rules than master branch?


On Fri, Apr 8, 2022 at 1:57 AM akuster808 <akuster808@...> wrote:


On 4/5/22 03:41, Martin Jansa wrote:
> From: Khem Raj <raj.khem@...>
>
> * based on commit from honister, but without the upgrade:
>    commit 8691de2580dd872e3d001d67c8455108b3bd627c
>    Author: Khem Raj <raj.khem@...>
>    Date:   Sat May 8 14:38:52 2021 -0700
>
>      abseil-cpp: Upgrade to lts_2021_03_24
>
>      Fix build with glibc 2.34 while here
>      Forward patches to this version
>      Let system package the libraries
>
>    to fix abseil-cpp-native build on e.g. Ubuntu-22.04 with glibc-2.34 to fix:
>
>    | FAILED: absl/debugging/CMakeFiles/failure_signal_handler.dir/failure_signal_handler.cc.o
>    | /OE/lge/build/webosose/hardknott/BUILD/hosttools/g++ -Dfailure_signal_handler_EXPORTS -I/OE/lge/build/webosose/hardknott/BUILD/work/x86_64-linux/abseil-cpp-native/20200923+gitAUTOINC+6f9d96a1f4-r0/git -isystem/OE/lge/build/webosose/hardknott/BUILD/work/x86_64-linux/abseil-cpp-native/20200923+gitAUTOINC+6f9d96a1f4-r0/recipe-sysroot-native/usr/include -O2 -pipe -fPIC -Wall -Wextra -Wcast-qual -Wconversion-null -Wmissing-declarations -Woverlength-strings -Wpointer-arith -Wundef -Wunused-local-typedefs -Wunused-result -Wvarargs -Wvla -Wwrite-strings -Wno-missing-field-initializers -Wno-sign-compare -DNOMINMAX -std=gnu++14 -MD -MT absl/debugging/CMakeFiles/failure_signal_handler.dir/failure_signal_handler.cc.o -MF absl/debugging/CMakeFiles/failure_signal_handler.dir/failure_signal_handler.cc.o.d -o absl/debugging/CMakeFiles/failure_signal_handler.dir/failure_signal_handler.cc.o -c /OE/lge/build/webosose/hardknott/BUILD/work/x86_64-linux/abseil-cpp-native/20200923+gitAUTOINC+6f9d96a1f4-r0/git/absl/debugging/failure_signal_handler.cc
>    | /OE/lge/build/webosose/hardknott/BUILD/work/x86_64-linux/abseil-cpp-native/20200923+gitAUTOINC+6f9d96a1f4-r0/git/absl/debugging/failure_signal_handler.cc: In function ‘bool absl::lts_2020_09_23::SetupAlternateStackOnce()’:
>    | /OE/lge/build/webosose/hardknott/BUILD/work/x86_64-linux/abseil-cpp-native/20200923+gitAUTOINC+6f9d96a1f4-r0/git/absl/debugging/failure_signal_handler.cc:138:32: error: no matching function for call to ‘max(long int, int)’
>    |   138 |   size_t stack_size = (std::max(SIGSTKSZ, 65536) + page_mask) & ~page_mask;
>    |       |                        ~~~~~~~~^~~~~~~~~~~~~~~~~
>
> Signed-off-by: Khem Raj <raj.khem@...>
> Signed-off-by: Martin Jansa <Martin.Jansa@...>
> ---
>   ...01-Export-of-internal-Abseil-changes.patch | 82 +++++++++++++++++++
>   .../abseil-cpp/abseil-cpp_git.bb              |  1 +
>   2 files changed, 83 insertions(+)
>   create mode 100644 meta-oe/recipes-devtools/abseil-cpp/abseil-cpp/0001-Export-of-internal-Abseil-changes.patch
>
> diff --git a/meta-oe/recipes-devtools/abseil-cpp/abseil-cpp/0001-Export-of-internal-Abseil-changes.patch b/meta-oe/recipes-devtools/abseil-cpp/abseil-cpp/0001-Export-of-internal-Abseil-changes.patch
> new file mode 100644
> index 0000000000..c0fb0571f7
> --- /dev/null
> +++ b/meta-oe/recipes-devtools/abseil-cpp/abseil-cpp/0001-Export-of-internal-Abseil-changes.patch
> @@ -0,0 +1,82 @@
> +From d3424201a73f29ab533121b1821a76e1b4313beb Mon Sep 17 00:00:00 2001
> +From: Abseil Team <absl-team@...>
> +Date: Mon, 3 May 2021 07:37:39 -0700
> +Subject: [PATCH] Export of internal Abseil changes
> +
> +--
> +cf88f9cf40eab54c06bca7f20795352ec23bb583 by Derek Mauro <dmauro@...>:
> +
> +Fixes build with latest glibc
> +Fixes #952
> +
> +PiperOrigin-RevId: 371693908
> +
> +--
> +99bcd0f4a747ce7a401e23c745adf34d0ec5131b by Samuel Benzaquen <sbenza@...>:
> +
> +Add support for std::string_view in StrFormat even when
> +absl::string_view != std::string_view.
> +
> +PiperOrigin-RevId: 371693633
> +
> +--
> +e35463572149a6c2d4a0d439b9300ce03fd6b96d by Abseil Team <absl-team@...>:
> +
> +Cmake builds should only install pkg-config when explicitly requested.
> +
> +PiperOrigin-RevId: 371403419
> +GitOrigin-RevId: cf88f9cf40eab54c06bca7f20795352ec23bb583
> +Change-Id: I4360a18c638a4d901ff44ab1e0a9d8f321c302ea

Patch missing "Upstream-Status" and "Signed-off-by"

- armin
> +---
> + absl/debugging/failure_signal_handler.cc         | 3 ++-
> + absl/strings/internal/str_format/arg.h           | 8 ++++++++
> + absl/strings/internal/str_format/convert_test.cc | 3 +++
> + 3 files changed, 13 insertions(+), 1 deletion(-)
> +
> +diff --git a/absl/debugging/failure_signal_handler.cc b/absl/debugging/failure_signal_handler.cc
> +index 5d13bdbb..2ed137b5 100644
> +--- a/absl/debugging/failure_signal_handler.cc
> ++++ b/absl/debugging/failure_signal_handler.cc
> +@@ -135,7 +135,8 @@ static bool SetupAlternateStackOnce() {
> + #else
> +   const size_t page_mask = sysconf(_SC_PAGESIZE) - 1;
> + #endif
> +-  size_t stack_size = (std::max(SIGSTKSZ, 65536) + page_mask) & ~page_mask;
> ++  size_t stack_size =
> ++      (std::max<size_t>(SIGSTKSZ, 65536) + page_mask) & ~page_mask;
> + #if defined(ABSL_HAVE_ADDRESS_SANITIZER) || \
> +     defined(ABSL_HAVE_MEMORY_SANITIZER) || defined(ABSL_HAVE_THREAD_SANITIZER)
> +   // Account for sanitizer instrumentation requiring additional stack space.
> +diff --git a/absl/strings/internal/str_format/arg.h b/absl/strings/internal/str_format/arg.h
> +index 3dbc1526..f9d89d12 100644
> +--- a/absl/strings/internal/str_format/arg.h
> ++++ b/absl/strings/internal/str_format/arg.h
> +@@ -108,6 +108,14 @@ StringConvertResult FormatConvertImpl(const std::string& v,
> + StringConvertResult FormatConvertImpl(string_view v,
> +                                       FormatConversionSpecImpl conv,
> +                                       FormatSinkImpl* sink);
> ++#if defined(ABSL_HAVE_STD_STRING_VIEW) && !defined(ABSL_USES_STD_STRING_VIEW)
> ++inline StringConvertResult FormatConvertImpl(std::string_view v,
> ++                                             FormatConversionSpecImpl conv,
> ++                                             FormatSinkImpl* sink) {
> ++  return FormatConvertImpl(absl::string_view(v.data(), v.size()), conv, sink);
> ++}
> ++#endif  // ABSL_HAVE_STD_STRING_VIEW && !ABSL_USES_STD_STRING_VIEW
> ++
> + ArgConvertResult<FormatConversionCharSetUnion(
> +     FormatConversionCharSetInternal::s, FormatConversionCharSetInternal::p)>
> + FormatConvertImpl(const char* v, const FormatConversionSpecImpl conv,
> +diff --git a/absl/strings/internal/str_format/convert_test.cc b/absl/strings/internal/str_format/convert_test.cc
> +index 634ee78b..cc789530 100644
> +--- a/absl/strings/internal/str_format/convert_test.cc
> ++++ b/absl/strings/internal/str_format/convert_test.cc
> +@@ -215,6 +215,9 @@ TEST_F(FormatConvertTest, BasicString) {
> +   TestStringConvert(static_cast<const char*>("hello"));
> +   TestStringConvert(std::string("hello"));
> +   TestStringConvert(string_view("hello"));
> ++#if defined(ABSL_HAVE_STD_STRING_VIEW)
> ++  TestStringConvert(std::string_view("hello"));
> ++#endif  // ABSL_HAVE_STD_STRING_VIEW
> + }
> +
> + TEST_F(FormatConvertTest, NullString) {
> diff --git a/meta-oe/recipes-devtools/abseil-cpp/abseil-cpp_git.bb b/meta-oe/recipes-devtools/abseil-cpp/abseil-cpp_git.bb
> index 569bb13993..a49fe672e8 100644
> --- a/meta-oe/recipes-devtools/abseil-cpp/abseil-cpp_git.bb
> +++ b/meta-oe/recipes-devtools/abseil-cpp/abseil-cpp_git.bb
> @@ -14,6 +14,7 @@ SRC_URI = "git://github.com/abseil/abseil-cpp;branch=${BRANCH};protocol=https \
>              file://0001-absl-always-use-asm-sgidefs.h.patch             \
>              file://0002-Remove-maes-option-from-cross-compilation.patch \
>              file://abseil-ppc-fixes.patch \
> +           file://0001-Export-of-internal-Abseil-changes.patch \
>             "
>   
>   S = "${WORKDIR}/git"
>
>
>


Re: [meta-oe][hardknott][PATCH 2/3] abseil-cpp: Fix build with glibc 2.34

Armin Kuster
 

On 4/5/22 03:41, Martin Jansa wrote:
From: Khem Raj <raj.khem@...>

* based on commit from honister, but without the upgrade:
commit 8691de2580dd872e3d001d67c8455108b3bd627c
Author: Khem Raj <raj.khem@...>
Date: Sat May 8 14:38:52 2021 -0700

abseil-cpp: Upgrade to lts_2021_03_24

Fix build with glibc 2.34 while here
Forward patches to this version
Let system package the libraries

to fix abseil-cpp-native build on e.g. Ubuntu-22.04 with glibc-2.34 to fix:

| FAILED: absl/debugging/CMakeFiles/failure_signal_handler.dir/failure_signal_handler.cc.o
| /OE/lge/build/webosose/hardknott/BUILD/hosttools/g++ -Dfailure_signal_handler_EXPORTS -I/OE/lge/build/webosose/hardknott/BUILD/work/x86_64-linux/abseil-cpp-native/20200923+gitAUTOINC+6f9d96a1f4-r0/git -isystem/OE/lge/build/webosose/hardknott/BUILD/work/x86_64-linux/abseil-cpp-native/20200923+gitAUTOINC+6f9d96a1f4-r0/recipe-sysroot-native/usr/include -O2 -pipe -fPIC -Wall -Wextra -Wcast-qual -Wconversion-null -Wmissing-declarations -Woverlength-strings -Wpointer-arith -Wundef -Wunused-local-typedefs -Wunused-result -Wvarargs -Wvla -Wwrite-strings -Wno-missing-field-initializers -Wno-sign-compare -DNOMINMAX -std=gnu++14 -MD -MT absl/debugging/CMakeFiles/failure_signal_handler.dir/failure_signal_handler.cc.o -MF absl/debugging/CMakeFiles/failure_signal_handler.dir/failure_signal_handler.cc.o.d -o absl/debugging/CMakeFiles/failure_signal_handler.dir/failure_signal_handler.cc.o -c /OE/lge/build/webosose/hardknott/BUILD/work/x86_64-linux/abseil-cpp-native/20200923+gitAUTOINC+6f9d96a1f4-r0/git/absl/debugging/failure_signal_handler.cc
| /OE/lge/build/webosose/hardknott/BUILD/work/x86_64-linux/abseil-cpp-native/20200923+gitAUTOINC+6f9d96a1f4-r0/git/absl/debugging/failure_signal_handler.cc: In function ‘bool absl::lts_2020_09_23::SetupAlternateStackOnce()’:
| /OE/lge/build/webosose/hardknott/BUILD/work/x86_64-linux/abseil-cpp-native/20200923+gitAUTOINC+6f9d96a1f4-r0/git/absl/debugging/failure_signal_handler.cc:138:32: error: no matching function for call to ‘max(long int, int)’
| 138 | size_t stack_size = (std::max(SIGSTKSZ, 65536) + page_mask) & ~page_mask;
| | ~~~~~~~~^~~~~~~~~~~~~~~~~

Signed-off-by: Khem Raj <raj.khem@...>
Signed-off-by: Martin Jansa <Martin.Jansa@...>
---
...01-Export-of-internal-Abseil-changes.patch | 82 +++++++++++++++++++
.../abseil-cpp/abseil-cpp_git.bb | 1 +
2 files changed, 83 insertions(+)
create mode 100644 meta-oe/recipes-devtools/abseil-cpp/abseil-cpp/0001-Export-of-internal-Abseil-changes.patch

diff --git a/meta-oe/recipes-devtools/abseil-cpp/abseil-cpp/0001-Export-of-internal-Abseil-changes.patch b/meta-oe/recipes-devtools/abseil-cpp/abseil-cpp/0001-Export-of-internal-Abseil-changes.patch
new file mode 100644
index 0000000000..c0fb0571f7
--- /dev/null
+++ b/meta-oe/recipes-devtools/abseil-cpp/abseil-cpp/0001-Export-of-internal-Abseil-changes.patch
@@ -0,0 +1,82 @@
+From d3424201a73f29ab533121b1821a76e1b4313beb Mon Sep 17 00:00:00 2001
+From: Abseil Team <absl-team@...>
+Date: Mon, 3 May 2021 07:37:39 -0700
+Subject: [PATCH] Export of internal Abseil changes
+
+--
+cf88f9cf40eab54c06bca7f20795352ec23bb583 by Derek Mauro <dmauro@...>:
+
+Fixes build with latest glibc
+Fixes #952
+
+PiperOrigin-RevId: 371693908
+
+--
+99bcd0f4a747ce7a401e23c745adf34d0ec5131b by Samuel Benzaquen <sbenza@...>:
+
+Add support for std::string_view in StrFormat even when
+absl::string_view != std::string_view.
+
+PiperOrigin-RevId: 371693633
+
+--
+e35463572149a6c2d4a0d439b9300ce03fd6b96d by Abseil Team <absl-team@...>:
+
+Cmake builds should only install pkg-config when explicitly requested.
+
+PiperOrigin-RevId: 371403419
+GitOrigin-RevId: cf88f9cf40eab54c06bca7f20795352ec23bb583
+Change-Id: I4360a18c638a4d901ff44ab1e0a9d8f321c302ea
Patch missing "Upstream-Status" and "Signed-off-by"

- armin
+---
+ absl/debugging/failure_signal_handler.cc | 3 ++-
+ absl/strings/internal/str_format/arg.h | 8 ++++++++
+ absl/strings/internal/str_format/convert_test.cc | 3 +++
+ 3 files changed, 13 insertions(+), 1 deletion(-)
+
+diff --git a/absl/debugging/failure_signal_handler.cc b/absl/debugging/failure_signal_handler.cc
+index 5d13bdbb..2ed137b5 100644
+--- a/absl/debugging/failure_signal_handler.cc
++++ b/absl/debugging/failure_signal_handler.cc
+@@ -135,7 +135,8 @@ static bool SetupAlternateStackOnce() {
+ #else
+ const size_t page_mask = sysconf(_SC_PAGESIZE) - 1;
+ #endif
+- size_t stack_size = (std::max(SIGSTKSZ, 65536) + page_mask) & ~page_mask;
++ size_t stack_size =
++ (std::max<size_t>(SIGSTKSZ, 65536) + page_mask) & ~page_mask;
+ #if defined(ABSL_HAVE_ADDRESS_SANITIZER) || \
+ defined(ABSL_HAVE_MEMORY_SANITIZER) || defined(ABSL_HAVE_THREAD_SANITIZER)
+ // Account for sanitizer instrumentation requiring additional stack space.
+diff --git a/absl/strings/internal/str_format/arg.h b/absl/strings/internal/str_format/arg.h
+index 3dbc1526..f9d89d12 100644
+--- a/absl/strings/internal/str_format/arg.h
++++ b/absl/strings/internal/str_format/arg.h
+@@ -108,6 +108,14 @@ StringConvertResult FormatConvertImpl(const std::string& v,
+ StringConvertResult FormatConvertImpl(string_view v,
+ FormatConversionSpecImpl conv,
+ FormatSinkImpl* sink);
++#if defined(ABSL_HAVE_STD_STRING_VIEW) && !defined(ABSL_USES_STD_STRING_VIEW)
++inline StringConvertResult FormatConvertImpl(std::string_view v,
++ FormatConversionSpecImpl conv,
++ FormatSinkImpl* sink) {
++ return FormatConvertImpl(absl::string_view(v.data(), v.size()), conv, sink);
++}
++#endif // ABSL_HAVE_STD_STRING_VIEW && !ABSL_USES_STD_STRING_VIEW
++
+ ArgConvertResult<FormatConversionCharSetUnion(
+ FormatConversionCharSetInternal::s, FormatConversionCharSetInternal::p)>
+ FormatConvertImpl(const char* v, const FormatConversionSpecImpl conv,
+diff --git a/absl/strings/internal/str_format/convert_test.cc b/absl/strings/internal/str_format/convert_test.cc
+index 634ee78b..cc789530 100644
+--- a/absl/strings/internal/str_format/convert_test.cc
++++ b/absl/strings/internal/str_format/convert_test.cc
+@@ -215,6 +215,9 @@ TEST_F(FormatConvertTest, BasicString) {
+ TestStringConvert(static_cast<const char*>("hello"));
+ TestStringConvert(std::string("hello"));
+ TestStringConvert(string_view("hello"));
++#if defined(ABSL_HAVE_STD_STRING_VIEW)
++ TestStringConvert(std::string_view("hello"));
++#endif // ABSL_HAVE_STD_STRING_VIEW
+ }
+
+ TEST_F(FormatConvertTest, NullString) {
diff --git a/meta-oe/recipes-devtools/abseil-cpp/abseil-cpp_git.bb b/meta-oe/recipes-devtools/abseil-cpp/abseil-cpp_git.bb
index 569bb13993..a49fe672e8 100644
--- a/meta-oe/recipes-devtools/abseil-cpp/abseil-cpp_git.bb
+++ b/meta-oe/recipes-devtools/abseil-cpp/abseil-cpp_git.bb
@@ -14,6 +14,7 @@ SRC_URI = "git://github.com/abseil/abseil-cpp;branch=${BRANCH};protocol=https \
file://0001-absl-always-use-asm-sgidefs.h.patch \
file://0002-Remove-maes-option-from-cross-compilation.patch \
file://abseil-ppc-fixes.patch \
+ file://0001-Export-of-internal-Abseil-changes.patch \
"
S = "${WORKDIR}/git"


honister merge request : April 7th

Armin Kuster
 

The following changes since commit de18681d7dd27000c132bc68f9fa267e8f5a2348:

  python3-django: upgrade 3.2.10 -> 3.2.12 (2022-03-31 13:49:34 -0700)

are available in the Git repository at:

  https://git.openembedded.org/meta-openembedded honister-next

for you to fetch changes up to a19d1802b15fe07e9b1e7584ff9af7c33bfe642a:

  net-snmp: Avoid running `make clean` as it may fail (2022-04-07 16:42:55 -0700)

----------------------------------------------------------------
Martin Jansa (1):
      htop: switch branch from master to main

Peter Kjellerstedt (2):
      libsrtp: Switch branch from master to main
      net-snmp: Avoid running `make clean` as it may fail

Thomas Perrot (1):
      breakpad: fix branch for gtest in SRC_URI

Trevor Gamblin (1):
      python3-lxml: upgrade 4.6.3 -> 4.6.5

 meta-multimedia/recipes-support/libsrtp/libsrtp_2.3.0.bb | 2 +-
 meta-networking/recipes-protocols/net-snmp/net-snmp_5.9.1.bb | 1 +
 meta-oe/recipes-devtools/breakpad/breakpad_git.bb | 2 +-
 meta-oe/recipes-support/htop/htop_3.0.5.bb | 2 +-
 meta-python/recipes-devtools/python/{python3-lxml_4.6.3.bb => python3-lxml_4.6.5.bb} | 2 +-
 5 files changed, 5 insertions(+), 4 deletions(-)
 rename meta-python/recipes-devtools/python/{python3-lxml_4.6.3.bb => python3-lxml_4.6.5.bb} (95%)


Re: [meta-oe][ PATCH 1/2] grpc: add cmake support for target

Khem Raj
 

can you rebase it on top of latest master or master-next and resend, we now have grpc 1.45.1 in master.

On 4/7/22 7:44 AM, Stefan Herbrechtsmeier wrote:
From: Stefan Herbrechtsmeier <stefan.herbrechtsmeier@...>
The CMake gRPC config checks for binaries and fails if a binary (plugin)
is missing. Fix the problem in the code and add the CMake gRPC config
back to the target package.
Signed-off-by: Stefan Herbrechtsmeier <stefan.herbrechtsmeier@...>
---
...d-separate-export-for-plugin-targets.patch | 93 +++++++++++++++++++
meta-oe/recipes-devtools/grpc/grpc_1.45.0.bb | 3 +-
2 files changed, 94 insertions(+), 2 deletions(-)
create mode 100644 meta-oe/recipes-devtools/grpc/grpc/0001-cmake-add-separate-export-for-plugin-targets.patch
diff --git a/meta-oe/recipes-devtools/grpc/grpc/0001-cmake-add-separate-export-for-plugin-targets.patch b/meta-oe/recipes-devtools/grpc/grpc/0001-cmake-add-separate-export-for-plugin-targets.patch
new file mode 100644
index 000000000..679bd3882
--- /dev/null
+++ b/meta-oe/recipes-devtools/grpc/grpc/0001-cmake-add-separate-export-for-plugin-targets.patch
@@ -0,0 +1,93 @@
+From 3150cb043363e05588062dd392b940be25594713 Mon Sep 17 00:00:00 2001
+From: Stefan Herbrechtsmeier <stefan.herbrechtsmeier@...>
+Date: Tue, 18 Feb 2020 14:17:07 +0100
+Subject: [PATCH] cmake: add separate export for plugin targets
+
+Upstream-Status: Submitted [https://github.com/grpc/grpc/pull/29328]
+
+
+---
+ CMakeLists.txt | 18 +++++++++++-------
+ 1 file changed, 11 insertions(+), 7 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index efdaf8936d..6608b1b00c 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -10935,7 +10935,7 @@ target_link_libraries(grpc_cpp_plugin
+
+
+ if(gRPC_INSTALL)
+- install(TARGETS grpc_cpp_plugin EXPORT gRPCTargets
++ install(TARGETS grpc_cpp_plugin EXPORT gRPCPluginTargets
+ RUNTIME DESTINATION ${gRPC_INSTALL_BINDIR}
+ BUNDLE DESTINATION ${gRPC_INSTALL_BINDIR}
+ LIBRARY DESTINATION ${gRPC_INSTALL_LIBDIR}
+@@ -10975,7 +10975,7 @@ target_link_libraries(grpc_csharp_plugin
+
+
+ if(gRPC_INSTALL)
+- install(TARGETS grpc_csharp_plugin EXPORT gRPCTargets
++ install(TARGETS grpc_csharp_plugin EXPORT gRPCPluginTargets
+ RUNTIME DESTINATION ${gRPC_INSTALL_BINDIR}
+ BUNDLE DESTINATION ${gRPC_INSTALL_BINDIR}
+ LIBRARY DESTINATION ${gRPC_INSTALL_LIBDIR}
+@@ -11015,7 +11015,7 @@ target_link_libraries(grpc_node_plugin
+
+
+ if(gRPC_INSTALL)
+- install(TARGETS grpc_node_plugin EXPORT gRPCTargets
++ install(TARGETS grpc_node_plugin EXPORT gRPCPluginTargets
+ RUNTIME DESTINATION ${gRPC_INSTALL_BINDIR}
+ BUNDLE DESTINATION ${gRPC_INSTALL_BINDIR}
+ LIBRARY DESTINATION ${gRPC_INSTALL_LIBDIR}
+@@ -11055,7 +11055,7 @@ target_link_libraries(grpc_objective_c_plugin
+
+
+ if(gRPC_INSTALL)
+- install(TARGETS grpc_objective_c_plugin EXPORT gRPCTargets
++ install(TARGETS grpc_objective_c_plugin EXPORT gRPCPluginTargets
+ RUNTIME DESTINATION ${gRPC_INSTALL_BINDIR}
+ BUNDLE DESTINATION ${gRPC_INSTALL_BINDIR}
+ LIBRARY DESTINATION ${gRPC_INSTALL_LIBDIR}
+@@ -11095,7 +11095,7 @@ target_link_libraries(grpc_php_plugin
+
+
+ if(gRPC_INSTALL)
+- install(TARGETS grpc_php_plugin EXPORT gRPCTargets
++ install(TARGETS grpc_php_plugin EXPORT gRPCPluginTargets
+ RUNTIME DESTINATION ${gRPC_INSTALL_BINDIR}
+ BUNDLE DESTINATION ${gRPC_INSTALL_BINDIR}
+ LIBRARY DESTINATION ${gRPC_INSTALL_LIBDIR}
+@@ -11135,7 +11135,7 @@ target_link_libraries(grpc_python_plugin
+
+
+ if(gRPC_INSTALL)
+- install(TARGETS grpc_python_plugin EXPORT gRPCTargets
++ install(TARGETS grpc_python_plugin EXPORT gRPCPluginTargets
+ RUNTIME DESTINATION ${gRPC_INSTALL_BINDIR}
+ BUNDLE DESTINATION ${gRPC_INSTALL_BINDIR}
+ LIBRARY DESTINATION ${gRPC_INSTALL_LIBDIR}
+@@ -11175,7 +11175,7 @@ target_link_libraries(grpc_ruby_plugin
+
+
+ if(gRPC_INSTALL)
+- install(TARGETS grpc_ruby_plugin EXPORT gRPCTargets
++ install(TARGETS grpc_ruby_plugin EXPORT gRPCPluginTargets
+ RUNTIME DESTINATION ${gRPC_INSTALL_BINDIR}
+ BUNDLE DESTINATION ${gRPC_INSTALL_BINDIR}
+ LIBRARY DESTINATION ${gRPC_INSTALL_LIBDIR}
+@@ -17349,6 +17349,10 @@ if(gRPC_INSTALL)
+ DESTINATION ${gRPC_INSTALL_CMAKEDIR}
+ NAMESPACE gRPC::
+ )
++ install(EXPORT gRPCPluginTargets
++ DESTINATION ${gRPC_INSTALL_CMAKEDIR}
++ NAMESPACE gRPC::
++ )
+ endif()
+
+ include(CMakePackageConfigHelpers)
+--
+2.30.2
+
diff --git a/meta-oe/recipes-devtools/grpc/grpc_1.45.0.bb b/meta-oe/recipes-devtools/grpc/grpc_1.45.0.bb
index d25a01cf3..d50fd2727 100644
--- a/meta-oe/recipes-devtools/grpc/grpc_1.45.0.bb
+++ b/meta-oe/recipes-devtools/grpc/grpc_1.45.0.bb
@@ -24,6 +24,7 @@ SRCREV_grpc = "494b08ada4009ead0d0b70e44d354be72f9c283a"
BRANCH = "v1.45.x"
SRC_URI = "git://github.com/grpc/grpc.git;protocol=https;name=grpc;branch=${BRANCH} \
file://0001-Revert-Changed-GRPCPP_ABSEIL_SYNC-to-GPR_ABSEIL_SYNC.patch \
+ file://0001-cmake-add-separate-export-for-plugin-targets.patch \
"
# Fixes build with older compilers 4.8 especially on ubuntu 14.04
CXXFLAGS:append:class-native = " -Wl,--no-as-needed"
@@ -80,8 +81,6 @@ do_configure:prepend:toolchain-clang:x86() {
BBCLASSEXTEND = "native nativesdk"
-SYSROOT_DIRS_IGNORE:append:class-target = " ${baselib}/cmake/grpc"
-
FILES:${PN}-compiler += " \
${bindir} \
${libdir}/libgrpc_plugin_support${SOLIBS} \


Re: [meta-networking][PATCH 2/4] ot-daemon: add recipe for OpenThread daemon

Stefan Schmidt
 

Hello.

On 07.04.22 21:36, Khem Raj wrote:
On Thu, Apr 7, 2022 at 3:28 PM Stefan Schmidt <stefan@...> wrote:


Hello Khem.

On 05.04.22 20:08, Khem Raj wrote:


On Tue, Apr 5, 2022 at 4:39 AM Stefan Schmidt <stefan@...
<mailto:stefan@...>> wrote:


Hello Khem.

On 05.04.22 05:16, Khem Raj wrote:
> fails on x86_64/glibc see
>
https://autobuilder.yoctoproject.org/typhoon/#/builders/88/builds/1610
<https://autobuilder.yoctoproject.org/typhoon/#/builders/88/builds/1610>

Ah, its not x86_64/glibc (I tested this) but the fact that the
autobuilder uses poky and I tested here without DISTRO in
openembedded core.

Seems the code base it not happy about the gcc changes to warn on the
combination of _FORTIFY_SOURCE and non-optimized code:

error: #warning _FORTIFY_SOURCE requires compiling with optimization
(-O) [-Werror=cpp]


Hmm so you are not using security flags ?
You mean Oniro is not using them? Not sure I can follow you train of
thoughts here. :-)
poky defaults now a days include security_flags.inc which enables
fortify and other
good security stuff from compiler's point of view. So it seems your
distro is not inheriting
all the default distro policies was what I was trying to point at.
We actually included security_flags.inc from the very beginning. :-)
First in oniro-linux only and since March also in oniro-zephyr.

regards
Stefan Schmidt


Re: [meta-networking][PATCH 2/4] ot-daemon: add recipe for OpenThread daemon

Khem Raj
 

On Thu, Apr 7, 2022 at 3:28 PM Stefan Schmidt <stefan@...> wrote:


Hello Khem.

On 05.04.22 20:08, Khem Raj wrote:


On Tue, Apr 5, 2022 at 4:39 AM Stefan Schmidt <stefan@...
<mailto:stefan@...>> wrote:


Hello Khem.

On 05.04.22 05:16, Khem Raj wrote:
> fails on x86_64/glibc see
>
https://autobuilder.yoctoproject.org/typhoon/#/builders/88/builds/1610
<https://autobuilder.yoctoproject.org/typhoon/#/builders/88/builds/1610>

Ah, its not x86_64/glibc (I tested this) but the fact that the
autobuilder uses poky and I tested here without DISTRO in
openembedded core.

Seems the code base it not happy about the gcc changes to warn on the
combination of _FORTIFY_SOURCE and non-optimized code:

error: #warning _FORTIFY_SOURCE requires compiling with optimization
(-O) [-Werror=cpp]


Hmm so you are not using security flags ?
You mean Oniro is not using them? Not sure I can follow you train of
thoughts here. :-)
poky defaults now a days include security_flags.inc which enables
fortify and other
good security stuff from compiler's point of view. So it seems your
distro is not inheriting
all the default distro policies was what I was trying to point at.


That’s not good :) you should inherit good defaults
The problem above was from the autobuilder error you pointed me to,
building with Poky not Oniro.

-O2 -D_FORTIFY_SOURCE=2 itself works on the upstream code base, but it
needs optimization enabled (as the error message states). No idea why
that went wrong on the autobuilder.
-O2 is also poky default via SELECTED_OPTIMIZATION. So unless recipe is doing
something exotic to ignore these flags then it might happen because
SECURITY_FLAGS
are passed via CC not CFLAGS unlike SELECTED_OPTIMIZATION which is passed via
CFLAGS.


regards
Stefan Schmidt


Re: [meta-networking][PATCH] drbd-utils: update 9.13.1 -> 9.20.2

Khem Raj
 

fails with clang
https://errors.yoctoproject.org/Errors/Details/654033/

Perhaps we need to pass -Wno-error to silence this warning.

On Wed, Apr 6, 2022 at 12:36 PM Sakib Sajal <sakib.sajal@...> wrote:

Dropped patch which is merged upstream:
0001-v84-Make-setup_options-definitions-as-extern.patch

Refreshed patch:
0001-drbd-utils-support-usrmerge.patch

The compiled binaries are not linked to LDFLAGS options provided
by the build system cause QA issue:
do_package_qa: QA Issue: File /usr/sbin/drbdmon in package
drbd-utils doesn't have GNU_HASH (didn't pass LDFLAGS?)
Add LDFLAGS when linking drmdmon binary.

Signed-off-by: Sakib Sajal <sakib.sajal@...>
---
.../0001-drbd-utils-support-usrmerge.patch | 39 +++++++++++--------
...001-drbdmon-add-LDFLAGS-when-linking.patch | 26 +++++++++++++
...-setup_options-definitions-as-extern.patch | 32 ---------------
...d-utils_9.13.1.bb => drbd-utils_9.20.2.bb} | 13 +++++--
4 files changed, 58 insertions(+), 52 deletions(-)
create mode 100644 meta-networking/recipes-support/drbd/drbd-utils/0001-drbdmon-add-LDFLAGS-when-linking.patch
delete mode 100644 meta-networking/recipes-support/drbd/drbd-utils/0001-v84-Make-setup_options-definitions-as-extern.patch
rename meta-networking/recipes-support/drbd/{drbd-utils_9.13.1.bb => drbd-utils_9.20.2.bb} (85%)

diff --git a/meta-networking/recipes-support/drbd/drbd-utils/0001-drbd-utils-support-usrmerge.patch b/meta-networking/recipes-support/drbd/drbd-utils/0001-drbd-utils-support-usrmerge.patch
index 5e128727d..d976680e3 100644
--- a/meta-networking/recipes-support/drbd/drbd-utils/0001-drbd-utils-support-usrmerge.patch
+++ b/meta-networking/recipes-support/drbd/drbd-utils/0001-drbd-utils-support-usrmerge.patch
@@ -1,4 +1,4 @@
-From 642b5823abeee27a0fdc2d12d0e1235461ace9ed Mon Sep 17 00:00:00 2001
+From 83764f5d57b3370e0b04a70f814ca49237a66eea Mon Sep 17 00:00:00 2001
From: Changqing Li <changqing.li@...>
Date: Thu, 5 Sep 2019 18:57:39 +0800
Subject: [PATCH] drbd-utils: support usrmerge
@@ -6,18 +6,19 @@ Subject: [PATCH] drbd-utils: support usrmerge
Upstream-Status: Inappropriate[oe-specific]

Signed-off-by: Changqing Li <changqing.li@...>
+Signed-off-by: Sakib Sajal <sakib.sajal@...>
---
configure.ac | 2 +-
- scripts/Makefile.in | 4 ++--
+ scripts/Makefile.in | 10 +++++-----
user/v83/Makefile.in | 14 +++++++-------
user/v84/Makefile.in | 14 +++++++-------
- 4 files changed, 17 insertions(+), 17 deletions(-)
+ 4 files changed, 20 insertions(+), 20 deletions(-)

diff --git a/configure.ac b/configure.ac
-index 4df1b4d..c4ef1bc 100644
+index ae575586..3d7deeae 100644
--- a/configure.ac
+++ b/configure.ac
-@@ -176,7 +176,7 @@ AC_ARG_WITH(tmpfilesdir,
+@@ -180,7 +180,7 @@ AC_ARG_WITH(tmpfilesdir,
AC_SUBST(tmpfilesdir)

# set default early
@@ -27,22 +28,28 @@ index 4df1b4d..c4ef1bc 100644
test x"$with_udev" = xyes ; then
if test x"$PKG_CONFIG" != x; then
diff --git a/scripts/Makefile.in b/scripts/Makefile.in
-index fbb0beb..da701a1 100644
+index fcd298e9..2521fb08 100644
--- a/scripts/Makefile.in
+++ b/scripts/Makefile.in
-@@ -75,8 +75,8 @@ endif
- ifeq ($(subst both,systemd,$(initscripttype)),systemd)
+@@ -88,11 +88,11 @@ ifeq ($(subst both,systemd,$(initscripttype)),systemd)
install -d $(DESTDIR)$(systemdunitdir)
install -m 644 drbd.service $(DESTDIR)$(systemdunitdir)/
-- install -d $(DESTDIR)/lib/drbd/
-- install -m 755 drbd $(DESTDIR)/lib/drbd/
-+ install -d $(DESTDIR)/${nonarch_libdir}/drbd
-+ install -m 755 drbd $(DESTDIR)/${nonarch_libdir}/drbd
+ install -m 644 $(SYSTEMD_TEMPLATES) $(DESTDIR)$(systemdunitdir)/
+- install -d $(DESTDIR)/lib/drbd/scripts
+- install -m 755 drbd $(DESTDIR)/lib/drbd/scripts
+- install -m 755 drbd-service-shim.sh $(DESTDIR)/lib/drbd/scripts
+- install -m 755 drbd-wait-promotable.sh $(DESTDIR)/lib/drbd/scripts
+- install -m 755 ocf.ra.wrapper.sh $(DESTDIR)/lib/drbd/scripts
++ install -d $(DESTDIR)/${nonarch_libdir}/drbdscripts
++ install -m 755 drbd $(DESTDIR)/${nonarch_libdir}/drbdscripts
++ install -m 755 drbd-service-shim.sh $(DESTDIR)/${nonarch_libdir}/drbdscripts
++ install -m 755 drbd-wait-promotable.sh $(DESTDIR)/${nonarch_libdir}/drbdscripts
++ install -m 755 ocf.ra.wrapper.sh $(DESTDIR)/${nonarch_libdir}/drbdscripts
install -d $(DESTDIR)$(tmpfilesdir)/
install -m 444 drbd.tmpfiles.conf $(DESTDIR)$(tmpfilesdir)/drbd.conf
endif
diff --git a/user/v83/Makefile.in b/user/v83/Makefile.in
-index 27516de..b301376 100644
+index 08cfe574..4c4971b6 100644
--- a/user/v83/Makefile.in
+++ b/user/v83/Makefile.in
@@ -96,19 +96,19 @@ install:
@@ -73,10 +80,10 @@ index 27516de..b301376 100644
.PHONY: install uninstall clean distclean
../../configure:
diff --git a/user/v84/Makefile.in b/user/v84/Makefile.in
-index 38977c6..05ef060 100644
+index 0fcefc5f..81f7d5ec 100644
--- a/user/v84/Makefile.in
+++ b/user/v84/Makefile.in
-@@ -109,19 +109,19 @@ ifeq ($(WITH_84_SUPPORT),yes)
+@@ -110,19 +110,19 @@ ifeq ($(WITH_84_SUPPORT),yes)
install -d $(DESTDIR)$(localstatedir)/lib/drbd
install -d $(DESTDIR)$(localstatedir)/run/drbd
install -d $(DESTDIR)$(localstatedir)/lock
@@ -104,5 +111,5 @@ index 38977c6..05ef060 100644
spell:
for f in drbdadm_adjust.c drbdadm_main.c drbdadm_parser.c drbdadm_usage_cnt.c drbdsetup.c drbdtool_common.c; do \
--
-2.7.4
+2.33.0

diff --git a/meta-networking/recipes-support/drbd/drbd-utils/0001-drbdmon-add-LDFLAGS-when-linking.patch b/meta-networking/recipes-support/drbd/drbd-utils/0001-drbdmon-add-LDFLAGS-when-linking.patch
new file mode 100644
index 000000000..bdc173fa9
--- /dev/null
+++ b/meta-networking/recipes-support/drbd/drbd-utils/0001-drbdmon-add-LDFLAGS-when-linking.patch
@@ -0,0 +1,26 @@
+From a61b9ff2d2cb7387a5cd347b2201535ee45a46ee Mon Sep 17 00:00:00 2001
+From: Sakib Sajal <sakib.sajal@...>
+Date: Thu, 31 Mar 2022 15:09:58 -0400
+Subject: [PATCH] drbdmon: add LDFLAGS when linking
+
+Signed-off-by: Sakib Sajal <sakib.sajal@...>
+---
+ user/drbdmon/Makefile.in | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/user/drbdmon/Makefile.in b/user/drbdmon/Makefile.in
+index e07eb772..17166098 100644
+--- a/user/drbdmon/Makefile.in
++++ b/user/drbdmon/Makefile.in
+@@ -51,7 +51,7 @@ $(dsaext-obj): $(basename $(dsaext-obj)).cpp $(basename $(dsaext-obj)).h
+ $(integerparse-obj): $(basename $(integerparse-obj)).cpp $(basename $(integerparse-obj)).h
+
+ drbdmon: $(ls-obj)
+- $(CXX) -o $@ $(CPPFLAGS) $(CXXFLAGS) $^ $(LIBS)
++ $(CXX) -o $@ $(CPPFLAGS) $(CXXFLAGS) $(LDFLAGS) $^ $(LIBS)
+
+ # do not try to rebuild Makefile itself
+ Makefile: ;
+--
+2.33.0
+
diff --git a/meta-networking/recipes-support/drbd/drbd-utils/0001-v84-Make-setup_options-definitions-as-extern.patch b/meta-networking/recipes-support/drbd/drbd-utils/0001-v84-Make-setup_options-definitions-as-extern.patch
deleted file mode 100644
index 6702f3bde..000000000
--- a/meta-networking/recipes-support/drbd/drbd-utils/0001-v84-Make-setup_options-definitions-as-extern.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-From d095caf6f8f77fe056fb90ccd5d89c207a7f346d Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@...>
-Date: Wed, 12 Aug 2020 12:59:38 -0700
-Subject: [PATCH] v84: Make setup_options definitions as extern
-
-This is already defined in drbdadm_main.c, therefore make this
-declaration to be extern for other modules
-
-Fixes compatibility with gcc-10 which uses -fno-common by default
-
-Upstream-Status: Submitted [https://github.com/LINBIT/drbd-utils/pull/7]
-Signed-off-by: Khem Raj <raj.khem@...>
----
- user/v84/drbdadm.h | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/user/v84/drbdadm.h b/user/v84/drbdadm.h
-index ed63d78c..8469f1c4 100644
---- a/user/v84/drbdadm.h
-+++ b/user/v84/drbdadm.h
-@@ -251,7 +251,7 @@ struct setup_option {
- bool explicit;
- char *option;
- };
--struct setup_option *setup_options;
-+extern struct setup_option *setup_options;
-
- extern void add_setup_option(bool explicit, char *option);
-
---
-2.28.0
-
diff --git a/meta-networking/recipes-support/drbd/drbd-utils_9.13.1.bb b/meta-networking/recipes-support/drbd/drbd-utils_9.20.2.bb
similarity index 85%
rename from meta-networking/recipes-support/drbd/drbd-utils_9.13.1.bb
rename to meta-networking/recipes-support/drbd/drbd-utils_9.20.2.bb
index a246464b2..d9cd94c04 100644
--- a/meta-networking/recipes-support/drbd/drbd-utils_9.13.1.bb
+++ b/meta-networking/recipes-support/drbd/drbd-utils_9.20.2.bb
@@ -10,11 +10,11 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=5574c6965ae5f583e55880e397fbb018"

SRC_URI = "git://github.com/LINBIT/drbd-utils;name=drbd-utils;branch=${PV};protocol=https \
git://github.com/LINBIT/drbd-headers;name=drbd-headers;destsuffix=git/drbd-headers;branch=master;protocol=https \
- file://0001-v84-Make-setup_options-definitions-as-extern.patch \
${@bb.utils.contains('DISTRO_FEATURES','usrmerge','file://0001-drbd-utils-support-usrmerge.patch','',d)} \
+ file://0001-drbdmon-add-LDFLAGS-when-linking.patch \
"
-SRCREV_drbd-utils = "b24b0f7e42d500d3538d7eeffa017ec78d08f918"
-SRCREV_drbd-headers = "c757cf357edef67751b8f45a6ea894d287180087"
+SRCREV_drbd-utils = "087ee6b4961ca154d76e4211223b03149373bed8"
+SRCREV_drbd-headers = "f1529aa84e9d2f66c96ad283a1bbb708aabf03f7"

SRCREV_FORMAT = "drbd-utils_drbd-headers"

@@ -40,6 +40,8 @@ EXTRA_OECONF = " \
--without-manual \
"

+CXXFLAGS:append:toolchain-clang = " -Wno-error"
+
# If we have inherited reproducible_build, we want to use it.
export WANT_DRBD_REPRODUCIBLE_BUILD = "yes"

@@ -56,7 +58,10 @@ RDEPENDS:${PN} += "bash perl-module-getopt-long perl-module-exporter perl-module
FILES:${PN} += "/run"
FILES:${PN} += "${nonarch_base_libdir}/drbd \
${nonarch_libdir}/drbd \
- ${nonarch_libdir}/tmpfiles.d"
+ ${nonarch_libdir}/tmpfiles.d \
+ ${nonarch_libdir}/drbdscripts/* \
+ ${systemd_unitdir}/system/* \
+"
FILES:${PN}-dbg += "${nonarch_base_libdir}/drbd/.debug"

CLEANBROKEN = "1"
--
2.33.0




Re: [meta-networking][PATCH 2/4] ot-daemon: add recipe for OpenThread daemon

Stefan Schmidt
 

Hello Khem.

On 05.04.22 20:08, Khem Raj wrote:
On Tue, Apr 5, 2022 at 4:39 AM Stefan Schmidt <stefan@... <mailto:stefan@...>> wrote:
Hello Khem.
On 05.04.22 05:16, Khem Raj wrote:
> fails on x86_64/glibc see
>
https://autobuilder.yoctoproject.org/typhoon/#/builders/88/builds/1610
<https://autobuilder.yoctoproject.org/typhoon/#/builders/88/builds/1610>
Ah, its not x86_64/glibc (I tested this) but the fact that the
autobuilder uses poky and I tested here without DISTRO in
openembedded core.
Seems the code base it not happy about the gcc changes to warn on the
combination of _FORTIFY_SOURCE and non-optimized code:
error: #warning _FORTIFY_SOURCE requires compiling with optimization
(-O) [-Werror=cpp]
Hmm so you are not using security flags ?
You mean Oniro is not using them? Not sure I can follow you train of thoughts here. :-)

That’s not good :) you should inherit good defaults
The problem above was from the autobuilder error you pointed me to, building with Poky not Oniro.

-O2 -D_FORTIFY_SOURCE=2 itself works on the upstream code base, but it needs optimization enabled (as the error message states). No idea why that went wrong on the autobuilder.

regards
Stefan Schmidt


[meta-networking][PATCH v3 4/4] MAINTAINERS: add entry for OpenThread

Stefan Schmidt
 

From: Stefan Schmidt <stefan.schmidt@...>

No need to put the pressure of this also on Khem. I am actively working
on this for Oniro and will support this work also upstream here.

Signed-off-by: Stefan Schmidt <stefan.schmidt@...>
---
meta-networking/MAINTAINERS | 4 ++++
1 file changed, 4 insertions(+)

diff --git a/meta-networking/MAINTAINERS b/meta-networking/MAINTAINERS
index 77e90668c..ce53ec471 100644
--- a/meta-networking/MAINTAINERS
+++ b/meta-networking/MAINTAINERS
@@ -37,3 +37,7 @@ F: recipes-*
NETKIT
M: Armin Kuster <akuster808@...>
F: recipes-netkit
+
+OPENTHREAD
+M: Stefan Schmidt <stefan@...>
+F: recipes-connectivity/openthread/
--=20
2.35.1


[meta-networking][PATCH v3 2/4] ot-daemon: add recipe for OpenThread daemon

Stefan Schmidt
 

From: Stefan Schmidt <stefan.schmidt@...>

The OpenThread daemon allows Linuxes devices to participate in a Thread
mesh network without acting as a full border router. The device
participates like any other child or router devices within the network.

This same repo is used for range of different modes to run the
OpenThread code. From bare metal over vendor SDKs to posix platforms.
For this recipe the focus is on the Linux posix implementation and we do
not pull in all the git submodules on purpose.

There are openthread enabled recipes in meta-zephyr for people who want
to also use OpenThread on MCU based platforms on top of Zephyr.

Signed-off-by: Stefan Schmidt <stefan.schmidt@...>
---
.../openthread/ot-daemon_git.bb | 27 +++++++++++++++++++
1 file changed, 27 insertions(+)
create mode 100644 meta-networking/recipes-connectivity/openthread/ot-da=
emon_git.bb

diff --git a/meta-networking/recipes-connectivity/openthread/ot-daemon_gi=
t.bb b/meta-networking/recipes-connectivity/openthread/ot-daemon_git.bb
new file mode 100644
index 000000000..f3f4c70fa
--- /dev/null
+++ b/meta-networking/recipes-connectivity/openthread/ot-daemon_git.bb
@@ -0,0 +1,27 @@
+# SPDX-FileCopyrightText: Huawei Inc.
+#
+# SPDX-License-Identifier: Apache-2.0
+SUMMARY =3D "OpenThread Daemon is an OpenThread POSIX build mode that ru=
ns OpenThread as a service."
+SECTION =3D "net"
+LICENSE =3D "BSD-3-Clause & Apache-2.0"
+LIC_FILES_CHKSUM =3D "file://LICENSE;md5=3D543b6fe90ec5901a683320a36390c=
65f \
+ file://third_party/mbedtls/repo/LICENSE;md5=3D3b83ef=
96387f14655fc854ddc3c6bd57 \
+ "
+DEPENDS =3D "readline"
+SRCREV =3D "7dfde1f12923f03c9680be4d838b94b7a2320324"
+PV =3D "0.1+git${SRCPV}"
+
+SRC_URI =3D "git://github.com/openthread/openthread.git;protocol=3Dhttps=
;branch=3Dmain \
+ "
+
+S =3D "${WORKDIR}/git"
+
+inherit cmake
+
+EXTRA_OECMAKE =3D "-DOT_DAEMON=3DON \
+ -DOT_SPINEL_RESET_CONNECTION=3DON \
+ -DOT_THREAD_VERSION=3D1.2 \
+ -DOT_COVERAGE=3DOFF \
+ -DOT_PLATFORM=3Dposix \
+ -DCMAKE_BUILD_TYPE=3DRelease \
+ "
--=20
2.35.1


[meta-networking][PATCH v3 3/4] wpantund: add new recipe

Stefan Schmidt
 

From: Stefan Schmidt <stefan.schmidt@...>

Wpantund is part of the OpenThread project. It is used in a scenario
where the Thread radio operates as a network co-processor (NCP) that is
connected over SPI/UART/USB to the host.

The project itself is in maintenance-only mode right now as the NCP
architecture has been replaced with radio co-processor (RCP) which is
implemented directly in openthread and ot-br-posix. None the less there
might still be project and products out there using it.

Signed-off-by: Stefan Schmidt <stefan.schmidt@...>
---
v3:
- Add additional CVE to ignore list that has a fix in the un-released git
version

.../openthread/wpantund_git.bb | 32 +++++++++++++++++++
1 file changed, 32 insertions(+)
create mode 100644 meta-networking/recipes-connectivity/openthread/wpant=
und_git.bb

diff --git a/meta-networking/recipes-connectivity/openthread/wpantund_git=
.bb b/meta-networking/recipes-connectivity/openthread/wpantund_git.bb
new file mode 100644
index 000000000..bb444d04f
--- /dev/null
+++ b/meta-networking/recipes-connectivity/openthread/wpantund_git.bb
@@ -0,0 +1,32 @@
+# SPDX-FileCopyrightText: Huawei Inc.
+#
+# SPDX-License-Identifier: Apache-2.0
+SUMMARY =3D "wpantund, Userspace WPAN Network Daemon"
+SECTION =3D "net"
+LICENSE =3D "Apache-2.0 & MIT & BSL-1.0 & BSD-3-Clause"
+LIC_FILES_CHKSUM =3D "file://LICENSE;md5=3De7820bc7f7d1638a6b54fc2e8d7fb=
103 \
+ file://third_party/assert-macros/LICENSE;md5=3Dcbf35=
ecdc8161026afe4da2906fab204 \
+ file://third_party/boost/LICENSE;md5=3De4224ccaecb14=
d942c71d31bef20d78c \
+ file://third_party/fgetln/LICENSE;md5=3D389e03d2254e=
cad45d0d9bbdefef7129 \
+ file://third_party/openthread/LICENSE;md5=3D543b6fe9=
0ec5901a683320a36390c65f \
+ file://third_party/pt/LICENSE;md5=3Ddcd598b69cad786b=
eea33da7b1ae14b7 \
+ "
+DEPENDS =3D "autoconf-archive dbus readline"
+SRCREV =3D "0fb1f57e4224e2df3e630e146702bfcf63fbf07a"
+PV =3D "0.07.01+git${SRCPV}"
+
+SRC_URI =3D "gitsm://github.com/openthread/wpantund.git;protocol=3Dhttps=
;branch=3Dmaster \
+ "
+
+S =3D "${WORKDIR}/git"
+
+inherit pkgconfig perlnative autotools
+
+# CVE-2020-8916 has been fixed in commit
+# 3f108441e23e033b936e85be5b6877dd0a1fbf1c which is included in the SRCR=
EV
+# CVE-2021-33889 has been fixed in commit
+# a8f3f761f6753b567d1e5ad22cbe6b0ceb6f2649 which is included in the SRCR=
EV
+# There has not been a wpantund release as of yet that includes these fi=
xes.
+# That means cve-check can not match them. Once a new release comes we c=
an
+# remove the ignore statement.
+CVE_CHECK_IGNORE =3D "CVE-2020-8916 CVE-2021-33889"
--=20
2.35.1


[meta-networking][PATCH v3 1/4] ot-br-posix: add recipe for an OpenThread Border Router

Stefan Schmidt
 

From: Stefan Schmidt <stefan.schmidt@...>

The OpenThread project is an open source implementation of the Thread
low-power mesh network protocol. In a Thread network devices can have
different roles, and of of these roles is a Border Router that allows a
Thread network to be connected with other IP networks.

Ot-br-posix runs as a systemd service on a standard Linux system to
handle the connection to a Thread network.

In terms of patches we need a fix to allow building on musl + clang
(CMSG_NXTHDR macro triggers a -Wsign-compare warning) and a systemd
unit file change is OE specific and avoids having service dependencies
implemented as pre exec hooks.

Signed-off-by: Stefan Schmidt <stefan.schmidt@...>
---
v3:
- Dropped the musl include fixed which was merged upstream and we bumped =
the
version
- Version bump also fixed a C++ deprecated-copy error I saw
- Included new patch to fix CMSG_NXTHDR macro usage on musl+clang

...ce.in-remove-pre-exec-hook-for-mdns-.patch | 35 +++++
.../Turn-off-sign-compare-for-musl-libc.patch | 131 ++++++++++++++++++
.../openthread/ot-br-posix_git.bb | 59 ++++++++
3 files changed, 225 insertions(+)
create mode 100644 meta-networking/recipes-connectivity/openthread/ot-br=
-posix/0001-otbr-agent.service.in-remove-pre-exec-hook-for-mdns-.patch
create mode 100644 meta-networking/recipes-connectivity/openthread/ot-br=
-posix/Turn-off-sign-compare-for-musl-libc.patch
create mode 100644 meta-networking/recipes-connectivity/openthread/ot-br=
-posix_git.bb

diff --git a/meta-networking/recipes-connectivity/openthread/ot-br-posix/=
0001-otbr-agent.service.in-remove-pre-exec-hook-for-mdns-.patch b/meta-ne=
tworking/recipes-connectivity/openthread/ot-br-posix/0001-otbr-agent.serv=
ice.in-remove-pre-exec-hook-for-mdns-.patch
new file mode 100644
index 000000000..250de4bdd
--- /dev/null
+++ b/meta-networking/recipes-connectivity/openthread/ot-br-posix/0001-ot=
br-agent.service.in-remove-pre-exec-hook-for-mdns-.patch
@@ -0,0 +1,35 @@
+From ed60d4605b81c43b9ba9504a37835109c247c6f8 Mon Sep 17 00:00:00 2001
+From: Stefan Schmidt <stefan.schmidt@...>
+Date: Fri, 1 Apr 2022 21:46:03 +0200
+Subject: [PATCH] otbr-agent.service.in: remove pre exec hook for mdns se=
rvice
+
+It uses the service command which is not available in all cases under
+Yocto/OE. The upstream project uses this mainly with Ubuntu and Raspian
+as testbeds.
+
+In our case we simply ensure that avahi-daemon is installed on the
+system inside the recipe.
+
+Upstream-Status: Inappropriate [OE specific]
+
+Signed-off-by: Stefan Schmidt <stefan.schmidt@...>
+---
+ src/agent/otbr-agent.service.in | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/agent/otbr-agent.service.in b/src/agent/otbr-agent.serv=
ice.in
+index 8314121347..4c97869def 100644
+--- a/src/agent/otbr-agent.service.in
++++ b/src/agent/otbr-agent.service.in
+@@ -6,7 +6,7 @@ After=3Ddbus.socket
+=20
+ [Service]
+ EnvironmentFile=3D-@CMAKE_INSTALL_FULL_SYSCONFDIR@/default/otbr-agent
+-@EXEC_START_PRE@ExecStart=3D@CMAKE_INSTALL_FULL_SBINDIR@/otbr-agent $OT=
BR_AGENT_OPTS
++ExecStart=3D@CMAKE_INSTALL_FULL_SBINDIR@/otbr-agent $OTBR_AGENT_OPTS
+ KillMode=3Dmixed
+ Restart=3Don-failure
+ RestartSec=3D5
+--=20
+2.35.1
+
diff --git a/meta-networking/recipes-connectivity/openthread/ot-br-posix/=
Turn-off-sign-compare-for-musl-libc.patch b/meta-networking/recipes-conne=
ctivity/openthread/ot-br-posix/Turn-off-sign-compare-for-musl-libc.patch
new file mode 100644
index 000000000..df84550be
--- /dev/null
+++ b/meta-networking/recipes-connectivity/openthread/ot-br-posix/Turn-of=
f-sign-compare-for-musl-libc.patch
@@ -0,0 +1,131 @@
+From: Stefan Schmidt <stefan.schmidt@...>
+Subject: Turn off sign compare for musl libc
+
+When building with musl and clang the usage of CMSG_NXTHDR results in
+sign-compare error. Disable the check only in this specific part of the
+code with a #pragma.
+
+| /home/stefan/huawei/yocto-upstream/yoe/workspace/sources/ot-br-posix/t=
hird_party/openthread/repo/src/posix/platform/udp.cpp:147:28: fatal error=
: comparison of integers of different signs: 'unsigned long' and 'long' [=
-Wsign-compare]
+| cmsg =3D CMSG_NXTHDR(&msg, cmsg);
+| ^~~~~~~~~~~~~~~~~~~~~~~
+| /home/stefan/huawei/yocto-upstream/yoe/build/tmp/work/cortexa57-yoe-li=
nux-musl/ot-br-posix/0.3.0+git999-r0/recipe-sysroot/usr/include/sys/socke=
t.h:358:44: note: expanded from macro 'CMSG_NXTHDR'
+| __CMSG_LEN(cmsg) + sizeof(struct cmsghdr) >=3D __MHDR_END(mhdr=
) - (unsigned char *)(cmsg) \
+| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~=
~~~~~~~~~~~~~~~~~~~~~~~~~
+| 1 error generated.
+
+Idea and fix taken from
+recipes-devtools/breakpad/breakpad/0001-Turn-off-sign-compare-for-musl-l=
ibc.patch
+by Khem Raj.
+
+Upstream-Status: Inappropriate [OE specific]
+
+Signed-off-by: Stefan Schmidt <stefan.schmidt@...>
+
+diff --git a/src/backbone_router/nd_proxy.cpp b/src/backbone_router/nd_p=
roxy.cpp
+index 7136878c3d..8a223c95c7 100644
+--- a/src/backbone_router/nd_proxy.cpp
++++ b/src/backbone_router/nd_proxy.cpp
+@@ -185,9 +185,18 @@ void NdProxyManager::ProcessMulticastNeighborSolici=
tion()
+ VerifyOrExit(icmp6header->icmp6_type =3D=3D ND_NEIGHBOR_SOLICIT=
, error =3D OTBR_ERROR_PARSE);
+=20
+ otbrLogDebug("NdProxyManager: Received ND-NS from %s", src.ToSt=
ring().c_str());
+-
++#ifndef __GLIBC__
++ // In musl-libc, CMSG_NXTHDR typecasts char* to cmsghdr* which causes
++ // clang to throw sign-compare warning. This is to suppress the warni=
ng
++ // inline.
++ #pragma clang diagnostic push
++ #pragma clang diagnostic ignored "-Wsign-compare"
++#endif
+ for (cmsghdr =3D CMSG_FIRSTHDR(&msghdr); cmsghdr; cmsghdr =3D C=
MSG_NXTHDR(&msghdr, cmsghdr))
+- {
++#ifndef __GLIBC__
++ #pragma clang diagnostic pop
++#endif
++ {
+ if (cmsghdr->cmsg_level !=3D IPPROTO_IPV6)
+ {
+ continue;
+Submodule third_party/openthread/repo contains modified content
+diff --git a/third_party/openthread/repo/src/posix/platform/infra_if.cpp=
b/third_party/openthread/repo/src/posix/platform/infra_if.cpp
+index 9f93d2b1c..1ed40fe50 100644
+--- a/third_party/openthread/repo/src/posix/platform/infra_if.cpp
++++ b/third_party/openthread/repo/src/posix/platform/infra_if.cpp
+@@ -228,7 +228,17 @@ otError InfraNetif::SendIcmp6Nd(uint32_t =
aInfraIfIndex,
+ packetInfo->ipi6_ifindex =3D mInfraIfIndex;
+=20
+ // Per section 6.1.2 of RFC 4861, we need to send the ICMPv6 messag=
e with IP Hop Limit 255.
++#ifndef __GLIBC__
++ // In musl-libc, CMSG_NXTHDR typecasts char* to cmsghdr* which causes
++ // clang to throw sign-compare warning. This is to suppress the warni=
ng
++ // inline.
++ #pragma clang diagnostic push
++ #pragma clang diagnostic ignored "-Wsign-compare"
++#endif
+ cmsgPointer =3D CMSG_NXTHDR(&msgHeader, cmsgPointer);
++#ifndef __GLIBC__
++ #pragma clang diagnostic pop
++#endif
+ cmsgPointer->cmsg_level =3D IPPROTO_IPV6;
+ cmsgPointer->cmsg_type =3D IPV6_HOPLIMIT;
+ cmsgPointer->cmsg_len =3D CMSG_LEN(sizeof(hopLimit));
+@@ -481,7 +491,17 @@ void InfraNetif::ReceiveIcmp6Message(void)
+=20
+ bufferLength =3D static_cast<uint16_t>(rval);
+=20
++#ifndef __GLIBC__
++ // In musl-libc, CMSG_NXTHDR typecasts char* to cmsghdr* which causes
++ // clang to throw sign-compare warning. This is to suppress the warni=
ng
++ // inline.
++ #pragma clang diagnostic push
++ #pragma clang diagnostic ignored "-Wsign-compare"
++#endif
+ for (cmh =3D CMSG_FIRSTHDR(&msg); cmh; cmh =3D CMSG_NXTHDR(&msg, cm=
h))
++#ifndef __GLIBC__
++ #pragma clang diagnostic pop
++#endif
+ {
+ if (cmh->cmsg_level =3D=3D IPPROTO_IPV6 && cmh->cmsg_type =3D=3D=
IPV6_PKTINFO &&
+ cmh->cmsg_len =3D=3D CMSG_LEN(sizeof(struct in6_pktinfo)))
+diff --git a/third_party/openthread/repo/src/posix/platform/udp.cpp b/th=
ird_party/openthread/repo/src/posix/platform/udp.cpp
+index b7aacc5fa..a814fea70 100644
+--- a/third_party/openthread/repo/src/posix/platform/udp.cpp
++++ b/third_party/openthread/repo/src/posix/platform/udp.cpp
+@@ -144,8 +144,18 @@ otError transmitPacket(int aFd, uint8_t *aPayload, =
uint16_t aLength, const otMes
+ {
+ struct in6_pktinfo pktinfo;
+=20
++#ifndef __GLIBC__
++ // In musl-libc, CMSG_NXTHDR typecasts char* to cmsghdr* which causes
++ // clang to throw sign-compare warning. This is to suppress the warni=
ng
++ // inline.
++ #pragma clang diagnostic push
++ #pragma clang diagnostic ignored "-Wsign-compare"
++#endif
+ cmsg =3D CMSG_NXTHDR(&msg, cmsg);
+- cmsg->cmsg_level =3D IPPROTO_IPV6;
++#ifndef __GLIBC__
++ #pragma clang diagnostic pop
++#endif
++ cmsg->cmsg_level =3D IPPROTO_IPV6;
+ cmsg->cmsg_type =3D IPV6_PKTINFO;
+ cmsg->cmsg_len =3D CMSG_LEN(sizeof(pktinfo));
+=20
+@@ -200,7 +210,17 @@ otError receivePacket(int aFd, uint8_t *aPayload, u=
int16_t &aLength, otMessageIn
+ VerifyOrExit(rval > 0, perror("recvmsg"));
+ aLength =3D static_cast<uint16_t>(rval);
+=20
++#ifndef __GLIBC__
++ // In musl-libc, CMSG_NXTHDR typecasts char* to cmsghdr* which causes
++ // clang to throw sign-compare warning. This is to suppress the warni=
ng
++ // inline.
++ #pragma clang diagnostic push
++ #pragma clang diagnostic ignored "-Wsign-compare"
++#endif
+ for (struct cmsghdr *cmsg =3D CMSG_FIRSTHDR(&msg); cmsg !=3D nullpt=
r; cmsg =3D CMSG_NXTHDR(&msg, cmsg))
++#ifndef __GLIBC__
++ #pragma clang diagnostic pop
++#endif
+ {
+ if (cmsg->cmsg_level =3D=3D IPPROTO_IPV6)
+ {
diff --git a/meta-networking/recipes-connectivity/openthread/ot-br-posix_=
git.bb b/meta-networking/recipes-connectivity/openthread/ot-br-posix_git.=
bb
new file mode 100644
index 000000000..d9f558d79
--- /dev/null
+++ b/meta-networking/recipes-connectivity/openthread/ot-br-posix_git.bb
@@ -0,0 +1,59 @@
+# SPDX-FileCopyrightText: Huawei Inc.
+#
+# SPDX-License-Identifier: Apache-2.0
+SUMMARY =3D "OpenThread Border Router"
+SECTION =3D "net"
+LICENSE =3D "BSD-3-Clause & MIT"
+LIC_FILES_CHKSUM =3D "file://LICENSE;md5=3D87109e44b2fda96a8991f27684a73=
49c \
+ file://third_party/Simple-web-server/repo/LICENSE;md=
5=3D852b3f7f320b19f6431487b8b2fb1d74 \
+ file://third_party/cJSON/repo/LICENSE;md5=3D218947f7=
7e8cb8e2fa02918dc41c50d0 \
+ file://third_party/http-parser/repo/LICENSE-MIT;md5=3D=
9bfa835d048c194ab30487af8d7b3778 \
+ file://third_party/openthread/repo/LICENSE;md5=3D543=
b6fe90ec5901a683320a36390c65f \
+ "
+DEPENDS =3D "autoconf-archive dbus readline avahi jsoncpp boost libnetfi=
lter-queue"
+SRCREV =3D "ad6822257ffddbac295db97186e4ab449a2ed32a"
+PV =3D "0.3.0+git${SRCPV}"
+
+SRC_URI =3D "gitsm://github.com/openthread/ot-br-posix.git;protocol=3Dht=
tps;branch=3Dmain \
+ file://0001-otbr-agent.service.in-remove-pre-exec-hook-for-md=
ns-.patch \
+ file://Turn-off-sign-compare-for-musl-libc.patch \
+ "
+
+S =3D "${WORKDIR}/git"
+SYSTEMD_SERVICE:${PN} =3D "otbr-agent.service"
+
+inherit pkgconfig cmake systemd
+
+EXTRA_OECMAKE =3D "-DBUILD_TESTING=3DOFF \
+ -DOTBR_DBUS=3DON \
+ -DOTBR_REST=3DON \
+ -DOTBR_WEB=3DOFF \
+ -DCMAKE_LIBRARY_PATH=3D${libdir} \
+ -DOTBR_MDNS=3Davahi \
+ -DOTBR_BACKBONE_ROUTER=3DON \
+ -DOTBR_BORDER_ROUTING=3DON \
+ -DOTBR_SRP_ADVERTISING_PROXY=3DON \
+ -DOTBR_BORDER_AGENT=3DON \
+ -DOT_SPINEL_RESET_CONNECTION=3DON \
+ -DOT_TREL=3DON \
+ -DOT_MLR=3DON \
+ -DOT_SRP_SERVER=3DON \
+ -DOT_ECDSA=3DON \
+ -DOT_SERVICE=3DON \
+ -DOTBR_DUA_ROUTING=3DON \
+ -DOT_DUA=3DON \
+ -DOT_BORDER_ROUTING_NAT64=3DON \
+ -DOTBR_DNSSD_DISCOVERY_PROXY=3DON \
+ -DOTBR_INFRA_IF_NAME=3Deth0 \
+ -DOTBR_NO_AUTO_ATTACH=3D1 \
+ -DOT_REFERENCE_DEVICE=3DON \
+ -DOT_DHCP6_CLIENT=3DON \
+ -DOT_DHCP6_SERVER=3DON \
+ "
+
+RDEPENDS:${PN} =3D "iproute2 avahi-daemon"
+
+RCONFLICTS:${PN} =3D "ot-daemon"
+
+FILES:${PN} +=3D "${systemd_unitdir}/*"
+FILES:${PN} +=3D "${datadir}/*"
--=20
2.35.1


Re: [meta-gnome][PATCHv2] gparted: update to v1.4.0

Khem Raj
 



On Thu, Apr 7, 2022 at 5:04 AM Markus Volk <f_l_k@...> wrote:
- remove x11 features-check because there aren't dependencies that would
  explicilty require x11 as a DISTRO_FEATURE
- replace basename() by g_path_get_basename() to fix up musl build

============================
GParted 1.4.0   (2022-03-28)
============================

Release Notes
-------------
  This release of GParted includes enhancements, bug fixes and
  language translation updates.

  * Add labelling of mounted btrfs, ext2/3/4 and xfs file systems
  * Fix detection of mount points for encrypted file systems
  * Fix crash scrolling quickly in the drive selection combobox
  * Add bcache detection
  * Add JBD external EXT3/4 journal detection

Bug Fixes
---------
  * Add labelling of mounted btrfs, ext2/3/4 and xfs file systems (#163, !87)
  * Fix detection of mount points for encrypted file systems (#162, !88)
  * Fix unmount error when unmounting below a bind mount point (!89)
  * Fix crash scrolling quickly in the drive selection combobox (#165, !91)
  * Add initial Indonesian translation of help (!90)
  * Add accessibility relations for screen readers like Orca (!92)
  * Fix partition creation at sector 2048 if partition before it (#172, !93)
  * Make more getter methods use return-by-constant-reference (!94)
  * Check copy destination instead of source (!95)
  * Add bcache detection (#183, !96)
  * Add JBD external EXT3/4 journal detection (#89, !97)
  * Fix translation of DocBook markup tag of the GParted Manual (!98)

Code Credits
------------
  Code enhancements are courtesy of Movie Ma, Pascal Engélibert, and
  Mike Fleetwood.

Translations (new/updated)
--------------------------
  cs(Marek Černocký), da(Alan Mortensen), eu(Asier Sarasua Garmendia),
  fur(Fabio Tomat), he(Yaron Shahrabani), hr(Goran Vidović),
  hu(Balázs Úr), id(Andika Triwidada), it(Milo Casagrande),
  ko(Seong-ho Cho), lt(Aurimas Černius), lv(Rūdolfs Mazurs),
  nb(Kjell Cato Heskjestad), nl(Nathan Follens), pa(A S Alam),
  pt(Hugo Carvalho), ru(Aleksandr Melman, Sergej A), sk(Dušan Kazik),
  sl(Matej Urbančič), sr(Мирослав Николић), zh_CN(Luming Zh)

Dependencies (new/updated)
--------------------------
  * n/a

Signed-off-by: Markus Volk <f_l_k@...>
---
 .../gparted/files/0001-replace-gnu-basename.patch | 15 +++++++++++++++
 .../{gparted_1.3.1.bb => gparted_1.4.0.bb}        |  6 +++---
 2 files changed, 18 insertions(+), 3 deletions(-)
 create mode 100644 meta-gnome/recipes-extended/gparted/files/0001-replace-gnu-basename.patch
 rename meta-gnome/recipes-extended/gparted/{gparted_1.3.1.bb => gparted_1.4.0.bb} (83%)

diff --git a/meta-gnome/recipes-extended/gparted/files/0001-replace-gnu-basename.patch b/meta-gnome/recipes-extended/gparted/files/0001-replace-gnu-basename.patch
new file mode 100644
index 000000000..ff06911ab
--- /dev/null
+++ b/meta-gnome/recipes-extended/gparted/files/0001-replace-gnu-basename.patch
@@ -0,0 +1,15 @@
+Upstream-Status: Pending

I think it would be good to submit this patch upstream it looks a good portable change to me 

+
+Signed-off-by: Markus Volk f_l_k@...
+
+--- a/src/BCache_Info.cc       2022-04-07 09:56:08.589006367 +0200
++++ b/src/BCache_Info.cc       2022-04-07 09:55:34.573186965 +0200
+@@ -49,7 +49,7 @@
+               return Glib::ustring("");
+       buf[len] = '\0';
+
+-      return "/dev/" + Glib::ustring(basename(buf));
++      return "/dev/" + Glib::ustring(g_path_get_basename(buf));
+ }
+
+
diff --git a/meta-gnome/recipes-extended/gparted/gparted_1.3.1.bb b/meta-gnome/recipes-extended/gparted/gparted_1.4.0.bb
similarity index 83%
rename from meta-gnome/recipes-extended/gparted/gparted_1.3.1.bb
rename to meta-gnome/recipes-extended/gparted/gparted_1.4.0.bb
index d1a975930..a4b653ceb 100644
--- a/meta-gnome/recipes-extended/gparted/gparted_1.3.1.bb
+++ b/meta-gnome/recipes-extended/gparted/gparted_1.4.0.bb
@@ -3,16 +3,16 @@ HOMEPAGE = "http://gparted.org/index.php"
 LICENSE = "GPL-2.0-only"
 LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"

-inherit features_check autotools pkgconfig python3native gnome-help gtk-icon-cache
+inherit autotools pkgconfig python3native gnome-help gtk-icon-cache

-REQUIRED_DISTRO_FEATURES = "x11"

 SRC_URI = " \
     ${SOURCEFORGE_MIRROR}/project/${BPN}/${BPN}/${BPN}-${PV}/${BPN}-${PV}.tar.gz \
     file://0001-Install-polkit-action-unconditionally-executable-pke.patch \
     file://0001-Do-not-use-NULL-where-boolean-is-expected.patch \
+    file://0001-replace-gnu-basename.patch \
 "
-SRC_URI[sha256sum] = "5eee2e6d74b15ef96b13b3a2310c868ed2298e03341021e7d12a5a98a1d1e109"
+SRC_URI[sha256sum] = "e5293a792e53fdbeba29c4a834113cd9603d0d639330da931a468bf3687887be"

 UPSTREAM_CHECK_URI = "https://sourceforge.net/projects/gparted/files/gparted/"
 UPSTREAM_CHECK_REGEX = "gparted-(?P<pver>\d+\.(\d+)+(\.\d+)+)"
--
2.25.1





[meta-python][PATCH 2/2] python3-wxgtk4: pass '--baselib' to WX_CONFIG

Kai Kang
 

From: Kai Kang <kai.kang@...>

Pass option '--baselib=${baselib}' to WX_CONFIG to support multilib
build.

Signed-off-by: Kai Kang <kai.kang@...>
---
.../recipes-devtools/python3-wxgtk4/python3-wxgtk4_4.1.1.bb | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/meta-python/recipes-devtools/python3-wxgtk4/python3-wxgtk4_4.1.1.bb b/meta-python/recipes-devtools/python3-wxgtk4/python3-wxgtk4_4.1.1.bb
index dcb373a1f..423d3bdae 100644
--- a/meta-python/recipes-devtools/python3-wxgtk4/python3-wxgtk4_4.1.1.bb
+++ b/meta-python/recipes-devtools/python3-wxgtk4/python3-wxgtk4_4.1.1.bb
@@ -22,7 +22,7 @@ S = "${WORKDIR}/wxPython-${PV}"

inherit pypi setuptools3 pkgconfig

-export WX_CONFIG = "'${RECIPE_SYSROOT_NATIVE}${bindir}/wx-config --prefix=${STAGING_EXECPREFIXDIR}'"
+export WX_CONFIG = "'${RECIPE_SYSROOT_NATIVE}${bindir}/wx-config --prefix=${STAGING_EXECPREFIXDIR} --baselib=${baselib}'"

RDEPENDS:${PN} = "\
python3-difflib \
--
2.17.1


[meta-oe][PATCH 1/2] wxwidgets: fix wx-config multilib issue

Kai Kang
 

From: Kai Kang <kai.kang@...>

It sets 'libdir' with path element 'lib' directly which is not suitable
for multilib. Add an option '--baselib' for wx-config to support
multilib when cross compile.

And set EGREP for wx-config to avoid host contamination.

Signed-off-by: Kai Kang <kai.kang@...>
---
.../wx-config-fix-libdir-for-multilib.patch | 56 +++++++++++++++++++
.../wxwidgets/wxwidgets_3.1.5.bb | 4 ++
2 files changed, 60 insertions(+)
create mode 100644 meta-oe/recipes-extended/wxwidgets/wxwidgets/wx-config-fix-libdir-for-multilib.patch

diff --git a/meta-oe/recipes-extended/wxwidgets/wxwidgets/wx-config-fix-libdir-for-multilib.patch b/meta-oe/recipes-extended/wxwidgets/wxwidgets/wx-config-fix-libdir-for-multilib.patch
new file mode 100644
index 000000000..7ce206d26
--- /dev/null
+++ b/meta-oe/recipes-extended/wxwidgets/wxwidgets/wx-config-fix-libdir-for-multilib.patch
@@ -0,0 +1,56 @@
+It sets 'libdir' with path element 'lib' directly which is not suitable for
+multilib. Add an option '--baselib' for wx-config to support multilib when
+cross compile. And set default value of baselib with "lib${wxPLATFORM_LIB_DIR}".
+
+Upstream-Status: Pending [oe specific]
+
+Signed-off-by: Kai Kang <kai.kang@...>
+---
+ build/cmake/config.cmake | 2 +-
+ wx-config.in | 6 ++++--
+ 2 files changed, 5 insertions(+), 3 deletions(-)
+
+diff --git a/build/cmake/config.cmake b/build/cmake/config.cmake
+index 52ae69d3f6..28aa733eb0 100644
+--- a/build/cmake/config.cmake
++++ b/build/cmake/config.cmake
+@@ -86,7 +86,7 @@ function(wx_write_config)
+ set(prefix ${CMAKE_INSTALL_PREFIX})
+ set(exec_prefix "\${prefix}")
+ set(includedir "\${prefix}/include")
+- set(libdir "\${exec_prefix}/lib")
++ set(libdir "\${exec_prefix}/\${baselib}")
+ set(bindir "\${exec_prefix}/bin")
+
+ find_program(EGREP egrep)
+diff --git a/wx-config.in b/wx-config.in
+index e3f7d115bb..0e78af03c7 100755
+--- a/wx-config.in
++++ b/wx-config.in
+@@ -42,7 +42,8 @@ usage()
+ {
+ cat 1>&2 <<EOF
+
+- wx-config [--prefix[=DIR]] [--exec-prefix[=DIR]] [--release] [--version-full]
++ wx-config [--prefix[=DIR]] [--exec-prefix[=DIR]][--baselib=DIR]
++ [--release] [--version-full]
+ [--list] [--selected-config] [--host=HOST] [--toolkit=TOOLKIT]
+ [--universal[=yes|no]] [--unicode[=yes|no]] [--static[=yes|no]]
+ [--debug[=yes|no]] [--version[=VERSION]] [--flavour=FLAVOUR]
+@@ -137,7 +138,7 @@ wxconfig_output_options="prefix exec_prefix
+
+ # Options that permit the user to supply hints that may affect the output.
+ # These options all accept arbitrary values, to interpret as they please.
+-wxconfig_input_options="prefix exec_prefix utility $wxconfig_schema"
++wxconfig_input_options="prefix exec_prefix baselib utility $wxconfig_schema"
+
+ # Input options that accept only a yes or no argument.
+ #
+@@ -404,6 +405,7 @@ is_cross() { [ "x@cross_compiling@" = "xyes" ]; }
+ # Determine the base directories we require.
+ prefix=${input_option_prefix-${this_prefix:-@prefix@}}
+ exec_prefix=${input_option_exec_prefix-${input_option_prefix-${this_exec_prefix:-@exec_prefix@}}}
++baselib=${input_option_baselib:-lib@wxPLATFORM_LIB_DIR@}
+ wxconfdir="@libdir@/wx/config"
+
+ installed_configs=`cd "$wxconfdir" 2> /dev/null && ls | grep -v "^inplace-"`
diff --git a/meta-oe/recipes-extended/wxwidgets/wxwidgets_3.1.5.bb b/meta-oe/recipes-extended/wxwidgets/wxwidgets_3.1.5.bb
index e82143040..87fd284ae 100644
--- a/meta-oe/recipes-extended/wxwidgets/wxwidgets_3.1.5.bb
+++ b/meta-oe/recipes-extended/wxwidgets/wxwidgets_3.1.5.bb
@@ -24,6 +24,7 @@ SRC_URI = " \
file://fix-libdir-for-multilib.patch \
file://respect-DESTDIR-when-create-link.patch \
file://not-append-system-name-to-lib-name.patch \
+ file://wx-config-fix-libdir-for-multilib.patch \
"
SRCREV= "9c0a8be1dc32063d91ed1901fd5fcd54f4f955a1"
S = "${WORKDIR}/git"
@@ -42,6 +43,7 @@ EXTRA_OECMAKE += " \
EXTRA_OECMAKE:append:libc-musl = " \
-DHAVE_LOCALE_T=OFF \
"
+EXTRA_OECMAKE:append:class-target = ' -DEGREP="/bin/grep -E"'

# All toolkit-configs except 'no_gui' require x11 explicitly (see toolkit.cmake)
PACKAGECONFIG ?= "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'gtk', 'no_gui', d)} \
@@ -113,4 +115,6 @@ FILES:${PN}-dev += " \
${libdir}/wx/config/ \
"

+RDEPENDS:${PN}-dev += "grep"
+
BBCLASSEXTEND = "native"
--
2.17.1


[meta-oe][ PATCH 1/2] grpc: add cmake support for target

Stefan Herbrechtsmeier
 

From: Stefan Herbrechtsmeier <stefan.herbrechtsmeier@...>

The CMake gRPC config checks for binaries and fails if a binary (plugin)
is missing. Fix the problem in the code and add the CMake gRPC config
back to the target package.

Signed-off-by: Stefan Herbrechtsmeier <stefan.herbrechtsmeier@...>
---

...d-separate-export-for-plugin-targets.patch | 93 +++++++++++++++++++
meta-oe/recipes-devtools/grpc/grpc_1.45.0.bb | 3 +-
2 files changed, 94 insertions(+), 2 deletions(-)
create mode 100644 meta-oe/recipes-devtools/grpc/grpc/0001-cmake-add-separate-export-for-plugin-targets.patch

diff --git a/meta-oe/recipes-devtools/grpc/grpc/0001-cmake-add-separate-export-for-plugin-targets.patch b/meta-oe/recipes-devtools/grpc/grpc/0001-cmake-add-separate-export-for-plugin-targets.patch
new file mode 100644
index 000000000..679bd3882
--- /dev/null
+++ b/meta-oe/recipes-devtools/grpc/grpc/0001-cmake-add-separate-export-for-plugin-targets.patch
@@ -0,0 +1,93 @@
+From 3150cb043363e05588062dd392b940be25594713 Mon Sep 17 00:00:00 2001
+From: Stefan Herbrechtsmeier <stefan.herbrechtsmeier@...>
+Date: Tue, 18 Feb 2020 14:17:07 +0100
+Subject: [PATCH] cmake: add separate export for plugin targets
+
+Upstream-Status: Submitted [https://github.com/grpc/grpc/pull/29328]
+
+
+---
+ CMakeLists.txt | 18 +++++++++++-------
+ 1 file changed, 11 insertions(+), 7 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index efdaf8936d..6608b1b00c 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -10935,7 +10935,7 @@ target_link_libraries(grpc_cpp_plugin
+
+
+ if(gRPC_INSTALL)
+- install(TARGETS grpc_cpp_plugin EXPORT gRPCTargets
++ install(TARGETS grpc_cpp_plugin EXPORT gRPCPluginTargets
+ RUNTIME DESTINATION ${gRPC_INSTALL_BINDIR}
+ BUNDLE DESTINATION ${gRPC_INSTALL_BINDIR}
+ LIBRARY DESTINATION ${gRPC_INSTALL_LIBDIR}
+@@ -10975,7 +10975,7 @@ target_link_libraries(grpc_csharp_plugin
+
+
+ if(gRPC_INSTALL)
+- install(TARGETS grpc_csharp_plugin EXPORT gRPCTargets
++ install(TARGETS grpc_csharp_plugin EXPORT gRPCPluginTargets
+ RUNTIME DESTINATION ${gRPC_INSTALL_BINDIR}
+ BUNDLE DESTINATION ${gRPC_INSTALL_BINDIR}
+ LIBRARY DESTINATION ${gRPC_INSTALL_LIBDIR}
+@@ -11015,7 +11015,7 @@ target_link_libraries(grpc_node_plugin
+
+
+ if(gRPC_INSTALL)
+- install(TARGETS grpc_node_plugin EXPORT gRPCTargets
++ install(TARGETS grpc_node_plugin EXPORT gRPCPluginTargets
+ RUNTIME DESTINATION ${gRPC_INSTALL_BINDIR}
+ BUNDLE DESTINATION ${gRPC_INSTALL_BINDIR}
+ LIBRARY DESTINATION ${gRPC_INSTALL_LIBDIR}
+@@ -11055,7 +11055,7 @@ target_link_libraries(grpc_objective_c_plugin
+
+
+ if(gRPC_INSTALL)
+- install(TARGETS grpc_objective_c_plugin EXPORT gRPCTargets
++ install(TARGETS grpc_objective_c_plugin EXPORT gRPCPluginTargets
+ RUNTIME DESTINATION ${gRPC_INSTALL_BINDIR}
+ BUNDLE DESTINATION ${gRPC_INSTALL_BINDIR}
+ LIBRARY DESTINATION ${gRPC_INSTALL_LIBDIR}
+@@ -11095,7 +11095,7 @@ target_link_libraries(grpc_php_plugin
+
+
+ if(gRPC_INSTALL)
+- install(TARGETS grpc_php_plugin EXPORT gRPCTargets
++ install(TARGETS grpc_php_plugin EXPORT gRPCPluginTargets
+ RUNTIME DESTINATION ${gRPC_INSTALL_BINDIR}
+ BUNDLE DESTINATION ${gRPC_INSTALL_BINDIR}
+ LIBRARY DESTINATION ${gRPC_INSTALL_LIBDIR}
+@@ -11135,7 +11135,7 @@ target_link_libraries(grpc_python_plugin
+
+
+ if(gRPC_INSTALL)
+- install(TARGETS grpc_python_plugin EXPORT gRPCTargets
++ install(TARGETS grpc_python_plugin EXPORT gRPCPluginTargets
+ RUNTIME DESTINATION ${gRPC_INSTALL_BINDIR}
+ BUNDLE DESTINATION ${gRPC_INSTALL_BINDIR}
+ LIBRARY DESTINATION ${gRPC_INSTALL_LIBDIR}
+@@ -11175,7 +11175,7 @@ target_link_libraries(grpc_ruby_plugin
+
+
+ if(gRPC_INSTALL)
+- install(TARGETS grpc_ruby_plugin EXPORT gRPCTargets
++ install(TARGETS grpc_ruby_plugin EXPORT gRPCPluginTargets
+ RUNTIME DESTINATION ${gRPC_INSTALL_BINDIR}
+ BUNDLE DESTINATION ${gRPC_INSTALL_BINDIR}
+ LIBRARY DESTINATION ${gRPC_INSTALL_LIBDIR}
+@@ -17349,6 +17349,10 @@ if(gRPC_INSTALL)
+ DESTINATION ${gRPC_INSTALL_CMAKEDIR}
+ NAMESPACE gRPC::
+ )
++ install(EXPORT gRPCPluginTargets
++ DESTINATION ${gRPC_INSTALL_CMAKEDIR}
++ NAMESPACE gRPC::
++ )
+ endif()
+
+ include(CMakePackageConfigHelpers)
+--
+2.30.2
+
diff --git a/meta-oe/recipes-devtools/grpc/grpc_1.45.0.bb b/meta-oe/recipes-devtools/grpc/grpc_1.45.0.bb
index d25a01cf3..d50fd2727 100644
--- a/meta-oe/recipes-devtools/grpc/grpc_1.45.0.bb
+++ b/meta-oe/recipes-devtools/grpc/grpc_1.45.0.bb
@@ -24,6 +24,7 @@ SRCREV_grpc = "494b08ada4009ead0d0b70e44d354be72f9c283a"
BRANCH = "v1.45.x"
SRC_URI = "git://github.com/grpc/grpc.git;protocol=https;name=grpc;branch=${BRANCH} \
file://0001-Revert-Changed-GRPCPP_ABSEIL_SYNC-to-GPR_ABSEIL_SYNC.patch \
+ file://0001-cmake-add-separate-export-for-plugin-targets.patch \
"
# Fixes build with older compilers 4.8 especially on ubuntu 14.04
CXXFLAGS:append:class-native = " -Wl,--no-as-needed"
@@ -80,8 +81,6 @@ do_configure:prepend:toolchain-clang:x86() {

BBCLASSEXTEND = "native nativesdk"

-SYSROOT_DIRS_IGNORE:append:class-target = " ${baselib}/cmake/grpc"
-
FILES:${PN}-compiler += " \
${bindir} \
${libdir}/libgrpc_plugin_support${SOLIBS} \
--
2.30.2

3441 - 3460 of 99908