commit:     e217e6d8aa086065308964b7227a236819b76bbf
Author:     Alessandro Barbieri <lssndrbarbieri <AT> gmail <DOT> com>
AuthorDate: Sun Jun  5 17:23:39 2022 +0000
Commit:     Alessandro Barbieri <lssndrbarbieri <AT> gmail <DOT> com>
CommitDate: Sun Jun  5 20:57:58 2022 +0000
URL:        https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=e217e6d8

dev-libs/perfstubs: new package, add 0_pre20210915

Signed-off-by: Alessandro Barbieri <lssndrbarbieri <AT> gmail.com>

 dev-libs/perfstubs/Manifest                       |  1 +
 dev-libs/perfstubs/metadata.xml                   | 22 ++++++++++
 dev-libs/perfstubs/perfstubs-0_pre20210915.ebuild | 49 +++++++++++++++++++++++
 3 files changed, 72 insertions(+)

diff --git a/dev-libs/perfstubs/Manifest b/dev-libs/perfstubs/Manifest
new file mode 100644
index 000000000..c72a89d04
--- /dev/null
+++ b/dev-libs/perfstubs/Manifest
@@ -0,0 +1 @@
+DIST perfstubs-0_pre20210915.gh.tar.gz 27236 BLAKE2B 
79eb382f9562581ba98f641e3f70cce16370b293129e2cf3264ccaea16ae108e2f63c8bd0b82399c6925112a121d05b5e9b442f21dcd1a247bb843c7839fb370
 SHA512 
5830c7a81200627951c7870065e44a166c560c19154d7a8d9ec015caa6a99501fbfe0a25c88e1200304da125956958a41da90362e14b06f9f2808a35756936c3

diff --git a/dev-libs/perfstubs/metadata.xml b/dev-libs/perfstubs/metadata.xml
new file mode 100644
index 000000000..bc30a247b
--- /dev/null
+++ b/dev-libs/perfstubs/metadata.xml
@@ -0,0 +1,22 @@
+<?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>Alessandro Barbieri</name>
+       </maintainer>
+       <longdescription lang="en">
+Profiling API for adding external tool instrumentation support to any project.
+This was motivated by the need to quickly add instrumentation to the ADIOS2 
library without adding a build dependency, or tying to a specific measurement 
tool.
+The initial prototype implementation was tied to TAU, but evolved to this more 
generic version, which was extracted as a separate repository for testing and 
demonstration purposes.
+       </longdescription>
+       <upstream>
+               <bugs-to>https://github.com/khuck/perfstubs/issues</bugs-to>
+               <remote-id type="github">khuck/perfstubs</remote-id>
+       </upstream>
+       <use>
+               <flag name="default">Use provided perfstubs tool_example</flag>
+               <flag name="timers">Use our own tool_example of timers</flag>
+               <flag name="tools">Build libperfstsubs_n</flag>
+       </use>
+</pkgmetadata>

diff --git a/dev-libs/perfstubs/perfstubs-0_pre20210915.ebuild 
b/dev-libs/perfstubs/perfstubs-0_pre20210915.ebuild
new file mode 100644
index 000000000..8c29921fd
--- /dev/null
+++ b/dev-libs/perfstubs/perfstubs-0_pre20210915.ebuild
@@ -0,0 +1,49 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake fortran-2
+
+COMMIT="bdd9118a6e4af9245640ccb58b4f49cbf5aaa899"
+
+DESCRIPTION="Profiling API for adding external tool instrumentation support to 
any project"
+HOMEPAGE="https://github.com/khuck/perfstubs";
+SRC_URI="https://github.com/khuck/${PN}/archive/${COMMIT}.tar.gz -> 
${PF}.gh.tar.gz"
+S="${WORKDIR}/${PN}-${COMMIT}"
+
+LICENSE="BSD"
+SLOT="0/${PV}"
+KEYWORDS="~amd64"
+IUSE="+default examples +timers tools"
+
+pkg_setup() {
+       fortran-2_pkg_setup
+}
+
+src_prepare() {
+       sed \
+               -e "s|/lib|/$(get_libdir)|g" \
+               -e "s|DESTINATION lib|DESTINATION $(get_libdir)|g" \
+               -i CMakeLists.txt || die
+
+       cmake_src_prepare
+}
+
+src_configure() {
+       local mycmakeargs=(
+               -DBUILD_SHARED_LIBS=ON
+               -DPERFSTUBS_USE_STATIC=OFF
+
+               -DPERFSTUBS_BUILD_EXAMPLES=$(usex examples)
+               -DPERFSTUBS_BUILD_MULTI_TOOL=$(usex tools)
+               -DPERFSTUBS_USE_DEFAULT_IMPLEMENTATION=$(usex default)
+               -DPERFSTUBS_USE_TIMERS=$(usex timers)
+       )
+       cmake_src_configure
+}
+
+src_install() {
+       cmake_src_install
+       dodoc README.md
+}

Reply via email to