[boost/f20] Fix atomic_cas32 in Boost.Interprocess

Petr Machata pmachata at fedoraproject.org
Thu Aug 29 22:44:06 UTC 2013


commit db69547da6152d31e95b2e965b0b20b9c306b1b1
Author: Petr Machata <pmachata at redhat.com>
Date:   Fri Aug 30 00:28:31 2013 +0200

    Fix atomic_cas32 in Boost.Interprocess

 boost-1.54.0-interprocess-atomic_cas32-ppc.patch |   14 ++++++++++++++
 boost.spec                                       |   11 ++++++++++-
 2 files changed, 24 insertions(+), 1 deletions(-)
---
diff --git a/boost-1.54.0-interprocess-atomic_cas32-ppc.patch b/boost-1.54.0-interprocess-atomic_cas32-ppc.patch
new file mode 100644
index 0000000..e5268d1
--- /dev/null
+++ b/boost-1.54.0-interprocess-atomic_cas32-ppc.patch
@@ -0,0 +1,14 @@
+diff -up boost_1_54_0/boost/interprocess/detail/atomic.hpp\~ boost_1_54_0/boost/interprocess/detail/atomic.hpp
+--- boost_1_54_0/boost/interprocess/detail/atomic.hpp~	2012-09-24 14:17:34.000000000 +0200
++++ boost_1_54_0/boost/interprocess/detail/atomic.hpp	2013-08-29 16:36:51.682606594 +0200
+@@ -213,7 +213,7 @@ inline boost::uint32_t atomic_cas32
+                  "bne-   1b\n\t"
+                  "2:"
+                  : "=&r"(prev)
+-                 : "b" (mem), "r"(cmp), "r" (with)
++                 : "b" (mem), "r" (with), "r" (cmp)
+                  : "cc", "memory");
+    return prev;
+ }
+
+Diff finished.  Thu Aug 29 16:36:55 2013
diff --git a/boost.spec b/boost.spec
index e949054..b67a05d 100644
--- a/boost.spec
+++ b/boost.spec
@@ -36,7 +36,7 @@ Name: boost
 Summary: The free peer-reviewed portable C++ source libraries
 Version: 1.54.0
 %define version_enc 1_54_0
-Release: 4%{?dist}
+Release: 5%{?dist}
 License: Boost and MIT and Python
 
 %define toplev_dirname %{name}_%{version_enc}
@@ -193,6 +193,10 @@ Patch53: boost-1.54.0-pool-max_chunks_shadow.patch
 # https://svn.boost.org/trac/boost/ticket/9041
 Patch54: boost-1.54.0-thread-link_atomic.patch
 
+# https://bugzilla.redhat.com/show_bug.cgi?id=1002578
+# https://svn.boost.org/trac/boost/ticket/9065
+Patch55: boost-1.54.0-interprocess-atomic_cas32-ppc.patch
+
 %bcond_with tests
 %bcond_with docs_generated
 
@@ -682,6 +686,7 @@ a number of significant features and is now developed independently
 %patch52 -p1
 %patch53 -p1
 %patch54 -p1
+%patch55 -p1
 
 # At least python2_version needs to be a macro so that it's visible in
 # %%install as well.
@@ -1262,6 +1267,10 @@ rm -rf $RPM_BUILD_ROOT
 %{_mandir}/man1/bjam.1*
 
 %changelog
+* Thu Aug 29 2013 Petr Machata <pmachata at redhat.com> - 1.54.0-5
+- Fix atomic_cas32 (thanks Jaroslav Škarvada for figuring out where
+  the problem is) (boost-1.54.0-interprocess-atomic_cas32-ppc.patch)
+
 * Fri Aug 23 2013 Petr Machata <pmachata at redhat.com> - 1.54.0-4
 - Fix compilation of Boost.Pool test cases
   (boost-1.54.0-pool-test_linking.patch)


More information about the scm-commits mailing list