[Libreoffice-commits] core.git: 12 commits - external/boost

Michael Stahl mstahl at redhat.com
Mon Apr 14 08:46:21 PDT 2014


 external/boost/UnpackedTarball_boost.mk                                                         |   89 +
 external/boost/boost.4100.warnings.patch                                                        |   19 
 external/boost/boost.4510.warnings.patch                                                        |   26 
 external/boost/boost.4713.warnings.patch                                                        |  282 ----
 external/boost/boost.6369.warnings.patch                                                        |   18 
 external/boost/boost.6397.warnings.patch                                                        |  568 ----------
 external/boost/boost.bind.Wunused-local-typedefs.warnings.patch                                 |   11 
 external/boost/boost.concept_check.C4100.warnings.patch                                         |   19 
 external/boost/boost.concept_check.Wunused-local-typedefs.warnings.patch                        |   13 
 external/boost/boost.crc.Wshadow.warnings.patch                                                 |   21 
 external/boost/boost.date_time.Wshadow.warnings.patch                                           |   19 
 external/boost/boost.date_time.Wunused-local-typedefs.warnings.patch                            |  101 +
 external/boost/boost.jsonparser.warnings.patch.0                                                |   69 -
 external/boost/boost.libcdr.warnings.patch.1                                                    |  442 -------
 external/boost/boost.math.Wdeprecated-register.patch.0                                          |   36 
 external/boost/boost.math.Wunused-local-typedefs.warnings.patch                                 |   34 
 external/boost/boost.multi_array.C4510.warnings.patch                                           |   26 
 external/boost/boost.multi_array.Wshadow.warnings.patch                                         |  494 ++++++++
 external/boost/boost.multi_array.Wundef.warnings.patch                                          |   11 
 external/boost/boost.multi_array.Wunused-local-typedefs.warnings.patch                          |   20 
 external/boost/boost.multi_index.Wshadow.warnings.patch.1                                       |   94 +
 external/boost/boost.predef.Wundef.warnings.patch                                               |   11 
 external/boost/boost.preprocessor.Wundef.warnings.patch                                         |   66 +
 external/boost/boost.property_tree.Wshadow.warnings.patch.1                                     |  393 ++++++
 external/boost/boost.property_tree.Wtautological-constant-out-of-range-compare.warnings.patch.0 |   11 
 external/boost/boost.ptr_container.Wextra.warnings.patch                                        |   12 
 external/boost/boost.ptr_container.Wignored-qualifiers.warnings.patch                           |   11 
 external/boost/boost.ptr_container.Wshadow.warnings.patch                                       |  181 +++
 external/boost/boost.ptr_container.Wunused-parameter.warnings.patch                             |   23 
 external/boost/boost.random.Wshadow.warnings.patch                                              |  181 +++
 external/boost/boost.random.Wuninitialized.patch                                                |   10 
 external/boost/boost.random.Wunused-local-typedefs.warnings.patch                               |   20 
 external/boost/boost.spirit.Wshadow.warnings.patch                                              |   71 +
 external/boost/boost.spirit.Wunused-local-typedefs.warnings.patch                               |   49 
 external/boost/boost.tuple.Wunused-local-typedefs.warnings.patch                                |   10 
 external/boost/boost.unordered.Wshadow.warnings.patch                                           |  146 ++
 external/boost/boost.utility.Wundef.warnings.patch                                              |   11 
 external/boost/boost.uuid.Wshadow.warnings.patch                                                |   24 
 external/boost/boost.wdeprecated-register.patch.0                                               |   36 
 external/boost/boost.wshadow.patch                                                              |  298 -----
 external/boost/boost.wundef.patch                                                               |   99 -
 external/boost/boost.wuninitialized.patch                                                       |   10 
 external/boost/boost.wunused-local-typedefs.patch                                               |  258 ----
 43 files changed, 2199 insertions(+), 2144 deletions(-)

New commits:
commit efadf1f90b1038661f54c6c18d5a8d17415d47a7
Author: Michael Stahl <mstahl at redhat.com>
Date:   Mon Apr 14 12:08:32 2014 +0200

    boost: annotate upstream status of patches
    
    Change-Id: Ie841bbc23ddd99fc023c3066b107172f9cfb7a24

diff --git a/external/boost/UnpackedTarball_boost.mk b/external/boost/UnpackedTarball_boost.mk
index f8ae768..5be550ee 100644
--- a/external/boost/UnpackedTarball_boost.mk
+++ b/external/boost/UnpackedTarball_boost.mk
@@ -21,37 +21,74 @@ boost_patches += boost.7551.unusedvars.patch
 #https://svn.boost.org/trac/boost/ticket/6142
 boost_patches += boost.6142.warnings.patch.1
 
+# fixed upstream
 boost_patches += boost.bind.Wunused-local-typedefs.warnings.patch
+# fixed upstream
 boost_patches += boost.concept_check.C4100.warnings.patch
+# fixed upstream
 boost_patches += boost.concept_check.Wunused-local-typedefs.warnings.patch
+# https://svn.boost.org/trac/boost/ticket/9881
 boost_patches += boost.crc.Wshadow.warnings.patch
+# https://svn.boost.org/trac/boost/ticket/9882
 boost_patches += boost.date_time.Wshadow.warnings.patch
+# https://svn.boost.org/trac/boost/ticket/9883
 boost_patches += boost.date_time.Wunused-local-typedefs.warnings.patch
+# fixed upstream
 boost_patches += boost.math.Wdeprecated-register.patch.0
+# https://svn.boost.org/trac/boost/ticket/9884
 boost_patches += boost.math.Wunused-local-typedefs.warnings.patch
+# https://svn.boost.org/trac/boost/ticket/9885
 boost_patches += boost.multi_array.C4510.warnings.patch
+# https://svn.boost.org/trac/boost/ticket/9886
 boost_patches += boost.multi_array.Wshadow.warnings.patch
+# https://svn.boost.org/trac/boost/ticket/9887
 boost_patches += boost.multi_array.Wundef.warnings.patch
+# https://svn.boost.org/trac/boost/ticket/9888
 boost_patches += boost.multi_array.Wunused-local-typedefs.warnings.patch
+# fixed upstream
 boost_patches += boost.multi_index.Wshadow.warnings.patch.1
+# https://svn.boost.org/trac/boost/ticket/9889
 boost_patches += boost.predef.Wundef.warnings.patch
+# https://svn.boost.org/trac/boost/ticket/9891
 boost_patches += boost.preprocessor.Wundef.warnings.patch
+# https://svn.boost.org/trac/boost/ticket/9892
 boost_patches += boost.property_tree.Wshadow.warnings.patch.1
+# https://svn.boost.org/trac/boost/ticket/9893
 boost_patches += boost.property_tree.Wtautological-constant-out-of-range-compare.warnings.patch.0
+# https://svn.boost.org/trac/boost/ticket/9894
 boost_patches += boost.ptr_container.Wshadow.warnings.patch
+# https://svn.boost.org/trac/boost/ticket/9895
 boost_patches += boost.ptr_container.Wignored-qualifiers.warnings.patch
+# https://svn.boost.org/trac/boost/ticket/9896
 boost_patches += boost.ptr_container.Wextra.warnings.patch
+# https://svn.boost.org/trac/boost/ticket/9897
 boost_patches += boost.ptr_container.Wunused-parameter.warnings.patch
+# https://svn.boost.org/trac/boost/ticket/9898
 boost_patches += boost.random.Wshadow.warnings.patch
+# https://svn.boost.org/trac/boost/ticket/9899
 boost_patches += boost.random.Wuninitialized.patch
+# fixed upstream
 boost_patches += boost.random.Wunused-local-typedefs.warnings.patch
+# https://svn.boost.org/trac/boost/ticket/9900
 boost_patches += boost.spirit.Wshadow.warnings.patch
+# https://svn.boost.org/trac/boost/ticket/9901
 boost_patches += boost.spirit.Wunused-local-typedefs.warnings.patch
+# fixed upstream
 boost_patches += boost.unordered.Wshadow.warnings.patch
+# https://svn.boost.org/trac/boost/ticket/9902
 boost_patches += boost.tuple.Wunused-local-typedefs.warnings.patch
+# https://svn.boost.org/trac/boost/ticket/9903
 boost_patches += boost.utility.Wundef.warnings.patch
+# fixed upstream
 boost_patches += boost.uuid.Wshadow.warnings.patch
 
+# https://svn.boost.org/trac/boost/ticket/9890
+boost_patches += boost.endian.patch
+# fixed upstream
+boost_patches += boost.loplugin.patch
+# fixed upstream
+boost_patches += boost.transform_width.patch
+
 # Help static analysis tools (see SAL_UNUSED_PARAMETER in sal/types.h):
 ifeq (GCC,$(COM))
 boost_patches += boost_1_44_0-unused-parameters.patch
@@ -61,10 +98,7 @@ endif
 boost_patches += boost_1_44_0-clang-warnings.patch
 
 boost_patches += boost.auto_link.patch
-boost_patches += boost.endian.patch
-boost_patches += boost.loplugin.patch
 boost_patches += boost.std.move.patch
-boost_patches += boost.transform_width.patch
 boost_patches += boost.wunused.patch
 boost_patches += boost.wdeprecated-auto_ptr.patch.0
 
commit 11230fb8415d7cea2cafb9d86698e26b3e7e625e
Author: Michael Stahl <mstahl at redhat.com>
Date:   Sun Apr 13 20:42:25 2014 +0200

    boost: split boost.wunused-local-typedefs.patch
    
    Change-Id: I3b87643c1853ceaed3d2422a7340a931bb0c5850

diff --git a/external/boost/UnpackedTarball_boost.mk b/external/boost/UnpackedTarball_boost.mk
index 85a7916..f8ae768 100644
--- a/external/boost/UnpackedTarball_boost.mk
+++ b/external/boost/UnpackedTarball_boost.mk
@@ -21,13 +21,18 @@ boost_patches += boost.7551.unusedvars.patch
 #https://svn.boost.org/trac/boost/ticket/6142
 boost_patches += boost.6142.warnings.patch.1
 
+boost_patches += boost.bind.Wunused-local-typedefs.warnings.patch
 boost_patches += boost.concept_check.C4100.warnings.patch
+boost_patches += boost.concept_check.Wunused-local-typedefs.warnings.patch
 boost_patches += boost.crc.Wshadow.warnings.patch
 boost_patches += boost.date_time.Wshadow.warnings.patch
+boost_patches += boost.date_time.Wunused-local-typedefs.warnings.patch
 boost_patches += boost.math.Wdeprecated-register.patch.0
+boost_patches += boost.math.Wunused-local-typedefs.warnings.patch
 boost_patches += boost.multi_array.C4510.warnings.patch
 boost_patches += boost.multi_array.Wshadow.warnings.patch
 boost_patches += boost.multi_array.Wundef.warnings.patch
+boost_patches += boost.multi_array.Wunused-local-typedefs.warnings.patch
 boost_patches += boost.multi_index.Wshadow.warnings.patch.1
 boost_patches += boost.predef.Wundef.warnings.patch
 boost_patches += boost.preprocessor.Wundef.warnings.patch
@@ -39,8 +44,11 @@ boost_patches += boost.ptr_container.Wextra.warnings.patch
 boost_patches += boost.ptr_container.Wunused-parameter.warnings.patch
 boost_patches += boost.random.Wshadow.warnings.patch
 boost_patches += boost.random.Wuninitialized.patch
+boost_patches += boost.random.Wunused-local-typedefs.warnings.patch
 boost_patches += boost.spirit.Wshadow.warnings.patch
+boost_patches += boost.spirit.Wunused-local-typedefs.warnings.patch
 boost_patches += boost.unordered.Wshadow.warnings.patch
+boost_patches += boost.tuple.Wunused-local-typedefs.warnings.patch
 boost_patches += boost.utility.Wundef.warnings.patch
 boost_patches += boost.uuid.Wshadow.warnings.patch
 
@@ -52,8 +60,6 @@ endif
 # Clang warnings:
 boost_patches += boost_1_44_0-clang-warnings.patch
 
-boost_patches += boost.wunused-local-typedefs.patch
-
 boost_patches += boost.auto_link.patch
 boost_patches += boost.endian.patch
 boost_patches += boost.loplugin.patch
diff --git a/external/boost/boost.bind.Wunused-local-typedefs.warnings.patch b/external/boost/boost.bind.Wunused-local-typedefs.warnings.patch
new file mode 100644
index 0000000..0f8c573
--- /dev/null
+++ b/external/boost/boost.bind.Wunused-local-typedefs.warnings.patch
@@ -0,0 +1,11 @@
+--- misc/boost_1_44_0/boost/bind/arg.hpp
++++ misc/build/boost_1_44_0/boost/bind/arg.hpp
+@@ -35,6 +35,8 @@
+     {
+         // static assert I == is_placeholder<T>::value
+         typedef char T_must_be_placeholder[ I == is_placeholder<T>::value? 1: -1 ];
++        T_must_be_placeholder dummy; (void) dummy;
++            // silence -Werror=unused-local-typedefs (GCC 4.8)
+     }
+ };
+ 
diff --git a/external/boost/boost.concept_check.Wunused-local-typedefs.warnings.patch b/external/boost/boost.concept_check.Wunused-local-typedefs.warnings.patch
new file mode 100644
index 0000000..3096794
--- /dev/null
+++ b/external/boost/boost.concept_check.Wunused-local-typedefs.warnings.patch
@@ -0,0 +1,13 @@
+--- misc/boost_1_44_0/boost/concept/detail/general.hpp
++++ misc/build/boost_1_44_0/boost/concept/detail/general.hpp
+@@ -68,7 +68,9 @@
+ #  define BOOST_CONCEPT_ASSERT_FN( ModelFnPtr )             \
+     typedef ::boost::concepts::detail::instantiate<          \
+     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
+-      BOOST_PP_CAT(boost_concept_check,__LINE__)
++      BOOST_PP_CAT(boost_concept_check,__LINE__); \
++    void BOOST_PP_CAT(boost_concept_check_dummy,__LINE__)(BOOST_PP_CAT(boost_concept_check,__LINE__) *)
++        // silence -Werror=unused-local-typedefs (GCC 4.8)
+ 
+ }}
+ 
diff --git a/external/boost/boost.date_time.Wunused-local-typedefs.warnings.patch b/external/boost/boost.date_time.Wunused-local-typedefs.warnings.patch
new file mode 100644
index 0000000..5d28f66
--- /dev/null
+++ b/external/boost/boost.date_time.Wunused-local-typedefs.warnings.patch
@@ -0,0 +1,101 @@
+--- a/b/boost/boost/date_time/gregorian/greg_facet.hpp	2013-05-31 14:03:30.476695310 +0200
++++ a/b/boost/boost/date_time/gregorian/greg_facet.hpp	2013-05-31 14:03:22.894669713 +0200
+@@ -215,7 +215,6 @@
+   {
+     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;
+   }
+--- misc/boost_1_44_0/boost/date_time/date_parsing.hpp
++++ misc/build/boost_1_44_0/boost/date_time/date_parsing.hpp
+@@ -113,7 +113,6 @@
+         spec_str = "mdy";
+       }
+ 
+-      typedef typename date_type::year_type year_type;
+       typedef typename date_type::month_type month_type;
+       unsigned pos = 0;
+       unsigned short year(0), month(0), day(0);
+@@ -159,7 +158,7 @@
+     parse_undelimited_date(const std::string& s) {
+       int offsets[] = {4,2,2};
+       int pos = 0;
+-      typedef typename date_type::year_type year_type;
++      //typedef typename date_type::year_type year_type;
+       //typename date_type::ymd_type ymd((year_type::min)(),1,1);
+       unsigned short y = 0, m = 0, d = 0;
+ 
+--- misc/boost_1_44_0/boost/date_time/local_time/local_time_io.hpp
++++ misc/build/boost_1_44_0/boost/date_time/local_time/local_time_io.hpp
+@@ -36,7 +36,6 @@
+     boost::io::ios_flags_saver iflags(os);
+     typedef local_date_time time_type;//::utc_time_type typename 
+     typedef date_time::time_facet<time_type, CharT> custom_time_facet;
+-    typedef std::time_put<CharT> std_time_facet;
+     std::ostreambuf_iterator<CharT> oitr(os);
+ 
+     if(std::has_facet<custom_time_facet>(os.getloc())) {
+@@ -123,7 +122,6 @@
+              const boost::local_time::local_time_period& p) {
+     boost::io::ios_flags_saver iflags(os);
+     typedef boost::date_time::time_facet<local_date_time, CharT> custom_facet;
+-    typedef std::time_put<CharT> std_time_facet;
+     std::ostreambuf_iterator<CharT> oitr(os);
+     if (std::has_facet<custom_facet>(os.getloc())) {
+       std::use_facet<custom_facet>(os.getloc()).put(oitr, os, os.fill(), p);
+--- misc/boost_1_44_0/boost/date_time/posix_time/posix_time_io.hpp
++++ misc/build/boost_1_44_0/boost/date_time/posix_time/posix_time_io.hpp
+@@ -47,7 +47,6 @@
+              const ptime& p) {
+     boost::io::ios_flags_saver iflags(os);
+     typedef boost::date_time::time_facet<ptime, CharT> custom_ptime_facet;
+-    typedef std::time_put<CharT>                  std_ptime_facet;
+     std::ostreambuf_iterator<CharT> oitr(os);
+     if (std::has_facet<custom_ptime_facet>(os.getloc()))
+       std::use_facet<custom_ptime_facet>(os.getloc()).put(oitr, os, os.fill(), p);
+@@ -114,7 +113,6 @@
+              const boost::posix_time::time_period& p) {
+     boost::io::ios_flags_saver iflags(os);
+     typedef boost::date_time::time_facet<ptime, CharT> custom_ptime_facet;
+-    typedef std::time_put<CharT>                  std_time_facet;
+     std::ostreambuf_iterator<CharT> oitr(os);
+     if (std::has_facet<custom_ptime_facet>(os.getloc())) {
+       std::use_facet<custom_ptime_facet>(os.getloc()).put(oitr, os, os.fill(), p);
+@@ -180,7 +178,6 @@
+   {
+     boost::io::ios_flags_saver iflags(os);
+     typedef boost::date_time::time_facet<ptime, CharT> custom_ptime_facet;
+-    typedef std::time_put<CharT>                  std_ptime_facet;
+     std::ostreambuf_iterator<CharT> oitr(os);
+     if (std::has_facet<custom_ptime_facet>(os.getloc()))
+       std::use_facet<custom_ptime_facet>(os.getloc()).put(oitr, os, os.fill(), td);
+--- misc/boost_1_44_0/boost/date_time/string_convert.hpp
++++ misc/build/boost_1_44_0/boost/date_time/string_convert.hpp
+@@ -21,7 +21,6 @@
+   inline
+   std::basic_string<OutputT> convert_string_type(const std::basic_string<InputT>& inp_str)
+   {
+-    typedef std::basic_string<InputT> input_type;
+     typedef std::basic_string<OutputT> output_type;
+     output_type result;
+     result.insert(result.begin(), inp_str.begin(), inp_str.end());
+--- misc/boost_1_44_0/boost/date_time/strings_from_facet.hpp
++++ misc/build/boost_1_44_0/boost/date_time/strings_from_facet.hpp
+@@ -35,7 +35,6 @@
+ {
+   typedef std::basic_string<charT> string_type;
+   typedef std::vector<string_type> collection_type;
+-  typedef std::basic_ostringstream<charT> ostream_type;
+   typedef std::ostreambuf_iterator<charT> ostream_iter_type;
+   typedef std::basic_ostringstream<charT> stringstream_type;
+   typedef std::time_put<charT>           time_put_facet_type;
+@@ -85,7 +84,6 @@
+ {
+   typedef std::basic_string<charT> string_type;
+   typedef std::vector<string_type> collection_type;
+-  typedef std::basic_ostringstream<charT> ostream_type;
+   typedef std::ostreambuf_iterator<charT> ostream_iter_type;
+   typedef std::basic_ostringstream<charT> stringstream_type;
+   typedef std::time_put<charT>           time_put_facet_type;
diff --git a/external/boost/boost.math.Wunused-local-typedefs.warnings.patch b/external/boost/boost.math.Wunused-local-typedefs.warnings.patch
new file mode 100644
index 0000000..e74c149
--- /dev/null
+++ b/external/boost/boost.math.Wunused-local-typedefs.warnings.patch
@@ -0,0 +1,34 @@
+--- a/b/boost/boost/math/special_functions/fpclassify.hpp	2013-05-31 14:02:13.660436127 +0200
++++ a/b/boost/boost/math/special_functions/fpclassify.hpp	2013-05-31 14:01:17.372246240 +0200
+@@ -339,7 +338,6 @@
+ { //!< \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());
+ }
+@@ -410,7 +407,6 @@
+ {
+    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());
+ }
+@@ -499,7 +494,6 @@
+ {
+    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());
+ }
+@@ -585,7 +578,6 @@
+ { //!< \brief return true if floating-point type t is NaN (Not A Number).
+    typedef detail::fp_traits<long double>::type traits;
+    typedef traits::method method;
+-   typedef boost::is_floating_point<long double>::type fp_tag;
+    return detail::isnan_impl(x, method());
+ }
+ #endif
diff --git a/external/boost/boost.multi_array.Wunused-local-typedefs.warnings.patch b/external/boost/boost.multi_array.Wunused-local-typedefs.warnings.patch
new file mode 100644
index 0000000..22645cc
--- /dev/null
+++ b/external/boost/boost.multi_array.Wunused-local-typedefs.warnings.patch
@@ -0,0 +1,20 @@
+--- misc/boost_1_44_0/boost/multi_array/concept_checks.hpp
++++ misc/build/boost_1_44_0/boost/multi_array/concept_checks.hpp
+@@ -39,8 +39,6 @@
+ 
+     template <typename Array, typename IdxGen, typename Call_Type>
+     static void call(Array& a, const IdxGen& idgen, Call_Type c) {
+-      typedef typename Array::index_range index_range_;
+-      typedef typename Array::index index_;
+       idgen_helper<N-1>::call(a,idgen[c],c);
+     }
+   };
+@@ -50,8 +48,6 @@
+ 
+     template <typename Array, typename IdxGen, typename Call_Type>
+     static void call(Array& a, const IdxGen& idgen, Call_Type) {
+-      typedef typename Array::index_range index_range_;
+-      typedef typename Array::index index_;
+       a[ idgen ];
+     }
+   };
diff --git a/external/boost/boost.random.Wunused-local-typedefs.warnings.patch b/external/boost/boost.random.Wunused-local-typedefs.warnings.patch
new file mode 100644
index 0000000..7d48742
--- /dev/null
+++ b/external/boost/boost.random.Wunused-local-typedefs.warnings.patch
@@ -0,0 +1,20 @@
+--- a/b/boost/boost/random/generate_canonical.hpp	2013-05-31 18:13:09.804149686 +0200
++++ a/b/boost/boost/random/generate_canonical.hpp	2013-05-31 18:13:30.020195845 +0200
+@@ -55,7 +55,6 @@
+     using std::floor;
+     BOOST_ASSERT((g.min)() == 0);
+     BOOST_ASSERT((g.max)() == 1);
+-    typedef typename URNG::result_type base_result;
+     std::size_t digits = std::numeric_limits<RealType>::digits;
+     std::size_t engine_bits = detail::generator_bits<URNG>::value();
+     std::size_t b = (std::min)(bits, digits);
+--- a/b/boost/boost/random/uniform_real_distribution.hpp	2013-05-31 18:15:04.571429634 +0200
++++ a/b/boost/boost/random/uniform_real_distribution.hpp	2013-05-31 18:14:28.452337186 +0200
+@@ -36,7 +36,6 @@
+ {
+     for(;;) {
+         typedef T result_type;
+-        typedef typename Engine::result_type base_result;
+         result_type numerator = static_cast<T>(eng() - (eng.min)());
+         result_type divisor = static_cast<T>((eng.max)() - (eng.min)());
+         BOOST_ASSERT(divisor > 0);
diff --git a/external/boost/boost.spirit.Wunused-local-typedefs.warnings.patch b/external/boost/boost.spirit.Wunused-local-typedefs.warnings.patch
new file mode 100644
index 0000000..babe844
--- /dev/null
+++ b/external/boost/boost.spirit.Wunused-local-typedefs.warnings.patch
@@ -0,0 +1,49 @@
+--- misc/boost_1_44_0/boost/spirit/home/classic/core/non_terminal/impl/grammar.ipp
++++ misc/build/boost_1_44_0/boost/spirit/home/classic/core/non_terminal/impl/grammar.ipp
+@@ -307,7 +307,6 @@
+ #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)
+@@ -318,6 +317,7 @@
+ 
+ # if (defined(BOOST_MSVC) && (BOOST_MSVC < 1300)) \
+     || defined(BOOST_INTEL_CXX_VERSION)
++        typedef typename helper_list_t::vector_t::reverse_iterator iterator_t;
+         for (iterator_t i = helpers.rbegin(); i != helpers.rend(); ++i)
+             (*i)->undefine(self);
+ # else
+--- misc/boost_1_44_0/boost/spirit/home/classic/core/primitives/primitives.hpp
++++ misc/build/boost_1_44_0/boost/spirit/home/classic/core/primitives/primitives.hpp
+@@ -47,7 +47,6 @@
+         typename parser_result<self_t, ScannerT>::type
+         parse(ScannerT const& scan) const
+         {
+-            typedef typename parser_result<self_t, ScannerT>::type result_t;
+             typedef typename ScannerT::value_t value_t;
+             typedef typename ScannerT::iterator_t iterator_t;
+ 
+--- misc/boost_1_44_0/boost/spirit/home/classic/error_handling/exceptions.hpp
++++ misc/build/boost_1_44_0/boost/spirit/home/classic/error_handling/exceptions.hpp
+@@ -140,7 +140,6 @@
+         parse(ScannerT const& scan) const
+         {
+             typedef typename parser_result<ParserT, ScannerT>::type result_t;
+-            typedef typename ScannerT::iterator_t iterator_t;
+ 
+             result_t hit = this->subject().parse(scan);
+             if (!hit)
+--- misc/boost_1_44_0/boost/spirit/home/classic/utility/functor_parser.hpp
++++ misc/build/boost_1_44_0/boost/spirit/home/classic/utility/functor_parser.hpp
+@@ -49,8 +49,6 @@
+         typename parser_result<self_t, ScannerT>::type
+         parse(ScannerT const& scan) const
+         {
+-            typedef typename parser_result<self_t, ScannerT>::type result_t;
+-            typedef typename ScannerT::value_t      value_t;
+             typedef typename ScannerT::iterator_t   iterator_t;
+ 
+             iterator_t const s(scan.first);
diff --git a/external/boost/boost.tuple.Wunused-local-typedefs.warnings.patch b/external/boost/boost.tuple.Wunused-local-typedefs.warnings.patch
new file mode 100644
index 0000000..dd05a1f
--- /dev/null
+++ b/external/boost/boost.tuple.Wunused-local-typedefs.warnings.patch
@@ -0,0 +1,10 @@
+--- a/b/boost/boost/tuple/detail/tuple_basic.hpp	2013-05-31 13:31:21.682966336 +0200
++++ a/b/boost/boost/tuple/detail/tuple_basic.hpp	2013-05-31 13:32:44.067231648 +0200
+@@ -225,7 +225,6 @@
+ get(const cons<HT, TT>& c BOOST_APPEND_EXPLICIT_TEMPLATE_NON_TYPE(int, N)) {
+   typedef BOOST_DEDUCED_TYPENAME detail::drop_front<N>::BOOST_NESTED_TEMPLATE
+       apply<cons<HT, TT> > impl;
+-  typedef BOOST_DEDUCED_TYPENAME impl::type cons_element;
+   return impl::call(c).head;
+ }
+ 
diff --git a/external/boost/boost.wunused-local-typedefs.patch b/external/boost/boost.wunused-local-typedefs.patch
deleted file mode 100644
index ced3195..0000000
--- a/external/boost/boost.wunused-local-typedefs.patch
+++ /dev/null
@@ -1,258 +0,0 @@
---- a/b/boost/boost/random/generate_canonical.hpp	2013-05-31 18:13:09.804149686 +0200
-+++ a/b/boost/boost/random/generate_canonical.hpp	2013-05-31 18:13:30.020195845 +0200
-@@ -55,7 +55,6 @@
-     using std::floor;
-     BOOST_ASSERT((g.min)() == 0);
-     BOOST_ASSERT((g.max)() == 1);
--    typedef typename URNG::result_type base_result;
-     std::size_t digits = std::numeric_limits<RealType>::digits;
-     std::size_t engine_bits = detail::generator_bits<URNG>::value();
-     std::size_t b = (std::min)(bits, digits);
---- a/b/boost/boost/random/uniform_real_distribution.hpp	2013-05-31 18:15:04.571429634 +0200
-+++ a/b/boost/boost/random/uniform_real_distribution.hpp	2013-05-31 18:14:28.452337186 +0200
-@@ -36,7 +36,6 @@
- {
-     for(;;) {
-         typedef T result_type;
--        typedef typename Engine::result_type base_result;
-         result_type numerator = static_cast<T>(eng() - (eng.min)());
-         result_type divisor = static_cast<T>((eng.max)() - (eng.min)());
-         BOOST_ASSERT(divisor > 0);
---- a/b/boost/boost/math/special_functions/fpclassify.hpp	2013-05-31 14:02:13.660436127 +0200
-+++ a/b/boost/boost/math/special_functions/fpclassify.hpp	2013-05-31 14:01:17.372246240 +0200
-@@ -339,7 +338,6 @@
- { //!< \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());
- }
-@@ -410,7 +407,6 @@
- {
-    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());
- }
-@@ -499,7 +494,6 @@
- {
-    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());
- }
-@@ -585,7 +578,6 @@
- { //!< \brief return true if floating-point type t is NaN (Not A Number).
-    typedef detail::fp_traits<long double>::type traits;
-    typedef traits::method method;
--   typedef boost::is_floating_point<long double>::type fp_tag;
-    return detail::isnan_impl(x, method());
- }
- #endif
---- a/b/boost/boost/date_time/gregorian/greg_facet.hpp	2013-05-31 14:03:30.476695310 +0200
-+++ a/b/boost/boost/date_time/gregorian/greg_facet.hpp	2013-05-31 14:03:22.894669713 +0200
-@@ -215,7 +215,6 @@
-   {
-     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;
-   }
---- a/b/boost/boost/tuple/detail/tuple_basic.hpp	2013-05-31 13:31:21.682966336 +0200
-+++ a/b/boost/boost/tuple/detail/tuple_basic.hpp	2013-05-31 13:32:44.067231648 +0200
-@@ -225,7 +225,6 @@
- get(const cons<HT, TT>& c BOOST_APPEND_EXPLICIT_TEMPLATE_NON_TYPE(int, N)) {
-   typedef BOOST_DEDUCED_TYPENAME detail::drop_front<N>::BOOST_NESTED_TEMPLATE
-       apply<cons<HT, TT> > impl;
--  typedef BOOST_DEDUCED_TYPENAME impl::type cons_element;
-   return impl::call(c).head;
- }
- 
---- misc/boost_1_44_0/boost/bind/arg.hpp
-+++ misc/build/boost_1_44_0/boost/bind/arg.hpp
-@@ -35,6 +35,8 @@
-     {
-         // static assert I == is_placeholder<T>::value
-         typedef char T_must_be_placeholder[ I == is_placeholder<T>::value? 1: -1 ];
-+        T_must_be_placeholder dummy; (void) dummy;
-+            // silence -Werror=unused-local-typedefs (GCC 4.8)
-     }
- };
- 
---- misc/boost_1_44_0/boost/concept/detail/general.hpp
-+++ misc/build/boost_1_44_0/boost/concept/detail/general.hpp
-@@ -68,7 +68,9 @@
- #  define BOOST_CONCEPT_ASSERT_FN( ModelFnPtr )             \
-     typedef ::boost::concepts::detail::instantiate<          \
-     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
--      BOOST_PP_CAT(boost_concept_check,__LINE__)
-+      BOOST_PP_CAT(boost_concept_check,__LINE__); \
-+    void BOOST_PP_CAT(boost_concept_check_dummy,__LINE__)(BOOST_PP_CAT(boost_concept_check,__LINE__) *)
-+        // silence -Werror=unused-local-typedefs (GCC 4.8)
- 
- }}
- 
---- misc/boost_1_44_0/boost/date_time/date_parsing.hpp
-+++ misc/build/boost_1_44_0/boost/date_time/date_parsing.hpp
-@@ -113,7 +113,6 @@
-         spec_str = "mdy";
-       }
- 
--      typedef typename date_type::year_type year_type;
-       typedef typename date_type::month_type month_type;
-       unsigned pos = 0;
-       unsigned short year(0), month(0), day(0);
-@@ -159,7 +158,7 @@
-     parse_undelimited_date(const std::string& s) {
-       int offsets[] = {4,2,2};
-       int pos = 0;
--      typedef typename date_type::year_type year_type;
-+      //typedef typename date_type::year_type year_type;
-       //typename date_type::ymd_type ymd((year_type::min)(),1,1);
-       unsigned short y = 0, m = 0, d = 0;
- 
---- misc/boost_1_44_0/boost/date_time/local_time/local_time_io.hpp
-+++ misc/build/boost_1_44_0/boost/date_time/local_time/local_time_io.hpp
-@@ -36,7 +36,6 @@
-     boost::io::ios_flags_saver iflags(os);
-     typedef local_date_time time_type;//::utc_time_type typename 
-     typedef date_time::time_facet<time_type, CharT> custom_time_facet;
--    typedef std::time_put<CharT> std_time_facet;
-     std::ostreambuf_iterator<CharT> oitr(os);
- 
-     if(std::has_facet<custom_time_facet>(os.getloc())) {
-@@ -123,7 +122,6 @@
-              const boost::local_time::local_time_period& p) {
-     boost::io::ios_flags_saver iflags(os);
-     typedef boost::date_time::time_facet<local_date_time, CharT> custom_facet;
--    typedef std::time_put<CharT> std_time_facet;
-     std::ostreambuf_iterator<CharT> oitr(os);
-     if (std::has_facet<custom_facet>(os.getloc())) {
-       std::use_facet<custom_facet>(os.getloc()).put(oitr, os, os.fill(), p);
---- misc/boost_1_44_0/boost/date_time/posix_time/posix_time_io.hpp
-+++ misc/build/boost_1_44_0/boost/date_time/posix_time/posix_time_io.hpp
-@@ -47,7 +47,6 @@
-              const ptime& p) {
-     boost::io::ios_flags_saver iflags(os);
-     typedef boost::date_time::time_facet<ptime, CharT> custom_ptime_facet;
--    typedef std::time_put<CharT>                  std_ptime_facet;
-     std::ostreambuf_iterator<CharT> oitr(os);
-     if (std::has_facet<custom_ptime_facet>(os.getloc()))
-       std::use_facet<custom_ptime_facet>(os.getloc()).put(oitr, os, os.fill(), p);
-@@ -114,7 +113,6 @@
-              const boost::posix_time::time_period& p) {
-     boost::io::ios_flags_saver iflags(os);
-     typedef boost::date_time::time_facet<ptime, CharT> custom_ptime_facet;
--    typedef std::time_put<CharT>                  std_time_facet;
-     std::ostreambuf_iterator<CharT> oitr(os);
-     if (std::has_facet<custom_ptime_facet>(os.getloc())) {
-       std::use_facet<custom_ptime_facet>(os.getloc()).put(oitr, os, os.fill(), p);
-@@ -180,7 +178,6 @@
-   {
-     boost::io::ios_flags_saver iflags(os);
-     typedef boost::date_time::time_facet<ptime, CharT> custom_ptime_facet;
--    typedef std::time_put<CharT>                  std_ptime_facet;
-     std::ostreambuf_iterator<CharT> oitr(os);
-     if (std::has_facet<custom_ptime_facet>(os.getloc()))
-       std::use_facet<custom_ptime_facet>(os.getloc()).put(oitr, os, os.fill(), td);
---- misc/boost_1_44_0/boost/date_time/string_convert.hpp
-+++ misc/build/boost_1_44_0/boost/date_time/string_convert.hpp
-@@ -21,7 +21,6 @@
-   inline
-   std::basic_string<OutputT> convert_string_type(const std::basic_string<InputT>& inp_str)
-   {
--    typedef std::basic_string<InputT> input_type;
-     typedef std::basic_string<OutputT> output_type;
-     output_type result;
-     result.insert(result.begin(), inp_str.begin(), inp_str.end());
---- misc/boost_1_44_0/boost/date_time/strings_from_facet.hpp
-+++ misc/build/boost_1_44_0/boost/date_time/strings_from_facet.hpp
-@@ -35,7 +35,6 @@
- {
-   typedef std::basic_string<charT> string_type;
-   typedef std::vector<string_type> collection_type;
--  typedef std::basic_ostringstream<charT> ostream_type;
-   typedef std::ostreambuf_iterator<charT> ostream_iter_type;
-   typedef std::basic_ostringstream<charT> stringstream_type;
-   typedef std::time_put<charT>           time_put_facet_type;
-@@ -85,7 +84,6 @@
- {
-   typedef std::basic_string<charT> string_type;
-   typedef std::vector<string_type> collection_type;
--  typedef std::basic_ostringstream<charT> ostream_type;
-   typedef std::ostreambuf_iterator<charT> ostream_iter_type;
-   typedef std::basic_ostringstream<charT> stringstream_type;
-   typedef std::time_put<charT>           time_put_facet_type;
---- misc/boost_1_44_0/boost/multi_array/concept_checks.hpp
-+++ misc/build/boost_1_44_0/boost/multi_array/concept_checks.hpp
-@@ -39,8 +39,6 @@
- 
-     template <typename Array, typename IdxGen, typename Call_Type>
-     static void call(Array& a, const IdxGen& idgen, Call_Type c) {
--      typedef typename Array::index_range index_range_;
--      typedef typename Array::index index_;
-       idgen_helper<N-1>::call(a,idgen[c],c);
-     }
-   };
-@@ -50,8 +48,6 @@
- 
-     template <typename Array, typename IdxGen, typename Call_Type>
-     static void call(Array& a, const IdxGen& idgen, Call_Type) {
--      typedef typename Array::index_range index_range_;
--      typedef typename Array::index index_;
-       a[ idgen ];
-     }
-   };
---- misc/boost_1_44_0/boost/spirit/home/classic/core/non_terminal/impl/grammar.ipp
-+++ misc/build/boost_1_44_0/boost/spirit/home/classic/core/non_terminal/impl/grammar.ipp
-@@ -307,7 +307,6 @@
- #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)
-@@ -318,6 +317,7 @@
- 
- # if (defined(BOOST_MSVC) && (BOOST_MSVC < 1300)) \
-     || defined(BOOST_INTEL_CXX_VERSION)
-+        typedef typename helper_list_t::vector_t::reverse_iterator iterator_t;
-         for (iterator_t i = helpers.rbegin(); i != helpers.rend(); ++i)
-             (*i)->undefine(self);
- # else
---- misc/boost_1_44_0/boost/spirit/home/classic/core/primitives/primitives.hpp
-+++ misc/build/boost_1_44_0/boost/spirit/home/classic/core/primitives/primitives.hpp
-@@ -47,7 +47,6 @@
-         typename parser_result<self_t, ScannerT>::type
-         parse(ScannerT const& scan) const
-         {
--            typedef typename parser_result<self_t, ScannerT>::type result_t;
-             typedef typename ScannerT::value_t value_t;
-             typedef typename ScannerT::iterator_t iterator_t;
- 
---- misc/boost_1_44_0/boost/spirit/home/classic/error_handling/exceptions.hpp
-+++ misc/build/boost_1_44_0/boost/spirit/home/classic/error_handling/exceptions.hpp
-@@ -140,7 +140,6 @@
-         parse(ScannerT const& scan) const
-         {
-             typedef typename parser_result<ParserT, ScannerT>::type result_t;
--            typedef typename ScannerT::iterator_t iterator_t;
- 
-             result_t hit = this->subject().parse(scan);
-             if (!hit)
---- misc/boost_1_44_0/boost/spirit/home/classic/utility/functor_parser.hpp
-+++ misc/build/boost_1_44_0/boost/spirit/home/classic/utility/functor_parser.hpp
-@@ -49,8 +49,6 @@
-         typename parser_result<self_t, ScannerT>::type
-         parse(ScannerT const& scan) const
-         {
--            typedef typename parser_result<self_t, ScannerT>::type result_t;
--            typedef typename ScannerT::value_t      value_t;
-             typedef typename ScannerT::iterator_t   iterator_t;
- 
-             iterator_t const s(scan.first);
commit c0def0a41f421f6ade3746e27a3f374e16e0ac55
Author: Michael Stahl <mstahl at redhat.com>
Date:   Sun Apr 13 20:19:55 2014 +0200

    boost: split boost.wundef.patch
    
    Change-Id: I16c2235dd72f86b7659d92aa1c72b573ccadacb7

diff --git a/external/boost/UnpackedTarball_boost.mk b/external/boost/UnpackedTarball_boost.mk
index 0a02318..85a7916 100644
--- a/external/boost/UnpackedTarball_boost.mk
+++ b/external/boost/UnpackedTarball_boost.mk
@@ -27,7 +27,10 @@ boost_patches += boost.date_time.Wshadow.warnings.patch
 boost_patches += boost.math.Wdeprecated-register.patch.0
 boost_patches += boost.multi_array.C4510.warnings.patch
 boost_patches += boost.multi_array.Wshadow.warnings.patch
+boost_patches += boost.multi_array.Wundef.warnings.patch
 boost_patches += boost.multi_index.Wshadow.warnings.patch.1
+boost_patches += boost.predef.Wundef.warnings.patch
+boost_patches += boost.preprocessor.Wundef.warnings.patch
 boost_patches += boost.property_tree.Wshadow.warnings.patch.1
 boost_patches += boost.property_tree.Wtautological-constant-out-of-range-compare.warnings.patch.0
 boost_patches += boost.ptr_container.Wshadow.warnings.patch
@@ -38,6 +41,7 @@ boost_patches += boost.random.Wshadow.warnings.patch
 boost_patches += boost.random.Wuninitialized.patch
 boost_patches += boost.spirit.Wshadow.warnings.patch
 boost_patches += boost.unordered.Wshadow.warnings.patch
+boost_patches += boost.utility.Wundef.warnings.patch
 boost_patches += boost.uuid.Wshadow.warnings.patch
 
 # Help static analysis tools (see SAL_UNUSED_PARAMETER in sal/types.h):
@@ -55,7 +59,6 @@ boost_patches += boost.endian.patch
 boost_patches += boost.loplugin.patch
 boost_patches += boost.std.move.patch
 boost_patches += boost.transform_width.patch
-boost_patches += boost.wundef.patch
 boost_patches += boost.wunused.patch
 boost_patches += boost.wdeprecated-auto_ptr.patch.0
 
diff --git a/external/boost/boost.multi_array.Wundef.warnings.patch b/external/boost/boost.multi_array.Wundef.warnings.patch
new file mode 100644
index 0000000..e17c734
--- /dev/null
+++ b/external/boost/boost.multi_array.Wundef.warnings.patch
@@ -0,0 +1,11 @@
+--- foo/foo/foo/boost/multi_array/base.hpp
++++ foo/foo/foo/boost/multi_array/base.hpp
+@@ -65,7 +65,7 @@
+ // object creation in small-memory environments.  Thus, the objects
+ // can be left undefined by defining BOOST_MULTI_ARRAY_NO_GENERATORS 
+ // before loading multi_array.hpp.
+-#if !BOOST_MULTI_ARRAY_NO_GENERATORS
++#if !defined(BOOST_MULTI_ARRAY_NO_GENERATORS) || !BOOST_MULTI_ARRAY_NO_GENERATORS
+ namespace {
+   multi_array_types::extent_gen extents;
+   multi_array_types::index_gen indices;
diff --git a/external/boost/boost.predef.Wundef.warnings.patch b/external/boost/boost.predef.Wundef.warnings.patch
new file mode 100644
index 0000000..81e8e23
--- /dev/null
+++ b/external/boost/boost.predef.Wundef.warnings.patch
@@ -0,0 +1,11 @@
+--- foo/foo/foo/boost/predef/other/endian.h
++++ foo/foo/foo/boost/predef/other/endian.h
+@@ -77,7 +77,7 @@
+ #           undef BOOST_ENDIAN_LITTLE_BYTE
+ #           define BOOST_ENDIAN_LITTLE_BYTE BOOST_VERSION_NUMBER_AVAILABLE
+ #       endif
+-#       if (__BYTE_ORDER == __PDP_ENDIAN)
++#       if defined(__PDP_ENDIAN) && (__BYTE_ORDER == __PDP_ENDIAN)
+ #           undef BOOST_ENDIAN_LITTLE_WORD
+ #           define BOOST_ENDIAN_LITTLE_WORD BOOST_VERSION_NUMBER_AVAILABLE
+ #       endif
diff --git a/external/boost/boost.wundef.patch b/external/boost/boost.preprocessor.Wundef.warnings.patch
similarity index 71%
rename from external/boost/boost.wundef.patch
rename to external/boost/boost.preprocessor.Wundef.warnings.patch
index 522a291..63fa958 100644
--- a/external/boost/boost.wundef.patch
+++ b/external/boost/boost.preprocessor.Wundef.warnings.patch
@@ -1,25 +1,3 @@
---- foo/foo/foo/boost/predef/other/endian.h
-+++ foo/foo/foo/boost/predef/other/endian.h
-@@ -77,7 +77,7 @@
- #           undef BOOST_ENDIAN_LITTLE_BYTE
- #           define BOOST_ENDIAN_LITTLE_BYTE BOOST_VERSION_NUMBER_AVAILABLE
- #       endif
--#       if (__BYTE_ORDER == __PDP_ENDIAN)
-+#       if defined(__PDP_ENDIAN) && (__BYTE_ORDER == __PDP_ENDIAN)
- #           undef BOOST_ENDIAN_LITTLE_WORD
- #           define BOOST_ENDIAN_LITTLE_WORD BOOST_VERSION_NUMBER_AVAILABLE
- #       endif
---- foo/foo/foo/boost/multi_array/base.hpp
-+++ foo/foo/foo/boost/multi_array/base.hpp
-@@ -65,7 +65,7 @@
- // object creation in small-memory environments.  Thus, the objects
- // can be left undefined by defining BOOST_MULTI_ARRAY_NO_GENERATORS 
- // before loading multi_array.hpp.
--#if !BOOST_MULTI_ARRAY_NO_GENERATORS
-+#if !defined(BOOST_MULTI_ARRAY_NO_GENERATORS) || !BOOST_MULTI_ARRAY_NO_GENERATORS
- namespace {
-   multi_array_types::extent_gen extents;
-   multi_array_types::index_gen indices;
 --- foo/foo/foo/boost/preprocessor/config/config.hpp
 +++ foo/foo/foo/boost/preprocessor/config/config.hpp
 @@ -90,7 +90,7 @@
@@ -86,14 +64,3 @@
  #        define BOOST_PP_VARIADIC_SIZE(...) BOOST_PP_CAT(BOOST_PP_VARIADIC_SIZE_I(__VA_ARGS__, 64, 63, 62, 61, 60, 59, 58, 57, 56, 55, 54, 53, 52, 51, 50, 49, 48, 47, 46, 45, 44, 43, 42, 41, 40, 39, 38, 37, 36, 35, 34, 33, 32, 31, 30, 29, 28, 27, 26, 25, 24, 23, 22, 21, 20, 19, 18, 17, 16, 15, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1,),)
  #    else
  #        define BOOST_PP_VARIADIC_SIZE(...) BOOST_PP_VARIADIC_SIZE_I(__VA_ARGS__, 64, 63, 62, 61, 60, 59, 58, 57, 56, 55, 54, 53, 52, 51, 50, 49, 48, 47, 46, 45, 44, 43, 42, 41, 40, 39, 38, 37, 36, 35, 34, 33, 32, 31, 30, 29, 28, 27, 26, 25, 24, 23, 22, 21, 20, 19, 18, 17, 16, 15, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1,)
---- foo/foo/foo/boost/utility/result_of.hpp
-+++ foo/foo/foo/boost/utility/result_of.hpp
-@@ -72,7 +72,7 @@
- // There doesn't seem to be any other way to turn this off such that the presence of
- // the user-defined operator,() below doesn't cause spurious warning all over the place,
- // so unconditionally turn it off.
--#if BOOST_MSVC
-+#if defined(BOOST_MSVC) && BOOST_MSVC
- #  pragma warning(disable: 4913) // user defined binary operator ',' exists but no overload could convert all operands, default built-in binary operator ',' used
- #endif
- 
diff --git a/external/boost/boost.utility.Wundef.warnings.patch b/external/boost/boost.utility.Wundef.warnings.patch
new file mode 100644
index 0000000..034709e
--- /dev/null
+++ b/external/boost/boost.utility.Wundef.warnings.patch
@@ -0,0 +1,11 @@
+--- foo/foo/foo/boost/utility/result_of.hpp
++++ foo/foo/foo/boost/utility/result_of.hpp
+@@ -72,7 +72,7 @@
+ // There doesn't seem to be any other way to turn this off such that the presence of
+ // the user-defined operator,() below doesn't cause spurious warning all over the place,
+ // so unconditionally turn it off.
+-#if BOOST_MSVC
++#if defined(BOOST_MSVC) && BOOST_MSVC
+ #  pragma warning(disable: 4913) // user defined binary operator ',' exists but no overload could convert all operands, default built-in binary operator ',' used
+ #endif
+ 
commit ce4817130cfad1166a83ee4cc1c28694124246a9
Author: Michael Stahl <mstahl at redhat.com>
Date:   Sun Apr 13 19:45:16 2014 +0200

    boost: rename boost.wuninitialized.patch
    
    Change-Id: Ic82f00a9750dc4f15207474a5cf4873e620198a3

diff --git a/external/boost/UnpackedTarball_boost.mk b/external/boost/UnpackedTarball_boost.mk
index 4fba00e..0a02318 100644
--- a/external/boost/UnpackedTarball_boost.mk
+++ b/external/boost/UnpackedTarball_boost.mk
@@ -35,6 +35,7 @@ boost_patches += boost.ptr_container.Wignored-qualifiers.warnings.patch
 boost_patches += boost.ptr_container.Wextra.warnings.patch
 boost_patches += boost.ptr_container.Wunused-parameter.warnings.patch
 boost_patches += boost.random.Wshadow.warnings.patch
+boost_patches += boost.random.Wuninitialized.patch
 boost_patches += boost.spirit.Wshadow.warnings.patch
 boost_patches += boost.unordered.Wshadow.warnings.patch
 boost_patches += boost.uuid.Wshadow.warnings.patch
@@ -56,7 +57,6 @@ boost_patches += boost.std.move.patch
 boost_patches += boost.transform_width.patch
 boost_patches += boost.wundef.patch
 boost_patches += boost.wunused.patch
-boost_patches += boost.wuninitialized.patch
 boost_patches += boost.wdeprecated-auto_ptr.patch.0
 
 $(eval $(call gb_UnpackedTarball_UnpackedTarball,boost))
diff --git a/external/boost/boost.wuninitialized.patch b/external/boost/boost.random.Wuninitialized.patch
similarity index 100%
rename from external/boost/boost.wuninitialized.patch
rename to external/boost/boost.random.Wuninitialized.patch
commit 9875383958fcb8a9502f812abb8b0c455df31a7d
Author: Michael Stahl <mstahl at redhat.com>
Date:   Sun Apr 13 19:42:26 2014 +0200

    boost: rename boost.wdeprecated-register.patch.0
    
    Change-Id: I4f07df4fc9def60dcf6ae9a3cf33c5315c9ad2ad

diff --git a/external/boost/UnpackedTarball_boost.mk b/external/boost/UnpackedTarball_boost.mk
index a1f810f..4fba00e 100644
--- a/external/boost/UnpackedTarball_boost.mk
+++ b/external/boost/UnpackedTarball_boost.mk
@@ -24,6 +24,7 @@ boost_patches += boost.6142.warnings.patch.1
 boost_patches += boost.concept_check.C4100.warnings.patch
 boost_patches += boost.crc.Wshadow.warnings.patch
 boost_patches += boost.date_time.Wshadow.warnings.patch
+boost_patches += boost.math.Wdeprecated-register.patch.0
 boost_patches += boost.multi_array.C4510.warnings.patch
 boost_patches += boost.multi_array.Wshadow.warnings.patch
 boost_patches += boost.multi_index.Wshadow.warnings.patch.1
@@ -55,7 +56,6 @@ boost_patches += boost.std.move.patch
 boost_patches += boost.transform_width.patch
 boost_patches += boost.wundef.patch
 boost_patches += boost.wunused.patch
-boost_patches += boost.wdeprecated-register.patch.0
 boost_patches += boost.wuninitialized.patch
 boost_patches += boost.wdeprecated-auto_ptr.patch.0
 
diff --git a/external/boost/boost.wdeprecated-register.patch.0 b/external/boost/boost.math.Wdeprecated-register.patch.0
similarity index 100%
rename from external/boost/boost.wdeprecated-register.patch.0
rename to external/boost/boost.math.Wdeprecated-register.patch.0
commit f9812ea675e1076685e30f61118d85300530ae19
Author: Michael Stahl <mstahl at redhat.com>
Date:   Sun Apr 13 19:36:16 2014 +0200

    boost: split up boost.wshadow.patch
    
    Change-Id: I6b51bd0e9bb8db50514ab19c4678784b4782d63c

diff --git a/external/boost/UnpackedTarball_boost.mk b/external/boost/UnpackedTarball_boost.mk
index 3dee630..a1f810f 100644
--- a/external/boost/UnpackedTarball_boost.mk
+++ b/external/boost/UnpackedTarball_boost.mk
@@ -35,6 +35,7 @@ boost_patches += boost.ptr_container.Wextra.warnings.patch
 boost_patches += boost.ptr_container.Wunused-parameter.warnings.patch
 boost_patches += boost.random.Wshadow.warnings.patch
 boost_patches += boost.spirit.Wshadow.warnings.patch
+boost_patches += boost.unordered.Wshadow.warnings.patch
 boost_patches += boost.uuid.Wshadow.warnings.patch
 
 # Help static analysis tools (see SAL_UNUSED_PARAMETER in sal/types.h):
@@ -54,7 +55,6 @@ boost_patches += boost.std.move.patch
 boost_patches += boost.transform_width.patch
 boost_patches += boost.wundef.patch
 boost_patches += boost.wunused.patch
-boost_patches += boost.wshadow.patch
 boost_patches += boost.wdeprecated-register.patch.0
 boost_patches += boost.wuninitialized.patch
 boost_patches += boost.wdeprecated-auto_ptr.patch.0
diff --git a/external/boost/boost.random.Wshadow.warnings.patch b/external/boost/boost.random.Wshadow.warnings.patch
index 86b57fa..c2e39d3 100644
--- a/external/boost/boost.random.Wshadow.warnings.patch
+++ b/external/boost/boost.random.Wshadow.warnings.patch
@@ -27,3 +27,155 @@
  
  private:
      /// \cond show_private
+--- foo/foo/foo/boost/random/binomial_distribution.hpp
++++ foo/foo/foo/boost/random/binomial_distribution.hpp
+@@ -272,21 +272,21 @@
+         using std::sqrt;
+         using std::pow;
+ 
+-        RealType p = (0.5 < _p)? (1 - _p) : _p;
+-        IntType t = _t;
++        RealType p_lcl = (0.5 < _p)? (1 - _p) : _p;
++        IntType t_lcl = _t;
+         
+-        m = static_cast<IntType>((t+1)*p);
++        m = static_cast<IntType>((t_lcl+1)*p_lcl);
+ 
+         if(use_inversion()) {
+-            q_n = pow((1 - p), static_cast<RealType>(t));
++            q_n = pow((1 - p_lcl), static_cast<RealType>(t_lcl));
+         } else {
+-            btrd.r = p/(1-p);
+-            btrd.nr = (t+1)*btrd.r;
+-            btrd.npq = t*p*(1-p);
++            btrd.r = p_lcl/(1-p_lcl);
++            btrd.nr = (t_lcl+1)*btrd.r;
++            btrd.npq = t_lcl*p_lcl*(1-p_lcl);
+             RealType sqrt_npq = sqrt(btrd.npq);
+             btrd.b = 1.15 + 2.53 * sqrt_npq;
+-            btrd.a = -0.0873 + 0.0248*btrd.b + 0.01*p;
+-            btrd.c = t*p + 0.5;
++            btrd.a = -0.0873 + 0.0248*btrd.b + 0.01*p_lcl;
++            btrd.c = t_lcl*p_lcl + 0.5;
+             btrd.alpha = (2.83 + 5.1/btrd.b) * sqrt_npq;
+             btrd.v_r = 0.92 - 4.2/btrd.b;
+             btrd.u_rv_r = 0.86*btrd.v_r;
+@@ -304,9 +304,9 @@
+             RealType u;
+             RealType v = uniform_01<RealType>()(urng);
+             if(v <= btrd.u_rv_r) {
+-                RealType u = v/btrd.v_r - 0.43;
++                RealType u_lcl = v/btrd.v_r - 0.43;
+                 return static_cast<IntType>(floor(
+-                    (2*btrd.a/(0.5 - abs(u)) + btrd.b)*u + btrd.c));
++                    (2*btrd.a/(0.5 - abs(u_lcl)) + btrd.b)*u_lcl + btrd.c));
+             }
+ 
+             if(v >= btrd.v_r) {
+@@ -344,9 +344,9 @@
+                 v = log(v);
+                 RealType rho =
+                     (km/btrd.npq)*(((km/3. + 0.625)*km + 1./6)/btrd.npq + 0.5);
+-                RealType t = -km*km/(2*btrd.npq);
+-                if(v < t - rho) return k;
+-                if(v > t + rho) continue;
++                RealType t_lcl = -km*km/(2*btrd.npq);
++                if(v < t_lcl - rho) return k;
++                if(v > t_lcl + rho) continue;
+ 
+                 IntType nm = _t - m + 1;
+                 RealType h = (m + 0.5)*log((m + 1)/(btrd.r*nm))
+@@ -367,11 +367,11 @@
+     }
+ 
+     template<class URNG>
+-    IntType invert(IntType t, RealType p, URNG& urng) const
++    IntType invert(IntType t_arg, RealType p_arg, URNG& urng) const
+     {
+-        RealType q = 1 - p;
+-        RealType s = p / q;
+-        RealType a = (t + 1) * s;
++        RealType q = 1 - p_arg;
++        RealType s = p_arg / q;
++        RealType a = (t_arg + 1) * s;
+         RealType r = q_n;
+         RealType u = uniform_01<RealType>()(urng);
+         IntType x = 0;
+--- foo/foo/foo/boost/random/geometric_distribution.hpp
++++ foo/foo/foo/boost/random/geometric_distribution.hpp
+@@ -104,8 +104,8 @@
+      *
+      * Requires: 0 < p < 1
+      */
+-    explicit geometric_distribution(const RealType& p = RealType(0.5))
+-      : _p(p)
++    explicit geometric_distribution(const RealType& p_arg = RealType(0.5))
++      : _p(p_arg)
+     {
+         BOOST_ASSERT(RealType(0) < _p && _p < RealType(1));
+         init();
+--- foo/foo/foo/boost/random/shuffle_order.hpp
++++ foo/foo/foo/boost/random/shuffle_order.hpp
+@@ -200,8 +200,8 @@
+     }
+ 
+     /** Returns true if the two generators will produce identical sequences. */
+-    BOOST_RANDOM_DETAIL_EQUALITY_OPERATOR(shuffle_order_engine, x, y)
+-    { return x._rng == y._rng && x.y == y.y && std::equal(x.v, x.v+k, y.v); }
++    BOOST_RANDOM_DETAIL_EQUALITY_OPERATOR(shuffle_order_engine, x, y_arg)
++    { return x._rng == y_arg._rng && x.y == y_arg.y && std::equal(x.v, x.v+k, y_arg.v); }
+     /** Returns true if the two generators will produce different sequences. */
+     BOOST_RANDOM_DETAIL_INEQUALITY_OPERATOR(shuffle_order_engine)
+ 
+--- foo/foo/foo/boost/random/subtract_with_carry.hpp
++++ foo/foo/foo/boost/random/subtract_with_carry.hpp
+@@ -268,21 +268,21 @@
+ 
+     friend struct detail::subtract_with_carry_discard;
+ 
+-    IntType do_update(std::size_t current, std::size_t short_index, IntType carry)
++    IntType do_update(std::size_t current, std::size_t short_index, IntType carry_arg)
+     {
+         IntType delta;
+-        IntType temp = x[current] + carry;
++        IntType temp = x[current] + carry_arg;
+         if (x[short_index] >= temp) {
+             // x(n) >= 0
+             delta =  x[short_index] - temp;
+-            carry = 0;
++            carry_arg = 0;
+         } else {
+             // x(n) < 0
+             delta = modulus - temp + x[short_index];
+-            carry = 1;
++            carry_arg = 1;
+         }
+         x[current] = delta;
+-        return carry;
++        return carry_arg;
+     }
+     /// \endcond
+ 
+@@ -498,17 +498,17 @@
+ 
+     friend struct detail::subtract_with_carry_discard;
+ 
+-    RealType do_update(std::size_t current, std::size_t short_index, RealType carry)
++    RealType do_update(std::size_t current, std::size_t short_index, RealType carry_arg)
+     {
+-        RealType delta = x[short_index] - x[current] - carry;
++        RealType delta = x[short_index] - x[current] - carry_arg;
+         if(delta < 0) {
+             delta += RealType(1);
+-            carry = RealType(1)/_modulus;
++            carry_arg = RealType(1)/_modulus;
+         } else {
+-            carry = 0;
++            carry_arg = 0;
+         }
+         x[current] = delta;
+-        return carry;
++        return carry_arg;
+     }
+     /// \endcond
+     std::size_t k;
diff --git a/external/boost/boost.wshadow.patch b/external/boost/boost.unordered.Wshadow.warnings.patch
similarity index 51%
rename from external/boost/boost.wshadow.patch
rename to external/boost/boost.unordered.Wshadow.warnings.patch
index 85e4cd3..ca93da7 100644
--- a/external/boost/boost.wshadow.patch
+++ b/external/boost/boost.unordered.Wshadow.warnings.patch
@@ -1,155 +1,3 @@
---- foo/foo/foo/boost/random/binomial_distribution.hpp
-+++ foo/foo/foo/boost/random/binomial_distribution.hpp
-@@ -272,21 +272,21 @@
-         using std::sqrt;
-         using std::pow;
- 
--        RealType p = (0.5 < _p)? (1 - _p) : _p;
--        IntType t = _t;
-+        RealType p_lcl = (0.5 < _p)? (1 - _p) : _p;
-+        IntType t_lcl = _t;
-         
--        m = static_cast<IntType>((t+1)*p);
-+        m = static_cast<IntType>((t_lcl+1)*p_lcl);
- 
-         if(use_inversion()) {
--            q_n = pow((1 - p), static_cast<RealType>(t));
-+            q_n = pow((1 - p_lcl), static_cast<RealType>(t_lcl));
-         } else {
--            btrd.r = p/(1-p);
--            btrd.nr = (t+1)*btrd.r;
--            btrd.npq = t*p*(1-p);
-+            btrd.r = p_lcl/(1-p_lcl);
-+            btrd.nr = (t_lcl+1)*btrd.r;
-+            btrd.npq = t_lcl*p_lcl*(1-p_lcl);
-             RealType sqrt_npq = sqrt(btrd.npq);
-             btrd.b = 1.15 + 2.53 * sqrt_npq;
--            btrd.a = -0.0873 + 0.0248*btrd.b + 0.01*p;
--            btrd.c = t*p + 0.5;
-+            btrd.a = -0.0873 + 0.0248*btrd.b + 0.01*p_lcl;
-+            btrd.c = t_lcl*p_lcl + 0.5;
-             btrd.alpha = (2.83 + 5.1/btrd.b) * sqrt_npq;
-             btrd.v_r = 0.92 - 4.2/btrd.b;
-             btrd.u_rv_r = 0.86*btrd.v_r;
-@@ -304,9 +304,9 @@
-             RealType u;
-             RealType v = uniform_01<RealType>()(urng);
-             if(v <= btrd.u_rv_r) {
--                RealType u = v/btrd.v_r - 0.43;
-+                RealType u_lcl = v/btrd.v_r - 0.43;
-                 return static_cast<IntType>(floor(
--                    (2*btrd.a/(0.5 - abs(u)) + btrd.b)*u + btrd.c));
-+                    (2*btrd.a/(0.5 - abs(u_lcl)) + btrd.b)*u_lcl + btrd.c));
-             }
- 
-             if(v >= btrd.v_r) {
-@@ -344,9 +344,9 @@
-                 v = log(v);
-                 RealType rho =
-                     (km/btrd.npq)*(((km/3. + 0.625)*km + 1./6)/btrd.npq + 0.5);
--                RealType t = -km*km/(2*btrd.npq);
--                if(v < t - rho) return k;
--                if(v > t + rho) continue;
-+                RealType t_lcl = -km*km/(2*btrd.npq);
-+                if(v < t_lcl - rho) return k;
-+                if(v > t_lcl + rho) continue;
- 
-                 IntType nm = _t - m + 1;
-                 RealType h = (m + 0.5)*log((m + 1)/(btrd.r*nm))
-@@ -367,11 +367,11 @@
-     }
- 
-     template<class URNG>
--    IntType invert(IntType t, RealType p, URNG& urng) const
-+    IntType invert(IntType t_arg, RealType p_arg, URNG& urng) const
-     {
--        RealType q = 1 - p;
--        RealType s = p / q;
--        RealType a = (t + 1) * s;
-+        RealType q = 1 - p_arg;
-+        RealType s = p_arg / q;
-+        RealType a = (t_arg + 1) * s;
-         RealType r = q_n;
-         RealType u = uniform_01<RealType>()(urng);
-         IntType x = 0;
---- foo/foo/foo/boost/random/geometric_distribution.hpp
-+++ foo/foo/foo/boost/random/geometric_distribution.hpp
-@@ -104,8 +104,8 @@
-      *
-      * Requires: 0 < p < 1
-      */
--    explicit geometric_distribution(const RealType& p = RealType(0.5))
--      : _p(p)
-+    explicit geometric_distribution(const RealType& p_arg = RealType(0.5))
-+      : _p(p_arg)
-     {
-         BOOST_ASSERT(RealType(0) < _p && _p < RealType(1));
-         init();
---- foo/foo/foo/boost/random/shuffle_order.hpp
-+++ foo/foo/foo/boost/random/shuffle_order.hpp
-@@ -200,8 +200,8 @@
-     }
- 
-     /** Returns true if the two generators will produce identical sequences. */
--    BOOST_RANDOM_DETAIL_EQUALITY_OPERATOR(shuffle_order_engine, x, y)
--    { return x._rng == y._rng && x.y == y.y && std::equal(x.v, x.v+k, y.v); }
-+    BOOST_RANDOM_DETAIL_EQUALITY_OPERATOR(shuffle_order_engine, x, y_arg)
-+    { return x._rng == y_arg._rng && x.y == y_arg.y && std::equal(x.v, x.v+k, y_arg.v); }
-     /** Returns true if the two generators will produce different sequences. */
-     BOOST_RANDOM_DETAIL_INEQUALITY_OPERATOR(shuffle_order_engine)
- 
---- foo/foo/foo/boost/random/subtract_with_carry.hpp
-+++ foo/foo/foo/boost/random/subtract_with_carry.hpp
-@@ -268,21 +268,21 @@
- 
-     friend struct detail::subtract_with_carry_discard;
- 
--    IntType do_update(std::size_t current, std::size_t short_index, IntType carry)
-+    IntType do_update(std::size_t current, std::size_t short_index, IntType carry_arg)
-     {
-         IntType delta;
--        IntType temp = x[current] + carry;
-+        IntType temp = x[current] + carry_arg;
-         if (x[short_index] >= temp) {
-             // x(n) >= 0
-             delta =  x[short_index] - temp;
--            carry = 0;
-+            carry_arg = 0;
-         } else {
-             // x(n) < 0
-             delta = modulus - temp + x[short_index];
--            carry = 1;
-+            carry_arg = 1;
-         }
-         x[current] = delta;
--        return carry;
-+        return carry_arg;
-     }
-     /// \endcond
- 
-@@ -498,17 +498,17 @@
- 
-     friend struct detail::subtract_with_carry_discard;
- 
--    RealType do_update(std::size_t current, std::size_t short_index, RealType carry)
-+    RealType do_update(std::size_t current, std::size_t short_index, RealType carry_arg)
-     {
--        RealType delta = x[short_index] - x[current] - carry;
-+        RealType delta = x[short_index] - x[current] - carry_arg;
-         if(delta < 0) {
-             delta += RealType(1);
--            carry = RealType(1)/_modulus;
-+            carry_arg = RealType(1)/_modulus;
-         } else {
--            carry = 0;
-+            carry_arg = 0;
-         }
-         x[current] = delta;
--        return carry;
-+        return carry_arg;
-     }
-     /// \endcond
-     std::size_t k;
 --- foo/foo/foo/boost/unordered/detail/equivalent.hpp
 +++ foo/foo/foo/boost/unordered/detail/equivalent.hpp
 @@ -536,9 +536,9 @@
commit b09df1857c08ea2de772cd0547ad8a5d0771f7d0
Author: Michael Stahl <mstahl at redhat.com>
Date:   Sun Apr 13 19:27:06 2014 +0200

    boost: split up boost.jsonparser.warnings.patch.0
    
    Change-Id: I680a19b87708459501816cb7de228468f167caa9

diff --git a/external/boost/UnpackedTarball_boost.mk b/external/boost/UnpackedTarball_boost.mk
index 52c5c83..3dee630 100644
--- a/external/boost/UnpackedTarball_boost.mk
+++ b/external/boost/UnpackedTarball_boost.mk
@@ -10,6 +10,8 @@
 boost_patches :=
 #https://svn.boost.org/trac/boost/ticket/3780
 boost_patches += boost.3780.aliasing.patch
+#https://svn.boost.org/trac/boost/ticket/9397
+boost_patches += boost.9397.warnings.patch.0
 #http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47679
 boost_patches += boost.gcc47679.patch
 #https://svn.boost.org/trac/boost/ticket/6369
@@ -26,6 +28,7 @@ boost_patches += boost.multi_array.C4510.warnings.patch
 boost_patches += boost.multi_array.Wshadow.warnings.patch
 boost_patches += boost.multi_index.Wshadow.warnings.patch.1
 boost_patches += boost.property_tree.Wshadow.warnings.patch.1
+boost_patches += boost.property_tree.Wtautological-constant-out-of-range-compare.warnings.patch.0
 boost_patches += boost.ptr_container.Wshadow.warnings.patch
 boost_patches += boost.ptr_container.Wignored-qualifiers.warnings.patch
 boost_patches += boost.ptr_container.Wextra.warnings.patch
@@ -55,9 +58,6 @@ boost_patches += boost.wshadow.patch
 boost_patches += boost.wdeprecated-register.patch.0
 boost_patches += boost.wuninitialized.patch
 boost_patches += boost.wdeprecated-auto_ptr.patch.0
-#https://svn.boost.org/trac/boost/ticket/9397
-boost_patches += boost.9397.warnings.patch.0
-boost_patches += boost.jsonparser.warnings.patch.0
 
 $(eval $(call gb_UnpackedTarball_UnpackedTarball,boost))
 
diff --git a/external/boost/boost.jsonparser.warnings.patch.0 b/external/boost/boost.jsonparser.warnings.patch.0
deleted file mode 100644
index 0cda6ea..0000000
--- a/external/boost/boost.jsonparser.warnings.patch.0
+++ /dev/null
@@ -1,69 +0,0 @@
---- boost/property_tree/string_path.hpp
-+++ boost/property_tree/string_path.hpp
-@@ -88,14 +88,14 @@ namespace boost { namespace property_tree
-         typedef typename String::value_type char_type;
-
-         /// Create an empty path.
--        explicit string_path(char_type separator = char_type('.'));
-+        explicit string_path(char_type separator_ = char_type('.'));
-         /// Create a path by parsing the given string.
-         /// @param value A sequence, possibly with separators, that describes
-         ///              the path, e.g. "one.two.three".
-         /// @param separator The separator used in parsing. Defaults to '.'.
-         /// @param tr The translator used by this path to convert the individual
-         ///           parts to keys.
--        string_path(const String &value, char_type separator = char_type('.'),
-+        string_path(const String &value, char_type separator_ = char_type('.'),
-                     Translator tr = Translator());
-         /// Create a path by parsing the given string.
-         /// @param value A zero-terminated array of values. Only use if zero-
-@@ -106,7 +106,7 @@ namespace boost { namespace property_tree
-         /// @param tr The translator used by this path to convert the individual
-         ///           parts to keys.
-         string_path(const char_type *value,
--                    char_type separator = char_type('.'),
-+                    char_type separator_ = char_type('.'),
-                     Translator tr = Translator());
-
-         // Default copying doesn't do the right thing with the iterator
-@@ -162,23 +162,23 @@ namespace boost { namespace property_tree
-     };
-
-     template <typename String, typename Translator> inline
--    string_path<String, Translator>::string_path(char_type separator)
--        : m_separator(separator), m_start(m_value.begin())
-+    string_path<String, Translator>::string_path(char_type separator_)
-+        : m_separator(separator_), m_start(m_value.begin())
-     {}
-
-     template <typename String, typename Translator> inline
-     string_path<String, Translator>::string_path(const String &value,
--                                                 char_type separator,
-+                                                 char_type separator_,
-                                                  Translator tr)
--        : m_value(value), m_separator(separator),
-+        : m_value(value), m_separator(separator_),
-           m_tr(tr), m_start(m_value.begin())
-     {}
-
-     template <typename String, typename Translator> inline
-     string_path<String, Translator>::string_path(const char_type *value,
--                                                 char_type separator,
-+                                                 char_type separator_,
-                                                  Translator tr)
--        : m_value(value), m_separator(separator),
-+        : m_value(value), m_separator(separator_),
-           m_tr(tr), m_start(m_value.begin())
-     {}
-
---- boost/property_tree/detail/json_parser_write.hpp
-+++ boost/property_tree/detail/json_parser_write.hpp
-@@ -33,7 +33,7 @@
-             // We escape everything outside ASCII, because this code can't
-             // handle high unicode characters.
-             if (*b == 0x20 || *b == 0x21 || (*b >= 0x23 && *b <= 0x2E) ||
--                (*b >= 0x30 && *b <= 0x5B) || (*b >= 0x5D && *b <= 0xFF))
-+                (*b >= 0x30 && *b <= 0x5B) || (*b >= 0x5D && static_cast<typename std::basic_string<Ch>::traits_type::int_type>(*b) <= 0xFF))
-                 result += *b;
-             else if (*b == Ch('\b')) result += Ch('\\'), result += Ch('b');
-             else if (*b == Ch('\f')) result += Ch('\\'), result += Ch('f');
diff --git a/external/boost/boost.property_tree.Wshadow.warnings.patch.1 b/external/boost/boost.property_tree.Wshadow.warnings.patch.1
index 6a4ab02..65e4cae 100644
--- a/external/boost/boost.property_tree.Wshadow.warnings.patch.1
+++ b/external/boost/boost.property_tree.Wshadow.warnings.patch.1
@@ -8,9 +8,9 @@
 -                          const std::string &filename, 
 -                          unsigned long line): 
 -            file_parser_error(message, filename, line)
-+        json_parser_error(const std::string &message_, 
-+                          const std::string &filename_, 
-+                          unsigned long line_): 
++        json_parser_error(const std::string &message_,
++                          const std::string &filename_,
++                          unsigned long line_):
 +            file_parser_error(message_, filename_, line_)
          { 
          }
@@ -333,4 +333,61 @@
                     typename translator_between<data_type, Type>::type());
      }
  
+--- a/boost/property_tree/string_path.hpp
++++ a/boost/property_tree/string_path.hpp
+@@ -88,14 +88,14 @@ namespace boost { namespace property_tree
+         typedef typename String::value_type char_type;
+
+         /// Create an empty path.
+-        explicit string_path(char_type separator = char_type('.'));
++        explicit string_path(char_type separator_ = char_type('.'));
+         /// Create a path by parsing the given string.
+         /// @param value A sequence, possibly with separators, that describes
+         ///              the path, e.g. "one.two.three".
+         /// @param separator The separator used in parsing. Defaults to '.'.
+         /// @param tr The translator used by this path to convert the individual
+         ///           parts to keys.
+-        string_path(const String &value, char_type separator = char_type('.'),
++        string_path(const String &value, char_type separator_ = char_type('.'),
+                     Translator tr = Translator());
+         /// Create a path by parsing the given string.
+         /// @param value A zero-terminated array of values. Only use if zero-
+@@ -106,7 +106,7 @@ namespace boost { namespace property_tree
+         /// @param tr The translator used by this path to convert the individual
+         ///           parts to keys.
+         string_path(const char_type *value,
+-                    char_type separator = char_type('.'),
++                    char_type separator_ = char_type('.'),
+                     Translator tr = Translator());
+
+         // Default copying doesn't do the right thing with the iterator
+@@ -162,23 +162,23 @@ namespace boost { namespace property_tree
+     };
+
+     template <typename String, typename Translator> inline
+-    string_path<String, Translator>::string_path(char_type separator)
+-        : m_separator(separator), m_start(m_value.begin())
++    string_path<String, Translator>::string_path(char_type separator_)
++        : m_separator(separator_), m_start(m_value.begin())
+     {}
+
+     template <typename String, typename Translator> inline
+     string_path<String, Translator>::string_path(const String &value,
+-                                                 char_type separator,
++                                                 char_type separator_,
+                                                  Translator tr)
+-        : m_value(value), m_separator(separator),
++        : m_value(value), m_separator(separator_),
+           m_tr(tr), m_start(m_value.begin())
+     {}
+
+     template <typename String, typename Translator> inline
+     string_path<String, Translator>::string_path(const char_type *value,
+-                                                 char_type separator,
++                                                 char_type separator_,
+                                                  Translator tr)
+-        : m_value(value), m_separator(separator),
++        : m_value(value), m_separator(separator_),
+           m_tr(tr), m_start(m_value.begin())
+     {}
 
diff --git a/external/boost/boost.property_tree.Wtautological-constant-out-of-range-compare.warnings.patch.0 b/external/boost/boost.property_tree.Wtautological-constant-out-of-range-compare.warnings.patch.0
new file mode 100644
index 0000000..4ad7b9b
--- /dev/null
+++ b/external/boost/boost.property_tree.Wtautological-constant-out-of-range-compare.warnings.patch.0
@@ -0,0 +1,11 @@
+--- boost/property_tree/detail/json_parser_write.hpp
++++ boost/property_tree/detail/json_parser_write.hpp
+@@ -33,7 +33,7 @@
+             // We escape everything outside ASCII, because this code can't
+             // handle high unicode characters.
+             if (*b == 0x20 || *b == 0x21 || (*b >= 0x23 && *b <= 0x2E) ||
+-                (*b >= 0x30 && *b <= 0x5B) || (*b >= 0x5D && *b <= 0xFF))
++                (*b >= 0x30 && *b <= 0x5B) || (*b >= 0x5D && static_cast<typename std::basic_string<Ch>::traits_type::int_type>(*b) <= 0xFF))
+                 result += *b;
+             else if (*b == Ch('\b')) result += Ch('\\'), result += Ch('b');
+             else if (*b == Ch('\f')) result += Ch('\\'), result += Ch('f');
commit 4321efa2915a8fd50cacb0d8a0f411fb1313b993
Author: Michael Stahl <mstahl at redhat.com>
Date:   Sun Apr 13 19:04:48 2014 +0200

    boost: split up boost.libcdr.warnings.patch.1
    
    Change-Id: Ie637b6e7f452633a3cfa7826d7add0eb9846f7f8

diff --git a/external/boost/UnpackedTarball_boost.mk b/external/boost/UnpackedTarball_boost.mk
index bdc986e..52c5c83 100644
--- a/external/boost/UnpackedTarball_boost.mk
+++ b/external/boost/UnpackedTarball_boost.mk
@@ -24,6 +24,8 @@ boost_patches += boost.crc.Wshadow.warnings.patch
 boost_patches += boost.date_time.Wshadow.warnings.patch
 boost_patches += boost.multi_array.C4510.warnings.patch
 boost_patches += boost.multi_array.Wshadow.warnings.patch
+boost_patches += boost.multi_index.Wshadow.warnings.patch.1
+boost_patches += boost.property_tree.Wshadow.warnings.patch.1
 boost_patches += boost.ptr_container.Wshadow.warnings.patch
 boost_patches += boost.ptr_container.Wignored-qualifiers.warnings.patch
 boost_patches += boost.ptr_container.Wextra.warnings.patch
@@ -31,7 +33,6 @@ boost_patches += boost.ptr_container.Wunused-parameter.warnings.patch
 boost_patches += boost.random.Wshadow.warnings.patch
 boost_patches += boost.spirit.Wshadow.warnings.patch
 boost_patches += boost.uuid.Wshadow.warnings.patch
-boost_patches += boost.libcdr.warnings.patch.1
 
 # Help static analysis tools (see SAL_UNUSED_PARAMETER in sal/types.h):
 ifeq (GCC,$(COM))
diff --git a/external/boost/boost.multi_index.Wshadow.warnings.patch.1 b/external/boost/boost.multi_index.Wshadow.warnings.patch.1
new file mode 100644
index 0000000..58c39c0
--- /dev/null
+++ b/external/boost/boost.multi_index.Wshadow.warnings.patch.1
@@ -0,0 +1,94 @@
+--- boost/boost/multi_index/sequenced_index.hpp	2008-07-03 18:51:53.000000000 +0200
++++ boost/boost/multi_index/sequenced_index.hpp	2013-05-17 15:44:15.265289335 +0200
+@@ -346,7 +346,7 @@
+   }
+ 
+   template<typename Modifier,typename Rollback>
+-  bool modify(iterator position,Modifier mod,Rollback back)
++  bool modify(iterator position,Modifier mod,Rollback back_)
+   {
+     BOOST_MULTI_INDEX_CHECK_VALID_ITERATOR(position);
+     BOOST_MULTI_INDEX_CHECK_DEREFERENCEABLE_ITERATOR(position);
+@@ -363,7 +363,7 @@
+ #endif
+ 
+     return this->final_modify_(
+-      mod,back,static_cast<final_node_type*>(position.get_node()));
++      mod,back_,static_cast<final_node_type*>(position.get_node()));
+   }
+ 
+   void swap(sequenced_index<SuperMeta,TagList>& x)
+--- boost/boost/multi_index_container.hpp	2010-07-24 11:20:29.000000000 +0200
++++ boost/boost/multi_index_container.hpp	2013-05-17 15:45:56.723899853 +0200
+@@ -360,7 +360,7 @@
+     IteratorType it
+     BOOST_APPEND_EXPLICIT_TEMPLATE_NON_TYPE(int,N))
+   {
+-    typedef typename nth_index<N>::type index;
++    typedef typename nth_index<N>::type index_;
+ 
+ #if !defined(__SUNPRO_CC)||!(__SUNPRO_CC<0x580) /* fails in Sun C++ 5.7 */
+     BOOST_STATIC_ASSERT(
+@@ -371,7 +371,7 @@
+     BOOST_MULTI_INDEX_CHECK_IS_OWNER(
+       it,static_cast<typename IteratorType::container_type&>(*this));
+ 
+-    return index::make_iterator(static_cast<node_type*>(it.get_node()));
++    return index_::make_iterator(static_cast<node_type*>(it.get_node()));
+   }
+ 
+   template<int N,typename IteratorType>
+@@ -379,7 +379,7 @@
+     IteratorType it
+     BOOST_APPEND_EXPLICIT_TEMPLATE_NON_TYPE(int,N))const
+   {
+-    typedef typename nth_index<N>::type index;
++    typedef typename nth_index<N>::type index_;
+ 
+ #if !defined(__SUNPRO_CC)||!(__SUNPRO_CC<0x580) /* fails in Sun C++ 5.7 */
+     BOOST_STATIC_ASSERT((
+@@ -390,7 +390,7 @@
+     BOOST_MULTI_INDEX_CHECK_VALID_ITERATOR(it);
+     BOOST_MULTI_INDEX_CHECK_IS_OWNER(
+       it,static_cast<const typename IteratorType::container_type&>(*this));
+-    return index::make_iterator(static_cast<node_type*>(it.get_node()));
++    return index_::make_iterator(static_cast<node_type*>(it.get_node()));
+   }
+ #endif
+ 
+@@ -414,7 +414,7 @@
+     IteratorType it
+     BOOST_APPEND_EXPLICIT_TEMPLATE_TYPE(Tag))
+   {
+-    typedef typename index<Tag>::type index;
++    typedef typename index<Tag>::type index_;
+ 
+ #if !defined(__SUNPRO_CC)||!(__SUNPRO_CC<0x580) /* fails in Sun C++ 5.7 */
+     BOOST_STATIC_ASSERT(
+@@ -424,7 +424,7 @@
+     BOOST_MULTI_INDEX_CHECK_VALID_ITERATOR(it);
+     BOOST_MULTI_INDEX_CHECK_IS_OWNER(
+       it,static_cast<typename IteratorType::container_type&>(*this));
+-    return index::make_iterator(static_cast<node_type*>(it.get_node()));
++    return index_::make_iterator(static_cast<node_type*>(it.get_node()));
+   }
+ 
+   template<typename Tag,typename IteratorType>
+@@ -432,7 +432,7 @@
+     IteratorType it
+     BOOST_APPEND_EXPLICIT_TEMPLATE_TYPE(Tag))const
+   {
+-    typedef typename index<Tag>::type index;
++    typedef typename index<Tag>::type index_;
+ 
+ #if !defined(__SUNPRO_CC)||!(__SUNPRO_CC<0x580) /* fails in Sun C++ 5.7 */
+     BOOST_STATIC_ASSERT((
+@@ -443,7 +443,7 @@
+     BOOST_MULTI_INDEX_CHECK_VALID_ITERATOR(it);
+     BOOST_MULTI_INDEX_CHECK_IS_OWNER(
+       it,static_cast<const typename IteratorType::container_type&>(*this));
+-    return index::make_iterator(static_cast<node_type*>(it.get_node()));
++    return index_::make_iterator(static_cast<node_type*>(it.get_node()));
+   }
+ #endif
+ 
diff --git a/external/boost/boost.libcdr.warnings.patch.1 b/external/boost/boost.property_tree.Wshadow.warnings.patch.1
similarity index 75%
rename from external/boost/boost.libcdr.warnings.patch.1
rename to external/boost/boost.property_tree.Wshadow.warnings.patch.1
index 12a7ea2..6a4ab02 100644
--- a/external/boost/boost.libcdr.warnings.patch.1
+++ b/external/boost/boost.property_tree.Wshadow.warnings.patch.1
@@ -1,97 +1,3 @@
---- boost/boost/multi_index/sequenced_index.hpp	2008-07-03 18:51:53.000000000 +0200
-+++ boost/boost/multi_index/sequenced_index.hpp	2013-05-17 15:44:15.265289335 +0200
-@@ -346,7 +346,7 @@
-   }
- 
-   template<typename Modifier,typename Rollback>
--  bool modify(iterator position,Modifier mod,Rollback back)
-+  bool modify(iterator position,Modifier mod,Rollback back_)
-   {
-     BOOST_MULTI_INDEX_CHECK_VALID_ITERATOR(position);
-     BOOST_MULTI_INDEX_CHECK_DEREFERENCEABLE_ITERATOR(position);
-@@ -363,7 +363,7 @@
- #endif
- 
-     return this->final_modify_(
--      mod,back,static_cast<final_node_type*>(position.get_node()));
-+      mod,back_,static_cast<final_node_type*>(position.get_node()));
-   }
- 
-   void swap(sequenced_index<SuperMeta,TagList>& x)
---- boost/boost/multi_index_container.hpp	2010-07-24 11:20:29.000000000 +0200
-+++ boost/boost/multi_index_container.hpp	2013-05-17 15:45:56.723899853 +0200
-@@ -360,7 +360,7 @@
-     IteratorType it
-     BOOST_APPEND_EXPLICIT_TEMPLATE_NON_TYPE(int,N))
-   {
--    typedef typename nth_index<N>::type index;
-+    typedef typename nth_index<N>::type index_;
- 
- #if !defined(__SUNPRO_CC)||!(__SUNPRO_CC<0x580) /* fails in Sun C++ 5.7 */
-     BOOST_STATIC_ASSERT(
-@@ -371,7 +371,7 @@
-     BOOST_MULTI_INDEX_CHECK_IS_OWNER(
-       it,static_cast<typename IteratorType::container_type&>(*this));
- 
--    return index::make_iterator(static_cast<node_type*>(it.get_node()));
-+    return index_::make_iterator(static_cast<node_type*>(it.get_node()));
-   }
- 
-   template<int N,typename IteratorType>
-@@ -379,7 +379,7 @@
-     IteratorType it
-     BOOST_APPEND_EXPLICIT_TEMPLATE_NON_TYPE(int,N))const
-   {
--    typedef typename nth_index<N>::type index;
-+    typedef typename nth_index<N>::type index_;
- 
- #if !defined(__SUNPRO_CC)||!(__SUNPRO_CC<0x580) /* fails in Sun C++ 5.7 */
-     BOOST_STATIC_ASSERT((
-@@ -390,7 +390,7 @@
-     BOOST_MULTI_INDEX_CHECK_VALID_ITERATOR(it);
-     BOOST_MULTI_INDEX_CHECK_IS_OWNER(
-       it,static_cast<const typename IteratorType::container_type&>(*this));
--    return index::make_iterator(static_cast<node_type*>(it.get_node()));
-+    return index_::make_iterator(static_cast<node_type*>(it.get_node()));
-   }
- #endif
- 
-@@ -414,7 +414,7 @@
-     IteratorType it
-     BOOST_APPEND_EXPLICIT_TEMPLATE_TYPE(Tag))
-   {
--    typedef typename index<Tag>::type index;
-+    typedef typename index<Tag>::type index_;
- 
- #if !defined(__SUNPRO_CC)||!(__SUNPRO_CC<0x580) /* fails in Sun C++ 5.7 */
-     BOOST_STATIC_ASSERT(
-@@ -424,7 +424,7 @@
-     BOOST_MULTI_INDEX_CHECK_VALID_ITERATOR(it);
-     BOOST_MULTI_INDEX_CHECK_IS_OWNER(
-       it,static_cast<typename IteratorType::container_type&>(*this));
--    return index::make_iterator(static_cast<node_type*>(it.get_node()));
-+    return index_::make_iterator(static_cast<node_type*>(it.get_node()));
-   }
- 
-   template<typename Tag,typename IteratorType>
-@@ -432,7 +432,7 @@
-     IteratorType it
-     BOOST_APPEND_EXPLICIT_TEMPLATE_TYPE(Tag))const
-   {
--    typedef typename index<Tag>::type index;
-+    typedef typename index<Tag>::type index_;
- 
- #if !defined(__SUNPRO_CC)||!(__SUNPRO_CC<0x580) /* fails in Sun C++ 5.7 */
-     BOOST_STATIC_ASSERT((
-@@ -443,7 +443,7 @@
-     BOOST_MULTI_INDEX_CHECK_VALID_ITERATOR(it);
-     BOOST_MULTI_INDEX_CHECK_IS_OWNER(
-       it,static_cast<const typename IteratorType::container_type&>(*this));
--    return index::make_iterator(static_cast<node_type*>(it.get_node()));
-+    return index_::make_iterator(static_cast<node_type*>(it.get_node()));
-   }
- #endif
- 
 --- boost/boost/property_tree/detail/json_parser_error.hpp	2007-05-13 00:02:53.000000000 +0200
 +++ boost/boost/property_tree/detail/json_parser_error.hpp	2013-05-17 15:36:44.605902442 +0200
 @@ -20,10 +20,10 @@
@@ -427,16 +333,4 @@
                     typename translator_between<data_type, Type>::type());
      }
  
---- boost/boost/spirit/home/classic/error_handling/exceptions.hpp	2013-05-17 15:57:23.722638823 +0200
-+++ boost/boost/spirit/home/classic/error_handling/exceptions.hpp	2013-05-17 15:26:32.319247352 +0200
-@@ -126,8 +126,8 @@
-         typedef unary<ParserT, parser<self_t> >         base_t;
-         typedef unary_parser_category                   parser_category_t;
- 
--        assertive_parser(ParserT const& parser, ErrorDescrT descriptor_)
--        : base_t(parser), descriptor(descriptor_) {}
-+        assertive_parser(ParserT const& parser_, ErrorDescrT descriptor_)
-+        : base_t(parser_), descriptor(descriptor_) {}
- 
-         template <typename ScannerT>
-         struct result
+
diff --git a/external/boost/boost.spirit.Wshadow.warnings.patch b/external/boost/boost.spirit.Wshadow.warnings.patch
index 3b48077..ab8a526 100644
--- a/external/boost/boost.spirit.Wshadow.warnings.patch
+++ b/external/boost/boost.spirit.Wshadow.warnings.patch
@@ -55,3 +55,17 @@
 +                    rule_info(std::string(name_to_register), trace_node_))
                  ).second;
              }
+ 
+--- a/a/boost/boost/spirit/home/classic/error_handling/exceptions.hpp	2013-05-17 15:57:23.722638823 +0200
++++ a/a/boost/boost/spirit/home/classic/error_handling/exceptions.hpp	2013-05-17 15:26:32.319247352 +0200
+@@ -126,8 +126,8 @@
+         typedef unary<ParserT, parser<self_t> >         base_t;
+         typedef unary_parser_category                   parser_category_t;
+ 
+-        assertive_parser(ParserT const& parser, ErrorDescrT descriptor_)
+-        : base_t(parser), descriptor(descriptor_) {}
++        assertive_parser(ParserT const& parser_, ErrorDescrT descriptor_)
++        : base_t(parser_), descriptor(descriptor_) {}
+ 
+         template <typename ScannerT>
+         struct result
commit 38f77cf690661bebaf1d1714568296643c5e700e
Author: Michael Stahl <mstahl at redhat.com>
Date:   Sun Apr 13 18:39:18 2014 +0200

    boost: rename misleading boost.{4100,4510}.warnings.patch
    
    Change-Id: I7c9cf801f5ce0a16adf6eef7fc5697cfc6c0c194

diff --git a/external/boost/UnpackedTarball_boost.mk b/external/boost/UnpackedTarball_boost.mk
index 47a77ae..bdc986e 100644
--- a/external/boost/UnpackedTarball_boost.mk
+++ b/external/boost/UnpackedTarball_boost.mk
@@ -16,13 +16,13 @@ boost_patches += boost.gcc47679.patch
 boost_patches += boost.6369.warnings.patch
 #https://svn.boost.org/trac/boost/ticket/7551
 boost_patches += boost.7551.unusedvars.patch
-boost_patches += boost.4100.warnings.patch
-boost_patches += boost.4510.warnings.patch
 #https://svn.boost.org/trac/boost/ticket/6142
 boost_patches += boost.6142.warnings.patch.1
 
+boost_patches += boost.concept_check.C4100.warnings.patch
 boost_patches += boost.crc.Wshadow.warnings.patch
 boost_patches += boost.date_time.Wshadow.warnings.patch
+boost_patches += boost.multi_array.C4510.warnings.patch
 boost_patches += boost.multi_array.Wshadow.warnings.patch
 boost_patches += boost.ptr_container.Wshadow.warnings.patch
 boost_patches += boost.ptr_container.Wignored-qualifiers.warnings.patch
diff --git a/external/boost/boost.4100.warnings.patch b/external/boost/boost.concept_check.C4100.warnings.patch
similarity index 100%
rename from external/boost/boost.4100.warnings.patch
rename to external/boost/boost.concept_check.C4100.warnings.patch
diff --git a/external/boost/boost.4510.warnings.patch b/external/boost/boost.multi_array.C4510.warnings.patch
similarity index 100%
rename from external/boost/boost.4510.warnings.patch
rename to external/boost/boost.multi_array.C4510.warnings.patch
commit b5f60ca53fc29548b3cee83e8fdd638a2995bad2
Author: Michael Stahl <mstahl at redhat.com>
Date:   Sun Apr 13 18:23:47 2014 +0200

    boost: split up boost.6397.warnings.patch by module
    
    Change-Id: I8cf46ebbe5b17109e9ab2a13ed7c50cc48d6eae4

diff --git a/external/boost/UnpackedTarball_boost.mk b/external/boost/UnpackedTarball_boost.mk
index 44efd98..47a77ae 100644
--- a/external/boost/UnpackedTarball_boost.mk
+++ b/external/boost/UnpackedTarball_boost.mk
@@ -14,8 +14,6 @@ boost_patches += boost.3780.aliasing.patch
 boost_patches += boost.gcc47679.patch
 #https://svn.boost.org/trac/boost/ticket/6369
 boost_patches += boost.6369.warnings.patch
-#https://svn.boost.org/trac/boost/ticket/6397
-boost_patches += boost.6397.warnings.patch
 #https://svn.boost.org/trac/boost/ticket/7551
 boost_patches += boost.7551.unusedvars.patch
 boost_patches += boost.4100.warnings.patch
@@ -23,12 +21,16 @@ boost_patches += boost.4510.warnings.patch
 #https://svn.boost.org/trac/boost/ticket/6142
 boost_patches += boost.6142.warnings.patch.1
 
+boost_patches += boost.crc.Wshadow.warnings.patch
 boost_patches += boost.date_time.Wshadow.warnings.patch
+boost_patches += boost.multi_array.Wshadow.warnings.patch
 boost_patches += boost.ptr_container.Wshadow.warnings.patch
 boost_patches += boost.ptr_container.Wignored-qualifiers.warnings.patch
 boost_patches += boost.ptr_container.Wextra.warnings.patch
 boost_patches += boost.ptr_container.Wunused-parameter.warnings.patch
+boost_patches += boost.random.Wshadow.warnings.patch
 boost_patches += boost.spirit.Wshadow.warnings.patch
+boost_patches += boost.uuid.Wshadow.warnings.patch
 boost_patches += boost.libcdr.warnings.patch.1
 
 # Help static analysis tools (see SAL_UNUSED_PARAMETER in sal/types.h):
diff --git a/external/boost/boost.crc.Wshadow.warnings.patch b/external/boost/boost.crc.Wshadow.warnings.patch
new file mode 100644
index 0000000..e83615a
--- /dev/null
+++ b/external/boost/boost.crc.Wshadow.warnings.patch
@@ -0,0 +1,21 @@
+--- misc/boost_1_44_0/boost/boost/crc.hpp
++++ misc/build/boost_1_44_0/boost/boost/crc.hpp
+@@ -755,15 +755,15 @@ void
+ crc_basic<Bits>::process_bits
+ (
+     unsigned char  bits,
+-    std::size_t    bit_count
++    std::size_t    bit_count_
+ )
+ {
+     // ignore the bits above the ones we want
+-    bits <<= CHAR_BIT - bit_count;
++    bits <<= CHAR_BIT - bit_count_;
+ 
+     // compute the CRC for each bit, starting with the upper ones
+     unsigned char const  high_bit_mask = 1u << ( CHAR_BIT - 1u );
+-    for ( std::size_t i = bit_count ; i > 0u ; --i, bits <<= 1u )
++    for ( std::size_t i = bit_count_ ; i > 0u ; --i, bits <<= 1u )
+     {
+         process_bit( static_cast<bool>(bits & high_bit_mask) );
+     }
diff --git a/external/boost/boost.6397.warnings.patch b/external/boost/boost.multi_array.Wshadow.warnings.patch
similarity index 87%
rename from external/boost/boost.6397.warnings.patch
rename to external/boost/boost.multi_array.Wshadow.warnings.patch
index 1cb18d4..6617786 100644
--- a/external/boost/boost.6397.warnings.patch
+++ b/external/boost/boost.multi_array.Wshadow.warnings.patch
@@ -1,24 +1,3 @@
---- misc/boost_1_44_0/boost/boost/crc.hpp
-+++ misc/build/boost_1_44_0/boost/boost/crc.hpp
-@@ -755,15 +755,15 @@ void
- crc_basic<Bits>::process_bits
- (
-     unsigned char  bits,
--    std::size_t    bit_count
-+    std::size_t    bit_count_
- )
- {
-     // ignore the bits above the ones we want
--    bits <<= CHAR_BIT - bit_count;
-+    bits <<= CHAR_BIT - bit_count_;
- 
-     // compute the CRC for each bit, starting with the upper ones
-     unsigned char const  high_bit_mask = 1u << ( CHAR_BIT - 1u );
--    for ( std::size_t i = bit_count ; i > 0u ; --i, bits <<= 1u )
-+    for ( std::size_t i = bit_count_ ; i > 0u ; --i, bits <<= 1u )
-     {
-         process_bit( static_cast<bool>(bits & high_bit_mask) );
-     }
 --- misc/boost_1_44_0/boost/multi_array/concept_checks.hpp	2012-01-12 20:21:29.790009198 +0000
 +++ misc/build/boost_1_44_0/boost/multi_array/concept_checks.hpp	2012-01-12 20:29:56.482879277 +0000
 @@ -39,8 +39,8 @@
@@ -408,7 +387,7 @@
    explicit const_multi_array_view(TPtr base,
                             const ExtentList& extents,
 -                           const boost::array<Index,NumDims>& strides): 
-+                           const boost::array<Index,NumDims>& strides_): 
++                           const boost::array<Index,NumDims>& strides_):
      base_(base), origin_offset_(0) {
  
      index_base_list_.assign(0);
@@ -513,56 +492,3 @@
  
      std::transform(new_array.index_base_list_.begin(),
                     new_array.index_base_list_.end(),
---- misc/boost_1_44_0/boost/random/mersenne_twister.hpp
-+++ misc/build/boost_1_44_0/boost/random/mersenne_twister.hpp
-@@ -195,19 +195,19 @@
-      * Returns true if the two generators are in the same state,
-      * and will thus produce identical sequences.
-      */
--    friend bool operator==(const mersenne_twister_engine& x,
--                           const mersenne_twister_engine& y)
-+    friend bool operator==(const mersenne_twister_engine& x_arg,
-+                           const mersenne_twister_engine& y_arg)
-     {
--        if(x.i < y.i) return x.equal_imp(y);
--        else return y.equal_imp(x);
-+        if(x_arg.i < y_arg.i) return x_arg.equal_imp(y_arg);
-+        else return y_arg.equal_imp(x_arg);
-     }
-     
-     /**
-      * Returns true if the two generators are in different states.
-      */
--    friend bool operator!=(const mersenne_twister_engine& x,
--                           const mersenne_twister_engine& y)
--    { return !(x == y); }
-+    friend bool operator!=(const mersenne_twister_engine& x_arg,
-+                           const mersenne_twister_engine& y_arg)
-+    { return !(x_arg == y_arg); }
- 
- private:
-     /// \cond show_private
---- misc/boost_1_44_0/boost/uuid/uuid_io.hpp
-+++ misc/build/boost_1_44_0/boost/uuid/uuid_io.hpp
-@@ -59,7 +59,7 @@
-         }
-         
-         if (flags & std::ios_base::left) {
--            for (std::streamsize i=uuid_width; i<width; i++) {
-+            for (std::streamsize s=uuid_width; s<width; ++s) {
-                 os << fill;
-             }
-         }
---- misc/boost_1_44_0/boost/uuid/name_generator.hpp
-+++ misc/build/boost_1_44_0/boost/uuid/name_generator.hpp
-@@ -30,8 +30,8 @@
- public:
-     typedef uuid result_type;
- 
--    explicit name_generator(uuid const& namespace_uuid)
--        : namespace_uuid(namespace_uuid)
-+    explicit name_generator(uuid const& namespace_uuid_)
-+        : namespace_uuid(namespace_uuid_)
-     {}
- 
-     uuid operator()(const char* name) {
diff --git a/external/boost/boost.random.Wshadow.warnings.patch b/external/boost/boost.random.Wshadow.warnings.patch
new file mode 100644
index 0000000..86b57fa
--- /dev/null
+++ b/external/boost/boost.random.Wshadow.warnings.patch
@@ -0,0 +1,29 @@
+--- misc/boost_1_44_0/boost/random/mersenne_twister.hpp
++++ misc/build/boost_1_44_0/boost/random/mersenne_twister.hpp
+@@ -195,19 +195,19 @@
+      * Returns true if the two generators are in the same state,
+      * and will thus produce identical sequences.
+      */
+-    friend bool operator==(const mersenne_twister_engine& x,
+-                           const mersenne_twister_engine& y)
++    friend bool operator==(const mersenne_twister_engine& x_arg,
++                           const mersenne_twister_engine& y_arg)
+     {
+-        if(x.i < y.i) return x.equal_imp(y);
+-        else return y.equal_imp(x);
++        if(x_arg.i < y_arg.i) return x_arg.equal_imp(y_arg);
++        else return y_arg.equal_imp(x_arg);
+     }
+     
+     /**
+      * Returns true if the two generators are in different states.
+      */
+-    friend bool operator!=(const mersenne_twister_engine& x,
+-                           const mersenne_twister_engine& y)
+-    { return !(x == y); }
++    friend bool operator!=(const mersenne_twister_engine& x_arg,
++                           const mersenne_twister_engine& y_arg)
++    { return !(x_arg == y_arg); }
+ 
+ private:
+     /// \cond show_private
diff --git a/external/boost/boost.uuid.Wshadow.warnings.patch b/external/boost/boost.uuid.Wshadow.warnings.patch
new file mode 100644
index 0000000..b9296dc
--- /dev/null
+++ b/external/boost/boost.uuid.Wshadow.warnings.patch
@@ -0,0 +1,24 @@
+--- misc/boost_1_44_0/boost/uuid/uuid_io.hpp
++++ misc/build/boost_1_44_0/boost/uuid/uuid_io.hpp
+@@ -59,7 +59,7 @@
+         }
+         
+         if (flags & std::ios_base::left) {
+-            for (std::streamsize i=uuid_width; i<width; i++) {
++            for (std::streamsize s=uuid_width; s<width; ++s) {
+                 os << fill;
+             }
+         }
+--- misc/boost_1_44_0/boost/uuid/name_generator.hpp
++++ misc/build/boost_1_44_0/boost/uuid/name_generator.hpp
+@@ -30,8 +30,8 @@
+ public:
+     typedef uuid result_type;
+ 
+-    explicit name_generator(uuid const& namespace_uuid)
+-        : namespace_uuid(namespace_uuid)
++    explicit name_generator(uuid const& namespace_uuid_)
++        : namespace_uuid(namespace_uuid_)
+     {}
+ 
+     uuid operator()(const char* name) {
commit 3413e03c077ff9bf8f412e57be4bd5336d01a7af
Author: Michael Stahl <mstahl at redhat.com>
Date:   Sun Apr 13 18:01:59 2014 +0200

    boost: move one unrelated hunk that isn't in the submitted patch out of
    
    boost.6369.warnings.patch
    
    Change-Id: I7a36f6242d92cb46aac80a46ac69ba488ca4e4c5

diff --git a/external/boost/boost.6369.warnings.patch b/external/boost/boost.6369.warnings.patch
index 81a5eac..545f9c0 100644
--- a/external/boost/boost.6369.warnings.patch
+++ b/external/boost/boost.6369.warnings.patch
@@ -303,21 +303,3 @@
            std::locale l = std::locale(is.getloc(), f);
            is.imbue(l);
            f->get(sit, str_end, is, td);
---- misc/boost_1_44_0/boost/spirit/home/classic/debug/impl/parser_names.ipp	2012-04-10 21:23:48.599238472 +0100
-+++ misc/build/boost_1_44_0/boost/spirit/home/classic/debug/impl/parser_names.ipp	2012-04-10 21:24:02.752394878 +0100
-@@ -395,13 +395,13 @@
-             }
- 
-             bool register_node(void const *r, char const *name_to_register,
--                bool trace_node)
-+                bool trace_node_)
-             {
-                 if (infos.find(r) != infos.end())
-                     return false;
- 
-                 return infos.insert(rule_infos::value_type(r,
--                    rule_info(std::string(name_to_register), trace_node))
-+                    rule_info(std::string(name_to_register), trace_node_))
-                 ).second;
-             }
-
diff --git a/external/boost/boost.spirit.Wshadow.warnings.patch b/external/boost/boost.spirit.Wshadow.warnings.patch
index 2ac13b6..3b48077 100644
--- a/external/boost/boost.spirit.Wshadow.warnings.patch
+++ b/external/boost/boost.spirit.Wshadow.warnings.patch
@@ -38,3 +38,20 @@
          }
  
          typename DefT::embed_t rhs;
+--- misc/boost_1_44_0/boost/spirit/home/classic/debug/impl/parser_names.ipp	2012-04-10 21:23:48.599238472 +0100
++++ misc/build/boost_1_44_0/boost/spirit/home/classic/debug/impl/parser_names.ipp	2012-04-10 21:24:02.752394878 +0100
+@@ -395,13 +395,13 @@
+             }
+ 
+             bool register_node(void const *r, char const *name_to_register,
+-                bool trace_node)
++                bool trace_node_)
+             {
+                 if (infos.find(r) != infos.end())
+                     return false;
+ 
+                 return infos.insert(rule_infos::value_type(r,
+-                    rule_info(std::string(name_to_register), trace_node))
++                    rule_info(std::string(name_to_register), trace_node_))
+                 ).second;
+             }
commit fc690336a0c7cb3e3a3c3dbbf2c9342d3e17095b
Author: Michael Stahl <mstahl at redhat.com>
Date:   Sun Apr 13 01:02:06 2014 +0200

    boost: split up the totally misleading boost.4713.warnings.patch
    
    Change-Id: I19ba507541a0bacc77ac9b77c64f8809273f9d4d

diff --git a/external/boost/UnpackedTarball_boost.mk b/external/boost/UnpackedTarball_boost.mk
index b3ffa7e..44efd98 100644
--- a/external/boost/UnpackedTarball_boost.mk
+++ b/external/boost/UnpackedTarball_boost.mk
@@ -10,8 +10,6 @@
 boost_patches :=
 #https://svn.boost.org/trac/boost/ticket/3780
 boost_patches += boost.3780.aliasing.patch
-#https://svn.boost.org/trac/boost/ticket/4713
-boost_patches += boost.4713.warnings.patch
 #http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47679
 boost_patches += boost.gcc47679.patch
 #https://svn.boost.org/trac/boost/ticket/6369
@@ -24,6 +22,13 @@ boost_patches += boost.4100.warnings.patch
 boost_patches += boost.4510.warnings.patch
 #https://svn.boost.org/trac/boost/ticket/6142
 boost_patches += boost.6142.warnings.patch.1
+
+boost_patches += boost.date_time.Wshadow.warnings.patch
+boost_patches += boost.ptr_container.Wshadow.warnings.patch
+boost_patches += boost.ptr_container.Wignored-qualifiers.warnings.patch
+boost_patches += boost.ptr_container.Wextra.warnings.patch
+boost_patches += boost.ptr_container.Wunused-parameter.warnings.patch
+boost_patches += boost.spirit.Wshadow.warnings.patch
 boost_patches += boost.libcdr.warnings.patch.1
 
 # Help static analysis tools (see SAL_UNUSED_PARAMETER in sal/types.h):
diff --git a/external/boost/boost.date_time.Wshadow.warnings.patch b/external/boost/boost.date_time.Wshadow.warnings.patch
new file mode 100644
index 0000000..578159a
--- /dev/null
+++ b/external/boost/boost.date_time.Wshadow.warnings.patch
@@ -0,0 +1,19 @@
+--- misc/boost_1_44_0/boost/date_time/date_names_put.hpp	2008-02-27 21:00:24.000000000 +0100
++++ misc/build/boost_1_44_0/boost/date_time/date_names_put.hpp	2011-10-05 16:58:58.413575307 +0200
+@@ -218,14 +218,14 @@
+                          const charT* const weekday_long_names[],
+                          charT separator_char = '-',
+                          ymd_order_spec order_spec = ymd_order_iso,
+-                         month_format_spec month_format = month_as_short_string) :
++                         month_format_spec month_format_ = month_as_short_string) :
+         month_short_names_(month_short_names),
+         month_long_names_(month_long_names),
+         special_value_names_(special_value_names),
+         weekday_short_names_(weekday_short_names),
+         weekday_long_names_(weekday_long_names),
+         order_spec_(order_spec),
+-        month_format_spec_(month_format)
++        month_format_spec_(month_format_)
+       {
+         separator_char_[0] = separator_char;
+         separator_char_[1] = '\0';
diff --git a/external/boost/boost.ptr_container.Wextra.warnings.patch b/external/boost/boost.ptr_container.Wextra.warnings.patch
new file mode 100644
index 0000000..674ab93
--- /dev/null
+++ b/external/boost/boost.ptr_container.Wextra.warnings.patch
@@ -0,0 +1,12 @@
+base class ‘class boost::ptr_container_detail::ptr_map_adapter_base<chart::VDataSequence, std::__debug::map<rtl::OUString, void*, std::less<rtl::OUString>, std::allocator<std::pair<const rtl::OUString, void*> > >, boost::heap_clone_allocator, true>’ should be explicitly initialized in the copy constructor [-Werror=extra]
+
+--- misc/boost_1_44_0/boost/ptr_container/ptr_map_adapter.hpp	2008-06-24 22:37:35.000000000 +0200
++++ misc/build/boost_1_44_0/boost/ptr_container/ptr_map_adapter.hpp	2011-02-04 16:39:19.000000000 +0100
+@@ -477,6 +477,7 @@
+         }
+                 
+         ptr_map_adapter( const ptr_map_adapter& r )
++          : base_type()
+         {
+             map_basic_clone_and_insert( r.begin(), r.end() );      
+         }
diff --git a/external/boost/boost.ptr_container.Wignored-qualifiers.warnings.patch b/external/boost/boost.ptr_container.Wignored-qualifiers.warnings.patch
new file mode 100644
index 0000000..89d6ee4
--- /dev/null
+++ b/external/boost/boost.ptr_container.Wignored-qualifiers.warnings.patch
@@ -0,0 +1,11 @@
+--- misc/boost_1_44_0/boost/ptr_container/detail/map_iterator.hpp	2008-06-24 22:37:35.000000000 +0200
++++ misc/build/boost_1_44_0/boost/ptr_container/detail/map_iterator.hpp	2011-02-04 16:39:19.000000000 +0100
+@@ -49,7 +49,7 @@
+             : first(rp->first), second(rp->second)
+             { }
+             
+-            const ref_pair* const operator->() const
++            const ref_pair* operator->() const
+             {
+                 return this;
+             }
diff --git a/external/boost/boost.4713.warnings.patch b/external/boost/boost.ptr_container.Wshadow.warnings.patch
similarity index 61%
rename from external/boost/boost.4713.warnings.patch
rename to external/boost/boost.ptr_container.Wshadow.warnings.patch
index 7a5726e..c5c1e32 100644
--- a/external/boost/boost.4713.warnings.patch
+++ b/external/boost/boost.ptr_container.Wshadow.warnings.patch
@@ -1,43 +1,3 @@
---- misc/boost_1_44_0/boost/date_time/date_names_put.hpp	2008-02-27 21:00:24.000000000 +0100
-+++ misc/build/boost_1_44_0/boost/date_time/date_names_put.hpp	2011-10-05 16:58:58.413575307 +0200
-@@ -218,14 +218,14 @@
-                          const charT* const weekday_long_names[],
-                          charT separator_char = '-',
-                          ymd_order_spec order_spec = ymd_order_iso,
--                         month_format_spec month_format = month_as_short_string) :
-+                         month_format_spec month_format_ = month_as_short_string) :
-         month_short_names_(month_short_names),
-         month_long_names_(month_long_names),
-         special_value_names_(special_value_names),
-         weekday_short_names_(weekday_short_names),
-         weekday_long_names_(weekday_long_names),
-         order_spec_(order_spec),
--        month_format_spec_(month_format)
-+        month_format_spec_(month_format_)
-       {
-         separator_char_[0] = separator_char;
-         separator_char_[1] = '\0';
---- misc/boost_1_44_0/boost/ptr_container/detail/map_iterator.hpp	2008-06-24 22:37:35.000000000 +0200
-+++ misc/build/boost_1_44_0/boost/ptr_container/detail/map_iterator.hpp	2011-02-04 16:39:19.000000000 +0100
-@@ -49,7 +49,7 @@
-             : first(rp->first), second(rp->second)
-             { }
-             
--            const ref_pair* const operator->() const
-+            const ref_pair* operator->() const
-             {
-                 return this;
-             }
---- misc/boost_1_44_0/boost/ptr_container/ptr_map_adapter.hpp	2008-06-24 22:37:35.000000000 +0200
-+++ misc/build/boost_1_44_0/boost/ptr_container/ptr_map_adapter.hpp	2011-02-04 16:39:19.000000000 +0100

... etc. - the rest is truncated


More information about the Libreoffice-commits mailing list