From patchwork Tue Sep 16 09:37:36 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ross Burton X-Patchwork-Id: 70297 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 23378CAC59A for ; Tue, 16 Sep 2025 09:37:53 +0000 (UTC) Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by mx.groups.io with SMTP id smtpd.web10.15010.1758015463675086359 for ; Tue, 16 Sep 2025 02:37:43 -0700 Authentication-Results: mx.groups.io; dkim=none (message not signed); spf=pass (domain: arm.com, ip: 217.140.110.172, mailfrom: ross.burton@arm.com) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id DD0B212FC for ; Tue, 16 Sep 2025 02:37:34 -0700 (PDT) Received: from cesw-amp-gbt-1s-m12830-04.lab.cambridge.arm.com (usa-sjc-imap-foss1.foss.arm.com [10.121.207.14]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id BA8873F66E for ; Tue, 16 Sep 2025 02:37:42 -0700 (PDT) From: Ross Burton To: openembedded-core@lists.openembedded.org Subject: [PATCH v2 1/3] spirv-llvm-translator: small recipe cleanup Date: Tue, 16 Sep 2025 10:37:36 +0100 Message-ID: <20250916093738.1636562-1-ross.burton@arm.com> X-Mailer: git-send-email 2.43.0 MIME-Version: 1.0 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 ; Tue, 16 Sep 2025 09:37:53 -0000 X-Groupsio-URL: https://lists.openembedded.org/g/openembedded-core/message/223534 - There is no need for python3native, as this recipe doesn't depend on other python modules. - Inherit lib_package so the llvm-spirv binary is in a separate package to the libLLVMSPIRVLib.so library. - Remove obsolete CMake options that no longer appear to be required. - Change CMAKE_SKIP_RPATH to CMAKE_SKIP_BUILD_RPATH as this stops the ELF editing on install without potentially removing any explicit RPATHs, and aligns with a change I've proposed for cmake.bbclass. Signed-off-by: Ross Burton --- .../spir/spirv-llvm-translator_21.1.0.bb | 11 ++--------- 1 file changed, 2 insertions(+), 9 deletions(-) diff --git a/meta/recipes-graphics/spir/spirv-llvm-translator_21.1.0.bb b/meta/recipes-graphics/spir/spirv-llvm-translator_21.1.0.bb index 63fae47377e..13a93f3c5e5 100644 --- a/meta/recipes-graphics/spir/spirv-llvm-translator_21.1.0.bb +++ b/meta/recipes-graphics/spir/spirv-llvm-translator_21.1.0.bb @@ -15,19 +15,12 @@ UPSTREAM_CHECK_GITTAGREGEX = "v(?P\d+(\.\d+)+)" DEPENDS = "llvm spirv-tools spirv-headers" -inherit cmake pkgconfig python3native +inherit cmake pkgconfig lib_package -# Specify any options you want to pass to cmake using EXTRA_OECMAKE: -# for CMAKE_SHARED_LIBS=OFF see https://github.com/KhronosGroup/SPIRV-LLVM-Translator/issues/1868 EXTRA_OECMAKE = "\ -DBASE_LLVM_VERSION='${@oe.utils.trim_version('${PV}', 3)}' \ + -DCMAKE_SKIP_BUILD_RPATH=ON \ -DBUILD_SHARED_LIBS=ON \ - -DCMAKE_BUILD_TYPE=Release \ - -DCMAKE_POSITION_INDEPENDENT_CODE=ON \ - -DCMAKE_SKIP_RPATH=ON \ - -DLLVM_EXTERNAL_LIT=lit \ - -DLLVM_INCLUDE_TESTS=ON \ - -Wno-dev \ -DLLVM_EXTERNAL_SPIRV_HEADERS_SOURCE_DIR=${STAGING_INCDIR}/.. \ " From patchwork Tue Sep 16 09:37:37 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ross Burton X-Patchwork-Id: 70296 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 1184ACAC598 for ; Tue, 16 Sep 2025 09:37:53 +0000 (UTC) Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by mx.groups.io with SMTP id smtpd.web10.15011.1758015464142396853 for ; Tue, 16 Sep 2025 02:37:44 -0700 Authentication-Results: mx.groups.io; dkim=none (message not signed); spf=pass (domain: arm.com, ip: 217.140.110.172, mailfrom: ross.burton@arm.com) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 853F119F6 for ; Tue, 16 Sep 2025 02:37:35 -0700 (PDT) Received: from cesw-amp-gbt-1s-m12830-04.lab.cambridge.arm.com (usa-sjc-imap-foss1.foss.arm.com [10.121.207.14]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id 629BE3F66E for ; Tue, 16 Sep 2025 02:37:43 -0700 (PDT) From: Ross Burton To: openembedded-core@lists.openembedded.org Subject: [PATCH v2 2/3] spirv-tools: improve packaging Date: Tue, 16 Sep 2025 10:37:37 +0100 Message-ID: <20250916093738.1636562-2-ross.burton@arm.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250916093738.1636562-1-ross.burton@arm.com> References: <20250916093738.1636562-1-ross.burton@arm.com> MIME-Version: 1.0 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 ; Tue, 16 Sep 2025 09:37:53 -0000 X-Groupsio-URL: https://lists.openembedded.org/g/openembedded-core/message/223535 spirv-tools is a set of libraries and some binaries that link to those libraries, so inherit lib_package so that the binaries and the libraries are packaged separately. The lesspipe script hasn't needed bash since 2018[1], so remove the bash dependency and package the script with the other binaries. The build type unless specified is Debug, explicitly set RelWithDebInfo. [1] spirv-tools f70e9e "tools/lesspipe: Allow generic shell (#2255)" Signed-off-by: Ross Burton --- meta/recipes-graphics/spir/spirv-tools_1.4.321.0.bb | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/meta/recipes-graphics/spir/spirv-tools_1.4.321.0.bb b/meta/recipes-graphics/spir/spirv-tools_1.4.321.0.bb index 30c42e915f9..c3e0d17d87a 100644 --- a/meta/recipes-graphics/spir/spirv-tools_1.4.321.0.bb +++ b/meta/recipes-graphics/spir/spirv-tools_1.4.321.0.bb @@ -19,11 +19,12 @@ PE = "1" # upstream considers a release. UPSTREAM_CHECK_GITTAGREGEX = "sdk-(?P\d+(\.\d+)+)" -inherit cmake +inherit cmake lib_package DEPENDS = "spirv-headers" EXTRA_OECMAKE += "\ + -DCMAKE_BUILD_TYPE=RelWithDebInfo \ -DSPIRV-Headers_SOURCE_DIR=${STAGING_EXECPREFIXDIR} \ -DSPIRV_TOOLS_BUILD_STATIC=OFF \ -DBUILD_SHARED_LIBS=ON \ @@ -46,8 +47,4 @@ do_install:append:class-target() { SOLIBS = ".so" FILES_SOLIBSDEV = "" -PACKAGES =+ "${PN}-lesspipe" -FILES:${PN}-lesspipe = "${base_bindir}/spirv-lesspipe.sh" -RDEPENDS:${PN}-lesspipe += "${PN} bash" - BBCLASSEXTEND = "native nativesdk" From patchwork Tue Sep 16 09:37:38 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ross Burton X-Patchwork-Id: 70295 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 14323CAC599 for ; Tue, 16 Sep 2025 09:37:53 +0000 (UTC) Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by mx.groups.io with SMTP id smtpd.web11.15371.1758015464905985796 for ; Tue, 16 Sep 2025 02:37:45 -0700 Authentication-Results: mx.groups.io; dkim=none (message not signed); spf=pass (domain: arm.com, ip: 217.140.110.172, mailfrom: ross.burton@arm.com) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 35D7012FC for ; Tue, 16 Sep 2025 02:37:36 -0700 (PDT) Received: from cesw-amp-gbt-1s-m12830-04.lab.cambridge.arm.com (usa-sjc-imap-foss1.foss.arm.com [10.121.207.14]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id 0A9973F66E for ; Tue, 16 Sep 2025 02:37:43 -0700 (PDT) From: Ross Burton To: openembedded-core@lists.openembedded.org Subject: [PATCH v2 3/3] mesa: clean up libopencl-mesa dependencies Date: Tue, 16 Sep 2025 10:37:38 +0100 Message-ID: <20250916093738.1636562-3-ross.burton@arm.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250916093738.1636562-1-ross.burton@arm.com> References: <20250916093738.1636562-1-ross.burton@arm.com> MIME-Version: 1.0 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 ; Tue, 16 Sep 2025 09:37:53 -0000 X-Groupsio-URL: https://lists.openembedded.org/g/openembedded-core/message/223536 The libraries in spirv-tools and spirv-llvm-translator are linked to libopencl, so the correct dependencies are generated automatically. Signed-off-by: Ross Burton --- meta/recipes-graphics/mesa/mesa.inc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/meta/recipes-graphics/mesa/mesa.inc b/meta/recipes-graphics/mesa/mesa.inc index 5dee19fae9e..39924508ca9 100644 --- a/meta/recipes-graphics/mesa/mesa.inc +++ b/meta/recipes-graphics/mesa/mesa.inc @@ -224,7 +224,7 @@ DEV_PKG_DEPENDENCY = "" RPROVIDES:libgles2-mesa += "libgles3-mesa" RPROVIDES:libgles2-mesa-dev += "libgles3-mesa-dev" -RDEPENDS:libopencl-mesa += "${@bb.utils.contains('PACKAGECONFIG', 'opencl', 'libclc spirv-tools spirv-llvm-translator', '', d)}" +RDEPENDS:libopencl-mesa += "${@bb.utils.contains('PACKAGECONFIG', 'opencl', 'libclc', '', d)}" PACKAGES =+ "libegl-mesa libegl-mesa-dev \ libgallium \