commit:     c4b2dcc656e8f642b5c6d0fcf3938a95101f9428
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Mon Mar 16 09:20:24 2026 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Mon Mar 16 09:20:24 2026 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c4b2dcc6

dev-debug/dtrace: drop 2.0.3-r2

Signed-off-by: Sam James <sam <AT> gentoo.org>

 dev-debug/dtrace/Manifest                          |   1 -
 dev-debug/dtrace/dtrace-2.0.3-r2.ebuild            | 236 ---------------------
 ...-BPF-library-functions-with-ffreestanding.patch |  34 ---
 3 files changed, 271 deletions(-)

diff --git a/dev-debug/dtrace/Manifest b/dev-debug/dtrace/Manifest
index a6465786219d..64df0fb933b9 100644
--- a/dev-debug/dtrace/Manifest
+++ b/dev-debug/dtrace/Manifest
@@ -1,3 +1,2 @@
-DIST dtrace-2.0.3.tar.gz 1482755 BLAKE2B 
8cbf4e0f3c500ae6b022692b3c2ba4a4eacca3feeab88e0712435863a4148217efb6d513a551510bf9e29ba9f8e543fccf5b246ed68c3a04d47259fc5a94f3f9
 SHA512 
74fe7cd73346a3b1a134128e1f612693739ffa1460fb0d9534cf1d31d70379a717a94ff11d23e1c4be55f3c23b95cc4f940b66a01abf7ac08ca2963049a66210
 DIST dtrace-2.0.4.tar.gz 1699279 BLAKE2B 
3fb610e2c233accbe36c372ab8e4f5012cdd314750dd64f7d411955038cdafeaeda038e63a06f6995f8cb89fd2df482f34fd5583f130f21f2b7a03747e33c778
 SHA512 
63623ce70d21dadf9e1de5d85e6d0a1a3043c0bd5f2255d32793209c1774e9be774699fdd70218a840f7060a1027388bf20d1d6c5e06b9e5671113c133ce390f
 DIST dtrace-2.0.5.tar.gz 1727649 BLAKE2B 
387f0de25f04ed884ffbf4184b2c5e42330ea575f62a2c9f23d1413f945906e8ec6ddccdd00755ce2f2c43f41928201782b46519cbafeb17f526bfa06c0e15ab
 SHA512 
131120602147b5cdbf7ac0c53a5c42547f80eeb5239f642bee4ea7083d991070514b838b850ded51b0bc8a31b64062c8102cd41517a6cd9bbc898afc20a87466

diff --git a/dev-debug/dtrace/dtrace-2.0.3-r2.ebuild 
b/dev-debug/dtrace/dtrace-2.0.3-r2.ebuild
deleted file mode 100644
index c04226e48754..000000000000
--- a/dev-debug/dtrace/dtrace-2.0.3-r2.ebuild
+++ /dev/null
@@ -1,236 +0,0 @@
-# Copyright 2024-2025 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-inherit edo flag-o-matic linux-info multilib systemd toolchain-funcs udev
-
-DESCRIPTION="Dynamic BPF-based system-wide tracing tool"
-HOMEPAGE="https://github.com/oracle/dtrace-utils 
https://wiki.gentoo.org/wiki/DTrace";
-
-if [[ ${PV} == 9999 ]]; then
-       EGIT_BRANCH="devel"
-       EGIT_REPO_URI="https://github.com/oracle/dtrace-utils";
-       inherit git-r3
-else
-       
SRC_URI="https://github.com/oracle/dtrace-utils/archive/refs/tags/${PV}.tar.gz 
-> ${P}.tar.gz"
-       S="${WORKDIR}"/dtrace-utils-${PV}
-
-       KEYWORDS="-* amd64 arm64"
-fi
-
-LICENSE="UPL-1.0"
-SLOT="0"
-IUSE="test-install valgrind"
-
-# TODO: can we make the wireshark dep conditional?
-DEPEND="
-       dev-libs/elfutils
-       dev-libs/libbpf
-       dev-libs/libpfm:=
-       net-analyzer/wireshark[dumpcap]
-       net-libs/libpcap
-       >=sys-fs/fuse-3.2.0:3=
-       >=sys-libs/binutils-libs-2.42:=
-       virtual/zlib:=
-"
-RDEPEND="
-       ${DEPEND}
-       !dev-debug/systemtap[dtrace-symlink(+)]
-       net-analyzer/wireshark
-       test-install? (
-               app-alternatives/bc
-               app-editors/vim-core
-               dev-build/make
-               dev-lang/perl
-               dev-util/perf
-               net-fs/nfs-utils
-               sys-apps/coreutils
-               sys-fs/xfsprogs
-               sys-process/time
-               virtual/jdk
-       )
-"
-BDEPEND="
-       dev-build/make
-       sys-apps/gawk
-       sys-devel/bison
-       >=sys-devel/bpf-toolchain-14.1.0
-       sys-devel/flex
-"
-DEPEND+=" valgrind? ( dev-debug/valgrind )"
-
-QA_PRESTRIPPED="
-       usr/.*/dtrace/testsuite/test/triggers/.*
-"
-QA_FLAGS_IGNORED="
-       usr/.*/dtrace/testsuite/test/triggers/.*
-"
-
-# TODO: report upstream (bug #938221) although it seems like it's
-# not relevant given it's a BPF object.
-QA_EXECSTACK="
-       usr/*/dtrace/bpf_dlib.*
-"
-
-PATCHES=(
-       
"${FILESDIR}"/0001-bpf-compile-BPF-library-functions-with-ffreestanding.patch
-)
-
-pkg_pretend() {
-       # TODO: optional kernel patches
-
-       # Basics for debugging information, BPF
-       local CONFIG_CHECK="~BPF ~DEBUG_INFO_BTF ~KALLSYMS_ALL"
-
-       CONFIG_CHECK+=" ~CUSE"
-
-       # Tracing
-       CONFIG_CHECK+=" ~TRACING"
-       CONFIG_CHECK+=" ~UPROBES ~UPROBE_EVENTS"
-       CONFIG_CHECK+=" ~FTRACE ~FTRACE_SYSCALLS ~DYNAMIC_FTRACE 
~FUNCTION_TRACER"
-       CONFIG_CHECK+=" ~FPROBE"
-       # DTrace can fallback to kprobes for fbt but people often want them off
-       # for security and newer kernels work fine with BPF for that, so
-       # let's omit it. kprobes are slower and scale poorly.
-
-       # https://gcc.gnu.org/PR84052
-       CONFIG_CHECK+=" !GCC_PLUGIN_RANDSTRUCT"
-
-       if use test-install ; then
-               # See test/modules
-               CONFIG_CHECK+=" ~EXT4_FS ~ISO9660_FS ~NFS_FS ~RDS ~TUN"
-       fi
-
-       check_extra_config
-}
-
-pkg_setup() {
-       eval unset ${!LC_*} LANG
-}
-
-src_configure() {
-       if tc-is-cross-compiler; then
-               die "DTrace does not yet support cross-compilation."
-       fi
-
-       tc-export CC
-
-       # lld does this by default, so fix that, although lld fails anyway...
-       # 'LIBDTRACE_1.0' to symbol 'dtrace_provider_modules' failed: symbol 
not defined
-       append-ldflags $(test-flags-CCLD -Wl,--undefined-version)
-       # mold and lld can't cope with some relocation types used, e.g.
-       #  'test-triggers--usdt-tst-forker-prov.o:(.SUNW_dof): unknown 
relocation: R_X86_64_GLOB_DAT'
-       tc-ld-force-bfd
-
-       # -fno-semantic-interposition seems to lead to a broken dtrace
-       # that can't actually obtain results from probes, even trivial examples
-       # just hang.
-       filter-flags -fno-semantic-interposition
-       # While it builds as of 2025-06-08, it's broken at runtime
-       # in the same way as -fno-semantic-interposition (hangs, no probes 
fire).
-       filter-lto
-
-       local confargs=(
-               # TODO: Maybe we should set the UNPRIV_UID to something? -3 is 
a bit... kludgy
-               --prefix="${EPREFIX}"/usr
-               --mandir="${EPREFIX}"/usr/share/man
-               --docdir="${EPREFIX}"/usr/share/doc/${PF}
-               --with-systemd
-               HAVE_LIBCTF=yes
-               HAVE_BPFV3=yes
-               HAVE_VALGRIND=$(usex valgrind)
-       )
-
-       edo ./configure "${confargs[@]}"
-}
-
-src_compile() {
-       local myemakeargs=(
-               verbose=1
-               $(usev !test-install TRIGGERS='')
-       )
-
-       if use amd64 ; then
-               ! has_multilib_profile && myemakeargs+=( NATIVE_BITNESS_ONLY=1 )
-       fi
-
-       # -j1: https://github.com/oracle/dtrace-utils/issues/82
-       emake -j1 "${myemakeargs[@]}"
-}
-
-src_test() {
-       # Needs root and is also very time-consuming
-       :;
-}
-
-src_install() {
-       emake DESTDIR="${D}" -j1 install $(usev test-install install-test)
-
-       # We want to strip neither the BPF libraries nor libdtrace.so itself
-       # as probes attach to some symbols that would get removed otherwise.
-       dostrip -x "/usr/$(get_libdir)"
-
-       # It's a binary (TODO: move it?)
-       docompress -x /usr/share/doc/${PF}/showUSDT
-
-       newinitd "${FILESDIR}"/dtprobed.init dtprobed
-}
-
-pkg_postinst() {
-       # We need a udev reload to pick up the CUSE device node rules.
-       udev_reload
-
-       if [[ -n ${REPLACING_VERSIONS} ]]; then
-               # TODO: Make this more intelligent wrt comparison
-               # One option for this is to detect when it's needed (DOF stash 
layout changes)
-               # and then e.g. sleep and restart for the user.
-               if systemd_is_booted ; then
-                       einfo "Restart the DTrace 'dtprobed' service after 
upgrades once all dtraces are stopped with:"
-                       einfo " systemctl try-restart dtprobed"
-               else
-                       einfo "Restart the DTrace 'dtprobed' service after 
upgrades once all dtraces are stopped with:"
-                       einfo " /etc/init.d/dtprobed restart"
-               fi
-       else
-               einfo "See https://wiki.gentoo.org/wiki/DTrace for getting 
started."
-
-               # We can't do magic for people with ROOT=.
-               if [[ -n ${ROOT} ]] ; then
-                       einfo "Enable and start the DTrace 'dtprobed' service 
for systemd with:"
-                       einfo " systemctl enable --now dtprobed"
-                       einfo
-                       einfo "Enable and start the DTrace 'dtprobed' service 
for OpenRC with:"
-                       einfo " rc-update add dtprobed"
-                       einfo " /etc/init.d/dtprobed start"
-                       return
-               fi
-
-               # For first installs, we enable the service and start it.
-               #
-               # This is unusual, but the behaviour without dtprobed running
-               # is untested/unsupported. It's not a network service, it
-               # has no configuration, reads a single device node, and
-               # does all parsing within a seccomp jail. It also leads
-               # to hard-to-diagnose issues because USDT probes won't
-               # be registered and an application might have already
-               # started up which needs to be traced.
-               if systemd_is_booted ; then
-                       ebegin "Enabling & starting DTrace 'dtprobed' service"
-                       systemctl enable --now dtprobed
-                       eend $?
-               else
-                       ebegin "Enabling DTrace 'dtprobed' service"
-                       rc-update add dtprobed
-                       eend $?
-
-                       ebegin "Starting DTrace 'dtprobed' service"
-                       rc-service dtprobed start
-                       eend $?
-               fi
-       fi
-}
-
-pkg_postrm() {
-       udev_reload
-}

diff --git 
a/dev-debug/dtrace/files/0001-bpf-compile-BPF-library-functions-with-ffreestanding.patch
 
b/dev-debug/dtrace/files/0001-bpf-compile-BPF-library-functions-with-ffreestanding.patch
deleted file mode 100644
index 67111d6ab740..000000000000
--- 
a/dev-debug/dtrace/files/0001-bpf-compile-BPF-library-functions-with-ffreestanding.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-https://lore.kernel.org/dtrace/sj0pr10mb567217e9df1f38898f33711bc2...@sj0pr10mb5672.namprd10.prod.outlook.com/
-https://gcc.gnu.org/PR121259
-https://bugs.gentoo.org/959876
-
-From 2e027482c1bb19597a5f6ed51fac76f621b0163c Mon Sep 17 00:00:00 2001
-Message-ID: 
<2e027482c1bb19597a5f6ed51fac76f621b0163c.1753935317.git....@gentoo.org>
-From: Kris Van Hees <[email protected]>
-Date: Wed, 30 Jul 2025 23:09:03 -0400
-Subject: [PATCH] bpf: compile BPF library functions with -ffreestanding
-
-Per Jose, we should be compiling our BPF code with -ffreestanding to
-ensure that BPF-specific standard header files are used instead of
-host-specific ones.
-
-Signed-off-by: Kris Van Hees <[email protected]>
-Tested-by: Sam James <[email protected]>
-Reviewed-by: Sam James <[email protected]>
-Reviewed-by: Eugene Loh <[email protected]>
---- a/GNUmakefile
-+++ b/GNUmakefile
-@@ -127,7 +127,7 @@ PREPROCESS = $(CC) -E
- export BPFC ?= bpf-unknown-none-gcc
- 
- BPFCPPFLAGS += -D$(subst sparc64,__sparc,$(subst aarch64,__aarch64__,$(subst 
x86_64,__amd64,$(ARCH))))
--BPFCFLAGS ?= -O2 -Wall -Wno-unknown-pragmas $(if $(HAVE_BPFV3),-mcpu=v3) $(if 
$(HAVE_BPFMASM),-masm=normal)
-+BPFCFLAGS ?= -O2 -Wall -Wno-unknown-pragmas $(if $(HAVE_BPFV3),-mcpu=v3) $(if 
$(HAVE_BPFMASM),-masm=normal) -ffreestanding
- export BPFLD ?= bpf-unknown-none-ld
- 
- all::
-
-base-commit: 6642cf0c84de770b93a235581183a644664513a5
--- 
-2.50.1
-

Reply via email to