commit: f5cf94d01fc7497eb817ddda5f4d42cfac0c9c48
Author: Alessandro Barbieri <lssndrbarbieri <AT> gmail <DOT> com>
AuthorDate: Thu Aug 19 22:19:04 2021 +0000
Commit: Florian Schmaus <flow <AT> gentoo <DOT> org>
CommitDate: Thu Aug 19 22:20:58 2021 +0000
URL: https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=f5cf94d0
sys-cluster/veloc: add 1.5, drop 1.2
Signed-off-by: Alessandro Barbieri <lssndrbarbieri <AT> gmail.com>
sys-cluster/veloc/VELOC-1.5: cleanup
Signed-off-by: Alessandro Barbieri <lssndrbarbieri <AT> gmail.com>
sys-cluster/veloc/Manifest | 2 +-
sys-cluster/veloc/files/veloc-strip-cflags.patch | 11 ++++
sys-cluster/veloc/metadata.xml | 9 +--
.../veloc/{veloc-1.2.ebuild => veloc-1.5.ebuild} | 64 +++++++++++-----------
4 files changed, 50 insertions(+), 36 deletions(-)
diff --git a/sys-cluster/veloc/Manifest b/sys-cluster/veloc/Manifest
index f26009415..33ca5a480 100644
--- a/sys-cluster/veloc/Manifest
+++ b/sys-cluster/veloc/Manifest
@@ -1 +1 @@
-DIST veloc-1.2.tar.gz 243142 BLAKE2B
ef3d37dd2d02734e20f1d540abcd29d2a4b8a78754a5ffa9994f458d5ed32e753c892570f9780eea966b90c0ff2995cf710e21efc9c64c88f1d39c5b1b422521
SHA512
3ed2549a67cea15b55d2da3b9ca4e3bd9c08ad8c62ee79c0f3006f36d3de8501ad9ae39bd9dffe2ca3c3b4ba365a190ec65c9ae149ed4a4c14b45faf27b3dd9f
+DIST veloc-1.5.tar.gz 252563 BLAKE2B
03e5957990f449e7e3ac9a543ce1317c2347e965c455dcd29d0ed525c93d3e4134592cce73fa388af807c293e8ba7db3943dd039400b86878b7bc91b4956a76d
SHA512
618d30b9e1e28882fdb3559bd65ed52b2541dcd1aeb04fcc2943ed96501fa3219c8a3dc32861f1c14454e6e42a6a04b1affd1472a770be9e7ae4525eb43cc755
diff --git a/sys-cluster/veloc/files/veloc-strip-cflags.patch
b/sys-cluster/veloc/files/veloc-strip-cflags.patch
new file mode 100644
index 000000000..413bb9b44
--- /dev/null
+++ b/sys-cluster/veloc/files/veloc-strip-cflags.patch
@@ -0,0 +1,11 @@
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -4,7 +4,7 @@
+ ##### Global settings
+ include(GNUInstallDirs)
+ list(APPEND CMAKE_MODULE_PATH "${PROJECT_SOURCE_DIR}/cmake")
+-add_definitions(-O2 -g -Wall -D__BENCHMARK -D__ASSERT -D__INFO)
++add_definitions( -Wall -D__BENCHMARK -D__ASSERT -D__INFO)
+ set(CMAKE_CXX_STANDARD 14)
+
+ ##### Configuration setting
diff --git a/sys-cluster/veloc/metadata.xml b/sys-cluster/veloc/metadata.xml
index e87dd08cd..540acd146 100644
--- a/sys-cluster/veloc/metadata.xml
+++ b/sys-cluster/veloc/metadata.xml
@@ -9,14 +9,15 @@
<remote-id type="github">ECP-VeloC/VELOC</remote-id>
</upstream>
<longdescription lang="en">VeloC is a multi-level checkpoint/restart runtime
that delivers high performance and scalability for complex heterogeneous
storage hierarchies without sacrificing ease of use and flexibility.
-
It is primarily used as a fault-tolerance tool for tightly coupled HPC
applications running on supercomputing infrastructure but is essential in many
other use cases: suspend-resume, migration, debugging.
-
VeloC is a collaboration between Argonne National Laboratory and Lawrence
Livermore National Laboratory as part of the Exascale Computing Project.
</longdescription>
<use>
- <flag name="alps">Use ALPS (Application Level Placement Scheduler) as
resource manager</flag>
- <flag name="lsf">Use LFS (Load Sharing Facility) as resource manager</flag>
+ <!--<flag name="alps">Use ALPS (Application Level Placement Scheduler) as
resource manager</flag>-->
+ <!--<flag name="lsf">Use LFS (Load Sharing Facility) as resource
manager</flag>-->
<flag name="slurm">Use <pkg>sys-cluster/slurm</pkg> as resource
manager</flag>
+ <flag name="comm-queue-ipc">Use ipc as the communication protocol between
client library and active backend</flag>
+ <flag name="comm-queue-socket">Use socket as the communication protocol
between client library and active backend</flag>
+ <!--<flag name="comm-queue-thallium">Use as the communication protocol
between client library and active backend</flag>-->
</use>
</pkgmetadata>
diff --git a/sys-cluster/veloc/veloc-1.2.ebuild
b/sys-cluster/veloc/veloc-1.5.ebuild
similarity index 54%
rename from sys-cluster/veloc/veloc-1.2.ebuild
rename to sys-cluster/veloc/veloc-1.5.ebuild
index 50b6605b1..1f4754c3d 100644
--- a/sys-cluster/veloc/veloc-1.2.ebuild
+++ b/sys-cluster/veloc/veloc-1.5.ebuild
@@ -1,67 +1,69 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI="7"
+EAPI=7
DISTUTILS_USE_SETUPTOOLS=no
-PYTHON_COMPAT=( python3_{7,8} )
+PYTHON_COMPAT=( python3_{8..10} )
inherit cmake distutils-r1
DESCRIPTION="Very-Low Overhead Checkpointing System"
HOMEPAGE="https://github.com/ECP-VeloC/VELOC"
-SRC_URI="https://github.com/ECP-VeloC/${PN^^}/archive/${P}.tar.gz"
+SRC_URI="https://github.com/ECP-VeloC/VELOC/archive/refs/tags/${PV}.tar.gz ->
${P}.tar.gz"
+S="${WORKDIR}/${PN^^}-${PV}"
LICENSE="MIT"
SLOT="0"
KEYWORDS="~amd64"
-IUSE="alps lsf python +slurm"
-# Tests not working with python yet
-RESTRICT="python? ( test )"
-
-REQUIRED_USE="
- ?? ( alps lsf slurm )
+IUSE_COMM_QUEUE="
+ +comm-queue-ipc
+ comm-queue-socket
"
+# comm-queue-thallium
+IUSE_EXPAND="COMM_QUEUE"
+IUSE="${IUSE_COMM_QUEUE} python +slurm" #alps lsf
RDEPEND="
+ comm-queue-ipc? ( dev-libs/boost )
slurm? ( sys-cluster/slurm )
app-shells/pdsh
- >=dev-libs/boost-1.60.0
+ dev-libs/openssl
sys-cluster/AXL
sys-cluster/er
virtual/mpi
"
+# comm-queue-thallium? ( thallium )
DEPEND="${RDEPEND}"
-BDEPEND="
- >=dev-util/cmake-2.8
-"
+BDEPEND=">=dev-util/cmake-2.8"
-S="${WORKDIR}/${PN^^}-${P}"
+PATCHES=( "${FILESDIR}/${PN}-strip-cflags.patch" )
+# Tests not working with python yet
+#RESTRICT="python? ( test )"
+REQUIRED_USE="
+ ^^ ( ${IUSE_COMM_QUEUE/+/} )
+"
+# ?? ( alps lsf slurm )
distutils_enable_sphinx "${S}/docs" --no-autodoc
-src_prepare() {
- #strip CFLAGS
- sed -i 's/-O2 -g//g' CMakeLists.txt || die
- sed -i 's/LIBRARY DESTINATION lib/LIBRARY DESTINATION
${CMAKE_INSTALL_LIBDIR}/g' src/modules/CMakeLists.txt || die
- sed -i 's/LIBRARY DESTINATION lib/LIBRARY DESTINATION
${CMAKE_INSTALL_LIBDIR}/g' src/lib/CMakeLists.txt || die
- sed -i 's/LIBRARY DESTINATION lib/LIBRARY DESTINATION
${CMAKE_INSTALL_LIBDIR}/g' src/backend/CMakeLists.txt || die
- #do not auto install README
-# sed -i '/FILES README.md DESTINATION/d' CMakeLists.txt || die
- default
- cmake_src_prepare
-}
-
src_configure() {
- RESMAN="NONE"
- use alps && RESMAN="ALPS"
- use lsf && RESMAN="LSF"
- use slurm && RESMAN="SLURM"
+ local resman="NONE"
+# use alps && resman="ALPS"
+# use lsf && resman="LSF"
+ use slurm && resman="SLURM"
+
+ local queue
+ use comm-queue-ipc && queue="ipc_queue"
+ use comm-queue-socket && queue="socket_queue"
+# use comm-queue-thallium && queue="thallium_queue"
local mycmakeargs=(
-DCMAKE_INSTALL_LIBDIR="$(get_libdir)"
+ -DCOMM_QUEUE="${queue}"
+ -DVELOC_RESOURCE_MANAGER="${resman}"
-DX_LIBDIR="$(get_libdir)"
)
cmake_src_configure