directfb: fix build with GCC 16

GCC 16 requires std::set comparators to be callable on a const
comparator object. TaskManager::operator() is used as a comparator
but is not const-qualified, causing the build to fail.

Add the missing const qualifier to restore compatibility with GCC 16.

Link: https://github.com/deniskropp/DirectFB/issues/29

Signed-off-by: Hemanth Kumar M D <Hemanth.KumarMD@windriver.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
This commit is contained in:
Hemanth Kumar M D
2026-06-11 05:32:22 -07:00
committed by Khem Raj
parent bb0f82ea0c
commit b247a4d44b
2 changed files with 28 additions and 1 deletions
@@ -26,7 +26,8 @@ SRC_URI = "http://downloads.yoctoproject.org/mirror/sources/DirectFB-${PV}.tar.g
file://0001-include-libgen.h-for-basename.patch \
file://0001-inputdrivers-Correct-the-signature-of-bind-call-on-m.patch \
file://0001-libdirect-remove-use-of-keyword-register.patch \
"
file://0001-TaskManager-make-comparator-const.patch \
"
S = "${UNPACKDIR}/DirectFB-${PV}"
@@ -0,0 +1,26 @@
TaskManager: make comparator const for GCC 16
Fixes build failure with GCC 16 due to stricter libstdc++ requirements
for std::set comparator (must be const-callable).
Upstream-Status: Submitted [https://github.com/deniskropp/DirectFB/issues/29]
Signed-off-by: Hemanth Kumar M D <Hemanth.KumarMD@windriver.com>
---
src/core/TaskManager.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/core/TaskManager.h b/src/core/TaskManager.h
index 3f2174c..6ac29ee 100644
--- a/src/core/TaskManager.h
+++ b/src/core/TaskManager.h
@@ -121,7 +121,7 @@ public:
static void dumpTasks();
- bool operator()( Task *t1, Task *t2 )
+ bool operator()( Task *t1, Task *t2 ) const
{
return t1->ts_emit < t2->ts_emit;
}