Hello community,

here is the log from the commit of package boost for openSUSE:Factory checked 
in at 2014-05-10 08:32:06
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/boost (Old)
 and      /work/SRC/openSUSE:Factory/.boost.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "boost"

Changes:
--------
--- /work/SRC/openSUSE:Factory/boost/boost.changes      2014-04-06 
07:10:14.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.boost.new/boost.changes 2014-05-10 
08:32:20.000000000 +0200
@@ -1,0 +2,15 @@
+Tue Apr 29 14:34:41 UTC 2014 - [email protected]
+
+- ppc64 ABIv2 support 
+- enable build_context for ppc64le
+- added patches:
+  * boost-ppc64-abiv2-context.patch
+  * boost-ppc64-abiv2-coroutine.patch
+-------------------------------------------------------------------
+Sat Apr 19 17:40:27 UTC 2014 - [email protected]
+
+- Fix quoting while creating shared build instructions
+- Properly configure library list
+- bjam-alignment.patch: fix alignment check in bjam
+
+-------------------------------------------------------------------

New:
----
  bjam-alignment.patch
  boost-ppc64-abiv2-context.patch
  boost-ppc64-abiv2-coroutine.patch

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ boost.spec ++++++
--- /var/tmp/diff_new_pack.6fURGB/_old  2014-05-10 08:32:23.000000000 +0200
+++ /var/tmp/diff_new_pack.6fURGB/_new  2014-05-10 08:32:23.000000000 +0200
@@ -37,7 +37,7 @@
 %endif
 
 # context hasn't been ported to most architectures yet
-%ifarch %ix86 x86_64 %arm mips ppc ppc64
+%ifarch %ix86 x86_64 %arm mips ppc ppc64 ppc64le
 %define build_context 1
 %else
 %define build_context 0
@@ -109,6 +109,7 @@
 Patch20:        boost-strict_aliasing.patch
 Patch50:        boost-use_std_xml_catalog.patch
 Patch60:        boost-glibc-2.18.patch
+Patch61:        bjam-alignment.patch
 #PATCH-FIX-UPSTREAM A post-release patch.
 Patch71:        boost-1.54-001-coroutine.patch
 #PATCH-FIX-UPSTREAM A post-release patch.
@@ -119,6 +120,11 @@
 Patch74:        boost-1.54-change85160.patch
 #PATCH-FIX-UPSTREAM https://svn.boost.org/trac/boost/ticket/9041
 Patch75:        boost-1.54.0-thread-link_atomic.patch
+#PATCH-FIX-UPSTREAM 
https://github.com/boost-at/boost_1_55_0/commit/4221b902fe3a3a9ff1e2d384acf46eceda782160
+Patch76:        boost-ppc64-abiv2-context.patch
+#PATCH-FIX-UPSTREAM 
https://github.com/boost-at/boost_1_55_0/commit/e0fc16ec166c90564487f99078ed228e27828d2e
+Patch77:        boost-ppc64-abiv2-coroutine.patch
+
 Recommends:     %{all_libs}
 
 %define _docdir %{_datadir}/doc/packages/boost-%{version}
@@ -430,11 +436,14 @@
 %patch20
 %patch50
 %patch60 -p1
+%patch61 -p1
 %patch71 -p1
 %patch72 -p1
 %patch73 -p1
 %patch74 -p0
 %patch75 -p1
+%patch76 -p1
+%patch77 -p1
 #stupid build machinery copies .orig files
 find . -name \*.orig -exec rm {} +
 
@@ -442,7 +451,7 @@
 find . -type f -exec chmod u+w {} +
 
 # Create shared build instructions
-cat << EOF >.build 
+cat << \EOF >.build 
 # Now build it
 J_P=%{jobs}
 J_G=$(getconf _NPROCESSORS_ONLN)
@@ -476,10 +485,10 @@
 export REGEX_FLAGS="--with-icu"
 export EXPAT_INCLUDE=/usr/include EXPAT_LIBPATH=%{_libdir}
 export PYTHON_FLAGS
-LIBRARIES_FLAGS=
+LIBRARIES_FLAGS=--with-libraries=all
 %if !%build_context
 # coroutine depends on context
-LIBRARIES_FLAGS+=" --without-context --without-coroutine"
+LIBRARIES_FLAGS+=" --without-libraries=context,coroutine"
 %endif
 EOF
 
@@ -487,11 +496,11 @@
 . ./.build
 
 # Set PATH, MANPATH and LD_LIBRARY_PATH for mpi
-source /var/mpi-selector/data/$(rpm --qf "%{NAME}-%{VERSION}" -q openmpi).sh
+. /var/mpi-selector/data/$(rpm --qf "%{NAME}-%{VERSION}" -q openmpi).sh
 
 # use supplied bootstrap.sh instead of mucking with old bjam
 # see also: https://svn.boost.org/trac/boost/ticket/9304
-./bootstrap.sh --with-libraries=all \
+./bootstrap.sh $LIBRARIES_FLAGS \
     --prefix=%{_prefix} --exec-prefix=%{_bindir} \
     --libdir=%{_libdir} --includedir=%{_includedir}
 
@@ -526,7 +535,7 @@
 . ./.build
 
 # Set PATH, MANPATH and LD_LIBRARY_PATH for mpi
-source /var/mpi-selector/data/$(rpm --qf "%{NAME}-%{VERSION}" -q openmpi).sh
+. /var/mpi-selector/data/$(rpm --qf "%{NAME}-%{VERSION}" -q openmpi).sh
 
 ./b2 install \
     --prefix=%{buildroot}%{_prefix} --exec-prefix=%{buildroot}%{_bindir} \


++++++ bjam-alignment.patch ++++++
Index: boost_1_54_0/tools/build/v2/engine/function.c
===================================================================
--- boost_1_54_0.orig/tools/build/v2/engine/function.c
+++ boost_1_54_0/tools/build/v2/engine/function.c
@@ -230,7 +230,7 @@ STACK * stack_global()
 
 static void check_alignment( STACK * s )
 {
-    assert( (size_t)s->data % sizeof( LIST * ) == 0 );
+    assert( (size_t)s->data % __alignof__( LIST * ) == 0 );
 }
 
 void * stack_allocate( STACK * s, int size )
++++++ boost-ppc64-abiv2-context.patch ++++++
++++ 752 lines (skipped)

++++++ boost-ppc64-abiv2-coroutine.patch ++++++
diff --git a/boost/coroutine/detail/coroutine_context.hpp 
b/boost/coroutine/detail/coroutine_context.hpp
--- a/boost/coroutine/detail/coroutine_context.hpp
+++ b/boost/coroutine/detail/coroutine_context.hpp
@@ -34,27 +34,33 @@ namespace boost {
 namespace coroutines {
 namespace detail {
 
-
-class BOOST_COROUTINES_DECL coroutine_context : private context::fcontext_t,
-                                                private stack_context
+// class hold stack-context and coroutines execution-context
+class BOOST_COROUTINES_DECL coroutine_context
                     
 {
 private:
-    stack_context       *   stack_ctx_;
-    context::fcontext_t *   ctx_;
+    stack_context           stack_ctx_;
+    context::fcontext_t     *ctx_;
 
 public:
     typedef void( * ctx_fn)( intptr_t);
 
+    // default ctor represents the current execution-context
     coroutine_context();
 
-    explicit coroutine_context( ctx_fn, stack_context *);
+    // ctor creates a new execution-context running coroutine-fn `fn`
+    // `ctx_` will be allocated on top of the stack managed by parameter
+    // `stack_ctx`
+    coroutine_context( ctx_fn fn, stack_context const& stack_ctx);
 
     coroutine_context( coroutine_context const&);
 
     coroutine_context& operator=( coroutine_context const&);
 
     intptr_t jump( coroutine_context &, intptr_t = 0, bool = true);
+
+    stack_context & stack_ctx()
+    { return stack_ctx_; }
 };
 
 }}}
diff --git a/libs/coroutine/src/detail/coroutine_context.cpp 
b/libs/coroutine/src/detail/coroutine_context.cpp
--- a/libs/coroutine/src/detail/coroutine_context.cpp
+++ b/libs/coroutine/src/detail/coroutine_context.cpp
@@ -34,20 +34,20 @@ namespace coroutines {
 namespace detail {
 
 coroutine_context::coroutine_context() :
-    fcontext_t(), stack_ctx_( this), ctx_( this)
+    stack_ctx_(),
+    ctx_( 0)
 {
 #if defined(BOOST_USE_SEGMENTED_STACKS)
     __splitstack_getcontext( stack_ctx_->segments_ctx);
 #endif
 }
 
-coroutine_context::coroutine_context( ctx_fn fn, stack_context * stack_ctx) :
-    fcontext_t(), stack_ctx_( stack_ctx),
-    ctx_( context::make_fcontext( stack_ctx_->sp, stack_ctx_->size, fn) )
+coroutine_context::coroutine_context( ctx_fn fn, stack_context const& 
stack_ctx) :
+    stack_ctx_( stack_ctx),
+    ctx_( context::make_fcontext( stack_ctx_.sp, stack_ctx_.size, fn) )
 {}
 
 coroutine_context::coroutine_context( coroutine_context const& other) :
-    fcontext_t(),
     stack_ctx_( other.stack_ctx_),
     ctx_( other.ctx_)
 {}
@@ -79,7 +79,7 @@ coroutine_context::jump( coroutine_context & other, intptr_t 
param, bool preserv
 
     return ret;
 #else
-    return context::jump_fcontext( ctx_, other.ctx_, param, preserve_fpu);
+    return context::jump_fcontext( & ctx_, other.ctx_, param, preserve_fpu);
 #endif
 }
-- 
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to