1
0
mirror of https://git.yoctoproject.org/poky synced 2026-05-07 16:59:22 +00:00

mesa: fix build on host with glibc-2.43

(From OE-Core rev: ee8ff68e508e7e57a999a4008c8eeaa8e2d4563f)

Signed-off-by: Martin Jansa <martin.jansa@gmail.com>
Signed-off-by: Yoann Congal <yoann.congal@smile.fr>
Signed-off-by: Paul Barker <paul@pbarker.dev>
This commit is contained in:
Martin Jansa
2026-04-10 08:42:26 +02:00
committed by Paul Barker
parent bb83201d19
commit a9d13b96dc
2 changed files with 57 additions and 0 deletions
@@ -0,0 +1,56 @@
From 3f007af78283aea2e8c1a3addff7aeae862d8b28 Mon Sep 17 00:00:00 2001
From: Dave Airlie <airlied@redhat.com>
Date: Fri, 7 Nov 2025 13:14:56 +1000
Subject: [PATCH] c11/threads: fix build on c23
C23/glibc is now including once_init in stdlib.h
https://patchwork.sourceware.org/project/glibc/patch/78061085-f04a-0c45-107b-5a8a15521083@redhat.com/#213088
Just fix up our use of it.
Cc: mesa-stable
Reviewed-by: Yonggang Luo <luoyonggang@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38298>
Upstream-Status: Backport [v26.0.0 179e744f7577d98df7c79d7324c22acfb32a0154]
Signed-off-by: Martin Jansa <martin.jansa@gmail.com>
---
src/c11/impl/threads_posix.c | 3 ++-
src/c11/threads.h | 2 ++
2 files changed, 4 insertions(+), 1 deletion(-)
diff --git a/src/c11/impl/threads_posix.c b/src/c11/impl/threads_posix.c
index 2540e3e0c49..f75774fc51d 100644
--- a/src/c11/impl/threads_posix.c
+++ b/src/c11/impl/threads_posix.c
@@ -70,12 +70,13 @@ impl_thrd_routine(void *p)
/*--------------- 7.25.2 Initialization functions ---------------*/
// 7.25.2.1
+#ifndef __once_flag_defined
void
call_once(once_flag *flag, void (*func)(void))
{
pthread_once(flag, func);
}
-
+#endif
/*------------- 7.25.3 Condition variable functions -------------*/
// 7.25.3.1
diff --git a/src/c11/threads.h b/src/c11/threads.h
index dbcb3459a9b..c849f385e30 100644
--- a/src/c11/threads.h
+++ b/src/c11/threads.h
@@ -118,8 +118,10 @@ typedef pthread_cond_t cnd_t;
typedef pthread_t thrd_t;
typedef pthread_key_t tss_t;
typedef pthread_mutex_t mtx_t;
+#ifndef __once_flag_defined
typedef pthread_once_t once_flag;
# define ONCE_FLAG_INIT PTHREAD_ONCE_INIT
+#endif
# ifdef PTHREAD_DESTRUCTOR_ITERATIONS
# define TSS_DTOR_ITERATIONS PTHREAD_DESTRUCTOR_ITERATIONS
# else
+1
View File
@@ -19,6 +19,7 @@ SRC_URI = "https://mesa.freedesktop.org/archive/mesa-${PV}.tar.xz \
file://0001-drisw-fix-build-without-dri3.patch \
file://0002-glxext-don-t-try-zink-if-not-enabled-in-mesa.patch \
file://0001-Revert-meson-do-not-pull-in-clc-for-clover.patch \
file://0001-c11-threads-fix-build-on-c23.patch \
"
SRC_URI[sha256sum] = "7454425f1ed4a6f1b5b107e1672b30c88b22ea0efea000ae2c7d96db93f6c26a"