From aa4fd106d18140baef6db53f9b74d853d7c9a0c3 Mon Sep 17 00:00:00 2001
From: Mikko Koppanen <mkoppanen@php.net>
Date: Fri, 8 Apr 2011 10:28:57 +0100
Subject: [PATCH] RPM packaging improvements


Signed-off-by: Mikko Koppanen <mkoppanen@php.net>
---
 Makefile.am                  |    1 -
 builds/redhat/zeromq.spec    |  137 -----------------------------------------
 builds/redhat/zeromq.spec.in |  138 ++++++++++++++++++++++++++++++++++++++++++
 configure.in                 |    3 +-
 4 files changed, 140 insertions(+), 139 deletions(-)
 delete mode 100644 builds/redhat/zeromq.spec
 create mode 100644 builds/redhat/zeromq.spec.in

diff --git a/Makefile.am b/Makefile.am
index 41e4591..962a53e 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -33,7 +33,6 @@ dist-hook:
 		echo A git clone is required to generate a ChangeLog >&2; \
 	fi
 	-cp $(top_srcdir)/builds/redhat/zeromq.spec $(distdir)/zeromq.spec
-	-sed s/\@PACKAGE_VERSION\@/@PACKAGE_VERSION@/ -i $(distdir)/zeromq.spec
 	-rm -rf $(distdir)/foreign/openpgm/build-staging
 distclean-local:
 	-rm -rf $(top_srcdir)/foreign/openpgm/build-staging
diff --git a/builds/redhat/zeromq.spec b/builds/redhat/zeromq.spec
deleted file mode 100644
index e8316ac..0000000
--- a/builds/redhat/zeromq.spec
+++ /dev/null
@@ -1,137 +0,0 @@
-Name:          zeromq
-Version:       @PACKAGE_VERSION@
-Release:       1%{?dist}
-Summary:       The ZeroMQ messaging library
-Group:         Applications/Internet
-License:       LGPLv3+
-URL:           http://www.zeromq.org/
-Source:        http://www.zeromq.org/local--files/area:download/%{name}-%{version}.tar.gz
-Prefix:        %{_prefix}
-Buildroot:     %{_tmppath}/%{name}-%{version}-%{release}-root
-BuildRequires: gcc, make, gcc-c++, libstdc++-devel
-Requires:      libstdc++
-
-%if %{?rhel}%{!?rhel:0} >= 6
-BuildRequires: libuuid-devel
-Requires:      libuuid
-%elseif %{?rhel}%{!?rhel:0} >= 5
-BuildRequires: e2fsprogs-devel
-Requires:      e2fsprogs
-%else
-BuildRequires: uuid-devel
-Requires:      uuid
-%endif
-
-# Build pgm only on supported archs
-%ifarch pentium3 pentium4 athlon i386 i486 i586 i686 x86_64
-BuildRequires: glib2-devel
-Requires: glib2
-%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.
-
-This package contains the ZeroMQ shared library.
-
-%package devel
-Summary:  Development files and static library for the ZeroMQ library
-Group:    Development/Libraries
-Requires: %{name} = %{version}-%{release}, pkgconfig
-
-%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 contains ZeroMQ related development libraries and header files.
-
-%prep
-%setup -q
-
-%build
-%ifarch pentium3 pentium4 athlon i386 i486 i586 i686 x86_64
-  %configure --with-pgm
-%else
-  %configure
-%endif
-
-%{__make} %{?_smp_mflags}
-
-%install
-[ "%{buildroot}" != "/" ] && %{__rm} -rf %{buildroot}
-
-# Install the package to build area
-%{__make} check
-%makeinstall
-
-%post
-/sbin/ldconfig
-
-%postun
-/sbin/ldconfig
-
-%clean
-[ "%{buildroot}" != "/" ] && %{__rm} -rf %{buildroot}
-
-%files
-%defattr(-,root,root,-)
-
-# docs in the main package
-%doc AUTHORS ChangeLog COPYING COPYING.LESSER NEWS README
-
-# libraries
-%{_libdir}/libzmq.so.1
-%{_libdir}/libzmq.so.1.0.0
-
-%{_mandir}/man7/zmq.7.gz
-
-%files devel
-%defattr(-,root,root,-)
-%{_includedir}/zmq.h
-%{_includedir}/zmq_utils.h
-
-%{_libdir}/libzmq.la
-%{_libdir}/libzmq.a
-%{_libdir}/pkgconfig/libzmq.pc
-%{_libdir}/libzmq.so
-
-%{_mandir}/man3/zmq_bind.3.gz
-%{_mandir}/man3/zmq_close.3.gz
-%{_mandir}/man3/zmq_connect.3.gz
-%{_mandir}/man3/zmq_errno.3.gz
-%{_mandir}/man3/zmq_getsockopt.3.gz
-%{_mandir}/man3/zmq_init.3.gz
-%{_mandir}/man3/zmq_msg_close.3.gz
-%{_mandir}/man3/zmq_msg_copy.3.gz
-%{_mandir}/man3/zmq_msg_data.3.gz
-%{_mandir}/man3/zmq_msg_init.3.gz
-%{_mandir}/man3/zmq_msg_init_data.3.gz
-%{_mandir}/man3/zmq_msg_init_size.3.gz
-%{_mandir}/man3/zmq_msg_move.3.gz
-%{_mandir}/man3/zmq_msg_size.3.gz
-%{_mandir}/man3/zmq_poll.3.gz
-%{_mandir}/man3/zmq_recv.3.gz
-%{_mandir}/man3/zmq_send.3.gz
-%{_mandir}/man3/zmq_setsockopt.3.gz
-%{_mandir}/man3/zmq_socket.3.gz
-%{_mandir}/man3/zmq_strerror.3.gz
-%{_mandir}/man3/zmq_term.3.gz
-%{_mandir}/man3/zmq_version.3.gz
-%{_mandir}/man7/zmq_cpp.7.gz
-%{_mandir}/man7/zmq_epgm.7.gz
-%{_mandir}/man7/zmq_inproc.7.gz
-%{_mandir}/man7/zmq_ipc.7.gz
-%{_mandir}/man7/zmq_pgm.7.gz
-%{_mandir}/man7/zmq_tcp.7.gz
-
-%changelog
-* Sat Apr 10 2010 Mikko Koppanen <mkoppanen@php.net> 2.0.7-1
-- Initial packaging
diff --git a/builds/redhat/zeromq.spec.in b/builds/redhat/zeromq.spec.in
new file mode 100644
index 0000000..e307018
--- /dev/null
+++ b/builds/redhat/zeromq.spec.in
@@ -0,0 +1,138 @@
+Name:          zeromq
+Version:       @PACKAGE_VERSION@
+Release:       1%{?dist}
+Summary:       The ZeroMQ messaging library
+Group:         Applications/Internet
+License:       LGPLv3+
+URL:           http://www.zeromq.org/
+Source:        http://download.zeromq.org/%{name}-%{version}.tar.gz
+Prefix:        %{_prefix}
+Buildroot:     %{_tmppath}/%{name}-%{version}-%{release}-root
+BuildRequires: gcc, make, gcc-c++, libstdc++-devel
+Requires:      libstdc++
+
+%if %{?rhel}%{!?rhel:0} >= 6
+BuildRequires: libuuid-devel
+Requires:      libuuid
+%elseif %{?rhel}%{!?rhel:0} >= 5
+BuildRequires: e2fsprogs-devel
+Requires:      e2fsprogs
+%else
+BuildRequires: uuid-devel
+Requires:      uuid
+%endif
+
+# Build pgm only on supported archs
+%ifarch pentium3 pentium4 athlon i386 i486 i586 i686 x86_64
+BuildRequires: python, perl
+%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.
+
+This package contains the ZeroMQ shared library.
+
+%package devel
+Summary:  Development files and static library for the ZeroMQ library
+Group:    Development/Libraries
+Requires: %{name} = %{version}-%{release}, pkgconfig
+
+%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 contains ZeroMQ related development libraries and header files.
+
+%prep
+%setup -q
+
+%build
+%ifarch pentium3 pentium4 athlon i386 i486 i586 i686 x86_64
+  %configure --with-pgm
+%else
+  %configure
+%endif
+
+%{__make} %{?_smp_mflags}
+
+%install
+[ "%{buildroot}" != "/" ] && %{__rm} -rf %{buildroot}
+
+# Install the package to build area
+%{__make} check
+%makeinstall
+
+%post
+/sbin/ldconfig
+
+%postun
+/sbin/ldconfig
+
+%clean
+[ "%{buildroot}" != "/" ] && %{__rm} -rf %{buildroot}
+
+%files
+%defattr(-,root,root,-)
+
+# docs in the main package
+%doc AUTHORS ChangeLog COPYING COPYING.LESSER NEWS README
+
+# libraries
+%{_libdir}/libzmq.so.1
+%{_libdir}/libzmq.so.1.0.0
+
+%{_mandir}/man7/zmq.7.gz
+
+%files devel
+%defattr(-,root,root,-)
+%{_includedir}/zmq.h
+%{_includedir}/zmq_utils.h
+
+%{_libdir}/libzmq.la
+%{_libdir}/libzmq.a
+%{_libdir}/pkgconfig/libzmq.pc
+%{_libdir}/libzmq.so
+
+%{_mandir}/man3/zmq_bind.3.gz
+%{_mandir}/man3/zmq_close.3.gz
+%{_mandir}/man3/zmq_connect.3.gz
+%{_mandir}/man3/zmq_errno.3.gz
+%{_mandir}/man3/zmq_getsockopt.3.gz
+%{_mandir}/man3/zmq_init.3.gz
+%{_mandir}/man3/zmq_msg_close.3.gz
+%{_mandir}/man3/zmq_msg_copy.3.gz
+%{_mandir}/man3/zmq_msg_data.3.gz
+%{_mandir}/man3/zmq_msg_init.3.gz
+%{_mandir}/man3/zmq_msg_init_data.3.gz
+%{_mandir}/man3/zmq_msg_init_size.3.gz
+%{_mandir}/man3/zmq_msg_move.3.gz
+%{_mandir}/man3/zmq_msg_size.3.gz
+%{_mandir}/man3/zmq_poll.3.gz
+%{_mandir}/man3/zmq_recv.3.gz
+%{_mandir}/man3/zmq_send.3.gz
+%{_mandir}/man3/zmq_setsockopt.3.gz
+%{_mandir}/man3/zmq_socket.3.gz
+%{_mandir}/man3/zmq_strerror.3.gz
+%{_mandir}/man3/zmq_term.3.gz
+%{_mandir}/man3/zmq_version.3.gz
+%{_mandir}/man7/zmq_epgm.7.gz
+%{_mandir}/man7/zmq_inproc.7.gz
+%{_mandir}/man7/zmq_ipc.7.gz
+%{_mandir}/man7/zmq_pgm.7.gz
+%{_mandir}/man7/zmq_tcp.7.gz
+
+%changelog
+* Fri Apr 8 2011 Mikko Koppanen <mikko@kuut.io> 3.0.0-1
+- Update dependencies and packaged files
+
+* Sat Apr 10 2010 Mikko Koppanen <mkoppanen@php.net> 2.0.7-1
+- Initial packaging
diff --git a/configure.in b/configure.in
index b6c24b4..27cde3f 100644
--- a/configure.in
+++ b/configure.in
@@ -375,6 +375,7 @@ AC_SUBST(LIBZMQ_EXTRA_LDFLAGS)
 AC_CONFIG_FILES([Makefile src/Makefile doc/Makefile
     perf/Makefile src/libzmq.pc \
     builds/msvc/Makefile tests/Makefile \
-    foreign/openpgm/Makefile])
+    foreign/openpgm/Makefile \
+    builds/redhat/zeromq.spec])
 AC_OUTPUT
 
-- 
1.7.3.5

