[packages/dyninst] - updated to 13.0.0 (new sonames); libsymLite disabled as mutually exclusive with libdyninstAPI now

qboosh qboosh at pld-linux.org
Wed Aug 13 21:12:13 CEST 2025


commit b616ea747ac08a2585c1b6c56ef8ef6adf45fc38
Author: Jakub Bogusz <qboosh at pld-linux.org>
Date:   Wed Aug 13 21:14:33 2025 +0200

    - updated to 13.0.0 (new sonames); libsymLite disabled as mutually exclusive with libdyninstAPI now

 dyninst-install.patch  | 15 +++++++++
 dyninst-libname.patch  | 16 ++++-----
 dyninst-tbb.patch      | 12 -------
 dyninst-x32.patch      | 11 -------
 dyninst-x86.patch      | 10 ++++++
 dyninst.spec           | 88 ++++++++++++++++++++++++--------------------------
 missing-includes.patch | 37 ---------------------
 7 files changed, 76 insertions(+), 113 deletions(-)
---
diff --git a/dyninst.spec b/dyninst.spec
index 4c70031..287215c 100644
--- a/dyninst.spec
+++ b/dyninst.spec
@@ -1,26 +1,26 @@
 Summary:	API for Run-time Code Generation
 Summary(pl.UTF-8):	API do generowania kodu w czasie działania
 Name:		dyninst
-Version:	12.3.0
-Release:	5
+Version:	13.0.0
+Release:	1
 License:	LGPL v2.1+
 Group:		Libraries
 #Source0Download: https://github.com/dyninst/dyninst/releases
 Source0:	https://github.com/dyninst/dyninst/archive/v%{version}/%{name}-%{version}.tar.gz
-# Source0-md5:	c3a6fc1fc59bb26472f918d4cb797f11
+# Source0-md5:	e594b64007d63f641cda3eef97e94b50
 Patch0:		%{name}-libname.patch
 Patch1:		%{name}-x32.patch
-Patch2:		%{name}-tbb.patch
-Patch3:		missing-includes.patch
+Patch2:		%{name}-x86.patch
+Patch3:		%{name}-install.patch
 URL:		https://dyninst.org/dyninst
 # libiberty
 BuildRequires:	binutils-devel
-BuildRequires:	boost-devel >= 1.70.0
-BuildRequires:	cmake >= 3.4.0
+BuildRequires:	boost-devel >= 1.71.0
+BuildRequires:	cmake >= 3.14.0
 BuildRequires:	elfutils-devel >= 0.186
 BuildRequires:	flex
 BuildRequires:	libgomp-devel
-BuildRequires:	libstdc++-devel >= 6:4.7
+BuildRequires:	libstdc++-devel >= 6:6.0
 BuildRequires:	rpmbuild(macros) >= 1.605
 BuildRequires:	sed >= 4.0
 BuildRequires:	tbb-devel >= 2021.4
@@ -30,7 +30,8 @@ Obsoletes:	dyninst-doc < 12.2
 ExclusiveArch:	%{ix86} %{x8664} x32 aarch64 ppc ppc64 aarch64
 BuildRoot:	%{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
-%define		skip_post_check_so	 libparseAPI\.so.*
+%define		abiver			13.0
+%define		skip_post_check_so	libparseAPI\.so.*
 
 %description
 Dyninst is an Application Program Interface (API) to permit the
@@ -57,7 +58,9 @@ Summary:	Header files for dyninst libraries
 Summary(pl.UTF-8):	Pliki nagłówkowe bibliotek dyninst
 Group:		Development/Libraries
 Requires:	%{name} = %{version}-%{release}
-Requires:	libstdc++-devel >= 6:4.7
+Requires:	boost-devel >= 1.71.0
+Requires:	elfutils-devel >= 0.186
+Requires:	libstdc++-devel >= 6:6.0
 Requires:	tbb-devel >= 2021.4
 
 %description devel
@@ -87,15 +90,13 @@ Statyczne biblioteki dyninst.
 
 %build
 export CXXFLAGS="%{rpmcxxflags} -DTBB_DEFINE_STD_HASH_SPECIALIZATIONS"
-install -d build
-cd build
-%cmake .. \
-	-DINSTALL_CMAKE_DIR:PATH=%{_libdir}/cmake/Dyninst \
-	-DINSTALL_DOC_DIR:PATH=%{_docdir}/dyninst \
-	-DINSTALL_INCLUDE_DIR:PATH=%{_includedir}/dyninst \
-	-DINSTALL_LIB_DIR:PATH=%{_libdir} \
+%cmake -B build \
+	-DCMAKE_INSTALL_INCLUDEDIR:PATH=include/dyninst \
+	-DENABLE_DEBUGINFOD=ON
 
-%{__make}
+# -DLIGHTWEIGHT_SYMTAB enabled libsymLite and disables libdyninstAPI
+
+%{__make} -C build
 
 %install
 rm -rf $RPM_BUILD_ROOT
@@ -114,47 +115,44 @@ rm -rf $RPM_BUILD_ROOT
 %doc COPYRIGHT CHANGELOG.md README.md
 %attr(755,root,root) %{_bindir}/parseThat
 %attr(755,root,root) %{_libdir}/libdynC_API.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libdynC_API.so.12.3
+%ghost %{_libdir}/libdynC_API.so.%{abiver}
 %attr(755,root,root) %{_libdir}/libdynDwarf.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libdynDwarf.so.12.3
+%ghost %{_libdir}/libdynDwarf.so.%{abiver}
 %attr(755,root,root) %{_libdir}/libdynElf.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libdynElf.so.12.3
+%ghost %{_libdir}/libdynElf.so.%{abiver}
 %attr(755,root,root) %{_libdir}/libdyncommon.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libdyncommon.so.12.3
+%ghost %{_libdir}/libdyncommon.so.%{abiver}
 %attr(755,root,root) %{_libdir}/libdyninstAPI.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libdyninstAPI.so.12.3
+%ghost %{_libdir}/libdyninstAPI.so.%{abiver}
 %attr(755,root,root) %{_libdir}/libdyninstAPI_RT.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libdyninstAPI_RT.so.12.3
+%ghost %{_libdir}/libdyninstAPI_RT.so.%{abiver}
 %attr(755,root,root) %{_libdir}/libinstructionAPI.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libinstructionAPI.so.12.3
+%ghost %{_libdir}/libinstructionAPI.so.%{abiver}
 %attr(755,root,root) %{_libdir}/libparseAPI.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libparseAPI.so.12.3
+%ghost %{_libdir}/libparseAPI.so.%{abiver}
 %attr(755,root,root) %{_libdir}/libpatchAPI.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libpatchAPI.so.12.3
+%ghost %{_libdir}/libpatchAPI.so.%{abiver}
 %attr(755,root,root) %{_libdir}/libpcontrol.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libpcontrol.so.12.3
+%ghost %{_libdir}/libpcontrol.so.%{abiver}
 %attr(755,root,root) %{_libdir}/libstackwalk.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libstackwalk.so.12.3
-%attr(755,root,root) %{_libdir}/libsymLite.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libsymLite.so.12.3
+%ghost %{_libdir}/libstackwalk.so.%{abiver}
 %attr(755,root,root) %{_libdir}/libsymtabAPI.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libsymtabAPI.so.12.3
+%ghost %{_libdir}/libsymtabAPI.so.%{abiver}
 
 %files devel
 %defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/libdynC_API.so
-%attr(755,root,root) %{_libdir}/libdynDwarf.so
-%attr(755,root,root) %{_libdir}/libdynElf.so
-%attr(755,root,root) %{_libdir}/libdyncommon.so
-%attr(755,root,root) %{_libdir}/libdyninstAPI.so
-%attr(755,root,root) %{_libdir}/libdyninstAPI_RT.so
-%attr(755,root,root) %{_libdir}/libinstructionAPI.so
-%attr(755,root,root) %{_libdir}/libparseAPI.so
-%attr(755,root,root) %{_libdir}/libpatchAPI.so
-%attr(755,root,root) %{_libdir}/libpcontrol.so
-%attr(755,root,root) %{_libdir}/libstackwalk.so
-%attr(755,root,root) %{_libdir}/libsymLite.so
-%attr(755,root,root) %{_libdir}/libsymtabAPI.so
+%{_libdir}/libdynC_API.so
+%{_libdir}/libdynDwarf.so
+%{_libdir}/libdynElf.so
+%{_libdir}/libdyncommon.so
+%{_libdir}/libdyninstAPI.so
+%{_libdir}/libdyninstAPI_RT.so
+%{_libdir}/libinstructionAPI.so
+%{_libdir}/libparseAPI.so
+%{_libdir}/libpatchAPI.so
+%{_libdir}/libpcontrol.so
+%{_libdir}/libstackwalk.so
+%{_libdir}/libsymtabAPI.so
 %{_includedir}/dyninst
 %{_libdir}/cmake/Dyninst
 
diff --git a/dyninst-install.patch b/dyninst-install.patch
new file mode 100644
index 0000000..45d24a9
--- /dev/null
+++ b/dyninst-install.patch
@@ -0,0 +1,15 @@
+--- dyninst-13.0.0/cmake/DyninstLibrarySettings.cmake.orig	2024-03-01 00:12:39.000000000 +0100
++++ dyninst-13.0.0/cmake/DyninstLibrarySettings.cmake	2025-08-13 19:33:43.940409757 +0200
+@@ -25,9 +25,9 @@ else()
+   set(CMAKE_VISIBILITY_INLINES_HIDDEN ON)
+ endif()
+ 
+-set(DYNINST_INSTALL_BINDIR "bin")
+-set(DYNINST_INSTALL_LIBDIR "lib")
+-set(DYNINST_INSTALL_INCLUDEDIR "include")
++set(DYNINST_INSTALL_BINDIR ${CMAKE_INSTALL_BINDIR})
++set(DYNINST_INSTALL_LIBDIR ${CMAKE_INSTALL_LIBDIR})
++set(DYNINST_INSTALL_INCLUDEDIR ${CMAKE_INSTALL_INCLUDEDIR})
+ set(DYNINST_INSTALL_CMAKEDIR "${DYNINST_INSTALL_LIBDIR}/cmake/Dyninst")
+ 
+ # -- Set up the RPATH ---
diff --git a/dyninst-libname.patch b/dyninst-libname.patch
index 19408c4..3cd1dcc 100644
--- a/dyninst-libname.patch
+++ b/dyninst-libname.patch
@@ -1,10 +1,10 @@
---- dyninst-12.2.0/common/CMakeLists.txt.orig	2022-08-22 21:01:05.719446769 +0200
-+++ dyninst-12.2.0/common/CMakeLists.txt	2022-08-23 05:32:43.279810477 +0200
-@@ -103,6 +103,7 @@ endif()
- add_definitions(-DCOMMON_LIB)
- 
- dyninst_library(common)
+--- dyninst-13.0.0/common/CMakeLists.txt.orig	2024-03-01 00:12:39.000000000 +0100
++++ dyninst-13.0.0/common/CMakeLists.txt	2025-08-12 19:40:59.318316405 +0200
+@@ -168,6 +168,7 @@ dyninst_library(
+   PUBLIC_DEPS Dyninst::TBB Dyninst::Boost
+   PRIVATE_DEPS Dyninst::LibIberty OpenMP::OpenMP_CXX Dyninst::Valgrind Threads::Threads
+ )
 +set_target_properties(common PROPERTIES OUTPUT_NAME dyncommon)
+ # cmake-format: on
  
- if(TARGET LibIberty)
-     add_dependencies(common LibIberty)
+ if(DYNINST_OS_Windows)
diff --git a/dyninst-tbb.patch b/dyninst-tbb.patch
deleted file mode 100644
index f32f2a6..0000000
--- a/dyninst-tbb.patch
+++ /dev/null
@@ -1,12 +0,0 @@
---- dyninst-12.2.0/cmake/Modules/FindTBB.cmake.orig	2022-08-23 05:33:29.156228610 +0200
-+++ dyninst-12.2.0/cmake/Modules/FindTBB.cmake	2022-08-23 05:37:07.615045117 +0200
-@@ -154,7 +154,8 @@ find_path(
- if(TBB_INCLUDE_DIRS)
-     # Starting in 2020.1.1, tbb_stddef.h is replaced by version.h
-     set(_version_files "${TBB_INCLUDE_DIRS}/tbb/tbb_stddef.h"
--                       "${TBB_INCLUDE_DIRS}/tbb/version.h")
-+                       "${TBB_INCLUDE_DIRS}/tbb/version.h"
-+                       "${TBB_INCLUDE_DIRS}/oneapi/tbb/version.h")
-     foreach(f IN ITEMS ${_version_files})
-         if(EXISTS ${f})
-             set(_version_file ${f})
diff --git a/dyninst-x32.patch b/dyninst-x32.patch
index 9f740c6..3c0a873 100644
--- a/dyninst-x32.patch
+++ b/dyninst-x32.patch
@@ -9,14 +9,3 @@
    __asm__("mov %%rbp, %0\n"
  	  : "=r"(frame_pointer));
  #elif defined(os_linux) || defined(os_freebsd)
---- dyninst-12.3.0/scripts/sysname~	2023-02-22 22:39:56.000000000 +0100
-+++ dyninst-12.3.0/scripts/sysname	2024-12-18 23:38:23.746358396 +0100
-@@ -344,6 +344,8 @@
- 	  echo "${UNAME_MACHINE}-unknown-linuxcoff" ; exit 0
- 	elif echo $ld_help_string | grep >/dev/null 2>&1 "supported emulations: elf64_ia64"; then
- 	  echo "${UNAME_MACHINE}-unknown-linux" ; exit 0
-+	elif echo $ld_help_string | grep >/dev/null 2>&1 "supported emulations: elf32_x86_64"; then
-+	  echo "${UNAME_MACHINE}-unknown-linux" ; exit 0
- 	elif echo $ld_help_string | grep >/dev/null 2>&1 "supported emulations: elf_x86_64"; then
- 	  echo "${UNAME_MACHINE}-unknown-linux" ; exit 0
- 	elif test "${UNAME_MACHINE}" = "alpha" ; then
diff --git a/dyninst-x86.patch b/dyninst-x86.patch
new file mode 100644
index 0000000..9d69748
--- /dev/null
+++ b/dyninst-x86.patch
@@ -0,0 +1,10 @@
+--- dyninst-13.0.0/cmake/DyninstPlatform.cmake.orig	2024-03-01 00:12:39.000000000 +0100
++++ dyninst-13.0.0/cmake/DyninstPlatform.cmake	2025-08-12 20:46:53.688030762 +0200
+@@ -10,6 +10,7 @@ endif()
+ 
+ # Equivalent to CMAKE_HOST_SYSTEM_PROCESSOR and `uname -m` on Unixes
+ cmake_host_system_information(RESULT _host_arch QUERY OS_PLATFORM)
++string(REGEX REPLACE "i[456]86" "i386" _host_arch ${_host_arch})
+ 
+ set(_known_arches "x86_64" "ppc64le" "aarch64" "i386" "amd64")
+ if(NOT ${_host_arch} IN_LIST _known_arches)
diff --git a/missing-includes.patch b/missing-includes.patch
deleted file mode 100644
index d03f794..0000000
--- a/missing-includes.patch
+++ /dev/null
@@ -1,37 +0,0 @@
-diff -ur dyninst-12.2.1.orig/instructionAPI/src/AMDGPU/cdna2/InstructionDecoder-amdgpu-cdna2.h dyninst-12.2.1/instructionAPI/src/AMDGPU/cdna2/InstructionDecoder-amdgpu-cdna2.h
---- dyninst-12.2.1.orig/instructionAPI/src/AMDGPU/cdna2/InstructionDecoder-amdgpu-cdna2.h	2022-11-21 20:46:38.000000000 +0100
-+++ dyninst-12.2.1/instructionAPI/src/AMDGPU/cdna2/InstructionDecoder-amdgpu-cdna2.h	2023-02-19 21:33:54.774376195 +0100
-@@ -33,6 +33,9 @@
- #include "Immediate.h"
- #include "dyn_regs.h"
- 
-+#include <array>
-+#include <string>
-+
- namespace Dyninst {
-     namespace InstructionAPI {
- 
-diff -ur dyninst-12.2.1.orig/instructionAPI/src/AMDGPU/vega/InstructionDecoder-amdgpu-vega.h dyninst-12.2.1/instructionAPI/src/AMDGPU/vega/InstructionDecoder-amdgpu-vega.h
---- dyninst-12.2.1.orig/instructionAPI/src/AMDGPU/vega/InstructionDecoder-amdgpu-vega.h	2022-11-21 20:46:38.000000000 +0100
-+++ dyninst-12.2.1/instructionAPI/src/AMDGPU/vega/InstructionDecoder-amdgpu-vega.h	2023-02-19 21:33:48.364566725 +0100
-@@ -33,6 +33,9 @@
- #include "Immediate.h"
- #include "dyn_regs.h"
- 
-+#include <array>
-+#include <string>
-+
- namespace Dyninst {
-     namespace InstructionAPI {
- 
---- dyninst-12.3.0.orig/instructionAPI/src/InstructionDecoder-aarch64.h	2022-11-21 20:46:38.000000000 +0100
-+++ dyninst-12.3.0/instructionAPI/src/InstructionDecoder-aarch64.h	2023-02-19 21:33:39.774822043 +0100
-@@ -33,6 +33,8 @@
- #include "Immediate.h"
- #include "dyn_regs.h"
- 
-+#include <string>
-+
- namespace Dyninst {
-     namespace InstructionAPI {
- 
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/packages/dyninst.git/commitdiff/b616ea747ac08a2585c1b6c56ef8ef6adf45fc38



More information about the pld-cvs-commit mailing list