commit:     52a5f4e29747b8777541d3064559f7e67f230ef7
Author:     Alessandro Barbieri <lssndrbarbieri <AT> gmail <DOT> com>
AuthorDate: Wed Mar 23 14:37:39 2022 +0000
Commit:     Alessandro Barbieri <lssndrbarbieri <AT> gmail <DOT> com>
CommitDate: Wed Mar 23 14:38:47 2022 +0000
URL:        https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=52a5f4e2

sys-cluster/scr: add 3.0

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

 sys-cluster/scr/Manifest       |   1 +
 sys-cluster/scr/scr-3.0.ebuild | 114 +++++++++++++++++++++++++++++++++++++++++
 2 files changed, 115 insertions(+)

diff --git a/sys-cluster/scr/Manifest b/sys-cluster/scr/Manifest
index 0ab6de12b..0eafc8db1 100644
--- a/sys-cluster/scr/Manifest
+++ b/sys-cluster/scr/Manifest
@@ -1 +1,2 @@
+DIST scr-3.0.tar.gz 1235509 BLAKE2B 
3a470c1f55d633993db6ca7c7980e6b8b34513370a8233202ac21d625f64c1630eafd6084735e81fe60e05f182b71114f51f8f4fe69df8cf609b1e6d6ded01f5
 SHA512 
168bffb7c0280094075879fa5c626dfc57f9004c9ebe09a97cf0d2b0e67c3979f31c7b39466586eb20562e6768ce576625a6d4d99f9ad9fe5ae02a82cfbc988f
 DIST scr-3.0_pre2.tar.gz 1231943 BLAKE2B 
a4d8e779edc4b48a5b13a0cff851496068076a8ae901f3c3d3ad2344708a0abc6b69ce71bd7313286a91844a87930e6fa5c097d1c5b15ebbc12247ba293f843f
 SHA512 
7b90b14cfbb6fa3020b6c3c3a7f5568963374d9fe7ad0b6962632f776c3699d6c38fa04800736d423350190542896ca9240033dca1e820f7f698c336518c891a

diff --git a/sys-cluster/scr/scr-3.0.ebuild b/sys-cluster/scr/scr-3.0.ebuild
new file mode 100644
index 000000000..436162f74
--- /dev/null
+++ b/sys-cluster/scr/scr-3.0.ebuild
@@ -0,0 +1,114 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DOCS_BUILDER="sphinx"
+DOCS_DIR="${S}/doc/rst"
+FORTRAN_NEEDED="fortran"
+MYPV="${PV/_pre/rc}"
+PYTHON_COMPAT=( python3_{8..10} pypy3 )
+
+inherit cmake python-single-r1 fortran-2 docs
+
+DESCRIPTION="Scalable Checkpoint / Restart Library"
+HOMEPAGE="
+       https://computing.llnl.gov/projects/scalable-checkpoint-restart-for-mpi
+       https://github.com/LLNL/scr
+"
+SRC_URI="https://github.com/LLNL/scr/archive/refs/tags/v${MYPV}.tar.gz -> 
${P}.tar.gz"
+S="${WORKDIR}/${PN}-${MYPV}"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="doc examples fcntl +flock +fortran mysql slurm syslog test threads 
txt-log +yogrt"
+
+RDEPEND="
+       ${PYTHON_DEPS}
+
+       app-shells/pdsh
+       >=sys-cluster/AXL-0.5.0
+       sys-cluster/dtcmp
+       sys-cluster/er
+       sys-cluster/KVTree
+       sys-cluster/rankstr
+       sys-cluster/redset
+       sys-cluster/spath
+       sys-libs/zlib
+       virtual/mpi
+
+       mysql? ( dev-db/mysql-connector-c  )
+       slurm? ( sys-cluster/slurm )
+       yogrt? ( sys-cluster/libyogrt[slurm?] )
+"
+DEPEND="${RDEPEND}"
+
+PATCHES=(
+       "${FILESDIR}/${PN}-3.0_pre2-shared-libscr_base.patch"
+       "${FILESDIR}/${PN}-3.0_pre2-no-static.patch"
+)
+REQUIRED_USE="
+       ${PYTHON_REQUIRED_USE}
+
+       ?? ( fcntl flock )
+"
+RESTRICT="!test? ( test )"
+
+pkg_setup() {
+       fortran-2_pkg_setup
+}
+
+src_configure() {
+       local lock="NONE"
+       use fcntl && lock="FCNTL"
+       use flock && lock="FLOCK"
+
+       local log="0"
+       use syslog && log="1"
+       use txt-log && log="1"
+
+       local resman="NONE"
+       use slurm && resman="SLURM"
+
+       local mycmakeargs=(
+               -DBUILD_PDSH=OFF
+               -DBUILD_SHARED_LIBS=ON
+               -DENABLE_CRAY_DW=OFF
+               -DENABLE_IBM_BBAPI=OFF
+               -DENABLE_PDSH=ON
+               -DSCR_LINK_STATIC=OFF
+
+               -DSCR_FILE_LOCK="${lock}"
+               -DSCR_LOG_ENABLE="${log}"
+               -DSCR_RESOURCE_MANAGER="${resman}"
+
+               -DENABLE_EXAMPLES=$(usex examples)
+               -DENABLE_FORTRAN=$(usex fortran)
+               -DENABLE_PTHREADS=$(usex threads)
+               -DENABLE_TESTS=$(usex test)
+               -DENABLE_YOGRT=$(usex yogrt)
+               -DSCR_LOG_SYSLOG_ENABLE=$(usex syslog 0 1)
+               -DSCR_LOG_TXT_ENABLE=$(usex txt-log 0 1)
+       )
+       cmake_src_configure
+}
+
+src_compile() {
+       cmake_src_compile
+       docs_compile
+}
+
+src_install() {
+       cmake_src_install
+#      find "${ED}" -name '*.a' -delete || die
+}
+
+src_test() {
+       if mountpoint -q /dev/shm ; then
+               cmake_src_test
+       else
+               eerror "make sure to mount /dev/shm or tests will fail"
+               die
+       fi
+}

Reply via email to