mirror of
https://git.in.rschanz.org/ryan77627/guix.git
synced 2024-12-24 21:38:07 -05:00
gnu: dyninst: Update to 13.0.0.
* gnu/packages/instrumentations.scm (dyninst): Update to 13.0.0. [propagated-inputs]: Add libiberty. * gnu/packages/patches/dyninst-fix-glibc-compatibility.patch: Remove file. Change-Id: I6e5dfa9d698de4d45614c535b5dd5cdaad239425 Signed-off-by: Ludovic Courtès <ludo@gnu.org>
This commit is contained in:
parent
fee669e2c2
commit
254c8f2c8c
3 changed files with 8 additions and 43 deletions
|
@ -1160,7 +1160,6 @@ dist_patch_DATA = \
|
||||||
%D%/packages/patches/dvd+rw-tools-add-include.patch \
|
%D%/packages/patches/dvd+rw-tools-add-include.patch \
|
||||||
%D%/packages/patches/dwarves-threading-reproducibility.patch \
|
%D%/packages/patches/dwarves-threading-reproducibility.patch \
|
||||||
%D%/packages/patches/dynaconf-unvendor-deps.patch \
|
%D%/packages/patches/dynaconf-unvendor-deps.patch \
|
||||||
%D%/packages/patches/dyninst-fix-glibc-compatibility.patch \
|
|
||||||
%D%/packages/patches/efivar-211.patch \
|
%D%/packages/patches/efivar-211.patch \
|
||||||
%D%/packages/patches/eigen-fix-strict-aliasing-bug.patch \
|
%D%/packages/patches/eigen-fix-strict-aliasing-bug.patch \
|
||||||
%D%/packages/patches/einstein-build.patch \
|
%D%/packages/patches/einstein-build.patch \
|
||||||
|
|
|
@ -2,6 +2,7 @@
|
||||||
;;; Copyright © 2021, 2022 Olivier Dion <olivier.dion@polymtl.ca>
|
;;; Copyright © 2021, 2022 Olivier Dion <olivier.dion@polymtl.ca>
|
||||||
;;; Copyright © 2023 Andy Tai <atai@atai.org>
|
;;; Copyright © 2023 Andy Tai <atai@atai.org>
|
||||||
;;; Copyright © 2023 Marius Bakke <marius@gnu.org>
|
;;; Copyright © 2023 Marius Bakke <marius@gnu.org>
|
||||||
|
;;; Copyright © 2024 Nguyễn Gia Phong <mcsinyx@disroot.org>
|
||||||
;;;
|
;;;
|
||||||
;;; This file is part of GNU Guix.
|
;;; This file is part of GNU Guix.
|
||||||
;;;
|
;;;
|
||||||
|
@ -35,6 +36,7 @@ (define-module (gnu packages instrumentation)
|
||||||
#:use-module (gnu packages file)
|
#:use-module (gnu packages file)
|
||||||
#:use-module (gnu packages flex)
|
#:use-module (gnu packages flex)
|
||||||
#:use-module (gnu packages gawk)
|
#:use-module (gnu packages gawk)
|
||||||
|
#:use-module (gnu packages gcc)
|
||||||
#:use-module (gnu packages glib)
|
#:use-module (gnu packages glib)
|
||||||
#:use-module (gnu packages guile)
|
#:use-module (gnu packages guile)
|
||||||
#:use-module (gnu packages haskell-xyz)
|
#:use-module (gnu packages haskell-xyz)
|
||||||
|
@ -202,9 +204,7 @@ (define-public barectf
|
||||||
(define-public dyninst
|
(define-public dyninst
|
||||||
(package
|
(package
|
||||||
(name "dyninst")
|
(name "dyninst")
|
||||||
;; Newer versions are not promoted on main home page.
|
(version "13.0.0")
|
||||||
;; Upgrade to 12.0.1 if anyone require a newer version.
|
|
||||||
(version "10.2.1")
|
|
||||||
(source (origin
|
(source (origin
|
||||||
(method git-fetch)
|
(method git-fetch)
|
||||||
(uri (git-reference
|
(uri (git-reference
|
||||||
|
@ -212,9 +212,8 @@ (define-public dyninst
|
||||||
(commit (string-append "v" version))))
|
(commit (string-append "v" version))))
|
||||||
(file-name (git-file-name name version))
|
(file-name (git-file-name name version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32 "1m04pg824rqx647wvk9xl33ri8i6mm0vmrz9924li25dxbr4zqd5"))
|
(base32
|
||||||
(patches
|
"0vkd9z6zwvn13ynfys2fg5yanv7n9pl7x5z8m1lcnmnb0kwgi035"))))
|
||||||
(search-patches "dyninst-fix-glibc-compatibility.patch"))))
|
|
||||||
|
|
||||||
(build-system cmake-build-system)
|
(build-system cmake-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
|
@ -238,10 +237,10 @@ (define-public dyninst
|
||||||
(add-after 'unpack 'patch-bad-logic
|
(add-after 'unpack 'patch-bad-logic
|
||||||
(lambda _
|
(lambda _
|
||||||
(substitute* "dyninstAPI/src/linux.C"
|
(substitute* "dyninstAPI/src/linux.C"
|
||||||
(("if\\(\\!fgets\\(buffer, 512, ldconfig\\)\\)")
|
(("if\\(fgets\\(buffer, buffer_size, ldconfig\\)\\)")
|
||||||
"fgets(buffer, 512, ldconfig); if (false)")))))))
|
"fgets(buffer, buffer_size, ldconfig); if (true)")))))))
|
||||||
(propagated-inputs
|
(propagated-inputs
|
||||||
(list elfutils boost tbb-2020))
|
(list elfutils libiberty boost tbb))
|
||||||
(home-page "https://dyninst.org/")
|
(home-page "https://dyninst.org/")
|
||||||
(synopsis "Dynamic instrumentation")
|
(synopsis "Dynamic instrumentation")
|
||||||
(description "Dyninst is a collection of libraries for instrumenting,
|
(description "Dyninst is a collection of libraries for instrumenting,
|
||||||
|
|
|
@ -1,33 +0,0 @@
|
||||||
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
|
|
||||||
|
|
Loading…
Reference in a new issue