diff options
author | Yixun Lan <dlan@gentoo.org> | 2024-08-23 12:10:30 +0000 |
---|---|---|
committer | Yixun Lan <dlan@gentoo.org> | 2024-08-23 12:33:35 +0000 |
commit | cb72b15251c6614b6c63587ccdac90739a54f364 (patch) | |
tree | 344c15e5c4911f62f15c8c283ec53f12156f37c9 /dev-util/trace-cmd | |
parent | dev-libs/libtracefs: add 1.8.1 (diff) | |
download | gentoo-cb72b15251c6614b6c63587ccdac90739a54f364.tar.gz gentoo-cb72b15251c6614b6c63587ccdac90739a54f364.tar.bz2 gentoo-cb72b15251c6614b6c63587ccdac90739a54f364.zip |
dev-util/trace-cmd: add 3.3
Signed-off-by: Yixun Lan <dlan@gentoo.org>
Diffstat (limited to 'dev-util/trace-cmd')
-rw-r--r-- | dev-util/trace-cmd/Manifest | 1 | ||||
-rw-r--r-- | dev-util/trace-cmd/trace-cmd-3.3.ebuild | 98 |
2 files changed, 99 insertions, 0 deletions
diff --git a/dev-util/trace-cmd/Manifest b/dev-util/trace-cmd/Manifest index 35f0014abeb8..ad678171e716 100644 --- a/dev-util/trace-cmd/Manifest +++ b/dev-util/trace-cmd/Manifest @@ -1 +1,2 @@ DIST trace-cmd-v3.2.tar.gz 342848 BLAKE2B d82309b72d00ae1b757039c7a358e7703c9e74527112baa05eb44f971067b1189b7833621766fdf8affc812b84b7bcfd071b2946495197d81a8ed8ff7240779e SHA512 6a8474e619b32ccf60217eba1ce472bdf6e77f6aff118b579f329b49eaf1b20c9a7802b539876be7c782f33dc78587cc510c7b4bf12af5707bfa2813e59ae442 +DIST trace-cmd-v3.3.tar.gz 363405 BLAKE2B bc77ced96d47fe8284ad2252b7f6e51ae73b248a41908f255db68277ffccb35b34ede9a5e85f5f284b701c40b009f2d0ca091fb7db554793ae1470d6585e07ed SHA512 0857bea0bceb196bdb44164eefb8a05384c640f5a4d569dcbf26d80302b21bf17880eaba07c3da81c8812abe0f451219c26ba02b7bf9103eb1d0e88f1da84703 diff --git a/dev-util/trace-cmd/trace-cmd-3.3.ebuild b/dev-util/trace-cmd/trace-cmd-3.3.ebuild new file mode 100644 index 000000000000..707678e7fb7a --- /dev/null +++ b/dev-util/trace-cmd/trace-cmd-3.3.ebuild @@ -0,0 +1,98 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_OPTIONAL=1 +PYTHON_COMPAT=( python3_{10..12} ) + +inherit linux-info meson python-single-r1 + +DESCRIPTION="User-space front-end for Ftrace" +HOMEPAGE="https://git.kernel.org/pub/scm/utils/trace-cmd/trace-cmd.git" + +if [[ ${PV} == *9999 ]] ; then + EGIT_REPO_URI="https://git.kernel.org/pub/scm/utils/trace-cmd/${PN}.git" + inherit git-r3 +else + SRC_URI="https://git.kernel.org/pub/scm/utils/trace-cmd/trace-cmd.git/snapshot/${PN}-v${PV}.tar.gz" + KEYWORDS="~amd64 ~arm64 ~riscv ~x86" + S="${WORKDIR}/${PN}-v${PV}" +fi + +LICENSE="GPL-2+ LGPL-2.1+" +SLOT="0/${PV}" +IUSE="python test" +REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )" +# Tests segfault for now? +RESTRICT="!test? ( test ) test" + +RDEPEND=" + >=app-arch/zstd-1.4 + >=dev-libs/libtracefs-1.8 + >=dev-libs/libtraceevent-1.6.3 + sys-libs/zlib + sys-process/audit + python? ( ${PYTHON_DEPS} ) +" +DEPEND=" + ${RDEPEND} + sys-kernel/linux-headers + test? ( dev-util/cunit ) +" +BDEPEND=" + app-text/asciidoc + virtual/pkgconfig + python? ( dev-lang/swig ) +" + +pkg_setup() { + local CONFIG_CHECK=" + ~TRACING + ~FTRACE + ~BLK_DEV_IO_TRACE" + + linux-info_pkg_setup + + # TODO: Once we have options for doc+tests, we can revisit Python being + # single-impl. + use python && python-single-r1_pkg_setup +} + +src_prepare() { + default + + # Due to the in-progress meson build transaction, we decide to separate + # the libtracecmd as an independent package, see bug #909439 + # Note: dev-util/trace-cmd still use in-source static libtracecmd duo to + # it still use internal private API. + sed -i -e "/^libtracecmd_standalone_build/s/true/false/" \ + "${S}"/lib/meson.build || die +} + +src_configure() { + local emesonargs=( + -Dasciidoctor=false + $(meson_use python) + ) + + # TODO: udis86 isn't wired up to meson at all + # TODO: get docs & tests optional upstream + # TODO: audit/zstd/zlib lack meson options for now. Previously, the situation + # was somewhat automagic, so this isn't a huge loss for now, but we should + # upstream some build options for these. + meson_src_configure +} + +src_install() { + meson_src_install + use python && python_install + + # TODO: fix bash completion name + mv "${D}"/usr/share/bash-completion/completions/${PN}.bash \ + "${D}"/usr/share/bash-completion/completions/${PN} || die +} + +python_install() { + python_optimize "${D}$(python_get_sitedir)" +} |