mirror of
https://git.in.rschanz.org/ryan77627/guix.git
synced 2024-12-24 05:18:07 -05:00
gnu: dyninst: Remove patch-bad-logic phase.
The short circuit logic (return failure to resolve library path
if ldconfig not found) is no longer present on Dyninst 13.
* gnu/packages/instrumentation.scm (dyninst):
Remove patch-bad-logic phase.
Fixes: 254c8f2c8c
("gnu: dyninst: Update to 13.0.0.")
References: https://github.com/dyninst/dyninst/pull/1362
Change-Id: I021ec71416da90d11705ef04fba7c170558ef3c6
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
This commit is contained in:
parent
c51d7fd569
commit
f0a1915564
1 changed files with 0 additions and 15 deletions
|
@ -222,23 +222,8 @@ (define-public dyninst
|
|||
;; source.
|
||||
#:configure-flags
|
||||
(list "-DSTERILE_BUILD=ON")
|
||||
;; NOTE: dyninst needs to search for shared libraries that are linked
|
||||
;; against the instrumented binary in order to rebuild the entire
|
||||
;; program. For this purpose, one can use LD_LIBRARY_PATH or
|
||||
;; DYNISNT_REWRITER_PATHS environment variables to add paths for dyinst
|
||||
;; to search. However, dyninst also tries to be smart by executing
|
||||
;; ldconfig, which is not portable. If ldconfig is not available on
|
||||
;; the system, dyinst wrongly assumes that the shared libraries can not
|
||||
;; be found, even though it can. This bad logic is still there with
|
||||
;; newer versions of dyinst. Thus, this substitution makes the bad
|
||||
;; code path unreachable.
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'patch-bad-logic
|
||||
(lambda _
|
||||
(substitute* "dyninstAPI/src/linux.C"
|
||||
(("if\\(fgets\\(buffer, buffer_size, ldconfig\\)\\)")
|
||||
"fgets(buffer, buffer_size, ldconfig); if (true)"))))
|
||||
(add-after 'unpack 'adjust-supported-platform-name
|
||||
(lambda _
|
||||
;; That file checks for "i386" but
|
||||
|
|
Loading…
Reference in a new issue