diff --git a/boost-1.53.0-signals2-std_get_llvm.patch b/boost-1.53.0-signals2-std_get_llvm.patch new file mode 100644 index 0000000..b54de5b --- /dev/null +++ b/boost-1.53.0-signals2-std_get_llvm.patch @@ -0,0 +1,59 @@ +Index: /trunk/boost/signals2/detail/variadic_slot_invoker.hpp +=================================================================== +--- /trunk/boost/signals2/detail/variadic_slot_invoker.hpp (revision 78502) ++++ /trunk/boost/signals2/detail/variadic_slot_invoker.hpp (revision 83041) +@@ -16,4 +16,5 @@ + #define BOOST_SIGNALS2_DETAIL_VARIADIC_SLOT_INVOKER_HPP + ++#include + #include + +@@ -23,7 +24,9 @@ + #include + #define BOOST_SIGNALS2_TUPLE boost::tuple ++#define BOOST_SIGNALS2_GET boost::get + #else + #include + #define BOOST_SIGNALS2_TUPLE std::tuple ++#define BOOST_SIGNALS2_GET std::get + #endif + +@@ -71,8 +74,8 @@ + typedef R result_type; + +- template +- R operator()(Func &func, BOOST_SIGNALS2_TUPLE args) const ++ template ++ R operator()(Func &func, BOOST_SIGNALS2_TUPLE args, mpl::size_t) const + { +- typedef typename make_unsigned_meta_array::type indices_type; ++ typedef typename make_unsigned_meta_array::type indices_type; + typename Func::result_type *resolver = 0; + return m_invoke(resolver, func, indices_type(), args); +@@ -82,10 +85,10 @@ + R m_invoke(T *, Func &func, unsigned_meta_array, BOOST_SIGNALS2_TUPLE args) const + { +- return func(std::get(args)...); ++ return func(BOOST_SIGNALS2_GET(args)...); + } + template + R m_invoke(void *, Func &func, unsigned_meta_array, BOOST_SIGNALS2_TUPLE args) const + { +- func(std::get(args)...); ++ func(BOOST_SIGNALS2_GET(args)...); + return R(); + } +@@ -112,5 +115,5 @@ + const void_type *) const + { +- return call_with_tuple_args()(connectionBody->slot.slot_function(), _args); ++ return call_with_tuple_args()(connectionBody->slot.slot_function(), _args, mpl::size_t()); + return void_type(); + } +@@ -118,5 +121,5 @@ + result_type m_invoke(const ConnectionBodyType &connectionBody, ...) const + { +- return call_with_tuple_args()(connectionBody->slot.slot_function(), _args); ++ return call_with_tuple_args()(connectionBody->slot.slot_function(), _args, mpl::size_t()); + } + BOOST_SIGNALS2_TUPLE _args; diff --git a/boost.spec b/boost.spec index 4fede0c..5b3db8f 100644 --- a/boost.spec +++ b/boost.spec @@ -34,7 +34,7 @@ Name: boost Summary: The free peer-reviewed portable C++ source libraries Version: 1.53.0 %define version_enc 1_53_0 -Release: 11%{?dist} +Release: 12%{?dist} License: Boost and MIT and Python %define toplev_dirname %{name}_%{version_enc} @@ -189,6 +189,10 @@ Patch48: boost-1.54.0-mpi-unused_typedef.patch # https://svn.boost.org/trac/boost/ticket/8888 Patch49: boost-1.54.0-python-unused_typedef.patch +# https://svn.boost.org/trac/boost/ticket/8102 +# https://bugzilla.redhat.com/show_bug.cgi?id=999320 +Patch50: boost-1.53.0-signals2-std_get_llvm.patch + %bcond_with tests %bcond_with docs_generated @@ -668,6 +672,7 @@ a number of significant features and is now developed independently %patch47 -p1 %patch48 -p1 %patch49 -p1 +%patch50 -p2 # At least python2_version needs to be a macro so that it's visible in # %%install as well. @@ -1239,6 +1244,10 @@ rm -rf $RPM_BUILD_ROOT %{_mandir}/man1/bjam.1* %changelog +* Wed Aug 21 2013 Petr Machata - 1.53.0-12 +- Fix boost::signals2::signal on LLVM + (boost-1.53.0-signals2-std_get_llvm.patch) + * Fri Jul 26 2013 Petr Machata - 1.53.0-11 - Add Obsoletes for odeint (bug 892850)