commit:     d49c5a8b26e450592be27f637fa4a2e362550bce
Author:     Zoltan Puskas <zoltan <AT> sinustrom <DOT> info>
AuthorDate: Thu Mar 13 07:18:00 2025 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sat Mar 15 08:03:48 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d49c5a8b

dev-libs/nng: new package, add 1.10.1

This package is needed for KiCad's v9 series new plugin communication
protocol.

Closes: https://bugs.gentoo.org/943018
Signed-off-by: Zoltan Puskas <zoltan <AT> sinustrom.info>
Signed-off-by: Sam James <sam <AT> gentoo.org>

 dev-libs/nng/Manifest                       |  1 +
 dev-libs/nng/files/nng-1.10.1-version.patch | 12 +++++++++
 dev-libs/nng/metadata.xml                   | 25 ++++++++++++++++++
 dev-libs/nng/nng-1.10.1.ebuild              | 40 +++++++++++++++++++++++++++++
 4 files changed, 78 insertions(+)

diff --git a/dev-libs/nng/Manifest b/dev-libs/nng/Manifest
new file mode 100644
index 000000000000..a8792fe00f8c
--- /dev/null
+++ b/dev-libs/nng/Manifest
@@ -0,0 +1 @@
+DIST nng-1.10.1.tar.gz 769608 BLAKE2B 
199a9d67d9806ad493f3e3c3de20a1284c4a8ccffece223c5cfae6c0b7800d596a0f7342f51ff9ed346b00b6c49c4697c64dad3b0046315b3fa6d3a1b9fb3c74
 SHA512 
79d5d176e96591951379150c632322553fb96c62a254a1366303bb491612f84f7b07a7c9e1e1391173d3beb673c4568be3553cc7002165fc9832d738cc0d9a54

diff --git a/dev-libs/nng/files/nng-1.10.1-version.patch 
b/dev-libs/nng/files/nng-1.10.1-version.patch
new file mode 100644
index 000000000000..1cf77b351b3f
--- /dev/null
+++ b/dev-libs/nng/files/nng-1.10.1-version.patch
@@ -0,0 +1,12 @@
+diff -Naur nng-1.10.1-orig/include/nng/nng.h nng-1.10.1/include/nng/nng.h
+--- nng-1.10.1-orig/include/nng/nng.h  2025-01-26 08:38:16.000000000 -0800
++++ nng-1.10.1/include/nng/nng.h       2025-03-13 00:02:11.356499237 -0700
+@@ -58,7 +58,7 @@
+ // may not necessarily match the ABI versions.
+ #define NNG_MAJOR_VERSION 1
+ #define NNG_MINOR_VERSION 10
+-#define NNG_PATCH_VERSION 0
++#define NNG_PATCH_VERSION 1
+ // if non-empty (i.e. "pre"), this is a pre-release
+ #define NNG_RELEASE_SUFFIX ""
+ 

diff --git a/dev-libs/nng/metadata.xml b/dev-libs/nng/metadata.xml
new file mode 100644
index 000000000000..e14b4cdddca6
--- /dev/null
+++ b/dev-libs/nng/metadata.xml
@@ -0,0 +1,25 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd";>
+<pkgmetadata>
+       <maintainer type="person" proxied="yes">
+               <email>[email protected]</email>
+               <name>Zoltan Puskas</name>
+       </maintainer>
+       <maintainer type="project" proxied="proxy">
+               <email>[email protected]</email>
+               <name>Proxy Maintainers</name>
+       </maintainer>
+       <use>
+               <flag name="compat">Enable compatibility with the legacy 
nanomsg API</flag>
+               <flag name="deprecated">Build deprecated features</flag>
+               <flag name="tools">Build and install command line tools</flag>
+       </use>
+       <longdescription>
+               NNG is a lightweight, broker-less library, offering a simple 
API to
+               solve common recurring messaging problems, such as 
publish/subscribe,
+               RPC-style request/reply, or service discovery.
+       </longdescription>
+       <upstream>
+               <remote-id type="github">nanomsg/nng</remote-id>
+       </upstream>
+</pkgmetadata>

diff --git a/dev-libs/nng/nng-1.10.1.ebuild b/dev-libs/nng/nng-1.10.1.ebuild
new file mode 100644
index 000000000000..07dcd69e6a80
--- /dev/null
+++ b/dev-libs/nng/nng-1.10.1.ebuild
@@ -0,0 +1,40 @@
+# Copyright 2024-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake
+
+DESCRIPTION="Light-weight brokerless messaging"
+HOMEPAGE="https://nng.nanomsg.org/";
+SRC_URI="https://github.com/nanomsg/nng/archive/refs/tags/v${PV}.tar.gz -> 
${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+# compat and deprecated match upstream's default choice
+IUSE="+compat +deprecated doc ssl test tools"
+
+DEPEND="ssl? ( net-libs/mbedtls:= )"
+RDEPEND="${DEPEND}"
+BDEPEND="doc? ( dev-ruby/asciidoctor )"
+
+RESTRICT="test" # Needs network
+
+DOCS=(README.adoc docs/RATIONALE.adoc)
+
+PATCHES=( "${FILESDIR}"/${P}-version.patch )
+
+src_configure() {
+       local mycmakeargs=(
+               -DNNG_ELIDE_DEPRECATED=$(usex deprecated OFF ON)
+               -DNNG_ENABLE_COMPAT=$(usex compat ON OFF)
+               -DNNG_ENABLE_TLS=$(usex ssl ON OFF)
+               -DNNG_TESTS=$(usex test ON OFF)
+           -DBUILD_SHARED_LIBS=ON
+               -DNNG_ENABLE_DOC=$(usex doc ON OFF)
+               -DNNG_ENABLE_NNGCAT=$(usex tools ON OFF)
+               -DNNG_TOOLS=$(usex tools ON OFF)
+       )
+       cmake_src_configure
+}

Reply via email to