mirror of
https://github.com/gentoo-mirror/guru.git
synced 2026-07-10 15:45:15 -04:00
dev-libs/KVTree: rename sys-cluster/KVTree
Signed-off-by: Alessandro Barbieri <lssndrbarbieri@gmail.com>
This commit is contained in:
58
dev-libs/KVTree/KVTree-1.2.0.ebuild
Normal file
58
dev-libs/KVTree/KVTree-1.2.0.ebuild
Normal file
@@ -0,0 +1,58 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit cmake
|
||||
|
||||
DESCRIPTION="KVTree provides a fully extensible C data structure modeled after Perl hashes"
|
||||
HOMEPAGE="https://github.com/ECP-VeloC/KVTree"
|
||||
SRC_URI="https://github.com/ECP-VeloC/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
|
||||
|
||||
KEYWORDS="~amd64"
|
||||
LICENSE="MIT"
|
||||
SLOT="0"
|
||||
IUSE="fcntl +flock mpi test"
|
||||
|
||||
RDEPEND="
|
||||
mpi? ( virtual/mpi )
|
||||
sys-libs/zlib
|
||||
"
|
||||
DEPEND="${RDEPEND}"
|
||||
BDEPEND="
|
||||
>=dev-util/cmake-2.8
|
||||
app-admin/chrpath
|
||||
"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}/${PN}-no-install-readme.patch"
|
||||
"${FILESDIR}/${P}-no-static.patch"
|
||||
)
|
||||
REQUIRED_USE="?? ( fcntl flock )"
|
||||
RESTRICT="test? ( userpriv ) !test? ( test )"
|
||||
|
||||
src_configure() {
|
||||
local flock="NONE"
|
||||
use fcntl && flock="FCNTL"
|
||||
use flock && flock="FLOCK"
|
||||
|
||||
local mycmakeargs=(
|
||||
-DENABLE_TESTS=$(usex test)
|
||||
-DMPI="$(usex mpi ON OFF)"
|
||||
-DKVTREE_FILE_LOCK="${flock}"
|
||||
|
||||
-DBUILD_SHARED_LIBS=ON
|
||||
-DKVTREE_LINK_STATIC=FALSE
|
||||
)
|
||||
cmake_src_configure
|
||||
}
|
||||
|
||||
src_install() {
|
||||
chrpath -d "${BUILD_DIR}/src/kvtree_print" || die
|
||||
cmake_src_install
|
||||
chrpath -d "${ED}/usr/$(get_libdir)/libkvtree.so" || die
|
||||
chrpath -d "${ED}/usr/$(get_libdir)/libkvtree_base.so" || die
|
||||
dodoc doc/rst/*.rst
|
||||
docinto "${DOCSDIR}/users"
|
||||
dodoc -r doc/rst/users/.
|
||||
}
|
||||
64
dev-libs/KVTree/KVTree-1.3.0.ebuild
Normal file
64
dev-libs/KVTree/KVTree-1.3.0.ebuild
Normal file
@@ -0,0 +1,64 @@
|
||||
# Copyright 1999-2022 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit cmake
|
||||
|
||||
DESCRIPTION="KVTree provides a fully extensible C data structure modeled after Perl hashes"
|
||||
HOMEPAGE="https://github.com/ECP-VeloC/KVTree"
|
||||
SRC_URI="https://github.com/ECP-VeloC/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
|
||||
|
||||
KEYWORDS="~amd64"
|
||||
LICENSE="MIT"
|
||||
SLOT="0"
|
||||
IUSE="fcntl +flock mpi test"
|
||||
|
||||
RDEPEND="
|
||||
mpi? ( virtual/mpi )
|
||||
sys-libs/zlib
|
||||
"
|
||||
DEPEND="${RDEPEND}"
|
||||
BDEPEND="app-admin/chrpath"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}/${PN}-no-install-readme.patch"
|
||||
"${FILESDIR}/${PN}-1.2.0-no-static.patch"
|
||||
)
|
||||
REQUIRED_USE="?? ( fcntl flock )"
|
||||
RESTRICT="test? ( userpriv ) !test? ( test )"
|
||||
|
||||
src_configure() {
|
||||
local flock="NONE"
|
||||
use fcntl && flock="FCNTL"
|
||||
use flock && flock="FLOCK"
|
||||
|
||||
local mycmakeargs=(
|
||||
-DENABLE_TESTS=$(usex test)
|
||||
-DMPI="$(usex mpi ON OFF)"
|
||||
-DKVTREE_FILE_LOCK="${flock}"
|
||||
|
||||
-DBUILD_SHARED_LIBS=ON
|
||||
-DKVTREE_LINK_STATIC=FALSE
|
||||
)
|
||||
cmake_src_configure
|
||||
}
|
||||
|
||||
src_install() {
|
||||
chrpath -d "${BUILD_DIR}/src/kvtree_print" || die
|
||||
cmake_src_install
|
||||
chrpath -d "${ED}/usr/$(get_libdir)/libkvtree.so" || die
|
||||
chrpath -d "${ED}/usr/$(get_libdir)/libkvtree_base.so" || die
|
||||
dodoc doc/rst/*.rst
|
||||
docinto "${DOCSDIR}/users"
|
||||
dodoc -r doc/rst/users/.
|
||||
}
|
||||
|
||||
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
|
||||
}
|
||||
2
dev-libs/KVTree/Manifest
Normal file
2
dev-libs/KVTree/Manifest
Normal file
@@ -0,0 +1,2 @@
|
||||
DIST KVTree-1.2.0.tar.gz 61844 BLAKE2B 4bd7a975f3c2f510b7ade983c393ac86cb9bcb7216776fd59db8cc258f869f1157f5a08aee3c19fb8e23c796928b6b44c9e3dd95eee13c7e4a4c1fdf3b5d8f00 SHA512 ddc6f2b32bcf8e1a369a17b238d4454679f3a8a4fc1a9fa18e5317418cf73c7d0db2169b53513e15ad05e1f22c80cdd9d66cddbc8aa2ad2a1c95d4910b3d7f88
|
||||
DIST KVTree-1.3.0.tar.gz 62063 BLAKE2B 205d6cec078857846a6faa4544901e1d381e7e695fd7935ca690cabf9d65d51d5dda7a4ab5f9afd0ebb378ef6205d6982740ee71504e07f4db94be0775b8e27d SHA512 578c452e07ebf1df36f56fe740fac171535fc8ab421f1f211eab89438207a459b2376b2b645b6ca393f1c5c1c484fbfd467230598b1a4e785e429e521c5c22fd
|
||||
47
dev-libs/KVTree/files/KVTree-1.2.0-no-static.patch
Normal file
47
dev-libs/KVTree/files/KVTree-1.2.0-no-static.patch
Normal file
@@ -0,0 +1,47 @@
|
||||
--- a/src/CMakeLists.txt
|
||||
+++ b/src/CMakeLists.txt
|
||||
@@ -57,16 +57,6 @@
|
||||
INSTALL(TARGETS kvtree DESTINATION ${CMAKE_INSTALL_LIBDIR})
|
||||
ENDIF()
|
||||
|
||||
-ADD_LIBRARY(kvtree-static STATIC $<TARGET_OBJECTS:kvtree_o>)
|
||||
-IF(KVTREE_LINK_STATIC)
|
||||
- SET_TARGET_PROPERTIES(kvtree-static PROPERTIES LINK_SEARCH_START_STATIC 1)
|
||||
- SET_TARGET_PROPERTIES(kvtree-static PROPERTIES LINK_SEARCH_END_STATIC 1)
|
||||
-ENDIF(KVTREE_LINK_STATIC)
|
||||
-TARGET_LINK_LIBRARIES(kvtree-static ${KVTREE_EXTERNAL_LIBS})
|
||||
-
|
||||
-SET_TARGET_PROPERTIES(kvtree-static PROPERTIES OUTPUT_NAME kvtree CLEAN_DIRECT_OUTPUT 1)
|
||||
-INSTALL(TARGETS kvtree-static DESTINATION ${CMAKE_INSTALL_LIBDIR})
|
||||
-
|
||||
# KVTREE base Library (no MPI)
|
||||
ADD_LIBRARY(kvtree_noMPI_o OBJECT ${libkvtree_noMPI_srcs})
|
||||
|
||||
@@ -77,16 +67,6 @@
|
||||
INSTALL(TARGETS kvtree_base DESTINATION ${CMAKE_INSTALL_LIBDIR})
|
||||
ENDIF(BUILD_SHARED_LIBS)
|
||||
|
||||
-ADD_LIBRARY(kvtree_base-static STATIC $<TARGET_OBJECTS:kvtree_noMPI_o>)
|
||||
-IF(KVTREE_LINK_STATIC)
|
||||
- SET_TARGET_PROPERTIES(kvtree_base-static PROPERTIES LINK_SEARCH_START_STATIC 1)
|
||||
- SET_TARGET_PROPERTIES(kvtree_base-static PROPERTIES LINK_SEARCH_END_STATIC 1)
|
||||
-ENDIF(KVTREE_LINK_STATIC)
|
||||
-TARGET_LINK_LIBRARIES(kvtree_base-static ${KVTREE_SERIAL_LIBS})
|
||||
-
|
||||
-SET_TARGET_PROPERTIES(kvtree_base-static PROPERTIES OUTPUT_NAME kvtree_base CLEAN_DIRECT_OUTPUT 1)
|
||||
-INSTALL(TARGETS kvtree_base-static DESTINATION ${CMAKE_INSTALL_LIBDIR})
|
||||
-
|
||||
###########
|
||||
# CLI KVTREE #
|
||||
###########
|
||||
@@ -99,10 +79,6 @@
|
||||
# Build and install C binaries
|
||||
FOREACH(bin IN ITEMS ${clikvtree_c_bins})
|
||||
ADD_EXECUTABLE(${bin} ${bin}.c)
|
||||
- IF(KVTREE_LINK_STATIC)
|
||||
- TARGET_LINK_LIBRARIES(${bin} kvtree-static)
|
||||
- ELSE()
|
||||
TARGET_LINK_LIBRARIES(${bin} kvtree)
|
||||
- ENDIF()
|
||||
INSTALL(PROGRAMS ${CMAKE_CURRENT_BINARY_DIR}/${bin} DESTINATION ${CMAKE_INSTALL_BINDIR})
|
||||
ENDFOREACH(bin IN ITEMS ${clikvtree_c_bins})
|
||||
12
dev-libs/KVTree/files/KVTree-no-install-readme.patch
Normal file
12
dev-libs/KVTree/files/KVTree-no-install-readme.patch
Normal file
@@ -0,0 +1,12 @@
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -87,9 +87,6 @@
|
||||
SET_SOURCE_FILES_PROPERTIES(config.h.in PROPERTIES GENERATED FALSE)
|
||||
SET_SOURCE_FILES_PROPERTIES(${PROJECT_BINARY_DIR}/config.h PROPERTIES GENERATED TRUE)
|
||||
|
||||
-# Special Install Files
|
||||
-INSTALL(FILES README.md DESTINATION ${CMAKE_INSTALL_DATADIR}/kvtree)
|
||||
-
|
||||
# Package
|
||||
SET(CPACK_PACKAGE_DESCRIPTION_SUMMARY "KV Storage Library for Perl style hashes")
|
||||
SET(CPACK_PACKAGE_VENDOR "Lawrence Livermore National Laboratory")
|
||||
18
dev-libs/KVTree/metadata.xml
Normal file
18
dev-libs/KVTree/metadata.xml
Normal file
@@ -0,0 +1,18 @@
|
||||
<?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>
|
||||
<remote-id type="github">ECP-VeloC/KVTree</remote-id>
|
||||
</upstream>
|
||||
<use>
|
||||
<flag name="fcntl">Set the type of file locking to fcntl.</flag>
|
||||
<flag name="flock">Set the type of file locking to flock.</flag>
|
||||
</use>
|
||||
<longdescription lang="en">Each KVTree object contains a list of key/value pairs. Each key is a string, each value is another kvtree object. This is a nested data structures, similar to a python dict or perl hash. The library provides functions to serialize a kvtree object to / from a file. It also optionally provides MPI send / recv functions to transfer an object from one process to another.
|
||||
In addition to getter and setter utilities, this library provides serialization (for persisting an KVTree to a file) and optional MPI functionality.
|
||||
</longdescription>
|
||||
</pkgmetadata>
|
||||
Reference in New Issue
Block a user