aboutsummaryrefslogtreecommitdiff
path: root/dev-libs
diff options
context:
space:
mode:
Diffstat (limited to 'dev-libs')
-rw-r--r--dev-libs/sobjectizer/Manifest1
-rw-r--r--dev-libs/sobjectizer/files/cmake-5.7.4.3.patch49
-rw-r--r--dev-libs/sobjectizer/metadata.xml16
-rw-r--r--dev-libs/sobjectizer/sobjectizer-5.7.4.2.ebuild30
4 files changed, 96 insertions, 0 deletions
diff --git a/dev-libs/sobjectizer/Manifest b/dev-libs/sobjectizer/Manifest
new file mode 100644
index 0000000..5df1391
--- /dev/null
+++ b/dev-libs/sobjectizer/Manifest
@@ -0,0 +1 @@
+DIST sobjectizer-5.7.4.2.gh.tar.gz 991321 BLAKE2B f83c42691aec6f0733246f9563ee534f9d13c4c3d666d1250b0fdd54adaf3f68e73d989aaf50d475e5cccb6e76f61ed7bc3e87baab36fb28f75cd8463ff782ce SHA512 b4a45ea27da6ea744df2daf339d7cc6dd29f692d161f426d4c69b8496cb2421bcf0f46ff695532ebc37b83d7a8f875b6ee9b88fa4cd2872836d6ae8e3352d76d
diff --git a/dev-libs/sobjectizer/files/cmake-5.7.4.3.patch b/dev-libs/sobjectizer/files/cmake-5.7.4.3.patch
new file mode 100644
index 0000000..09fda43
--- /dev/null
+++ b/dev-libs/sobjectizer/files/cmake-5.7.4.3.patch
@@ -0,0 +1,49 @@
+diff --git a/dev/so_5/CMakeLists.txt b/dev/so_5/CMakeLists.txt
+index a8ee686b..cb4c5553 100644
+--- a/dev/so_5/CMakeLists.txt
++++ b/dev/so_5/CMakeLists.txt
+@@ -17,6 +17,7 @@ if(NOT SOBJECTIZER_INSTALL)
+ endif()
+
+ include(cmake/target.cmake)
++include(GNUInstallDirs)
+
+ project(sobjectizer VERSION ${SO_5_VERSION} LANGUAGES CXX)
+
+@@ -164,14 +165,14 @@ if(SOBJECTIZER_BUILD_STATIC)
+ endif()
+
+ if(SOBJECTIZER_INSTALL)
+- set(SO_5_CMAKE_FILES_DEST "lib/cmake/sobjectizer")
++ set(SO_5_CMAKE_FILES_DEST "${CMAKE_INSTALL_LIBDIR}/cmake/sobjectizer")
+
+ install(
+ TARGETS ${SO_5_TARGETS_TO_INSTALL}
+ EXPORT SO_5_ALL_TARGETS
+- LIBRARY DESTINATION lib
+- ARCHIVE DESTINATION lib
+- RUNTIME DESTINATION bin
++ LIBRARY DESTINATION "${CMAKE_INSTALL_LIBDIR}"
++ ARCHIVE DESTINATION "${CMAKE_INSTALL_LIBDIR}"
++ RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}"
+ )
+ install(
+ EXPORT SO_5_ALL_TARGETS
+@@ -182,7 +183,7 @@ if(SOBJECTIZER_INSTALL)
+
+ if(SOBJECTIZER_BUILD_SHARED)
+ foreach(__extLibrary ${SO_5_EXT_LIBS})
+- install(FILES ${__extLibrary} DESTINATION lib)
++ install(FILES ${__extLibrary} DESTINATION "${CMAKE_INSTALL_LIBDIR}")
+ endforeach()
+ endif()
+
+@@ -192,7 +193,7 @@ if(SOBJECTIZER_INSTALL)
+ # Since v.5.7.2.3 install even files from impl subfolders
+ # because it could be necessary for projects like so5extra.
+ get_filename_component( DIR ${HEADER_FILE} PATH )
+- install( FILES ${HEADER_FILE} DESTINATION include/so_5/${DIR} )
++ install( FILES ${HEADER_FILE} DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/so_5/${DIR}" )
+ endforeach()
+
+ set(SO_5_CONFIG_VERSION_FILE "${CMAKE_CURRENT_BINARY_DIR}/sobjectizer-config-version.cmake")
diff --git a/dev-libs/sobjectizer/metadata.xml b/dev-libs/sobjectizer/metadata.xml
new file mode 100644
index 0000000..68818bf
--- /dev/null
+++ b/dev-libs/sobjectizer/metadata.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>julien@jroy.ca</email>
+ <name>Julien Roy</name>
+ </maintainer>
+ <longdescription>SObjectizer is one of a few cross-platform and OpenSource "actor frameworks" for C++. But SObjectizer supports not only Actor Model, but also Publish-Subscribe Model and CSP-like channels. The goal of SObjectizer is significant simplification of development of concurrent and multithreaded applications in C++.
+
+SObjectizer allows the creation of a concurrent app as a set of agent-objects which interact with each other through asynchronous messages. It handles message dispatching and provides a working context for message processing. And allows to tune those things by supplying various ready-to-use dispatchers.</longdescription>
+ <upstream>
+ <changelog>https://github.com/Stiffstream/sobjectizer/releases</changelog>
+ <bugs-to>https://github.com/Stiffstream/sobjectizer/issues</bugs-to>
+ <remote-id type="github">Stiffstream/sobjectizer</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-libs/sobjectizer/sobjectizer-5.7.4.2.ebuild b/dev-libs/sobjectizer/sobjectizer-5.7.4.2.ebuild
new file mode 100644
index 0000000..bee4198
--- /dev/null
+++ b/dev-libs/sobjectizer/sobjectizer-5.7.4.2.ebuild
@@ -0,0 +1,30 @@
+# Copyright 2022-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake
+
+DESCRIPTION="An implementation of Actor, Publish-Subscribe, and CSP"
+HOMEPAGE="https://github.com/Stiffstream/sobjectizer"
+SRC_URI="https://github.com/Stiffstream/${PN}/archive/v.${PV}.tar.gz -> ${P}.gh.tar.gz"
+S="${WORKDIR}/${PN}-v.${PV}"
+CMAKE_USE_DIR="${S}/dev"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="examples test"
+RESTRICT="!test? ( test )"
+
+PATCHES=(
+ "${FILESDIR}/cmake-5.7.4.3.patch"
+)
+
+src_configure() {
+ local mycmakeargs=(
+ $(usex examples -DBUILD_EXAMPLES=ON -DBUILD_EXAMPLES=OFF)
+ $(usex test -DBUILD_TESTS=ON -DBUILD_TESTS=OFF)
+ )
+ cmake_src_configure
+}