package/kodi: fix selection of dependencies

Commit 148e695e37 (package/kodi: bump version to 19.0-Matrix) extended
the set of required libraries for various "platform" backends, by
selecting those libraries from the blind options. For example, we have:

    config BR2_PACKAGE_KODI_PLATFORM_SUPPORTS_GBM
        bool
        default y
        depends on [...]
        select BR2_PACKAGE_LIBINPUT
        [...]

However, that option is true as soon as the requirements are met (the
depends on), even when Kodi itself is not enabled.

This means that extra libraries are pulled in to the build, even when
not required.

We fix that by moving the actual selects to the main symbol, along with
the proper conditions. This means that we have two lines that select
libxbcommon, under two different conditions; we could make that a single
select, but the codition would need to be on two lines anyway, so meh...

This is not an ideal solution, because it is a bit ugly, but:
 1) adding three new blind options just for the select is kinda extreme
    and superfluous;
 2) our Kodi packaging is already a bit ugly anyway.

Fixes: #14206

Reported-by: Thomas Ruschival <t.ruschival@gmail.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
Cc: Bernd Kuhls <bernd.kuhls@t-online.de>
(cherry picked from commit b80c488d04)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
This commit is contained in:
Yann E. MORIN 2021-09-11 10:20:47 +02:00 committed by Peter Korsgaard
parent 21a5bc35f1
commit dc201ed323

View File

@ -25,8 +25,6 @@ config BR2_PACKAGE_KODI_PLATFORM_SUPPORTS_GBM
depends on BR2_PACKAGE_MESA3D_GBM
depends on BR2_PACKAGE_HAS_UDEV # libinput
select BR2_PACKAGE_KODI_PLATFORM_SUPPORTS
select BR2_PACKAGE_LIBINPUT
select BR2_PACKAGE_LIBXKBCOMMON
config BR2_PACKAGE_KODI_PLATFORM_SUPPORTS_WAYLAND
bool
@ -38,8 +36,6 @@ config BR2_PACKAGE_KODI_PLATFORM_SUPPORTS_WAYLAND
depends on BR2_INSTALL_LIBSTDCPP # waylandpp
depends on BR2_PACKAGE_WAYLAND # waylandpp
select BR2_PACKAGE_KODI_PLATFORM_SUPPORTS
select BR2_PACKAGE_LIBXKBCOMMON
select BR2_PACKAGE_WAYLANDPP
config BR2_PACKAGE_KODI_PLATFORM_SUPPORTS_X11
bool
@ -47,7 +43,6 @@ config BR2_PACKAGE_KODI_PLATFORM_SUPPORTS_X11
depends on BR2_PACKAGE_HAS_LIBGL || BR2_PACKAGE_HAS_LIBGLES
depends on BR2_PACKAGE_XORG7
select BR2_PACKAGE_KODI_PLATFORM_SUPPORTS
select BR2_PACKAGE_XLIB_LIBXRANDR
comment "kodi needs an OpenGL EGL backend with OpenGL or GLES support"
depends on !BR2_PACKAGE_KODI_PLATFORM_SUPPORTS
@ -102,6 +97,11 @@ menuconfig BR2_PACKAGE_KODI
select BR2_PACKAGE_TINYXML
select BR2_PACKAGE_ZLIB
select BR2_TOOLCHAIN_GLIBC_GCONV_LIBS_COPY if BR2_TOOLCHAIN_USES_GLIBC # runtime UTF conversion support
select BR2_PACKAGE_LIBINPUT if BR2_PACKAGE_KODI_PLATFORM_SUPPORTS_GBM
select BR2_PACKAGE_LIBXKBCOMMON if BR2_PACKAGE_KODI_PLATFORM_SUPPORTS_GBM
select BR2_PACKAGE_LIBXKBCOMMON if BR2_PACKAGE_KODI_PLATFORM_SUPPORTS_WAYLAND
select BR2_PACKAGE_WAYLANDPP if BR2_PACKAGE_KODI_PLATFORM_SUPPORTS_WAYLAND
select BR2_PACKAGE_XLIB_LIBXRANDR if BR2_PACKAGE_KODI_PLATFORM_SUPPORTS_X11
help
Kodi is an award-winning free and open source (GPL) software
media player and entertainment hub for digital media.