diff mbox series

[RFC,1/2] mesa: update 24.1.4 -> 24.2.0

Message ID 20240818164844.2738771-1-f_l_k@t-online.de
State New
Headers show
Series [RFC,1/2] mesa: update 24.1.4 -> 24.2.0 | expand

Commit Message

Markus Volk Aug. 18, 2024, 4:48 p.m. UTC
- Remove 0001-amd-Include-missing-llvm-IR-header-Module.h.patch -> merged
- INSANE_SKIP dev-so. All .so files that are installed in ${libdir}/dri
  are now links to libdril_dri.so, but they should still not be part of
  the dev package, I assume?
- add PACKAGE for mesa-gallium-drivers and install libgallium-24.2.0.so
- add python3-pyyaml-native-dependency

Signed-off-by: Markus Volk <f_l_k@t-online.de>
---
 ...lude-missing-llvm-IR-header-Module.h.patch | 41 -------------------
 .../{mesa-gl_24.1.4.bb => mesa-gl_24.2.0.bb}  |  0
 meta/recipes-graphics/mesa/mesa.inc           |  9 ++--
 .../mesa/{mesa_24.1.4.bb => mesa_24.2.0.bb}   |  0
 4 files changed, 5 insertions(+), 45 deletions(-)
 delete mode 100644 meta/recipes-graphics/mesa/files/0001-amd-Include-missing-llvm-IR-header-Module.h.patch
 rename meta/recipes-graphics/mesa/{mesa-gl_24.1.4.bb => mesa-gl_24.2.0.bb} (100%)
 rename meta/recipes-graphics/mesa/{mesa_24.1.4.bb => mesa_24.2.0.bb} (100%)

Comments

Alexander Kanavin Aug. 19, 2024, 8:57 a.m. UTC | #1
Has anything changes in this release w.r.t intel drivers? Do they
still requiure bits of meta-clang?

Given that we're now two major releases behind, I just do not think
that one vendor should be holding everyone else hostage to their
'special requirements'. I still think it's better to disable Intel
drivers, and move on. The vendor can re-enable them through their BSP
layer, and allocate resources towards integrating clang into core if
they so wish. Can this be raised privately with them or in a TSC
meeting?

Alex

On Sun, 18 Aug 2024 at 18:47, Markus Volk via lists.openembedded.org
<f_l_k=t-online.de@lists.openembedded.org> wrote:
>
> - Remove 0001-amd-Include-missing-llvm-IR-header-Module.h.patch -> merged
> - INSANE_SKIP dev-so. All .so files that are installed in ${libdir}/dri
>   are now links to libdril_dri.so, but they should still not be part of
>   the dev package, I assume?
> - add PACKAGE for mesa-gallium-drivers and install libgallium-24.2.0.so
> - add python3-pyyaml-native-dependency
>
> Signed-off-by: Markus Volk <f_l_k@t-online.de>
> ---
>  ...lude-missing-llvm-IR-header-Module.h.patch | 41 -------------------
>  .../{mesa-gl_24.1.4.bb => mesa-gl_24.2.0.bb}  |  0
>  meta/recipes-graphics/mesa/mesa.inc           |  9 ++--
>  .../mesa/{mesa_24.1.4.bb => mesa_24.2.0.bb}   |  0
>  4 files changed, 5 insertions(+), 45 deletions(-)
>  delete mode 100644 meta/recipes-graphics/mesa/files/0001-amd-Include-missing-llvm-IR-header-Module.h.patch
>  rename meta/recipes-graphics/mesa/{mesa-gl_24.1.4.bb => mesa-gl_24.2.0.bb} (100%)
>  rename meta/recipes-graphics/mesa/{mesa_24.1.4.bb => mesa_24.2.0.bb} (100%)
>
> diff --git a/meta/recipes-graphics/mesa/files/0001-amd-Include-missing-llvm-IR-header-Module.h.patch b/meta/recipes-graphics/mesa/files/0001-amd-Include-missing-llvm-IR-header-Module.h.patch
> deleted file mode 100644
> index 82ad88a079..0000000000
> --- a/meta/recipes-graphics/mesa/files/0001-amd-Include-missing-llvm-IR-header-Module.h.patch
> +++ /dev/null
> @@ -1,41 +0,0 @@
> -From 777d69cf15b80ab1f109a4936d6e4801c4b0e0f3 Mon Sep 17 00:00:00 2001
> -From: Khem Raj <raj.khem@gmail.com>
> -Date: Mon, 1 Jul 2024 23:09:29 -0700
> -Subject: [PATCH] amd: Include missing llvm IR header Module.h
> -MIME-Version: 1.0
> -Content-Type: text/plain; charset=UTF-8
> -Content-Transfer-Encoding: 8bit
> -
> -With LLVM-19, Module.h header is not being pulled, which results in
> -compile errors e.g.
> -
> -src/amd/llvm/ac_llvm_helper.cpp:102:10: error: no matching function for call to ‘unwrap(LLVMOpaqueModule*&)’
> -  102 |    unwrap(module)->setTargetTriple(TM->getTargetTriple().getTriple());
> -      |    ~~~~~~^~~~~~~~
> -In file included from /mnt/b/yoe/master/build/tmp/work/x86_64-linux/mesa-native/24.0.7/recipe-sysroot-native/usr/include/llvm/IR/Type.h:18,
> -                 from /mnt/b/yoe/master/build/tmp/work/x86_64-linux/mesa-native/24.0.7/recipe-sysroot-native/usr/include/llvm/IR/DerivedTypes.h:23,
> -                 from /mnt/b/yoe/master/build/tmp/work/x86_64-linux/mesa-native/24.0.7/recipe-sysroot-native/usr/include/llvm/IR/InstrTypes.h:26,
> -                 from /mnt/b/yoe/master/build/tmp/work/x86_64-linux/mesa-native/24.0.7/recipe-sysroot-native/usr/include/llvm/Analysis/TargetLibraryInfo.h:14,
> -                 from ../mesa-24.0.7/src/amd/llvm/ac_llvm_helper.cpp:8:
> -
> -Its getting the definition from llvm/IR/Type.h instead of Module.h and caused
> -confusion to compiler
> -
> -Upstream-Status: Submitted [https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29993]
> -Signed-off-by: Khem Raj <raj.khem@gmail.com>
> ----
> - src/amd/llvm/ac_llvm_helper.cpp | 1 +
> - 1 file changed, 1 insertion(+)
> -
> -diff --git a/src/amd/llvm/ac_llvm_helper.cpp b/src/amd/llvm/ac_llvm_helper.cpp
> -index 5d065279ad1..af4a50f8409 100644
> ---- a/src/amd/llvm/ac_llvm_helper.cpp
> -+++ b/src/amd/llvm/ac_llvm_helper.cpp
> -@@ -8,6 +8,7 @@
> - #include <llvm/Analysis/TargetLibraryInfo.h>
> - #include <llvm/IR/IRBuilder.h>
> - #include <llvm/IR/LegacyPassManager.h>
> -+#include <llvm/IR/Module.h>
> - #include <llvm/IR/Verifier.h>
> - #include <llvm/Target/TargetMachine.h>
> - #include <llvm/MC/MCSubtargetInfo.h>
> diff --git a/meta/recipes-graphics/mesa/mesa-gl_24.1.4.bb b/meta/recipes-graphics/mesa/mesa-gl_24.2.0.bb
> similarity index 100%
> rename from meta/recipes-graphics/mesa/mesa-gl_24.1.4.bb
> rename to meta/recipes-graphics/mesa/mesa-gl_24.2.0.bb
> diff --git a/meta/recipes-graphics/mesa/mesa.inc b/meta/recipes-graphics/mesa/mesa.inc
> index 499006655d..40e7bed648 100644
> --- a/meta/recipes-graphics/mesa/mesa.inc
> +++ b/meta/recipes-graphics/mesa/mesa.inc
> @@ -16,11 +16,10 @@ PE = "2"
>
>  SRC_URI = "https://mesa.freedesktop.org/archive/mesa-${PV}.tar.xz \
>             file://0001-meson-misdetects-64bit-atomics-on-mips-clang.patch \
> -           file://0001-amd-Include-missing-llvm-IR-header-Module.h.patch \
>             file://0001-freedreno-don-t-encode-build-path-into-binaries.patch\
>  "
>
> -SRC_URI[sha256sum] = "7cf7c6f665263ad0122889c1d4b076654c1eedea7a2f38c69c8c51579937ade1"
> +SRC_URI[sha256sum] = "c02bb72cea290f78b11895a0c95c7c92394f180d7ff66d4a762ec6950a58addf"
>
>  UPSTREAM_CHECK_GITTAGREGEX = "mesa-(?P<pver>\d+(\.\d+)+)"
>
> @@ -34,7 +33,7 @@ do_install:append() {
>    fi
>  }
>
> -DEPENDS = "expat makedepend-native flex-native bison-native libxml2-native zlib chrpath-replacement-native python3-mako-native gettext-native"
> +DEPENDS = "expat makedepend-native flex-native bison-native libxml2-native zlib chrpath-replacement-native python3-mako-native gettext-native python3-pyyaml-native"
>  DEPENDS:append:class-target = " ${@bb.utils.contains('PACKAGECONFIG', 'opencl', 'mesa-native', '', d)}"
>  EXTRANATIVEPATH += "chrpath-native"
>  PROVIDES = " \
> @@ -243,7 +242,7 @@ PACKAGES =+ "libegl-mesa libegl-mesa-dev \
>               libopencl-mesa libopencl-mesa-dev \
>               libxatracker libxatracker-dev \
>               mesa-megadriver mesa-vulkan-drivers \
> -             mesa-vdpau-drivers mesa-tools \
> +             mesa-vdpau-drivers mesa-gallium-drivers mesa-tools \
>              "
>
>  do_install:append () {
> @@ -335,6 +334,7 @@ FILES:mesa-megadriver = "${libdir}/dri/* ${datadir}/drirc.d"
>  FILES:mesa-vulkan-drivers = "${libdir}/libvulkan_*.so ${libdir}/libpowervr_rogue.so ${datadir}/vulkan"
>  FILES:${PN}-vdpau-drivers = "${libdir}/vdpau/*.so.*"
>  FILES:libegl-mesa = "${libdir}/libEGL*.so.* ${datadir}/glvnd/egl_vendor.d"
> +FILES:mesa-gallium-drivers = "${libdir}/libgallium-*.so"
>  FILES:libgbm = "${libdir}/libgbm.so.*"
>  FILES:libgles1-mesa = "${libdir}/libGLESv1*.so.*"
>  FILES:libgles2-mesa = "${libdir}/libGLESv2.so.*"
> @@ -362,6 +362,7 @@ FILES:libxatracker-dev = "${libdir}/libxatracker.so ${libdir}/libxatracker.la \
>  # catch all to get all the tools and data
>  FILES:${PN}-tools = "${bindir} ${datadir}"
>  ALLOW_EMPTY:${PN}-tools = "1"
> +INSANE_SKIP:${PN}-megadriver = "dev-so"
>
>  # Fix upgrade path from mesa to mesa-megadriver
>  RREPLACES:mesa-megadriver = "mesa"
> diff --git a/meta/recipes-graphics/mesa/mesa_24.1.4.bb b/meta/recipes-graphics/mesa/mesa_24.2.0.bb
> similarity index 100%
> rename from meta/recipes-graphics/mesa/mesa_24.1.4.bb
> rename to meta/recipes-graphics/mesa/mesa_24.2.0.bb
> --
> 2.45.2
>
>
> -=-=-=-=-=-=-=-=-=-=-=-
> Links: You receive all messages sent to this group.
> View/Reply Online (#203484): https://lists.openembedded.org/g/openembedded-core/message/203484
> Mute This Topic: https://lists.openembedded.org/mt/107965743/1686489
> Group Owner: openembedded-core+owner@lists.openembedded.org
> Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [alex.kanavin@gmail.com]
> -=-=-=-=-=-=-=-=-=-=-=-
>
Markus Volk Aug. 19, 2024, 2:33 p.m. UTC | #2
It looks to me like intel is just a little bit further along in terms 
of the mesa driver. Currently it is
also a requirement for gallium-asahi and I would expect at least  amd 
and panfrost to follow. Basically
it'll be required for all drivers that support runtime compiled shaders 
(like also done in Windows)
to enable features like raytracing/pathtracing.

That said, I'm not in favor of either solution, but I wouldn't expect 
libclc and clang/gcc-runtime
to become optional again for hardware that supports shaders.

On Mon, Aug 19 2024 at 10:57:38 AM +02:00:00, Alexander Kanavin 
<alex.kanavin@gmail.com> wrote:
> Has anything changes in this release w.r.t intel drivers? Do they
> still requiure bits of meta-clang?
> 
> Given that we're now two major releases behind, I just do not think
> that one vendor should be holding everyone else hostage to their
> 'special requirements'. I still think it's better to disable Intel
> drivers, and move on. The vendor can re-enable them through their BSP
> layer, and allocate resources towards integrating clang into core if
> they so wish. Can this be raised privately with them or in a TSC
> meeting?
> 
> Alex
> 
> On Sun, 18 Aug 2024 at 18:47, Markus Volk via lists.openembedded.org
> <f_l_k=t-online.de@lists.openembedded.org 
> <mailto:f_l_k=t-online.de@lists.openembedded.org>> wrote:
>> 
>>  - Remove 0001-amd-Include-missing-llvm-IR-header-Module.h.patch -> 
>> merged
>>  - INSANE_SKIP dev-so. All .so files that are installed in 
>> ${libdir}/dri
>>    are now links to libdril_dri.so, but they should still not be 
>> part of
>>    the dev package, I assume?
>>  - add PACKAGE for mesa-gallium-drivers and install 
>> libgallium-24.2.0.so
>>  - add python3-pyyaml-native-dependency
>> 
>>  Signed-off-by: Markus Volk <f_l_k@t-online.de 
>> <mailto:f_l_k@t-online.de>>
>>  ---
>>   ...lude-missing-llvm-IR-header-Module.h.patch | 41 
>> -------------------
>>   .../{mesa-gl_24.1.4.bb => mesa-gl_24.2.0.bb}  |  0
>>   meta/recipes-graphics/mesa/mesa.inc           |  9 ++--
>>   .../mesa/{mesa_24.1.4.bb => mesa_24.2.0.bb}   |  0
>>   4 files changed, 5 insertions(+), 45 deletions(-)
>>   delete mode 100644 
>> meta/recipes-graphics/mesa/files/0001-amd-Include-missing-llvm-IR-header-Module.h.patch
>>   rename meta/recipes-graphics/mesa/{mesa-gl_24.1.4.bb => 
>> mesa-gl_24.2.0.bb} (100%)
>>   rename meta/recipes-graphics/mesa/{mesa_24.1.4.bb => 
>> mesa_24.2.0.bb} (100%)
>> 
>>  diff --git 
>> a/meta/recipes-graphics/mesa/files/0001-amd-Include-missing-llvm-IR-header-Module.h.patch 
>> b/meta/recipes-graphics/mesa/files/0001-amd-Include-missing-llvm-IR-header-Module.h.patch
>>  deleted file mode 100644
>>  index 82ad88a079..0000000000
>>  --- 
>> a/meta/recipes-graphics/mesa/files/0001-amd-Include-missing-llvm-IR-header-Module.h.patch
>>  +++ /dev/null
>>  @@ -1,41 +0,0 @@
>>  -From 777d69cf15b80ab1f109a4936d6e4801c4b0e0f3 Mon Sep 17 00:00:00 
>> 2001
>>  -From: Khem Raj <raj.khem@gmail.com <mailto:raj.khem@gmail.com>>
>>  -Date: Mon, 1 Jul 2024 23:09:29 -0700
>>  -Subject: [PATCH] amd: Include missing llvm IR header Module.h
>>  -MIME-Version: 1.0
>>  -Content-Type: text/plain; charset=UTF-8
>>  -Content-Transfer-Encoding: 8bit
>>  -
>>  -With LLVM-19, Module.h header is not being pulled, which results in
>>  -compile errors e.g.
>>  -
>>  -src/amd/llvm/ac_llvm_helper.cpp:102:10: error: no matching 
>> function for call to ‘unwrap(LLVMOpaqueModule*&)’
>>  -  102 |    
>> unwrap(module)->setTargetTriple(TM->getTargetTriple().getTriple());
>>  -      |    ~~~~~~^~~~~~~~
>>  -In file included from 
>> /mnt/b/yoe/master/build/tmp/work/x86_64-linux/mesa-native/24.0.7/recipe-sysroot-native/usr/include/llvm/IR/Type.h:18,
>>  -                 from 
>> /mnt/b/yoe/master/build/tmp/work/x86_64-linux/mesa-native/24.0.7/recipe-sysroot-native/usr/include/llvm/IR/DerivedTypes.h:23,
>>  -                 from 
>> /mnt/b/yoe/master/build/tmp/work/x86_64-linux/mesa-native/24.0.7/recipe-sysroot-native/usr/include/llvm/IR/InstrTypes.h:26,
>>  -                 from 
>> /mnt/b/yoe/master/build/tmp/work/x86_64-linux/mesa-native/24.0.7/recipe-sysroot-native/usr/include/llvm/Analysis/TargetLibraryInfo.h:14,
>>  -                 from 
>> ../mesa-24.0.7/src/amd/llvm/ac_llvm_helper.cpp:8:
>>  -
>>  -Its getting the definition from llvm/IR/Type.h instead of Module.h 
>> and caused
>>  -confusion to compiler
>>  -
>>  -Upstream-Status: Submitted 
>> [<https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29993>]
>>  -Signed-off-by: Khem Raj <raj.khem@gmail.com 
>> <mailto:raj.khem@gmail.com>>
>>  ----
>>  - src/amd/llvm/ac_llvm_helper.cpp | 1 +
>>  - 1 file changed, 1 insertion(+)
>>  -
>>  -diff --git a/src/amd/llvm/ac_llvm_helper.cpp 
>> b/src/amd/llvm/ac_llvm_helper.cpp
>>  -index 5d065279ad1..af4a50f8409 100644
>>  ---- a/src/amd/llvm/ac_llvm_helper.cpp
>>  -+++ b/src/amd/llvm/ac_llvm_helper.cpp
>>  -@@ -8,6 +8,7 @@
>>  - #include <llvm/Analysis/TargetLibraryInfo.h>
>>  - #include <llvm/IR/IRBuilder.h>
>>  - #include <llvm/IR/LegacyPassManager.h>
>>  -+#include <llvm/IR/Module.h>
>>  - #include <llvm/IR/Verifier.h>
>>  - #include <llvm/Target/TargetMachine.h>
>>  - #include <llvm/MC/MCSubtargetInfo.h>
>>  diff --git a/meta/recipes-graphics/mesa/mesa-gl_24.1.4.bb 
>> b/meta/recipes-graphics/mesa/mesa-gl_24.2.0.bb
>>  similarity index 100%
>>  rename from meta/recipes-graphics/mesa/mesa-gl_24.1.4.bb
>>  rename to meta/recipes-graphics/mesa/mesa-gl_24.2.0.bb
>>  diff --git a/meta/recipes-graphics/mesa/mesa.inc 
>> b/meta/recipes-graphics/mesa/mesa.inc
>>  index 499006655d..40e7bed648 100644
>>  --- a/meta/recipes-graphics/mesa/mesa.inc
>>  +++ b/meta/recipes-graphics/mesa/mesa.inc
>>  @@ -16,11 +16,10 @@ PE = "2"
>> 
>>   SRC_URI = "https://mesa.freedesktop.org/archive/mesa-${PV}.tar.xz 
>> <https://mesa.freedesktop.org/archive/mesa-$%7BPV%7D.tar.xz> \
>>              
>> file://0001-meson-misdetects-64bit-atomics-on-mips-clang.patch 
>> <file://0001-meson-misdetects-64bit-atomics-on-mips-clang.patch/> \
>>  -           
>> file://0001-amd-Include-missing-llvm-IR-header-Module.h.patch 
>> <file://0001-amd-include-missing-llvm-ir-header-module.h.patch/> \
>>              
>> file://0001-freedreno-don-t-encode-build-path-into-binaries.patch\ 
>> <file://0001-freedreno-don-t-encode-build-path-into-binaries.patch/>
>>   "
>> 
>>  -SRC_URI[sha256sum] = 
>> "7cf7c6f665263ad0122889c1d4b076654c1eedea7a2f38c69c8c51579937ade1"
>>  +SRC_URI[sha256sum] = 
>> "c02bb72cea290f78b11895a0c95c7c92394f180d7ff66d4a762ec6950a58addf"
>> 
>>   UPSTREAM_CHECK_GITTAGREGEX = "mesa-(?P<pver>\d+(\.\d+)+)"
>> 
>>  @@ -34,7 +33,7 @@ do_install:append() {
>>     fi
>>   }
>> 
>>  -DEPENDS = "expat makedepend-native flex-native bison-native 
>> libxml2-native zlib chrpath-replacement-native python3-mako-native 
>> gettext-native"
>>  +DEPENDS = "expat makedepend-native flex-native bison-native 
>> libxml2-native zlib chrpath-replacement-native python3-mako-native 
>> gettext-native python3-pyyaml-native"
>>   DEPENDS:append:class-target = " ${@bb.utils.contains 
>> <mailto:${@bb.utils.contains>('PACKAGECONFIG', 'opencl', 
>> 'mesa-native', '', d)}"
>>   EXTRANATIVEPATH += "chrpath-native"
>>   PROVIDES = " \
>>  @@ -243,7 +242,7 @@ PACKAGES =+ "libegl-mesa libegl-mesa-dev \
>>                libopencl-mesa libopencl-mesa-dev \
>>                libxatracker libxatracker-dev \
>>                mesa-megadriver mesa-vulkan-drivers \
>>  -             mesa-vdpau-drivers mesa-tools \
>>  +             mesa-vdpau-drivers mesa-gallium-drivers mesa-tools \
>>               "
>> 
>>   do_install:append () {
>>  @@ -335,6 +334,7 @@ FILES:mesa-megadriver = "${libdir}/dri/* 
>> ${datadir}/drirc.d"
>>   FILES:mesa-vulkan-drivers = "${libdir}/libvulkan_*.so 
>> ${libdir}/libpowervr_rogue.so ${datadir}/vulkan"
>>   FILES:${PN}-vdpau-drivers = "${libdir}/vdpau/*.so.*"
>>   FILES:libegl-mesa = "${libdir}/libEGL*.so.* 
>> ${datadir}/glvnd/egl_vendor.d"
>>  +FILES:mesa-gallium-drivers = "${libdir}/libgallium-*.so"
>>   FILES:libgbm = "${libdir}/libgbm.so.*"
>>   FILES:libgles1-mesa = "${libdir}/libGLESv1*.so.*"
>>   FILES:libgles2-mesa = "${libdir}/libGLESv2.so.*"
>>  @@ -362,6 +362,7 @@ FILES:libxatracker-dev = 
>> "${libdir}/libxatracker.so ${libdir}/libxatracker.la \
>>   # catch all to get all the tools and data
>>   FILES:${PN}-tools = "${bindir} ${datadir}"
>>   ALLOW_EMPTY:${PN}-tools = "1"
>>  +INSANE_SKIP:${PN}-megadriver = "dev-so"
>> 
>>   # Fix upgrade path from mesa to mesa-megadriver
>>   RREPLACES:mesa-megadriver = "mesa"
>>  diff --git a/meta/recipes-graphics/mesa/mesa_24.1.4.bb 
>> b/meta/recipes-graphics/mesa/mesa_24.2.0.bb
>>  similarity index 100%
>>  rename from meta/recipes-graphics/mesa/mesa_24.1.4.bb
>>  rename to meta/recipes-graphics/mesa/mesa_24.2.0.bb
>>  --
>>  2.45.2
>> 
>> 
>>  -=-=-=-=-=-=-=-=-=-=-=-
>>  Links: You receive all messages sent to this group.
>>  View/Reply Online (#203484): 
>> <https://lists.openembedded.org/g/openembedded-core/message/203484>
>>  Mute This Topic: 
>> <https://lists.openembedded.org/mt/107965743/1686489>
>>  Group Owner: openembedded-core+owner@lists.openembedded.org 
>> <mailto:openembedded-core+owner@lists.openembedded.org>
>>  Unsubscribe: 
>> <https://lists.openembedded.org/g/openembedded-core/unsub> 
>> [alex.kanavin@gmail.com <mailto:alex.kanavin@gmail.com>]
>>  -=-=-=-=-=-=-=-=-=-=-=-
>>
Alexander Kanavin Aug. 19, 2024, 3:37 p.m. UTC | #3
Fair enough. Then this is not an 'Intel problem', but someone should
still do the non-trivial work of bringing pieces of meta-clang into
core.

Alex

On Mon, 19 Aug 2024 at 16:31, Markus Volk <f_l_k@t-online.de> wrote:
>
> It looks to me like intel is just a little bit further along in terms of the mesa driver. Currently it is
> also a requirement for gallium-asahi and I would expect at least  amd and panfrost to follow. Basically
> it'll be required for all drivers that support runtime compiled shaders (like also done in Windows)
> to enable features like raytracing/pathtracing.
>
> That said, I'm not in favor of either solution, but I wouldn't expect libclc and clang/gcc-runtime
> to become optional again for hardware that supports shaders.
>
> On Mon, Aug 19 2024 at 10:57:38 AM +02:00:00, Alexander Kanavin <alex.kanavin@gmail.com> wrote:
>
> Has anything changes in this release w.r.t intel drivers? Do they still requiure bits of meta-clang? Given that we're now two major releases behind, I just do not think that one vendor should be holding everyone else hostage to their 'special requirements'. I still think it's better to disable Intel drivers, and move on. The vendor can re-enable them through their BSP layer, and allocate resources towards integrating clang into core if they so wish. Can this be raised privately with them or in a TSC meeting? Alex On Sun, 18 Aug 2024 at 18:47, Markus Volk via lists.openembedded.org <f_l_k=t-online.de@lists.openembedded.org> wrote:
>
> - Remove 0001-amd-Include-missing-llvm-IR-header-Module.h.patch -> merged - INSANE_SKIP dev-so. All .so files that are installed in ${libdir}/dri are now links to libdril_dri.so, but they should still not be part of the dev package, I assume? - add PACKAGE for mesa-gallium-drivers and install libgallium-24.2.0.so - add python3-pyyaml-native-dependency Signed-off-by: Markus Volk <f_l_k@t-online.de> --- ...lude-missing-llvm-IR-header-Module.h.patch | 41 ------------------- .../{mesa-gl_24.1.4.bb => mesa-gl_24.2.0.bb} | 0 meta/recipes-graphics/mesa/mesa.inc | 9 ++-- .../mesa/{mesa_24.1.4.bb => mesa_24.2.0.bb} | 0 4 files changed, 5 insertions(+), 45 deletions(-) delete mode 100644 meta/recipes-graphics/mesa/files/0001-amd-Include-missing-llvm-IR-header-Module.h.patch rename meta/recipes-graphics/mesa/{mesa-gl_24.1.4.bb => mesa-gl_24.2.0.bb} (100%) rename meta/recipes-graphics/mesa/{mesa_24.1.4.bb => mesa_24.2.0.bb} (100%) diff --git a/meta/recipes-graphics/mesa/files/0001-amd-Include-missing-llvm-IR-header-Module.h.patch b/meta/recipes-graphics/mesa/files/0001-amd-Include-missing-llvm-IR-header-Module.h.patch deleted file mode 100644 index 82ad88a079..0000000000 --- a/meta/recipes-graphics/mesa/files/0001-amd-Include-missing-llvm-IR-header-Module.h.patch +++ /dev/null @@ -1,41 +0,0 @@ -From 777d69cf15b80ab1f109a4936d6e4801c4b0e0f3 Mon Sep 17 00:00:00 2001 -From: Khem Raj <raj.khem@gmail.com> -Date: Mon, 1 Jul 2024 23:09:29 -0700 -Subject: [PATCH] amd: Include missing llvm IR header Module.h -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -With LLVM-19, Module.h header is not being pulled, which results in -compile errors e.g. - -src/amd/llvm/ac_llvm_helper.cpp:102:10: error: no matching function for call to ‘unwrap(LLVMOpaqueModule*&)’ - 102 | unwrap(module)->setTargetTriple(TM->getTargetTriple().getTriple()); - | ~~~~~~^~~~~~~~ -In file included from /mnt/b/yoe/master/build/tmp/work/x86_64-linux/mesa-native/24.0.7/recipe-sysroot-native/usr/include/llvm/IR/Type.h:18, - from /mnt/b/yoe/master/build/tmp/work/x86_64-linux/mesa-native/24.0.7/recipe-sysroot-native/usr/include/llvm/IR/DerivedTypes.h:23, - from /mnt/b/yoe/master/build/tmp/work/x86_64-linux/mesa-native/24.0.7/recipe-sysroot-native/usr/include/llvm/IR/InstrTypes.h:26, - from /mnt/b/yoe/master/build/tmp/work/x86_64-linux/mesa-native/24.0.7/recipe-sysroot-native/usr/include/llvm/Analysis/TargetLibraryInfo.h:14, - from ../mesa-24.0.7/src/amd/llvm/ac_llvm_helper.cpp:8: - -Its getting the definition from llvm/IR/Type.h instead of Module.h and caused -confusion to compiler - -Upstream-Status: Submitted [https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29993] -Signed-off-by: Khem Raj <raj.khem@gmail.com> ---- - src/amd/llvm/ac_llvm_helper.cpp | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/src/amd/llvm/ac_llvm_helper.cpp b/src/amd/llvm/ac_llvm_helper.cpp -index 5d065279ad1..af4a50f8409 100644 ---- a/src/amd/llvm/ac_llvm_helper.cpp -+++ b/src/amd/llvm/ac_llvm_helper.cpp -@@ -8,6 +8,7 @@ - #include <llvm/Analysis/TargetLibraryInfo.h> - #include <llvm/IR/IRBuilder.h> - #include <llvm/IR/LegacyPassManager.h> -+#include <llvm/IR/Module.h> - #include <llvm/IR/Verifier.h> - #include <llvm/Target/TargetMachine.h> - #include <llvm/MC/MCSubtargetInfo.h> diff --git a/meta/recipes-graphics/mesa/mesa-gl_24.1.4.bb b/meta/recipes-graphics/mesa/mesa-gl_24.2.0.bb similarity index 100% rename from meta/recipes-graphics/mesa/mesa-gl_24.1.4.bb rename to meta/recipes-graphics/mesa/mesa-gl_24.2.0.bb diff --git a/meta/recipes-graphics/mesa/mesa.inc b/meta/recipes-graphics/mesa/mesa.inc index 499006655d..40e7bed648 100644 --- a/meta/recipes-graphics/mesa/mesa.inc +++ b/meta/recipes-graphics/mesa/mesa.inc @@ -16,11 +16,10 @@ PE = "2" SRC_URI = "https://mesa.freedesktop.org/archive/mesa-${PV}.tar.xz \ file://0001-meson-misdetects-64bit-atomics-on-mips-clang.patch \ - file://0001-amd-Include-missing-llvm-IR-header-Module.h.patch \ file://0001-freedreno-don-t-encode-build-path-into-binaries.patch\ " -SRC_URI[sha256sum] = "7cf7c6f665263ad0122889c1d4b076654c1eedea7a2f38c69c8c51579937ade1" +SRC_URI[sha256sum] = "c02bb72cea290f78b11895a0c95c7c92394f180d7ff66d4a762ec6950a58addf" UPSTREAM_CHECK_GITTAGREGEX = "mesa-(?P<pver>\d+(\.\d+)+)" @@ -34,7 +33,7 @@ do_install:append() { fi } -DEPENDS = "expat makedepend-native flex-native bison-native libxml2-native zlib chrpath-replacement-native python3-mako-native gettext-native" +DEPENDS = "expat makedepend-native flex-native bison-native libxml2-native zlib chrpath-replacement-native python3-mako-native gettext-native python3-pyyaml-native" DEPENDS:append:class-target = " ${@bb.utils.contains('PACKAGECONFIG', 'opencl', 'mesa-native', '', d)}" EXTRANATIVEPATH += "chrpath-native" PROVIDES = " \ @@ -243,7 +242,7 @@ PACKAGES =+ "libegl-mesa libegl-mesa-dev \ libopencl-mesa libopencl-mesa-dev \ libxatracker libxatracker-dev \ mesa-megadriver mesa-vulkan-drivers \ - mesa-vdpau-drivers mesa-tools \ + mesa-vdpau-drivers mesa-gallium-drivers mesa-tools \ " do_install:append () { @@ -335,6 +334,7 @@ FILES:mesa-megadriver = "${libdir}/dri/* ${datadir}/drirc.d" FILES:mesa-vulkan-drivers = "${libdir}/libvulkan_*.so ${libdir}/libpowervr_rogue.so ${datadir}/vulkan" FILES:${PN}-vdpau-drivers = "${libdir}/vdpau/*.so.*" FILES:libegl-mesa = "${libdir}/libEGL*.so.* ${datadir}/glvnd/egl_vendor.d" +FILES:mesa-gallium-drivers = "${libdir}/libgallium-*.so" FILES:libgbm = "${libdir}/libgbm.so.*" FILES:libgles1-mesa = "${libdir}/libGLESv1*.so.*" FILES:libgles2-mesa = "${libdir}/libGLESv2.so.*" @@ -362,6 +362,7 @@ FILES:libxatracker-dev = "${libdir}/libxatracker.so ${libdir}/libxatracker.la \ # catch all to get all the tools and data FILES:${PN}-tools = "${bindir} ${datadir}" ALLOW_EMPTY:${PN}-tools = "1" +INSANE_SKIP:${PN}-megadriver = "dev-so" # Fix upgrade path from mesa to mesa-megadriver RREPLACES:mesa-megadriver = "mesa" diff --git a/meta/recipes-graphics/mesa/mesa_24.1.4.bb b/meta/recipes-graphics/mesa/mesa_24.2.0.bb similarity index 100% rename from meta/recipes-graphics/mesa/mesa_24.1.4.bb rename to meta/recipes-graphics/mesa/mesa_24.2.0.bb -- 2.45.2 -=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#203484): https://lists.openembedded.org/g/openembedded-core/message/203484 Mute This Topic: https://lists.openembedded.org/mt/107965743/1686489 Group Owner: openembedded-core+owner@lists.openembedded.org Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [alex.kanavin@gmail.com] -=-=-=-=-=-=-=-=-=-=-=-
diff mbox series

Patch

diff --git a/meta/recipes-graphics/mesa/files/0001-amd-Include-missing-llvm-IR-header-Module.h.patch b/meta/recipes-graphics/mesa/files/0001-amd-Include-missing-llvm-IR-header-Module.h.patch
deleted file mode 100644
index 82ad88a079..0000000000
--- a/meta/recipes-graphics/mesa/files/0001-amd-Include-missing-llvm-IR-header-Module.h.patch
+++ /dev/null
@@ -1,41 +0,0 @@ 
-From 777d69cf15b80ab1f109a4936d6e4801c4b0e0f3 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Mon, 1 Jul 2024 23:09:29 -0700
-Subject: [PATCH] amd: Include missing llvm IR header Module.h
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-With LLVM-19, Module.h header is not being pulled, which results in
-compile errors e.g.
-
-src/amd/llvm/ac_llvm_helper.cpp:102:10: error: no matching function for call to ‘unwrap(LLVMOpaqueModule*&)’
-  102 |    unwrap(module)->setTargetTriple(TM->getTargetTriple().getTriple());
-      |    ~~~~~~^~~~~~~~
-In file included from /mnt/b/yoe/master/build/tmp/work/x86_64-linux/mesa-native/24.0.7/recipe-sysroot-native/usr/include/llvm/IR/Type.h:18,
-                 from /mnt/b/yoe/master/build/tmp/work/x86_64-linux/mesa-native/24.0.7/recipe-sysroot-native/usr/include/llvm/IR/DerivedTypes.h:23,
-                 from /mnt/b/yoe/master/build/tmp/work/x86_64-linux/mesa-native/24.0.7/recipe-sysroot-native/usr/include/llvm/IR/InstrTypes.h:26,
-                 from /mnt/b/yoe/master/build/tmp/work/x86_64-linux/mesa-native/24.0.7/recipe-sysroot-native/usr/include/llvm/Analysis/TargetLibraryInfo.h:14,
-                 from ../mesa-24.0.7/src/amd/llvm/ac_llvm_helper.cpp:8:
-
-Its getting the definition from llvm/IR/Type.h instead of Module.h and caused
-confusion to compiler
-
-Upstream-Status: Submitted [https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29993]
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- src/amd/llvm/ac_llvm_helper.cpp | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/src/amd/llvm/ac_llvm_helper.cpp b/src/amd/llvm/ac_llvm_helper.cpp
-index 5d065279ad1..af4a50f8409 100644
---- a/src/amd/llvm/ac_llvm_helper.cpp
-+++ b/src/amd/llvm/ac_llvm_helper.cpp
-@@ -8,6 +8,7 @@
- #include <llvm/Analysis/TargetLibraryInfo.h>
- #include <llvm/IR/IRBuilder.h>
- #include <llvm/IR/LegacyPassManager.h>
-+#include <llvm/IR/Module.h>
- #include <llvm/IR/Verifier.h>
- #include <llvm/Target/TargetMachine.h>
- #include <llvm/MC/MCSubtargetInfo.h>
diff --git a/meta/recipes-graphics/mesa/mesa-gl_24.1.4.bb b/meta/recipes-graphics/mesa/mesa-gl_24.2.0.bb
similarity index 100%
rename from meta/recipes-graphics/mesa/mesa-gl_24.1.4.bb
rename to meta/recipes-graphics/mesa/mesa-gl_24.2.0.bb
diff --git a/meta/recipes-graphics/mesa/mesa.inc b/meta/recipes-graphics/mesa/mesa.inc
index 499006655d..40e7bed648 100644
--- a/meta/recipes-graphics/mesa/mesa.inc
+++ b/meta/recipes-graphics/mesa/mesa.inc
@@ -16,11 +16,10 @@  PE = "2"
 
 SRC_URI = "https://mesa.freedesktop.org/archive/mesa-${PV}.tar.xz \
            file://0001-meson-misdetects-64bit-atomics-on-mips-clang.patch \
-           file://0001-amd-Include-missing-llvm-IR-header-Module.h.patch \
            file://0001-freedreno-don-t-encode-build-path-into-binaries.patch\
 "
 
-SRC_URI[sha256sum] = "7cf7c6f665263ad0122889c1d4b076654c1eedea7a2f38c69c8c51579937ade1"
+SRC_URI[sha256sum] = "c02bb72cea290f78b11895a0c95c7c92394f180d7ff66d4a762ec6950a58addf"
 
 UPSTREAM_CHECK_GITTAGREGEX = "mesa-(?P<pver>\d+(\.\d+)+)"
 
@@ -34,7 +33,7 @@  do_install:append() {
   fi
 }
 
-DEPENDS = "expat makedepend-native flex-native bison-native libxml2-native zlib chrpath-replacement-native python3-mako-native gettext-native"
+DEPENDS = "expat makedepend-native flex-native bison-native libxml2-native zlib chrpath-replacement-native python3-mako-native gettext-native python3-pyyaml-native"
 DEPENDS:append:class-target = " ${@bb.utils.contains('PACKAGECONFIG', 'opencl', 'mesa-native', '', d)}"
 EXTRANATIVEPATH += "chrpath-native"
 PROVIDES = " \
@@ -243,7 +242,7 @@  PACKAGES =+ "libegl-mesa libegl-mesa-dev \
              libopencl-mesa libopencl-mesa-dev \
              libxatracker libxatracker-dev \
              mesa-megadriver mesa-vulkan-drivers \
-             mesa-vdpau-drivers mesa-tools \
+             mesa-vdpau-drivers mesa-gallium-drivers mesa-tools \
             "
 
 do_install:append () {
@@ -335,6 +334,7 @@  FILES:mesa-megadriver = "${libdir}/dri/* ${datadir}/drirc.d"
 FILES:mesa-vulkan-drivers = "${libdir}/libvulkan_*.so ${libdir}/libpowervr_rogue.so ${datadir}/vulkan"
 FILES:${PN}-vdpau-drivers = "${libdir}/vdpau/*.so.*"
 FILES:libegl-mesa = "${libdir}/libEGL*.so.* ${datadir}/glvnd/egl_vendor.d"
+FILES:mesa-gallium-drivers = "${libdir}/libgallium-*.so"
 FILES:libgbm = "${libdir}/libgbm.so.*"
 FILES:libgles1-mesa = "${libdir}/libGLESv1*.so.*"
 FILES:libgles2-mesa = "${libdir}/libGLESv2.so.*"
@@ -362,6 +362,7 @@  FILES:libxatracker-dev = "${libdir}/libxatracker.so ${libdir}/libxatracker.la \
 # catch all to get all the tools and data
 FILES:${PN}-tools = "${bindir} ${datadir}"
 ALLOW_EMPTY:${PN}-tools = "1"
+INSANE_SKIP:${PN}-megadriver = "dev-so"
 
 # Fix upgrade path from mesa to mesa-megadriver
 RREPLACES:mesa-megadriver = "mesa"
diff --git a/meta/recipes-graphics/mesa/mesa_24.1.4.bb b/meta/recipes-graphics/mesa/mesa_24.2.0.bb
similarity index 100%
rename from meta/recipes-graphics/mesa/mesa_24.1.4.bb
rename to meta/recipes-graphics/mesa/mesa_24.2.0.bb