mirror of
https://github.com/gentoo-mirror/guru.git
synced 2026-07-20 20:43:09 -04:00
sys-cluster/scr: initial import
Signed-off-by: Alessandro Barbieri <lssndrbarbieri@gmail.com>
This commit is contained in:
1
sys-cluster/scr/Manifest
Normal file
1
sys-cluster/scr/Manifest
Normal file
@@ -0,0 +1 @@
|
||||
DIST scr-3.0_pre1.tar.gz 1629041 BLAKE2B c7922e208964b8456c65393c0f9b17530b3eb66ceab38bc682b1fb78b29f77f2d3a6c51c9c8380720c88606a8da3b34f9a088ed80198f3c4f2bfe6906faac6ef SHA512 3bf290a41cb8abbd7e08ab02580f1e4dd73758946fe0ba7bd861a5099f8396e382dc8b80a0a33b0d45ee929efa069bd7a6381e9ca6f11d9049e113ac9aec6793
|
||||
27
sys-cluster/scr/metadata.xml
Normal file
27
sys-cluster/scr/metadata.xml
Normal file
@@ -0,0 +1,27 @@
|
||||
<?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/LLNL/scr/issues</bugs-to>
|
||||
<remote-id type="github">LLNL/scr</remote-id>
|
||||
</upstream>
|
||||
<longdescription lang="en">
|
||||
The Scalable Checkpoint / Restart (SCR) library enables MPI applications to utilize distributed storage on Linux clusters to attain high file I/O bandwidth for checkpointing, restarting, and output in large-scale jobs. With SCR, jobs run more efficiently, recompute less work upon a failure, and reduce load on critical shared resources such as the parallel file system.
|
||||
</longdescription>
|
||||
<use>
|
||||
<flag name="fcntl">use fcntl as a file locking type</flag>
|
||||
<flag name="flock">use flock as a file locking type</flag>
|
||||
<flag name="fortran">Enables Fortran support</flag>
|
||||
<flag name="mysql">Enable use of mysql for logging SCR activities</flag>
|
||||
<flag name="pdsh">Enable use of pdsh for scalable restart and scavenge</flag>
|
||||
<flag name="pmix">use pmix as resource manager</flag>
|
||||
<flag name="slurm">use slurm as resource manager</flag>
|
||||
<flag name="syslog">Whether to enable syslog logging</flag>
|
||||
<flag name="txt-log">Whether to enable text file logging</flag>
|
||||
<flag name="yogrt">Enable use of yogrt for time remaining in a job allocation</flag>
|
||||
</use>
|
||||
</pkgmetadata>
|
||||
105
sys-cluster/scr/scr-3.0_pre1.ebuild
Normal file
105
sys-cluster/scr/scr-3.0_pre1.ebuild
Normal file
@@ -0,0 +1,105 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI="7"
|
||||
|
||||
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="
|
||||
http://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"
|
||||
|
||||
LICENSE="BSD"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64"
|
||||
IUSE="doc examples fcntl +flock +fortran mysql pdsh pmix slurm syslog txt-log +yogrt"
|
||||
|
||||
#cppr
|
||||
RDEPEND="
|
||||
${PYTHON_DEPS}
|
||||
|
||||
sys-cluster/AXL
|
||||
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 )
|
||||
pdsh? ( app-shells/pdsh )
|
||||
pmix? ( sys-cluster/pmix )
|
||||
slurm? ( sys-cluster/slurm )
|
||||
yogrt? ( sys-cluster/libyogrt[slurm?] )
|
||||
"
|
||||
DEPEND="${RDEPEND}"
|
||||
|
||||
REQUIRED_USE="
|
||||
${PYTHON_REQUIRED_USE}
|
||||
|
||||
?? ( pmix slurm )
|
||||
?? ( fcntl flock )
|
||||
"
|
||||
|
||||
pkg_setup() {
|
||||
fortran-2_pkg_setup
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local asyncapi="NONE" #INTEL_CPPR
|
||||
|
||||
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" #APRUN LSF
|
||||
use pmix && resman="PMIX"
|
||||
use slurm && resman="SLURM"
|
||||
|
||||
local mycmakeargs=(
|
||||
-DBUILD_PDSH=OFF
|
||||
-DENABLE_INTEL_CPPR=OFF
|
||||
-DENABLE_ENABLE_CRAY_DW=OFF
|
||||
-DENABLE_IBM_BBAPI=OF
|
||||
-DSCR_ASYNC_API="${asyncapi}"
|
||||
-DSCR_FILE_LOCK="${lock}"
|
||||
-DSCR_LINK_STATIC=OFF
|
||||
-DSCR_LOG_ENABLE="${log}"
|
||||
-DSCR_RESOURCE_MANAGER="${resman}"
|
||||
|
||||
-DENABLE_EXAMPLES=$(usex examples)
|
||||
-DENABLE_FORTRAN=$(usex fortran)
|
||||
-DENABLE_PDSH=$(usex pdsh)
|
||||
-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
|
||||
einstalldocs
|
||||
find "${ED}" -name '*.a' -delete || die
|
||||
}
|
||||
Reference in New Issue
Block a user