Subject: [PATCH 0/3] gnu: dyninst: Update to 13.0.0.
From: Nguyễn Gia Phong <[email-masked]>
To: [email-masked]
Cc: Nguyễn Gia Phong <[email-masked]>
Date: Thu, 12 Sep 2024 11:25:39 +0900
List-Id: <debbugs-submit.debbugs.gnu.org>

The currently included Dyninst 10.2.1 recently failed to build
due to stricter include lookup (dataflowAPI/src/AbslocInterface.C
missing std::deque).

Since no package depends on Dyninst, let's just upgrade it
to the latest version 13.0.0 instead of adding more patches.
This new version depends on GCC internal library iberty
with an additional header demangle.h.

I referenced the Debian package and it does seem to include this header:
https://packages.debian.org/sid/amd64/libiberty-dev/filelist
I wonder if we should also put iberty headers under a libiberty/
namespace though.

(Speaking of header namespacing, I am not happy with how Dyninst lay out
generically named headers, e.g. Command.h, Event.h, Graph.h, etc.
directly under include/.  I suppose it is not particularly an issue
for Guix thanks to declarative build.)

Dyninst is built with PIC, so the same must be done
for the statically linked libiberty.  Debian is doing the same
so I suppose it should not affect other dependees.

Nguyễn Gia Phong (3):
  gnu: make-libiberty: Install the header demangle.h.
  gnu: make-libiberty: Build with -fPIC.
  gnu: dyninst: Update to 13.0.0.

 gnu/local.mk                                  |  1 -
 gnu/packages/gcc.scm                          |  3 ++
 gnu/packages/instrumentation.scm              | 17 +++++-----
 .../dyninst-fix-glibc-compatibility.patch     | 33 -------------------
 4 files changed, 11 insertions(+), 43 deletions(-)
 delete mode 100644 gnu/packages/patches/dyninst-fix-glibc-compatibility.patch

base-commit: b6d5a7f5836739dab884b49a64ca354794dd845f
-- 
2.46.0