1
0
mirror of https://git.yoctoproject.org/poky synced 2026-05-08 05:09:24 +00:00

binutils: backport patch to fix build with glibc-2.43 on host

Fixes:
../../../gprofng/libcollector/linetrace.c: In function ‘__collector_ext_line_install’:
../../../gprofng/libcollector/linetrace.c:219:45: error: expected identifier before ‘_Generic’
  219 |   if (java_follow_env != NULL && CALL_UTIL (strstr)(java_follow_env, COLLECTOR_JVMTI_OPTION))
      |                                             ^~~~~~
../../../gprofng/libcollector/linetrace.c:219:34: note: in expansion of macro ‘CALL_UTIL’
  219 |   if (java_follow_env != NULL && CALL_UTIL (strstr)(java_follow_env, COLLECTOR_JVMTI_OPTION))
      |                                  ^~~~~~~~~

(From OE-Core rev: 6421f085fbb75df1cd122f1c327352b9434f8307)

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-21 07:42:40 +02:00
committed by Paul Barker
parent cc361cd49b
commit 9d4a35f6d2
2 changed files with 32 additions and 0 deletions
@@ -45,6 +45,7 @@ SRC_URI = "\
file://0019-Fix-32097-Warnings-when-building-gprofng-with-Clang.patch \
file://0020-gprofng-fix-std-gnu23-compatibility-wrt-unprototyped.patch \
file://0021-gprofng-fix-build-with-std-gnu23.patch \
file://0022-gprofng-protect-against-standard-library-macros.patch \
file://0018-CVE-2025-0840.patch \
file://CVE-2025-1176.patch \
file://CVE-2025-1178.patch \
@@ -0,0 +1,31 @@
From 5f66aee7f4bec7a2d8378034116f5e5c3dc50f41 Mon Sep 17 00:00:00 2001
From: Andreas Schwab <schwab@suse.de>
Date: Sat, 22 Nov 2025 11:29:43 +0100
Subject: [PATCH] gprofng: protect against standard library macros
The CALL_UTIL macro can expand to an unparsable expression of the argument
is a macro, like with the new const-preserving standard library macros in
C23.
* gprofng/src/collector_module.h (CALL_UTIL): Add parens to not
expand its argument if it is a function-like macro.
Upstream-Status: Backport [2.46 5f66aee7f4bec7a2d8378034116f5e5c3dc50f41]
Signed-off-by: Martin Jansa <martin.jansa@gmail.com>
---
gprofng/src/collector_module.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/gprofng/src/collector_module.h b/gprofng/src/collector_module.h
index b64d69c45ab..859a6dd1f7d 100644
--- a/gprofng/src/collector_module.h
+++ b/gprofng/src/collector_module.h
@@ -119,7 +119,7 @@ typedef struct CollectorUtilFuncs
extern CollectorUtilFuncs __collector_util_funcs;
extern int __collector_dlsym_guard;
-#define CALL_UTIL(x) __collector_util_funcs.x
+#define CALL_UTIL(x) (__collector_util_funcs.x)
/* The following constants define the meaning of the "void *arg"
* argument of getFrameInfo().