sys-cluster/portals4: initial import

Signed-off-by: Alessandro Barbieri <lssndrbarbieri@gmail.com>
This commit is contained in:
Alessandro Barbieri
2021-07-30 20:08:45 +02:00
parent cd953debff
commit 1238ea9878
3 changed files with 129 additions and 0 deletions

View File

@@ -0,0 +1 @@
DIST portals4-1.0_alpha1_p20190109.tar.gz 759395 BLAKE2B dd610742b2e7d5e79c192a4ea184c57ffff4c2341c721e0b9be65e67800698a1973e948922969d4efbc976a879451398a189cdb12ad8a10fe5ae7d9e1017c3e9 SHA512 84805f58293fb9d5069e3e6b4909385dd7ffad0e32b54bbbd297e50939142ece3d424cc301a2b30144ef38d37d579a56f16e36f59115db851ec444edd58da1ca

View File

@@ -0,0 +1,24 @@
<?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>
<bugs-to>https://github.com/Portals4/portals4/issues</bugs-to>
<remote-id type="github">Portals4/portals4</remote-id>
</upstream>
<use>
<flag name="knem">Use <pkg>sys-cluster/knem</pkg> for bulk message transfer</flag>
<flag name="me-triggered">Enable extended (non-standard) triggered operations. Experimental</flag>
<flag name="pmi">Enable PMI support</flag>
<!--<flag name="ppe">Enable process-offload engine for Portals. Experimental</flag>-->
<flag name="reliable-udp">Use reliable UDP for remote communication</flag>
<flag name="transport-ib">Use IB for remote communication</flag>
<flag name="transport-shmem">Use Shared memory for on-node communication. This is currently experimental and should be avoided</flag>
<flag name="transport-udp">Use UDP for remote communication</flag>
<flag name="zero-mrs">Enable this when using MOFED V2.2+ or Qlogic InfiniPath Hardware of IB communication</flag>
<flag name="unordered-matching">Enable unordered (hashed) match list searching. Experimental</flag>
</use>
</pkgmetadata>

View File

@@ -0,0 +1,104 @@
# Copyright 2019-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
COMMIT="71fc5d04c9f8fc9818a05cdc608e2d13af825d83"
DOCS_BUILDER="doxygen"
DOCS_CONFIG_NAME="doxygen.conf"
DOCS_DIR="doc"
inherit autotools docs
DESCRIPTION="low-level network API for high-performance networking on high-performance computing systems"
HOMEPAGE="
https://www.cs.sandia.gov/Portals/portals4.html
https://github.com/Portals4/portals4
"
SRC_URI="https://github.com/Portals4/portals4/archive/${COMMIT}.tar.gz -> ${P}.tar.gz"
S="${WORKDIR}/${PN}-${COMMIT}"
LICENSE="BSD"
SLOT="0"
KEYWORDS="~amd64"
IUSE="knem me-triggered pmi reliable-udp test transport-ib transport-shmem +transport-udp unordered-matching zero-mrs" #ppe
RDEPEND="
dev-libs/libev
dev-libs/libxml2
knem? ( sys-cluster/knem )
pmi? ( sys-cluster/pmix[pmi] )
transport-ib? ( sys-fabric/ofed )
"
# ppe? ( sys-cluster/xpmem )
DEPEND="${RDEPEND}"
RESTRICT="!test? ( test )"
REQUIRED_USE="
^^ ( transport-ib transport-udp )
knem? ( transport-shmem )
reliable-udp? ( transport-udp )
"
# ^^ ( ppe transport-shmem )
src_prepare() {
default
eautoreconf
}
src_configure() {
local myconf=(
--disable-fast
--disable-kitten
--disable-picky
--disable-pmi-from-portals
--disable-static
--with-ev="${EPREFIX}/usr"
$(use_enable me-triggered)
$(use_enable reliable-udp)
$(use_enable test testing)
$(use_enable transport-ib)
$(use_enable transport-shmem)
$(use_enable transport-udp)
$(use_enable unordered-matching)
$(use_enable zero-mrs)
)
# $(use_enable ppe)
if use knem; then
myconf+=( "--with-knem=${EPREFIX}/usr" )
else
myconf+=( "--without-knem" )
fi
# if use ppe; then
# myconf+=( "--with-xpmem=${EPREFIX}/usr" )
# else
# myconf+=( "--without-xpmem" )
# fi
if use pmi; then
myconf+=( "--with-pmi=${EPREFIX}/usr" )
else
myconf+=( "--without-pmi" )
fi
if use transport-ib; then
myconf+=( "--with-ofed=${EPREFIX}/usr" )
else
myconf+=( "--without-ofed" )
fi
econf "${myconf[@]}"
}
src_compile() {
default
docs_compile
}
src_install() {
default
einstalldocs
find "${D}" -name '*.la' -delete || die
}