zeromq/zeromq.spec
Dirk Mueller beba3a3d1d 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 06:23:33 +00:00

157 lines
4.6 KiB
RPMSpec

#
# 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.
# 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
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
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 \
--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