[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