sys-cluster/muster: initial import

Signed-off-by: Alessandro Barbieri <lssndrbarbieri@gmail.com>
This commit is contained in:
Alessandro Barbieri
2021-07-11 11:50:01 +02:00
parent 92e114c0c7
commit c58d432c32
3 changed files with 84 additions and 0 deletions

View File

@@ -0,0 +1 @@
DIST muster-1.0.1.tar.gz 117835 BLAKE2B e20e80acc7d3b8ba407d8949d5b5d1cc4562d4db13c4fa24de264446eb79de6cc3a669d61740b12fd1a8198e44453acede4cf0eaa46a38b9b92ff7506d5c234f SHA512 71a07bd9771e8cbeff9f288ec5f6b77bc2ce97a2227f52de202b0b3d9ff709a716cd32f55bfc5b2567cca929057b083138494532986f8cd97c6e3336732d3640

View File

@@ -0,0 +1,32 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>lssndrbarbieri@gmail.com</email>
<name>Alessandro Barbieri</name>
</maintainer>
<upstream>
<remote-id type="github">LLNL/muster</remote-id>
</upstream>
<longdescription lang="en">
The Muster library provides implementations of serial and parallel K-Medoids
clustering algorithms. It is intended as a general framework for parallel
cluster analysis, particularly for performance data analysis on systems with
very large numbers of processes.
The parallel implementations in the Muster are designed to perform well even
in environments where the data to be clustered is entirely distributed. For
example, many performance tools need to analyze one data element from each
process in a system. To analyze this data efficiently, clustering algorithms
that move as little data as possible are required. In Muster, we exploit
sampled clustering algorithms to realize this efficiency.
The parallel algorithms in Muster are implemented using the Message Passing
Interface (MPI), making them suitable for use on many of the world's largest
supercomputers. They should, however, also run efficiently on your laptop.
</longdescription>
<use>
<flag name="pmpi">Build with PMPI bindings</flag>
<flag name="tests">Build and install test programs</flag>
</use>
</pkgmetadata>

View File

@@ -0,0 +1,51 @@
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="7"
inherit cmake
DESCRIPTION="Massively Scalable Clustering"
HOMEPAGE="https://github.com/LLNL/muster"
SRC_URI="https://github.com/LLNL/muster/archive/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="BSD MIT"
SLOT="0"
KEYWORDS="~amd64"
IUSE="doc pmpi tests"
RDEPEND="
dev-libs/boost:=
virtual/mpi
"
DEPEND="${RDEPEND}"
BDEPEND="doc? ( app-doc/doxygen )"
src_prepare() {
sed -e "s|DESTINATION lib|DESTINATION $(get_libdir)|g" -i src/CMakeLists.txt || die
cmake_src_prepare
}
src_configure() {
local mycmakeargs=(
-DINSTALL_TESTS=$(usex tests test)
-DMUSTER_USE_PMPI=$(usex pmpi)
)
cmake_src_configure
}
src_compile() {
cmake_src_compile
if use doc; then
doxygen || die
fi
}
src_install() {
cmake_src_install
use doc && dodoc -r doc/html
if use tests; then
mkdir -p "${ED}/usr/libexec/${PN}/" || die
mv "${ED}"/usr/bin/*-test "${ED}/usr/libexec/${PN}/" || die
fi
}