[qpid-cpp] Rebased on Qpid 0.30.

Darryl L. Pierce mcpierce at fedoraproject.org
Thu Oct 2 15:42:32 UTC 2014


commit fece88a6e3eb63086577c4db72e306d065e999a9
Author: Darryl L. Pierce <mcpierce at gmail.com>
Date:   Thu Oct 2 11:41:54 2014 -0400

    Rebased on Qpid 0.30.
    
    - Upstream tarball filename changed from qpid-##.#.tar.gz to qpid-cpp-##.#.tar.gz.
    - qpid-tools moved out to a separate package.
    - Moved qpid-send and qpid-receive to the qpid-cpp-client-devel package.

 .gitignore                                         |    2 +
 ...JIRA-qpidd.service-file-for-use-on-Fedora.patch |    4 +-
 ...h => 0002-NO-JIRA-Remove-dead-unused-code.patch |   30 +----
 0003-QPID-3650-Avoid-unaligned-memory-access.patch |   30 -----
 ...D-6128-Fix-compiling-SocketAddress-on-ARM.patch |   41 ++++++
 0004-QPID-3650-Avoid-unaligned-memory-access.patch |   75 -----------
 qpid-cpp-aarch64.patch                             |   11 --
 qpid-cpp.spec                                      |  137 +++++--------------
 sources                                            |    3 +-
 9 files changed, 89 insertions(+), 244 deletions(-)
---
diff --git a/.gitignore b/.gitignore
index 3772253..1cea7dc 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1 +1,3 @@
 /qpid-0.*.tar.gz
+/qpid-cpp-0.30.tar.gz
+/qpid-tools-0.30.tar.gz
diff --git a/0001-NO-JIRA-qpidd.service-file-for-use-on-Fedora.patch b/0001-NO-JIRA-qpidd.service-file-for-use-on-Fedora.patch
index c40a644..c7fa027 100644
--- a/0001-NO-JIRA-qpidd.service-file-for-use-on-Fedora.patch
+++ b/0001-NO-JIRA-qpidd.service-file-for-use-on-Fedora.patch
@@ -1,7 +1,7 @@
-From a4dfca94cd18f54810d78d2c5916e9addd807937 Mon Sep 17 00:00:00 2001
+From d377a75fc454bd329f9dc340dd13aaab080fcf3a Mon Sep 17 00:00:00 2001
 From: "Darryl L. Pierce" <mcpierce at gmail.com>
 Date: Wed, 3 Apr 2013 10:07:37 -0400
-Subject: [PATCH 1/4] NO-JIRA: qpidd.service file for use on Fedora
+Subject: [PATCH 1/3] NO-JIRA: qpidd.service file for use on Fedora
 
 This patch provides the needed systemd file for running the Qpid broker
 as a service.
diff --git a/0002-NO-JIRA-Remove-unused-code.patch b/0002-NO-JIRA-Remove-dead-unused-code.patch
similarity index 60%
rename from 0002-NO-JIRA-Remove-unused-code.patch
rename to 0002-NO-JIRA-Remove-dead-unused-code.patch
index 919ec4b..dd2029e 100644
--- a/0002-NO-JIRA-Remove-unused-code.patch
+++ b/0002-NO-JIRA-Remove-dead-unused-code.patch
@@ -1,31 +1,13 @@
-From 4a97f3b736e3f604f018777b5a04abb7b60daccf Mon Sep 17 00:00:00 2001
+From 49e0b769ce4a2f4bfc4a499adaedbf43a4cf7ffd Mon Sep 17 00:00:00 2001
 From: "Darryl L. Pierce" <dpierce at redhat.com>
-Date: Wed, 4 Jun 2014 10:42:48 -0400
-Subject: [PATCH 2/4] NO-JIRA: Remove unused code
+Date: Tue, 30 Sep 2014 10:27:54 -0400
+Subject: [PATCH 2/3] NO-JIRA: Remove dead/unused code
 
 ---
- qpid/cpp/src/qpid/ha/RemoteBackup.cpp              | 6 ------
  qpid/cpp/src/qpid/ha/ReplicatingSubscription.cpp   | 7 -------
  qpid/cpp/src/qpid/messaging/amqp/AddressHelper.cpp | 7 -------
- 3 files changed, 20 deletions(-)
+ 2 files changed, 14 deletions(-)
 
-diff --git a/qpid/cpp/src/qpid/ha/RemoteBackup.cpp b/qpid/cpp/src/qpid/ha/RemoteBackup.cpp
-index bf3d779..feee116 100644
---- a/qpid/cpp/src/qpid/ha/RemoteBackup.cpp
-+++ b/qpid/cpp/src/qpid/ha/RemoteBackup.cpp
-@@ -91,12 +91,6 @@ struct QueueSetPrinter {
-     std::string prefix;
-     QueueSetPrinter(const std::string& p, const QS& q) : qs(q), prefix(p) {}
- };
--std::ostream& operator<<(std::ostream& o, const QueueSetPrinter& qp) {
--    if (!qp.qs.empty()) o << qp.prefix;
--    for (QS::const_iterator i = qp.qs.begin(); i != qp.qs.end(); ++i)
--        o << (*i)->getName() << " ";
--    return o;
--}
- }
- 
- void RemoteBackup::ready(const QueuePtr& q) {
 diff --git a/qpid/cpp/src/qpid/ha/ReplicatingSubscription.cpp b/qpid/cpp/src/qpid/ha/ReplicatingSubscription.cpp
 index 635d504..4c3823c 100644
 --- a/qpid/cpp/src/qpid/ha/ReplicatingSubscription.cpp
@@ -45,10 +27,10 @@ index 635d504..4c3823c 100644
      HaBroker& hb,
      SemanticState* parent,
 diff --git a/qpid/cpp/src/qpid/messaging/amqp/AddressHelper.cpp b/qpid/cpp/src/qpid/messaging/amqp/AddressHelper.cpp
-index 3dbacac..21d8238 100644
+index 763deb3..dc00ec4 100644
 --- a/qpid/cpp/src/qpid/messaging/amqp/AddressHelper.cpp
 +++ b/qpid/cpp/src/qpid/messaging/amqp/AddressHelper.cpp
-@@ -135,13 +135,6 @@ uint64_t getFilterDescriptor(const std::string& key)
+@@ -138,13 +138,6 @@ uint64_t getFilterDescriptor(const std::string& key)
  {
      return hasWildcards(key) ? qpid::amqp::filters::LEGACY_TOPIC_FILTER_CODE : qpid::amqp::filters::LEGACY_DIRECT_FILTER_CODE;
  }
diff --git a/0003-QPID-6128-Fix-compiling-SocketAddress-on-ARM.patch b/0003-QPID-6128-Fix-compiling-SocketAddress-on-ARM.patch
new file mode 100644
index 0000000..416bdd7
--- /dev/null
+++ b/0003-QPID-6128-Fix-compiling-SocketAddress-on-ARM.patch
@@ -0,0 +1,41 @@
+From 3e22a83f7247cd0c2b0da1e3a55de78952d99391 Mon Sep 17 00:00:00 2001
+From: "Darryl L. Pierce" <dpierce at redhat.com>
+Date: Wed, 1 Oct 2014 11:12:49 -0400
+Subject: [PATCH 3/3] QPID-6128: Fix compiling SocketAddress on ARM
+
+---
+ qpid/cpp/src/qpid/sys/posix/SocketAddress.cpp | 16 ++++++++++++----
+ 1 file changed, 12 insertions(+), 4 deletions(-)
+
+diff --git a/qpid/cpp/src/qpid/sys/posix/SocketAddress.cpp b/qpid/cpp/src/qpid/sys/posix/SocketAddress.cpp
+index b96348f..4c860a7 100644
+--- a/qpid/cpp/src/qpid/sys/posix/SocketAddress.cpp
++++ b/qpid/cpp/src/qpid/sys/posix/SocketAddress.cpp
+@@ -287,12 +287,20 @@ bool SocketAddress::compareAddresses(const struct addrinfo& lo,
+         return false;
+     }
+     if (lo.ai_family == AF_INET) {
+-        struct sockaddr_in* sin4lo = (struct sockaddr_in*)lo.ai_addr;
+-        struct sockaddr_in* sin4hi = (struct sockaddr_in*)hi.ai_addr;
++        void* taddr;
++
++        taddr = (void*)lo.ai_addr;
++        struct sockaddr_in* sin4lo = (struct sockaddr_in*)taddr;
++        taddr = (void*)hi.ai_addr;
++        struct sockaddr_in* sin4hi = (struct sockaddr_in*)taddr;
+         result = memcmp(&sin4hi->sin_addr, &sin4lo->sin_addr, sizeof(in_addr));
+     } else if (lo.ai_family == AF_INET6) {
+-        struct sockaddr_in6* sin6lo = (struct sockaddr_in6*)lo.ai_addr;
+-        struct sockaddr_in6* sin6hi = (struct sockaddr_in6*)hi.ai_addr;
++        void* taddr;
++
++        taddr = (void*)lo.ai_addr;
++        struct sockaddr_in6* sin6lo = (struct sockaddr_in6*)taddr;
++        taddr = (void*)hi.ai_addr;
++        struct sockaddr_in6* sin6hi = (struct sockaddr_in6*)taddr;
+         result = memcmp(&sin6hi->sin6_addr, &sin6lo->sin6_addr, sizeof(in6_addr));
+     } else {
+         assert (false);
+-- 
+1.9.3
+
diff --git a/qpid-cpp.spec b/qpid-cpp.spec
index c5e8385..cf7618b 100644
--- a/qpid-cpp.spec
+++ b/qpid-cpp.spec
@@ -2,18 +2,16 @@
 %{!?_pkgdocdir: %global _pkgdocdir %{_docdir}/%{name}-%{version}}
 
 Name:          qpid-cpp
-Version:       0.28
-Release:       8%{?dist}
+Version:       0.30
+Release:       1%{?dist}
 Summary:       Libraries for Qpid C++ client applications
 License:       ASL 2.0
 URL:           http://qpid.apache.org
 
-Source0:       http://www.apache.org/dist/qpid/%{version}/qpid-%{version}.tar.gz
+Source0:       http://www.apache.org/dist/qpid/%{version}/qpid-cpp-%{version}.tar.gz
 Patch0001:     0001-NO-JIRA-qpidd.service-file-for-use-on-Fedora.patch
-Patch0002:     0002-NO-JIRA-Remove-unused-code.patch
-Patch0003:     0003-QPID-3650-Avoid-unaligned-memory-access.patch
-Patch0004:     0004-QPID-3650-Avoid-unaligned-memory-access.patch
-Patch1000:     qpid-cpp-aarch64.patch
+Patch0002:     0002-NO-JIRA-Remove-dead-unused-code.patch
+Patch0003:     0003-QPID-6128-Fix-compiling-SocketAddress-on-ARM.patch
 
 BuildRequires: gcc-c++
 BuildRequires: cmake
@@ -24,6 +22,7 @@ BuildRequires: pkgconfig
 BuildRequires: ruby
 BuildRequires: python
 BuildRequires: python-devel
+BuildRequires: python-setuptools
 BuildRequires: cyrus-sasl-devel
 BuildRequires: cyrus-sasl-lib
 BuildRequires: cyrus-sasl
@@ -72,11 +71,11 @@ C++. Clients exchange messages with an AMQP message broker using
 the AMQP protocol.
 
 %files client
-%doc cpp/DESIGN
-%doc cpp/LICENSE
-%doc cpp/NOTICE
-%doc cpp/README.txt
-%doc cpp/RELEASE_NOTES
+%doc DESIGN
+%doc LICENSE
+%doc NOTICE
+%doc README.txt
+%doc RELEASE_NOTES
 %{_libdir}/libqpidcommon.so*
 %{_libdir}/libqpidclient.so*
 %{_libdir}/libqpidtypes.so*
@@ -126,15 +125,10 @@ in C++ using Qpid.  Qpid implements the AMQP messaging specification.
 %{_includedir}/qpid/swig_perl_typemaps.i
 %{_includedir}/qpid/swig_python_typemaps.i
 %{_includedir}/qpid/swig_ruby_typemaps.i
-%{_includedir}/qpid/amqp_0_10
 %{_includedir}/qpid/client
-%{_includedir}/qpid/console
 %{_includedir}/qpid/framing
 %{_includedir}/qpid/sys
-%{_includedir}/qpid/log
-%{_includedir}/qpid/management
 %{_includedir}/qpid/messaging
-%{_includedir}/qpid/agent
 %{_includedir}/qpid/types
 %{_libdir}/libqpidcommon.so
 %{_libdir}/libqpidclient.so
@@ -149,6 +143,8 @@ in C++ using Qpid.  Qpid implements the AMQP messaging specification.
 %{_bindir}/qpid-latency-test
 %{_bindir}/qpid-client-test
 %{_bindir}/qpid-txtest
+%{_bindir}/qpid-send
+%{_bindir}/qpid-receive
 %{_libexecdir}/qpid/tests
 %{_libdir}/cmake/Qpid
 
@@ -241,9 +237,9 @@ Requires(postun): systemd-units
 %{summary}.
 
 %files server-ha
-%{_bindir}/qpid-ha
 %{_unitdir}/qpidd-primary.service
 %{_libdir}/qpid/daemon/ha.so
+%doc README-HA.txt
 
 %post server-ha
 /sbin/ldconfig
@@ -362,62 +358,17 @@ with Berkeley DB.
 
 
 
-#
-# % package server-linearstore
-# Summary: Red Hat persistence extension to the Qpid messaging system
-# License: LGPLv2+
-#
-# Provides: qpid(cpp-server-linearstore) = %{version}
-# Requires: qpid(cpp-server)%{?_isa} = %{version}
-# Requires: db4
-# Requires: libaio
-#
-# % description server-linearstore
-# Red Hat persistence extension to the Qpid AMQP broker: persistent message
-# storage using a libaio-based asynchronous journal.
-#
-# % files server-linearstore
-# % {_libdir}/qpid/daemon/linearstore.so
-# % {_libdir}/liblinearstoreutils.so
-
-
-
-%package -n qpid-tools
-Summary:   Management and diagnostic tools for Apache Qpid
-
-Requires:  python-qpid >= 0.8
-Requires:  python-qpid-qmf
-
-%description -n qpid-tools
-Management and diagnostic tools for Apache Qpid brokers and clients.
-
-%files -n qpid-tools
-%{_bindir}/qpid-config
-%{_bindir}/qpid-printevents
-%{_bindir}/qpid-queue-stats
-%{_bindir}/qpid-route
-%{_bindir}/qpid-stat
-%{_bindir}/qpid-tool
-%{_bindir}/qpid-receive
-%{_bindir}/qpid-send
-%doc LICENSE NOTICE
-%if "%{python_version}" >= "2.6"
-%{python_sitelib}/qpid_tools-*.egg-info
-%endif
-
 # ==================
 # prep/build/install
 # ==================
 
 %prep
-%setup -q -n qpid-%{version}
+# % setup -q -n qpid-cpp-%{version}
+%setup
 
 %patch0001 -p2
-%patch0002 -p2
-%patch0003 -p2
-%patch0004 -p2
-
-%patch1000 -p1
+%patch0002 -p3
+%patch0003 -p3
 
 %global perftests "qpid-perftest qpid-topic-listener qpid-topic-publisher qpid-latency-test qpid-client-test qpid-txtest"
 
@@ -426,39 +377,16 @@ Management and diagnostic tools for Apache Qpid brokers and clients.
 %global rh_qpid_tests_clients "replaying_sender resuming_receiver declare_queues"
 
 %build
-pushd cpp
 %cmake -DDOC_INSTALL_DIR:PATH=%{_pkgdocdir} .
 make %{?_smp_mflags}
 make docs-user-api
 
-pushd ../python
-./setup.py build
-popd
-pushd ../tools
-./setup.py build
-popd
 
-popd
 
 %install
 mkdir -p -m0755 %{buildroot}/%{_bindir}
 mkdir -p -m0755 %{buildroot}/%{_unitdir}
 
-pushd python
-%{__python} setup.py install \
-   --skip-build \
-   --install-purelib %{python_sitearch} \
-   --root %{buildroot}
-popd
-
-pushd tools
-%{__python} setup.py install \
-    --skip-build \
-    --install-purelib %{python_sitelib} \
-    --root %{buildroot}
-popd
-
-pushd cpp
 make install DESTDIR=%{buildroot}/
 
 # clean up items we're not installing
@@ -472,20 +400,23 @@ rm -f  %{buildroot}/%{ruby_sitelib}
 rm -rf %{buildroot}/%{_libdir}/perl5
 rm -rf %{buildroot}/%{_libdir}/*qmf*
 rm -f  %{buildroot}/%{_libdir}/pkgconfig/qmf2.pc
-rm -rf %{buildroot}/%{python_sitearch}/*qpid_messaging*
-rm -rf %{buildroot}/%{python_sitearch}/qpid_python*egg-info
-rm -rf %{buildroot}/%{python_sitearch}/mllib
-rm -rf %{buildroot}/%{python_sitearch}/qpid
-rm -rf %{buildroot}/%{python_sitelib}/qmfgen
-rm -rf %{buildroot}/%{python_sitelib}/qpidtoollibs
+rm -rf %{buildroot}/%{python2_sitearch}/*qpid_messaging*
+rm -rf %{buildroot}/%{python2_sitearch}/qpid_python*egg-info
+rm -rf %{buildroot}/%{python2_sitearch}/mllib
+rm -rf %{buildroot}/%{python2_sitearch}/qpid
+rm -rf %{buildroot}/%{python2_sitelib}/qmfgen
+rm -rf %{buildroot}/%{python2_sitelib}/qpidtoollibs
+rm -rf %{buildroot}/%{python2_sitearch}/*qmf*
 rm -rf %{buildroot}/%{_libdir}/qpid/daemon/store.so*
 rm -rf %{buildroot}/%{_initrddir}/qpidd-primary
+rm -rf %{buildroot}/%{_datadir}/qpid-tools
+rm -rf %{buildroot}/%{_libexecdir}/qpid-qls-analyze
 
 # install systemd files
 mkdir -p %{buildroot}/%{_unitdir}
-install -pm 644 %{_builddir}/qpid-%{version}/cpp/etc/qpidd.service \
+install -pm 644 %{_builddir}/qpid-cpp-%{version}/cpp/etc/qpidd.service \
     %{buildroot}/%{_unitdir}
-install -pm 644 %{_builddir}/qpid-%{version}/cpp/etc/qpidd-primary.service \
+install -pm 644 %{_builddir}/qpid-cpp-%{version}/cpp/etc/qpidd-primary.service \
     %{buildroot}/%{_unitdir}
 rm -f %{buildroot}/%{_initrddir}/qpidd
 rm -f %{buildroot}/%{_sysconfdir}/init.d/qpidd.service
@@ -502,8 +433,6 @@ mkdir -p %{buildroot}/%{_localstatedir}/run
 touch %{buildroot}/%{_localstatedir}/run/qpidd
 mkdir -p %{buildroot}/%{_localstatedir}/lib/qpidd
 
-popd
-
 # clean up leftover ruby files
 rm -rf %{buildroot}/usr/local/%{_lib}/ruby/site_ruby
 
@@ -513,10 +442,16 @@ rm -rf %{buildroot}/usr/local/%{_lib}/ruby/site_ruby
 
 
 %changelog
+* Thu Oct  2 2014 Darryl L. Pierce <dpierce at redhat.com> - 0.30-1
+- Rebased on Qpid 0.30.
+- Upstream tarball filename changed from qpid-##.#.tar.gz to qpid-cpp-##.#.tar.gz.
+- qpid-tools moved out to a separate package.
+- Moved qpid-send and qpid-receive to the qpid-cpp-client-devel package.
+
 * Sun Aug 17 2014 Fedora Release Engineering <rel-eng at lists.fedoraproject.org> - 0.28-8
 - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
 
-* Fri Aug 14 2014 Darryl L. Pierce <dpierce at redhat.com> - 0.28-7
+* Fri Aug 15 2014 Darryl L. Pierce <dpierce at redhat.com> - 0.28-7
 - Removed ssl package references.
 
 * Thu Aug 14 2014 Darryl L. Pierce <dpierce at redhat.com> - 0.28-6
diff --git a/sources b/sources
index b45c371..3855e1b 100644
--- a/sources
+++ b/sources
@@ -1 +1,2 @@
-db0422dc4f17febf9f1039509fd7ad83  qpid-0.28.tar.gz
+82c572b9c7a5b2a1492ecd73bfcd4181  qpid-cpp-0.30.tar.gz
+2c8e44f8fcc0f9f0a899325d774fc552  qpid-tools-0.30.tar.gz


More information about the scm-commits mailing list