From patchwork Sat Jul 18 05:05:00 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?b?Wm9sdMOhbiBCw7ZzesO2cm3DqW55aQ==?= X-Patchwork-Id: 92767 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 B0472C44521 for ; Sat, 18 Jul 2026 05:05:13 +0000 (UTC) Received: from mail-wr1-f43.google.com (mail-wr1-f43.google.com [209.85.221.43]) by mx.groups.io with SMTP id smtpd.msgproc02-g2.798.1784351111175581961 for ; Fri, 17 Jul 2026 22:05:11 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@gmail.com header.s=20251104 header.b=QQO5dz2o; spf=pass (domain: gmail.com, ip: 209.85.221.43, mailfrom: zboszor@gmail.com) Received: by mail-wr1-f43.google.com with SMTP id ffacd0b85a97d-47df440fcd5so4594315f8f.3 for ; Fri, 17 Jul 2026 22:05:10 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1784351109; x=1784955909; darn=lists.openembedded.org; h=content-transfer-encoding:content-type:mime-version:message-id:date :subject:cc:to:from:from:to:cc:subject:date:message-id:reply-to :content-type; bh=450r/B9qx7wA9XDXs0TxZJpd01lL5MbzSQT2iUevacU=; b=QQO5dz2oq2u+aOH5M4L1hrmdA0zBREP6rLEjvLRDDIWC5pjo6iV9yzAFdRGxj0G+a/ 3U+shgfwABgvPsJyhWcfe+aA59wJt+kMH2NpPRDrk714RnfYqr/DpkAe8QrOqLutCFXf RUPQsaAngsGnnwta/AcdcuQAR24z6lRarDuxRQtE0TGRpegh48rmHbydNoFLb2iKegOk IVlk7yQSzPfFeylYfG2ayQCbJ+OJ1BCRdpEOK3bwkihYw23H0cbC2XpBwV0r4WNTZerT gU1nlSRclbX2MbR6pf3SiSKs9nifDFk+3z216WBaU/CD3SXpFTBLdEHnQOqLFub4iRUN NiQw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1784351109; x=1784955909; h=content-transfer-encoding:content-type:mime-version:message-id:date :subject:cc:to:from:x-gm-gg:x-gm-message-state:from:to:cc:subject :date:message-id:reply-to:content-type; bh=450r/B9qx7wA9XDXs0TxZJpd01lL5MbzSQT2iUevacU=; b=NJTmsdbrp2llIGsHNy8Uq73HK5uWZAlMROzFYc+qhQyW02s8IkxMXKjZA+E5Z7yZo3 vrFxylHTAh4ZTbLLtoH0c7k4a1330UvQ1cNjBB0LDwvXnE0Y2cYQIAaHZVgp3Ti/5Kue YpjpERqfMryukaZEXRDSxOri1Kcq7vICpw5pwF0c6iOBdYihsV68iEB79KJ35IOznI/F j4VWfW9bO4N9HfiiBGxaz9In2mzIFLa9qP8dI7S7PGdQf7kJUIdnENWUa+gdNFQHJL2P xggdMVcNgCoHv1uDpgisVqh37T9ph65vTSxolv4kCml50Jhw7Ea4C1gcNCWoDrVMTqBL 2n5g== X-Gm-Message-State: AOJu0YxNnX2VjpWMWxhwL7Alm12yizgVaVdZimOx2guRekrwAb3JEzFi VnJvjOlNXiUsIZHxeeZWE5XMjEPPRSxcHpU66RsIwSdOrbxFXKoHimXxC5l2Tw== X-Gm-Gg: AfdE7cm8+TiTUOWbIlpnAQmrf5ZbWrgOFie8T5Fnq9NujmBMk/7O0ZfezlYMA61oJBX 5zDopjJSJuZBrGfXXCc4eSpXlW1ceJOaFhinlBU1GSqFjUnjFBDAnE2S3XcAHxn1bM9X2+c5BOc 7LtqCYisIo3eyro8RSrbDlvvwgSH+NBMek/QK3zA3Wdby30HkhfgMWs1Ou+OQZ7Fbqzsv07OPQ+ 5vGZtX1sAgUQIdfn/RzrKiIJfBBs/NUWASczlauVdImwikJueAMQkYz5wL4JUMH8toh08Mtmeen rQg0N2U1pfrWSM+bc5c1WU1DykwzAEZYGDEh7Wy2VOdXGRIYcy7CnANzdDKLQ7MmPa2phVDJ2tU u6rAziSsITDhj35PX2+ABQcoQAfakTUaidxQjODJavPV+aBALEitNijdI9Vnx7xZz5A== X-Received: by 2002:a5d:5e07:0:b0:475:f100:360d with SMTP id ffacd0b85a97d-47f62340311mr6075425f8f.60.1784351109140; Fri, 17 Jul 2026 22:05:09 -0700 (PDT) Received: from term011.lan (BC24411C.dsl.pool.telekom.hu. [188.36.65.28]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-47f66df025csm7781005f8f.0.2026.07.17.22.05.08 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 17 Jul 2026 22:05:08 -0700 (PDT) From: =?utf-8?b?Wm9sdMOhbiBCw7ZzesO2cm3DqW55aQ==?= To: openembedded-core@lists.openembedded.org Cc: =?utf-8?b?Wm9sdMOhbiBCw7ZzesO2cm3DqW55aQ==?= Subject: [PATCH 1/3] mesa: Upgrade to 26.1.5 Date: Sat, 18 Jul 2026 07:05:00 +0200 Message-ID: <20260718050502.62359-1-zboszor@gmail.com> X-Mailer: git-send-email 2.55.0 MIME-Version: 1.0 List-Id: X-Webhook-Received: from 45-33-107-173.ip.linodeusercontent.com [45.33.107.173] by aws-us-west-2-korg-lkml-1.web.codeaurora.org with HTTPS for ; Sat, 18 Jul 2026 05:05:13 -0000 X-Groupsio-URL: https://lists.openembedded.org/g/openembedded-core/message/241229 See the announcement: https://lists.freedesktop.org/archives/mesa-dev/2026-July/226671.html Signed-off-by: Zoltán Böszörményi --- meta/recipes-graphics/mesa/mesa.inc | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/meta/recipes-graphics/mesa/mesa.inc b/meta/recipes-graphics/mesa/mesa.inc index bb071e2411..15d56c804d 100644 --- a/meta/recipes-graphics/mesa/mesa.inc +++ b/meta/recipes-graphics/mesa/mesa.inc @@ -23,8 +23,8 @@ SRC_URI = "https://archive.mesa3d.org/mesa-${PV}.tar.xz \ file://0001-src-util-u_math.c-do-not-use-arm-fpu-instructions-if.patch \ " -SRC_URI[sha256sum] = "072705caa9adf4740f1489194b13e278ad959166863b5271fe423a86353c9ab6" -PV = "26.1.4" +SRC_URI[sha256sum] = "79e421c7ce18cd9e790b8375920325779f10798630bf30e0b22f1a21c8617122" +PV = "26.1.5" UPSTREAM_CHECK_GITTAGREGEX = "mesa-(?P\d+(\.\d+)+)" From patchwork Sat Jul 18 05:05:01 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?b?Wm9sdMOhbiBCw7ZzesO2cm3DqW55aQ==?= X-Patchwork-Id: 92765 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 8B446C4450A for ; Sat, 18 Jul 2026 05:05:13 +0000 (UTC) Received: from mail-wr1-f53.google.com (mail-wr1-f53.google.com [209.85.221.53]) by mx.groups.io with SMTP id smtpd.msgproc02-g2.799.1784351111731811517 for ; Fri, 17 Jul 2026 22:05:12 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@gmail.com header.s=20251104 header.b=jdGrLQ5e; spf=pass (domain: gmail.com, ip: 209.85.221.53, mailfrom: zboszor@gmail.com) Received: by mail-wr1-f53.google.com with SMTP id ffacd0b85a97d-470174001a0so2759275f8f.0 for ; Fri, 17 Jul 2026 22:05:11 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1784351110; x=1784955910; darn=lists.openembedded.org; h=content-transfer-encoding:content-type:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:from:to:cc:subject :date:message-id:reply-to:content-type; bh=A8TRff+835TVJzMKsDf3IQDz58J4K42kR2tk2fnb0Gw=; b=jdGrLQ5eYFnovkGrAcv5ofnKGSnO6XSadzpDfx1PEygbzya3As86QWTW4NOLCU5WPJ lxET5v+ROQYYkxPEuO8IMQ1DGneiz5zW8aYe6fVDT9Etn4JEtqjjvjRsJ/tGjsdVJ0uT rULiNAuflymyLSx4nfnqlVMqy40kaCbpdhhe38Of7eDydyl1VvWF3+JIGgM6kevybk5k H4dn+0RkRc0ENAeBljhC7/yL/R24LQZIFUuLTTSgj61w79caFcy9VdQFg8U7n/ExMdAA IzMh1N8ha9p0q0ffmAxWfaH3KJ2eB/jYFNfI64TmLFbr7fqjETU0lvE5NQNBNWk0HNvh 7vaw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1784351110; x=1784955910; h=content-transfer-encoding:content-type:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to :content-type; bh=A8TRff+835TVJzMKsDf3IQDz58J4K42kR2tk2fnb0Gw=; b=hCoDqNJh5e9gDG6ctStp7EAUeDSdMGUqCbc4b7rJbuLHYFtWoTv0NiJiIoKWronBZy M2+agOSvfGyhxhPfF5g3/9zeLAyZOYepZvYSL+ms9J3UXd9ifQnhJV+dLe9n+rxNc4Lo bi76/PNIrzAXI3f/j/0g2zKw0t2fYSuedkqZ44bDNwFCYS8rBNx6+HW45jJmEsItWrLi XYhAcrshZl7L4TaLQSM0e62424kYm6N6RYwYkmRU240MPNApw32lEOvOd9W/efP7M6+i fkiv6Bn2TTs+txgbMgL5+z3tq+iGpeFNyCdqn0KBWI5QdOQY0ghdC5QfcyrjoXspbDAR Im/g== X-Gm-Message-State: AOJu0YyviEadc6BlVH2n15/0w1Mh7EXdrqyUvwomXPzrCdVBxGqCmAxn kHQOu/pP4lccXKFxVgDFoo0MCczky65LIU4csJSA/dXdGerili/beXy3D5iTDQ== X-Gm-Gg: AfdE7cmleDoDBpYEp4OQhqDSIvdtEnmosKiEb+d3oxv0PBihFHKiMVqIX7XwxCkfJ65 NzdPNDm5NWjk3Ifoeo2k5u3k9O4jyUWz3K7wFAaR+Fwo0r8nwluRCQLJvIiEbeD5Q0ofUGAqwp9 SwTWwbdtKAUnQsI+r4xsUf/hIQERYueC7VNvdcQcS9n5PIkqNqjzzoQBjJqFJC/Yqt4nGYfWBgi LhXIrJZo0xiEgukz6WwZhfnm+3epj9roz0oEU8s1uw7IxKPMQzhAf3EV4cNJon18TxgV7cmLKMm /5HH1x1YOiK29/mWmaxE3P5PTc2Rs1WeN9LYLUC1RgVUvaUSsN/927yzoUUCMm7T5g9TaMdG75N LExbDa6X4d6JhJ7da7QEjLhbC/YZ6cFgQmkaHS2yIEMttnuA8LWAd50Mjq4aKBDZ4vg== X-Received: by 2002:a05:6000:4615:b0:47d:d812:e03b with SMTP id ffacd0b85a97d-47f623351f1mr6903060f8f.43.1784351109904; Fri, 17 Jul 2026 22:05:09 -0700 (PDT) Received: from term011.lan (BC24411C.dsl.pool.telekom.hu. [188.36.65.28]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-47f66df025csm7781005f8f.0.2026.07.17.22.05.09 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 17 Jul 2026 22:05:09 -0700 (PDT) From: =?utf-8?b?Wm9sdMOhbiBCw7ZzesO2cm3DqW55aQ==?= To: openembedded-core@lists.openembedded.org Cc: =?utf-8?b?Wm9sdMOhbiBCw7ZzesO2cm3DqW55aQ==?= Subject: [PATCH 2/3] mesa-libclc: New recipe for forking libclc for Rusticl purposes in Mesa Date: Sat, 18 Jul 2026 07:05:01 +0200 Message-ID: <20260718050502.62359-2-zboszor@gmail.com> X-Mailer: git-send-email 2.55.0 In-Reply-To: <20260718050502.62359-1-zboszor@gmail.com> References: <20260718050502.62359-1-zboszor@gmail.com> MIME-Version: 1.0 List-Id: X-Webhook-Received: from 45-33-107-173.ip.linodeusercontent.com [45.33.107.173] by aws-us-west-2-korg-lkml-1.web.codeaurora.org with HTTPS for ; Sat, 18 Jul 2026 05:05:13 -0000 X-Groupsio-URL: https://lists.openembedded.org/g/openembedded-core/message/241230 See the reasoning and discussion at https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/43020 TL;DR: LLVM constantly introduces breaking changes that cause regressions for running OpenCL CTS with Rusticl and finally Karol Herbst had enough. This fork is from the LLVM 22 version of libclc and contains the necessary fixes to make Rusticl pass OpenCL CTS. Signed-off-by: Zoltán Böszörményi --- meta/recipes-graphics/mesa/mesa-libclc_git.bb | 27 +++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 meta/recipes-graphics/mesa/mesa-libclc_git.bb diff --git a/meta/recipes-graphics/mesa/mesa-libclc_git.bb b/meta/recipes-graphics/mesa/mesa-libclc_git.bb new file mode 100644 index 0000000000..8a3a78d051 --- /dev/null +++ b/meta/recipes-graphics/mesa/mesa-libclc_git.bb @@ -0,0 +1,27 @@ +SUMMARY = "Mesa fork of libclc: Implementation of the library requirements of the OpenCL C programming language." +HOMEPAGE = "https://gitlab.freedesktop.org/karolherbst/mesa-libclc/" +SECTION = "devel" +LICENSE = "Apache-2.0-with-LLVM-exception" +LIC_FILES_CHKSUM = "file://LICENSE.TXT;md5=7cc795f6cbb2d801d84336b83c8017db" + +SRC_URI = "git://gitlab.freedesktop.org/karolherbst/mesa-libclc.git;protocol=https;branch=llvm_22" + +SRCREV = "b1934c37694714352edc19232e23480feaf18ab4" +PV = "0.1.0" + +inherit cmake pkgconfig + +# Depend explicitly on clang-native instead of using TOOLCHAIN as the build +# objects from this recipe are build explicitly using clang for GPU targets. +# We could INHIBIT_DEFAULT_DEPS to avoid any other toolchain but then we need +# to wrestle CMake to configure without a toolchain. +DEPENDS += "clang-native spirv-llvm-translator-native" + +# Semicolon-separated list of targets to build +LIBCLC_TARGETS ?= "all" + +EXTRA_OECMAKE += "-DLIBCLC_TARGETS_TO_BUILD='${LIBCLC_TARGETS}'" + +FILES:${PN} += "${datadir}/mesa-clc" + +BBCLASSEXTEND = "native nativesdk" From patchwork Sat Jul 18 05:05:02 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?b?Wm9sdMOhbiBCw7ZzesO2cm3DqW55aQ==?= X-Patchwork-Id: 92766 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 9C1A8C4451C for ; Sat, 18 Jul 2026 05:05:13 +0000 (UTC) Received: from mail-wr1-f54.google.com (mail-wr1-f54.google.com [209.85.221.54]) by mx.groups.io with SMTP id smtpd.msgproc02-g2.800.1784351112478130435 for ; Fri, 17 Jul 2026 22:05:12 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@gmail.com header.s=20251104 header.b=MdaQzNr7; spf=pass (domain: gmail.com, ip: 209.85.221.54, mailfrom: zboszor@gmail.com) Received: by mail-wr1-f54.google.com with SMTP id ffacd0b85a97d-476d8e647e9so7674259f8f.0 for ; Fri, 17 Jul 2026 22:05:12 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1784351111; x=1784955911; darn=lists.openembedded.org; h=content-transfer-encoding:content-type:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:from:to:cc:subject :date:message-id:reply-to:content-type; bh=mUuu93/bRI7Fe9J5bkvuzVIFqZX2tQIn6bayVJyFVEs=; b=MdaQzNr7q4bsoTTeoHJWoM2B/Xc7dzJ6qR9wswOWNXnXoz38J84+2qy7YMU4hGUCyn L12APDgAlMy1AQ8KEMb86QOWc+IgXqR4CW4NJcUN5CLJN/eSZ8Beq/K5FyVmF8sDd2hl NCWZMe3jk5wEdJ3APOF9qC/T37OZ9IqhtlI8bMCJd7jKoW6xG71XRB0GrJmHEW1EbGjN 2XqEh64URjKvWytlx108ax/RP3e1ZYdTNbRxSSqWUZgGHKBn0qONyuTyHZV7NdUiLbfl varVQbEzfGpy7+2gHKg2Jna6qfYagRx6atXZYt4355cdx0SrQ3MBVm3mw3oZmYQAaQOB qYSQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1784351111; x=1784955911; h=content-transfer-encoding:content-type:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to :content-type; bh=mUuu93/bRI7Fe9J5bkvuzVIFqZX2tQIn6bayVJyFVEs=; b=QtYCeo/b/oYe8zL20VRWLhvjTskEVrF4hYqSMbVSTYyCi3hvBfblTXwhCF9ihK9FOA muQB3ZueRxoBK9WMWtVCzzGkMvUfc8m2Ap4TOrlHoY8eAXbt2uPrhcC/tcMwV2m9bUKE Vx/zFtU3yKplymgb9pjomn3iTuXj7o94+FAykEhLJdufYVqTlJ+2vCJpQ8U/vqY9lldI i9CNeICkIFJolKiB4DgrmzWgZnK/fcEI40jWjjaZUiisIEeK98UAB/m0rHWRHaP/9cij +ZwQHb4sjxMG66KINiweMSL5erw4aJ1LHQmt8CKSIRJCBS0xYBSc0wtxGdtQjcNCbyGI uj4w== X-Gm-Message-State: AOJu0YxVWgyGVPJwxAruvR1Z7uctVWZvCtXgJQ6cWNiwGXK2OoeTqMev TtQBnQvt5stR0jZWJkc+GrRIgQBdWLRftCbiHvxAvg3gy00SGuWYkzHV0OWwQg== X-Gm-Gg: AfdE7clbqLaGJujFC3a6t/bEsNL1nVVyYySvzn+EOre9UqJ8pyMmDR9CSSEGeHflvi+ DqNGDRFod+H9iVPT7ChliWCyc7IMhLbRaTTRZdr3okEGPmCFFfor6Cx0a4NiG5wFFbVSSVRWvG+ Ax6y9PyVG5bePIwmyZyjwz0MT1gJroF8VnnawrOVAkzsrYHH3xWZWRRBE+GdanW5HcSE+JShvzi zb01CRLtHTSRQdQIqQ1LF1xTiCiYESLqjU8AhYkhfSUTCZ4V61fsPPclhSRt+7b1E61ddZUXAvj ULoTcBLPXiMu7ePw1xHPNhU96wE7XU7rlhTiS3em54ZCgWJ3xJ3FO2Coh2tzYbkQ6kOZ9qm15pq NDKME/JdOWlgZl1XNAZ7/BnqycXiOTjr3z22lHXm1c6BjaoWuqQ1LltCNuGahGI4hUyuBlzf8sX BE X-Received: by 2002:a5d:6f10:0:b0:473:506a:e47c with SMTP id ffacd0b85a97d-47f62317636mr7688196f8f.26.1784351110593; Fri, 17 Jul 2026 22:05:10 -0700 (PDT) Received: from term011.lan (BC24411C.dsl.pool.telekom.hu. [188.36.65.28]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-47f66df025csm7781005f8f.0.2026.07.17.22.05.09 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 17 Jul 2026 22:05:10 -0700 (PDT) From: =?utf-8?b?Wm9sdMOhbiBCw7ZzesO2cm3DqW55aQ==?= To: openembedded-core@lists.openembedded.org Cc: =?utf-8?b?Wm9sdMOhbiBCw7ZzesO2cm3DqW55aQ==?= Subject: [PATCH 3/3] mesa, mesa-tools-native: Use mesa-libclc Date: Sat, 18 Jul 2026 07:05:02 +0200 Message-ID: <20260718050502.62359-3-zboszor@gmail.com> X-Mailer: git-send-email 2.55.0 In-Reply-To: <20260718050502.62359-1-zboszor@gmail.com> References: <20260718050502.62359-1-zboszor@gmail.com> MIME-Version: 1.0 List-Id: X-Webhook-Received: from 45-33-107-173.ip.linodeusercontent.com [45.33.107.173] by aws-us-west-2-korg-lkml-1.web.codeaurora.org with HTTPS for ; Sat, 18 Jul 2026 05:05:13 -0000 X-Groupsio-URL: https://lists.openembedded.org/g/openembedded-core/message/241231 Backport two patches from https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/43020 to use mesa-libclc, which makes Rusticl's OpenCL C more correct. Signed-off-by: Zoltán Böszörményi --- ...-optional-for-configs-not-needing-it.patch | 123 ++++++++++++++++++ ...lc-use-our-downstream-fork-of-libclc.patch | 43 ++++++ .../mesa/mesa-tools-native.bb | 2 +- meta/recipes-graphics/mesa/mesa.inc | 6 +- 4 files changed, 171 insertions(+), 3 deletions(-) create mode 100644 meta/recipes-graphics/mesa/files/0001-clc-make-libclc-optional-for-configs-not-needing-it.patch create mode 100644 meta/recipes-graphics/mesa/files/0002-clc-use-our-downstream-fork-of-libclc.patch diff --git a/meta/recipes-graphics/mesa/files/0001-clc-make-libclc-optional-for-configs-not-needing-it.patch b/meta/recipes-graphics/mesa/files/0001-clc-make-libclc-optional-for-configs-not-needing-it.patch new file mode 100644 index 0000000000..a52931dbf5 --- /dev/null +++ b/meta/recipes-graphics/mesa/files/0001-clc-make-libclc-optional-for-configs-not-needing-it.patch @@ -0,0 +1,123 @@ +From 5df2fb59c32fd6e3ad53bdaf98afccfddbdd14fc Mon Sep 17 00:00:00 2001 +From: Karol Herbst +Date: Fri, 17 Jul 2026 17:45:45 +0200 +Subject: [PATCH 1/2] clc: make libclc optional for configs not needing it + +Upstream-Status: Submitted [https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/43020] +--- + meson.build | 2 +- + src/compiler/clc/meson.build | 73 +++++++++++++++++++----------------- + 2 files changed, 39 insertions(+), 36 deletions(-) + +diff --git a/meson.build b/meson.build +index 1eca91fc940..68bbb942b99 100644 +--- a/meson.build ++++ b/meson.build +@@ -949,7 +949,7 @@ with_poly = [ + ].contains(true) + + dep_clc = null_dep +-if with_clc ++if with_gallium_rusticl or with_microsoft_clc + dep_clc = dependency('libclc') + endif + +diff --git a/src/compiler/clc/meson.build b/src/compiler/clc/meson.build +index 9ff61440f0d..249fd31f478 100644 +--- a/src/compiler/clc/meson.build ++++ b/src/compiler/clc/meson.build +@@ -4,7 +4,6 @@ + files_libmesaclc = files( + 'clc.c', + 'clc_helpers.cpp', +- 'nir_load_libclc.c', + ) + + _libmesaclc_c_args = [] +@@ -41,45 +40,49 @@ if not _shared_llvm or \ + _libmesaclc_cpp_args += ['-DUSE_STATIC_OPENCL_C_H=1'] + endif + +-_basedir = dep_clc.get_variable(pkgconfig : 'libexecdir') ++if dep_clc.found() ++ files_libmesaclc += 'nir_load_libclc.c' + +-_static_libclc = get_option('static-libclc') +-if _static_libclc.length() > 0 +- if _static_libclc.contains('all') +- _static_libclc = ['spirv', 'spirv64'] +- endif +- prog_zstd = find_program('zstd', required : false, native : true) +- _zstd_static_libclc = dep_zstd.found() and prog_zstd.found() +- if _zstd_static_libclc +- _libmesaclc_c_args += '-DHAVE_STATIC_LIBCLC_ZSTD' +- endif +- foreach s : _static_libclc +- _libmesaclc_c_args += '-DHAVE_STATIC_LIBCLC_@0@'.format(s.to_upper()) +- f = '@0@-mesa3d-.spv'.format(s) +- _libclc_file = _basedir / f ++ _basedir = dep_clc.get_variable(pkgconfig : 'libexecdir') ++ ++ _static_libclc = get_option('static-libclc') ++ if _static_libclc.length() > 0 ++ if _static_libclc.contains('all') ++ _static_libclc = ['spirv', 'spirv64'] ++ endif ++ prog_zstd = find_program('zstd', required : false, native : true) ++ _zstd_static_libclc = dep_zstd.found() and prog_zstd.found() + if _zstd_static_libclc +- _libclc_file = custom_target( +- '@0@.zstd'.format(f), +- command : [prog_zstd, '-f', '@INPUT@', '-o', '@OUTPUT@'], ++ _libmesaclc_c_args += '-DHAVE_STATIC_LIBCLC_ZSTD' ++ endif ++ foreach s : _static_libclc ++ _libmesaclc_c_args += '-DHAVE_STATIC_LIBCLC_@0@'.format(s.to_upper()) ++ f = '@0@-mesa3d-.spv'.format(s) ++ _libclc_file = _basedir / f ++ if _zstd_static_libclc ++ _libclc_file = custom_target( ++ '@0@.zstd'.format(f), ++ command : [prog_zstd, '-f', '@INPUT@', '-o', '@OUTPUT@'], ++ input : [_libclc_file], ++ output : '@0@.zstd'.format(f), ++ ) ++ endif ++ files_libmesaclc += custom_target( ++ '@0@.h'.format(f), ++ command : [ ++ prog_python, files_xxd, '-b', '@INPUT@', '@OUTPUT@', ++ '-n', 'libclc_@0@_mesa3d_spv'.format(s), ++ ], + input : [_libclc_file], +- output : '@0@.zstd'.format(f), ++ output : '@0@.h'.format(f), ++ depend_files : files_xxd, + ) ++ endforeach ++ else ++ _libmesaclc_c_args += ['-DDYNAMIC_LIBCLC_PATH="@0@/"'.format(_basedir)] ++ if not cc.has_function('mmap') ++ error('mmap required for dynamic libCLC loading') + endif +- files_libmesaclc += custom_target( +- '@0@.h'.format(f), +- command : [ +- prog_python, files_xxd, '-b', '@INPUT@', '@OUTPUT@', +- '-n', 'libclc_@0@_mesa3d_spv'.format(s), +- ], +- input : [_libclc_file], +- output : '@0@.h'.format(f), +- depend_files : files_xxd, +- ) +- endforeach +-else +- _libmesaclc_c_args += ['-DDYNAMIC_LIBCLC_PATH="@0@/"'.format(_basedir)] +- if not cc.has_function('mmap') +- error('mmap required for dynamic libCLC loading') + endif + endif + +-- +2.55.0 + diff --git a/meta/recipes-graphics/mesa/files/0002-clc-use-our-downstream-fork-of-libclc.patch b/meta/recipes-graphics/mesa/files/0002-clc-use-our-downstream-fork-of-libclc.patch new file mode 100644 index 0000000000..39e120b036 --- /dev/null +++ b/meta/recipes-graphics/mesa/files/0002-clc-use-our-downstream-fork-of-libclc.patch @@ -0,0 +1,43 @@ +From 8bda7974958e5ba56b0eec25a7876c004b6b743b Mon Sep 17 00:00:00 2001 +From: Karol Herbst +Date: Thu, 16 Jul 2026 21:20:52 +0200 +Subject: [PATCH 2/2] clc: use our downstream fork of libclc + +There are a couple of issues with the upstream versions and release +schedules and overall experience makes it dificult for us to rely on +users using a proper functional implementation. + +And we want to ship a conformant OpenCL implementation here and that's +difficult if users run untested libclc versions or libclc with known bugs +that aren't going to get fixed upstream because the release is already +EoL. + +Backport-to: * +Upstream-Status: Submitted [https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/43020] +--- + meson.build | 9 ++++++++- + 1 file changed, 8 insertions(+), 1 deletion(-) + +diff --git a/meson.build b/meson.build +index 68bbb942b99..6e2590cc2c6 100644 +--- a/meson.build ++++ b/meson.build +@@ -950,7 +950,14 @@ with_poly = [ + + dep_clc = null_dep + if with_gallium_rusticl or with_microsoft_clc +- dep_clc = dependency('libclc') ++ dep_clc = dependency('mesa-libclc', required : false, ++ not_found_message : ++ 'mesa-libclc not found. Build will fall back to upstream libclc, however ' + ++ 'certain versions are known to contain bugs that make OpenCL builtins ' + ++ 'return incorrect results.') ++ if not dep_clc.found() ++ dep_clc = dependency('libclc') ++ endif + endif + + gl_pkgconfig_c_flags = [] +-- +2.55.0 + diff --git a/meta/recipes-graphics/mesa/mesa-tools-native.bb b/meta/recipes-graphics/mesa/mesa-tools-native.bb index 20207450bf..c495d2e8a8 100644 --- a/meta/recipes-graphics/mesa/mesa-tools-native.bb +++ b/meta/recipes-graphics/mesa/mesa-tools-native.bb @@ -11,7 +11,7 @@ PACKAGECONFIG += "gallium-llvm" # to PACKAGECONFIG like in mesa.inc PACKAGECONFIG += "${@bb.utils.filter('DISTRO_FEATURES', 'x11 wayland', d)}" -DEPENDS += "libclc-native spirv-tools-native spirv-llvm-translator-native" +DEPENDS += "mesa-libclc-native spirv-tools-native spirv-llvm-translator-native" EXTRA_OEMESON += " \ -Dmesa-clc=enabled -Dinstall-mesa-clc=true -Dmesa-clc-bundle-headers=enabled \ diff --git a/meta/recipes-graphics/mesa/mesa.inc b/meta/recipes-graphics/mesa/mesa.inc index 15d56c804d..dea7a8295f 100644 --- a/meta/recipes-graphics/mesa/mesa.inc +++ b/meta/recipes-graphics/mesa/mesa.inc @@ -21,6 +21,8 @@ SRC_URI = "https://archive.mesa3d.org/mesa-${PV}.tar.xz \ file://0001-src-intel-compiler-jay-jay_ir.h-do-not-used-typed-en.patch \ file://0001-src-intel-compiler-jay-fix-GCC-10-case-label-declara.patch \ file://0001-src-util-u_math.c-do-not-use-arm-fpu-instructions-if.patch \ + file://0001-clc-make-libclc-optional-for-configs-not-needing-it.patch \ + file://0002-clc-use-our-downstream-fork-of-libclc.patch \ " SRC_URI[sha256sum] = "79e421c7ce18cd9e790b8375920325779f10798630bf30e0b22f1a21c8617122" @@ -110,7 +112,7 @@ PACKAGECONFIG[opengl] = "-Dopengl=true, -Dopengl=false" # "opencl" also requires libclc and gallium-llvm to be present in PACKAGECONFIG! # Be sure to enable them both for the target and for the native build. -PACKAGECONFIG[opencl] = "-Dgallium-rusticl=true -Dmesa-clc-bundle-headers=enabled, -Dgallium-rusticl=false, bindgen-cli-native clang libclc spirv-tools spirv-llvm-translator" +PACKAGECONFIG[opencl] = "-Dgallium-rusticl=true -Dmesa-clc-bundle-headers=enabled, -Dgallium-rusticl=false, bindgen-cli-native clang mesa-libclc spirv-tools spirv-llvm-translator" X11_DEPS = "xorgproto virtual/libx11 libxext libxxf86vm libxdamage libxfixes xrandr xorgproto libxshmfence" # "x11" requires "opengl" @@ -254,7 +256,7 @@ RPROVIDES:libopencl-mesa += "virtual-opencl-icd" RPROVIDES:libgles2-mesa += "libgles3-mesa" RPROVIDES:libgles2-mesa-dev += "libgles3-mesa-dev" -RDEPENDS:libopencl-mesa += "${@bb.utils.contains('PACKAGECONFIG', 'opencl', 'libclc', '', d)}" +RDEPENDS:libopencl-mesa += "${@bb.utils.contains('PACKAGECONFIG', 'opencl', 'mesa-libclc', '', d)}" PACKAGES =+ "libegl-mesa libegl-mesa-dev \ libgallium \