From patchwork Mon Nov 27 10:02:04 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Markus Volk X-Patchwork-Id: 35211 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 2439EC4167B for ; Mon, 27 Nov 2023 10:02:17 +0000 (UTC) Received: from mailout04.t-online.de (mailout04.t-online.de [194.25.134.18]) by mx.groups.io with SMTP id smtpd.web10.91724.1701079329608426040 for ; Mon, 27 Nov 2023 02:02:10 -0800 Authentication-Results: mx.groups.io; dkim=none (message not signed); spf=pass (domain: t-online.de, ip: 194.25.134.18, mailfrom: f_l_k@t-online.de) Received: from fwd72.aul.t-online.de (fwd72.aul.t-online.de [10.223.144.98]) by mailout04.t-online.de (Postfix) with SMTP id 24B262221B for ; Mon, 27 Nov 2023 11:02:07 +0100 (CET) Received: from intel-corei7-64.fritz.box ([84.163.41.136]) by fwd72.t-online.de with (TLSv1.3:TLS_AES_256_GCM_SHA384 encrypted) esmtp id 1r7YRK-3UzVnF0; Mon, 27 Nov 2023 11:02:06 +0100 From: Markus Volk To: openembedded-core@lists.openembedded.org Subject: [oe-core][PATCH] add PREFERRED_PROVIDER variables for llvm Date: Mon, 27 Nov 2023 11:02:04 +0100 Message-ID: <20231127100204.236485-1-f_l_k@t-online.de> X-Mailer: git-send-email 2.42.1 MIME-Version: 1.0 X-TOI-EXPURGATEID: 150726::1701079326-39FF895D-DE720904/0/0 CLEAN NORMAL X-TOI-MSGID: 3e50e6ff-4613-4954-bf76-a25e69d2ce85 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 ; Mon, 27 Nov 2023 10:02:17 -0000 X-Groupsio-URL: https://lists.openembedded.org/g/openembedded-core/message/191265 gallium-llvm needs to be built with clang if you, for example want to have support for opencl or want to build the intel-clc compiler. meta-clang recommends to set PREFERRED_PROVIDER_llvm = "clang" PREFERRED_PROVIDER_llvm-native = "clang-native" The current problem is that this is not taken into account in mesa and therefore both llvm and clang are included. This leads to files that are provided by both packages and would also unnecessarily increase the build time. Add PREFERRED_PROVIDER_llvm and PREFERRED_PROVIDER_llvm-native and make sure that the mesa recipe takes these variables into account. Signed-off-by: Markus Volk --- meta/conf/distro/include/default-providers.inc | 2 ++ meta/recipes-graphics/mesa/mesa.inc | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/meta/conf/distro/include/default-providers.inc b/meta/conf/distro/include/default-providers.inc index d18173c744..819d71628b 100644 --- a/meta/conf/distro/include/default-providers.inc +++ b/meta/conf/distro/include/default-providers.inc @@ -37,6 +37,8 @@ PREFERRED_PROVIDER_dbus-glib ?= "dbus-glib" PREFERRED_PROVIDER_dbus-glib-native ?= "dbus-glib-native" PREFERRED_PROVIDER_gdk-pixbuf ?= "gdk-pixbuf" PREFERRED_PROVIDER_libgcc ?= "libgcc" +PREFERRED_PROVIDER_llvm ?= "llvm" +PREFERRED_PROVIDER_llvm-native ?= "llvm-native" PREFERRED_PROVIDER_nativesdk-libgcc ?= "nativesdk-libgcc" PREFERRED_PROVIDER_linux-libc-headers ?= "linux-libc-headers" PREFERRED_PROVIDER_nativesdk-linux-libc-headers ?= "nativesdk-linux-libc-headers" diff --git a/meta/recipes-graphics/mesa/mesa.inc b/meta/recipes-graphics/mesa/mesa.inc index e5c405a972..1a971242c9 100644 --- a/meta/recipes-graphics/mesa/mesa.inc +++ b/meta/recipes-graphics/mesa/mesa.inc @@ -183,7 +183,7 @@ GALLIUMDRIVERS:append = "${@bb.utils.contains('PACKAGECONFIG', 'r600', ',r600', GALLIUMDRIVERS:append = "${@bb.utils.contains('PACKAGECONFIG', 'virgl', ',virgl', '', d)}" PACKAGECONFIG[gallium] = "-Dgallium-drivers=${@strip_comma('${GALLIUMDRIVERS}')}, -Dgallium-drivers='', libdrm" -PACKAGECONFIG[gallium-llvm] = "-Dllvm=enabled -Dshared-llvm=enabled, -Dllvm=disabled, llvm llvm-native elfutils" +PACKAGECONFIG[gallium-llvm] = "-Dllvm=enabled -Dshared-llvm=enabled, -Dllvm=disabled, ${PREFERRED_PROVIDER_llvm} ${PREFERRED_PROVIDER_llvm-native} elfutils" PACKAGECONFIG[xa] = "-Dgallium-xa=enabled, -Dgallium-xa=disabled" PACKAGECONFIG[va] = "-Dgallium-va=enabled,-Dgallium-va=disabled,libva-initial" PACKAGECONFIG[vdpau] = "-Dgallium-vdpau=enabled,-Dgallium-vdpau=disabled,libvdpau"