zeromq/zeromq.spec
Michal Vyskocil 669dab446c Accepting request 438778 from home:mvyskocil:branches:devel:libraries:c_c++
- 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

OBS-URL: https://build.opensuse.org/request/show/438778
OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/zeromq?expand=0&rev=51
2016-11-08 07:43:16 +00:00

161 lines
5.0 KiB
RPMSpec

#
# spec file for package zeromq
#
# Copyright (c) 2016 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
%define with_pgm 1
%endif
Name: zeromq
Version: 4.2.0
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 0%{?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
%description
The 0MQ lightweight messaging kernel is a library which extends the
standard socket interfaces with features traditionally provided by
specialised messaging middleware products. 0MQ sockets provide an
abstraction of asynchronous message queues, multiple messaging patterns,
message filtering (subscriptions), seamless access to multiple transport
protocols and more.
%package -n %{lib_name}
Summary: Shared Library for ZeroMQ
Group: Productivity/Networking/Web/Servers
Recommends: %{name}-tools = %{version}
%description -n %{lib_name}
The 0MQ lightweight messaging kernel is a library which extends the
standard socket interfaces with features traditionally provided by
specialised messaging middleware products. 0MQ sockets provide an
abstraction of asynchronous message queues, multiple messaging patterns,
message filtering (subscriptions), seamless access to multiple transport
protocols and more.
This package holds the shared library part of the ZeroMQ package.
%package tools
Summary: Tools to work with ZeroMQ
Group: Productivity/Networking/Web/Servers
# Conflict old libraries as we collide with them
Conflicts: libzmq1
Conflicts: libzmq2
Conflicts: libzmq3
%description tools
The 0MQ lightweight messaging kernel is a library which extends the
standard socket interfaces with features traditionally provided by
specialised messaging middleware products. 0MQ sockets provide an
abstraction of asynchronous message queues, multiple messaging patterns,
message filtering (subscriptions), seamless access to multiple transport
protocols and more.
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 0MQ lightweight messaging kernel is a library which extends the
standard socket interfaces with features traditionally provided by
specialised messaging middleware products. 0MQ sockets provide an
abstraction of asynchronous message queues, multiple messaging patterns,
message filtering (subscriptions), seamless access to multiple transport
protocols and more.
This package holds the development files for ZeroMQ.
%prep
%setup -q
%build
export LIBS=-ldl
%configure \
--with-libsodium \
--enable-curve \
%if 0%{?with_pgm}
--with-pgm \
%endif
--disable-static \
--disable-dependency-tracking
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