Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package procdump for openSUSE:Factory 
checked in at 2026-09-14 16:26:55
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/procdump (Old)
 and      /work/SRC/openSUSE:Factory/.procdump.new.1265 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "procdump"

Mon Sep 14 16:26:55 2026 rev:7 rq:1377881 version:3.5.3

Changes:
--------
--- /work/SRC/openSUSE:Factory/procdump/procdump.changes        2022-12-06 
14:23:51.969877874 +0100
+++ /work/SRC/openSUSE:Factory/.procdump.new.1265/procdump.changes      
2026-09-14 16:26:57.484075346 +0200
@@ -1,0 +2,19 @@
+Sun Sep 13 12:05:31 UTC 2026 - Martin Pluskal <[email protected]>
+
+- Update to version 3.5.3:
+  * Upstream rewrote ProcDump from C++ in Rust; the CLI contract is
+    unchanged (covered by upstream legacy CLI compatibility tests).
+  * Memory leak tracking and reporting (-restrack), multiple signals
+    (-sig), dump-contents filter (-mc), eBPF-based tracing, custom
+    core dumper (corex), .NET counter integration, manual trigger
+    support for restrack snapshots, ARM64 support.
+  * Build switched from plain make to cargo with vendored crates;
+    new BuildRequires on cargo, clang, gcc-c++ and libelf.
+  * ExclusiveArch x86_64 and aarch64 now, the eBPF backend builds
+    only there; no %check (suite needs sudo and a .NET SDK).
+  * License is now BSD-2-Clause AND MIT AND BSD-3-Clause for the
+    bundled blazesym and libbpf crates.
+  * Add procdump-ebpf-no-builtin-memset.patch so current clang keeps
+    the eBPF zeroing loop instead of an extern memset without BTF.
+
+-------------------------------------------------------------------

Old:
----
  procdump-1.3.tar.gz

New:
----
  _service
  procdump-3.5.3.tar.zst
  procdump-ebpf-no-builtin-memset.patch
  vendor.tar.zst

----------(New B)----------
  New:    bundled blazesym and libbpf crates.
  * Add procdump-ebpf-no-builtin-memset.patch so current clang keeps
    the eBPF zeroing loop instead of an extern memset without BTF.
----------(New E)----------

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ procdump.spec ++++++
--- /var/tmp/diff_new_pack.u5uMHJ/_old  2026-09-14 16:26:59.652166052 +0200
+++ /var/tmp/diff_new_pack.u5uMHJ/_new  2026-09-14 16:26:59.657166261 +0200
@@ -1,7 +1,7 @@
 #
 # spec file for package procdump
 #
-# Copyright (c) 2022 SUSE LLC
+# Copyright (c) 2026 SUSE LLC and contributors
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -17,32 +17,47 @@
 
 
 Name:           procdump
-Version:        1.3
+Version:        3.5.3
 Release:        0
 Summary:        Process coredump emitter using performance triggers
-License:        MIT
+License:        BSD-2-Clause AND MIT AND BSD-3-Clause
 URL:            https://github.com/Microsoft/ProcDump-for-Linux
-Source0:        
https://github.com/Microsoft/ProcDump-for-Linux/archive/%{version}.tar.gz#/%{name}-%{version}.tar.gz
+Source0:        %{name}-%{version}.tar.zst
+Source1:        vendor.tar.zst
+# Newer clang lowers the eBPF zeroing loop into an extern memset()
+# without BTF info, failing the skeleton link; fixed upstream-bound.
+Patch0:         %{name}-ebpf-no-builtin-memset.patch
+BuildRequires:  cargo
+BuildRequires:  cargo-packaging
+BuildRequires:  clang
+BuildRequires:  gcc-c++
+BuildRequires:  pkgconfig
+BuildRequires:  pkgconfig(libelf)
 BuildRequires:  pkgconfig(zlib)
+Requires:       gdb
+# eBPF/restrack backend builds only for x86_64 and aarch64
+ExclusiveArch:  %{rust_tier1_arches}
 
 %description
 A Linux version of the eponymous ProcDump tool from the Windows Sysinternals
 suite. It can create core dumps of processes based on performance triggers.
 
 %prep
-%autosetup -p1 -n ProcDump-for-Linux-%{version}
+%autosetup -p1 -a1 -n ProcDump-for-Linux-%{version}
 
 %build
-export CFLAGS="%{optflags}"
-# build is not always parallel-safe
-make
+%{cargo_build} --bin procdump
+
+# No %%check: the integration suite needs passwordless sudo and a .NET
+# SDK/runtime, neither available in the build root (see BUILD.md).
 
 %install
-%make_install
+%cargo_install -p crates/procdump-cli
+install -D -m 0644 procdump.1 %{buildroot}%{_mandir}/man1/procdump.1
 
 %files
 %license LICENSE
 %doc README.md
-%{_bindir}/%{name}
-%{_mandir}/man1/%{name}.1%{ext_man}
+%{_bindir}/procdump
+%{_mandir}/man1/procdump.1%{?ext_man}
 

++++++ _service ++++++
<services>
  <service name="obs_scm" mode="manual">
    <param 
name="url">https://github.com/Microsoft/ProcDump-for-Linux.git</param>
    <param name="scm">git</param>
    <param name="revision">refs/tags/3.5.3</param>
    <param name="versionformat">@PARENT_TAG@</param>
    <param name="versionrewrite-pattern">v(.*)</param>
    <param name="changesgenerate">disable</param>
  </service>
  <service name="tar" mode="manual"/>
  <service name="recompress" mode="manual">
    <param name="file">*.tar</param>
    <param name="compression">zst</param>
  </service>
  <service name="set_version" mode="manual"/>
  <service name="cargo_vendor" mode="manual">
    <param name="srcdir">ProcDump-for-Linux</param>
    <param name="compression">zst</param>
    <param name="update">true</param>
  </service>
</services>

++++++ procdump-ebpf-no-builtin-memset.patch ++++++
--- a/crates/procdump/build.rs
+++ b/crates/procdump/build.rs
@@ -104,6 +104,11 @@
             format!("-I{}", ebpf.display()),
             target_arch.into(),
             format!("-I{multiarch_include}"),
+            // Newer clang lowers the byte-wise zeroing loop in
+            // procdump_ebpf.bpf.c into an extern memset() call, which
+            // carries no BTF info and fails the skeleton link with
+            // "failed to find BTF info for global/extern symbol 'memset'".
+            "-fno-builtin-memset".into(),
             "-D__KERNEL__".into(),
             "-D__BPF_TRACING__".into(),
             "-D__linux__".into(),

Reply via email to