Subject: [PATCH] gnu: dyninst: Remove patch-bad-logic phase.

From: Nguyễn Gia Phong <[email-masked]>
Date: Thu, 26 Sep 2024 18:21:29 +0900

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: 254c8f2c8cbb ("gnu: dyninst: Update to 13.0.0.")
References: https://github.com/dyninst/dyninst/pull/1362
Change-Id: I021ec71416da90d11705ef04fba7c170558ef3c6
---
 gnu/packages/instrumentation.scm | 15 ---------------
 1 file changed, 15 deletions(-)

diff --git a/gnu/packages/instrumentation.scm b/gnu/packages/instrumentation.scm
index 1b99399913ef..86436130c9e1 100644
--- a/gnu/packages/instrumentation.scm
+++ b/gnu/packages/instrumentation.scm
@@ -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

base-commit: f6715a4715eaed485300dffffa1b5e182ded3cea
-- 
2.46.0