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 +}
