libsdl2: Add libunwind-native to the libsdl2-native DEPENDS

Message ID 20220304075507.369779-1-crg7475@mailbox.org
State Accepted, archived
Commit 1b114fa2d221c9810852526f8b45a3d2c856a502
Headers show
Series libsdl2: Add libunwind-native to the libsdl2-native DEPENDS | expand

Commit Message

Carlos Rafael Giani March 4, 2022, 7:55 a.m. UTC
This fixes this CMake configuration error:

| -- Checking for one of the modules 'libunwind'
| CMake Error at [...]/build/tmp/work/x86_64-linux/libsdl2-native/2.0.20-r0/recipe-sysroot-native/usr/share/cmake-3.22/Modules/FindPkgConfig.cmake:890 (message):
|   None of the required 'libunwind' found
| Call Stack (most recent call first):
|   CMakeLists.txt:1367 (pkg_search_module)

This error happens even if libunwind is installed complete with its C
headers and development .so files (in Ubuntu, this means libunwind-dev
is installed).

Signed-off-by: Carlos Rafael Giani <crg7475@mailbox.org>
---
 meta/recipes-graphics/libsdl2/libsdl2_2.0.20.bb | 2 ++
 1 file changed, 2 insertions(+)

Comments

Peter Kjellerstedt March 4, 2022, 6:20 p.m. UTC | #1
> -----Original Message-----
> From: openembedded-core@lists.openembedded.org <openembedded-core@lists.openembedded.org> On Behalf Of Carlos Rafael Giani via lists.openembedded.org
> Sent: den 4 mars 2022 08:55
> To: openembedded-core@lists.openembedded.org
> Subject: [OE-core] [PATCH] libsdl2: Add libunwind-native to the libsdl2-native DEPENDS
> 
> This fixes this CMake configuration error:
> 
> | -- Checking for one of the modules 'libunwind'
> | CMake Error at [...]/build/tmp/work/x86_64-linux/libsdl2-native/2.0.20-r0/recipe-sysroot-native/usr/share/cmake-3.22/Modules/FindPkgConfig.cmake:890 (message):
> |   None of the required 'libunwind' found
> | Call Stack (most recent call first):
> |   CMakeLists.txt:1367 (pkg_search_module)
> 
> This error happens even if libunwind is installed complete with its C
> headers and development .so files (in Ubuntu, this means libunwind-dev
> is installed).
> 
> Signed-off-by: Carlos Rafael Giani <crg7475@mailbox.org>
> ---
>  meta/recipes-graphics/libsdl2/libsdl2_2.0.20.bb | 2 ++
>  1 file changed, 2 insertions(+)
> 
> diff --git a/meta/recipes-graphics/libsdl2/libsdl2_2.0.20.bb b/meta/recipes-graphics/libsdl2/libsdl2_2.0.20.bb
> index 90724ab8b7..802efba980 100644
> --- a/meta/recipes-graphics/libsdl2/libsdl2_2.0.20.bb
> +++ b/meta/recipes-graphics/libsdl2/libsdl2_2.0.20.bb
> @@ -27,6 +27,8 @@ SRC_URI[sha256sum] =
> "c56aba1d7b5b0e7e999e4a7698c70b63a3394ff9704b5f6e1c57e0c16f
> 
>  inherit cmake lib_package binconfig-disabled pkgconfig
> 
> +DEPENDS:class-native += "libunwind-native"

The above should be:

DEPENDS:append:class-native = " libunwind-native"

However, why don't libsdl2 built for target and nativesdk 
need to depend on libunwind? I.e., why isn't the above:

DEPENDS = "libunwind"

> +
>  BINCONFIG = "${bindir}/sdl2-config"
> 
>  CVE_PRODUCT = "simple_directmedia_layer sdl"
> --
> 2.32.0

//Peter
Richard Purdie March 5, 2022, 12:05 a.m. UTC | #2
On Fri, 2022-03-04 at 18:20 +0000, Peter Kjellerstedt wrote:
> > -----Original Message-----
> > From: openembedded-core@lists.openembedded.org
> > <openembedded-core@lists.openembedded.org> On Behalf Of Carlos Rafael Giani
> > via lists.openembedded.org
> > Sent: den 4 mars 2022 08:55
> > To: openembedded-core@lists.openembedded.org
> > Subject: [OE-core] [PATCH] libsdl2: Add libunwind-native to the libsdl2-native
> > DEPENDS
> > 
> > This fixes this CMake configuration error:
> > 
> > > -- Checking for one of the modules 'libunwind'
> > > CMake Error at [...]/build/tmp/work/x86_64-linux/libsdl2-native/2.0.20-
> > > r0/recipe-sysroot-native/usr/share/cmake-
> > > 3.22/Modules/FindPkgConfig.cmake:890 (message):
> > >   None of the required 'libunwind' found
> > > Call Stack (most recent call first):
> > >   CMakeLists.txt:1367 (pkg_search_module)
> > 
> > This error happens even if libunwind is installed complete with its C
> > headers and development .so files (in Ubuntu, this means libunwind-dev
> > is installed).
> > 
> > Signed-off-by: Carlos Rafael Giani <crg7475@mailbox.org>
> > ---
> >  meta/recipes-graphics/libsdl2/libsdl2_2.0.20.bb | 2 ++
> >  1 file changed, 2 insertions(+)
> > 
> > diff --git a/meta/recipes-graphics/libsdl2/libsdl2_2.0.20.bb b/meta/recipes-
> > graphics/libsdl2/libsdl2_2.0.20.bb
> > index 90724ab8b7..802efba980 100644
> > --- a/meta/recipes-graphics/libsdl2/libsdl2_2.0.20.bb
> > +++ b/meta/recipes-graphics/libsdl2/libsdl2_2.0.20.bb
> > @@ -27,6 +27,8 @@ SRC_URI[sha256sum] =
> > "c56aba1d7b5b0e7e999e4a7698c70b63a3394ff9704b5f6e1c57e0c16f
> > 
> >  inherit cmake lib_package binconfig-disabled pkgconfig
> > 
> > +DEPENDS:class-native += "libunwind-native"
> 
> The above should be:
> 
> DEPENDS:append:class-native = " libunwind-native"
> 
> However, why don't libsdl2 built for target and nativesdk 
> need to depend on libunwind? I.e., why isn't the above:
> 
> DEPENDS = "libunwind"
> 
> 

There is a second issue, libunwind-native doesn't build on all our systems:

https://autobuilder.yoctoproject.org/typhoon/#/builders/91/builds/5624/steps/12/logs/stdio

:(

I think I may have to revert this until we get to the bottom of things.

Cheers,

Richard

Patch

diff --git a/meta/recipes-graphics/libsdl2/libsdl2_2.0.20.bb b/meta/recipes-graphics/libsdl2/libsdl2_2.0.20.bb
index 90724ab8b7..802efba980 100644
--- a/meta/recipes-graphics/libsdl2/libsdl2_2.0.20.bb
+++ b/meta/recipes-graphics/libsdl2/libsdl2_2.0.20.bb
@@ -27,6 +27,8 @@  SRC_URI[sha256sum] = "c56aba1d7b5b0e7e999e4a7698c70b63a3394ff9704b5f6e1c57e0c16f
 
 inherit cmake lib_package binconfig-disabled pkgconfig
 
+DEPENDS:class-native += "libunwind-native"
+
 BINCONFIG = "${bindir}/sdl2-config"
 
 CVE_PRODUCT = "simple_directmedia_layer sdl"