From e86612dc31aaab24da45042d44a7c087a2af6058 Mon Sep 17 00:00:00 2001 From: Markus Volk Date: Sun, 1 Oct 2023 19:24:36 +0200 Subject: mesa: Upgrade 23.1.8 -> 23.2.1 - update 0001-gallium-Fix-build-with-llvm-17.patch - remove as added upstream: 0001-intel-Allow-using-intel_clc-from-the-system.patch - intel clc build is currently broken with llvm 17, but that issue is also present with mesa 23.1.8 https://gitlab.freedesktop.org/mesa/mesa/-/issues/9701 https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24879 https://github.com/KhronosGroup/SPIRV-LLVM-Translator/issues/2153 (From OE-Core rev: d95beb63b3cb8b8e53109304ab88b3938b137035) Signed-off-by: Markus Volk Signed-off-by: Alexandre Belloni Signed-off-by: Richard Purdie --- .../0001-gallium-Fix-build-with-llvm-17.patch | 19 +++-- ...tel-Allow-using-intel_clc-from-the-system.patch | 99 ---------------------- meta/recipes-graphics/mesa/mesa-gl_23.1.8.bb | 15 ---- meta/recipes-graphics/mesa/mesa-gl_23.2.1.bb | 15 ++++ meta/recipes-graphics/mesa/mesa.inc | 5 +- meta/recipes-graphics/mesa/mesa_23.1.8.bb | 2 - meta/recipes-graphics/mesa/mesa_23.2.1.bb | 2 + 7 files changed, 29 insertions(+), 128 deletions(-) delete mode 100644 meta/recipes-graphics/mesa/files/0001-intel-Allow-using-intel_clc-from-the-system.patch delete mode 100644 meta/recipes-graphics/mesa/mesa-gl_23.1.8.bb create mode 100644 meta/recipes-graphics/mesa/mesa-gl_23.2.1.bb delete mode 100644 meta/recipes-graphics/mesa/mesa_23.1.8.bb create mode 100644 meta/recipes-graphics/mesa/mesa_23.2.1.bb diff --git a/meta/recipes-graphics/mesa/files/0001-gallium-Fix-build-with-llvm-17.patch b/meta/recipes-graphics/mesa/files/0001-gallium-Fix-build-with-llvm-17.patch index 165708145a..237f940f0b 100644 --- a/meta/recipes-graphics/mesa/files/0001-gallium-Fix-build-with-llvm-17.patch +++ b/meta/recipes-graphics/mesa/files/0001-gallium-Fix-build-with-llvm-17.patch @@ -1,4 +1,4 @@ -From c8e9776abc3dfd3f2411797a90a03e7fa16263ef Mon Sep 17 00:00:00 2001 +From 6d07f6aa7f92f40d78a2db645f16f0f3e7d3c2e8 Mon Sep 17 00:00:00 2001 From: Khem Raj Date: Fri, 23 Jun 2023 01:20:38 -0700 Subject: [PATCH] gallium: Fix build with llvm 17 @@ -9,16 +9,19 @@ so add conditions to exclude them for llvm >= 17 Upstream-Status: Submitted [https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23827] Signed-off-by: Khem Raj + --- - src/gallium/auxiliary/gallivm/lp_bld_init.c | 6 ++++-- - 1 file changed, 4 insertions(+), 2 deletions(-) + src/gallium/auxiliary/gallivm/lp_bld_init.c | 6 +++++- + 1 file changed, 5 insertions(+), 1 deletion(-) +diff --git a/src/gallium/auxiliary/gallivm/lp_bld_init.c b/src/gallium/auxiliary/gallivm/lp_bld_init.c +index cd2108f..b1a4d03 100644 --- a/src/gallium/auxiliary/gallivm/lp_bld_init.c +++ b/src/gallium/auxiliary/gallivm/lp_bld_init.c -@@ -42,8 +42,10 @@ - - #include - #include +@@ -46,15 +46,19 @@ + #if GALLIVM_USE_NEW_PASS == 1 + #include + #elif GALLIVM_HAVE_CORO == 1 +#if LLVM_VERSION_MAJOR < 17 #include -#if LLVM_VERSION_MAJOR >= 7 @@ -26,8 +29,6 @@ Signed-off-by: Khem Raj +#if LLVM_VERSION_MAJOR >= 7 && LLVM_VERSION_MAJOR < 17 #include #endif - #include -@@ -53,8 +55,10 @@ #if LLVM_VERSION_MAJOR <= 8 && (DETECT_ARCH_AARCH64 || DETECT_ARCH_ARM || DETECT_ARCH_S390 || DETECT_ARCH_MIPS64) #include #endif diff --git a/meta/recipes-graphics/mesa/files/0001-intel-Allow-using-intel_clc-from-the-system.patch b/meta/recipes-graphics/mesa/files/0001-intel-Allow-using-intel_clc-from-the-system.patch deleted file mode 100644 index 5eefd02068..0000000000 --- a/meta/recipes-graphics/mesa/files/0001-intel-Allow-using-intel_clc-from-the-system.patch +++ /dev/null @@ -1,99 +0,0 @@ -From ac503f5d7bf36f021c576029a64ac1a3199f6b5a Mon Sep 17 00:00:00 2001 -From: Matt Turner -Date: Thu, 31 Aug 2023 13:16:29 -0400 -Subject: [PATCH] intel: Allow using intel_clc from the system - -With -Dintel-clc=system, the build system will search for an `intel_clc` -binary and use it instead of building `intel_clc` itself. - -This allows Intel Vulkan ray tracing support to be built when cross -compiling without terrible hacks (that would otherwise be necessary due -to `intel_clc`'s dependence on SPIRV-LLVM-Translator, libclc, clang, and -LLVM). - -Part-of: - -Upstream-Status: Backport [https://gitlab.freedesktop.org/mesa/mesa/-/commit/28c1053c07c177854520f6283fa665f17618adb5] - ---- - meson.build | 6 +++--- - meson_options.txt | 5 ++++- - src/intel/compiler/meson.build | 6 +++++- - src/intel/vulkan/grl/meson.build | 2 +- - 4 files changed, 13 insertions(+), 6 deletions(-) - -diff --git a/meson.build b/meson.build -index 16e86ec..00a6953 100644 ---- a/meson.build -+++ b/meson.build -@@ -259,12 +259,12 @@ endif - - with_microsoft_clc = get_option('microsoft-clc').enabled() - if ['x86_64'].contains(host_machine.cpu_family()) -- with_intel_clc = get_option('intel-clc').enabled() -- with_intel_vk_rt = with_intel_vk and with_intel_clc -+ with_intel_clc = get_option('intel-clc') == 'enabled' - else - with_intel_clc = false -- with_intel_vk_rt = false - endif -+with_intel_vk_rt = with_intel_vk and get_option('intel-clc') != 'disabled' -+ - with_clc = with_microsoft_clc or with_intel_clc - with_libclc = with_clc - with_spirv_to_dxil = get_option('spirv-to-dxil') -diff --git a/meson_options.txt b/meson_options.txt -index 379aea3..9800531 100644 ---- a/meson_options.txt -+++ b/meson_options.txt -@@ -607,9 +607,12 @@ option( - - option( - 'intel-clc', -- type : 'feature', -+ type : 'combo', - deprecated: {'true': 'enabled', 'false': 'disabled'}, - value : 'disabled', -+ choices : [ -+ 'enabled', 'disabled', 'system', -+ ], - description : 'Build the intel-clc compiler (enables Vulkan Intel ' + - 'Ray Tracing on supported hardware).' - ) -diff --git a/src/intel/compiler/meson.build b/src/intel/compiler/meson.build -index 9a03d37..774e955 100644 ---- a/src/intel/compiler/meson.build -+++ b/src/intel/compiler/meson.build -@@ -168,7 +168,10 @@ libintel_compiler = static_library( - ) - - # For now this tool is only going to be used by Anv --if with_intel_clc -+if get_option('intel-clc') == 'system' -+ prog_intel_clc = find_program('intel_clc', native : true) -+ dep_prog_intel_clc = [] -+elif with_intel_clc - prog_intel_clc = executable( - 'intel_clc', - ['intel_clc.c'], -@@ -181,6 +184,7 @@ if with_intel_clc - dependencies : [idep_nir, idep_clc, idep_mesautil, idep_intel_dev], - native : true, - ) -+ dep_prog_intel_clc = [prog_intel_clc] - endif - - if with_tests -diff --git a/src/intel/vulkan/grl/meson.build b/src/intel/vulkan/grl/meson.build -index c0056b3..02a72f5 100644 ---- a/src/intel/vulkan/grl/meson.build -+++ b/src/intel/vulkan/grl/meson.build -@@ -143,7 +143,7 @@ foreach t : [['125', 'gfx125', 'dg2']] - # if fixed there - ], - env: ['MESA_SHADER_CACHE_DISABLE=true'], -- depends : [prog_intel_clc] -+ depends : dep_prog_intel_clc - ) - endforeach - diff --git a/meta/recipes-graphics/mesa/mesa-gl_23.1.8.bb b/meta/recipes-graphics/mesa/mesa-gl_23.1.8.bb deleted file mode 100644 index ca160f1bfc..0000000000 --- a/meta/recipes-graphics/mesa/mesa-gl_23.1.8.bb +++ /dev/null @@ -1,15 +0,0 @@ -require mesa.inc - -SUMMARY += " (OpenGL only, no EGL/GLES)" - -PROVIDES = "virtual/libgl virtual/mesa" - -S = "${WORKDIR}/mesa-${PV}" - -TARGET_CFLAGS = "-I${STAGING_INCDIR}/drm" - -# At least one DRI rendering engine is required to build mesa. -# When no X11 is available, use osmesa for the rendering engine. -PACKAGECONFIG ??= "opengl gallium ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11', 'osmesa', d)}" -PACKAGECONFIG:class-target = "opengl gallium ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11', 'osmesa', d)}" - diff --git a/meta/recipes-graphics/mesa/mesa-gl_23.2.1.bb b/meta/recipes-graphics/mesa/mesa-gl_23.2.1.bb new file mode 100644 index 0000000000..ca160f1bfc --- /dev/null +++ b/meta/recipes-graphics/mesa/mesa-gl_23.2.1.bb @@ -0,0 +1,15 @@ +require mesa.inc + +SUMMARY += " (OpenGL only, no EGL/GLES)" + +PROVIDES = "virtual/libgl virtual/mesa" + +S = "${WORKDIR}/mesa-${PV}" + +TARGET_CFLAGS = "-I${STAGING_INCDIR}/drm" + +# At least one DRI rendering engine is required to build mesa. +# When no X11 is available, use osmesa for the rendering engine. +PACKAGECONFIG ??= "opengl gallium ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11', 'osmesa', d)}" +PACKAGECONFIG:class-target = "opengl gallium ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11', 'osmesa', d)}" + diff --git a/meta/recipes-graphics/mesa/mesa.inc b/meta/recipes-graphics/mesa/mesa.inc index 4e824500dd..e5c405a972 100644 --- a/meta/recipes-graphics/mesa/mesa.inc +++ b/meta/recipes-graphics/mesa/mesa.inc @@ -18,11 +18,10 @@ SRC_URI = "https://mesa.freedesktop.org/archive/mesa-${PV}.tar.xz \ file://0001-meson.build-check-for-all-linux-host_os-combinations.patch \ file://0001-meson-misdetects-64bit-atomics-on-mips-clang.patch \ file://0001-gallium-Fix-build-with-llvm-17.patch \ - file://0001-intel-Allow-using-intel_clc-from-the-system.patch \ file://0001-meson-Disable-cmake-dependency-detector-for-llvm.patch \ - " +" -SRC_URI[sha256sum] = "45434ff91a709844130a3174d9c0ef39c6b50725b2bb0c13e736f36134db14ad" +SRC_URI[sha256sum] = "64de0616fc2d801f929ab1ac2a4f16b3e2783c4309a724c8a259b20df8bbc1cc" UPSTREAM_CHECK_GITTAGREGEX = "mesa-(?P\d+(\.\d+)+)" diff --git a/meta/recipes-graphics/mesa/mesa_23.1.8.bb b/meta/recipes-graphics/mesa/mesa_23.1.8.bb deleted file mode 100644 index 96e8aa38d6..0000000000 --- a/meta/recipes-graphics/mesa/mesa_23.1.8.bb +++ /dev/null @@ -1,2 +0,0 @@ -require ${BPN}.inc - diff --git a/meta/recipes-graphics/mesa/mesa_23.2.1.bb b/meta/recipes-graphics/mesa/mesa_23.2.1.bb new file mode 100644 index 0000000000..96e8aa38d6 --- /dev/null +++ b/meta/recipes-graphics/mesa/mesa_23.2.1.bb @@ -0,0 +1,2 @@ +require ${BPN}.inc + -- cgit v1.2.3-54-g00ecf