commit:     2486da21f31d87500b94aea00e83b28edacb34dc
Author:     Mattéo Rossillol‑‑Laruelle <beatussum <AT> protonmail <DOT> com>
AuthorDate: Mon Aug  5 18:35:54 2024 +0000
Commit:     Mattéo Rossillol‑‑Laruelle <beatussum <AT> protonmail <DOT> com>
CommitDate: Mon Aug  5 18:35:54 2024 +0000
URL:        https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=2486da21

dev-cpp/gbenchmark: new package, add 1.8.5

Signed-off-by: Mattéo Rossillol‑‑Laruelle <beatussum <AT> protonmail.com>

 dev-cpp/gbenchmark/Manifest                        |  1 +
 ...mark-1.8.5-fix-documentation-installation.patch | 47 +++++++++++++
 dev-cpp/gbenchmark/gbenchmark-1.8.5.ebuild         | 77 ++++++++++++++++++++++
 dev-cpp/gbenchmark/metadata.xml                    | 28 ++++++++
 4 files changed, 153 insertions(+)

diff --git a/dev-cpp/gbenchmark/Manifest b/dev-cpp/gbenchmark/Manifest
new file mode 100644
index 000000000..a055c47c0
--- /dev/null
+++ b/dev-cpp/gbenchmark/Manifest
@@ -0,0 +1 @@
+DIST gbenchmark-1.8.5.tar.gz 253306 BLAKE2B 
bc4fb42c6e7ef629b9f4861974dbe542fed07647d64a9e599e37c3371a7fa61f148473da77a99a0e3835672272ce83ac48744f3cc650eb9f1aab119f345a56ed
 SHA512 
86b16abf64961f5f9b8a539f81eefac580e8793e3270e826cf5c624cde2e64ed7e67a5f1c34c3d7250a11c61b1660c9287643df4502de598c1d9581c4a1df752

diff --git 
a/dev-cpp/gbenchmark/files/gbenchmark-1.8.5-fix-documentation-installation.patch
 
b/dev-cpp/gbenchmark/files/gbenchmark-1.8.5-fix-documentation-installation.patch
new file mode 100644
index 000000000..f1e5071d2
--- /dev/null
+++ 
b/dev-cpp/gbenchmark/files/gbenchmark-1.8.5-fix-documentation-installation.patch
@@ -0,0 +1,47 @@
+From ebc12737ba24be4d373fc314810c6332fdf5eb94 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Matt=C3=A9o=20Rossillol=E2=80=91=E2=80=91Laruelle?=
+ <[email protected]>
+Date: Fri, 19 Jul 2024 12:42:38 +0200
+Subject: [PATCH] fix documentation installation
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+HTML pages generated by Doxygen are now installed into
+/usr/share/doc/${PF}/html.
+
+The content of the docs directory is always installed even if HTML pages are
+installed.
+
+Signed-off-by: Mattéo Rossillol‑‑Laruelle <[email protected]>
+---
+ src/CMakeLists.txt | 14 +++++++-------
+ 1 file changed, 7 insertions(+), 7 deletions(-)
+
+diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
+index 32126c0..40e75e0 100644
+--- a/src/CMakeLists.txt
++++ b/src/CMakeLists.txt
+@@ -169,12 +169,12 @@ if (BENCHMARK_ENABLE_DOXYGEN)
+   if (BENCHMARK_ENABLE_INSTALL AND BENCHMARK_INSTALL_DOCS)
+     install(
+       DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/html/"
+-      DESTINATION ${CMAKE_INSTALL_DOCDIR})
+-  endif()
+-else()
+-  if (BENCHMARK_ENABLE_INSTALL AND BENCHMARK_INSTALL_DOCS)
+-    install(
+-      DIRECTORY "${PROJECT_SOURCE_DIR}/docs/"
+-      DESTINATION ${CMAKE_INSTALL_DOCDIR})
++      DESTINATION "${CMAKE_INSTALL_DOCDIR}/html/")
+   endif()
+ endif()
++
++if (BENCHMARK_ENABLE_INSTALL AND BENCHMARK_INSTALL_DOCS)
++  install(
++    DIRECTORY "${PROJECT_SOURCE_DIR}/docs/"
++    DESTINATION ${CMAKE_INSTALL_DOCDIR})
++endif()
+-- 
+2.44.2
+

diff --git a/dev-cpp/gbenchmark/gbenchmark-1.8.5.ebuild 
b/dev-cpp/gbenchmark/gbenchmark-1.8.5.ebuild
new file mode 100644
index 000000000..cd4c3c7d7
--- /dev/null
+++ b/dev-cpp/gbenchmark/gbenchmark-1.8.5.ebuild
@@ -0,0 +1,77 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+MY_PN="${PN#g}"
+MY_P="${MY_PN}-${PV}"
+
+PYTHON_COMPAT=( python3_{8..13} )
+
+inherit cmake-multilib python-r1
+
+DESCRIPTION="A microbenchmark support library"
+HOMEPAGE="https://github.com/google/benchmark/";
+SRC_URI="https://github.com/google/benchmark/archive/v${PV}.tar.gz -> 
${P}.tar.gz"
+S="${WORKDIR}/${MY_P}"
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="default-libcxx doc libpfm lto +exceptions test +tools"
+RESTRICT="!test? ( test )"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+MY_COMMON_DEPEND="tools? ( ${PYTHON_DEPS} )"
+
+DEPEND="
+       default-libcxx? ( sys-libs/libcxx[${MULTILIB_USEDEP}] )
+       libpfm? ( dev-libs/libpfm:= )
+
+       ${MY_COMMON_DEPEND}
+"
+
+BDEPEND="
+       >=dev-build/cmake-3.10
+       test? ( dev-cpp/gtest[${MULTILIB_USEDEP}] )
+"
+
+RDEPEND="
+       tools? (
+               dev-python/numpy[${PYTHON_USEDEP}]
+               >=dev-python/scipy-1.10.0[${PYTHON_USEDEP}]
+       )
+
+       ${MY_COMMON_DEPEND}
+"
+
+PATCHES=( "${FILESDIR}/${P}-fix-documentation-installation.patch" )
+
+multilib_src_configure() {
+       local mycmakeargs=(
+               -DBENCHMARK_ENABLE_DOXYGEN="$(usex doc)"
+               -DBENCHMARK_ENABLE_EXCEPTIONS="$(usex exceptions)"
+               -DBENCHMARK_ENABLE_GTEST_TESTS="$(usex test)"
+               -DBENCHMARK_ENABLE_LTO="$(usex lto)"
+               -DBENCHMARK_ENABLE_LIBPFM="$(usex libpfm)"
+               -DBENCHMARK_ENABLE_TESTING="$(usex test)"
+               -DBENCHMARK_ENABLE_WERROR=OFF
+               -DBENCHMARK_INSTALL_DOCS="$(usex doc)"
+               -DBENCHMARK_USE_BUNDLED_GTEST=OFF
+               -DBENCHMARK_USE_LIBCXX="$(usex default-libcxx)"
+       )
+
+       cmake_src_configure
+}
+
+python_install() {
+       python_domodule "${S}/tools/gbench"
+       python_doscript "${S}/tools/compare.py"
+       python_doscript "${S}/tools/strip_asm.py"
+}
+
+multilib_src_install_all() {
+       dodoc CONTRIBUTING.md
+       dodoc CONTRIBUTORS
+
+       use tools && python_foreach_impl python_install
+}

diff --git a/dev-cpp/gbenchmark/metadata.xml b/dev-cpp/gbenchmark/metadata.xml
new file mode 100644
index 000000000..08b11c26d
--- /dev/null
+++ b/dev-cpp/gbenchmark/metadata.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd";>
+<pkgmetadata>
+       <maintainer type="person">
+               <email>[email protected]</email>
+               <name>Mattéo Rossillol‑‑Laruelle</name>
+       </maintainer>
+       <use>
+               <flag name="default-libcxx">Use <pkg>sys-libs/libcxx</pkg> 
instead of libstdc++ as the default stdlib</flag>
+               <flag name="libpfm">Enable <pkg>dev-libs/libpfm</pkg> 
support</flag>
+               <flag name="exceptions">Enable the use of exceptions in the 
benchmark library</flag>
+               <flag name="tools">Install some additional Python tools</flag>
+       </use>
+       <use lang="fr">
+               <flag name="default-libcxx">Utiliser <pkg>sys-libs/libcxx</pkg> 
à la place de libstdc++ comme bibliothèque standard</flag>
+               <flag name="libpfm">Activer le support de 
<pkg>dev-libs/libpfm</pkg></flag>
+               <flag name="exceptions">Utiliser les exceptions inclues dans la 
bibliothèque</flag>
+               <flag name="tools">Installer des outils Python 
additionnels</flag>
+       </use>
+       <upstream>
+               <maintainer status="active">
+                       <name>Google</name>
+                       <email>[email protected]</email>
+               </maintainer>
+               <bugs-to>https://github.com/google/benchmark/issues/</bugs-to>
+               <remote-id type="github">google/benchmark</remote-id>
+       </upstream>
+</pkgmetadata>

Reply via email to