From patchwork Fri May 20 12:52:07 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Markus Volk X-Patchwork-Id: 8305 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id 72EE2C433F5 for ; Fri, 20 May 2022 12:52:32 +0000 (UTC) Received: from mailout01.t-online.de (mailout01.t-online.de [194.25.134.80]) by mx.groups.io with SMTP id smtpd.web08.8295.1653051147658574710 for ; Fri, 20 May 2022 05:52:28 -0700 Authentication-Results: mx.groups.io; dkim=missing; spf=none, err=SPF record not found (domain: t-online.de, ip: 194.25.134.80, mailfrom: f_l_k@t-online.de) Received: from fwd70.dcpf.telekom.de (fwd70.aul.t-online.de [10.223.144.96]) by mailout01.t-online.de (Postfix) with SMTP id 558766046 for ; Fri, 20 May 2022 14:52:25 +0200 (CEST) Received: from localhost.localdomain ([84.154.173.254]) by fwd70.t-online.de with (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384 encrypted) esmtp id 1ns27C-3jcP5e0; Fri, 20 May 2022 14:52:22 +0200 From: Markus Volk To: openembedded-core@lists.openembedded.org Cc: Markus Volk Subject: [oe-core][RFC PATCHv2 2/2] libsdl2: rework and cleanup Date: Fri, 20 May 2022 14:52:07 +0200 Message-Id: <20220520125207.4115296-2-f_l_k@t-online.de> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20220520125207.4115296-1-f_l_k@t-online.de> References: <20220520125207.4115296-1-f_l_k@t-online.de> MIME-Version: 1.0 X-TOI-EXPURGATEID: 150726::1653051142-00004E7B-A059B176/0/0 CLEAN NORMAL X-TOI-MSGID: 68ff74b3-38b6-4c37-ba65-90a176d20524 List-Id: X-Webhook-Received: from li982-79.members.linode.com [45.33.32.79] by aws-us-west-2-korg-lkml-1.web.codeaurora.org with HTTPS for ; Fri, 20 May 2022 12:52:32 -0000 X-Groupsio-URL: https://lists.openembedded.org/g/openembedded-core/message/165936 - add libusb PACKAGECONFIG because libsdl2 is looking for it - remove xvm and xinerama since support has been dropped in sdl code - allow native build for libxkbcommon and xkeyboard-config to allow alignment of native/target build - align native and target build - add PACKAGECONFIG options for pipewire and libdecor Signed-off-by: Markus Volk --- .../recipes-graphics/libsdl2/libsdl2_2.0.22.bb | 18 +++++++++--------- .../xorg-lib/libxkbcommon_1.4.0.bb | 2 ++ .../xorg-lib/xkeyboard-config_2.35.1.bb | 2 ++ 3 files changed, 13 insertions(+), 9 deletions(-) diff --git a/meta/recipes-graphics/libsdl2/libsdl2_2.0.22.bb b/meta/recipes-graphics/libsdl2/libsdl2_2.0.22.bb index 7678319770..391e52b403 100644 --- a/meta/recipes-graphics/libsdl2/libsdl2_2.0.22.bb +++ b/meta/recipes-graphics/libsdl2/libsdl2_2.0.22.bb @@ -43,9 +43,7 @@ EXTRA_OECMAKE = "-DSDL_OSS=OFF -DSDL_ESD=OFF -DSDL_ARTS=OFF \ -DSDL_PTHREADS=ON \ -DSDL_RPATH=OFF \ -DSDL_SNDIO=OFF \ - -DSDL_X11_XVM=OFF \ -DSDL_X11_XCURSOR=OFF \ - -DSDL_X11_XINERAMA=OFF \ -DSDL_X11_XDBE=OFF \ -DSDL_X11_XFIXES=OFF \ -DSDL_X11_XINPUT=OFF \ @@ -55,24 +53,26 @@ EXTRA_OECMAKE = "-DSDL_OSS=OFF -DSDL_ESD=OFF -DSDL_ARTS=OFF \ " # opengl packageconfig factored out to make it easy for distros -# and BSP layers to pick either (desktop) opengl, gles2, or no GL -PACKAGECONFIG_GL ?= "${@bb.utils.filter('DISTRO_FEATURES', 'opengl', d)}" +# and BSP layers to pick either (desktop) opengl, gles, or no GL +PACKAGECONFIG_GL ?= "${@bb.utils.filter('DISTRO_FEATURES', 'opengl gles', d)}" -PACKAGECONFIG:class-native = "x11 ${PACKAGECONFIG_GL}" -PACKAGECONFIG:class-nativesdk = "${@bb.utils.filter('DISTRO_FEATURES', 'x11', d)} ${PACKAGECONFIG_GL}" PACKAGECONFIG ??= " \ ${PACKAGECONFIG_GL} \ - ${@bb.utils.filter('DISTRO_FEATURES', 'alsa directfb pulseaudio x11', d)} \ - ${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'wayland gles2', '', d)} \ + ${@bb.utils.filter('DISTRO_FEATURES', 'alsa directfb pulseaudio pipewire x11 wayland', d)} \ ${@bb.utils.contains("TUNE_FEATURES", "neon","arm-neon","",d)} \ " PACKAGECONFIG[alsa] = "-DSDL_ALSA=ON,-DSDL_ALSA=OFF,alsa-lib," PACKAGECONFIG[arm-neon] = "-DSDL_ARMNEON=ON,-DSDL_ARMNEON=OFF" PACKAGECONFIG[directfb] = "-DSDL_DIRECTFB=ON,-DSDL_DIRECTFB=OFF,directfb,directfb" -PACKAGECONFIG[gles2] = "-DSDL_OPENGLES=ON,-DSDL_OPENGLES=OFF,virtual/libgles2" +PACKAGECONFIG[gles] = "-DSDL_OPENGLES=ON,-DSDL_OPENGLES=OFF,virtual/libgles2" PACKAGECONFIG[jack] = "-DSDL_JACK=ON,-DSDL_JACK=OFF,jack" PACKAGECONFIG[kmsdrm] = "-DSDL_KMSDRM=ON,-DSDL_KMSDRM=OFF,libdrm virtual/libgbm" +PACKAGECONFIG[libdecor] = "-DSDL_WAYLAND_LIBDECOR=ON,-DSDL_WAYLAND_LIBDECOR=OFF,libdecor,libdecor" +# The hidraw support doesn't catch Xbox, PS4 and Nintendo controllers, +# so we'll just use libusb when it's available. +PACKAGECONFIG[libusb] = ",,libusb1" PACKAGECONFIG[opengl] = "-DSDL_OPENGL=ON,-DSDL_OPENGL=OFF,virtual/egl" +PACKAGECONFIG[pipewire] = "-DSDL_PIPEWIRE=ON,-DSDL_PIPEWIRE=OFF,pipewire" PACKAGECONFIG[pulseaudio] = "-DSDL_PULSEAUDIO=ON,-DSDL_PULSEAUDIO=OFF,pulseaudio" PACKAGECONFIG[wayland] = "-DSDL_WAYLAND=ON,-DSDL_WAYLAND=OFF,wayland-native wayland wayland-protocols libxkbcommon" PACKAGECONFIG[x11] = "-DSDL_X11=ON,-DSDL_X11=OFF,virtual/libx11 libxext libxrandr libxrender" diff --git a/meta/recipes-graphics/xorg-lib/libxkbcommon_1.4.0.bb b/meta/recipes-graphics/xorg-lib/libxkbcommon_1.4.0.bb index 34652e9c4e..9840b0797b 100644 --- a/meta/recipes-graphics/xorg-lib/libxkbcommon_1.4.0.bb +++ b/meta/recipes-graphics/xorg-lib/libxkbcommon_1.4.0.bb @@ -34,3 +34,5 @@ python populate_packages:prepend () { # Fix a following runtime error: # xkbcommon: ERROR: couldn't find a Compose file for locale "C" RDEPENDS:${PN} = "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'libx11-locale', 'libx11-compose-data', d)}" + +BBCLASSEXTEND = "native nativesdk" diff --git a/meta/recipes-graphics/xorg-lib/xkeyboard-config_2.35.1.bb b/meta/recipes-graphics/xorg-lib/xkeyboard-config_2.35.1.bb index 5215131e3e..46c73879e6 100644 --- a/meta/recipes-graphics/xorg-lib/xkeyboard-config_2.35.1.bb +++ b/meta/recipes-graphics/xorg-lib/xkeyboard-config_2.35.1.bb @@ -28,3 +28,5 @@ do_install:append () { install -d ${D}${datadir}/X11/xkb/compiled cd ${D}${datadir}/X11/xkb/rules && ln -sf base xorg } + +BBCLASSEXTEND = "native nativesdk"