diff options
-rw-r--r-- | dev-libs/sobjectizer/Manifest | 1 | ||||
-rw-r--r-- | dev-libs/sobjectizer/files/cmake-5.7.4.3.patch | 49 | ||||
-rw-r--r-- | dev-libs/sobjectizer/metadata.xml | 16 | ||||
-rw-r--r-- | dev-libs/sobjectizer/sobjectizer-5.7.4.2.ebuild | 30 |
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 +} |