[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