commit:     10104d978bce6ec7df4ba94bdb9dc5b8f16638a9
Author:     Marius Norvoll Sletten <mariusns <AT> gmail <DOT> com>
AuthorDate: Fri Sep  1 11:31:47 2023 +0000
Commit:     Marius N Sletten <mariusns <AT> gmail <DOT> com>
CommitDate: Fri Sep  1 11:31:47 2023 +0000
URL:        https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=10104d97

Cyclonedds/Iceoryx ebuilds

Signed-off-by: Marius Norvoll Sletten <mariusns <AT> gmail.com>

 sys-libs/cyclonedds/Manifest                       |  1 +
 sys-libs/cyclonedds/cyclonedds-0.10.3.ebuild       | 66 ++++++++++++++++
 sys-libs/cyclonedds/cyclonedds-9999.ebuild         | 66 ++++++++++++++++
 .../files/cyclonedds-0.10.3-get_kind.patch         | 87 ++++++++++++++++++++++
 sys-libs/iceoryx/Manifest                          |  1 +
 sys-libs/iceoryx/iceoryx-2.0.3.ebuild              | 63 ++++++++++++++++
 sys-libs/iceoryx/iceoryx-9999.ebuild               | 62 +++++++++++++++
 7 files changed, 346 insertions(+)

diff --git a/sys-libs/cyclonedds/Manifest b/sys-libs/cyclonedds/Manifest
new file mode 100644
index 0000000000..1043fbfb81
--- /dev/null
+++ b/sys-libs/cyclonedds/Manifest
@@ -0,0 +1 @@
+DIST cyclonedds-0.10.3.tar.gz 6978637 BLAKE2B 
341b046d958c9f9f4200c5518525f42191d2e3954160cdffcc8bccbd5e43fe87e9e66bc18b4ae47cbb9b0f7f47b887936190cb611cfb02f61d6d983cea40763d
 SHA512 
02cc883a892e07865b7b362919d0a756db8c20f2d4ff7912738ccaaa512a83db4114a4da74f87b5bf743891871402cc4e9d472eaf6718ef409776fa2817ce288

diff --git a/sys-libs/cyclonedds/cyclonedds-0.10.3.ebuild 
b/sys-libs/cyclonedds/cyclonedds-0.10.3.ebuild
new file mode 100644
index 0000000000..8cae1d3ecf
--- /dev/null
+++ b/sys-libs/cyclonedds/cyclonedds-0.10.3.ebuild
@@ -0,0 +1,66 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake
+
+
+if [[ ${PV} == *9999 ]] ; then
+       inherit git-r3
+       EGIT_REPO_URI="https://github.com/eclipse-cyclonedds/";
+       
+else
+
+       
SRC_URI="https://github.com/eclipse-cyclonedds/${PN}/archive/${PV}.tar.gz -> 
${P}.tar.gz"
+       KEYWORDS="~amd64"
+fi
+
+S="${WORKDIR}/${P}"
+DESCRIPTION="Eclipse Cyclone DDS is a very performant and robust open-source 
implementation of the OMG DDS specification."
+HOMEPAGE="https://cyclonedds.io/";
+
+LICENSE="EPL-2.0"
+SLOT="0/$(ver_cut 1-2)"
+IUSE="test ssl shm parser doc examples ipv6 idlc get_kind"
+RESTRICT="!test? ( test )"
+
+RDEPEND=(
+       "doc? ( app-doc/doxygen )"
+       "ssl? ( dev-libs/openssl )"
+       "shm? ( sys-libs/iceoryx )"
+       "parser? ( sys-devel/bison )"
+)
+
+DEPEND="${RDEPEND}"
+
+CMAKE_BUILD_TYPE=Release
+
+#PATCHES=()
+
+src_prepare() { 
+       use get_kind  &&  eapply  ${FILESDIR}/${PN}-0.10.3-get_kind.patch 
+       cmake_src_prepare
+}
+
+src_configure() {
+
+       local mycmakeargs=(
+        -DBUILD_DOCS= $(usex doc)
+        -DBUILD_DDSPERF=OFF
+        -DBUILD_EXAMPLES=$(usex examples)
+
+
+        -DBUILD_TESTING=$(usex test)
+        -DBUILD_IDLC_TESTING=$(usex test)
+        
+        -DBUILD_IDLC=$(usex idlc)
+        -DENABLE_SSL=$(usex ssl)
+        -DENABLE_SECURITY=$(usex ssl)
+        -DENABLE_SECURITY=$(usex ssl)
+        -DENABLE_IPV6=$(usex ipv6)
+        -DENABLE_SHM=$(usex shm)
+       )
+
+       cmake_src_configure
+}

diff --git a/sys-libs/cyclonedds/cyclonedds-9999.ebuild 
b/sys-libs/cyclonedds/cyclonedds-9999.ebuild
new file mode 100644
index 0000000000..dee8af3903
--- /dev/null
+++ b/sys-libs/cyclonedds/cyclonedds-9999.ebuild
@@ -0,0 +1,66 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake
+
+
+if [[ ${PV} == *9999 ]] ; then
+    inherit git-r3
+    EGIT_REPO_URI="https://github.com/eclipse-cyclonedds/";
+    
+else
+
+    SRC_URI="https://github.com/eclipse-cyclonedds/${PN}/archive/${PV}.tar.gz 
-> ${P}.tar.gz"
+    KEYWORDS="~amd64"
+fi
+
+S="${WORKDIR}/${P}"
+DESCRIPTION="Eclipse Cyclone DDS is a very performant and robust open-source 
implementation of the OMG DDS specification."
+HOMEPAGE="https://cyclonedds.io/";
+
+LICENSE="EPL-2.0"
+SLOT="0/$(ver_cut 1-2)"
+IUSE="test ssl shm parser doc examples ipv6 idlc get_kind"
+RESTRICT="!test? ( test )"
+
+RDEPEND=(
+    "doc? ( app-doc/doxygen )"
+    "ssl? ( dev-libs/openssl )"
+    "shm? ( sys-libs/iceoryx )"
+    "parser? ( sys-devel/bison )"
+)
+
+DEPEND="${RDEPEND}"
+
+CMAKE_BUILD_TYPE=Release
+
+#PATCHES=()
+
+src_prepare() { 
+    use get_kind  &&  eapply  ${FILESDIR}/${PN}-0.10.3-get_kind.patch 
+    cmake_src_prepare
+}
+
+src_configure() {
+
+    local mycmakeargs=(
+     -DBUILD_DOCS= $(usex doc)
+     -DBUILD_DDSPERF=OFF
+     -DBUILD_EXAMPLES=$(usex examples)
+
+
+      -DBUILD_TESTING=$(usex test)
+       -DBUILD_IDLC_TESTING=$(usex test)
+       
+       -DBUILD_IDLC=$(usex idlc)
+     -DENABLE_SSL=$(usex ssl)
+      -DENABLE_SECURITY=$(usex ssl)
+      -DENABLE_SECURITY=$(usex ssl)
+      -DENABLE_IPV6=$(usex ipv6)
+      -DENABLE_SHM=$(usex shm)
+    )
+
+    cmake_src_configure
+}

diff --git a/sys-libs/cyclonedds/files/cyclonedds-0.10.3-get_kind.patch 
b/sys-libs/cyclonedds/files/cyclonedds-0.10.3-get_kind.patch
new file mode 100644
index 0000000000..a6abed76c0
--- /dev/null
+++ b/sys-libs/cyclonedds/files/cyclonedds-0.10.3-get_kind.patch
@@ -0,0 +1,87 @@
+diff --git a/src/core/ddsc/include/dds/dds.h b/src/core/ddsc/include/dds/dds.h
+index 97647d6..b619ca7 100644
+--- a/src/core/ddsc/include/dds/dds.h
++++ b/src/core/ddsc/include/dds/dds.h
+@@ -46,6 +46,7 @@
+ #include "dds/ddsc/dds_public_error.h"
+ #include "dds/ddsc/dds_public_status.h"
+ #include "dds/ddsc/dds_public_listener.h"
++#include "dds/ddsc/dds_public_entity.h"
+ 
+ #if defined (__cplusplus)
+ extern "C" {
+diff --git a/src/core/ddsc/include/dds/ddsc/dds_public_entity.h 
b/src/core/ddsc/include/dds/ddsc/dds_public_entity.h
+new file mode 100644
+index 0000000..d1402f5
+--- /dev/null
++++ b/src/core/ddsc/include/dds/ddsc/dds_public_entity.h
+@@ -0,0 +1,36 @@
++/*
++ * dds_public_entity.h
++ *
++ *  Created on: 21. nov. 2022
++ *      Author: marius
++ */
++
++#ifndef _DDS_PUBLIC_ENTITY_H_
++#define _DDS_PUBLIC_ENTITY_H_
++#include <dds/export.h>
++#include <dds/ddsrt/retcode.h>
++#include <dds/ddsc/dds_public_impl.h>
++#include <dds/ddsc/dds_basic_types.h>
++
++
++/*
++ * An addition to the external interface
++ *
++ * RETURN type of entity
++ */
++
++DDS_EXPORT dds_entity_kind_t
++dds_get_kind (const dds_entity_t e);
++
++/*
++ *
++ * RETURN DDS_RETCODE_OK on enabled entity
++ * ELSE DDS_RETCODE_NOT_ENABLED
++ *
++ */
++
++DDS_EXPORT dds_return_t
++dds_enabled(const dds_entity_t entity);
++
++#endif /* SRC_CORE_DDSC_INCLUDE_DDS_DDSC_DDS_PUBLIC_ENTITY_H_ */
++
+diff --git a/src/core/ddsc/src/dds_entity.c b/src/core/ddsc/src/dds_entity.c
+index 16c99e8..e19891e 100644
+--- a/src/core/ddsc/src/dds_entity.c
++++ b/src/core/ddsc/src/dds_entity.c
+@@ -30,6 +30,7 @@
+ #include "dds/ddsi/q_bswap.h"
+ #include "dds/ddsi/ddsi_entity.h"
+ #include "dds/ddsi/ddsi_endpoint.h"
++#include "dds/ddsc/dds_public_entity.h"
+ 
+ DDS_EXPORT extern inline dds_entity *dds_entity_from_handle_link (struct 
dds_handle_link *hdllink);
+ DDS_EXPORT extern inline bool dds_entity_is_enabled (const dds_entity *e);
+@@ -52,6 +53,20 @@ const struct dds_entity_deriver *dds_entity_deriver_table[] 
= {
+   [DDS_KIND_CYCLONEDDS] = &dds_entity_deriver_cyclonedds
+ };
+ 
++
++dds_entity_kind_t dds_get_kind (const dds_entity_t e)
++{
++   struct dds_entity *entity;
++   dds_return_t ret;
++   dds_entity_kind_t kind = DDS_KIND_DONTCARE;
++   if((ret = dds_entity_pin(e, &entity)) >0)
++   {
++       kind = entity->m_kind;
++       dds_entity_unpin(entity);
++   }
++
++  return kind;
++}
+ void dds_entity_deriver_dummy_interrupt (struct dds_entity *e) {
+   (void) e;
+ }

diff --git a/sys-libs/iceoryx/Manifest b/sys-libs/iceoryx/Manifest
new file mode 100644
index 0000000000..a103129dfe
--- /dev/null
+++ b/sys-libs/iceoryx/Manifest
@@ -0,0 +1 @@
+DIST iceoryx-2.0.3.tar.gz 1544045 BLAKE2B 
ce352c035fe89691425b5dcd763eb848a21f9eda6885c9bbd452d8aa9089fbb0a453557f9b40c97f1819d5c1ee8ec0fcdc5dc93f228974c7169576f090ccd83a
 SHA512 
b860452373dc41d6b0dd0042d1fc4c97621f143d20e9354a1572126ab815ee0cec6548ddfab9fa276943ed33d9ffd8810243e67eb5fae1d11f18ef0b2b074650

diff --git a/sys-libs/iceoryx/iceoryx-2.0.3.ebuild 
b/sys-libs/iceoryx/iceoryx-2.0.3.ebuild
new file mode 100644
index 0000000000..4a66c2ff1d
--- /dev/null
+++ b/sys-libs/iceoryx/iceoryx-2.0.3.ebuild
@@ -0,0 +1,63 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake 
+
+
+if [[ ${PV} == *9999 ]] ; then
+       inherit git-r3
+       EGIT_REPO_URI="https://github.com/eclipse-iceoryx/iceoryx";
+       
+else
+       SRC_URI="https://github.com/eclipse-iceoryx/${PN}/archive/v${PV}.tar.gz 
-> ${P}.tar.gz"
+       KEYWORDS="~amd64"
+fi
+
+S="${WORKDIR}/${P}"
+B="${WORKDIR}/${P}_build"
+DESCRIPTION="Eclipse Iceoryx zero copy IPC"
+HOMEPAGE="https://iceoryx.io";
+
+LICENSE="Apache-2.0"
+SLOT="0/$(ver_cut 1-2)"
+IUSE="test doc examples ccache"
+RESTRICT="!test? ( test )"
+
+RDEPEND=(
+       "doc? ( app-doc/doxygen )"
+       "dev-cpp/cpptoml"
+       "ccache? dev-util/ccache"
+       )
+
+DEPEND="${RDEPEND}"
+
+CMAKE_BUILD_TYPE=Release
+
+PATCHES=()
+
+src_prepare() {
+
+       CMAKE_USE_DIR=${S}/${PN}_meta
+       BUILD_DIR=${B}
+       cmake_src_prepare
+}
+
+src_configure() {
+       
+       local mycmakeargs=(
+        -DBUILD_DOC= $(usex doc)
+        -DBUILD_ALL=OFF
+        -DBINDING_C=ON
+        -DEXAMPLES=$(usex examples)
+        -DBUILD_TEST=$(usex test)
+        -DCLANG_TIDY=OFF
+        -DDOWNLOAD_TOML_LIB=OFF
+        -DCMAKE_MODULE_PATH="/usr/lib/cmake/cpptoml"
+        -DCCACHE=$(usex ccache)
+        
+       )
+
+       cmake_src_configure
+}

diff --git a/sys-libs/iceoryx/iceoryx-9999.ebuild 
b/sys-libs/iceoryx/iceoryx-9999.ebuild
new file mode 100644
index 0000000000..9a82dbb4c1
--- /dev/null
+++ b/sys-libs/iceoryx/iceoryx-9999.ebuild
@@ -0,0 +1,62 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake 
+
+
+if [[ ${PV} == *9999 ]] ; then
+       inherit git-r3
+       EGIT_REPO_URI="https://github.com/eclipse-iceoryx/iceoryx";
+else
+       SRC_URI="https://github.com/eclipse-iceoryx/${PN}/archive/v${PV}.tar.gz 
-> ${P}.tar.gz"
+       KEYWORDS="~amd64"
+fi
+
+S="${WORKDIR}/${P}"
+B="${WORKDIR}/${P}_build"
+DESCRIPTION="Eclipse Iceoryx zero copy IPC"
+HOMEPAGE="https://iceoryx.io";
+
+LICENSE="Apache-2.0"
+SLOT="0/$(ver_cut 1-2)"
+IUSE="test doc examples ccache"
+RESTRICT="!test? ( test )"
+
+RDEPEND=(
+       "doc? ( app-doc/doxygen )"
+       "dev-cpp/cpptoml"
+       "ccache? dev-util/ccache"
+       )
+
+DEPEND="${RDEPEND}"
+
+CMAKE_BUILD_TYPE=Release
+
+PATCHES=()
+
+src_prepare() {
+
+       CMAKE_USE_DIR=${S}/${PN}_meta
+       BUILD_DIR=${B}
+       cmake_src_prepare
+}
+
+src_configure() {
+       
+       local mycmakeargs=(
+        -DBUILD_DOC= $(usex doc)
+        -DBUILD_ALL=OFF
+        -DBINDING_C=ON
+        -DEXAMPLES=$(usex examples)
+        -DBUILD_TEST=$(usex test)
+        -DCLANG_TIDY=OFF
+        -DDOWNLOAD_TOML_LIB=OFF
+        -DCMAKE_MODULE_PATH="/usr/lib/cmake/cpptoml"
+        -DCCACHE=$(usex ccache)
+        
+       )
+
+       cmake_src_configure
+}

Reply via email to