Gentoo Archives: gentoo-commits

From: Alessandro Barbieri <lssndrbarbieri@×××××.com>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/proj/guru:dev commit in: sys-cluster/muster/
Date: Sun, 11 Jul 2021 10:14:44
Message-Id: 1625997001.c58d432c327f513f0d7a2e56acac6670c1f05ca7.Alessandro-Barbieri@gentoo
1 commit: c58d432c327f513f0d7a2e56acac6670c1f05ca7
2 Author: Alessandro Barbieri <lssndrbarbieri <AT> gmail <DOT> com>
3 AuthorDate: Sun Jul 11 09:50:01 2021 +0000
4 Commit: Alessandro Barbieri <lssndrbarbieri <AT> gmail <DOT> com>
5 CommitDate: Sun Jul 11 09:50:01 2021 +0000
6 URL: https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=c58d432c
7
8 sys-cluster/muster: initial import
9
10 Signed-off-by: Alessandro Barbieri <lssndrbarbieri <AT> gmail.com>
11
12 sys-cluster/muster/Manifest | 1 +
13 sys-cluster/muster/metadata.xml | 32 +++++++++++++++++++++
14 sys-cluster/muster/muster-1.0.1.ebuild | 51 ++++++++++++++++++++++++++++++++++
15 3 files changed, 84 insertions(+)
16
17 diff --git a/sys-cluster/muster/Manifest b/sys-cluster/muster/Manifest
18 new file mode 100644
19 index 000000000..f570446a4
20 --- /dev/null
21 +++ b/sys-cluster/muster/Manifest
22 @@ -0,0 +1 @@
23 +DIST muster-1.0.1.tar.gz 117835 BLAKE2B e20e80acc7d3b8ba407d8949d5b5d1cc4562d4db13c4fa24de264446eb79de6cc3a669d61740b12fd1a8198e44453acede4cf0eaa46a38b9b92ff7506d5c234f SHA512 71a07bd9771e8cbeff9f288ec5f6b77bc2ce97a2227f52de202b0b3d9ff709a716cd32f55bfc5b2567cca929057b083138494532986f8cd97c6e3336732d3640
24
25 diff --git a/sys-cluster/muster/metadata.xml b/sys-cluster/muster/metadata.xml
26 new file mode 100644
27 index 000000000..b0b36c18f
28 --- /dev/null
29 +++ b/sys-cluster/muster/metadata.xml
30 @@ -0,0 +1,32 @@
31 +<?xml version="1.0" encoding="UTF-8"?>
32 +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
33 +<pkgmetadata>
34 + <maintainer type="person">
35 + <email>lssndrbarbieri@×××××.com</email>
36 + <name>Alessandro Barbieri</name>
37 + </maintainer>
38 + <upstream>
39 + <remote-id type="github">LLNL/muster</remote-id>
40 + </upstream>
41 + <longdescription lang="en">
42 +The Muster library provides implementations of serial and parallel K-Medoids
43 +clustering algorithms. It is intended as a general framework for parallel
44 +cluster analysis, particularly for performance data analysis on systems with
45 +very large numbers of processes.
46 +
47 +The parallel implementations in the Muster are designed to perform well even
48 +in environments where the data to be clustered is entirely distributed. For
49 +example, many performance tools need to analyze one data element from each
50 +process in a system. To analyze this data efficiently, clustering algorithms
51 +that move as little data as possible are required. In Muster, we exploit
52 +sampled clustering algorithms to realize this efficiency.
53 +
54 +The parallel algorithms in Muster are implemented using the Message Passing
55 +Interface (MPI), making them suitable for use on many of the world's largest
56 +supercomputers. They should, however, also run efficiently on your laptop.
57 + </longdescription>
58 + <use>
59 + <flag name="pmpi">Build with PMPI bindings</flag>
60 + <flag name="tests">Build and install test programs</flag>
61 + </use>
62 +</pkgmetadata>
63
64 diff --git a/sys-cluster/muster/muster-1.0.1.ebuild b/sys-cluster/muster/muster-1.0.1.ebuild
65 new file mode 100644
66 index 000000000..eeab7486e
67 --- /dev/null
68 +++ b/sys-cluster/muster/muster-1.0.1.ebuild
69 @@ -0,0 +1,51 @@
70 +# Copyright 1999-2021 Gentoo Authors
71 +# Distributed under the terms of the GNU General Public License v2
72 +
73 +EAPI="7"
74 +
75 +inherit cmake
76 +
77 +DESCRIPTION="Massively Scalable Clustering"
78 +HOMEPAGE="https://github.com/LLNL/muster"
79 +SRC_URI="https://github.com/LLNL/muster/archive/v${PV}.tar.gz -> ${P}.tar.gz"
80 +
81 +LICENSE="BSD MIT"
82 +SLOT="0"
83 +KEYWORDS="~amd64"
84 +IUSE="doc pmpi tests"
85 +
86 +RDEPEND="
87 + dev-libs/boost:=
88 + virtual/mpi
89 +"
90 +DEPEND="${RDEPEND}"
91 +BDEPEND="doc? ( app-doc/doxygen )"
92 +
93 +src_prepare() {
94 + sed -e "s|DESTINATION lib|DESTINATION $(get_libdir)|g" -i src/CMakeLists.txt || die
95 + cmake_src_prepare
96 +}
97 +
98 +src_configure() {
99 + local mycmakeargs=(
100 + -DINSTALL_TESTS=$(usex tests test)
101 + -DMUSTER_USE_PMPI=$(usex pmpi)
102 + )
103 + cmake_src_configure
104 +}
105 +
106 +src_compile() {
107 + cmake_src_compile
108 + if use doc; then
109 + doxygen || die
110 + fi
111 +}
112 +
113 +src_install() {
114 + cmake_src_install
115 + use doc && dodoc -r doc/html
116 + if use tests; then
117 + mkdir -p "${ED}/usr/libexec/${PN}/" || die
118 + mv "${ED}"/usr/bin/*-test "${ED}/usr/libexec/${PN}/" || die
119 + fi
120 +}