commit:     1238ea9878dafbd8c8cad041d27028fa8ad9b9e0
Author:     Alessandro Barbieri <lssndrbarbieri <AT> gmail <DOT> com>
AuthorDate: Fri Jul 30 18:08:45 2021 +0000
Commit:     Alessandro Barbieri <lssndrbarbieri <AT> gmail <DOT> com>
CommitDate: Fri Jul 30 18:09:03 2021 +0000
URL:        https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=1238ea98

sys-cluster/portals4: initial import

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

 sys-cluster/portals4/Manifest                      |   1 +
 sys-cluster/portals4/metadata.xml                  |  24 +++++
 .../portals4/portals4-1.0_alpha1_p20190109.ebuild  | 104 +++++++++++++++++++++
 3 files changed, 129 insertions(+)

diff --git a/sys-cluster/portals4/Manifest b/sys-cluster/portals4/Manifest
new file mode 100644
index 000000000..a951bf40a
--- /dev/null
+++ b/sys-cluster/portals4/Manifest
@@ -0,0 +1 @@
+DIST portals4-1.0_alpha1_p20190109.tar.gz 759395 BLAKE2B 
dd610742b2e7d5e79c192a4ea184c57ffff4c2341c721e0b9be65e67800698a1973e948922969d4efbc976a879451398a189cdb12ad8a10fe5ae7d9e1017c3e9
 SHA512 
84805f58293fb9d5069e3e6b4909385dd7ffad0e32b54bbbd297e50939142ece3d424cc301a2b30144ef38d37d579a56f16e36f59115db851ec444edd58da1ca

diff --git a/sys-cluster/portals4/metadata.xml 
b/sys-cluster/portals4/metadata.xml
new file mode 100644
index 000000000..4ed095ca3
--- /dev/null
+++ b/sys-cluster/portals4/metadata.xml
@@ -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>[email protected]</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>

diff --git a/sys-cluster/portals4/portals4-1.0_alpha1_p20190109.ebuild 
b/sys-cluster/portals4/portals4-1.0_alpha1_p20190109.ebuild
new file mode 100644
index 000000000..a3a6287fc
--- /dev/null
+++ b/sys-cluster/portals4/portals4-1.0_alpha1_p20190109.ebuild
@@ -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
+}

Reply via email to