sys-cluster/scr: add 3.0_pre2, drop 3.0_pre1

Signed-off-by: Alessandro Barbieri <lssndrbarbieri@gmail.com>
This commit is contained in:
Alessandro Barbieri 2021-10-30 21:00:11 +02:00
parent 4f210dd0ad
commit f65def2120
No known key found for this signature in database
GPG Key ID: 4E4140121372C837
5 changed files with 159 additions and 16 deletions

View File

@ -1 +1 @@
DIST scr-3.0_pre1.tar.gz 1629041 BLAKE2B c7922e208964b8456c65393c0f9b17530b3eb66ceab38bc682b1fb78b29f77f2d3a6c51c9c8380720c88606a8da3b34f9a088ed80198f3c4f2bfe6906faac6ef SHA512 3bf290a41cb8abbd7e08ab02580f1e4dd73758946fe0ba7bd861a5099f8396e382dc8b80a0a33b0d45ee929efa069bd7a6381e9ca6f11d9049e113ac9aec6793
DIST scr-3.0_pre2.tar.gz 1231943 BLAKE2B a4d8e779edc4b48a5b13a0cff851496068076a8ae901f3c3d3ad2344708a0abc6b69ce71bd7313286a91844a87930e6fa5c097d1c5b15ebbc12247ba293f843f SHA512 7b90b14cfbb6fa3020b6c3c3a7f5568963374d9fe7ad0b6962632f776c3699d6c38fa04800736d423350190542896ca9240033dca1e820f7f698c336518c891a

View File

@ -0,0 +1,76 @@
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -83,16 +83,6 @@
INSTALL(TARGETS scr DESTINATION ${CMAKE_INSTALL_LIBDIR})
ENDIF()
-ADD_LIBRARY(scr-static STATIC $<TARGET_OBJECTS:scr_o>)
-IF(SCR_LINK_STATIC)
- SET_TARGET_PROPERTIES(scr-static PROPERTIES LINK_SEARCH_START_STATIC 1)
- SET_TARGET_PROPERTIES(scr-static PROPERTIES LINK_SEARCH_END_STATIC 1)
-ENDIF(SCR_LINK_STATIC)
-TARGET_LINK_LIBRARIES(scr-static ${SCR_EXTERNAL_LIBS})
-
-SET_TARGET_PROPERTIES(scr-static PROPERTIES OUTPUT_NAME scr CLEAN_DIRECT_OUTPUT 1)
-INSTALL(TARGETS scr-static DESTINATION ${CMAKE_INSTALL_LIBDIR})
-
# Non-MPI library for CLI
ADD_LIBRARY(cliscr_noMPI_o OBJECT ${cliscr_noMPI_srcs})
@@ -103,16 +93,6 @@
INSTALL(TARGETS scr_base DESTINATION ${CMAKE_INSTALL_LIBDIR})
ENDIF(BUILD_SHARED_LIBS)
-ADD_LIBRARY(scr_base-static STATIC $<TARGET_OBJECTS:cliscr_noMPI_o>)
-IF(SCR_LINK_STATIC)
- SET_TARGET_PROPERTIES(scr_base-static PROPERTIES LINK_SEARCH_START_STATIC 1)
- SET_TARGET_PROPERTIES(scr_base-static PROPERTIES LINK_SEARCH_END_STATIC 1)
-ENDIF(SCR_LINK_STATIC)
-TARGET_LINK_LIBRARIES(scr_base-static ${SCR_EXTERNAL_SERIAL_LIBS})
-
-SET_TARGET_PROPERTIES(scr_base-static PROPERTIES OUTPUT_NAME scr_base CLEAN_DIRECT_OUTPUT 1)
-INSTALL(TARGETS scr_base-static DESTINATION ${CMAKE_INSTALL_LIBDIR})
-
# Fortran
IF(ENABLE_FORTRAN)
IF(BUILD_SHARED_LIBS)
@@ -121,17 +101,6 @@
SET_TARGET_PROPERTIES(scrf PROPERTIES OUTPUT_NAME scrf CLEAN_DIRECT_OUTPUT 1)
INSTALL(TARGETS scrf DESTINATION ${CMAKE_INSTALL_LIBDIR})
ENDIF()
-
- ADD_LIBRARY(scrf-static STATIC scrf.c $<TARGET_OBJECTS:scr_o>)
- IF(SCR_LINK_STATIC)
- SET_TARGET_PROPERTIES(scrf-static PROPERTIES LINK_SEARCH_START_STATIC 1)
- SET_TARGET_PROPERTIES(scrf-static PROPERTIES LINK_SEARCH_END_STATIC 1)
- TARGET_LINK_LIBRARIES(scrf-static ${SCR_EXTERNAL_LIBS})
- ENDIF(SCR_LINK_STATIC)
- TARGET_LINK_LIBRARIES(scrf-static ${SCR_EXTERNAL_LIBS})
-
- SET_TARGET_PROPERTIES(scrf-static PROPERTIES OUTPUT_NAME scrf CLEAN_DIRECT_OUTPUT 1)
- INSTALL(TARGETS scrf-static DESTINATION ${CMAKE_INSTALL_LIBDIR})
ENDIF(ENABLE_FORTRAN)
###########
@@ -164,21 +133,13 @@
# Build and install C binaries
FOREACH(bin IN ITEMS ${cliscr_c_bins})
ADD_EXECUTABLE(${bin} ${bin}.c)
- IF(SCR_LINK_STATIC)
- TARGET_LINK_LIBRARIES(${bin} scr_base-static)
- ELSE(SCR_LINK_STATIC)
TARGET_LINK_LIBRARIES(${bin} scr_base)
- ENDIF(SCR_LINK_STATIC)
INSTALL(PROGRAMS ${CMAKE_CURRENT_BINARY_DIR}/${bin} DESTINATION ${CMAKE_INSTALL_BINDIR})
ENDFOREACH(bin IN ITEMS ${cliscr_c_bins})
# Build and install CLI binaries that link full SCR library
FOREACH(bin IN ITEMS ${cliscr_scr_bins})
ADD_EXECUTABLE(${bin} ${bin}.c)
- IF(SCR_LINK_STATIC)
- TARGET_LINK_LIBRARIES(${bin} scr-static)
- ELSE(SCR_LINK_STATIC)
TARGET_LINK_LIBRARIES(${bin} scr)
- ENDIF(SCR_LINK_STATIC)
INSTALL(PROGRAMS ${CMAKE_CURRENT_BINARY_DIR}/${bin} DESTINATION ${CMAKE_INSTALL_BINDIR})
ENDFOREACH(bin IN ITEMS ${cliscr_scr_bins})

View File

@ -0,0 +1,70 @@
From 3cb02f312447731b5a949aca388d43b651b53a0d Mon Sep 17 00:00:00 2001
From: Alessandro Barbieri <lssndrbarbieri@gmail.com>
Date: Sat, 30 Oct 2021 20:28:49 +0200
Subject: [PATCH 1/2] build libscr_base.so
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -94,8 +94,24 @@ SET_TARGET_PROPERTIES(scr-static PROPERTIES OUTPUT_NAME scr CLEAN_DIRECT_OUTPUT
INSTALL(TARGETS scr-static DESTINATION ${CMAKE_INSTALL_LIBDIR})
# Non-MPI library for CLI
-ADD_LIBRARY(scr_base STATIC ${cliscr_noMPI_srcs})
-TARGET_LINK_LIBRARIES(scr_base ${SCR_EXTERNAL_SERIAL_LIBS})
+ADD_LIBRARY(cliscr_noMPI_o OBJECT ${cliscr_noMPI_srcs})
+
+IF(BUILD_SHARED_LIBS)
+ ADD_LIBRARY(scr_base SHARED $<TARGET_OBJECTS:cliscr_noMPI_o>)
+ TARGET_LINK_LIBRARIES(scr_base ${SCR_EXTERNAL_SERIAL_LIBS})
+ SET_TARGET_PROPERTIES(scr_base PROPERTIES OUTPUT_NAME scr_base CLEAN_DIRECT_OUTPUT 1)
+ INSTALL(TARGETS scr_base DESTINATION ${CMAKE_INSTALL_LIBDIR})
+ENDIF(BUILD_SHARED_LIBS)
+
+ADD_LIBRARY(scr_base-static STATIC $<TARGET_OBJECTS:cliscr_noMPI_o>)
+IF(SCR_LINK_STATIC)
+ SET_TARGET_PROPERTIES(scr_base-static PROPERTIES LINK_SEARCH_START_STATIC 1)
+ SET_TARGET_PROPERTIES(scr_base-static PROPERTIES LINK_SEARCH_END_STATIC 1)
+ENDIF(SCR_LINK_STATIC)
+TARGET_LINK_LIBRARIES(scr_base-static ${SCR_EXTERNAL_SERIAL_LIBS})
+
+SET_TARGET_PROPERTIES(scr_base-static PROPERTIES OUTPUT_NAME scr_base CLEAN_DIRECT_OUTPUT 1)
+INSTALL(TARGETS scr_base-static DESTINATION ${CMAKE_INSTALL_LIBDIR})
# Fortran
IF(ENABLE_FORTRAN)
@@ -147,9 +163,13 @@ LIST(APPEND cliscr_c_bins
# Build and install C binaries
FOREACH(bin IN ITEMS ${cliscr_c_bins})
- ADD_EXECUTABLE(${bin} ${bin}.c)
- TARGET_LINK_LIBRARIES(${bin} scr_base)
- INSTALL(PROGRAMS ${CMAKE_CURRENT_BINARY_DIR}/${bin} DESTINATION ${CMAKE_INSTALL_BINDIR})
+ ADD_EXECUTABLE(${bin} ${bin}.c)
+ IF(SCR_LINK_STATIC)
+ TARGET_LINK_LIBRARIES(${bin} scr_base-static)
+ ELSE(SCR_LINK_STATIC)
+ TARGET_LINK_LIBRARIES(${bin} scr_base)
+ ENDIF(SCR_LINK_STATIC)
+ INSTALL(PROGRAMS ${CMAKE_CURRENT_BINARY_DIR}/${bin} DESTINATION ${CMAKE_INSTALL_BINDIR})
ENDFOREACH(bin IN ITEMS ${cliscr_c_bins})
# Build and install CLI binaries that link full SCR library
From e3d50ca7cab309273f3195c71af14352059d83aa Mon Sep 17 00:00:00 2001
From: Alessandro Barbieri <lssndrbarbieri@gmail.com>
Date: Sat, 30 Oct 2021 20:55:07 +0200
Subject: [PATCH 2/2] remove source files of cli binaries from library
to avoid `multiple definition of main`
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -32,9 +32,6 @@ LIST(APPEND cliscr_noMPI_srcs
scr_meta.c
scr_param.c
scr_util.c
- scr_rebuild_xor.c
- scr_rebuild_partner.c
- scr_rebuild_rs.c
)
LIST(APPEND libscr_srcs

View File

@ -17,7 +17,6 @@ The Scalable Checkpoint / Restart (SCR) library enables MPI applications to util
<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="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>

View File

@ -1,7 +1,7 @@
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="7"
EAPI=8
DOCS_BUILDER="sphinx"
DOCS_DIR="${S}/doc/rst"
@ -22,14 +22,13 @@ S="${WORKDIR}/${PN}-${MYPV}"
LICENSE="BSD"
SLOT="0"
KEYWORDS="~amd64"
IUSE="doc examples fcntl +flock +fortran mysql pmix slurm syslog test txt-log +yogrt"
IUSE="doc examples fcntl +flock +fortran mysql slurm syslog test txt-log +yogrt"
#cppr
RDEPEND="
${PYTHON_DEPS}
app-shells/pdsh
sys-cluster/AXL
>=sys-cluster/AXL-0.5.0
sys-cluster/dtcmp
sys-cluster/er
sys-cluster/KVTree
@ -40,16 +39,18 @@ RDEPEND="
virtual/mpi
mysql? ( dev-db/mysql-connector-c )
pmix? ( sys-cluster/pmix )
slurm? ( sys-cluster/slurm )
yogrt? ( sys-cluster/libyogrt[slurm?] )
"
DEPEND="${RDEPEND}"
PATCHES=(
"${FILESDIR}/${P}-shared-libscr_base.patch"
"${FILESDIR}/${P}-no-static.patch"
)
REQUIRED_USE="
${PYTHON_REQUIRED_USE}
?? ( pmix slurm )
?? ( fcntl flock )
"
RESTRICT="!test? ( test )"
@ -59,8 +60,6 @@ pkg_setup() {
}
src_configure() {
local asyncapi="NONE" #INTEL_CPPR
local lock="NONE"
use fcntl && lock="FCNTL"
use flock && lock="FLOCK"
@ -70,18 +69,17 @@ src_configure() {
use txt-log && log="1"
local resman="NONE"
use pmix && resman="PMIX"
use slurm && resman="SLURM"
local mycmakeargs=(
-DBUILD_PDSH=OFF
-DENABLE_INTEL_CPPR=OFF
-DENABLE_ENABLE_CRAY_DW=OFF
-DBUILD_SHARED_LIBS=ON
-DENABLE_CRAY_DW=OFF
-DENABLE_IBM_BBAPI=OFF
-DENABLE_PDSH=ON
-DSCR_ASYNC_API="${asyncapi}"
-DSCR_FILE_LOCK="${lock}"
-DSCR_LINK_STATIC=OFF
-DSCR_FILE_LOCK="${lock}"
-DSCR_LOG_ENABLE="${log}"
-DSCR_RESOURCE_MANAGER="${resman}"
@ -102,5 +100,5 @@ src_compile() {
src_install() {
cmake_src_install
find "${ED}" -name '*.a' -delete || die
# find "${ED}" -name '*.a' -delete || die
}