summaryrefslogtreecommitdiff
path: root/gnu/packages/patches/dyninst-fix-glibc-compatibility.patch
diff options
context:
space:
mode:
authorOlivier Dion <odion@efficios.com>2023-06-15 12:32:27 -0400
committerLudovic Courtès <ludo@gnu.org>2023-06-24 16:31:43 +0200
commitbf2b18250cbee10d5a73fa7175054f2cafa40212 (patch)
tree1350d0b23c6c59b914155365002fc8b184ce6a16 /gnu/packages/patches/dyninst-fix-glibc-compatibility.patch
parente8975697782c0ea10ce278a3304032b4cc60f81c (diff)
gnu: dyninst: Fix runtime error with new glibc.
* gnu/packages/patches/dyninst-fix-glibc-compatibility.patch: New file. * gnu/packages/instrumentation.scm (dyninst)[source]: Use it. * gnu/local.mk (dist_patch_DATA): Add it. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Diffstat (limited to 'gnu/packages/patches/dyninst-fix-glibc-compatibility.patch')
-rw-r--r--gnu/packages/patches/dyninst-fix-glibc-compatibility.patch33
1 files changed, 33 insertions, 0 deletions
diff --git a/gnu/packages/patches/dyninst-fix-glibc-compatibility.patch b/gnu/packages/patches/dyninst-fix-glibc-compatibility.patch
new file mode 100644
index 0000000000..cd018da6cc
--- /dev/null
+++ b/gnu/packages/patches/dyninst-fix-glibc-compatibility.patch
@@ -0,0 +1,33 @@
+From f233c46ac7b415104d04e4bb74bd7a0fcf24a333 Mon Sep 17 00:00:00 2001
+From: Olivier Dion <odion@efficios.com>
+Date: Thu, 15 Jun 2023 12:02:08 -0400
+Subject: [PATCH] Fix compatibility with glibc 2.35
+
+Something has change with the visibility of the _r_debug structure in
+glibc 2.35. See this issue
+<https://github.com/dyninst/dyninst/issues/1282>.
+
+This patch is essentially the upstream fix
+<https://github.com/dyninst/dyninst/commit/273803a4c643ed3506f9a69c6ec71d5ab337489c>
+backported.
+
+Signed-off-by: Olivier Dion <odion@efficios.com>
+---
+ dyninstAPI_RT/src/RTlinux.c | 1 -
+ 1 file changed, 1 deletion(-)
+
+diff --git a/dyninstAPI_RT/src/RTlinux.c b/dyninstAPI_RT/src/RTlinux.c
+index fc231d0a4..2f17ff677 100644
+--- a/dyninstAPI_RT/src/RTlinux.c
++++ b/dyninstAPI_RT/src/RTlinux.c
+@@ -406,7 +406,6 @@ void dyninstTrapHandler(int sig, siginfo_t *sg, ucontext_t *context)
+ #if defined(cap_binary_rewriter)
+
+ extern struct r_debug _r_debug;
+-DLLEXPORT struct r_debug _r_debug __attribute__ ((weak));
+
+ /* Verify that the r_debug variable is visible */
+ void r_debugCheck() { assert(_r_debug.r_map); }
+--
+2.40.1
+