[packages/nng] Up to 1.12.4

arekm arekm at pld-linux.org
Tue Sep 29 23:02:07 CEST 2026


commit 4948ecb21a47881a5864ea8fcfaffb7bc5a32727
Author: Arkadiusz Miśkiewicz <arekm at maven.pl>
Date:   Tue Sep 29 22:54:55 2026 +0200

    Up to 1.12.4

 man-sections.patch | 18 ++++++++++++++++++
 nng.spec           | 53 +++++++++++++++++++++++++++++++++++++++++++----------
 2 files changed, 61 insertions(+), 10 deletions(-)
---
diff --git a/nng.spec b/nng.spec
index d18c20d..5f537d4 100644
--- a/nng.spec
+++ b/nng.spec
@@ -1,16 +1,17 @@
 # Conditional build:
-%bcond_with	tests		# build with tests
+%bcond_without	tests		# unit tests
 
 Summary:	Light-weight brokerless messaging
-Summary(pl.UTF-8):	-
+Summary(pl.UTF-8):	Lekka biblioteka komunikatów bez pośrednika
 Name:		nng
-Version:	1.11
-Release:	0.1
+Version:	1.12.4
+Release:	1
 License:	MIT
 Group:		Libraries
 Source0:	https://github.com/nanomsg/nng/archive/v%{version}/%{name}-%{version}.tar.gz
-# Source0-md5:	e901b96cbf0626076f2b05ffbc2012b8
+# Source0-md5:	da16997d0e92022248e4952eb9fc9d7f
 Patch0:		install.patch
+Patch1:		man-sections.patch
 URL:		https://nanomsg.github.io/nng/
 BuildRequires:	cmake
 BuildRequires:	mbedtls-devel
@@ -27,7 +28,18 @@ The communication patterns, also called "scalability protocols", are
 basic blocks for building distributed systems. By combining them you
 can create a vast array of distributed applications.
 
-%package  devel
+%description -l pl.UTF-8
+nng (nanomsg next generation) to biblioteka gniazd udostępniająca
+kilka popularnych wzorców komunikacji. Jej celem jest zapewnienie
+szybkiej, skalowalnej i łatwej w użyciu warstwy sieciowej. Jest
+napisana w C i działa na wielu systemach operacyjnych bez dodatkowych
+zależności.
+
+Wzorce komunikacji, zwane też "protokołami skalowalności", są
+podstawowymi elementami do budowy systemów rozproszonych. Łącząc je,
+można tworzyć różnorodne aplikacje rozproszone.
+
+%package devel
 Summary:	Header files for %{name} library
 Summary(pl.UTF-8):	Pliki nagłówkowe biblioteki %{name}
 Group:		Development/Libraries
@@ -38,30 +50,50 @@ This package contains files needed to develop applications using
 nanomsg, a socket library that provides several common communication
 patterns.
 
+%description devel -l pl.UTF-8
+Ten pakiet zawiera pliki potrzebne do tworzenia aplikacji
+wykorzystujących nng - bibliotekę gniazd udostępniającą kilka
+popularnych wzorców komunikacji.
+
 %package utils
 Summary:	Command line interface for communicating with nng
+Summary(pl.UTF-8):	Interfejs wiersza poleceń do komunikacji przez nng
+Group:		Applications/Networking
 Requires:	%{name} = %{version}-%{release}
 
 %description utils
 Includes nngcat, a simple utility for reading and writing to nanomsg
 sockets and bindings, which can include local and remote connections.
 
+%description utils -l pl.UTF-8
+Ten pakiet zawiera nngcat - proste narzędzie do odczytu i zapisu
+danych przez gniazda nanomsg, zarówno przy połączeniach lokalnych, jak
+i zdalnych.
+
 %prep
 %setup -q
 
 %patch -P0 -p1
+%patch -P1 -p1
 
 %build
 %cmake -B build \
 	-DBUILD_SHARED_LIBS=ON \
 	-DNNG_ENABLE_TLS=ON \
 	-DNNG_ENABLE_NNGCAT=ON \
-	-DNNG_TESTS=%{!?with_tests:OFF}%{?with_tests:ON} \
+	%{cmake_on_off tests NNG_TESTS} \
 	-DNNG_ENABLE_DOC=ON
 
 %{__make} -C build
 
-%{?with_tests:%{__make} -C build test ARGS=--output-on-failure}
+%if %{with tests}
+# talks to httpbin.org and other public servers
+ctest_exclude='^nng\.httpclient$'
+# getaddrinfo() with AI_ADDRCONFIG rejects even 127.0.0.1 when only loopback is configured
+ctest_exclude="$ctest_exclude|^nng\.(tls|platform\.resolver_test|sp\.transport\.(tcp|tls|ws)\..*|supplemental\.wssfile_test)$"
+# every test starts dozens of threads, parallel runs exhaust the task limit
+ctest --test-dir build --output-on-failure -E "$ctest_exclude"
+%endif
 
 %install
 rm -rf $RPM_BUILD_ROOT
@@ -78,7 +110,8 @@ rm -rf $RPM_BUILD_ROOT
 %files
 %defattr(644,root,root,755)
 %doc README.adoc UKRAINE.adoc LICENSE.txt
-%{_libdir}/libnng.so.1*
+%{_libdir}/libnng.so.*.*.*
+%ghost %{_libdir}/libnng.so.1
 
 %files devel
 %defattr(644,root,root,755)
@@ -86,7 +119,7 @@ rm -rf $RPM_BUILD_ROOT
 %{_includedir}/nng/
 %{_libdir}/libnng.so
 %{_libdir}/cmake/nng/
-%{_mandir}/man3/*.3.*
+%{_mandir}/man3/*.3*
 %{_mandir}/man5/*.5.*
 %{_mandir}/man7/*.7.*
 
diff --git a/man-sections.patch b/man-sections.patch
new file mode 100644
index 0000000..ecc8983
--- /dev/null
+++ b/man-sections.patch
@@ -0,0 +1,18 @@
+Install suffixed man sections (3http, 3tls, ...) into the base section directory
+instead of creating nonstandard man3http, man3tls, ... directories.
+
+--- nng-1.12.4/docs/man/CMakeLists.txt.orig	2026-09-29 22:58:53.879657887 +0200
++++ nng-1.12.4/docs/man/CMakeLists.txt	2026-09-29 22:58:53.953216755 +0200
+@@ -48,9 +48,11 @@
+                 FILES ${CMAKE_CURRENT_BINARY_DIR}/${NAME}.${SECT}.html
+                 DESTINATION ${CMAKE_INSTALL_DOCDIR}/nng
+         )
++        # 3http, 3tls etc. are suffixed forms of section 3 and go to man3
++        string(SUBSTRING "${SECT}" 0 1 _nng_man_base_sect)
+         install(
+                 FILES ${CMAKE_CURRENT_BINARY_DIR}/${NAME}.${SECT}
+-                DESTINATION ${CMAKE_INSTALL_MANDIR}/man${SECT}
++                DESTINATION ${CMAKE_INSTALL_MANDIR}/man${_nng_man_base_sect}
+         )
+ 
+     endmacro(nng_man)
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/packages/nng.git/commitdiff/4948ecb21a47881a5864ea8fcfaffb7bc5a32727



More information about the pld-cvs-commit mailing list