#
# spec file for package zeromq
#
# Copyright (c) 2023 SUSE LLC
#
# 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.5
Release:        1.4
Summary:        Lightweight messaging kernel
License:        MPL-2.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
Source99:       baselibs.conf
BuildRequires:  autoconf
BuildRequires:  automake
BuildRequires:  gcc-c++
BuildRequires:  libtool
BuildRequires:  libunwind-devel
BuildRequires:  pkgconfig
%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
%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
autoreconf -fi
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 LICENSE
%{_libdir}/libzmq.so.*

%files tools
%defattr(-,root,root)
%{_bindir}/curve_keygen

%files devel
%defattr(-,root,root,-)
%doc AUTHORS ChangeLog NEWS
%{_includedir}/zmq*
%{_libdir}/libzmq.so
%{_libdir}/pkgconfig/libzmq.pc
%{_mandir}/man3/zmq*.3*
%{_mandir}/man7/zmq*.7*

%changelog
* Tue Oct 24 2023 Adam Majer <adam.majer@suse.de>
- update to 4.3.5:
  * Relicensing from LGPL-3.0+ (with custom exceptions) to MPL-2.0 is now complete.
    libzmq is now distributed under the Mozilla Public License 2.0. Relicensing
    grants have been collected from all relevant authors, and some functionality
    has been clean-room reimplemented where that was not possible. In layman terms,
    the new license provides the same rights and obligations as before. Source
    files are now tagged using the SPDX license identifier format.
    Details of the relicensing process can be seen at: #2376
    Relicensing grants have been archived at:
    https://github.com/rlenferink/libzmq-relicense
    A special thanks to everybody who helped with this long and difficult task,
    with the process, the reimplementations, the collections and everything else.
  * New DRAFT (see NEWS for 4.2.0) socket options:
    ZMQ_BUSY_POLL will set the SO_BUSY_POLL socket option on the underlying
    sockets, if it is supported.
    ZMQ_HICCUP_MSG will send a message when the peer has been disconnected.
    ZMQ_XSUB_VERBOSE_UNSUBSCRIBE will configure a socket to pass all
    unsubscription messages, including duplicated ones.
    ZMQ_TOPICS_COUNT will return the number of subscribed topics on a
    PUB/SUB socket.
    ZMQ_NORM_MODE, ZMQ_NORM_UNICAST_NACK, ZMQ_NORM_BUFFER_SIZE,
    ZMQ_NORM_SEGMENT_SIZE, ZMQ_NORM_BLOCK_SIZE, ZMQ_NORM_NUM_PARITY,
    ZMQ_NORM_NUM_AUTOPARITY and ZMQ_NORM_PUSH to control various aspect of
    NORM sockets.
    See doc/zmq_setsockopt.txt and doc/zmq_getsockopt.txt for details.
  * New DRAFT (see NEWS for 4.2.0) zmq_ppoll APIs was added that differs from
    zmq_poll in the same way that ppoll differs from poll.
    See doc/zmq_ppoll.txt for details.
  * Various bug fixes and performance improvements.
- qemu-user.patch: upstreamed, removed
* Mon Jan 23 2023 Andreas Schwab <schwab@suse.de>
- qemu-user.patch: Fix build with qemu linux-user emulation
* Mon Aug 15 2022 Dirk Müller <dmueller@suse.com>
- drop xmlto and asciidoc buildrequires, these are only needed
  for non-release builds which do not ship with prebuilt docs
* Mon Jun 28 2021 Matej Cepl <mcepl@suse.com>
- Explicit BR on python is not necessary.
* Sun Jan 24 2021 Dirk Müller <dmueller@suse.com>
- update to 4.3.4:
  * ZMQ_PRIORITY will set the SO_PRIORITY socket option on the underlying
    sockets. Only supported on Linux.
  * Fixed compilation errors on kFreeBSD and GNU/Hurd
  * Fixed excessive amount of socket files left behind in Windows TMP
  * Fixed regression that breaks using IPv6 link-local addresses on Linux
  * Fixed compilation errors on Android
  * Fixed compilation error with ulibc and libbsd
  * Fixed stack overflow on Windows x64
  * Fixed various compilation errors on Windows ARM 32bit
  * Fixed various compilation warnings with XCode
  * Fixed return value of zmq_ctx_get changed unintentionally
* Mon Sep  7 2020 Adam Majer <adam.majer@suse.de>
- New upstream version 4.3.3:
  * Denial-of-Service on CURVE/ZAP-protected servers by
    unauthenticated clients. (CVE-2020-15166, bsc#1176116)
    If a raw TCP socket is opened and connected to an endpoint that is fully
    configured with CURVE/ZAP, legitimate clients will not be able to exchange
    any message. Handshakes complete successfully, and messages are delivered to
    the library, but the server application never receives them.
    For more information see the security advisory:
    https://github.com/zeromq/libzmq/security/advisories/GHSA-25wp-cf8g-938m
  * Stack overflow on server running PUB/XPUB socket (CURVE disabled).
    The PUB/XPUB subscription store (mtrie) is traversed using recursive
    function calls. In the remove (unsubscription) case, the recursive calls are
    NOT tail calls, so even with optimizations the stack grows linearly with the
    length of a subscription topic. Topics are under the control of remote
    clients - they can send a subscription to arbitrary length topics. An
    attacker can thus cause a server to create an mtrie sufficiently large such
    that, when unsubscribing, traversal will cause a stack overflow. (bsc#1176258)
    For more information see the security advisory:
    https://github.com/zeromq/libzmq/security/advisories/GHSA-qq65-x72m-9wr8
  * Memory leak in PUB server induced by malicious client(s) without CURVE/ZAP.
    Messages with metadata are never processed by PUB sockets, but the metadata
    is kept referenced in the PUB object and never freed. (bsc#1176257)
    For more information see the security advisory:
    https://github.com/zeromq/libzmq/security/advisories/GHSA-4p5v-h92w-6wxw
  * Memory leak in client induced by malicious server(s) without CURVE/ZAP.
    When a pipe processes a delimiter and is already not in active state but
    still has an unfinished message, the message is leaked. (bsc#1176259)
    For more information see the security advisory:
    https://github.com/zeromq/libzmq/security/advisories/GHSA-wfr2-29gj-5w87
  * Heap overflow when receiving malformed ZMTP v1 packets (CURVE disabled).
    By crafting a packet which is not valid ZMTP v2/v3, and which has two
    messages larger than 8192 bytes, the decoder can be tricked into changing
    the recorded size of the 8192 bytes static buffer, which then gets overflown
    by the next message. The content that gets written in the overflown memory
    is entirely decided by the sender. (bsc#1176256)
    For more information see the security advisory:
    https://github.com/zeromq/libzmq/security/advisories/GHSA-fc3w-qxf5-7hp6
  For complete list of changes, see
  https://github.com/zeromq/libzmq/releases/tag/v4.3.3
* Tue Jul  9 2019 Vítězslav Čížek <vcizek@suse.com>
- 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
* Mon Jan 14 2019 adam.majer@suse.de
- New upstream version 4.3.1:
  * CVE-2019-6250: A vulnerability has been found that would allow
    attackers to direct a peer to jump to and execute from an address
    indicated by the attacker. (bsc#1121717)
  * fixed race condition in ZMQ_PUSH when quickly disconnecting and
    reconnecting causes last part of multi-part message to get
    "stuck" and resent by mistake to the new socket.
  For complete set of changes, see,
  https://github.com/zeromq/libzmq/releases/tag/v4.3.1
  https://github.com/zeromq/libzmq/releases/tag/v4.3.0
* Tue Jul 10 2018 dimstar@opensuse.org
- Add baselibs.conf: build libzmq5-32bit, as it is a required
  dependency to libavfilter7-32bit (i.e ffmpeg 4).
* Mon Mar 26 2018 adam.majer@suse.de
- New upstream version 4.2.5:
  * fix backward-incompatible change in the NULL auth
    mechanism that slipped in 4.2.3 and made connections
    with a ZAP domain set on a socket but without a working
    ZAP handler fail. See ZMQ_ZAP_ENFORCE_DOMAIN
  * clarify in zmq_close manpage that the operation will
    complete asynchronously.
* Thu Mar 22 2018 adam.majer@suse.de
- New upstream version 4.2.4
  * New DRAFT (see NEWS for 4.2.0) socket options:
  - ZMQ_LOOPBACK_FASTPATH to enable faster TCP loopback on Windows
  - ZMQ_METADATA to set application-specific metadata on a socket
    See doc/zmq_setsockopt.txt and doc/zmq_getsockopt.txt for details.
  * New DRAFT (see NEWS for 4.2.0) context options:
  - ZMQ_ZERO_COPY_RECV to disable zero-copy receive to save memory
    at the expense of slower performance
    See doc/zmq_ctx_set.txt and doc/zmq_ctx_get.txt for details.
  * New DRAFT API zmq_stopwatch_intermediate which returns the time
    elapsed without stopping the stopwatch.
  * TIPC: support addressing TIPC Port Identity addresses.
  * fix ZMQ_DISH over UDP triggers errno_assert() after watermark
  * fix ZMQ_PUB crash when due to high volume of subscribe and
    unsubscribe messages, an unmatched unsubscribe message is
    received in certain conditions
  * see NEWS and ChangeLog for additional details
- install licenses correctly and update SPDX license to version 3
* Thu Dec 14 2017 adam.majer@suse.de
- 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.
* Thu Jun  1 2017 adam.majer@suse.de
- remove_werror.patch: don't use -Werror in compiler flags
- disable silent compilation flags
* Tue Mar 21 2017 adam.majer@suse.de
- New upstream version 4.2.2
  * fix SO_NOSIGPIPE and connection closing by peer race condition
  * fix IPv4-in-IPv6 mapped addresses parsing error
  * zmq_z85_decode did validate its input. The function has been
  fixed to correctly follow RFC32 and return NULL if the input is
  invalid.
  * for complete changelog see
  https://github.com/zeromq/libzmq/releases/tag/v4.2.2
* Fri Feb  3 2017 jengelh@inai.de
- Compact the descriptions.
* Sat Dec 31 2016 adam.majer@suse.de
- New upstream version 4.2.1
  * Bugfix release. For complete changelog see
    https://github.com/zeromq/libzmq/releases/tag/v4.2.1
* Sat Nov  5 2016 mvyskocil@opensuse.org
- New upstream version 4.2.0
  * For Pieter. Thanks for making all of this possible.
  * This release introduces new APIs, but it is ABI compatible with
    libzmq 4.1.2 and up.
  * Fixed alignment problem on arm and sparc, need to rebuild
    against 4.2.0
  * New Context option ZMQ_MAX_MSGSZ
  * New Socket options:
  - ZMQ_HANDSHAKE_IVL
  - ZMQ_SOCKS_PROXY
  - ZMQ_XPUB_NODROP
  - ZMQ_BLOCKY
  - ZMQ_XPUB_MANUAL
  - ZMQ_XPUB_WELCOME_MSG
  - ZMQ_STREAM_NOTIFY
  - ZMQ_INVERT_MATCHING
  - ZMQ_HEARTBEAT_IVL
  - ZMQ_HEARTBEAT_TTL
  - ZMQ_HEARTBEAT_TIMEOUT
    ....
  * see NEWS for all changes
- Packaging
  * add --with-libsodium to link against libsodium and not internal
    tweetnacl
  * remove disable-silent-rules
  * add --enable-curve to build curve_keygen tool
    https://github.com/zeromq/libzmq/pull/2195
  * add libunwind to build dependencies
* Wed Jun 29 2016 jengelh@inai.de
- Remove useless --with-pic, it's only for (non-built) static libs
* Tue Jun 28 2016 dmueller@suse.com
- skip testsuite on qemu-linux-user
* Fri Jun 17 2016 adam.majer@suse.de
- New upstream version 4.1.5
  * Fixed #1806 - uninitialised read in curve getsockopt.
  * Fixed #1807 - build broken with GCC 6.
  * Fixed #1831 - potential assertion failure with latest libsodium.
  * Fixed #1850 - detection issues with tweetnacl/libsodium.
  * Fixed #1877 - Avoid terminating connections prematurely
  * fixes some IPv6 related issues
- Removed 3ad076.patch, upstreamed
* Mon May 30 2016 adam.majer@suse.de
- Added patch 3ad076.patch
  * based on https://github.com/zeromq/zeromq4-1/commit/3ad076.patch
  * refreshed and removed NEWS section
  * fixes unbinding when IPv6 is available
- Add '--disable-dependency-tracking' since we are not rebuilding
- Re-enable concurrent check target, but fall back to sequential on
  failure. This allows quick test building, while allows
  sequential unit test run. Run tests 3x before 'official' failure as
  some are a little flaky (upstream acknowledges this)
* Mon May 30 2016 adam.majer@suse.de
- Append test_log in build output if there are failures
* Mon May 30 2016 adam.majer@suse.de
- Update to 4.1.4
  * fixed build failure with latest libsodium
  * handle IPv6 link local addresses
  * fixed assertion failure in msg.cpp:390 on STREAM sockets
  * fixed assertion failure in tcp.cpp after network reconnect
  * fixed socket monitor hang
- Remove libsodium-init.patch - upstreamed
- Run %%check rule sequentially to prevent assert failures
* Thu Nov  5 2015 idonmez@suse.com
- Add libsodium-init.patch to handle sodium_init() error.
* Tue Oct  6 2015 idonmez@suse.com
- Re-enable %%check
* Mon Sep 28 2015 stephan.barth@suse.com
- update to version 4.1.3.
  Changes from upstream:
  * Fixed #1532 - getsockopt ZMQ_RCVMORE now resets all bits instead of only
    32
  * Fixed #1445 - zmq::socket_base_t::connect fails on tcp ipv6 address
* Tue Sep 22 2015 tampakrap@opensuse.org
- Fix the conditionals on the previous commit
* Tue Sep 22 2015 tampakrap@opensuse.org
- Conditionally use the pkgconfig style, to support SLE11
* Tue Jul 14 2015 tchvatal@suse.com
- Version bump to 4.1.2 bnc#937912:
  * Added explicit reference to static link exception in every source file.
  * Bumped ABI version to 5:0:0 since 4.1.x changed the ABI.
  * Fixed STDINT event interface macros to work with CZMQ 3.0.
  * Fixed installation of man pages when BUILD_DOC is not set.
  * Fixed #1428 - regression on single-socket proxies.
* Tue Jun 16 2015 mvyskocil@opensuse.org
- Add pkgconfig(libsodium) as mandatory build dependency
- Change libuuid-devel to pkgconfig style
* Mon Jun  8 2015 mvyskocil@opensuse.org
- Build depends on openpgm-devel
* Sun Jun  7 2015 mvyskocil@opensuse.org
- Update to 4.1.1, bugfix release
- drop unecessary
  zeromq_4.0.5_avoid_curve_test_hang_on_ppc64.patch
* Wed Jan 28 2015 normand@linux.vnet.ibm.com
- Add a zeromq_4.0.5_avoid_curve_test_hang_on_ppc64.patch
  to avoid curve test to hang for ppc ppc64 ppc64le architectures
  related bug ref: bnc#912460
  This is a set of commits grab from zeromq4-x git tree
  from https://github.com/zeromq/zeromq4-x.git
    Merge pull request #101 from hintjens/master
    Problem: issue #1273, protocol downgrade attack
    Merge pull request #100 from hintjens/master
    Problem: zmq_ctx_term has insane behavior by default
  * Also fixes bnc#931978 CVE-2014-9721
* Fri Nov 28 2014 tchvatal@suse.com
- Split the curve-keygen binary to separate subpkg bnc#907584
  * Add conflicts to new supackage
* Thu Nov 13 2014 tchvatal@suse.com
- Gracely continue when checks fail
* Thu Oct 16 2014 tchvatal@suse.com
- Remove sle11 support, not really needed for us here
- Add libsodium dep for testsuite where possible
- Version bump to 4.0.5 fixes bnc#898917 CVE-2014-7202 and
  CVE-2014-7203:
  * Fixed #1191; CURVE mechanism does not verify short term nonces.
  * Fixed #1190; stream_engine is vulnerable to downgrade attacks.
  * Fixed #1088; assertion failure for WSAENOTSOCK on Windows.
  * Fixed #1015; race condition while connecting inproc sockets.
  * Fixed #994; bump so library number to 4.0.0
  * Fixed #939, assertion failed: !more (fq.cpp:99) after many ZAP requests.
  * Fixed #872; lost first part of message over inproc://.
  * Fixed #797, keep-alive on Windows.
* Mon May 12 2014 tchvatal@suse.com
- Cleanup to remove SLE10 and older mentions
- Remove other distros from rules as we don't build for them anyway.
- Cleanup with spec-cleaner.
- Enable tests.
* Thu Mar 27 2014 speilicke@suse.com
- Move to 'download_files' source service which is in better shap
  and easier to use
* Thu Mar 27 2014 mvyskocil@opensuse.org
- Update to 4.0.4
  For details see /usr/share/doc/packages/zeromq-devel/NEWS
- Moved most of docs to devel package to reduce a size of libmq3
* Fri Dec 13 2013 bahid@emc.com
- Update to version 4.0.3
  For details see /usr/share/doc/packages/libzmq3/NEWS
* Sat Sep 21 2013 p.drouand@gmail.com
- Update to version 3.2.4
  For details see /usr/share/doc/packages/libzmq3/NEWS
* Fri Nov 23 2012 mrueckert@suse.de
- Update to version 3.2.2
  For details see /usr/share/doc/packages/libzmq3/NEWS
* Sat Jan 28 2012 jengelh@medozas.de
- Remove redundant tags/sections per specfile guideline suggestions
* Wed Sep 28 2011 saschpe@gmx.de
- Fixed license to LGPL-3.0+ (SPDX style)
* Wed Aug 24 2011 mrueckert@suse.de
- make sure the compiler commandlines are shown (V=1)
- make it build on sle11 again. we dont have pkg-config provides
  there
* Fri Aug 19 2011 saschpe@suse.de
- Use %%makeinstall marcro instead of %%make_install to fix build
  on Mandriva and Fedora
* Fri Aug 19 2011 saschpe@suse.de
- Add libuuid-devel to RedHat BuildRequires to fix build
* Fri Aug 19 2011 saschpe@suse.de
- Update to version 2.1.7:
  * Fixed issue 188, assert when closing socket that had unread multipart
    data still on it (affected PULL, SUB, ROUTER, and DEALER sockets).
  * Fixed issue 191, message atomicity issue with PUB sockets (an old issue).
  * Fixed issue 199 (affected ROUTER/XREP sockets, an old issue).
  * Fixed issue 206, assertion failure in zmq.cpp:223, affected all sockets
    (bug was introduced in 2.1.6 as part of message validity checking).
  * Fixed issue 211, REP socket asserted if sent malformed envelope (old issue
    due to abuse of assertions for error checking).
  * Fixed issue 212, reconnect failing after resume from sleep on Windows
    (due to not handling WSAENETDOWN).
  * Properly handle WSAENETUNREACH on Windows (e.g. if client connects
    before server binds).
  * Fixed memory leak with threads on Windows.
- Changes from previous releases:
  * See https://raw.github.com/zeromq/zeromq2-1/master/NEWS
- Run spec-cleaner, added proper spec license header, shorter file lists
- Split out documentation package
* Wed Dec  1 2010 mrueckert@suse.de
- update to version 2.0.10
  * Upgrade OpenPGM to 2.1.28~dfsg (Martin Lucina)
  * Added a ZMQ_VERSION macro to zmq.h for compile-time API version
    detection (Martin Sustrik, Gonzalo Diethelm, Martin Lucina)
  * Fix memory leak under Windows (Taras Shpot)
  * Makefile.am: Add missing files to distribution, improve
    maintainer-clean (Martin Lucina)
  * Add support for RHEL6 in the spec file (Sebastian Otaegui)
  * configure.in: Do not patch libtool rpath handling (Martin Lucina)
  * Fixing the Red Hat packaging (Martin Sustrik)
  * zmq_msg_move called on uninitialised message in xrep_t::xrecv
  - - fixed (Max Wolf)
  * crash when closing an ypipe -- fixed (Dhammika Pathirana)
  * REQ socket can die when reply is delivered on wrong unerlying
    connection -- fixed (Martin Sustrik)
  * if TSC jumps backwards (in case of migration to a
    different CPU core) latency peak may occur -- fixed
    (Martin Sustrik)
  * values of RATE, RECOVERY_IVL and SWAP options are checked for
    negative values (Martin Sustrik)
- added provides for libzmq-devel
* Mon Sep  6 2010 mrueckert@suse.de
- initial package