Complete Yocto mirror with license table for TQMa6UL (2038-compliance)
- 264 license table entries with exact download URLs (224/264 resolved) - Complete sources/ directory with all BitBake recipes - Build configuration: tqma6ul-multi-mba6ulx, spaetzle (musl) - Full traceability for Softwarefreigabeantrag - GCC 13.4.0, Linux 6.6.102, U-Boot 2023.04, musl 1.2.4 - License distribution: GPL-2.0 (24), MIT (23), GPL-2.0+ (18), BSD-3 (16)
This commit is contained in:
@@ -0,0 +1,64 @@
|
||||
From bb2db56ffec6e527d88751f75117ae690227cd6c Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Kai=20Wasserb=C3=A4ch?= <kai@dev.carbon-project.org>
|
||||
Date: Sat, 11 Feb 2023 18:38:01 +0100
|
||||
Subject: [PATCH] fix: gallivm: fix LLVM #include of Host.h, moved to
|
||||
TargetParser
|
||||
|
||||
Upstream moved Host.h from Support to TargetParser in LLVM 17.
|
||||
|
||||
This shouldn't lead to a FTBFS, since there is a forwarding include left
|
||||
behind. Sadly the added deprecation warning #pragma is invalid and thus
|
||||
causes a build failure right away. But since we would have to follow the
|
||||
move anyway in the future, just do it right away.
|
||||
|
||||
Reference: https://github.com/llvm/llvm-project/commit/d768bf994f508d7eaf9541a568be3d71096febf5
|
||||
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
|
||||
Closes: #8275
|
||||
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21263>
|
||||
|
||||
Upstream-Status: Backport [https://gitlab.freedesktop.org/mesa/mesa/-/commit/bb2db56ffec6e527d88751f75117ae690227cd6c]
|
||||
|
||||
---
|
||||
src/gallium/auxiliary/gallivm/lp_bld_debug.cpp | 7 ++++++-
|
||||
src/gallium/auxiliary/gallivm/lp_bld_misc.cpp | 4 +++-
|
||||
2 files changed, 9 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/src/gallium/auxiliary/gallivm/lp_bld_debug.cpp b/src/gallium/auxiliary/gallivm/lp_bld_debug.cpp
|
||||
index 54bc5d5ada36c..f78f04f042be8 100644
|
||||
--- a/src/gallium/auxiliary/gallivm/lp_bld_debug.cpp
|
||||
+++ b/src/gallium/auxiliary/gallivm/lp_bld_debug.cpp
|
||||
@@ -35,9 +35,14 @@
|
||||
#include <llvm-c/Disassembler.h>
|
||||
#include <llvm/Support/raw_ostream.h>
|
||||
#include <llvm/Support/Format.h>
|
||||
-#include <llvm/Support/Host.h>
|
||||
#include <llvm/IR/Module.h>
|
||||
|
||||
+#if LLVM_VERSION_MAJOR >= 17
|
||||
+#include <llvm/TargetParser/Host.h>
|
||||
+#else
|
||||
+#include <llvm/Support/Host.h>
|
||||
+#endif
|
||||
+
|
||||
#include "util/u_math.h"
|
||||
#include "util/u_debug.h"
|
||||
|
||||
diff --git a/src/gallium/auxiliary/gallivm/lp_bld_misc.cpp b/src/gallium/auxiliary/gallivm/lp_bld_misc.cpp
|
||||
index 334c13530394b..5e7a30a6cc2e3 100644
|
||||
--- a/src/gallium/auxiliary/gallivm/lp_bld_misc.cpp
|
||||
+++ b/src/gallium/auxiliary/gallivm/lp_bld_misc.cpp
|
||||
@@ -60,7 +60,11 @@
|
||||
#include <llvm/Analysis/TargetLibraryInfo.h>
|
||||
#include <llvm/ExecutionEngine/SectionMemoryManager.h>
|
||||
#include <llvm/Support/CommandLine.h>
|
||||
+#if LLVM_VERSION_MAJOR >= 17
|
||||
+#include <llvm/TargetParser/Host.h>
|
||||
+#else
|
||||
#include <llvm/Support/Host.h>
|
||||
+#endif
|
||||
#include <llvm/Support/PrettyStackTrace.h>
|
||||
#include <llvm/ExecutionEngine/ObjectCache.h>
|
||||
#include <llvm/Support/TargetSelect.h>
|
||||
|
||||
--
|
||||
GitLab
|
||||
@@ -0,0 +1,128 @@
|
||||
From 1a894699354f5f984f31e5d3418b651edf486df9 Mon Sep 17 00:00:00 2001
|
||||
From: Ryan Eatmon <reatmon@ti.com>
|
||||
Date: Fri, 22 Sep 2023 22:32:41 -0500
|
||||
Subject: [PATCH] fix: gallivm: limit usage of LLVMContextSetOpaquePointers()
|
||||
to LLVM 15
|
||||
|
||||
LLVMContextSetOpaquePointers() was a temporary workaround offered to
|
||||
allow transitioning to opaque pointers. Mesa is ready for this now with
|
||||
recent versions of LLVM (16+). Therefore we limit the workaround of
|
||||
using LLVMContextSetOpaquePointers() to LLVM 15 now, that this C
|
||||
interface was removed in LLVM 17.
|
||||
|
||||
Reference: https://github.com/llvm/llvm-project/commit/1270879376025457e266572c7cccc51eb5de9276
|
||||
|
||||
Upstream-Status: Submitted [https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21124]
|
||||
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
|
||||
---
|
||||
src/gallium/auxiliary/draw/draw_llvm.c | 2 +-
|
||||
src/gallium/drivers/llvmpipe/lp_context.c | 2 +-
|
||||
src/gallium/drivers/llvmpipe/lp_test_arit.c | 2 +-
|
||||
src/gallium/drivers/llvmpipe/lp_test_blend.c | 2 +-
|
||||
src/gallium/drivers/llvmpipe/lp_test_conv.c | 2 +-
|
||||
src/gallium/drivers/llvmpipe/lp_test_format.c | 4 ++--
|
||||
src/gallium/drivers/llvmpipe/lp_test_printf.c | 2 +-
|
||||
7 files changed, 8 insertions(+), 8 deletions(-)
|
||||
|
||||
diff --git a/src/gallium/auxiliary/draw/draw_llvm.c b/src/gallium/auxiliary/draw/draw_llvm.c
|
||||
index 50c157bc3cc..8b3a1522725 100644
|
||||
--- a/src/gallium/auxiliary/draw/draw_llvm.c
|
||||
+++ b/src/gallium/auxiliary/draw/draw_llvm.c
|
||||
@@ -784,7 +784,7 @@ draw_llvm_create(struct draw_context *draw, LLVMContextRef context)
|
||||
if (!llvm->context) {
|
||||
llvm->context = LLVMContextCreate();
|
||||
|
||||
-#if LLVM_VERSION_MAJOR >= 15
|
||||
+#if LLVM_VERSION_MAJOR == 15
|
||||
LLVMContextSetOpaquePointers(llvm->context, false);
|
||||
#endif
|
||||
|
||||
diff --git a/src/gallium/drivers/llvmpipe/lp_context.c b/src/gallium/drivers/llvmpipe/lp_context.c
|
||||
index 8309335aebc..0ef4317fc76 100644
|
||||
--- a/src/gallium/drivers/llvmpipe/lp_context.c
|
||||
+++ b/src/gallium/drivers/llvmpipe/lp_context.c
|
||||
@@ -263,7 +263,7 @@ llvmpipe_create_context(struct pipe_screen *screen, void *priv,
|
||||
if (!llvmpipe->context)
|
||||
goto fail;
|
||||
|
||||
-#if LLVM_VERSION_MAJOR >= 15
|
||||
+#if LLVM_VERSION_MAJOR == 15
|
||||
LLVMContextSetOpaquePointers(llvmpipe->context, false);
|
||||
#endif
|
||||
|
||||
diff --git a/src/gallium/drivers/llvmpipe/lp_test_arit.c b/src/gallium/drivers/llvmpipe/lp_test_arit.c
|
||||
index 4118928d52e..565b1c47753 100644
|
||||
--- a/src/gallium/drivers/llvmpipe/lp_test_arit.c
|
||||
+++ b/src/gallium/drivers/llvmpipe/lp_test_arit.c
|
||||
@@ -434,7 +434,7 @@ test_unary(unsigned verbose, FILE *fp, const struct unary_test_t *test, unsigned
|
||||
}
|
||||
|
||||
context = LLVMContextCreate();
|
||||
-#if LLVM_VERSION_MAJOR >= 15
|
||||
+#if LLVM_VERSION_MAJOR == 15
|
||||
LLVMContextSetOpaquePointers(context, false);
|
||||
#endif
|
||||
gallivm = gallivm_create("test_module", context, NULL);
|
||||
diff --git a/src/gallium/drivers/llvmpipe/lp_test_blend.c b/src/gallium/drivers/llvmpipe/lp_test_blend.c
|
||||
index 37c3f731eaf..3d2899a78d4 100644
|
||||
--- a/src/gallium/drivers/llvmpipe/lp_test_blend.c
|
||||
+++ b/src/gallium/drivers/llvmpipe/lp_test_blend.c
|
||||
@@ -452,7 +452,7 @@ test_one(unsigned verbose,
|
||||
dump_blend_type(stdout, blend, type);
|
||||
|
||||
context = LLVMContextCreate();
|
||||
-#if LLVM_VERSION_MAJOR >= 15
|
||||
+#if LLVM_VERSION_MAJOR == 15
|
||||
LLVMContextSetOpaquePointers(context, false);
|
||||
#endif
|
||||
gallivm = gallivm_create("test_module", context, NULL);
|
||||
diff --git a/src/gallium/drivers/llvmpipe/lp_test_conv.c b/src/gallium/drivers/llvmpipe/lp_test_conv.c
|
||||
index c7ea9efc12d..83236f0c0ba 100644
|
||||
--- a/src/gallium/drivers/llvmpipe/lp_test_conv.c
|
||||
+++ b/src/gallium/drivers/llvmpipe/lp_test_conv.c
|
||||
@@ -223,7 +223,7 @@ test_one(unsigned verbose,
|
||||
}
|
||||
|
||||
context = LLVMContextCreate();
|
||||
-#if LLVM_VERSION_MAJOR >= 15
|
||||
+#if LLVM_VERSION_MAJOR == 15
|
||||
LLVMContextSetOpaquePointers(context, false);
|
||||
#endif
|
||||
gallivm = gallivm_create("test_module", context, NULL);
|
||||
diff --git a/src/gallium/drivers/llvmpipe/lp_test_format.c b/src/gallium/drivers/llvmpipe/lp_test_format.c
|
||||
index 0a2a1e449e8..89f7d5dec1a 100644
|
||||
--- a/src/gallium/drivers/llvmpipe/lp_test_format.c
|
||||
+++ b/src/gallium/drivers/llvmpipe/lp_test_format.c
|
||||
@@ -150,7 +150,7 @@ test_format_float(unsigned verbose, FILE *fp,
|
||||
unsigned i, j, k, l;
|
||||
|
||||
context = LLVMContextCreate();
|
||||
-#if LLVM_VERSION_MAJOR >= 15
|
||||
+#if LLVM_VERSION_MAJOR == 15
|
||||
LLVMContextSetOpaquePointers(context, false);
|
||||
#endif
|
||||
gallivm = gallivm_create("test_module_float", context, NULL);
|
||||
@@ -254,7 +254,7 @@ test_format_unorm8(unsigned verbose, FILE *fp,
|
||||
unsigned i, j, k, l;
|
||||
|
||||
context = LLVMContextCreate();
|
||||
-#if LLVM_VERSION_MAJOR >= 15
|
||||
+#if LLVM_VERSION_MAJOR == 15
|
||||
LLVMContextSetOpaquePointers(context, false);
|
||||
#endif
|
||||
gallivm = gallivm_create("test_module_unorm8", context, NULL);
|
||||
diff --git a/src/gallium/drivers/llvmpipe/lp_test_printf.c b/src/gallium/drivers/llvmpipe/lp_test_printf.c
|
||||
index b3de9cb9e8b..850c0abfe22 100644
|
||||
--- a/src/gallium/drivers/llvmpipe/lp_test_printf.c
|
||||
+++ b/src/gallium/drivers/llvmpipe/lp_test_printf.c
|
||||
@@ -96,7 +96,7 @@ test_printf(unsigned verbose, FILE *fp,
|
||||
boolean success = TRUE;
|
||||
|
||||
context = LLVMContextCreate();
|
||||
-#if LLVM_VERSION_MAJOR >= 15
|
||||
+#if LLVM_VERSION_MAJOR == 15
|
||||
LLVMContextSetOpaquePointers(context, false);
|
||||
#endif
|
||||
gallivm = gallivm_create("test_module", context, NULL);
|
||||
--
|
||||
2.17.1
|
||||
@@ -0,0 +1,43 @@
|
||||
From 8a5de0b6cf1090d7f29f3974ec79c32776cf2745 Mon Sep 17 00:00:00 2001
|
||||
From: Jami Kettunen <jami.kettunen@protonmail.com>
|
||||
Date: Tue, 31 Aug 2021 00:15:58 +0300
|
||||
Subject: [PATCH] freedreno/pm4: Use unsigned instead of uint to fix musl build
|
||||
|
||||
Upstream-Status: Backport
|
||||
|
||||
Fixes the following error I noticed when building against aarch64 with
|
||||
musl libc:
|
||||
|
||||
In file included from ../src/freedreno/decode/crashdec.h:38,
|
||||
from ../src/freedreno/decode/crashdec.c:40:
|
||||
../src/freedreno/common/freedreno_pm4.h:104:15: error: unknown type name 'uint'
|
||||
104 | static inline uint
|
||||
| ^~~~
|
||||
../src/freedreno/common/freedreno_pm4.h:105:25: error: unknown type name 'uint'; did you mean 'int'?
|
||||
105 | pm4_calc_odd_parity_bit(uint val)
|
||||
| ^~~~
|
||||
| int
|
||||
|
||||
Signed-off-by: Jami Kettunen <jami.kettunen@protonmail.com>
|
||||
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19665>
|
||||
---
|
||||
src/freedreno/common/freedreno_pm4.h | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/src/freedreno/common/freedreno_pm4.h b/src/freedreno/common/freedreno_pm4.h
|
||||
index 8f958953d693..091247e709a0 100644
|
||||
--- a/src/freedreno/common/freedreno_pm4.h
|
||||
+++ b/src/freedreno/common/freedreno_pm4.h
|
||||
@@ -105,8 +105,8 @@ pm4_pkt7_hdr(uint8_t opcode, uint16_t cnt)
|
||||
#define cp_type3_opcode(pkt) (((pkt) >> 8) & 0xFF)
|
||||
#define type3_pkt_size(pkt) ((((pkt) >> 16) & 0x3FFF) + 1)
|
||||
|
||||
-static inline uint
|
||||
-pm4_calc_odd_parity_bit(uint val)
|
||||
+static inline unsigned
|
||||
+pm4_calc_odd_parity_bit(unsigned val)
|
||||
{
|
||||
return (0x9669 >> (0xf & ((val) ^ ((val) >> 4) ^ ((val) >> 8) ^
|
||||
((val) >> 12) ^ ((val) >> 16) ^ ((val) >> 20) ^
|
||||
--
|
||||
2.39.2
|
||||
@@ -0,0 +1,58 @@
|
||||
From 2dfe0f899aeb415a5491b8c67e208673d2a2914f Mon Sep 17 00:00:00 2001
|
||||
From: Ryan Eatmon <reatmon@ti.com>
|
||||
Date: Fri, 22 Sep 2023 21:50:08 -0500
|
||||
Subject: [PATCH] gallium: Fix build with llvm 17
|
||||
|
||||
These headers are not available for C files in llvm 17+
|
||||
and they seem to be not needed to compile after all with llvm 17
|
||||
so add conditions to exclude them for llvm >= 17
|
||||
|
||||
Upstream-Status: Submitted [https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21262]
|
||||
Upstream-Status: Submitted [https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22980]
|
||||
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
|
||||
---
|
||||
src/gallium/auxiliary/gallivm/lp_bld_init.c | 8 ++++----
|
||||
src/gallium/auxiliary/gallivm/lp_bld_misc.cpp | 4 ++++
|
||||
2 files changed, 8 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/src/gallium/auxiliary/gallivm/lp_bld_init.c b/src/gallium/auxiliary/gallivm/lp_bld_init.c
|
||||
index 584ea738668..fe8bb2b11af 100644
|
||||
--- a/src/gallium/auxiliary/gallivm/lp_bld_init.c
|
||||
+++ b/src/gallium/auxiliary/gallivm/lp_bld_init.c
|
||||
@@ -42,14 +42,14 @@
|
||||
|
||||
#include <llvm/Config/llvm-config.h>
|
||||
#include <llvm-c/Analysis.h>
|
||||
-#include <llvm-c/Transforms/Scalar.h>
|
||||
-#if LLVM_VERSION_MAJOR >= 7
|
||||
-#include <llvm-c/Transforms/Utils.h>
|
||||
-#endif
|
||||
#include <llvm-c/BitWriter.h>
|
||||
#if GALLIVM_USE_NEW_PASS == 1
|
||||
#include <llvm-c/Transforms/PassBuilder.h>
|
||||
#elif GALLIVM_HAVE_CORO == 1
|
||||
+#include <llvm-c/Transforms/Scalar.h>
|
||||
+#if LLVM_VERSION_MAJOR >= 7
|
||||
+#include <llvm-c/Transforms/Utils.h>
|
||||
+#endif
|
||||
#if LLVM_VERSION_MAJOR <= 8 && (defined(PIPE_ARCH_AARCH64) || defined (PIPE_ARCH_ARM) || defined(PIPE_ARCH_S390) || defined(PIPE_ARCH_MIPS64))
|
||||
#include <llvm-c/Transforms/IPO.h>
|
||||
#endif
|
||||
diff --git a/src/gallium/auxiliary/gallivm/lp_bld_misc.cpp b/src/gallium/auxiliary/gallivm/lp_bld_misc.cpp
|
||||
index 2279e5acb28..0caeaf94263 100644
|
||||
--- a/src/gallium/auxiliary/gallivm/lp_bld_misc.cpp
|
||||
+++ b/src/gallium/auxiliary/gallivm/lp_bld_misc.cpp
|
||||
@@ -56,7 +56,11 @@
|
||||
#include <llvm-c/ExecutionEngine.h>
|
||||
#include <llvm/Target/TargetOptions.h>
|
||||
#include <llvm/ExecutionEngine/ExecutionEngine.h>
|
||||
+#if LLVM_VERSION_MAJOR >= 17
|
||||
+#include <llvm/TargetParser/Triple.h>
|
||||
+#else
|
||||
#include <llvm/ADT/Triple.h>
|
||||
+#endif
|
||||
#include <llvm/Analysis/TargetLibraryInfo.h>
|
||||
#include <llvm/ExecutionEngine/SectionMemoryManager.h>
|
||||
#include <llvm/Support/CommandLine.h>
|
||||
--
|
||||
2.17.1
|
||||
@@ -0,0 +1,52 @@
|
||||
From 6c5033bb01a3a1341d4db5007586a5f2e2727b0a Mon Sep 17 00:00:00 2001
|
||||
From: Ryan Eatmon <reatmon@ti.com>
|
||||
Date: Mon, 4 Nov 2024 13:37:29 -0600
|
||||
Subject: [PATCH] gallium: Fix build with llvm 18 and 19
|
||||
|
||||
- CodeGenOpt::Level changed to CodeGenOoptLevel. [1]
|
||||
- llvm::sys::getHostCPUFeatures() now returns the features instead of
|
||||
modifying the passed in argument. [2]
|
||||
|
||||
Upstream-Status: Backport [1][https://gitlab.freedesktop.org/mesa/mesa/-/commit/f79617fe804ea6524651ff1bc3a91098d3199179]
|
||||
Upstream-Status: Backport [2][https://gitlab.freedesktop.org/mesa/mesa/-/commit/fa9cd89a85b904615ebc11da609445b5b751e68d]
|
||||
|
||||
Signed-off-by: Ryan Eatmon <reatmon@ti.com>
|
||||
---
|
||||
src/gallium/auxiliary/gallivm/lp_bld_misc.cpp | 14 ++++++++++++--
|
||||
1 file changed, 12 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/src/gallium/auxiliary/gallivm/lp_bld_misc.cpp b/src/gallium/auxiliary/gallivm/lp_bld_misc.cpp
|
||||
index 5e7a30a6cc2..dbc777e3096 100644
|
||||
--- a/src/gallium/auxiliary/gallivm/lp_bld_misc.cpp
|
||||
+++ b/src/gallium/auxiliary/gallivm/lp_bld_misc.cpp
|
||||
@@ -368,7 +368,11 @@ lp_build_create_jit_compiler_for_module(LLVMExecutionEngineRef *OutJIT,
|
||||
builder.setEngineKind(EngineKind::JIT)
|
||||
.setErrorStr(&Error)
|
||||
.setTargetOptions(options)
|
||||
+#if LLVM_VERSION_MAJOR >= 18
|
||||
+ .setOptLevel((CodeGenOptLevel)OptLevel);
|
||||
+#else
|
||||
.setOptLevel((CodeGenOpt::Level)OptLevel);
|
||||
+#endif
|
||||
|
||||
#ifdef _WIN32
|
||||
/*
|
||||
@@ -392,8 +396,14 @@ lp_build_create_jit_compiler_for_module(LLVMExecutionEngineRef *OutJIT,
|
||||
* which allows us to enable/disable code generation based
|
||||
* on the results of cpuid on these architectures.
|
||||
*/
|
||||
- llvm::StringMap<bool> features;
|
||||
- llvm::sys::getHostCPUFeatures(features);
|
||||
+ #if LLVM_VERSION_MAJOR >= 19
|
||||
+ /* llvm-19+ returns StringMap from getHostCPUFeatures.
|
||||
+ */
|
||||
+ auto features = llvm::sys::getHostCPUFeatures();
|
||||
+ #else
|
||||
+ llvm::StringMap<bool> features;
|
||||
+ llvm::sys::getHostCPUFeatures(features);
|
||||
+ #endif
|
||||
|
||||
for (StringMapIterator<bool> f = features.begin();
|
||||
f != features.end();
|
||||
--
|
||||
2.17.1
|
||||
@@ -0,0 +1,64 @@
|
||||
From 25946100e21cf2095bea334e8d7096798561d0b7 Mon Sep 17 00:00:00 2001
|
||||
From: Vincent Davis Jr <vince@underview.tech>
|
||||
Date: Wed, 28 Dec 2022 16:28:01 -0600
|
||||
Subject: [PATCH] gbm/backend: fix gbm compile without dri
|
||||
|
||||
Upstream-Status: Backport
|
||||
|
||||
https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20447
|
||||
https://gitlab.freedesktop.org/mesa/mesa/-/commit/842ca284650f066e58706741a7d22d67b5088e60
|
||||
|
||||
At mesa version 22.2.3 patch wasn't introduced until after.
|
||||
|
||||
Commit introduces a fix that allows for gbm to be built with an empty
|
||||
backend. There are situation especially in a Yocto/OE cross compilation
|
||||
environment where you want to build with an empty backend. The particular
|
||||
situation is as such:
|
||||
|
||||
The mesa-gl recipe is the preferred provider for virtual/libgbm, virtual/libgl,
|
||||
virtual/mesa, etc... But the x11 DISTRO_FEATURE in't included this leads to build
|
||||
errors such as:
|
||||
|
||||
| /../../../ld: src/gbm/libgbm.so.1.0.0.p/main_backend.c.o: in function `find_backend':
|
||||
| backend.c:(.text.find_backend+0xa4): undefined reference to `gbm_dri_backend'
|
||||
| /../../../ld: src/gbm/libgbm.so.1.0.0.p/main_backend.c.o:(.data.rel.ro.builtin_backends+0x4):
|
||||
undefined reference to `gbm_dri_backend'
|
||||
| collect2: error: ld returned 1 exit status
|
||||
|
||||
Issue should be replicable by setting -Ddri3=disabled and -Dgbm=enabled
|
||||
|
||||
Add fix to bypasses compilation issue by excluding gbm dri backend. If
|
||||
HAVE_DRI || HAVE_DRIX not specified.
|
||||
|
||||
Acked-by: David Heidelberg <david.heidelberg@collabora.com>
|
||||
Signed-off-by: Vincent Davis Jr <vince@underview.tech>
|
||||
---
|
||||
src/gbm/main/backend.c | 4 ++++
|
||||
1 file changed, 4 insertions(+)
|
||||
|
||||
diff --git a/src/gbm/main/backend.c b/src/gbm/main/backend.c
|
||||
index 974d0a76a4e..feee0703495 100644
|
||||
--- a/src/gbm/main/backend.c
|
||||
+++ b/src/gbm/main/backend.c
|
||||
@@ -42,7 +42,9 @@
|
||||
#define ARRAY_SIZE(a) (sizeof(a)/sizeof((a)[0]))
|
||||
#define VER_MIN(a, b) ((a) < (b) ? (a) : (b))
|
||||
|
||||
+#if defined(HAVE_DRI) || defined(HAVE_DRI2) || defined(HAVE_DRI3)
|
||||
extern const struct gbm_backend gbm_dri_backend;
|
||||
+#endif
|
||||
|
||||
struct gbm_backend_desc {
|
||||
const char *name;
|
||||
@@ -51,7 +53,9 @@ struct gbm_backend_desc {
|
||||
};
|
||||
|
||||
static const struct gbm_backend_desc builtin_backends[] = {
|
||||
+#if defined(HAVE_DRI) || defined(HAVE_DRI2) || defined(HAVE_DRI3)
|
||||
{ "dri", &gbm_dri_backend },
|
||||
+#endif
|
||||
};
|
||||
|
||||
#define BACKEND_LIB_SUFFIX "_gbm"
|
||||
--
|
||||
2.34.1
|
||||
@@ -0,0 +1,25 @@
|
||||
From 3ef37c63f03ad6f2af407de350486fdd25e9132a Mon Sep 17 00:00:00 2001
|
||||
From: Khem Raj <raj.khem@gmail.com>
|
||||
Date: Mon, 13 Jan 2020 15:23:47 -0800
|
||||
Subject: [PATCH] meson misdetects 64bit atomics on mips/clang
|
||||
|
||||
Upstream-Status: Pending
|
||||
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
||||
|
||||
---
|
||||
src/util/u_atomic.c | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/src/util/u_atomic.c b/src/util/u_atomic.c
|
||||
index 5a5eab4..e499516 100644
|
||||
--- a/src/util/u_atomic.c
|
||||
+++ b/src/util/u_atomic.c
|
||||
@@ -21,7 +21,7 @@
|
||||
* IN THE SOFTWARE.
|
||||
*/
|
||||
|
||||
-#if defined(MISSING_64BIT_ATOMICS) && defined(HAVE_PTHREAD)
|
||||
+#if !defined(__clang__) && defined(MISSING_64BIT_ATOMICS) && defined(HAVE_PTHREAD)
|
||||
|
||||
#include <stdint.h>
|
||||
#include <pthread.h>
|
||||
@@ -0,0 +1,43 @@
|
||||
From 3b4d6b89f644b43e507c08181fef06db4326f9da Mon Sep 17 00:00:00 2001
|
||||
From: Alistair Francis <alistair@alistair23.me>
|
||||
Date: Thu, 14 Nov 2019 13:04:49 -0800
|
||||
Subject: [PATCH] meson.build: check for all linux host_os combinations
|
||||
|
||||
Make sure that we are also looking for our host_os combinations like
|
||||
linux-musl etc. when assuming support for DRM/KMS.
|
||||
|
||||
Also delete a duplicate line.
|
||||
|
||||
Upstream-Status: Pending
|
||||
|
||||
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
|
||||
Signed-off-by: Fabio Berton <fabio.berton@ossystems.com.br>
|
||||
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
|
||||
Signed-off-by: Alistair Francis <alistair@alistair23.me>
|
||||
|
||||
---
|
||||
meson.build | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/meson.build b/meson.build
|
||||
index 172c64a..9b5294c 100644
|
||||
--- a/meson.build
|
||||
+++ b/meson.build
|
||||
@@ -173,7 +173,7 @@ with_any_opengl = with_opengl or with_gles1 or with_gles2
|
||||
# Only build shared_glapi if at least one OpenGL API is enabled
|
||||
with_shared_glapi = with_shared_glapi and with_any_opengl
|
||||
|
||||
-system_has_kms_drm = ['openbsd', 'netbsd', 'freebsd', 'gnu/kfreebsd', 'dragonfly', 'linux', 'sunos', 'android'].contains(host_machine.system())
|
||||
+system_has_kms_drm = ['openbsd', 'netbsd', 'freebsd', 'gnu/kfreebsd', 'dragonfly', 'linux', 'sunos', 'android'].contains(host_machine.system()) or host_machine.system().startswith('linux')
|
||||
|
||||
with_freedreno_kgsl = get_option('freedreno-kgsl')
|
||||
if with_freedreno_kgsl
|
||||
@@ -1076,7 +1076,7 @@ if cc.has_function('reallocarray')
|
||||
endif
|
||||
|
||||
# TODO: this is very incomplete
|
||||
-if ['linux', 'cygwin', 'gnu', 'freebsd', 'gnu/kfreebsd', 'haiku', 'android'].contains(host_machine.system())
|
||||
+if ['linux', 'cygwin', 'gnu', 'freebsd', 'gnu/kfreebsd', 'haiku'].contains(host_machine.system()) or host_machine.system().startswith('linux')
|
||||
pre_args += '-D_GNU_SOURCE'
|
||||
elif host_machine.system() == 'sunos'
|
||||
pre_args += '-D__EXTENSIONS__'
|
||||
@@ -0,0 +1,47 @@
|
||||
From f17e836ef9b1bbc6056790596420b699e48128c2 Mon Sep 17 00:00:00 2001
|
||||
From: Khem Raj <raj.khem@gmail.com>
|
||||
Date: Thu, 2 Dec 2021 19:57:42 -0800
|
||||
Subject: [PATCH] util/format: Check for NEON before using it
|
||||
|
||||
This fixes build on rpi0-w and any other machine which does not have
|
||||
neon unit and is not used as FPU unit
|
||||
|
||||
Fixes errors e.g.
|
||||
|
||||
In file included from ../mesa-21.3.0/src/util/format/u_format_unpack_neon.c:35:
|
||||
/mnt/b/yoe/master/build/tmp/work/arm1176jzfshf-vfp-yoe-linux-gnueabi/mesa/2_21.3.0-r0/recipe-sysroot-native/usr/lib/clang/13.0.1/include/arm_neon.h:32:2: error: "NEON support not enabled"
|
||||
|
||||
Upstream-Status: Submitted [https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14032]
|
||||
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
||||
|
||||
---
|
||||
src/util/format/u_format.c | 2 +-
|
||||
src/util/format/u_format_unpack_neon.c | 2 +-
|
||||
2 files changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/src/util/format/u_format.c b/src/util/format/u_format.c
|
||||
index c071250..0880984 100644
|
||||
--- a/src/util/format/u_format.c
|
||||
+++ b/src/util/format/u_format.c
|
||||
@@ -1184,7 +1184,7 @@ static void
|
||||
util_format_unpack_table_init(void)
|
||||
{
|
||||
for (enum pipe_format format = PIPE_FORMAT_NONE; format < PIPE_FORMAT_COUNT; format++) {
|
||||
-#if (defined(PIPE_ARCH_AARCH64) || defined(PIPE_ARCH_ARM)) && !defined(NO_FORMAT_ASM) && !defined(__SOFTFP__)
|
||||
+#if (defined(PIPE_ARCH_AARCH64) || (defined(__ARM_NEON) && defined(PIPE_ARCH_ARM))) && !defined(NO_FORMAT_ASM)
|
||||
const struct util_format_unpack_description *unpack = util_format_unpack_description_neon(format);
|
||||
if (unpack) {
|
||||
util_format_unpack_table[format] = unpack;
|
||||
diff --git a/src/util/format/u_format_unpack_neon.c b/src/util/format/u_format_unpack_neon.c
|
||||
index a4a5cb1..1e4f794 100644
|
||||
--- a/src/util/format/u_format_unpack_neon.c
|
||||
+++ b/src/util/format/u_format_unpack_neon.c
|
||||
@@ -23,7 +23,7 @@
|
||||
|
||||
#include <u_format.h>
|
||||
|
||||
-#if (defined(PIPE_ARCH_AARCH64) || defined(PIPE_ARCH_ARM)) && !defined(NO_FORMAT_ASM) && !defined(__SOFTFP__)
|
||||
+#if (defined(PIPE_ARCH_AARCH64) || (defined(__ARM_NEON) && defined(PIPE_ARCH_ARM))) && !defined(NO_FORMAT_ASM)
|
||||
|
||||
/* armhf builds default to vfp, not neon, and refuses to compile neon intrinsics
|
||||
* unless you tell it "no really".
|
||||
@@ -0,0 +1,38 @@
|
||||
From fa9cd89a85b904615ebc11da609445b5b751e68d Mon Sep 17 00:00:00 2001
|
||||
From: Satadru Pramanik <satadru@umich.edu>
|
||||
Date: Sat, 5 Oct 2024 13:35:52 +0000
|
||||
Subject: [PATCH] Update lp_bld_misc.cpp to support llvm-19+.
|
||||
|
||||
Fixes #11896.
|
||||
cc: mesa-stable
|
||||
|
||||
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31533>
|
||||
Upstream-Status: Backport [https://gitlab.freedesktop.org/mesa/mesa/-/commit/fa9cd89a85b904615ebc11da609445b5b751e68d]
|
||||
Signed-off-by: Randolph Sapp <rs@ti.com>
|
||||
---
|
||||
src/gallium/auxiliary/gallivm/lp_bld_misc.cpp | 10 ++++++++--
|
||||
1 file changed, 8 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/src/gallium/auxiliary/gallivm/lp_bld_misc.cpp b/src/gallium/auxiliary/gallivm/lp_bld_misc.cpp
|
||||
index 7975fcf1ac9..5b615d627ff 100644
|
||||
--- a/src/gallium/auxiliary/gallivm/lp_bld_misc.cpp
|
||||
+++ b/src/gallium/auxiliary/gallivm/lp_bld_misc.cpp
|
||||
@@ -329,8 +329,14 @@ lp_build_fill_mattrs(std::vector<std::string> &MAttrs)
|
||||
* which allows us to enable/disable code generation based
|
||||
* on the results of cpuid on these architectures.
|
||||
*/
|
||||
- llvm::StringMap<bool> features;
|
||||
- llvm::sys::getHostCPUFeatures(features);
|
||||
+ #if LLVM_VERSION_MAJOR >= 19
|
||||
+ /* llvm-19+ returns StringMap from getHostCPUFeatures.
|
||||
+ */
|
||||
+ auto features = llvm::sys::getHostCPUFeatures();
|
||||
+ #else
|
||||
+ llvm::StringMap<bool> features;
|
||||
+ llvm::sys::getHostCPUFeatures(features);
|
||||
+ #endif
|
||||
|
||||
for (llvm::StringMapIterator<bool> f = features.begin();
|
||||
f != features.end();
|
||||
--
|
||||
2.47.1
|
||||
@@ -0,0 +1,57 @@
|
||||
From 4bd15a419e892da843489c374c58c5b29c40b5d6 Mon Sep 17 00:00:00 2001
|
||||
From: Romain Naour <romain.naour@smile.fr>
|
||||
Date: Tue, 6 Feb 2024 09:47:09 +0100
|
||||
Subject: [PATCH 1/2] drisw: fix build without dri3
|
||||
|
||||
commit 1887368df41 ("glx/sw: check for modifier support in the kopper path")
|
||||
added dri3_priv.h header and dri3_check_multibuffer() function in drisw that
|
||||
can be build without dri3.
|
||||
|
||||
i686-buildroot-linux-gnu/bin/ld: src/glx/libglx.a.p/drisw_glx.c.o: in function `driswCreateScreenDriver':
|
||||
drisw_glx.c:(.text.driswCreateScreenDriver+0x3a0): undefined reference to `dri3_check_multibuffer'
|
||||
collect2: error: ld returned 1 exit status
|
||||
|
||||
Add HAVE_DRI3 guard around dri3_priv.h header and the zink code using
|
||||
dri3_check_multibuffer().
|
||||
|
||||
Fixes: 1887368df41 ("glx/sw: check for modifier support in the kopper path")
|
||||
|
||||
Upstream-Status: Submitted [https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27478]
|
||||
Signed-off-by: Romain Naour <romain.naour@smile.fr>
|
||||
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
||||
---
|
||||
src/glx/drisw_glx.c | 4 ++++
|
||||
1 file changed, 4 insertions(+)
|
||||
|
||||
diff --git a/src/glx/drisw_glx.c b/src/glx/drisw_glx.c
|
||||
index 3d3f752..4b19e2d 100644
|
||||
--- a/src/glx/drisw_glx.c
|
||||
+++ b/src/glx/drisw_glx.c
|
||||
@@ -32,7 +32,9 @@
|
||||
#include <dlfcn.h>
|
||||
#include "dri_common.h"
|
||||
#include "drisw_priv.h"
|
||||
+#ifdef HAVE_DRI3
|
||||
#include "dri3_priv.h"
|
||||
+#endif
|
||||
#include <X11/extensions/shmproto.h>
|
||||
#include <assert.h>
|
||||
#include <vulkan/vulkan_core.h>
|
||||
@@ -995,6 +997,7 @@ driswCreateScreenDriver(int screen, struct glx_display *priv,
|
||||
goto handle_error;
|
||||
}
|
||||
|
||||
+#ifdef HAVE_DRI3
|
||||
if (pdpyp->zink) {
|
||||
bool err;
|
||||
psc->has_multibuffer = dri3_check_multibuffer(priv->dpy, &err);
|
||||
@@ -1005,6 +1008,7 @@ driswCreateScreenDriver(int screen, struct glx_display *priv,
|
||||
goto handle_error;
|
||||
}
|
||||
}
|
||||
+#endif
|
||||
|
||||
glx_config_destroy_list(psc->base.configs);
|
||||
psc->base.configs = configs;
|
||||
--
|
||||
2.44.0
|
||||
@@ -0,0 +1,40 @@
|
||||
From 6d07f6aa7f92f40d78a2db645f16f0f3e7d3c2e8 Mon Sep 17 00:00:00 2001
|
||||
From: Khem Raj <raj.khem@gmail.com>
|
||||
Date: Fri, 23 Jun 2023 01:20:38 -0700
|
||||
Subject: [PATCH] gallium: Fix build with llvm 17
|
||||
|
||||
These headers are not available for C files in llvm 17+
|
||||
and they seem to be not needed to compile after all with llvm 17
|
||||
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 <raj.khem@gmail.com>
|
||||
|
||||
---
|
||||
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
|
||||
@@ -46,15 +46,19 @@
|
||||
#if GALLIVM_USE_NEW_PASS == 1
|
||||
#include <llvm-c/Transforms/PassBuilder.h>
|
||||
#elif GALLIVM_HAVE_CORO == 1
|
||||
+#if LLVM_VERSION_MAJOR < 17
|
||||
#include <llvm-c/Transforms/Scalar.h>
|
||||
-#if LLVM_VERSION_MAJOR >= 7
|
||||
+#endif
|
||||
+#if LLVM_VERSION_MAJOR >= 7 && LLVM_VERSION_MAJOR < 17
|
||||
#include <llvm-c/Transforms/Utils.h>
|
||||
#endif
|
||||
#if LLVM_VERSION_MAJOR <= 8 && (DETECT_ARCH_AARCH64 || DETECT_ARCH_ARM || DETECT_ARCH_S390 || DETECT_ARCH_MIPS64)
|
||||
#include <llvm-c/Transforms/IPO.h>
|
||||
#endif
|
||||
+#if LLVM_VERSION_MAJOR < 17
|
||||
#include <llvm-c/Transforms/Coroutines.h>
|
||||
#endif
|
||||
+#endif
|
||||
|
||||
unsigned gallivm_perf = 0;
|
||||
@@ -0,0 +1,31 @@
|
||||
From d17338d403980e1932a42f5d11c2a1fb7b25127b Mon Sep 17 00:00:00 2001
|
||||
From: MastaG <mastag@gmail.com>
|
||||
Date: Wed, 3 Jul 2024 21:00:42 +0200
|
||||
Subject: [PATCH] gallivm: Call StringMapIterator from llvm:: scope
|
||||
|
||||
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/11392
|
||||
Fixes: b035d9cab5a4 ("gallivm: use getHostCPUFeatures on x86/llvm-4.0+.")
|
||||
Reviewed-by: David Heidelberg <david@ixit.cz>
|
||||
Signed-off-by: David Heidelberg <david@ixit.cz>
|
||||
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30009>
|
||||
Upstream-Status: Backport [https://gitlab.freedesktop.org/mesa/mesa/-/commit/d17338d403980e1932a42f5d11c2a1fb7b25127b]
|
||||
Signed-off-by: Randolph Sapp <rs@ti.com>
|
||||
---
|
||||
src/gallium/auxiliary/gallivm/lp_bld_misc.cpp | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/src/gallium/auxiliary/gallivm/lp_bld_misc.cpp b/src/gallium/auxiliary/gallivm/lp_bld_misc.cpp
|
||||
index 95a8a6c6a08..f3c10652ed6 100644
|
||||
--- a/src/gallium/auxiliary/gallivm/lp_bld_misc.cpp
|
||||
+++ b/src/gallium/auxiliary/gallivm/lp_bld_misc.cpp
|
||||
@@ -332,7 +332,7 @@ lp_build_fill_mattrs(std::vector<std::string> &MAttrs)
|
||||
llvm::StringMap<bool> features;
|
||||
llvm::sys::getHostCPUFeatures(features);
|
||||
|
||||
- for (StringMapIterator<bool> f = features.begin();
|
||||
+ for (llvm::StringMapIterator<bool> f = features.begin();
|
||||
f != features.end();
|
||||
++f) {
|
||||
MAttrs.push_back(((*f).second ? "+" : "-") + (*f).first().str());
|
||||
--
|
||||
2.47.1
|
||||
@@ -0,0 +1,25 @@
|
||||
From 3ef37c63f03ad6f2af407de350486fdd25e9132a Mon Sep 17 00:00:00 2001
|
||||
From: Khem Raj <raj.khem@gmail.com>
|
||||
Date: Mon, 13 Jan 2020 15:23:47 -0800
|
||||
Subject: [PATCH] meson misdetects 64bit atomics on mips/clang
|
||||
|
||||
Upstream-Status: Pending
|
||||
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
||||
|
||||
---
|
||||
src/util/u_atomic.c | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/src/util/u_atomic.c b/src/util/u_atomic.c
|
||||
index 5a5eab4..e499516 100644
|
||||
--- a/src/util/u_atomic.c
|
||||
+++ b/src/util/u_atomic.c
|
||||
@@ -21,7 +21,7 @@
|
||||
* IN THE SOFTWARE.
|
||||
*/
|
||||
|
||||
-#if defined(MISSING_64BIT_ATOMICS) && defined(HAVE_PTHREAD)
|
||||
+#if !defined(__clang__) && defined(MISSING_64BIT_ATOMICS) && defined(HAVE_PTHREAD)
|
||||
|
||||
#include <stdint.h>
|
||||
#include <pthread.h>
|
||||
@@ -0,0 +1,43 @@
|
||||
From f2fe76d506f356de055b8eca83a7c9d0744a40af Mon Sep 17 00:00:00 2001
|
||||
From: Alistair Francis <alistair@alistair23.me>
|
||||
Date: Thu, 14 Nov 2019 13:04:49 -0800
|
||||
Subject: [PATCH] meson.build: check for all linux host_os combinations
|
||||
|
||||
Make sure that we are also looking for our host_os combinations like
|
||||
linux-musl etc. when assuming support for DRM/KMS.
|
||||
|
||||
Also delete a duplicate line.
|
||||
|
||||
Upstream-Status: Pending
|
||||
|
||||
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
|
||||
Signed-off-by: Fabio Berton <fabio.berton@ossystems.com.br>
|
||||
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
|
||||
Signed-off-by: Alistair Francis <alistair@alistair23.me>
|
||||
|
||||
---
|
||||
meson.build | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/meson.build b/meson.build
|
||||
index 35cc5f1..9a49c0d 100644
|
||||
--- a/meson.build
|
||||
+++ b/meson.build
|
||||
@@ -128,7 +128,7 @@
|
||||
# Only build shared_glapi if at least one OpenGL API is enabled
|
||||
with_shared_glapi = with_shared_glapi and with_any_opengl
|
||||
|
||||
-system_has_kms_drm = ['openbsd', 'netbsd', 'freebsd', 'gnu/kfreebsd', 'dragonfly', 'linux', 'sunos', 'android', 'managarm'].contains(host_machine.system())
|
||||
+system_has_kms_drm = ['openbsd', 'netbsd', 'freebsd', 'gnu/kfreebsd', 'dragonfly', 'linux', 'sunos', 'android', 'managarm'].contains(host_machine.system()) or host_machine.system().startswith('linux')
|
||||
|
||||
gallium_drivers = get_option('gallium-drivers')
|
||||
if gallium_drivers.contains('auto')
|
||||
@@ -998,7 +998,7 @@
|
||||
endif
|
||||
|
||||
# TODO: this is very incomplete
|
||||
-if ['linux', 'cygwin', 'gnu', 'freebsd', 'gnu/kfreebsd', 'haiku', 'android', 'managarm'].contains(host_machine.system())
|
||||
+if ['linux', 'cygwin', 'gnu', 'freebsd', 'gnu/kfreebsd', 'haiku', 'android', 'managarm'].contains(host_machine.system()) or host_machine.system().startswith('linux')
|
||||
pre_args += '-D_GNU_SOURCE'
|
||||
elif host_machine.system() == 'sunos'
|
||||
pre_args += '-D__EXTENSIONS__'
|
||||
@@ -0,0 +1,41 @@
|
||||
From 62495ebb977866c52d5bed8499a547c49f0d9bc1 Mon Sep 17 00:00:00 2001
|
||||
From: Romain Naour <romain.naour@smile.fr>
|
||||
Date: Tue, 6 Feb 2024 09:47:10 +0100
|
||||
Subject: [PATCH 2/2] glxext: don't try zink if not enabled in mesa
|
||||
|
||||
Commit 7d9ea77b459 ("glx: add automatic zink fallback loading between hw and sw drivers")
|
||||
added an automatic zink fallback even when the zink gallium is not
|
||||
enabled at build time.
|
||||
|
||||
It leads to unexpected error log while loading drisw driver and
|
||||
zink is not installed on the rootfs:
|
||||
|
||||
MESA-LOADER: failed to open zink: /usr/lib/dri/zink_dri.so
|
||||
|
||||
Fixes: 7d9ea77b459 ("glx: add automatic zink fallback loading between hw and sw drivers")
|
||||
|
||||
Upstream-Status: Submitted [https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27478]
|
||||
Signed-off-by: Romain Naour <romain.naour@smile.fr>
|
||||
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
||||
---
|
||||
src/glx/glxext.c | 2 ++
|
||||
1 file changed, 2 insertions(+)
|
||||
|
||||
diff --git a/src/glx/glxext.c b/src/glx/glxext.c
|
||||
index 05c825a..7a06aa9 100644
|
||||
--- a/src/glx/glxext.c
|
||||
+++ b/src/glx/glxext.c
|
||||
@@ -908,9 +908,11 @@ __glXInitialize(Display * dpy)
|
||||
#endif /* HAVE_DRI3 */
|
||||
if (!debug_get_bool_option("LIBGL_DRI2_DISABLE", false))
|
||||
dpyPriv->dri2Display = dri2CreateDisplay(dpy);
|
||||
+#if defined(HAVE_ZINK)
|
||||
if (!dpyPriv->dri3Display && !dpyPriv->dri2Display)
|
||||
try_zink = !debug_get_bool_option("LIBGL_KOPPER_DISABLE", false) &&
|
||||
!getenv("GALLIUM_DRIVER");
|
||||
+#endif /* HAVE_ZINK */
|
||||
}
|
||||
#endif /* GLX_USE_DRM */
|
||||
if (glx_direct)
|
||||
--
|
||||
2.44.0
|
||||
@@ -0,0 +1,62 @@
|
||||
# PowerVR Graphics require several patches that have not made their way
|
||||
# upstream yet. This allows us to build the shims we need without completely
|
||||
# clobbering mesa.
|
||||
|
||||
require recipes-graphics/mesa/mesa.inc
|
||||
|
||||
SUMMARY += " (with PowerVR support for TI platforms)"
|
||||
|
||||
LIC_FILES_CHKSUM = "file://docs/license.rst;md5=63779ec98d78d823a9dc533a0735ef10"
|
||||
|
||||
BRANCH = "powervr/kirkstone/${PV}"
|
||||
|
||||
SRC_URI = " \
|
||||
git://gitlab.freedesktop.org/StaticRocket/mesa.git;protocol=https;branch=${BRANCH} \
|
||||
file://0001-meson.build-check-for-all-linux-host_os-combinations.patch \
|
||||
file://0001-meson-misdetects-64bit-atomics-on-mips-clang.patch \
|
||||
file://0001-util-format-Check-for-NEON-before-using-it.patch \
|
||||
file://0001-gbm-backend-fix-gbm-compile-without-dri.patch \
|
||||
file://0001-freedreno-pm4-Use-unsigned-instead-of-uint-to-fix-mu.patch \
|
||||
file://0001-gallium-Fix-build-with-llvm-17.patch \
|
||||
file://0001-fix-gallivm-limit-usage-of-LLVMContextSetOpaquePoint.patch \
|
||||
file://0001-fix-gallivm-fix-LLVM-include-of-Host-h-moved-to-TargetParser.patch \
|
||||
file://0001-gallium-Fix-build-with-llvm-18-and-19.patch \
|
||||
"
|
||||
|
||||
S = "${WORKDIR}/git"
|
||||
|
||||
PACKAGECONFIG:append = " \
|
||||
${@bb.utils.contains('PREFERRED_PROVIDER_virtual/gpudriver', 'ti-img-rogue-driver', 'pvr', '', d)} \
|
||||
${@bb.utils.contains('PREFERRED_PROVIDER_virtual/gpudriver', 'ti-sgx-ddk-km', 'sgx', '', d)} \
|
||||
"
|
||||
|
||||
SRCREV = "c9f0919367589b38f5682183846de9d60eec082d"
|
||||
PV = "22.3.5"
|
||||
|
||||
PVR_DISPLAY_CONTROLLER_ALIAS ??= "tidss"
|
||||
PACKAGECONFIG[pvr] = "-Dgallium-pvr-alias=${PVR_DISPLAY_CONTROLLER_ALIAS},"
|
||||
PACKAGECONFIG[sgx] = "-Dgallium-sgx-alias=${PVR_DISPLAY_CONTROLLER_ALIAS},"
|
||||
|
||||
PACKAGECONFIG:remove = "video-codecs"
|
||||
PACKAGECONFIG[video-codecs] = ""
|
||||
PACKAGECONFIG:remove = "elf-tls"
|
||||
PACKAGECONFIG[elf-tls] = ""
|
||||
PACKAGECONFIG:remove = "xvmc"
|
||||
PACKAGECONFIG[xvmc] = ""
|
||||
|
||||
PACKAGE_ARCH = "${MACHINE_ARCH}"
|
||||
|
||||
GALLIUMDRIVERS:append = "${@bb.utils.contains('PACKAGECONFIG', 'pvr', ',pvr', '', d)}"
|
||||
GALLIUMDRIVERS:append = "${@bb.utils.contains('PACKAGECONFIG', 'sgx', ',sgx', '', d)}"
|
||||
|
||||
VULKAN_DRIVERS:append = "${@bb.utils.contains('PACKAGECONFIG', 'pvr', ',pvr', '', d)}"
|
||||
|
||||
do_install:append () {
|
||||
# remove pvr custom pkgconfig
|
||||
rm -rf ${D}${datadir}/pkgconfig
|
||||
}
|
||||
|
||||
FILES:${PN}-dev += "${datadir}/mesa/wayland-drm.xml"
|
||||
FILES:mesa-vulkan-drivers += "${libdir}/libpvr_mesa_wsi.so"
|
||||
|
||||
RRECOMMENDS:mesa-megadriver:append:class-target = " ${@d.getVar('PREFERRED_PROVIDER_virtual/gpudriver')}"
|
||||
@@ -0,0 +1,54 @@
|
||||
# PowerVR Graphics require several patches that have not made their way
|
||||
# upstream yet. This allows us to build the shims we need without completely
|
||||
# clobbering mesa.
|
||||
|
||||
require recipes-graphics/mesa/mesa.inc
|
||||
|
||||
SUMMARY += " (with PowerVR support for TI platforms)"
|
||||
|
||||
LIC_FILES_CHKSUM = "file://docs/license.rst;md5=63779ec98d78d823a9dc533a0735ef10"
|
||||
|
||||
BRANCH = "powervr/${PV}"
|
||||
|
||||
SRC_URI = " \
|
||||
git://gitlab.freedesktop.org/StaticRocket/mesa.git;protocol=https;branch=${BRANCH} \
|
||||
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-drisw-fix-build-without-dri3.patch \
|
||||
file://0002-glxext-don-t-try-zink-if-not-enabled-in-mesa.patch \
|
||||
file://0001-gallivm-Call-StringMapIterator-from-llvm-scope.patch \
|
||||
file://0001-Update-lp_bld_misc.cpp-to-support-llvm-19.patch \
|
||||
"
|
||||
|
||||
S = "${WORKDIR}/git"
|
||||
|
||||
PACKAGECONFIG:append = " \
|
||||
${@bb.utils.contains('PREFERRED_PROVIDER_virtual/gpudriver', 'ti-img-rogue-driver', 'pvr', '', d)} \
|
||||
${@bb.utils.contains('PREFERRED_PROVIDER_virtual/gpudriver', 'ti-sgx-ddk-km', 'sgx', '', d)} \
|
||||
"
|
||||
|
||||
SRCREV = "82e6a9293c476267417c5b6b906b01fb73a34e38"
|
||||
PV = "24.0.1"
|
||||
|
||||
PVR_DISPLAY_CONTROLLER_ALIAS ??= "tidss"
|
||||
PACKAGECONFIG[pvr] = "-Dgallium-pvr-alias=${PVR_DISPLAY_CONTROLLER_ALIAS},"
|
||||
PACKAGECONFIG[sgx] = "-Dgallium-sgx-alias=${PVR_DISPLAY_CONTROLLER_ALIAS},"
|
||||
|
||||
|
||||
PACKAGE_ARCH = "${MACHINE_ARCH}"
|
||||
|
||||
GALLIUMDRIVERS:append = "${@bb.utils.contains('PACKAGECONFIG', 'pvr', ',pvr', '', d)}"
|
||||
GALLIUMDRIVERS:append = "${@bb.utils.contains('PACKAGECONFIG', 'sgx', ',sgx', '', d)}"
|
||||
|
||||
VULKAN_DRIVERS:append = "${@bb.utils.contains('PACKAGECONFIG', 'pvr', ',pvr', '', d)}"
|
||||
|
||||
do_install:append () {
|
||||
# remove pvr custom pkgconfig
|
||||
rm -rf ${D}${datadir}/pkgconfig
|
||||
}
|
||||
|
||||
FILES:${PN}-dev += "${datadir}/mesa/wayland-drm.xml"
|
||||
FILES:mesa-vulkan-drivers += "${libdir}/libpvr_mesa_wsi.so"
|
||||
|
||||
RRECOMMENDS:mesa-megadriver:append:class-target = " ${@d.getVar('PREFERRED_PROVIDER_virtual/gpudriver')}"
|
||||
Reference in New Issue
Block a user