From: Wang Mingyu <[email protected]> add patches to fix compilation with GCC < 13
Add two patches to fix build failures when using older GCC: - Fix typed enum syntax not supported by GCC 11. - Fix variable declaration after case label not allowed by GCC 10. Signed-off-by: Wang Mingyu <[email protected]> --- ...er-jay-fix-GCC-10-case-label-declara.patch | 42 +++++++++++++++++++ ...er-jay-jay_ir.h-do-not-used-typed-en.patch | 39 +++++++++++++++++ meta/recipes-graphics/mesa/mesa.inc | 6 ++- 3 files changed, 85 insertions(+), 2 deletions(-) create mode 100644 meta/recipes-graphics/mesa/files/0001-src-intel-compiler-jay-fix-GCC-10-case-label-declara.patch create mode 100644 meta/recipes-graphics/mesa/files/0001-src-intel-compiler-jay-jay_ir.h-do-not-used-typed-en.patch diff --git a/meta/recipes-graphics/mesa/files/0001-src-intel-compiler-jay-fix-GCC-10-case-label-declara.patch b/meta/recipes-graphics/mesa/files/0001-src-intel-compiler-jay-fix-GCC-10-case-label-declara.patch new file mode 100644 index 0000000000..b8b8718979 --- /dev/null +++ b/meta/recipes-graphics/mesa/files/0001-src-intel-compiler-jay-fix-GCC-10-case-label-declara.patch @@ -0,0 +1,42 @@ +From 0b4b577b7fc926d374234c80267a4bf9dcccb7ef Mon Sep 17 00:00:00 2001 +From: Wang Mingyu <[email protected]> +Date: Tue, 16 Jun 2026 09:12:34 +0000 +Subject: [PATCH] src/intel/compiler/jay: fix GCC 10 case label declaration + error + +GCC 10 (and earlier) does not allow a variable declaration immediately +after a case label, because a label must be followed by a statement. + + error: a label can only be part of a statement and a declaration is not a statement + +Wrap the case block for JAY_OPCODE_DESWIZZLE_ODD in braces to make the +declaration a valid statement inside the block. + +Upstream-Status: Inappropriate [yocto host distro requirements] + +Signed-off-by: Wang Mingyu <[email protected]> +--- + src/intel/compiler/jay/jay_to_binary.c | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/src/intel/compiler/jay/jay_to_binary.c b/src/intel/compiler/jay/jay_to_binary.c +index 62b9576..a0a9498 100644 +--- a/src/intel/compiler/jay/jay_to_binary.c ++++ b/src/intel/compiler/jay/jay_to_binary.c +@@ -362,11 +362,12 @@ emit(struct brw_codegen *p, + brw_BFN(p, dst, SRC(0), SRC(1), SRC(2), brw_imm_ud(jay_bfn_ctrl(I))); + break; + +- case JAY_OPCODE_DESWIZZLE_ODD: ++ case JAY_OPCODE_DESWIZZLE_ODD: { + bool hi = simd_offs ? true : jay_deswizzle_odd_src2_hi(I); + brw_MOV(p, dst, + byte_offset(to_brw_reg(f, I, simd_offs, 0, false), hi ? 64 : 0)); + break; ++ } + + case JAY_OPCODE_DESWIZZLE_EVEN: + brw_set_default_exec_size(p, BRW_EXECUTE_16); +-- +2.43.0 + diff --git a/meta/recipes-graphics/mesa/files/0001-src-intel-compiler-jay-jay_ir.h-do-not-used-typed-en.patch b/meta/recipes-graphics/mesa/files/0001-src-intel-compiler-jay-jay_ir.h-do-not-used-typed-en.patch new file mode 100644 index 0000000000..904b20d440 --- /dev/null +++ b/meta/recipes-graphics/mesa/files/0001-src-intel-compiler-jay-jay_ir.h-do-not-used-typed-en.patch @@ -0,0 +1,39 @@ +From 3adae0d97f655c2991d5b428a3bc95a972e6228b Mon Sep 17 00:00:00 2001 +From: Alexander Kanavin <[email protected]> +Date: Sun, 14 Jun 2026 17:42:19 +0200 +Subject: [PATCH] src/intel/compiler/jay/jay_ir.h: do not used typed enum + +This is a C23 feature and not supported by gcc < 13, which +many host distros still have (e.g. Debian 12). + +Upstream-Status: Inappropriate [yocto host distro requirements] +Signed-off-by: Alexander Kanavin <[email protected]> +--- + src/intel/compiler/jay/jay_ir.h | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/src/intel/compiler/jay/jay_ir.h b/src/intel/compiler/jay/jay_ir.h +index 8307044..abf175a 100644 +--- a/src/intel/compiler/jay/jay_ir.h ++++ b/src/intel/compiler/jay/jay_ir.h +@@ -579,7 +579,7 @@ jay_type_is_any_float(enum jay_type t) + return jay_base_type(t) == JAY_TYPE_F || jay_base_type(t) == JAY_TYPE_BF; + } + +-enum jay_predication : uint8_t { ++enum jay_predication { + /** No predication. */ + JAY_NOT_PREDICATED = 0, + +@@ -634,7 +634,7 @@ typedef struct jay_inst { + bool decrement_dep:1; + unsigned padding :12; + +- enum jay_predication predication; ++ uint8_t predication; + enum jay_conditional_mod conditional_mod; + + jay_def cond_flag; /**< conditional flag */ +-- +2.47.3 + diff --git a/meta/recipes-graphics/mesa/mesa.inc b/meta/recipes-graphics/mesa/mesa.inc index 15dad6eedd..67b740f9e9 100644 --- a/meta/recipes-graphics/mesa/mesa.inc +++ b/meta/recipes-graphics/mesa/mesa.inc @@ -18,10 +18,12 @@ SRC_URI = "https://archive.mesa3d.org/mesa-${PV}.tar.xz \ file://0001-meson-misdetects-64bit-atomics-on-mips-clang.patch \ file://0001-freedreno-don-t-encode-build-path-into-binaries.patch \ file://0001-gallivm-Fix-armhf-build-against-LLVM-22.patch \ + 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 \ " -SRC_URI[sha256sum] = "1d3c3b8a8363b8cc354175bb4a684ad8b035211cc1d6fa17aeb9b9623c513f89" -PV = "26.0.6" +SRC_URI[sha256sum] = "bac2bca9121897a2b8162e79636b50ac998fca799c8e6cf914edd85962babdf0" +PV = "26.1.2" UPSTREAM_CHECK_GITTAGREGEX = "mesa-(?P<pver>\d+(\.\d+)+)" -- 2.43.0
-=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#238885): https://lists.openembedded.org/g/openembedded-core/message/238885 Mute This Topic: https://lists.openembedded.org/mt/119830936/21656 Group Owner: [email protected] Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [[email protected]] -=-=-=-=-=-=-=-=-=-=-=-
