From e74cc19ae3a599dcecd52d9ea09cb3888981cbd1 Mon Sep 17 00:00:00 2001 From: Sam James Date: Tue, 5 May 2026 15:17:48 +0100 Subject: [PATCH] dev-libs/libpfm: add 4.13.0_p20260328 Upstream make releases very infrequently which causes issues with newer CPUs, like in the linked bug and https://forums.gentoo.org/viewtopic.php?t=1172164. Make a snapshot. Closes: https://bugs.gentoo.org/959510 Signed-off-by: Sam James --- dev-libs/libpfm/Manifest | 1 + .../libpfm/libpfm-4.13.0_p20260328.ebuild | 57 +++++++++++++++++++ 2 files changed, 58 insertions(+) create mode 100644 dev-libs/libpfm/libpfm-4.13.0_p20260328.ebuild diff --git a/dev-libs/libpfm/Manifest b/dev-libs/libpfm/Manifest index e3c1b584e4648..2584997d4a27f 100644 --- a/dev-libs/libpfm/Manifest +++ b/dev-libs/libpfm/Manifest @@ -1 +1,2 @@ DIST libpfm-4.13.0.tar.gz 1128221 BLAKE2B 71fddec8993acec5c14d140d80804d41a12ae2fe22368b74bf94f10f95f51946bf9150b4329ca481756228366fc86b1ff5f795a97de181d211dc175c374a5653 SHA512 e61b210aa2ce80f0e47603c88eee2e4f2fe30ca2c0e194a5472b6a8de3bf9dc1085e5261bbb9ddbe5b6531c4b391fb34f20d038e5ebd8e6f4c14c2112aee508f +DIST libpfm-4.13.0_p20260328.tar.xz 667504 BLAKE2B 935f707fdfd8598a5b46b4e96947c4cbd96b58af43ee09e79e47c137dbeab898a3bfdaa157e4dd09987a9d94380521a37310f5944c55b7fd87622a4c8428bdef SHA512 d6d8bd4f3e43d7fefa0767b7f78a72380c846f07908f2e87f828d0feb0f1f8f04169a3d98a1f5775c7beec05cd77d5c66fa9246b0c05f1e9ce0351fdcf6f1c52 diff --git a/dev-libs/libpfm/libpfm-4.13.0_p20260328.ebuild b/dev-libs/libpfm/libpfm-4.13.0_p20260328.ebuild new file mode 100644 index 0000000000000..45256558710a7 --- /dev/null +++ b/dev-libs/libpfm/libpfm-4.13.0_p20260328.ebuild @@ -0,0 +1,57 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit dot-a toolchain-funcs + +DESCRIPTION="Hardware-based performance monitoring interface for Linux" +HOMEPAGE="https://perfmon2.sourceforge.net" + +if [[ ${PV} == *_p* ]] ; then + # git archive --format=tar --prefix=libpfm/ HEAD | xz > libpfm-4.13.0_p20260328.tar.xz + SRC_URI="https://distfiles.gentoo.org/pub/dev/sam@gentoo.org/${CATEGORY}/${PN}/${P}.tar.xz" + + S="${WORKDIR}"/${PN} +else + SRC_URI="https://downloads.sourceforge.net/perfmon2/${PN}4/${P}.tar.gz" +fi + +LICENSE="GPL-2 MIT" +SLOT="0/4" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +IUSE="static-libs" + +PATCHES=( + "${FILESDIR}"/libpfm-4.13.0-musl-WORDSIZE_undeclared.patch +) + +src_prepare() { + default + + sed -e "s:SLDFLAGS=:SLDFLAGS=\$(LDFLAGS) :g" \ + -i lib/Makefile || die + sed -e "s:LIBDIR=\$(PREFIX)/lib:LIBDIR=\$(PREFIX)/$(get_libdir):g" \ + -i config.mk || die +} + +src_compile() { + use static-libs && lto-guarantee-fat + # 'DBG=' unsets '-Werror' and other optional flags, bug #664294 + emake AR="$(tc-getAR)" CC="$(tc-getCC)" DBG= +} + +src_test() { + ./tests/validate -A || die +} + +src_install() { + emake DESTDIR="${D}" LDCONFIG=true PREFIX="${EPREFIX}/usr" install + dodoc README + + if ! use static-libs ; then + find "${ED}" -name '*.a' -delete || die + fi + + strip-lto-bytecode +}