mcpierce pushed to qpid-cpp (f21). "Rebased on Qpid 0.32. (..more)"

notifications at fedoraproject.org notifications at fedoraproject.org
Thu Apr 9 13:24:14 UTC 2015


>From 687cec8a8941840c594e3959457d68d83f5c8ef0 Mon Sep 17 00:00:00 2001
From: "Darryl L. Pierce" <mcpierce at gmail.com>
Date: Mon, 6 Apr 2015 15:48:27 -0400
Subject: Rebased on Qpid 0.32.

- Added build flag to enable building the legacy store.
- Added the perl-qpid-messaging subpackage.
- Added the python-qpid-messaging subpackage.
- Added the python-qpid subpackage.

diff --git a/.gitignore b/.gitignore
index 1cea7dc..d1df432 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,3 +1,6 @@
 /qpid-0.*.tar.gz
 /qpid-cpp-0.30.tar.gz
 /qpid-tools-0.30.tar.gz
+/qpid-cpp-0.32.tar.gz
+/qpid-tools-0.32.tar.gz
+/qpid-python-0.32.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 de367ce..b727626 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 d88de656433c6ec0326af56ff2a41a9ffaa9475b Mon Sep 17 00:00:00 2001
+From f7a46d3b6216a745eb1722ccdb74e8f03c9e90a9 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 01/12] 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.
@@ -14,7 +14,7 @@ as a service.
 
 diff --git a/qpid/cpp/etc/qpidd-primary.service b/qpid/cpp/etc/qpidd-primary.service
 new file mode 100644
-index 0000000..874d51a
+index 0000000..f15168c
 --- /dev/null
 +++ b/qpid/cpp/etc/qpidd-primary.service
 @@ -0,0 +1,15 @@
@@ -29,7 +29,7 @@ index 0000000..874d51a
 +Group=qpidd
 +Type=simple
 +EnvironmentFile=/etc/sysconfig/qpidd
-+ExecStart=/usr/bin/qpid-ha -b localhost:$QPID_PORT promote
++ExecStart=/usr/sbin/qpid-ha -b localhost:$QPID_PORT promote
 +
 +[Install]
 +WantedBy=multi-user.target
diff --git a/0002-NO-JIRA-Allow-overriding-the-Perl-install-location.patch b/0002-NO-JIRA-Allow-overriding-the-Perl-install-location.patch
new file mode 100644
index 0000000..f97dbc7
--- /dev/null
+++ b/0002-NO-JIRA-Allow-overriding-the-Perl-install-location.patch
@@ -0,0 +1,67 @@
+From baf68f10eefc06799eddb4f7f4fb68263d248d50 Mon Sep 17 00:00:00 2001
+From: "Darryl L. Pierce" <dpierce at redhat.com>
+Date: Wed, 11 Mar 2015 10:50:13 -0400
+Subject: [PATCH 2/3] NO-JIRA: Allow overriding the Perl install location.
+
+---
+ qpid/cpp/bindings/CMakeLists.txt           | 14 +++++++++-----
+ qpid/cpp/bindings/qpid/perl/CMakeLists.txt | 17 +++++++++++------
+ 2 files changed, 20 insertions(+), 11 deletions(-)
+
+diff --git a/qpid/cpp/bindings/CMakeLists.txt b/qpid/cpp/bindings/CMakeLists.txt
+index 3c55871..8f0bdf4 100644
+--- a/qpid/cpp/bindings/CMakeLists.txt
++++ b/qpid/cpp/bindings/CMakeLists.txt
+@@ -134,11 +134,15 @@ if (SWIG_FOUND)
+ 
+   if (BUILD_BINDING_PERL)
+       message(STATUS "Building Perl bindings")
+-      execute_process(COMMAND ${PERL_EXECUTABLE} "-V::prefix:"
+-                      OUTPUT_VARIABLE QPERL_PREFIX
+-                      OUTPUT_STRIP_TRAILING_WHITESPACE)
+-      string(REGEX REPLACE "'(.*)'" "\\1" PERL_PREFIX ${QPERL_PREFIX})
+-      string(REPLACE ${PERL_PREFIX} ${CMAKE_INSTALL_PREFIX} PERL_PFX_ARCHLIB ${PERL_ARCHLIB})
++      if (NOT PERL_PFX_ARCHLIB)
++        execute_process(COMMAND ${PERL_EXECUTABLE} "-V::prefix:"
++                        OUTPUT_VARIABLE QPERL_PREFIX
++                        OUTPUT_STRIP_TRAILING_WHITESPACE)
++        string(REGEX REPLACE "'(.*)'" "\\1" PERL_PREFIX ${QPERL_PREFIX})
++        string(REPLACE ${PERL_PREFIX} ${CMAKE_INSTALL_PREFIX} PERL_PFX_ARCHLIB ${PERL_ARCHLIB})
++      else (NOT PERL_PFX_ARCHLIB)
++        message(STATUS "*** Using Perl language directory: ${PERL_PFX_ARCHLIB}")
++      endif (NOT PERL_PFX_ARCHLIB)
+ 
+       add_subdirectory(qpid/perl)
+   endif (BUILD_BINDING_PERL)
+diff --git a/qpid/cpp/bindings/qpid/perl/CMakeLists.txt b/qpid/cpp/bindings/qpid/perl/CMakeLists.txt
+index 3c859d6..e270562 100644
+--- a/qpid/cpp/bindings/qpid/perl/CMakeLists.txt
++++ b/qpid/cpp/bindings/qpid/perl/CMakeLists.txt
+@@ -43,13 +43,18 @@ include_directories(${PERL_INCLUDE_PATH}
+ # it's coming from a version of Cmake < 2.8
+ install(TARGETS ${SWIG_MODULE_cqpid_perl_REAL_NAME}
+         RENAME cqpid_perl.so
+-        DESTINATION ${PERL_PFX_ARCHLIB}
++        DESTINATION ${PERL_PFX_ARCHLIB}/auto/cqpid_perl
+         COMPONENT ${QPID_COMPONENT_CLIENT}
+ )
+ 
+ install(FILES ${CMAKE_CURRENT_BINARY_DIR}/cqpid_perl.pm
+-              ${CMAKE_CURRENT_SOURCE_DIR}/LICENSE
+-              ${CMAKE_CURRENT_SOURCE_DIR}/Makefile.PL
+-        DESTINATION ${PERL_PFX_ARCHLIB}
+-        COMPONENT ${QPID_COMPONENT_CLIENT}
+-        )
++              ${CMAKE_CURRENT_SOURCE_DIR}/lib/qpid_messaging.pm
++              ${CMAKE_CURRENT_SOURCE_DIR}/lib/qpid.pm
++  DESTINATION ${PERL_PFX_ARCHLIB}
++  COMPONENT ${QPID_COMPONENT_CLIENT}
++  )
++
++install(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/lib/qpid
++  DESTINATION ${PERL_PFX_ARCHLIB}
++  COMPONENT ${QPID_COMPONENT_CLIENT}
++  )
+-- 
+2.1.0
+
diff --git a/0002-NO-JIRA-Remove-dead-unused-code.patch b/0002-NO-JIRA-Remove-dead-unused-code.patch
deleted file mode 100644
index 38dd996..0000000
--- a/0002-NO-JIRA-Remove-dead-unused-code.patch
+++ /dev/null
@@ -1,49 +0,0 @@
-From 55116da4408d47d2e99f9468890df1161350bf2b Mon Sep 17 00:00:00 2001
-From: "Darryl L. Pierce" <dpierce at redhat.com>
-Date: Tue, 30 Sep 2014 10:27:54 -0400
-Subject: [PATCH 02/12] NO-JIRA: Remove dead/unused code
-
----
- qpid/cpp/src/qpid/ha/ReplicatingSubscription.cpp   | 7 -------
- qpid/cpp/src/qpid/messaging/amqp/AddressHelper.cpp | 7 -------
- 2 files changed, 14 deletions(-)
-
-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
-+++ b/qpid/cpp/src/qpid/ha/ReplicatingSubscription.cpp
-@@ -86,13 +86,6 @@ ReplicatingSubscription::Factory::create(
-     return rs;
- }
- 
--namespace {
--void copyIf(boost::shared_ptr<MessageInterceptor> from, boost::shared_ptr<IdSetter>& to) {
--    boost::shared_ptr<IdSetter> result = boost::dynamic_pointer_cast<IdSetter>(from);
--    if (result) to = result;
--}
--} // namespace
--
- ReplicatingSubscription::ReplicatingSubscription(
-     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 763deb3..dc00ec4 100644
---- a/qpid/cpp/src/qpid/messaging/amqp/AddressHelper.cpp
-+++ b/qpid/cpp/src/qpid/messaging/amqp/AddressHelper.cpp
-@@ -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;
- }
--bool contains(const Variant::List& list, const std::string& item)
--{
--    for (Variant::List::const_iterator i = list.begin(); i != list.end(); ++i) {
--        if (*i == item) return true;
--    }
--    return false;
--}
- 
- bool test(const Variant::Map& options, const std::string& name)
- {
--- 
-2.1.0
-
diff --git a/0003-NO-JIRA-Allow-overriding-the-Ruby-install-location.patch b/0003-NO-JIRA-Allow-overriding-the-Ruby-install-location.patch
new file mode 100644
index 0000000..8939a7c
--- /dev/null
+++ b/0003-NO-JIRA-Allow-overriding-the-Ruby-install-location.patch
@@ -0,0 +1,64 @@
+From fc0b4f44e9f1b7f3646e6210bf695d2b5f80d9ed Mon Sep 17 00:00:00 2001
+From: "Darryl L. Pierce" <dpierce at redhat.com>
+Date: Wed, 11 Mar 2015 15:10:47 -0400
+Subject: [PATCH 3/3] NO-JIRA: Allow overriding the Ruby install location.
+
+---
+ qpid/cpp/bindings/CMakeLists.txt           | 14 ++++++++------
+ qpid/cpp/bindings/qpid/ruby/CMakeLists.txt | 13 +++++++++----
+ 2 files changed, 17 insertions(+), 10 deletions(-)
+
+diff --git a/qpid/cpp/bindings/CMakeLists.txt b/qpid/cpp/bindings/CMakeLists.txt
+index 8f0bdf4..a90a126 100644
+--- a/qpid/cpp/bindings/CMakeLists.txt
++++ b/qpid/cpp/bindings/CMakeLists.txt
+@@ -122,14 +122,16 @@ if (SWIG_FOUND)
+   endif (BUILD_BINDING_PYTHON)
+ 
+   if (BUILD_BINDING_RUBY)
+-      message(STATUS "Building Ruby bindings")
++    message(STATUS "Building Ruby bindings")
++    if (NOT RUBY_PFX_ARCH_DIR)
+       execute_process(COMMAND ${RUBY_EXECUTABLE} -r rbconfig -e "puts RbConfig::CONFIG['prefix']"
+-                      OUTPUT_VARIABLE RUBY_PREFIX
+-                      OUTPUT_STRIP_TRAILING_WHITESPACE)
++        OUTPUT_VARIABLE RUBY_PREFIX
++        OUTPUT_STRIP_TRAILING_WHITESPACE)
+       string(REPLACE ${RUBY_PREFIX} ${CMAKE_INSTALL_PREFIX} RUBY_PFX_ARCH_DIR ${RUBY_SITEARCH_DIR})
+-#     string(REPLACE ${RUBY_PREFIX} ${CMAKE_INSTALL_PREFIX} RUBY_PFX_ARCH_DIR ${RUBY_ARCH_DIR})
+-      add_subdirectory(qpid/ruby)
+-      add_subdirectory(qmf2/ruby)
++    endif (NOT RUBY_PFX_ARCH_DIR)
++
++    add_subdirectory(qpid/ruby)
++    add_subdirectory(qmf2/ruby)
+   endif (BUILD_BINDING_RUBY)
+ 
+   if (BUILD_BINDING_PERL)
+diff --git a/qpid/cpp/bindings/qpid/ruby/CMakeLists.txt b/qpid/cpp/bindings/qpid/ruby/CMakeLists.txt
+index c31b4d4..78e21d6 100644
+--- a/qpid/cpp/bindings/qpid/ruby/CMakeLists.txt
++++ b/qpid/cpp/bindings/qpid/ruby/CMakeLists.txt
+@@ -54,10 +54,15 @@ set_source_files_properties(${swig_generated_file_fullname} PROPERTIES COMPILE_F
+ ## Install the complete Ruby binding
+ ##----------------------------------
+ install(TARGETS ${SWIG_MODULE_cqpid_ruby_REAL_NAME}
+-      RENAME cqpid.so
+-      DESTINATION ${RUBY_PFX_ARCH_DIR}
+-      COMPONENT ${QPID_COMPONENT_CLIENT}
+-)
++  RENAME cqpid.so
++  DESTINATION ${RUBY_PFX_ARCH_DIR}
++  COMPONENT ${QPID_COMPONENT_CLIENT}
++  )
++
++install(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/lib
++  DESTINATION ${RUBY_PFX_ARCH_DIR}
++  COMPONENT ${QPID_COMPONENT_CLIENT}
++  )
+ 
+ add_custom_command(OUTPUT ${GEM_BINDINGS_SOURCE_FILE}
+                    COMMAND cp ${swig_generated_file_fullname} ${GEM_BINDINGS_SOURCE_FILE}
+-- 
+2.1.0
+
diff --git a/0003-QPID-6128-Fix-compiling-SocketAddress-on-ARM.patch b/0003-QPID-6128-Fix-compiling-SocketAddress-on-ARM.patch
deleted file mode 100644
index 2ce4990..0000000
--- a/0003-QPID-6128-Fix-compiling-SocketAddress-on-ARM.patch
+++ /dev/null
@@ -1,41 +0,0 @@
-From ce9a366f68b0c00247ef1b71d02a6eb2a08b5d86 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 03/12] 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);
--- 
-2.1.0
-
diff --git a/0004-QPID-6150-Add-__init__.py-to-setup.py-for-linear-sto.patch b/0004-QPID-6150-Add-__init__.py-to-setup.py-for-linear-sto.patch
deleted file mode 100644
index f2324c5..0000000
--- a/0004-QPID-6150-Add-__init__.py-to-setup.py-for-linear-sto.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-From 67b090057ce9b5845b18b1ff6bee046843b29299 Mon Sep 17 00:00:00 2001
-From: "Darryl L. Pierce" <mcpierce at apache.org>
-Date: Tue, 14 Oct 2014 17:08:53 +0000
-Subject: [PATCH 04/12] QPID-6150: Add __init__.py to setup.py for linear
- store.
-
-The file was not being included in the source tarball.
-
-git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1631819 13f79535-47bb-0310-9956-ffa450edef68
----
- qpid/tools/setup.py | 3 ++-
- 1 file changed, 2 insertions(+), 1 deletion(-)
-
-diff --git a/qpid/tools/setup.py b/qpid/tools/setup.py
-index 5f6c4ec..e58270b 100755
---- a/qpid/tools/setup.py
-+++ b/qpid/tools/setup.py
-@@ -49,7 +49,8 @@ setup(name="qpid-tools",
-                "src/py/qmf-tool"],
-       data_files=[("libexec", ["src/py/qpid-qls-analyze"]),
-                   ("share/qpid-tools/python/qlslibs",
--                   ["src/py/qlslibs/anal.py",
-+                   ["src/py/qlslibs/__init__.py",
-+                    "src/py/qlslibs/anal.py",
-                     "src/py/qlslibs/efp.py",
-                     "src/py/qlslibs/err.py",
-                     "src/py/qlslibs/jrnl.py",
--- 
-2.1.0
-
diff --git a/0005-NO-JIRA-Change-python.i-to-qpid_messaging.i-in-extra.patch b/0005-NO-JIRA-Change-python.i-to-qpid_messaging.i-in-extra.patch
deleted file mode 100644
index 177f68b..0000000
--- a/0005-NO-JIRA-Change-python.i-to-qpid_messaging.i-in-extra.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-From 00cd930b0e753c1ce555de825f4e57e998a3b6bf Mon Sep 17 00:00:00 2001
-From: "Darryl L. Pierce" <dpierce at redhat.com>
-Date: Mon, 6 Oct 2014 08:12:38 -0400
-Subject: [PATCH 05/12] NO-JIRA: Change python.i to qpid_messaging.i in extra
- build
-
----
- qpid/cpp/bindings/qpid/python/extra_dist/CMakeLists.txt | 6 +++---
- 1 file changed, 3 insertions(+), 3 deletions(-)
-
-diff --git a/qpid/cpp/bindings/qpid/python/extra_dist/CMakeLists.txt b/qpid/cpp/bindings/qpid/python/extra_dist/CMakeLists.txt
-index 8ddd786..6240a05 100644
---- a/qpid/cpp/bindings/qpid/python/extra_dist/CMakeLists.txt
-+++ b/qpid/cpp/bindings/qpid/python/extra_dist/CMakeLists.txt
-@@ -44,13 +44,13 @@ FIND_LIBRARY (QPID_LIBRARY_DIR
- ## Generate the Swig bindings
- ## --------------------------
- 
--SET_SOURCE_FILES_PROPERTIES (${CMAKE_CURRENT_SOURCE_DIR}/python.i
-+SET_SOURCE_FILES_PROPERTIES (${CMAKE_CURRENT_SOURCE_DIR}/qpid_messaging.i
-   PROPERTIES CPLUSPLUS ON)
--SET_SOURCE_FILES_PROPERTIES (${CMAKE_CURRENT_SOURCE_DIR}/python.i
-+SET_SOURCE_FILES_PROPERTIES (${CMAKE_CURRENT_SOURCE_DIR}/qpid_messaging.i
-   PROPERTIES SWIG_FLAGS "-I${QPID_INCLUDE_DIR}")
- 
- SWIG_ADD_MODULE (qpid_messaging_python python
--  ${CMAKE_CURRENT_SOURCE_DIR}/python.i)
-+  ${CMAKE_CURRENT_SOURCE_DIR}/qpid_messaging.i)
- 
- SWIG_LINK_LIBRARIES (qpid_messaging_python
-   qpidmessaging
--- 
-2.1.0
-
diff --git a/0006-QPID-6170-Adds-build-support-for-aarch64-and-ppc64le.patch b/0006-QPID-6170-Adds-build-support-for-aarch64-and-ppc64le.patch
deleted file mode 100644
index 55a9be6..0000000
--- a/0006-QPID-6170-Adds-build-support-for-aarch64-and-ppc64le.patch
+++ /dev/null
@@ -1,52 +0,0 @@
-From cd23383d3c996c48de4ffcf435b66f534b0e7852 Mon Sep 17 00:00:00 2001
-From: "Darryl L. Pierce" <dpierce at redhat.com>
-Date: Wed, 29 Oct 2014 11:13:04 -0400
-Subject: [PATCH 06/12] QPID-6170: Adds build support for aarch64 and ppc64le
- architectures.
-
-Contributed by Marcin Juszkiewicz <mjuszkiewicz at redhat.com>
----
- qpid/cpp/src/qpid/legacystore/jrnl/jcfg.h | 21 ++++++++++-----------
- 1 file changed, 10 insertions(+), 11 deletions(-)
-
-diff --git a/qpid/cpp/src/qpid/legacystore/jrnl/jcfg.h b/qpid/cpp/src/qpid/legacystore/jrnl/jcfg.h
-index 01d92ee..6fa8471 100644
---- a/qpid/cpp/src/qpid/legacystore/jrnl/jcfg.h
-+++ b/qpid/cpp/src/qpid/legacystore/jrnl/jcfg.h
-@@ -33,23 +33,22 @@
- #ifndef QPID_LEGACYSTORE_JRNL_JCFG_H
- #define QPID_LEGACYSTORE_JRNL_JCFG_H
- 
--#if defined(__i386__) || (__arm__) /* little endian, 32 bits */
-+#include <endian.h>
-+
-+#if __BYTE_ORDER == __LITTLE_ENDIAN
- #define JRNL_LITTLE_ENDIAN
--#define JRNL_32_BIT
--#elif defined(__PPC__) || defined(__s390__)  /* big endian, 32 bits */
-+#else
- #define JRNL_BIG_ENDIAN
-+#endif
-+
-+#include <bits/wordsize.h>
-+
-+#if __WORDSIZE == 32
- #define JRNL_32_BIT
--#elif defined(__ia64__) || defined(__x86_64__) || defined(__alpha__) || (__arm64__) /* little endian, 64 bits */
--#define JRNL_LITTLE_ENDIAN
--#define JRNL_64_BIT
--#elif defined(__powerpc64__) || defined(__s390x__) /* big endian, 64 bits */
--#define JRNL_BIG_ENDIAN
--#define JRNL_64_BIT
- #else
--#error endian?
-+#define JRNL_64_BIT
- #endif
- 
--
- /**
- * <b>Rule:</b> Data block size (JRNL_DBLK_SIZE) MUST be a power of 2 such that
- * <pre>
--- 
-2.1.0
-
diff --git a/0007-QPID-6310-ensure-session-is-attached-even-for-unsupp.patch b/0007-QPID-6310-ensure-session-is-attached-even-for-unsupp.patch
deleted file mode 100644
index 97a5242..0000000
--- a/0007-QPID-6310-ensure-session-is-attached-even-for-unsupp.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-From b284349e3bcd249e329c16061669278c3b804221 Mon Sep 17 00:00:00 2001
-From: Gordon Sim <gsim at apache.org>
-Date: Tue, 13 Jan 2015 10:25:02 +0000
-Subject: [PATCH 07/12] QPID-6310 ensure session is attached even for
- unsupported controls
-
-git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1651319 13f79535-47bb-0310-9956-ffa450edef68
----
- qpid/cpp/src/qpid/amqp_0_10/SessionHandler.cpp | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/qpid/cpp/src/qpid/amqp_0_10/SessionHandler.cpp b/qpid/cpp/src/qpid/amqp_0_10/SessionHandler.cpp
-index 43f39c2..bd0dcbf 100644
---- a/qpid/cpp/src/qpid/amqp_0_10/SessionHandler.cpp
-+++ b/qpid/cpp/src/qpid/amqp_0_10/SessionHandler.cpp
-@@ -276,6 +276,7 @@ void SessionHandler::flush(bool expected, bool confirmed, bool completed) {
- }
- 
- void SessionHandler::gap(const SequenceSet& /*commands*/) {
-+    checkAttached();
-     throw NotImplementedException("session.gap not supported");
- }
- 
--- 
-2.1.0
-
diff --git a/0008-QPID-6310-handle-case-where-content-bearing-method-i.patch b/0008-QPID-6310-handle-case-where-content-bearing-method-i.patch
deleted file mode 100644
index 41d6dfc..0000000
--- a/0008-QPID-6310-handle-case-where-content-bearing-method-i.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-From 1c846623e0fc4430252f74527b712c7a651843e0 Mon Sep 17 00:00:00 2001
-From: Gordon Sim <gsim at apache.org>
-Date: Tue, 13 Jan 2015 10:25:08 +0000
-Subject: [PATCH 08/12] QPID-6310: handle case where content bearing method is
- not in fact a message-transfer, which is the only one currently supported by
- qpidd
-
-git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1651320 13f79535-47bb-0310-9956-ffa450edef68
----
- qpid/cpp/src/qpid/broker/MessageBuilder.cpp | 3 +++
- 1 file changed, 3 insertions(+)
-
-diff --git a/qpid/cpp/src/qpid/broker/MessageBuilder.cpp b/qpid/cpp/src/qpid/broker/MessageBuilder.cpp
-index 7cb9951..f5e9332 100644
---- a/qpid/cpp/src/qpid/broker/MessageBuilder.cpp
-+++ b/qpid/cpp/src/qpid/broker/MessageBuilder.cpp
-@@ -45,6 +45,9 @@ void MessageBuilder::handle(AMQFrame& frame)
-     switch(state) {
-     case METHOD:
-         checkType(METHOD_BODY, type);
-+        if (!frame.getMethod()->isA<qpid::framing::MessageTransferBody>())
-+            throw NotImplementedException(QPID_MSG("Unexpected method: " << *(frame.getMethod())));
-+
-         exchange = frame.castBody<qpid::framing::MessageTransferBody>()->getDestination();
-         state = HEADER;
-         break;
--- 
-2.1.0
-
diff --git a/0009-QPID-6310-check-validity-of-ranges-when-decoding-seq.patch b/0009-QPID-6310-check-validity-of-ranges-when-decoding-seq.patch
deleted file mode 100644
index 573fd6f..0000000
--- a/0009-QPID-6310-check-validity-of-ranges-when-decoding-seq.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From ef28aaa39fa7c6ae6d0dcbbe87d28ee2d041b35a Mon Sep 17 00:00:00 2001
-From: Gordon Sim <gsim at apache.org>
-Date: Tue, 13 Jan 2015 10:25:15 +0000
-Subject: [PATCH 09/12] QPID-6310: check validity of ranges when decoding
- sequence set
-
-git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1651321 13f79535-47bb-0310-9956-ffa450edef68
----
- qpid/cpp/src/qpid/framing/SequenceSet.cpp | 6 +++++-
- 1 file changed, 5 insertions(+), 1 deletion(-)
-
-diff --git a/qpid/cpp/src/qpid/framing/SequenceSet.cpp b/qpid/cpp/src/qpid/framing/SequenceSet.cpp
-index 72fcd8a..845bf8b 100644
---- a/qpid/cpp/src/qpid/framing/SequenceSet.cpp
-+++ b/qpid/cpp/src/qpid/framing/SequenceSet.cpp
-@@ -54,7 +54,11 @@ void SequenceSet::decode(Buffer& buffer)
-         throw IllegalArgumentException(QPID_MSG("Invalid size for sequence set: " << size)); 
- 
-     for (uint16_t i = 0; i < count; i++) {
--        add(SequenceNumber(buffer.getLong()), SequenceNumber(buffer.getLong()));
-+        SequenceNumber a(buffer.getLong());
-+        SequenceNumber b(buffer.getLong());
-+        if (b < a)
-+            throw IllegalArgumentException(QPID_MSG("Invalid range in sequence set: " << a << " -> " << b));
-+        add(a, b);
-     }
- }
- 
--- 
-2.1.0
-
diff --git a/0010-txshift-switch-to-uint-for-workers.patch b/0010-txshift-switch-to-uint-for-workers.patch
deleted file mode 100644
index 5af8ddb..0000000
--- a/0010-txshift-switch-to-uint-for-workers.patch
+++ /dev/null
@@ -1,42 +0,0 @@
-From 437520da62eb53f3fea20ac2515f375341a26fb0 Mon Sep 17 00:00:00 2001
-From: "Darryl L. Pierce" <dpierce at redhat.com>
-Date: Wed, 21 Jan 2015 10:45:06 -0500
-Subject: [PATCH 10/12] txshift: switch to uint for workers
-
-workaround missing size_t implementation of
-po::value_semantic* create_value(T& val, const std::string& arg)
-as it would conflict with when size_t == unsigned int even when
-it would help for size_t == unsigned long
-
-fixes https://issues.apache.org/jira/browse/QPID-6135
-
-Contributed by Dan Horaz <dan at danny.cz>
----
- qpid/cpp/src/tests/txshift.cpp | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/qpid/cpp/src/tests/txshift.cpp b/qpid/cpp/src/tests/txshift.cpp
-index bf85bee..6ec28c7 100644
---- a/qpid/cpp/src/tests/txshift.cpp
-+++ b/qpid/cpp/src/tests/txshift.cpp
-@@ -40,7 +40,7 @@ namespace tests {
- struct Args : public qpid::TestOptions
- {
-     std::string workQueue;
--    size_t workers;
-+    uint workers;
- 
-     Args() : workQueue("txshift-control"), workers(1)
-     {
-@@ -178,7 +178,7 @@ int main(int argc, char** argv)
-             worker.run();
-         } else {
-             boost::ptr_vector<Worker> workers;
--            for (size_t i = 0; i < opts.workers; i++) {
-+            for (uint i = 0; i < opts.workers; i++) {
-                 workers.push_back(new Worker(connection, opts.workQueue));
-             }
-             std::for_each(workers.begin(), workers.end(), boost::bind(&Worker::start, _1));
--- 
-2.1.0
-
diff --git a/0011-QPID-6325-improve-0-10-connection-handling-logic.patch b/0011-QPID-6325-improve-0-10-connection-handling-logic.patch
deleted file mode 100644
index 77255da..0000000
--- a/0011-QPID-6325-improve-0-10-connection-handling-logic.patch
+++ /dev/null
@@ -1,105 +0,0 @@
-From 64c310ebfabd5979cc4e6e83e27964bd55d3c907 Mon Sep 17 00:00:00 2001
-From: Gordon Sim <gsim at apache.org>
-Date: Tue, 20 Jan 2015 10:00:17 +0000
-Subject: [PATCH 11/12] QPID-6325: improve 0-10 connection handling logic
-
-git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1653216 13f79535-47bb-0310-9956-ffa450edef68
----
- qpid/cpp/src/qpid/amqp_0_10/Connection.cpp     |  2 +-
- qpid/cpp/src/qpid/broker/ConnectionHandler.cpp | 27 +++++++++++++++++++++++---
- 2 files changed, 25 insertions(+), 4 deletions(-)
-
-diff --git a/qpid/cpp/src/qpid/amqp_0_10/Connection.cpp b/qpid/cpp/src/qpid/amqp_0_10/Connection.cpp
-index 87085b6..866f980 100644
---- a/qpid/cpp/src/qpid/amqp_0_10/Connection.cpp
-+++ b/qpid/cpp/src/qpid/amqp_0_10/Connection.cpp
-@@ -54,7 +54,7 @@ size_t  Connection::decode(const char* buffer, size_t size) {
-         }
-     }
-     framing::AMQFrame frame;
--    while(frame.decode(in)) {
-+    while(!pushClosed && frame.decode(in)) {
-         QPID_LOG(trace, "RECV [" << identifier << "]: " << frame);
-          connection->received(frame);
-     }
-diff --git a/qpid/cpp/src/qpid/broker/ConnectionHandler.cpp b/qpid/cpp/src/qpid/broker/ConnectionHandler.cpp
-index 2afdc5a..eece59d 100644
---- a/qpid/cpp/src/qpid/broker/ConnectionHandler.cpp
-+++ b/qpid/cpp/src/qpid/broker/ConnectionHandler.cpp
-@@ -93,14 +93,14 @@ void ConnectionHandler::handle(framing::AMQFrame& frame)
-         } else if (isOpen()) {
-             handler->connection.getChannel(frame.getChannel()).in(frame);
-         } else {
--            handler->proxy.close(
-+            handler->connection.close(
-                 connection::CLOSE_CODE_FRAMING_ERROR,
-                 "Connection not yet open, invalid frame received.");
-         }
-     }catch(ConnectionException& e){
--        handler->proxy.close(e.code, e.what());
-+        handler->connection.close(e.code, e.what());
-     }catch(std::exception& e){
--        handler->proxy.close(541/*internal error*/, e.what());
-+        handler->connection.close(connection::CLOSE_CODE_CONNECTION_FORCED, e.what());
-     }
- }
- 
-@@ -234,6 +234,10 @@ void ConnectionHandler::Handler::tuneOk(uint16_t /*channelmax*/,
- void ConnectionHandler::Handler::open(const string& /*virtualHost*/,
-                                       const framing::Array& /*capabilities*/, bool /*insist*/)
- {
-+    if (connection.getUserId().empty()) {
-+        throw ConnectionForcedException("Not authenticated!");
-+    }
-+
-     if (connection.isFederationLink()) {
-         AclModule* acl =  connection.getBroker().getAcl();
-         if (acl && acl->userAclRules()) {
-@@ -302,6 +306,11 @@ void ConnectionHandler::Handler::start(const FieldTable& serverProperties,
-                                        const framing::Array& supportedMechanisms,
-                                        const framing::Array& /*locales*/)
- {
-+    if (serverMode) {
-+        throw ConnectionForcedException("Invalid protocol sequence.");
-+    }
-+
-+
-     string requestedMechanism = connection.getAuthMechanism();
- 
-     std::string username = connection.getUsername();
-@@ -388,6 +397,10 @@ void ConnectionHandler::Handler::start(const FieldTable& serverProperties,
- 
- void ConnectionHandler::Handler::secure(const string& challenge )
- {
-+    if (serverMode) {
-+        throw ConnectionForcedException("Invalid protocol sequence.");
-+    }
-+
-     if (sasl.get()) {
-         string response = sasl->step(challenge);
-         proxy.secureOk(response);
-@@ -402,6 +415,10 @@ void ConnectionHandler::Handler::tune(uint16_t channelMax,
-                                       uint16_t /*heartbeatMin*/,
-                                       uint16_t heartbeatMax)
- {
-+    if (serverMode) {
-+        throw ConnectionForcedException("Invalid protocol sequence.");
-+    }
-+
-     maxFrameSize = std::min(maxFrameSize, maxFrameSizeProposed);
-     connection.setFrameMax(maxFrameSize);
- 
-@@ -420,6 +437,10 @@ void ConnectionHandler::Handler::tune(uint16_t channelMax,
- 
- void ConnectionHandler::Handler::openOk(const framing::Array& knownHosts)
- {
-+    if (serverMode) {
-+        throw ConnectionForcedException("Invalid protocol sequence.");
-+    }
-+
-     for (Array::ValueVector::const_iterator i = knownHosts.begin(); i != knownHosts.end(); ++i) {
-         Url url((*i)->get<std::string>());
-         connection.getKnownHosts().push_back(url);
--- 
-2.1.0
-
diff --git a/0012-QPID-6325-further-improve-0-10-connection-handling-l.patch b/0012-QPID-6325-further-improve-0-10-connection-handling-l.patch
deleted file mode 100644
index 875ff02..0000000
--- a/0012-QPID-6325-further-improve-0-10-connection-handling-l.patch
+++ /dev/null
@@ -1,64 +0,0 @@
-From a5f20c6e3f9809073e311eb36c196cffc6ab21bb Mon Sep 17 00:00:00 2001
-From: Gordon Sim <gsim at apache.org>
-Date: Wed, 21 Jan 2015 14:50:52 +0000
-Subject: [PATCH 12/12] QPID-6325: further improve 0-10 connection handling
- logic
-
-git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1653547 13f79535-47bb-0310-9956-ffa450edef68
----
- qpid/cpp/src/qpid/broker/ConnectionHandler.cpp | 14 +++++++-------
- qpid/cpp/src/qpid/broker/ConnectionHandler.h   |  3 ++-
- 2 files changed, 9 insertions(+), 8 deletions(-)
-
-diff --git a/qpid/cpp/src/qpid/broker/ConnectionHandler.cpp b/qpid/cpp/src/qpid/broker/ConnectionHandler.cpp
-index eece59d..8972040 100644
---- a/qpid/cpp/src/qpid/broker/ConnectionHandler.cpp
-+++ b/qpid/cpp/src/qpid/broker/ConnectionHandler.cpp
-@@ -242,17 +242,17 @@ void ConnectionHandler::Handler::open(const string& /*virtualHost*/,
-         AclModule* acl =  connection.getBroker().getAcl();
-         if (acl && acl->userAclRules()) {
-             if (!acl->authorise(connection.getUserId(),acl::ACT_CREATE,acl::OBJ_LINK,"")){
--                proxy.close(framing::connection::CLOSE_CODE_CONNECTION_FORCED,
--                            QPID_MSG("ACL denied " << connection.getUserId()
--                                        << " creating a federation link"));
-+                connection.close(framing::connection::CLOSE_CODE_CONNECTION_FORCED,
-+                                 QPID_MSG("ACL denied " << connection.getUserId()
-+                                          << " creating a federation link"));
-                 return;
-             }
-         } else {
-             if (connection.getBroker().isAuthenticating()) {
--                proxy.close(framing::connection::CLOSE_CODE_CONNECTION_FORCED,
--                            QPID_MSG("User " << connection.getUserId()
--                                << " federation connection denied. Systems with authentication "
--                                   "enabled must specify ACL create link rules."));
-+                connection.close(framing::connection::CLOSE_CODE_CONNECTION_FORCED,
-+                                 QPID_MSG("User " << connection.getUserId()
-+                                          << " federation connection denied. Systems with authentication "
-+                                          "enabled must specify ACL create link rules."));
-                 return;
-             }
-         }
-diff --git a/qpid/cpp/src/qpid/broker/ConnectionHandler.h b/qpid/cpp/src/qpid/broker/ConnectionHandler.h
-index 7af2fe3..30155fb 100644
---- a/qpid/cpp/src/qpid/broker/ConnectionHandler.h
-+++ b/qpid/cpp/src/qpid/broker/ConnectionHandler.h
-@@ -100,13 +100,14 @@ class ConnectionHandler : public framing::FrameHandler
-     std::auto_ptr<Handler> handler;
- 
-     bool handle(const qpid::framing::AMQMethodBody& method);
-+    void close(framing::connection::CloseCode code, const std::string& text);
-   public:
-     ConnectionHandler(amqp_0_10::Connection& connection, bool isClient );
--    void close(framing::connection::CloseCode code, const std::string& text);
-     void heartbeat();
-     void handle(framing::AMQFrame& frame);
-     void setSecureConnection(SecureConnection* secured);
-     bool isOpen() { return handler->isOpen; }
-+  friend class amqp_0_10::Connection;
- };
- 
- 
--- 
-2.1.0
-
diff --git a/qpid-cpp.spec b/qpid-cpp.spec
index 90ac38a..b2c62b3 100644
--- a/qpid-cpp.spec
+++ b/qpid-cpp.spec
@@ -1,30 +1,23 @@
 # Define pkgdocdir for releases that don't define it already
 %{!?_pkgdocdir: %global _pkgdocdir %{_docdir}/%{name}-%{version}}
+%global _perldocdir %{_docdir}/perl-qpid-messaging-%{version}
+%global _pythondocdir %{_docdir}/python-qpid-messaging-%{version}
+%global gem_name qpid_messaging
+%global gem_version 0.32
 
 Name:          qpid-cpp
-Version:       0.30
-Release:       12%{?dist}
+Version:       0.32
+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-cpp-%{version}.tar.gz
 Source1:       http://www.apache.org/dist/qpid/%{version}/qpid-tools-%{version}.tar.gz
+Source2:       http://www.apache.org/dist/qpid/%{version}/qpid-python-%{version}.tar.gz
 Patch0001:     0001-NO-JIRA-qpidd.service-file-for-use-on-Fedora.patch
-Patch0002:     0002-NO-JIRA-Remove-dead-unused-code.patch
-Patch0003:     0003-QPID-6128-Fix-compiling-SocketAddress-on-ARM.patch
-Patch0004:     0004-QPID-6150-Add-__init__.py-to-setup.py-for-linear-sto.patch
-Patch0005:     0005-NO-JIRA-Change-python.i-to-qpid_messaging.i-in-extra.patch
-Patch0006:     0006-QPID-6170-Adds-build-support-for-aarch64-and-ppc64le.patch
-# BZ#1181721
-Patch0007:     0007-QPID-6310-ensure-session-is-attached-even-for-unsupp.patch
-Patch0008:     0008-QPID-6310-handle-case-where-content-bearing-method-i.patch
-Patch0009:     0009-QPID-6310-check-validity-of-ranges-when-decoding-seq.patch
-# BZ#1184488
-Patch0010:     0010-txshift-switch-to-uint-for-workers.patch
-# BZ#1186308
-Patch0011:     0011-QPID-6325-improve-0-10-connection-handling-logic.patch
-Patch0012:     0012-QPID-6325-further-improve-0-10-connection-handling-l.patch
+Patch0002:     0002-NO-JIRA-Allow-overriding-the-Perl-install-location.patch
+Patch0003:     0003-NO-JIRA-Allow-overriding-the-Ruby-install-location.patch
 
 BuildRequires: gcc-c++
 BuildRequires: cmake
@@ -50,6 +43,8 @@ BuildRequires: libaio-devel
 BuildRequires: qpid-proton-c-devel%{?_isa} >= 0.5
 BuildRequires: libdb-devel
 BuildRequires: libdb4-cxx-devel
+BuildRequires: swig
+BuildRequires: perl(ExtUtils::MakeMaker)
 
 %ifnarch s390 s390x
 BuildRequires: libibverbs-devel
@@ -69,9 +64,9 @@ the AMQP protocol.
 Summary:   Libraries for Qpid C++ client applications
 
 # NOTE: The follow provide will be removed with 0.32
-Provides:  qpid(client)%{?_isa} = %{version}
+Provides:  qpid(client)%{?_isa} = %{version}-%{release}
 
-Provides:  qpid(cpp-client)%{?_isa} = %{version}
+Provides:  qpid(cpp-client)%{?_isa} = %{version}-%{release}
 
 Requires:  boost
 Requires:  chkconfig
@@ -116,11 +111,11 @@ the AMQP protocol.
 Summary:   Header files, documentation and testing tools for developing Qpid C++ clients
 
 # NOTE: The follow provide will be removed with 0.32
-Provides:  qpid(client-devel)%{?_isa} = %{version}
-Requires:  qpid(client)%{?_isa} = %{version}
+Provides:  qpid(client-devel)%{?_isa} = %{version}-%{release}
+Requires:  qpid(client)%{?_isa} = %{version}-%{release}
 
-Provides:  qpid(cpp-client-devel)%{?_isa} = %{version}
-Requires:  qpid(cpp-client)%{?_isa} = %{version}
+Provides:  qpid(cpp-client-devel)%{?_isa} = %{version}-%{release}
+Requires:  qpid(cpp-client)%{?_isa} = %{version}-%{release}
 Requires:  boost-devel
 Requires:  boost-filesystem
 Requires:  boost-program-options
@@ -185,10 +180,10 @@ format for easy browsing.
 Summary:   An AMQP message broker daemon
 
 # NOTE: The follow provide will be removed with 0.32
-Provides:  qpid(server)%{?_isa} = %{version}
-Requires:  qpid(client)%{?_isa} = %{version}
+Provides:  qpid(server)%{?_isa} = %{version}-%{release}
+Requires:  qpid(client)%{?_isa} = %{version}-%{release}
 
-Provides:  qpid(cpp-server)%{?_isa} = %{version}
+Provides:  qpid(cpp-server)%{?_isa} = %{version}-%{release}
 Requires:  cyrus-sasl
 Requires:  qpid-proton-c%{?_isa} >= 0.5
 
@@ -235,11 +230,11 @@ exit 0
 Summary: Provides extensions to the AMQP message broker to provide high availability
 
 # NOTE: The follow provide will be removed with 0.32
-Provides: qpid(server-ha)%{?_isa} = %{version}
-Requires: qpid(server)%{?_isa} = %{version}
+Provides: qpid(server-ha)%{?_isa} = %{version}-%{release}
+Requires: qpid(server)%{?_isa} = %{version}-%{release}
 
-Provides: qpid(cpp-server-ha)%{?_isa} = %{version}
-Requires: qpid(cpp-server)%{?_isa} = %{version}
+Provides: qpid(cpp-server-ha)%{?_isa} = %{version}-%{release}
+Requires: qpid(cpp-server)%{?_isa} = %{version}-%{release}
 Requires: qpid-qmf%{?_isa}
 # for systemd
 Requires(post): systemd-units
@@ -267,6 +262,41 @@ Requires(postun): systemd-units
 
 
 
+%package -n python-qpid-common
+Summary: Shared code for Qpid Python language bindings
+
+%description -n python-qpid-common
+%{summary}.
+
+
+%files -n python-qpid-common
+%doc LICENSE
+%doc examples
+%{python_sitelib}/mllib
+%{python_sitelib}/qpid/*.py*
+%{python_sitelib}/qpid/specs
+
+
+
+%package -n python-qpid
+Summary: Python client library for AMQP written in pure Python
+
+Requires: python-qpid-common = %{version}-%{release}
+
+%description -n python-qpid
+%{summary}.
+
+%files -n python-qpid
+%doc LICENSE
+%{_bindir}/qpid-python-test
+%{python_sitelib}/qpid
+%exclude %{python_sitelib}/qpid/tests
+%if "%{python_version}" >= "2.6"
+%{python_sitelib}/qpid_python-*.egg-info
+%endif
+
+
+
 %package -n qpid-tools
 Summary: Management and diagostic tools for Apache Qpid
 
@@ -299,11 +329,11 @@ Management and diagnostic tools for Apache Qpid brokers and clients.
 Summary:  RDMA Protocol support (including Infiniband) for Qpid clients
 
 # NOTE: The follow provide will be removed with 0.32
-Provides: qpid(client-rdma)%{?_isa} = %{version}
-Requires: qpid(client)%{?_isa} = %{version}
+Provides: qpid(client-rdma)%{?_isa} = %{version}-%{release}
+Requires: qpid(client)%{?_isa} = %{version}-%{release}
 
-Provides: qpid(cpp-client-rdma)%{?_isa} = %{version}
-Requires: qpid(cpp-client)%{?_isa} = %{version}
+Provides: qpid(cpp-client-rdma)%{?_isa} = %{version}-%{release}
+Requires: qpid(cpp-client)%{?_isa} = %{version}-%{release}
 
 %description client-rdma
 A client plugin and support library to support RDMA protocols (including
@@ -324,13 +354,13 @@ Infiniband) as the transport for Qpid messaging.
 Summary:   RDMA Protocol support (including Infiniband) for the Qpid daemon
 
 # NOTE: The follow provide will be removed with 0.32
-Provides: qpid(server-rdma)%{?_isa} = %{version}
-Requires: qpid(server)%{?_isa} = %{version}
-Requires: qpid(client-rdma)%{?_isa} = %{version}
+Provides: qpid(server-rdma)%{?_isa} = %{version}-%{release}
+Requires: qpid(server)%{?_isa} = %{version}-%{release}
+Requires: qpid(client-rdma)%{?_isa} = %{version}-%{release}
 
-Provides: qpid(cpp-server-rdma)%{?_isa} = %{version}
-Requires: qpid(cpp-server)%{?_isa} = %{version}
-Requires: qpid(cpp-client-rdma)%{?_isa} = %{version}
+Provides: qpid(cpp-server-rdma)%{?_isa} = %{version}-%{release}
+Requires: qpid(cpp-server)%{?_isa} = %{version}-%{release}
+Requires: qpid(cpp-client-rdma)%{?_isa} = %{version}-%{release}
 
 %description server-rdma
 A Qpid daemon plugin to support RDMA protocols (including Infiniband) as the
@@ -350,11 +380,11 @@ transport for AMQP messaging.
 Summary:  XML extensions for the Qpid daemon
 
 # NOTE: The follow provide will be removed with 0.32
-Provides: qpid(server-xml)%{?_isa} = %{version}
-Requires: qpid(server)%{?_isa} = %{version}
+Provides: qpid(server-xml)%{?_isa} = %{version}-%{release}
+Requires: qpid(server)%{?_isa} = %{version}-%{release}
 
-Provides: qpid(cpp-server-xml)%{?_isa} = %{version}
-Requires: qpid(cpp-server)%{?_isa} = %{version}
+Provides: qpid(cpp-server-xml)%{?_isa} = %{version}-%{release}
+Requires: qpid(cpp-server)%{?_isa} = %{version}-%{release}
 Requires: xqilla
 Requires: xerces-c
 
@@ -373,14 +403,12 @@ messages.
 
 %package server-store
 Summary:   Red Hat persistence extension to the Qpid messaging system
-License:   LGPLv2+
 
-# NOTE: The follow provide will be removed with 0.32
-Provides:  qpid(server-store)%{?_isa} = %{version}
-Requires:  qpid(server)%{?_isa} = %{version}
+# TODO - server-store to become linearstore with 0.34
+Requires:  qpid(server)%{?_isa} = %{version}-%{release}
 
-Provides:  qpid(cpp-server-store)%{?_isa} = %{version}
-Requires:  qpid(cpp-server)%{?_isa} = %{version}
+Provides:  qpid(cpp-server-store)%{?_isa} = %{version}-%{release}
+Requires:  qpid(cpp-server)%{?_isa} = %{version}-%{release}
 Requires:  db4
 Requires:  libaio
 
@@ -400,10 +428,9 @@ with Berkeley DB.
 
 %package server-linearstore
 Summary: Red Hat persistence extension to the Qpid messaging sytem
-License: LGPLv2+
 
-Provides: qpid(cpp-server-store)%{?_isa} = %{version}
-Requires: qpid(cpp-server)%{?_isa} = %{version}
+Provides: qpid(cpp-server-store)%{?_isa} = %{version}-%{release}
+Requires: qpid(cpp-server)%{?_isa} = %{version}-%{release}
 Requires: db4
 Requires: libaio
 
@@ -419,24 +446,63 @@ storage using a libaio-based asynchronous journal.
 
 
 
+%package -n perl-qpid-messaging
+Summary:  Perl bindings for the QPid messaging framework
+
+Requires: perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version))
+Requires: qpid(cpp-client)%{?_isa} = %{version}-%{release}
+
+# remove with qpid-cpp 0.36
+Obsoletes: perl-qpid < %{version}
+Provides:  perl-qpid = %{version}
+
+%description -n perl-qpid-messaging
+%{summary}.
+
+%files -n perl-qpid-messaging
+%{perl_vendorarch}/*
+%doc LICENSE
+%doc %{_perldocdir}
+
+
+
+%package -n python-qpid-messaging
+Summary: Python bindings for the Qpid messaging framework
+
+Requires: python
+Requires: qpid(client)%{?_isa} = %{version}-%{release}
+Requires: python-qpid-common
+
+# remove with qpid-cpp 0.36
+Obsoletes: python-qpid_messaging < %{version}
+Provides:  python-qpid_messaging = %{version}-%{release}
+
+%{?filter_setup:
+  %filter_provides_in %{python_sitearch}/.*\.so$
+  %filter_setup}
+
+%description -n python-qpid-messaging
+%{summary}.
+
+%files -n python-qpid-messaging
+%doc LICENSE
+%{python2_sitearch}/qpid_messaging.py*
+%{python2_sitearch}/_qpid_messaging.so
+%{_pythondocdir}/examples
+
+
+
 %prep
 %setup -q -n qpid-cpp-%{version}
-%setup -q -a 1
+%setup -D -q -a 1
+%setup -D -q -a 2
 
 %patch0001 -p2
 %patch0002 -p3
 %patch0003 -p3
-%patch0005 -p3
-%patch0006 -p3
-%patch0007 -p3
-%patch0008 -p3
-%patch0009 -p3
-%patch0010 -p3
-%patch0011 -p3
-%patch0012 -p3
+
 
 pushd qpid-tools-%{version}
-%patch0004 -p3
 # create the file since it's not included in the source tarball
 touch src/py/qlslibs/__init__.py
 popd
@@ -450,11 +516,16 @@ popd
 %build
 %cmake -DDOC_INSTALL_DIR:PATH=%{_pkgdocdir} \
        -DBUILD_LINEARSTORE=true \
+       -DBUILD_LEGACYSTORE=true \
+       -DPERL_PFX_ARCHLIB=%{perl_vendorarch} \
+       -DBUILD_BINDING_RUBY=false \
        .
 make %{?_smp_mflags}
 make docs-user-api
 
-
+pushd qpid-python-%{version}
+CFLAGS="$RPM_OPT_FLAGS" %{__python} setup.py build
+popd
 
 %install
 mkdir -p -m0755 %{buildroot}/%{_bindir}
@@ -466,23 +537,36 @@ pushd qpid-tools-%{version}
     --root %{buildroot}
 popd
 
+pushd qpid-python-%{version}
+%{__python} setup.py install --skip-build --root $RPM_BUILD_ROOT
+
+chmod +x %{buildroot}/%{python_sitelib}/qpid/codec.py
+chmod +x %{buildroot}/%{python_sitelib}/qpid/tests/codec.py
+chmod +x %{buildroot}/%{python_sitelib}/qpid/reference.py
+chmod +x %{buildroot}/%{python_sitelib}/qpid/managementdata.py
+chmod +x %{buildroot}/%{python_sitelib}/qpid/disp.py
+popd
+
+# install examples
+mkdir -p -m0755 %{buildroot}%{_perldocdir}/examples
+mkdir -p -m0755 %{buildroot}%{_pythondocdir}/examples
+
+pushd bindings/qpid/examples/perl
+install -pm 644 * %{buildroot}%{_perldocdir}/examples
+popd
+
+pushd bindings/qpid/examples/python
+install -pm 644 * %{buildroot}%{_pythondocdir}/examples
+popd
+
 make install DESTDIR=%{buildroot}/
 
 # clean up items we're not installing
 rm -f  %{buildroot}/%{_bindir}/qmf*
-rm -f  %{buildroot}/%{_bindir}/qpid-python-test
 rm -rf %{buildroot}/%{_includedir}/qmf
 rm -f  %{buildroot}/%{_libdir}/libqpidbroker.so
-rm -f  %{buildroot}/%{_libdir}/libcqpid_perl.so
-rm -f  %{buildroot}/%{_libdir}/ruby/cqpid.so
-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}/%{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_sitearch}/*qmf*
 rm -rf %{buildroot}/%{_libdir}/qpid/daemon/store.so*
@@ -509,15 +593,19 @@ mkdir -p %{buildroot}/%{_localstatedir}/run
 touch %{buildroot}/%{_localstatedir}/run/qpidd
 mkdir -p %{buildroot}/%{_localstatedir}/lib/qpidd
 
-# clean up leftover ruby files
-rm -rf %{buildroot}/usr/local/%{_lib}/ruby/site_ruby
-
 %post -p /sbin/ldconfig
 
 %postun -p /sbin/ldconfig
 
 
 %changelog
+* Mon Apr  6 2015 Darryl L. Pierce <dpierce at redhat.com> - 0.32-1
+- Rebased on Qpid 0.32.
+- Added build flag to enable building the legacy store.
+- Added the perl-qpid-messaging subpackage.
+- Added the python-qpid-messaging subpackage.
+- Added the python-qpid subpackage.
+
 * Wed Feb 25 2015 Darryl L. Pierce <dpierce at redhat.com> - 0.30-12
 - Added qpidtoollibs to the qpid-tools package.
 
diff --git a/sources b/sources
index 11cff68..633d664 100644
--- a/sources
+++ b/sources
@@ -1,2 +1,3 @@
-82c572b9c7a5b2a1492ecd73bfcd4181  qpid-cpp-0.30.tar.gz
-81e75574eefefae5fd653ffccbd32d0d  qpid-tools-0.30.tar.gz
+8d553c0741b7fdd70e538656a9800100  qpid-cpp-0.32.tar.gz
+f9a4b8a6ca2138f57a3c5bf26a3b76b0  qpid-tools-0.32.tar.gz
+7d6d1d2938fcd9e5a19423123b800179  qpid-python-0.32.tar.gz
-- 
cgit v0.10.2


	http://pkgs.fedoraproject.org/cgit/qpid-cpp.git/commit/?h=f21&id=687cec8a8941840c594e3959457d68d83f5c8ef0


More information about the scm-commits mailing list