public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
From: "Jakov Smolić" <jsmolic@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-util/bcc/
Date: Sun,  7 Nov 2021 20:59:42 +0000 (UTC)	[thread overview]
Message-ID: <1636318714.aa3d066f2b9904a46cfec836c3de140b742fafbf.jsmolic@gentoo> (raw)

commit:     aa3d066f2b9904a46cfec836c3de140b742fafbf
Author:     Jakov Smolić <jsmolic <AT> gentoo <DOT> org>
AuthorDate: Sun Nov  7 20:58:05 2021 +0000
Commit:     Jakov Smolić <jsmolic <AT> gentoo <DOT> org>
CommitDate: Sun Nov  7 20:58:34 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=aa3d066f

dev-util/bcc: Correctly append "old" prefix to old tools' names

Previous fix solved the bug where bcc would install old versions on top
of the new ones, but it failed to append the "old" prefix to old tools
correctly, so they were not really installed. While at, let's do this in
src_prepare rather than in src_install phase.

Closes: https://bugs.gentoo.org/811288
Signed-off-by: Jakov Smolić <jsmolic <AT> gentoo.org>

 dev-util/bcc/bcc-0.22.0-r1.ebuild | 119 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 119 insertions(+)

diff --git a/dev-util/bcc/bcc-0.22.0-r1.ebuild b/dev-util/bcc/bcc-0.22.0-r1.ebuild
new file mode 100644
index 00000000000..36f7b33c57d
--- /dev/null
+++ b/dev-util/bcc/bcc-0.22.0-r1.ebuild
@@ -0,0 +1,119 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+LUA_COMPAT=( luajit )
+PYTHON_COMPAT=( python3_{7..10} )
+
+inherit cmake linux-info llvm lua-single python-r1
+
+DESCRIPTION="Tools for BPF-based Linux IO analysis, networking, monitoring, and more"
+HOMEPAGE="https://iovisor.github.io/bcc/"
+
+SRC_URI="https://github.com/iovisor/bcc/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~x86"
+IUSE="+lua test"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}
+	lua? ( ${LUA_REQUIRED_USE} )"
+
+RDEPEND="
+	|| (
+		~dev-libs/libbpf-0.5.0
+		~dev-libs/libbpf-9999
+	)
+	dev-libs/libbpf:=[static-libs(-)]
+	>=sys-kernel/linux-headers-5.13
+	>=dev-libs/elfutils-0.166:=
+	<=sys-devel/clang-13:=
+	<=sys-devel/llvm-13:=[llvm_targets_BPF(+)]
+	lua? ( ${LUA_DEPS} )
+	${PYTHON_DEPS}
+"
+DEPEND="${RDEPEND}
+	test? (
+		|| (
+			net-misc/iputils[arping]
+			net-analyzer/arping
+		)
+		net-analyzer/netperf
+		net-misc/iperf:*
+	)
+"
+BDEPEND="
+	dev-util/cmake
+	virtual/pkgconfig
+"
+
+PATCHES=(
+	"${FILESDIR}/bcc-0.9.0-no-luajit-automagic-dep.patch"
+	"${FILESDIR}/bcc-0.14.0-cmakelists.patch"
+)
+
+# tests need root access
+RESTRICT="test"
+
+pkg_pretend() {
+	local CONFIG_CHECK="~BPF ~BPF_SYSCALL ~NET_CLS_BPF ~NET_ACT_BPF
+		~HAVE_EBPF_JIT ~BPF_EVENTS ~DEBUG_INFO ~FUNCTION_TRACER ~KALLSYMS_ALL
+		~KPROBES"
+
+	check_extra_config
+}
+
+pkg_setup() {
+	LLVM_MAX_SLOT=12 llvm_pkg_setup
+	python_setup
+}
+
+src_prepare() {
+	local bpf_link_path
+
+	# this avoids bundling
+	bpf_link_path="$(realpath --relative-to="${S}/src/cc/libbpf" /usr/include/bpf)" || die
+	ln -sfn "${bpf_link_path}" src/cc/libbpf/include || die
+
+	# bug 811288
+	local script scriptname
+	for script in $(find tools/old -type f -name "*.py"); do
+		scriptname=$(basename ${script})
+		mv ${script} tools/old/old-${scriptname} || die
+	done
+
+	cmake_src_prepare
+}
+
+python_add_impl() {
+	bcc_python_impls+="${EPYTHON};"
+}
+
+src_configure() {
+	local bcc_python_impls
+	python_foreach_impl python_add_impl
+
+	local -a mycmakeargs=(
+		-DREVISION=${PV%%_*}
+		-DENABLE_LLVM_SHARED=ON
+		-DCMAKE_USE_LIBBPF_PACKAGE=ON
+		-DKERNEL_INCLUDE_DIRS="${KERNEL_DIR}"
+		-DPYTHON_CMD="${bcc_python_impls%;}"
+		-Wno-dev
+	)
+	if use lua && use lua_single_target_luajit; then
+		mycmakeargs+=( -DWITH_LUAJIT=1 )
+	fi
+
+	cmake_src_configure
+}
+
+src_install() {
+	cmake_src_install
+
+	python_replicate_script $(grep -Flr '#!/usr/bin/python' "${ED}/usr/share/bcc/tools")
+	python_foreach_impl python_optimize
+
+	newenvd "${FILESDIR}"/60bcc.env 60bcc.env
+}


             reply	other threads:[~2021-11-07 20:59 UTC|newest]

Thread overview: 95+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-11-07 20:59 Jakov Smolić [this message]
  -- strict thread matches above, loose matches on Subject: below --
2024-12-17 16:51 [gentoo-commits] repo/gentoo:master commit in: dev-util/bcc/ Patrick McLean
2024-10-25 22:21 Sam James
2024-09-11 15:30 Mike Gilbert
2024-09-10 19:00 Patrick McLean
2024-04-02 16:32 Patrick McLean
2024-03-25 21:29 Patrick McLean
2024-03-17  6:27 Ionen Wolkens
2024-03-15 16:17 Zac Medico
2024-02-04 13:37 Jakov Smolić
2023-12-23 18:45 Jakov Smolić
2023-12-08 18:25 Patrick McLean
2023-12-08 18:25 Patrick McLean
2023-12-07 18:16 Patrick McLean
2023-06-28 21:00 Patrick McLean
2023-04-05 21:31 Patrick McLean
2023-04-03 23:33 Patrick McLean
2023-03-19 17:34 Michał Górny
2023-01-05  0:33 Sam James
2023-01-03 22:08 Patrick McLean
2023-01-03 14:15 David Seifert
2022-08-12  1:53 Yixun Lan
2022-06-27 17:32 Jakov Smolić
2022-04-18 17:34 Patrick McLean
2022-02-11 19:53 Jakov Smolić
2022-01-15  2:36 Patrick McLean
2022-01-14 18:54 Patrick McLean
2022-01-14 18:54 Patrick McLean
2022-01-14 10:26 Jakov Smolić
2022-01-06 18:50 Patrick McLean
2021-12-05  3:26 Sam James
2021-12-02 22:04 Patrick McLean
2021-12-02  7:20 Patrick McLean
2021-12-02  7:03 Patrick McLean
2021-12-02  2:09 Patrick McLean
2021-11-07 20:59 Jakov Smolić
2021-11-07 20:59 Jakov Smolić
2021-11-07 20:59 Jakov Smolić
2021-11-07 20:59 Jakov Smolić
2021-10-21  4:16 Sam James
2021-09-21  0:37 Patrick McLean
2021-06-08 17:14 Patrick McLean
2021-06-08 17:14 Patrick McLean
2021-06-03  0:59 Patrick McLean
2021-05-09 18:03 Patrick McLean
2021-03-20  7:00 Patrick McLean
2021-01-06  2:29 Patrick McLean
2021-01-05 18:15 Patrick McLean
2020-11-17  4:49 Patrick McLean
2020-11-17  4:49 Patrick McLean
2020-10-30 21:13 Patrick McLean
2020-08-25 14:25 Patrick McLean
2020-08-25  3:01 Patrick McLean
2020-08-25  0:11 Patrick McLean
2020-06-25 17:14 Zac Medico
2020-06-19 23:22 Patrick McLean
2020-03-12  3:06 Zac Medico
2020-02-20 19:01 Patrick McLean
2020-02-10 11:54 Michał Górny
2019-12-29  9:56 David Seifert
2019-12-11 23:42 Patrick McLean
2019-12-11  3:05 Patrick McLean
2019-10-03 21:29 Patrick McLean
2019-10-03 18:56 Patrick McLean
2019-05-21 16:45 Stephen Klimaszewski
2019-03-13 21:12 Patrick McLean
2019-03-12  6:38 Patrick McLean
2018-12-30  7:23 Zac Medico
2018-11-21  5:05 Zac Medico
2018-07-08  8:39 Zac Medico
2018-05-29  0:30 Zac Medico
2018-05-28 20:39 Richard Yao
2018-05-28 18:01 Richard Yao
2018-05-27 22:50 Richard Yao
2018-05-27 21:38 Richard Yao
2018-01-02  1:51 Zac Medico
2018-01-02  1:04 Zac Medico
2017-12-14 19:08 Zac Medico
2017-10-27 18:00 Zac Medico
2017-10-27 17:58 Zac Medico
2017-09-15  7:38 Zac Medico
2017-09-13 21:33 Zac Medico
2017-03-19 21:53 Zac Medico
2017-03-19 21:53 Zac Medico
2016-11-02 20:01 Zac Medico
2016-11-01 16:13 Zac Medico
2016-11-01 16:01 Zac Medico
2016-11-01 16:01 Zac Medico
2016-10-01 13:06 Michał Górny
2016-09-16 18:58 Zac Medico
2016-08-24 16:11 Zac Medico
2016-08-24 16:07 Zac Medico
2016-05-23 17:46 Zac Medico
2016-05-23 17:46 Zac Medico
2016-04-11  7:28 Zac Medico

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1636318714.aa3d066f2b9904a46cfec836c3de140b742fafbf.jsmolic@gentoo \
    --to=jsmolic@gentoo.org \
    --cc=gentoo-commits@lists.gentoo.org \
    --cc=gentoo-dev@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox