SHA256
1
0
forked from pool/zeromq
zeromq/zeromq.spec
Dirk Mueller 8585a2ff28 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 08:54:39 +00:00

157 lines
4.6 KiB
RPMSpec

#
# spec file for package zeromq
#
# Copyright (c) 2017 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 http://bugs.opensuse.org/
#
%define lib_name libzmq5
%ifarch %ix86 x86_64
%bcond_without pgm
%else
%bcond_with pgm
%endif
Name: zeromq
Version: 4.2.3
Release: 0
Summary: Lightweight messaging kernel
License: LGPL-3.0+
Group: Productivity/Networking/Web/Servers
Url: http://www.zeromq.org/
Source: https://github.com/zeromq/libzmq/releases/download/v%{version}/zeromq-%{version}.tar.gz
BuildRequires: asciidoc
BuildRequires: gcc-c++
BuildRequires: libunwind-devel
BuildRequires: pkgconfig
BuildRequires: xmlto
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%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}
%if 0%{?suse_version} && 0%{?suse_version} <= 1110
BuildRequires: glib2-devel >= 2.8
%else
BuildRequires: pkgconfig(glib-2.0) >= 2.8
%endif
BuildRequires: openpgm-devel >= 5.1
BuildRequires: python
%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,-)
%doc COPYING COPYING.LESSER
%{_libdir}/libzmq.so.*
%files tools
%defattr(-,root,root)
%doc COPYING COPYING.LESSER
%defattr(-,root,root,-)
%{_bindir}/curve_keygen
%files devel
%defattr(-,root,root,-)
%doc AUTHORS ChangeLog COPYING COPYING.LESSER NEWS
%{_includedir}/zmq*
%{_libdir}/libzmq.so
%{_libdir}/pkgconfig/libzmq.pc
%{_mandir}/man3/zmq*.3*
%{_mandir}/man7/zmq*.7*
%changelog