1 |
1 |
# Copyright 1999-2023 Gentoo Authors
|
2 |
2 |
# Distributed under the terms of the GNU General Public License v2
|
3 |
3 |
|
4 |
|
EAPI=7
|
|
4 |
EAPI=8
|
5 |
5 |
|
6 |
|
PYTHON_COMPAT=( python3_{9..11} )
|
|
6 |
PYTHON_COMPAT=( python3_{10..12} )
|
7 |
7 |
inherit bash-completion-r1 estack flag-o-matic llvm toolchain-funcs python-r1 linux-info
|
8 |
8 |
|
9 |
9 |
DESCRIPTION="Userland tools for Linux Performance Counters"
|
... | ... | |
31 |
31 |
|
32 |
32 |
LICENSE="GPL-2"
|
33 |
33 |
SLOT="0"
|
34 |
|
KEYWORDS="amd64 arm arm64 ~mips ppc ppc64 ~riscv x86 ~amd64-linux ~x86-linux"
|
35 |
|
IUSE="audit babeltrace clang crypt debug +doc gtk java libpfm lzma numa perl python slang systemtap unwind zlib zstd"
|
|
34 |
KEYWORDS="~amd64 ~arm ~arm64 ~mips ~ppc ~ppc64 ~riscv ~x86 ~amd64-linux ~x86-linux"
|
|
35 |
IUSE="audit babeltrace caps clang crypt debug +doc gtk java libpfm lzma numa perl python slang systemtap unwind zstd"
|
36 |
36 |
|
37 |
37 |
REQUIRED_USE="${PYTHON_REQUIRED_USE}"
|
38 |
38 |
|
... | ... | |
53 |
53 |
)
|
54 |
54 |
"
|
55 |
55 |
|
56 |
|
RDEPEND="audit? ( sys-process/audit )
|
|
56 |
RDEPEND="
|
|
57 |
audit? ( sys-process/audit )
|
57 |
58 |
babeltrace? ( dev-util/babeltrace )
|
58 |
|
crypt? ( virtual/libcrypt:= )
|
|
59 |
caps? ( sys-libs/libcap )
|
59 |
60 |
clang? (
|
60 |
61 |
sys-devel/clang:=
|
61 |
62 |
sys-devel/llvm:=
|
62 |
63 |
)
|
|
64 |
crypt? ( dev-libs/openssl:= )
|
63 |
65 |
gtk? ( x11-libs/gtk+:2 )
|
64 |
66 |
java? ( virtual/jre:* )
|
65 |
|
libpfm? ( dev-libs/libpfm )
|
|
67 |
libpfm? ( dev-libs/libpfm:= )
|
66 |
68 |
lzma? ( app-arch/xz-utils )
|
67 |
69 |
numa? ( sys-process/numactl )
|
68 |
70 |
perl? ( dev-lang/perl:= )
|
69 |
71 |
python? ( ${PYTHON_DEPS} )
|
70 |
72 |
slang? ( sys-libs/slang )
|
71 |
73 |
systemtap? ( dev-util/systemtap )
|
72 |
|
unwind? ( sys-libs/libunwind )
|
73 |
|
zlib? ( sys-libs/zlib )
|
74 |
|
zstd? ( app-arch/zstd )
|
|
74 |
unwind? ( sys-libs/libunwind:= )
|
|
75 |
zstd? ( app-arch/zstd:= )
|
75 |
76 |
dev-libs/elfutils
|
76 |
|
sys-libs/binutils-libs:="
|
|
77 |
sys-libs/binutils-libs:=
|
|
78 |
sys-libs/zlib
|
|
79 |
"
|
77 |
80 |
|
78 |
81 |
DEPEND="${RDEPEND}
|
79 |
82 |
>=sys-kernel/linux-headers-5.10
|
... | ... | |
181 |
184 |
local java_dir
|
182 |
185 |
use java && java_dir="${EPREFIX}/etc/java-config-2/current-system-vm"
|
183 |
186 |
# FIXME: NO_CORESIGHT
|
184 |
|
emake V=1 VF=1 \
|
185 |
|
HOSTCC="$(tc-getBUILD_CC)" HOSTLD="$(tc-getBUILD_LD)" \
|
186 |
|
CC="$(tc-getCC)" CXX="$(tc-getCXX)" AR="$(tc-getAR)" LD="$(tc-getLD)" NM="$(tc-getNM)" \
|
187 |
|
PKG_CONFIG="$(tc-getPKG_CONFIG)" \
|
188 |
|
prefix="${EPREFIX}/usr" bindir_relative="bin" \
|
189 |
|
tipdir="share/doc/${PF}" \
|
190 |
|
EXTRA_CFLAGS="${CFLAGS}" \
|
191 |
|
EXTRA_LDFLAGS="${LDFLAGS}" \
|
192 |
|
ARCH="${arch}" \
|
193 |
|
JDIR="${java_dir}" \
|
194 |
|
LIBCLANGLLVM=$(usex clang 1 "") \
|
195 |
|
LIBPFM4=$(usex libpfm 1 "") \
|
196 |
|
NO_AUXTRACE="" \
|
197 |
|
NO_BACKTRACE="" \
|
198 |
|
NO_CORESIGHT=1 \
|
199 |
|
NO_DEMANGLE= \
|
200 |
|
GTK2=$(usex gtk 1 "") \
|
201 |
|
feature-gtk2-infobar=$(usex gtk 1 "") \
|
202 |
|
NO_JVMTI=$(puse java) \
|
203 |
|
NO_LIBAUDIT=$(puse audit) \
|
204 |
|
NO_LIBBABELTRACE=$(puse babeltrace) \
|
205 |
|
NO_LIBBIONIC=1 \
|
206 |
|
NO_LIBBPF= \
|
207 |
|
NO_LIBCRYPTO=$(puse crypt) \
|
208 |
|
NO_LIBDW_DWARF_UNWIND= \
|
209 |
|
NO_LIBELF= \
|
210 |
|
NO_LIBNUMA=$(puse numa) \
|
211 |
|
NO_LIBPERL=$(puse perl) \
|
212 |
|
NO_LIBPYTHON=$(puse python) \
|
213 |
|
NO_LIBUNWIND=$(puse unwind) \
|
214 |
|
NO_LIBZSTD=$(puse zstd) \
|
215 |
|
NO_SDT=$(puse systemtap) \
|
216 |
|
NO_SLANG=$(puse slang) \
|
217 |
|
NO_LZMA=$(puse lzma) \
|
218 |
|
NO_ZLIB=$(puse zlib) \
|
219 |
|
WERROR=0 \
|
220 |
|
LIBDIR="/usr/libexec/perf-core" \
|
221 |
|
libdir="${EPREFIX}/usr/$(get_libdir)" \
|
222 |
|
plugindir="${EPREFIX}/usr/$(get_libdir)/perf/plugins" \
|
|
187 |
local emakeargs=(
|
|
188 |
V=1 VF=1
|
|
189 |
HOSTCC="$(tc-getBUILD_CC)" HOSTLD="$(tc-getBUILD_LD)"
|
|
190 |
CC="$(tc-getCC)" CXX="$(tc-getCXX)" AR="$(tc-getAR)" LD="$(tc-getLD)" NM="$(tc-getNM)"
|
|
191 |
PKG_CONFIG="$(tc-getPKG_CONFIG)"
|
|
192 |
prefix="${EPREFIX}/usr" bindir_relative="bin"
|
|
193 |
tipdir="share/doc/${PF}"
|
|
194 |
EXTRA_CFLAGS="${CFLAGS}"
|
|
195 |
EXTRA_LDFLAGS="${LDFLAGS}"
|
|
196 |
ARCH="${arch}"
|
|
197 |
JDIR="${java_dir}"
|
|
198 |
LIBCLANGLLVM=$(usex clang 1 "")
|
|
199 |
LIBPFM4=$(usex libpfm 1 "")
|
|
200 |
NO_AUXTRACE=""
|
|
201 |
NO_BACKTRACE=""
|
|
202 |
NO_CORESIGHT=1
|
|
203 |
NO_DEMANGLE=
|
|
204 |
GTK2=$(usex gtk 1 "")
|
|
205 |
feature-gtk2-infobar=$(usex gtk 1 "")
|
|
206 |
NO_JVMTI=$(puse java)
|
|
207 |
NO_LIBAUDIT=$(puse audit)
|
|
208 |
NO_LIBBABELTRACE=$(puse babeltrace)
|
|
209 |
NO_LIBBIONIC=1
|
|
210 |
NO_LIBBPF=
|
|
211 |
NO_LIBCAP=$(puse caps)
|
|
212 |
NO_LIBCRYPTO=$(puse crypt)
|
|
213 |
NO_LIBDW_DWARF_UNWIND=
|
|
214 |
NO_LIBELF=
|
|
215 |
NO_LIBNUMA=$(puse numa)
|
|
216 |
NO_LIBPERL=$(puse perl)
|
|
217 |
NO_LIBPYTHON=$(puse python)
|
|
218 |
NO_LIBUNWIND=$(puse unwind)
|
|
219 |
NO_LIBZSTD=$(puse zstd)
|
|
220 |
NO_SDT=$(puse systemtap)
|
|
221 |
NO_SLANG=$(puse slang)
|
|
222 |
NO_LZMA=$(puse lzma)
|
|
223 |
NO_ZLIB=
|
|
224 |
WERROR=0
|
|
225 |
LIBDIR="/usr/libexec/perf-core"
|
|
226 |
libdir="${EPREFIX}/usr/$(get_libdir)"
|
|
227 |
plugindir="${EPREFIX}/usr/$(get_libdir)/perf/plugins"
|
223 |
228 |
"$@"
|
|
229 |
)
|
|
230 |
emake "${emakeargs[@]}"
|
224 |
231 |
}
|
225 |
232 |
|
226 |
233 |
src_compile() {
|