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
+}