SHA256
1
0
forked from pool/zeromq
zeromq/zeromq.spec

157 lines
4.6 KiB
RPMSpec
Raw Normal View History

#
# spec file for package zeromq
#
# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
Accepting request 714173 from home:vitezslav_cizek:branches:devel:libraries:c_c++ - New upstream version 4.3.2: * CVE-2019-13132: a remote, unauthenticated client connecting to a libzmq application, running with a socket listening with CURVE encryption/authentication enabled, may cause a stack overflow and overwrite the stack with arbitrary data, due to a buffer overflow in the library. Users running public servers with the above configuration are highly encouraged to upgrade as soon as possible, as there are no known mitigations. (bsc#1140255) * New DRAFT (see NEWS for 4.2.0) zmq_socket_monitor_versioned API that supports a versioned monitoring events protocol as a parameter. Passing 1 results in the same behaviour as zmq_socket_monitor. * New DRAFT (see NEWS for 4.2.0) zmq_socket_monitor_pipes_stats that triggers a new ZMQ_EVENT_PIPES_STATS to be delivered via zmq_socket_monitor_versioned v2 API, which contains the current status of all the queues owned by the monitored socket. See doc/zmq_socket_monitor_versioned.txt for details. * New DRAFT (see NEWS for 4.2.0) zmq_poller_fd that returns the FD of a thread safe socket. * New DRAFT (see NEWS for 4.2.0) socket options: ZMQ_XPUB_MANUAL_LAST_VALUE is similar to ZMQ_XPUB_MANUAL but allows to avoid duplicates when using last value caching. ZMQ_SOCKS_USERNAME and ZMQ_SOCKS_PASSWORD that implement SOCKS5 proxy authentication. - For complete set of changes, see https://github.com/zeromq/libzmq/releases/tag/v4.3.2 OBS-URL: https://build.opensuse.org/request/show/714173 OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/zeromq?expand=0&rev=72
2019-07-12 08:23:33 +02:00
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
%define lib_name libzmq5
%ifarch %ix86 x86_64
%bcond_without pgm
%else
%bcond_with pgm
%endif
Name: zeromq
Accepting request 714173 from home:vitezslav_cizek:branches:devel:libraries:c_c++ - New upstream version 4.3.2: * CVE-2019-13132: a remote, unauthenticated client connecting to a libzmq application, running with a socket listening with CURVE encryption/authentication enabled, may cause a stack overflow and overwrite the stack with arbitrary data, due to a buffer overflow in the library. Users running public servers with the above configuration are highly encouraged to upgrade as soon as possible, as there are no known mitigations. (bsc#1140255) * New DRAFT (see NEWS for 4.2.0) zmq_socket_monitor_versioned API that supports a versioned monitoring events protocol as a parameter. Passing 1 results in the same behaviour as zmq_socket_monitor. * New DRAFT (see NEWS for 4.2.0) zmq_socket_monitor_pipes_stats that triggers a new ZMQ_EVENT_PIPES_STATS to be delivered via zmq_socket_monitor_versioned v2 API, which contains the current status of all the queues owned by the monitored socket. See doc/zmq_socket_monitor_versioned.txt for details. * New DRAFT (see NEWS for 4.2.0) zmq_poller_fd that returns the FD of a thread safe socket. * New DRAFT (see NEWS for 4.2.0) socket options: ZMQ_XPUB_MANUAL_LAST_VALUE is similar to ZMQ_XPUB_MANUAL but allows to avoid duplicates when using last value caching. ZMQ_SOCKS_USERNAME and ZMQ_SOCKS_PASSWORD that implement SOCKS5 proxy authentication. - For complete set of changes, see https://github.com/zeromq/libzmq/releases/tag/v4.3.2 OBS-URL: https://build.opensuse.org/request/show/714173 OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/zeromq?expand=0&rev=72
2019-07-12 08:23:33 +02:00
Version: 4.3.2
Release: 0
Summary: Lightweight messaging kernel
License: LGPL-3.0-or-later
Group: Productivity/Networking/Web/Servers
URL: http://www.zeromq.org/
Source: https://github.com/zeromq/libzmq/releases/download/v%{version}/zeromq-%{version}.tar.gz
Source99: baselibs.conf
BuildRequires: asciidoc
BuildRequires: gcc-c++
BuildRequires: libunwind-devel
BuildRequires: pkgconfig
BuildRequires: xmlto
%if 0%{?suse_version} && 0%{?suse_version} <= 1110
BuildRequires: libsodium-devel
BuildRequires: libuuid-devel
%else
BuildRequires: pkgconfig(libsodium)
BuildRequires: pkgconfig(uuid)
%endif
%if %{with pgm}
BuildRequires: openpgm-devel >= 5.1
BuildRequires: python
%if 0%{?suse_version} && 0%{?suse_version} <= 1110
BuildRequires: glib2-devel >= 2.8
%else
BuildRequires: pkgconfig(glib-2.0) >= 2.8
%endif
%endif # with pgm
%description
The ZeroMQ messaging kernel is a library extending the standard
socket interfaces with an abstraction of asynchronous message queues,
multiple messaging patterns, message filtering (subscriptions) and
seamless access to multiple transport protocols.
%package -n %{lib_name}
Summary: Shared Library for ZeroMQ
Group: Productivity/Networking/Web/Servers
Recommends: %{name}-tools = %{version}
%description -n %{lib_name}
The ZeroMQ messaging kernel is a library extending the standard
socket interfaces with an abstraction of asynchronous message queues,
multiple messaging patterns, message filtering (subscriptions) and
seamless access to multiple transport protocols.
This package holds the shared library part of the ZeroMQ package.
%package tools
Summary: Tools to work with ZeroMQ
# Conflict old libraries as we collide with them
Accepting request 556904 from home:adamm:branches:devel:libraries:c_c++ - New upstream version 4.2.3 * API change: previously ZMQ_POLLOUT on a ZMQ_ROUTER socket returned always true due to how the type works. When ZMQ_ROUTER_MANDATORY is set, sending fails when the peer is not available, but ZMQ_POLLOUT always returns true anyway, which does not make sense. Now when ZMQ_ROUTER_MANDATORY is set, ZMQ_POLLOUT on a ZMQ_ROUTER will return true only if at least one peer is available. Given ZMQ_POLLOUT with ZMQ_ROUTER was not usable at all previously, we do not consider this a breakage warranting a major or minor version increase. * ZMQ_IDENTITY has been renamed to ZMQ_ROUTING_ID and ZMQ_CONNECT_RID has been renamed to ZMQ_CONNTECT_ROUTING_ID to disambiguate. ZMQ_IDENTITY and ZMQ_CONNECT_RID are still available to keep backward compatibility, and will be removed in a future release after further advance notice. * DRAFT API change: zmq_poller_wait, zmq_poller_wait_all and zmq_poller_poll have been changed to be inline with other existing APIs that have a timeout to return EAGAIN instead of ETIMEDOUT as the errno value. * Existing non-DRAFT socket types ZMQ_REP/REQ, ZMQ_ROUTER/DEALER and ZMQPUB/SUB, that were previously declared deprecated, have been reinstated as stable and supported * Curve: all remaining traces of debug output to console are now removed, and new DRAFT events are available to properly debug CURVE, PLAIN, GSSAPI and ZAP events and failures. * for compelete changelog see https://github.com/zeromq/libzmq/releases/tag/v4.2.3 - drop remove_werror.patch: can now be disabled at configure time, if needed. OBS-URL: https://build.opensuse.org/request/show/556904 OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/zeromq?expand=0&rev=62
2017-12-15 09:54:39 +01:00
Group: Productivity/Networking/Web/Servers
Conflicts: libzmq1
Conflicts: libzmq2
Conflicts: libzmq3
%description tools
The ZeroMQ messaging kernel is a library extending the standard
socket interfaces with an abstraction of asynchronous message queues,
multiple messaging patterns, message filtering (subscriptions) and
seamless access to multiple transport protocols.
This package contains the utilities to work with ZeroMQ library.
%package devel
Summary: Development files for ZeroMQ
Group: Development/Languages/C and C++
Requires: %{lib_name} = %{version}
Provides: libzmq-devel = %{version}
%description devel
The ZeroMQ messaging kernel is a library extending the standard
socket interfaces with an abstraction of asynchronous message queues,
multiple messaging patterns, message filtering (subscriptions) and
seamless access to multiple transport protocols.
This package holds the development files for ZeroMQ.
%prep
%setup -q
%build
export LIBS=-ldl
%configure \
--with-libsodium \
--enable-curve \
%if %{with pgm}
--with-pgm \
%endif
--disable-static \
--disable-dependency-tracking \
Accepting request 556904 from home:adamm:branches:devel:libraries:c_c++ - New upstream version 4.2.3 * API change: previously ZMQ_POLLOUT on a ZMQ_ROUTER socket returned always true due to how the type works. When ZMQ_ROUTER_MANDATORY is set, sending fails when the peer is not available, but ZMQ_POLLOUT always returns true anyway, which does not make sense. Now when ZMQ_ROUTER_MANDATORY is set, ZMQ_POLLOUT on a ZMQ_ROUTER will return true only if at least one peer is available. Given ZMQ_POLLOUT with ZMQ_ROUTER was not usable at all previously, we do not consider this a breakage warranting a major or minor version increase. * ZMQ_IDENTITY has been renamed to ZMQ_ROUTING_ID and ZMQ_CONNECT_RID has been renamed to ZMQ_CONNTECT_ROUTING_ID to disambiguate. ZMQ_IDENTITY and ZMQ_CONNECT_RID are still available to keep backward compatibility, and will be removed in a future release after further advance notice. * DRAFT API change: zmq_poller_wait, zmq_poller_wait_all and zmq_poller_poll have been changed to be inline with other existing APIs that have a timeout to return EAGAIN instead of ETIMEDOUT as the errno value. * Existing non-DRAFT socket types ZMQ_REP/REQ, ZMQ_ROUTER/DEALER and ZMQPUB/SUB, that were previously declared deprecated, have been reinstated as stable and supported * Curve: all remaining traces of debug output to console are now removed, and new DRAFT events are available to properly debug CURVE, PLAIN, GSSAPI and ZAP events and failures. * for compelete changelog see https://github.com/zeromq/libzmq/releases/tag/v4.2.3 - drop remove_werror.patch: can now be disabled at configure time, if needed. OBS-URL: https://build.opensuse.org/request/show/556904 OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/zeromq?expand=0&rev=62
2017-12-15 09:54:39 +01:00
--disable-silent-rules \
--disable-Werror
make %{?_smp_mflags}
%install
make DESTDIR=%{buildroot} install %{?_smp_mflags}
find %{buildroot} -type f -name "*.la" -delete -print
%check
%if ! 0%{?qemu_user_space_build}
# Tests don't run well concurrently and some are flaky, hence 3x before fail
make check %{?_smp_mflags} || make check || make check || make check || (cat ./test-suite.log && false)
%endif
%post -n %{lib_name} -p /sbin/ldconfig
%postun -n %{lib_name} -p /sbin/ldconfig
%files -n %{lib_name}
%defattr(-,root,root,-)
%license COPYING COPYING.LESSER
%{_libdir}/libzmq.so.*
%files tools
%defattr(-,root,root)
%license COPYING COPYING.LESSER
%defattr(-,root,root,-)
%{_bindir}/curve_keygen
%files devel
%defattr(-,root,root,-)
%doc AUTHORS ChangeLog NEWS
%license COPYING COPYING.LESSER
%{_includedir}/zmq*
%{_libdir}/libzmq.so
%{_libdir}/pkgconfig/libzmq.pc
%{_mandir}/man3/zmq*.3*
%{_mandir}/man7/zmq*.7*
%changelog