commit:     ef1b1276cf1343ef688099d3b7553b183c7c228e
Author:     Alfred Wingate <parona <AT> protonmail <DOT> com>
AuthorDate: Tue Mar  4 23:21:55 2025 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Wed Mar  5 11:25:50 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ef1b1276

dev-cpp/benchmark: fix cmake package config with USE="libpfm"

Bug: https://bugs.gentoo.org/950573
Signed-off-by: Alfred Wingate <parona <AT> protonmail.com>
Closes: https://github.com/gentoo/gentoo/pull/40899
Signed-off-by: Sam James <sam <AT> gentoo.org>

 ...mark-1.9.1.ebuild => benchmark-1.9.1-r1.ebuild} |  1 +
 .../files/benchmark-1.9.1-fix-pfm-cmake.patch      | 36 ++++++++++++++++++++++
 2 files changed, 37 insertions(+)

diff --git a/dev-cpp/benchmark/benchmark-1.9.1.ebuild 
b/dev-cpp/benchmark/benchmark-1.9.1-r1.ebuild
similarity index 98%
rename from dev-cpp/benchmark/benchmark-1.9.1.ebuild
rename to dev-cpp/benchmark/benchmark-1.9.1-r1.ebuild
index 267541f48e8b..a2282027f55d 100644
--- a/dev-cpp/benchmark/benchmark-1.9.1.ebuild
+++ b/dev-cpp/benchmark/benchmark-1.9.1-r1.ebuild
@@ -39,6 +39,7 @@ BDEPEND="
 PATCHES=(
        "${FILESDIR}/${PN}-1.9.0-fix-documentation-installation.patch"
        "${FILESDIR}/${P}-clock-detection-portability.patch"
+       "${FILESDIR}/${P}-fix-pfm-cmake.patch"
 )
 
 pkg_setup() {

diff --git a/dev-cpp/benchmark/files/benchmark-1.9.1-fix-pfm-cmake.patch 
b/dev-cpp/benchmark/files/benchmark-1.9.1-fix-pfm-cmake.patch
new file mode 100644
index 000000000000..c6431056ccce
--- /dev/null
+++ b/dev-cpp/benchmark/files/benchmark-1.9.1-fix-pfm-cmake.patch
@@ -0,0 +1,36 @@
+https://bugs.gentoo.org/950573
+https://github.com/google/benchmark/pull/1942
+
+From d124c771fe507a8eb5bb37697f8b36a7fde19e27 Mon Sep 17 00:00:00 2001
+From: Alfred Wingate <[email protected]>
+Date: Wed, 5 Mar 2025 00:16:54 +0200
+Subject: [PATCH] Install FindPFM.cmake for bencmarkConfig.cmake
+
+There is no upstream PFM cmake package config file to use, so this has
+to be installed for the benchmark cmake package config file to work.
+
+Bug: https://bugs.gentoo.org/950573
+See-Also: c2146397ac69e6589a50f6b4fc6a7355669caed5
+Signed-off-by: Alfred Wingate <[email protected]>
+--- a/cmake/Config.cmake.in
++++ b/cmake/Config.cmake.in
+@@ -5,6 +5,7 @@ include (CMakeFindDependencyMacro)
+ find_dependency (Threads)
+ 
+ if (@BENCHMARK_ENABLE_LIBPFM@)
++    list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_LIST_DIR}")
+     find_dependency (PFM)
+ endif()
+ 
+--- a/src/CMakeLists.txt
++++ b/src/CMakeLists.txt
+@@ -39,6 +39,9 @@ set_property(
+ if (PFM_FOUND)
+   target_link_libraries(benchmark PRIVATE PFM::libpfm)
+   target_compile_definitions(benchmark PRIVATE -DHAVE_LIBPFM)
++  install(
++      FILES "${PROJECT_SOURCE_DIR}/cmake/Modules/FindPFM.cmake"
++      DESTINATION "${CMAKE_INSTALL_LIBDIR}/cmake/${PROJECT_NAME}")
+ endif()
+ 
+ # pthread affinity, if available

Reply via email to