[boost/f19] Flush more work in progress

Petr Machata pmachata at fedoraproject.org
Tue Jul 23 00:10:59 UTC 2013


commit 255051da37ab2f733c156434c2b2357dfbbffc76
Author: Petr Machata <pmachata at redhat.com>
Date:   Tue Jul 23 02:09:25 2013 +0200

    Flush more work in progress
    
    - This adds some forgotten patches from the last time around
      (context-execstack, mpl-print)
    - And adds another bunch of unused local typedef patches

 boost-1.53.0-fpclassify-unused_typedef.patch    |   80 ++++++++++++++
 boost-1.53.0-graph-unused_typedef.patch         |  130 +++++++++++++++++++++++
 boost-1.53.0-lexical_cast-unused_typedef.patch  |   13 +++
 boost-1.53.0-math-unused_typedef-3.patch        |   46 ++++++++
 boost-1.53.0-regex-unused_typedef.patch         |   65 +++++++++++
 boost-1.54.0-algorithm-unused_typedef.patch     |   43 ++++++++
 boost-1.54.0-context-execstack.patch            |  109 +++++++++++++++++++
 boost-1.54.0-date_time-unused_typedef-2.patch   |   13 +++
 boost-1.54.0-locale-unused_typedef.patch        |   11 ++
 boost-1.54.0-mpi-unused_typedef.patch           |   11 ++
 boost-1.54.0-mpl-print.patch                    |   37 +++++++
 boost-1.54.0-property_tree-unused_typedef.patch |   19 ++++
 boost-1.54.0-spirit-unused_typedef-2.patch      |   22 ++++
 boost-1.54.0-unordered-unused_typedef.patch     |   14 +++
 boost-1.54.0-xpressive-unused_typedef.patch     |   11 ++
 boost.spec                                      |   72 +++++++++++--
 16 files changed, 686 insertions(+), 10 deletions(-)
---
diff --git a/boost-1.53.0-fpclassify-unused_typedef.patch b/boost-1.53.0-fpclassify-unused_typedef.patch
new file mode 100644
index 0000000..dddd3a8
--- /dev/null
+++ b/boost-1.53.0-fpclassify-unused_typedef.patch
@@ -0,0 +1,80 @@
+diff -up boost_1_53_0/boost/math/special_functions/sign.hpp\~ boost_1_53_0/boost/math/special_functions/sign.hpp
+--- boost_1_53_0/boost/math/special_functions/sign.hpp~	2011-05-17 14:19:17.000000000 +0200
++++ boost_1_53_0/boost/math/special_functions/sign.hpp	2013-07-22 23:24:39.751342557 +0200
+@@ -110,7 +110,6 @@ template<class T> int (signbit)(T x)
+ { 
+    typedef typename detail::fp_traits<T>::type traits;
+    typedef typename traits::method method;
+-   typedef typename boost::is_floating_point<T>::type fp_tag;
+    return detail::signbit_impl(x, method());
+ }
+ 
+@@ -124,7 +123,6 @@ template<class T> T (changesign)(const T
+ { //!< \brief return unchanged binary pattern of x, except for change of sign bit. 
+    typedef typename detail::fp_traits<T>::sign_change_type traits;
+    typedef typename traits::method method;
+-   typedef typename boost::is_floating_point<T>::type fp_tag;
+ 
+    return detail::changesign_impl(x, method());
+ }
+diff -up boost_1_53_0/boost/math/special_functions/fpclassify.hpp~ boost_1_53_0/boost/math/special_functions/fpclassify.hpp
+--- boost_1_53_0/boost/math/special_functions/fpclassify.hpp~	2012-12-12 19:17:22.000000000 +0100
++++ boost_1_53_0/boost/math/special_functions/fpclassify.hpp	2013-07-22 12:07:59.478713488 +0200
+@@ -327,7 +327,6 @@ inline bool (isfinite)(T x)
+ { //!< \brief return true if floating-point type t is finite.
+    typedef typename detail::fp_traits<T>::type traits;
+    typedef typename traits::method method;
+-   typedef typename boost::is_floating_point<T>::type fp_tag;
+    typedef typename tools::promote_args<T>::type value_type;
+    return detail::isfinite_impl(static_cast<value_type>(x), method());
+ }
+@@ -338,7 +338,6 @@ inline bool (isfinite)(long double x)
+ { //!< \brief return true if floating-point type t is finite.
+    typedef detail::fp_traits<long double>::type traits;
+    typedef traits::method method;
+-   typedef boost::is_floating_point<long double>::type fp_tag;
+    typedef long double value_type;
+    return detail::isfinite_impl(static_cast<value_type>(x), method());
+ }
+@@ -398,7 +397,6 @@ inline bool (isnormal)(T x)
+ {
+    typedef typename detail::fp_traits<T>::type traits;
+    typedef typename traits::method method;
+-   typedef typename boost::is_floating_point<T>::type fp_tag;
+    typedef typename tools::promote_args<T>::type value_type;
+    return detail::isnormal_impl(static_cast<value_type>(x), method());
+ }
+@@ -409,7 +408,6 @@ inline bool (isnormal)(long double x)
+ {
+    typedef detail::fp_traits<long double>::type traits;
+    typedef traits::method method;
+-   typedef boost::is_floating_point<long double>::type fp_tag;
+    typedef long double value_type;
+    return detail::isnormal_impl(static_cast<value_type>(x), method());
+ }
+@@ -487,7 +485,6 @@ inline bool (isinf)(T x)
+ {
+    typedef typename detail::fp_traits<T>::type traits;
+    typedef typename traits::method method;
+-   typedef typename boost::is_floating_point<T>::type fp_tag;
+    typedef typename tools::promote_args<T>::type value_type;
+    return detail::isinf_impl(static_cast<value_type>(x), method());
+ }
+@@ -498,7 +496,6 @@ inline bool (isinf)(long double x)
+ {
+    typedef detail::fp_traits<long double>::type traits;
+    typedef traits::method method;
+-   typedef boost::is_floating_point<long double>::type fp_tag;
+    typedef long double value_type;
+    return detail::isinf_impl(static_cast<value_type>(x), method());
+ }
+@@ -570,7 +567,6 @@ inline bool (isnan)(T x)
+ { //!< \brief return true if floating-point type t is NaN (Not A Number).
+    typedef typename detail::fp_traits<T>::type traits;
+    typedef typename traits::method method;
+-   typedef typename boost::is_floating_point<T>::type fp_tag;
+    return detail::isnan_impl(x, method());
+ }
+ 
+
+Diff finished.  Mon Jul 22 12:09:24 2013
diff --git a/boost-1.53.0-graph-unused_typedef.patch b/boost-1.53.0-graph-unused_typedef.patch
new file mode 100644
index 0000000..697714f
--- /dev/null
+++ b/boost-1.53.0-graph-unused_typedef.patch
@@ -0,0 +1,130 @@
+diff -urp boost_1_54_0-orig/boost/graph/breadth_first_search.hpp boost_1_54_0/boost/graph/breadth_first_search.hpp
+--- boost_1_54_0-orig/boost/graph/breadth_first_search.hpp	2013-07-23 00:47:43.418886551 +0200
++++ boost_1_54_0/boost/graph/breadth_first_search.hpp	2013-07-23 00:50:40.339958756 +0200
+@@ -64,7 +64,6 @@ namespace boost {
+     BOOST_CONCEPT_ASSERT(( IncidenceGraphConcept<IncidenceGraph> ));
+     typedef graph_traits<IncidenceGraph> GTraits;
+     typedef typename GTraits::vertex_descriptor Vertex;
+-    typedef typename GTraits::edge_descriptor Edge;
+     BOOST_CONCEPT_ASSERT(( BFSVisitorConcept<BFSVisitor, IncidenceGraph> ));
+     BOOST_CONCEPT_ASSERT(( ReadWritePropertyMapConcept<ColorMap, Vertex> ));
+     typedef typename property_traits<ColorMap>::value_type ColorValue;
+diff -urp boost_1_53_0-orig/boost/graph/compressed_sparse_row_graph.hpp boost_1_53_0/boost/graph/compressed_sparse_row_graph.hpp
+--- boost_1_53_0-orig/boost/graph/compressed_sparse_row_graph.hpp	2013-07-23 01:32:19.273266030 +0200
++++ boost_1_53_0/boost/graph/compressed_sparse_row_graph.hpp	2013-07-23 01:34:15.202970721 +0200
+@@ -642,8 +642,6 @@ class compressed_sparse_row_graph<direct
+                      const GlobalToLocal& global_to_local) {
+     typedef compressed_sparse_row_graph Graph;
+     typedef typename boost::graph_traits<Graph>::vertex_descriptor vertex_t;
+-    typedef typename boost::graph_traits<Graph>::vertices_size_type vertex_num;
+-    typedef typename boost::graph_traits<Graph>::edges_size_type edge_num;
+     typedef std::vector<std::pair<vertex_t, vertex_t> > edge_vector_t;
+     edge_vector_t new_edges(first, last);
+     if (new_edges.empty()) return;
+@@ -666,8 +664,6 @@ class compressed_sparse_row_graph<direct
+                      const GlobalToLocal& global_to_local) {
+     typedef compressed_sparse_row_graph Graph;
+     typedef typename boost::graph_traits<Graph>::vertex_descriptor vertex_t;
+-    typedef typename boost::graph_traits<Graph>::vertices_size_type vertex_num;
+-    typedef typename boost::graph_traits<Graph>::edges_size_type edge_num;
+     typedef std::pair<vertex_t, vertex_t> vertex_pair;
+     typedef std::vector<
+               boost::tuple<vertex_pair,
+@@ -1164,7 +1160,6 @@ inline std::pair<typename BOOST_BIDIR_CS
+                  typename BOOST_BIDIR_CSR_GRAPH_TYPE::in_edge_iterator>
+ in_edges(Vertex v, const BOOST_BIDIR_CSR_GRAPH_TYPE& g)
+ {
+-  typedef typename BOOST_BIDIR_CSR_GRAPH_TYPE::edge_descriptor ed;
+   typedef typename BOOST_BIDIR_CSR_GRAPH_TYPE::in_edge_iterator it;
+   EdgeIndex v_row_start = g.m_backward.m_rowstart[v];
+   EdgeIndex next_row_start = g.m_backward.m_rowstart[v + 1];
+@@ -1368,7 +1363,6 @@ put(Tag tag,
+     typename property_map<BOOST_CSR_GRAPH_TYPE, Tag>::key_type k,
+     typename lookup_one_property<typename property_map<BOOST_CSR_GRAPH_TYPE, Tag>::plist_type, Tag>::type val) {
+   typedef typename property_map<BOOST_CSR_GRAPH_TYPE, Tag>::all_tag all_tag;
+-  typedef typename property_map<BOOST_CSR_GRAPH_TYPE, all_tag>::type outer_pm;
+   lookup_one_property<typename property_map<BOOST_CSR_GRAPH_TYPE, Tag>::plist_type, Tag>::lookup(get(all_tag(), g, k), tag) = val;
+ }
+ 
+diff -urp boost_1_53_0-orig/boost/graph/detail/adjacency_list.hpp boost_1_53_0/boost/graph/detail/adjacency_list.hpp
+--- boost_1_53_0-orig/boost/graph/detail/adjacency_list.hpp	2013-07-23 01:32:19.390266741 +0200
++++ boost_1_53_0/boost/graph/detail/adjacency_list.hpp	2013-07-23 01:34:15.275971164 +0200
+@@ -634,7 +634,6 @@ namespace boost {
+                     directed_graph_helper<Config>& g_)
+     {
+       typedef typename Config::graph_type graph_type;
+-      typedef typename Config::edge_parallel_category Cat;
+       graph_type& g = static_cast<graph_type&>(g_);
+       g.out_edge_list(u).clear();
+       // clear() should be a req of Sequence and AssociativeContainer,
+@@ -781,7 +780,6 @@ namespace boost {
+         typedef typename Graph::global_edgelist_selector EdgeListS;
+         BOOST_STATIC_ASSERT((!is_same<EdgeListS, vecS>::value));
+ 
+-        typedef typename EdgeList::value_type StoredEdge;
+         typename EdgeList::iterator i = el.begin(), end = el.end();
+         for (; i != end; ++i) {
+           if ((*i).get_target() == v) {
+@@ -986,7 +984,6 @@ namespace boost {
+       BOOST_STATIC_ASSERT((!is_same<EdgeListS, vecS>::value));
+ 
+       typedef typename Config::graph_type graph_type;
+-      typedef typename Config::edge_parallel_category Cat;
+       graph_type& g = static_cast<graph_type&>(g_);
+       while (true) {
+         typename Config::out_edge_iterator ei, ei_end;
+@@ -1588,7 +1585,6 @@ namespace boost {
+       typedef typename Config::graph_type Graph;
+       typedef typename Config::StoredEdge StoredEdge;
+       const Graph& cg = static_cast<const Graph&>(g_);
+-      typedef typename Config::out_edge_iterator out_edge_iterator;
+       const typename Config::OutEdgeList& el = cg.out_edge_list(u);
+       typename Config::OutEdgeList::const_iterator it = graph_detail::
+         find(el, StoredEdge(v));
+diff -urp boost_1_53_0-orig/boost/graph/detail/compressed_sparse_row_struct.hpp boost_1_53_0/boost/graph/detail/compressed_sparse_row_struct.hpp
+--- boost_1_53_0-orig/boost/graph/detail/compressed_sparse_row_struct.hpp	2013-07-23 01:32:19.395266772 +0200
++++ boost_1_53_0/boost/graph/detail/compressed_sparse_row_struct.hpp	2013-07-23 01:34:15.278971182 +0200
+@@ -218,8 +218,6 @@ namespace detail {
+       // the user has supplied the number of edges.
+       edges_size_type numedges = numedges_or_zero;
+       if (numedges == 0) {
+-        typedef typename std::iterator_traits<InputIterator>::iterator_category
+-          category;
+         numedges = boost::graph::detail::reserve_count_for_single_pass(edge_begin, edge_end);
+       }
+       m_column.clear();
+@@ -313,7 +311,6 @@ namespace detail {
+       inherited_edge_properties::resize(numedges);
+       EdgeIndex current_edge = 0;
+       typedef typename boost::graph_traits<Graph>::vertex_descriptor g_vertex;
+-      typedef typename boost::graph_traits<Graph>::edge_descriptor g_edge;
+       typedef typename boost::graph_traits<Graph>::out_edge_iterator
+         g_out_edge_iter;
+ 
+@@ -347,7 +344,6 @@ namespace detail {
+       // Flip sequence
+       BidirectionalIterator first(last_sorted);
+       BidirectionalIterator last(first_sorted);
+-      typedef Vertex vertex_t;
+       typedef Vertex vertex_num;
+       typedef EdgeIndex edge_num;
+       edge_num new_edge_count = std::distance(first, last);
+diff -urp boost_1_53_0-orig/boost/graph/detail/histogram_sort.hpp boost_1_53_0/boost/graph/detail/histogram_sort.hpp
+--- boost_1_53_0-orig/boost/graph/detail/histogram_sort.hpp	2013-07-23 01:32:19.364266583 +0200
++++ boost_1_53_0/boost/graph/detail/histogram_sort.hpp	2013-07-23 01:34:15.279971188 +0200
+@@ -159,7 +159,6 @@ histogram_sort_inplace(KeyIterator key_b
+                        Value1Iter values1,
+                        KeyTransform key_transform) {
+ 
+-  typedef NumKeys vertices_size_type;
+   typedef typename std::iterator_traits<RowstartIterator>::value_type EdgeIndex;
+ 
+   // 1. Copy m_rowstart (except last element) to get insert positions
+@@ -194,7 +193,6 @@ histogram_sort_inplace(KeyIterator key_b
+                        Value2Iter values2,
+                        KeyTransform key_transform) {
+ 
+-  typedef NumKeys vertices_size_type;
+   typedef typename std::iterator_traits<RowstartIterator>::value_type EdgeIndex;
+ 
+   // 1. Copy m_rowstart (except last element) to get insert positions
diff --git a/boost-1.53.0-lexical_cast-unused_typedef.patch b/boost-1.53.0-lexical_cast-unused_typedef.patch
new file mode 100644
index 0000000..a93c0ee
--- /dev/null
+++ b/boost-1.53.0-lexical_cast-unused_typedef.patch
@@ -0,0 +1,13 @@
+diff -up boost_1_53_0/boost/lexical_cast.hpp\~ boost_1_53_0/boost/lexical_cast.hpp
+--- boost_1_53_0/boost/lexical_cast.hpp~	2012-12-29 15:41:23.000000000 +0100
++++ boost_1_53_0/boost/lexical_cast.hpp	2013-07-22 23:27:48.841566845 +0200
+@@ -865,7 +865,6 @@ namespace boost {
+ #ifndef BOOST_NO_LIMITS_COMPILE_TIME_CONSTANTS
+             BOOST_STATIC_ASSERT(!std::numeric_limits<T>::is_signed);
+ #endif
+-            typedef typename Traits::int_type int_type;
+             CharT const czero = lcast_char_constants<CharT>::zero;
+             --end;
+             value = 0;
+
+Diff finished.  Mon Jul 22 23:28:02 2013
diff --git a/boost-1.53.0-math-unused_typedef-3.patch b/boost-1.53.0-math-unused_typedef-3.patch
new file mode 100644
index 0000000..f8b4854
--- /dev/null
+++ b/boost-1.53.0-math-unused_typedef-3.patch
@@ -0,0 +1,46 @@
+diff -urp boost_1_53_0-orig/boost/math/special_functions/detail/igamma_inverse.hpp boost_1_53_0/boost/math/special_functions/detail/igamma_inverse.hpp
+--- boost_1_53_0-orig/boost/math/special_functions/detail/igamma_inverse.hpp	2013-07-23 01:32:21.874281840 +0200
++++ boost_1_53_0/boost/math/special_functions/detail/igamma_inverse.hpp	2013-07-23 01:34:15.291971260 +0200
+@@ -341,7 +341,6 @@ struct gamma_p_inverse_func
+       // flag is set, then Q(x) - q and it's derivatives.
+       //
+       typedef typename policies::evaluation<T, Policy>::type value_type;
+-      typedef typename lanczos::lanczos<T, Policy>::type evaluation_type;
+       typedef typename policies::normalise<
+          Policy, 
+          policies::promote_float<false>, 
+diff -urp boost_1_53_0-orig/boost/math/special_functions/gamma.hpp boost_1_53_0/boost/math/special_functions/gamma.hpp
+--- boost_1_53_0-orig/boost/math/special_functions/gamma.hpp	2013-07-23 01:32:21.824281537 +0200
++++ boost_1_53_0/boost/math/special_functions/gamma.hpp	2013-07-23 01:34:15.322971451 +0200
+@@ -1360,7 +1360,6 @@ inline typename tools::promote_args<T1, 
+    BOOST_FPU_EXCEPTION_GUARD
+    typedef typename tools::promote_args<T1, T2>::type result_type;
+    typedef typename policies::evaluation<result_type, Policy>::type value_type;
+-   typedef typename lanczos::lanczos<value_type, Policy>::type evaluation_type;
+    typedef typename policies::normalise<
+       Policy, 
+       policies::promote_float<false>, 
+@@ -1489,7 +1488,6 @@ inline typename tools::promote_args<T1, 
+    BOOST_FPU_EXCEPTION_GUARD
+    typedef typename tools::promote_args<T1, T2>::type result_type;
+    typedef typename policies::evaluation<result_type, Policy>::type value_type;
+-   typedef typename lanczos::lanczos<value_type, Policy>::type evaluation_type;
+    typedef typename policies::normalise<
+       Policy, 
+       policies::promote_float<false>, 
+@@ -1520,7 +1518,6 @@ inline typename tools::promote_args<T1, 
+    BOOST_FPU_EXCEPTION_GUARD
+    typedef typename tools::promote_args<T1, T2>::type result_type;
+    typedef typename policies::evaluation<result_type, Policy>::type value_type;
+-   typedef typename lanczos::lanczos<value_type, Policy>::type evaluation_type;
+    typedef typename policies::normalise<
+       Policy, 
+       policies::promote_float<false>, 
+@@ -1551,7 +1548,6 @@ inline typename tools::promote_args<T1, 
+    BOOST_FPU_EXCEPTION_GUARD
+    typedef typename tools::promote_args<T1, T2>::type result_type;
+    typedef typename policies::evaluation<result_type, Policy>::type value_type;
+-   typedef typename lanczos::lanczos<value_type, Policy>::type evaluation_type;
+    typedef typename policies::normalise<
+       Policy, 
+       policies::promote_float<false>, 
diff --git a/boost-1.53.0-regex-unused_typedef.patch b/boost-1.53.0-regex-unused_typedef.patch
new file mode 100644
index 0000000..d10b476
--- /dev/null
+++ b/boost-1.53.0-regex-unused_typedef.patch
@@ -0,0 +1,65 @@
+diff -up ./boost/regex/icu.hpp~ ./boost/regex/icu.hpp
+--- ./boost/regex/icu.hpp~	2011-10-16 14:19:37.000000000 +0200
++++ ./boost/regex/icu.hpp	2013-07-22 23:32:44.346321967 +0200
+@@ -423,7 +423,6 @@ bool do_regex_match(BidiIterator first, 
+ {
+    typedef u16_to_u32_iterator<BidiIterator, UChar32> conv_type;
+    typedef match_results<conv_type>                   match_type;
+-   typedef typename match_type::allocator_type        alloc_type;
+    match_type what;
+    bool result = ::boost::regex_match(conv_type(first, first, last), conv_type(last, first, last), what, e, flags);
+    // copy results across to m:
+@@ -439,7 +438,6 @@ bool do_regex_match(BidiIterator first, 
+ {
+    typedef u8_to_u32_iterator<BidiIterator, UChar32>  conv_type;
+    typedef match_results<conv_type>                   match_type;
+-   typedef typename match_type::allocator_type        alloc_type;
+    match_type what;
+    bool result = ::boost::regex_match(conv_type(first, first, last), conv_type(last, first, last), what, e, flags);
+    // copy results across to m:
+@@ -598,7 +596,6 @@ bool do_regex_search(BidiIterator first,
+ {
+    typedef u16_to_u32_iterator<BidiIterator, UChar32> conv_type;
+    typedef match_results<conv_type>                   match_type;
+-   typedef typename match_type::allocator_type        alloc_type;
+    match_type what;
+    bool result = ::boost::regex_search(conv_type(first, first, last), conv_type(last, first, last), what, e, flags, conv_type(base));
+    // copy results across to m:
+@@ -615,7 +612,6 @@ bool do_regex_search(BidiIterator first,
+ {
+    typedef u8_to_u32_iterator<BidiIterator, UChar32>  conv_type;
+    typedef match_results<conv_type>                   match_type;
+-   typedef typename match_type::allocator_type        alloc_type;
+    match_type what;
+    bool result = ::boost::regex_search(conv_type(first, first, last), conv_type(last, first, last), what, e, flags, conv_type(base));
+    // copy results across to m:
+diff -up ./boost/regex/v4/regex_format.hpp~ ./boost/regex/v4/regex_format.hpp
+--- ./boost/regex/v4/regex_format.hpp~	2012-05-24 12:03:48.000000000 +0200
++++ ./boost/regex/v4/regex_format.hpp	2013-07-22 23:31:06.466740621 +0200
+@@ -1064,7 +1064,6 @@ struct format_functor_c_string
+    template <class OutputIter>
+    OutputIter operator()(const Match& m, OutputIter i, boost::regex_constants::match_flag_type f, const Traits& t = Traits())
+    {
+-      typedef typename Match::char_type char_type;
+       const charT* end = func;
+       while(*end) ++end;
+       return regex_format_imp(i, m, func, end, f, t);
+@@ -1083,7 +1082,6 @@ struct format_functor_container
+    template <class OutputIter>
+    OutputIter operator()(const Match& m, OutputIter i, boost::regex_constants::match_flag_type f, const Traits& t = Traits())
+    {
+-      typedef typename Match::char_type char_type;
+       return re_detail::regex_format_imp(i, m, func.begin(), func.end(), f, t);
+    }
+ private:
+diff -up ./boost/regex/v4/regex_split.hpp~ ./boost/regex/v4/regex_split.hpp
+--- ./boost/regex/v4/regex_split.hpp~	2007-11-25 19:07:19.000000000 +0100
++++ ./boost/regex/v4/regex_split.hpp	2013-07-22 23:31:29.098875039 +0200
+@@ -107,7 +107,6 @@ std::size_t regex_split(OutputIterator o
+                    std::size_t max_split)
+ {
+    typedef typename std::basic_string<charT, Traits1, Alloc1>::const_iterator  ci_t;
+-   typedef typename match_results<ci_t>::allocator_type                        match_allocator;
+    ci_t last = s.begin();
+    std::size_t init_size = max_split;
+    re_detail::split_pred<OutputIterator, charT, Traits1, Alloc1> pred(&last, &out, &max_split);
diff --git a/boost-1.54.0-algorithm-unused_typedef.patch b/boost-1.54.0-algorithm-unused_typedef.patch
new file mode 100644
index 0000000..6bc8fe1
--- /dev/null
+++ b/boost-1.54.0-algorithm-unused_typedef.patch
@@ -0,0 +1,43 @@
+diff -urp boost_1_54_0-orig/boost/algorithm/string/detail/finder.hpp boost_1_54_0/boost/algorithm/string/detail/finder.hpp
+--- boost_1_54_0-orig/boost/algorithm/string/detail/finder.hpp	2013-07-23 00:47:43.933889672 +0200
++++ boost_1_54_0/boost/algorithm/string/detail/finder.hpp	2013-07-23 00:50:40.324958667 +0200
+@@ -142,7 +142,6 @@ namespace boost {
+                     ForwardIteratorT End,
+                     std::forward_iterator_tag ) const
+                 {
+-                    typedef ForwardIteratorT input_iterator_type;
+                     typedef iterator_range<ForwardIteratorT> result_type;
+ 
+                     first_finder_type first_finder(
+@@ -263,7 +262,6 @@ namespace boost {
+                     ForwardIteratorT End,
+                     unsigned int N) const
+                 {
+-                    typedef ForwardIteratorT input_iterator_type;
+                     typedef iterator_range<ForwardIteratorT> result_type;
+ 
+                     // Sanity check
+@@ -298,7 +296,6 @@ namespace boost {
+                     ForwardIteratorT End,
+                     unsigned int N) const
+                 {
+-                    typedef ForwardIteratorT input_iterator_type;
+                     typedef iterator_range<ForwardIteratorT> result_type;
+ 
+                     // Sanity check
+@@ -362,7 +359,6 @@ namespace boost {
+                 unsigned int N,
+                 std::random_access_iterator_tag )
+             {
+-                typedef ForwardIteratorT input_iterator_type;
+                 typedef iterator_range<ForwardIteratorT> result_type;
+ 
+                 if ( (End<=Begin) || ( static_cast<unsigned int>(End-Begin) < N ) )
+@@ -436,7 +432,6 @@ namespace boost {
+                 unsigned int N,
+                 std::random_access_iterator_tag )
+             {
+-                typedef ForwardIteratorT input_iterator_type;
+                 typedef iterator_range<ForwardIteratorT> result_type;
+ 
+                 if ( (End<=Begin) || ( static_cast<unsigned int>(End-Begin) < N ) )
diff --git a/boost-1.54.0-context-execstack.patch b/boost-1.54.0-context-execstack.patch
new file mode 100644
index 0000000..4513ae8
--- /dev/null
+++ b/boost-1.54.0-context-execstack.patch
@@ -0,0 +1,109 @@
+diff -up boost-1.54.0/libs/context/src/asm/jump_arm_aapcs_elf_gas.S~ boost-1.54.0/libs/context/src/asm/jump_arm_aapcs_elf_gas.S
+--- boost-1.54.0/libs/context/src/asm/jump_arm_aapcs_elf_gas.S~	2012-12-21 02:22:09.000000000 -0800
++++ boost-1.54.0/libs/context/src/asm/jump_arm_aapcs_elf_gas.S	2013-07-15 11:11:46.772543152 -0700
+@@ -71,3 +71,6 @@ jump_fcontext:
+                                     @ and as first arg in context function
+     ldmia   a2, {v1-v8,sp-pc}       @ restore v1-V8,SP-PC
+ .size jump_fcontext,.-jump_fcontext
++
++/* Mark that we don't need executable stack.  */
++.section .note.GNU-stack,"", at progbits
+diff -up boost-1.54.0/libs/context/src/asm/jump_i386_sysv_elf_gas.S~ boost-1.54.0/libs/context/src/asm/jump_i386_sysv_elf_gas.S
+--- boost-1.54.0/libs/context/src/asm/jump_i386_sysv_elf_gas.S~	2012-09-18 02:06:47.000000000 -0700
++++ boost-1.54.0/libs/context/src/asm/jump_i386_sysv_elf_gas.S	2013-07-15 11:10:32.829144835 -0700
+@@ -70,3 +70,6 @@ jump_fcontext:
+ 
+     jmp     *%edx                   /* indirect jump to context */
+ .size jump_fcontext,.-jump_fcontext
++
++/* Mark that we don't need executable stack.  */
++.section .note.GNU-stack,"", at progbits
+diff -up boost-1.54.0/libs/context/src/asm/jump_ppc32_sysv_elf_gas.S~ boost-1.54.0/libs/context/src/asm/jump_ppc32_sysv_elf_gas.S
+--- boost-1.54.0/libs/context/src/asm/jump_ppc32_sysv_elf_gas.S~	2012-11-27 23:52:08.000000000 -0800
++++ boost-1.54.0/libs/context/src/asm/jump_ppc32_sysv_elf_gas.S	2013-07-15 11:10:57.848279687 -0700
+@@ -178,3 +178,6 @@ jump_fcontext:
+ 
+     bctr                        # jump to context
+ .size jump_fcontext, .-jump_fcontext
++
++/* Mark that we don't need executable stack.  */
++.section .note.GNU-stack,"", at progbits
+diff -up boost-1.54.0/libs/context/src/asm/jump_ppc64_sysv_elf_gas.S~ boost-1.54.0/libs/context/src/asm/jump_ppc64_sysv_elf_gas.S
+--- boost-1.54.0/libs/context/src/asm/jump_ppc64_sysv_elf_gas.S~	2012-11-27 23:52:08.000000000 -0800
++++ boost-1.54.0/libs/context/src/asm/jump_ppc64_sysv_elf_gas.S	2013-07-15 11:11:07.189330597 -0700
+@@ -199,3 +199,6 @@ jump_fcontext:
+ 
+     bctr                        # jump to context
+ .size .jump_fcontext, .-.jump_fcontext
++
++/* Mark that we don't need executable stack.  */
++.section .note.GNU-stack,"", at progbits
+diff -up boost-1.54.0/libs/context/src/asm/jump_x86_64_sysv_elf_gas.S~ boost-1.54.0/libs/context/src/asm/jump_x86_64_sysv_elf_gas.S
+--- boost-1.54.0/libs/context/src/asm/jump_x86_64_sysv_elf_gas.S~	2012-09-18 02:06:47.000000000 -0700
++++ boost-1.54.0/libs/context/src/asm/jump_x86_64_sysv_elf_gas.S	2013-07-15 11:09:49.724912924 -0700
+@@ -80,3 +80,6 @@ jump_fcontext:
+ 
+     jmp      *%rcx                  /* indirect jump to context */
+ .size jump_fcontext,.-jump_fcontext
++
++/* Mark that we don't need executable stack.  */
++.section .note.GNU-stack,"", at progbits
+diff -up boost-1.54.0/libs/context/src/asm/make_arm_aapcs_elf_gas.S~ boost-1.54.0/libs/context/src/asm/make_arm_aapcs_elf_gas.S
+--- boost-1.54.0/libs/context/src/asm/make_arm_aapcs_elf_gas.S~	2013-01-15 01:51:39.000000000 -0800
++++ boost-1.54.0/libs/context/src/asm/make_arm_aapcs_elf_gas.S	2013-07-15 11:11:38.626499289 -0700
+@@ -74,3 +74,6 @@ finish:
+     mov     a1, #0          @ exit code is zero
+     bl      _exit at PLT       @ exit application
+ .size make_fcontext,.-make_fcontext
++
++/* Mark that we don't need executable stack.  */
++.section .note.GNU-stack,"", at progbits
+diff -up boost-1.54.0/libs/context/src/asm/make_i386_sysv_elf_gas.S~ boost-1.54.0/libs/context/src/asm/make_i386_sysv_elf_gas.S
+--- boost-1.54.0/libs/context/src/asm/make_i386_sysv_elf_gas.S~	2013-06-07 08:38:10.000000000 -0700
++++ boost-1.54.0/libs/context/src/asm/make_i386_sysv_elf_gas.S	2013-07-15 11:10:40.333185226 -0700
+@@ -75,3 +75,6 @@ finish:
+     call   _exit at PLT                    /* exit application */
+     hlt
+ .size make_fcontext,.-make_fcontext
++
++/* Mark that we don't need executable stack.  */
++.section .note.GNU-stack,"", at progbits
+diff -up boost-1.54.0/libs/context/src/asm/make_mips32_o32_elf_gas.S~ boost-1.54.0/libs/context/src/asm/make_mips32_o32_elf_gas.S
+--- boost-1.54.0/libs/context/src/asm/make_mips32_o32_elf_gas.S~	2012-11-27 23:52:08.000000000 -0800
++++ boost-1.54.0/libs/context/src/asm/make_mips32_o32_elf_gas.S	2013-07-15 11:12:34.392799546 -0700
+@@ -83,3 +83,6 @@ finish:
+     jalr    $t9                       # exit application
+ .end make_fcontext
+ .size make_fcontext, .-make_fcontext
++
++/* Mark that we don't need executable stack.  */
++.section .note.GNU-stack,"", at progbits
+diff -up boost-1.54.0/libs/context/src/asm/make_ppc32_sysv_elf_gas.S~ boost-1.54.0/libs/context/src/asm/make_ppc32_sysv_elf_gas.S
+--- boost-1.54.0/libs/context/src/asm/make_ppc32_sysv_elf_gas.S~	2013-05-08 22:40:43.000000000 -0700
++++ boost-1.54.0/libs/context/src/asm/make_ppc32_sysv_elf_gas.S	2013-07-15 11:11:20.247400344 -0700
+@@ -108,3 +108,6 @@ finish:
+     bl      _exit at plt           # exit application
+     .long   0                   # We should never get here, so SIGILL if we do
+ .size make_fcontext, .-make_fcontext
++
++/* Mark that we don't need executable stack.  */
++.section .note.GNU-stack,"", at progbits
+diff -up boost-1.54.0/libs/context/src/asm/make_ppc64_sysv_elf_gas.S~ boost-1.54.0/libs/context/src/asm/make_ppc64_sysv_elf_gas.S
+--- boost-1.54.0/libs/context/src/asm/make_ppc64_sysv_elf_gas.S~	2013-05-08 22:40:43.000000000 -0700
++++ boost-1.54.0/libs/context/src/asm/make_ppc64_sysv_elf_gas.S	2013-07-15 11:11:13.400363259 -0700
+@@ -130,3 +130,6 @@ finish:
+     nop                         # nop is required by the linker
+     .long   0                   # We should never get here, so SIGILL if we do
+ .size .make_fcontext, .-.make_fcontext
++
++/* Mark that we don't need executable stack.  */
++.section .note.GNU-stack,"", at progbits
+diff -up boost-1.54.0/libs/context/src/asm/make_x86_64_sysv_elf_gas.S~ boost-1.54.0/libs/context/src/asm/make_x86_64_sysv_elf_gas.S
+--- boost-1.54.0/libs/context/src/asm/make_x86_64_sysv_elf_gas.S~	2012-11-29 23:38:52.000000000 -0800
++++ boost-1.54.0/libs/context/src/asm/make_x86_64_sysv_elf_gas.S	2013-07-15 11:10:06.151001366 -0700
+@@ -72,3 +72,5 @@ finish:
+     hlt
+ .size make_fcontext,.-make_fcontext
+ 
++/* Mark that we don't need executable stack.  */
++.section .note.GNU-stack,"", at progbits
diff --git a/boost-1.54.0-date_time-unused_typedef-2.patch b/boost-1.54.0-date_time-unused_typedef-2.patch
new file mode 100644
index 0000000..b39abe5
--- /dev/null
+++ b/boost-1.54.0-date_time-unused_typedef-2.patch
@@ -0,0 +1,13 @@
+diff -up boost_1_54_0/boost/date_time/gregorian/greg_facet.hpp\~ boost_1_54_0/boost/date_time/gregorian/greg_facet.hpp
+--- boost_1_54_0/boost/date_time/gregorian/greg_facet.hpp~	2008-11-23 12:13:35.000000000 +0100
++++ boost_1_54_0/boost/date_time/gregorian/greg_facet.hpp	2013-07-22 23:44:42.834012788 +0200
+@@ -215,7 +215,6 @@ namespace gregorian {
+   {
+     std::istream_iterator<std::basic_string<charT>, charT> beg(is), eos;
+     
+-    typedef boost::date_time::all_date_names_put<greg_facet_config, charT> facet_def;
+     d = from_stream(beg, eos);
+     return is;
+   }
+
+Diff finished.  Mon Jul 22 23:44:50 2013
diff --git a/boost-1.54.0-locale-unused_typedef.patch b/boost-1.54.0-locale-unused_typedef.patch
new file mode 100644
index 0000000..b7c9128
--- /dev/null
+++ b/boost-1.54.0-locale-unused_typedef.patch
@@ -0,0 +1,11 @@
+diff -urp boost_1_54_0-orig/boost/locale/boundary/segment.hpp boost_1_54_0/boost/locale/boundary/segment.hpp
+--- boost_1_54_0-orig/boost/locale/boundary/segment.hpp	2013-07-23 00:47:27.020787174 +0200
++++ boost_1_54_0/boost/locale/boundary/segment.hpp	2013-07-23 00:50:40.382959016 +0200
+@@ -27,7 +27,6 @@ namespace boundary {
+         int compare_text(LeftIterator l_begin,LeftIterator l_end,RightIterator r_begin,RightIterator r_end)
+         {
+             typedef LeftIterator left_iterator;
+-            typedef RightIterator right_iterator;
+             typedef typename std::iterator_traits<left_iterator>::value_type char_type;
+             typedef std::char_traits<char_type> traits;
+             while(l_begin!=l_end && r_begin!=r_end) {
diff --git a/boost-1.54.0-mpi-unused_typedef.patch b/boost-1.54.0-mpi-unused_typedef.patch
new file mode 100644
index 0000000..3a01d61
--- /dev/null
+++ b/boost-1.54.0-mpi-unused_typedef.patch
@@ -0,0 +1,11 @@
+diff -urp boost_1_54_0-orig/libs/mpi/src/communicator.cpp boost_1_54_0/libs/mpi/src/communicator.cpp
+--- boost_1_54_0-orig/libs/mpi/src/communicator.cpp	2013-07-23 00:48:17.317091987 +0200
++++ boost_1_54_0/libs/mpi/src/communicator.cpp	2013-07-23 00:50:40.722961078 +0200
+@@ -118,7 +118,6 @@ optional<status> communicator::iprobe(in
+ 
+ status communicator::probe(int source, int tag) const
+ {
+-  typedef optional<status> result_type;
+ 
+   status stat;
+   BOOST_MPI_CHECK_RESULT(MPI_Probe,
diff --git a/boost-1.54.0-mpl-print.patch b/boost-1.54.0-mpl-print.patch
new file mode 100644
index 0000000..6c27b14
--- /dev/null
+++ b/boost-1.54.0-mpl-print.patch
@@ -0,0 +1,37 @@
+Index: boost/mpl/print.hpp
+===================================================================
+--- boost/mpl/print.hpp	(revision 83411)
++++ boost/mpl/print.hpp	(working copy)
+@@ -45,22 +45,21 @@
+     : mpl::identity<T>
+ #if defined(__MWERKS__)
+     , aux::print_base
+-#endif 
++#endif
+ {
+ #if defined(BOOST_MSVC)
+     enum { n = sizeof(T) + -1 };
+ #elif defined(__MWERKS__)
+     void f(int);
+-#else 
+-    enum {
+-        n =
+-# if defined(__EDG_VERSION__)
+-           aux::dependent_unsigned<T>::value > -1
+-# else 
+-           sizeof(T) > -1
+-# endif 
+-        };
+-#endif 
++#elif defined(__EDG_VERSION__)
++    enum { n = aux::dependent_unsigned<T>::value > -1 };
++#elif defined(BOOST_GCC)
++    enum { n1 };
++    enum { n2 };
++    enum { n = n1 != n2 };
++#else
++    enum { n = sizeof(T) > -1 };
++#endif
+ };
+ 
+ #if defined(BOOST_MSVC)
diff --git a/boost-1.54.0-property_tree-unused_typedef.patch b/boost-1.54.0-property_tree-unused_typedef.patch
new file mode 100644
index 0000000..05158ef
--- /dev/null
+++ b/boost-1.54.0-property_tree-unused_typedef.patch
@@ -0,0 +1,19 @@
+diff -urp boost_1_54_0-orig/boost/property_tree/detail/xml_parser_write.hpp boost_1_54_0/boost/property_tree/detail/xml_parser_write.hpp
+--- boost_1_54_0-orig/boost/property_tree/detail/xml_parser_write.hpp	2013-07-23 00:47:43.731888449 +0200
++++ boost_1_54_0/boost/property_tree/detail/xml_parser_write.hpp	2013-07-23 00:50:40.597960319 +0200
+@@ -35,7 +35,6 @@ namespace boost { namespace property_tre
+                            const xml_writer_settings<Ch> & settings
+                            )
+     {
+-        typedef typename std::basic_string<Ch> Str;
+         if (separate_line)
+             write_xml_indent(stream,indent,settings);
+         stream << Ch('<') << Ch('!') << Ch('-') << Ch('-');
+@@ -69,7 +68,6 @@ namespace boost { namespace property_tre
+     {
+ 
+         typedef typename Ptree::key_type::value_type Ch;
+-        typedef typename std::basic_string<Ch> Str;
+         typedef typename Ptree::const_iterator It;
+ 
+         bool want_pretty = settings.indent_count > 0;
diff --git a/boost-1.54.0-spirit-unused_typedef-2.patch b/boost-1.54.0-spirit-unused_typedef-2.patch
new file mode 100644
index 0000000..fdc9849
--- /dev/null
+++ b/boost-1.54.0-spirit-unused_typedef-2.patch
@@ -0,0 +1,22 @@
+diff -urp boost_1_54_0-orig/boost/spirit/home/classic/core/non_terminal/impl/grammar.ipp boost_1_54_0/boost/spirit/home/classic/core/non_terminal/impl/grammar.ipp
+--- boost_1_54_0-orig/boost/spirit/home/classic/core/non_terminal/impl/grammar.ipp	2013-07-23 00:47:37.497850668 +0200
++++ boost_1_54_0/boost/spirit/home/classic/core/non_terminal/impl/grammar.ipp	2013-07-23 00:50:40.662960713 +0200
+@@ -307,7 +307,6 @@ struct grammar_definition
+ #if !defined(BOOST_SPIRIT_SINGLE_GRAMMAR_INSTANCE)
+         typedef impl::grammar_helper_base<GrammarT> helper_base_t;
+         typedef grammar_helper_list<GrammarT> helper_list_t;
+-        typedef typename helper_list_t::vector_t::reverse_iterator iterator_t;
+ 
+         helper_list_t&  helpers =
+ # if !defined(__GNUC__) || (__GNUC__ > 2)
+diff -urp boost_1_54_0-orig/boost/spirit/home/classic/tree/parse_tree.hpp boost_1_54_0/boost/spirit/home/classic/tree/parse_tree.hpp
+--- boost_1_54_0-orig/boost/spirit/home/classic/tree/parse_tree.hpp	2013-07-23 00:47:37.407850122 +0200
++++ boost_1_54_0/boost/spirit/home/classic/tree/parse_tree.hpp	2013-07-23 00:50:40.674960786 +0200
+@@ -76,7 +76,6 @@ struct pt_tree_policy :
+     template<typename MatchAT, typename MatchBT>
+     static void concat(MatchAT& a, MatchBT const& b)
+     {
+-        typedef typename match_t::attr_t attr_t;
+         BOOST_SPIRIT_ASSERT(a && b);
+ 
+         std::copy(b.trees.begin(), b.trees.end(),
diff --git a/boost-1.54.0-unordered-unused_typedef.patch b/boost-1.54.0-unordered-unused_typedef.patch
new file mode 100644
index 0000000..27e900a
--- /dev/null
+++ b/boost-1.54.0-unordered-unused_typedef.patch
@@ -0,0 +1,14 @@
+diff -up boost_1_54_0/boost/unordered/detail/unique.hpp\~ boost_1_54_0/boost/unordered/detail/unique.hpp
+--- boost_1_54_0/boost/unordered/detail/unique.hpp~	2012-12-05 23:06:57.000000000 +0100
++++ boost_1_54_0/boost/unordered/detail/unique.hpp	2013-07-22 23:54:29.222516306 +0200
+@@ -334,8 +334,6 @@ namespace boost { namespace unordered { 
+ 
+         value_type& operator[](key_type const& k)
+         {
+-            typedef typename value_type::second_type mapped_type;
+-    
+             std::size_t key_hash = this->hash(k);
+             iterator pos = this->find_node(key_hash, k);
+     
+
+Diff finished.  Mon Jul 22 23:55:15 2013
diff --git a/boost-1.54.0-xpressive-unused_typedef.patch b/boost-1.54.0-xpressive-unused_typedef.patch
new file mode 100644
index 0000000..60a4f5a
--- /dev/null
+++ b/boost-1.54.0-xpressive-unused_typedef.patch
@@ -0,0 +1,11 @@
+diff -urp boost_1_54_0-orig/boost/xpressive/regex_algorithms.hpp boost_1_54_0/boost/xpressive/regex_algorithms.hpp
+--- boost_1_54_0-orig/boost/xpressive/regex_algorithms.hpp	2013-07-23 00:47:50.804931313 +0200
++++ boost_1_54_0/boost/xpressive/regex_algorithms.hpp	2013-07-23 00:50:40.721961072 +0200
+@@ -303,7 +303,6 @@ namespace detail
+     )
+     {
+         typedef core_access<BidiIter> access;
+-        typedef typename iterator_value<BidiIter>::type char_type;
+         match_results<BidiIter> &what = *state.context_.results_ptr_;
+         BOOST_ASSERT(0 != re.regex_id());
+ 
diff --git a/boost.spec b/boost.spec
index 741b26f..9e74228 100644
--- a/boost.spec
+++ b/boost.spec
@@ -138,24 +138,52 @@ Patch26: boost-1.54.0-static_warning-unused_typedef.patch
 Patch27: boost-1.54.0-math-unused_typedef.patch
 Patch28: boost-1.54.0-math-unused_typedef-2.patch
 Patch29: boost-1.53.0-fpclassify-unused_typedef.patch
+Patch30: boost-1.53.0-math-unused_typedef-3.patch
 
 # https://svn.boost.org/trac/boost/ticket/8853
-Patch30: boost-1.54.0-tuple-unused_typedef.patch
+Patch31: boost-1.54.0-tuple-unused_typedef.patch
 
 # https://svn.boost.org/trac/boost/ticket/8854
-Patch31: boost-1.54.0-random-unused_typedef.patch
+Patch32: boost-1.54.0-random-unused_typedef.patch
 
 # https://svn.boost.org/trac/boost/ticket/8856
-Patch32: boost-1.54.0-date_time-unused_typedef.patch
+Patch33: boost-1.54.0-date_time-unused_typedef.patch
+Patch34: boost-1.54.0-date_time-unused_typedef-2.patch
 
 # https://svn.boost.org/trac/boost/ticket/8870
-Patch33: boost-1.54.0-spirit-unused_typedef.patch
+Patch35: boost-1.54.0-spirit-unused_typedef.patch
+Patch36: boost-1.54.0-spirit-unused_typedef-2.patch
 
 # https://svn.boost.org/trac/boost/ticket/8871
-Patch34: boost-1.54.0-numeric-unused_typedef.patch
+Patch37: boost-1.54.0-numeric-unused_typedef.patch
 
 # https://svn.boost.org/trac/boost/ticket/8872
-Patch35: boost-1.54.0-multiprecision-unused_typedef.patch
+Patch38: boost-1.54.0-multiprecision-unused_typedef.patch
+
+# Backported from 1.54.0:
+Patch39: boost-1.53.0-lexical_cast-unused_typedef.patch
+Patch40: boost-1.53.0-regex-unused_typedef.patch
+
+# https://svn.boost.org/trac/boost/ticket/8874
+Patch41: boost-1.54.0-unordered-unused_typedef.patch
+
+# https://svn.boost.org/trac/boost/ticket/8876
+Patch42: boost-1.54.0-algorithm-unused_typedef.patch
+
+# https://svn.boost.org/trac/boost/ticket/8877
+Patch43: boost-1.53.0-graph-unused_typedef.patch
+
+# https://svn.boost.org/trac/boost/ticket/8878
+Patch44: boost-1.54.0-locale-unused_typedef.patch
+
+# https://svn.boost.org/trac/boost/ticket/8879
+Patch45: boost-1.54.0-property_tree-unused_typedef.patch
+
+# https://svn.boost.org/trac/boost/ticket/8880
+Patch46: boost-1.54.0-xpressive-unused_typedef.patch
+
+# https://svn.boost.org/trac/boost/ticket/8881
+Patch47: boost-1.54.0-mpi-unused_typedef.patch
 
 %bcond_with tests
 %bcond_with docs_generated
@@ -574,12 +602,24 @@ a number of significant features and is now developed independently
 %patch27 -p1
 %patch28 -p0
 %patch29 -p1
-%patch30 -p0
+%patch30 -p1
 %patch31 -p0
 %patch32 -p0
-%patch33 -p1
+%patch33 -p0
 %patch34 -p1
 %patch35 -p1
+%patch36 -p1
+%patch37 -p1
+%patch38 -p1
+%patch39 -p1
+%patch40 -p1
+%patch41 -p1
+%patch42 -p1
+%patch43 -p1
+%patch44 -p1
+%patch45 -p1
+%patch46 -p1
+%patch47 -p1
 
 # At least python2_version needs to be a macro so that it's visible in
 # %%install as well.
@@ -1154,7 +1194,7 @@ rm -rf $RPM_BUILD_ROOT
 * Fri Jul 19 2013 Petr Machata <pmachata at redhat.com> - 1.53.0-8
 - Install supporting files (images etc.) for documentation
   (courtesy Marcel Metz, bug 985593)
-- Add several patches for silencing unused local typedef warnings
+- Add many patches for silencing unused local typedef warnings
   (boost-1.53.0-static_assert-unused_typedef.patch,
   boost-1.54.0-bind-static_assert.patch,
   boost-1.54.0-concept-unused_typedef.patch,
@@ -1162,12 +1202,24 @@ rm -rf $RPM_BUILD_ROOT
   boost-1.54.0-math-unused_typedef.patch,
   boost-1.54.0-math-unused_typedef-2.patch,
   boost-1.53.0-fpclassify-unused_typedef.patch,
+  boost-1.54.0-math-unused_typedef-3.patch,
   boost-1.54.0-tuple-unused_typedef.patch,
   boost-1.54.0-random-unused_typedef.patch,
   boost-1.54.0-date_time-unused_typedef.patch,
+  boost-1.54.0-date_time-unused_typedef-2.patch,
   boost-1.54.0-spirit-unused_typedef.patch,
+  boost-1.54.0-spirit-unused_typedef-2.patch,
   boost-1.54.0-numeric-unused_typedef.patch,
-  boost-1.54.0-multiprecision-unused_typedef.patch)
+  boost-1.54.0-multiprecision-unused_typedef.patch,
+  boost-1.53.0-lexical_cast-unused_typedef.patch,
+  boost-1.53.0-regex-unused_typedef.patch,
+  boost-1.54.0-unordered-unused_typedef.patch,
+  boost-1.54.0-algorithm-unused_typedef.patch,
+  boost-1.53.0-graph-unused_typedef.patch,
+  boost-1.54.0-locale-unused_typedef.patch,
+  boost-1.54.0-property_tree-unused_typedef.patch,
+  boost-1.54.0-xpressive-unused_typedef.patch,
+  boost-1.54.0-mpi-unused_typedef.patch)
 - Add a patch to turn off execstack in Boost.Context
   (boost-1.54.0-context-execstack.patch)
 - Fix boost::mpl::print on GCC (boost-1.54.0-mpl-print.patch)


More information about the scm-commits mailing list